秋秋影视,侧耳倾听,勇士的荣耀-小二狗,互撩社区,男男女女单生信息,有趣的新闻

admin 2019-05-22 阅读:183

导读:核算机视觉是核算机科学的一个重要类别。核算机视觉的首要方针是教会核算机怎么去“看”,所以也称为机器视觉。本文将介绍核算机视觉的一些根底常识。

作者:王天庆

如需转载请联络篇章科技

01 核算机视觉介绍

核算机视觉的首要方针是教会核算机怎么去获取图片信息中的常识,例如人脸辨认便是让核算机去自动获取与辨认人脸图画中的常识,这个“常识”的范畴可所以“两张图片中的人脸是否来自于同一个人”,也可所以“图片中的人脸是男人仍是女性”

维基百科上对核算机视觉的界说如下:

Computer vision is an interdisciplinary field that deals with how computers can be made for gaining high-level understanding from digital images or videos. From the perspective of engineering, it seeks to automate tasks that thehuman visual system can do.

核算机视觉是一个跨学科范畴,触及怎么运用核算机获取数字图画与视频中的高层次了解。从工程视点来看,它的方针是寻觅一种能够与人类视觉体系完成相同功用的自动化使命。

这段话表明晰核算机视觉的跨学科特色,它与人工智能、固态物理学、神经生物学、信号处理等发生许多相关。传统的核算机视觉的处理办法多是选用信号处理办法,而机器学习技能浪潮的鼓起,为核算机视觉打开了一扇新的大门。

当然,核算机视觉的数据输入源最简略和常见的便是摄像头了。可是,核算机视觉技能关于非摄像头的数据输入源也能供给很好的支撑。

例如,麻省理工学院的一项研讨成果能够完成依据WiFi信号勘探到墙的另一侧人的动作和姿势,依据红外线传感器也能够完成人脸辨认,乃至依据地震信号进行矿产勘探的技能中也能够结合核算机视觉的一些技能。

从这个视点说,核算机视觉的技能辐射度和运用规模是十分广泛的,核算机视觉技能能够使咱们的日子愈加多姿多彩,为发明更夸姣的国际供给了一个强壮的东西。

02 色彩模型

咱们看到的图画数据是以二维的办法展现的,这些图片有的是缤纷多彩、赋有体现力的五颜六色图片,也有的是体现得沉郁顿挫的是非风格,乃至有的图片只要纯黑和纯白两种色彩。诸如此类,都是图片的不同体现办法,咱们将在本节详细了解一下它们的差异。

1. 五颜六色图画

下面,咱们将介绍两种最为常用的色彩模型,别离是RGB色彩模型HSV色彩模型。RGB色彩模型是在几许形状上呈现立方体结构,与硬件完成相关严密。HSV色彩模型在几许形状上呈现椎体结构,更倾向于视觉上直观的感觉。

1.1 RGB色彩模型

RGB色彩模型应该是咱们在平常日子中触摸最多的一种色彩模型,也便是咱们一般说的红、绿、蓝三原色模型。

RGB色彩模型是将红、绿、蓝3种不同色彩,依据亮度配比的不同进行混合,然后体现出不同的色彩。由于在完成上运用了3种色彩的定量配比,因而该模型也被称为加色混色模型。通过3种最根本色彩的混合叠加来体现出恣意的一种色彩的办法,特别适用于显现器等自动发光的显现设备。

值得一提的是,RGB色彩的展现依赖于设备的色彩空间,不同设备对RGB色彩值的检测不尽相同,体现出来的成果也存在差异。这也就使得咱们感觉有些手机屏幕色彩特别传神、美丽,而另一些就难以令人满意。

如图3-1所示展现了RGB色彩模型的空间结构,这是一个立方体结构,在该几许空间中,3个坐标轴别离代表了3种色彩。那么,从理论上讲,任何一种色彩都包括在该立方体结构中。

▲图3-1 RGB色彩模型的空间结构

触摸过Web前端开发的读者或许会对RGB色彩模型有一些了解,例如#FFFFFF代表纯白色,#FF0000代表正赤色。这是选用十六进制对24比特展现办法的一种表明办法。开端的两个十六进制数字位表明赤色,中心的两位表明绿色,最终的两位表明蓝色,每一种色彩选用8比特来表明,3种色彩合计占用24比特。

咱们平常用得最多的RGB色彩展现办法也便是24比特展现的。这种办法别离将红、绿、蓝3种色彩运用8比特无符号整数来表明。8比特无符号整数表明的规模便是0~(2^8-1),也便是[0,255]的整数区间。

例如,运用一个元组来表明正赤色,元组中元素的次序为红、绿、蓝,则正赤色能够表明为(255,0,0)。那么关于黄色这种色彩来讲,它是由赤色和绿色两种色彩叠加发生的,所以正黄色能够表明为(255,255,0)。假设咱们想要削减该种黄色的亮度该怎么操作呢?只需求把红、绿两种色彩一起按份额削减就能够完成了。

而假设改动它们的份额配比,则能够完成混合后的色彩向某种色彩进行偏移,例如橘黄色就会愈加倾向赤色一些。

1.2 HSV色彩模型

HSV色彩模型咱们或许不是特别了解,这是一种选用色彩(H)、饱和度(S)、明度(V)3个参数来表明色彩的一种办法。它是依据色彩的直观特征由A.R.Smith于1978年创制的一种色彩模型。

▲图3-2 HSV色彩模型的空间结构

图3-2展现了该种色彩模型的空间结构,该结构在几许形状上呈现椎体结构。

下面别离介绍HSV模型的各个参数。

(1)色彩(Hue)

以视点的办法进行衡量,其取值视点规模是[0,360]。赤色、绿色、蓝色3种色彩以逆时针方向进行摆放。例如赤色的方位为0°,绿色为120°,蓝色的方位为240°。

(2)饱和度(Saturation)

饱和度反映了某种色彩挨近光谱色的程度。某一种色彩是由光谱色彩与白色光的混合成果,假设某种色彩中白色的成分越少,则该种色彩越挨近光谱色,体现出来的作用便是该种色彩暗且美丽,此刻饱和度更高。反之,关于低饱和度的色彩来讲,该色彩中包括的白色成分越多,色彩越趋向白色,美丽程度则下降。

也便是说,饱和度反映了某种色彩中白色的成分,能够用百分比0~100%来表明,该数值越高,饱和度越高,光谱色彩的成分越多。

(3)明度(Value)

明度体现了某种色彩的亮堂程度,能够以为是一种由光线强弱发生的视觉体会。咱们看到的色彩越亮堂则明度值越高,反之则越低。例如,深紫色和桃赤色两种色彩进行比照,深紫色的色彩愈加晦暗,而桃赤色愈加亮堂,则以为桃赤色的明度要比深紫色的高。相同,咱们也能够运用百分比的办法来表明某种色彩的明度。

这两种模型之间是能够通过数学公式进行彼此转化的。通过学习这两种色彩模型,咱们能够学习到核算机视觉中的根本概念,以及色彩体现的根本原理,为咱们后边的学习做好衬托。

2. 灰度图画与二值图画

在上面咱们现已触摸到图画的色彩模型了,以RGB色彩模型为例,能够以为一张图片的色彩是由包括了红、绿、蓝3种不同通道的色彩进行叠加混合而发生的。

从数学视点来看,关于一张五颜六色图片,能够以为其是由3个二维矩阵进行叠加混合而发生的,每一个二维矩阵记录了某种色彩在不同方位处的亮度值,那么3个二维矩阵就对应了该图片的3个最根本的色彩通道。

换句话说,有人说一张图片便是一个矩阵,其实这样的表述是不谨慎的。关于五颜六色图片来讲,一张图片不只包括了一个矩阵,而是包括了红、绿、蓝3种不同色彩信息的3个矩阵。那么,是否存在一张图片便是一个矩阵的状况呢?当然有!咱们下面介绍的灰度图画与二值图画便是如此。

2.1 灰度图画

如图3-3所示,只需求用一个二维矩阵就能够表明一个灰度图画了,咱们能够看到这个8×8图片所体现的图形是一个字母Z的形状。

▲图3-3 字母Z图画的矩阵表明

咱们在平常触摸到灰度图画的情形十分多。例如,非五颜六色打印的书本中的图片便是灰度图画,是非相片也是灰度图画。这类图片有个特色,尽管这些图片没有包括其他五颜六色的信息,可是,咱们仍然能够从这些图片中获取到图画的概括、纹路、形状等特征。

咱们的直观感觉是正确的,这也说明晰灰度图画相关于五颜六色图画短少了详细的色彩信息,可是,灰度图画仍然能够无缺地展现出图画中各个部分的概括、纹路、形状等要害特征,一起灰度图片的存储结构相关于五颜六色图片更为简略。

这样便会发生一个长处,假设咱们想要提取图画中的特征与色彩无太多相关,那么咱们就能够挑选将五颜六色图片处理成灰度图片的预处理办法。由于灰度图片的结构更为简略,一起要害信息又不大会丢掉,这样就能够极大地削减核算量。

回过头咱们再来想一想,咱们能够通过手机来摄影五颜六色相片,相同也能够摄影出是非相片。在这个进程中咱们能够猜测,是非相片和五颜六色相片是否存在转化联络呢?答案是必定的。咱们能够通过数学公式将RGB模型中的红、绿、蓝3个矩阵进行兼并,兼并成一个矩阵,这个矩阵便是代表了灰度图画的矩阵。

咱们知道,即便是黑色,也分为不同的等级。假设令黑种人的肤色为1代表纯黑色,碧眼儿的肤色为0代表纯白色,那么咱们黄种人中有的长得白一点的女生,她的肤色值就可所以0.2,有的长得黑一点的男生,他的肤色值就可所以0.6。

从上述的比如中,咱们得出了一个定论:即便是黑色的程度也是能够量化的,介于黑色和白色之间的色彩便是灰色,那么直接量化的便是灰色的程度,这个程度便是灰度。一般的量化办法是将纯白色作为255,纯黑色作为0,在这个区间中,运用对数的办法区分详细数值进行量化。当然这个数值可所以浮点数。

从五颜六色图片到灰度图片之间的转化公式就能够表明为:

Igray=[0.299,0.587,0.114]·[Ir,Ig,Ib] (3.1)

其间,Igray代表灰度图画中的灰度值,[Ir,Ig,Ib]代表五颜六色图画中R、G、B通道中的像素值。

式(3.1)表明晰两个向量进行点乘的进程,例如图片中某一点的RGB值为(255,0,100),那么将该图片转化到灰度图片时,对应方位的灰度值为:

Igray=0.299×255+0.587×0+0.114×100=87.645

这儿给出的转化系数仅仅一个参考值,运用不同的灰度图转化办法得到的值也是不相同的,一般常用的RGB数值份额大致为3∶6∶1。

2.2 二值图画

二值图画望文生义只要纯黑色和纯白色两种色彩,没有中心过渡的灰色。其数据结构也是一个二维矩阵,只不过这儿面的数值只要0和1两种。

二值图画是在灰度图画的根底上进一步核算的成果,核算进程比较简略,需求指定一个阈值,然后判别图片中不同点处的灰度值,假设该点处的灰度值高于阈值则该点值为1,否则为0,这样也就完成了灰度图片二值化的进程了。图3-4为一张二值图画。

能够看到,二值图画的空间占用量进一步削减了,每一个像素点只需求1比特就能够表明晰,这关于表明字符这类非黑即白办法的图片具有优势。由于二值图画是在灰度图片的根底上通过阈值判别发生的,这样就会短少细节部分,只能显现出图片的大致概括。不过,这个特性尽管带给咱们直观的感觉是很欠好的,可是,这在图画的切割等场景中具有很好的利用价值。

▲图3-4 二值图画的示例

03 信号与噪声

信号与噪声是一对敌人,图画的空间是有限的,信号多一点,噪声就少一点,反之亦然。咱们在打电话中假设觉得杂音特别多,那么也便是此刻通话数据中的噪声特别多,现已到达了影响正常通话的程度。乃至噪声特别大的时分,信号简略淹没在噪声中。图画也是一种数据,图画中也存在信号和噪声。本节中将详细介绍信号与噪声的相关常识。

1. 信号

信号是一个好东西,由于这是咱们想要的数据。信号越多,噪声的搅扰便会越少,数据的质量也就越高。咱们能够运用信噪比这个概念来衡量数据质量的凹凸。所谓信噪比便是指信号与噪声二者能量之比值。直观来讲,噪声越少,信噪比越大,数据的质量越佳。

咱们能够看到图3-5a展现的是通过高斯噪声搅扰的图画,而图3-5b是未经噪声搅扰的原图。

▲图3-5 遭到噪声搅扰的图画与未经噪声搅扰的图画

2. 噪声

咱们在图3-5中现已看到通过噪声搅扰和未通过噪声搅扰的两幅图片的差异。通过噪声搅扰的图画令咱们难以获取图片所要表达的原始信息,使得图画所表达信息的确认程度削减,也便是所谓的信息熵增大。

而在实际日子中,通过图画收集设备获取到的图片也或多或少会引进噪声,这首要是由摄像机等图画收集设备的感光元件遭到搅扰发生的噪声体现在图画上而构成的,首要体现为是非杂点等。

图画中随机呈现的是非杂点称为椒盐噪声,“椒”代表黑色,“盐”代表白色,故而用椒盐噪声这个概念来表明图画中存在的是非杂点,其在图片中呈现的方位是随机的。而图画中也或许会随机呈现某些色彩的改动。形成此类杂点最典型的便是高斯噪声,这是由于在原图片的根底上叠加了高斯噪声而形成的。

所谓高斯噪声是指图画叠加的噪声概率密度遵守高斯散布,也便是正态散布。这是天然界中最为常见的一种噪声类别,例如夜晚通过照相机摄影取得的相片就或许存在该类噪声。

04 图画滤波

前面说到了噪声,噪声是咱们不想要的一类数据。可是在实际操作中往往会引进噪声,例如图片通过低质量的信道传输,引进了信道中存在的噪声;图画收集设备由于某些电子学原因而引进了噪声等。

噪声的存在必定会对咱们正常的图画处理形成搅扰,尽或许多地滤除噪声是咱们进行图画预处理的一个重要进程。本节将给咱们介绍常见的滤除噪声的办法。

1. 均值滤波

这儿说到的均值滤波器更切当地说是管用均值滤波器,这是最简略的一种图画滤波办法,能够滤除均匀噪声和高斯噪声,可是会对图画形成必定程度的含糊。它是将图片中指定区域内的像素点进行均匀滤波的办法,如图3-6所示。

这个进程与前面咱们所说的卷积的核算进程是类似的。以图3-6进程为例,这个卷积核能够表明为:


▲图3-6 均值滤波进程演示

图3-6中,对左图中左上角的9个点进行均值滤波,得到右图中左上角9个点的中心值3的核算进程为:

1/9(1+2+1+1+2+2+5+7+6)=3

顺次滑动这个滤波器,即可得到图3-6中右图所示暗影区域中的成果。

均值滤波器的缺陷是会使图画变得含糊,这是由于它将一切的点都进行了均值处理。而实际上,在绝大多数状况下,噪声的占比是少量,将一切的点都以相同的权值进行处理,势必会导致图画的含糊。并且,这个滤波器的宽度越大,滤波后的图片就会越含糊,也便是丢掉图画的细节部分,使图画变得愈加“中庸”。

当然,依据这个特色,也能够将这个滤波器的权值更改一下,以便到达有所偏重的作用。

例如,在对图片进行滤波操作时,不应该悉数依照系数为1进行加权求和,然后进行滤波。咱们知道,图画的像素是接连的,间隔越近的像素点间的联络越大,那么,滤波器的参数越接近中心方位的权值越大,越接近边际方位的权值越小,依据这个思路来修正滤波器的权值的办法是否可行呢?

一种可行的完成办法便是将这个滤波器的参数依照高斯散布办法进行修正,那么这个滤波器就称为高斯滤波器。如图3-7所示是二维高斯散布曲面图及其投影,咱们挑选的滤波器权值便是高斯曲面的投影。读者能够了解为何挑选高斯散布作为滤波器的权值参数。

▲图3-7 二维高斯散布示例

2. 中值滤波

咱们在上面介绍了均值滤波,运用均值滤波会形成图片的含糊,即便修正均值滤波的权值,也仍是会形成图片的含糊。因而,咱们既要对图片进行滤波处理,又要尽量削减图片的含糊程度,那么就要考虑别的一种思路来完成滤波进程。

中值滤波是一种与均值滤波进程不同的滤波办法。比较于均值滤波,中值滤波能够有用削减图片的含糊程度。中值滤波的原理如下:

与均值滤波的原理大体类似,相同运用一个指定巨细的滑动窗口,在图片上进行滑动,不断地进行滤波处理。不过,与均值滤波的不同在于,中值滤波在对像素点进行处理时,并不是采纳简略的取均匀数的做法,而是改为取其间位数的做法。

以椒盐噪声为例,其像素的灰度值要么是最低的,要么是最高的,总是处于两个极点。而图画中绝大多数正常点处于这样一个区间之中,因而,将滤波器所选取区域中的像素点,以其灰度值的巨细进行排序,假设存在噪声,则根本处于两头的方位。

此刻,这组数据的中位数在绝大多数状况下都是图画中正常的信息而不是噪声,这样就能够完成滤波进程。这个进程如图3-8所示。

▲图3-8 中值滤波进程演示

关于椒盐噪声来讲,中值滤波的作用要好于均值滤波。而关于高斯噪声来讲,均值滤波的作用优于中值滤波,这是由于,高斯噪声的特色是噪声色彩值不固定,根本契合高斯随机散布的特色,这样就会导致中值滤波无法依照默许的噪声规模进行滤波,其作用天然就没有均值滤波好。

关于作者:王天庆,长时间从事散布式体系、数据科学与工程、人工智能等方面的研讨与开发,在人脸辨认方面有丰厚的实践经验。现就职某国际100强企业的数据实验室,从事数据科学相关技能范畴的预研作业。

本文摘编自《Python人脸辨认:从入门到工程实践》,经出书方授权发布。

延伸阅览《Python人脸辨认》

引荐语:国际100强企业资深AI工程师编撰,全面解说人脸辨认各项根底技能、原理和算法,从零完成工程级人脸辨认引擎。