我正在制作一个程序来检测来自r/c平面的形状以进行比赛。我没有目标的真实图像,但我确实有计算机生成的规则示例。
我的问题是,我可以训练我的程序根据计算机生成的形状检测现实世界的物体,还是应该找到不同的方法来完成这项任务?
在我愚蠢地生成 5k 样本并最终发现它们毫无用处之前,我想知道。
编辑:我也不知道物体的确切颜色。如果我输入不同颜色的程序样本,会不会有问题?
提前感谢!!
编辑2:这是我学校前几年检测到的小组
如您所见,检测到的图像并不像现实生活中出现的那样完美无瑕。如果你能提出更好的方法,那会有所帮助。
如果您认为真实图像具有具有简单几何形状的独特颜色,那么您可以尝试创建标准化的色调直方图。使用它来训练 SVM 分类器。使用色相直方图的好处是它将是旋转和缩放不变的。
您可以牢记以下几点预防措施:
- 不要忘记消除照明影响。
- 有时,白色和黑色像素会在色调直方图计算中产生一些问题,因此请尝试通过仅考虑那些在HSV图像的S&V通道中具有
S>0
和V>0
的像素来将它们从计算中删除。
我宁愿建议你使用现实世界的图像,因为性能在很大程度上取决于训练(我的个人经验)。你为什么不尝试使用SIFT/SURF描述符来训练SVM(支持向量机),因为SIFT/SURF是尺度和旋转不变的。