在 C#、Keras.Net 中将 Numpy 数组转换为位图

问题描述 投票:0回答:1

我正在研究图像语义分割,并试图弄清楚如何将预测(在 argmax 之后)转换为位图。

如果我使用 ImageUtil 中的 ArrayToImg,它会返回一个系统对象。我如何从这里将它转换为位图?

我使用 python 训练模型,并尝试在 C# 中进行预测。

我试着在网上搜索,但到目前为止还没有找到任何有用的信息。

c# keras numpy-ndarray image-segmentation
1个回答
0
投票

在这里和那里进行研究后,我认为这可能会起作用,尽管我还没有完成完整的测试。把它可能帮助有同样问题的人:

  1. 首先使用 GetData 将 numpy 数组转换为 C# 数组:
var c_sharp_array = numpy_array.GetData<int>();
  1. 然后将其转换为 NumSharp 并将其重塑为所需的形状:
NumSharp.NDArray numsharp_array = c_sharp_array;
numsharp_array = numsharp_array.reshape(x,y,z);
  1. 使用 NumSharp 库转换为位图:
Bitmap bmp = numsharp_array.ToBitmap();
© www.soinside.com 2019 - 2024. All rights reserved.