图像处理基础---RGB图 灰度图 索引图 调色板
(1)二进制图
在二进制图中,像素的取值为两个离散数值0或1中的一个,0代表黑色,1代表白色
例
A=[0 0 1;1 1 0; 0 0 1];
>> imshow(A,'InitialMagnification','fit') %调整合适的窗口显示A。
(2)索引图
索引图像包括一个数据矩阵X,一个颜色映像矩阵Map。其中Map是一个包含三列、若干行的数据阵列,其中每个元素的值均为[0, 1]之间的双精度浮点型数据。Map矩阵的每一行分别表示红色、绿色和蓝色的颜色值。在MATLAB中,索引图像是从像素值到颜色映射表值的“直接映射”。像素颜色由数据矩阵X作为索引指向矩阵Map进行索引,例如,值1指向矩阵Map中的第一行,值2指向第二行,以此类推。
索引图像的作用就是体积小,方便传输,只需要把索引表传输过去,接收方用对应的RGB颜色表还原就行。
(3)灰度图
灰度图通常由一个unit8、unit16、单精度类型或者双精度类型的数组描述,其实质是一个数据矩阵I,该矩阵中的数据均代表了一定范围内的灰度级,每一个元素与图像的一个像素点相对应,通常0代表黑色,1、255或65635(为数据矩阵的取值范围上限)代表白色。
(4)RGB图
RGB图像又称为真彩图像,它使用R、G、B 3个分量标识一个像素的颜色,R、G、B分别代表红、绿、蓝3种不同的基础颜色,通过3基色可以合成出任意颜色。所以对一个尺寸nxm的彩色图像来说,MATLAB中则存储为一个nxmx3 的多维数据数组,其中数组中的元素定义了图像中每一个像素的红、绿、蓝颜色值。图形文件格式把RGB图像存储为24位的图像,红、绿、蓝分量分别占用8位,因而理论上可以有2^24种颜色。
1 clear;clc; 2 A=imread('D:\mycode\matlab-test\0.jpg'); 3 subplot(2,2,1); 4 imshow(A); 5 title('原图'); 6 7 %RGB图转化为灰度图 8 l=rgb2gray(A); 9 subplot(2,2,2); 10 imshow(l); 11 title('灰度图'); 12 13 %灰度图转化为索引图 14 [X,map]=gray2ind(l); 15 subplot(2,2,3); 16 imshow(X); 17 title('灰度图转化为索引图的X矩阵'); 18 19 %灰度图转化为索引图的X矩阵 20 subplot(2,2,4); 21 imshow(map); 22 title('灰度图转化为索引图的调色板图map');
1 %--------------------------------------------------- 2 3 clear;clc; 4 B=imread('D:\mycode\matlab-test\1.jpg'); 5 subplot(2,2,1); 6 imshow(B); 7 title('原图'); 8 9 %RGB图转化为索引图 10 [X,map]=rgb2ind(B,256); 11 subplot(2,2,2); 12 imshow(X); 13 title('RGB图转化为索引图中的X矩阵'); 14 15 %索引图转化为索引图的X矩阵 16 subplot(2,2,3); 17 imshow(map); 18 title('RGB图转化为索引图中的调色板map'); 19 20 %索引图转化为灰度图 21 l=ind2gray(X,map); 22 subplot(2,2,4); 23 imshow(l); 24 title('索引图转化为灰度图');
转载于:https://www.cnblogs.com/shixinzei/p/8064908.html
图像处理基础---RGB图 灰度图 索引图 调色板相关推荐
- 图像处理中涉及的灰度图、彩色图以及深度图概念
图像处理中涉及最多的概念就是图像的类型,为了很好的理解图像的概念以及处理图片,我们就需要对常见的图像具有一定的概念. 我们首先介绍一下生活中常见的图像格式: 1.bmp格式:这是一种不常见的图像格式, ...
- java图像处理,彩色图像转灰度图的几种实现方式
一.标准转换公式: gray = r * 0.299 + g * 0.587 + b * 0.114 采用RGB三个通道值分别乘以一个系数(权重),之后再求和,三个系数之和为1,也就是加权平均. 代码 ...
- python灰度处理_python 简单图像处理(14) 灰度图腐蚀和膨胀,开运算、闭运算...
在前面,我们讲了二值图的腐蚀和膨胀运算 其实我们很容易把腐蚀和膨胀的概念扩展到灰度图上面去 在讲二值图时,我们把粗框区域作为黑色区域 而对于灰度图,我们把粗框区作为整个图形区域 对于图形中的任一点,以 ...
- RGB 转换为灰度图、二值化图
from PIL import Image I = Image.open('lena.png') I.show() L = I.convert('L') #转化为灰度图 L = I.convert(' ...
- 精雕软件怎么把图片转成灰度图_怎么把普通的照片变成浮雕用的灰度图 精雕图 灰度图 浮雕图之间怎么能联系起来使用...
怎么把普通的照片变成浮雕用的灰度图 用PS啊,里面有这种效果的,若需要帮忙的话,可以加发给我一份啊,尽量帮你哈,呵呵 用 photoshop 把照片变成灰度图,用PS做有很多方法,介绍两种: 方法1: ...
- RGB转灰度图的几种算法
https://blog.csdn.net/cool1949/article/details/6649429 方法一: 对于彩色转灰度,有一个很著名的心理学公式: Gray = R*0.299 ...
- 10_OpenCV读取原始raw(raw10和raw8),转换成rgb和灰度图,并显示
void ReadRaw8(){std::string strFilename = "raw8.raw";int nWidth = 1456;int nHeight = 1096; ...
- Lab图,RGB图,灰度图,二值图的联系
https://blog.csdn.net/luxialan/article/details/39293069
- numpy 用于图像处理(灰度图、转置、通道分离、图像扩展、水平镜像、水平翻转、调换x,y坐标、添加mask、随机打乱顺序、交换通道)
目录 numpy 用于图像处理 1. 转换为灰度图 2. 转置 3. 画出三个通道的彩图 4. 图像扩展 5. 水平镜像 --- 交换行 6. 水平翻转 --- 交换列 7. 调换x,y坐标 8. 添 ...
最新文章
- 【进阶玩法】Angular用emit()实现类似Vue.js的v-model双向绑定[(ngModel)]功能
- 异常处理与MiniDump详解(3) SEH(Structured Exception Handling)
- angularJS 路由加载js controller 未定义 解决方案
- 面向过程和面向对象的区别
- Struts2技术详解
- 【转载】数据库操作:添加、插入、更新语句
- 判断数正负(信息学奥赛一本通-T1039)
- linux vps 迁移数据 ip screen ctrl a d,Linux学习笔记之screen命令的使用
- linux的进程/线程/协程系列3:查看linux内核源码——vim+ctags/find+grep
- 用shell查看关键数据
- TSQL--HASH JOIN
- UML基础与应用系列文章汇总
- Windows应用程序组成及编程步骤
- backtrack5 oracle,BackTrack5(BT5)硬盘安装
- error: ‘__ATOMIC_RELAXED’ undeclared (first use in this function)
- 绿联蓝牙发射器 linux,绿联蓝牙发射器 Switch蓝牙耳机完美解决方案
- 移动硬盘数据丢失如何快速恢复?
- 现货白银入门技巧之白银K线卖出信号
- driller fuzz arm问题解决记录
- JAVA计算机毕业设计宠物寄养管理系统Mybatis+系统+数据库+调试部署