AlexeyAB / darknet

YOLOv4 / Scaled-YOLOv4 / YOLO - Neural Networks for Object Detection (Windows and Linux version of Darknet )
http://pjreddie.com/darknet/
Other
21.74k stars 7.96k forks source link

Using Yolo for crack detection in building #3234

Open kenpyc opened 5 years ago

kenpyc commented 5 years ago

Hi as I am using yyolov3-tiny to do crack detection, however, results are not very accurate can you enlighten me on how I should increase accuracy with yolov3-tiny

AlexeyAB commented 5 years ago

@kenpyc Hi,

Try to use higher width= height= in yolov3-tiny.cfg-file.

Or use yolov3-spp.cfg file (Full model) instead of Tiny.


Or use this cfg-file https://github.com/AlexeyAB/darknet/files/3199622/yolo_v3_tiny_pan.cfg.txt but it works only with this repository.

kenpyc commented 5 years ago

Hi can i ask whats the differnece between the tiny yolo and the yolov3-spp.cfg

AlexeyAB commented 5 years ago

yolov3-spp.cfg is 5x-10x slower and much more accurate.

yolov3-spp.cfg accuracy mAP@0.5=60.5% yolov3-tiny.cfg accuracy mAP@0.5=33.1%

kenpyc commented 5 years ago

thank you i will give it a try and update

kenpyc commented 5 years ago

Hi i am trying to train 3 classes now and i have changed the filters to 24 however when i launch launch the object detection everywhere is a crack and circle do you have any suggestion?

kenpyc commented 5 years ago

[net]

Testing

batch=1

subdivisions=1

Training

batch=64 subdivisions=8 width=544 height=544 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 = 10000

policy=sgdr sgdr_cycle=1000 sgdr_mult=2 steps=4000,6000,8000,9000

scales=1, 1, 0.1, 0.1

[convolutional] batch_normalize=1 filters=16 size=3 stride=1 pad=1 activation=leaky

[maxpool] size=2 stride=2

[convolutional] batch_normalize=1 filters=32 size=3 stride=1 pad=1 activation=leaky

[maxpool] size=2 stride=2

[convolutional] batch_normalize=1 filters=64 size=3 stride=1 pad=1 activation=leaky

[maxpool] size=2 stride=2

[convolutional] batch_normalize=1 filters=128 size=3 stride=1 pad=1 activation=leaky

[maxpool] size=2 stride=2

[convolutional] batch_normalize=1 filters=256 size=3 stride=1 pad=1 activation=leaky

[maxpool] size=2 stride=2

[convolutional] batch_normalize=1 filters=512 size=3 stride=1 pad=1 activation=leaky

[maxpool] size=2 stride=1

[convolutional] batch_normalize=1 filters=1024 size=3 stride=1 pad=1 activation=leaky

###########

[convolutional] batch_normalize=1 filters=256 size=1 stride=1 pad=1 activation=leaky

[convolutional] batch_normalize=1 filters=512 size=3 stride=1 pad=1 activation=leaky

########### to [yolo-3]

[convolutional] batch_normalize=1 filters=128 size=1 stride=1 pad=1 activation=leaky

[upsample] stride=2

[route] layers = -1, 8

###########

[convolutional] batch_normalize=1 filters=128 size=1 stride=1 pad=1 activation=leaky

[convolutional] batch_normalize=1 filters=256 size=3 stride=1 pad=1 activation=leaky

########### to [yolo-2]

[convolutional] batch_normalize=1 filters=128 size=1 stride=1 pad=1 activation=leaky

[upsample] stride=2

[route] layers = -1, 6

[convolutional] batch_normalize=1 filters=64 size=1 stride=1 pad=1 activation=leaky

[convolutional] batch_normalize=1 filters=128 size=3 stride=1 pad=1 activation=leaky

########### features of different layers

[route] layers=1

[reorg3d] stride=2

[route] layers=3,-1

[reorg3d] stride=2

[route] layers=5,-1

[reorg3d] stride=2

[route] layers=7,-1

[reorg3d] stride=2

[route] layers=9,-1

########### [yolo-1]

[convolutional] batch_normalize=1 filters=64 size=1 stride=1 pad=1 activation=leaky

[upsample] stride=4

[route] layers = -1,24

[convolutional] batch_normalize=1 filters=128 size=3 stride=1 pad=1 activation=leaky

[convolutional] size=1 stride=1 pad=1 filters=24 activation=linear

[yolo] mask = 0,1,2 anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 classes=3 num=9 jitter=.3 ignore_thresh = .7 truth_thresh = 1 random=0

########### [yolo-2]

[route] layers = -7

[convolutional] batch_normalize=1 filters=128 size=1 stride=1 pad=1 activation=leaky

[upsample] stride=2

[route] layers = -1,19

[convolutional] batch_normalize=1 filters=256 size=3 stride=1 pad=1 activation=leaky

[convolutional] size=1 stride=1 pad=1 filters=24 activation=linear

[yolo] mask = 3,4,5 anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326 classes=3 num=9 jitter=.3 ignore_thresh = .7 truth_thresh = 1 random=0

########### [yolo-3]

[route] layers = -14

[convolutional] batch_normalize=1 filters=256 size=1 stride=1 pad=1 activation=leaky

[route] layers = -1,14

[convolutional] batch_normalize=1 filters=512 size=3 stride=1 pad=1 activation=leaky

[convolutional] size=1 stride=1 pad=1 filters=24 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=3 num=9 jitter=.3 ignore_thresh = .7 truth_thresh = 1 random=0