スポンサーリンク

Raspberry Pi 3とUSBカメラで物体追跡カメラを作る

python

はじめに

顔を追跡するカメラを目標にしてましたがおまけで物体追跡も試してみました。

おまけなので試すだけで投稿しないつもりでしたが、全然うまくいかず苦戦したので記録に残そうと思い投稿しました。

まあ原因はカメラモジュールが重すぎたせいだったりするんですが・・・

カメラモジュールからUSBカメラに変えたらうまくいきました。

 

参考サイト

PonDad様のこちらのサイトのものを使わせていただきました。

 

コード内のコメントはこちらのumentu様のコードを参考にさせていただきました。

 

構成図、回路図

過去のサーボと同じです。こちらを参照してください。

 

pythonコード

pythonのバージョンは3.5.3、OpenCVのバージョンは3.1.0で動作させました。

 

以下箇所は私が動作確認したいがために追加したものです。物体追跡するためだけならコメントアウトしたほうがスムーズです。これがある4つの画面を閉じないと物体追跡してくれないので。。

cv2.imshow(‘test1’, frame)

cv2.imshow(‘test2’, roi)

cv2.imshow(‘test3’, hsv_roi)

cv2.imshow(‘test4’, img_mask)

cv2.waitKey(0)

 

動作について

流れとしては初めに画面中央に移った物体を追跡するものです。

物体追跡するものの見本です。

緑色のカラーボールを追跡してもらいました。

 

各 cv2.imshow 箇所で画像を取得してみました。

①test1箇所で取得した画像です。全体図ですね。

 

②test2箇所で取得した画像です。全体図から切り出したこの画像部分を追跡してくれます。

 

③test3で取得した画像です。test2のHSV変換後です。

 

④test4で取得した画像です。test2のマスク後です。

 

こちらは物体追跡しているときの画面です。

 

動画はこちらです。

 

 

最後に

カメラモジュールでやると重いからかうまく物体追跡してくれませんでした。。

ラズパイで物体追跡、顔認証するならUSBカメラのほうが安定すると思います。

 

コメント

タイトルとURLをコピーしました