MATLAB图像处理学习——图像类型的转换
目录
2.实例说明
(1)RGB图像转换为灰度图像
(2)RGB图像转换为索引图像
(3)灰度图像转换为索引图像
(4)索引图像转换为灰度图像
(5)索引图像转换为RGB图像
(6)二值图像的转换
(7)数值矩阵转换为灰度图像
1.常用的图像类型转换函数
函数名 | 函数功能 |
dither | 图像抖动,将灰度图像变成二值图或者将真彩色图像抖动成索引色图像 |
gray2ind | 将灰度图像转换成索引图像 |
grayslice | 通过设定阈值将灰度图像转换成索引色图像 |
im2bw | 通过设定亮度阈值将真彩色、索引色、灰度图像转换成二值图像 |
ind2gray | 将索引色图像转换成灰度图像 |
ind2rgb | 将索引色图像转换成真彩色图像 |
mat2gray | 将数值矩阵转换成灰度图像 |
rgb2ind | 将真彩色图像转换成索引色图像 |
rgb2gray | 将真彩色图像转换成灰度图像 |
2.实例说明
(1)RGB图像转换为灰度图像
(RGB图像:三通道图像)
需要用到函数“rgb2gray”,调用格式如下:
X=rgb2gray(I):该函数是将RGB图像I转换为灰度图像X
实例代码(将RGB图像转换为灰度图像):
close all;clear all;clc;
I=imread('D:\resource_photo\1.jpg');
X=rgb2gray(I);
figure;
subplot(121),imshow(I);
subplot(122),imshow(X);
实例运行结果:
RGB图像转灰度图像还有一种方法,就是使用函数“rgb2gray”将彩色颜色映射表map转换为灰度颜色映射表,使用方法如下:
newmap=rgb2gray(map): map代表原图像的颜色映射表,newmap代表转换后的图像颜色映射表。
实例代码(将RGB图像的颜色映射表转换为灰度图像的颜色映射表):
close all;clear all;clc;
[X,map]=imread('D:\resource_photo\1.tif');
newmap=rgb2gray(map);
figure,imshow(X,map);
figure,imshow(X,newmap);
运行结果:
(2)RGB图像转换为索引图像
在早期的MATLAB版本中有大致4种转换方法,即直接法、均匀量化法、最小方法量化法和颜色表示近似法。
[X,map]=rgb2ind(I,tol):该函数是利用均匀量化的方法将RGB图像转换为索引图像。其中,I是原RGB图像,tol的范围是从0.0~1.0,[X,map]对应生成的索引图像,map包含至少(floor(1/tol)+1)^3个颜色。
[X,map]=rgb2
xiaoyituo: 按代码操作还是显示418
2301_81288302: 兄弟數量不对吧太少了
IamSamuel_: 我也很可爱,你会喜欢我吗
cherry coke-: 大佬求问为什么打印出来的源代码显示不全呀
姜木: 大佬大佬,怎么把爬取到的这些数据存入sqlite3呀?