一种基于计算机视觉物体形状辨别方法.docVIP

一种基于计算机视觉物体形状辨别方法.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种基于计算机视觉物体形状辨别方法

一种基于计算机视觉的物体形状辨别方法   摘要:本文主要提出一种基于计算机视觉的物体形状辨别方法,采用链码法,能快速辨识出物体的形状,分辨出物体形状的细微差别,判断物体是否变形。能在一些不适合人工作业的危险的电力生产环境下或大批量工业生产过程中替代人工视觉,具有一定的意义。   关键词:计算机视觉 物体形状辨别 信号处理 链码 功率密度谱   1 引言   本文提出一种基于计算机视觉的物体形状辨别方法,以链码法为基础,通过采集物体的图像,计算出物体的半径曲线,再进行fft变换求出其功率密度谱,通过对功率密度谱的变换与分析,实现物体的形状辨别。该方法能快速辨识处物体形状,甚至能分辨出细微的差异,且不受物体形状大小的影响。   2 图像预处理   通过对采集到的图像进行预处理,能提高对比度,抑制背景而突出形状特征, 把图像变成便于后续处理的形式,从而能更准确的辨别物体形状。图像的预处理要经过以下几个步骤。   2.1 彩色图像转换为灰度图像   由于输入图像可能是索引图像,也可能是灰度图像,所以一律把图像先转换为灰度图像,以便对图像做进一步处理。在matlab中,利用rgb2gray,ind2gray等函数可以很方便的进行图像类型转换。   2.2图像平滑   对图像进行平滑处理,采用中值滤波法。二维中值滤波的窗口形状和尺寸对滤波的效果影响较大,不同的图像内容和不同的应用要求,往往采取不用的窗口形状尺寸。本方法所处理的图像一般具有缓变的较长轮廓线,宜采用一个5乘以5的方形窗口。   2.3图像的二值化   要找到物体边界的链码,首先要把目标图像转换为二值图像。采用双峰法确定阈值。能有效的对图像进行二值化,从而可以提高辨别的准确率。   2.4 形态滤波器   为了求得物体的质心,必须保证物体里面没有噪声点。因而最后一个步骤是对图像进行形态滤波,以平滑图像边界,滤除目标内比结构元素小的噪声块。先对图像进行开运算,再进行闭运算就可以构成滤除图像噪声的形态滤波器,能滤除不需要的噪声块。   3 基于链码的形状辨别   链码法主要内容是求出物体轮廓的半径曲线。在物体边界上选一点,以该点为起点,根据物体边缘的链码分别求出各边界点到质心的距离,形成一条以物体边界点的点序为横坐标,以其半径为纵坐标的曲线,即为图像的半径曲线。   3.1质心   在matlab中,用imfeature函数可以很轻易的提取出物体的质心,但是它并不是十分的精确,这里用物体的区域矩特征来求取物体的质心。区域矩特征是利用力学中矩的概念,将区域内部的象素作为质点,象素的坐标作为力臂,从而以各阶矩的形式来表示区域形状特征的一种描述子。   物体图像质心的坐标可由图像的一阶矩除以零阶矩求得。   3.2 半径   设物体边缘点的坐标(ik,jk),1≤k≤N,N为物体边缘点数,则边缘点(ik,jk)与质心(m,n)间的距离Dk可以表示为:   (1)   3.3链码   求物体边界的链码,首先要对物体边缘进行跟踪。沿边缘线跟踪边缘点求出边缘点之间的方向码,即可得出物体的边界链码[2]。其算法步骤如下。   1、先按从上到下,从左到右的顺序扫描图像,寻找没有标记跟踪结束标记的第一个边界起始点A1,A1是具有最小行值和列值的边界点。定义一个扫描方向变量dir 1,该变量用于记录上一步中沿着前一个边界点到当前边界点的移动方向,即方向码。   2、按逆时针方向搜索当前像素的3*3领域中第一个与当前像素数值相同的像素的边界点An,同时更新dir n。   3、如果An等于第二个边界点A2,且前一个边界点An-1等于第一个边界点A1。则停止搜索,结束跟踪,否则重复第二步继续搜索。   4、由各个边界点A1,A2,A3,…,An,得出的dir 1,dir 1,dir 3,…dir n构成的边界链码就是我们要求的链码。并记录下起始点A1的坐标(X1,Y1)。   3.4半径曲线   根据之前所求出的质心坐标、链码等信息之后,就可以求物体轮廓的曲线半径了。其算法步骤如下。   1、根据式(1)求出第一点A1(X1,Y1)与质心(m,n)的欧氏距离D1。即为该点的半径。   2、根据A1与A2的方向码dir 1,可求出A2的坐标[2](X2,Y2)并计算A2(X2,Y2)与质心(m,n)的欧氏距离D2。   3、重复步骤2直到最后一点An。   这样就得出一条以物体轮廓点An的点序n为横坐标,以其对应的点与质心的欧氏距离Dn为纵坐标的曲线。   任何物体的半径曲线都是固定的,他们只与起形状有关,不会因大小、颜色等因素而改变。对半径曲线做进一步的处理,就可以更有效的辨别物体的形状,区分形状的改变,监控是否有变形等。   4

文档评论(0)

erterye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档