matlab学习笔记(三)---图像的代数运算1、绝对值差函数imabstiff
I=imread('cameraman.tif');
J=uint8(filter2(fspecial('gaussian'),I));
K=imabsdiff(I,J);
imshow(I);
imshow(K,[]);</span>
原图和处理后的图如下:
2、图像的叠加函数imadd
I=imread('rice.png');
J=imread('cameraman.tif');
K=imadd(I,J,'uint16');
imshow(I);
imshow(J);
imshow(K,[]);</span>
原图和处理后的图像如下:
实际上imadd还可以通过制定常数参数增强⼀张图像的亮度,如下:
I=imread('rice.png');
J=imadd(I,50);
subplot(121),imshow(I);
subplot(122),imshow(J);</span>
对⽐图如下:
3、图像求补函数imcomplement
bw = imread('text.png');
bw2 = imcomplement(bw);
subplot(121),imshow(bw);
subplot(122),imshow(bw2);</span>
执⾏结果如下:
4、图像的除法运算imdivide
I=imread('rice.png');
用subplot函数blocks=blkproc(I,[32 32],'min(x(:))');
background=imresize(blocks,[256 256],'bilinear'); Ip=imdivide(I,background);
subplot(121),imshow(I);
subplot(122),imshow(Ip,[]);</span>
执⾏结果如下:
如果将参数变成常数:
I=imread('rice.png');
J=imdivide(I,2);
subplot(121),imshow(I);
subplot(122),imshow(J);</span>
执⾏结果如下:
5、线性组合函数imlincomb
I=imread('cameraman.tif');
J=uint8(filter2(fspecial('gaussian'),I));
K=imlincomb(1,I,-1,J,128);
subplot(121),imshow(I);
subplot(122),imshow(K);</span>
执⾏结果如下:
6、图像的乘法操作immultiply
I=imread('moon.tif');
J=immultiply(I,0.5);
subplot(121),imshow(I);
subplot(122),imshow(J);</span>
执⾏结果如下:
7、图像的减法函数imsubtract
I=imread('rice.png');
blocks=blkproc(I,[32 32],'min(x(:))');
background=imresize(blocks,[256 256],'bilinear'); Ip=imsubtract(I,background);
subplot(121),imshow(I);
subplot(122),imshow(Ip,[]);</span>
执⾏结果如下:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论