任何用于.NET的带有浮点运算的图像处理库

本文关键字:浮点运算 图像处理 用于 NET 任何 | 更新日期: 2023-09-27 18:00:16

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

问题是,在Scipy/Numbery中,我将图像转换为灰度,然后在加载后立即转换为浮点数组,并在浮点空间中执行每一项操作(模糊、亮度/对比度、伽马校正、乘法和合并、质心检测等)以提高精度。我不需要保存生成的图像,只需从中提取导出的位置数据(尽管如果需要,我可以很容易地转换回并再次保存为图像)。

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

因此,我有三个选择:

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

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

任何用于.NET的带有浮点运算的图像处理库

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

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