好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

图像处理_条纹检测.doc

5页
  • 卖家[上传人]:mg****85
  • 文档编号:34327796
  • 上传时间:2018-02-23
  • 文档格式:DOC
  • 文档大小:111KB
  • / 5 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1. 图片”条纹 .bmp”中包一定间隔的条纹,要求测量条纹的间隔(以像素为尺度)和方向(假设单个像元为方形,及长度和宽度一致) matlab 程序% 条纹处理 2010 年 6 月 25 日 %% 打开图片 [FileName,PathName] = uigetfile({'*.bmp','BMP 文件(*.bmp)';'*.*', ... 'All Files (*.*)'}, 'Select the Target-file');file=[PathName,FileName];if isequal(FileName,0)return;elseg=imread (file);figure(1); %原图imshow(g);I=rgb2gray(g); %灰度化J=I;[row,col]=size(I);Bi=im2bw(J,graythresh(J)); %二值化 graythresh(J): Otsu 方法确定阈值[J8,n8]=bwlabel(Bi,8); %贴标签%% 去除边沿非整条纹for i = 1:rowif J8(i,1)~=0 temp= J8(i,1);[r,c]=find(J8(i,:)==temp);J8(i,c)=0;endif J8(i,col)~=0temp= J8(i,col);[r,c]=find(J8(i,:)==temp); J8(i,c)=0; endendfigure(2);imshow(J8);%% 条纹中线JL=zeros(size(J8)); for i = 1:rowfor j=1:n8[r,c]=find(J8(i,:)==j);if(~isempty(c))JL(i,round(sum(c)/length(c)))=j; endendendfigure(3);imshow(JL);%% 计算倾角间距i=1;for j=1:n8[r,c]=find(JL==j);if(~isempty(c))p(i,:)=polyfit(c,r,1); %拟合i=i+1;endendSlope=sum(p(:,1))/length(p(:,1)); %斜率if Slope<0Inclination=-atan(Slope)/pi*180; %倾角elseInclination=180-atan(Slope)/pi*180; endmyL=p(:,2);gap=0;lhalf=round(length(p(:,2))/2);for i=lhalf+1:length(p(:,2))gap=gap+myL(i)-myL(i-lhalf); endgap=(gap/(i*lhalf))*sin(Inclination/180*pi);str1=['条纹间隔:' num2str(gap) '像素\n'];str2=['条纹与水平夹角:' num2str(Inclination) '度'];msgbox([str1;str2]);end%% 保存图片% [file,path] = uiputfile({'*.bmp','BMP 文件(*.bmp)';'*.*', ... % 'All Files (*.*)'},'Save file name');% PF=[path,file];% if isequal(file,0)% return;% else% imwrite(JL,PF,'bmp');% end。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.