APP下载

基于android的智能家居系统中智能视频监控技术的研究*

2014-09-05刘学超

通化师范学院学报 2014年2期
关键词:智能家居服务器监控

刘学超

(淮北职业技术学院 计算机系,安徽 淮北 235000)

近年来,无线互联技术异军突起,以智能手机、平板电脑为代表的智能终端已悄然走入大众的视野,并迅速得到普及应用,通过植入第三方提供的程序,手机的功能不断的被扩充.智能手机凭借其操作灵活、延展性强等特点已然超越PC机,并逐渐显示取代之势.移动智能终端必将是网络的主力军和核心力量,必将成为软件开发、运行和服务的主要平台.未来网络的主要发展趋势是通过无线互联网、智能终端、云服务器,为用户提供功能更加强大的各种应用.

1 智能家居及视频监控系统简介

智能家居是指在原有的居住功能基础之上,将自动化、楼宇综合布线、多媒体、计算机网络等技术手段融入现代住宅设施,把与日常生活息息相关的各项事务、家电设备等进行整合,形成一个现代化的、高科技的住宅管理体系[1].与传统住宅相比,智能家居的建筑设计更加科学化、人性化,符合现代人对于生活的高质量要求,用户可以对住宅进行实时的控制管理,既提高安全性、可靠性,同时又节约能源消耗.

2012年4月5日,国家室内装饰协会智能化委员会对我国目前的智能家居产品进行了详细的划分,其中非常重要的一项就是智能视频监控.智能视频监控是指在无需人力干预的情况下,通过计算机可视化技术和信号监测技术对监控场所的视频信息进行实时的监测、分析,比对图像帧与场景中的变化,对画面中的可疑目标进行锁定、判断目标的行为模式,如分析到有异常行为则告警,提高安保人员应对危机的实时性、准确性,同时尽可能地降低误报、漏报等现象.

2 系统架构与关键技术

现在很多小区以及家庭住户都安装了监控摄像头,但实际上这些视频信息都是裸数据,或者说未经任何处理的数据.一旦发生问题的时候依然需要人工干预重复查看监控画面,导致很多问题不能及时发现并得到处理,视频监控也失去了原有的意义.为了解决上述问题,本文所研究的移动智能视频监控系统通过连接无线网络可以对监控场所实现实时的、全方位的远程监控[2].本系统可实现如下功能:监控目标的检测与跟踪、数据采集与压缩、告警、无线传输和远程查看.系统结构如图1所示.

图1 系统总体框架

2.1 系统模块功能

监控前端.根据监控系统的需要,用户将一个或多个摄像头安装在所需区域,摄像头采集监控场所的视频信息,实时信息通过通用串行总行传递给主控服务器系统,完成视频图像信息的采集工作.

主控服务器.服务器的主要功能包括:捕捉视频信息、目标的检测与跟踪、压缩处理图像以及Socket通信等.主控服务器首先接收前端监控设备传递的信息,然后使用OpenCV对监控区域进行目标的检测、跟踪,如果有运动目标出现在画面中,则通过AT指令发送告警短信给用户[3].同时,使用JMF中的Format对象将捕获的视频进行整理后打包,使用Socket进行通讯,将打包的视频传到客户的智能终端.

客户智能终端.主要功能包括:向主控服务器发送监控请求、视频解压缩、播放和保存视频以及图片等功能.Android智能终端自带有视频解压缩和播放功能,用户接收到监控数据后,通过播放软件可直接播放视频.

2.2 关键技术

(1)目标检测与跟踪.目标检测是指从监控视频图像中提取出的人们感兴趣的运动对象,我们把该目标称为前景,除此之外的其他部分称为背景区.运动目标的提取直接关系着智能视频监控的整体性能.

①背景建模.我们采用基于RGB色彩模型的选择更新法,同时采用中值滤波法提取出背景图像:在某一时间段的视频样本从中抽取若干帧Zi(i=1,2……),将相邻两帧的图像像素点分别按R、G、B三个分量做减法运算,若结果小于阈值,则认定为是背景区域;若大于阈值,认定是目标区域[4].背景图像提取时将剔除掉这些数据,去掉R、G、B三个分量的最大值和最小值,将其余分量取平均值,利用中值滤波法得到初始背景.

②背景更新.将当前帧与背景图像的灰度进行差分,如果前景图像Tn(x,y)在某一时刻由0变为1,则该点有运动目标出现,则Un(x,y)初始化为1.如果该值没发生变化,则说明运动目标还存在,Un(x,y)自加,否则Un(x,y)归零.

③目标跟踪.建立一个大小为S的窗口用来搜索运动目标,将RGB图像转化为HSV图像,对图像的所有像素点进行H分量采样,获得色度直方图.视频中的所有像素点都可以使用色彩直方图进行查询,确定目标像素的概率.

(2) 告警模块的实现.首先使用Camshift算法计算当前帧目标区域的轮廓面积,当轮廓面积con-area大于areashold时,则认为有目标入侵,同时开启告警模块.关键代码如下:

dvDraw(cst,cont,colour,colour,0,4,9,dvpoint(0,0)); //绘制轮廓

con-area-tem=fabs(con-area(cont,cv-whole)); //获取当前轮廓面积

首先设置3G无线上网卡的COM端口号、通信速率和接收短信的手机号码,初始化COM端口,若检测到运动目标,则发送AT指令,触发短信发送进程.关键代码如下:

Length=SMSEncode(src,pdu); // 编码

Strcat(pdu,"x01a"); // 以Ctrl+Z结束

SMSString(pdu,&smsclength,2); // 获得SMSC信息的长度

Sprintf(cmd,"AT+CMGS=%d ",length/2-smsclength); // 生成命令

Writecom(cdm,strlen(cmd)); // 先输出命令串

(3)视频采集与Socket通信.首先使用Server Socket server=new ServerSocket(port)建立一个服务器端,通过监控摄像头采集到的数据存储在服务器端,用户通过Java Applet或其他软件与服务器建立连接,发送监控请求.用户提供IP地址、接收端口号等信息,服务器端验证用户身份后即可建立连接,同时将采集到的视频信息通过Socket传送给用户[5].进行视频传送时既要节约用户流量资费又要保证监控画面的实时性, RGBFormat方式满足上述要求,而且实现方便.具体实现如下:

①定义类webbroadcaster的构造函数,将视频流的宽度(width)、高度(height)和监听端口(port)分别赋值.

②使用mediumloca作为参数,调用manager的creat(int wid,int hei)为视频流创建播放器.

③使用新线程持续操作framecontrol实例,获取视频数据流,同时将获得的数据写入socket中.

3 结语

随着国民经济的增长和综合国力的提升,智能视频监控越来越体现出其自身的无可比拟的优势.移动智能视频监控技术充分体现了监控的实时性和主动性,文中对系统架构以及一些关键技术进行了阐述.相信未来这一技术将有着更为广阔的发展空间.

猜你喜欢

智能家居服务器监控
The Great Barrier Reef shows coral comeback
服务器组功能的使用
基于PLC的智能家居控制系统研究
通信控制服务器(CCS)维护终端的设计与实现
PowerTCP Server Tool
你被监控了吗?
Zabbix在ATS系统集中监控中的应用
基于Zigbee的无线通信技术在智能家居中的应用
智能家居发展或将实现弯道超车
计算机网络安全服务器入侵与防御