我感兴趣的是更准确地检测单个物体是一种没有类间可变性的灭火器(所有灭火器看起来都相同)。但是,该应用程序应该是实时的,即机器人正在探索环境,每当它看到感兴趣的对象时,它应该能够检测到它并给出它的像素坐标。
我的问题是哪种算法对这项任务来说是个不错的选择?
1.这是一个分类问题,我们应该使用功能(筛选/冲浪等)+ bow + svm?
2.其他一些解决方案(不知道)。
任何形式的输入将不胜感激。
谢谢。
(P.S。对我来说,我是计算机视觉的新手和堆叠的流程)
UPDATE1:
高度变化全部安装在墙上但高度不同。我尝试了SIFT功能和弓,但在测试部分提取弓描述符是昂贵的。此外,我不知道如何在图像被分类为正后定位对象(像素坐标)。
更新2:
我终于使用了sift + bow + svm并且能够对对象进行分类。但是使用这种技术,我只得到对象是否存在于场景中的输出内容? 如何检测对象,即获取对象的边界框或中心。什么是用于实现这些结果的上述方法的兼容方法。 谢谢大家。
答案 0 :(得分:2)
我建议使用颜色作为寻找的主要功能,并且只根据需要尝试其他功能。灭火器红色非常独特,在办公环境的其他地方不应经常发生。然后,只能在正确颜色的区域中执行其他计算成本更高的测试。
这是一个很好的tutorial for color detection,它还解释了如何找到所需颜色的良好阈值。
我建议采用以下方法:
这些测试都应该非常快。如果它们太慢,则可能会降低输入图像的分辨率。
根据您的环境,这可能已经足够强大了。如果没有,您可以继续进行筛选/冲浪功能匹配,但只能在具有正确颜色的斑点周围的小区域中进行。您也不一定必须为每个帧执行此操作,每个第n帧应足以进行确认。
答案 1 :(得分:0)
这是一个老问题..但仍然希望我建议使用YOLO算法来解决这个问题。 YOLO非常适合这种情况。