UbuntuへのOpenCV 2.4.9のインストールと設定

UbuntuにOpenCV 2.4.9を構築する手順

Ubuntu環境でOpenCVを動作させるためには、適切な依存関係の解決とビルドプロセスの理解が不可欠です。本記事では、Ubuntu 12.04(他のバージョンでも同様)にOpenCV 2.4.9をソースからビルドしてインストールする方法を解説します。

必要なパッケージのインストール

まず、コンパイルや画像・動画処理に必要なライブラリ群をAPTで事前に導入します。

sudo apt-get update
sudo apt-get install build-essential
sudo apt-get install libgtk2.0-dev libavcodec-dev libavformat-dev libswscale-dev libtiff5-dev libjasper-dev
sudo apt-get install cmake pkg-config

上記コマンドにより、C/C++のビルド環境、GUIサポート(GTK+)、画像フォーマット(JPEG, PNG, TIFFなど)、およびマルチメディア処理用のFFmpeg系ライブラリが準備されます。

ソースコードの取得と展開

OpenCV 2.4.9のソースは公式アーカイブまたはミラーからダウンロード可能です。

wget -O opencv-2.4.9.zip https://github.com/opencv/opencv/archive/2.4.9.zip
unzip opencv-2.4.9.zip
cd opencv-2.4.9

ビルドディレクトリの作成とCMakeによる構成

ソース内での直接ビルドは推奨されません。別途ビルド専用ディレクトリを作成し、そこで構成を行います。

mkdir build && cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE \
      -D CMAKE_INSTALL_PREFIX=/usr/local \
      ..

CMakeは依存関係をチェックし、Makefileを生成します。正常終了すれば、次ステップに進みます。

コンパイルとインストール

makeコマンドでソースをコンパイルします。CPUコア数に応じて並列ビルドを指定すると高速化できます。

make -j$(nproc)

ビルド成功後、管理者権限でシステムにインストールします。

sudo make install

ライブラリパスの登録

インストールされた共有ライブラリをシステムが認識できるよう、ランタイムリンカにパスを追加します。

echo '/usr/local/lib' | sudo tee /etc/ld.so.conf.d/opencv.conf
sudo ldconfig

pkg-configの設定

プログラムからOpenCVのインクルードパスやリンクフラグを自動取得するために、pkg-configの検索パスを拡張します。

export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
# システム全体で使う場合は ~/.bashrc または /etc/environment に追加
echo 'export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig' >> ~/.bashrc

設定後、以下のコマンドでOpenCVの情報を確認できます。

pkg-config --cflags --libs opencv

サンプルプログラムによる動作確認

OpenCV付属のサンプルを使って動作テストを行います。

cd /usr/local/share/OpenCV/samples/c
chmod +x build_all.sh
./build_all.sh

顔検出のデモを実行してみましょう。Lena画像とHaarカスケードファイルが必要です。

./facedetect cascade="/usr/share/opencv/haarcascades/haarcascade_frontalface_alt.xml" lena.jpg

正しく検出されれば、ウィンドウに顔領域が矩形で表示されます。

トラブルシューティング

  • GTKエラー: libgtk2.0-devが未インストールの場合、GUI機能が無効になります。
  • libpng関連のリンクエラー: 必要な開発パッケージ(libpng-devなど)を追加でインストールしてください。
  • pkg-configが見つからない: PATHまたはPKG_CONFIG_PATHの設定を見直してください。

タグ: OpenCV Ubuntu CMake Computer vision Image Processing

6月17日 18:03 投稿