画像処理を実装したい!
と思われる方も多いかと思います。
- 1からプログラミングするのは大変
- サクッと望みの機能を実現したい!
- 他社に先駆けて新機能をリリースしたい!
といった場合には、画像処理のソフトやライブラリを活用することで、
開発期間を大幅に短縮することが可能です。
- 画像処理のソフトやライブラリには、どんなものがあるの?
と思われる方も多いかもしれません。
画像処理には、様々なソフトがあります。
また、各画像処理ソフトは、それぞれ特徴があり、
料金がかからない無料(フリー)ものから、有料のものなど、ライセンス形態もいろいろです。
そこで本記事では、画像処理を使って、何かを実現したいあなたのために、
開発期間を効率化する画像処理ソフトやライブラリについて、サクッとまとめました。
本記事の概要
画像処理をサクッと実行できるソフトウェアには何があるの?フリー(無料)ソフトも含めて、サクッとまとめました
概要ですが、本記事では、6つの画像処理ソフト(ライブラリ)をまとめており、それぞれ以下で説明していく流れになっています。
- OpenCV(フリーソフト)
- LTI-Lib(フリーソフト)
やその他、フリーソフトや有料ソフトもご紹介しています。
まず1つ目のご紹介は、「OpenCV」です。
画像処理のソフトといえば、もっともよく知られているのは、
OpenCVではないでしょうか
OpenCV
「OpenCV(Open Source Computer Vision Library)」は、フリー(無料)の画像処理ライブラリです。
画像処理だけでなく、コンピュータビジョン、機械学習、数学処理などのアルゴリズムも含まれています。
画像処理でオープンソースといえば、OpenCV、というくらい有名です。
元はインテル社が開発していたものが公開され、その後、管理会社が Willow Garage 社から現在はItseez に移り、Itseezはインテルに買収されたので、再びインテルの手元にあることになります。
2015年にはOpenCV 3.0 にバージョンアップされました。
このバージョンアップでは、C言語関数形式のAPIのメンテナンスは終わり、C++APIの使用が推奨されるなどの変更がありました。
使えるプログラミング言語
Python, Java, C, C++, MATLAB, Ruby などの言語から使うことができます。
使えるプラットフォーム
Windows, Linux, Mac, iOS, Androidなど
ライセンス
BSDライセンス
利用可能な主な機能
上で述べたように、画像処理だけでなく、構造解析、物体追跡、パターン認識、機械学習などの機能をサクッと実装できるライブラリを含んでいます。
画像処理
ヒストグラム・フィルタ・エッジ・補間・幾何変換・画像分割・領域結合・輪郭検出・画像変換・マッチング・ラベリングなど
構造解析
輪郭処理・計算幾何・平面再分割など
モーション解析と物体追跡
物体追跡・オプティカルフロー・モーションテンプレートなど
パターン認識
物体検出など
カメラキャリブレーションと3次元再構成
カメラキャリブレーション・姿勢推定・エピポーラ幾何など
機械学習
k近傍法・SVM(サポートベクトルマシン)・決定木・ブースティング・ランダムフォレスト・ニューラルネットワーク・単純ベイズ分類器・EMアルゴリズムなど
ユーザインターフェース
画像の読み込み・保存・ビデオ入出力・シンプルGUIなど
OpenCVのおすすめ本はこちらです
OpenCVによる画像処理入門 改訂第3版 (KS情報科学専門書)
OpenCVとPythonによる機械学習プログラミング
実践OpenCV4 for Python―画像映像情報処理と機械学習
OpenCVではじめよう ディープラーニングによる画像認識
Machine Learning for Opencv
Opencv: Computer Vision Projects with Python
LTI-Lib(Lehrstuhl fur Technische Informatik)
「LTI-Lib」は、ドイツのアーヘン工科大学の計算機工学講座で開発された画像処理やコンピュータビジョンのライブラリです。
C++ベースのオブジェクト志向型のCVライブラリで、
ロボティクスや物体認識、身ぶり・手ぶり、ジェスチャー認識の研究プロジェクトとともに開発が進められました。
その経緯から、それらに関係する処理がC++のクラスとして提供されています。
LTI-Libのライセンス
なお、 LTI-Libは、LGPLライセンスでのオープンソースとなっています。
LTI-Libには、500以上のクラスが含まれており、それらのクラスは以下の内容となっています。
線形代数クラス
行列・ベクトル・テンソル、固有値・固有ベクトルを抽出する関数、線形方程式、統計など
分類やクラスタリング
動径分布関数分類器、サポートベクトルマシン、k−means法、ファジーcーmeans法など
画像処理
セグメンテーション、線形フィルタ、ウェーブレット、Steerable フィルタなど
視覚化や描画ツール
LTI-Libの開発環境
LTI-Libは、
- Linux環境で、GCC
- Windows NT環境で、Visual C++
によって開発されており、他の環境ではテストされていませんのでご注意ください。
この先は会員限定になります。
会員の方はログインをお願いいたします。
登録がまだの方は、会員登録をお願いします。
>>> 会員登録はこちら
↓こちら無料で読めます