TechC-SugarCane / ImageRecognitionWinApp

WindowsのGUIアプリ上で、モデルの推論を動作させる
1 stars 0 forks source link

ImageRecognitionWinApp

カメラ映像から入力される動画(画像)を、「サトウキビ」「パイナップル」「雑草」に分類し、バウンディングボックスを表示させます。

推論には、こちらのリポジトリで作成したモデルを使って行います。

モデルは、YOLO v7とNASを使用しています。

また、GUIアプリのフレームワークには、CustomTkinterというPythonでGUIアプリが作れるものを使っています。

TODO

画像

ユーザーフロー

※画像がリンク切れを起こしていますが、画像の所在が不明なので対処できていません。

ImageRecognitionWinAppUserFlow.png

画面一覧

imagerecognitionwinapp_screen.png

Setup

1. git-lfsのインストール

テスト用の動画ファイルを扱うために、git-lfsをインストールしてください。

# mac
brew install git-lfs

# windows
# https://git-lfs.github.com/ からインストーラをダウンロードしてインストール

# git-lfsの初期化
git lfs install

2. リポジトリをクローン

git clone git@github.com:TechC-SugarCane/ImageRecognitionWinApp.git

cd ImageRecognitionWinApp

3. Pythonの環境構築

pyenv install

4. 仮想環境を作成

python -m venv .venv

5. 仮想環境を有効化

# mac
source .venv/bin/activate

# windows
.venv\Scripts\activate

6. ライブラリをインストール

# CPUで推論を行う場合
pip install -r requirements-cpu.txt

# GPUで推論を行う場合
pip install -r requirements-gpu.txt

Usage

1. モデルのダウンロード

こちらに従い、すべてのモデルをダウンロードしてください。

その後、modelディレクトリにダウンロードしたモデルを配置してください。

2. アプリの起動

python setup_view.py

# テスト用の動画を使って推論を行う場合
python setup_view.py --test

# serial通信を使って、ノズルから噴出させる場合
python setup_view.py --serial

3. アプリの操作

  1. モデルのバージョンと推論させたい対象を選択
  2. 左の開始ボタンを押して、カメラ映像を取得し、推論を開始 ※カメラを二台使用する場合は、右の開始ボタンも押してください
  3. 推論を停止したい場合は、停止ボタンを押してください

コントリビューター向けガイドライン

コントリビューター向けのガイドラインについては、こちらのCONTRIBUTING.mdを参照してください。