人脸检测系统的设计与实现_第1页
人脸检测系统的设计与实现_第2页
人脸检测系统的设计与实现_第3页
人脸检测系统的设计与实现_第4页
人脸检测系统的设计与实现_第5页
已阅读5页,还剩66页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

人脸检技的展景

人检技近几年来计算机科学在人机交互领域的研究得到了长足的发展主要的研究方向包括人脸检测及识别语音识别性别分类种族分类等这些研究在日常的身份认证,人口统计,社会调查,实时监测,刑事侦查等各种领域都有着广泛的应用。人脸检测作为其中一个重要的成员,其应用范围也非常广泛,除了可以应用到人脸识别中,还可以广泛应用于基于图像内容的数据库和图像检索、基于内容的图像或视频压缩、智能人机交互、新一代人机交互界面和安全监控系统等许多方面。因而研究人脸检测技术具有十分重要的意义。新一代视频编码标准MPEG-4引入了基于内容编码的概念,人的脸部有着丰富的表情和变化,在人和人交流的过程之中传递着大量信息。因此,在基于内容的编码中,人脸毫无疑问的成为感兴趣的区域。我们需要在每一帧图像中定位出人脸,并把它从编码图像中分割出来,采用低压缩率的编码;其它非感兴趣区(如背景)就采用压缩率较高的编码方法。目前这种编码方式在可视电话Internet视频聊天、视频会议等方面已经开始应用。1.1.2人脸检的念难人脸检测是指对于一幅任意给定的图像采用一定的策略对其进行搜索以确定其中是否含有人脸,如果是则返回人脸的位置、大小和姿态。人脸检测主要分为动态人脸检测和静态人脸检测两类,对于动态人脸检测,检测速度占主导地位,其次是检测率和误检率,对于静态人脸检测则要求检测率和误检率相对比较严格脸检测是一个复杂的具有挑战性的模式检测问题主要的难点有两方面,一方面是由于人脸内在的变化所引起(1)人脸具有相当复杂的细节变化,不同的外貌如脸形、肤色等,不同的表情如眼、嘴的开与闭等;脸的遮挡,如眼镜、头发和头部饰物以及其他外部物体等;另一方面由于外在条件变化所引起:(1)由于成像角度的不同造成人脸的多姿态,如平面内旋转、深度旋转以及上下旋转,其中深度旋转影响较大;光照的影响,如图像中的亮度、对比度的变化和阴影等;(3)图像的成像条件,如摄像设备的焦距、成像距离,图像获得的途径等等。这些困难都为解决人脸检测问题造成了难度。如果能够找到一些相关的算法并能在应用过程中达到实施将为成功构造出具有实际应用价值的人脸检测与跟踪系统提供保证。//N(NN)//N(NN)/1.1.3人脸检的究状人脸检测在科学技术和实际的安全应用上有着十分诱人的前景和潜在的经济价值,从而激发了世界上广大科研工作者及相关商家的浓厚兴趣在很多国家已经开展了大量相关项目的研究。国内外对人脸检测问题的研究很多并取得了一定的成果,主要是美国、欧洲国家、日本、新加坡、韩国等,著名的研究机构有美国MIT的Medialab、AI,CMU的国的DepartmentofEngineeringinof国内开展人脸检测研究的主要单位有清华大学哈尔滨工业大学、北京工业大,中科院计算所,中科院自动化所,复旦大学,南京理工大学等,都取得了一定的成果。MPEG7标准组织已经建立了人脸识别草案小组脸检测算法也是一项征集的内容。随着人脸检测研究的深入,国际上发表的有关论文数量也大幅度增长,如IEEE的FG(IEEEInternationalFaceGesture、ImageProcessing)、CVPR(ConferenceonRecognition)等重要国际会议上每年都有大量关于人脸检测的论文各种各样的人脸检测方法层出不穷,有的在前人方法的基础上继续深入研究,也有的采用综合一些基本方法进行检测。1.1.4人脸检结的价准评价标准主要有:检测率(),误检率(),检测速度(),鲁棒性(robustness)。检测率:被正确检测到的人脸数与原图像内包含的人脸数的比值。检测率越高,说明检测系统对人脸的接受能力越强。误检率(或虚警率、误报率检为人脸的非人脸子窗口数与原图像内被检测的所有非人脸子窗口数的比值。假设原图像内被检测的所有非人脸子窗口数为N被误检为人脸的非人脸子窗口数为N,那么误检率=

N

N

再假设原图像内被检测的所有子窗口数为N原图像内包含人脸数NN+N么误检率也等于1,1当N≥N时,误检率近似于。检测率无法反映系统对非人脸的排除能力,有可能出现这种情况:所有人脸都被检测到,同时很多非人脸区域也被误认为是人脸。因此引入误检率来衡量系统对非人脸样本的排除能力。误检率越低,说明检测系统对非人脸的排除能力越强。检测速度:大部分应用领域需要在线实时地检测人脸,如人脸识别、人脸跟踪、可编程视频监控等。在检测率和误检率达到满意的前提下,检测速度越快越好。鲁棒性:在各种条件下,检测系统的适应能力。基于肤色模型方法无法检测灰度图像;大部分检测系统无法检测任意角度旋转的人脸,一般把旋转角度限制在一定范围内;有些检测方法受复杂背景的干扰,在背景较简单时效果好,反之较差。这四个标准有些是互相制约的,如检测率和误检率就经常需要权衡,实践表明误检率随着检测率的提高而提高,检测率随着误检率的降低而降低。很多方法,如神经网络方法,检测率已经达到90%以上,误检率也不高,但检测速度慢是其最大毛病;而模板匹配方法检测速度虽然快,但其距离函数在不同环境下产生的效果差异很大,如背景简单时检测效果好,背景复杂时效果很差,这就是其鲁棒性不好的表现;肤色模型也有鲁棒性不好的毛病,因为肤色容易受到复杂背景、光线等条件的影响,而且对灰度图无能为力。1.2

人检图库人脸检测图像数据库是人脸检测算法研究、开发、评测的基础。目前人脸检测领域常用的人脸数据库主要有:①CMU/MIT正脸检测数据库由CMU人脸检测项目创建来为正面人脸检测算法提供评估的一个人脸数据集,最初来自于基于神经网络的人脸检测工作。数据集中的人脸来自CMUMIT。数据集由四个部分组成,包括三个竖直的正面人脸数据集与一个旋转的正面脸数据集。详细信息参见:/idb/html/face/frontal_images/index.html。②CMU侧脸检测数据库由CMU人脸检测项目创建是用来为正面人脸和侧面人脸检测算法提供评估的一个人脸据集。详细信息参见/idb/html/face/profileimaaes/index.html。第章2.1

图的层理图的处我们知道图像处理中,在大多数的情况下由于受到客观因素,如:光照、环境的影响,输入图像可能出现颜色分布不均衡、亮度过高或过低或者噪声过大的情况,使得图像的质量不很理想,因此必须经过一些处理过程才能输入到处理系统中,这些处理环节就被称为图像的预处理过程。图像的预处理也是一个去除无用信息,提高算法效率和速度的过程。预处理做得好可以减少后面核心算法中的工作量,相反如果缺少必要的预处理过程,则会对有可能造成工作量的增大和效率的降低,更有可能决定算法的有效性。在本系统中共涉及到图像增强、图像滤波等过程,下面给予讨论。在图像的生成、传输或变换的过程中,由于多种因素的影响,会导致图像质量的下降。图像增强就在于修正这种降质,达到以下两个目的:改善图像的视觉效果,提高图像的清晰度;将图像转换成一种更适合人或机器分析处理的形式。总之,就是通过处理来有选择的突出图像中感兴趣的信息,抑制无用的信息,以提高图像的有用价值。图像的增强方法按作用域可分为空域法和频域法两类。本文主要采用空域法,下面对此法经行详细介绍:一幅数字图f处理后变为另一幅新的图g理方法就成为空域处理法。在二维空_上进行增强处理,主要是在灰度级上做文章,即利用灰度对比度增强的方法进行灰度级映射变换主要包括灰度线性变化fg线性关系。这是在曝光不足或曝光过度的情况下,图像的灰度值会局限在一个较小的范围内,或曝光虽然充分,但图像中我们感兴趣部分的灰度值范围小,层次少,此时的图像可能是一个模糊、灰度层次不清楚的图像。利用这种变换的目的主要是为了突出图像中感兴趣的灰度区域或目标而相对抑制不感兴趣的区域灰度非线性变换,则是f系,如:对数变换、指数变换等。以上的变换基本上都是像素“点对的变换现在应用较多的是基于图像直方图的一种方法。下面对这一技术进行简单介绍。灰度直方图是灰度级分布的函数,它表示图像中具有每种灰度级的像素的个数,反映图像中每种灰度出现的概率。从图像上来讲,它是一维曲线,表征了图像的最基本的统计特性。通过直方图可以清楚的了解图像对应的动态范围的情况,也可以了解到图像的主要集中范围。下面举一个简单的例子来说明图像的灰度直方图。如2.1所示,假设有一幅如图所示的4×4小、具有4灰度级(,1,2,3)的图像,则图像的灰度分布图如2.2所示。X(r)011221222

864333

2

灰度级

)0Y

123图2.1灰度图像

图2.2灰度分布图当图像由于光照条件较差而过亮或者过暗时,我们可以对直方图进行调整,对图像进行增强处理方图均衡化”技术是现在应用比较多的处理方法,它的基本原理是:对图像中像素个数较多的灰度值进行展宽,而对像素个数较少的灰度值进行归并,从而达到清晰图像的目的。以图像灰r的积累分布函数为映射函数,从而产生灰度级具有均匀密度的图像,如2.3所示。j

jOO

rR

j

Rjrr图2.3直方图均衡化2.2

图的值2.2.1边缘检数字图像的边缘检测是图像分割、目标区域识别、区域形状提取等图像分析领域十分重要的基础,在工程应用中占有十分重要的地位。物体的边缘是以图下个局部特征不连续的形式出现的,也就是指图像局部亮度变化最显著的部分,例如灰度值的变换、颜色的突变、纹理结构的突变等,同时物体的边缘也是不同区域的分界处。边缘检测就是要确定图像中有无边缘点,若有还要进一步确定其位置。具体实施时可分为一下两步。首先对图像中的每一个像素施以检测算子然后根据事先确定的准则对检测算子的输出进行判定,确定该像素点是否为边缘点。采用的具体检测算子和判定准则取决于实际应用环境及被检测的边缘类型。边缘检测的方法有很多,主要有以下几种第一种方法是空域微分算子,也就是传统的边缘检测方法。由于边缘是图像上灰度变化最剧烈的地方,对应连续情形就是函数梯度较大的地方,所以研究比较好的求导算子就成为一种边缘检测的思路。传统的边缘检测就是利用这个特点,对图像各个像素点进行一阶活二阶微分来确定边缘像素点。一阶微分图像的峰值处对应着图像的边缘点;二阶微分图像的过零点处对应着图像的边缘点边缘检测算子检查每个像素的领域并对灰度变化率进行量化,通常也包括着方向的确定。目前已经提出许多种算子,例如Prewitt算子、Robert算子、Sobel算子等就是比较简单而且常用的边缘检测算子。第二种方法是拟合曲面。拟合曲面是一种比较直观的方法,该方法利用当前像素领域中的一些像素值拟合一个曲面,然后求这个连续曲面在当前像素出的梯度。从统计角度来说,可以通过回归分析得到一个曲面,然后做类似的处理。第三种方法就是小波多尺度边缘检测20世纪90年代随着小波分析的迅速发展,小波开始用于边缘检测。作为研究非平稳信号的工具,小波检测在边缘检测方面具有得天独厚的优势,Mallat在这一方面做了不少的工作。第四种方法是基于数学形态学的边缘检测。形态学运算时物体形状集合与结构元素之间的相互作用,对边缘方向不敏感,并能在很大程度上抑制噪声和探测真正的边缘,同时数态特征上具有独特的优势。因此,将数学形态学应用于边缘检测,既能有效的滤除噪声,又可保留图像中的原有信息是边缘检测的一个重大突破前较成熟的有基于多尺度形态学的边缘检测、基于均衡化和数学形态学的组合边缘检测、基于偏微分方程和形态学的边缘检测等。本文主要采用边缘检测算子来进行检测,下面介绍几种常用的传统的边缘检测算子。1、Prewitt算子式中01式中01,00Prewitt算子用卷积模板来描述:G(i,j)PPy

(2-1)01

1

x01

,前者为水平模板,后者为垂直模板,图像中的每个点都用这两个模板进行卷积最大值作为输出终产生一幅边缘幅度图像。2、Kirsch算子Kirsch算子使用8个模板来确定梯度的幅值和方向,故又称为方向算子,通过一组模板分别计算不同方向上的差分值,取其中最大的值作为边缘强度,而将与之对应的方向作为边缘的方向。假设原始图像子图像如图2.4所示。则边缘的梯度大小为a

a

2

aa

4

(i,j)

a0a

5

a

6

a图2.43×3子图像示意图(ij)1,maxst:kk

(2-2)式中

sa

a

t

上式中的下标超过7就用8去除并取余数7际上就是使用了个模板。Kirsch算子实现起来相对说稍微麻烦一些,它采用个模板对图像的每个像素点进行卷积求导数,这8个模板代表8个方向,分别对图像上的8个特定边缘方向做出最大的响应,运算中取所有8个方向的最大值作为图像的边缘输出。3、LOG(Laplacian-Gauss算子当使用一阶导数的边缘检测算子时,如果所求的一阶导数高于某一阈值,则确定该点为边缘点,这样做会导致检测的边缘点太多。一种更好的方法就是求梯度局部最大值对应的点,并认定它们是边缘点。通过去除一阶导数的非局部最大值,可以检测出更精确的边缘。一阶导数的局部最大值对应着二阶导数的零交叉点,通过找图像强度的二阶导数的零交叉点就能确定精确地边缘点。在二维空间中,一种常用的二阶导数算子是2222Laplacian算子。但是Laplacian算子有两个缺点,其一是边缘的方向信息呗丢失,其二是Laplacian算子是二阶差分算子,因此双倍加强了图像噪声的影响。由于图像强度二阶导数的零交叉点求边缘点算法对噪声十分敏感,为了消除噪声影响,和Hildreth将Gaussian滤波器和Laplacian边缘检测结合在一起成了Laplacianofgaussian)算法。即先用高斯函数对图像进行平滑,然后再用拉普拉斯算子进行运算,得到Laplacian-Gauss算法,它使用一个墨西哥草帽函数形式。22(x,))exp()

xx2)2

(2-3)这种方法的特点是图像首先与高斯滤波器进行卷积既平滑了图像又降低了噪声和较小的结构组织将被滤除。4、Sobel算子在图像处理中,一阶导数就是通过梯度来实现的,因此,利用一阶导数检测边缘点的方法就称为Sobel算子法。图像函f个具有方向和大小矢量,即(x,

ij

(2-4)

方向的变化率可由下式给出

(2-5)变化率最大方向为

(2-6)梯度值的大小为g(x,y

(2-7)所有基于梯度的边缘检测器之间的根本区别就是算子应用的方向以及在这些方向上逼近图像一维导数的方式和将这些近视值合成为梯度幅度的方式。22当我们考虑数子图像的离散域时,可将图像的一阶差分直接替代图像函数的偏导数。二维离散图像函数在x方向的一阶差分定义为f

(2-8)y方向的一阶差分定义为f

(2-9)根据上面所述的原理,索贝尔sobel提出一种将方向差分运算和局部平均运算相结合的方法,即sobel算子。该算子是在f×3的领域上计算x和y方向上的偏微分,即SxSv(2-10)实际上,上式应用f像强度的加权平均插值。其梯度的大小为(x,ySxy或取绝对值(x,yxy本文采用了后面一种梯度近视值。

(2-11)(2-12)在实际的应用中,通常是利用简单的模板卷积来计算方向差分,不同的算子对应不同的模板卷积它们产生的两个偏导数在图像一个点上用均方值或绝对值求和的形式结合起来,下图给出了sobel算子常采用的梯度模板:01

1

015、Canny算子在高斯噪声中,一个典型的边缘代表一个阶跃的强度变化。根据这个模型,好的边缘检测算子应该有3个指标:第一是低失误率,即真正的边缘点尽可能少的丢失,同时又要尽可能避免将非边缘检测为边缘;第二是高位置精度,检测的边缘应尽可能接近真实的边缘;第三是对每一个边缘点有唯一的响应,得到单像素宽度的边缘。为此ohnCanny提出了边缘检测算子的如下3个准则。(1)信噪比准则信噪比越大,提取的边缘质量越高。信噪比NR定义如下:(dx(dx

()h)SNR

(x)

(2-13)式中G(x)代表边缘函数(x)代表宽度的滤波器的脉冲响应代表高斯噪声的均一方差。(2)定位精度准则边缘定位精度L定义如下:dxL

h

2

(x)

(2-14)式Gh

别代(x)hx)的导数L越大表明定位精度越高。D(f

(3)单边缘响应准则为了保证单边缘只有一个响应,检测算子的脉冲响应导数的零交叉点平均距离足:(f

(2-15)式中x)的二阶导数。将Canny的3个准则相结合可以获得最优的检测算子,在此基础上,设计了一个边缘检测算法,其具体步骤如下:首先用2D高斯滤波模板进行卷积以平滑图像利用微分算子(比如算子、Sobel算子),计算梯度的幅值和方向。、③对梯度幅值进行非极大值抑制。即遍历图像,若某个像素的灰度值与其梯度方向上的前后两个像素的灰度值相比不是最大,那么这个像素值置为,即不是边缘。④使用双阈值算法检测和连接边缘。即使用累计直方图计算两个阈值,凡是大于高阈值的一定是边缘;凡是小于低阈值的一定不是边缘。如果检测的结果大于低阈值但又小于高阈值,那就要看这个像素的邻接像素中有没有超过高阈值的边缘像素,如果有,则该像素是边缘,否则就不是边缘。图2.5是应用于上述算法所得到的实验结果图中我们可以看到不同算子对人脸检测和定位所取到的效果。本文主要采用sobel子进行检测。图2.5

几种梯度算子检测边缘点的示例2.2.2阈值的择利用阈值分割图像以及对原始图像进行二值化处理是图像处理的基本问题在图像分析和识别中起到了重要的作用。但是由于图像处理对象和目的的千差万别,在实际工作中常常遇到这样的现象,即一种阈值的选择方法对某些应用问题很有用,而对另一些问题可能变得很不适应。所以,木论文中在边缘检测的阈值的选择问题上,还需要以我们研究的图像对象的情况来确定。常见的阈值确定方法有以下几种:1)边界灰度作为分割阈值边界的灰度通常介于相邻两个区域的平均灰度之间,可以作为图像分割的阈值。在通过其他途径获取边界灰度后,该方法简便易行。如果事先用微分算子或梯度算子处理过的图像,则该方法不再适应。2)根据直方图谷点确定阈值如果目标区域和背景区域在灰度上有较明显的差异那么该图像的灰度直方图将呈现双峰—谷状中一个峰值对应于目标的中心灰度一个峰值对应背景的中心灰度。由于目标边界点较少且其灰度介于他们之间,所以双峰之间的谷点对应边界的灰度,可以将谷点的灰度作为分割阈值,获得较好的分割效果。需要注意的是由于直方图是各级灰度的像素统计如果没有图像其他方面的知识,只靠直方图分割时不可能的。如2.6所示,直方图谷点于最佳分割阈值之间总是存在误差,有时甚至无法确定,如图2.6(f)所示。最佳阈值

最佳阈值

最佳阈值()

(b

(c)最佳阈值常规阈值

最佳阈值常规阈值

常规阈值最佳阈值(d()(f)图26

第一行:目标和背景的灰度分布:第二行:与第一行对应的图像直方图3)统计判决方法确定阈值统计判决法是指利用统计学方法确定最佳分割阈值。例如:利用误差最小准则、可能性最大准则和方差最大准则等。本文主要采用最小误判概率准则确定最佳分割阈值。设图像含有目标和背景,目标的平均灰度高于背景的平均灰度。目标点的灰度分布函p

,背景点的灰度分布密度函数为q

2

,则(x

2

21

(2-16)q(x

(2-17)设目标点的个数占图像总像素数十万百分比

,背景点位

。那么这幅图像的灰度tttt分布密度函数为(x

(2-18)如果以阈值t进行分割,灰度小于t的像点座位背景,否则座位目标点,于是将目标点误判为背景点的概率为

-

()dx

(2-19)把背景点误判为目标点的概率为

t

(x)

(2-20)选取的阈值t应使总的误判率

-

p(xt

q(x)dx

(2-21)最小。对t求导并令结果为零,即令

(t)

(2-22)即(t212

(2-23)2

=2

=2

时1若先验概率已知,例如=,则有2

(2-24)

2

(2-25)2.2.3边界跟图像的轮廓(边界)跟踪与边缘检测是密切相关的,因为轮廓跟踪实质上就是沿着图像的外部边缘“走”一圈。轮廓跟踪也称为边缘点连接,是一种基于梯度的图像分割法,是指从梯度图中一个边界点出发,一次通过对前一个边界点的考察而逐步确定下一个信得边界点,并将它们连接进而逐步检测初步边界的方法。一般轮廓跟踪算法具有很好的抗噪性,产生的边界具有很好的刚性。图形的轮廓跟踪技术与图像的边界提起技术是不同的,边界提取既要提取图像的外部边缘又要提取图像的内部边缘,而图像的轮廓跟踪技术只对图像的外部边缘进行跟踪因此轮廓跟踪的目的主要是将目标与背景区分出来。按照边缘的特点,有的边界取正值(阶跃边缘一阶导数为正值,有的取负值(房顶型边缘二阶导数为负值的边界值取(阶跃边缘二阶导数房顶型一阶导数均过零点因此轮廓跟踪方法按边缘特点分,有极大跟踪法、极小跟踪法、极大—极小跟踪法与过零点跟踪法。实际跟踪比较复杂,跟踪准则要随问题内容而定,准则不同,跟踪方法也不同。具体轮廓跟踪过程大致分为以下三步:确定轮廓跟踪的起始边界点。根据算法的不同,选择一个或多个边缘点作为搜索的起始边缘点。选择一合适的数据结构和搜索策略根据已发现的边界点确定下一个检测目标并对其进行检测。制定出终止搜索的准则(一般是将形成闭合边界作为终止条件,在满足终止条件时结束搜索。常用的轮廓跟踪技术有两种,一种是探测法,一种是梯度图法。下面主要介绍梯度图法的轮廓跟踪技术。对于一个给定目标的人简单图像,先计算出梯度图。可通过在梯度图中搜索梯度最大的点来作为轮廓的起始点。第二点可以再其前一点的—领域中寻找,一般是选择梯度最大的点作为第二个边界点由于根据前一个点P和当前点C的相互位置可以大致确定出边缘的走向,因此在对下一点的搜寻时不必在对当前点的—领域进行计算比较,而可以根据前一点P和当前点C在位置上的不同得到如图2.7所示的8种可能的方向。为了保证边界的光滑性每次只对P与C连线方向上成扇形的个候选边缘像素进行梯度值计算及比较,并取最大梯度值最为下一个边界点。这样将减少相当多的计算量。得到的边界8—连通。前一点P

当前点

候选点N图2.7

各种梯度图2.2.4图像的一当对图像进行基于椭圆形整体特征和从于分布特征的检测之后为了后面进行人脸识别处理的方便,我们需要对人脸!像的尺度和灰度进行归一化处理。尺度归一化主要是依据人脸图像中特征点的位置人脸图像中分布特征的尺寸以及我们在后面识别处理过程中所需要的输入图像尺寸,三方面的要求进行归一化处理。因为原始图像的尺寸有可能根据实际情况存在尺度上的不统一,人脸的尺寸也有可能有大有小,所以在归一化的过程中会存在降低分辨率的情况当分辨率降低到一定的水平会造成后面识别处理的难度,所以我们对原始输入图像在尺度上还是有一定的限制的。由于尺度归一化和灰度归一化在于技术实现上比较简单,这里不在叙述。第章

基于算的脸测3.1法发应1984年11月Valiant发表的“PAC”(ProbablyApproximatelyCorrect)learningmodel,Boosting的提出最初来源于这篇文章,在这篇文章中,分别定义了弱学习和强学习算法,弱学习算法是仅比随机猜测略好,准确率不要求很高的一种算法,强学习算法是准确率要求很高的学习算法然而这篇文章并没有给出如何将弱学习和强学习关联起来没有说明是否适合于所有样本空间分布年Schapire首次提出了算法,解决了三个问题(1)目标集只有满足强学习算法的情况下才有弱学习算法;(2)存在弱学习算法适合任何样本空间分布意味着强学习算法也适合任何样本空间分布(3)通过递归方法能够提升弱学习为强学习从而提高分类的准确率。1990年Freund提出了更有效的boosting算法在弱学习算法中需要准确的知道训练样本的先验知识,事实上我们并不能准确的知道每次训练样本的先验知识,因此在实际应用上有一定的局限性。1995年FreundandSchapire了AdaBoostAdaBoost为AdaptiveBoosting算法之以取这个名字是因为它自适应的调整弱学习算法的错误率,使经过若干次递归后整体错误率能够达到我们的期望值,同时,不需要准确知道样本空间分布,每次弱学习后调整样本空间分布,更新每个训练样本的权重,将样本空间中正确分类的样本权重保持不变,而将被错误分类的样本权重提高,这样下次弱学习时能更关注这些错分类的样本。最初文章中都是将AdaBoost算法应用于字符识别上,因其特征空间维数相对比较少些随着算法的不断成熟AdaBoost算法已成为机器学习的一大亮点能运用到各个领域,比如手写体数字识别,人脸检测,人脸识别,车牌字符识别,数据挖掘,虹膜识别等等。2001年发表了一篇基于AdaBoost算法的人脸检测器,这篇文章主要有三大贡献:(1)引入“积分图”概念,使得检测器中特征的计算容易快速(2)基于AdaBoost的学习算法能从个很大的特征集中选择很小的一部分关键的特征来产生一个及其有效的分类器,它最终形成的强分类器的训练错误率接近于零,而且具有很好的推广性;(3)级联的检测器中不断增加更多的强分类器,这样可以很快排除背景区域,从而节约出时间用于对那些更像人脸的区域进行计算。这个人脸检测系统的检测率可以和当时最好的算法匹敌,而且检测速度高达帧/秒。年StanZ.Li提出了一种基于多视角的人脸检测算法。通过利用FloatBoost将学到的弱分类器构造成一个强分类器,该系统是一个从粗到精、从简单到复杂的金字塔型的人脸检测系统,同基于的算法相比,它能在提高人脸检测速度的同时提高检测的精度。为了检测具有各种深度旋转角度的人脸,他们将各种角度的人脸进行了分类。此外,他们还提出了一种实时的多视角的人脸检测、跟踪、姿态估计、对齐和识别的综合系统。年RainerLienhartViola的基础上又提出了一些新的旋Haar-like特征,他通过学习得到的系统能够用于旋转人脸的快速检测,同时也能使平均的误检率降低10%。此外他还研究了一些其他Boosting算法,如:离散(DiscreteAdaboost),实值的(Real和平的(GentleAdaboost),通过比较得出基于平缓(GentleAdaboost)效果较好。年C.Liu人提出了一种基于Boosting(KLB)法构造的一个紧凑的(compact)分类器。该算法解决了算法中存在的两个问题:第一,怎样根据学习得到的系数对弱分类器进行最佳的组合其解决的策略是通过迭代调整系数以最小化人脸检测的错误率它能保证在特征不断增多的情况下检测的错误率不会增加;第二,怎样选择最好的弱分类器或特征,其策略是寻找使人脸和非人脸之间的KL散度的对称性最大化的KL特征,通过最优的特征来构造最优的分类器。年JianxinWu等人针对利用AdaBoost算法选择特征训练时间长的缺点提出了前向特征选择方,两者主要区别在于弱分类器选择的方法,给定所有样本的全部初始特征值集AdaBoost法需要每次从特征值集中选择错误率最小的特征作为一个弱分类器,由于利用AdaBoost算法更新了样本权重,所以每次样本的特征值集分布会有所改变,所以选择下一个弱分类器时要重新挑选;而前向特征选择只要从初始特征值集中挑选出满足检测率和误检率条件的特征值集,不需要更新权重,这种方法虽然缩短了训练时间,但是最终选择的弱分类器的个数要远远超过利用提升机制选择的特征,增加了检测时间,原因在于这种方法是一种次优选择特征的方法。年Jianxin等人又发表了一篇基于线性非对称分类的多层检测器,线性非对称主要是考虑到传统AdaBoost算法中并没有明确给出最终得到的强分类器所能达到的检测率和误检率,而注重点在寻找错误率最小的特征,没有考虑到每次找到的特征如何有效的组合达到较高的检测率和较低的误检率该文根据每个强分类器的检测率和误检率,通过数学公式推导出如何有效组合各个弱分类器的加权和公式。3.2

人检训算3.2.1使用Haar-like特的人检算Viola和Jones于2001发表文章,成为人脸检测速度提高的转折点Viola本人也在人脸检测的速度提高方面做出了突出贡献他通过使用特征和积分图快速算法,并综合Adaboost和Cascade算法实现了实时的人脸检测系统,使得人脸检测从真正意义上走向了实用。图3.1给出了使用算法进行人脸检测的流程图。人脸样本

训练过程非脸本

检测过程输入图像Adaboost算法的训练过程

Adaboost算法的检测过程生成分类器图3.1

输出结果基于Adaboost算法的人脸检测流程图(1)Haar-like特征和积分图Haar-like特征是一种线性变换特征,曾经被等用来做物体检测。由于其计算代价相当小,所以非常适合用来抽取人脸特征。一组典型Haar-like特征由图3.2所示,每种特征都由大小及排列方式相同的矩形组成。对于一个由两个矩形框组成的Haar-like特征,其特征的值就是两个矩形内部像素值之和的差(白色减黑色部分对于三个矩形框组成的Haar-like特征,其特征的值就是两个外部的白色矩形框内的像素值之和减去两倍的中间黑色矩形框内的像素值之和;对于四个矩形框组成的Haar-like特征,其特征的值就是主对角的两个矩形框内的像素值之和与副对角线两个矩形框内的像素值之和的差。为了提高计算Haar-like特征值的速度Viola等提出了积分图(IntegralImage),,,,的概念。一幅图像产生的积分图,坐标(x,y)位置的积分图元素的值即为由原图点的左上方的矩形围成的所有像素值的和(图ii(,y

i(x,y)

(3-1)x,y其ii的值i图像的值。ii(x,y)可以通过下式迭代进行计算:sii

(3-2)(3-3)其s积分和且幅图像的积分图,只需遍历一次图像即可。图3.2检测窗内的Haar-like特征例子。特征值的求法为白色矩形框内的所有像素点的和减去灰色矩形框中的所有像素点的和。表示的是两个形框的Haar-like特征。表示的是三个矩形框的Haar-like特征。(E)表示的是四个矩形框的特征。通过使用积分图可以非常快速地计算五个简单的特(图3.2由两个矩形构成的特征,其像素和之差可通过六个参考矩形求得;由三个矩形构成的特征可以通过八个参考矩形求得;由四个矩形构成的特征可以通过九个参考矩形求得。如图3.4示:点1的积分图值是矩形框A中所有像素的像素值之和。点2积分图所对应的值为A+B,点3是,4是A+B+C+D,所以D中所有像素值之和可以用计算。图3.3积分图图3.3在点(x,y)的积分图值是由原图x,y)点的左上方的矩形围成的所有像素值的和。图3.4积分图像素值计算(2)Adaboost算法的训练过程上述的Haar-like特征,针对20×20窗口大小的训练数据,可以产生45396个之多的候选特征,但并不是所有特征都对分类有很好的效果。并且,构建一个具有近5个特征生成的弱分类器组合生成的强分类器也是不现实的,因此,我们需要用到Boosting方法来做特征选取并根据选取的特征生成弱分类器最终生成强分类器分类算法中Boosting方法是种新发展起来的重要的方法很多分类算法的性能可以通过连续地分配不同的权值给训练数据,根据带权值的训练数据作分类训练,生成弱分类器,然后再根据这个弱分类器更新训练数据的权值,以此往复,得到理论上分类正确率接近100%的分类器这种结令人惊奇的方法可以用统计原则来解释叫做附加建模和最大似然估计。通过Boosting方法中的方法进行训练可以得到一个由若干个弱分类器组成的强分类器作为最终的分类器。一个弱分类器(x一个特f,一个阀值jj一个指示不等式方向的校验构成:j

j

和jjjjnji1jjjjnji1TtT(xj

ifpf

(3-4)其中x表示图像中一个N*N像素大小的子窗口一个通用的Adaboost学习过程如下:①给出训练样本(x,x,),…,(x,y),其中y={0,1}分别对应于112i负例与正例。②对负例和正例样本分别初始化权

,j

1,其中m和l分别为负例和正例2m样本数③对于每一次迭代,2,…,T:▲

对权值进行归一化,使符合概率分布tti

t,it,j▲对于每一个候选特征j训练一个由此特征生成的弱分类器h,用这个分类器j分类样本,得到分类错误(jijii▲选择使

t

最小的若分类器h

t▲更新权值

i,i

,其e当样x被正确分类时取值为0,被错ii误分类时取值为1,t▲最终的强分类器即为:

t

t(x

t

t

h(otherwise

t

t

(3-5)其logt

1t(3)Cascade级联检测器人脸检测器的级联()结构是根据由粗到精的策略来实现快速实时的人脸搜索。Viola最先提出此结构,并使用这种级联结构实现了世界上第一个实时的人脸检测系统。一个级联的人脸检测系统由图所示。级联的人脸检测器每一个结点就是一个由人脸检测基本学习算法学习出来的分类器,它是用来区分人脸和非人脸模式的。设置级联检测器里面的每个节点分类器的阈值b,使得大多数(99.9%)人脸都能通过,在此基础上尽量抛弃非人脸模式。位置越靠后的节点分类器的结构越复杂,即包含越多的弱分类器,因而也具有更强的分类能力。KKKK这样做是因为非人脸样本通过的节点个数越多就越像人脸因而越难以和人脸模式区分开来。级联检测器就像一系列串连起来的筛子,每一个筛子都能筛除一些前面筛子所不能筛掉的非人脸模式。最终通过所有节点分类器的样本才被接受为人脸。所有待测窗口人脸窗口T

T

T

T节点类器

节点类器

节点分类器3

节点分类器图3.5

被拒绝的非人脸窗口人脸检测的级联分类结构要根据检测器性能目标的要求来设计级联结构。一个训练好的级联检测器的误检率(falsepositiverate)为:Fi

i

(3-6)其中K是节点分类器的个数f是第i个节点分类器在训练样本集上面的误检率。检测i率为:i

i

(3-7)其中K是节点分类器的个数d是第i个节点分类器在训练样本上面的检测率。i使用Boosting算法需要大量的训练数据在训练过程中们不断使用方法来获得新的数据,即利用当前已经训练好的级联分类器来筛选数据,对于前一阶段的训练数据,仅保留分对的正例样本和分错的负例样本,再从候选的负例样本中选择分错的部分作为补充,直到负例样本数足够构成下一次训练所需。如此反复训练,直到检测器的误检率符合我们的要求。例如,我们训练具有个节点的级联分类器,每个训练节点的检测率(detectionrate)为,误检率(falsepositive)为30%,则最终的级联分类器的检测率为0.9(0.9≈0.9910检率为6×(6×=

一个典型的级联分类器的学习算法如下所示:①输入:人脸样本集和非人脸样本集Neg。设定每个节点最大误检f,每个节点最小通过率d和整个检测器的目标误检

target②初始化:,i=1③当满足条Fi▲用Pos和Neg训练第i个节点并设定阈值b使得误检f小于,通过率大di▲f,iiiii

ø▲如果Fi检样本到集合

则用当前的级联检测器扫描非人脸图片库,收集所有的误强分类器越复杂、越严格,对非人脸的排除能力就越强,但同时也会导致部分人脸被错误排除,所以制作级联分类器的时候需要从整体上考虑各级强分类器的分类能力。随着级联分类器级数的增加,误检率迅速下降,但同时漏检率也会上升。为了更好的说明级联分类器的检测效果,3.6给出了一组级联分类器的检测结果,越靠后的强分类器分类越严格,图中横轴表示级联分类器的级数,纵轴表示检测正确率。图3.6一组级联分类器的检测率从图中可以看出着级联分类器级数的增加类器对负样本的排除率越来越高,但同时也将部分正样本排除。表3-1给出了各级强分类器的测试结果:表3-1级联分类器前10级单级测试结果第1级

第2级

第3级

第4级

第5级

第6级

第7级

第8级

第9级

第10级弱分类器个数

8

11

82636534575

162

245正样本正确率负样本正确率

0.9930.22

0.9930.104

0.9950.9920.9880.9880.9830.1550.190.2180.310.32

0.960.32

0.940.43

0.890.52从表中可知,强分类器的分类越来越严格,漏检率越来越高,误检率也越来越低。级联分类器的使用提高了分类器的检测能力,同时也加快了对非人脸的排除速度,从而达到了优化检测过程的目的。算的测程(1)检测机制获得性能优良的级联分类器之后,为了在图像检测中能够使用记录级联分类器,需要为其设计一种检测机制,并为其设计相应的处理接口。训练样本的大小决定了弱分类器处理对象的大小。本文选用的训练样本图像大小为24×24,理论上弱分类器也只能检测左右大小的人脸。但是实际图片中人脸的大小有很大变化范围,3.7中用黑线框住了5个人脸,各人脸的大小不尽相同。为了能够检测出各种尺度大小的人脸,这里还需引入多尺度检测机制。图3.7

含有不同大小人脸的图像常用的尺度变化方法有多种,但是为了保证检测速度,这里有两种方法可供参考:一种方法是将分类器的尺度进行变换时还需要改变弱分类器的域值现起来复杂,但检测速度较快。另一种方法是对图像在不同尺度下抽样,这种方法实现起来简单,但是比前一种方法稍微费时。以一幅48×48的人脸图像为例,第一种尺度变换方法仅对弱分类器的参数进行变换:检测时各弱分类器所对应的haar特征的位置参数将放大到原来的倍,域值参数则要放大到原来的4倍,方向参数不变。这样的过程需要不停的对弱分类器变化操作,实现起来较复杂,但是检测速度较快。第二种方法首先要对目标图像进行抽样操作,将一幅的图像抽样成为24的过程实现起来非常快速但是由于haar特征是基于积分图像生成的,整个过程的计算量将因为重复计算而加大。()(24×24)(12×24)h

,)(48×48)(24×48)图3.8

分类器放大(48×48)

(24×24)

(24×24)

h(p)(12×24)图3.9

图像抽样图3.8、3.9分别介绍了两种尺度变化的策略,实际使用中一般采用第一种方法,这是因为基于haar特征的弱分类器缩放方便。同时,由于积分图像也只需计算一次,从而有效地减少了计算量,达到了加快检测速度的目的。(2)检测流程检测过程的流程如图所示因为基于Adaboost算法的人脸检测处理的是灰度数据,所以检测的第一步是将待检测图像转换成灰度图像。第二步是通过灰度图像得到积分图像。第三步对积分图像在不同尺度上进行检测,并在不同的尺度上分别将检测结果合并。第四步将不同尺度下的检测结果合并后输出。灰度图像

输入图像积分图像

输出结果多尺度检测

当前尺度检测结果当前尺度检测结果当前尺度检测结果图3.10

当前尺度合并当前尺度合并当前尺度合并检测流程图

多尺度合并使用分类器对图像进行扫描的时候,需要对扫描子窗口之间的间隔进行设置,有种说法叫做“三庭五眼照这种说法间隔设置4。为了尽可能的减少漏检,这里的间隔设置不能太大,太小又会影响检测速度。在同一尺度下,当检测到人脸的两个子窗口有重叠部分的时候,就需要考虑是否需要合并。根据实验结果,当人脸子窗口重叠部分超过当前窗口大小的1/2时,合并重叠的子窗口,合并的方法就是取平均值。此外,在不同尺度下检测到的窗口如果发生重叠也需要合并相邻尺度下在邻近位置一般会重复检测,这不仅会导致重复检测,而且还有可能带来不必要的错误检测结果。训练和测结与析

实结与析表3-2给出了部分训练过程中得到的最优弱分类器的权重、迭代误差和平均误差表3-2

训练过程中的参数迭代1

510501002005001000次数权重迭代

1.72641.18450.99740.83300.74020.73070.66080.64050.1510

0.23420.26950.30300.32300.32500.34060.3451误差平均0.1429

0.22540.19520.25030.36120.19370.43790.3383误差所谓迭代误差就是使用当前最优弱分类器和样本迭代权值计算得到的误差结果平均误差是使用当前最优弱分类器和样本平均权值计算得到的误差结果迭代误差体现了当前最优弱分类器在迭代训练过程中的检测能力而平均误差体现了当前最优弱分类器对训练样本的检测能力里要强调的是不是平均误差最小就是当前最优弱分类器,而是迭代误差最小才是选择最优弱分类器的标准。在检测实验中为了较好的描述级联分类器的性能这里设计了两个级联分类器和B,两个级联分类器各级所含有弱分类器个数表所示:表3-3

级联分类器结构级数级联分类器A级联分类器B

第1级66

第2级1944

第3级5272

第4级106103

第5级24068

第6级306147

第7级46998

第8级580130每个级联分类器中都含有8个强分类器,而且强分类器的性能都是逐级提高的。级联分类器A中各级强分类器所含弱分类器个数是逐渐增加的但是在中并没有遵循这个原则表3-4给出了级联分类器A与B的各级强分类器单独对训练样本进行测试的结果。表3-4级联分类器A、B各级性能级联分类器A

第1级

第2级

第3级

第4级

第5级

第6级

第7级

第8级正样本正确率

1.001.001.001.001.001.001.001.00负样本正确率

0.36730.43730.78130.85120.97490.97650.9797

1.00级联分类器B

第1级

第2级

第3级

第4级

第5级

第6级

第7级

第8级正样本正确率

1.001.001.001.001.001.001.001.00负样本正确率

0.36730.94320.98630.99250.97990.99790.9996

1.00级联分类器A的设计思想是逐级严格,尽量保证人脸样本的通过;级联分类B的设计思想是在A的基础上尽可能快速排除非人脸样本从第级开始B中强分类器的排除能力明显高于A,也就是说级联分类器B对通过样本的要求更高,这点在B中后续各级强分类器的负样本正确率都有体现。联系到实际使用中的具体情况,级联分类B比A排除非人脸图像的能力更强,但是B比A的漏检率更高。3.3.2检测结示(a)原图像一(b)检测后结果一(c)原图像二(d)检测后结果二(e)原图像三(f)检测结果三图人脸检测器在数据集上的检测效果(a)彩色图像一b)检测结果一(c)彩色图像二(d)检测结果二图3.12彩色图片的人脸检测效果第章

其方的脸测术4.1

隐尔夫型(HMM的脸测隐马尔可夫模型(HiddenModel,HMM)作为一种统计分析模型,创立于20世纪70代。80年得到了传播和发展,成为信号处理的一个重要方向,现已成功地用于语音识别,行为识别,文字识别以及故障诊断等领域。隐马尔可夫模型是马尔可夫链的一种,它的状态不能直接观察到,但能通过观测向量序列观察到,每个观测向量都是通过某些概率密度分布表现为各种状态,每一个观测向量是由一个具有响应概率密度分布的状态序列产生。所以,隐马尔可夫模型是一个双重随机过程----具有一定状态数的隐马尔可夫链和显示随机函数集。自20纪80年代以来,HMM被应用于语音识别,取得重大成功。近年来,HMM生物信息科学、故障诊断等领域也开始得到应用。a

a

a

y1

y3图4.1隐马尔可夫链我们上面已经确定了人脸特征的提取,接下来采用隐马尔可夫模型进行分析。a22a1010

……头发

额头

眉毛

嘴巴

下巴图4.2

人脸隐马尔可夫模型的状态MM如图4.2所示,将人脸分为十个状态,分别为头发、额头、眉毛、眼睛、…、嘴巴和下巴,即。这种隐马尔可夫模型结构属于左—右型结构。状态转移概率A就是ij人脸特征与特征之间转移的概率。在人脸识别的应用中,假定状态只能转移到本身或者是下一个状态(指垂直方向上),这样做可以减小系统的复杂性。其隐马尔可夫模型的训练步骤可按以下进行:建立一个通用的模的状态数N,确定状态转移和观察系列向量的大小T,本文中T=96。将训练数据与N个状态对应计算模型的初始参数里给的一个初始分布为:

开始状态处于状1;的初始值可以根据状态数N中的元素M求出,即MjAijj本中M可得:A

15016161510161600000

000015161615016(3)对观察概率矩阵B进行初始化,可按下式计算:jk

1M

k

(4-1)(4)利用Baum—We1ch重估算法对初始隐马尔可夫模型进行重新计算。隐马尔可夫模型的名一个参数将在此过程中重新得到估计,并得到新的计出最接近于观察值序列O模型,设定一阈值,当这次计算的概率与上次的概率之差小于delta时,认P=0.001这里不设置次数的限制,实验结果表明这样是稳定的。人脸图像隐马尔可夫模型的训练流程图见所示。待训练的人脸图像人脸图像特征提取人脸图像的观察序列值

HMM初始化HMM参数重估(—)算法否图4.3

收敛是得到新人脸HMM训练流程图若经HMM训练好的模板库中己有个HMM模型,则人脸的检测算法如下:(1)首先对待识别的人脸图像提取其观察向量,方法同训练的人脸特征提取一样。(2)然后利用前向—后向算法或者Viterbi算法计算出观察值序列O在己训练好的HMM中的各P别出的人脸。在这里同样设一域值delta,若所有计算P,则此人脸图像不在此库中。人脸检测的算法流程图见图4.4所示。待训练的人脸图像人脸图像特征提取利用前向—后向算法或算法估计待识别人脸图的观察序列和模板库中的相似或然率

图4.4

人脸检测流程图

取最i输出检测结果4.2

基于法人检使用基于Karhunene-Loeve(KL)法检测和识别人脸最具有代表性的研究小组是麻省理工的Pentland和Turk研究小组。他们的方法被命名为“本征脸”法。“本征脸”法基本思想是:假设人脸图像库中的图像共有N个,首先将彩色图像转换为灰度图像,并进行预处理,并用N个矩阵代替这幅脸,假设每个矩阵的尺寸为,将每个矩按列堆(每矩阵中的每个列向量按顺序取出,将后一列向量置于前一列向量末),即:原矩阵:

a3

m

转换为一个向量:I=,i13

则库里的每张脸均可表示I个库就可用一组向量表示II,i1I

N

。若令n,整个人脸图像库可用一K的矩阵来表示:X2

(4-2)由此可得其平均人脸图像为:1N1NavecIii1N1NavecIiiI

i

i

(4-3)进而得到每张人脸图像相对I的均差为:aveAIii对整个训练图像集可表示为:A2

(4-4)(4-5)构造协方差矩阵:ATiii

(4-6)即:

1N

AA

T

(4-7)或:c(Ibiiiavei

(4-8)或:wiii

(4-9)其中:iiiii

ID和Iii

avei

1n

ID

i然后求上述矩阵CS的特征与特征向量,并且将特征向量按较大kk特征值对应特征向量到较小特征值对应特征向量的顺序排列。下面,我们可以按照某种方法选择前部分“较大”的特征值对应的前L个特征向量

k

这些特征向量进行正交归一化然记为形kk成的向量空间,就可以表示人脸图像的主要特征信息,L个组成投影基矩阵(投影k向量空间)。图像库中的所有N个图像都可向此空间投影得到投影向量TiL*I*TiL*I*如将库中第i个人人脸图I入作投影,得向量i2LAjjijiave

(j=1,2,…,L)以后就可以来表示第i个人脸图像,存储这,作为人脸识别库。iiI

*i

ave

ijj

(4-10)j一般来说,我们称I为人脸图像的重构。而事实上:i-1Iiavejjj不难分析到,重构图像和原图像之间的信噪比为:

(4-11)R

SN

10log

2iIii

2

(4-12)对于一待识别人脸图I同样可得其投影向为P用某种距离度量准(范ave数)计算P和人脸识别库中标本的距离:ei

i

(i=1,…)(4-13根据某种判断准则将P进行归类,从而完成检测。人脸检测的算法流程图见图4.5和图4.6所示。图像读入及处理K—L类均值向量的生成产生K—阵生成特征值矩阵生成训练样本的特征向量矩阵计算获得特征脸空间输出产生的特征脸空间征值矩阵,训练样本的特征向量矩阵图4.5

训练流程待测图像读入直方图均衡化

非线性变化

基于领域的非

同态滤波

混合方法线性变特征脸空间,训练样本的特征向量矩阵的读入待测图像在特征脸空间的投影根据精度测定的特征空间的维数计算待测图像的投影系数与训练样本的投影系数的欧氏距离判断是否为人脸图像显示图4.6

检测流程结语在这几个月里,面对着诸多的问题和考验,我一次又一次享受了难题解决前的困惑和难题解决后的兴奋。虽然本次毕业论文还存在着一些问题,但是,对于我来说,却是不小的收获。还有在编写论文时,由于论文篇幅和时间的因素,有很多需要论述的地方都已经省略,本论文只着重论述各种功能的基本算法,还有很多地方是一笔带过的,希望读者见谅。经过几个月的毕业设计,对我各方面的影响都很大,对此我体会颇多:在设计的过程中,每一个步骤都十分的重要。设计前,一定要将算法及流程了解透彻,这直接关系到本论文设计的成败。这就要求我们经常与指导老师和同学交流信息,一旦我们将内容和设计思想确定下来以后,不要轻易改动。确实要改,必须征求指导老师的意见。一般,指导老师丰富的经验将给我们极大的帮助。熟悉软件开发工具,如C++、MATLAB等。这个只要通过动手熟悉就可以了,以前的学习方法是看书看书再看书,上机操作的时间很少,过后就忘了。经过这次设计,让我清楚的感觉到开发工具的学习是要边看书边动手才学得快、学得牢。要经常与其他人交流,能获得许多有用的信息。不要怕将自己的作品演示给别人看别人会帮助你检查出许多你意想不到的错误阔你的思路检验你的设计思想,提出很多有用的建议。这些建议往往是非常及时的,是你少走弯路,提高开发效率。只有集思广益,善于借鉴,才能在最短的时间内完成最多的工作。本次毕业设计是针对我们大学四年来所学知识而进行的一次全面性的检验它涵盖的知识面广,涉及到多个领域,需要我们具有较高的综合知识水平及较强的解决问题的能力。同时也是对我们工作能力,团队合作精神的一次考验。通过这次设计,一方面让我更进一步的熟悉和掌握了语言的基本语法以及更深入的了解了算法和VisualC++开发工具的使用另一方面在动手能力上有了很大的提高,以前学的知识只是“知识而现在是将“知识”转化成自身的本领,全面提高了自身解决具体问题的能力。致

谢在这次毕业设计中我得到了指导老师——王小鹏老师的指导和大力帮助王老师提供了许多对我们毕业设计非常有价值的建议和资料并对我在这次毕业设计中遇到的问题给予及时、认真、负责的指导。王老师教导我从事研究工作从大量阅读文献入手,广泛学习理论,这拓宽了我的研究思维,教会我如何踏实有效的开展研究工作。王老师严谨的治学态度,踏实的工作作风,对我论文工作的详尽指导给我留下了深刻的印象,也为我今后的学习和工作提供了学习的榜样。在老师的指导下,我的理论水平和动手能力有了长足的进步,在此向王老师表示衷心的谢意同时在学习期间,我家人的无私关心和支持给了我前进的动力,使我能够在学习的过程中全情投入。在此我要表示深深的感谢。参文[1]张威.MATLAB基与编程[M].安:西安电子科技大学出版社2008.1.[2],吴刚明VisualC++6.0航M].京人民邮电出版社2003.9.[3]龚声蓉刘平王强等数图像处理与分[M].:清华大学出版社,200

温馨提示

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

评论

0/150

提交评论