基于Matlab实现以图识图的研究_第1页
基于Matlab实现以图识图的研究_第2页
基于Matlab实现以图识图的研究_第3页
基于Matlab实现以图识图的研究_第4页
基于Matlab实现以图识图的研究_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、    基于matlab实现以图识图的研究    刘瑞霖【摘 要】以前我们想根据一张图片搜索更多类似图片时,往往是输入图片的文件名、索引或关键词来搜索,其结果往往不尽人意。本文作者拟研究运用图像识别技术来实现以图识图。图像识别是基于图片内容,应用计算机视觉技术,让计算机根据“看到”的有关图片而进行比对、匹配,搜索结果的相似度将有所提高。以图识图的实现方法有很多,本文的研究方法是基于matlab平台,通过对目标图片和图库图片进行颜色、纹理等特征分析,通过指定算法得到特征矩阵,从而匹配相似度较高的图片。从研究结果看,本文所设计的研究步骤和算法,能较好地实现以

2、图识图的功能。【关键词】matlab;以图识图;颜色特征;纹理特征;颜色直方图;特征矩阵1 研究的背景和目的随着互联网的发展,人们之间的交流已不再局限于文字,图片也成为了信息传递的一种重要媒介。然而,虽然图片比文字更为生动、直观,容易理解,但面对一幅陌生的图片,想通过搜索而进一步了解它却远没有文字搜索容易。在这种情况下,能帮助用户找到近似的图片的以图识图技术,便尤为重要。美国的谷歌识图、中国的百度识图等应用相继推出,让这方面的研究吸引了越来越多的关注。以前的搜索引擎一般是根据图片的文件名、索引、关键词等来进行匹配,但是结果往往会不尽人意。以图识图是应用了计算机视觉(computer visio

3、n)技术,让计算机“看到”有关图片而进行自动比对、匹配,搜索结果的相似度将有所提高。本文拟通过matlab平台,研究以图识图的实现方法。2 研究的实施方法2.1 研究平台的介绍matlab是指矩阵实验室(matrixlaboratory).是一个高级的矩阵/阵列语言,同时也是个是一个包含大量计算算法的集合。matlab拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。它还提供了专业水平的符号计算、文字处理、可视化建模仿真和实时控制等功能.由于matlab是为矩阵计算而研发的,内含多种矩阵运算方法,而每张图片又可以看作多个像素点组合而成的矩阵,因此它在图片的特征提取

4、和计算方面显得尤为方便,适合以图识图软件的编写。2.2 以图识图的原理以图识图简单来讲就是根据客户的目标图片在图片库里搜寻相似图片。基本的原理就是指根据图像内容特征以及特征组合,给每张图片分配一个像指纹一样的矩阵,矩阵越接近,图片就越相似。本文是通过提取图像的内容特征,如颜色、纹理、形状等来研究,没有包括更深一层的语义。提取图像的内容特征就是对图片特征矩阵(颜色矩阵、纹理矩阵等)的提取,将人类所能观察到的图片数据化。数据化后,将图片库中原有的特征矩阵相比对,通常是求两矩阵之差。因此,数据化后得出的检索结果,就是图片库中,与目标图片的某几种特征差别最小的,比如说颜色最相近,纹理最近似的。1)颜色

5、特征图像其实是由许许多多被称为像素点的小点构成的,每个像素点有不同的值,这是组成图像的基本单元要素。颜色特征就是根据不同像素点的不同值的特征而提取的一种全局特征。一个像素点代表一种颜色,将所有像素点进行提取、统计,就可以得到各种颜色在图像中像素点总个数,然通过颜色直方图表达出来。2)纹理特征“纹理是由一个具有一定的不变性的视觉基元,在给定区域内的不同位置上,以不同的形变和不同的方向重复出现的一种图纹”,它也是图像的重要“身份”特征之一。使用纹理特征可以较好地区分出相似颜色区域,对于物体和背景不易分割的图像比较适用。能表达各种颜色的在图像中的分布情况,导致搜索准确率大大降低。3)颜色直方图颜色直

6、方图是颜色在图像中的空间分布情况,它是基于不同的颜色空间和坐标系。常用的颜色空间有rgb、hsv、luv和lab空间,其中hsv是最常用的,对应人眼视觉特性,从色彩(hue)、饱和度(saturation)和值(value)三个方面来表达图像的特征。2.3 研究实施步骤基于图像内容实现检索的基本思路是:1)分析目标图片的基本内容,通过自动或半自动的方法提取目标图像的特征,包括颜色、纹理、形状以及空间关系等特征。2)将得到的图像特征作为其“指纹身份”,根据指定的算法计算和评价目标图像和图库图像各种特征之间的相似程度。3)根据比对结果,将最相似的一组图片反馈给使用者。(1)图像解码通过扫描、采样和

7、量化,提取图片的颜色空间。在matlab中可以直接用一个子程序a=imread(图片路径/图片名.图片格式)实现。(2)图像预处理对图像进行缩放、灰度、反转、直方图等格式转换,以供程序提取特征使用。(3)图片特征提取通过程序提取图像颜色、纹理和hsv颜色空间等描述全局特征,使用fast、harris描述图像的局部特征。(4)得出特征矩阵通过matlab得到mat格式的矩阵集合,每个矩阵代表一个图片。(5)特征相似度匹配及索引用“距离”的概念来度量图片的相似度。有闵式、余弦和海明距离来规定这些图片的相似程度,计算两张图片的“距离”的最简单的算法就是:距离=sqrt(sum(x-y)2), x与y

8、代表两个矩阵中相对应的元素。再按照一定的检索算法,和图片库的特征进行比对,得到匹配程度的排序。2.4 具体算法1)比较两张图片imgn1和imgn2的纹理特征:imgn1=zeros(m1,n1);for i=2:m1-1 for j=2:n1-2pow1=0;for q =j-1:j+1for p=i-1:i+1if img1(p,q) > img1(i,j)if p=i | q=jimgn1(i,j)=imgn1(i,j)+2pow1;pow1=pow1+1;endendendendendendx1=imgn1(:);x=1.0.*hist(x1,256)/(m1*n1);img2=

9、imread('d:f.jpg');img2=rgb2gray(img2);m2 n2=size(img2);imgn2=zeros(m2,n2);for a=2:m2-1for b=2:n2-1pow2=0;for t =b-1:b+1for s=a-1:a+1if img2(s,t) > img2(a,b)if s=a | t=bimgn2(a,b)=imgn2(a,b)+2pow2;pow2=pow2+1;endendendendendendx2=imgn2(:);y=1.0.*hist(x2,256)/(m2*n2);dist=sqrt(sum(x-y).*(x-

10、y);dist=dist/32)比较两张图片i1和i2的hsv颜色特征:i1=imread('d:b.jpg');i2=imread('d:e.jpg');m1,n1,c1=size(i1);m2,n2,c2=size(i2);i1=rgb2hsv(i1);i2=rgb2hsv(i2);h1=i1(:,:,1);s1=i1(:,:,2);v1=i1(:,:,3);h2=i2(:,:,1);s2=i2(:,:,2);v2=i2(:,:,3);xh=1.0.*imhist(h1)/(m1*n1);yh=1.0.*imhist(h2)/(m2*n2);disth =s

11、um(xh-yh).*(xh-yh);sumh=sum(disth(:);sumh=sumh/3;xs=1.0.*imhist(s1)/(m1*n1);ys=1.0.*imhist(s2)/(m2*n2);dists=sum(xs-ys).*(xs-ys);sums=sum(dists(:);sums=sums/3;xv=1.0.*imhist(v1)/(m1*n1);yv=1.0.*imhist(v2)/(m2*n2);distv=sum(xv-yv).*(xv-yv);sumv=sum(distv(:);sumv=sumv/3;sqrt(sumh+sums+sumv)3)局部特征fast角

12、点:角点就是在图片中灰度急剧变化的点。fast算法规定,如果点a的周围(在半径为3个像素点的圆周内),有足够多的点(12个点),与点a的灰度之差大于设定的一个阈值,那么程序就判定点a为角点。在以图识图中,角点可作为局部特征来进行检索。但一张图片中有无数像素点,如果将每个点进行计算,工作量将会巨大。因此通过算法筛选出可能是角点的像素点是一种有效的方法。以下是简易判断fast角点的代码:第一层:i=imread('d:day-2flower2.jpg');im2uint8(rgb2gray(i);h=fspecial('gaussian',5);i=imfilter(i,h);m,n=size(i);t=20;corners=zeros(m,n);for i=4:m-20for j=20:n-20surpass=0;if abs(i(i,j)-i(i-3,j)>tsurpass=surpass+1;endif abs(i(i,j)-i(i,j-3)>tsurpass=surpass+1;endif abs(i(i,j)-i(i+3,j)>tsurpass=surpass+1;endif abs(i(i,j)-i(i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论