钥匙翻转了一个面,该怎么识别匹配?

工业自动化中,我们经常遇到这样的问题,两面一样,上料时,翻转了,没人知道,该怎么匹配到?让机器人能抓取上?

两面相似,翻转了,该怎么识别匹配,来料异常如何判断?

我们的匹配,是一个方向正负45度旋转,0.8-1.2的缩放(尺度),翻转后根本匹配不到。

就像我们数学中常用的坐标系,顺时针,逆时针一共360度,而坐标系针对y轴翻转后,就不会出现在这360度中,前头我们机器人九点标定涉及到这个问题,现在匹配中也出现了,该怎么办?

照猫画虎,参考机器人九点标定坐标系翻转,我们把学习的图像也翻转,这样问题不就搞定了吗?

道理是这样,试了试,没有不翻转识别率高,等改进ok了,我们在加进到megauging中去。

平常的学习是这样:

钥匙翻转了一个面,该怎么识别匹配?_第1张图片

对比翻转后的学习:(上下翻转了)

钥匙翻转了一个面,该怎么识别匹配?_第2张图片

这个手机sim卡针,翻转后是一样的,如下:

钥匙翻转了一个面,该怎么识别匹配?_第3张图片

这种情况,你必须用翻转后的学习模板,才能匹配的到。

模板学习,图像是如何翻转的呢?c#代码如下:

   //翻转图像202312081943
         if(翻转)
             for (int i = 0; i < roihh; i++)//上下翻转
                for (int j = 0; j < roiww; j++)
                {
                    int nn = i * roiww + j;
                    int mm = ((roihh - 1 - i) * roiww + j);
                    roiImage[nn] = roiImage1[mm];
                }
            //翻转图像202312081943

我们看一下匹配怎么样:

先学习一下:

钥匙翻转了一个面,该怎么识别匹配?_第4张图片

把sim卡针翻转:并匹配,记住我们是正负45度范围:

钥匙翻转了一个面,该怎么识别匹配?_第5张图片

还有这种情况出现:(原因是多方面的,比如翻转本来就不是原来的事物,这和坐标系翻转还是有差别)

钥匙翻转了一个面,该怎么识别匹配?_第6张图片

继续改进吧,这个小尾巴不错,是找bug的利器!

你可能感兴趣的:(算法,机器视觉)