11.1 图像识别的准备工作
11.1.1 从电影走进现实

早在1968年,经典的科幻电影《2001太空漫游》描述了这样一个片段:影
片中的赫伍德教授在登陆环形空间站时,需要进行一个“声影测试”的身份验
证,验证通过才能进入。这也是当时人们的美好愿望,希望到了21世纪,我们
不再需要验证任何账号密码,计算机根据我们的脸或声音就能识别出我们的身
份。
经过近50年的发展,人脸识别技术从电影的幻想逐渐走进了人们的日常生
活,成了我们日常安检、考勤、支付等不同领域的得力助手。同时国内外的算
法团队不断刷新人脸识别的准确率,相关的产品与应用层出不穷,人脸识别技
术一时间成了最热门的生物特征识别技术。这一切的背后得益于图像识别技术
的蓬勃发展。
对于人类来说,视觉是与生俱来的,从小我们就能通过眼睛接收外界的景
象。虽然小时候我们不太认得每个东西是什么,但是我们已经具备识别物体的
能力。婴儿能够感知到什么样的物体在其面前,这个物体的边界在哪里,只是
还不会表达这是个什么样的物体。人类识别图像的过程并非将过往看到的画面
全部存储,然后再把当?看到的画面与过往画面进行比对以识别物体,而是依
靠物体的特征对物体进行分类,通过各个类别所具有的特征将物体识别出来。
随着不断的学习,很快我们能分清楚眼中看到的哪些是树,哪些是房子,哪些
是小鸟。在这个过程中,我们的大脑会根据存储记?中物体的特征对图像进行
辨认,查看是否存在与当前看到的物体具有类似特征的存储记?,从而识别出
眼前看到的是什么物体。值得庆幸的是,识别与分类这两件事对正常人来说是
一件非常简单的事情。
机器的图像识别技术也是如此,计算机若想跟人类一样能够辨别看到的物
体,同样需要具备识别物体与分辨物体的能力。首先识别到是什么物体,物体
在哪里,然后通过分类并提取重要特征达到识别图像的目的。计算机提取出的
特征在很大程度上直接影响了识别图像的准确率,但是计算机并非每次提取的
特征都能够满足我们的需要。上述每一个任务对于计算机来说都有一定的难
度。因此接?来,我们将探究图像识别的原理以及面临的问题,并分析科学家
是如何用一种特殊的神经网络来解决这些问题的。
人类的眼睛就像是一个接收器,而大脑则是一台超级计算机。大脑每时每
刻都在从眼睛接收图像,并在我们毫无意识的情况?完成了对这些图像的处
理。但机器并非如此,在机器中图像识别大致可分为以?几个步骤:图像采
集、图像预处理、特征抽取和选择、分类器模型设计和分类决策。在这个过程
开始之前,首先我们要知道一幅图像对于计算机来说意味着什么,然后理解计
算机如何表达一幅图像,进而读取图像、识别图像。
11.1.2 图像的表达
在计算机的世界里,每一幅图像都是由大量的小格子组成的。一个小格子
代表一个色块,我们常说的数字图像就是指用不同的数值来表示不同的颜色的
图像,这样一来,一幅图像可以用一个数字矩阵来表示。也就是说,这一整个
矩阵就是一幅图像的数字表达形式。图像的小格子称为像素,格子的行数与列
数统称为分辨率。比如我们常说的某幅图像的分辨率是1920×1080,指的是这
幅图像由1920行、1080列的像素点组成,如图 11-1 所示。反过来说,如果给
出一个由数字组成的矩阵,我们同样可以将矩阵中每个数值转换为对应的颜
色,再组合起来,还原这张图像原本的样子。

图像一般分为灰度和彩色两种。对于灰度图像,像素点间的区别只在于明
暗程度不同的灰色,因此可以用数值来表示不同的灰度,通常我们认为白色是
最亮的“灰”,用255表示;黑色是最暗的“灰”,用0表示,介于0~255之间
的整数表示明暗程度不同的灰色。
对于彩色图像,每个颜色所代表的这些数字不是随机生成的。常见的编码
方式有RGB模型与HSV模型两种。在RGB模型中,每一个像素的颜色都是由红、
绿、蓝三个通道混合组成的,也就是说每个颜色都是由这三个基础颜色混合而
成的,如图11-2所示,对于每个通道,都可以用一个八位的二进制数来表示明
暗程度。因此,我们还是用0~255之间的整数来表示这个通道不同程度的明暗
变化。例如橙色的RGB值为(255,97,0),表示橙色由255份红、97份绿混合而
成,某种基本颜色的数字越大,表示该基本颜色的比例越大。
另一种常用的色彩模型HSV则是采用色调、饱和度、明度这三个分量来表
示不同色彩,如图 11-3 所示。色调表示色彩信息,即这个颜色所处的光谱颜
色的位置。该参数用角度来表示不同的颜色,就像调色盘一样,其中红、绿、
蓝分别相隔120°;饱和度是一个比例值,范围为 0%~100%,它表示所选颜色
的纯度和该颜色最大的纯度之间的比率。当纯度为0时,表示只有灰度没有色
彩;明度表示颜色的明亮程度,通常取值范围为0%(黑)~100%(白)。对于
光源色,明度值与发光体的光亮度有关。对于物体色,明度值和物体的反射比
有关。例如蓝色的HSV值为(240,1.0,0.4),而浅蓝色为(240, 0.4,1.0),
每个数字对应的含?不同。

在图像识别领域,通常用RGB模型来描述像素点的不同颜色。因此一幅彩
色图像可以用一个由整数组成的立方体阵列来表示,我们称这样的数字阵列为
三阶张量。这个三阶张量的长度与宽度为图像的分辨率,高度固定为3,表示
由R、G、B三个颜色通道组成 。有了这样的表示方式,我们就完成了令计算机
理解图像的第一步,即多彩的图像被转变成了数字,并且保留了原有图像的特
点。
11.1.3 图像采集与预处理
在前文中我们提到,图像识别主要分为以?步骤:图像采集、图像预处
理、特征抽取与选择、分类器模型设计和分类决策,如图11-4所示。

图像采集是整个图像识别过程的第一步,主要借助于数字摄像机、扫描
仪、数码相机等设备经过采样数字化得到静态图像,也包括一些动态图像。
获取图像的目的是从扫描仪中的传感器获取数据并产生数字图像。但是传
感器输出的是连续的电压波形,因此需要把连续的感知数据转换为数字形式再
转码成图像。这一过程通过图像的取样与量化来完成。数字化坐标值称为取
样,数字化幅度值称为量化。在取样时,横向采取的像素数量与纵向采取的像
素数量相乘即是该图像采集时的分辨率。一般来说,采样间隔越大,所得图像
像素点数越少,空间分辨率越低,图像质量越差,严重时甚至会出现马赛克现
象;采样间隔越小,所得图像像素点数越多,空间分辨率越高,图像质量越
好,但数据量大,如图11-5所示。
量化等级表示在数字图像中每个像素点的取值范围。常用的量化等级有
2、64、256、1024、4 096、16 384等。在量化时,采用的量化等级越高,所
获得的图像层次越丰富,分辨率越高,图像质量越好,但同时数据量较大;采
用的量化等级越低,图像层次越不明显,灰度分辨率越低,这会导致出现假轮
廓现象,且图像质量差,但数据量小,如图11-6所示 。

从以上两个图中的效果对比可以看出,数字图像的质量在很大程度上取决
于取样和量化中所用的样本数和灰度级,因此根据需求决定取样量化标准是采
集任务的关键。
我们在前文中讲解搭建“信用卡逾期风险评估”的模型时说过,采集到的
初始样本数据会存在各种问题,需要经过数据清洗等预处理才能供模型使用。
同样,通过采集得到的图像并非直接让计算机识别,这些图像也存在各种各样
的问题,我们需要通过图像预处理技术让图像变得更容易被计算机识别,常见
的预处理技术如图 11-7 所示。我们采用去除噪声、提高图像清?度、图像增
强等一系列的方法提高图像的质量。无论采用什么方法,最终的目的都是希
望能够使图像中物体的轮廓更清晰,细节更明显,从而强化图像的重要特征

经过以上步骤之后,可以得到一幅清?、分辨率较高的图像。图像对人眼
来说是层次感分明的,我们可以清?地看到每个物体的轮廓。但是对计算机来
讲,这可不是一件容易的事情,因此,接?来我们要想办法告诉计算机,这幅
图像描述的是什么,才能让它进行正确的分类或识别。
?一步我们要进行特征的选择与提取。先回想一?,当我们向别人描述两
个其从未见过的物体时会如何描述呢?通常我们会对这两个物体的特征进行对
比。例如描述一张桌子和一架飞机时,我们说“有四条腿”的是桌子,“有机
翼”的是飞机。通过这俩简单的特征就能区分这两类物体的图像。但是对于计
算机来说,一幅图像就是以特定方式存储的数字矩阵,让计算机通过计算,从
这个数字矩阵里提取“有四条腿”“有机翼”这样的特征是极其困难的事情。
那么什么样的算法适合去学习这些特征呢?我们首先能想到的当然是拥有
强大表现力的神经网络。理论上我们可以用常规的BP神经网络来学习图像的特
征。但在实际操作中我们会发现,使用这种方法的成本非常高。假设我们拿一
幅 720 像素×1080像素的常规图像,输入神经网络模型时会形成720×1080个
输入数据,再加上大量的参数运算,计算机的计算量会增加到难以想象的程
度。此外,采用神经网络识别特征很容易产生过拟合的现象,所以不仅增加计
算支出,还会削弱面对新数据时的识别能力。因此计算量与过拟合这两方面的
问题都让BP神经网络在图像特征学习面前举步维艰。

人工智能知识全面讲解: 图像识别的准备工作相关推荐

  1. 人工智能知识全面讲解:机器学习的类型

    产品经理在日常工作中经常要用到一些理论方法来帮助解决问题.例如, 在需求调研阶段,使用深度?谈.焦点小组.问卷调查.可用性测试等方法获 得用户的真实反馈.在需求分析阶段,使用KANO模型.RFM模型. ...

  2. 人工智能知识全面讲解:初识生成对抗网络

    13.1.1 猫和老鼠的游戏 在2016年7月,一款国外的照片处理软件火遍了全世界,同时也引爆了国 人的朋友圈.这款产品就是Prisma.Prisma可以按照你提供的图片内容和指定 的风格,生成一副指 ...

  3. 人工智能知识全面讲解:数据预处理

    数据准备有收集数据.探索数据.数据预处理三个步骤.这一章我们重点 讲解如何挖掘数据的有效信息以及如何对数据进行预处理,以便从加工后的数 据中提取特征,为模型学习打?坚实的基础. 在信息化时代,数据逐渐 ...

  4. 人工智能知识全面讲解:线性支持向量机

    经常喝咖啡的朋友知道,咖啡豆的产地不同,冲出来的咖啡口味也不相 同.阿拉比卡的咖啡具有均衡的风味.口感与香气,而罗布斯塔的咖啡带有强 烈的酸味,口感比较浓郁.挑选咖啡豆是一件非常有讲究的事情,如何区分 ...

  5. 人工智能知识全面讲解:回归分析

    回归分析对我们来说并不陌生,早在小学的时候,有一种题目是从数列中 找规律,然后填出?一个数字.例如一个数列为"1.4.7.10.__",请找 出规律填出?一个数字.对于这个简单的数 ...

  6. 人工智能知识全面讲解:生成对抗网络的应用

    13.2.1 GAN的特点 GAN从2015年提出至今,短短4年的时间已经发展成为人工智能学界一个热 门的研究方向,吸引了大批研究人员来研究 GAN.除了学术界的理论研究以 外,许多科技公司已经付诸行 ...

  7. 人工智能知识全面讲解:垃圾邮件克星——朴素贝叶斯算法

    6.1 什么是朴素贝叶斯 6.1.1 一个流量预测的场景 某广告平台接到小明和小李两家服装店的需求,准备在A.B两个线上渠道 投放广告.因为小明和小李两家店都卖女装,属于同一行业相同品类的广告, 所以 ...

  8. 人工智能知识全面讲解:特征工程

    2.2.1 如何进行特征工程. 用于机器学习的数据源一般有两种:一种是业务部门直接提供的数据,或 者根据需要在网络上爬取的数据.这种数据称为原始数据,通常存在较多的问 题,需要通过数据预处理整理数据并 ...

  9. 人工智能知识全面讲解:自然语言处理概述

    2.1.1 什么是自然语言处理 2014年,作为全球第一个以培养情商为目标的AI聊天机器人"微软小 冰"诞生,并在同年6月在微博上线.上线后因性格活泼.聊天能力强引起人 们的热烈反 ...

最新文章

  1. mysql没有makefile_make: *** 没有指明目标并且找不到 makefile。 停止。 make: ***
  2. VideoCapture 读取视频文件,显示视频(帧)信息
  3. 3D Computer Grapihcs Using OpenGL - 04 First Triangle
  4. Python之tkinter:动态演示调用python库的tkinter带你进入GUI世界(Menu/Menu的Command)
  5. 第3章 Python 数字图像处理(DIP) - 灰度变换与空间滤波7 - 直方图处理 - 直方图、归一化直方图
  6. dfs序 + RMQ = LCA
  7. 原子操作、互斥锁、读写锁
  8. 手动升级 Confluence - 规划你的升级
  9. 和慧眼显示服务器网关错误,R680G7联想万全慧眼IV高级版用户指南2.pdf
  10. Python的基础编程
  11. innerhtml与outerhtml的区别
  12. 树莓派与普通USB摄像头的连接
  13. Vins-Fusion运行kitti,euroc和tum数据集并使用evo评估
  14. 计算机视觉/图像处理领域相关研究机构梳理
  15. 联想电脑重装系统F12开机项选择无USB启动选项
  16. 中国冰淇淋市场深度评估及发展趋势预测报告(2022版)
  17. 16.面向对象-基础
  18. 中介/代理,正/反向代理,直/间接代理,概念清晰解释
  19. 处理器架构——多发射处理器技术
  20. 项目七总结 创建于使用触发器

热门文章

  1. iOS6Passbook入门1/2
  2. .net 4.5 离线安装包_高温离线脉冲式布袋除尘器在电炉除尘中的应用
  3. mysql身份证校验码_sql 语句 验证身份证号码
  4. html5实现DisuzX论坛手机版ucenter头像修改
  5. 为什么C 可以做软件开发而Java不能,既然C+能做C语言大部分事情,为什么C+不能淘汰C语言...
  6. 数字图像处理_冈萨雷斯_数组索引
  7. 计算机高级应用与速录,目前最优秀计算机速录是什么软件?
  8. 未转变者服务器可作弊,unturned单人作弊指令
  9. Linux----tr命令详细使用方法
  10. Djiango图书管理系统