YOLOv5 クイックスタート 🚀#
Ultralytics YOLOv5で、リアルタイム物体検出のダイナミックな世界への旅を始めましょう!このガイドは、YOLOv5を習得したいAI愛好家や専門家向けの包括的な入門資料です。初期セットアップから高度なトレーニング手法まで、必要な情報を網羅しています。このガイドを終える頃には、最先端のディープラーニング手法を使用して、YOLOv5を自信を持ってプロジェクトに実装するための知識が身に付いているでしょう。エンジンを始動し、YOLOv5の世界へ飛び立ちましょう!
インストール#
YOLOv5リポジトリをクローンし、環境を構築して、起動に備えましょう。これにより、必要な要件がすべてインストールされます。Python>=3.8.0とPyTorch>=1.8が準備できていることを確認してください。これらの基盤ツールは、YOLOv5を効果的に実行するために不可欠です。
git clone https://github.com/ultralytics/yolov5 # clone repository
cd yolov5
pip install -r requirements.txt # install dependenciesPyTorch Hubでの推論#
YOLOv5のPyTorch Hub推論の簡便さを体験しましょう。最新のYOLOv5リリースからモデルがシームレスにダウンロードされます。この方法では、PyTorchの機能を活用してモデルの読み込みと実行を簡単に行えるため、予測を容易に取得できます。
import torch
# Model loading
model = torch.hub.load("ultralytics/yolov5", "yolov5s") # Can be 'yolov5n' - 'yolov5x6', or 'custom'
# Inference on images
img = "https://ultralytics.com/images/zidane.jpg" # Can be a file, Path, PIL, OpenCV, numpy, or list of images
# Run inference
results = model(img)
# Display results
results.print() # or .show(), .save(), .crop(), .pandas(), etc.detect.pyでの推論#
detect.py を活用することで、さまざまなソースに対して多様な推論を行うことができます。最新の YOLOv5 リリースから自動的にモデルを取得し、結果を簡単に保存します。このスクリプトは、コマンドラインでの使用や YOLOv5 を大規模なシステムに統合するのに最適であり、画像、動画、ディレクトリ、ウェブカム、さらにはライブストリームなどの入力をサポートしています。
python detect.py --weights yolov5s.pt --source 0 # webcam
python detect.py --weights yolov5s.pt --source image.jpg # image
python detect.py --weights yolov5s.pt --source video.mp4 # video
python detect.py --weights yolov5s.pt --source screen # screenshot
python detect.py --weights yolov5s.pt --source path/ # directory
python detect.py --weights yolov5s.pt --source list.txt # list of images
python detect.py --weights yolov5s.pt --source list.streams # list of streams
python detect.py --weights yolov5s.pt --source 'path/*.jpg' # glob pattern
python detect.py --weights yolov5s.pt --source 'https://youtu.be/LNwODJXcvt4' # YouTube video
python detect.py --weights yolov5s.pt --source 'rtsp://example.com/media.mp4' # RTSP, RTMP, HTTP streamトレーニング#
以下のトレーニング手順に従って、YOLOv5 COCO データセットのベンチマークを再現します。必要なモデルおよびデータセット(coco128.yaml や完全な coco.yaml など)は、最新の YOLOv5 リリースから直接取得されます。V100 GPUでの YOLOv5n/s/m/l/x のトレーニングには、通常それぞれ 1/2/4/6/8 日かかります(マルチ GPU トレーニングのセットアップを使用すると、より高速に動作することに注意してください)。可能な限り最大の --batch-size を使用するか、最適なバッチサイズを自動的に検出する YOLOv5 AutoBatch 機能のために --batch-size -1 を使用して、パフォーマンスを最大化します。次のバッチサイズは、V100-16GB GPU に最適です。モデル設定ファイル(*.yaml)の詳細については、アーキテクチャ概要を参照してください。
# Train YOLOv5n on COCO128 for 3 epochs
python train.py --data coco128.yaml --epochs 3 --weights yolov5n.pt --batch-size 128
# Train YOLOv5s on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5s.yaml --batch-size 64
# Train YOLOv5m on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5m.yaml --batch-size 40
# Train YOLOv5l on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5l.yaml --batch-size 24
# Train YOLOv5x on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5x.yaml --batch-size 16
最後に、YOLOv5は物体検出向けの最先端ツールであるだけでなく、機械学習が視覚的理解を通じて世界との関わり方を変革する力の証でもあります。このガイドを進め、YOLOv5をプロジェクトに適用し始める中で、あなたがコンピュータービジョンにおいて目覚ましい成果を実現できる技術革命の最前線にいることを忘れないでください。さらに詳しい知見や、ビジョンを共有する仲間からのサポートが必要な場合は、開発者や研究者の活発なコミュニティが集うGitHubリポジトリへぜひお越しください。コードを書かずにデータセット管理やモデルのトレーニングを行えるUltralytics Platformなどのリソースをさらに探索したり、実際のアプリケーションや着想を得るためにSolutionsページを確認したりしてください。探求と革新を続け、YOLOv5の素晴らしさを楽しみましょう。検出をお楽しみください! 🌠🔍
FAQ#
推論のみの場合は不要です。PyTorch Hub は
torch.hub.load("ultralytics/yolov5", "yolov5s")を使用して、コードと重みをオンデマンドでダウンロードします。train.py、val.py、detect.py、およびexport.pyの各スクリプトを実行するには、クローンが必要です。yolov5s.ptは、ほとんどのプロジェクトにおいて速度と精度のバランスが最も優れています。エッジデバイスにはyolov5n.ptを使用し、速度よりも精度が重要な場合はyolov5m.ptからyolov5x.ptを使用し、1280 ピクセルでのトレーニングにはyolov5s6.ptなどの P6 バリアントを使用します。完全なリストについては、事前学習済みチェックポイントの表を参照してください。画像と YOLO 形式のラベルを並行した
images/およびlabels/フォルダに配置し、dataset.yamlでそれらを記述し、python train.py --data dataset.yaml --weights yolov5s.ptを実行します。カスタムデータのトレーニングのチュートリアルでは、各ステップについて順に説明しています。