【Python/OpenCV】カラートラッキング(色追跡)で移動物体検知

Python版OpenCVでカラートラッキング(色追跡)を実装し、移動物体を検出する方法をソースコード付きで解説します。

カラートラッキング(色追跡)で移動物体検知

カラートラッキング(色追跡)は、その名の通り、特定の色のみを検出して追跡します。 カラートラッキングには、通常RGB色空間ではなく、同系統の色の範囲を数値で指定しやすいHSV色空間を用います。 HSV色空間とは、「色相(Hue)」「彩度(Saturation)」「明度(Value)」の3つの組み合わせで色を表現する手法です。

説明
色相(H) 色合い。(赤っぽい、青っぽいといった色のおおまかな違いのことで、赤なら0度、黄色なら 60度といったように角度で色合いが決まります)
彩度(S) 色の鮮やかさ。(色相が同じ場合でも、彩度が高ければ鮮やかに見え、低ければグレーに見える。彩度がゼロの場合は無彩色[黒、グレー、白])
明度(V) 色の明るさ。(高いほど明るい色になる)

今回は、PythonとOpenCVで以下の赤色物体を検知するプログラムを作成します。

【HSV色空間の赤色】

赤色の範囲 赤色の範囲(OpenCVの場合)
H 0~60, 300~360[度] 0~30, 150~179
S 50~100[%] 128~255
V 00~100[%] 0~255
記事の監修者
西住技研

プログラミング言語「Python」を研究、仕事、趣味でデータ分析や作業自動化などに活用してきたノウハウを情報発信しています。
筆者の詳しいプロフィールやお問合せはこちらのページまで。
YoutubeX(旧Twitter)でも情報発信中です!

西住技研をフォローする
OpenCV

コメント