当前位置: 首页 > news >正文

Matlab彩色图像转索引图像

索引图像

索引图像是一种把像素值直接作为RGB调色板下标的图像。索引图像包括一个数据矩阵X,一个调色板矩阵map,也称为颜色映像矩阵。其中,数据矩阵X可以是8位无符号整型、16位无符号整型或双精度类型。调色板矩阵map是一个m×3的数据阵列, 如矩阵元素值域为[0,255],则map矩阵的大小为256×3,其中每个元素的值均为[0, 1]之间的双精度浮点型数据。map矩阵的每一行分别表示红色、绿色和蓝色的颜色值。

索引图像是从像素值到颜色映射表值的“直接映射”。像素颜色由数据矩阵X作为索引指向调色板矩阵map进行索引,例如,值1指向调色板矩阵map中的第一行,值2指向第二行,以此类推,如某一像素的灰度值为64,则该像素就与调色板矩阵map中的第64行建立了映射关系,该像素在屏幕上的实际颜色由第64行的调色板矩阵map组合决定。

如下图所示索引图像,图(a)索引图像其中红色圈框起来的部位的数据矩阵X,如图(b)所示,调色板矩阵map如图(c)所示,其中一点的索引号为18,在调色板矩阵map中对应第18行所定义的颜色,其RGB颜色实际为(0.1608,0.3529,0.0627),代表RGB三个分量的比重。

 示例程序

%彩色图像转索引图像
I = imread('sherlock.jpg');            %读取图片
[X1,map1] = rgb2ind(I,256);          %RGB图像转索引图像,图像颜色数量为256种
[X2,map2] = rgb2ind(I,0.2);          %RGB图像转索引图像,图像颜色数量为(1/0.2+1)^3种
map3 = colorcube(256);             %RGB图像转索引图像,图像颜色数量为指定的256种
X3 = rgb2ind(I,map3); 
subplot(2,2,1),imshow(I),title('原始图像'); 
subplot(2,2,2),imshow(X1,map1),title('最小方差法转换后的索引图像'); 
subplot(2,2,3),imshow(X2,map2),title('均匀量化法转换后的索引图像'); 
subplot(2,2,4),imshow(X3,map3),title('颜色近似法转换后的索引图像');

结果图片

 

http://www.lryc.cn/news/138417.html

相关文章:

  • 测试框架pytest教程(11)-pytestAPI
  • Docker自学:利用FastAPI建立一个简单的web app
  • 微调bert做学术论文分类(以科大讯飞学术论文分类挑战赛为例)
  • Springboot中sharding-jdbc的API模式并使用自定义算法
  • MySQL回表是什么?哪些情况下会回表
  • VR、AR、MR 傻傻分不清楚?区别的底层逻辑?
  • VScode运行C语言出现的调试问题 lauch:program does not exist 解决方法
  • 云原生安全:保护现代化应用的新一代安全策略
  • mysql操作
  • 前端(十四)——DOM节点操作手册:你需要了解的一切
  • PDF怎么转成PPT文件免费?一个软件解决
  • 数据结构基础:P3-树(上)----编程作业02:List Leaves
  • 山西电力市场日前价格预测【2023-08-25】
  • 手机无人直播软件,有哪些优势?
  • SpringBoot概述SpringBoot基础配置yml的使用多环境启动
  • Python Pandas 处理Excel数据 制图
  • 如何自己实现一个丝滑的流程图绘制工具(五)bpmn的xml和json互转
  • mysql--数据库的操作
  • kafka--技术文档--架构体系
  • ctfshow web入门 web103-web107
  • 前端工程化之模块化
  • 文件服务器实现方式汇总
  • ChatGPT计算机科学与技术专业的本科毕业论文,2000字。论文查重率低于30%。
  • 【Winform学习笔记(八)】通过委托实现跨窗体传值
  • Windows用户如何安装Cpolar
  • C++最易读手撸神经网络两隐藏层(任意Nodes每层)梯度下降230820a
  • 机器学习理论笔记(二):数据集划分以及模型选择
  • 10*1000【2】
  • “探秘JS加密算法:MD5、Base64、DES/AES、RSA你都知道吗?”
  • Spark项目Java和Scala混合打包编译