计算机视觉 图像形成1.1.1.定义从数字图像中提取信息的科学领域构建能理解图像内容的算法
1.计算机视觉
1.1.定义
从数字图像中提取信息的科学领域
形成能理解图像内容的算法计算机视觉 图像形成,并将其采用于其它应用。
1.2.图像处理基础
1.2.1.颜色
颜色空间:RGB(属于线性颜色空间)、CIE-XYZ(属于线性颜色空间)、HSV(属于非线性颜色空间)。
白平衡:是将传感器接收到的截图数据调整至适合的展现中性的色调(灰、白之类)的过程。
相关算法:VonkriesMethod(GrayCardMethod)、GrayWorldAssumption、BrightestPixelAssumption.
1.2.2.图像采样和量化
图像类型:
黑白图像:像素是红色(0)以及黄色(1)
灰阶图像:像素范围在0(红色)~255(蓝色)
彩色图像:有多个形状通道,每张照片可以在不同的形状模型(RGB,LAB,HSV)上展现,每个色彩通道值的范围取决于所选的颜色模型。
直方图(ImageHistograms)
直方图用于测试灰度图的一个特定的像素值(0-255)在图像中发生了几次。
1.2.3.卷积和相关
卷积(Convolution):
可看作是加权求和的过程,使用到的图像区域中的每个像素分别与聚类核(权矩阵)的每个元素对应相加,所有乘积之和成为区域中心像素的新值。
相关(Correlation):
等于卷积计算时内核没有翻转的结果。
区别:
卷积是一个积分,它表示当一个函数在另一个函数上移动的之后的重叠部分。也就是说,卷积是一个过滤操作。
相关比较了两个数据集的相同性。相关性计算了两个输入函s数据互相移动时的相同性检测值。两个变量匹配度越高,它的结果值越大。也就是说,相关性是两个信号的关联性的检测值。
共性:
都是线性的,即用每个像素的邻域的线性组合来替代这个像素。
都具有平移不变性(shift-invariant),即在图像的每位位置都执行同样的操作。
1.2.4.滤波
1.2.4.1.频率(frequency)
频率(frequency)是波动快慢的指标。图像就是颜色的波动:波动大,就是颜色逐渐变化;波动小,就是颜色平滑过渡。
大多数图片既有高频成分又有低频成分,色彩剧烈变化的地方,就是图像的低频区域;颜色稳定平滑的地方,就是低频区域。
1.2.4.2.滤波器(Filter)
定义:由特定公式导出的前馈核。
规则要求:
1)滤波器的大小必须是奇数,这样它才有一个中心计算机视觉 图像形成,例如3x3,5x5或者7x7。有中心了,也有了半径的称呼,例如5x5大小的核的直径就是2。
2)滤波器矩阵所有的元素之和需要要等于1,这是为了确保滤波器前后图像的色温保持不变。当然了,这不是硬性要求了。
3)即使滤波器矩阵所有元素之和小于1,那么滤波后的图像经常比原图像更亮,反之,如果大于1,那么受到的图像经常变暗。如果和为0,图像不会变黑,但也会特别暗。
4)针对滤波后的结构,可能会发生负数以及多于255的数值。对这些状况,我们将它们直接截断到0和255之间即可。对于负数,也可以取绝对值。
1.2.4.3.高通滤波器(HighPassFilter)
作用:边缘提取与提升。边缘区域的灰度变换加大,也就是频率较高。所以,对于高通滤波,边缘部份将被保留,非边缘部份将被过滤。常见的高通滤波器有:Sobel,Laplacian等。
Sobel边缘检测算子
Sobel算子是一个离散微分算子(discretedifferentiationoperator)。它用来推导图像灰度函数的近似梯度。
用
近似计算一阶差分。
排序后
可提出系数[-1,0,1]。
二维情况下就是:
Prewitt边缘检测算子
中心点f(x,y)是重点考虑的,它的权重需要多一些,所以改进成以下这种的:
Sobel边缘检测算子
在图像的每一点,结合以上两个结果求出近似梯度:
有时也用以下的简单的公式代替:
Laplacian边缘检测算子
二阶微分算子
得到四邻域的卷积核:
同理可得八个邻域的卷积核:
1.2.4.4.低通滤波器(LowPassFilter)
作用:去噪声和模糊化,边缘平滑,边缘区域将被平滑过渡。
均值滤波器(BoxFilter)
这个滤波器是一个平滑图像的滤波器,它用一个点邻域内像素的平均灰度值来替代该点的灰度
高斯(模糊)滤波器
要使图像更加模糊,可以将其与一个二维高斯滤波器做张量:
离散的高斯卷积核H:(2k+1)×(2k+1)维,其元素计算方式为:
再将权系数归一化,即确保:
方差越大,滤波后的图像越平滑。
1.2.4.5.图像缩放滤波器
图像的滤镜和边缘检测很像,首先找到边缘,然后把边缘加到原本的图像上方,这样就提升了图像的边缘,使图像看上去非常锐利了。这二者操作统一起来就是锐化滤波器了,也就是在边缘检测滤波器的基础上,再在中心的位置加1,这样滤波后的图像经常和原始的图像具有相同的亮度了,但是会变得锐利。
我们把核加大,就可以受到非常精细的锐化效果:
此外,下面的滤波器会更指出边缘:
主要是指出图像的细节。最简洁的3x3的遮罩滤波器如下:
实际上是计算当前点和周边点的区别,然后将这个差异加到原本的位置上。另外,中间点的权值要比所有的权值和小于1,意味着这个像素要保持原本的值。
1.2.5.傅里叶变换(FourierTransform)
从物理效果看,傅里叶变换是将图像从空间域转换到速率域,其逆变换是将图像从速率域转换到空间域。换句其实,傅里叶变换的物理含义是将图像的明度分布变量变换为图象的频度分布变量。
1.3.基本问题
1.3.1.边缘检测(EdgeDetection)
边缘检测的目的是测试图像中的不连续部分。直观来讲,图像的大个别语义学和颜色信息可以在图像边缘被编码。边缘可以帮助我们提取信息、识别物体、恢复几何和角度。
图片上的边缘主要有四个也许的来源:不连续的表面(表面角度突然改变)、深度不连续(一个表面重叠在另一个上)、表面形状不连续、光照不连续(明/暗)。从数学上来看,梯度大的位置为边缘。
Canny边缘检测算法
可以分为下面5个方法:
使用高斯滤波器,以平滑图像,滤除噪声。
计算图像中每个像素点的梯度密度和方向。
应用非极大值(Non-MaximumSuppression)诱导,以防止边缘检测带来的杂散响应。
应用双阈值(Double-Threshold)测量来确认真实的和潜在的边缘。
通过抑制孤立的弱边缘最后完成边缘检测。
1.3.2.角点检测(CornerDetection)
1.3.2.1.Harris角点检测
角点检测最原始的设想就是取某个像素的一个邻域窗口(w),当这个窗口在各个方向上进行小范围移动[u,v]时,观察窗口内平均的像素灰度值的变化:
利用泰勒展开上式可以化为:
其中结构张量:
通过判定M的两个特点值λ1,λ2的状况,就可以区别出‘flat’,‘edge’,‘corner’这三种区域:
角点:λ1,λ2都非常大,数值相同,说明E在每个方向都增大。
边缘:λ1远高于λ2,或者λ2远高于λ1,说明E仅在一个方向上增加。
平坦区:λ1,λ2都很小,说明E在每个方向上几乎都不变。
还可以借助角点响应变量θ,来判断角点:
其中α是个系数,属于0.04-0.06。
角点:R为大数值整数。
边缘:R为大数值负数。
平坦区:绝对值R是小数值。
缺陷:图像尺度会妨碍结果。
1.3.2.2.Shi-Tomasi算法
Shi-Tomasi算法是Harris算法的优化:若两个特点值中较小的一个小于最小阈值,则会受到强角点。
1.3.2.3.SUSAN算法
SUSAN算子的模版与常规卷积算法的正方形模板不同,它采取一种近似圆形的模板,用方形模板在图像上移动,模板内部每个图像像素点的灰阶值都和模板中心像素的灰度值作非常,若模板内某个像素的灰度与模板中心像素(核)灰度的残差小于一定值,则觉得该点与核带有同样(或相似)的灰度。由满足这一条件的像素构成的区域称为吸收核同值区(UnivalueSegmentAssimilatingNucleus,USAN)。
1.3.2.4.FAST算法
过程:
初步筛选,如右图图示,将像素点P1、P5、P9、P13的像素值与中心像素点P的像素值进行非常,
如果至少有三个像素点的像素值都小于Ip+t,或者都大于Ip-t,则像素点P可能是角点,并在方法2中进一步判定,否则像素点P不是角点。
进一步判断,将像素点P周围的16个像素点的像素值与像素点P的像素值进行非常,如果有连续12个像素点的像素值都小于Ip+t,或者都小于Ip-
t,则像素点P是角点。
非极大抑制,首先计算角点的FAST得分(记为V),也就是上一步中12个连续像素点的像素值与该点像素值的阀值的绝对值之和,按如下公式推导;但是,对于相邻的两个角点,比较两者的FAST得分,保留得分较大的角点。
缺陷:
检测效果依赖于阈值t。
当图像中存在噪声点时,检测效果不理想。
不形成多尺度特性,所以不具备尺度不变性。
特征点没有方向性,这样会丧失旋转不变性。
1.3.3.识别兴趣点
SIFT检测器(ScaleInvariantFeatureTransform尺度不变特性转换)
Sfit算法的实质是在不同的尺度空间上查找关键点(特点点),计算关键点的大小、方向、尺度信息,利用这种信息构成关键点对特性点进行表述的弊端。Sift所查找的关键点都是一些非常突显,不会因光照,仿射便函和串扰等原因而变换的“稳定”特征点,如角点、边缘点、暗区的看点以及亮区的暗点等。
1.4.任务
1.4.1.物体识别/分类
图像分类,该任务必须我们对发生在某幅图像中的物体做标注。比如一共有1000个物体类,对一幅图中所有物体来说,某个物体要么有,要么没有。可实现:输入一幅测试照片,输出该截图中物体类型的候选集。
1.4.2.目标检测
物体检测,包含两个问题,一是判定属于某个特定类的物体是否发生在图中;二是对该物体定位,定位常用表征就是物体的界限框。可实现:输入测试图片,输出检测到的物体类型和位置。
主流算法,分为两类:two-stage,one-stage。
two-stage:先由算法生成一系列成为样本的候选框proposal,再借助卷积神经网络进行样本分类。如FastR-CNN。
one-stage:不应该regionproposal阶段,直接造成物体的类型概率和位置坐标值,经过单次测试即可直接受到最后的检测结果,因此有着更快的检测速度,比较典型的算法如YOLO,SSD,Retina-Net。
1.4.3.图像分割
图像分割是一项稍微复杂的任务,其目的是将图像的各个像素映射到其对应的各个类型。
1.5.需要的知识
数学:概率论,微积分,线性代数,凸优化
编程语言:C++,python
图像处理基础
机器学习,深度学习神经网络,以及开源框架
技能树:
1.6.参考资料
学习人工智能的小伙伴们看这里(腾讯文档)能获得以下内容。资源有限,需要的快来领取哦。
①10G教学视频包(附课件+代码)
②AI人工智能:54份市场重磅报告汇总
③能写进简历的民企级项目实战。
④100篇+深度学习论文合辑
⑤人工智能必读书籍
⑥专属学习路径规划
⑦不定期大神直播,学习和问题解答
⑧拿来就能跑通的论文复现代码讲解及数据集
认为好,就不要吝啬你的三连哦,这样我才有动力持续升级哦
转载原创文章请注明,转载自设计培训_平面设计_品牌设计_美工学习_视觉设计_小白UI设计师,原文地址:http://zfbbb.com/?id=5025