画像や動画の処理に特化したコンピュータービジョンのライブラリにOpenCVというものがあります。ここではPythonとOpenCVを使って基本的な画像処理を学んでいきましょう。
Pythonのデータ分析でライブラリのNumPy、Pandas、Matplotlibなどを使いますが、機械学習の中で画像認証と言ったものも扱われており、画像や動画の処理も必要になってきます。
ここでは、OpenCVの公式サイトで扱っている内容を参考に進めて行きたいと思います。
上記サイトは英語ですが、以前のチュートリアルを日本語訳されたものもあります。
画像処理までになると高い数学的な素養があった方が深い理解には役立つとは思いますが、ここでは厳密な数学的な説明は行いません。とりあえず動かしてみるということに主眼を置いています。関心のある方はいろいろと検索や専門書に当たってみてください。
OpenCVを使った画像ファイルの操作の基礎
OpenCVライブラリをインポートして、画像ファイルの基本的な操作を学んでいきます。
図形の描画 – rectangle(), circle(), line(), putText(), polylines()
マウスでの直接描画 – setMouseCallback()とマウスイベント
OpenCVとPythonを使った画像処理
ここでは画像の色々な処理を学んでいきます。
画像の合成 – addWeighted(), bitwise演算, ROI
ピクセル毎の論理演算 – AND, OR, XOR, NOT
モルフォロジー変換 – erode(), dilate(), morphologyEx()
画像のヒストグラム – calcHist(), equalizeHist()
OpenCVとPythonを使った動画の基礎
webカメラを使って動画の処理について学んでいきます。
OpenCVとPythonを使った物体の検出
ここでは画像処理の中での物体の検出について学んでいきます。
輪郭の検出 – findContours(), drawContours()
OpenCVとPythonを使った物体の追跡
ここでは物体の追跡(Object Tracking)について学んでいきます。