您的位置:首页 > 其它

SURF算法应用工业检测之一(场景应用说明)

2014-04-21 11:46 78 查看
SURF算法在工业检测分析
一. 工业场景应用
场景应用说明,在工业检测中我们需要对一个工件进行位置补正,来确定工件在平面坐标系的位置,得到位置参数才可以进一步的针对特定位置进行图像处理。比如我们跟踪一副名片的某一局部位置。



图1.1
在图1.1的场景中,我们可以看到0号矩形区域和1号矩形区域。其中0号矩形区域为我们要跟踪的局部位置,1号矩形区域为跟踪有效区域。在这里我们通过surf算法要实现,在1号区域里面跟踪0号矩形区域里面的局部位置,无论0号区域里面的局部特征的旋转偏移等,都可以准确输出0号局部位置的坐标值。实现物体跟踪的功能。就像下面场景一样:





图1.2 图1.3
图1.2和图1.3的场景可以看到黑色的矩形框顺利的跟踪了图1.1中局部图像的位置,对于原图来讲发生了旋转偏移,也能顺利的跟踪到。这是工业检测中最基础,也是最重要的功能之一。就是利用图像处理中的模式匹配算法来实现上述功能,我们在这里采用了SRUF算法来实现,在双核1.6GHZ的PC机器上可以达到80毫秒/帧的速度,在全志a10,Coretx-a8 1GHZ的ARM单处理器上可以达到180毫秒/帧的速度。如果优化得当,还有进一步提升的空间。目前市面上有4核1.2GHZ的ARM处理器,这样的化理论上来讲降低到50毫秒/帧左右的速度没有什么压力。基本可以达到实时性的要求。

基本原理,对于一副图像场景中,有大量的角点,明暗变化剧烈的点。SURF算法就是用特定的数学表达式描述这些角点和明暗变化剧烈的点,这些角点和明暗变化剧烈的点称之为图像的特征点。在SURF算法中,我们先对图像的每个像素求海塞矩阵的行列式,同时确定一个阈值,对于行列式的值的大于某个阈值的点,列为关键点。这些关键点是该图像特征点的候选点。海塞矩阵就是求二阶偏导,像素的二阶导数的物理意义就是表示像素的明暗变化速率。我们通过阈值的筛选可以留下来来那些明暗变化特别明显的点,作为关键点。这是这个算法的核心所在。如果所跟踪的目标,图像模糊或者说那些灰度特征不明显,还有就是不同光照的条件下,这个算法将不能很好的匹配。也不识别物体的颜色特征,目前把SURF加入颜色特征,是一个改进型研究方向之一。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: