YOLO
物体検出に利用されるフレームワーク
You Only Look Once
You Only Live Once; YOLO
画像をグリットに分割し、グリットごとに位置推定とクラス分類を行う
処理が軽いのでエッジコンピューティングに利用できる
Faster R-CNNより軽い?あんも.icon
Ryeで仮想環境をつくる
$ rye init yolo && cd yolo/
$ rye add ultralytics opencv-python
$ rye sync
モデルを配置
https://github.com/ultralytics/ultralytics/tree/main/ultralytics/cfg/models/v8
しなくても初回指定時に自動で置いてくれる
仮想環境をアクティベートしてyoloコマンド利用できるようにする
$ source ./.venv/bin/activate
ファイルの期待される配置場所の設定の確認
$ yolo settings
よくわかっていないあんも.icon
学習させる
$ yolo task=detect mode=train model=yolov8n.pt data=data.yaml epochs=300 imgsz=300
データセットの場所はdata.yamlに書いておく
色付きのコーンを認識するタスクの場合
code:data.yaml
train: ./train/images # 学習の画像のパス
val: ./valid/images # 検証用画像のパス
nc: 4 # クラスの数
names: 'red', 'green', black', 'fallway' # クラス名
予測させる
$ yolo task=detect mode=predict model=best.pt source=data/images
https://docs.ultralytics.com/ja
WSL での GPU 高速化による ML トレーニング | Microsoft Learn
1. NVIDIA GPU Accelerated Computing on WSL 2 — CUDA on WSL 12.3 documentation