彩色图像(RGB真彩色):每个像素由R、G、B三个分量表示数据类型一般为8位无符号整形,基色分量直接决定其基色强度
如图像深度为24,用R:G:B=8:8:8来表示色彩,则R、G、B各占用8位来表示各自基色分量的强度,每个基色分量的强度等级为2^8=256种。图像可容纳2^24=16M种色彩(24位色),
灰度图像:每个像素只有一个采样颜色的图像,图像色彩显示从最暗黑色到最亮的白色间。
黑白图像(二值图像):只有黑白两种色彩,0为黑色,1为白色,域值t越大,黑色区域显示越多。
索引图像:为了解决彩色图像消耗空间大的问题,一般应用于色彩构成比较简单的场景
一幅索引图包含一个数据矩阵data和一个调色板矩阵map,数据矩阵可以是uint8,uint16或双精度类型的,而调色板矩阵则总是一个m×3的双精度矩阵。
%将一副彩色图像转化为灰度图像
%方案一
X=imread(‘baboon.bmp’) % imread读入一张彩色图像,文件名为baboon,格式为bmp
imshow(X) % imshow展示彩色图像
I=rgb2gray(X) % rgb2gray将彩色图像转化为灰度图像
imshow(I) %展示灰度图像
subplot(121),imshow(X) %subplot(mnp),用于将多个图画到一个平面上
% 平面分割为m行,n列,p为图所在位置。
subplot(122),imshow(I) % 即1行2列,第二个位置
运行效果图:
%方案二
[X,map]=imread(‘baboon.bmp’)%map为彩色图像,读取矩阵为X
%图片文件名为baboon,格式为bmp的彩色图像
imshow(X) % imshow展示彩色图像
newmap=rgb2gray(X) %rgb2gray将彩色图像转化为灰色图像
imshow(newmap) % imshow展示灰度图像
set(0,’defaultFigureColor’,’w’) %将窗口背景设置为为白色‘w’
figure,imshow(X,map) %figure创建窗口1,imshow读取图像map
figure,imshow(X,newmap) %figure创建窗口2,imshow读取图像newmap
运行效果图:
%将灰度图像转化为索引图像
I=imread(‘barbara.bmp’)%读取一张灰度图像(24位),图像名为barara,格式为bmp
[X,map]=gray2ind(I,8) %gray2ind将灰度图像转化为索引图像(8位)
figure,imshow(I) %创建窗口1,读取灰度图像
figure,imshow(X,map) %创建窗口2,读取索引图像
运行效果如下:
%将索引图像转化为真彩色图像
[X,map]=imread(‘barbara.bmp’)%读取图像信息
RGB=ind2rgb(X,map) %ind2rgb将索引图像转变为真彩色图像
figure,imshow(X,map) %创建窗口1,显示原图像
figure,imshow(RGB) %创建图像2,显示真彩色图像
运行效果图如下:
%将灰度图像转变为二值图像
I=imread(‘barbara.bmp’)%读取灰度图像信息
BW1=im2bw(I,0.4) %im2bw将灰度图像转变为二值图像,域值为0.4
BW2=im2bw(I,0.6) %域值为0.6,域值t越大,黑色区域越多
figure
subplot(131),imshow(I) %subplot将多个图像集中在同一个窗口,读取图像对比
subplot(132),imshow(BW1)
subplot(133),imshow(BW2)
运行效果图如下:
%将彩色图像转变为二值图像
[X,map]=imread(‘baboon.bmp’)%读取彩色图像
BW=im2bw(X,map,0.4) %im2bw转化为二值图像,域值为0.4
figure %创建一个窗口
subplot(121),imshow(X,map) %subplot汇集图像,第一张显示彩色图像
subplot(122),imshow(BW) %第二张显示二值图像
运行效果如下:
%将真彩色图像转变为二值图像
I=imread(‘baboon.bmp’)%读取彩色图像
BW=im2bw(X,map,0.4)%im2bw转化为二值图像,域值为0.4
figure %创建一个窗口
subplot(121),imshow(I)%subplot汇集图像,第一张显示彩色图像
subplot(122),imshow(BW)%第二张显示二值图像
运行效果图如下:
文章出处登录后可见!