DSP的手势识别电视遥控器设计_第1页
DSP的手势识别电视遥控器设计_第2页
DSP的手势识别电视遥控器设计_第3页
DSP的手势识别电视遥控器设计_第4页
DSP的手势识别电视遥控器设计_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

1、【Word版本下载可任意编辑】 DSP的手势识别电视遥控器设计 由于传统电视机遥控器的按键操作比较机械且缺乏娱乐性,设计了一种以DSP2812为的手势识别算法。通过将用户手势运动的信息转换成相应的红外信号,从而实现手势遥控电视机更换频道和调节音量的目的。该系统主要由双端口RAM通信的双DSP 并行处理器、CMOS 数字摄像头、红外遥控模块、上位机调试软件和以太网通信模块组成。实验测试说明,该系统能够实现用户手势图像的采集、手势动作的识别、红外遥控及以太网通信功能。 传统电视机遥控器是一种按键操控方式,其操作比较机械且缺乏娱乐性。本文提出一种采用直接判断使用者手部动作的方法遥控电视机,使用者在摄

2、像头拍摄范围内按照规定的摆放方式移动手部,就能够遥控电视机开展音量增减或频道变换等操作。设计使人们对电视机的遥控操作更加便捷、人性化,丰富大众的日常生活。 1. 系统设计方案 手势识别电视机遥控器是集合图像采集、手势识别和红外遥控三大主要功能的控制装置。依据要实现的采集图像能力和DSP 处理视频流能力的功能要求,确定系统构造如图1 所示。 图1 手势识别电视遥控器系统构造 本系统采用了双DSP 共同工作的方式,主要由六个模块组成。 1) 摄像头模块: 由摄像头OV7620 及驱动电路组成,负责手势图像采集。 2) DSP1: 是TMS320F2812,负责对图像采集及预处理,与上位机网络通信和

3、用户按键信息的输入。 3) 上位机: 显示实时采集的图像,图像处理结果和调试参数等。 4) 双端口RAM 模块: 实现两个DSP 之间的高效数据通信。 5) DSP2: 负责提取手势图像特征和向红外遥控模块发送指令。它从双端口RAM 获取图像数据,从图像中提取有用的特征,并将判断结果转换成相应的遥控指令。 6) 红外遥控模块: 负责学习电视机配套遥控器的红外遥控指令,将其放入指定的存储空间中。在DSP2 给出发射指令时,查询存储空间,获取对应的红外指令并发射。 2. 系统硬件设计 2. 1 双DSP 处理器及内存空间设计 本设计使用双TMS320F2812 的DSP 开展图像采集、图像处理并且

4、实现红外遥控和网络通信等功能。这样可以满足并行图像处理能力和快速响应的速度要求,同时两个DSP 扩展了512 K 16 位的RAM 空间,以满足图像处理的空间要求。 为了实现双DSP 之间的通信,系统采用Cypress公司的一款64 K 16 位的双端口RAM 芯片CY7C028 搭建一个数据通道。DSP1 把采集到的图像通过时间控制有规律写入数据通道中,DSP2 从数据通道中提取图像数据存放到自己的RAM 中,然后开展相关的图像处理。在设计工作状态时,使用双端口中断判优方式,数据传递采用握手的通信模式。当DSP1 向双端口RAM 中写完数据之后,通过中断握手的方式,通知DSP2 读取数据。D

5、SP2 要求数据时,也会以同样的方式通知DSP1,从而实现双DSP 高速有规律地数据传递。双端口RAM 与两个DSP 之间的硬件连接如图2 所示。 图2 双端口RAM 与双DSP 的硬件连接图 2. 2 图像采集电路设计 本系统直接使用DSP1 通过外部中断NMI 和INT2,分别同步摄像头OV7620 的VSN 和HREF 信号,同时通过绑定DSP 的8 根I /O 线同步读取图像到DSP 内存中,从而实现了系统的图像采集工作。为了让DSP 的时钟频率与OV7620 的时钟频率匹配,必须要降低摄像头的输出时钟频率。对摄像头OV7620 内部的存放器开展设置,到达减慢数据传输速度的目的。OV7

6、620 模块与DSP1 的硬件连接和OV7620 的同步读取时序分别如图3 和图4 所示。 图3 蓝牙发送模块接口电路 图4 OV7620 同步读取时序图 通过时序图可知,DSP 先捕获摄像头的场中断信号,准备好存储一帧图像的数组。然后,DSP 等待HREF 行中断信号。,在行中断中判断PCLK信号,当PCLK 处于高电平时,DSP 读取该像素值。为了在不丢失手势特征信息的前提下采集尽量小的图像,DSP 采集视野中间隔行的100 100 大小的图像,存放在100 100 的数组中。通过修改读取程序可以改变采集图像的大小。 2. 3 内存及DSP 网络通信设计 本系统采用RTL8019AS 与D

7、SP1 通过连接对应的地址数据总线,设置片选信号,实现DSP 的以太网通信。RTL8019AS 与DSP1 的硬件连接如图5 所示。 RTL8019AS 内部有两块RAM 区,一块16 K 字节,地址为0 4000 0 7FFF; 一块32 个字节,地址为0 0000 0 001F。RAM 按每256 字节为一页存储。一般将RAM 前12 页( 即0 4000 0 4BFF) 存储区作为发送缓冲区; 后52 页( 即0 4C00 0 7FFF) 存储区作为接收缓冲区。第0 页只有32 字节( 地址为0 0000 0 001F),用于存储以太网物理地址。要接收和发送数据包就必须通过DMA 读写R

8、TL8019AS 内部的16KB RAM。 图5 RTL8019AS 与DSP1 硬件连接图 2. 4 红外遥控模块电路设计 红外遥控模块包括三个部分: 接收部分、发送部分和数据处理部分。接收部分包括光电转换、解调、高速采样以及数据分析等模块,发送部分包括遥控发送和电光转换模块,数据处理部分包括中央处理以及存储模块。 3 系统软件设计 3. 1 手势图像预处理算法 手势图像提取算法选择帧间差分的方法实现手部图像分割。利用间隔短暂时间的两帧图像比较,获取两张图像运动方向的手部围成的一小段白色区域,然后采用阈值分割的方法对获取的图像二值化,消除噪声,根据此图像序列含有的白色像素点的多少来确定图像序

9、列中有无物体存在。对手势图像预处理的算法描述如下: 1) 从视频图像序列中选取相邻n 帧的两帧图像,其中前一帧图像为Pk-1( x,y ),如图6( a) 所示,后一帧图像为Pk( x,y),如图6( b) 所示; 图6 从视频图像序列中选取的图像 2) 为了减少计算量,将480 640 的图像隔4 行6 列提取像素点,左右各忽略20 列,上下各忽略40行,获得两帧100 100 的图像和,如图7( a) 和7( b) 所示; 图7 缩小后的图像 3) 计算后一帧与前一帧的差为Gk( x,y) ,得到目标的变化量,如图8 所示; 图8 两幅图像的目标变化量 4) 对帧间差分法得到的图像按选定的

10、阈值开展二值化,得到目标图像序列的二值化图像序列Fk( x,y) ,如图9 所示。其中, 式( 1) 中,T 为阈值。对于给定视频序列的图像,假设像素点k 处没有运动,其帧差dk服从均值为0,方差为2 的Gauss 分布N( 0,2): 式( 2) 中,H0表示无运动假设,2 是帧差的统计方差,通常认为它等于摄像头噪声方差的两倍。根据概率统计假设检验“3”法则和“正确的阈值T 应该能消除大部分噪声”的原则。经试验测试得阈值T选择在35 45 之间比较合适。二值化后的图像如图9 所示。观察Fk( x,y) 的图像序列,可以看到图像中的噪声很少,这是因为帧间差分法到达了加大目标信息的权重,同时抑制

11、了静态背景的效果;摄像头采集范围背景比较单一,光线均匀。 Fk( x,y) 中主要存在两大类的噪声。一种是由于光线变化产生的噪声,这种噪声往往以孤立的黑色像素点的形式出现。第二种噪声是一些面积较小的背景块。为了尽可能消除这两种噪声,可以求每个N M 小块的灰度平均值,根据灰度平均值可估计出白色区域的大小。当灰度平均值小于某一阈值时,可以认为是噪声,把对应的N M 个点赋值为0.算法实现如下: ( 1) 建立一个大小是Fk( x,y) 的1 /25 倍的矩阵来存20 20 个5 5 像素块的平均灰度值fk( x,y)。 ( 2) fk( x,y) 和Hk( x,y) 满足如下关系: 图10 噪声

12、消除后的图像 通过这种处理方法,原图像中的小块噪声和椒盐噪声基本被消除,手部图像边缘的某些像素点也会被当作噪声消除,但是不影响后续处理。经过噪声消除后的图像如图10( a) 所示。使用同样的处理算法,可以得到后一帧的图像处理结果如图10( b)所示。 3. 2 特征提取及动作识别 获取只含手部运动区域的图像Hk( x,y) 和Hk+1( x,y) 后,扫描出手部图像边界,通过比较与计算判断手摆放位置和区域中心位置Pk( xk,yk) 和Pk+1( xk+1,yk+1) .手部摆放位置可以判断手的上下或是左右运动。图像处理和特征提取流程图如图11 所示。 ( 1) Hk+1( x,y ) 和Hk

13、( x,y ) 是相同的纵向摆放位置,手部在左右运动。 ( 2) 根据列坐标的大小来判断手左右方向的移动如下: 判断上下运动的算法与判断左右类似。若出现无法判断的情况,则重新采集图像,开展处理和判断,直到能够判断方向为止。 图11 图像处理算法流程图 3. 3 红外遥控算法原理 本系统选择常用的一种编码方式uPD6121开展学习、解码和发射。红外遥控器的红外信号一般都是通过38 40kHz的载波调制而成。先对接收到的红外信号开展解调,再记录遥控编码信号的脉冲宽度。学习子程序的流程图如图12 所示。采用计数器对信号高低电平计数的方法采集数据并保存。 发射模块根据DSP2 发送的指令找到对应的编码

14、信号在外扩RAM 的位置,将编码调入内存,然后通过编码发送子程序,将编码调制在38 kHz 载波上发送出去。用定时中断0 产生38 kHz 的载波信号,用学习到的遥控编码信号的低电平去控制载波输出,此时定时器0 定时长度由相应的遥控信号低电平宽度计数值确定。如果需发射的遥控信号为高电平,关定时中断0; 如果为低电平,则开定时中断0,从而实现遥控信号的脉宽调制发射。发射子程序流程如图13 所示。 图12 学习子程序流程图 图13 发射子程序流程图 3. 4 网卡驱动程序及上位机软件设计 3. 4. 1 网卡驱动程序及UDP 协议实现 RTL8019AS 已经实现以太网通信物理层功能,只需初始化芯

15、片相应的存放器,编写DSP 下驱动,便可启动RTL8019AS.本系统采用TCP /IP 协议族中的UDP 协议( user datagram protocol) 开展通信,实现通过网络把DSP 采集到的图像信息发送到上位机。 3. 4. 2 上位机软件编写 上位机软件采用C#语言编写,实现UDP通信协议。上位机软件实现接收下位机的数据,复原图像数据并显示等功能。同时,上位机还可以向下位机发送命令,方便系统调试。 3. 4. 3 图像数据发送及复原 下位机采用UDP发送数据,把数据的每一行作为一个UDP数据包,一幅图像分成100个数据包开展发送。为了让上位机完整接收一幅图像,在每幅图像开始发送之前,先发送一个规定的帧开头数据包,在每一幅图像发送完毕之后,也发送一个规定帧结尾数据包。上位机根据这些标定将100个数据包利用C#语言的相关函数,转换一定的图片格式,在上位机开展显示。 4. 系统测试 4. 1 测试流程 创立手势样本库、手势图像预处理、特征提取、实时手势图像与库模型预测、识别结果、执行操作等。 4. 2 测试结果 本设计自定义手势及编号如图14所示,其中手势1表示开机,手势2表示关机、手势3表示换台的递增,手势4表示换台的递减,手势5表示音量增加,手势6表示音量减小等功能。 对组装好硬件电路系统开展整体测试。测试者在摄像头的拍摄范围内开展上述6种手势

温馨提示

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

评论

0/150

提交评论