Android中使用图像边框颜色的图像识别

时间:2014-06-13 11:02:34

标签: android opencv image-recognition

我在图像上使用不同的彩色图像边框作为产品的唯一标识符。

blue border

red border

我要做的是允许用户拍摄其中一张图片的照片,然后使用图像识别确定拍摄的图像,将照片与所有可能的照片进行比较不同的图像(即不同的边框颜色)。

我有OpenCV,我正在使用Android,但我对OpenCV和图像识别完全陌生。任何人都可以帮我解决问题吗?

2 个答案:

答案 0 :(得分:0)

这是一个问题,因为你可以在解决方案中进一步,可能不会想要。

首先,您必须知道照片不会是一个精确形状的正方形,由于Homography的概念,它甚至不会产生源图像的并行性。 homography。因此,您必须从相机图像中提取一些特征,然后猜测图像所遭受的变换,以便了解相机图像是否适合您的任何模型(源图像)。

这在某种程度上更好地解释了here

反正!虽然这是计算机视觉中一个有趣且实际的主题(我强烈建议你去研究),如果你可以选择一个近似红色或蓝色的(近似)方形,你仍然可以得到一个粗略的解决方案。尝试用纯色思考大的相关组件......

我希望这对你有所帮助!

答案 1 :(得分:0)

首先,你听说过二维码吗?这些将完成你想要的工作,并且有强大的读者可用。

这些半色调QR码非常酷 http://vecg.cs.ucl.ac.uk/Projects/SmartGeometry/halftone_QR/halftoneQR_sigga13.html

现在关于你的具体问题,我会尝试大致遵循这个管道:

        //https://github.com/Itseez/opencv/blob/master/samples/cpp/squares.cpp
        Find set of Box like shapes 
        Find largest Box from set
        Find colour of largest box

现在,你肯定会遇到一些鲁棒性方面的问题,但是这个简单的管道应该向你揭示困难的情况,然后你就可以从中获取它。