PythonでコンピュータビジョンのライブラリであるOpenCVをインストールする方法を解説します。
Contents
PythonでOpenCVを利用する
OpenCVとは
OpenCV (Open Source Computer Vision Library)は、オープンソースのコンピュータビジョン及び機械学習ライブラリで、Intelによって開発されました。公式サイトはこちらを参照してください。
OpenCVは、C++で開発されており、Python、Java、Matlab等の言語に対するバインディングを提供しているため、多くのプログラミング言語で使用することができます。OSについても、Windows、Linux、Mac等の主要なOSをサポートしています。
このライブラリでは、リアルタイム処理を意図しており、画像処理、ビデオキャプチャ、顔認識、物体検出、機械学習等の多岐にわたるタスクに対応しています。
Pythonのバインディングのライブラリとしては、cv2
モジュールが提供されています。cv2
の「2」はOpenCVのバージョンとは関係なく、記事執筆時点での最新はOpenCV4です。ドキュメントによっては、cv
と誤って表記している場合があります。OpenCV4ではcv2
がモジュール名であることを覚えておいてください。
この記事では、OpenCVをPythonで使うためのインストール方法について紹介します。
OpenCV環境のインストール方法
前提
Pythonの環境がインストールされているものとします。Pythonのインストール方法は「Pythonのインストール方法(Windows)」を参考にしてください。また、OpenCVは記事執筆時点で最新のOpenCV4を使用します。
関連ライブラリ
以下のライブラリは、OpenCVを使用するにあたってインストールしておく必要があります。
ライブラリ | 概要 |
---|---|
NumPy | 数値計算ライブラリでOpenCVをPythonで使用するにあたっての前提となります。 |
SciPy | Pythonの科学技術計算用ライブラリでNumPyに近いライブラリです。OpenCVの前提ではありませんが、OpenCVの画像を操作するのに役立ちます。 |
OpenNI 2 | オプションの関連ライブラリです。AsusのXtion PROのような深度カメラ(センサ)を扱う機能を提供します。 |
この記事では、以下のようにNumPyとScipyをpipでインストールしておきます。
pip install numpy scipy
インストール方法 (pip package)
OpenCVでは、opencv_contribモジュールが用意されており、pipを使って以下のようにインストールができます。
pip install opencv-contrib-python
上記を実行することで、OpenCVを使用する環境を用意することが可能です。基本的に、OpenCVを使用したい場合には、上記のインストールで十分かと思います。
pip installの際に以下のようにインストールすることもできますが、この場合主要なモジュールのみインストールされます。
pip install opencv-python
上記でも最低限使用はできますが、使用するOpenCVの機能によってはcontribパッケージが必要な場合があるため、フルパッケージでインストールする場合には「contrib」をつけてインストールしてください。
動作確認
OpenCVがインストールできていることを確認するには、簡単なサンプルスクリプトを実行してみることです。いくつかのサンプルコードがOpenCVのソースコードのアーカイブに存在しています。
OpenCVのリリースページで最新アーカイブのSourceの部分をクリックして、ソースコードをダウンロードしてください。ZIPファイルがダウンロードできます。
解凍したフォルダ配下にsamples\pythonというフォルダがありますが、ここにPython用のサンプルスクリプトがあります。
例えば、サンプルスクリプトのhist.pyを実行してみましょう。
python hist.py
上記を実行すると、画像処理でよく見るレナの画像が表示されます。
また、以下のようにKeymapの表示がされ、ヒストグラムを表示する際に使用できるキーが分かります。
usage : python hist.py <image_file> Histogram plotting Keymap : a - show histogram for color image in curve mode b - show histogram in bin mode c - show equalized histogram (always in bin mode) d - show histogram for gray image in curve mode e - show histogram for a normalized image in curve mode Esc - exit
具体的にキーボードで「a」等を押すとカラー画像のヒストグラムが表示されます。
また、「b」を押すとグレースケールでの画像とヒストグラムが表示されます。
上記のようにサンプルスクリプトが動作すれば、OpenCVを使用できる環境ができたことになります。
まとめ
PythonでコンピュータビジョンのライブラリであるOpenCVをインストールする方法を解説しました。
OpenCVは、オープンソースのコンピュータビジョン及び機械学習ライブラリで、Pythonバインディングとしてcv2
モジュールが提供されています。
この記事では、OpenCVをインストールしてサンプルスクリプトを実行する方法を紹介しました。OpenCVがインストールできれば、様々なOpenCVの機能をPythonから試すことができます。
OpenCVは、コンピュータビジョンでは非常に有名なライブラリですので、ぜひインストールして色々と使ってみてもらえたらと思います。