深度学习实践:计算机视觉
上QQ阅读APP看书,第一时间看更新

1.1 图像基础

图像是人通过眼睛对外界的一种视觉感受,它可以存在于人们的脑海里,也可以通过某种介质(如照片或数码照片)保存下来,本书主要讨论的是计算机对图像的处理,所以明白计算机怎么看待图像是非常重要的。如前所述,计算机中所有文件都用数字表示,那么图像也不例外。

在计算机中,图像的最基本组成单元为像素,图片是包含很多个像素的集合。像素一般就是图片中某个位置的颜色,很多个像素点排列起来,就可以组成一个二维平面点阵,这就是图像。比如电脑桌面背景,如果是1920px×1080px的大小,那就意味着有1920×1080(2073600)个像素:1920列,1080行。通常图像表达会用色彩空间的概念,常见的有RGB、LAB、HSL和灰度等,本书主要关注RGB和灰度这两种,其他色彩空间可查阅相关资料(1)。RGB图像又称为三通道彩色图,灰度图相对应就可以叫作单通道图。通道数可简单理解为表示单个像素所需要的数字的个数。

图像分两类:模拟图像和数字图像。两者之间最大的区别是像素的值域,模拟图像像素的值域是连续的,是人类所认识感受到的;而数字图像的值域则是离散的、有限的,是计算机等电子设备所认知的事物。本书所讨论的就是计算机所认知的图像,即数字图像,后面不再说明,这也是计算机视觉的主要任务。

在计算机中,灰度图中的像素通常用0~255之间的一个整数数字表示,0表示黑色,255表示白色,数字从0变到255表示颜色由黑变白的一个过程。颜色越黑则越接近0,越白则越接近255。

RGB彩色空间则使用三个整数数字来代表一个像素,如(0,100,200),分别代表红色部分的颜色值为0,绿色部分为100,蓝色部分为200。RGB分别代表英文单词Red、Green和Blue,其对应的取值范围都是0~255,数值越大表示颜色越浅,越小则越饱和。所以RGB像素不同的组合总数为:256×256×256=16777216,其中(0,0,0)表示黑色,(255,255,255)表示白色。

基于以上认识,像素点阵就可以使用矩阵来表示,差异就是不同空间表示像素的方法不同。灰度图可简单理解为一个二维矩阵,里面填满了0~255间的整数;而彩色图则是三维矩阵,维度分别代表高、宽和通道数,如图1-2所示可以更形象直观地理解,一个4×4的灰度图像矩阵和一个4×4的RGB彩色图像(除非特殊说明,后期本书中的彩色图像一般指RGB空间格式)矩阵。

图1-2 灰度图与RGB彩图