用于标记图像中对象的有界框,用于训练 神经网络 Yolo v3 和 v2
Windows & Linux GUI for marking bounded boxes of objects in images for training Yolo v3 and v2
To compile on Windows open yolo_mark.sln in MSVS2013/2015, compile it x64 & Release and run the file: x64/Release/yolo_mark.cmd. Change paths in yolo_mark.sln to the OpenCV 2.x/3.x installed on your computer:
(right click on project) -> properties -> C/C++ -> General -> Additional Include Directories: C:\opencv_3.0\opencv\build\include;
(right click on project) -> properties -> Linker -> General -> Additional Library Directories: C:\opencv_3.0\opencv\build\x64\vc14\lib;
To compile on Linux type in console 3 commands:
cmake .
make
./linux_mark.sh
Supported both: OpenCV 2.x and OpenCV 3.x
x64/Release/yolo_mark.cmd./linux_mark.shx64/Release/data/img.jpg-images to this directory x64/Release/data/imgx64/Release/data/obj.data: https://github.com/AlexeyAB/Yolo_mark/blob/master/x64/Release/data/obj.data#L1x64/Release/data/obj.names: https://github.com/AlexeyAB/Yolo_mark/blob/master/x64/Release/data/obj.namesx64\Release\yolo_mark.cmdx64/Release/yolo-obj.cfg:filter-value (classes + 5)*5: https://github.com/AlexeyAB/Yolo_mark/blob/master/x64/Release/yolo-obj.cfg#L224(classes + 5)*33.1 Download pre-trained weights for the convolutional layers (76 MB): http://pjreddie.com/media/files/darknet19_448.conv.23
3.2 Put files: yolo-obj.cfg, data/train.txt, data/obj.names, data/obj.data, darknet19_448.conv.23 and directory data/img near with executable darknet-file, and start training: darknet detector train data/obj.data yolo-obj.cfg darknet19_448.conv.23
For a detailed description, see: https://github.com/AlexeyAB/darknet#how-to-train-to-detect-your-custom-objects
To get frames from videofile (save each N frame, in example N=10), you can use this command:
yolo_mark.exe data/img cap_video test.mp4 10./yolo_mark x64/Release/data/img cap_video test.mp4 10Directory data/img should be created before this. Also on Windows, the file opencv_ffmpeg340_64.dll from opencv\build\bin should be placed near with yolo_mark.exe.
As a result, many frames will be collected in the directory data/img. Then you can label them manually using such command:
yolo_mark.exe data/img data/train.txt data/obj.names./yolo_mark x64/Release/data/img x64/Release/data/train.txt x64/Release/data/obj.names/x64/Release/
yolo_mark.cmd - example hot to use yolo mark: yolo_mark.exe data/img data/train.txt data/obj.namestrain_obj.cmd - example how to train yolo for your custom objects (put this file near with darknet.exe): darknet.exe detector train data/obj.data yolo-obj.cfg darknet19_448.conv.23yolo-obj.cfg - example of yoloV3-neural-network for 2 object/x64/Release/data/
obj.names - example of list with object namesobj.data - example with configuration for training Yolo v3train.txt - example with list of image filenames for training Yolo v3/x64/Release/data/img/air4.txt - example with coordinates of objects on image air4.jpg with aircrafts (class=0)
| Button | Description |
|---|---|
| Left | Draw box |
| Right | Move box |
| Shortcut | Description |
|---|---|
| → | Next image |
| ← | Previous image |
| r | Delete selected box (mouse hovered) |
| c | Clear all marks on the current image |
| p | Copy previous mark |
| o | Track objects |
| ESC | Close application |
| n | One object per image |
| 0-9 | Object id |
| m | Show coords |
| w | Line width |
| k | Hide object name |
| h | Help |
暂无开放 Issues,或尚未同步最近议题。