灰度、灰度值、灰度图像


灰度:灰度使用黑色调来表示物体,即用黑色为基准色,不同饱和度的黑色来显示图像。每个灰度对象都具有从0%(白色)到100%(黑色)的亮度值。使用黑白或灰度扫描仪生成的图像通常以灰度显示。自然界中的大部分物体平均灰度为18%。需要注意这个百分比是以纯黑为基准的百分比,百分比越高颜色越偏黑,百分比越低颜色越偏白。灰度也可认为是亮度,简单的说就是色彩的深浅程度。

灰度值:指黑白图像中点的颜色深浅(浓淡)程度,范围一般从0到255,白色为255,黑色为0,故黑白图片也称灰度图像。

灰度图像:灰度图像是每个像素只有一个采样颜色的图像。这类图像通常显示为从最暗黑色到最亮的白色的灰度。灰度图像与黑白图像不同,在计算机图像领域中黑白图像只有黑白两种颜色(0和255),灰度图像在黑色与白色之间还有许多级的颜色深度(0~255)。一幅完整的图像,是由红色、绿色和蓝色三个通道组成的,红色、绿色和蓝色三个通道的缩览图都是以灰度图显示的,用不同的灰度色阶来表示红色、绿色和蓝色在图像中的比重。

数字图像


数字图像本质上是一个多维矩阵,下面以一个400*300的RGB色彩空间图片为例:

此图本质是一个400 * 300 * 3的一个矩阵:PI[400, 300, 3] ,这里400、300和3分别表示列、行和分量,意思是此图有400列,300行,以及在色彩上有三个分量。这三个分量分别是:

  

每个分量单独拿出来都是一个400 * 300 * 1的矩阵,而且如你所见,它们并不是彩色的,而是一幅灰度图像。对于图像每个分量来说,它只是灰度,谈论色彩没有意义,它是“黑白”的。在图像显示时,我们把图像的R分量放进红色通道里,B分量放进蓝色通道里,G分量放进绿色通道里。经过一系列处理,显示在屏幕上的就是我们所看到的彩色图像了。

回到最上面那幅图,先看彩色部分,例如两人坐的椅子是偏红色的。再看下面的RGB三分量图:R分量的图上,椅子对应的部分比较浅(灰度值高),而在G分量图和了B分量图上则很深(灰度值低)。我们随便在椅子上取一个样点进行验证,其灰度值分别是(R:179, G:45, B:9),所以在显示的时候,红色通道里灰度值大,绿色通道和蓝色通道里的灰度值小,显示出来的就是红色。再看乔帮主的牛仔裤,蓝色通道的灰度值大,绿色其次,红色最少,所以显示为蓝青色。

如果我们交换一下分量放置的顺序,把G分量放进红色通道里,把R分量放进绿色通道里,B分量放进蓝色通道里,那么此时绿通道中的灰度值最大,红色通道和蓝色通道中的灰度值都较低,于是就变成了下面这样:

通道


图像的颜色模式决定了图像颜色通道的数目: 

  • 位图模式的图像有1个通道,通道中有黑色和白色2个色阶; 

  • 灰度模式的图像有1个通道,通道中表现的是从黑色到白色的256个色阶的变化;

  • RGB模式的图像有4个通道,1个复合通道(RGB通道),3个分别代表红色、绿色和蓝色的通道;

  • CMYK模式的图像有5个通道,一个复合通道(CMYK通道),4个分别代表青色、洋红、黄色和黑色的通道;

  • LAB模式的图像有4个通道,1个复合通道(LAB通道),1个明度分量通道,两个色度分量通道。

• 通道的作用

• 存储图像的色彩资料
  • 存储和创建选区
  • 抠图

[ps] 灰度和通道基础知识的更多相关文章

  1. [网摘][医学影像] DICOM 和 NIFTI 基础知识与区别

    查找DICOM基础知识时,看到这篇文章里面写了一些关于使用深度学习进行医疗影像分析:文件格式篇.下文摘自:https://www.jiqizhixin.com/articles/2017-07-31 ...

  2. (转)Linux基础知识学习

    Linux基础知识学习 原文:http://blog.csdn.net/ye_wei_yang/article/details/52777499 一.Linux的磁盘分区及目录 Linux的配置是通过 ...

  3. AI-图像基础知识-01

        目前人工智能Artificial Intelligence主要分为两大分支: 计算机视常见:Computer Vision,简称CV   CV主要是研究如何让机器看懂世界的一种技术,通过各种光 ...

  4. 【STM32H7教程】第57章 STM32H7硬件JPEG编解码基础知识和HAL库API

    完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第57章       STM32H7硬件JPEG编解码基础知识 ...

  5. Python开发【第二篇】:Python基础知识

    Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...

  6. TCP/IP协议(二)tcp/ip基础知识

    今天凌晨时候看书,突然想到一个问题:怎样做到持续学习?然后得出这样一个结论:放弃不必要的社交,控制欲望,克服懒惰... 然后又有了新的问题:学习效率时高时低,状态不好怎么解决?这也是我最近在思考的问题 ...

  7. TCP/IP协议(一)网络基础知识

    参考书籍为<图解tcp/ip>-第五版.这篇随笔,主要内容还是TCP/IP所必备的基础知识,包括计算机与网络发展的历史及标准化过程(简述).OSI参考模型.网络概念的本质.网络构建的设备等 ...

  8. Linux基础知识整理

    一.基础知识 1.Linux简介 Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU的操作系统.它能运行主要的UNIX工具软件 ...

  9. HTML基础知识

    一个完美的web前端攻城狮,所具备的专业素养有:HTML5.XHTML.CSS3.JavaScript.JQuery.PS.PHP等.所以说,我要学的东西还有很多... 没别得,我也是一个H5的初学者 ...

随机推荐

  1. Android 请求运行时权限

    写文件到sd卡中,会报权限问题,需要动态申请申请运行时权限 1. MainActivity.java public class MainActivity extends Activity { priv ...

  2. java学习之导出Excel

    1. 输出表格 poi输出excel最基本是输出table表格,下面是输出区域.总销售额(万元).总利润(万元)简单的表格,创建HSSFWorkbook 对象,用于将excel输出到输出流中 HSSF ...

  3. PostgreSQL索引介绍

    h1, h2, h3, h4, h5, h6, p, blockquote { margin: 5px; padding: 5; } body { font-family: "Helveti ...

  4. C# .ToString()格式化 常用数据转化小总结

    1.百分比 ; ; string p = ((double)i / j).ToString("P");//结果:200.00% p = string.Format("{0 ...

  5. Mongoose学习参考资料

    我们学习node操作mongodb数据库时,可能经常要用到MongoDB 数据库的模型工具Mongoose,下面是我整理的一些学习资料: 番外篇之——使用 Mongoose:https://githu ...

  6. php中属性和方法的修饰符

    <?php class A{ private function do1(){ echo "do1 called"; } protected function do2(){ e ...

  7. HTML表格的运用

    表格是用<table>标签定义的,表格被划分为行(使用<标签>),html 难度比C语言,JAVA,Oracle容易,但是要会灵活运用并把命令记住,不断测试一些结果 ,编程还是 ...

  8. 国外很有多优秀的HTML5前端开发框架

    国外很有多优秀的HTML5前端开发框架 相信大家都耳熟能详:JQuery Mobile,Twitter Bootstrap, Schena Touch,  BackBone等等. 同样,也存在很多国内 ...

  9. iptables、防火墙配置、NAT端口映射

    一,配置一个filter表放火墙 (1)查看本机关于IPTABLES的设置情况 [root@tp ~]# iptables -L -n Chain INPUT (policy ACCEPT) targ ...

  10. Saltstack实战之无master和多master

    如果不想依赖master可以设置为无master vim /etc/salt/minion 就可以通过minion来安装一个salt-master了(下来查资料做,关闭salt-minion进程因为不 ...