OpenCVをインストールして活用する
パソコンやスマホカメラを利用した画像認識による顔認証が当たり前のになっていますが、ご紹介するPythonのOpenCVは顔認証にも利用されるPythonライブラリの1つです。この記事では、Python入門者に向けて、OpenCVの概要やインストール方法などを解説していきます。
OpenCVとは
正式名称は「Open Source Computer Vision Library」で、その名が示す通り、OpenCVはコンピューターを用いた画像処理や画像解析、機械学習などの機能を持つオープンソースのライブラリで、無料で利用することができます。
OpenCVはPython以外にもC/C++、Java、MATLAB用に公開され、学術用途から商用利用まで、幅広く利用されています。また、マルチプラットフォーム対応されており、あらゆるプラットフォームで活用されています。
【参考】:OpenCVの公式Webサイト
OpenCVの機能
OpenCVの機能には画像処理を中心に次のようものが実装されています。
▪画像のフィルタリング機能 ▪行列演算機能 ▪画像の読み込みや表示機能 ▪画像の作成と保存機能 ▪画像のトリミング、リサイズ、重ね合わせ機能 ▪画像の回転、上下反転、左右反転機能 ▪グレースケール変換、減色処理機能 ▪モザイク処理・マスク処理・2枚の画像合成機能 ▪図形描画・文字描画機能 ▪物体検出、認識機能 ▪機械学習機能 など
OpenCVのサポートOS
OpenCVでは次のプラットフォームが公式にサポートされているように、サーバーからパソコン、スマートフォンなどのあらゆるOS環境で利用できるのは大きな強みです。
▪Windows ▪Mac OS ▪Linux ▪iOS ▪Android
サポート言語
OpenCVを使える言語はC++、Java、Pythonです。OpenCVは最初はCからスタートしましたが、現在ではCはサポート対象外となっています。
OpenCVをインストールする
OpenCVの概要、機能などを理解したところで、実際にOpen-CVをインストールしてみましょう。Open-CVのインストールは大別すると、統合開発環境の1つであるAnacondaのcondoコマンドを用いる方法と、Python標準のpipを使う方法があります。
この両方の環境を同時に利用すると、さまざまな不具合を招く原因となりますので、インストールの際はPython入門者の方はpipを、日常からAnacondaを利用している方はcondoを使ってください。ここでは、pipを用いたインストールを紹介します。
pipを使う前にPythonのバージョンを確認する
OpenCVをpipでインストールする方法が一般的ですが、バージョンが3.4以降Pythonがインストールされていればpipは附属しており、pipを新たにインストールする必要はありません。
コマンドラインからpipコマンドを入力するだけで「OpenCV」と依存パッケージのnumpyがインストールされます。pipがインストールされているかどうか、Pythonのバージョンが気になる場合はコマンドラインから「python --version」と入力します。
Pythonのバージョンが3.10.0であることを確認できましたたので、pipもインストールされていると分かります。
ちなみにPythonのバージョンが古いとOpenCVがインストールできないという問題が生じることがありますので、特段の理由がない限りはPythonを新しいバージョンにしてからライブラリのインストールをしましょう。
Pythonがインストールされていない場合
Pythonがインストールされていない場合は、Pythonのインストールが必要です。PythonがインストールされていないPCでは、まずPythonを以下の公式サイトからPythonをインストールしておきましょう。
OpenCV-Pythonをpipでインストールする
ではコマンドラインから「pip install OpenCV-Python」と入力してOpen-CVをインストールしてみましょう。先ほど紹介したように、OpenCVにはC++、Java用がありますので、Python用のOpenCVはpipコマンドを使ってPythonライブラリのリポジトリであるPyPI(The Python Package Index)からインストールします。
インストールが終了し、「Successfully installed OpenCV-Python4.5.4.60と表示されればインストールは完了です。 依存パッケージであるnumpyも無事にインストールされています。
OpenCV-Contrib-Pythonをインストールする
OpenCVと併せて、OpenCVの拡張モジュール群である contrib をインストールしておきましょう。コマンドラインから「pip install opencv-contrib-python」とコマンドを入力します。
インストールが終了し、「Successfully installed opencv-contrib-python-4.5.4.60」と表示されればインストール完了です。
OpenCVを使ってみよう
OpenCVの利用環境が整ったら、早速試してみましょう。 Jupyter Notebookを立ち上げ、Notebook画面で動作をさせてみましょう。
Jupyter Noteをpipでインストールする
Jupyter-Notebookをインストールしていない方は、Jupyter-Notebookをインストールしましょう。
Jupyter-NotebookはPython向けの統合開発環境(IDE)です。Jupyter-Notebookは、ビジュアルデータを扱うのに適したツールですので、グラフ作成やデータ分析に強いMatplotlibと一緒にインストールしておくと良いでしょう。
Jupyter-Notebookのインストールはコマンドプロンプトから「pip install jupyter」とpipコマンドを入力すれば、Jupyter-Notebookと関連するライブラリが自動的にインストールされます。
Matplotlibをpipでインストールする
グラフ描画が得意な画像処理ライブラリのMatplotlibもインストールしておくと、大変重宝します。Matplotlibをインストールするには、コマンドプロンプトから「pip install matplotlib」と入力するだけでインストールできます。
「Successfully installed matplotlib-3.5.1」という表示がされればインストールは完了です。
実際に画像の読み込みをしてみる
OpenCVの実行環境が整ったところで、画像処理を試してみましょう。今回はフリー画像をダウンロードし、実際に読み込んでみます。
読み込んだ画像はこちらです。
【参考】:参考画像-pixabay
この画像をC:\work\imageの下に「dog.jpg」のファイル名で配置しておきます。
作成したデモプログラムは以下の通りです。
import matplotlib.pyplot as plt import cv2 %matplotlib inline # 画像の読み込み img = cv2.imread(C:\work\image\dog.jpg) # 画像の描画 plt.imshow(img)
「%matplotlib inline」は、Jupyter Notebookで、Notebook上にグラフ描画を行うために記述してあります。
上記のデモプログラムをNotebookのセルに貼り付け、[Run](実行)ポタンをクリックしテプログラムを実行します。すると、次のように読み込んだ画像が表示されます。
OpenCVを用いると簡単に画像の処理が行えることが分かりました。
OpenCVの可能性
この記事ではOpenCVの概要、インストール方法、簡単なデモをご紹介しました。OpenCVの魅力や可能性をご理解いただけたかと思います。OpenCVはサンプルコードが非常に多くあり、それらを利用すればほとんどノンプログラミングでさまざまなアプリを開発できます。
近年、顔認証技術が向上し、AIがカメラ画像から簡単に本人特定ができるようになりました。OpenCVの注目度は高く、OpenCVを使いこなせるエンジニアの需要が高まっています。OpenCVに興味を持たれた方は、この記事を参考にOpenCVをインストールし、ぜひ習得してみてください。
編集部オススメコンテンツ
アンドエンジニアへの取材依頼、情報提供などはこちらから