计算机视觉技术 课件 第1章 计算机视觉概述_第1页
计算机视觉技术 课件 第1章 计算机视觉概述_第2页
计算机视觉技术 课件 第1章 计算机视觉概述_第3页
计算机视觉技术 课件 第1章 计算机视觉概述_第4页
计算机视觉技术 课件 第1章 计算机视觉概述_第5页
已阅读5页,还剩82页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章计算机视觉概述前言长久以来,人类都在研究如何使机器能够“看见”,即具图像处理、图像构建、图像理解等能力。通过对人类视觉系统的研究,科学家在很早以前就发现了眼睛“看见”的原理,随后照相机、摄像机、具有目标识别能力的机器人、能够理解图像含义的搜索器等视觉系统陆续出现在了人们的生活中。那么,人类视觉到底有哪些奥秘呢?到底什么是计算机视觉呢?机器是如何处理图像的?这一系列问题将在本章得到回答。任务总结了解图像处理库学习什么是图像处理学习什么是计算机视觉学习什么是计算机视觉What

is

computer

vision1.1人类视觉1.3计算机视觉的应用1.2计算机视觉011.1

起源:人类视觉

人类视觉原理人类视觉特性人类视觉原理主要由视觉器官和大脑视觉皮层组成视觉器官指的的是“眼睛”主要由角膜、虹膜、晶状体、视网膜组成

。原理光线进入人眼,穿过晶状体后在视网膜上成像,分布于视网膜上的视觉细胞将光转换成电脉冲,传递给大脑视觉皮层进行解码产生图像人类视觉特性视觉关注机制注意力机制色彩敏感度RGB转灰度图亮度及对比敏感度边缘检测视觉掩盖视觉内在推导机制1)视觉关注机制定义:在纷繁复杂的外界场景中,人类视觉总能快速定位自己感兴趣的目标,而忽略不重要的区域。模式:自底向上模式和自顶向下模式自底向上模式是由图像客观内容驱动,主要跟图像内容的显著性相关。自顶向下模式则主要由主观命令指导,受到人类意识支配,在人类意识指令下强行转移注意力到某一特定区域。在计算机视觉领域,基于人类视觉关注机制提出的注意力机制是解决信息超载问题的主要手段。自家的假装没看见这幅图里有只小猫咪,找找看?2)色彩敏感度人类视觉系统并不是对每种颜色都同样敏感。视网膜上有一类锥状细胞,它们对红光,绿光和蓝光的敏感度不尽相同,同时,这些细胞的占比也不均匀。这一特性影响到RGB彩色图转灰度图的权重设置,为红色通道0.299、绿色通道0.587、蓝色通道0.114。3)亮度和对比度度敏感机制人眼对光强度具有某种自适应的调节功能,即能通过调节感光灵敏度来适应范围很广的亮度,同时这也导致了人眼对绝对亮度的判断能力较差。如图中所示,中间同等亮度的方块在黑暗的背景上会显得更亮,反之,会显得更暗。同理,相较于小幅度亮度变化,人眼对大跨度的亮度变化,比如物体边缘区域,更敏感。边缘信息在计算机视觉领域得到了广泛应用,如通过对边缘特征的检测,识别目标的类别、获取目标的位置,跟踪目标的移动路径等。4)视觉掩盖效应类别:对比度掩盖起因:视觉信息间的相互作用或相互干扰将引起现象举例:亮度和颜色如何影响到你的视觉?请问:这两条螺旋带是同一种颜色吗?4)视觉掩盖效应类别:纹理掩盖起因:人眼能够毫无察觉地过滤掉一定阈值以下的信息,对像素层绝对差值大的关注度更高。特点:这一特性在实际图像处理中帮助我们区分出哪些信号是视觉系统能察觉、感兴趣的,哪些信号是视觉系统无法察觉、可忽略的。选择性地处理人眼能够察觉的信息可以大大减少图像处理的复杂度,且在一定条件下改善图像的显示质量。案例:图像编码压缩过程,

pdf文件压缩(利用人类视觉系统对高频的不敏感特性,舍弃部分高频信息)不断添加频率个数,图像恢复情况4)视觉掩盖效应类别:运动掩盖起因:人眼容易首先关注视频中运动速度中等或快的图像内容,而易忽略运动速度慢或静止的图像内容。特点:受运动掩盖效应的影响,人眼很难观察到图像内容的细节信息,因此其对应的感知敏感程度会显著降低。而运动速度中等的图像内容不仅易吸引人眼关注,并且运动掩盖效应的作用微弱,所以其对应的感知敏感程度最高。案例:视频压缩-减少时间冗余5)视觉内在推导机制根据大脑中的记忆信息,来推导、预测输入的视觉内容,同时选择性地丢掉那些无法理解的不确定的信息。如图中所示,这两佛图都是具有歧义的图片,当我们根据经验判断其为其中一种对象,如判断为杯子,那么我们就会有意识的丢掉与杯子无关的信息。这种推导机制由视觉大脑皮层来处理,对应到计算机视觉系统中,则由主机进行处理。这种判断和推导的能力衍生出了计算机视觉应用中的各种任务,如图像识别,图像生成,目标检测,目标跟踪等。图像识别图像生成目标跟踪目标检测杯子or人脸?回忆回忆问题一:彩色图转灰度图,红色通道、绿色通道和蓝色通道的权重一样吗?为什么?

问题二:人工智能领域的注意力机制是参考了人眼系统的哪种特性?第1章计算机视觉概述复习5分钟分享1.2计算机视觉

计算机视觉定义计算机视觉的任务计算机视觉应用计算机视觉的定义计算机视觉是一门研究如何使机器“看”的科学,其目标是在机器上复现人类视觉。更具体的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等视觉任务。计算机视觉的输入是图像,输出是场景知识,如图像中的物体类别、物体数量、物体运动等。由于语义鸿沟的原因,要实现“看”的能力似乎没有那么容易。计算机视觉:试图在机器上复现人类视觉,但由于语义鸿沟的原因,似乎没有那么容易。语义鸿沟:指通常人们在判别图像的相似性时并非建立在图像低层视觉特征的相似上,而是建立在对图像所描述的对象或事件的语义理解的基础上。语义鸿沟这两幅图一样吗?这是什么动物?人类:完全不同,计算机:很相似人类:是猫,计算机:是梅花鹿

从任务内容上划分,计算机视觉的基本任务可分为:分类,定位,检测和分割计算机视觉任务分割(segment):在检测的基础上进一步判断图像中哪些像素属于哪个目标。分类(classification):判断一张图像所属类别。定位(localization):判断目标在图像的位置,通常是以包围盒的(boundingbox)形式呈现。检测(detection):判断图像中出现的可检测目标的种类和数目,并框出每个目标的包围盒。计算机视觉基本任务图像理解图像跟踪图像识别根据场景知识的不同,计算机视觉可以划分为图像识别、图像跟踪和图像理解。计算机视觉任务(1)图像识别一种利用计算机识别图像中各种不同模式的目标和对象的技术,在机器学习领域,主要指对于一个给定的图像,预测它属于的哪个分类标签。粗粒度图像识别和细粒度图像识别主要任务为图像分类,应用:搜索引擎、智能相册等

图像识别的影响因素:姿态、视角、光照、遮挡、背景干扰等

图像识别结论:计算机视觉较于人类视觉还有一段不小的距离。计算机视觉任务(2)图像跟踪通过图像识别、红外、超声波等方式对摄像头中拍摄到的物体进行定位和追踪。在计算机视觉层面,图像跟踪可以细分为目标检测和目标跟踪遮挡、形变、背景斑杂、尺度变化等,会影响到跟踪效果应用:无人机跟踪,体育赛事跟踪计算机视觉任务(3)图像理解图像理解主要指对图像语义的理解,是在简单识别基础上进一步提取深层含义的技术。对于同一张图片,图像识别能识别出属于分类集合内的目标,而图像理解能识别出更多的信息,比如图像中有什么目标、目标之间有什么关系、图像处于什么场景以及如何应用场景等。提取图像到深层含义应用:实例分割,图像描述,视频描述,唇语解读,图像生成等。计算机视觉应用工业医疗交通应用电商支付说一说:在聊天室分享让你眼前一亮的计算机视觉应用案例?

第1章计算机视觉概述2.1图像的表示(1)二值图像(2)灰度图像(3)彩度图像计算机视觉处理的图像经过数字摄像机、扫描仪等设备的采样后,需要以某种数字化方式进行表示才能进行后续的处理。那么图像在计算机中是如何表示的呢?图像表示

图像表示二值图像是指像素值只有0和1的图像表示方法,使用1个比特位即可表示。占用更少的存储空间,获得更高效的处理速度。二值图可以很方便的进行逻辑运算,常用于标识图像区域,与图像做点乘运算,能够快速分割出目标区域。1)二值图像0001000010000011111111000011111111000011011011000011111111000011110111000011101011000001111110000000011100000000001000000011111111100000111110002)灰度图像

灰度图,又称灰阶图,是用灰度表示的图形。灰度是一种像素强度分级机制,将白色与黑色之间按对数关系分为多个等级,通常使用8位表示,取值范围为0~256灰度图像与二值图像不同,二值图像的每个像素使用1个比特位表示,灰度图像使用8个比特位表示;二值图像只有黑色与白色两种颜色,灰度图像在黑色与白色之间还有许多不同等级的中间色。0-2558位整数3)彩色图像

彩色图像通常由多个叠加的彩色通道组成,每个通道代表给定颜色分量的强度值。典型的3通道彩色图像由红色、绿色、蓝色叠加而成,3通道彩色图像分解示意图如图1.5所示。图中左边是一张自然染色的图像,右边分别显示的是红色、绿色和蓝色3个颜色分量的通道。思考?右边的图是什么类型的图片?A二值图B单通道灰度图C多通道彩色图第1章计算机视觉概述2.2

色彩模型色彩模型是描述如何使用1组值表示颜色的方法的抽象数学模型。目前经常用到的色彩模型有RGB、HSV、CMYK、Lab等。而OpenCV支持的多通道色彩模型主要有RGB、HSV等。1)基于发光屏幕的RGB

OpenCV中BGR图像数据表示

2)基于直观感受的HSVHSV像素点同样由3个分量表示,H(Hue)分量表示色相,S(Saturation)分量表示饱和度,V(Value)分量表示明度H分量用角度度量,取值范围为0~360,表示光谱上的颜色值S分量表示颜色的饱和程度,取值范围为0~100V分量表示明亮程度,取值范围同样为0~100,V值越高,表示颜色明亮度越高如果要表示黄色,在HSV空间中,只需要将H分量设置为60即可相比RGB,HSV颜色空间更容易实现对颜色的跟踪,在图像处理领域常用于分割指定颜色的物体。3)用于打印的CMYK

利用色料的三原色混色原理,加上黑色油墨,共计四种颜色混合叠加,形成所谓“全彩印刷”四种标准颜色是:C=青色,M=品红色,Y=黄色,K=黑色。CMYK色彩空间专用于印刷领域,通常在印刷品上看到的图像都是CMYK模式,比如期刊、杂志、报纸、宣传画等,而在屏幕上显示的图像都是RGB模式。4)基于生理的LAB

思考?电脑屏幕上的画面是哪种色彩模式?A

CMYKB

RGBC

HSVD

LAB纸质教材上的图文是哪种色彩模式?A

CMYKB

RGBC

HSVD

LAB第1章计算机视觉概述2.3图像处理的基本过程

计算机视觉系统的图像处理过程一般包括图像获取、图像预处理、特征提取、高级处理等基本过程数字图像的获取主要通过图像感知设备,如各种光敏摄像机、雷达、超声波接收器等

必要的预处理操作被采用以使图像满足后继分析的要求。常用的预处理操作有图像去噪、图像增强、图像转换、二次取样等

特征提取指从图像中提取对后继分析有用的图像特征。简单的特征提取操作有边缘提取、边角检测、斑点检测等,相对复杂的特征可能与图像中的纹理形状或运动状态有关,有时还需要进行图像分割,从一或多幅图片中分割出含有特定目标的区域高阶处理部分,主要任务是理解图像的含义

。高级处理的内容包括但不限于:验证得到的数据是否符合前提要求、估测特定系数(如目标的姿态和体积)、对目标进行分类等。图像获取-图像采集图像感知设备,如各种光敏摄像机、雷达、超声波接收器等。使用的感知器不同,采集的图像也会有区别。46普通相机、摄像机彩色图像,像素点对应的是光在不同光谱段上的叠加强度事件摄像机由像素位置、时间和极值组成的事件对象数列雷达灰度图像,像素点对应的是无线电波的电平超声仪灰度图像,像素值为超声波的回波信号差图像获取-图像表示采集设备能够返回数字图像,是因为中间经历了图像数字化过程47

灰度离散化:将连续变化的像素取值转化成有限个离散值,赋予像素点以灰度划分的亮度值。通常为8位或16位整数。压缩编码:一般的压缩方式有预测编码、变换编码、分形编码、小波变换图像压缩编码等。常见压缩格式有JPEG、PNG等。Cat.jpgdog.png2.bmp图像采集图像量化压缩编码图像文件直接从图像感知设备获取的图像可能存在噪声、暗区、倒置、尺寸不统一、数量不足等问题,无法直接用于分析任务,需要进行预处理操作。预处理类别描述图像转换转换为灰度图或二值图像,图像归一化处理,图像标准化处理等。图像增广通过对训练图像做一系列随机改变,来产生相似但又不同的训练样本,从而扩大训练数据集的规模。处理内容包括翻转、裁剪、过滤、锐化、模糊、旋转、平移、剪切、缩放、色彩、亮度、对比、均匀、加噪、渐变、变形等。图像预处理思考?5.图像采集是图像的空间离散化过程,而图像量化是灰度离散化过程。A对B错第1章计算机视觉概述复习5.图像采集是图像的空间离散化过程,而图像量化是灰度离散化过程。A对B错复习五分钟分享名单了解图像处理库Knowledgeofimageprocessinglibraries3.1

Numpy数组创建数组重塑广播3.1

Pillow图像读取图像转换色彩分离和合并03PART常见图像处理工具库

在实际处理中,可以采用工具软件提升预处理效率。在Python环境中,常用的与图像运算和处理相关的库有NumPy、SciPy、Pillow、Matplotlib、OpenCV等,3.1

NumPy数组创建图像转换广播NumPy是Python语言的一个扩展程序库,支持大量的维度数组与矩阵运算,非常适合用于数字图像的矩阵运算。实验报告提交实验报告命名案例:1.NumPy的基本使用(姓名-学号)提交:当天统一完成提交实验报告:代码部分,直接粘贴代码,不要有截图结果部分:直接将执行结果截图数组创建通过函数array()构建numpy.array(object,dtype=None,order='C’)式中,object是数组或嵌套的数列,dtype是数组元素的数据类型,order参数是索引数组的顺序,C为行方向,F为列方向,A为任意方向(默认)。【案例】创建一个矩阵A的语句为:importnumpy

A=numpy.array([[1,2],[3,4]],int)

数组创建empty()、zeros()、ones()Empty()用于创建一个未初始化的数组zeros()用于创建全0的数组;ones()用于创建全1的数组zeros()的语法格式为:numpy.zeros(shape,dtype=float,order='C’)

ones()语法格式为:numpy.ones(shape,dtype=np.uint8,order='C’)

式中,shape是数组形状,dtype是数组元素类型,order参数是数组的样式。【案例】创建一个全0的矩阵B语句为:B=numpy.ones((3,2),int)

语句执行结果为:B:[[1

1][1

1][1

1]]

数组创建shape、ndim、size、dtype通过ndarray对象的ndim属性能够获得数组的秩,NumPy数组的维数称为秩,一维数组的秩为1,二维数组的秩为2,以此类推;通过shape属性能够获得数组的形状信息数组的形状表示为一个元组,其中的元素为各个维中元素的数量。除此以外,还有size、dtype等属性。【案例】数组创建,创建一个矩阵A([1,2][3,4]),并打印A的形状、秩、尺寸和类型。

importnumpyasnp

A=np.array([[1,2],[3,4]],int)

print(A.shape)

print(A.ndim)

print(A.size)

print(A.dtype)

小练习(10分钟)完成实验指导书1的练习1和2,并完成实验报告中相应部分内容。2)数组重塑

数组创建完成后,还可以通过reshape()改变数组形状,前提目标数组的元素总量不变arr.reshape(newshape,order='C')式中,arr是待改变的数组,newshape是目标形状,order是索引素组顺序。

将形状为(3,2)数组B转变为形状为(2,3)的语句为:B.reshape((2,3),order='C’)

完成实验指导书练习3,(5分钟)3)广播

NumPy的“广播”特性让不同形状的数组之间的也能进行运算NumPy中,当两个数组的后缘维度(从末尾开始算起的维度)的轴长相等,或是有一方的维度是1,仍然可以借助“广播”的形式进行计算3)广播

【例1.1】计算出数组A:[[1,2],[3,4],[5,6]]与数组B:[[1,2]]进行四则运算的结果,并编码验证。编写验证代码如下:importnumpyasnp

A=np.array([[1,2],[3,4],[5,6]],int)

B=np.array([1,2])

print("A+B=",A+B)

print("A-B=",A-B)

print("AxB=",A*B)

print("A/B=",A/B)

完成实验指导书练习4,(10分钟)Numpy基本使用【拓展案例】1.使用NumPy创建形状为100*100,类型为uint8的矩阵,矩阵的前10行元素值为0,后续10行为255,再后续10行为0,以此类推,并使用Pillow显示该矩阵,看看效果是怎么样。

importnumpyasnp

fromPILimportImage

A=np.zeros((100,100),np.uint8)

foriinrange(11,100,20):

A[i:i+9,]=255

im=Image.fromarray(A)

im.show("result")完成实验指导书练习5,(5分钟)下一次分享主题第1章计算机视觉概述复习【多选题】以下用于构建数组的函数有?A

array().Breshape().Czeros().D.ones()【单选题】以下用于重塑数组的函数是?A

empty().Breshape().Czeros().D.ones()【判断题】形状为(2,3,3)和(1,3,3)的numpy数组可以进行加减乘除运算。A对B错分享时间3.2

Pillow图像读取图像转换色彩分离和合并Pillow是python3的图像处理库,提供了基本的图像处理功能,如读写图像、几何变换、颜色变换等。前面介绍了图像的不同表示方式、色彩空间等概念1)图像读取核心:Imageopen()函数读取图像,通过_show()函数显示图像读取到图像对象后,通过mode、size、height、width等属性获取图像的色彩空间、尺寸、高度和宽度。conda

install

pillowpip

install

pillow

【例1.2】读取图片lena.jpg,获取图像的色彩空间、尺寸、高度和宽度信息。1)图像读取_show()类显示函数,使用:Image._show(im)show():对象显示函数,使用:im.show(name)Numpy到Image:Im=Image.fromarray(arr)注意:Image图像对象的组织形式为(H,W,C)与tensorflow一致【例1.2】使用NumPy创建形状为(100,100,3)的矩阵,并使用Pillow显示该矩阵1)图像读取类型转换:Image

to

Numpynp_im=numpy.array(pil_im)np_im是转换成的NumPy数组,pil_im是Pillow的图像对象。NumPy的二维数组(矩阵)也可以通过Pillow显示为图像,所用函数为fromarray()

【例1.3】读取图像cat.jpg,转换为numpy类型,并且打印数组的形状和类型。1)图像读取【例1.3】读取图像cat.jpg,转换为numpy类型,进行运算后转换为Image并显示。第1章计算机视觉概述3.2

Pillow图像读取图像转换色彩分离和合并Pillow是python3的图像处理库,提供了基本的图像处理功能,如读写图像、几何变换、颜色变换等。前面介绍了图像的不同表示方式、色彩空间等概念2)图像转换convert()函数支持灰度图和彩色图之间的模式转换im.convert(mode)im是图像对象,mode是转换的目标模式,取值“L”表示转换为灰度图,取值“RGB”表示转换为彩色图像【例1.4】读取图片cat.jpg,将其转换为灰度图完成实验报告实验5(5分钟)2)图像转换二

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论