LoginSignup
15
18

More than 5 years have passed since last update.

Raspberry Pi サーボモーターとOpen CVで顔追跡カメラ(Haar-like)

Posted at

物体追跡カメラに続いて、顔追跡カメラもRaspberryPiで作ってみました。Python3系で動きます。OpenCVで顔認識されたものを追尾します。「サミュエル・L・ジャクソン(のフィギュア)」で試してみます。

2017-03-17 23_42_29.gif

環境

前回記事と同じです。

Haar-like特徴分類器を使った顔認識

OpenCVで顔認識するのって、あまり深く考えずに利用していたのですが、以下の記事で詳しくまとめられていましたので改めて見直してみました。

OpenCVで物体検出器を作成する② ~Haar-Like特徴~ - 技術者ブログ

OpenCVでのデフォルトで利用出来るカスケード分類器は明暗部分を利用しているんですね。

OpenCV Face Detection: Visualized on Vimeo 2017-03-17 23-55-14.png

OpenCV Face Detection: Visualized - Vimeo

haarcascade_frontalface_alt.xmlを利用した顔認識を使うと、cascade.detectMultiScale()メソッドを利用して顔の範囲を表す座標を取得する事が出来ます。

この座標から顔の中心点の座標を計算し、画像の中心点から顔座標が移動した分だけサーボモータを使いカメラを移動させてみました。

face_tracking.py - Gist

PCA9685.py - Gist

まとめ

サンプルはフィギュアを使ったGifを載せていますが、自分の顔でももちろん反応します。

モーターの制御をもう少し工夫すれば、顔を追跡して笑顔を自動シャッターとか手軽に出来るかもしれませんね。では。

15
18
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
18