1.7 KiB
1.7 KiB
Простой модуль В
Кадры
mkdir -p module3/dataset/raw
ffmpeg -i video.mp4 -vf fps=2 module3/dataset/raw/frame_%05d.jpg
Разметка
label-studio start
Откройте http://localhost:8080, создайте проект и загрузите кадры через
Data Import. В Labeling Setup выберите Computer Vision -> Object Detection with Bounding Boxes и создайте классы hammer, pliers, wrench.
После разметки выберите Export -> YOLO и распакуйте архив так, чтобы получилось:
module3/dataset/label-studio/
├── classes.txt
├── images/
└── labels/
Затем:
python3 module3/simple_prepare_dataset.py
Обучение
cd module3
source .venv/bin/activate
yolo detect train model=yolo11n.pt data=training_new/data.yaml epochs=30 patience=7 imgsz=512 batch=8 device=0 project=training_new/runs name=tools exist_ok=True
cp training_new/runs/tools/weights/best.pt models/latest.pt
Запуск
source /opt/ros/jazzy/setup.bash
source ~/ros2_ws/install/setup.bash
cd ~/scripts/mvch
module3/.venv/bin/python module3/simple_module_b.py
Ввод предмета нужен только для показа. Скрипт выводит YOLO в окне OpenCV, через
5 секунд открывает захват, а через 2 секунды переводит его в положение
take_cube. Выход — Q или Esc.
Камера реального RMC1: /RMC1/arm95/svcam/right/image. Для проверки в Webots
замените константу CAMERA на /RMC1/arm95/camera_gripper/image_color.