计算机视觉 OpenCV【灰度原理和公式】

目录

一、灰度原理

1.1 图像的存储与像素

1.1.1 像素与分辨率

1.1.2 物理原理

1.2 RGB图像

1.3 灰度图像

二、RGB转灰度公式


一、灰度原理

1.1 图像的存储与像素

1.1.1 像素与分辨率

像素是影像显示的基本单位,是一个具有明确位置和颜色值的方格。

分辨率指的是一个显示系统对图像细节的分辨能力,通常以长边像素个数乘以宽边像素个数来表示。

目前有多种分辨率,如VGA,HD,4K等。

以VGA为例,VGA(Video Graphics Array)是IBM在1987年随PS/2机一起推出的一种视频传输标准,其分辨率为640×480,

表示在以VGA作为分辨率的显示屏上,其长边具有640个像素边长,宽边具有480个像素边长。

同理,对于4K分辨率(3840×2160)来说,则以4K作为分辨率的显示屏上,其长边具有3840个像素边长,宽边具有2160个像素边长。

显然,在4K分辨率下显示的图像普遍会比在VGA分辨率下显示的图像更加清晰,细节程度更高。

1.1.2 物理原理

图像在计算机中存储的本质是:存储每一个组成这副图像的各个像素的颜色值。

各个像素的颜色值,在计算机看来,就是一连串的二进制序列。

也就是说,对于一副图像,其每一个像素的颜色值都由一个对应的二进制序列来控制。

对于每一个像素的二进制序列,都会经过显卡,将CPU提供的指令和数据进行相应的处理,变成显示器能够接受的文字或图像。

再通过显示器显示出来,最终呈现在计算机使用者的眼前。

1.2 RGB图像

RGB指的是三原色光模式RGB color model),又称RGB颜色模型红绿蓝颜色模型,是一种加色模型,将红(Red)、绿(Green)、蓝(Blue)三原色的色光以不同的比例相加,以合成产生各种色彩光。

在计算机中,我们赋予RGB图像的每一个像素24位,即3个8位二进制数。

其中,这三个8位的二进制数分别表示红色,绿色和蓝色的强度:如(0,0,0)表示红色的强度为0,绿色的强度为0,蓝色的强度为0。既然每种颜色的强度都为0,那么(0,0,0)表示的是黑色。

同理,(255,255,255)表示的是白色,(255,0,0)表示的是红色。

也就是说,一副RBG图像的每一个像素都由三个向量来量化,总共可以表示256³,也就是16777216种不同的颜色。

1.3 灰度图像

显然,对于部分不需要颜色检测的图像处理来说,减少图像的原始数据量可以使我们后续的计算更少、更快。

所以我们可以先将图像进行灰度预处理。

灰对于一副RGB图像来说,其每一个像素由三个分量构成;

而对于一副灰度图像来说,其每个向量仅由一个分量构成。

每一个分量的大小为8位,也就是总共有256种选择。

灰度图像即是用256个数字来衡量灰度的深浅,值越大,代表越白,值越小,代表越黑。255代表白色,0代表黑色。

二、RGB转灰度公式

RGB图像转灰度有一个公式:

计算机视觉 OpenCV【灰度原理和公式】

这个公式是用一个1×3的矩阵去左乘从上至下依次为B,G,R的RGB3×1矩阵。

得到的则是一个灰度值。

再将每一个像素都应用这个灰度值,最终则组成了由RGB转灰度的灰度图像。

上一篇:入手评测 威龙 D45和D45G RGB的区别


下一篇:【色彩管理】YIQ色彩模式详解