gpt4 book ai didi

python - 在 Python .Net 中将 C# 字节数组转换为 numpy 数组

转载 作者:行者123 更新时间:2023-12-04 11:46:59 26 4
gpt4 key购买 nike

我尝试在使用 Python.NET 的 Python 应用程序中使用 .NET 程序集。 C# 代码捕获一个图像,我想与 python 一起使用。假设我有以下 C# 方法:

public static byte[] Return_Image_As_Byte_Array()
{
Image image = Image.FromFile("C:\path\to\an\image");
ImageConverter imageConverter = new ImageConverter();
byte[] ByteArray = (byte[])imageConverter.ConvertTo(image, typeof(byte[]));
return ByteArray;
}

当我在 python 中使用 Python.Net 时,我执行以下操作:
import clr
clr.AddReference('MyAssembly')
from MyAssembly import MyClass
print(MyClass.Return_Image_As_Byte())

这给了我输出:
<System.Byte[] at 0xb7ba20c080>

有没有办法将这个图像从 C# 转换为像 numpy 数组这样的原生 python 类型?

最佳答案

如果您正在寻找性能:
我发现 np.fromiter() (numpy) 比上面@dlammy url 链接中提供的答案快 6 倍,作为对问题的回应。使用的函数是 asNumpyArray()网址:https://github.com/pythonnet/pythonnet/issues/514
由于时间有这样的区别,我认为只有一次定时运行就足够了,而不是平均结果。
我的结果:np.fromiter() : 67.914736sasNumpyArray() : 334.5198s
解决方案在这里找到:https://stackoverflow.com/a/61077271/4084346

关于python - 在 Python .Net 中将 C# 字节数组转换为 numpy 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35768063/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com