Skip to main content

Yolov5を使用して独自のデータセットをトレーニングし、reTerminal DMにデプロイする

note

この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues

はじめに

物体検出はコンピュータビジョンの基本的な側面であり、画像内の物体を識別することを含みます。この技術は監視、医療、自動運転車など多くの分野で応用されています。シングルステージ物体検出器は、初期の領域提案ステージを必要とせずに、直接物体のカテゴリとバウンディングボックスの座標を予測することで、このタスクを簡素化する特定のモデルカテゴリです。この効率化されたアプローチは、特にリアルタイムアプリケーションで価値があります。特に、YOLO(You Only Look Once)モデルファミリーは、この効率性を示しており、精度を損なうことなく高速な物体検出を提供します。

始める前に

このプロジェクトを開始する前に、以下に記載されているように、ハードウェアとソフトウェアを事前に準備する必要があります。

ハードウェアの準備

reTerminal DMCoral USB Accelerator

ソフトウェアの準備

公式ウェブサイトから最新バージョンのRaspberry Pi 64ビットOSをインストールすることをお勧めします。新しいRaspbian OSをインストールしたい場合は、このガイドに従ってください。

Roboflow

pir

Roboflowは、コンピュータビジョンのための包括的なプラットフォームであり、コンピュータビジョンモデルの開発とデプロイプロセスを簡素化するための幅広いツールとサービスを提供します。その際立った特徴の1つは、注釈付きのカスタムデータセットに対する強力なサポートです。ユーザーは独自のデータセットを簡単にアップロードし、注釈付きでコンピュータビジョンモデルをトレーニングおよび微調整することができます。そのため、アカウントを作成してください。

Ultralytics

pir

Ultralyticsは、コンピュータビジョンとディープラーニングを専門とする最先端のプラットフォームおよび研究機関です。特にYOLO(You Only Look Once)物体検出モデルファミリーの開発における貢献で知られています。Ultralyticsは、物体検出、画像分類などのための最先端ツールとオープンソースソフトウェアを提供し、研究者や開発者が高度なコンピュータビジョンを利用できるようにしています。革新と性能重視のソリューションへの取り組みにより、コンピュータビジョンコミュニティで注目と評価を集めており、ディープラーニングと視覚認識の可能性を追求する人々にとっての頼りになるリソースとなっています。

Roboflowからデータセットを選択する

  • ステップ 1 提供されたウェブサイトにアクセスし、検索機能を使用して希望のデータセットを見つけてください。Roboflow

pir

  • ステップ 2 データセットを選択したら、Download this Dataset をクリックしてください。

pir

  • ステップ 3 YOLOv5のダウンロード形式を選択してください。

pir

  • ステップ 4 show download code を選択し、続行を押してください。

pir

  • ステップ 5 「Jupyter」セクションにコードスニペットが表示されます。このスニペットをクリップボードにコピーしてください。

pir

カスタムデータセットをトレーニングする

  • ステップ 1 提供されたGitHubリンクにアクセスし、Open in Colab をクリックしてください。GitHub Link

pir

Open In Colab
note

Raspberry Piのようなリソース制約のあるデバイスにモデルをデプロイする前に、モデルの変換と量子化を行うことが重要です。このプロセスには、PyTorchモデル(.pt形式)をTensorFlow Lite(TFLite)モデルに変換し、特にuint8データ型に量子化する手順が含まれます。このColabノートブックを使用して、カスタムデータセットをトレーニングし、TFLiteモデルに変換することができます。Colab環境内でのトレーニング手順をステップバイステップで説明していますので、これに従ってdata.yamlファイルとbest-int8.tfliteファイルを取得し、このWikiに戻って次の手順を進めてください。

reTerminal DMを準備する

  • ステップ 1 ターミナルで以下のコマンドを1つずつ実行してください。
sudo git clone https://github.com/ultralytics/yolov5
cd yolov5
pip install -r requirements.txt
sudo apt-get install python3-tflite-runtime
  • ステップ 2 Data.yamlファイルとbest-int8.tfliteファイルをyolov5フォルダ内に貼り付けてください。

pir

detect.pyを使用した推論

  • ステップ 1 reTerminalを開き、yolov5フォルダに移動してください。
cd yolov5
  • ステップ 2 detect.pyを使用して推論を行います。
python detect.py --weight best-int8.tflite --img 224 --source <your source > --nosave --view-img --data data.yaml
note

公式のUltralytics GitHubサイト https://github.com/ultralytics/yolov5 を参照して、detect.pyスクリプトの使用方法や、YOLOv5モデルに画像やビデオストリームを入力するために利用できるさまざまなソースについて学ぶことができます。

Edge TPUでの実行

YOLOv5nモデルをEdge TPU上で展開することは、最先端の物体検出技術と高性能なエッジコンピューティングのダイナミックな融合を表しています。この統合により、リソースが限られた環境でのリアルタイム物体認識など、エッジAIアプリケーションが可能となり、セキュリティ監視、小売分析、自律システムなどのタスクにおいて非常に価値のあるものとなります。YOLOv5nの効率的な設計はEdge TPUのハードウェアアクセラレーションと完璧に調和し、ネットワークのエッジで低遅延かつリアルタイム処理が求められる場面で迅速かつ正確な物体検出を実現します。

  • detect.pyを使用した推論
python detect.py --weight best-int8_edgetpu.tflite --img 224 --source <your source > --nosave --view-img --data data.yaml

リソース

技術サポート

弊社製品をお選びいただきありがとうございます!製品の使用体験がスムーズになるよう、さまざまなサポートを提供しております。異なる好みやニーズに対応するため、いくつかのコミュニケーションチャネルをご用意しています。

Loading Comments...