matlab学习笔记(三)---图像的代数运算

1、绝对值差函数imabstiff

   I=imread('cameraman.tif');
   J=uint8(filter2(fspecial('gaussian'),I));
   K=imabsdiff(I,J);
   imshow(I);
   imshow(K,[]);

原图和处理后的图如下:

matlab学习笔记(三)---图像的代数运算_第1张图片matlab学习笔记(三)---图像的代数运算_第2张图片



2、图像的叠加函数imadd

   I=imread('rice.png');
   J=imread('cameraman.tif');
   K=imadd(I,J,'uint16');
   imshow(I);
   imshow(J);
   imshow(K,[]);
原图和处理后的图像如下:

matlab学习笔记(三)---图像的代数运算_第3张图片matlab学习笔记(三)---图像的代数运算_第4张图片matlab学习笔记(三)---图像的代数运算_第5张图片

实际上imadd还可以通过制定常数参数增强一张图像的亮度,如下:

   I=imread('rice.png');
   J=imadd(I,50);
   subplot(121),imshow(I);
   subplot(122),imshow(J);
对比图如下:

matlab学习笔记(三)---图像的代数运算_第6张图片



3、图像求补函数imcomplement

   bw = imread('text.png');
   bw2 = imcomplement(bw);
   subplot(121),imshow(bw);
   subplot(122),imshow(bw2);
执行结果如下:

matlab学习笔记(三)---图像的代数运算_第7张图片




4、图像的除法运算imdivide

   I=imread('rice.png');
   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,[]);
执行结果如下:

matlab学习笔记(三)---图像的代数运算_第8张图片

如果将参数变成常数:

   I=imread('rice.png');
   J=imdivide(I,2);
   subplot(121),imshow(I);
   subplot(122),imshow(J);

执行结果如下:

matlab学习笔记(三)---图像的代数运算_第9张图片




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);
执行结果如下:

matlab学习笔记(三)---图像的代数运算_第10张图片



6、图像的乘法操作immultiply

   I=imread('moon.tif');
   J=immultiply(I,0.5);
   subplot(121),imshow(I);
   subplot(122),imshow(J);
执行结果如下:

matlab学习笔记(三)---图像的代数运算_第11张图片



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,[]);
执行结果如下:

matlab学习笔记(三)---图像的代数运算_第12张图片




你可能感兴趣的:(matlab,个人总结)