《开题报告(冯海波).doc》由会员分享,可在线阅读,更多相关《开题报告(冯海波).doc(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、毕业设计(论文)材料之二(2)本科毕业设计(论文)开题报告题目: 基于肤色模型的人脸检测技术研究 课 题 类 型: 设计 实验研究 论文学 生 姓 名: 冯海波学 号: 专 业 班 级: 电子信息科学与技术092班学 院: 电气工程学院指 导 教 师: 金震妮开 题 时 间: 2013年03月 日2013 年03月 日一、毕业设计(论文)内容及研究意义(价值)研究对象:介绍了基于肤色模型的人脸检测技术研究的设计方案。人脸检测是指使用计算机在输入图像中确定所有人脸(如果存在)的位置与大小的过程。人脸检测系统的输入是可能包含人脸的图像,输出是关于图像中是否存在人脸以及人脸的数目、位置、尺度、位姿等
2、信息的参数化描述。研究意义:研究人脸检测在理论和技术上都有重要的意义:一是可以推进对人类视觉系统本身的认识;二是可以满足人工智能应用的需要。采用人脸检测技术,建立自动人脸检测系统,用计算机实现对人脸图像的自动检测有着广阔的应用领域和诱人的应用前景。同时人脸检测作为一种生物体征识别与其它较成熟的识别方法(如指纹、虹膜、DAN检测等)相比有以下几个优点:无侵犯性,人脸图像的获取不需要被检测人发生身体接触,可以在不惊动被检测人的情况下进行;低成本、易安装,人脸检测系统只需要采用普通的摄像头、数码摄像机或手机上的嵌入式摄像头等被广泛使用的摄像设备即可,对用户来说也没有特别的安装要求;无人工参与,整个人
3、脸检测过程不需要用户或被检测人的主动参与,计算机可以根据用户预先的设置自动进行。由于具有以上优点,近几年来,人脸检测技术引起了越来越多科研人员的关注。人脸检测研究具有重要的学术价值。人脸是一类具有相当复杂的细节变化的自然结构目标,此类目标的检测问题的挑战性在于:人脸由于外貌、表情、肤色等不同,具有模式的可变性;一般可能存在眼镜、胡须等附属物; 作为三维物体的人脸的影像不可避免地受由光照产生的阴影的影响;因此,如果能够找到解决这些问题的方法,成功构造出人脸检测与跟踪系统,将为解决其它类似的复杂模式检测问题提供重要的启示。二、毕业设计(论文)研究现状和发展趋势(文献综述)人脸检测问题是计算机视觉领
4、域中的重要问题,最初作为人脸自动识别系统的定位环节被提出,近年来由于其在安全访问控制、视觉监测和新一代人机界面等领域的应用价值,开始作为一个独立的课题受到研究者的重视。人脸检测问题在近十年中得到了深入的研究并取得了长足的发展,国内外的很多学者提出了许多不同的方法,在不同的领域都取得了不同的成果,但是要寻找一种准确率很高的、能普遍适用于各种复杂情况的人脸检测算法,还有一定的距离。在人脸检测的领域中,国际上逐步形成了以下几个研究方向:基于几何特征的人脸检测方法,主要代表是MIT的Brunelli和Poggio小组,他们采用改进的积分投影法提取出用欧氏距离表征的35维人脸特征矢量用于模式分类;基于模
5、板匹配的人脸检测方法,主要代表是Harvard大学Smith-Kettlewell眼睛研究中心的Yuille,他采用弹性模板来提取眼睛和嘴巴的轮廓,Chen和Huang则进一步提出用活动轮廓模板提取眉毛、下巴和鼻孔等不确定形状;基于K-L变换的特征脸的方法,主要研究者是MIT媒体实验室的Pentland; 基于隐马尔可夫模型的方法,主要代表有Cambridge大学的Samaria小组和Georgia技术研究所的Nefian小组;神经网络识别的方法,如Poggio小组提出的HyperBF神经网络识别方法,英国Sussex大学的Buxton和Howell小组提出的RBF网络识别方法等;基于动态链接
6、结构的弹性图匹配方法,主要研究者是由C.Von derMalsburg领导的德国Bochum大学和美国Southern California大学的联合小组;利用运动和颜色信息对动态图像序列进行人脸检测的方法,主要代表是Queen Mary和Westfield大学的Shaogang Gong小组。在国内,研究工作主要是集中在三大类方法的研究:基于几何特征的人脸正面自动检测方法、基于代数特征的人脸正面自动检测方法和基于连接机制的人脸正面自动检测方法。四川大学的周激流教授实现了具有反馈机制的人脸正面检测系统,运用积分投影法提取面部特征的关键点并用于检测,获得了比较满意的效果。他同时也尝试了“稳定视点
7、”特征提取方法,即为使检测系统中包含3D信息,他对人脸侧面剪影检测做了一定的研究,并实现了正,侧面互相参照的检测系统。中国科技大学杨光正等提出一种基于镶嵌图的人脸自动检测方法,采用基于知识的三级金字塔结构对人脸进行基本定位,前两级建立在不同分辨率的镶嵌图基础上,第三级用一种改进的边缘检测方法进一步检测眼睛和嘴巴。清华大学彭辉、张长水等对特征脸的方法做了进一步的发展,提出采用类间散布矩阵作为产生矩阵,进一步降低了产生矩阵的维数,在保持检测率的情况下,大大降低了运算量。南京理工大学杨静宇等主要是采用奇异值分解方法进行人脸检测研究,如用Daubechies正交小波变换对人脸图像作预处理,等到不同频带
8、上的4个子图像,对它们分别提取奇异值,然后用最近邻方法进行分类,同时设计一种适用于多分类结果融合的群体决策算法,并且对分类结果有选择的进行融合。程永清,庄永明等对同类图像的平均灰度图进行SVD分解得到特征脸空间,每一幅图像在特征脸空间上的投影作为其代数特征,然后利用层次判别进行分类。张辉,周宏祥,何振亚采用对称主元分析神经网络,用去冗余和权值正交相结合的方法对人脸进行特征提取和识别。该方法所用特征数据量小,特征提取运算量也较小,比较好地实现了大量人脸样本的存储和人脸的快速检测。北京科技大学的王志良教授主要研究人工心理,建立了以数学公式为基础的心理学模型。中科院计算所与成都银晨网讯与2000年5
9、月联合创立了国内首家专门从事面像识别核心技术研究与开发的实验室。主要研究领域涉及计算机视觉、模式识别、机器学习等,尤其关注于人脸检测以及多模式人机交互技术。他们关注的核心技术主要包括:实时精确的人脸检测与跟踪,快速精确的面部特征定位,准确快速的人脸识别/确认方法等。尤其关注复杂环境下(光照、姿态、表情、老化等)的人脸检测问题。随着计算机网络的普及,图像、视频等多媒体信息在计算机信息中比重的加大,这一研究必然会得到更快、更长远的发展。三、毕业设计(论文)研究方案及工作计划肤色是人脸的重要信息,不依赖与面部细节特征的变化而变化,对于旋转、表情变化等情况都能适用,具有相对的稳定性,并且和大多数背景物
10、体的颜色相区别。因此,肤色特征在人脸检测中是最常用的一种特征。肤色特征主要由肤色模型来描述,肤色模型的建立是利用肤色特征进行人脸检测的首要条件,肤色模型是否合适直接影响人脸检测准确率,使用何种形式的肤色模型与颜色空间的选择密切相关。人脸检测常用的颜色空间主要有RGB、YCbCr、HSV、HSI等颜色空间。肤色模型一般采用实验的方法,通过大量“肤色”与“非肤色”像素在相应颜色空间中的聚类特性分析来建立。常用的肤色模型有:高斯模型、混合高斯模型和直方图模型。本设计在建立肤色模型前,要对图像进行必要的预处理,包括光照补偿,色度空间转换等。然后对图像进行检测,用MATLAB工具进行人脸检测实验仿真。
11、设计流程图工作计划:起止日期周次内 容 进 程02.20-02.261收集相关资料,拟订设计方案02.27-03.042拟订设计方案、方案比较;撰写开题报告03.05-03.113提交毕业设计开题报告,参加开题03.12-03.184设计方案细化、方案改进03.19-03.255收集相关资料,选择颜色空间03.26-04.016收集相关资料,选择颜色空间04.02-04.087收集相关资料,建立肤色模型04.09-04.158收集相关资料,建立肤色模型04.16-04.229收集相关资料,设计相关算法04.23-04.2910收集人脸数据04.30-05.0611用MATLAB进行实验仿真05
12、.07-05.1312撰写设计报告书05.14-05.2013撰写设计报告书、完成初稿(电子版)05.21-05.2714设计报告书修订05.28-06.0315设计报告书修订、完善毕业设计06.04-06.1016提交正式设计报告书(打印版),参加论文互评06.11-06.1717提交正式设计报告书(打印版),参加毕业答辩06.18-06.2418设计报告书答辩后修订,完成毕业设计四、主要参考文献1Sergios Theodoridis、Konstantions Koutroumbas,Pattern Recognition,电子工业出版社,20062 黄福珍、苏剑波,人脸检测,上海交通大学
13、出版社,20063 Tink Acharya、Ajoy k.Ray,IMAGE PROCESSING PRINCIPLES AND APPLICATIONS,清华大学出版社,20074廖正湘、陈元枝、李强,基于肤色建模与人眼定位的人脸检测方法,2011,No.10,2011,第146期5姚敏,数字图像处理,机械工业出版社,20056赵丽红、刘纪红、徐心和,人脸检测方法综述,计算机应用研究,2004,21:1-4,7薄润芳、李临生,基于肤色的人脸区域分割,太原科技大学学报,2009,4:20-228王海军、王士伟、刘红敏,人脸检测技术研究进展,河南机电高等专科学校学报,2007,11:15-69
14、 扬帆,数字图像处理与分析,北京航空航天大学出版社,2010.810 唐向宏,MATLAB及在电子信息类课程中的应用,电子工业出版社2009.611 MATLAB- The Language Of Technical Computing英文原文:(From: MATLAB- The Language Of Technical Computing)MATLAB- The Language Of Technical ComputingDescription:MATLAB is a high-level language and interactive environment that enable
15、s you to perform computationally intensive tasks faster than with traditional programming languages such as C, C+, and Fortran. You can use MATLAB in a wide range of applications, including signal and image processing, communications, control design, test and measurement, financial modeling and anal
16、ysis, and computational biology. Add-on toolboxes (collections of special-purpose MATLAB functions, available separately) extend the MATLAB environment to solve particular classes of problems in these application areas. MATLAB provides a number of features for documenting and sharing your work. You
17、can integrate your MATLAB code with other languages and applications, and distribute your MATLAB algorithms and applications.MATLAB has key featuers as follows:(1)High-level language for technical computing (2)Development environment for managing code, files, and data(3)Interactive tools for iterati
18、ve exploration, design, and problem solving 4)Mathematical functions for linear algebra, statistics, Fourier analysis, filtering, optimization, and numerical integration (5)2-D and 3-D graphics functions for visualizing data (6)Tools for building custom graphical user interfaces (7) Functions for in
19、tegrating MATLAB based algorithms with external applications and languages, such as C, C+, Fortran, Java, COM, and Microsoft ExcelThe MATLAB language supports the vector and matrix operations that are fundamental to engineering and scientific problems. It enables fast development and execution. With
20、 the MATLAB language, you can program and develop algorithms faster than with traditional languages because you do not need to perform low-level administrative tasks, such as declaring variables, specifying data types, and allocating memory. In many cases, MATLAB eliminates the need for for loops. A
21、s a result, one line of MATLAB code can often replace several lines of C or C+ code. At the same time, MATLAB provides all the features of a traditional programming language, including arithmetic operators, flow control, data structures, data types, object-oriented programming (OOP), and debugging f
22、eatures. MATLAB lets you execute commands or groups of commands one at a time, without compiling and linking, enabling you to quickly iterate to the optimal solution. For fast execution of heavy matrix and vector computations, MATLAB uses processor-optimized libraries. For general-purpose scalar com
23、putations, MATLAB generates machine-code instructions using its JIT (Just-In-Time) compilation technology. This technology, which is available on most platforms, provides execution speeds that rival those of traditional programming languages. MATLAB includes development tools that help you implement
24、 your algorithm efficiently. These include the following: MATLAB Editor - Provides standard editing and debugging features, such as setting breakpoints and single stepping. M-Lint Code Checker - Analyzes your code and recommends changes to improve its performance and maintainability. MATLAB Profiler
25、 - Records the time spent executing each line of code. Directory Reports - Scan all the files in a directory and report on code efficiency, file differences, file dependencies, and code coverage。You can use the interactive tool GUIDE (Graphical User Interface Development Environment) to lay out, des
26、ign, and edit user interfaces. GUIDE lets you include list boxes, pull-down menus, push buttons, radio buttons, and sliders, as well as MATLAB plots and ActiveX controls. Alternatively, you can create GUIs programmatically using MATLAB functions.MATLAB supports the entire data analysis process, from
27、 acquiring data from external devices and databases, through preprocessing, visualization, and numerical analysis, to producing presentation-quality output.The MATLAB product provides interactive tools and command-line functions for data analysis operations, including: (1)Interpolating and decimatin
28、g (2)Extracting sections of data, scaling, and averaging (3)Thresholding and smoothing (4)Correlation, Fourier analysis, and filtering (5)1-D peak, valley, and zero finding (6)Basic statistics and curve fitting (7)Matrix analysisMATLAB is an efficient platform for accessing data from files, other ap
29、plications, databases, and external devices. You can read data from popular file formats, such as Microsoft Excel; ASCII text or binary files; image, sound, and video files; and scientific files, such as HDF and HDF5. Low-level binary file I/O functions let you work with data files in any format. Ad
30、ditional functions let you read data from Web pages and XML.You can call other applications and languages, such as C, C+, COM objects, DLLs, Java, Fortran, and Microsoft Excel, and access FTP sites and Web services. Using the Database Toolbox, you can also access data from ODBC/JDBC-compliant databa
31、ses.You can acquire data from hardware devices, such as your computers serial port or sound card. Using the Data Acquisition Toolbox , you can stream live, measured data directly into MATLAB for analysis and visualization. The Instrument Control Toolbox (available separately) enables communication w
32、ith GPIB and VXI hardware.All the graphics features that are required to visualize engineering and scientific data are available in MATLAB. These include 2-D and 3-D plotting functions, 3-D volume visualization functions, tools for interactively creating plots, and the ability to export results to a
33、ll popular graphics formats. You can customize plots by adding multiple axes; changing line colors and markers; adding annotation, LaTEX equations, and legends; and drawing shapes.You can visualize vectors of data with 2-D plotting functions that create: (1)Line, area, bar, and pie charts (2)Directi
34、on and velocity plots (3)Histograms (4)Polygons and surfaces (5)Scatter/bubble plots (6)AnimationsThe MATLAB product provides functions for visualizing 2-D matrices, 3-D scalar, and 3-D vector data. You can use these functions to visualize and understand large, often complex, multidimensional data.
35、You can specify plot characteristics, such as camera viewing angle, perspective, lighting effect, light source locations, and transparency. 3-D plotting functions include: Surface, contour, and mesh, Image plots ,Cone, slice, stream, and isosurface.MATLAB provides interactive tools for designing and
36、 modifying graphics. From a MATLAB figure window, you can perform the following tasks: (1)Drag and drop new data sets onto the figure (2)Change the properties of any object on the figure (3)Zoom, rotate, pan, and change camera angle and lighting (4)Add annotations and data tips (5)Draw shapes (6)Gen
37、erate a function that can be reused with different data中文翻译:(From: MATLAB- The Language Of Technical Computing)MATLAB- The Language Of Technical Computing描述MATLAB是一个高层次的语言和互动环境,和传统的编程语言相比,使您能够更快地执行计算密集型任务,如C语言,C+和Fortran。MATLAB在多领域中广泛的应用,包括信号和图像处理,通信,控制设计,测试和测量,财务建模和分析,计算生物学。附加的工具箱(可单独专用MATLAB函数的集合)
38、扩展了MATLAB环境去解决在这些应用领域的特定类别问题。 MATLAB提供了许多功能,用于记录和分享工作。可以整合MATLAB代码与其他语言和应用程序,并分发MATLAB算法和应用。 MATLAB有如下的关键特点:(1)高级技术计算语言(2)管理代码,文件和资料(3)互动工具,解决反复勘察设计等问题(4)开发环境的工具,对于线性数学函数代数的筛选,统计,傅立叶分析,优化,数值积分(5)2-D和3-D图形功能的可视化数据(6)自定义工具建立的图形用户界面(7)基于MATLAB的算法整合与外部建立功能的应用程序和语言,如C,C +,FORTRAN,JAVA,COM和Microsoft Excel
39、。MATLAB语言支持向量和矩阵运算,是解决工程和科科问题的根本。它实现了用MATLAB语言编程和开发技术的发展和执行,算法的速度比传统的语言快速,因为你不需要进行低级别的管理任务,如声明变量,指定数据类型,分配内存。在许多情况下,MATLAB消除了“for”循环的需要。因此,一行MATLAB代码可以经常更换的几行C或C + +代码。同时,MATLAB提供了传统的编程语言的所有功能,包括算术运算符,流程控制,数据结构,数据类型,面向对象编程(OOP),和调试功能。 MATLAB让你在同一时间执行没有编译和链接命令或命令中的一个群体,是您能够快速解决迭代的最佳方案。MATLAB使用处理器的优化库
40、快速执行重矩阵和矢量运算。通用标量计算,MATLAB使用其JIT(时间)编译技术生成机器代码指令。这项技术可以用在大多数平台上,可以媲美传统的编程语言的执行速度。 MATLAB包括开发工具,帮助你实现你的算法有效。这些措施包括以下内容:MATLAB编辑器 - 提供标准功能,如设置断点,单步,编辑和调试。M-Lint代码检查 、代码分析,并提出修改建议,以提高其性能和可维护性。 MATLAB事件探查器 - 记录执行每一行代码花费的时间。目录报表 - 扫描所有报告中的文件目录关于代码效率,文件差异,和代码覆盖率。 你可以使用交互式工具GUIDE(图形用户界面开发环境),布局,设计,编辑用户界面。G
41、UIDE包括列表框,下拉菜单,按钮,单选按钮,滑杆,以及MATLAB的plots和ActiveX控件。另外,你可以创建图形用户界面编程使用MATLAB函数。 MATLAB支持整个数据分析过程中,包括从外部设备和数据库的数据,通过预处理,可视化和数值分析,显示波形质量的输出。 MATLAB产品提供交互式工具和命令行功能为数据分析操作,包括: (1)内插和抽取 (2)提取部分数据,缩放,平均 (3)阈值和平滑 (4)相关,傅里叶分析,过滤 (5)1-D峰,谷,零发现 (6)基本统计数据和曲线拟合 (7)矩阵分析 MATLAB是一种用于访问文件,其他应用程序,数据库,和外部设备的数据的高效平台。你可
42、以阅读从普遍的文件格式,如Microsoft Excel的数据,ASCII文本或二进制文件,图像,声音,视频文件和科学文件,如HDF和HDF5的。低级二进制文件I / O功能,让你使用任何格式的数据文件。从网页和XML中读取数据的附加功能。 你可以调用其他应用程序和语言,如C,C + +,COM对象,DLL中的Java,Fortran和Microsoft Excel,访问FTP站点和Web服务。使用数据库工具箱,您还可以访问的ODBC / JDBC兼容的数据库中的数据。 您可以从硬件设备获得数据,如您的计算机的串口或声卡。使用数据采集工具箱,你可以直接进入MATLAB对于测量数据的分析和可视化
43、。仪器控制工具箱(单独提供),可用于GPIB和VXI硬件的通讯。 所有的图形所需要的工程和科学数据可视化的特点是可用在MATLAB。其中包括2-D和的3-D绘图功能,3-D量可视化功能用于交互式创建模块的工具,和所有流行的图形格式导出结果的能力。您可以通过添加自定义功能,增加多轴图,改变线的颜色和标记;添加注释,LaTEX等式,长度,绘制形状。通过创建数据的载体实现2-D绘图功能: (1)线,面,条和饼图 (2)方向和速度图 (3)直方图 (4)多边形和曲面 (5)分散/气泡图 (6)动画MATLAB产品提供的2-D矩阵,标量的3-D,3-D向量数据可视化功能。这些功能可以实现理解困难大,复杂的,多维数据可视化效果。你可以指定情节的特点,如相机视角,角度,灯光效果,光源位置和透明度。3-D绘图功能包括:表面轮廓,并网,影像图,锥,切片,流,等值面。 MATLAB是提供设计和修改图形的交互式工具。从MATLAB的数字窗口,您可以执行以下任务: (1)拖放到新的数据集数字 (2)更改任何对象的属性图 (3)缩放,旋转,平移,改变相机角度和照明 (4)添加批注和数据提示 (5)绘制形状 (6)生成功能,可以用不同的数据重用指导教师意见 签名: 月 日教研室意见 教研室主任(签章): 月 日评审小组意见 参加评审人员(签字): 月 日