数字信号与图像处理结课作业_第1页
数字信号与图像处理结课作业_第2页
数字信号与图像处理结课作业_第3页
数字信号与图像处理结课作业_第4页
数字信号与图像处理结课作业_第5页
已阅读5页,还剩9页未读, 继续免费阅读

下载本文档

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

文档简介

1、数字信号与图像处理结课作业,姓 名:xxx 学 号:xxx 指 导 老 师:xxx 日 期:xxx,gui界面,gui工作界面,读取图片,global im filename,pathname = . uigetfile(*.jpg;*.bmp;*.gif,选择图片); % 合成路径+文件名 str = pathname filename; % 读取图片 im = imread(str); % 使用第一个axes axes(handles.axes1); % 显示图片 imshow(im);,图像边缘检测,global im; str=get(hobject,string); axes(han

2、dles.axes2); switch str case 原图 imshow(im)%显示原图 case sobel bw1=edge(rgb2gray(im),sobel); imshow(bw1) %显示sobel方式的边缘检测图 case prewitt bw2=edge(rgb2gray(im),prewitt); %显示prewitt方式的边缘检测图 imshow(bw2) case canny %显示canny方式的边缘检测图 bw3=edge(rgb2gray(im),canny); imshow(bw3) case roberts bw4=edge(rgb2gray(im),r

3、oberts); imshow(bw4); %显示roberts方式的边缘检测图 end,sobel 检测,prewitt 检测,canny 检测,roberts 检测,彩色通道提取,global im %使用全局变量im global i_rgb %声明i_rgb为全局变量 % 拿到所选按钮的名称 str = get(hobject,string); switch str case rgb_r i_rgb = im(:,:,1); %提取rgb图像的r通道 axes(handles.axes1); imshow(i_rgb); %显示r通道图像 axes(handles.axes2); im

4、hist(i_rgb); %显示r通道图像的灰度直方图 case rgb_g;,i_rgb = im(:,:,2); %提取rgb图像的g通道 axes(handles.axes1); imshow(i_rgb); %显示g通道图像 axes(handles.axes2); imhist(i_rgb); %显示g通道图像的灰度直方图 case rgb_b i_rgb = im(:,:,3); %提取rgb图像的b通道 axes(handles.axes1); imshow(i_rgb); %显示b通道图像 axes(handles.axes2); imhist(i_rgb); %显示b通道图像

5、的灰度直方图,三通道显示,r通道,g通道,b通道,图像去背景,case r-b; i_r = im(:,:,1); i_b = im(:,:,3); i_rgb = i_r - i_b; %r与b通道去背景处理 axes(handles.axes1); imshow(i_rgb); axes(handles.axes2); imhist(i_rgb); %显示r-b图像的灰度直方图 case r-g i_r = im(:,:,1); i_g = im(:,:,2); i_rgb = i_r - i_g; %r与g通道去背景处理,axes(handles.axes1); imshow(i_rgb

6、); axes(handles.axes2); imhist(i_rgb); %显示r-g图像的灰度直方图 case g-b i_g = im(:,:,2); i_b = im(:,:,3); i_rgb = i_g - i_b; %g与b通道去背景处理 axes(handles.axes1); imshow(i_rgb); axes(handles.axes2); imhist(i_rgb); %显示g-b图像的灰度直方图 end;,去背景后的图片,r-g,r-b,g-b,去背景,global im global i_rgb %使用全局变量i_rgb global i_rgb_bw; i_r

7、 = im(:,:,1); i_b = im(:,:,3); i_rgb = i_r - i_b; i_rgb_bw = im2bw(i_rgb,20/255); axes(handles.axes3); imshow(i_rgb_bw); u_r = im2double(i_rgb_bw) .* im2double(im(:,:,1); u_g = im2double(i_rgb_bw) .* im2double(im(:,:,2); u_b = im2double(i_rgb_bw) .* im2double(im(:,:,3);,u = ; u(:,:,1) = u_r; u(:,:,2

8、) = u_g; u(:,:,3) = u_b; axes(handles.axes3); imshow(u);,空隙填充及面积计算,global im global i_rgb %使用全局变量i_rgb global i_rgb_bw global u global mj i_rgb_bw_img = imfill(i_rgb_bw,holes); axes(handles.axes3); imshow(i_rgb_bw_img); u_r = im2double(i_rgb_bw_img) .* im2double(im(:,:,1); u_g = im2double(i_rgb_bw_i

9、mg) .* im2double(im(:,:,2); u_b = im2double(i_rgb_bw_img) .* im2double(im(:,:,3); u = ;,u(:,:,1) = u_r; u(:,:,2) = u_g; u(:,:,3) = u_b; axes(handles.axes3); imshow(u); s_mj = size(i_rgb_bw_img); mj = 0; for i=1:s_mj(1)*s_mj(2) if i_rgb_bw_img(i)=1 mj = mj+1; end end,边缘提取、周长及似圆性的计算,global u global mj u_gray = rgb2gray(u); bwm1 = bwmorph(u_gray,remove);%二维图像边缘提取 axes(handles.axes3); imshow(bwm1); s_zc = size(bwm1); zc = 0; for i=1:s_zc (1)*s_zc (2) if bwm1(i)=1 zc = zc+

温馨提示

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

评论

0/150

提交评论