专利详情

标题一种基于唇读技术的唇语输入方法
[标]当前申请(专利权)人南开大学
申请日2011年10月31日
申请号CN201110334658.2
公开(公告)日2013年5月8日
公开(公告)号CN103092329A
授权日-
法律状态/事件撤回-视为撤回
专利类型发明申请
发明人张金 | 肖庆阳 | 梁碧玮 | 左闯 | 范娟婷 | 邸硕临
受理局中国
当前申请人(专利权)地址300071 天津市南开区卫津路94号 (天津,天津,南开区)
IPC分类号G06F3/01 | G06K9/00 | G06K9/62
国民经济行业分类号I6572
代理机构-
代理人-
被引用专利数量39
专利价值-

摘要

本发明涉及一种基于唇读技术的唇语输入方式,主要针对常用汉字及阿拉伯数字。属于计算机智能识别技术,是一个典型的图像模式分析、理解和分类计算的问题,涉及模式识别,计算机视觉,智能人机交互,认知科学等多个学科。对所拍摄的嘴部唇动视频进行关键帧提取,利用灰度处理、中值滤波、动态阈值二值化处理及扫描去除噪点对提取的图像进行规格化处理,之后进行特征向量提取获取具有唇形特征的参数,与口型模板库进行匹配将图片识别为汉语拼音字母序列,最终结合输入法模块获得对应的汉字或阿拉伯数字。

1.一种基于唇读技术的唇语输入方法(主要针对常用汉字及阿拉伯数字),它包括视频采集单元、视频解码单元、图像预处理单元,特征提取单元,口型模板库,唇语识别单元以及文字输出单元:

(A)视频采集单元通过摄像头获取只包含用户唇部口型变化的唇动视频序列并输入视频解码单元;

(B)视频解码单元将输入的唇动视频利用关键帧采集技术获取视频流中具有代表性的关键帧,并将提取的关键帧序列(归一化的唇部色彩静态图片)送入图像预处理单元;

(C)图像预处理单元对上一单元获得的关键帧图像,利用OpenCV库函数进行灰度化和中值滤波处理,而后利用大津法获得的动态阈值对图片进行二值化处理,最后对图片进行扫描去噪获得规格化的唇部二值化图片。

(D)特征提取单元针对经过图像处理后的规格化二值化图片,利用模板法进行唇部特征提取,获得表示唇部特征的特征向量;

(E)口型模板库是预先建立的用于存储标准口型特征向量的模块,储存了先期试验中采集的标准口型模板,包括所有汉语拼音字母发音时的唇动图像(单张或多张)样本及针对唇动图像利用模板法提取的特征向量;

(F)唇语识别单元对处理后的规格化二值化图像进行识别,从特征提取单元中获得序列中每张图片的特征向量,从模板库索引得到匹配的汉语拼音字母序列输入文字输出单元。

(G)文字输出单元对汉语拼音字母序列进行智能识别,在用户协助选取所需内容之后,输出最终结果。

2.根据权利要求1所述的一种基于唇读技术的唇语输入方法,其特征在于:本发明可用于PC平台以及Andriod平台的智能手机等移动设备。

3.根据权利要求1所述的一种基于唇读技术的唇语输入方法,其特征在于:视频采集单元可以利用摄像头获得只包含唇部口型变化的唇动视频序列。

4.根据权利要求1所述的一种基于唇读技术的唇语输入方法,其特征在于:视频解码单元可动态的从视频流中提取具有代表性的关键帧。

5.根据权利要求1所述的一种基于唇读技术的唇语输入方法,其特征在于:图像预处理单元利用OpenCV库函数对图片进行灰度化和中值滤波处理;利用大津法,动态的获取图像像素点的二值化阈值用于对平滑处理后的灰度图片进行二值化处理;最后进一步扫描图片去噪提高后期匹配的精确性。

6.根据权利要求1所述的一种基于唇读技术的唇语输入方法,其特征在于:特征提取单元利用双唇模板法进行唇形建模,据此获得特征参数。

7.根据权利要求1所述的一种基于唇读技术的唇语输入方法,其特征在于:口型模板库利用前期采集的唇动视频材料建立,针对特定人,采用从视频中截取关键帧,且选择最为合适的多组图片作为语料库的初步模板图片。完善的模板库应当包含所有汉语拼音字母发音的模板图片及对其进行处理提参后获取的特征向量。

8.根据权利要求1所述的一种基于唇读技术的唇语输入方法,其特征在于:唇语识别单元将输入的特征向量与模板库中已有的特征向量进行匹配得到汉语拼音字母序列。

9.根据权利要求1所述的一种基于唇读技术的唇语输入方法,其特征在于:文字输出单元将唇语识别单元得到的汉语拼音字母序列进行智能化识别得到用户所需输出结果。

技术领域

[0001]本发明涉及一种基于唇读技术的唇语输入方式,主要针对常用汉字及阿拉伯数字。属于计算机智能识别技术,是一个典型的图像模式分析、理解和分类计算的问题,涉及模式识别,计算机视觉,智能人机交互,认知科学等多个学科。根据所拍摄的嘴部唇动视频,经过关键帧提取、图像处理及特征向量提取获取具有唇形特征的参数,据此识别为汉语拼音字母序列,最终结合输入法模块获得对应的汉字或阿拉伯数字。

背景技术

[0002]随着科技的发展,人们更加需要人性化的人机交互方式。现在,各种电子设备遍布我们生活的各个方面,大多都单一的依靠传统的键盘、鼠标等人手操作模式,很多情况下不够便利,不能够适应不同的环境需求,不能减少外界环境对人们的干扰。尽管如今已经从单一的手动按键,开始推广触屏方式,但还是需要各种实际存在的或者虚拟的键盘来输入相应的内容,在某种程度上,输入的速度以及便捷程度都受到很大限制。因此,人们开始思考和探索更为便捷的输入方式来减少对人手的束缚。

[0003]现有的输入方式,根据输入设备的不同,可分为键盘输入、手写输入、语音输入等。其中,键盘输入是最基础的计算机输入方式。现有的中文输入法,包括拼音输入法、五笔输入法、郑码输入法、音形码输入法等。其中,使用率最高的是拼音输入法。

[0004]近年来人们不断地思考新的输入方式。早在2002年,日本NTT旗下的NTT DoCoMo就在研发世界上第一款唇语手机,以解除对着手机大声讲话给他人带来的困扰。这就是一种新的输入方式——唇语输入。至2004年1月,可读唇语手机已处于实验阶段,而且手机已能辨识日语中大部分的母音。这种手机除了适合正常人在人多的地方使用外,还适合聋哑人使用。

[0005]可读唇语手机的提出,让我们重新审视了键盘加鼠标的单一的人机交互方式。比如,听者通过说话者嘴形的变化,很容易辨别出“ban”和“dan”之间的发音区别。我们只需一部便宜的摄像机的协助,增添一个计算机数据库和处理器,就可以让计算机来“读唇语”。

[0006]除此之外,在计算机领域中,人们也试着开辟一条新的道路使人机交互方式更加轻松,更加人性化。如今人们仍然需要在键盘上敲敲打打,依赖鼠标的帮助,通过最普遍的界面进行计算机操作。但是这种连续敲打键盘不仅容易造成手腕肌腱损伤,还把使用者一直束缚在键盘上。IBM公司的研究中心、英特尔公司的研究中心等实验室都在开发数字唇读系统,用以提高语音识别系统的精确度,使计算机在摄像头的协助下更加敏锐和精确地判别语音。

[0007]在IBM,研究员让计算机的摄像头对准一个正在说话的人,扫描其说话时面部皮肤的变化情况,以获得面部的象素点。然后,建立一个统计学模型,用以探测任何类似脸部的目标。这样当面部在可视的范围内,把焦距对准说话者的嘴部区域,通过视觉算法识别该说话者的许多面部表情的特征,包括嘴唇的中心和嘴角的特征变化。并且记录辅助发音的其他部位在发声时的特征变化,如说话时下颌和面颊下部的变化,以及舌头和牙齿的其他活动等,通过统计学模型结合记录下的音频和视频特征来分析,就可以确定讲话者的说话内容。见“让计算机读‘唇语”’(周小玲,让计算机读“唇语”,世界科学,2003年,第11期)。

[0008]自1984年伊利诺伊大学Petajan,首次提出利用唇读视觉信息辅助语音识别进行语言理解的理念,国外在唇读领域的研究工作起步比较早,多年来欧美和日本开展了广泛的唇读研究,已经逐步从高校和研究机构转到大型公司,已有面向市场的唇读产品出现,唇读的研究已经进入了向应用层面过渡的阶段,见“提高唇读理解的关键技术研究”(万玉奇.提高唇读理解的关键技术研究:[硕士学位论文].哈尔滨工业大学,2007年)。

[0009]国内哈尔滨工业大学、中科院声学所等院校也致力于该课题的研究,但目前尚处于实验室研究阶段,因此在我国尚需加大此方面的研究力度和速度,争取将研究成果早日产品化。姚鸿勋等提出了基于唇色滤波器的唇动特征提取,用SCHMM识别五个元音字母,对非特定人的动态识别率达到90%以上。梁路宏等运用DCT+LDA的方法提取唇读的视觉特征,结合语音特征,运用半连续隐马尔可夫模型(CHMM)在XM2VTS数据库的基础上研究AVSR,降低55%的错误率,见“唇读技术及其最新发展研究概述”(赵燕燕,王丽荣,唇读技术及其最新发展研究概述,长春大学学报,2007年,10期)。结合汉语语音的特点,中科院声学所建立了汉语语音的第一个双模态数据库CAVSR1.0。哈工大也建立了口型模板库Bi-CAVDatabase。结合前人的唇读研究,我们希望提出中文唇语输入方法,改善现有输入方式,提出新的交互理念,更适合特定场合下用户的使用。

发明内容

[0010]本发明提供一种基于唇读技术的唇语输入方法,目的在于利用发音过程中唇动的视觉特征,以及汉语拼音字母与汉字发音过程中的口型一一对应的的特点,实现更为便捷的解放双手的唇语输入方式。

[0011]本发明的一种利用唇语的汉字输入系统视频采集单元、视频解码单元、图像预处理单元,特征提取单元,口型模板库,唇语识别单元以及文字输出单元:

[0012](A)视频采集单元通过摄像头获取只包含用户唇部口型变化的唇动视频序列并输入视频解码单元;

[0013](B)视频解码单元将输入的唇动视频利用关键帧采集技术获取视频流中具有代表性的关键帧,并将提取的关键帧序列(归一化的唇部色彩静态图片)送入图像预处理单元;

[0014](C)图像预处理单元对上一单元获得的关键帧图像,利用OpenCV库函数进行灰度化和中值滤波处理,而后利用大津法获得的动态阈值对图片进行二值化处理,最后对图片进行扫描去噪获得规格化的唇部二值化图片。

[0015](D)特征提取单元针对经过图像处理后的规格化二值化图片,利用模板法进行唇部特征提取,获得表示唇部特征的特征向量;

[0016](E)口型模板库是预先建立的用于存储标准口型特征向量的模块,储存了先期试验中采集的标准口型模板,包括所有汉语拼音字母发音时的唇动图像(单张或多张)样本及针对唇动图像利用模板法提取的特征向量;

[0017](F)唇语识别单元对处理后的规格化二值化图像进行识别,从特征提取单元中获得序列中每张图片的特征向量,从模板库索引得到匹配的汉语拼音字母序列输入文字输出单元。

[0018](G)文字输出单元对汉语拼音字母序列进行智能识别,在用户协助选取所需内容之后,输出最终结果。

[0019]本发明对说话者一段连续的唇动序列进行自适应的关键帧提取,与定长分割和手工分割相比,具有更强的实用性和识别准确率。

[0020]本发明对提取的关键帧序列进行了适当的图像处理,利用模板法提取唇部特征,提高了匹配的准确性以及快速性。

[0021]本发明具有完备的模板库,仅采集特定人(实验人员)的唇动图像,具有更强的针对性;采集样本涵盖所有汉语拼音的声韵母,使得实验更具完备性;在实际应用中,只要使用者配合应用平台拍摄一组完备的模板即可进行方便的人机交互。

[0022]本发明充分利用了汉字发音时拼音字母与口型的对应关系,利用数字图形处理,模式识别,数据挖掘等技术,实现了一种利用人类发音时嘴部唇动的视觉特征进行汉字输入的方式。

附图说明

[0023]附图1为双唇口型模板图,标识出了在特征向量提取环节需要的提取的特征向量,具体含义见下文对双唇口行模板的介绍。

[0024]附图2为特征点提取图,即在进行特征向量提取时首先需要找到的特征点,之后计算特征点之间的距离作为提取的特征向量。

具体实施方式

[0025]下面将对基于唇读技术的唇语输入系统及其实现方法进行介绍:

[0026]首先利用系统摄像头定位至人的唇部,对仅包含说话者唇部的唇动视频进行采集,利用关键帧提取技术获得视频流中的关键帧图像。

[0027]对于所获得归一化唇部彩色静态图片,利用OpenCV库函数对图片进行灰度化和中值滤波处理,而后利用Otsu方法(大津法)计算图片的二值化阈值。采用该阈值对平滑处理后的灰度图片进行二值化。由此达到了自适应采集阈值的效果。对于二值化后的图片,扫面图片中的每一个像素点判断其是否为孤立点。扫描过程中去除孤立点,由此对二值化后的图片起到良好的去噪效果。通过以上步骤得到的图片,即为一张规格化的唇部二值化图片。

[0028]大津法由日本学者大津于1979年提出的。是一种自适应确定阈值的方法,又叫最大类间方差法,简称OTSU。它是按图像的灰度特性,将图像分成背景和目标两部分。背景和目标之间的类间方差越大,说明构成图像的两部分的差别越大,当部分目标错分为背景或部分背景错分为目标都会导致两部分差别变小。因此,使类间方差最大的分割意味着错分的概率最小。

[0029]对图像Image(假设目标平均灰度小于背景平均灰度),记T为阈值(初始化为1),目标点数占图像比例为W0,平均灰度为U0;背景点数占图像比例为W1,平均灰度为U1。则图像的总平均灰度U=W0*U0+W1*U1。从最小灰度值到最大灰度值遍历T,当T使得类间方差G=W0*(U0-U)2+W1*(U1-U)2最大时,T即为最佳阈值。

[0030]对计算过程的改进:假设图像规格为M*N(则像素点总数为M*N)。其中目标的像素个数记为N0,背景的像素个数为N1,则有:

[0031]W0=N0/(M*N)              …(1)

[0032]W1=N1/(M*N)              …(2)

[0033]N0+N1=M*N                …(3)

[0034]W0+W1=1                  …(4)

[0035]U=W0*U0+W1*U1            …(5)

[0036]G=W0*(U0-U)2+W1*(U1-U)2  …(6)

[0037]将式(5)代入式(6),得到等价公式:G=W0*W1*(U0-U1)2…(7)。在编写程序时使用(7)式,可以减少大量的计算步骤,提高程序效率。

[0038]利用模板法,获取唇部特征向量。该方法将嘴唇轮廓抽象为一个数学模型,用若干曲线或特殊点集逼近唇的实际位置,以获得关于嘴唇的几何形状特征,将其表示为一个小的参数集合,例如可变模板方法(DTW)、主动形状模型(ASM)、主动表观模型(AAM)等,其优点是重要特征被表示成低维向量且通常不因平移、旋转、放缩或光照而改变。

[0039]由于我们在提取关键帧后得到的是静态图片,为了对唇部进行特征提取,我们选用双唇口型模板,如附图2所示。模板主要由抛物线和四次曲线这两种曲线构成,内唇由两条抛物线描述,外唇由四次曲线描述。由于四次曲线比二次曲线有更强的描述变化的能力,可见外唇的描述较内唇更细致,能精确地反映外唇的形状。

[0040]基于双唇口型模板,包括内唇的两条抛物线和外唇的3条四次式曲线及12个参数:(Xc,Yc):嘴唇的中心坐标确定嘴坐标系统的位置,θ:确定嘴坐标系统的方向,W1:内唇宽度,W0:外唇宽度,h1:外唇上边缘高度,h2:内唇上边缘高度,h3:内唇下边缘高度,h4:外唇下边缘高度,aoff:四次曲线中心离坐标原点的偏移量,q0:上唇部四次曲线偏离抛物线的距离,q1:下唇部四次曲线偏离抛物线的距离。

[0041]口型模板是一个参数化的物理模型,是一个用多条曲线来描述的口型,通过最优化方法调整模型参数,使代价函数趋于最小,即模板逐渐靠近唇型的真实位置。口型模板图是根据人们日常对口型的经验信息确定的,用口型模板来描述唇的形状,能够适用于大多数嘴型。

[0042]模板主要由抛物线和四次曲线这两种曲线构成,内唇由两个抛物线描述,外唇由四次曲线描述。模型参数说明:中心坐标(xc,yc)和转角θ确定嘴坐标系统的位置和方向,所有的长度和尺寸均参照此坐标系,并且假定嘴是关于纵坐标对称的。上唇的外边缘用两个四次曲线来描述,它们的中心离坐标原点的偏移量为aoff,高为h1,迫使它们享有相同的参数,这样就确定了模板的对称性。四次曲线中参数q0表示四次曲线偏离抛物线的距离,它使模板可以更精确地接近唇的形状。下唇的外边缘也描述成四次曲线,高为h4,辅助参数q1所提供的可变性使其比抛物线更能准确地跟踪说话者的下唇。上下外唇具有相同的宽度w0,相交于(-w0,0),(w0,0)。两条抛物线用来描述嘴的内部边缘,每条抛物线的高分别为h2,h3,其宽度均为w1,相交于(-w1,0),(w1,0)。

[0043]这样,口型模型可以用以下的参数来确定:(xc,yc),θ,w0,w1,aoff,h1,h2,h3,h4,q0,q1,其轮廓的曲线方程如下:

[0044] Y ul = h 1 × ( 1 - ( x + a off ) 2 ( w 0 - a off ) 2 ) + 4 q 0 × ( ( x + a off ) 4 ( w 0 - a off ) 4 - ( x + a off ) 2 ( w 0 - a off ) 2 ) ,

[0045] Y ur = h 1 × ( 1 - ( x - a off ) 2 ( w 0 - a off ) 2 ) + 4 q 0 × ( ( x - a off ) 4 ( w 0 - a off ) 4 - ( x - a off ) 2 ( w 0 - a off ) 2 ) ,

[0046] Y ui = h 2 × ( 1 - x 2 w 0 2 ) ,

[0047] Y li = h 3 × ( 1 - x 2 w 0 2 ) ,

[0048] Y l = - h 4 × ( 1 - x 2 w 1 2 ) - 4 q 0 × ( x 4 w 1 4 - x 2 w 1 2 ) ,

[0049]基于口型模板法得到了关于(w0,w1,aoff,h1,h2,h3,h4,q0,q1)的9维的口型形状特征向量,形状特征对图像的平移、伸缩具有较好的鲁棒性,可供下一步特征向量识别之用。

[0050]口型模板库由多组标准汉语拼音发音口型及利用模板法提取的特征向量组成,包含汉语拼音中的所有声母和韵母,由特定实验人员进行录入以保证后期匹配的正确率。在应用时只需要用户协助录入一到多组标准口型,由系统自动提取特征向量作为匹配模板即可。

[0051]模板库的搭建具体分为以下几个步骤:

[0052]A、针对特定人,获取其发音时的唇动视频素材。由于在实际应用过程中,一般都在唇部运动情况下静态拍摄得到图片,因此在建立口型模板库时,采用从视频中截取关键帧,且选择最为合适的多组图片作为口型模板库的初步模板图片。

[0053]B、对初步模板图片规格化。在构建口型模板库时,采用特定大小的模板图片,即对初步模板图片进行合理的切割处理,从而得到一定像素大小规格化的图片。

[0054]C、口型模板库第一阶段任务完成,第二阶段对所有口型模板库的模板图片进行提参处理(具体操作见特征向量提取),获得完整的口型模板库。

[0055]模板库搭建完成后需要对图片及其参数进行聚类分析,以便于后期进行匹配。初期,我们利用的音节较少,因此首先将其以开、闭口音为标准分为两组,然后再根据提取的参数,选择合适的参数,根据一定的算法进一步对音节进行分类。

[0056]聚类方法的选择——K均值算法,即K-Means算法。在由于在提取特征点后,是针对特征点之间的距离特征来处理数据,而K-means算法是很典型的基于距离的聚类算法,它采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大。该算法认为簇是由距离靠近的对象组成的,因此把得到紧凑且独立的簇作为最终目标。

[0057]算法过程如下:

[0058](1)从n个数据对象任意选择k个对象作为初始聚类中心;

[0059](2)根据每个聚类对象的均值(中心对象),计算每个对象与这些中心对象的距离;

[0060]并根据最小距离重新对相应对象进行划分;

[0061](3)重新计算每个(有变化)聚类的均值(中心对象);

[0062](4)循环(2)到(3)直到每个聚类不再发生变化为止。

[0063]具体如下:

[0064]输入:k,data[n];

[0065](1)选择k个初始中心点,例如c[0]=data[0],...c[k-1]=data[k-1];

[0066](2)对于data[0]....data[n],分别与c[0]...c[k-1]比较,假定与c[i]差值最少,就标记为i;

[0067](3)对于所有标记为i点,重新计算c[i]={所有标记为i的data[j]之和}/标记为i的个数;

[0068](4)重复(2)(3),直到所有c[i]值的变化小于给定阈值。

[0069]由算法可见,本算法成功的关键在于:k个初始中心的选择和最后希望得到类中心的个数,此处利用初始中心k=2,且为任意两个开口音和闭口音的一组向量作为两个聚类中心,即我们希望得到最后的结果为两类:开口音一类(a和o)、闭口音(e、i、u、ü)一类。

[0070]本项目在进行K-Means算法实现时,尝试利用现成数据挖掘软件——weka和编程实现相结合得到聚类结果。利用weka处理数据的方便性以及其强大的功能,将口型模板库经过特征点提取后,并计算得到的相应长度w0,w1,h0.h1,h2,h3,h4......放进weka进行初步聚类,改变K值的大小来观察聚类的结果,初步得到合适的k值。

[0071]根据weka得到的k值,利用VC程序进行进一步聚类,并且在VC中可以确定初始k个中心点的值,而非随机选取,避免了选择k个相同口型对应的参数值,而在VC程序中还需选择最优阈值问题,即如何将所有的模板库图片得到的参数向量按照最合理的排列方式输入K-Means算法的得到的分类结果最为所需,本项目中采取所有图片按照拼音的正确次序排列,根据间隔i来提取下一个将被放进程序中进行计算的向量。即,将6个音节,每个音节的20张图片按次序排列,首先选定两类图片中各任取一张作为K=2的聚类中心,然后选定间隔,一次输入图片,最后将120张图片参数向量全部输入其中,得到最终的聚类结果。

[0072]将从处理后的图片中获取的特征向量与汉语拼音字母口型模板库中的模板进行匹配从而获得口型所代表的拼音字母。匹配时计算两组向量的方差与两组向量间的相关系数,综合这两个计算结果,得到最优的匹配结果。则该组向量所代表的字母发音即可作为特征向量匹配部分的输出。最终获得语句的拼音字母序列并交由输入法处理为汉语。需要说明的是,在特征提取模块中本发明提取了内唇的特征参数,以期提高后续过程的准确性。

[0073]文字输出模块获得拼音字母序列后交由现有输入法进行智能匹配,在用户的协助选择下得到与拼音字母序列匹配的最佳单词、语句或阿拉伯数字进行输出。

[0074]我们的实验系统前期使用运行在个人电脑上的Android模拟器,使用IBM公司eclipse开发工具,加载Android 2.2系统插件进行环境模拟。后期使用HTC G8手机作为实验平台,该手机采用Google Android 2.1操作系统,内置Qualcomm MSM7225处理器,主频528MHz,内存ROM 512MB,RAM 384MB。内置500万像素摄像头,屏幕分辨率240×320像素。

[0075]Andriod平台上的唇语输入系统由以下几个部分组成:图片采集单元、图像预处理单元、特征提取单元、口型模板库和唇语识别单元。图片采集单元通过Android系统调用由摄像头采集一张包含唇部的静态图片,交由图像预处理单元进行动态阈值提取,二值化,滤波去噪后得到图像像素矩阵,特征参数提取单元利用图像像素矩阵提取参数,最后由特征匹配单元利用方差法与口型模板库进行匹配得到结果。

[0076]应用于Andriod平台的唇语输入系统具体实现方法如前,这里要对图像采集单元做特别的说明:

[0077]Android平台下通过照相机获得照片的接口由类Camera实现。为了使照相机的预览内容在屏幕上可视化,我们需要使用SurfaceHolder控件,同时在Camera类实例使用setPreviewDisplay方法时,设置类SurfaceHolder实例作为参数。当我们初始化一个SurfaceHolder类得实例时,需要实现surfaceChanged,surfaceCreated,surfaceDestroyed三个接口函数。

[0078]在类Camera中,包含takePicture方法,通过向其参数列表中填入一个jpegCallback函数引用,可以在jpegCallback函数体中读取照相机获取图像的位图流,将其作为参数,调用BitmapFactory类的decodeByteArray方法,得到所摄图像。