我最近一直在研究从安卓设备相机拍摄的图像中的对象检测/识别。
我要检测的对象是各种看起来像这样的按钮:
到目前为止,我一直在尝试使用 OpenCV 以及 metaio SDK。结果:
OpenCV总是检测到一些东西,但给出了很多错误的命中。此外,收集我所想的所有图片也太费力了。我用 OpenCV 尝试了三种方法:
- FeatureDetection(SURF、ORB 等)-> 太慢了,我的对象没有足够的特征。
- 模板匹配-> 似乎仅在模板完全是场景图像的一部分时才有效
- 训练分类器->这是迄今为止效果最好的,但对于我的目标来说工作量太大,而且仍然给出了太多的错误检测。
当我从上面显示的图片中取出参考图像(每个按钮的图标部分)时,metaioSDK工作正常,然后打印完整图像并将我的 android 设备相机对准打印的图片。但是当我尝试使用真正的按钮(不是它们的图片)时,几乎没有检测到任何东西。在 metaio 文档中,据说参考图像需要有很多特征和颜色差异,并且不应仅由白色文本组成。好吧,正如您所见,我的参考图像与它们应有的完全相反。但这就是按钮的外观;)
所以,我的问题是:当我将我的安卓相机对准这些按钮时,你们中是否有人建议我还能尝试检测和识别每个按钮?