医学图像处理实验报告 下载本文

内容发布更新时间 : 2024/5/22 22:40:46星期一 下面是文章的全部内容请认真阅读。

函数imtransform使用反向映射,即按照顺序扫描每个输出像素,用 运算出输入图像上的对应位置,并将其插值到最近的输入像素之中,以决定输出像素的值。其语法为:

g = imtransform (f, tform, interp)

其中,interp是一个字符串,用来指明像素如何样获得输出像素,能够是:‘nearest’, ‘billnear’, ‘bicublc’ 或 ‘bicubic’。

(2)图像配准。工具箱支持以操纵点为基础的图像配准,操纵点也称为联接点,即在两幅图像中的位置已知或能够交互地选择的像素的一个子集。函数cp2tform支持的空间变换类型已列在下表中。

表格 错误!文档中没有指定样式的文字。-11 函数cp2tform和maketform支持的变换类型

变换类型 Affine (仿射) Box (盒) Composite (合成) Custom (自定义) 描述 函数 缩放、旋转、剪切和平移的组合。直线仍旧保持直线,maketform 平行线保持平移。 沿着每个方向独立地缩放和平移;仿射变换的子集。 顺序应用的空间变换集合。 用户自定义的空间变换;用户提供 和 函数。 cp2tform maketform maketform maketform cp2tform cp2tform maketform cp2tform Linear conformal 缩放(在各个方向上都相同)、旋转、和平移;仿射变(线性等角) 换的子集。 LWM 局部加权平均;局部变化的空间变换。 Piecewise linear 局部变化的空间变换。 (分段线性) Polynomial (多项式) Project (投影)

输入空间坐标是输出空间的多项式。 如仿射变换那样,直线保持为直线,但平行线收敛于消逝点。 3.2 实验内容

3.2.1 使用函数imnoise2(在M函数文件夹下)产生数据的六种直方图:高斯、平均、对数正态、瑞利、指数、厄兰(从左至右),如图所示。请写出实验代码。

>> r=imnoise2('gaussian',100000,1,0,1); >> p=hist(r,50); >> bar(p);

>> r2=imnoise2('uniform',100000,1); >> p=hist(r2,50); >> bar(p)

>> r2=imnoise2('lognormal',100000,1); >> p=hist(r2,50); >> bar(p)

>> r2=imnoise2('rayleigh',100000,1); >> p=hist(r2,50); >> bar(p)

>> r2=imnoise2('exponential',100000,1); >> p=hist(r2,50); >> bar(p)

>> r2=imnoise2('erlang',100000,1); >> p=hist(r2,50); >> bar(p)

3.2.2 使用函数imnoise3,产生频谱和空间正弦噪声模式,如图所示。

>> c=[0 64;0 128;32 32;64 0;128 0;-32 32]; >> [r,R,s] = imnoise3 (512,512,c); >> imshow(s, [])

>> figure,imshow(r, [])

>> c2=[0 32;0 64;16 16;32 0;64 0;-16 16]; >> [r2,R2,s2] = imnoise3 (512,512,c2); >> figure,imshow(s2, []) >> figure,imshow(r2, []) >> c3=[6 32;-2 2];

>> [r3,R3,s3] = imnoise3 (512,512,c3); >> figure,imshow(r3,[]); >> a=[1 5];

>> [r4,R4,s4]=imnoise3(512,512,c3,a); >> figure,imshow(r4,[]);

3.2.3 估量噪声参数。如图所示,是一副带有噪声的图像('Fig5.07(b).jpg'),利用已学的技术来估量噪声类型及其参数。写出实验步骤。

>> f=imread('Fig5.07(b).jpg');

>> [B,c,r]=roipoly(f); ‘现在利用鼠标在图像上选取多边形

>> figure,imshow(B); >> [p, npix]=histroi(f, c, r); >> figure,bar(p,1)

>> [v, unv]=statmoments(p, 2); >> v v =

0.5454 0.0027 >> unv unv =

139.0833 176.1200

>> X=imnoise2('gaussian', npix,1,147,20); >> figure,hist(X, 130) >> axis([0 300 0 140])

3.2.4 使用函数spilt。如图所示的8幅图像分不是:(a)一幅被概率只有0.1的胡椒噪声污染的unit8类图像、(b)被概率为0.1的盐粒噪声污染的图像、(c)用阶为Q=1.5的3*3反调和滤波器对图a滤波的结果、(d)用Q=-1.5对b的滤波的结果、(e)用3*3最大滤波器对a滤波的结果、(f)用3*3最小滤波器对图b滤波的结果。请写出实验步骤。

>> f=imread('Fig5.08(a).jpg'); >> [m,n]=size (f);

>> r = imnoise2('salt & pepper',m ,n, 0.1, 0); >> c = find(r == 0); >> gp = f; >> gp (c) = 0;

>> r=imnoise2('salt & pepper',m,n,0,0.1); >> c=find(r ==1); >> gs=f; >> gs(c)=255;

>> figure, imshow(gs)

>> fp = spfilt(gp, 'chmean', 3, 3, 1.5); >> figure,imshow(fp)

>> fs= spfilt(gs, 'chmean', 3, 3, -1.5); >> figure,imshow(fs)

>> fmax = spfilt(gp, 'max', 3, 3); >> figure,imshow(fmax)

>> fmin = spfilt(gs, 'min', 3, 3); >> figure,imshow(fmin)

3.2.5 自适应中值滤波。如图所示,3副图像分不为:被密度为0.25的椒盐噪声污染的图像,使用大小为7*7的中值滤波器得到的结果、使用Smax=7的自适应中值滤波得到的结果。请写出实验步骤。

>> f=imread('Fig5.07(a).jpg');

>> g=imnoise(f,'salt & pepper', .25); >> imshow(g)

>> f1=medfilt2(g, [7 7], 'symmetric'); >> figure,imshow(f1);