危险的视频头论文(共3篇)
危险的视频头论文 篇1
摘要:头戴式虚拟现实眼镜可以将人对外界的视觉封闭,使观看者产生沉浸于虚拟环境中的感觉。为了实现这一效果,头戴式虚拟现实眼镜会将广角镜片放置在使用者的眼睛前,使得视频画面聚焦。由于广角镜片的使用会对画面产生枕形畸变,从而影响观看的效果;因此播放的视频画面要先经过桶形变换以抵消广角镜片的影响。此时使用者可以拷贝经过桶形变换的视频,从而盗版该视频。在这种情况下,视频的版权信息不仅需要在原始视频中验证,还需要在经过桶形变换后的视频中验证。提出了一种用于头戴式虚拟现实眼镜的视频水印方案;该方案使用基于扩频的水印嵌入方法,将数字水印模板嵌入到视频帧的中频中。对于遭受了桶形变换的视频帧而言,首先提出了一种桶形变换参数估计方法;然后对遭受了桶形变换的视频进行枕形变换以期恢复出桶形变换,前的画面;最后,对恢复的视频帧和水印模板进行相关性计算,以检测该视频中是否含有水印。实验结果表明,可以正确地从遭受桶形变换的视频帧中检测出已嵌入的水印,说明可以用于头戴式虚拟现实眼镜中的视频的版权保护。
关键词:头戴式虚拟现实眼镜,桶形变换,视频水印
因特网、数字媒体等信息技术的迅猛发展以及廉价计算终端的快速普及使得网络多媒体信息服务也得到了长足的发展。先进的信息技术虽然给广大人民带来方便; 但是也给盗版者提供了便利。因为任何人都可以通过网络轻而易举地得到他人的原始作品包括数字化的图像、音乐、视频等,同时还可以未经作者的同意而对原作品任意加以复制、生产、修改和再传输等。上述不法行为严重地侵害了作者的著作权,并对其造成巨大的经济损失。作为数字版权保护的技术手段之一,数字水印技术引起了广泛关注[1]。数字水印的基本手段是将版权信息( 称为水印) 嵌入到数字媒体中。水印的嵌入应当不降低原始媒体文件的质量,既在感觉上不易被察觉,又能够经受一定的攻击而不被清除,需要时可以通过检测嵌入的水印信息来鉴别数字媒体的版权[2]。
头戴式虚拟现实眼镜可以将人对外界的视觉封闭,使观看者产生一种自身沉浸于虚拟环境中的感觉[3]。随着暴风魔镜、索尼HMZ、三星Gear VR、Oculus Rift等产品的出现,头戴式虚拟现实眼镜已经走进了老百姓的生活。为了使用较低的成本达到使使用者获得虚拟现实沉浸感的目的,头戴式虚拟现实眼镜会将广角的光学镜片放置在使用者的眼睛前使得视频画面聚焦。而广角镜片的使用会对画面产生枕形畸变从而影响观看的效果。因此,头戴式虚拟现实眼镜需要对播放的视频画面进行预矫正处理,即对画面进行桶形变换,使得画面产生桶形畸变。以期使使用者便感受到无畸变的画面。头戴式虚拟现实眼镜的原理如图1 所示。在这种情况下,使用者可以拷贝经过桶形变换的视频从而盗版该视频。此时,对数字水印系统而言,包含视版权信息的水印不仅要能从原始视频中正确检测,还能在经过桶形变换后的视频中正确地被检测。在现有的文献中很难找到应用于头戴式虚拟现实眼镜的抵抗桶形变换的视频水印方案。因此,本文提出了一种可用于头戴式虚拟现实眼镜的视频水印方案以解决上述问题。该视频水印方案的总体框架如图2 所示。
1 水印的嵌入
数字水印的嵌入过程是基于扩频水印技术的[4],其具体包括以下3 个步骤。
( 1) 水印嵌入区域的选择: 对视频中的任意一帧I,设其大小为X × Y,以该视频帧的中心为中心选取正方形区域IC,设其大小为N × N像素,这里取N = max( X,Y) 。数字水印将被嵌入到该正方形区域IC内。
( 2) 数字水印模板W的生成: 根据水印嵌入密钥Key生成长度为L的伪随机序列Q ={q1,q2,…,qi,…,qL},其中qi∈{ - 1,1} 。为了提高本视频水印方法的安全性,特设置密钥Key,在水印检测时如没有正确的密钥将无法正确检测水印。这里,伪随机序列Q的长度设为N≤L≤N2/16。对大小为N × N的零阵列W0进行zigzag排序,根据排序结果将其第s + 1 个至s + L个元素用随机序列Q的L个元素逐个代替生成矩阵W1。这里设s = N2/4。然后,对矩阵W1进行离散余弦逆变换生成数字水印矩阵W。
( 3) 生成含水印的视频: 利用公式( 1) 将数字水印模板W嵌入到视频帧I中选定区域IC内,得到含水印的ICW,
式( 1) 中,α 为水印嵌入强度系数其取值越大水印的稳健性越强而水印的不可见性越低,反之亦然。用ICW代替视频帧I内的IC即可得到含水印的视频帧IW。
2 水印的检测
头戴式虚拟现实眼镜的广角镜片会对画面产生枕形畸变从而影响观看效果,因此视频画面会被预矫正即对视频画面进行桶形变换。同时,由于含水印的视频遭受了桶形变换攻击,这就给水印的检测带来了困难。从遭受桶形变换的视频中检测是否含有水印的过程包括以下3 个步骤。
( 1) 估计视频桶形变换的强度参数k: 桶形畸变的计算模型可用式( 2) 表示。
式( 2) 中,r是视频帧中心到未经过桶形变换的像素点之间的距离; rd是视频帧中心到桶形变换的像素点之间的距离; k为形变强度参数,k取正数。对于头戴式虚拟现实眼镜而言,k的大小是由其所配广角镜片的物理特性决定的。这里需要说明的是枕形变换和桶形变换同属径向变换,它们的计算公式相同,只是k取负数。设桶形变换后的帧为为了估算头戴式虚拟现实眼镜所设置的k,本方案取大小与相同的任意一幅图像作为测试图像P。分别采用不同的桶形变换参数k对测试图像P进行桶形变换,将变换图像的外围轮廓与的外围轮廓进行对比,轮廓最相近的变换图像对应的桶形变换参数即被视为视频遭受桶形变换时所采用的变换参数。
( 2) 对遭受桶形变换的视频进行枕形变换: 这里用枕形变换的方法对遭受桶形变换的视频进行矫正,以期恢复桶形变换前的视频。枕形变换的公式也是公式( 2) ,只是公式中的变换强度参数k为负数。通过公式( 3) 计算枕形变换的参数
式( 3) 中,为步骤( 1) 中估计出的桶形变换的参数,指数t的取值范围为0≤t≤3。利用公式( 2) 和参数对遭受桶形变换的视频进行枕形变换得到形状恢复的视频。
( 3) 检测视频中是否含有数字水印序列Q: 根据步骤1 和步骤2,对遭受桶形变换的视频帧进行恢复,得到恢复的视频帧记为以恢复视频帧的中心为中心取大小为N × N的正方形区域对进行离散变换,并对DCT变换后得到的DCT系数进行zigzag排序,取其第s + 1 个至s + L个元素构成序列根据水印嵌入时的密钥Key再次生成长度为L的伪随机序列Q = {q1,q2,…,qi,…,qL},其中qi∈{ - 1,1} 。利用公式( 4) 计算序列Q和的相关性R。
式( 4) 中
式( 5) 中,和分别为序列A和B的数学期望。如果序列Q和的相关性R大于阈值TR,则判定遭受桶形变换的视频中含有数字水印序列Q; 反之,则判定该视频不含有数字水印序列Q。
3 实验结果
为了验证本方法的有效性特搜集了25 部电影,并从中抽取了440 个帧用于测试。部分视频帧如图3 所示。
这里用不同的Key生成10 个不同的水印序列用于水印方案性能的测试。在所有原始视频帧中嵌入水印。嵌入强度取值为 α = 0. 1。所有嵌入水印后的帧与其原始帧之间的PSNR( peak signal to noise ratio,峰值信噪比) 值都大于44. 0 d B,平均值为48. 9 d B。一般而言,PSNR值低于30. 0 d B时才会使人眼感受到明显的降质[5],这说明嵌入强度 α =0. 1 时水印的嵌入并不影响视频的视觉效果。试验中,将在保持良好的视觉效果的情况下,对水印的鲁棒性能进行测试。
理论上讲,阈值TR可设置为0。但是,为了降低本发明的视频水印的误检率可以将阈值设置的更高一些。因此,特做了如下实验。利用不同的密钥Key生成长度为2 000 的伪随机序列20 000 个,然后利用相关性计算公式( 5) ,对这些序列两两做相关性运算,运算的所有结果的平均值为2. 709 ×10- 4,最大值为0. 099 7。因此,为了降低水印检测的虚警率,阈值TR的取值应该大于0. 099 7,这里取TR= 2 × 0. 099 7≈0. 2。
然后,选取了[0,1]之间的20 个不同的形变强度参数k对所有帧进行桶形变换攻击,共得到遭受桶形变换攻击的视频帧8 800 个。然后用本发明的水印检测方法对遭受攻击的8 800 个视频帧进行检测。在水印的检测室,一方面,使用10 个正确的Key产生水印序列根据公式( 5 ) 进行相关计算;另一方面,还采用错误的Key产生水印来进行相关性计算。实验结果显示本方法能够从所有8 800 个遭受桶形变换攻击的视频帧中正确地检测到嵌入的数字水印。实验结果如图4 所示。从图4 可以看出,提取的时候如果不能采用正确的Key则无法检测到图像中水印的存在。同时可以看出,本文所提出的水印方案可以有效地抵抗头戴式虚拟现实眼镜中的桶形变换攻击。
最后,将本文所提出的水印方案与经典的扩频水印方案[4]进行鲁棒性对比实验。实验结果如图5所示。通过图5 可以看出,本文所提出的水印方案在抵抗头戴式虚拟现实眼镜中的桶形变换攻击方面要明显优于经典的扩频水印方案。
4 结论
随着3D视频技术、虚拟现实技术的快速发展,对其安全的保护也提出了新的挑战。本文提出了一种可用于头戴式虚拟现实眼镜中的视频水印方案。水印嵌入时,利用扩频的方法将水印模板嵌入到原始帧中。在水印的提取时,首先对视频帧所遭受的桶形变换攻击的参数进行估计,然后根据估计出的参数对视频帧进行几何恢复,最后从恢复的视频帧中检测水印。本文搜集了25 部电影,并形成了包括440 个帧的测试数据库。实验的结果表明该水印方案可有效抵抗头戴式虚拟现实眼镜中的桶形变换攻击,并优于经典的扩频水印方案。
参考文献
[1] Tian H,Zhao Y,Ni R,et al.Geometrically robust image watermarking by sector-shaped partitioning of geometric-invariant regions.Optics Express,2009;17(24):21819-21819
[2] Tian H,Zhao Y,Ni R,et al.LDFT-based watermarking resilient to local desynchronization attacks.IEEE Transactions on Cybernetics,2013;43(6):2190-2201
[3] Pohl D,Johnson G S,Bolkart T.Improved pre-warping for wide angle,head mounted displays.Proceedings of the 19th ACM Symposium on Virtual Reality Software and Technology.ACM,2013:259-262
[4] Cox I J,Kilian J,Leighton F T,et al.Secure spread spectrum watermarking for multimedia.IEEE Transactions on Image Processing,1997;6(12):1673-1687
[5] Hsieh M S,Tseng D C.Perceptual digital watermarking for image authentication in electronic commerce.Electronic Commerce Research,2004;4(1-2):157-170
危险的视频头论文 篇2
在进行红外导引头半实物仿真试验中,需要对红外导引头的性能进行评估。在评估过程中,很重要的一个环节是对不同型号的红外导引头的视频信息进行采集和处理[1,2]。由于不同厂家不同型号的红外导引头在实现原理,组成和接口标准上都存在差异,因此需要红外导引头半实物仿真系统的视频采集模块具有通用性,能够适应多种视频制式,匹配多种硬件接口,在软件上能够屏蔽底层差异,实现与硬件无关。
分析了导引头视频采集常用硬件接口和软件方法,给出了一种基于Opencv和Directshow的红外导引头通用视频采集方案,在硬件层面,通过标准的PCI图像采集卡来连接不同类型导引头的视频输出线;在软件层面,通过Opencv中集成的Directshow模块对导引头视频进行采集。
2 红外导引头视频采集结构
在红外导引头半实物仿真系统中,红外导引头摄像头可以作为参试的部件参与到仿真过程中,其与图像处理仿真计算机相连,具体结构如图1所示。为了完成不同的红外导引头的性能测试工作,需要测试系统能够支持对不同型号和不同厂家的导引头进行性能评估。这要求视频采集模块具有通用性,在硬件上能够适应各类视频线接口,在软件上能够屏蔽底层硬件差异。
3 硬件接口通用性
在硬件接口上,导引头的视频输出标准可能为电视制式标准,PAL和NTFC,也有可能直接输出数字制式信号,即直接输出DVI、HDMI等数字视频信号[3]。
在电气接口上,可能是S端子视频信号线,也能是其他类型。针对可能存在的不同的导引头视频输出硬件接口。在具体的工程实现中,可以通过提供具有多种接口的视频采集卡来进行测试。
文中的半实物仿真平台的搭建中使用的是Windows操作系统,使用的是PCI总线的视频采集卡来进行视频采集。目前市面上主要的视频采集卡有天敏、大恒、大华、影音大师VI等。提供的采集卡普遍支持Windows操作系统,并支持各类视频硬件接口。因此通过PCI总线的图像采集卡可以解决导引头视频采集硬件通用性的问题。
4 软件接口通用性
为了实现导引头视频采集的通用性,在软件模块也需要有相应的通用性。能够完成实现与硬件无关。
4.1 常见的视频采集方法
目前,Windows操作系统的视频采集主要分为3种方法[4],基于VFW的实时视频数据采集,基于Directshow的实时视频数据采集和基于是视频采集卡自带的SDK的视频数据采集。
4.1.1 基于VFW的视频采集
VFW(Video for Windows)是Microsoft提供的数字视频软件开发包,其核心是AVI文件标准。针对AVI文件,VFW提供了一套完善的视频采集、压缩、解压缩、回访和编辑的应用程序接口(API)。开发人员可一利用VFW提供的API来进行视频捕获的编辑[5,6,7]。
VFW主要存在几点不足,(1)在连续捕获图像时的实时性能欠佳,(2)在进行视频保存的时候,需要弹出对话框来进行视频压缩格式的选取,这在一定程度上会影响视频处理系统的处理流程[8]。VFW技术出现技术较早,目前Microsoft正逐步采用Directshow取代VFW[9]。
4.1.2 基于Directshow的视频采集
Directshow是微软公司在Active Movie和Video for Windows基础上推出的新一代基于COM的流媒体处理开发包[10,11]。其使用Filter Graph模型来管理数据流的处理过程。使用Directshow,可以很方便地从支持WDM驱动模型的采集卡上采集数据[12,13],具体的原理图如图2所示。目前,主流的视频采集卡都支持Directshow,并配有专门的Direct X驱动程序。
4.1.3 基于视频采集卡SDK的视频采集
不同的视频采集卡提供商,一般都会提供与采集卡配套的软件开发工具箱(SDK),其形式一般是动态链接库或者静态库[14,15]。使用采集卡SDK进行编程,较为简单方便。但是在通用性方面,一般只在某一品牌的系列产品之间具有通用性。不同厂家之间的SDK实现机制和使用方法都有较大差别。
文献[16]指出,可以设计通用的采集流程基类,在基类中定义通用的采集流程,而在具体实现的时候,在子类中通过SDK中的函数来实现从基类继承的函数。但在具体的编程实践过程中,实现难度较大。首先各个厂家的视频采集和处理流程各不相同,有的采用回调机制,通过回调函数进行图像的处理,有的采用缓冲机制,一次采集2副图像,在采集第2副图像的同时进行第一副图像的处理。其次,各个函数的输入输出标准也不一致。所以在设计采集流程基类的时候难度较大,工程意义不强。
为了实现视频采集的通用性技术,采用Directshow技术来进行视频采集软件的开发。
4.2 基于Opencv和Directshow的视频采集
在进行具体的实践过程中,可以利用Opencv中的函数库进行程序开发。直接使用Directshow的API进行开发,代码较为繁琐,Opencv中封装了很多针对视频流的处理函数[17],能够非常方便地进行图像和视频的采集、处理、显示和保存。
在Opencv中,CCamera DS类对Directshow中摄像头的相关操作进行了封装,提供了对于摄像头的几项操作,分别是打开摄像头Open Camera,关闭摄像头Close Camera,返回摄像头数目Camera Count,返回摄像头名称Camera Name,返回图像宽度Get Width,返回图像高度Get Height。抓取一帧图像Query Frame。
因为Directshow和Opencv中的数据结构不同,所以需要进行数据格式的转换。其中,在CCamera DS中的Query Frame中进行了格式的转换,把采集到的视频数据写入到了Ipl Image格式图像中的数据段中。
在编写视频采集处理程序时,具体的流程如图3所示。其中视频采集过程的核心代码如下所示:
可以看到通过使用Opencv中CCamera DS类,视频采集的过程变得非常的简单,并且因为是基于Directshow的视频采集,在采集效率上能得到较好的保证。
5 实验验证
为了验证本方法的可行性和通用性,对HF-160-2双光吊舱中的红外摄像头进行视频采集。HF-160-2双光吊舱的视频输出制式为PAL制,视频输出信号线为S端子线。
分别采用大恒的DH-VT120型号PCI图像采集卡和天敏SKD3000型号的PCI图像采集卡进行采集。安装的驱动为Directshow驱动。运行的操作系统为Windows XP Professional,使用的开发环境为Visual Studio2008,使用的Opencv版本为2.3.1。
经过试验验证,DH-VT120型号PCI图像采集卡和天敏SKD3000型号的PCI图像采集卡在安装完Direct X驱动后,均可以直接通过采集程序进行采集,导引头吊舱中红外摄像头的输出帧频是25帧/s。利用Opencv和Directshow的采集软件能够达到25帧/s的采集要求,并成功在图形处理计算机上进行显示和处理。具体效果如图4所示。
6 结语
采用基于Opencv和Directshow的方法完成红外导引头视频的通用采集工作,能够采集不同输出制式和硬件接口的红外导引头输出视频。通过实验验证,只需安装好图像采集卡对应的Direct X驱动,就能完成相应的采集任务,而对相应的采集程序不需要修改,从而实现了视频采集的通用性。
摘要:在利用红外导引头半实物仿真系统对红外导引头性能进行评估的过程中,需要对不同型号的红外导引头进行视频采集,为此需要导引头视频采集模块具有通用性。针对红外导引头视频采集通用性问题,分析了常用的视频采集方法,采用了基于Opencv和Directshow的方式进行视频采集。从实验效果看,该方法能够采集出不同红外导引头中的视频信号,具有较好的通用性。
危险的视频头论文 篇3
重大危险源是指工业活动中危险物品或能量超过临界量的设备、设施或场所。国家安全生产监督管理总局在《“十一五”安全生产科技发展规划》中提出开展重大危险源安全管理等重大安全生产科技的研究, 为消除重大事故隐患、遏制重特大事故奠定了基础。
本课题的研究目的是基于Browser/Server模式, 利用组件技术, 结合流媒体和DirectShow技术, 设计一种易用、可扩展、动态适应网络状况的重大危险源网络视频监控系统。该系统遵循开放协议、软件管理和播放控制的标准化, 在统一的基于IP的Web框架中提供视频监控服务。客户端由互联网或局域网通过浏览器建立起与视频服务器的动态链接, 实现视频监控系统在重大危险源监管中的应用。
1 重大危险源视频监控系统总体框架
重大危险源视频监控系统的工作过程:由视频采集设备取得视频信号;通过线路将它们送到实时编码工作站——Windows Media编码器;负责编码 (压缩) 的编码工作站实时地将收到的数字视频信号压缩成所需要的格式, 同时发送给视频服务器——Windows Media服务器;Windows Media服务器将视频数据发送给提出请求的客户机或将压缩后的视频数据存放在硬盘上。用户可通过本地局域网访问视频服务器, 也可通过互联网访问。
Windows Media 是Microsoft公司的流媒体技术平台, 它包括Windows Media 压缩编码和网络传输控制2个部分, 如图1所示。
由于DirectShow对硬件有着天然出色的支持 (支持的硬件包括音视频采集卡、1394接口的数码摄像机、USB摄像头等) , 所以DirectShow 更适用于对音视频数据的采集。Windows Media 与DirectShow相互独立, 各有侧重点, 前者主要为流媒体应用领域提供解决方案, 而后者侧重于流式数据处理的应用框架设计。
由于Windows Media 与DirectShow具有相辅相成的关系, 因此, 笔者在网络视频监控系统的设计中充分考虑两者的特点, 在采集前端通过DirectShow对视频进行采集、存储, 通过Media服务器对视频进行流化及网络传输, 发布到各客户端, 如图2所示。
从图2可看出, 网络视频监控系统主要包括前端控制主机、Media服务器、Web服务器、用户浏览播放终端以及流媒体传输网络5个部分。其中前端控制主机实现对视频流的捕捉、压缩、本地浏览、存储、回放、本地广播及推向Media服务器功能;Media服务器通过与终端用户建立直接连接, 实现点播单播、广播多播向客户端进行媒体信息流的发布;Web服务器提供HTTP访问服务, 向浏览用户提供操作界面, 同时作为信息管理平台对Media服务器视频资源信息进行统一管理和资源定位;终端客户通过浏览器登录访问Web网站, 以获取实时浏览监控图象、视频回放等服务。
2 重大危险源视频监控系统关键技术
2.1 前端控制主机功能的实现
前端控制主机的功能是在DirectShow技术和Windows Media Format技术相结合的基础上实现的, 是远程监控开发的重点部分。
本系统采用DirectShow技术进行视频数据的捕获和处理。DirectShow将视频输入设备视为Filter, 要想进行视频捕获, 关键的一步在于获得视频输入设备的Filter。获得视频输入Filter后, 将它加入Filter Graph, 从Filter的输出Pin上即可获得捕获的视频数据流。
2.1.1 系统设备枚举
在DirectShowLib中通过系统设备枚举器 (System Device Enumerator) 以枚举的方式获得视频输入Filter。系统设备枚举的过程如图3所示。首先, 应用程序通过调用ICreateDevEnum创建1个系统设备枚举器;然后通过调用ICreateDev-Enum接口上的CreateClassEnumerator方法, 并传递相应设备种类的GUID就可获得该类设备的枚举器;接下来调用UCOMIEnumMoniker接口的Next方法对指定类型的设备标识 (UCOMIMoniker) 进行枚举;对于每一个枚举得到的UCOMIMoniker, 以调用UCOMIMoniker接口的BindToObject方法得到一个管理相应设备的DirectShow Filter。
2.1.2 视频采集、浏览及数据存储
视频采集用的Filter Graph一般比较复杂, 直接使用Filter Graph Manager上的IGraphBuilder接口构建该种Filter Graph难度很大。因此, DirectShowLib提供了一个辅助的Capture Graph Builder来简化该种Filter Graph的创建。在实际设计中, 通过创建辅助组件Capture Graph Builder, 并利用该组件上的ICaptureGraphBuilder2接口完成Filter Graph的创建。该实现过程如图4所示。
成功创建Capture Graph Builder组件之后, 还必须对该组件进行初始化, 即调用接口方法ICaptureGraphBuilder2.SetFilterGraph (pGraph) , 将Filter Graph Manager对象指针设置给它。该实现过程如图5所示。
完成Capture Graph Builder的初始化后, 使用ICaptureGraphBuilder2的RenderStream接口对指定类型的Pin完成后继连接。在预览和捕获应用中, 捕获设备前端Filter链路的构建是相同的, 仅在后端有些差异:预览时只接VideoRender, 而在捕获时可能还要接视频编码Filter, 使用WM ASF Writer将数据写到文件中去。
WM ASF Writer是与Windows Media 相关的Filter, 主要用于ASF文件的生成。WM ASF Writer Filter没有输出Pin, 输入Pin的个数和类型依据用户为Filter设置的Profile动态决定。WM ASF Writer内部使用WMF SDK的生成器来完成工作, 可以通过Filter上的IConfigAsfWriter接口调用ConfigureFilterUsingProfileGuid函数来选择Profile, 本系统使用的是Windows Media Video 8 for Dial-up Modem (No Audio, 56 kbps) 。
辅助组件完成了预览用的Filter Graph构建后, 接着将捕获设备Filter后面所有的Filter断开、删除。因此, 笔者在进行设计时将Filter链路抽象成2个部分:捕获设备Filter以前的部分 (包括捕获设备Filter本身) 定义为输入部分, 而捕获设备Filter以后的部分定义为输出部分。2个部分的Filter分开创建, 然后再进行连接。在具体的软件开发时, 对于预览和捕获这2种应用, 输入部分的构建是相同的, 输出部分需要根据不同的应用定制不同的Filter。视频采集浏览并写文件的Filter Graph如图6所示。
2.1.3 视频回放
DirectShowLib播放1个媒体文件, 首先需要创建1个Filter Graph。视频文件以ASF格式保存, 通过WMVideo Decoder Filter解压缩, 传递给Video Renderer Filter进行播放。视频回放的Filter Graph如图7所示。
2.1.4 本地广播及推向Media服务器发布
本地广播及推向Media服务器发布的实现是结合DirectShow技术和Windows Media Foramt SDK实现的, 具体步骤:
(1) 网络流化。
WMF SDK 使用生成器创建Windows Media 媒体内容, 生成器接收一定格式的Sample数据 (通常是非压缩格式的) , 然后经过特定的Windows Media编码器进行压缩编码, 最后将压缩数据流交给接收器 (Sink) 。SDK提供3种标准的接收器:文件接收器 (File Sink) 、网络接收器 (Network Sink) 和推接收器 (Push Sink) 。文件接收器将接收的数据直接写入本地文件;网络接收器将接收的数据流在本机的一个端口上广播;而推接收器将接收的数据传输到另一台Windows Media服务器上后再发布。
(2) 本地广播。
假设流化器计算机名为JUST-SUFE, 在8080端口上广播, 则启动流化器后, 网络内任意一台计算机都可通过Windows Media Player打开URL地址mms://JUST-SUFE:8080或http://JUST-SUFE:8080浏览监控视频 (注:客户端无法对广播流进行暂停、倒回、重启等控制) , 网络接收器工作模型如图8所示。在WMF SDK中, 网络接收器通过WMCreatWriterNetworkSink函数创建。如创建成功, 会返回1个IWMWriter-NetworkSink接口指针。通过该接口可设置网络传输协议、打开网络端口、设置最多客户连接数等。网络接收器创建成功并完成设置后, 就可通过IWMWriterAdvanced.AddSink将其设置给生成器。
(3) 推发布。
假设流化器计算机名为JUST-SUFE, Windows Media服务器名为JUST-SUFE, 数据流推向Windows Media服务器上的pub_push发布点。启动流化器后, 网络内任意一台计算机都可以通过Windows Media Player打开URL地址mms://JUST-SUFE/pub_push来浏览监控视频 (注:客户端无法对广播流进行暂停、倒回、重启等控制) , 推接收器工作模型如图9所示。在WMF SDK中, 推接收器是通过WMCreate-WriterPushSink函数来创建的。如果创建成功, 会返回一个IWMWriterPushSink接口指针, 通过该接口可以管理与Windows Media服务器的网络连接。与网络接收器类似, 在推接收器与Windows Media服务器成功建立连接之后, 就可以通过IWMWriterAdvanced.AddSink将其设置给生成器, 其它的工作也类似。
2.2 Media服务器的配置
为实现上述的推发布, Media发布服务器在提供流服务中起着关键的作用:响应多路浏览端的访问请求, 提供点播单播和广播多播服务。Media服务不是缺省安装的, 需要对Media服务器进行安装、配置, 具体步骤:
(1) 安装Windows Media Services
首先安装Windows 2000 Server, 打开“开始-控制面板-管理工具-管理您的服务器”或“开始-控制面板-添加或删除程序-添加/删除Windows组件”, 在其中勾取“Windows Media Service”项, 单击“详细信息”, 在其中选择“用于Web的Windows Media Services Administrator”以启动Windows Media Services的Web管理功能 (Windows 2000中可能没有这些选项, 只需要安装Windows Media Services即可) 。
(2) 启动HTTP服务
前端控制主机与服务器之间是通过HTTP协议传输控制的, 而在默认情况下, Windows Media 服务器的HTTP服务是禁止的, 因此, 需要启动HTTP服务。启动方法是在Windows Media 管理器中选择服务器的属性, 在“HTTP流和分发”的选项卡中, 选择“启用Windows Media广播站服务的HTTP 分发”。
(3) 避免与IIS冲突
如果Windows Media 服务器同时作为Web服务器, 则在启动IIS服务时, 会由于HTTP服务的默认端口是80而产生冲突。解决方法是修改其中1个端口。
(4) 设置用户帐号在Windows Media服务器上的权限
如果要在Windows Media 服务器上创建新的发布点, 需要具有相应的权限。设置权限的方法是在Windows Media 管理器中选择服务器的属性, 在“发布点安全性”选项卡中, 选择“启用访问控制列表 (ACL) 检查”, 设置相应权限。
经上述步骤处理后, 当预处理的监控图象编码数据通过传输平台传送到Media服务器后, 进行流式封装和媒体发布, 实现监控图象的现场实时浏览。在用户对历史记录信息进行点播回放时, 首先在Media数据库服务器中找到相应文件, 进行数据分离和提取, 然后交流发布服务器进行媒体流的发布。
3 重大危险源视频监控系统的实现
受某市安全生产监督管理局的委托, 安徽工程科技学院从2005年12月开始进行重大危险源视频监控系统的研究与开发, 现已完成原型系统的开发。该系统的整个开发过程在局域网中实现。计算机配置为Intel赛扬M1.5 GHz CPU, 金士顿768 MB内存, 集成显卡, 80 G硬盘, 10/100 Mbps的网卡。摄像头为30万像素多彩摄像头, 通过USB与计算机相连。前端控制主机和服务器端的软件都安装在一台计算机上, 安装Microsoft Windows 2000 Advanced Server操作系统, 提供IIS服务和Media 服务。开发平台选用Visual Studio .NET 2003, 开发语言选用CSharp, 开发软件包选用WindowsMediaLib.DLL (Windows Media Format SDK的CSharp 实现) 和DirectShowLib.DLL (DirectShow的CSharp 实现) 。系统实时监控与回放效果运行界面如图10所示。
4 结语
重大危险源视频监控系统属于安全科技领域, 只有建立起一个科学、有效、运转良好的安全管理体系和实施规范有序的标准化工作程序, 才能实现有效控制事态, 确保人员生命、财产安全和尽快恢复重建这3个目标。因此, 在当前的安全生产形式下, 重大危险源视频监控系统的研究具有重要的现实意义。
本文设计的重大危险源视频监控系统经过试运行, 性能稳定可靠, 效果良好。
摘要:文章从重大危险源安全监管的现实需要出发, 介绍了一种基于流媒体技术的实时远程视频监控系统的总体框架设计方案及其软、硬件结构。该方案综合DirectShow和Windows Media Format SDK技术, 开发了基于.NET平台的视频前端控制软件;通过对IIS和Media Server的综合运用, 简化了系统结构;充分利用PC机强大的处理能力对图象进行采集、实时压缩、编码、流化和发布, 远程用户只需通过浏览器就能观看到被控现场的视频, 边下载边播放, 时延小, 满足实时监控的特定要求;具有视频回放功能。试运行表明, 该系统性能稳定, 效果良好。
关键词:重大危险源,视频监控,流媒体,.NET,Direct Show,Windows Media Format
参考文献
[1]丁石孙.城市灾害管理[M].北京:群言出版社, 2004.
[2]吴宗之.中国重大危险源监控制度的形成和发展[C]//第二届中国安全生产论坛论文集.北京:煤炭工业出版社, 2004.
[3]国家安全生产监督管理总局.“十一五”安全生产科技发展规划[EB/OL]. (2006-09-05) [2008-03-02].http://www.chinasafety.gov.cn/2006-09/05/content_191878.htm.
[4]李华, 戴琼海, 曾坷.基于流媒体的现场直播大用户量并发播放的研究[J].计算机工程与应用, 2004 (6) :140~142.
[5]杨书刚, 刘轶.基于Windows Media技术的流媒体系统的设计与实现[J].山东理工大学学报:自然科学版, 2003 (6) :103~106.
[6]陆其明.DirectShow开发指南[M].北京:清华大学出版社, 2003.
[7]陆其明.DirectShow实务精选[M].北京:科学出版社/科海电子出版社, 2004.
[8]陆其明.Windows Media编程导向[M].北京:清华大学出版社, 2005.
【危险的视频头论文】推荐阅读:
电气操作危险点论文06-19
滑坡危险性论文08-14
危险有害因素分析论文10-10
视频图像论文10-17
音乐视频论文10-18
健康状况和危险因素论文06-16
代谢性危险因素论文10-29
移动视频传输论文07-08
短视频营销论文05-31
视频压缩技术论文06-04