调色板只有图片的颜色小于等于256色的时候才有,16位高彩和24位32位真彩是没有调色板的.

调色板的存在的意义只是在当初486以前为了节省空间的一种采用索引的压缩算法,现在没有人这种东西。  
 
调色板是为了节约空简所用的,相当于一个索引。只有16位以下的才用调色板,真彩色不用调色板。

但是在写16bpp真彩的LCD驱动程序里,为了兼容以前的驱动程序,还需要提供一个假的调色板。( 开机的logo就用的是假的调色板 )

假的调色板指向一个数组:static u32 pseudo_palette[16];

而这个数组是由

static struct fb_ops s3c_lcdfb_ops = {
.owner = THIS_MODULE,
.fb_setcolreg= s3c_lcdfb_setcolreg,
.fb_fillrect = cfb_fillrect,
.fb_copyarea = cfb_copyarea,
.fb_imageblit = cfb_imageblit,
};

中的  .fb_setcolreg= s3c_lcdfb_setcolreg,  这个函数来设置的!

所谓调色板,就是在低颜色深度的模式下,在有限的像素值与RGB颜色之间建立对应关系的一个线性表。比如说,从所有的16位彩色中抽取一定数量的颜色,编制索引。当需要使用某种彩色时,不需要对这种颜色的RGB分量进行描述,只需要引用它的索引号,就可以使用户选取自己需要的颜色。索引号的编码长度远远小于RGB分量的编码长度,因此在彩色显示的同时,也大大减轻了系统的负担。

让我们来看看下面的例子。  
有一个长宽各为200个象素,颜色数为16色的彩色图,每一个象素都用R、G、B三个分量表示。因为每个分量有256个级别,要用8位(bit),即一个字节(byte)来表示,所以每个象素需要用3个字节。整个图象要用200×200×3,约120k字节,可不是一个小数目呀!如果我们用下面的方法,就能省的多。 
因为是一个16色图,也就是说这幅图中最多只有16种颜色,我们可以用一个表:表中的每一行记录一种颜色的R、G、B值。这样当我们表示一个象素的颜色时,只需要指出该颜色是在第几行,即该颜色在表中的索引值。举个例子,如果表的第0行为255,0,0(红色),那么当某个象素为红色时,只需要标明0即可。 
让我们再来计算一下:16种状态可以用4位(bit)表示,所以一个象素要用半个字节。整个图象要用200×200×0.5,约20k字节,再加上表占用的字节为3×16=48字节.整个占用的字节数约为前面的1/6,省很多吧? 
这张R、G、B的表,就是我们常说的调色板(Palette),另一种叫法是颜色查找表LUT(Look Up Table),似乎更确切一些。Windows位图中便用到了调色板技术。其实不光是Windows位图,许多图象文件格式如pcx、tif、gif等都用到了。所以很好地掌握调色板的概念是十分有用的。 
有一种图,它的颜色数高达256×256×256种,也就是说包含我们上述提到的R、G、B颜色表示方法中所有的颜色,这种图叫做真彩色图(true color)。真彩色图并不是说一幅图包含了所有的颜色,而是说它具有显示所有颜色的能力,即最多可以包含所有的颜色。表示真彩色图时,每个象素直接用R、G、B三个分量字节表示,而不采用调色板技术。原因很明显:如果用调色板,表示一个象素也要用24位,这是因为每种颜色的索引要用24位(因为总共有2^24种颜色,即调色板有2^24行),和直接用R,G,B三个分量表示用的字节数一样,不但没有任何便宜,还要加上一个256×256×256×3个字节的大调色板。所以真彩色图直接用R、G、B三个分量表示,它又叫做24位色图。 
 
  
调色板一般是为了显示256色图象时使用的。图象(BMP图象)按颜色种类分类可以分为:   
 
1、黑白图象。使用2个颜色的调色板;   
 
2、256色图象(包括256级灰度图象),使用调色板。调色板中记录的是图象中使用的256种颜色,图象数据中记录的是颜色索引,通过这个索引值就可以找到对应的颜色。  
 
3、16bit、24bit真彩色图象,不使用调色板。图象数据中保留RGB三种颜色组合,可以直接显示。

调色板的原理和调色板显示模式相关推荐

  1. R语言使用ggplot2包使用geom_dotplot函数绘制分组点图(分组调色板填充、自定义调色板、灰度比例)实战(dot plot)

    R语言使用ggplot2包使用geom_dotplot函数绘制分组点图(分组调色板填充.自定义调色板.灰度比例)实战(dot plot) 目录 R语言使用ggplot2包使用geom_dotplot函 ...

  2. 16位调色板和32位调色板_使调色板可访问

    16位调色板和32位调色板 Accessibility has always been a tough sell. Admittedly, less so than in the 'nineties, ...

  3. 16位调色板和32位调色板_设计系统的调色板第一部分

    16位调色板和32位调色板 重点(Top highlight) 第1部分(Part 1) I've been creating custom design systems for over five ...

  4. 16位调色板和32位调色板_12种调色板提取器和站点色彩灵感资源

    16位调色板和32位调色板 Sometimes the hue muse fails to strike; sometimes all you're provided for the look and ...

  5. 16位调色板和32位调色板_整理色板和调色板的10个技巧

    知道自己有东西,但不知道它在哪里会令人沮丧. 对于您为设计项目创建或保存的颜色,尤其如此. 不得不遍历色样 , 浪费时间 ,只好在需要切换色相时重新开始搜索. 如果您经常使用吸管工具或将CMYK值插入 ...

  6. 使用调色板绘制系统界面

    相关代码可视频可在网易云课堂下载: Linux kernel Hacker, 从零构建自己的内核 上一节,我们已经可以使用C语言实现图像绘制,但操作系统的用户界面不可能是那种扎眼的条纹图案,这一节,我 ...

  7. vc++调色板!!!

    11.1.1 调色板的原理 PC机上显示的图象是由一个个像素组成的,每个像素都有自己的颜色属性.在PC的显示系统中,像素的颜色是基于RGB模型的,每一个像素的颜色由红(B).绿(G).蓝(B)三原色组 ...

  8. 09.调色板绘制系统界面

    简介 上一节我们使用C语言绘制了简单的图形界面,实现了汇编语言和C语言共同开发操作系统,只有当C语言力不能逮,特别是需要操作硬件时,才会使用汇编语言. 我们实现图像绘制的办法是,给每一个像素设定指定的 ...

  9. 【PIL】图像分割竞赛中8位深调色板模式的mask读取与保存(PASCAL VOC)

    [PIL]图像分割竞赛中8位深调色板模式的mask读取与保存(PASCAL VOC) 目录: [PIL]图像分割竞赛中8位深调色板模式的mask读取与保存(PASCAL VOC) 1.调色板图像原理 ...

  10. h5 canvas仿 Photoshop 绘制调色板

    本文采取的是最原始方式进行绘制,实现类似渐变的效果等都是最原始的.我进行了大量的循环绘制,而 js 的效率本来就不高.建议采用系统的渐变 api 进行绘制,靠底层的能力,效率应该会高出不少.但渐变的绘 ...

最新文章

  1. 工作中InnoDB引擎数据库主从复制同步心得
  2. C++官方自带可持久化平衡树rope的3000行源码
  3. MySQL的查询性能优化——《深究MySQL》
  4. 数据库 数据库SQL语句一
  5. pandas镜像安装_Python安装库太慢?配置好这个速度飞起
  6. mysql hibernate 分页查询_Hibernate + MySQL 分页类的实现
  7. Linux系统上利用nmcli命令创建网络组
  8. RT-Thread : IEEE1588/PTP 协议的实现
  9. 遥感原理与应用 【I】
  10. 语音识别智能开关 第一期
  11. 操作系统产品密钥查看方法
  12. 百度云盘超4G大文件上传不了怎么办?
  13. 智源首席科学家孙茂松当选欧洲科学院外籍院士
  14. Android传感器之光线传感器介绍
  15. 谷歌Chrome浏览器
  16. mavennexus环境搭建
  17. 2012年国内薪资最高的IT公司排行
  18. 论文投稿指南——中文核心期刊推荐(计算机技术)
  19. cee怎么把大图片放进小盒子_PS的实际应用:怎么给盒子制作包装图片
  20. 如何查看eclipse的版本(Photon/Oxygen/Neon等)

热门文章

  1. 贴片电阻阻值识别方法
  2. Sequence (矩阵快速幂+快速幂+费马小定理)
  3. 老男孩教育50期学员
  4. html制作qq会员页面,QQ会员页面导航.html
  5. 搜索引擎代码资源[转载]
  6. 【实战记录分析】目录导航
  7. html网页嵌入shiny,用Shiny生态快速搭建交互网页应用
  8. 文件快速定位神器(C++小项目实战)
  9. c语言怎么字体加粗,html 字体加粗
  10. Microsoft Store连不上网解决办法