【发布时间】:2014-09-05 05:56:49
【问题描述】:
这里我正在尝试使用相机实时检测 PCB 上的 FIDUCIAL 点,同时我正在使用 C#.net 4 win-form 应用程序。
经过两天的谷歌搜索并阅读了许多帖子和博客。我发现我必须做一些叫做平移错误检测和旋转错误检测。
即。实际()与所需(已知位置)的图像上基准(对象)的位置
如下图
右下角和左上角的黑色方块是我需要检测并用于错误检查的基准点。
这里(A)是正确的图像,(B)是基准点位置错误的图像。
现在我必须在图像上画线,相对于基准点。所以在图像 A 上,我可以画线(红色),如下图(A)所示。
但是,如果我在图像 (B) 上绘制相同的线,由于放置方式而出现错误,如果我使用相同的 X 和 Y 值,我将绘制错误的线 (RED)。
但是对于 (B) 上的正确线,我需要将 ERROR 值添加到我的 X 和 Y 值,以便我可以绘制正确的线 (GRREN),如 (B) 所示。
所以在这里,我正在尝试找出如何将其存档;
1) 检测两个基准点,获取它们在 Image 上的位置,并与正确的位置进行比较。
2) 找到错误(角度/事务/旋转)?
3) 通过添加 X 和 Y 值来使用错误值。
我还发现 Aforge.net 或 OpenCV 对此很有用,但我不确定如何? Fiducial 还有其他可能的形状是三角形、菱形和圆形。
感谢任何帮助/指南...!!! 感谢您的宝贵时间。
编辑
我有两个基准点的偏移值,(DX1,DY1) 和 (DX2,DY2) 是原点移动的值。
那么,现在我该如何使用它呢?纠正放置错误。 现在我该如何使用它
【问题讨论】:
-
可以张贴 PCB 的图像,以便我们查看基准标记是什么(相对于其周围环境)?
-
我还没有真机的图像,但是我会像PCB在传送带上移动一样,当它停止焊接时我需要进行检查..
-
您最好将这个问题分解成单独的更具体的问题。如果没有真实的图像,我无法提出任何建议(被现实烧了太多次,结果与我想象的完全不同)。
标签: opencv image-processing machine-learning computer-vision aforge