您好,欢迎来到化拓教育网。
搜索
您的当前位置:首页多路视频远程传输系统的设计与实现

多路视频远程传输系统的设计与实现

来源:化拓教育网
维普资讯 http://www.cqvip.com 第16卷第1期 2006年3月 湖南工程学院学报 V61.16.No.1 Mar.2006 Journal of Hunan Institute of Engineering 多路视频远程传输系统的设计与实现 杨格兰 ,曹理宇 (1.湖南城市学院计算机科学系,湖南益阳413049;2. ̄0NA.Nf ̄军95147,广东广州510200) 摘要:多路视频远程传输技术是当前多媒体研究领域的热点.讨论了目前开发多路视频远程传输系 统模型,并提出了一个新的设计方案.重点研究了一个基于MPEG一4视频监控系统的实现. 关键词:视频;图像拼接;MPEG一4;DirectShow 中图分类号:TP334.3 文献标识码:A 文章编号:1671—119X(2006)01—0049—04 O 引 言 随着多媒体技术的发展,以及人们对安全保险、 工作环境以及视频质量等方面的要求不断提高,多 路视频远程传输技术将在越来越多的领域发挥重要 作用,例如,它可以应用于安全性要求高或危险性场 所的现场监控,如银行多路视频监控、卫星发射现场 1多路视频远程传输系统的组成及设计方 案 一般来说,一个多路视频远程传输系统可抽象 成两部分:现场监控站和监控终端.这两大部分要实 现的基本功能分别为:现场监控站周期性地捕捉多 路视频信号并压缩,然后把压缩后的视频数据拆成 UDP数据包发送出去;监控终端接收现场监控站所 发出的视频数据并解码,然后把解码后的视频数据 的远程监控等;还可应用于现场比较复杂的场合,如 商场监控、车站客流监控等;另外,多路视频远程传 输对视频会议也很有意义,因为一般分会场不只是 一个人,如果只传单路视频那么其他会场的人只能 通过屏幕显示出来.为了实现一个多路视频传输系 统,以往常常采用的做法如图1所示…[ ,现场监控 站对采集的多路视频流分别进行编码(为了叙述方 便,我们假设视频流为四路),并经过多路复用后通 过网络发送给监控终端.监控终端解复用,将各路视 频流分离出来,再经过缓冲并解码,然后送到屏幕指 定区域显示.最终,我们可以从屏幕上同时看到四路 视频,这四路视频采用均匀的四分屏方式显示(即四 路视频图像大小一致,上下各显示两路). 看到一个人的表情,这并非我们所要看到的效果.因 此及时跟踪和研究多路视频远程传输技术是一件非 常有意义的工作.然而,在传统的视频系统中,多画 面显示需要价格昂贵的视频切换器和画面分割器等 设备,如何在软件环境中有效地实现监控系统的多 画面显示,是一亟待解决的问题.本文针对上述情 况,提出了一种成本低、扩展性强的多路视频远程传 输方案. 多 —.-{lji 卜 去 __}—.-1到区域-显示 路 网络 复 用 复 至 亟H躯域 显示 用 —.-{¨1i }_-.-{__ _l_ 到区域。显示 --q缓 ・卜+l解码卜 到区域4显示 图l传统多路视频远程传输系统模型 收稿日期:2005—09—13 作者简介:杨格兰(1975一),男,硕士研究生。讲师,研究方向:信息隐藏、数字水印. 维普资讯 http://www.cqvip.com 湖南工程学院学报 这种思路使多路视频流各自显示,具有性 强,控制灵活等优点,其不足之处主要表现为:现场 监控站和监控终端都要分别为每路视频流开Socket 2006钲 监控终端开设多个缓冲区缓冲视频流,而且要开辟 多个线程分别对各路视频流缓冲、解码、显示,增大 了系统开销.另外,这个方案不好控制各路视频的同 步. 端口进行视频数据发送或接收,增大了网络开销;现 场监控站要开辟多个线程分别对各路视频流编码,  。......... .__J 频 新的 师流广———]图 — ‘‘ ——’—— 同 位厂——]——————] 像 __J 拼 接 _.1编码器r_——_-1拔 『-_+ MP ̄rgz!』  I I 拼搂罔像址示 。 ’ L 1 l 一-1. :二_J 。 .............. 。...... .....__J 图2多路视频拼接传输系统方案 通过以上分析,找出问题的症结在于:它自始至 终都是将各路视频单独进行处理.针对这种情况,我 们引入了一种新的设计方案,如图2所示,该方案不 再单独处理各路视频,而是在各路视频进入现场监 控站后,现场监控站周期性地对各路视频各取一帧, 压缩标准已成为大势所趋 J,它具有高压缩比、低 比特率的特性,能以最少的数据获得最佳的图像质 量,是新一代视频压缩标准.近年来,支持MPEG一 4的软件产品越来越多,非常成熟的主要有XVID 和DIVX,理论上两者差别不是很大,但在笔者的试 将四帧画面拼接成一副全新的画面.这个拼接过程 用矩阵来描述就是:假设从视频流i获取的一副图 像为图像i,图像i分辨率都为2×2,i=(1,2,3,4). 验中,发现后者的视觉效果要好于前者,因此在本方 案的实现中采用的是DIVX. 2方案的实现 Windows平台为多媒体信息技术的处理和集成 图像 为[ 三],图像2为[ ],图像3为 表示对应象素的颜色信息,则新拼接成的图像为 r 3 4 7 8] [ ],图像4为[ 1 ],其中矩阵中的元素 Control Interface)以及后来的DirectSlx ̄技术.其中,  1I1 一) 提供了强有力的支持,主要有早期的MCI(Multimedia MCI是window早期的多媒体编程接口,不是完全基 于32位平台及COM接13.而DirectShow使用了一种 【-9 10 13 l4j l1 ・不难看出,四副图像在新拼接 应用提供支持.与前者相比,DirectShow具有以下优 点:使得软件开发者只需统一按照I]ire(: 的 (rfOM接口来编写应用程序,而不用关心诸如具体使 用了哪种硬件设备及配置等问题,从而大大减轻了开 称为过滤器(Filter)的标准化组件来为不同的多媒体 成的图像中的布局与四分屏的布局是一样的.因为 现场监控站周期性地拼接图像会形成一条新的视频 流,这样,现场监控站只须将这条新的视频流编码传 输,监控终端接收、缓冲、解码,最后在屏幕显示,其 发者的负担;DirectShow的内部机制已经解决了媒体 流的同步问题;可以适用于大数量的媒体数据;支持 多种视频格式及动态影像压缩标准等.因此为了更好 效果跟原来的四分屏是一样的.这种做法不但克服 了原来方案的不足,而且在编码前就将多路视频变 成一路视频进行处理,使问题得到大大的简化. 当然,简化后的远程监控系统仍然要面临网络 地适应网络及多媒体开发的需要,本文采用先进的 DirectShow技术,在Vi ̄al C“6.0的开发环境下实 现了一个远程监控系统原型. 瓶颈的问题,在有限带宽的条件下传输数据量庞大 的视频流,如果不压缩是很难想象的,为此必须在传 输前对视频流进行压缩.目前选择MPEG一4视频 原型开发前先得安装DirectX SDK,本文选取 的是9.0版本.图3所示为该系统的过滤器图(Fil。 ter Graph).在现场监控站过滤器图中,四路视频流 维普资讯 http://www.cqvip.com 第1期 杨格兰等:多路视频远程传输系统的设计与实现 51 由四个视频采集过滤器来完成,这四个过滤器由硬 件驱动程序提供,DivX MPEG一4(Fast Motion)和 DivX Decoder Filter是非商业软件,可以从网上免费 DXSDK f Samples f 手手f DirectShow f Filters \)改造而成,因为该程序原来只支持MPEG一2, 现在只需对其中的&send.cpp和dsrecv.cpp中的 getmediatype和checkmediatype函数修改,以适应传 输MPEG一4的视频流.然后将编译得到的dsnet. 下载,一般国产播放器都自带有这两个组件,如金山 影霸等.Video Renderer由DirectX9.0自身提供. NetSender和NetReceiver这对过滤器可由Direct— ax文件注册,便可得到这两个过滤器. Show的SDK包中的一个例子程序DSNetwork(\  Vi1d..(]allluIe' I \ \  Vi『&‘r’(:aplmP 2 Video Caph Jre 3 \ ’ Image DIVXMPEG一4 — —・——-——・M‘1s£Ij‘・s (F f—MIllion1 ● Vide.Net S( ̄Jldei / Vide.CallhllP 4 / : 掩终端Fillei’( aI,11 图3远程数字视频监控系统Filter Graph 通过对Filter Graph中每个过滤器的分析,最后 只剩下Image Mo ̄ics过滤器需要重点开发.该过滤 器的功能是将四路视频流拼接成一路视频流.它是 个TransfoF1TI Filter,所以我们选择CtransformFil— ter作为它的父类来开发.我们可以将开发一个过滤 一它指定视频图像的大小、帧率等格式细节,我们可以 根据具体情况来设置视频图像的大小、帧率等格式 细节. 2.2缓存 统一了格式、调节了大小的视频帧数据在拼接 前还要经过缓存.不经缓存,可能会导致边读边写的 器的工作分成框架和逻辑两大部分,对于过滤器框 架部分的开发,因为每个过滤器的开发都近似,不再 介绍,具体细节可以参考文献[4].我们重点研究它 的逻辑实现部分,图4为逻辑实现部分流程图,从图 中可以看出,Image Mosaics过滤器的逻辑流程主要 分为以下四步: 2.1统一格式 错误.而视频巨大的数据量又决定了缓冲区不能取 得过大,每个缓冲区只缓冲一帧会影响效率,因此综 合考虑,每路视频流只取两帧大小缓冲区,即假设某 路视频帧的分辨率为M×N,则该路视频流的缓冲 区大小为M×N×3×2字节(其中,3代表一个象素 由3个字节表示,2为缓冲区缓存的帧数).这样就 可实现边缓存边处理,即对一个缓冲帧处理的同时, 在拼接前要检查各路视频流的媒体类型,媒体 类型实际上是DirectShow定义的一个数据结构AM —可对另一个缓冲进行缓存拷贝,不过,处理之前要对 MEDIA~TYPE,我们根据其中的majortype是 当前正在处理的帧缓存加锁,以免读取脏数据,直到 处理完后才解锁,只有解锁后的缓存帧方可对它进 行数据拷贝,数据拷满后就可交给拼接程序进行处 理了,这样两帧缓存轮番交换角色,协同完成缓存处 否为MEDIATYPE~Video,来判断媒体流是不是 纯数字视频流;如果是视频流,则继续看它的sub. type是否为RGB格式,如果subtype是YUV格式, 则需修改采集设备输出格式.选择RGB格式的理由 理任务.对每一个缓存帧的状态转换如图5所示. 2.3拼接 有三:其一,ROB格式一般采集卡都支持;其二, RGB格式利于象素级操作,不像YlJV格式,例如, YU 儿,四个象素中,只有第一个象素有Uv分 拼接的本质就是将原来的多个象索矩阵通过一 定的算法变成一个象索矩阵.因为象素矩阵以数组 量,不利于象素插值或抽取;其三,平面(planar) YUV格式使用3个数组分开存放YlJV3个分量, 的形式存储,所以可以说,拼接就是对多个数组按照 一定的规律对其元素进行取舍和复制,形成一个新 增大了拼接时的工作量.接下来看formattype,通过 的数组的过程.本文选取具有代表意义的四路视频 维普资讯 http://www.cqvip.com 52 湖南工程学院学报 2006正 数据也拷进来,形成一副全新的图像,图像大小为 2M×2N. 如果扫描方式为从下往上,拼接算法如下:先对 图像3和图像4从倒数第一行开始进行行操作。依 次做到第一行为止;然后,对图像1和图像2从倒数 第一行开始进行行操作,依次做到第一行为止.形成 图4 Image Mo ̄ai过滤器逻辑流程图 对等拼接来进行拼接算法的研究. 图5缓存帧的状态转换图 拼接前首先判断图像的扫描方式:从下往上 (Bottom—up)和从上往下(Top—Down).前者在进 行图像数据存储时,是先从最后一行存起依次存到第 一行.如前面提到的图像i的存储数组为(1,2,3,4);后 者存储数据的顺序恰好与前者相反.如图像1的存 储数组为(3,4,1,2).图像的扫描方式可通过 BITMAPINFOHEADER数据结构的biHeight成员 值的正负来判断:正数表示从下往上,负数表示从上 往下. 如果扫描方式为从上往下,则拼接算法很简单. 假设四路视频图像大小都为M×N,首先拼接图像 1和图像2组成新图像的上半部分,具体如下:先定 义行操作,即先拷贝图像1的第i行数据,接在后面 将图像2的第i行数据也拷进来,组成新图像的第i 行数据.从第1行到第N行进行行操作,就拼成了 一个2MxN的图像.类似地,将图像3和图像4的 的图像大小为2M×2N,扫描方式也是从下往上的. 2.4将图像数据拷贝到Sample中 通过公有接口方法IMemAllocator::GetBuffer 取得一个空Sample(Sample大小问题已经在框架部 分协商好了),假设指向该Sample的指针为pSam. ple.指向新图像数据的指针为mFrameBuffer,通过 CopyMemory(pSample,mFrameBuffer,2M×2N)就 可将mFrameBuffer指向数据拷贝到Sample中. 以上流程周期性地执行,即可得到一路新的视 频流.为了保证系统的实时胜,建议将拼接算法设为 内联函数(一inline),以提高函数调用的效率.另外, 建议编译时使用VC的Maximize Speed优化. 3结束语 在分析原有远程视频监控方案的基础上,提出 了一种改进方案,不但使系统效率得到了提高,而且 使多路媒体流的同步问题得到了简化.另外,如果要 增加传输视频的路数,只要修改拼接算法就可以了, 并且无需升级硬件,这样能大大增强系统的可扩展 性.在实现时,采用DirectShow技术,使程序开发人 员从复杂的数据传输、硬件差异、同步性等工作中解 脱出来,可以留出更多的时问和精力来考虑逻辑实 现.开发Image Mosai ̄过滤器时,采用的拼接算法 计算量不大,所消耗的资源相对较少,能较好地满足 系统实时陛和可扩展性要求.笔者在对系统进行试 验时,试验平台如下:两台微机,其配置如下,CPU 为赛扬2.4G,256M的DDR内存,显卡为Geforce4 MX440;操作系统都为WINDOWS XP SP2.一台作 为发送端,一台作为接收端.摄像头采用subtype为 RGB24,图像大小为320×240的格式采集视频,在 接收端能看到连续640×480的视频图像,画面比较 清晰、流畅.笔者在GraphEdit中通过查看Video Renderer过滤器的属性页,在质量一栏中得到的数 据如下:已播放帧数为17143,达到的帧平均速率 23.16,抖动12 ms.实践证明,本文提出的方案及其 实现是可行和高效的. (下转第88页) 维普资讯 http://www.cqvip.com 88 湖南工程学院学报 2006年 学报,20o2,24(8):28—31. 学,2001,Z2(2):211—213. [3]汤新怡,等.水泥固化土工程特性试验研究[J].岩土工 [9]童小东,等.水泥土的弹塑性损伤试验研究[J].土木工 程学报,2000,(5):549—554. 程学报,2002,25(4):82—85 [4]李建,等.水泥土力学性能试验研究[J].铁道建筑, [1O]印长俊.水泥土流变力学性能的试验研究[D].湘潭: 2001,(8):31—33. 湘潭大学,2003. [5]崔江余.深层搅拌桩桩体材料力学性能分析[J].地基 [11]顾明芬.水泥土强度及其微观结构的试验性研究[J]. 基础工程,2001,11(4):5—8. 山西建筑,2004,30(19):59—6O. [6]朱艳红.水泥土性能的试验研究[J].港工技术与管 [12]肖林.建筑材料水泥土[M].北京:水利水电出版社, 理,2003,(3):4~8. 1987. [7]彭建忠,等.水泥土强度的试件形状和尺寸效应的试验 [13]黄鹤,等.水泥土材料力学性能的实验研究[J].太原 研究[J].岩土工程学报,2002,24(5):580—583. 理工大学学报,2000,31(6):705—709. [8]梁仁旺,等.水泥土的力学性能试验研究[J] 岩土力 Reviews on Mechanics Properties of Cemented..soil LIU Xiao—ming,FU Hai—xiong,GUO Ming—qin (Hunan Road and Bridge Corp,Changsha 410000,China) Abstract:Asymptotic homogenization theory is applied to calculate elastic properties of cemented—soil.The sim— plification calculation model of the cemented—soil is put forward and a computational program combined with fi— nite element is written.Then comparisons of the experimental results and the calculatde results are presented. Key words:cemented—osil:unconfined compre ̄ive strength;stress—strain diagram;rheology;homogenization method;forecasting method (上接第52页) 频远程实时监控系统[J].计算机工程与应用,2003,35 参考文献 (10):44—46 [1]程治国,刘允才.多画面远程监控系统中关键技术的实 [3]Overview of the EG一4 Standard[S]-IsO/JEC 现[J].微型电脑应用,2003,19(12):84—86. JTCE1/SC29 G11,Mar,2000,N3342. [2]卢金明,郭云怡,张永林.基于MPEG一4的数字视音 [4]陆其明.DirectShow开发指南[M].北京:清华大学出 版社,2003. Design and Realization of Remote Video Multiplex System YANG Ge—lan ,CAO Li—yu2 (1.Dept.of Computer Science,Hunan City University,Yiyang 413049,China; 2.95147 Armies of the Chinese People’S Liberation Army,Ouangzhou 510200,China) Abstract:The technology of Remote Video multiplex has been an active area of research in the field of multime・ dia.This paper discusses the current model of designing a remote video multiplex system,and then proposes a new design of this system.Finally,the realization of a video surveillance system based on MPEG-4 is explored. Key words:video;image mosaics;MPEG一4;DirectShow 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo9.cn 版权所有 赣ICP备2023008801号-1

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务