当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]嵌入式视频监控系统视频服务器的设计与实现

摘要:提出了基于AT91RM9200微处理器的嵌入式Linux视频监控系统视频服务器设计方法。采用韩国Pentamicro公司的视频芯片AT2042对数字视频数据进行MPEG-4压缩编码,生成MPEG-4码流。为实现交互性的要求,在嵌入式WEB服务器中采用CGI技术,对远程监控端的控制信息分析处理,实现B/S模式的交互功能和系统的远程控制。与传统的设计方法相比,该系统视频图像的质量得到改进,开发便捷,成本低廉,应用范围广。
关键词:视频服务器;AT91RM9200;嵌入式Linux;MPEG-4;视频监控

    视频监控系统以其数字化、网络化和智能化等方面的特征广泛应用于各种场合。随着通信技术和网络技术的发展,通过网络进行重要场所的监控越来越引起人们的关注和重视。传统的视频监控系统图像的压缩解压都是基于PC机,在稳定性,可靠性方面都受到限制。近年来,随着嵌入式技术的发展,嵌入式设备体积小、集成度高、高效可靠、可移植、功耗低等一系列优点使得基于嵌入式的视频监控系统逐渐取代
了传统的视频监控系统。笔者所介绍的嵌入式视频服务器是建立在嵌入式WEB服务器的基础上,基于AT91RM9200微处理器,采用Linux实时操作系统,由专门的视频芯片接收数字视频数据完成压缩编码,生成MPEG-4码流,通过内部总线传送到WEB服务器上,远程授权用户可以通过网络浏览器观看WEB上的图像信息,控制图像获取方式。该系统保证了图像质量,客户端零维护,开发便捷,成本低廉。

1 系统的整体设计
    整个系统分为硬件和软件2个部分。硬件部分分为4个模块:视频采集模块,视频压缩编码模块,网络传输模块和其他辅助功能模块。系统采用B/S模式。软件部分分为视频图像采集的驱动程序,WEB服务器程序,CGI和用户浏览器的网页设计4部分。系统整体结构如图1所示。


2 系统硬件部分
    本系统采用Atmel公司的AT91RM9200微处理器。该处理器是高性能,低功耗的32位RISC微处理器,最高主频为180MHz,32位外部数据总线支持8/16/32位数据宽度,可对64 MB空间寻址。内部集成丰富的外设资源,MMU管理单元,16 kB SRAM和128 kB ROM,各种外围接口,适用本系统的开发。AT91RM9200微处理器的作用是在系统上电时配置芯片的相关功能寄存器,正常运行时进行总体控制,如接受视频数据流,配置网络接口,实现本地存储等功能。
2.1 视频采集模块
    本模块的作用是把模拟视频转换成数字视频,产生符合编码芯片接口标准的数字视频信号。采用的是Tl公司的TVP5150低功耗视频A/D转换芯片。TVP5150支持NTSC/PAL/SECAM 3种格式,可以输出ITU-R BT.656和ITU-R BT.601两种信号,考虑到编码芯片的标准,本系统采用ITU-RBT.656格式8为数据串行传输。TVP5150的AIPIA为模拟信号输入端,接收摄像头的模拟视频信号输人。行同步脉冲和场同步脉冲分别对应HSYNC和VSYNC,分别连接编码芯片的HSYNIN和VSYNIN2个引脚,实现图像的行同步和场同步操作。YOUT[7:0]为数据输出引脚,将数字视频信号送到编码芯片的数据接收端。SCL和SDA分别为I2C接口的串行时钟和数据引脚,AT91RM9200对TVP5150的内部寄存器的访问是通过I2C总线实现的。
2.2 视频压缩编码模块
    动态图像被数字化处理成YUV格式,数据量非常大。未经压缩的CIF格式的RGB数据至少需要58.01 Mb/s,因此视频数据在传输和处理的过程中必须经过压缩。视频编码标准有MPEG-1,MPEG-2,MPEG-4,M-JPEG和H.26x系列。本系统采用的是MPEG-4标准。MPEG(Moving Pictures Experts Group),该专家组成立于1988年,致力于运动图像的编码标准化工作。MPEG-4是该专家组研制出来的于1999年正式成为ISO和IEC联合制定的国际编码标准。MPEG-4与其他编码标准相比,相同比特率下,具有更高的视觉质量,可以在低带宽的信道上传输。本系统采用韩国Pentamicro公司的压缩/解压芯片AT2042.AT2042接收经过TVP5150进行A/D转换的数字视频数据。AT2042支持视频压缩和音频压缩标准,支持CBR和VBR两种码率。采用ITU-R 656接口标准。工作原理:在AT91RM9200的控制下,要进行压缩编码的数据经AT2042的FIFO口输入。AT2042的解压是压缩的逆过程。本系统中,AT2042的数据接收端VIN[7:0]接收TVP5150的YOUT[7:0]端输出的数据,同时AT2042的HSYNI N和VSYNIN信号分别和TVP5150的HSYN和VSYN相连,实现图像的行同步和场同步操作。接收来的数据送到AT2042的压缩编码处理单元,压缩编码后送到芯片外部的SDRAM中存储,通过片内的SDRAM控制器可以实现对外部SDRAM的访问,并通过HPI与AT91RM9200微处理器进行通信,以便远程监控端的实时监控。视频压缩编码框图如图2所示。


2.3 网络传输模块
    本模块是采用LAN91C11构建嵌入式以太网,实现视频数据网络传输的通路。LAN91C11是SMSC公司推出的快速以太网控制器。芯片上集成MAC和PHY,符合IEEE802.3/802.U-100Base-Tx/10Base-T规范。AT91RM9200微处理器通过地址、数据、控制线和片选信号线对LAN91C11进行通信和控制。网络传输硬件连接原理图如图3所示。AT91RM9200发送数据时,首先置发送使能信号ETXEN有效。数据发送端ETX[1:0]与LAN91C11的TXD[1:0]引脚相连接。以AT91RM9200的时钟信号EXTCK发送视频数据。数据的接收端ERX[1:0]与LAN91C11的RXD[1:0]引脚相连接,接收视频数据。EMD10和EMDC分别控制芯片的读写。数据从DMA通道发送。在发送数据时,首先设置好传输控制寄存器和传输传输地址寄存器,从指定的存储区取数据,并且记录发送完的字节数,数据发送完之后,LAN19C11产生中断信号,请求DMA中断,由AT91RM9200处理。

[!--empirenews.page--]
2.4 其他辅助功能模块
   该模块包括Fiafh、SDRAM、以太网接口、串口和USB接口。用来实现操作系统内核和应用程序的存储,网络传输,本地存储和远程控制。

3 系统软件部分
    嵌入式Linux实时操作系统,稳定、高效、易定制、易剪裁、开源代码,因此本系统采用Linux操作系统。软件部分分为Bootloader文件,Linux内核文件Linux驱动和应用程序,用户应用程序。这里主要介绍MPEG-4和CGI技术的程序设计。
3.1 MPEG-4压缩编码程序设计
    本系统采用MPEG-4标准对视频图像进行压缩编码。在实现MPEG-4编码的方式上,有硬件压缩和软件压缩两种。硬件压缩就是利用专门的压缩芯片对视频信号进行MPEG-4编码,软件压缩就是使用压缩软件对视频信号进行编码。AT2042支持MPEG-4压缩标准。实现方法方面就是对其相关寄存器的配置,包括编码模式、编码像素点、编码帧率和设置编码流格式等方面。具体过程:系统上电启动后,先配置AT2042的相关寄存器,完成初始化工作后,通过I2C总线对A/D转换芯片TVP5150进行初始化配置。所有的寄存器配置工作完成之后,开始编码过程。其中MPEG-4数据流接收存储程序有AT2042的数据流缓冲器标志信号来控制。缓冲器接收数据满之后置低RISC_INT0,AT91RM9200主控制器通过DMA通道把AT2042发送过来的码流通过网络通道传输到请求监控视频图像的监控端。压缩编码的流程图如图4所示。


3.2 CGI程序设计
    在嵌入式Linux环境下,主要有3种Web服务器,分别是httpd、thttpd和Boa。Httpd功能最弱,不支持CGI、SSL和认证。本系统需要交互操作,必须使用动态Web技术,采用Boa。Boa功能强大,支持CGI,支持SSL,支持认证。使用时只需交叉编译,修改一下配置文件即可。CGI即通用网关接口,是外部扩展应用程序与Web服务器交互的标准。客户端使用浏览器向服务器发送HTFP请求,服务器响应客户端的请求后,引导脚本程序,对命令解析,将信息提交给后台——CGI处理。具体到本系统,就是PC机端通过浏览器输入服务器的IP地址,Web服务器根据请求进行分析,如果没有传来参数,则调用get-status()函数取得设备当前状态显示给浏览器。用户根据操作界面提示完成相应的操作,填写好表单设置设备参数并提交。CGI解析信息后通过get-status()函数设置新状态,实现交互功能。例如调节编码属性,对相机控制等。
    CGI的输入输出基本语法:
    <FORM M ETHOD=get/post ACTOD=URL></FORM>
    M ETHOD属性指定将数据传送到Web服务器的方法,输入方法有两种。
    1)GET方法。 此方法,表单数据会附加在所指向CGI脚本的URL后一起发送给Web服务器,Web服务器将接收到的表单数据赋予环境变量QU ERY-STR NG。
    2)POST方法。POST方法通过使用标准输入(STDN)将表单数据传送给Web服务器,Web服务器启动指定的脚本,并将用户提供的数据传入该脚本。
    ACTON属性定义要对表单数据进行处理的CGI脚本URL。
    CGI输出:CGI输出方式是将执行结果送给标准输出(STDOUT)进行输出,执行结果必须是浏览器能够显示的HTML标准格式。流程图如图5所示。


    CGI可以用shell脚本语言、Fottran、C语言等多种语言编写。本系统中采用C语言实现CGI的编写,执行速度快,安全性高。

4 结论
    笔者介绍了基于AT91RM9200微处理器的嵌入式监控系统的视频服务器设计,采用A/D转换芯片TVP5150对模拟视频数据进行数字化处理,生成符合压缩编码芯片AT2042接口标准的视频数据流。在AT91RM9100的控制和调度下,将视频数据发送到PC端。系统采用低编码率的MPEG-4编码标准,CGI技术,实现可靠的图像质量的交互功能。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭