インストール - OpenCV

提供:MochiuWiki : SUSE, EC, PCB
ナビゲーションに移動 検索に移動

概要

OpenCVは、オープンソースのコンピュータビジョン・画像処理ライブラリとして広く知られている。
1999年にIntelによって開発が開始され、現在は非営利団体のOpenCV.orgによって維持管理されている。

OpenCVは、画像処理や機械学習の機能が豊富に実装されており、画像の読み込み・保存、フィルタリング、特徴検出、オブジェクト認識等の処理を効率的に行うことができる。
C++が主要な実装言語であるが、Python、Java、JavaScript等の多くのプログラミング言語からも使用可能である。

画像処理の機能として、画像の読み込みや保存、色空間の変換、画像のリサイズや回転等の幾何学的変換、ノイズ除去やエッジ検出等のフィルタリング処理が提供されている。
また、画像から特徴点を抽出するSIFTやSURFといったアルゴリズムも実装されている。

機械学習では、顔検出や物体検出のための分類器、画像認識のための畳み込みニューラルネットワーク (CNN) のサポートも充実している。
特に、Haar-like特徴を用いた顔検出は、実用的な精度で広く利用されている。

リアルタイム処理に関しても優れた性能を持っており、Webカメラやビデオからのライブ映像処理にも適している。
マルチコアCPUやGPUを活用した並列処理にも対応しており、高速な処理が可能である。

産業応用の面では、製造業での品質検査、医療分野での画像診断支援、自動運転での環境認識、セキュリティシステムでの監視カメラ解析等、幅広い分野で活用されている。

また、活発なコミュニティによってドキュメントやチュートリアルが充実しており、初心者でも学習しやすい環境が整っている。
定期的にアップデートが行われ、最新の画像処理技術や機械学習アルゴリズムが継続的に追加されている。


OpenCVのインストール

パッケージ管理システムからインストール

# RHEL
sudo dnf install opencv opencv-devel

# SUSE
sudo zypper install opencv opencv-devel


ソースコードからインストール

OpenCVのインストールに必要なライブラリをインストールする。

# SUSE
sudo zypper install eigen3-devel lapack-devel vtk-devel libdc1394-devel \
                    python3-devel python3-flake8 python3-numpy-devel    \

                    # GStreamerを使用する場合
                    gstreamer-devel gstreamermm-devel

                    # FFmpegを使用する場合
                    ffmpeg-4-libavcodec-devel ffmpeg-4-libavdevice-devel ffmpeg-4-libavfilter-devel ffmpeg-4-libavformat-devel    \
                    ffmpeg-4-libavresample-devel ffmpeg-4-libavutil-devel ffmpeg-4-libpostproc-devel ffmpeg-4-libswresample-devel \
                    ffmpeg-4-libswscale-devel

                    # その他ライブラリを使用する場合
                    libva-devel gtkglext-devel


OpenCVのGithubにアクセスして、ソースコードをダウンロードする。
OpenCVの追加モジュールもインストールする場合は、併せてダウンロードする。

ダウンロードしたファイルを解凍する。

tar xf opencv-<バージョン>.tar.gz
tar xf opencv_contrib-<バージョン>.tar.gz


※注意
追加モジュールは機能の開発版と位置付けられているため、安定したAPIを持っていないことが多く、十分にテストされていない。
そのため、OpenCVライブラリの一部としてリリースされていない。

cmake -DCMAKE_BUILD_TYPE=Release \
      -DCMAKE_INSTALL_PREFIX=<OpenCVのインストールディレクトリ> \
      -DBUILD_SHARED_LIBS=ON     \
      -DOPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-<バージョン>/modules \
     ..

make -j $(nproc)
make install