0

我开发了一个数字/科学应用程序,它使用Scipy.ndimagePython 中的图像处理例程执行一些步骤,现在我需要将此功能移植到 Visual Studio 2010 中的 C#。

问题是,在 Scipy/Numpy 中,我将图像转换为灰度,然后在加载后立即转换为浮点数组,并执行每个操作(模糊、亮度/对比度、伽马校正、相乘和合并、中心- 质量检测和许多其他)在浮点空间中以增加精度。我不需要保存生成的图像,只需从中提取派生的位置数据(尽管如果需要,我可以轻松地转换回来并再次保存为图像)。

我开始研究 AForge.NET,但大多数操作似乎都在灰度 8bpp 或最多 16bpp 上。

因此,我有三个选择:

  1. 找到一些具有浮点图像格式和方法的库;
  2. 将图像转换为double[,](不知道如何从System.Drawing.Bitmap),并浪费大量时间尝试从其他数值库中获取所需的方法;
  3. 继续使用 16bpp 灰度,并接受它,尽管我有充分的理由认为它可能会降低我的结果质量。

非常欢迎任何帮助或见解,谢谢。

4

1 回答 1

1

为什么不看看Emgu?这为您提供了 OpenCV 的托管包装器,并支持与双精度/浮点精度之间的转换。

有关使用该库的一些简单示例,请参见此处

于 2013-02-20T20:00:28.573 回答