前言:该系统分为手机端和后台服务器端,创作于前几年,当时采用的开发环境(adk、opencv等)现在可能已经变更好几代了,有需要的童鞋可以作为学习的素材下载来研究改进。


Android手机视频监控系统


 

1.1实现功能

利用手机作为视频的捕获设备,拍摄现场实时视频通过wifi或者GPRS无线网络传输到远端的视频处理服务器,PC服务器负责显示视频以及处理视频。当手机摄像头固定监控的时候,视频处理服务器可以对传输过来的图像帧进行光流运动识别,检测出运动物体或者异常变化,并自动保存视频以供后期查看,无需人员一直监控。

 

1.2 系统主要模块

视频输入端,使用带摄像头的android手机作为视频输入端,输入端程序需要实现的功能,1、将拍摄到的视频图像帧获取,然后压缩;2、与服务器建立连接,使用特定的协议把帧数据传输到服务器PC端。

服务器端,实现的功能,1、接受从手机传输过来的视频图像帧,并且解压缩;2、使用模式识别与图像处理方法对图像帧扫描分析,根据设定的功能发现目标和异常状况。

 

2.1 安装

主文件夹下面有分别有以Cam320和Cam240命名的exe、apk后缀名的两组文件,按照320×240和240×240分辨率摄像头的android手机选其一。

 

2.2 使用方法

服务端主程序界面(见下载附件内容)

手机端打开程序之后首先设置服务器的IP和端口


选择监控栏,本地监控,然后选择菜单,点击监控选项,之后客户端会发起和服务器端的socket连接。

 

服务器程序有自动检测运动场的功能,下边状态栏flow显示的是当前运动光流总和,越大表明运动越剧烈。

 

自动录像运动视频

 

当把手机作为固定的监控摄像头使用的时候,可以选择使用自动对有运动出现的场景进行录像,视频保存在服务器端。在设置对话框里面把自动录像填入非零值,灵敏度的设置是为了对付小波动的干扰,检测到的光流总和如果低于该值则不会自动录像。当自动录像开始后,如果在约5秒之内没有检测到运动出现(低于灵敏度),程序会自动结束录像,直到下一次运动出现才会生成另外一个以系统时间命名的avi视频文件。视频编码的选择目前是以弹出对话框的形式提供监控者选择,也可以在程序中设置操作系统已经安装好的编码器。如果要停止自动录像,首先把自动录像标记设置为0,然后点击停止录像按钮。

 

 

手动录像视频,只需点击绿色三角形按钮即可。

 

3.1

实用性:带摄像头手机的普及和手机的移动性表明将手机用于视频监控是可行而且便利的,可以用于没有安装视频监控系统的场所,或者临时需要搭建一个监控环境的场合,比如仓库防火、金铺防盗、刑侦监控、户外科学研究等。

新颖性:一般的监控系统都需要人坐在监控中心查看各个视频通道看有无异常,本系统通过模式识别与图像处理的方法,运用差帧检测、光流算法自动识别视频中有无异常,在一定程度上“理解”视频的内容,然后告知人去处理,无需人一天到晚的看着视频。手机摄像头作为输入端和自动化监控的配合正是本系统的亮点。