新闻中心

EEPW首页>嵌入式系统>设计应用> 基于ARM-Linux多功能机器人的设计

基于ARM-Linux多功能机器人的设计

作者: 时间:2016-09-12 来源:网络 收藏

利用V4L编写获取视频图像的程序一般步骤为:打开视频设备;读取设备信息,即video_capability中的信息和vd->capability中的各分量;读取图像属性,即video_picture中的信息;更改设备当前设置;进行:将图像数据一帧一帧地读取到映射好的存储空间:调用ioctl(fd,VIDIOCGMBUF,buffer)获得帧信息,并把图像缓存块添加到图像采集队列;调用yuyv[i]=(char*)mmap(0,buffer. leugth,PROT_READ | PROT_WRITE,MAP_SHARED,fd,buffer.m.offset)将buffer中的数据映射到用户空间,此时图像数据以YUV的格式保存到yuyv[i]数组中,采集设备的设备文件映射到了内存区。调用ioctl(video->fd,VIDIOCMCAPTURE,(video->vmmaP)),开始一帧帧的截取视频。调用VIDIOCSYNC判断视频是否截取完毕。若调用成功,表明已成功截取一帧图像,可以进行下一次VIDIOCMCAPTURE调用。对采集的视频进行处理之后关闭视频设备。

2.2 嵌入式Web服务器的设计

嵌入式Web的作用是监听用户的服务请求,并根据请求提供相应的服务,用户通过Internet登陆客户端浏览器即可访问系统,实现在任何时刻、任何地点对监控现场进行远程监控。Web服务器系统结构如图3所示。

基于ARM-Linux多功能机器人的设计

连接监听部分持续监听来自客户端的连接请求,一旦发现请求便连接客户端浏览器;通过HTTP请求处理部分来分析接收到的请求:如果接收到请求的是静态网页请求,则由静态网页处理部分来处理,最终获得所需的HTML静态文件;如果接收到的请求是动态CGI请求,则由CGI动态请求处理部分来处理,最终运行相应的CGI程序。CGI程序接收到数据后,启动应用程序并返回执行结果。

2.3模块

模块由预处理、特征提取、模式匹配、建立模型、判决等部分组成,模块结构图如图4所示。

基于ARM-Linux多功能机器人的设计

1)预处理:完成语音信号的采样,对信号进行反混叠带通滤波处理,去除个体发音差异、设备、环境引起的噪声影响,基元的选取、端点检测、语音分帧以及预加重等工作;

2)特征提取:提取语音信息中反映特征的声学参数,即一些有效的特征矢量参数;

3)矢量量化:即码本设计,具体过程是:将包含k个参数的每一参数帧,构成k维空间中的一个矢量,之后对矢量进行量化。将K维无限空间划分为M个区域边界后,将输入矢量与这些边界进行比较,并被量化为“距离”最小的区域边界的中心矢量值。矢量量化的目的是针对特定的信息源和矢量维数,找到一种最佳矢量量化器,使得在同等量化速率下信息源通过矢量量化器获得更小的畸变值;

4)训练:在识别之前多次重复语音,从原始语音样本中去除冗余信息,只保留关键数据,再按照一定的规则对数据加以聚类,以建立每个使用者的模板;

5)模式匹配:根据一定的规则从输入的语音信息中提取出来的参量与训练过程中的模板进行比较,根据一定的模式分类算法得到判决结果。

3 系统测试及性能分析

利用具有高性能的S3C2440芯片的TQ2440开发板进行系统测试,移植内核版本为2.6.30的嵌入式操作系统作为核心平台,安装OV9650摄像头以及支持54 Mbps的无线网卡,选用同样支持54 Mbps的数据流的IEEE 802.11无线局域网协议,烧写并运行应用程序,能够完成图像的获取和实时的。在远程PC机浏览器上输入服务器网址和自行设定的端口号即可看到连续、清晰的视频监控画面,实现无线视频监控。将收集的语音信号通过MATLAB进行仿真我们可以得到一些不同颜色的符号,即两个语音文本的比对结果。图5为系统测试的效果图。实验测试证明了该方案可行性高,稳定性强。

基于ARM-Linux多功能机器人的设计

4 结论

基于S3C2440处理器和嵌入式操作系统构造一个具有定位导航、寻踪避障、物体定位、特征检测、目标识别、运动跟踪、实时监控等功能的智能移动机器人,系统体积小、成本低、功耗低、安装简便、稳定可靠、便于管理,远程客户端通过浏览器便可完成监控操作,能够适应多种需要远程监控的领域,如银行、仓库、视频会议、远程教育、智能小区监控等领域以及各种工业场所等。并实现过程中采用了模块化的思想,使系统具有良好的开放性,有利于功能扩展和系统升级。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭