基于WLAN的移动视频监控系统(转)

本文介绍了一种基于WLAN的移动视频监控系统,详细描述了视频捕获、MPEG4编码、无线视频传输等关键模块的工作原理。系统采用IntelXScale架构的移动终端,通过IEEE802.11b标准的无线局域网实现视频流的实时传输。文章还讨论了带宽自适应流量控制、环形缓冲区处理和守护线程等QoS处理方法。
摘 要:介绍基于WLAN的移动视频监控系统,描述了视频捕获、视频再现、无线视频传输等组成模块的原理和工作过程。附录中讨论了解决无线视频传输QoS的带宽自适应流量控制、环形缓冲区处理、守护线程等三种方法。

  关键词:移动视频监控系统;视频通信;QoS?

  手持移动终端通过无线网络调看远程数字视频图像可广泛用于工业控制、小区安全防范,以及新闻媒体服务等场合。文中给出符合IEEE802.11b的基于无线局域网WLAN并以Intel XScale架构的移动终端为表现形式的移动视频监控系统技术方案。?

1移动视频监控系统总体结构

1.1系统架构

  移动视频监控系统框架如图1所示,位于多处的网络摄像机通过LAN或VPN提供IP视频源,移动视频终端通过WLAN,经视频发布服务器的认证后,控制摄像机并调看实时图像。

  系统支持基于一点到多点IP组播协议(Multicast)。网络中,可定义224.0.0.0到239.255.255.255范围的多点IP组播地址。多点组播的优点在于满足网络规模较大时,可同时向众多终端用户同时提供多路图像。但须注意视频源负担的降低是以增加路由器负担为代价的,这可由视频发布服务器加以限定。
200673163420193.bmp
1.2系统模块

  视频监控系统采用主从(Client/Server)模式。主机端为视频流发布源,基于Windows操作系统,完成原始视频图像的采集、压缩编码和网络数据发送;从机端为播放移动终端,基于嵌入式Linux操作系统,完成网络数据接收、反向流量控制、云台远程控制、上层用户界面、视频解码与再现等功能。主要技术有:

  (1)选用Osprey-100图像采集卡,实现多路视频捕获。在编码器性能允许条件下,可实现多路视频传输。(2)视频编解码采用MPEG4编码标准,并协同网络对QoS进行处理。(3)视频流经基于IEEE802.11b的WLAN,通过UDP通道传输;由于WLAN无线信道特性,须加以必要的流量控制和QoS处理。(4)TCP反馈控制及其他数据交互通过TCP通道交互。

  图2系统由视频源端、WLAN、嵌入式移动终端组成。其中视频源端可分为:视频捕获、MPEG4编码、无线网络传输三模块;嵌入式移动终端可分为:嵌入式移动终端、MPEG4解码、视频再现三模块;WLAN与双方无线网络传输模块实现信息的交互。?

2视频捕获模块

2.1视频捕获模块概述

  该模块完成从模拟视频采集到捕获YUV数字视频流的功能。图像采集卡用YUV12格式将多路监控摄像机的模拟视频转换为多种格式的数字视频信号。
200673163427987.jpg
为捕获具有多样性,采用Microsoft的VFW(Video for Windows)软件工具进行视频应用程序的开发。其还提供了一系列基于消息的驱动编程接口(API),通过API可以实现视频捕获、编辑及播放等多种功能;利用回调函数可开发更复杂的视频程序。

2.2IPP优化视频编解码

  IPP(Integrated Performance Primitive)是Intel个人互联网用户架构中的重要组成部分,它在操作系统之上向应用程序提供功能调用,同时又直接立足于硬件,穿越了操作系统。IPP的最大优势在于对各个函数进行了汇编级上的优化;根据CPU的流水线和总线特性采取措施,可提高访问速度和处理速度。

  IPP库函数具有多层处理功能。对功能较弱的,可选择IPP库的底层函数;对于较强功能,可选用一个合适的高层IPP函数;用底层“原子”函数的组合也可替代高层函数,应算法要求还能作出改动,这使得对编解码算法优化有着很大的灵活性。

  该系统对编解码的具体优化过程见图3,按照MPEG4编码规范,在Micro Block层和Block层,用IPP作出算法优化,达到了大幅度提高编解码效率和提升系统实时性的目的。?

3视频再现模块

  视频再现指移动终端LCD显示屏对解压视频信号的实时播放。要求播放器尽可能快的与显示缓存交互。帧缓冲是Linux嵌入式系统中显存,它是一个提供显示内存和显示芯片寄存器从物理内存映射到进程地址空间中的部件。宜采用DMA通道不断地刷新LCD缓冲区数据。其实现流程如图4所示:将帧缓冲映射到进程地址空间之后,就可以直接进行读写操作,而写操作可立即反应在LCD屏幕上。具体实现是,打开/dev/fb0设备,并通过mmap系统调用进行地址映射,即可通过改写缓冲达到视频的实时播放。采用帧缓冲技术的优点在于高度的移植性、较低的系统资源占用率,以及稳定性,以满足实时播放视频的需要。
200673163428871.bmp
200673163432816.bmp
4无线视频传输模块

4.1无线网络搭建

  该模块借助CF无线网卡,通过基于IEEE802.11b标准的无线局域网(WLAN),与固定的无线AP(Access Point接入点),架构多点到多点的模式,完成实时视频的数据传输。该标准采用ISM(Industrial Scientific Medical)无线广播2.45GHz频段,最大速率为11Mbps,采用直接序列扩频(DSSS)传输技术,AP的覆盖半径为100~500m的微蜂窝区域。

4.2CF无线网卡驱动

  该工作重点在无线网卡驱动的改写与移植上,可选用基于Intersil Prism芯片组(Version3.0)的ET?CWB1000无线CF网卡,采用Linux Spectum24 PCMCIA驱动。如图5,Linux网络驱动程序结构可划分为四层:设备驱动/网络设备层、网络协议层、用户应用层。CF卡与PCMCIA兼容,PCMCIA控制器将卡连接到系统总线,将卡内存映射到主I/O和内存窗口,并将卡产生的中断路由到自由处理器中断线。
200673163434115.bmp
200673163438883.bmp
图6描述了Linux模块加载机制。CF接口与PCMCIA接口可用相同驱动模式,具体操作使对Specturn24驱动打入PCMCIA包,再用arm?linux进行交叉编译,将相应生成的模块移植到移动终端的文件系统的驱动模块目录/lib/module/2.4.19kerne 1/pcmcia(视具体内核名称而定)下,移植PCMCIA网络配置目录/etc/pcmcia以及初始化配置脚本/etc/rc.d/int.d/pcmcia,即完成CF网卡驱动移植。?

附录无线视频传输的QoS处理

1带宽自适应的流量控制

  宽带视频的实时传输需要一定的网络带宽。尤其当有多个用户同时访问同一视频发布服务器的时候,容易产生并发拥塞瓶颈。这时输出码流需动态调整,以适应网络状况的变化。图1所示为基于带宽自适应的传输网络结构,在流发布服务端和浏览用户端之间构造闭环的负反馈系统,发布服务端通过实时的探测网络传输状况,根据相关的控制策略实时的调整输出流码率,从而实现系统对带宽的动态自适应。其具体作法:目的端根据接收的视频流缓冲区的状况,实时管理环形缓冲区,力图使输出节奏均匀,并实时反馈相应的信息;发送端根据来自目的端的反馈信息调整发送的数据流量,调节媒体流的带宽。

  码率控制是基于网络可用带宽确定视频通信发送码率的技术。在系统自适应网络传输过程中,用户端不断检测码流传输质量因素,已发送的数据包的数量、丢失的数据包的数量等统计资料,经其处理后将信息交决策控制器;决策控制器根据相应策略控制相关组件,完成该发送码流的动态整合,并交发送端UDP发送组件,完成多媒体流的传输;浏览用户端UDP接收多媒体数据并交后续的网络播放器进行解码播放。

  为实现基于带宽自适应的传输,首先需要进行网络带宽的动态探测和评估,然后采用合适的调整策略来整合码流。网络状态的评估中,质量因素可以是丢包率、包延迟、缓冲区空间等参数。该系统采用数据包丢失率指标。接收用户终端不断测量丢包率,并通过TCP传回发送端,决策控制器通过丢包率与规定的阈值进行比较,来确定是增加还是减少码率。当丢包率大于上限阈值时,则减少码流速率;当丢包率小于阈值下限时,则增加码流速率。?

2环形缓冲区处理

  基于环形缓冲区的多线程技术如图2所示,较好的达到了视频连续、平滑码流、节约内存空间的目的。此外,借助这里的环形缓冲区和互斥锁,可以完全解决线程的同步问题。

  在内存区采用地址线性映射,开辟连续的内存块,保证了线程的访问速度,有效提高了解码效率。
200673163440888.bmp
3守护线程

  在移动终端程序中,特地引入守护线程负责流量管理,它不属视频程序的核心部分,而是独立地、周期性地在后台为视频各个线程执行监视任务。守护线程的原理类似于单片机的看门狗,定时检测运行情况,并作出分析,判断各个缓冲和线程运行状态;发现异常情况即时处理,避免线程崩溃,画面停滞。具体作法是,以轮询间隔(Poll Interval,PI)来确定轮询时需要等待的时间,这里PI设定值为1秒,负责监视环形缓冲的容量及各个线程的运行情况。当侦测缓冲量超过阈值或某一线程崩溃时,将根据各个线程的运行情况维持或重启线程。



  经系统整体性能测试知,MPEG4编解码性能良好,图像清晰,无雪花、滚动、停顿、马赛克等现象,延时小,占用带宽小,码率变化小,适用于WLAN无线环境。该系统具有良好应用前景。?

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10294527/viewspace-126001/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10294527/viewspace-126001/

考虑可再生能源出力不确定性的商业园区用户需求响应策略(Matlab代码实现)内容概要:本文围绕“考虑可再生能源出力不确定性的商业园区用户需求响应策略”展开,结合Matlab代码实现,研究在可再生能源(如风电、光伏)出力具有不确定性的背景下,商业园区如何制定有效的需求响应策略以优化能源调度和提升系统经济性。文中可能涉及不确定性建模(如场景生成与缩减)、优化模型构建(如随机规划、鲁棒优化)以及需求响应机制设计(如价格型、激励型),并通过Matlab仿真验证所提策略的有效性。此外,文档还列举了大量相关的电力系统、综合能源系统优化调度案例与代码资源,涵盖微电网调度、储能配置、负荷预测等多个方向,形成一个完整的科研支持体系。; 适合人群:具备一定电力系统、优化理论和Matlab编程基础的研究生、科研人员及从事能源系统规划与运行的工程技术人员。; 使用场景及目标:①学习如何建模可再生能源的不确定性并应用于需求响应优化;②掌握使用Matlab进行商业园区能源系统仿真与优化调度的方法;③复现论文结果或开展相关课题研究,提升科研效率与创新能力。; 阅读建议:建议结合文中提供的Matlab代码实例,逐步理解模型构建与求解过程,重点关注不确定性处理方法与需求响应机制的设计逻辑,同时可参考文档中列出的其他资源进行扩展学习与交叉验证。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值