glm*_*ndr 13 language-agnostic image-processing
我最近回到图像处理.我之前使用的大部分内容都是Matlab.我想切换到更方便和开放的语言.
在使用了Python库PIL并且痛苦地理解它内置了只有3x3和5x5过滤器内核之后,我决定在这里询问是否有人知道好的图像处理库.
现有的图像处理库(任何语言)是什么?他们是快/成熟还是处于早期阶段?
nim*_*cap 12
OpenCV在C中是一个非常快速和成熟的.不好的一面是它不是面向对象的,这不是我认为的标准之一.包括连接组件分析等许多功能.
JAI(Java Advanced Imaging)快速且非常成熟,它也是面向对象的.使用此库可能需要一点热身.但功能强大且易于管理.
如果您打算为OpenCV进行一些学术研究或原型设计,如果您的目标是开发商业或大型软件,我推荐JAI.
UPDATE
OpenCV现在有C++和Python API.我已经使用OpenCV C++ 3周了,API比C API更好.OpenCV更稳定,社区也在增长.在OpenCV中有很多可以使用的高级算法.值得考虑.
查看 python Scipy 库。它是一个Python中的开源快速n维数组操作库。它具有所有基本的图像处理工具:
它不具备 Matlab 图像处理工具箱的所有更高级功能。然而,正如 Vereb 所建议的,其中很多都可以在 ITK 中找到(也有 python 版本)。
和你一样,我想放弃 matlab,转而使用 Python 这样的动态语言。和你一样,当我意识到 PIL 只是 python 中的 ImageMagick 时,我对 PIL 感到失望。您仍然需要使用 PIL 来读取/写入图像。
要使用 python获得类似 Matlab 的图像处理体验,请使用Numpy/Scipy、Matplotlib和Spyder。所有这些以及更多内容都方便地封装在仅适用于 Windows 的Python(X,Y)中。