刘萌 郑煊 李国(.齐鲁师范学院物理系,山东 济南 5000;.山东凯文科技职业学院信息学院,山东 济南 5000;.齐鲁师范学院计算机系,山东 济南 5000)
伴随着网络技术和数字视频技术的飞速发展,监控技术正向着智能化、网络化方向不断前进。传统的视频监控系统是由人在监控室监控各路摄像机,或者是摄像机连续不断地工作,将拍摄到的图像视频信号存储起来供以后分析使用。这样就出现以下问题:人作为监控者,人眼对视频的监控精度是有限的,而且人对单调的物体无法长时间的集中注意力;视频冗余信息量大,浪费了大量存储空间,检索困难,目前还只是作为一种事后取证的系统,尚不能做到及时报警。
如存在可疑事件则通过GPRS网络向用户事先设定好的手机号发送采集到的图像;如不存在可疑目标,则将图像丢弃。用户还可通过网络远程登录实现视频播放和录制。该方法有效降低了监控中心的服务器端的存储成本,同时减轻了监控人员的工作负荷。本文主要讨论的是嵌入式视频采集前端的软、硬件设计。
视频监控终端结构是以嵌入式处理器S3C2410为主控芯片并对其资源进行扩展,扩展的模块包括视频采集压缩模块、GPRS模块以及网络传输模块。系统的总体结构如图1所示:
图1 系统总体结构设计
视频图像信息由摄像头采集到视频监控终端,通过嵌入式处理系统先对采集的图像进行探测分析,从而获得视频中的运动目标。如存在可疑目标则通过GPRS网络向用户事先设定好的手机号发送采集到的图像,同时将音视频信息编码成AVI文件保存到u盘或移动硬盘;如不存在目标,则将图像丢弃。用户还可通过远程登录服务器,继而获得服务器发来的音视频数据,并可根据权限实现远程播放与录制。
数字视频监控系统的硬件核心ARM微处理器S3C2410是Samsung公司基于ARM公司的ARM920T处理器核,采用0.18 um制造工艺的32位微控制器。该处理器拥有独立的16KB指令Cache和16KB数据Cache,MMU,最高可运行在203MHz,特别适合对成本和功耗敏感的应用[1]。系统使用两片HY57V561620构成SDRAM存储系统,由于NAND Flash容量大而成本比较低,因此,FLASH芯片选用一片64 M的K9F1208U0B用来存放应用程序、操作系统和数据文件。视频监控终端的硬件结构如图2所示:
图2 视频监控终端硬件结构设计
S3C2410的摄像机接口接收ITU标准的图像数据,不能直接接收CCD摄像机输出的模拟视频信号,因此还需要一块视频解码芯片。本系统采用Philips公司的SAA7113,无需外加逻辑控制电路和FIFO缓存,使系统硬件更加简单和稳定。摄像机输入的模拟音视频信号由SAA7113的模拟端子输入,在SAA7113内部经过钳位,抗混叠滤波、A/D转换、YUV分离转换成 ITU 656、YUV 4∶2∶2格式的视频。对SAA7113初始化由S3C2410内部集成的I2C控制器来完成。S3C2410的摄像机接口与SAA7113的连接原理如图3所示。
图3 视频采集模块原理图
图中,SAA7113的CE引脚与S3C2410的一个GPIO引脚相连,这样可以控制SAA7113的工作状态。当无须采集图像时,将该GPIO口输出低电平,使SAA7113芯片处于低功耗状态,节省电能的消耗。
以太网芯片采用了Cirrus Logic公司生产的低功耗、性能优良的16位以太网控制器CS8900A。CS8900A包括片上RAM,10Base—T传输和接受滤波器。该芯片的突出特点是使用灵活,其物理层接口、数据传输模式和工作模式等都可以根据需要而动态调整,通过内部寄存器设置来适应不同的环境。为了工艺简洁,采用内部带有变压器的RJ45。网络接口硬件电路原理图如图4所示:
系统的GPRS模块设计选用Cellon公司的CMS91,它是一种双频段GSM/GPRS10级模块,主要优点有:低功耗、接口简单、AT指令功能完善、可支持GPRS CLASS 10、开发多媒体应用、价格较低等。同时,它也提供SMS(短消息服务)和语音功能。图5给出了由CMS91构成的GPRS模块的电路原理图。
在该设计中,CMS91模块相当于一个无线调制解调器的应用系统,由于该模块已经集成了一个无线接收机模块,实际使用时需接入SIM卡插座。GPRS终端是通过RS232接口来完成对模块的控制,譬如拨号和模式切换等。电路中利用电平转换芯片MAX232实现了微处理器的TTL电平与RS232电平的转化。
软件设计采用成熟稳定的linux2.6.12内核,该操作系统具有多用户,多任务,多平台,良好的可移植性,开放性以及免费使用的特点,使用该平台不但保持了嵌入式系统小型化、低功耗、易携带的特点,又充分利用了Linux系统完整的内存、文件、线程管理功能,大大方便了程序的开发和程序中多任务功能的实现。软件平台由视频采集、压缩编码、打包封装、无线发送,跨层码率控制等部分构成[4]。
图6 视频采集流程图
系统初始化时,打开CCD视频设备文件,采集的模拟视频经SAA7113H模数转换,把生成的标准ITU656YUV4:2:2格式的数字视频读入处理器芯片S3C2410的寄存器中。通过H.264的编解码器对数字视频流进行软件编码。视频采集流程图如图6所示:
本 系统在 Windows下开发了基于MFC的客户端应用程序。通过 Internet网络与监控服务器端相连,远程用户可通过登录系统中心服务平台,在欢迎页面中输入用户名和密码即可进入视频监控主界面,继而获得服务器发来的音视频数据,根据服务平台设定的权限可现实远程播放与录制。面向数据包的UDP接连适合于音视频帧的传输,本模块采用这一连接模式。客户端与服务器建立连接的流程如图7所示。
图7 客户端与服务器连接流程图
在没有Internet网络的条件下,系统可通过GPRS网络向用户事先设定好的手机号发送采集到的图像。CMS91加电后,系统通过IO口操作CMS91的ON/OFF控制位,使CMS91正式启动,启动过程大约3-5秒,若CMS91接有有效的SIM卡,CMS91将附着在GPRS网络。启动后便可以通过UART串口发送AT指令来控制数据的收发,对CMS91的串口读写操作仍然是由中断服务程序来实现,GPRS收发子程序流程图如图8所示。
图8 GPRS收发子程序流程图
本文设计的远程智能视频监控系统实现了对音视频信息、报警和远程控制的智能化综合管理;提供了本地、Internet、GPRS三种网络视频监控接入方式,具有较强的适应性和扩展性;尤其是将Internet服务和彩信业务应用到监控中,使监控方式更灵活,监控效果更显着。随着3G无线传输技术以及流媒体技术的快速发展和应用,在接下来的研究中可以利用3G高速网络实现手机视频监控。
[1]李岩,荣盘祥.基于S3C2410X嵌入式ucLinux系统原理及应用[M].北京:清华大学出版社,2005.
[2]赵满意,李君懿,赵利.基于ARM9的无线视频监控系统前端设计[J].微计算机信息,2010(2):133 -135.
[3]曹庆年,等.基于ARM9的嵌入式Linux网络通信系统设计与实现[J].西北大学学报(自然科学版),2009(1):47 -50.
[4]孙纪坤,张小拿.嵌入式Linux系统开发技术详解——基于ARM[M].北京:人民邮电出版社,2006.
[5]郭广明.基于S3C2410A的嵌入式远程视频监控系统的设计[J].科技管理研究,2010(14):233-235.
[6]江潮,苏祥芳,刘立海,等.基于网络的数字视频监控系统[J].武汉大学学报,2000,46(5):608 -612.
[7]刘建华,陈祖爵,周明.基于GPRS的无线视频监控[J].计算机工程与设计,2009,30(5):1144-1147.