图像的基本操作(加减乘除,多帧显示,动态图)

%% 学习目标 :图像的基本操作
%% 通过抖动来增强图像的色彩对比度
clear
clc
I = imread(‘cameraman.tif’); %读取灰度图像
BW = dither(I); % 通过抖动来增强图像的色彩对比度
subplot(121);
imshow(I);
subplot(122);
imshow(BW);

%% 获取图像信息
clear
clc
info = imfinfo(‘cameraman.tif’) % imfinfo()函数表示获取图像信息
%% 改变图像格式
clear
clc
RGB = imread(‘peppers.png’);
imwrite(RGB,‘mypeppers.tif’); %更改图像信息(格式)
tupian = imread(‘mypeppers.tif’);
imshow(I1);
figure;
imshow(tupian);
%% 读取图像中的某些帧
clear
clc
I1 = imread(‘mri.tif’,5); % 读取图像的第5帧
I20 = imread(‘mri.tif’,25); % 读取图像的第25帧
figure;
subplot(121);
imshow(I1);
subplot(122);
imshow(I20);
% which mri.tif 查看图像存储位置
%% 同时显示多帧图像
clear
clc
mri = uint8(zeros(128,128,1,30));
for i=1:25
[mri(:,:,:,i),map]=imread(‘mri.tif’,i);
end
montage(mri,map); %同时显示多帧
%% 将多帧图像转换为电影
clear
clc
mri = uint8(zeros(128,128,1,30));
for i=1:25
[mri(:,:,:,i),map]=imread(‘mri.tif’,i);
end
mov = immovie(mri,map); % immovie()函数表示将多帧图像做成动态图
implay(mov); %放映动态图
%% 图像的相加 如果值大于255,就默认为255
clear
clc
I = imread(‘rice.png’);
J = imread(‘cameraman.tif’);
K = imadd(I,J,‘uint16’);
imshow(K,[]);
%% 图像的相减
clear
clc
I = imread(‘cameraman.tif’);
J = imsubtract(I,90);
imshow(J);
set(gcf,‘position’,[1000,200,300,300]);
%% 图像相乘
clear
clc
I = imread(‘cameraman.tif’);
J = immultiply(I,0.6);
imshow(I);
set(gcf,‘position’,[1000,200,300,300]);
figure(2);
imshow(J);
set(gcf,‘position’,[700,200,300,300]);
%% 图像相除 维数要一致
clear
clc
X = uint8([222 50 21;56 77 89]);
Y = uint8([66 66 66;66 66 66]);
Z = imdivde(X,Y);
%% 两幅图像的绝对差异
clear
clc
I = imread(‘cameraman.tif’);
J = uint8(filter2(fspecial(‘gaussian’),I));%对图像进行滤波
K = imabsdiff(I,J);%获取滤波图像和之前图像的差异
subplot(121);
imshow(I);
subplot(122);
imshow(K,[]);

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值