Kazuhito00 / YOLOX-ONNX-TFLite-Sample

YOLOXのPythonでのONNX、TensorFlow-Lite推論サンプルです。

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

YOLOX-ONNX-TFLite-Sample

YOLOXのPythonでのONNX、TensorFlow-Lite推論サンプルです。
ONNX、TensorFlow-Liteに変換したモデルも同梱しています。変換自体を試したい方はYOLOX_PyTorch2TensorFlowLite.ipynbを使用ください。

YOLOX-ONNX-DEMO.mp4

Requirement

  • Pytorch 1.9.0 or later
  • apex 0.1 or later
  • pycocotools 2.0 or later
  • OpenCV 3.4.2 or later
  • onnxruntime 1.5.2 or later

Demo

デモの実行方法は以下です。

python sample_onnx.py
  • --device
    カメラデバイス番号の指定
    デフォルト:0
  • --movie
    動画ファイルの指定 ※指定時はカメラデバイスより優先
    デフォルト:指定なし
  • --image
    画像ファイルの指定 ※指定時はカメラデバイスや動画より優先
    デフォルト:指定なし
  • --width
    カメラキャプチャ時の横幅
    デフォルト:960
  • --height
    カメラキャプチャ時の縦幅
    デフォルト:540
  • --model
    ロードするモデルの格納パス
    デフォルト:model/yolox_nano.onnx
  • --input_shape
    モデルの入力サイズ
    デフォルト:416,416
  • --score_th
    クラス判別の閾値
    デフォルト:0.3
  • --nms_th
    NMSの閾値
    デフォルト:0.45
  • --nms_score_th
    NMSのスコア閾値
    デフォルト:0.1
  • --with_p6
    Large P6モデルを使用するか否か
    デフォルト:指定なし
python sample_tlite.py
  • --device
    カメラデバイス番号の指定
    デフォルト:0
  • --movie
    動画ファイルの指定 ※指定時はカメラデバイスより優先
    デフォルト:指定なし
  • --image
    画像ファイルの指定 ※指定時はカメラデバイスや動画より優先
    デフォルト:指定なし
  • --width
    カメラキャプチャ時の横幅
    デフォルト:960
  • --height
    カメラキャプチャ時の縦幅
    デフォルト:540
  • --model
    ロードするモデルの格納パス
    デフォルト:model/yolox_nano_float16_quantize.tflite
  • --input_shape
    モデルの入力サイズ
    デフォルト:416,416
  • --score_th
    クラス判別の閾値
    デフォルト:0.3
  • --nms_th
    NMSの閾値
    デフォルト:0.45
  • --nms_score_th
    NMSのスコア閾値
    デフォルト:0.1
  • --with_p6
    Large P6モデルを使用するか否か
    デフォルト:指定なし

Reference

Author

高橋かずひと(https://twitter.com/KzhtTkhs)

License

YOLOX-ONNX-TFLite-Sample is under Apache-2.0 License.

License(Movie)

サンプル動画はNHKクリエイティブ・ライブラリーイギリス ウースターのエルガー像を使用しています。

About

YOLOXのPythonでのONNX、TensorFlow-Lite推論サンプルです。

License:Apache License 2.0


Languages

Language:Python 79.4%Language:Jupyter Notebook 20.6%