我有两个印刷电路板( PCB )的图像,都显示相同的PCB。它们之间的区别在于灯光、尺寸和方向(因为我用手机相机拍摄PCB图像)。
现在我想用一张印制板的图像来检查电路的所有部件是否都组装在另一个相同的PCB上。
有没有一种方便的方法来检查两个相同的PCB的两个图像之间的差异?
顺便说一句,我可以在印刷电路板上加上一些标记,这样我就可以在OpenCV中纠正图像的方向和比例。
发布于 2015-07-22 19:16:16
印刷电路板,对吗?
您可能可以计算两个图像中匹配点之间的投影射影变换或同形。此转换可用于匹配平面(如您的PCB),并考虑图像之间的比例、旋转、剪切和投影变化。
这是非常简单的方法:
选择至少4个点,并求解线性方程组。在数学SE上看一下这个问题的答案,这正好解释了这一点。
该OpenCV实例使用(自动)特征匹配来查找相应的图像点,然后计算一个同调。
这种转换的有趣的推导也可以在每一本计算机视觉教科书中找到,例如标准的齐瑟曼的“多视图几何”或Ma的“三维视觉邀请函”。
编辑:
这种方法不会消除镜面反射或其他强度差异。
https://stackoverflow.com/questions/31570391
相似问题