我知道OpenCV中有很多检测技术,例如SURF,STAR,ORB等......但这些技术用于新视频输入的特征检测,而不是用于处理需要事先学习的特定对象实例。 OpenCV的文档并不那么容易翻阅,我还能找到除了哈尔之外的任何东西,我知道这对于人脸识别来说是最好的。
哈尔以外还有其他技术吗? Haar技术可以追溯到10年前的研究,所以理想情况下我希望自那时以来已经在OpenCV中实现了更多的进步。
答案 0 :(得分:12)
如果您正在寻找OpenCV机器学习类型算法,请查看此link。
对于最先进的动态物体检测算法,请查看OpenTLD。它使用边界框和随机森林来了解一个对象随着时间的推移。查看演示视频here。
另请查看OpenCV中的matching_to_many_images.cpp示例。它使用特征描述符来匹配对象,就像Google Goggles一样。一个相关的例子是bagofwords_classification.cpp示例。在这种情况下,它可能是您正在寻找的。它使用特征检测器(SURF,SIFT等)来检测对象,然后通过比较特征与学习的特征数据库的相对位置对它们进行分类。另请参阅麻省理工学院的tutorial。
latentsvmdetect.cpp也可能是一个很好的起点。
希望有所帮助!