APP下载

基于Motion算法移动图像监控系统的设计与实现

2017-03-02吴建锋罗小文

电子设计工程 2017年3期
关键词:码流配置文件客户端

吴建锋,罗小文

(1.杭州派尼澳电子科技有限公司 浙江 杭州310018;2.杭州电子科技大学 浙江 杭州310018)

基于Motion算法移动图像监控系统的设计与实现

吴建锋1,罗小文2

(1.杭州派尼澳电子科技有限公司 浙江 杭州310018;2.杭州电子科技大学 浙江 杭州310018)

针对入室盗窃、非法入侵等违法犯罪行为的预防和调查取证,提出了一种基于Motion算法移动图像监控系统。该系统通过USB图像采集模块采集图像,开源的Motion算法实现了对采集到的图像进行比较,当相邻图像差异超过设定的阈值则判定为移动图像,RT5350处理中心将移动图像进行存储同时通过串口向STM32发送开启报警命令来开启报警,当超过设定时间间隔未检测到移动图像则通过串口向STM32发送关闭报警命令来关闭报警,Web客户端通过基于HTTP协议的Lighttpd服务器查看RT5350处理中心存储的图像。经多次测试系统运行稳定并且采集到移动图像时能开启报警,同时能通过Web客户端查看存储的移动图像,当超过设定的时间间隔未检测到移动图像时能关闭报警。

Motion;移动图像;RT5350;Web;Lighttpd

移动图像监控是对人们无法直接、即时观察的场所提供实时、形象、真实的图像画面作为处理或事后分析的一种手段[1]。如今室内、办公场所等的安全问题日益突出,入室盗窃、非法入侵等违法犯罪行为对人们的生命和财产安全产生了严重的威胁[2]。而面对这些违法犯罪行为很难及时报警预防和获取相关的罪证以便调查。传统的视频监控系统只能不断地采集和存储视频图像,无法检测移动物体和及时启动报警。

针对以上问题,本系统基于Motion算法实现了移动图像检测、存储和控制报警,并且Web客户端通过基于HTTP协议的Lighttpd服务器获得存储的移动图像。因此实现了移动物体的检测和及时启动报警并且Web客户端可以查看到存储的移动图像。

1 系统的总体设计

系统包括RT5350处理中心、USB图像采集模块、STM32控制器、报警模块。RT5350处理中心通过USB图像采集模块实现图像的采集,同时使用Motion算法实现移动物体的检测,当检测到移动物体将其图像存储下来同时发送报警指令来启动报警,并且Web客户端通过基HTTP协议的Lighttpd服务器获得存储的图像。系统具体结构如图1所示。

图1 系统结构框图

1.1 RT5350处理中心硬件设计

RT5350处理中心选用联华科基于MIPS架构的RT5350芯片作为硬件微处理器。雷凌RT5350是一款高质量、小尺寸、低成本的可编程系统芯片,在一个芯片上包含了各种AP Router所需的元件,提供了优越的无线基地路由器解决方案;RT5350芯片内置了独特的封包接收式天线分集技术,支持802.11n无线局域网,具备 HOST USB、USART等接口;RT5350芯片还整合了360 MHz MIPS CPU以及10/ 100 M以太网[3]。STM32采用STM32F103XX基本型系列,它使用了高性能的ARM CortexM3 32bit的RISC内核,并拥有丰富的增强型外设和I/O口,包含了3个USART[4-5]。USB接口芯片选用的是Cypress公司开发的USB2.0接口芯片CY7C68013A,芯片内部集成了USB2.0收发器,支持12Mbps的全速和480Mbps的高速传输[6-7]。USB图像采集模块采用了中星微公司的ZC301P芯片设计的摄像头,该摄像头最大分辨率可达640*480,采用的是CMOS感光芯片[8]。RT5350、STM32、USB接口电路连接示意图如图2所示。

图2 RT5350、STM32、USB电路连接示意图

1.2 RT5350处理中心软件设计

RT5350处理中心软件设计是基于嵌入式Linux操作系统平台。Linux系统具有开源、可定制内核,并且其支持多进程、在实时性能和可靠性方面都很优越[9]。RT5350处理中心软件分为两部分:一部分是基于Motion算法的移动图像检测和存储;另一部分为Web客户端与Lighttpd服务器之间数据交互的设计。

1.2.1 基于Motion算法的移动图像检测和存储

当Linux系统启动和初始化完成,则通过Motion算法检测采集到的图像并判断是否移动图像,当判断为移动图像则通过串口发送开启报警指令并存储移动图像。当判断不是移动图像时则判断未采集到移动图像的时间是否超过设定的时间间隔,如果超过设定的时间间隔则通过串口发送关闭报警指令,如果没超过设定的时间间隔则不发送关闭报警指令。RT5350处理中心软件流程图如图3所示。

图3 RT5350处理中心软件流程图

1.2.2 Web客户端与Lighttpd服务器之间数据交互的设计

Web客户端通过基于HTTP协议的Lighttpd服务器获得RT5350处理中心存储的图像。Lighttpd是一个性能优异的轻量级开源Web服务器,采用事件驱动和异步IO技术,具有非常低的内存开销,CPU占有率低[10-12]。Web客户端与Lighttpd服务器之间数据交互的实现是由3个部分实现:

1)Lighttpd服务器获取Web客户端的请求,这一操作通过“FCGI_Accept()”函数来实现当函数返回值大于或等于零时获取到了Web客户端的请求,否则未获取Web客户端的请求;

2) 判断获取的请求需要的操作, 由“if(((cgi_param(“action”)) != NULL) ||(sscanf(cgi_param(“action”),”%d”,&action)!=1))”这条程序代码实现;

3)Lighttpd服务器对Web客户端的请求做出响应,这一操作由”puts(char*str)”函数来实现,函数的参数str为要传递给Web客户端的字符串的首地址。

该系统的Web客户端与Lighttpd服务器之间数据交互的具体过程如图4所示。

图4 Web客户端与Lighttpd服务器之间数据交互图

1.3 STM32软件设计

STM32通过串口接收到的指令来控制报警。当STM32上电和进行相关参数配置后,判断串口是否接收到控制指令。如果收到控制指令则对控制指令信息进行判别,当控制指令为开启报警指令则执行开启报警操作,当控制指令为关闭报警指令则执行关闭报警操作。如果没有收到控制指令则不执行对指令信息的判别和开启、关闭报警的操作。具体的软件设计流程如图5所示。

图5 STM32软件设计流程图

2 Motion算法

2.1 Motion算法的移动图像检测过程

Motion算法以Motion JPEG 2000标准进行编解码。Motion JEPG 2000标准在进行视频图像编码的过程为首先由连续的视频图像帧逐帧的进行编码,将编码得到的视频图像数据和音频数据组织在一起,并加入相应的元素信息,如码流属性、时间戳、偏移量等,形成标准的Motion JPEG 2000文件码流,存储为MJ2文件格式[13]。解码过程为先从MJ2码流中提取出视频图像数据,再将每帧视频图像数据进行JPEG 2000解码,从而得到解码后的视频图像序列[13-15]。则Motion算法检测移动图像过程为首先判定当前输入视频图像帧是否为第一帧视频图像。如果是第一帧视频图像则由Motion JPEG 2000进行编码得到将编码得到MJ2码流同时将MJ2码流存储下来作为下一帧视频图像的MJ2码流的参考码流,具体处理过程如图6(a)所示;如果不是第一帧视频图像则通过Motion JPEG 2000编码得到MJ2码流与上一帧视频图像的MJ2码流进行比较,当两帧视频图像的MJ2码流的差异大于或等于设定的阈值(可设定),则将当前帧视频图像的MJ2替换上一帧视频图像的MJ2码流作为下一帧视频图像的MJ2码流的参考码流,同时由Motion JPEG 2000对当前帧视频图像的MJ2码流进行解码得到输出视频图像帧进行存储,当两帧视频图像的MJ2码流的差异小于设定的阈值,则将当前帧视频图像的MJ2替换上一帧视频图像的MJ2码流作为下一帧视频图像的MJ2码流的参考码流,具体处理过程如图6(b)所示。

2.2 Motion算法的相关配置

Motion算法的实现需要进行相关的配置,通过配置可以实现自定义检测移动图像。Motion算法的配置文件为motion.conf,该系统对motion.conf文件的配置如下:

1)将配置文件中deamon项配置为deamon off,关闭守护模式以便Motion算法正常运行;

2)将配置文件中的 locate项配置为 ielocateon,实现用方形框将发生了改变的区域框起来;

3)将配置文件中的 videodevice项配置为videodevice/dev/video,实现对USB摄像头的加载;

4)将 配 置 文 件 中 的 threshold项 配 置 为threshold 5000,将阈值设定为5000px;

5)将配置文件中的 target_dir项配置为target_dir/home/motion,将图像文件的保存路径设置为/home/motion目录下;

6)将配置文件中的width和height项配置为width 320和height 240,设置摄像头采集到的图像大小为320*240;

7)将配置文件中的 framerate项配置为framerate 30,设置摄像头每秒采集的图像帧数;

8)将配置文件中的gap项配置为gap 5,设置未检测到移动图像时间间隔为5秒;

9)将配置文件中的 on_event_start项配置为on_event_start/motion/appon,当检测到移动图像时执行motion目录下的appon程序发送开启报警指令;

10)将配置文件中的 on_event_end项配置为on_event_end/motion/appoff,当未检测到移动图像的的时间超过gap项的设置的时间执行motion目录下的appoff程序发送关闭报警指令和对/home/motion目录下的图像进行按时间排序并移动到/home/ save_pic目录下;

通过以上配置Motion算法能实现移动图像的检测和执行相关的程序,从而实现移动图像的检测和存储并及时地开启和关闭报警。

图6 视频图像处理流程图

3 系统功能的测试与分析

本系统实现了移动图像的检测和存储,通过Web客户端获取存储的图像数量和显示图像,并且当检测到移动图像自动开启报警,未检测到移动图像延迟5秒后自动关闭报警。由此对系统进行了以下测试:

1)移动图像检测的测试:测试人员在摄像头监控区域作一些动作,系统对这些动作进行检测并将图像存储下来,通过Web客户端获取并显示,如图7所示。

图7 移动图像检测的测试

图7中为测试人员做的一个动作由系统检测并存储下来,由Web客户端获取并显示出来。

2)通过Web客户端获取RT5350处理中心存储的图像数量如图8所示。

图8 获取RT5350处理中心存储的图像数量

3)测试当检测到动态图像时能否通过串口发送开启报警命令,当未检测到动态图像超过设定的时间间能否发送关闭报警的命令如图9所示。

图9 RT5350处理中心通过串口发送的命令

图9中的”wm”为开启报警的指令,”wn”为关闭报警的指令,“wn”是在未检测到动态图像延迟5秒后获得。

4 结束语

本系统基于Motion算法实现了移动图像检测、存储和控制报警,并且Web客户端通过基于HTTP协议的Lighttpd服务器获得存储的移动图像。因此实现了移动物体的检测和及时启动报警并且Web客户端可以查看到存储的移动图像,克服了传统的视频监控系统只能不断地采集和存储视频图像,无法检测移动物体和及时启动报警。便于对入室盗窃、非法入侵等违法犯罪行为进行预防和调查取证。

[1]王越,庞振营,王帅,范先星.嵌入式无线视频监控系统的设计与实现[J].重庆理工大学学报(自然科学),2015,29(4):67-72.

[2]刘彬.智能家居系统安防子系统的设计与实现[D].成都:电子科技大学,2013.

[3]袁新娣,李秋生.基于RT5350的嵌入式无线视频数据采集系统 [J].安徽大学学报:自然科学版,2014,38(6):60-65.

[4]赖树明,杨卓鑫,张丽娟,等.基于STM32的物联网系统的设计[J].电子测试,2015(8):4-9.

[5]王晨辉,吴悦,杨凯.基于STM32的多通道数据采集系统设计[J].电子技术应用,2016(1):51-53,57.

[6]姚洪涛,李晓宇,陈磊,等.CMOS图像传感器的图像采集系统的研究与实现 [J].电子设计工程,2015,23(5):137-139.

[7]张玉杰,陈志磊.基于CMOS图像传感器的亮度测量系统设计[J].电子技术应用,2016(1):48-50,57.

[8]张义鹏.基于Linux和ZC301摄像头监控系统[D].沈阳:辽宁大学,2013.

[9]冯川放,马季.基于嵌入式LINUX系统的实时进程调度算法的研究 [J].计算机应用与软件,2014,31(12):278-282.

[10]胡志慧.CGI在Lighttpd Web服务器上的应用与实现[J].福建电脑,2013(7):28-29,43.

[11]杨小娇.轻量级高并发Web服务器的研究与实现[D].南京:南京邮电大学,2014.

[12]杨颖莹.高性能Web框架的分析与应用[D].北京:北京邮电大学,2012.

[13]舒建.基于Motion JPEG 2000的低码率视频会议系统的设计[D].成都:电子科技大学,2012.

[14]林子明,梁利平.HEVC静态图像压缩与JPEG 2000性能比较与分析[J].电视技术,2015,13:20-23.

[15]李波,何亮.基于JPEG2000的视频压缩技术研究[J].成都大学学报:自然科学版,2015(2):170-172,187.

Design and implementation of mobile image monitoring system based on Motion algorithm

WU Jian-feng1,LUO Xiao-wen2
(1.Hangzhou Pioneer Electronic Technology Co.Ltd,Hangzhou 310018,China;2.Electronic and Information Engineering,Hangzhou Dianzi University,Hangzhou 310018,China)

For burglary, illegal intrusion and other criminal acts of prevention and investigation evidence,a mobile image monitoring system based on Motion is proposed.The system collects the images through USB image acquisition module,the open source Motion algorithm has realized the comparison of the collected images,when the difference of the adjacent image is over the set threshold judged to move the image,RT5350 processing center will store the mobile image at the same time send the command of open alarm to STM32 to open alarm through the serial port,when the mobile image is not detected over the set time interval send the command of close alarm to STM32 to close alarm through the serial port,Web client through Lighttpd server which based on HTTP protocol view the image which stored in the RT5350 processing center.After many times test the system runs stably and can open the alarm when collect mobile images,at the same time the Web client can view the mobile image which has been stored,when the mobile image is not detected over the set time interval can close alarm.

Motion;mobile image;RT5350;Web;Lighttpd

TN91

:A

:1674-6236(2017)03-0136-05

2016-02-22稿件编号:201602099

吴建锋(1981—),男,浙江文成人,硕士研究生,工程师。研究方向:智能家居及照明控制。

猜你喜欢

码流配置文件客户端
分布式码流实时监控与录制系统的设计与实现
数字电视TS码流协议简要分析
互不干涉混用Chromium Edge
忘记ESXi主机root密码怎么办
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
基于Vanconnect的智能家居瘦客户端的设计与实现
为View桌面准备父虚拟机
打印机设置
一种比较ASN.1码流差异的方法