Google MobileObjectLocalizerのPythonでの動作サンプルです。
ONNXに変換したモデルも同梱しています。
変換自体を試したい方はMobileObjectLocalizer_tf2onnx.ipynbを使用ください。
MobileObjectLocalizer-Demo.mp4
2021/09/19時点でTensorFlow Hubで提供されている以下モデルを使用しています。
MobileObjectLocalizerはクラスに依存しないオブジェクト検出器です。
オブジェクト分類は無く、検出されるクラスは1種類(Entity)のみです。
このモデルは、画像内の最も目立つ物体を検出するのに適しています。
自動運転のための障害物や人間の検出などのミッションクリティカルな使用には適していません。
- TensorFlow 2.6.0 or later
- tensorflow-hub 0.12.0 or later
- OpenCV 3.4.2 or later
- onnxruntime 1.5.2 or later ※ONNX推論を使用する場合のみ
デモの実行方法は以下です。
python demo_onnx.py
- --device
カメラデバイス番号の指定
デフォルト:0 - --movie
動画ファイルの指定 ※指定時はカメラデバイスより優先
デフォルト:指定なし - --width
カメラキャプチャ時の横幅
デフォルト:960 - --height
カメラキャプチャ時の縦幅
デフォルト:540 - --model
使用モデルのパス指定
デフォルト:'model/object_detection_mobile_object_localizer_v1_1_default_1.onnx' - --score
キーポイント表示の閾値
デフォルト:0.2
python demo_tflite.py
- --device
カメラデバイス番号の指定
デフォルト:0 - --movie
動画ファイルの指定 ※指定時はカメラデバイスより優先
デフォルト:指定なし - --width
カメラキャプチャ時の横幅
デフォルト:960 - --height
カメラキャプチャ時の縦幅
デフォルト:540 - --model
使用モデルのパス指定
デフォルト:'model/object_detection_mobile_object_localizer_v1_1_default_1.tflite' - --score
キーポイント表示の閾値
デフォルト:0.2
高橋かずひと(https://twitter.com/KzhtTkhs)
Mobile-Object-Localizer-Sample is under Apache-2.0 License.