数字图像处理初步
一、实验内容
数字图像处理MATLAB工具箱入门:图像存取、转化等、
- 相关函数使用:imread、imshow、imfinfo、imwrite、imadjust
二、实验步骤
1、imread( )函数读取一幅图像;
% 读取图像文件,并将其存储在一个命名为Image的数组中
Image = imread('Lenna.jpg');
imread返回的数组类型取决于图像的类型。
- 对于彩色图像,通常返回一个MxNx3的数组,其中M和N是图像的高度和宽度(以像素为单位),3对应于红色、绿色和蓝色通道。
- 对于灰度图像,通常返回一个MxN的数组。
2、whos 命令提取该读入图像Lenna.jpg的基本信息;
% 使用whos命令显示变量信息
whos Image;
whos命令可以用于显示工作空间中的变量信息,包括它们的名称、大小、字节数以及数据类型。
- Name: 变量名
- Size: 变量的尺寸
- Bytes: 变量占用的字节数
- Class: 变量的数据类型
- Type: 变量的类别
3、imshow函数显示图像;
%显示图像
imshow(Image);
4、imfinfo函数来获取图像文件的压缩,颜色等其他的详细信息;
% 获取图像文件的详细信息
info = imfinfo('Lenna.jpg');
% 显示信息
disp(info);
% 提取子类颜色信息
colorInfo = info.ColorType;
disp(['颜色类型: ', colorInfo]);
imfinfo函数用于获取图像文件的详细信息,包括文件格式、文件大小、文件修改日期、图像大小、颜色类型、位深度、压缩信息等。
5、imwrite()函数压缩图象;假设图片为,bmp文件,将其压缩保存为.jpg文件;
% 读取图像文件,并将其存储在一个命名为Image的数组中
Image = imread('Lenna.bmp');
% 指定JPEG压缩质量参数(0-1之间,1为最高质量)
jpegQuality = 0.7; % 设置质量为70%
% 使用imwrite函数将图像保存为JPEG格式
imwrite(Image, 'Lenna.jpg', 'Quality', jpegQuality);
JPEG压缩质量参数jpegQuality,这里设置为0.7,表示70%的质量。我们使用imwrite函数来压缩储存在Image中的图像文件,将压缩后图像命名为Lenna.jpg,并通过’Quality’选项指定了压缩质量。
- JPEG是一种有损压缩格式,它允许指定一个质量参数,该参数决定了压缩率和图像质量的权衡。质量参数的范围通常是0(最低质量,最高压缩率)到1(最高质量,最低压缩率)。
- JPEG压缩是一种有损压缩,这意味着在压缩过程中会丢失一些图像数据。因此,即使设置了较高的压缩质量,输出的JPEG图像与原始图像相比也可能会有一些质量损失
6、imwrite()压缩转存.bmp格式同理;
% 使用imwrite函数将图像保存为BMP格式
imwrite(Image, 'Lenna.bmp', 'bmp');
- 由于BMP是一种无损压缩格式,所以保存的图像将保留原始图像的所有颜色和数据信息,不会造成任何质量损失。
7、读入图像及转为灰度图像,并与原图作比较。
%读入图像
lenna = imread('Lenna.jpg');
% 将图像转换为灰度图像
lenna_gray = rgb2gray(lenna);
% 显示原始图像
figure, imshow(lenna), title('Original Lenna RGB Image');
% 显示转换后的灰度图像
figure, imshow(lenna_gray), title('Lenna Grayscale Image');
8、用函数imadjust()来调节灰度图像的亮度;
% lenna_gray是已经加载的灰度图像
brighter_image = imadjust(lenna_gray, [0.3 0.7], []);
imshow(brighter_image);
实验结果
无