Skip to content

YOLO Usage

Install & Train Model

Install Software

  • After installing Anaconda, create a virtual environment
  • Click Create, name it yolotest (or other name), Python 3.8.19, Create
  • Click green triangle on yolotestOpen Terminal
  • Terminal prompt should show (yolotest)

Configure Environment

  • Install Python packages in terminal:
Terminal window
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple/
pip config set install.trusted-host pypi.tuna.tsinghua.edu.cn
# yolo 0.3.1
# Latest: pip install yolo
pip install yolo==0.3.1
# ultralytics 8.2.79
# Latest: pip install ultralytics
pip install ultralytics==8.2.79
pip install ncnn==1.0.20240410
pip install labelimg
# Finally: pip list
  • yolo, ultralytics installed
  • Run yolo in terminal to verify
  • Run labelimg to open annotation tool

Create Training Directory

  • Create folder e.g. yolotrain on E: drive
  • Under yolotrain: labels/, images/; under images/: test, train, val; under labels/: train, val
  • Structure:
  • Put same training images in images/train, images/val, and images/test (copy files)
  • labels/train and labels/val hold labelimg annotation files

Annotate Data

  • Put images in images/train, copy to images/val and images/test

  • Run labelimg from configured terminal

  • Open Dirimages/train (e.g. E:/yolotest/images/train)

  • Change Save Dirlabels/train (e.g. E:/yolotest/labels/train)

  • Set format to YOLO via Save format button

  • Annotate

  • Example: Like and Comment buttons on a short-video app

  • Right-click → Create RectBox or click left Create RectBox

  • Draw box on Like area, class name aixin, OK — used in API calls later

  • Draw box on Comment, class pinglun, OK

  • Save, Next Image for next image

  • labels/train gets classes.txt and per-image .txt files

  • Copy labels/train to labels/val for validation

Train Model

  • In yolotrain, create aixin.yaml:
path: E:/yolotrain
train: images/train
val: images/val
test: images/test
nc: 2
names: ["aixin","pinglun"]
  • Parameters:

  • path: training root (adjust drive/path)

  • train, val, test: image folders relative to path

  • nc: number of classes (2 here)

  • names: class names from labelimg — order matters

  • Train in cmd: e:/ then cd yolotrain

  • Training command (pick one):

Terminal window
yolo detect train data=e:/yolotrain/aixin.yaml model=e:/yolotrain/yolov8s.pt imgsz=640
Terminal window
yolo detect train data=e:/yolotrain/aixin.yaml model=e:/yolotrain/yolov8s.pt epochs=100 imgsz=640

Validate Model

  • Validate on images:
Terminal window
yolo detect val data=e:/yolotrain/aixin.yaml model=e:/yolotrain/runs/detect/train/weights/best.pt
  • Check Results saved path for annotated images

Export ONNX Model

  • Export trained .pt to ONNX for EC API
Terminal window
yolo export model=e:/yolotrain/runs/detect/train/weights/best.pt format=onnx
  • export success shows path — copy .onnx to phone /sdcard/ (or other path)
  • Initialize with yolov8Api.newYolov8Onxx; other API calls are the same

Export NCNN Model

  • Export to ncnn for EC
Terminal window
yolo export model=e:/yolotrain/runs/detect/train/weights/best.pt format=ncnn
  • Downloads pnnx — use demo pnnx-20240819-windows.zip in e:/yolotrain/ if download fails
  • Match filename in error screenshot or download manually
  • Output has model.ncnn.param and model.ncnn.bin — copy both to phone sdcard
  • Initialize with yolov8Api.newYolov8 for ncnn

API Usage

GPU

CONDA Virtual Environment Error

  • Cannot select Python version when creating env — often network; switch to Tsinghua mirror
    1. Click channels
    1. Remove default channels
    1. Add Tsinghua channels (Enter after each)
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/


  • 4. Click Update channels

Arial.ttf Download Error

  • Download Arial.ttf
  • Place in C:\Users\Administrator\AppData\Roaming\Ultralytics as Arial.ttf (Administrator = your Windows username)