1. 导入和显示图像
1)imread() — 图片的上传
I = imread("IMG_001.jpg")
2)imshow() — 在一张画布上显示一张图片
imshow(I)
3)imshowpair() — 一张画布上显示两张图片
imshowpair(I,I2,"montage")
%montage选项:将两个图像并排显示,I在左侧,I2在右侧
4)imwrite() — 导出图片
- imwrite()将MATLAB工作区的图片导出以图片文件形式存储
imwrite(pic1,'matlabCode\images\pic1.png');
2.灰度图和彩色图
1)size() — 图像的大小
-
第一个数值表示行,即图像的长;第二个数值表示列,即图像的宽;第三个数值表示通道数,彩色图像需要三维空间来存储,即有R、G、B三个通道
sz = size(picture);
3)提取颜色分量(通道)
%提取红色平面
R = I(:,:,1);
imshow(R)
4)max(A,[],“ all”)— 找到图片中最亮的区域
大多数图像使用无符号的8位整数(uint8)数据类型,该数据类型存储从0到255的整数。亮色或亮色图像在一个或多个颜色平面中包含接近255的像素强度值。
使用“all”选项可找到数组中所有值的最大值。 括号是必需的; 它们是未使用输入的占位符。
%max函数在数组中找到最大值。
Amax = max(A,[],“ all”)
%结果 : 255
5)Rmin = min(R,[],“all”) — --- 找到图片中最亮的区域
%max函数在数组中找到最大值。
Amin = min(A,[],“ all”)
%结果 : 0
6)imsplit() — 一次性抽取一张彩色图的三个颜色分量
[R,G,B] = imsplit(I);
7)montage() — 在一张画布上展示所有多张图像
montage({R,G,B})
8)为什么使用灰度图像
- 彩色图像的灰度图像所占内存更小,是原图的1/3
- 灰度图像概念更简单,更便于开发图像处理算法
- 灰度图像类似数据压缩,只会丢失少数的图像信息,不影响整体。有时可利用其丢失信息的特点,使用一些分类算法。
9)im2gray() — 将彩色图像转化为灰度图像
gs = im2gray(I);
imshow(gs)
3. 对比度和强度直方图
1)作用
对图像进行一些调整,增强对比度,改善图像特征的清晰度
例如,暗图像在直方图的低端有很多像素。 明亮区域的像素在直方图的高端。 直方图通常会建议可以在何处进行简单调整以改善图像特征的清晰度。
2)imhist() — 构建并展示直方图
imhist(gs)
3)imadjust() — 调节灰度图像的对比度
%调节gs2图像的对比度,并将两图在同一张画布上显示出来
gs2Adj = imadjust(gs2);
imshowpair(gs2,gs2Adj,"montage");
4)imlocalbrighten() — 调节彩色图像的对比度
I2Adj = imlocalbrighten(I2);
imshowpair(I2,I2Adj,"montage");
subplot(1,2,1),imhist(I2);
subplot(1,2,2),imhist(I2Adj);
4. 交互式处理图像
1)image Viewer的打开与使用
-
在命令窗口写如下命令
>> imtool
-
点开在APP栏,搜索image Viwer
-
可以在这个版面打开你想查看的图片
-
这个版面功能很强大
-
查看图像详细信息
-
查看图像每个像素点
-
查看灰度图像的直方图
移动那两个红点,可以手动调节灰度图的对比度,并可以以文件形式存储它
-
-