计算摄像技术02 - 颜色空间

一些计算摄像技术知识内容的整理:颜色视觉与感知特性、颜色空间和基于彩色滤镜阵列的彩色感知。

文章目录

一、颜色视觉与感知特性

(1)色调

(2)饱和度

(3)明度

二、颜色空间

(1)RGB 颜色空间

(2)HSV 颜色空间

(3)YCbCr 颜色空间

① RGB444

② RGB422

③ RGB411

④ RGB420

(4)CMY 颜色空间

三、基于彩色滤镜阵列的彩色感知

(1)Bayer 格式的 CFA 彩色滤镜阵列设计


一、颜色视觉与感知特性

人眼除了能够分辨可见光的明暗亮度以外,还能分辦颜色。一直以来,人眼如何分辨颜色的机理是最吸引研究者的研究领域之一。颜色是通过肉眼、大脑和人们的生活经验所产生的一种对光的视觉效应,对颜色的感觉不仅由光的物理性质決定,还包括人的心理等许多因素。
1802年,杨(Thomas Young)提出了三色学说。约半个世纪后亥姆霍兹 (Hermann von Helmholtz)对其进行了定量发展和完善。三色学说的核心观点是假定人眼视网膜上存在三种能够感受红、绿、蓝三原色的光接收器,每种接收器受到刺激后引起的兴奋响应都能产生一种原色的感觉,而颜色感受都由兴奋响应量的比例确定。需要注意的是三色学说不是理论推导的学说,而是建立在颜色混合实验规律的基础上,即不同比例的红、绿、蓝三原色可以混合出几乎所有的颜色。

颜色可分为彩色和非彩色两大类。

  • 非彩色是指白色、黑色和介于黑白之间的各种深浅不同的灰色。非彩色只有描述白光亮度变化的明亮度的差异。
  • 彩色是除了黑、白、灰以外的各种颜色。

不同的彩色通过三种特征属性描述:色调、饱和度、明度。

(1)色调

色调(hue)是视觉系统对物体呈现出的颜色的感觉,用红 (red)、橙 (orange)、黄 (yellow)、绿(green)、青 Coyan)、蓝(blue)、靛 (indigo)、紫 (violet)等术语刻画,黑、灰、白为无色彩。

不同波长的单色光具有不同的色调。发光物体的色调取决于其辐射光的光谱组成,非发光物体的色调则取决于照明光源的光谱组成和物体的反射(透射)光谱特性。可以总结为色调取决于可见光的光谱构成,它是颜色彼此区分的外观特性,与颜色明暗无关。色调数目由多达 1000 万种。

(2)饱和度

饱和度(saturation)是对颜色纯度的刻画。可见光光谱中的各种单色光是完全饱和的颜色。完全饱和的颜色是指没有渗入白光所呈现出的颜色,当一种颜色掺入其他光成分越多时,光谱带越宽,颜色越不饱和。反过来,光的光谱带越窄,颜色的饱和度就越高。

(3)明度

明度(brigbtness)是人眼感受物体明暗程度的描述,明度是视觉系统对可见物体辐射光或发射光多少的感知程度。

  • 发光物体的亮度越高,明度就越高
  • 非发光物体的反射比越高,明度也就越高

黑色(没有光)的明度最低,白色的明度最高,在这两个极端之间的是不同明度的灰色地带。

需要注意的是,明度是一个主观感觉值,无法用物理设备测量,但可以用亮度(即辐射的能量)来度量。根据国际照明委员会 (International Commission on TIlumination, CIE)的定义,亮度是用反映视觉特性的光谱敏感函数加权之后得到的辐射功率,并在555nm处达到峰值,它的幅度与物理功率成正比。但是,亮度虽然更容易度量,但它与明度并不是同一概念,它可以认为是光的强度,与明度的关系并不是简单的线性关系。

上图所示的三维空间的纺锤体,可以把色调、饱和度和明度这三个颜色的基本特征属性表示出来。

  • 垂直轴代表从白到黑的颜色明度变化。
  • 水平圆盘剖面的径向表示颜色饱和度变化。
  • 从圆心向圆周画一条直线段,其上的色调和明度保持不变,但从内向外,饱和度越来越高。
  • 水平圆盘剖面上的每个圆周用于表示具有相同饱和度和明度的连续变化的色调,最大半径的圆周表示的是可见光谱中完全饱和的单色光的各种不同色调。

实验证实,人的视觉系统能感受颜色,但不能感知和区分组成特定颜色刺激的光谱成分。只要是色度、饱和度和明度属性给人的感觉相同,视觉系统就认为这是同一种颜色,这就形成了同色异谱现象。

1854 年,格拉斯曼 (Grassmann)在大量混色实验的基础上,总结得到定性描述颜色混合规律的格拉斯曼定律。格拉斯曼定律是现代色度学的重要基础,共包括以下四条定律。

(1)人的视觉只能分辨颜色的三种变化,即色调、饱和度和明度。
(2)在由两种成分组成的混合色中,如果一种成分连续变化,混合色的外貌也连续变化。
(3)颜色外貌相同的光,不管它们的光谱组成是否相同,在颜色混合中具有相同的效果。
(4)混合色光的总亮度等于组成混合色的各种色光的亮度总和。

 

二、颜色空间

为了便于对颜色认知的交流,需要一些规定的方法量化精确表征各种颜色。颜色的定量表征涉及观察者的视觉生理和心理、照明与观察物理条件等诸多复杂因素。那么如何实现与人的颜色视觉特性一致的颜色量化表示技术,以满足对颜色特性定量化和标淮化的需要呢?

经过长期的探索实验,国际照明委员会在1931年提出了 CIE 1931标准色度系统,形成了RGB 颜色空间。此后,在此基础上,陆续提出了许多满足不同需求的颜色空间或颜色模型。

颜色空间是表示颜色的一种数学方法,用表示颜色的基本参数描述和记录颜色,通常用三维模型定义颜色空间,空间中的颜色用代表三个颜色属性参数的三个维度的坐标指定,这些三维参数描述颜色在颜色空间中的位置,但并没有明确是什么颜色,其颜色取决于使用的坐标。

定义颜色空间使用的属性参数根据颜色空间针对不同对象和应用目的的不同而变化多样。例如,对于人,可以通过色调、饱和度和明度定义颜色;对于CRT 显示设备,可以用红、绿和蓝磷光体的发光量定义颜色;对于打印或印刷设备,可以使用青色、品红色、黄色和黑色的反射和吸收指定颜色。

理论上,可定义表示颜色的颜色空间的数目是无穷的。颜色空间有设备相关颜色空间与设备无关颜色空间之分。设备相关的颜色空间是指生成的颜色与生成颜色的设备有关,最常见的RGB 颜色空间就是指与显示设备相关的颜色空间。计算机显示器用 RGB 显示颜色,用像素值 R=250、G=123、B=23 生成的颜色将随具体显示器的亮度和对比度的改变而改变。设备无关的颜色空间是指该颜色空问中与生成的颜色及生成颜色的设备无关。

(1)RGB 颜色空间

几乎所有的颜色空间都是从 RGB ( red, green, blue)颜色空间导出的。RGB 颜色空间利用红、绿和蓝三基色的不同比例相加合成产生各种不同的颜色。

R、G、B取值范围都是 0.0~1.0。在大部分 RGB 颜色空间应用中,R、G、B的取值常用8bit表示,因此代表三基色的红、绿、蓝通道分别用 0~255 的整数量表示强度。

0表示无光,最暗;255 表示强度最大,最亮。因为三种颜色都有 256 个亮度水平级,经叠加可形成 1670 万种颜色。对于人眼分辨颜色能力而言,通过 RGB 颜色空间足以再现绚丽的世界。

RGB 颜色空间是混合加色型颜色空间,在电视机和计算机的图像颜色显示系统中有广泛应用。例如,主要用在显示器、扫描仪等设备上。对于 CRT 显示器,R、G、B分别表示显示器红、绿、蓝三种荧光粉受到电子枪轰击后激励产生的颜色;对于扫描仪,R、G、B分别表示光电转换接收的通过红、绿、蓝滤光片的色彩。

RGB 颜色空间的优点是原理简单,使用 RGB 生成颜色容易实现。但缺点是 RGB 颜色空间是与设备相关的颜色空间,在RGB 颜色空间中,对颜色指定不够直观。在RGB 颜色空间中度量颜色时,视觉对颜色的感知是非线性的,R、G、B通道的相关性也比较强。

(2)HSV 颜色空间

HSV(hue, saturation, value)颜色空间是根据颜色的直观特性定义的,也被称为HSI颜色空间。在HSV 中,色调日用水平圆周上的角度度量,取值范围为 0°~360°。按逆时针方向计算,红色为 0°,绿色为 120°,蓝色为 240°,它们对应的补色色调取值分别为青色180°,品红色 300°,黄色 60°。

饱和度S用水平圆周的从圆心到边缘的径向表示,取值范围为 0.0~1.0。亮度值 V 自底向上,取值范围为 0.0~1.0,对应从黑色到白色。同样,在用8bit表示H、S、V通道的取值时,也把它们转换成 0~255 之间的整数。HSV 颜色空间属于强度、饱和度和色调型颜色空间,是面向计算机绘图时颜色编辑使用的较直观的颜色空间。HSV 是设各相关的颜色空间,其优点在于用色调和饱和度描述对色彩的感知,指定颜色的方式和对颜色的解释非常直观,而且对消除光亮度的影响很有用。

(3)YCbCr 颜色空间

YCbCr 颜色空间是在ITU-R BT.601 和 BT.709 等标准中明确定义的,是数字电视颜色空间,主要用于优化彩色视频信号的传输。其中,Y是亮度,由 RGB 输入信号的特定部分叠加得到:Cr、Cb 表示色度,用于描述颜色的色调和饱和度。其中,Cr反映RGB中红色部分与Y亮度值之间的差异,而Cb反映 RGB 中蓝色部分与Y亮度值之间的差异。YCrCb 颜色空间的重要性体现在亮度信号Y和色度信号Cr、Cb是分离的,如果只有Y分量而没有Cb、Cr分量,那么图像就是黑白灰度图像。如果 YCbCr 取值用8比特表示,Y的取值范围为 16~235,16 表示黑电平,235 表示白电平,Cb、Cr的取值范围为 16~240,使用128 的偏移时范围为-112~112。

因为人眼对区域内色差的变化没有对灰度的变化敏感。在图像质量损失忽略不计的前提下,可以降低Cb、Cr 通道的采样率,从而有效压缩 Cb、Cr通道的数据量。常见的 YCbCr采样频率格式包括 4:4:4、4:2:2、4:1:1及4:2:0。

① RGB444

444是指 YCbCr三个通道的采样率相同,因此在采用 YCbCr颜色空间 4:4:4格式生成的图像里,每个像素的三个分量信息完整,经8比特量化后,未经压缩的每个像素占用 3个byte。

② RGB422

422是指图像中水平方向的色度采样率是4:4:4中的一半,即每个色差通道 Cb 和 Cr 水平方向采样率为亮度通道Y的一半。对非压缩的8比特量化图像,每两个水平方向相邻的像素占用 4个byte。

③ RGB411

411是指和亮度Y相比,在水平方向上对色度 Cb 和 Cr 只进行 4:1的采样,对非压缩的8比特量化图像,每四个水平方向相邻的像素占用 6个byte,其视觉效果对低端用户和消费类产品仍可接受。

④ RGB420

420并不是说只有 Y、Cb,而没有 Cr 分量。而是对图像每行而言,只有一种色度分量以相对于Y分量2:1的采样率采集或存储;而上下相邻的两行存储不同的色度分量,即如果上一行 YCbCr是4:2:0,下一行YCbCr 就是4:0:2,再下一行又是4:2:0,以此类推。对非压缩的8比特量化图像,每个2行2列相邻的4像素块占用 6个byte。

可见,YCbCr颜色空间最大的优点是表示图像数据时只需占用较少空间。

类似的还包括 YUV、YIQ、YPbPr 等颜色空间,都属于亮度 / 色度型电视系统颜色空间。其中,YUV 是用在 PAL 和 SECAM 模拟彩色电视制式中的颜色空间,Y表示亮度,也就是灰阶值,U和V表示色度或色差分量。YIQ是用在 NTSC 模拟彩色电视制式中的颜色空间;YPbPr是用于高清晰度电视的颜色空间。

无论是面向数字电视还是模拟电视的亮度、色度型颜色空间,主要用途都是电视信号传输,都是把 RGB 颜色空间变换成亮度和色度,将亮度和色度分离,用一个分量表示非色彩的亮度感知,用两个独立的分量表示色彩感知,目的是通过压缩色度数据,在有效播送彩色电视图像的前提下,显著压缩信号传播过程中图像的数据量。

当需要黑白图像时也非常方便。这些颜色空间都是与设备相关的,而且在闭环系统中的使用条件也相当严格。

(4)CMY 颜色空间

当背景光照射到物体表面时,物体将吸收一部分光线,并将剩下的光线反射回来,反射的光线就是人们看到的物体的颜色,这是一种减色色彩模式。CMY (cyan, magenta, yellow)颜色空间就是描述减色混合模式的适合印刷用的一种颜色空间,在印刷机和打印机在纸张或其他印刷材料上再现色彩时使用。有时也称为 CMYK (cyan, magenta, yellow, black)颜色空间。其中,C代表青色,M代表品红色,Y代表黄色,K代表黑色。

CMYK 颜色空间的优点是基于三基色,理论简单,在印刷领域使用时容易生成颜色。但CMYK 颜色空间是与设备或印刷过程相关的,如工艺方法、油墨特性、纸张特性等不同条件有不同的印刷结果。因此,CMYK 也是与设备相关的颜色空间,颜色指定也不够直观。同样,视觉对颜色的感知是非线性的。此外,CMYK 空问具有多值性,对同一种具有相同绝对色度的颜色,在相同的印刷过程前提下,可以用多种CMYK 数字组合来表示和印刷出来。

三、基于彩色滤镜阵列的彩色感知

在彩色光电摄影中,可以通过分光,使用三个传感器分别捕获红、绿、蓝三个通道的颜色分量。但为了降低成本,绝大部分成像系统中采用单芯片 CMOS、CCD 传感器结合彩色滤镜阵列 (color filter array, CFA)的方式捕获彩色图像,虽然牺牲了物理分辦率,但显著简化了结构,降低了价格。做法是在每个感光像素的上面覆盖一个与物理像素相同面积大小,但分别只让红、绿、蓝光线透过的滤镜。

(1)Bayer 格式的 CFA 彩色滤镜阵列设计

Bryce Bayer 于 1976 年发明了Bayer格式彩色滤镜阵列并注册了专利的。Bayer格式彩色滤镜阵列被广泛运用于现代数码相机、摄像机和手机摄像头中,是实现单片 CCD 或 CMOS 传感器拍摄彩色图像的主要技术之一。

Bayer阵列模拟人眼对色彩的敏感程度,采用1红2绿1蓝的排列方式将灰度信息转换成彩色信息。

彩色光线经过 Bayer格式彩色滤镜阵列后,传感器实际获取的每个物理像素仅有一种颜色信息,形成的扩展名为 .raw 格式的图像有明显的红、绿、蓝间隔的马赛克感觉。那么如何得到每个物理像素位置处的 RGB 通道分量并去除马赛克呢?

每个像素仅包括光谱的一部分,必须通过插值实现每个像素的 RGB 值。为了从 Bayer格式得到每个像素的 RGB 格式,需要通过插值填补缺失的两个色彩通道分量。

反马赛克算法需要利用特定插值计算,根据每个像素旁边像素的红、绿、蓝通道值,通过加权平均,插值算出每个像素点缺失的颜色通道取值,获得最终图像。插值的方法有很多,典型的如邻域、线性、3×3插值等,在具体方案中,通过速度与质量的权衡决定最终采用哪种插值的方法。不同插值补偿算法的差异取决于参与插值的邻近像素的数目和各自的权重。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/149748.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[架构之路-228]:目标系统 - 纵向分层 - 计算机硬件与体系结构 - 硬盘存储结构原理:如何表征0和1,即如何存储0和1,如何读数据,如何写数据(修改数据)

目录 前言: 一、磁盘的盘面组成 1.1 磁盘是什么 ​编辑1.2 磁盘存储介质 1.3 磁盘数据的组织 1.3.1 分层组织:盘面号 1.3.2 扇区和磁道 1.3.3 数据 1.3.4 磁盘数据0和1的存储方式 1.3.5 磁盘数据0和1的修正方法 1.3.6 磁盘数据0和1的读 二、…

基于腾讯云的OTA远程升级

一、OTA OTA即over the air,是一种远程固件升级技术,它允许在设备已经部署在现场运行时通过网络远程更新其固件或软件。OTA技术有许多优点,比如我们手机系统有个地方做了优化,使用OTA技术我们就不用召回每部手机,直接通过云端就可…

(一)正点原子STM32MP135移植——准备

一、简述 使用板卡:正点原子的ATK-DLMP135 V1.2 从i.mx6ull学习完过来,想继续学习一下移植uboot和内核的,但是原子官方没有MP135的移植教程,STM32MP157的移植教程用的又是老版本的代码,ST官方更新后的代码不兼容老版本…

Linux中的wc命令

2023年10月6月,周五晚上 目录 wc命令的主要功能和用法如下:统计文件行数、字数和字节数只统计行数只统计字数只统计字节数 wc命令在Linux/Unix系统中是word count的缩写,它用来统计文件的行数、字数和字节数。 wc命令的主要功能和用法如下: 统计文件行数、字数和字…

mac清理垃圾的软件有哪些?这三款我最推荐

没错,Mac电脑真的好用,但是清理系统垃圾可不是件容易的事。由于Mac系统的封闭性,系统的缓存垃圾常常隐藏得让人发现不了。不过,别担心!有一些专业的Mac清理软件可以帮你解决这一系列问题,让清理垃圾变得轻松…

踩大坑ssh免密登录详细讲解

目 录 问题背景 环境说明 免密登录流程说明 1.首先要在对应的用户主机名的情况下生成密钥对,在A服务器执行 2.将A服务器d公钥拷贝到B服务器对应的位置 3.在A服务器访问B服务器 免密登录流程 0.用户说明 1.目前现状演示 2.删除B服务器.ssh 文件夹下面的…

【将文本编码为图像灰度级别】以 ASCII 编码并与灰度级别位混合将文本字符串隐藏到图像像素的最低位中,使其不明显研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

我在 NPM 发布了新包: con-colors

链接地址:npmjs.com con-colors 安装依赖 yarn add con-colors使用 导入: import { print } from "con-colors";使用: print.succ("成功的消息"); print.err("失败的消息")例子: import { p…

OpenResty编译安装详解

文章目录 一、概述1、OpenResty是什么2、官方文档 二、cengos安装OpenResty1、从官网下载2、目录结构3、编译安装 一、概述 1、OpenResty是什么 OpenResty 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖…

连续波雷达相关内容简介

连续波雷达(CW雷达)连续发射高频信号。回波信号被永久接收和处理。 一、未调制连续波雷达 未调制的连续波雷达除了振荡的相位之外没有其他时间参考。它只能用于测量小于波长的距离。以上的一切都极为含糊。因此,它只能用作多普勒雷达或控制已知距离的恒定性。 二、调频连…

基于SSM+Vue的鲜花销售系统设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用Vue技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

MySQL概念

原理定义概念 定义 数据库(Database)是按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库 数据库是长期储存在计算机内、有组织的、可共享的数据集合 分类: (1)非结构化数据: 数据相对来讲没有固定的特点&#…

Go基础之变量和常量

Go基础之变量和常量 文章目录 Go基础之变量和常量一. 标识符、关键字、内置类型和函数1.1 标识符1.2 关键字1.3 保留字1.4 内置类型1.4.1 值类型:1.4.2 引用类型:(指针类型)1.5 内置函数1.6 内置接口error 二.Go变量命名规范2.1 采用驼峰体命名2.2 简单、…

汽车驾驶任务的隐马尔可夫模型识别方法研究

汽车驾驶任务的隐马尔可夫模型识别方法研究 一、Introduction 自动驾驶汽车经过了几十年的发展,是目前国内外汽车行业中的重要研究方向。自 动驾驶汽车的智能化需要车辆能够有类“人”的行为,在决策策略上可以满足人的心理 需求。人在驾驶过程中&#…

计算机专业毕业设计项目推荐10-饮食搭配平台(Go+微信小程序+Mysql)

饮食搭配平台(Go微信小程序Mysql) **介绍****系统总体开发情况-功能模块****各部分模块实现** 介绍 本系列(后期可能博主会统一为专栏)博文献给即将毕业的计算机专业同学们,因为博主自身本科和硕士也是科班出生,所以也比较了解计算机专业的毕业设计流程…

什么是TF-A项目的长期支持?

安全之安全(security)博客目录导读 问题:Trusted Firmware-A社区每六个月发布一次代码。然而,对于生产中的平台,该策略在维护、重要软件修复的向后兼容性、获得最新的安全缓解措施和整体产品生命周期管理方面不具备可扩展性。 开源软件项目&…

【CMU15-445 Part-15】Query Planning Optimization II

Part15-Query Planning & Optimization II Selection Statistics 维护每张表中的基本主要信息也就是tuple数量 N R N_R NR​以及每个属性中不同值的数量 V ( A , R ) V(A,R) V(A,R), N R N_R NR​关系R中的元组数量,单独维护,不能用pag…

【网络编程】UDP数据报套接字编程和TCP流套接字编程

文章目录 1. 网络编程基础1.1 为什么需要网络编程?1.2 网络编程是什么?1.3 概念 2. Socket套接字3. UDP数据报套接字编程3.1 DatagramSocket API3.2 DatagramPacket API3.3 InetSocketAddress API 4. UDP构建服务端客户端(一发一收&#xff0…

Java基于SSM+Vue的平时成绩管理系统

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用Vue技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

Pytorch之shuffleNet图像分类

💂 个人主页:风间琉璃🤟 版权: 本文由【风间琉璃】原创、在CSDN首发、需要转载请联系博主💬 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦 前言 ShuffleNet是Face(旷视)在2017年发布的一个高效率…