OpenCV サンプル Python プログラム

概要

OpenCV と Python を組み合わせた画像・動画処理のプログラムと説明のページ集である。動作環境は Python 3.12OpenCV 5 とする。

対象領域

画像処理の基礎:色空間変換、ヒストグラム解析、ノイズ除去フィルタリング、2値化(OTSU の方法・適応的2値化)、モルフォロジー演算(画像の形を膨張・収縮させる処理)、輪郭抽出、Canny エッジ検出、HoG 特徴量抽出などを網羅する。

セグメンテーション:GrabCut 法を用いた対話的・自動的な前景背景分離とセグメンテーション(画像を意味のある領域に分ける処理)。

動画処理とカメラの活用:リアルタイムのカメラ映像の取得と書き出し、フレーム間差分による動体検出、オプティカルフロー(画面内の動きの向きと大きさの推定)を用いた動き推定とトラッキング。

応用:ステレオマッチングによる奥行き推定、顔検出、イメージスティッチング(複数の画像をつないでパノラマ画像を作る処理)。

特徴と意義

品質検査、監視システム、自律ロボット、AR/VR、医療画像解析などへの応用が想定される。

目次

関連する外部ページ

サイト内の関連情報

第1章 画像・動画処理(OpenCV)

OpenCV と Python を使用した画像処理、動画処理、および関連技術の解説リンク集である。画像表示、色空間変換、ノイズ除去、2値化、輪郭抽出などの基本的な処理から、ステレオマッチング、顔検出、イメージスティッチングなどの応用技術までを扱う。

画像処理の基礎(OpenCV,Python使用)

前景背景分離とセグメンテーション(OpenCV,Python使用)

動画処理とカメラの活用(OpenCV,Python使用)

高度な応用(OpenCV,Python使用)

第2章 サンプル画像の準備と OpenCV 5 での注意点

OpenCV 5 では、モジュールの構成が一部変更された。HoG 特徴量を扱う cv2.HOGDescriptor と、Haar Cascade による検出を行う cv2.CascadeClassifier は opencv_contrib(xobjdetect モジュール)へ移動したため、これらを使うには opencv-contrib-python が必要である。顔検出では、OpenCV 5 の objdetect モジュールに含まれる DNN ベースの検出器 cv2.FaceDetectorYN(YuNet)を使う方法があり、公式の移行ガイドでは Haar Cascade より高速で精度が高いと説明されている。