9.2 图像类型(灰度图像、彩色图像、二值图像以及图像间的转换)
生活随笔
收集整理的这篇文章主要介绍了
9.2 图像类型(灰度图像、彩色图像、二值图像以及图像间的转换)
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
常用0表示黑色,255表示白色,用0到255之间的数表示灰度
1、灰度图像
例1:生成一个灰色图像,并显示
A = [0 230; 255 60; 30 100]; A = uint8(A); imshow(A); %图像显示为如图1所示 imshow(A, 'initialMagnification','fit') ; %将图像以最合适的方式显示,如图2所示
2、彩色图像
每个像素都是由R、G、B分量构成的图像,其中R、G、B是由不同的灰度级来描述的
例2:生成一个彩色图像并显示
clear clc close R = [255 30 230;255 0 100;0 200 0]; G = [0 80 220;255 255 50;0 35 0]; B = [0 200 15;255 0 190;0 70 255]; RGB(:,:,1) = R; %R作为RGB 的第一个通道 RGB(:,:,2) = G; %G作为RGB 的第二个通道 RGB(:,:,3) = B; %B作为RGB 的第三个通道 RGB = uint8(RGB); %数据类型转为8位无符号数据类型 imshow(RGB,'initialMagnification','fit')3、二值图像
每个像素由只有两种取值或灰度等级状态
例3:读取图像并转化为二值图像(黑白图像)bw. bmp,查看该图像的数据矩阵对二值图像进行取反操作,查看“ 黑白颠倒”的效果
I = imread('fish.png'); %读取原始图像 figure subplot(1,2,1); %子图1显示灰度图像 bw = im2bw(I); %转化为二值灰度图像 imshow(bw); subplot(1,2,2); %子图2显示与原来图像颜色相反的灰度图像 imshow(~bw);4、图像类型间的转换
(1)im2bw函数
功能:将图像按照阈值转换为二值图像(可将所需要观察的位置找出来)。
格式:bw = im2bw(I,level)
其中,I为要转换的图像矩阵,bw为转换后的二值图像。level为阈值取值范围[0,1],默认为0.5。如果I中像素灰度值大于I*level,则该值变为1,否则为0。
(2)rgb2gray函数
功能:将彩色图像转换为灰度图像
格式:I = rgb2gray(rgb)
其中,rgb为待转换的彩色图像,I为转换后的灰度图像矩阵
例4:将图像转化为二值图像
I = imread('bantu.png'); subplot(1,3,1); imshow(I); %子图1显示原图 bw1 = im2bw(I,0.3); subplot(1,3,2); imshow(bw1); %子图2显示阈值为0.3的二值图像 bw2 = im2bw(I,0.5); subplot(1,3,3); imshow(bw2); %子图3显示阈值为0.5的二值图像
例5:将彩色图像转化为灰度图像
总结
以上是生活随笔为你收集整理的9.2 图像类型(灰度图像、彩色图像、二值图像以及图像间的转换)的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: MATLAB线型和颜色对应说明
- 下一篇: 9.3 图像变换(尺寸变换、旋转变换、灰