基于32位嵌入式系统SPCE3200数码相机的研究设计.docx
《基于32位嵌入式系统SPCE3200数码相机的研究设计.docx》由会员分享,可在线阅读,更多相关《基于32位嵌入式系统SPCE3200数码相机的研究设计.docx(54页珍藏版)》请在冰豆网上搜索。
基于32位嵌入式系统SPCE3200数码相机的研究设计
第一章绪论
1.1引言
数码相机,英文名“DigitalCamera”,是一种利用光电传感器(CCD/CMOSSENSOR)把图像转换成电子数据的照片机[1]。
数码相机,是现在通信、计算机产业、照相机产业高速发展的产物。
随着电信、计算机的普及和家庭化,数码相机作为计算机的图像输入设备,不仅能采集静止图像,而且能采集视频图像和音频信号,便于计算机存储和处理,容易实现网络传输,其应用领域日益广泛。
数码相机是以电子存储设备作为摄像记录载体,通过光学镜头在光圈和快门的控制下,实现在电子存储设备上的曝光,完成被摄影像的记录。
数码相机是由镜头、CCD/CMOS光电传感器、ADC模数转换器、DSP数字信号处理器、内置存储器、LCD显示器、SDCARD可移动存储器以及相应的接口部分组成[17]。
数码相机中只有镜头的作用与光学相机相同,它将光线会聚到感光器件上CCD/CMOS上。
CCD/CMOS是半导体器件,它代替了光学相机中胶卷位置,它的功能是把光信号转变成电信号。
这样,我们就得到了对应于拍摄景物的电子图像,但是它还不能马上被送去计算机处理,还需要按照计算机的要求进行从模拟信号到数字信号的转换,ADC器件用来执行这项工作。
接下来DSP处理器对数字信号进行处理压缩并转化为特定的图像格式,例如JPEG格式。
最后,图像文件被存储在内置存储器或可移动存储器中。
然后通过LCD查看拍摄到的照片。
本文应用凌阳公司开发生产的32位嵌入式系统SPCE3200为处理核心,进行数码相机的开发设计,并加入MP3或MP4播放器等当前流行的多媒体功能,使之具有更多娱乐性。
利用凌阳公司生产的16位单片机加入了语音控制功能,使该数码相机更具有操作的灵活性。
1.2智能声控数码相机的发展状况[2]
现有传统相机市场为少数大厂家所占领,已经形成了很大的品牌效应,但很遗憾的是在此却很少看到中国自己的影子。
而数码相机作为一个新型产品,市场前景十分诱人。
因此成为国内厂家要和这些大的传统相机厂家分一杯羹的最后赌注。
上到国家政策,下到一些小厂措施,都积极备战。
当然那些大厂家也不甘示弱,也在做着努力。
可以预见,对这块领土的争夺战将十分激烈。
纵观商海浪潮——神话永远有,但神话不是永久存在。
市场有着太多不确定因素,充满着令神话覆灭的危机,但也不乏创造神话的机遇。
面对这场充满看不见硝烟的中国数码相机保卫战,为企业服务的背后将有着更大更深远的历史意义——想来让人激动和兴奋。
新款数码相机不断推出——新的概念。
一是它代表了一种全新的生活方式;二是数码相机本身就是一种区别于传统相机的新事物;三是数码相机有着其前瞻性、时尚性特点;四是它存在的基础就是最新的科技技术。
以此为出发点,我对传统相机和现有市场上的数码相机进行了调查研究。
得出以下结论及相应设计取向:
1.2.1总趋势
传统相机在光学上的技术优势,成像上的效果,数码相机在短时间还无法对其实现替代,特别是对于专业选手,更是不可能。
因此数码相机在设计考虑时,目前应着重与非专业选手的需求。
1.2.2造型上
传统相机造型是以机械美、科技美为主要诉求卖点,在这些方面已达到极至。
美的很,也十分具有诱惑力。
因此数码相机造型在现阶段设计上就应避开这些,在吸取其这方面优点的同时把重点放在时尚、前卫及人性化等方面,况且这些也是与时代特征——科技以人为本、感性营销策略等相一致的。
就像美国航空把诉求点放在高科技上,获得成功。
而法国则把诉求点放在服务上,同样在世界上也不甘落后。
也就是说任何一种“产品”要获得成功有一个明确的市场定位是必须的。
1.2.3产品功能上
在产品功能设置上,传统相机以其高科技的完善支持,可谓功能全面,因此造成了其复杂——复杂到令人望而生畏的境界。
傻瓜相机的诞生就是一种弥补市场的措施,但现在有了更好的选择——数码相机。
这也就告诉我们,我们的数码相机设计应该是易操作和易使用的,能够抓住最大群体的非专业用户,其成功就不得了了。
毕竟专业用户又有多少,况且他们似乎对数码相机还不屑一顾的。
目前许多数码相机只具有照相相关功能,而缺少一些相关功能,比如说MP3,MP4播放器,还有声控[1]等功能。
加入声控功能可以给用户增加了很多的方便,用户只需用声音控制数码相机,使用简单方便。
1.2.4技术上
可以说,技术是今天我们这个社会最重要的基础之一了。
目前市场上大部分数码相场对数码相机的核心器件都CCD传感器[6],尽管像素很高,可达1000万以上,但是并没有太大的突破,如果想打破市场,只在提升数码相机其它的技术参数。
比如说现在市场上绝大部分数码相机操作面板均采用传统的按钮模式,即然这样,我们为什么不用当前非常流行的触摸屏技术来取代按钮呢,这就一个技术上的突破,可以迅速占领市场。
总结以上种种,对数码相机设计的总体思路和大体方向是简洁、美观、亲和、时尚、前卫,同时是易操作的,易用和个性化的。
随着多媒体及电子技术的发展,早期的多媒体播放器无论是从功能还是速度成本等方面越发显得捉襟见肘,嵌入式实时操作系统的出现将开发人员从繁琐的任务调度中解放出来,从而使开发人员有更多的精力进行上层应用软件的开发。
本方案基于eCos嵌入式实时操作系统平台,采用凌阳科技的32位RISC处理器SPCE3200,结合大容量存储单元SD卡及TFT液晶屏,实现SD卡文件浏览,MP3音频文件、SP4视频文件以及JPEG图片的播放及显示。
并提出了一种在消费类电子中使用嵌入式操作系统进行设计的低成本解决方案。
1.3论文主要研究的内容
本文主要围绕着数码相机音视频系统展开全面的讨论和研究。
本文的绪论部分,主要对课题的研究背景、当前数码相机的发展及关键技术进行了简要的介绍。
介绍了整个数码相机的整体架构及系统组成,主要包括硬件平台结构。
集中介绍了数码相机中相关软件程序及驱动软件设计。
介绍了系统的调试过程及试验的数据结果进行分析。
对现有的数码相机系统进行了功能测试和性能评估并对本文所研究的系统进行展望。
第二章语音识别系统的基本原理
2.1 语音信号的产生模型
语音信号的产生模型讨论语音识别系统实现前[3],将语音信号的产生模型作为独立模块拿出。
作为语音信号处理的基础之一,预加重、线性预测、信号处理等概念都依赖于语音信号产生模型。
图2.1语音信号产生线形模型
语音按其激励形式的不同可以分为浊音和清音,信号是一种典型的时变信号,然而如果把观察时间缩短到十毫秒至几十毫秒,则可以得到一系列近似稳定的信号。
人的发音器官可以用若千段前后连接的声管进行模拟,这就是所谓的声管模型,音控控制系统的研究简单地说声管模型是指人从喉到嘴边这一段发音腔是用一序列截面积不同的均匀声管来模拟,根据声管的声学模型,利用物理知识,可以计算出这段声管模型与信号处理理论中的全极点模型相类似。
因此,可以应用信号处理中已有的算法对语音信号进行处理。
语音信号x(n)可以看作是激励信号激励一个线性系统而产生的输出。
其中,语音中的浊音部分是由一连串的有规律的周期信号(此周期与浊音的基音周期吻合)来激励不同形状的声管模型而产生。
为了使浊音的激励信号具有声门脉冲的实际波形,还需要使激励序列通过一个声门脉冲模型滤波器G(Z)。
这个线性系统由声门脉冲模型、声道模型、辐射模型级联而成。
系数AV的作用是调节浊音信号的幅度。
系统传输函数为:
(2.1)
激励信号是一个周期性的脉冲串:
,那么浊音信号就是两者的卷积结果,即:
(2.2)
而清音信号是由白噪声序列激励一个线性系统而产生。
这个线性系统仅由声道模型和辐射模型级联而成。
系数AF的作用是调节清音信号的幅度。
系统传输函数为:
(2.3)
激励信号u(n)假定为白噪声序列,于是有:
(2.4)
语音信号是一种典型非平稳信号,特性是随时间变化的。
但是在5ms-50ms这样的短时内,其频谱和某些物理特征量可以看作是不变的,这就是语音信号处理短时平稳统计特性的基础。
我们将语音信号分割为一些短段(分析帧),这些短段就好像来自一个固定特性的持续音片断,对该短段进行处理就相当于对固定特性的持续音进行处理。
通常帧间有一些叠接,使得帧与帧之间平滑过渡,保持语音信号的连续性。
对每一帧的处理结果是一个数或是一组数,经过处理以后产生一个新的依赖于时间的序列,用于描述语音信号。
2.2语音信号的数字化和预处理[3]
语音信号的数字化包括采样、预滤波。
语音信号预处理是负责语音特征参数提取前的准备工作,一般包括预加重、加窗和分帧等。
2.2.1语音采样
计算机分析人的语音,需将话简传来的语音信号转换成计算机所能处理的数字信号。
在PC机上,只需外接一个话筒就可以实现模拟语音信号采集成数字信号进入到计算机。
根据Nyquist采样定理,信号的采样频率只需大于信号带宽两倍以上(
)即可保证信号的采集不会丢失信息。
语音信号的音频范围在20Hz到20kHz之间,其中绝大部分能量是集中在5.7kHz以内,一般语音信号的采样频率为10kHz或16kHz,这样作对语音信号的清晰度有损害,但只是少数辅音损失,语音信号本身有较大的冗余度,少数辅音清晰度下降并不影响语音的理解。
例如ITU数字电话G.711协议,采样频率为8kHz,只利用了3.4kHz以内的语音信号[3]。
2.2.2预滤波
预滤波的目的有两个:
高通滤波器抑制50Hz电源噪声千扰;低通滤波器滤除语音信号中频率分量超过采样频率一半的部分,防止采样信号混叠。
如果频率干扰(50或60HZ)不严重干扰或另有抗干扰措施,则不必用带通滤波器而只用低通滤波器即可。
低通滤波器的截止频率由语音信号带宽决定,用以滤除高于1/2采样频率的信号成分或噪声,并且希望其带内波动和带外衰减特性尽可能好。
A/D转换后采用低通滤波器作为平滑滤波器,对重构的语音波形的高次谐波起平滑作用,以去除高次谐波失真。
对于这种低通滤波器的特性和A/D转换频率,也要求与采样时具有相同的关系。
2.2.2预加重
语音信号经过采样和量化过程后,一般需要对语音信号进行预加重。
由于语音信号的平均功率受声门激励和口鼻辐射的影响,所以高频端大约在8OOHz以上按6dB/倍频程跌落(这就意味着频率每增加一倍语音信号功率将减少为1/4,或信号幅度减小为1/16),为此要在预处理中进行预加重。
其目的就是提升高频部分,使信号的频谱变得平坦,便于进行频谱分析或声道参数的分析。
预加重可以在A/D变换前,在防混叠滤波之前进行,这样不仅能够进行预加重,而且可以压缩信号的动态范围,有效地提高信噪比。
预加重也可以在A/D变换之后进行,用具有6dB/倍频程提升高频特性的预加重数字滤波器实现。
预加重滤波器一般是一阶的,形式如下:
(2.5)
式中,u为预加重系数,其值接近于1,典型的取值在0.49一0.79之间。
预加重后的信号在分析处理之后,需要进行去加重处理,即加上一个6dB/倍频程下降的频率特性来还原成原来的特性。
2.3语音信号的时域分析
语音信号的时域分析就是分析和提取语音的时域参数。
语音信号的时域参数主要有短时平均能量和短时平均幅度、短时平均过零率、短时自相关函数和短时平均幅度差函数等。
2.4.1短时能量和幅度[4]
短时能量的主要意义在于给出了区分清音段和浊音段的基础,清音比浊音的幅度要小得多,清音段的能量值明显小于浊音段,因此能量函数可用来大致定浊音语音和清音语音的变化时刻.对于高信噪比的条件下,可以用能量来区分有无语音。
由于其对高信号电平非常敏感(幅度的平方),需要加重x(n)中抽样到抽样的变化,解决的方法就是平均幅度函数。
短时能量E为:
(2.6)
平均幅度函数M为:
(2.7)
其中:
x(m)为一帧语音信号w(m)为汉明窗序列,N为窗长。
2.4.2短时平均过零率[4]
离散时间信号的情况下,如果相邻的抽样具有不同的代数符号就称为发生了过零,产生过零的速率是信号频率量的一个简单度量。
例如:
一个频率为FO的正弦信号以凡速率抽样,正弦波的一周内就有F0/FS凡个抽样,每一周内有两次过零,所以过零的长时间平均率为:
Z=2F0/FS(2.8)
因此,平均过零率z是一个估计正弦频率的适当方法,在语音信号中,语音产生模型表明,由于声门波引起了谱的高频跌落,所以浊音语音能量约集中在3kHz以下,然而对于清音语音,多数能量确实出现在较高的频率上。
高频意味着高的过零率,低频意味着低的过零率,合理的归纳是:
过零率高,语音信号是清音;过零率低,语音信号就是浊音;同时,无声段的过零率变化范围较大,一般情况下比浊音低一点。
2.4语音模型的建立与识别[5]
采用模式匹配法进行语音识别时,分成两个阶段:
训练阶段、识别阶段,在训练阶段形成标准模板库;在识别阶段,将待识语音的特征矢量依此与标准模板库中每一个模板矢量进行相似度计算,将相似度最高者作为识别结果输出。
但识别时不能简单地将输入参数和相应的参考模板直接作比较。
因为语音的发音受多种因素的影响,即使同一个词组、同一个人发音,在不同的时间,两次发音,语音序列的长度也不会相等。
这样把语音段内所有帧的MFCC系数以时间顺序叠加起来所构成的矩阵的尺寸是不定的,这给语音的相似性判断带来了很大的难度。
采用什么方法可以有效地解决这个问题将是本节的重点内容。
2.4.1语音模板训练方法
训练过程是指为了使语音识别系统达到某种最佳状态,不断地调整系统模板的参数,使系统的性能不断向这种最佳状态逼近的过程。
这是一个复杂的过程,要求计算机有强大的计算能力,并有很强的理论指导,才能保证得到良好的训练结果。
常用的模板训练方法有以下几种[4]。
偶然性训练法,当待识别词表不太大且系统为特定人设计时,可以采用简单的多模板训练方法,即每个单词的每一遍读音形成一个模板。
在识别时,待识别语音特征矢量序列用特定的匹配算法分别求得与每个模板的累计失真,比如不正确的音联、错误的发音等。
这种方法形成的模板鲁棒性不好,故而这种方法被称为偶然性训练法。
鲁棒性训练法,鲁棒性训练法是一种串行训练法,将每一个词重复说多遍,直到得到一个一致性较好的特征矢量序列。
最终得到的模板是在一致性较好的特征矢量序列。
在沿DTW的路径上求平均的结果。
其训练过程可描述如下:
对于某个特定的词,令X1={X11,X12,⋯,X1T1,}为第一遍的特征矢量序列,X2={X21,X22,⋯,X2T2,}为另一遍的特征矢量序列,通过DTw算法计算这个模板的失真得分d(X1,X2),如果d(X1,X2)小于某个门限(比如
),便可认为这两遍特征矢量序列一致性较好,通过求式X1,X2的时间弯折平均而得到一个新的模板Y={Y1,Y2⋯YTY},便可以得到鲁棒性训练的模板。
具体求法如下:
令TY为DTW算法的最优路径长度,则通过回溯方法,最终得到最优路径序列。
则新模板Y可通过下式求得:
(2.9)
每个词的模板由鲁棒性训练得到的模板表示,往往还显得不够充分,但如果识别的任务是针对特定人时,通过这种方法得到的模板还是比较可靠的。
聚类识别法是对于非特定人语音识别,要想获得较高的识别率,就需要对多组
训练数据进行聚类,以获得可靠的模板参数。
它针对的是有时序关系的谱特征序列,
而不是维数固定的模式。
常用的是K均值算法(MKM)。
2.4.2语音识别模板训练和建立[5]
语音识别是一模板匹配过程,无论采用什么模型和算法,都需要语音模板库的建立,也就是语音模型的训练。
模板的好坏直接决定识别率的高低,特别是对子非特定人的语音识别系统,需要大量的原始语音数据来训练语音参考模型,一个优秀的语音数据库应该平衡反映不同性别、年龄、口音说话人声音。
直接将词汇表中所有词条提取的特征参数说一遍并存入模板,这种偶然性训练法形成的模板鲁棒性并不太好,对特定人识别时(A和D之间匹配),结果出入很大。
为了提高系统的识别率,可采用鲁棒训练方法,实际是沿DTW的路径上求平均的过程:
对于某个特定词,重复说多遍,令X1={X11,X12,⋯,X1T1,}为第一遍特征矢量序列,X2={X21,X22,⋯,X2T2,}为另一遍的特征矢量序列,通过DTW算法计算这个模型的失真得分d(X1,X2),若得分小于某个门限比如
,便可认为这两遍的一致性较好,通过求戈凡的时间弯折就可得到一个新的鲁棒训练模板Y={Y1,Y2⋯YTY},依此类推,直到得到一个一致性较好的特征矢量序列。
第三章智能声控数码相机的硬件系统设计研究
3.1系统总体设计
3.1.1系统设计方案
选用凌阳32位嵌入式微处理器SPCE3200[6],因其具有丰富的硬件资源及多媒体特性,内嵌16位DAC;具有USB等标准硬件控制器接口;具有SD卡控制器、TFT型LCD控制器及TV控制器接口;同时还具有MPEG4编解码器、CMOS接口单元等资源;SPCE3200处理器多媒体性能强大,片上的资源更丰富。
在更高的性能上,工作频率却更低。
带来了更低系统功耗,更适合电池供电。
使本系统大部分的功能由硬件完成,并且SPCE3200A各个基础功能模块的底层代码基本开发完成。
使软件开发的工作量很大的降低。
视频的A/D转换部分采用SAA7113与数字摄像头复用完成[7]。
语音控制部分主要用凌阳SPCE061A板来实现语音采集。
SPCE3200具备本设计所要求的基本硬件部分,并给出底层开发代码。
使系统在功能上和稳定性能上都优于其他方案,模拟视频信号转数字信号采用SAA7113,该芯片的控制方式与输出视频格式基本相同,可以与数字摄像头复用同一端口。
SPCE3200自带底层代码可提高软件设计的效率。
该系统的组成框图如图3.1所示。
图3.1数码相机系统组成框图
3.1.2系统设计分析
因本系统采用SPCE3200,利用其内嵌16位DAC,SD卡控制器或USB硬件控制器以及MPEG4编解码器完成对音频和视频文件的播放,通过I2C,TFT型LCD以及OV7720数字摄像头完成数码相机的拍照部分。
本设计主要用于完成MP3播放,MP4播放,AV端子输出,数字拍照,图片浏览,触摸屏控制功能等在SPCE3200小系统板上有相应的功能模块,开发相对简单[7]。
根据对简易数码相机的设计,整个系统主要由凌阳SPCE3200平台、图像采集、图像/视频显示、音频输出、电源管理、SD驱动模块组成。
系统可实现摄像头拍照、闪光灯补光、自动或手动浏览照片、播放MP3音乐、播放SP4格式视频、与SD卡通信等功能,通过触摸屏和键盘完成对数码相机的控制和操作。
数码相机软件部分按照模块化程序设计,主函数通过调用子函数实现系统功能,主要完成TFT屏、MPEG4解码器、TV编码器、DAC、UFAT文件系统的初始化及SD卡挂载、中断使能等工作。
等待接收命令并做处理。
具体主程序工作流程如图3.2所示。
图3.2主程序工作流程图
3.2核心系统板设计
在整个数码相机的设计中,核心系统板是一个非常重要的部件,它掌控着整个系统的资源和任务的调配。
在本文中,我们选用台湾凌阳公司开发生产的SPCE3200精简开发板(以下简称开发板)。
它是凌阳科技大学计划推出的一款全功能32位嵌入式学开发习系统,此系统采用凌阳自主设计的S+core7内核[9],并且集成了MPEG4的硬件编解码、CMOS传感器、TV解码接口、TFT、SPI\UART\I2C\SPI标准串口、USB、SD卡等多种外设接口,扩展方便,适用于PDA,便携媒体播放器,监控器,机器人等设备的开发。
此开发板操作方便、易学易用、功能强大,是32位嵌入式开发的理想平台[9]。
3.2.1核心系统板资源配置
开发板基于S+Core7架构32位处理器SPCE3200,预留多个外围模块接口,操作方便,功能强大。
开发板包括以下资源模块:
电源模块,DC9V开关电源输入,DC1.8V/3.3V/5V多电压输出;核心模块,SPCE3200核心处理器、128MbitSDRAM存储器、64MbitNorFlash存储器、128MbitNandFlash存储器;多媒体模块,双通道立体声语音输出、标准TV信号输出(MINITV接口,包含:
Video_OUT、Audio_L和Audio_R)、TFTLCD(3.5寸,320*240,65536色)、CMOS摄像头传感器接口、IIS音频接口;人机交互模块:
游戏手柄接口、触摸屏接口、4个独立按键、4个独立LED;通信模块,SPI接口、SIO接口、IIC接口、UART接口、USB1.1接口(Host/Device)、以太网接口、GPRS接口;扩展存储,SD卡接口;其它模块,SJTAG接口、GPS接口。
3.2.2SPCE3200处理器的特性指标[9]
开发板基于S+Core架构32位处理器SPCE3200,该处理器最大的特色是具有较强的多媒体处理能力,其芯片详细特性如下:
工作电压:
I/O端口的VDD为3.0V~3.6V,CPU内核的VDD为1.62V~1.98V;CPU工作频率:
27~162MHz;SDDRAM最大容量可达16M字节、具有32位/16位的SDRAM数据总线;支持隔行扫描/逐行扫描的NTSC/PAL视频输出,为NTSC制/PAL制系统提供27MHz晶振;图像分辨率:
VGA模式为(640x480像素)、QVGA模式为(320x240像素),支持65536色(RGB565格式);可编程选择颜色模式:
4/16/64/256/32768/65536;硬件方式的MPEG-4/JPEG编解码,MPEG-4帧率(framerate),QVGA模式下30帧/秒;4通道APBDMA数据传输方式:
APB设备到DRAM或DRAM到APB设备;硬件的DRAMDMA数据传输方式:
由硬件执行的DRAM-to-DRAM的数据传输;双通道16位高速DAC,确保立体声音质输出;内置3个可编程锁相环(PLL)电路,为系统提供各路时钟;具备实时时钟(RTC);共6个16位CCP定时/计数器(具可编程自动重载功能);提供40个中断源:
分别为定时器、时基、外部输入以及键唤醒等,支持键唤醒功能;9通道12位ADC,其中一路为MIC专用ADC;USB功能:
支持USB1.1主机或USB1.1外设;UART功能:
具有通用异步接收机和发送;提供串行外围设备接口(SPI):
具主/从模式;内置Watchdog功能;提供LCD接口:
具TFT方式/CSTN方式;具备SunplusCMOS影像传感器,可连接SunplusCMOS传感器设备;支持CCIR-601/656CMOS影像传感器/TVE控制接口;支持SD卡和NAND型FLASH,用于海量数据存储。
3.2.3系统本核心模块
核心模块包括CPU最小系统,JTAG接口,Config配置单元。
CPU最小系统:
包括核心处理器SPCE3200(U4),128Mbit的SRAM存储器(U5,U6),64Mbit的NorFlash存储器(U7),128Mbit的NandFlash存储器(U8)如图3.3所示。
图3.3SPCE3200精简开发板
核心系统板直接采用了凌阳公司推出的精简开发板,以节省了硬件开发周期。
3.3人机交互单元设计
人机交互单元关系到数码相机与用户之间的信息传递,传统的人机交互单元是将输入信息和输出信息分开来作,也就是把操作按键和LCD显示分开来进行,这样一来就会占用数码相机的整体空间,输入的信息量也有限,这里我们采用TFT、LCD触摸屏,这样就使输入信息与输出信息统一起来[9]。
即节省了空间又增加