图像亮度改变
利用rgb2hsv函数,H表示色调,S表示饱和度,V表示亮度
%%
%图片亮度增强和衰弱
img=imread('./2.png');
figure;
imshow(img);
[M,O,N]=size(img);
v=[0.6,0.8,1.2,1.4,1.6];
[H,S,V]=rgb2hsv(img);
for i=1:5
R(:,:,1)=H;
R(:,:,2)=S;
R(:,:,3)=V*v(i);
rgb=hsv2rgb(R);
figure;
imshow(rgb);
end
图片镜像处理imwarp函数实现水平和垂直镜像
img=imread('./2.png');
figure;
imshow(img);
title('原图');
[Height,Width]=size(img); %获取原图像的高度和宽度
W1=affine2d([-1 0 0;0 1 0;Width 0 1]); %构造空间变换结构T1,这里为水平镜像变换矩阵
W2=affine2d([1 0 0;0 -1 0;0 Height 1]); %构造空间变换结构T2,这里为竖直镜像变换矩阵
A1=imwarp(img,W1); %对原图像I进行水平镜像变换
A2=imwarp(img,W2); %对原图像I进行竖直镜像变换
figure,imshow(A1); %把绘图窗口分成一行三列,并将A1在第一行第二列显示
title('水平镜像变换后的图片A1');
figure,imshow(A2); %把绘图窗口分成一行三列,并将A2在第一行第三列显示
title('竖直镜像变换后的图片A2');
图片旋转imrorate函数
img=imread('./2.png');
figure;
imshow(img);
title('原图');
T1=imrotate(img,90);
figure,imshow(T1);
T2=imrotate(img,180);
figure,imshow(T2);
T3=imrotate(img,270);
figure,imshow(T3);
图片模糊处理
fspecial二维滤波器 该函数滤波方式有多种
imfilter模糊处理
img=imread('2.png');%读取图片
figure;imshow(img),title('原图');
h1=fspecial('motion',6,30);%确定滤波方式为运动滤波 6是长度 30是角度
h2=fspecial('motion',6,-30);
h3=fspecial('motion',7,45);
h4=fspecial('motion',7,-45);
t_1=imfilter(img,h1);%滤波操作
t_2=imfilter(img,h2);%滤波操作
t_3=imfilter(img,h3);%滤波操作
t_4=imfilter(img,h4);%滤波操作
figure;
subplot(2,2,1),imshow(t_1);
subplot(2,2,2),imshow(t_2);
subplot(2,2,3),imshow(t_3);
subplot(2,2,4),imshow(t_4);
图片加噪声IMnoise
%%
%图片加噪声IMnoise
img = imread('2.png');
figure,imshow(img);
title("Original image");
J1 = imnoise(img,'gaussian',0,0.02);%添加高斯白噪声,均值0,方差0.02
figure,imshow(J1);
title('Gaussian');
J2 = imnoise(img,'salt & pepper',0.03);%添加椒盐噪声,密度0.03
figure,imshow(J2);
title('Salt & Pepper');
J3 = imnoise(img,'poisson');%添加Poisson噪声
figure,imshow(J3);
title('Poisson');