Skip to main content

iinfer: An application that executes AI model files in onnx or mmlab format.

Project description

iinfer (Image Inference Application)

onnx又はmmlabフォーマットのAIモデルファイルを実行するアプリケーションです。 ドキュメントはこちら

iinferの動作イメージ

iinferの動作イメージ

  1. iinfer clientimageファイルcamera から画像を取得し、 推論結果 predict.json を出力します。
  2. iinfer server は推論を行うサーバーです。 iinfer client からの要求に応えて、推論結果を iinfer client に返します。
  3. iinfer server は予め ai model をロードしておくことで、推論を高速化します。
  4. iinfer clientiinfer serverRedis 経由で通信します。
  5. iinfer serverRedisdockerコンテナ を使用して起動させることが出来ます。

インストール方法

次の手順でインストールしてください:

  1. pipを使用してインストールします:
pip install --upgrade pip
pip install iinfer
eval "$(register-python-argcomplete iinfer)" # Ubuntuの場合コマンドラインオプションを補完できるようにします。
  1. コンテナをインストールして起動します。: ※docker及びdocker-composeを別途インストールしておく必要があります。
cd ~/
iinfer -m install -c server
docker-compose -f up -d

※インストールを実行したフォルダに docker-compose.yml が作成されます。

iinferの使用方法

iinferを使用するには、次のコマンドを実行します:

  1. guiモードで利用する場合:

guiモードのイメージ

iinfer -m gui -c start
  1. コマンドモードで利用する場合

    1. AIモデルのデプロイ:
    # 画像AIモデルのデプロイ
    # 推論タイプはモデルのAIタスクやアルゴリズムに合わせて指定する。指定可能なキーワードは"iinfer -m client -c predict_type_list"コマンド参照。
    iinfer -m client -c deploy -n <任意のモデル名> -f \
                               --model_file <モデルファイル> \
                               --model_conf_file <モデル設定ファイル> \
                               --predict_type <推論タイプ> \
                               --label_file <ラベルファイル>
    
    # デプロイされている画像AIモデルの一覧
    iinfer -m client -c deploy_list -f
    
    1. AIモデルのセッションを開始:
    # 画像AIモデルを起動させて推論可能な状態に(セッションを確保)する
    # use_trackを指定するとObjectDetectionタスクの結果に対して、MOT(Multi Object Tracking)を実行しトラッキングIDを出力する。
    iinfer -m client -c start -n <モデル名> -f \
                              --use_track
    
    1. 推論を実行:
    # 推論を実行する
    # output_previewを指定するとimshowで推論結果画像を表示する(GUI必要)
    iinfer -m client -c predict -n <モデル名> -f \
                                -i <推論させる画像ファイル> \
                                -o <推論結果の画像ファイル> \
                                --output_preview
    
    # カメラキャプチャー画像を元に推論を実行し、クラススコアが0.8以上の物体のみを検出する
    # --stdin --image_type capture で標準入力のキャプチャー画像を推論する
    iinfer -m client -c capture | \
    iinfer -m client -c predict -n <モデル名> \
                                --stdin \
                                --image_type capture \
                                --nodraw | \
    iinfer -m postprocess -c det_filter -f -P \
                                --stdin \
                                --score_th 0.8
    
    1. AIモデルのセッションを開放:
    # 画像AIモデルを停止させてセッションを開放
    iinfer -m client -c stop -n <モデル名> -f
    

Lisence

This project is licensed under the MIT License, see the LICENSE file for details

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iinfer-0.5.2.tar.gz (454.6 kB view details)

Uploaded Source

Built Distribution

iinfer-0.5.2-py3-none-any.whl (835.7 kB view details)

Uploaded Python 3

File details

Details for the file iinfer-0.5.2.tar.gz.

File metadata

  • Download URL: iinfer-0.5.2.tar.gz
  • Upload date:
  • Size: 454.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for iinfer-0.5.2.tar.gz
Algorithm Hash digest
SHA256 76b61d59a3126930b8f8aca5b7addf2d6a7ea03bb14de4f90213631f039cd4ce
MD5 ff8b0f47d18d43225e54297c204ac692
BLAKE2b-256 4813d3e8a643587f7a8395de1c57c98c116f8f788cf7d7d9c32f1d5fd1f8a511

See more details on using hashes here.

File details

Details for the file iinfer-0.5.2-py3-none-any.whl.

File metadata

  • Download URL: iinfer-0.5.2-py3-none-any.whl
  • Upload date:
  • Size: 835.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for iinfer-0.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 58044c1d1c2bd5ae5d36574323e4bbe8c8d82be1367e2e83fe274ab3ed193063
MD5 c46f20698a31c127a07e1f251fe2820e
BLAKE2b-256 c0a4430f617ee66bc0611d7f9bef30dedd050199cb0ac9901808d3e59cd62601

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page