добавлено описание процедуры ObjectDetection

This commit is contained in:
shalenikol 2023-02-21 14:41:44 +03:00
parent 74f1a1493e
commit 35223a1af1

37
ObjectDetection/README.md Normal file
View file

@ -0,0 +1,37 @@
# Инструкция для запуска
Должен быть установлен пакет [BlenderProc](https://github.com/DLR-RM/BlenderProc)
## Создание датасета в формате YoloV4 для заданного объекта
Команда для запуска:
blenderproc run obj2Yolov4dataset.py [obj] [output_dir] [--imgs 1]
- obj: файл описания объекта *.obj
- output_dir: выходной каталог
- --imgs 1: количество изображений на выходе
## Создание датасета в формате YoloV4 для серии заданных объектов в заданной сцене
Команда для запуска:
blenderproc run objs2Yolov4dataset.py [scene] [obj_path] [output_dir] [vhacd_path] [--imgs 1]
- scene: путь к файлу описания сцены (*.blend)
- obj_path: путь к каталогу с файлами описания детектируемых объектов *.obj
- output_dir: выходной каталог
- vhacd_path: каталог, в котором должен быть установлен или уже установлен vhacd (по умолчанию blenderproc_resources/vhacd)
- --imgs 1: количество серий рендеринга (по 15 изображений каждая) на выходе (например, если imgs=100, то будет получено 1500 изображений)
Файл описания сцены обязательно должен содержать плоскость (с именем 'floor'), на которую будут сэмплированы объекты для обнаружения.
Должен быть собран пакет [darknet](https://github.com/AlexeyAB/darknet) для работы на заданном ПО и оборудовании (CPU, GPU ...)
## Обучение нейросети и получение файла с её весами
Команда для запуска:
darknet datector train [data] [cfg] [weight]
- data: файл с описанием датасета (*.data)
- cfg: файл с описанием нейросети
- weight: файл весов нейросети
Для обучения нужно загрузить файл с предобученными весами (162 MB): [yolov4.conv.137](https://github.com/AlexeyAB/darknet/releases/download/darknet_yolo_v3_optimal/yolov4.conv.137)
Для разного количества детектируемых объектов в выборке нужны свои файлы [data](https://gitlab.com/robossembler/framework/-/blob/master/ObjectDetection/yolov4_objs2.data) и [cfg](https://gitlab.com/robossembler/framework/-/blob/master/ObjectDetection/yolov4_objs2.cfg).