LTI-Lib で遊んでみる
LTI-Lib とは
画像処理や行列計算のためのライブラリ。バージョンは 1.9 系と 2.0 系が存在していて、ライセンスが 1.9 系は GNU LGPL 、 2.0 系は修正 BSD ライセンスを採用しています。
1.9 系のチュートリアルが広島大の玉木准教授が公開されております。
以下、触りだけメモ。 2.0 系。
画像の読み書き
#include <ltiIOImage.h> #include <ltiImage.h> int main(int argc, char* argv[]){ lti::image img; lti::ioImage io; io.load("./lenna.png", img); // 何かの処理 io.save("./output.png", img); return 0; }
ビューアの利用
#include <ltiIOImage.h> #include <ltiImage.h> #include <ltiViewer2D.h> int main(int argc, char* argv[]){ lti::ioImage io; lti::image img; io.load("./lenna.png", img); lti::viewer2D viewer("lenna"); // title: "lenna" viewer.show(img); lti::viewer2D::interaction action; lti::ipoint pos; viewer.waitButtonPressed(action, pos); return 0; }
画像について
#include <ltiIOImage.h> #include <ltiImage.h> int main(int argc, char* argv[]){ lti::ioImage io; lti::image img; io.load("./lenna.png", img); // size.x = columns = width // size.y = rows = height lti::ipoint size = img.size(); // 左上原点で行列化されている // 行列の要素へのアクセスは matrix.at(row, column) img.at(0, size.x-1).setRed(0xff); // 右上 return 0; }