Closed penghaoran closed 4 years ago
@penghaoran 你的配置文件中num_classes是否等于真实类别数+1(background),推理的时候是label标签错乱了,而检测框是正常的吗?
num_classes=真实类别数+1(background) label标签没有错乱,就是检测框不正常,我的训练的照片是把物体放在一个白色的面板上拍照采集的,然后把直接把没有放任何东西的照片放进去作推理,也能识别成一个class.
@penghaoran @still-wait 你的配置文件中num_classes是否等于真实类别数+1(background),推理的时候是label标签错乱了,而检测框是正常的吗?
num_classes=真实类别数+1(background) label标签没有错乱,就是检测框不正常,我的训练的照片是把物体放在一个白色的面板上拍照采集的,然后把直接把没有放任何东西的照片放进去作推理,也能识别成一个class.
@penghaoran 这个属于误检,是ssd模型的问题了,训练loss收敛稳定了吗?你训练完测试mAP了吗?一般小模型的误检率会很高,如果ssd模型解决不了你的问题,想提高准确率,建议尝试其他比如PP-YOLO的模型。
@still-wait @penghaoran 这个属于误检,是ssd模型的问题了,训练loss收敛稳定了吗?你训练完测试mAP了吗?一般小模型的误检率会很高,如果ssd模型解决不了你的问题,想提高准确率,建议尝试其他比如PP-YOLO的模型。 训练loss收敛稳定在0.3左右,mAP测试出来为100。图片1000多张。 PP-YOLO可以通过paddlelite在树莓派上使用吗?
@still-wait 这种可以不可以通过添加负样本训练来解决呢?
@penghaoran 目前ssd_loss无法计算不加gt信息的输入,如果想在训练加入负样本,需要新增并标注background这个类别传入网络进行训练。
@still-wait @penghaoran 这个属于误检,是ssd模型的问题了,训练loss收敛稳定了吗?你训练完测试mAP了吗?一般小模型的误检率会很高,如果ssd模型解决不了你的问题,想提高准确率,建议尝试其他比如PP-YOLO的模型。 训练loss收敛稳定在0.3左右,mAP测试出来为100。图片1000多张。 PP-YOLO可以通过paddlelite在树莓派上使用吗?
https://github.com/PaddlePaddle/PaddleDetection/tree/release/0.4/configs/mobile 移动端的ssd与yolo模型都支持paddlelite预测
@penghaoran 目前ssd_loss无法计算不加gt信息的输入,如果想在训练加入负样本,需要新增并标注background这个类别传入网络进行训练。
@still-wait 配置文件的num_class还是为真实类别+1,然后voc.py 里面还是只放真实类别,不需要加‘background’:0吧?只是在VOC的数据样本里面加一些数据,然后用labelimg标注为background就可以了,对吗?
@penghaoran 在voc.py里background还是要加上的,因为你现在将background作为一个正样本类别去训练,background作为负样本还要保留,它会在网络中计算。
@penghaoran 在voc.py里background还是要加上的,因为你现在将background作为一个正样本类别去训练,background作为负样本还要保留,它会在网络中计算。
@still-wait 好的。感谢你的耐心回复。
我训练的模型是ssd_mobilenet_v1,推理的时候好像没有区分出来background,我直接拍摄背景的图片去推理,也会识别成某个class,请问下这种情况一般是什么原因。 我用的是VOC格式的数据库,自己收集的数据,请问下需要是不是准备一些负样本会好点,负样本的标注文件该怎么写,我没有在paddle的网站上找到相关资料。 谢谢。