机器视觉实验报告3

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验五图像的分割与边缘提取

一、实验内容

1.图像阂值分割

实验代码:

clear all, close all;

I=imread('flower.tif');

figure(1),imshow(I)

figure(2); imhist(I)

T=120/255;

Ibw1=im2bw(I,T);

figure(3);

subplot(1,2,1), imshow(Ibw1);

T=graythresh(I);

L=uint8(T*255)

Ibw2=im2bw(I,T);

subplot(1,2,2), imshow(Ibw2);

help im2bw;

help graythresh;

运行结果:

实验代码:

clear all, close all;

I=imread('flower.tif');

figure(1),imshow(I)

figure(2); imhist(I)

T=240/255;

Ibw1=im2bw(I,T);

figure(3);

subplot(1,2,1), imshow(Ibw1); T=graythresh(I);

L=uint8(T*255)

Ibw2=im2bw(I,T);

subplot(1,2,2), imshow(Ibw2); help im2bw;

help graythresh;

运行结果:

2.边缘检测

实验代码:

clear all, close all;

I=imread('flower.tif');

BW1=edge(I,'sobel');

BW2=edge(I,'canny');

BW3=edge(I,'prewitt');

BW4=edge(I,'roberts');

BWS=edge(I,'log');

figure(1), imshow(I), title('Original Image'); figure(2), imshow(BW1), title('sobel');

figure(3), imshow(BW2), title('canny');

figure(4), imshow(BW3), title('prewitt');

figure(5), imshow(BW4), title('roberts');

figure(6), imshow(BWS), title('log');

%在完成上述试验后,查看函数edge()使用说明。help edge

运行结果:

3.灰度阂值分割:

实验代码:

I=imread('649.jpg'); I=rgb2gray(I);

I2=im2bw(I); figure,imshow(I2);

I2=im2bw(I,140/255); figure,imshow(I2)

运行结果:

4.区域分割法

实验代码:

I=imread('649.jpg');

I=rgb2gray(I);

imshow(I)

c=[222 272 300 270 221 194]; r=[21 21 75 121 121 75];

BW=roipoly(I,c,r);

figure,imshow(BW)

H=fspecial('unsharp');

J1=roifilt2(H,I,BW);

figure,imshow(J1)

J2=roifill(I,c,r);

figure,imshow(J2)

运行结果:

5. 分水岭分割法

实验代码:

f=imread('649.jpg'); imshow(f);

g=im2bw(f, graythresh(f)); figure,imshow(g);

gc=~g;

D=bwdist(gc);

L=watershed(-D);

w=L==0;

g2=g&~w;

figure,imshow(g2)

运行结果:

实验六图像形态学运算1.

实验代码:

I=imread('649.jpg');

level = graythresh(I);

bw = im2bw(I,level);

SE = strel('square',3);

BW1 = imdilate(bw,SE);

SE1 = strel('arbitrary',eye(5));

BW2 = imerode(bw,SE1);

BW3 = bwmorph(bw, 'open');

BW4 = bwmorph(bw, 'close');

imshow(I);

figure,imshow(bw);

figure,imshow(BW1);

figure,imshow(BW2);

figure,imshow(BW3);

figure,imshow(BW4);

运行结果:

相关文档
最新文档