2011-12-01 130 views
0

我正在研究一种软件,该软件使用AutoCAD数据作为参考来检查是否正确切割了一些激光切割部件。我已经解析了dxf文件,将它们转换为bmp(并将其转换为可以提供所有信息的xml文件),现在我想将其与实际获得的数据进行比较。将图像模型映射到数据

我已经应用足够的预处理来获得合理的阈值二进制图片。然而,这是扭曲的(不幸的是,远心镜头昂贵,用户将物体放入设备中,导致一些平移,一些瑕疵和微小的旋转,如1-2度)。

我已经考虑了Hough变换,但是内存是一个问题。我已经玩过包围盒转换,但未知的形状使这很难。我已经阅读了TILT(不对称)和注册算法,但我想获得另一个意见。

我正在寻找一些论文,一些想法,一些关于如何去的指针。

谢谢。

+1

你可以发布两个(模型和部分)二进制样本图像? – mevatron

+0

不幸的是,NDAs,但这是训练数据:http://imgur.com/a/RT3rK 第一个图片是真实的(不会变得更好,我们正在谈论米),从数据中获得第二张图片。 我现在可以安全地检测这些部件的边界框。 –

回答

2

第一步是保持图像不失真(请参阅camera calibration - 忽略3d部分)。然后想想shape matching。根据您尝试查找的错误有多小,这可能非常容易或非常困难,但这些链接应该让您开始起步

0

您可能想要查看可以区分两者的功能。是否有简单的功能可以准确地区分正确裁切的裁片和错误裁切的裁片?如果是这样,您可以使用与Hough变换/模板匹配相同的想法,但将模板减少为某些区分特征(边缘,拐角等)以减少所需的内存。

您可能想看看SIFT/SURF功能,其目的是通过一组特征来匹配图像,同时不影响图像中对象的旋转和缩放。有那些实现这些功能的库(显示在SURF页面上)。

但是,这不会帮助扭曲。如果您对所有图像使用相同的相机,那么您应该可以相应地对它们进行去偏斜处理。

相关问题