5352 科学技术与工程 视频数据压缩 12卷 函数编写应用程序实现视频采集。本文着重讨论 第二步的实现方法。 2.1.1 V4L2下的图像采集 2.1.2直接捕捉的视频信息的数据量是非常大的,如 果直接进行数据传输,会给网络造成很大的负担, 可能导致网络的堵塞,降低系统的效率。因此,在 将数据采集完后通过网络传输之前,要进行数据的 v4L2图片采集过程分为打开设备、设置图片格 式、分配缓冲区、读取数据、关闭设备等步骤。 (1)打开设备,获得文件描述符init fd=open (“/dev/video0”,O—RDWR,0) 压缩,减少数据的传输总量,数据传输到客户端后, 进行相应的解压缩,先后显示,这样可以大大地提 (2)设置图片格式:将图片宽设为1280,高设 为720,像素格式设为YUV。其他参数保持默认。 struet v412forrnat fmt; _memset(8fmt,0,sizeof(fert)); fmt type=V4L2一BUF_TYPE_VIDEO—CAPTURE; fmt.fmL pix.width=1280; fmt.fmL pix.height=720: fmL fmL pix.pixelformat=V4L2 PIX FMTYUYV: _if(ioctl(fd,VIDIOC—S_FMT,&fert)==一1) { return一1; } (3)分配缓冲区 首先向驱动申请三个缓冲区,为mmap映射做 准备。然后通过调用ioctl(fd,VIDIOC—QUERY- BUF,&buf)获得缓冲区长度(buf.1ength)和偏移地 址(fd,buf.m.offser),将这两个参量作为参数传给 mmap函数buffers[num].start=mmap(NULL, buf.1ength,PROT——READPROT—WRITE,MAP—— SHARED,fd,buf.m.offset)。缓冲区分配好了之后, 驱动并不会向里面写入数据,还需要将每个缓冲区 放人视频采集队列。ioctl(fd,VIDEOC—QBUF, &buf)。 (4)启动采集过程,读取数据 以上步骤完成了视频采集的准备工作,但驱动 还没有启动采集过程,应用程序需要调用VIDIOC— STREAMON ioctl系统,驱动才会开始采集数据。 enum v412一buf_type tpye=V4L2一BUF_TYPE_VIDEO—CAPTURE; ioctl(fd,VIDIOC—STREAMON,&type). (5)停止采集 首先停止采集过程ioefl(fd,VIDIOC—STRE— AMOFF,&type),然后使用munmap函数删除映射, 最后调用close(fd)关闭设备。 高数据的传输效率。 H.264是在MPEG—4技术的基础之上建立起 来的,其编解码流程主要包括5个部分:Estimation、 Transform、Quantization、LoopFiher、EntroypyCoding 本系统中采用高性能的H.264编码器对视频数据 进行编码压缩,其利用了开源的)(264库。 2.2视频数据的传输 视频数据经过H.264压缩编码后,要经过视频 传输模块传人Internet以实现视频的远程监控。传 输模块中使用RTP/RTCP协议来传输实时视频数 据。实时传输协议(RTP)及实时传输控制协议 (RTCP)是专门为多媒体数据实时传输而设计的传 输协议。 本系统使用JRTPLIB类库提供的方法来实现 底层的操作。JRTPLIB是一个面向对象的m库, 它完全遵循RFC1889设计,在很多场合下是一个非 常不错的选择。 2.3 JRTPLIB库的使用 2.3.1 JRTPLIB编译安装 首先从JRTPLIB的网站下载源码包,本系统使 用的版本为jrtplib一3.7.1.tar.gz。将源码包下载到 主机的/tmp目录下。 (1)进入工作目录:cd/tmp; (2)解压缩源码包:tar zxvf jrtplib一3.7.1. tar.gz2; . (3)然后对jrtplib进行配置和编译:cd jrtplib一 3.7.1;/configure CC=ann—v5t—g++: (4)修改Makeifle文件:将链接命令ld和ar改 为arnl—v5t—ld和ann—v5t—ar;make。 最后再执行如下命令就可以完成JRTPLIB的 安装:make install。至此,JRTPLIB库的安装完成, 在程序开发中可以直接使用该库提供的API函数完 5354 科学技术与工程 12卷 少时间冗余度。在实际编码中,为了节省码率,并 不传输每一帧的全部数据,而是利用运动估计求出 每一帧与其预测参数之间的差值。运动估计越准 确,差值的分布越趋近于零,差值块的能量越小,经 过变换、量化和编码后所产生的码流的比特率也越 少。因此,运动估计搜索的准确性程度直接影响了 编码的压缩性能。 3.2 l|L 264运动估计算法优化 目前有很多运动估计算法,一般有四类:块匹 配运动估计算法、递归算法、广流法和贝叶斯估计 法。而本系统采用的是一种高效的快速搜索算 法——UMHexag0nS算法。但是由于本系统的实时 性要求高等一些要求,本文对UMHexagonS算法进 行了一些改进,大体改进如下:首先将搜索模板改 为大棱形加小棱形模板,也就是本系统最终的搜索 模板——大六边形模板。根据阀值公式,可以将视 频序列分成三种类型:视频图像的运动剧烈强度较 低型、视频图像的运动剧烈强度中等型、视频图像 的运动剧烈强度较高型。改进算法中针对视频序 列运动类型的不同,使用不同的大六边形模板搜 索,当运动强度较低时,可以认为图像是相对静止 的,若是继续利用大六边形进行四层搜索,会浪费 搜索时间,所以采用两层大六边形搜索模式进行搜 索;当运动强度中等时,则利用大六边形进行三层 搜索;当运动强度较高时,可以认为图像画面变化 很剧烈,则利用大六边形进行四层搜索。 4系统性能测试 本系统在不影响正常监控的情况下对软件进 行了优化,主要目的是节省资源,降低功耗。视频 的压缩速度是实时监控的关键部分,本系统对 H.264编码算法进行了优化,使视频监控的性能得 到了大大的提高。分别对不同分辨率的图像进行优 化前优化后的测试,发现每帧数据的处理速度有明 显的提高。表1显示了优化前后数据处理时间。 表1优化前后视频数据处理时间 堡坌塑皇 垡 盟±塑 垡 亘 塑旦堕 竺1 160×120 66.362 37.285 320×240 158.357 126.283 640×480 437.484 314.736 1 280×720 1 245.649 785.403 5结束语 本WEB远程视频实时监控系统具有传统模拟 输出系统无可比拟的优势,采用开放式软硬件平台 和标准及通用接口协议,各模块分工细致,充分发 挥出自身性能优势,系统运转更加稳定流畅。如何 在不影响画质的前提下提高图像处理速率,如何将 图像处理速率与传输速率更好地衔接,这还要在以 后的学习中去探索研究。从长远来看,WEB远程视 频实时监控系统有巨大的潜在市场和深远的发展 前景。 参考文献 1毕厚杰.新一代视频压缩编码标准——H.264/AVC.北京:人民 邮电出版社,2005 2王宪,刘井权,戴曼.基于ARM平台的远程视频监控系统的 研究.微计算机信息,2007;1—2:178—180 3张小京,易志华.基于GPRS的无线视频监控系统.国外电子元 器件,2007;5:18—22 4韦东山.嵌入式Linux应用开发完全手册.北京:人民邮电出版 社,2008 5王彦杰,邓记才,李玖玲.H.264运动估计算法优化研究.信息 化研究,2009,35(1):29—32 6鸟哥.鸟哥的Linux私房菜:服务器架设篇(第二版).北京: 机械工业出版社,2008 7郭妍.基于MPEG—4视频监控系统的研究和实现.西安:西 安科技大学,2009:4—20 8陈华鹏.嵌入式移动视频监控系统的设计与实现.计算机工程 与设计,2007;28(12):2898--2901 (下转第5370页) 5370 科学技术与工程 12卷 Study of the Stresses Field Characteristics of a High Valley Slope ZHENG Xiao.yan ,GAN Yu-ye (Beijing Institute of Geolo ̄eM Engineering’,Beijing 100048,P.R.China; Be ing Ge0technical and Investigati。n Engineering Instimte(BGIEI) ,Beijing 100083,P・R・China) 『Abstract] Using the namerical simulation software,the stresses ifeld and grade standard to stress of a high val一 1ey s1ope with tectonic stress and unloading district are presented.Conclusions can be drawn as follows:1)the stress ifeld could be classiifed from self-weight stress and tectonic stress,combining with the in。situ stress field character’ istic.2 the homogeneous elastic slope without unloading distirct could be classiifed into two zones as the stress‘re。 leasing z0ne and the stress — stable zone from surface to inside without tectonic stress,stress。concentrating zone and stress.stable zone with tectonic stress.3)the slope with unloading distirct could be classiifed into three zones as the stress.re1easing z0ne,stress.concentrating zone and the stress —stable zone from surface to inside.4)the stress concentrating zone and value would be increasing with tectonic stress increasing.5)the stress concentrating zone transfers into the slope inside with the depth of unloading increasing. [Key words] valley slope stress field unlaoding district classify standard ) (上接第5354页) Design and Realization of WEB Remote Video Real-time DENG Zhi.1iang ,SUN Jin ,KE Sheng (chaIlg出。u c。11ege 0f In ati0n Techn0l。gyI,ChaIlgzh。u 213164,P.R.China; Jiangsu University of Science and Technology ,Zhenjiang 212003,P.R.China) [Abstract] A WEB remote real-time monitoring system is designed and realized based on¥3 C2440,discusses the。veraU structure and design th。ught of the system,and the design of vide。data acquisition and c0mpressi0n, transmission and瑚L0nitoring of video data center were described in detail.During this process it combines an embed— ded,video compression,network communication technology and SO on.The system also improves and optimizes H.264 coding algorithm and the data processing speed is signiifcantly improved.The program has the advantages of low cost,small size,easy to be installed and has broad application prospects. [Key words] real-time remote video monitoring embedded video capture and compression video transmission H.264 ell coding