c++ - 有据可查、开源且快速的 C/C++ 图像处理库。比如 'resize' ,旋转,变色,裁剪

标签 c++ c graphics image-processing

<分区>

寻找一堆优化 图像处理实用函数。喜欢:使用三次插值调整大小、旋转、裁剪、将颜色更改为不同的颜色。很像 GIMP 所拥有的。但是没有 GIMP 的许可和膨胀。

  • 必须是免费和开源的,最好不是 GPL,除非它最好
  • 必须为初学者(图像处理)提供全面/良好的文档。
  • 必须比 ImageMagick 或其任何分支 (GraphicsMagick) 更快。
  • 必须包含一堆“实际算法”,就像 The Gimp 这样的图像处理程序。不仅仅是一堆我没有用的科学算法。

...

  • 不需要支持图像文件格式(例如从 GIF 导入)。
  • 不需要支持超过 24 位的颜色。
  • 不需要是最快的,但速度需要比学术水平更好。

回答

我正在使用 ImageMagick(或 Magick++ 它的库)来渲染最终的 GIF 动画,因为这样做速度相对较快。对于其余部分,操作非常简单,以至于我使用来自 sourceforge 的“非官方”GIF 解码器库来解码为数组。然后,获取原始图像数据数组;标准 C++ for 循环中的裁剪/颜色更改

对于真正的 super 优化用途,StackOverflow 上的其他人似乎都在推荐 OpenCVBoost 的 GIL(Adobe 提供)。它们都包含良好的原语,OpenCV 还包含更多针对速度进行了优化的算法。

最佳答案

你的问题看起来很主观。还是看Boost Generic Image Library ,它是开源的。

关于c++ - 有据可查、开源且快速的 C/C++ 图像处理库。比如 'resize' ,旋转,变色,裁剪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7142983/

相关文章:

c++ - valgrind 无法识别无效写入

c++ - 如何在 C++ 中获取中继器的委托(delegate)数据?

C++:检查字符串是否是有效的 MD5 十六进制哈希

c - 如何使用负浮点进行 sscanf ?

graphics - 在 MATLAB 中创建 'timeline' 样式图形

android - ndk-gdb 无法找到 gdb.setup

c - 输出重定向时 SIGINT 丢失;如何检测程序的终止?

c - 是否有充分的理由不在一个节点中包含多个节点指针以在多个数据结构中使用?

c# - 如何在 C# 中实现绘图器

api - vulkan api 会处理窗口创建吗?