Magick++はC++言語で使える画像処理ライブラリです。ImageMagickでできるような画像処理を自分のプログラムに組み込むことができます。
ヘッダーファイルの読み込み
#include <Magick++.h>
ライブラリの初期化
Magick::Image image(*argv);
画像処理
ファイルを読み込む
Magick::Image image("example.jpg");
2値化
image.type(Magick::BilevelType);
処理後の画像を保存
image.write("magick++.jpg");
画像を2値化するサンプルコード
#include <Magick++.h>
#include <iostream>
int main(int ac, char **av)
{
Magick::InitializeMagick(*av);
try{
Magick::Image image(av[1]);
image.type(Magick::BilevelType);
image.write("magick++.jpg");
}
catch(Magick::Exception &error_){
std::cout << "exception: " << error_.what() << std::endl;
}
return 0;
}
コンパイルとリンク
ヘルパースクリプトMagick++-config
を使うとヘッダーのパスやリンクオプションを自動で指定できます。
c++ magick++.cc `Magick++-config --cppflags --cxxflags --ldflags --libs`