智能化异地监控系统的实现

2016-10-11 07:23宋红军李复生黄开元重庆师范大学涉外商贸学院
电子制作 2016年16期
关键词:服务端服务器端动态

宋红军 李复生 黄开元 重庆师范大学涉外商贸学院

智能化异地监控系统的实现

宋红军 李复生 黄开元 重庆师范大学涉外商贸学院

视频监控;Android;Socket

随着科学技术的发展,视频监控的应用也越来越广泛,主要应用于公安、消防、军事、教育等各个领域,取得了不可替代的作用。传统视频监控的服务端采用的是计算机作为监控中心,各个视频采集端是固定的摄像头,极大的限制了监控的灵活性和动态性。随着第四代移动电话通信标准4G传输的实现,移动无线网络传输速度获得了极大的提高, ITU (International Telecommunication Union)4G要求传输比现有家用有线ADSL快25倍,可达100Mbit/s,促使移动的视频信息监控成为可能。视频采集端采用移动设备,通过移动4G网络或者WIFI等将信息传到服务端,服务器端采用计算机进行信息接收和显示,同时服务端可以根据需要进行信息的再转发,实现异地移动监控。

1.系统的总体设计思路

系统总体采用C/S的模式进行架构,视频信息采集端和视频信息接收端采用的是构建于Android操作系统基础之上的应用程序,在它们之间采用视频信息接收和转发平台进行连接,平台采用的是功能强大的计算机服务器来实现,在采集和转发的过程中实现视频信息的存储和动态图片抓取。系统总体架构如图1所示。

图1 系统总体架构图

视频采集采用装载Android系统的平板和手机作为客户端,通过4G、3G、WIFI等形式,采用Socket连接方式把采集的视频信息转为图像帧的形式转发给服务器;服务器把接收到的帧图像连续播放实现动态视频显示,服务器端还可以进行实时监控,动态图片截取,监控视频信息的转发;移动监控端可以是手机、平板、 PC机等,用来接收服务器转发来的采集端采集的视频信息。

2.系统的具体实现

2.1 视频采集端的实现

视频采集端依据Android系统进行开发,在服务器登录界面,如图2所示, IP地址选项输入服务器端的IP地址,端口号选项输入和服务器创建Socket连接的端口号,端口号由用户动态指定。 0-1023的端口号为系统保留所用,端口号的选择最好在1023以上,并且不被其他的应用所占用。由于服务端采用的是线程动态加载的方式,所用每个端口号不同的视频采集端都会在服务端产生一个新的视频监控窗口。不同端口号的监控窗口可以动态关闭,可以动态创建,如果监控窗口未关闭,视频采集端断开,如果视频采集端从新创建连接,依旧采用的是原来的端口号,监控信息会在原来的监控窗口显示,增强了软件的健壮性。

图2 视频采集端登陆界面

视频采集端还必须在AndroidManifest.xml文件中配置必要的权限,程序才能正常的运行:

图3 视频采集端与服务器端交互活动图

2.2 服务器端的实现

对于视频采集端传回的信息,服务器端在JFrame容器中进行显示,对于不同监控端采集的信息,分别在不同的窗口中进行显示以进行区分,区分的依据是Socket连接的不同端口号。

2.3 监控端和服务器端的交互方式

视频采集端接收用户输入的IP地址和端口号,然后和服务器端建立连接,开始的时间和服务器端建立的Socket连接使用的端口号8888,为了把接下来进行的视频图片传输使用的端口号传给服务器端,进行第一次传输,然后,服务端和监控端使用用户输入的端口号进行二次连接。视频采集端通过获取摄像头权限,进行信息的采集,每秒捕获22~33帧图片,图片的格式为NV21,接下来对图片进行压缩并转化为JPEG格式,然后把图片发送给服务器端。服务端在监控到由新的端口号发来的图片信息后,创建一个新的JFrame容器来动态显示图片,达到视频放映的目的,还可以实时抓拍图片进行保存。对于不同的端口号建立的连接分别采用不同的JFrame容器来显示,可以实时关闭不同的端口号创建的连接,对其他的监控不会发生影响,视频采集端与服务器端交互活动图如图3所示。

图4 服务器端不同端口号监控效果图

3.实现结果

下面通过两个视频采集端采集信息,分别采用的端口号为8001和9001建立Socket连接,在服务器通过两个JFrame容器来进行显示的效果图。在实际应用中可以对视频采集端进行动态扩充,服务器端会把它们显示到不同的JFrame容器中。

[1] 魏崇毓,张菲菲.基于Android平台的视频监控系统设计[J].计算机工程,2012,38(14):214-216.

[2] 张雅楠,杨璐,郑丽敏.基于Android手机的远程视频监控系统的设计与开发[J].计算机应用,2013,33(S1):283-286.

重庆师范大学涉外商贸学院2015年度校级科研项目,智能化异地监控系统的研究,项目编号:KY2015011。

本文介绍了通过Android视频采集端进行信息采集,在服务器端进行视频监控的设计方案,同时通过不同的Socket连接的端口号进行区分,实现多采集端动态实时监控。

猜你喜欢
服务端服务器端动态
国内动态
国内动态
国内动态
Linux环境下基于Socket的数据传输软件设计
动态
新时期《移动Web服务端开发》课程教学改革的研究
基于Qt的安全即时通讯软件服务器端设计
基于Qt的网络聊天软件服务器端设计
基于C/S架构的嵌入式监控组态外设扩展机制研究与应用
摸清黑客套路防范木马侵入