MATLAB特征提取代码[共3页]_第1页
MATLAB特征提取代码[共3页]_第2页
MATLAB特征提取代码[共3页]_第3页
全文预览已结束

下载本文档

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

文档简介

1、MATLAB特征提取代码for i=1:26 f=strcat(D:bishe,num2str(i); image=strcat(f,.jpg); PS=imread(image); PS=imresize(PS,300,300,bilinear);%归一化大小 PS=rgb2gray(PS); m,n=size(PS); %测量图像尺寸参数 GP=zeros(1,256); %预创建存放灰度出现概率的向量 for k=0:255 GP(k+1)=length(find(PS=k)/(m*n); %计算每级灰度出现的概率,将其存入GP中相应位置 end%直方图均衡化 S1=zeros(1,25

2、6); for i=1:256 for j=1:i S1(i)=GP(j)+S1(i); %计算Sk end end S2=round(S1*256)+0.5); %将Sk归到相近级的灰度%图像均衡化 f=PS; for i=0:255 f(find(PS=i)=S2(i+1); %将各个像素归一化后的灰度值赋给这个像素 end figure,imshow(f);%边缘检测 f=edge(f,canny,0.25); imshow(f);%二值法锐化图像 f=double(f); x,y=gradient(f); g=sqrt(x.*x+y.*y); i=find(g=0.5); g(i)=2

3、56; j=find(g0) P2=j; if (P2-P1)=1) % 判断是否为垂直方向连续的周长像素点 Ny=Ny+1; end P1=P2; end end end%检测水平方向连读的周长像素点 P1=0; P2=0; Nx=0; % 记录水平方向连续周长像素点的个数 for j=1:y for i=1:x if (BW(i,j)0) P2=i; if (P2-P1)=1) % 判断是否为水平方向连续的周长像素点 Nx=Nx+1; end P1=P2; end end end SN=sum(sum(BW); % 计算周长像素点的总数 Nd=SN-Nx-Ny; % 计算奇数码的链码数目

4、H=max(sum(g); % 计算目标的高度 W=max(sum(g); % 图象g经矩阵转置后,计算宽度 L=sqrt(2)*Nd+Nx+Ny; % 计算周长%=形态特征值计算=% A=bwarea(g); % 计算目标的面积 R=A/(H*W); % 计算矩形度 E=min(H,W)/max(H,W); % 计算伸长度 temp1=A,R,E;%提取不变矩特征 M,N=size(g); x,y=meshgrid(1:N,1:M); x=x(:); y=y(:); g=g(:); m.m00=sum(g); if(m.m00=0) m.m00=eps; end m.m10=sum(x.*g

5、); m.m01=sum(y.*g); m.m11=sum(x.*y.*g); m.m20=sum(x.2.*g); m.m02=sum(y.2.*g); m.m30=sum(x.3.*g); m.m03=sum(y.3.*g); m.m12=sum(x.*y.2.*g); m.m21=sum(x.2.*y.*g); xbar=m.m10/m.m00; ybar=m.m01/m.m00; e.eta11=(m.m11-ybar*m.m10)/m.m002; e.eta20=(m.m20-xbar*m.m10)/m.m002; e.eta02=(m.m02-ybar*m.m01)/m.m002;

6、 e.eta30=(m.m30-3*xbar*m.m20+2*xbar2*m.m10)/m.m002.5; e.eta03=(m.m03-3*ybar*m.m02+2*ybar2*m.m01)/m.m002.5; e.eta21=(m.m21-2*xbar*m.m11-ybar*m.m20+2*xbar2*m.m01)/m.m002.5; e.eta12=(m.m12-2*ybar*m.m11-xbar*m.m02+2*ybar2*m.m10)/m.m002.5; phi(1)=e.eta20+e.eta02; phi(2)=(e.eta20-e.eta02)2+4*e.eta112; phi

7、(3)=(e.eta30-3*e.eta12)2+(3*e.eta21-e.eta03)2; phi(4)=(e.eta30+e.eta12)2+(e.eta21+e.eta03)2; phi(5)=(e.eta30-3*e.eta12)*(e.eta30+e.eta12)*(e.eta30+e.eta12)2-3*(e.eta21+e.eta03)2+(3*e.eta21-e.eta03)* (e.eta21+e.eta03)*(3*(e.eta30+e.eta12)2-(e.eta21+e.eta03)2); phi(6)=(e.eta20-e.eta02)*(e.eta30+e.eta12)2-(e.eta21+e.eta03)2)+4*e.eta11*(e.eta30+e.eta12)*(e.eta21+e.eta03); phi(7)=(3*e.eta21-e.eta03)*(e.eta30+e.eta12)*(e.eta30+e.eta12)2-3*(e.eta21+e.eta03)2)+(3*e.eta12-e.eta30)* (e.eta21+e.eta03)*(3*(e.eta30+e.eta12)2-(e.eta21+e.eta03)2)

温馨提示

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

评论

0/150

提交评论