用于操作图像的 C++ 库

Posted

技术标签:

【中文标题】用于操作图像的 C++ 库【英文标题】:C++ libraries to manipulate images 【发布时间】:2010-09-07 16:27:23 【问题描述】:

您是否知道任何开源/免费软件 C++ 库来处理这些格式的图像: .jpg .gif .png .bmp ?它支持的格式越多越好。我正在用 C++ 实现一个免费程序,它使用 steganography 将文本文件隐藏到一个或多个图像中。

我在 Unix 下工作。

【问题讨论】:

【参考方案1】:

ImageMagick 可以处理任何事情,并具有dozen of languages 的接口,包括用于 C++ 的 Magick++ API。

【讨论】:

【参考方案2】:

@lurks:我假设您正在寻找 LSB 移位?几年前我做了一些隐秘工作,这就是大多数应用程序的工作方式。看来 ImageMagick(由其他人建议)允许您识别和操作 LSB。

【讨论】:

【参考方案3】:

这需要一些设置,但我是Adobe's GIL 的粉丝(现在是Boost 的一部分)。

【讨论】:

【参考方案4】:

你考虑过GDI吗?

-- 凯文·费尔柴尔德

【讨论】:

【参考方案5】:

FreeImage 非常可靠。它有一个 C 接口,但在实现上更像 C++。

【讨论】:

【参考方案6】:

对于 .png 图像,您可以查看 Cairo(和 CairoMM)。还有人们认为很快的 Anti-Grain。

【讨论】:

【参考方案7】:

我喜欢vxl

VXL(Vision-something-Libraries)是专为计算机视觉研究和实施而设计的 C++ 库集合。它是由 TargetJr 和 IUE 创建的,目的是制作一个轻便、快速和一致的系统。 VXL 是用 ANSI/ISO C++ 编写的,旨在可在许多平台上移植。

【讨论】:

以上是关于用于操作图像的 C++ 库的主要内容,如果未能解决你的问题,请参考以下文章

Linux C++ libdl.so dlfcn.h使用方法(dlopen()dlsym()dlclose()dlerror())(用于动态链接库操作)(懒加载立即加载)共享库符号动态库

C++ 中的元素操作

轻量级 C++ 图像库 [关闭]

C++的期末大概复习

文件操作

C++ OpenCV线性混合操作