$ git clone https://github.com/pjreddie/darknet
$ sudo apt-get install libopencv-dev
$ sudo apt-get install build-essential
$ cd darknet
$ vim Makefile
GPU=1
CUDNN=0
OPENCV=1
OPENMP=0
DEBUG=0
ARCH= -gencode arch=compute_35,code=sm_35 \
-gencode arch=compute_50,code=[sm_50,compute_50] \
-gencode arch=compute_52,code=[sm_52,compute_52] \
-gencode arch=compute_70,code=[sm_70,compute_70] \
-gencode arch=compute_75,code=[sm_75,compute_75] \
-gencode arch=compute_80,code=[sm_80,compute_80] \
...생략...
$ make -j8
$ make clean
$ make -j8
$ cd cfg
$ vim yolov3.cfg
[net]
# Testing
#batch=32
#subdivisions=1
# Training
batch=32
subdivisions=16
width=416
height=416
channels=3
momentum=0.9
decay=0.0005
angle=0
saturation = 1.5
exposure = 1.5
hue=.1
learning_rate=0.001
burn_in=1000
#max_batches = 500200
max_batches = 50020 # train 시의 도표의 x좌표 조절**
policy=steps
steps=400000,450000
scales=.1,.1
...생략...
# 아래 부분은 해당 파일에 총 3번 변경 필요
[convolutional]
size=1
stride=1
pad=1
filters=36 # (클래스 수 + 5) * 3
activation=linear
[yolo]
mask = 6,7,8
anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326
classes=7 # 클래스 수
num=9
jitter=.3
ignore_thresh = .7
truth_thresh = 1
random=1
$ vim custom.data
classes= 7
train = /home/user/Yolo_mark/x64/Release/data/train2.txt # yolo mark의 train.txt
valid = /home/user/Yolo_mark/x64/Release/data/valid.txt
names = /home/user/darknet/data/custom.names
backup = backup/
$ vim custom.names # 클래스 이름
choco
water
tuna
apple
git clone https://github.com/AlexeyAB/Yolo_mark.git
sudo apt-get install cmake
sudo apt-get install build-essential -y
sudo apt-get install libopencv-dev
cd Yolo_mark
cmake .
make
chmod 777 linux_mark.sh
./linux_mark.sh
Yolo mark로 이미지에 바운딩 박스를 추가할때마다 리스트가 추가
yolo_mark로 바운딩 박스를 추가하고자 하는 이미지를 여기에 추가
(주의) 서브디렉토리를 생성하지 않는다
이미지 클래스를 영어로 추가
$ cd darknet
$ ./darknet detector train data/custom.data cfg/myYolov3.cfg darknet53.conv.74 | tee backup/train.log
$ cd darknet
$ ./darknet detector test data/custom.data cfg/yolov3.cfg backup/yolov3_last.weights -ext_output Testphoto/testimg1.jpg
$ ./darknet detector test data/custom.data cfg/yolov3_backup.cfg backup/yolov3_backup_last.weights test/tuna.jpg
$ cd darknet
$ ./darknet detector test cfg/coco.data cfg/yolov4.cfg yolov4.weights -ext_output -dont_show -out result.json < data/train.txt