OpenCV3.4.2 dnn モジュールを使うと、TensorFlow の学習済みモデルを利用した、
Object Detection AP が簡単に出来ると言う事なので、試してみました。
参考ページは、こちらになります。
TensorFlow Object Detection API
おんちゃんは、入力をWebカメラ、USBカメラにしました。
Model は、MobileNet-SSD v2 / 2018_03_29 を使っています。
使った感想は、検出オブジェクトの重複があるようで、重複を削る所が足りないような気がします。
但し、CPU だけで、結構な速度が出るのは、関心しました。
もしかしたら、 OpenCV の dnn では、TensorFlow Lite の様なモデルの軽量化をしているのかもしれません。
後、Boxの枠ですが、画像ファイルだと大体出来ていますが、動画だと少し変です。おおんちゃんの
プログラムミスかもしれません。
以上です。コッホ!!
注) OpenCV3.4.2 以降を使ってください。古いバージョンだとエラーが出ます。
取り敢えず、プログラムはこちらです。
object__detection_cv3__cam.py