基于MFC5272的视频网络监控系统设计详解

2019-01-28 14:10:34 来源:网络
标签:

 

随着计算机技术及网络技术的迅猛发展,公安、安防行业的发展趋势必然是全面数字化、网络化。传统的模拟闭路电视有很多局限性:传输距离有限、无法联网,而且模拟视频信号数据的存储会耗费大量的存储介质(如录像带),查询取证时十分烦琐。

 


基于个人计算机的视频终端功能较强,但稳定性不好,视频前端(如电压耦合元件等视频信号的采集、压缩、通讯)较为复杂,可靠性不高。基于嵌入式视频的网络不需要用于处理模拟视频信号的个人计算机,而是把视频服务器内置一个嵌入式Web服务器,采用嵌入式实时多任务操作系统。

 

由于把视频压缩和Web功能集中到一个体积很小的设备内,可以直接连入局域网,即插即看,省掉复杂的,安装方便(仅需设置一个IP地址),用户也无需安装任何硬件设备,仅用浏览器即可观看。

 

基于嵌入式的视频网络监控系统将嵌入式系统连接上Web,即视频服务器内置一个嵌入式Web服务器,摄像机传送来的视频信号数字化后由高效压缩芯片压缩,通过内部总线传送到内置的Web服务器上。

 

1、系统总体框架

嵌入式Linux视频网络监控系统是电工电子装置、计算机软硬件以及网络、通信等多方面的有机组合体,它以智能化、网络化、交互性为特征,结构比较复杂。假如利用OSI七层模型的内容和形式,把相应的数据采集控制模块硬件和应用软件以及应用环境等有机组合,可以形成一个统一的系统总体框架。

 

摄像机传送来的视频信号数字化后,经过压缩,通过/将数据送到内置的Web服务器,嵌入式LJnux系统的10/以太网口实现接入网络,将现场信号送到客户端。整个系统的核心是嵌入式Linux系统。监控系统启动后,嵌入式Linux系统启动Web 服务程序,接收授权客户端浏览器的请求,Web 将根据通信协议完成相应的监测。

 

2、系统实现

2.1 硬件平台设计

本系统以公开的嵌入式Linux源代码为基础,根据设计的嵌入式目标板编写相应的Bootloader程序,然后裁剪出合适的内核和文件系统。目标平台CPU采用公司生产的ColdFire嵌入式处理器MFC5272。MFC5272采用ColdFire V2可变长处理器核心和DigltalIDNA技术,在时钟下能够达到63Dlnrystone2.1MIPS的优良处理能力。

 

内部SIM( IntegratedModule)单元集成了丰富的通用模块,只需很少的外围芯片就可以实现两个串行口和一个USB Slave接口。MFC5272还内嵌一个FEC(快速以太网控制器),片外扩展一片LXT97l,方便地实现了一个100/10 BaseT的以太网接口。能够与常用的外围设备(如、收发器)实现无缝连接,从而简化了外围电路的设计,降低了产品成本、体积和功耗。

 

2.2 软件设计与实现

软件结构采用的是浏览器,服务器(B/S)网络模型,即由客户端通过Web向服务器提出请求,服务器对请求做出确认响应并执行相应的任务(如向客户端发送组播地址、图像格式、压缩格式等),建立连接后就可以在客户端监控被控点,从而实现远程网络监控。服务器(Web Servei)端即现场监控点的软件结构包括采集模块、压缩编码模块、网络通信模块、控制模块等。

 

2.2.1 视频采集模块设计

由于摄像机得到的是模拟的视频信号,不能直接为计算机使用,因此要使视频在网上传输,必须首先对其数字化。本系统选用的视频采集卡为公司的Bt848卡,该卡不需要任何本地缓存来存储视频像素数据,还能够充分利用基于PCI总线系统的高带宽和固有的多媒体功能,并且能够与多媒体设备实现互操作。

 

在整个系统中由于视频采集的速度通常高于应用软件取得数据并进行处理的速度,因此为了保证视频数据的连续性,采用了三缓存结构,缓存A是Bt848视频采集的目标地址,在指令的直接控制下,采集的数据都先存放在这个缓存中;B和C组成乒乓式结构循环往复使用,当某一帧数据采集完毕后,产生中断,在中断服务程序中将缓存A的数据复制到缓存B(或C)中,然后采集下一帧,当下一帧数据采集完后.再将缓存A中的数据复制到缓存C(或B)中,当应用程序需要数据时就从缓存B或C中读取最新的一帧图像。缓存B和C交替使用,能够保证应用程序从缓存读数据的操作和驱动程序向缓存写数据的操作不会发生冲突,避免了数据的损坏和迟延。

 

2.2.2 视频压缩编码的设计

本设计选用了基于对象的视频编码技术,首先对输入的任意外形的VOP序列,用基于块的混合编码技术编码。处理顺序是先帧内VOP,后帧间VOP和双向猜测VOP。

 

在对VOP的外形信息编码之后,取得任意外形VOP的采样,每个VOP用宏块栅格划分成不相交的宏块,每个宏块含有四个8×8的像素块,以进行运动估计和补偿及纹理编码。已编码的VOP帧保存在VOP帧存储器中。运动向量在当前VOP帧和已编码VOP帧之间计算。对将被编码的块或宏块,计算其运动补偿猜测误差。运动补偿猜测后的I-VOP及误差用8×8块DCT编码,并进行DCP系数的量化,然后是行程编码和熵编码。

 

最后,外形、运动和纹理信息复合成VOL位流输出。这种编码方法可以答应用户修改、增加或重定位一个视频场景中的对象,甚至可以转换场景中对象的行为。对于不同的带宽和计算复杂性需求,不必针对每种情况分别编码,可以使用同一个视频位流,而采用不同的参数以选择不同的层以获得灵活性。在出现网络拥塞、丢包等现象时仍能提供连贯性较好的视频图像。视频压缩编码进程将编码后的的视频存放到已编码视频缓冲队列中,同时激活或等待直播进程和存储治理进程的相应处理。

 

2.2.3 网络通信模块设计

网络通信模块是系统的主体部分,它包含三个数据通道:监听通道、控制通道和视频数据通道。监听通道用来传输控制前端设备的命令数据;视频数据通道用来传输各个组的视频数据。三个通道采用不同的通信端口,所以各个通道传输数据彼此独立。网络通信模块设计开发是通过网络编程接口(Windows ,简称Winsoek)来实现的。按照系统浏览器,服务器的阿络传输模型。在服务器端建立了以为类型的监听套接字、控制套接字;在客户端建立了类型的请求套接字、控制套接字,这些都是采用ICP协议封装传输数据的。 ARM开发论坛

 

另外,在服务器和客户机两端都用到了一个组播类(CMuhieast),它是专门为视频传输而封装的类。由CObject派生而来,其中定义了以类型的收发视频数据的套接宇和组套接字,从而实现了用组播通信方式来传输UDP协议封装的视频数据包。系统中IP网络数据通信流程如图3所示。

 

下面给出在服务器端建立监听套接字和控制套接字的程序。

 

int ret="O"

BOOL bFlag="TRUE"://设置套接字为可重用端口地址

ret=setsoekopt(IInfo.listen,SOL_SOCKET,SO_REUSE

ADDR,()*&bFlag,sizeof(bFlag));

SOCKADDR_IN sockAddr;

*addr=severaddr.GetBuffer(0); //定义监听套接字 字串4

sockAddr.sin_family=AF_INET;

sockAddr.sin_addr.S_un.S_addr = inet_addr(addr);

sockAddr.sin_=htons()

if((IInfo.1istenSoeket,(LPSOCKADDR)

 

2.2.4 控制模块设计开发

控制模块实现了用户对前端设备如、和画面切换的控制。服务器在接收到由客户中心监控终端发送过来的控制信息帧后,对其进行判定解析,并送入各个相应的控制部件接口,以实现相应的控制。

 

3、实验结果

将的web服务器连接到局域网,然后接入Intemet,给web服务器分配一个IP地址。在用户终端,由于使用普通的浏览器只能显示单画面,很不方便,使用微软公司的VC6.0配合微软的浏览器控件,只需几分钟就可完成一个多画面的浏览器软件。在浏览器的地址栏中直接输入视频服务器的地址,即可在浏览器页面中播放远程实时稳定、流畅的图像,取得了良好的监控效果。

 

基于嵌入式Linux视频的网络监控系统的Web服务器直接连入网络,没有长度和信号衰减的限制,同时网络是没有距离概念的,彻底抛弃了地域的概念,扩展了布控区域。又由于视频压缩和Web功能集中到一个体积很小的设备内,直接连入局域网或广域网,即插即看,系统的实时性、稳定性、可靠性大大提高,无需专人治理,非常适合于无人值守的环境。

 
关注与非网微信 ( ee-focus )
限量版产业观察、行业动态、技术大餐每日推荐
享受快时代的精品慢阅读
 

 

继续阅读
基于嵌入式系统的汽车移动终端软件系统设计

实时操作系统是嵌入式应用软件的基础和开发平台,应用程序都是建立在它之上。实时嵌入式操作系统的种类繁多,大体上可分为两种:商用型和免费型。商用型的实时操作系统功能稳定、可靠,有完善的技术支持和售后服务,但价格昂贵。免费型的实时操作系统在价格方面具有优势,目前主要有RTOS、μC/OS等。

使用32位单片机设计电能计量自动抄表系统

我国社会经济的快速增长直接促进了电力工业的迅猛发展,电力需求不断增加,供应日趋紧张,如今的电力系统已成为一个庞大复杂的多元化系统。为了保证电网正确、安全的商业化运营,必须有一套计量精确、功能强大的电能计量计费系统。

详解Linux和UNIX中的ps命令

你可以使用ps命令。它能显示当前运行中进程的相关信息,包括进程的PID。Linux和UNIX都支持ps命令,显示所有运行中进程的相关信息。ps命令能提供一份当前进程的快照。如果你想状态可以自动刷新,可以使用top命令。

Linux下的网关、路由概念解析及设置命令参考

路由(Routing):路由是指从一个设备(一般指路由器)的接口上接收到数据包,依据设备所既定的某些规则,将数据包转发到其它接口的 “过程”。路由工作在OSI参考模型第三层——网络层的数据包转发设备。

BlackBerry QNX:在1+2+7道路上探索的车载软件王者
BlackBerry QNX:在1+2+7道路上探索的车载软件王者

提及BlackBerry,大家也许想到的更多的是其独特的全键盘手机,然而它却早就完成了华丽的转型。

更多资讯
80年历史看三星半导体超越英特尔绝非偶然?(下篇)
80年历史看三星半导体超越英特尔绝非偶然?(下篇)

在上篇中我们回顾了三星半导体的诞生以及它对手机和存储芯片的倾力投入和一段艰苦岁月。本文我们继续看这家公司怎么成长为芯片产业的一哥。

IBM如何从一个落伍者重回数字计算第一梯队
IBM如何从一个落伍者重回数字计算第一梯队

IBM在上世纪80年代的信息革命中,不情愿地成为了落伍者——虽然IBM最早推出了个人电脑,但是由于IBM的保守性,最终没能成为个人电脑之王。反而是微软和Intel借助个人电脑市场逐渐做大,并逐步侵蚀IBM的传统市场。IBM随即出现了严重的亏损,并打破了IBM从不裁员的神话。这段时期,是IBM历史上最艰难的时期。当时有人甚至质疑IBM公司是

2018年十件FPGA大事,哪件牵动你的心(上)
2018年十件FPGA大事,哪件牵动你的心(上)

在科技领域里,FPGA向来都不是最吸引眼球的。可是就在刚刚过去的2018年,就发生了很多FPGA相关的大事。在这些大事中,很多都会对FPGA甚至整个芯片行业未来的发展产生重大影响。

集成和独立USB解决方案的优缺点分析

随着串口从台式机和笔记本电脑中消失,通用串行总线(USB)现在成为需要连接到PC的各种外围设备的通用接口,无论是作为开发平台还是商用产品。在这个由两部分组成的系列文章的第一部分中,我们快速介绍了USB接口标准及其在嵌入式系统中不断发展的作用。

情人节不只有口红和包包
情人节不只有口红和包包

对男人來說,情人节要送什么给女友是最苦恼的! 每个人都有不同的表达爱的方式,除了口红和包包,你还可以加上一些有特别的东西,例如一个LED项链。

电路方案