3

我是一名嵌入式系统程序员,并且做了极其有限的 Windows 开发。这就是说我坚定地坚持使用 C++,因为它比 C# 更熟悉,并且试图找出一种新语言在可用的时间范围内不是一个选项。

我现在正在做的项目是一个用于实验室的简单控制台应用程序。I/O 和循环已经完成,我遇到的问题是图像处理。我需要做的是逐个像素地扫描图像并将颜色与一些阈值进行比较。该图像将是一个绿色屏幕上的样本,我们将查看样本颜色的差异。比较逻辑很简单,但是在 Google 上花了几个小时并下载了几个库之后,我确信关于图像处理的信息太多了。

是否有一个图像处理库可以让我将图像加载到内存中,逐像素扫描,通过单个函数调用加载颜色字节,而不是让我的头爆炸?

4

3 回答 3

3

对于 C++,有一个ImageMagick工具集(它是开源的)。简约(仅一个文件)库:CImg

对于复杂的处理,请尝试OpenCV

如果您真正需要的是访问原始字节(从一些常见的文件格式加载),那么FreeImage也是一种选择。

对于 C#,以 AForge为起点。


对于简单的控制台处理,我会选择 CImg(尽管编译时间可能令人失望)。

于 2012-07-13T18:59:23.137 回答
1

我自己没有尝试过,但如果你对 C 风格的界面没问题,ccv最近一直在作为OpenCV的现代版本进行传播。

于 2012-07-13T19:25:19.920 回答
0

我想建议 GDAL http://www.gdal.org/。它有一个名为 RasterIO 的功能,可以满足您的要求。这个库的另一个优点是它可以处理几乎所有不同类型的图像格式。

于 2012-07-15T16:43:25.333 回答