2
1

2024年最先端モデル

ということで、アヒルのおもちゃを検出してみましょう⤴︎

pexels-neosiam-590750.jpg

Install

git clone https://github.com/WongKinYiu/yolov9.git
cd yolov9
pip install -r requirements.txt
wget https://github.com/WongKinYiu/yolov9/releases/download/v0.1/yolov9-s.pt

データの準備

アノテーションする。今回はRoboflowを使いました。

スクリーンショット 2024-06-25 8.03.02.png

以下の形式で用意。trainとvalの割合は9:1か8:2推奨。

my_dataset
  |
  |__images
  |    |__train
  |    |    |__image1.jpg
  |    |    |__image2.jpg
  |    |    |__...
  |    |
  |    |_val
  |         |__val_image1.jpg
  |         |__val_image2.jpg
  |         |__...
  |
  |    
  |__labels
       |
       |__train
       |    |__image1.txt
       |    |__image2.txt
       |    |__...      
       |
       |__val
            |__val_image1.txt
            |__val_image2.txt
            |__...

data/coco.yamlファイルを以下の形式に書き換える。

path: my_dataset  # dataset root dir
train: images/train  # train images directory
val: images/val  # val images directory

# Classes
names:
  0: duck

Training

python train_dual.py --workers 8 --device 0 --batch 16 --data data/coco.yaml --img 640 --cfg models/detect/yolov9-s.yaml --weights 'yolov9-s.pt' --name my_dataset --hyp hyp.scratch-high.yaml --min-items 0 --epochs 500 --close-mosaic 15

runs/train/my_dataset/weights/best.pt に重みが保存される。

トレーニングしたweightsで推論

保存したweightsを指定して実行

python detect.py --source 'test_images' --img 640 --device 0 --weights 'runs/train/my_dataset/weights/best.pt' --name yolov9_c_c_640_detect

a7dd8cf4-4c20-4a2f-ae3a-4183f39d52f7.jpeg

🐣


フリーランスエンジニアです。
AIについて色々記事を書いていますのでよかったらプロフィールを見てみてください。

もし以下のようなご要望をお持ちでしたらお気軽にご相談ください。
AIサービスを開発したい、ビジネスにAIを組み込んで効率化したい、AIを使ったスマホアプリを開発したい、
ARを使ったアプリケーションを作りたい、スマホアプリを作りたいけどどこに相談したらいいかわからない…

いずれも中間コストを省いたリーズナブルな価格でお請けできます。

お仕事のご相談はこちらまで
rockyshikoku@gmail.com

機械学習やAR技術を使ったアプリケーションを作っています。
機械学習/AR関連の情報を発信しています。

X
Medium
GitHub

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1