我正在尝试使用single-shot multibox detector (SSD)检测包括颈部和肩部在内的人体头部。 我有大约800张图像并训练了50,000次迭代。 但在检测中,detection_eval在训练期间最大为0.29。
在部署中,没有准确的检测。 可能是什么问题? 我的矩形大约是40 x 40像素。
附上其中一张图片。
图像显示为here
对于SSD而言,训练图像数量太少或对象尺寸是否太小? 可能是什么问题?
由于我的PC功能不强,我只使用了3个批量大小,会不会出问题?
在50,000次迭代中,它确实在从损失60到损失~0.9的训练中收敛。
答案 0 :(得分:0)
我发现的问题是我的xmin,ymin,xmax,ymax的训练标签是标准化的浮动值。 SSD需要int(非标准化)值。然后,所有这些要素图都具有最小和最大尺寸,如conv4_3_norm_mbox_priorbox具有min_size:30.0和max_size:60.0。它们是基于min_dim = 300计算的。如果更改此min_dim值,则会更改所有最小/最大大小,如果这些大小不适合训练中的对象,则detection_eval值较低。