ARM6410开发环境下的异常检测技术模块的开发

2015-12-25 06:35苗露,赵谦,闫红梅
西安科技大学学报 2015年2期
关键词:无人值守

ARM6410开发环境下的异常检测技术模块的开发

苗露,赵谦,闫红梅

(西安科技大学 通信与信息工程学院,陕西 西安 710054)

摘要:随着数字视频技术逐渐成为现代IT技术中的一类主要技术领域,场景视频监控技术在国防、能源、交通领域以及人们的日常生活和工作中发挥着日益重要的作用。通过分析目前数字监控系统工作时间长,且长时间记录无运动图像,存储的有效信息量少的问题,开发了一种用于无人值守监控体系的异常入侵检测模块,分析了三种常见的异常入侵检测算法,详细介绍了本系统采用背景差分法实现移动目标检测和联动报警功能。通过在S3C6410芯片集成的开发板上测试,支持与传统浏览器无缝对接,用户无需专门安装软件便可直接通过浏览器访问和控制该监控系统进行实时预览和查询报警信息。该方案可广泛应用于商场、家庭、银行等无人值守的多种场合,达到安全防范效果,对移动目标检测的研究和发展提供了一种新的应用模式。

关键词:无人值守;异常入侵检测;网页监控;报警存储

DOI:10.13800/j.cnki.xakjdxxb.2015.0220

文章编号:1672-9315(2015)02-0253-06

收稿日期:*2014-12-20责任编辑:高佳

基金项目:陕西省科技计划工业攻关项目(2013K07-35,2014K06-37);西安市科技计划技术转移促进工程(CXY1343(4));西安市碑林区应用技术研发项目(GX1310,GX1311,GX1417 )

通讯作者:苗露(1982-),女,陕西铜川人,工程师,E-mail:37973567@qq.com

中图分类号:TD 7文献标志码: A

DevelopmentofanomalydetectiontechnologymodulebasedonARM6410

MIAOLu,ZHAOQian,YANHong-mei

(College of Communication and Information Engineering,Xi’an University of Science and Technology,Xi’an 710054,China)

Abstract:The digital video technology has become one of the main technology in modern IT technology.Scene video monitoring technology plays an increasingly important role in defense,energy,transportation and people’s daily life.A kind of abnormal intrusion detection module has been developed for unattended monitoring system by analyzing no moving images in the long working hours of digital monitoring system.The system has realized the function of moving target detection and alarm linkage by Integrating test on the S3C6410 chip development board,and connected to the browser completely.Users can access and control system to preview and query the alarm information through the browse and do not need to install the other software.The scheme can be widely used in a variety of unmanned occasion such as in shopping malls,households,banks and so on for the security objectives.The system provided a new application model for the researching and development of the moving target detection.

Key words:unattended; abnormal intrusion detection; web monitoring; alarm storage

0引言

视频监控技术是现代IT技术中的一类主要技术领域。在生活中,场景视频监控技术有着非常广阔的应用前景,它在国防、能源、交通领域以及人们的日常生活和工作中发挥着日益重要的作用。 由于数字监控系统的工作时间长,数据存储量相当庞大,给存储容量提出了较高的要求。存储监控图像的目的是记录监控场景中运动的图像动作,长时间静止的图像包含的信息量极少,基本没有存储的意义[1]。鉴于此,需要有一个运动检测算法判断监控图像的全部或部分有无运动的发生、控制存储模块的动作,有效地节省存储数据,减少不必要的回放。图像序列的运动检测及报警不仅可以替代监视人员的部分工作,提高监视系统的自动化水平,而且也可提高监控存储的效率。

本次设计模拟远程监控系统通过运动检测实现自动报警和图片抓拍,可以有效地节省存储空间,提高了自动化程度,并起到安全防范的作用,具有较高的实用价值。

1异常入侵检测技术的特点

异常入侵检测即运动检测是指在指定区域能识别图像的变化,检测运动物体的存在并避免由光线变化所带来的干扰。在考虑运动区域的有效分割的情况下,如何从实时的序列图像中将变化区域从背景图像中提取出来,这对于目标分类、跟踪等后期处理是非常重要的。由于背景图像的动态变化,如天气、光照、阴影及混乱干扰等的影响,使得运动检测成为一项相当艰难的工作。

运动图像中运动物体与背景的运动情况复杂多变,决定了大多数运动图像的检测与识别的方法都具有局限性。若加强限制条件,检测到的运动物体就会被“过分割”;若放宽检测权限,又会出现检测“病态敏感”的缺陷,所以人们针对不同的运动情况采用相应的运动图像检测与识别算法,力求达到理想的检测精度及实时性。

目前对运动物体检测与跟踪识别问题,基本上可分为两种方法:数据驱动的方法和模型驱动的方法。前者的特点是不依赖于先验知识,直接获取图像数据来达到目的;后者的特点是需要依赖已建构的模型或者先验知识,再由模型去匹配物体。前者是以Divad Marr的视觉计算理论最具代表性;后者是以Bar Shalmon的目标跟踪与关联思想最具代表性,并且在计算后验概率时,使用经典的卡尔曼滤波或者序贯门特卡罗的方法(SMC)。这是由于运动物体本身的多样性和复杂性导致,同时也说明运动物体检测和识别是一个十分有潜力的研究领域[2-3]。

2异常入侵检测算法

2.1常用的移动图像检测算法

视频序列检测为智能视频监控提供了便利,本系统通过运动检测实现自动报警和图片抓拍,而在以往的监控系统中采用人工干预或者增加额外的报警电路的方式实现报警功能[4]。通过视频序列检测运动目标,可以提高监控系统的自动化程度。运动目标提取和跟踪是视觉分析、高级行为理解以及运动编码等计算机视觉应用领域中基本而又重要的一步,是计算机视觉处理中的难点,运动目标检测也是视觉领域的重要课题。

当前常用的移动图像检测算法主要有光流法、统计算法、帧间差分法和背景差分法。这几种移动图像检测方法优缺点比较见表1.

表1 移动图像检测方法优缺点比较

2.2背景差分法

本模块设计采用背景差分法进行运动图像检测。背景差分法基于图像序列和参考模型的相减实现运动物体的检测,由于视频监控系统位置是固定的,场景不会实时变化,因此适合采用背景差法进行运动目标检测。

背景差分法的基本原理,是通过将输入图像与背景模型进行比较的方法来检测运动目标。设t时刻背景模型参考图像为fb(t),如果前帧的图像为fc(t),则背景差分图像为fd(x,y,t)=|fb(x,y,t)-fc(x,y,t)|,对运动目标检测的判断是:若fd(x,y,t)>T,则(x,y)点是运动目标;反之则属于背景,T是门限阈值。图像序列检测流程图如图1所示。

图1 图像序列检测流程图 Fig.1 Flowchart of image sequences detection

检测后的图像中面积最大的是蓝色,只有这部分是真正意义上的运动。如图2,图3所示。

图2 目标图像的生成过程 Fig.2 Target image generation

图3 目标图像 Fig.3 Target image

该运动图像显示了如何动态维护一个“参照系”,这不仅是对前一瞬间图像的统计,更是对过去图像的数学计算。某种意义上说,这扩大了真正的运动,并确保运动图像不容易被渐变的背景所干扰。

本设计选择移植开源的运动图像检测源码motion-3.2.12作为运动物体检测算法,该源码集成了图像运动检测、变化的重要图像信息以jpg和avi格式存储功能[5-7]。修改官方参考配置文件motion.conf:设置图像分辨率为640×480,摄像头采集速率为5帧/s;设置图像像素变化为检测图像变化的阈值threshold=38 400个像素点;检测到视频中入侵物体并且其像素变化超过阈值时,保存运动目标的图像信息,并触发执行madpaly播放mp3格式的音频文件。

3模块的功能结构

3.1模块的功能结构

本系统主要包括5大部分:声卡驱动移植、USB摄像头驱动移植、madplay播放器移植、报警程序设计、运动检测程序移植及图像存储。系统架构图如图4所示。

图4 系统架构图 Fig.4 System architecture

移动图像检测与监控系统具体的功能结构如图5所示。

图5 移动监测系统功能图 Fig.5 Function of mobile monitoring system

3.2Ubuntu 13.04开发环境搭建

Ubuntu 13.04是一个以桌面应用为主的 Linux操作系统,Ubuntu 13.04项目完全遵从开源软件开发的原则[8-10]。本次系统设计基于ARM11的嵌入式系统,S3C6410为核心芯片,开发环境为ubuntu13.04,标准C为主要开发语言[11],可移植性好,支持二次开发。

3.2.1内核配置与驱动移植

使用kernel(Linux3.0.1),进入内核顶层目录,根据LCD屏(4.3寸)的属性选择相应的参考配置文件[12]。

3.2.2一键烧写Linux

1) 制作SD卡

①在win7系统下,将准备好的SD卡格式化为FAT32格式;

②通过工具烧写SD_Writer.exe将mmc_ram256.bin烧写到SD卡中;

③将准备好的u-boot.bin和zImage拷贝到SD卡中。

2) 烧写Linux到开发板的NandFlash

①SD卡插入开发板卡槽,设置拨码开关为SD卡启动;

②打开DNW,配置串口信息,如图2,3所示;

③开发板上电,烧写Linux到开发板的NandFlash。

④烧写成功,拨码开关NandFlash启动,重启开发板,如图6所示。

图6 串口配置 Fig.6 A serial port configuration

图7 Linux烧写成功 Fig.7 Successful burning of Linux

3.2.3挂载yaffs2根文件系统

1) 配置NFS网络文件系统并启动;

sudo apt-get install portmap

sudo apt-get install nfs-kernel-server

sudo gedit /etc/exports

:/forlinx/root *(rw,sync,no_root_squash,no_subtree_check)

sudo /etc/init.d/portmap restart

sudo /etc/init.d/nfs-kernel-server restart

2)设置主机的IP为192.168.0.235;

3)将准备好的yaffs2根文件系统解压到工作目录/forlinx/root

sudo tar xzf OK6410_yaffs2_v1.0.tgz -C /forlinx/root

4)在开发板上设置并保存启动参数

在u-boot命令行下输入如下命令设置u-boot启动参数并保存[4]:

setenv bootargs “root=/dev/mtdblock2 rootfstype=yaffs2

console=ttySAC0,115200”

setenv bootargs

“root=/dev/nfs nfsroot=192.168.0.235:/forlinx/root

ip=192.168.0.232:

192.168.0.235:

192.168.0.1:

255.255.255

.0::eth0:off

console=ttySAC0,115200”

saveenv;printenv

5)重新启动开发板,Linux内核启动后会通过NFS网络文件系统自动挂载PC机上的yaffs2根文件系统。

3.3模块的详细设计开发

3.3.1madplay播放器移植

1)编译、安装zlib库

进入zlib-1.1.4源码目录,生成Makefile文件。

configure

-shared

-prefix=/home/ping/SDK-MOTION/resources/madplay

/zlib-1.1.4/ install

将生成的动态库拷贝到yaffs2根文件系统下的/lib目录下。

2)编译、安装libid3tag库

进入libid3tag-0.15.1b源码目录,生成Makefile文件。编译、安装:make clean; make; make install。

3)编译、安装libmad库

进入libmad-0.15.1b源码目录,生成Makefile文件。

./configure

-host=arm-linux

-prefix=/home/ping/SDK-MOTION/resources/madplay/

libmad-0.15.1b/_install

4) 编译应用程序madplay

进入madplay-0.15.2b源码目录,生成Makefile文件。

./configure

-host=arm-linux

make clean; make

cp madplay /forlinx/root/usr/sbin

5) 测试madplay

将任意mp3文件放在根文件系统某一目录下,在开发板上执行madplay程序。

3.3.2ffmpeg的移植与安装

进入ffmpeg-0.5.1源码目录,生成Makefile文件。

./configure-prefix=./_install

-arch=arm

-cross-prefix=arm-linux-enable -shared

编译、安装:make clean; make; make install。

3.3.3动态检测程序motion的移植与安装

motion是一个开源的用于监控异常入侵(大多数是人)的动态监测程序。

1) 编译、安装motion程序

进入motion-3.2.12源码目录,生成Makefile文件。

./configure-prefix=${PWD}/_install-host=arm-linux

-with-ffmpeg=/home/ping/

SDK-MOTION/resources/ffmpeg/ffmpeg-0.5.1/_install-without-mysql

2) 配置motion

①拷贝motion源码目录下的./_install/etc/motion-dist.conf到yaffs2/etc/motion目录下,并重命名为motion.conf。

②修改motion.conf配置文件,需修改的内容如下所示。

3.3.4安装cambozola

1) 进入cambozola源码目录,找到cambozola.jar并拷贝到开发板的/web/cam目录下。

cd cambozola-latest-0.92/dist

cp cambozola.jar /forlinx/root/web/cam

2) 安装java环境,使浏览器支持通过cambozola显示实时视频流。

3.3.5boa服务器的配置

本设计使用的yaffs2根文件系统中自带boa服务器对其重新配置即可使用。

3.4功能测试

1)在PC机和OK6410开发板之间接好电源、串口线、网线,以及摄像头和音响。

2)进入/etc/init.d/rcS目录,修改启动脚本,使其开机自启动。

图8 网页监控界面 Fig.8 Web monitoring interface

3)点击主页上的【网页监控】按钮或者【查看实时监控视频】按钮,即可进入网页监控界面,看到实时视频流,如图9所示。

图9 实时视频流 Fig.9 Real-time video streaming

4) 点击网页上的【系统设置】按钮,即可进入监测系统设置界面,如图10所示。

图10 系统功能配置 Fig.10 System function configuration

5) 点击网页上的【功能简介】按钮,即可进入该监测系统的功能简介界面。在这里,我们可以看到该系统具体的功能架构图以及它实现的具体功能和步骤。

4结论

本次系统设计基于ARM11的嵌入式系统,S3C6410为核心芯片,开发环境ubuntu13.04,标准C为主要开发语言,兼具模块化思想,可移植性好,支持二次开发。采用当前的主流B/S结构,可广泛应用于商场、家庭、银行、超市、交通等无人值守的场合。本系统只对报警信息进行图片抓拍,节省了存储空间,更符合用户的需求。

参考文献References

[1] 刘亚楠.基于移动检测的视频码流控制与QoS的研究与实现[D].北京:北京交通大学,2006.

LIU Ya-nan.The research and implementation of video stream control and QoS based on the Mobile detection[D]Beijing:Beijing Jiaotong University,2006.

[2]甘剑.入侵检测系统的分析研究[J].武警工程学院学报,2004(2):77-80.

GAN Jian.The analysis and research of the intrusion detection system[J].Journal of Armed Police College of Engineering,2004(2):77-80.

[3]王金龙.基于人脸识别和移动检测的视频监控系统[D].北京:北京化工大学,2008.

WANG Jin-long.Based on the face recognition and motion detection Video surveillance system[D].Beijing:Beijing University of Chemical Technology,2008.

[4]牟琦,龚尚福.基于用户行为模型的身份验证算法研究[J].西安科技大学学报,2006,26(3):376-387.

MU Qi,GONG Shang-fu.User authentication system based on customer’s behavior model[J].Journal of Xi’an University of Science and Technology,2006,26(3):376-387.

[5]宋宝华.Linux设备驱动开发详解[M].北京:人民邮电出版社,2010.

SONG Bao-hua.Explain in detail of Linux device driver development[M].Beijing:The People’s Posts and Telecommunications Press,2010.

[6]弓雷.21天学通Linux C编程[M].北京:电子工业出版社,2012.

GONG Lei.Master the Linux C programming in 21days[M].Beijing:Publishing House of Electronics Industry,2012.

[7]史蒂文斯.UNIX环境高级编程[M].北京:人民邮电出版社,2005.

Stevens.Advanced programming of UNIX environment[M].Beijing:The People’s Posts and Telecommunications Press,2005.

[8][美]冈萨雷斯.数字图像处理[M].北京:电子工业出版社,2007.

[American]Gonzalez,Digital image processing[M].Beijing:Publishing House of Electronics Industry,2007.

[9]凌冲,孙乐昌,刘京菊.一种硬件虚拟化技术的Rootkit及其检测[J].西安科技大学学报,2010,30(1):86-91.

LING Chong,SUN Le-chang,LIU Jing-ju.The rootkit of hardware virtualization technology and detection[J].Journal of Xi’an University of Science and Technology,2010,30(1):86-91.

[10] 张铮.精通Matlab数字图像处理和识别[M].北京:人民邮电出版社,2013.

ZHANG Zheng.Proficient in matlab digital image processing and recognition[M].Beijing:The People’s Posts and Telecommunications Press,2013.

[11] 谭浩强.C程序设计[M].北京:清华大学出版社,2012.

TAN Hao-qiang.C program designing[M].Beijing:Tsinghua University Press,2012.

[12] 卿斯汉,蒋建春,马恒太,等.入侵检测技术研究综述[J].通信学报,2004,25(7):19-29.

QING Si-han,JIANG Jian-chun,MA Heng-tai,et al.The review of Intrusion detection technology research[J].Journal of Communication,2004,25(7):19-29.

猜你喜欢
无人值守
远程监控系统在无人值守变电站中的应用
无人值守变电站综自改造平滑过渡方案研究与实践
无人值守泵站远程监控的几点探讨
论无人值守变电站输变电设备状态检修的对策
无人值守远程计量系统在唐山钢铁集团有限责任公司物资管理中的应用
浅析箱式变电站的发展前景
汽车衡无人值守应用