我目前正在开发一个 Android 应用程序,它能够拍摄硬币的现有图像,或使用内置相机扫描单个硬币(非常像 Google Goggles 所做的)。我正在为 Android 使用 OpenCV。
我的问题如下:什么方法最适合使用 OpenCV 在 Android 上执行硬币识别?
到目前为止我尝试过的方法如下(也许我做错了,或者我完全走错了路线)
我目前正在使用适用于 Android 的 OpenCV(没有本机代码!)并且正在使用各种特征检测算法来识别图像中的关键点(即 ORB、FAST、STAR)。我相信这只是计算提取图像中每个关键点与一组已知测试数据之间的欧几里得距离的问题,以识别最相似的图像(并因此识别硬币),但事实证明这单独的方法是不合适的,因为照明、硬币旋转等效果对特征提取的影响太大(加上硬币具有惊人的相似特征......)
一般而言,我正在寻找有关任何形式的图像前处理是否有用的建议?有哪些替代方法可用?或有关如何改进我当前方法的任何提示。
注意:我已经看过很多关于硬币检测的文档,但我正在专门研究硬币识别。
提前致谢!