Yolov5 に基づく Vue フロントエンド ターゲット検出およびトレーニング視覚化システム

1.物体認識(検出)

1. 重みを選択する

 例証します:

  1. yolov5s.pt、yolov5m.pt、yolov5l.pt、yolov5x.pt は、人、猫、犬、車などの一般的なオブジェクトを認識できる組み込みの事前トレーニング ウェイトです。
  2. 自己トレーニング ウェイトを選択して、特定のオブジェクトを識別および検出できます

2. 身分証明書をアップロードする

2. オブジェクトトレーニング

1. 画像アノテーション

1.1 新しいデータセットを作成する

 注意: 中国語は使用しないでください。

1.2 写真をアップロードする

 注: 画像名を中国語で表示することはできません。

1.3 ラベル付きデータセットを選択する

1.4 新しいラベルクラスの作成

  

1.5 ラベル表示

現在の画像をマークするたびに保存する必要があることに注意してください。

2. ウェイトトレーニング

2.1 データセットの選択

注: データ セットは完全にラベル付けされている必要があります。つまり、各画像には対応するラベル付け情報が必要です。

2.2 トレーニング前のウェイトを選択する

2.3 その他のトレーニングパラメータ

2.4 トレーニングを開始する

トレーニング ログの出力がメモリ制限を超える場合は、バッチ サイズ パラメーターを適切に減らしてください。

3. 業績と損失

3.1 トレーニングログの表示

3.2 トレーニング重量の検出

3. プロジェクトの展開

1. 環境要件

1.1 Dockerコンテナ

  • システム テスト環境は Ubuntu 16.04.6 LTS、Linux カーネルは 4.15.0 です。
   Static hostname: 304
         Icon name: computer-desktop
           Chassis: desktop
        Machine ID: 1d0f19d8da7049cdaa13ef3402ecdc18
           Boot ID: a07e6032ce044fac872d74c61b339b8f
  Operating System: Ubuntu 16.04.6 LTS
            Kernel: Linux 4.15.0-70-generic
      Architecture: x86-64
  • Docker コンテナーのバージョンは 19.03 です。新しいバージョンの Docker を使用してみてください。
Docker version 19.03.13, build 4484c46d9d

1.2 必要な画像

  • mysql:5.7 mysql データベースミラーリング
docker pull mysql:5.7
  • flasktrain:最新のプロジェクト ミラー
docker pull registry.cn-hangzhou.aliyuncs.com/lvjune/yolov5_train_system:latest

または Dockerfile からビルドします。

docker build . -t yolov5-train-system:latest

更新: ローカルに保存された sqlite3 データベースを優先して、mysql データベースの使用を削除しました。

2. プロジェクトの構成

2.1 データベース構成

  • ホストポート 33066、root パスワード 123456 にマップされた mysql データベースコンテナを開始します。
docker run -d -e MYSQL_ROOT_PASSWORD=123456 -p 33066:3306 mysql:5.7
  • 起動してコンテナに入り、データベースを作成します
mysql -uroot -p123456
create database train_system;

2.2 研修システムの構成

  • flasktrain コンテナを開始し、3 つのポートをマップします。つまり、5050 はバックエンド アクセス ポートに対応し、6060 は Tensorboard アクセス ポートに対応し、8080 はフロントエンド アクセス ポートに対応します。
docker run -d -p 5050:5000 -p 6060:6006 -p 8080:80 flasktrain
  • コンテナを起動してに入り、フロントエンド アクセス サーバーのアドレスを変更します。
vim /train/vue/config.js
FLASK_CONFIG.baseUrl = "http://服务器IP地址:5050"
FLASK_CONFIG.tensorboardUrl = "http://服务器IP地址:6060/"

更新: nginx をリバース プロキシとして使用すると、コンテナ内のフロントエンドとバックエンドのクロスドメイン アクセスの問題が解決されます。詳細については、nginx.confファイルのプロキシの内容を参照してください。ポートとアドレスのアクセス構成を手動で変更する必要はありません。

3. プロジェクトの実行

3.1 フロントエンドの実行

service nginx start

3.2 バックエンドの実行

cd /train && python run.py

3.3 ブラウザアクセス

http://服务IP地址:8080/

更新: 次のように、 startup.shファイルに起動コマンドを書き込みます

#!/bin/bash

# cd /train
host=`cat /etc/hosts | awk 'END {print}' | cut -f 1`
sed -i "s/127.0.0.1/${host}/g" nginx.conf
nginx -c /train/nginx.conf
python run.py

# docker run -d -p 80:80 yolov5trainsystem ./startup.sh
# set ff=unix
# chmod +x ./startup.sh

まずコンテナ内のdockerによって割り当てられた仮想アドレスを取得し、ホストアクセス用のnginxプロキシの127.0.0.1を置き換えてから、nginxフロントエンドとflaskバックエンドを起動します。

コンテナコマンドを開始します。

docker run -d -p 80:80 yolov5trainsystem:latest

ブラウザはポート 80 にアクセスします。

4. システムのソースコード

ソースコードのダウンロードリンク: https://download.csdn.net/download/weixin_47367099/85441361

おすすめ

転載: blog.csdn.net/weixin_47367099/article/details/124920115#comments_27174135