OpenCV(Open Source Computer Vision Library)は、C ++、Python、およびJava用のバインディングを備えたオープンソースのコンピュータービジョンライブラリであり、すべての主要なオペレーティングシステムをサポートします。マルチコア処理を利用でき、リアルタイム操作のためのGPUアクセラレーションを備えています。
OpenCVは、医療画像分析、ストリートビュー画像のステッチ、監視ビデオ、顔の検出と認識、移動物体の追跡、3Dモデルの抽出など、非常に幅広いアプリケーションに使用されます。
このチュートリアルでは、CentOS7にOpenCVをインストールする方法を示します。
CentOSリポジトリからOpenCVをインストールします#
OpenCVパッケージはCentOS7標準リポジトリから入手できますが、かなり時代遅れです。 OpenCVの最新の安定バージョンをソースからインストールする場合は、このチュートリアルの「ソース」セクションから「OpenCVのインストール」までスクロールダウンします。
執筆時点では、リポジトリ内のバージョンは2.4.5です。
次のように入力して、OpenCVパッケージをインストールします。
sudo yum install opencv opencv-devel opencv-python インストールが完了したら、次を実行して確認できます:
pkg-config --modversion opencv 2.4.5
または、Python cv2をインポートします モジュールを作成し、OpenCVバージョンを印刷します:
python -c "import cv2; print(cv2.__version__)" 2.4.5
ソースからのOpenCVのインストール#
ソースからOpenCVライブラリを構築すると、利用可能な最新バージョンを入手できます。特定のシステムに合わせて最適化され、ビルドオプションを完全に制御できます。
ソースから最新のOpenCVバージョンをインストールするには、次の手順に従います。
-
必須およびオプションの依存関係をインストールします:
sudo yum install epel-release git gcc gcc-c++ cmake3 qt5-qtbase-devel \python python-devel python-pip cmake python-devel python34-numpy \gtk2-devel libpng-devel jasper-devel openexr-devel libwebp-devel \libjpeg-turbo-devel libtiff-devel libdc1394-devel tbb-devel numpy \eigen3-devel gstreamer-plugins-base-devel freeglut-devel mesa-libGL \mesa-libGL-devel boost boost-thread boost-devel libv4l-devel -
OpenCVとOpenCVの両方の寄稿リポジトリのクローンを作成します:
mkdir ~/opencv_build && cd ~/opencv_buildgit clone https://github.com/opencv/opencv.gitgit clone https://github.com/opencv/opencv_contrib.git執筆時点では、githubリポジトリのデフォルトバージョンはバージョン4.2.0です。古いバージョンのOpenCVをインストールする場合は、両方の
opencvにcdします。 およびopencv_contribディレクトリを作成し、git checkout <opencv-version>を実行します -
ダウンロードが完了したら、一時ビルドディレクトリを作成し、それに切り替えます。
cd ~/opencv_build/opencv && mkdir build && cd build次のCMakeコマンドを使用してOpenCVビルドを構成します。
cmake3 -D CMAKE_BUILD_TYPE=RELEASE \-D CMAKE_INSTALL_PREFIX=/usr/local \-D INSTALL_C_EXAMPLES=ON \-D INSTALL_PYTHON_EXAMPLES=ON \-D OPENCV_GENERATE_PKGCONFIG=ON \-D OPENCV_EXTRA_MODULES_PATH=~/opencv_build/opencv_contrib/modules \-D BUILD_EXAMPLES=ON ..CMakeビルドシステムが完成すると、次のように表示されます。
-- Configuring done -- Generating done -- Build files have been written to: /home/linuxize/opencv_build/opencv/build -
次のコマンドを実行して、コンパイルプロセスを開始します。
make -j8-jを変更します プロセッサに応じてフラグを立てます。プロセッサのコア数がわからない場合は、nprocと入力して見つけることができます。 。システム構成によっては、コンパイルに数分以上かかる場合があります。完了すると、次のようなものが表示されます:
[100%] Built target example_tutorial_Threshold_inRange [100%] Linking CXX shared module ../../lib/cv2.so [100%] Built target opencv_python2 -
次のコマンドでOpenCVをインストールします:
sudo make install -
シンボリックリンク
opencv4.pcを作成します/usr/share/pkgconfigへのファイル ディレクトリを作成し、ldconfigを実行します ライブラリキャッシュを再構築します。sudo ln -s /usr/local/lib64/pkgconfig/opencv4.pc /usr/share/pkgconfig/sudo ldconfig次のように入力して、OpenCVのバージョンを確認します。
pkg-config --modversion opencv44.2.0 -
Python
cv2を有効にするには モジュールの実行:sudo ln -s /usr/local/lib/python2.7/site-packages/cv2 /usr/lib/python2.7/site-packages/モジュールをインポートし、OpenCVバージョンを印刷してインストールを確認します:
python -c "import cv2; print(cv2.__version__)"4.2.0-dev