YOLO9000是继YOLO之后的又一力作,本篇论文,其实作者在YOLO v2上并没有特别多的创新的方法,更多的是将现有的多种方法使用在自己的YOLO中以提高识别效果,不过YOLO9000倒是很有创新点,利用ImageNet与COCO数据,使得网络可以检测9000类数据,下面简要介绍一下这两个网络:
首先介绍YOLO v2都使用了哪些方法:
Batch Normalization
这个不多说了,确实是有效果的。,提高了2%。
High Resolution Classifier
作者先在224大小上训练,然后在448上进一步fine-tune得到更好的效果。这里我们做过实验,在自己的数据上,如果只是单纯的扩大图像,在224的预训练模型进行训练,分类精度不会提高,反而降低了。
加anchor
加入anchor并没有提高map,但是提高了recall,作者在paper中表示,没加anchor前,map为69.5,recall为81%,加入anchor后,map为69.2,recall为88%。
利用k-means代替手动设计anchor
距离设计中,作者并没有使用均方误差,而是使用IOU作为距离,公式如下:
d(box,centroid)= 1- IOU(box,centroid)
bounding box loss
paper并没有使用类似于faster rcnn以及ssd的边框预测方法,,在faster rcnn中的计算方式如下图,其中 x a , y a , w a , h a x_a,y_a,w_a,h_a xa,ya,wa,ha分别代表anchor的坐标, x , y , w , h x,y,w,h x,y,w,h代表预测值,带星的为bounding box的坐标,所以faster rcnn实际计算的是与anchor的偏移值。
yolo v2并没有计算与anchor的偏移值,作者解释说计算偏移的方法由于偏移范围比较大,计算的时候不稳定,所以yolo v2采用了计算anchor与图像左上角的位置偏移以及anchor长宽的缩放的方法,如下公式所示, c x