(计算机应用技术专业论文)基于分类的眉目草图生成.pdf_第1页
(计算机应用技术专业论文)基于分类的眉目草图生成.pdf_第2页
(计算机应用技术专业论文)基于分类的眉目草图生成.pdf_第3页
(计算机应用技术专业论文)基于分类的眉目草图生成.pdf_第4页
(计算机应用技术专业论文)基于分类的眉目草图生成.pdf_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

摘要 非真实感绘制( n o n - p h o t o r e a l i s t i cr e n d e r i n g ) 是目前计算机图形学的新兴领 域和研究重点。草图理解( s k e t c hu n d e r s t a n d i n g ) 是人工智能的一个重要分支, 也是目前人机交互技术,尤其是笔式交互技术的研究核心。草图生成( s k e t c h g e n e r a t i o n ) 则是草图理解的一个逆过程。 本文总结和分析了非真实感绘制和草图生成的已有工作,设计了个基于分 类的眉目草图生成模型。首先通过直观分析与统计分析相结合的方法,建立了眉 目生成模型;接着根据模型定义了眉目的绘制方法;最后采用g d i + 绘图技术实 现了这一模型,并最终实现了一个眉目草图生成系统。实验结果表明该生成模型 简单可行,能够简化原有草图生成研究中复杂的图像处理过程,并能生成具有预 期效果的眉目草图。 关键词:草图生成非真实感绘制眉目 g d i + a b s t r a c t n o n - p h o t o r e a l i s t i cr e n d e r i n gi so n eo ft h ef r e s hf i e l d sa n df o c u sr e s e a r c h e si n c o m p u t e rs c i e n c ea tp r e s e n t s k e t c hu n d e r s t a n d i n gi so n eo ft h en e w e s tb r a n d si n a r t i f i c i a li n t e l l i g e n c e ,a l s ot h ec o r eo fh u m a n - c o m p u t e ri n t e r a c t i o n t e c h n o l o g y , e s p e c i a l l yc o r eo fp e n - b a s e di n t e r a c t i v et e c h n o l o g y s k e t c hg e n e r a t i o ni st h ei n v e r s e p r o c e s so fs k e t c hu n d e r s t a n d i n g ,。 t h i st h e s i sg e n e r a l i z e dt h et e c h n o l o g yo fn o n p h o t o r e a l i s t i cr e n d e r i n ga n ds k e t c h g e n e r a t i o n ,a n da n a l y z e dt h e m , t h e nn e ws k e t c hr e n d e r i n gm o d e lw a sd e s i g n e df o r b r o w sa n de y e sb a s e do nc l a s s i f i c a t i o n s a tf i r 瓯t h i st h e s i sb u i l tar e n d e r i n gm o d e l f o rb r o w sa n de y e sb yi n t u i t i o na n ds t a t i s t i ca n a l y s e s ,t h e nd e f i n e dt h ed r a wm e t h o d s f o rb r o w sa n de y e sa c c o r d i n gt ot h em o d e l ,f i n a l l yi m p l e m e n t e di tb yg d i p l u s d r a w i n gt e c h n o l o g y , a n di m p l e m e n t e das k e t c hg e n e r a t i o ns y s t e mf o rb r o w sa n de y e s s u c hc o n c l u s i o nc a nb ec o n f i r m e db yt h ee x p e r i m e n t a lr e s u l t s :t h i sr e n d e r i n gm o d e li s e a s ya n df e a s i b l e ,a n di sc a p a b l eo fg r e a t l ys i m p l i f y i n gt h ec o m p l e xc o u r s eo fi m a g e p r o c e s si nf o r m e rs k e t c hg e n e r a t i o nr e s e a r c h , a n dc a na c h i e v ee x p e c t e dr e s u l t k e yw o r d s :s k e t c hg e n e r a t i o n n o n - p h o t o r e a l i s t i cr e n d e r i n g b r o w s a n de y e sg d i p l u s 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的 研究成果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表 或撰写过的研究成果,也不包含为获得盘鲞盘堂或其他教育机构的学位或证 书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中 作了明确的说明并表示了谢意。 学位论文作者签名“韵匆 o 辩醐:1 年钳铲日 学位论文版权使用授权书 本学位论文作者完全了解墨奎盘堂有关保留、使用学位论文的规定。 特授权苤鲞盘堂可以将学位论文的全部或部分内容编入有关数据库进行检 索,并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校 向国家有关部门或机构送交论文的复印件和磁盘。 ( 保密的学位论文在解密后适用本授权说明) 为 名日 导师签名: 魂呷 签字日期:叹_ 年f 月 匀,月 r ” o 第一章绪论 第一章绪论 本章介绍项目的工作背景和主要工作内容。 1 1 工作背景 草图生成是人工智能领域的一个重要研究课题。从研究内容上讲,它是草图 理解的一部分;从研究过程上讲,它是草图理解的逆过程。草图理解和草图生成 的一般流程如图1 - 1 所示。迄今为止,草图理解和草图生成还没有明确的定义。 一般认为草图理解技术是一种以笔式交互为信息获取手段,以捕捉和理解用户的 输入意图为目的,融合用户交互技术、图形图像技术及视觉形象思维技术,并面 向人类思维过程的综合性技术【】。草图生成技术是根据已有的语义,抓住已有语 义的一个或者几个特征,从而生成具有这些特征的草图的一种技术。 草图理解 ;j草图生成 ,- 一。一一一一。7 一 :! 广1 广1i 广1i 广1 广1 l 输入草图卜_ _ 叫草图识别h 语义获取h 草图生成卜_ 叫输出草图i l - - _ _ _ _ _ _ _ _ _ - - _ _ _ _ 。_ 。l _ _ _ _ _ _ _ _ _ _ - _ _ j :l _ _ _ i _ _ - _ _ i - - - _ - _ j o 。o 。一 、 。, 、一一一一一一一一一一二, 图1 1 草图理解和草图生成的一般流程图 随着计算机处理能力的提高,传统的人机交互方式的低效率已经造成计算机 资源的巨大浪费,因此人们迫切需要改进现有的交互方式。人机交互包括两个过 程:向计算机发送控制或计算指令和计算机反馈控制或计算结果,这一通讯过程 通常被称为人机交互( h u m a nc o m p u t e ri n t e r a c t i o n ,h c i ) ,完成这个通讯过程的媒 介被称为用户界面( u s e ri n t e r f a c e ) 口】。用户界面在人机交互过程中负责管理计算 机的输入和输出,它决定了人们使用计算机的方式。m y e r s 【3 】等人对此作了的深 刻阐述,认为人机交互过程中通过用户界面交换信息的多少是影响计算机资源使 用效率的关键因素之一。因此,用户界面相关的研究已经成为愈来愈多的计算机 科学研究人员关注的焦点。用户界面的发展经过了批处理、命令行、菜单界面等 过程一直发展到今天,仍然是“以机器为中心 的,人们已经迫切要求向具有智 能化、人性化、个性化特点的“以人为中心”的交互模式的转变。在这一转变中, 笔式交互无疑是一个佼佼者和研究热点,而笔式交互的核心技术草图理解无 第一章绪论 疑又是重中之重。因此草图理解和草图生成技术受到了越来越多的关注,成为计 算机领域的一个研究重点和热点。孙正兴教授【1j 和他领导的项目组所进行的笔式 交互技术的研究、p a t r i c kt r e s s e t l 4 等人对人脸肖像画生成的研究、陈洪【5 】等人对 人脸线条画生成的研究等都是这个领域工作的典型代表和技术前沿。 草图生成技术和非真实感图形学是紧密相关的,在草图生成的过程中常需使 用各种非真实感绘制技术。非真实感图形学是计算机图形学的一个重要分支,是 上个世纪9 0 年代h u h i i 形成的一个全新领域。随着计算机图形学技术的迅速发展, 人们已经能够通过计算机生成非常贴近现实场景的图像,随之出现了一种新的追 求“以尽可能有效的方式描述复杂景物并对其进行可视化,【6 】,从而产生了 非真实感图形学这个崭新的领域。在该领域中,建模与动画的技术和真实感图形 学基本一致,而非真实感绘制则是一套全新的技术,是非真实感图形学的核心和 关键,因此多用非真实感绘制来表达这一领域。在非真实感图形学兴起不到2 0 年时间里,已经产生了大量的研究方法和新技术,比如从艺术网印方法到以笔墨、 水彩、雕刻蚀刻版画技术,再到变型三维模型技术。综上所述,非真实感绘制是 计算机领域的又一个研究热点和重点。 研究表明,很少的线条即可描述脸部的特征【7 】。对人脸草图的生成是目前草 图生成研究的个重要课题。h r o y a s uk o s h i m i z u 等人【8 j 的人脸漫画生成系统、陈 洪等人【5 j 的人脸线条画生成系统等研究是这个课题研究的典型代表。 1 2 本文工作 本文对草图生成和非真实感绘制技术进行了全面调研,对已有的人脸器官草 图生成工作进行了总结。结果发现已有的人脸器官草图生成研究多是基于a a m 模型的图像处理,对基于分类的草图生成研究还很少。因此本文提出了一种基于 分类的眉目草图生成模型并实现了这一模型。首先通过对眉目轮廓的分析和笔划 定义建立了眉目模型,接着对模型的绘制方法进行了定义,最后通过m i c r o s o f t v c 6 0 环境+ g d i p l u s 绘图技术实现了这一绘制方法。最终的实验结果证实了这 种模型和绘制方法是可行的,并获得了一定的效果。 2 第二章工作基础 第二章工作基础 弟一早上作壑佃函 本章介绍工作的理论和技术基础。草图生成和非真实感图形学是本文工作的 重要理论基础,g d i p l u s 是本文系统实现中的关键技术。 2 1 非真实感绘制 真实感图形学和非真实感图形学是紧密相关的,不少学者认为,“真实感只 是非真实感的一种特殊形式 【9 1 。 对真实感的追求造就了绘制技术的历史,绘制是用计算机图形学创造合成影 像的过程【1 0 】。经典的真实感( p h o t o r e a l i s t i c ) 图形学致力于产生仿真图像和视频, 对真实世界的再现可达到照片的水平。真实感图形学一般采用物理建模的方法, 从物理模型出发,对场景的颜色、材质等属性进行模拟,并仿真光线和对象的交 互,来产生真实的结果。 真实感图形学发展到一定阶段之后,研究者意识到,有时人们反而需要由计 算机来生成一些不同于照片的图形,比如基于草图的笔划、特定领域的符号等非 真实感图形。同时由于真实感绘制过分追求真实效果以至产生别的问题,如生成 结果过于冷酷、呆板、缺乏灵动等o 随着计算机图形学的发展,人们也越来越致 力于解决这些问题,包括建模、绘制和动画,这些研究即为“非真实感图形学” 的内容。由于建模和动画过程建立在与真实感图形学共有的基础上( 比如曲面造 型、反走样等) ,而非真实感绘制( n o n p h o t o r e a f i s t i cr e n d e r i n g ,n p r ) 与传统的 关于真实感绘制的研究无论在目的、结果和方法上均有本质不同,因此非真实感 绘制构成了非真实感图形学这一领域的核心。术语表达型( e x p r e s s i v e ) 绘制、 艺术( a r t i s t i c ) 绘制、美术( p a i n t e r l y ) 绘制及说明性( i n t e r p r e t i v e ) 绘制等术语 更明确地表达了研究目标。 一般认为非真实感绘制最早出现在上个世纪8 0 年代【6 】,s t r a s s m a n n 【1 1 】和 s a s a d a 0 2 分别发表了一些在这个时期非常有影响的论文。1 9 9 0 年s a i t o t l 3 】和 h a e b e r l i l l 4 在s i g g r a p h 会议上发表了两篇非常有影响力的论文,但是这两篇论 文所展示的技术当时仍然很孤立。到1 9 9 4 年,随着几篇主要论文在s i g g r a p h 会议( w i n k e n b a c ha n ds a l e s i n t l 5 】,1 9 9 4 和s a l i s b u r y t l l 】等,1 9 9 4 ) 和e u r o g r a p h i c s 会议( s t r o t h o t t ea l 1 e j 等,1 9 9 4 ) 上的发表,使得s i g g r a p h 在1 9 9 7 年将非真实 感绘制作为一个单独的讨论类别,从此非真实感图形学进入稳步发展的时期【 】。 第二章工作基础 图2 - 1s t e v es t r a s 一定义的毛笔画刷 表2 - 1 真实感与非真实感对比 对比真实感绘制非真实感绘制 实现方法模拟风格化 特征客观的主观的 影响因素物理过程模拟基于认知规律感于艺术过程 描述的准确性追求精确模拟近似 欺骗观看者认为是 欺骗性 真实的 追求详细真实的反 细节的表达 映所有细节 完整性完全的 适用于表达刚性曲面 诚实的表现,非真实图像 根据观察者的注意力,改变细节层次 选择性的 自然现象 非真宴感绘制具有明显的特点。 对比可以看出在某些特定的场合 2 l l 基本概念 表2 - 1 给出了真实感与非真实的对比。通过 使用非真实感绘制更加合适。 本节对非真实感图形学和本文密切相关的几个概念进行说明。 图像瑕疵:和真实感图形学尽量消除瑕疵不同,非真实感是有意识的产生瑕 疵。非真实感图形学中产生的瑕疵分为两类,一类是由于采用了较大的标记产生 的,另一类是由于生成图像和被模拟物体不严格符合产生的。图2 2 嘲展示了这 两种瑕疵。 线条( l i n e ) :线条是非真实感绘制中的一个重要概念。艺术家一个绘制动作 生成的直线或者样条都可以称为线条。这里的线条不同与计算机产生的直线或者 样条,它具有明显的失真( 瑕疵) :线条摆动端点和理想的起止点不一致,线 的粗细明暗不均匀等。 : 第章t 作基础 医学插图器盲放大国 幽2 2 非班宴感图j | ;巾的阿剥- 璀舭 铡侧 笔划:笔划是非真实感绘制中的另一个重要概念与线条不同,笔划通常是 相对于输入媒质而言的,如钢笔笔划,毛笔笔划等。模拟手工绘制中的每一笔都 是一个笔划当然任何一笔都可咀细分成若干小的笔划。图2 - 3 1 6 1 展示了一种交 互式技术的骨骼笔划的定义方式。 路径是和笔划紧密相关的概念,就是有特定描述的一条曲线,h 的是为了确 定笔划的一些参数,如绘制位置,风格等。其本身可以单独使用任何方式计算, 如参数方程、曲线方程等。 埘气 i 图2 4 ( a 1 受路释切线影响的吞肠风格 瑚 c b ) 鳟切角保持恒定的丝带风格 第二章工作基础 笔划风格:这其实是对笔划位置、走向等外观上的失真描述。图2 - 4 【6 1 展示了 骨骼笔划在不同剪切角控制下产生的两种不同风格。 广 、一驴 镪册 线条图 1 f 。i i i 二j 也一 使用风格后产生的国 图2 5 线条与风格相结合产生的具有特定风格的线条画 路径和风格的结合:为了解决路径与风格分离的问题,人们把笔划拆分成一 系列小的线条。通过定义如下几个参数使其可以关联起来: 笔划数( s t r o k e n u m b e r ) :决定路径曲线被分成的笔划数目; 笔划间隙( s t r o k e g a p ) :决定笔划间产生的缝隙。 笔划长度( s t r o k e l e n g t h ) :决定一个笔划的长度。 则有下面关系公式,确定路径之后,给定笔划长度或笔划数中的任一个参数 可以求另一个参数: n , 豇= 丝二一 ( 2 1 ) s n + s g ( s n 一】) 其中吐为笔划长度( s t r o k e l e n g t h ) ,础为路径长度( p a t h l e n g t h ) ,s n 为笔 划数目( s t r o k e n u m b e r ) ,s g 为笔划间隔( s t r o k e g a p ) 。图2 5 给出了这种关联的 一种示例。 2 1 2 相关应用 非真实感图形学应用非常广泛,这里简单介绍其应用比较集中的几个领域。 1 ) 科学和医学插图 非真实感绘制由于其在表达图像的简洁准确的特征,常常被用于绘制精细程 6 、辽z、b 第二章工作基础 度较高的科学和医学插图。图2 - 2 下就是一个医学插图的实例。 2 ) 工业技术插图 在工业技术领域,不同类型的图用于不同的需求,其展示的重点也不同,这 就可以使用非真实感绘制技术强调重点信息,忽略其它信息。图2 6 嗍所示。 图2 - 7 非真实感绘剖的实例:基于画刷r 交互式绘制方法实例 目一目 函一囡 ( b t d 图2 - 8 夸张肖像画生成系统产生的结果 第二章工作基础 3 ) 艺术创作领域 非真实感绘制可以产生风格迥异的图像,为艺术家进行艺术创作提供了工 具,允许其强调一些细节而忽略其它细节,可以更好更快地创作艺术作品,如图 2 7 【1 8 】所示。 4 ) 其它领域( 娱乐) 非真实感绘制还可以用于卡通、漫画、动画、电影等领域。通过非真实感绘 制可以产生各种风格效果,如图2 - 8 t 1 9 】所示。 2 2 草图理解 草图理解( s k e t c hu n d e r s t a n d i n g ) 是人工智能学科的一个重要分支。关于草 图理解技术,学术界目前还没有明确的定义。本文认为草图理解技术是一种以笔 式交互为信息获取手段,以捕捉和理解用户的输入意图为目的,融合用户交互技 术、图形图像技术及视觉形象思维技术,并面向人类思维过程的综合性技术【。 草图理解系统一般分为三个层次:草图识别、语义获取和具体应用。草图识 别是对用户输入的草图形状识别,发掘用户输入的草图信息中的形状信息,通常 只与物理形状和几何信息相关,不涉及应用领域相关的语义知识;语义获取利用 特定应用领域的背景知识对已经识别出来的草图进行理解和推理,主要是理解用 户的意图和蕴含在草图中的想法;具体应用则是针对具体领域,将获取的语义信 息应用于特定的目的。图2 - 9 说明了草图理解系统的一般结构。 i囡i i i 旦围垭能l : l i - - - - - - - - 一 : 匡丑书亟一| 图2 - 9 草图理解系统结构图 草图理解在传统意义上的应用主要包括:手写字体识别、笔划手势识别等, 并已取得一定成果,如a l v a r a d o 的s k e t c h r e a d 系统【2 0 】。草图理解还有许多面向 专门领域的高层应用,如c a r n e g i em e l l o n 大学设计的s k e t c h l t 系统【2 1 】彳艮好地弥补 了c a d 软件在概念设计阶段的不足。s i l k 系统【2 2 】是一个支持使用草图进行图形 用户界面设计的系统,更好地满足了用户界面设计者最初的设计习惯并支持实时 识别测试。t i v o l i t 2 3 j 是一个支持非实时会议的电子白板系统,能够很好的保留手 绘信息的原有外观,并进行会议场景分类;还有一些其它的系统如d e n i m f 2 4 1 , 8 第二章t 作基础 e l e c t r o n i cc o c k t a i ln a p k i n 2 5 肄系统,此处不作介绍 2 2 1 基本概念 草图:手工绘制的用于交流或者表达某种意图的简单图形。可以是某个领域 中技术人员的交流符号,也可以是手工绘制的简单艺术作品等。 草图识别:把手工绘制的不规则的草图( 图形符号) 识别为一个特定的符号, 丰要是针对每一个方面或者领域的特定符号集上的操作。如u m l 符号的识别, 笔划的识别等。 笔划:与非真实感中的笔划类似,可以将任何输入介质一个起止的过程作为 一个笔划在讣算机中表示为该过程中的一个点集。笔划中包含输入介质特征及 其它相关因素,比如下笔的压力、介质的触点等这是构造笔划和识别笔划时需 要关注的参数。本文中使用的笔划定义仅考虑其中部分因素。 图元:图元是一些基本图形单元的组合如直线、曲线、弧线等。图元消除 了笔划对输入过程中的一些限制,使用户输入可以有更强的随意性但也增加了 识别的复杂性,如需要对图元进行分割、拟台、规整等。 语义获取:语义获取是指在输入草图经过识别后系统根据草图获取的图形 单元在特定用户以及应用领域的含义。这个过程中的丰要问题是在不同的用户、 不同的应用领域、不同的上下文耳、境中同一个图形可能表不的意义不同。 2 2 2 草图生成 草图牛成连今没有明确的定义,本文认为草图牛成技术就是根据已有的语义 ( 对几何图形或者草图特征的认识) 来牛成具有该特征草图的一种技术。从研究 领域讲,它是草图理解的一部分;从工作流程讲,它是草图理解的逆过程( 草图 理解和草图生成的一般流程见图1 1 ) 。它主要用于基于草图理解的人机界面和语 义的可视化表示如图2 1 0 所示。 早期的草图生成主要应用于工业制图领域,以计算机图形学和c a d 技术为基 础,通过用户输入的参数寻找实际物体和生成草图之间的相似性,井根据对现宴 物体逐步的理解找到生成草图虽优的方法口“丰要用于工业制图的概念设计。 同 雷2 - 1 0 草图生成示意图 第二章工作基础 随后在草图领域的研究中,出现针对艺术作品的草图生成方法 2 7 1 。它采用标 准的多分辨率b 样条曲线模型和动态连线的轮廓跟踪方法,构建了一个由图像生 成艺术草图的交互系统。h w k a n g 设计的多分辨率b 样条笔划模型允许在细节 上,交互、连续地控制笔画的种类和形状。他们引入“小波框架( w a v e l e tf r a m e ) ” 的经典数学方法,来弥补b 样条曲线在笔划编辑上的不足。 本文主要讲述和眉目草图紧密相关的草图生成技术。这些技术基本上都是基 于a a m 模型的。 a a m ( 活动外观模型) 的思想可以追溯到1 9 8 7 年k a s s 等人提出的s n a k e 方法, 主要用于边界检定和图像分割【2 7 】。1 9 8 9 年y u i l l e 等人提出使用可变模版来代替 s n a k e 模型,为a a m 的产生奠定了理论基础。1 9 9 5 年c o o t e s 等人提出了a s m 算法。 由于该算法单纯使用对象形状而导致准确率不高,1 9 9 8 年c o o t e s 等人在a s m 算 法的基础上加入了图像纹理信息,首先提出了a a m 模型。a a m 模型采用参数化 的采样形状来构成对象状态模型,并利用p c a 方法建立描述形状的控制点的运动 模型,最后利用一组参数来控制形状点的位置变化来逼近当前对象的形状。 陈洪【5 】等人设计的基于样本学习的人脸线条画生成系统,采用的就是a a m 模 型来对特征点进行定位。该系统把人脸表示为一个有固定数目的线条组成的线条 画s :s = 厶:f - 1 ,2 ,后 ,每一个线条厶都由绘制控制、线条宽度和控制点集 这样一组参数来表示:厶= c ;,w i ,只 。图2 1 1 是该系统中定义的眼睛线条,图 2 1 2 是该系统生成的结果。 s o n g c h u n z h u 和z i j i a n x u t 2 8 】提出了一种以( a a m ) 为基础的具有良好泛化性、 高效率的面部生成方法。这种方法在a a m 算法的基础上定义了两个附加层,一 层是对双眉、双眼、嘴、鼻等6 个器官进行细化的面部构成层,另一层对上述六 个器官进一步细化的面部皮肤层,增加了眼袋、鼻孔、嘴唇等细节。这是一个逐 步细化的过程,生成效果如图2 ,1 3 所示。 图2 1 l 眼睛线条画模版定义图2 1 2 基于样本学习的人脸线条画生成结果 l o 第一章工作基础 图2 1 3 三层泛化模型生成的人脸线条画结粜 在计算机图形学和计算机视觉研究领域,一些研究者尝试利用人机交互方式 来生成人腧的线条画和娌画。b r e a n 弛t 2 9 1 提出了一种交可式的漫画生成系统。 m u r 灿i 等人实现了一个基于模板的人腑漫画生成p i c a s s o 和w e b p i c a s s o 。l i 等人提出了一种自动的人胎线条画生成系统。在他们研究中。 士要讨论了使用对称算子、矩形滤波器和特征轮廓来检测和定位人腧的特征点。 2 3g d i p l u s g d i p l u s 多写做g d i + ,是微软公司从w i n d o w s x p 操作系统开始使用的图 形引擎。它是一个应用编程接口,通过一组c + _ 类来提供接口功能,其体系结构 如图2 一1 4 所示: 从图中可以看出,g d i + 和g d i 、d i r c c o ( 一样都是开发图形应用程序的一 种方式,它其实是对g d i 的高层次的一种封装类,主要用于二维几何图形处理 显示图像和文字排版三个方面。 同传统的g d i 相比它们之闸的本质区别是g d i + 采用一个“无状态模型” 第二章工作基础 取代了g d i 中把选中项目放到设备环境( d c ,d e v m ec o n t e x t ) 对象上的“状态 模型 ,在g d i + 中的每一个绘图操作都是相互独立的。图形对象( g r a p h i c so b j e c t ) 是绘图操作中唯一保留的对象。它有许多新的特性,如渐变画刷、独立路径对象、 矩阵对象、透明通道等g d i 所不具有的东西。同时,它对图像格式的支持也更 加强大,支持的格式包括b m p 、g i f 、j p e g 、e x i f 、p n g 、t i f f 、i c o n 、w m f 、 以及e m f 等。 在d o m e t 环境下可以直接使用g d i + ,对v c 6 0 环境下使用g d i p l u s 需要进行 设置,这里简单进行一下说明 33 1 。 1 ) 下载g d i + 相关文件( g d i p l u s 1 i b ,g d i p l u s d l l 和一组头文件) 2 ) 在s t d a f x h 中加入对g d i + 命名空间的引用和数据类型,代码如下: # p r a g m ac o m m e n t ( 1 i b ,”g d i p l u s 1 i b ”) # d e f i n eu l o n g p t ru l o n g # i n c l u d e u s i n gn a m e s p a c eg d i p l u s ; 3 ) 然后增加a p p 类中的变量: g d i p l u s s t a r t u p l n p u tm _ g d i p l u s s t a r t u p l n p u t ; u l o n g _ p t rm _ p g d i t o k e n ; 4 ) 在i n i t l n s t a n c e 函数中,增加代码 g d i p l u s s t a r t u p ( & m _ p g d i t o k e n ,& m _ g d i p l u s s t a r t u p l n p u t ,n u l l ) ; 增加e x i t l n s t a n c e 函数中,增加以下代码 g d i p l u s s h u t d o w n ( m _ p g d i t o k e n ) ; 设置完成。 1 2 第三章眉目草图生成 第三章眉目草图生成 本章详细阐述了眉目草图的模型建立过程和绘制方法。模型建立部分首先通 过对眼眉样本进行直观观察,确定直观分类的依据( 关键点位置关系等) ;再对 这些信息进行数据统计,定量描述其关系,在此基础上形成轮廓模型;最后结合 眉目本身特征,分别为眉目定义一种笔划,并为各类眉目设置笔划的相关参数, 从而建立完整的眼眉模型。模型建立之后,对眉目的绘制方法分别进行规定。 3 1 生成模型 3 1 1 眉毛 眉毛的直观分类 完整的眉毛是由眉头、眉峰和眉梢三个部分组成的。眉头与同侧鼻翼和内眼 角、眉峰与鼻翼和瞳孔、眉梢与同侧鼻翼和外眼角分别满足三点共线的特征。这 三个关键点构成了眉毛的起止转折,是人们观察眉毛轮廓的入手点。本文从这三 个点出发对眉毛首先进行一次直观的分类,在此基础上进行模型定义和样本训练 的工作。 通过图3 - 1 的观察,发现这三个关键点依次连接形成的折线段具有如图3 2 所示的三种形式( 对左侧眉毛分析的结果) ,具有如下的特征: 曲线1 有非常明显的最高点,即眉峰点,在眉峰两侧,曲线都有比较明显的 下降趋势。两段曲线在水平方向上都有较大的夹角。 曲线2 则没有明显的眉峰,或者眉峰并非最高点。折线的右半段有明显的上 扬趋势。左侧和水平方向夹角较大,而右侧夹角明显较小且位于曲线的上方,形 成一个小角度的正夹角。 曲线3 具有明显的眉峰,且为眉毛的最高点。左右两部分相对于眉峰都是向 下延伸的。但是左侧曲线和水平线有较大的夹角,而右侧夹角则较小,且位于水 平线下方,形成一个小角度的负夹角。 基于上述分析,本文将眉毛分成弯眉毛、平眉毛和八字眉三大类。但还有其 它形式的眉毛存在,统称为其它眉毛,这样就将眉毛最终分成四类。简单的分类 样本如图3 3 所示。 第三章眉目草图生成 图3 - 1 眉毛样本示意图 厂厂 曲线l曲线2曲线3 图3 - 2 三种主要分类的关键点折线形式 k - 4 k ,鼍 _ 因i _ 图3 - 3 眉毛分类示意图a 为弯眉毛,b 为平眉毛。c 为八字眉。d 为其它 以上是简单直观的分类方法,目的是确定分类数目,把样本基本分开,为训 练样本和建立模型做准备。下面将按照上述的分类依据对数据进行统计分析,建 立一种定量化的分类方法并建立眉毛的轮廓模型。 眉毛的定量分类方法与轮廓模型的建立 直观分类采用的三个关键点并不能完全决定眉毛的形状,因此需要在这些关 第三章眉目革图生成 键点之问插入其它点来为眉毛定形,称这些点为定彤点。由于眉头附近眉毛的走 向有明显的特征:眉毛均在下轮埔i 线附近向上生k ,在竖直方向有较小的倾角 呈现明显的外生趋势,这不同于其它部分因此,在此添加一个特殊定形点称 为次关键点。 接着确定定形点和谈关键点的添加数日和位置。旨先根据眉头特征,选定 次关键点,这样就有三个关键点和一个次关键点,从而可以将眉毛分为三段,分 别称为眉梢主体和眉头。将眉毛分为三段之后,确定插入定形点的数i :1 和位置。 本文拟在每段中插入两个定形点,这样可使每一段都有足够的点,通过特定的曲 线形式进行拟台,比如b e z i e r 曲线,b 样条等。f h 眉头段轮廓特征变化较小,k 度较短,通过直线拟合就可以较好的反麻其形状特征因此只插入一个定形点。 定形点的位置采用如下方法确定:在每段的两个关键点( 或者次关键点) 之间水 平距离上等间隔插入两个点:眉头部分等间隔插入一个点。 练上所述,确定一类轮廓线共用9 个点,其中三个关键j = ,个次关键点和 5 个定形点。需要直接确定的是关键点和次关键点,而插值点则需要根据关键点 信息来选取。 统计基于分类的眉毛样本的关键点位置信息,可建立相应的眉型轮廊。眉 毛轮廓线有上f 两部分,因此轮廓模型中需要统计1 8 个点的位置信息;另外为 画图的需要还需手工确定一个眉毛的中心点,用于确定点在屏幕上的绘制位置, 并用于眼睛绘制的定位。因此共需统计1 9 个点的位置信息,具体的统计举标参 数如f :眉毛的中心点统计纵横坐标值;上下轮廓线各有四个关键点( 含次关 键点) ,统计纵横坐标值;插值点由于其在水平方f l 】上是依据关键点选取的, 只统计其纵坐标。共统计2 8 个坐标( 上下轮廓的8 个关键点和眉毛的中心点这 9 个点的l8 个参数,上下轮廓】0 个定形点的l o 个参数) 。 统计举标规定如下:对左眉毛,以水平向右搴j 竖直向下为正方向,以眉梢点 所在的竖直线为y 轴,以眉毛品高点所在的水平线为x 轴建立丝标系( 图3 - 4 左图有简单华标示意) ;对右眉毛调整纵坐标轴为眉头点所在的竖直线即可。 眉头部分在样本图片中无法清晰界定,而其实际比例为眉长1 6 1 5 ,总眉长则 为5 0 - - 6 0 个像素,因此统计时设眉头的长度为1 0 个像素。这样在关键点确定 之后就可以确定次关键点的位置( 表格中称为特殊点) 。为了方便统计本文 旨先对样本进行了剪裁处理剪裁后代样本示例如罔3 4 所示 圈3 4 左眉毛的三种主要形式,按统计需要剪裁后的示例 5 第三章眉目草图生成 表3 - 1 弯眉毛上轮廓关键点统计表 表3 2 弯眉毛下轮廓关键点统计 下眉梢下眉梢下眉峰下眉峰下特殊下特殊 下眉 下眉 x y x y点z 点y 头x 头y 样本0 1 01 81 474 01 25 01 6 样本0 2 01 62 574 81 25 81 6 样本0 3 0 1 4 1 7 94 21 45 21 8 样本0 4 01 61 9 7 4 5 1 45 5 1 8 样本0 5 01 51 564 31 05 31 2 样本0 6 01 31 464 11 05 11 3 样本0 7 o1 41 464 395 3l l 样本0 8 0l l1 654 21 05 21 2 样本0 9 01 1l l64 21 25 21 2 样本1 0 01 61 78钧1 45 01 8 表3 3 弯眉毛插值点的初始测景值表 插值插值插值插值插值下插下插下下下 点涉点砂点砂点钞点砂值点值点 插插插 1 y砂 值值值 点点点 样本1 42l381 09781 4 样本2 样本3 样本4 样本5 样本6 样本7 样本8 样本9 样本1 0 9 l o 1 1 l o 8 6 9 8 1 1 完成各类眉型统计之后,分析数据,以期定义轮廓并对特征进行定量描述。 1 6 4 6 6 l 2 o l 2 5 h 托m n 坦m n 屹:2 5 8 9 8 6 4 6 6 8 “9 9 8 7 7 5 6 9 n 屹屹n n n 7 8 n 7 7 8 4 5 4 5 6 8 2 2 2 2 2 l 2 2 2 第三章眉目草图生成 弯眉毛的轮廓分析如下: 1 ) 上下轮廓线的眉梢部分坐标值基本相等,符合实际眉毛在眉梢部分变窄集 中的趋势。 2 ) 下轮廓的眉头基本上和眉梢处在同一水平线上。从表3 2 中可以看出,2 0 的样本直接满足这一特征,7 0 的样本这两者的数据相差不超过3 个象素。 3 ) 眉毛样本的长度大约为5 3 ( 均值为5 2 6 ) 。这个宽度在绘图的时候用于按 比例对不同眉毛进行缩放。统计时使用如下公式:假设眉头横坐标为,样本 数目为n ,眉毛长度表示为l e n g t h ,则: l engt h 2 莓。x i(3-1, 4 ) 眉头区的上下轮廓有很好的平行性质。眉头区的插值点也较好地落在了 轮廓线的中点上( 表格中对对应于插值点5 和下插值点5 ) 。对上轮廓,7 0 的样 本直接满足这一性质,2 0 的样本有半个象素的偏差,只有1 0 的样本( 样本9 ) 有较大偏差;而下轮廓则有9 0 的样本直接满足这样的性质。 5 ) 眉峰位值大体集中在眉梢内侧约占眉毛长度3 2 的地方,较好的符合现 实中眉峰位于眉梢内侧大约眉毛1 3 处的规律。 6 ) 除去上下轮廓眉梢重合外,我们对另外三对关键点的垂直间隔进行了统 计,上眉峰与下眉峰、上特殊点与下特殊点、上眉头和下眉头之问间隔分别为: 6 7 ,7 2 ,6 5 ,间隔集中在7 左右。但是当在实际绘图中进行放大之后就会有细 微的差别( 实际默认绘图中眉毛长度大概在1 2 0 个象素的长度) 。计算公式如下: g 口p - - :上芝) ,下y g 口p 眉头:上芝y 下置头;一y 眉头, g 口p 特殊点:三芝y 下特殊点,y 特殊点, 7 ) 关键点纵坐标统计:用均值统计上轮廓即可,结果如下 ( 3 - 2 ) ( 3 3 ) ( 3 - 4 ) 眉梢眉峰 特殊点 眉头 1 4 404 38 1 8 ) 插值点特征的分析:眉头区的插值点特征前面已经分析过;对其它插值 点,统计其纵坐标从起点到终点的变化幅度。设:起始关键点纵坐标为k 圳,结 束关键点纵坐标为,插值点纵坐标为巧,f 为样本标号,为插值点编号。n - 第三章眉目草图生成 驴吾喜监 计算得出的变化幅度如表3 - 4 所示: 表3 4 插值点纵坐标变化幅度统计表( 单位:) ( 3 5 ) 通过上述数据统计,可以完整的确定弯眉毛轮廓,过程如下: 首先确定眉梢,纵坐标采用统计值,横坐标为0 ;再确定眉头,横坐标设为 5 3 ,纵坐标采用统计值;之后选取特殊点,横坐标减少1 0 ,即4 3 ,纵坐标采用 统计值;然后确定眉峰,横坐标根据统计值3 2 ,计算得1 7 ( 计算值为1 6 9 6 ) 纵向为0 。最后通过插值点的变化幅度来得到插值点。具体信息如表3 - 5 所示。 由于其它类型的眉毛分析过程类似,具体就不再表述。简单给出其它类轮廓 数据表3 6 ,3 - 7 所示。 表3 5 弯眉毛的轮廓数据表 表3 - 6 平眉毛的轮廓数据表 第三章眉目草图生成 表3 7 八字眉的轮廓数据表( 坐标) 眉毛的笔划模型的建立 眉毛笔划是绘制轮廓线内部的细节,因此,要有一个路径的计算。本文采用 一种简单直线路径:路径的起点在轮廓线内每一段特定的位置选取( 第一个点在 分段的起始处选择,随后的点结合路径间隔来选取) ,终点通过直线的倾斜角度 和路径长度来确定( 确定后产生一个随机偏移来产生最终的终点) 。解决该问题 使用4 个参数,分别是角度范围( 起始角度、终止角度) ,路径问隔( 确定选取 的疏密) ,路径长度( 用于路径起止点选取与计算) 。另对笔划进行简化处理,只 使用宽度、灰度( 明暗) 和风格三个方面的信息。明暗用基准灰度来表示,通过 绘制时的渐变来体现明暗。风格使用一个间隔线的简单风格。在g d i p l u s 中可 以使用4 个参数自定义这种间隔风格。这样就需要7 个参数,宽度、基准灰度、 重绘次数和4 个风格参数。 表3 8 弯眉毛各段笔划参数表 综上所述:眉毛笔划需要1 1 个参数,依次为路径长度、路径间隔、起始角 度、终止角度、笔划宽度、基准灰度、最大重绘次数、长度1 ,间隔1 ,长度2 , 间隔2 。 眉毛的各段都有其独特的特点,因此参数会有一些差异。表3 8 给出了弯眉 毛三段的笔划参数。 1 9 第三章凰目草图生成 3 1 2 眼睛 本节讨论眼睛模型的建立分为轮廊模型和笔划模型两部分进行分析。采用 和眉毛一致的分析过程,t h 过程较简单。 眼睛的直观分类 _ 科雕螂 圈3 - 5 眼啪的若1 拌率 直观上看,眼睛轮廓线共有四个关键点( 假定上下轮廓的两端端点是重台 的) :两个端点和两个最值点,这些点相对位置及其连线构成的封闭区域明显的 反映出了各类眼睛的特征。圈3 - 5 中的a 和b 最高点和最低点横向基本位于中心, 纵向间隔较大( b 较小) ,形成图3 - 6 所示的a 和b 所示的折线图,分别称它们为 大眼睛和小眼睛。图3 - 6 轮廓c 的母值点纵向问隔一般,与横向中心反向偏离明 显称为弯眼睛,具有其它特征的眼睛统称为其它粪。 综合上面的分析,把眼睛分为四类:大眼睛,小眼睛,弯眼腈和其它眼睛。 图3 - 5 从上到下依次反映了各类的特征。 眼睛分类的定量化和轮廓模型的建立 摹一 眼删 。一 第三章眉目草图生成 上述直观分类中的关键点虽然可以很好的将眼睛划分成不同的类别,但不能 准确和真实地确定眼睛轮廓。因此需要在每一条轮廓线的三个关键点之问进行插 值,以保证在绘制中产生一个较好的轮廓曲线。插值仍采用水平方向等间隔插入 的方法,相邻两个关键点之间插入两个定形点。定形点的插入和统计与眉毛模型 类似,这里不再详述。 和眉毛模型一样,首先对样本形式格式化并建立坐标系,结果如图3 7 所示 ( 阻向右和向下为正方向,左半部分有坐标示意图) : l ! | ” 4 e _ 强 y ! i f :i 、 闰一7 崛晴格式化样水示崖目 此处给出大眼睛一类的详细讨论,其余

温馨提示

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

评论

0/150

提交评论