【问题标题】:C++ library for merging images用于合并图像的 C++ 库
【发布时间】:2014-05-27 10:11:28
【问题描述】:

我需要合并几个图像,以便 image2 覆盖 image1 的部分,依此类推。我找到了CImg library,但我不知道如何将它用于我的目的。

我可以使用任何其他库吗?或者我可以使用 CImg 来实现吗?

【问题讨论】:

  • 查看 Magick++ imagemagick.org/Magick++
  • 看看OpenCV Library。如果您阅读参考文档,您将找到有关如何将较小图像复制到较大图像的子矩形的示例。
  • 我已经知道 OpenCV,但我认为它对于我相当简单的目的来说开销太大。相反,Magick++ 似乎正是我所需要的。

标签: c++ image image-processing merge cimg


【解决方案1】:

我用 ImageMagick 创建了两个这样的图像:

convert -size 400x300 gradient:blue-yellow PNG24:gradient.png

convert -size 100x100 xc:fuchsia overlay.png

然后运行这个CImg 代码:

#define cimg_use_png
#define cimg_display 0
#include "CImg.h"
using namespace cimg_library;
int main() {
   CImg<unsigned char> gradient("gradient.png");
   CImg<unsigned char> overlay("overlay.png");
   gradient.draw_image(150,50,overlay);
   gradient.save_png("result.png");
}

得到了这个:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-14
    • 2014-05-08
    • 2011-07-22
    相关资源
    最近更新 更多