一种移动视频监控及定位系统的设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
[导读]随着3G/4G移动通信网络和计算机技术的快速发展,移动互联网从很多方面改善了人们传统的生活方式,3G/4G移动网络具有带宽宽、广域广、高安全性等突出特点,能够突破安防行业长距离数字化无线监控一直以来难以简单实现的瓶颈,为无线视频监控开辟了一条新的道路。
随着3G/4G移动通信网络和计算机技术的快速发展,移动互联网从很多方面改善了人们传统的生活方式,3G/4G移动网络具有带宽宽、广域广、高安全性等突出特点,能够突破安防行业长距离数字化无线监控一直以来难以简单实现的瓶颈,为无线视频监控开辟了一条新的道路。
本文设计的一种移动视频监控及定位系统,采用S3C6410处理器作为硬件基础,以Mediastream、Live555、VLC开源项目为核心,3G/4G移动通信网络作为网络传输媒介,采用H.264编解码方式实现视频的采集传输播放,并集成GPS模块进行位置数据的采集、传输、显示,实现移动目标的视频监控、定位功能,该系统的前端硬件设备小巧,易于使用。
系统原理
系统框图
如图1所示。
图1系统框图
工作原理
系统前端采用S3C6410处理器为核心处理器,包括了摄像头、GPS模块、传输模块,提供了一个具有低成本、低功耗,高性能的应用处理器解决方案。它包含一个集成的多格式编解码器(MFC)支持MPEG4/H.263/H.264编码、译码以及VC1的解码。前端采用Mediastream开源项目从摄像头采集数据,然后S3C6410处理器使用其硬件编解码器将采集到数据编码成H.264视频流,发送到中转服务器,中转服务器使用Live555开源项目对视频流进行转发,最后在PC端使用VLC播放器进行解码播放,整个过程实现了视频采集、编码、传输、解码和播放功能。
前端通过嵌入式程序将GPS模块采集到的位置数据进行处理后,提取出其中的经纬度数据,利用Socket发送到PC端软件,PC端软件使用电子地图实时显示移动前端所在的地点,实现对移动目标的实时定位和监控功能,并记录其轨迹。
网络传输模块则使用通过USB接口连接到开发板上的3G上网卡连接3G网络,通过在前端脚本软件启动拨号上网,开启数据传输通道。
前端软件设计
GPS数据采集
数据采集
硬件设备采用的是S3C6410开发板,使用串口将GPS模块与开发板相连接,设定好串口相关参数后便可以从串口中读出实时的GPS数据。
图2前端硬件
数据处理
从串口中读取出来的GPS数据是标准的GPS数据,数据格式之一如下:
(1)GlobalPositioningSystemFixData(GGA)GPS定位信息
$GPGGA,《1》,《2》,《3》,《4》,《5》,《6》,《7》,《8》,《9》,M,《10》,M,《11》,《12》*hh
《1》UTC时间,hhmmss(时分秒)格式
《2》纬度ddmm.mmmm(度分)格式(前面的0也将被传输)
《3》纬度半球N(北半球)或S(南半球)
《4》经度dddmm.mmmm(度分)格式(前面的0也将被传输)
《5》经度半球E(东经)或W(西经)
《6》GPS状态:0=未定位,1=非差分定位,2=差分定位,6=正在估算
《7》正在使用解算位置的卫星数量(00~12)(前面的0也将被传输)
《8》HDOP水平精度因子(0.5~99.9)
《9》海拔高度(-9999.9~99999.9)
《10》地球椭球面相对大地水准面的高度
《11》差分时间(从最近一次接收到差分信号开始的秒数,如果不是差分定位将为空
可以看出,从串口中读出的GPS数据包含的信息量非常大,需要从其中提取出有用的部分进行处理才能得到想要的经纬度数据。
考虑到实际运行可行性,每1.5秒从串口读取一次数据,编写一个函数从数据中提取出关键的经纬度数据。
数据发送
经过处理得到经纬度数据之后,通过Socket将经纬度数据发送到PC端进行显示。Socket分为客户端和服务器端,可以根据实际的需要在前端使用Socket客户端或者服务器端。在知道服务器域名或者IP地址的情况下可以采用服务器端建立Socket服务器,前端通过Socket客户端去连接Socket服务器并发送数据。在给前端做域名绑定之后,前端也可以建立Socket服务器,在PC端建立Socket客户端来访问前端的Socket服务器来获取GPS数据。相比之下,在PC端建立Socket服务端口监听前端的Socket客户端连接的方案更加实用,在多客户端的情况下,便于管理,不需要对前端进行域名绑定。
视频采集
视频采集方案有两套:
(1)开源项目Linphone中的Mediastream,这是一款点对点采集传输的视频采集方案,从摄像头采集到图像后能进行常用的MJPEG、H.263、H.264等编码进行视频压缩,其优点是支持多种视频压缩方式,能根据网络状况挑选适宜的编解码方式来进行视频压缩传输及播放。
(2)开源项目mjpg-streamer,从摄像头采集到图像后使用.jpeg格式进行压缩,传送到前端后可在网页,插件,播放器中进行播放观看,其优点是采用jpeg图像压缩,网络好的情况下图像清晰,并且支持多种播放方式。
PC端软件设计
PC端系统包含以下几个部分:电子地图,视频显示及PC端界面三个部分。
电子地图
使用网络电子地图对GPS数据进行定位显示。在网络上的几种常见地图中选择谷歌地图作为显示地图。谷歌地图提供了一套成熟的JavaScript 的API,根据其提供的API实现实时的定位显示以及历史轨迹的回放功能。由于GPS提供的数据与实际地图定位存在一定误差,在进行数据处理时还加入了一个校正算法对数据进行修正,修正后的结果与实际结果误差在10m内,在可以接受的范围之内。
图3PC端监控软件界面
视频显示
根据前端视频采集的两套方案,PC端的视频显示对应也有两套方案如下:
(1)Mediastream+Live555+VLC,其中Mediastream负责视频的采集及传输,Live555负责进行视频流的转发,VLC进行视频的播放。Mediastream 是一种点对点的传输,双方商定好端口之后进行传输及播放,但是VLC播放时使用的是RTSP流,还有RTSP的控制协议,因此采用Live555进行一个中间的转发,将Mediastream采集的视频流发送到Live555,Live555将视频流打包成RTSP流,然后使用VLC进行播放。
(2)使用MJPEG开源项目自带的播放控件及方式,可以在网页及VLC中进行播放显示。
以上两种方案都可以使用VLC进行播放,于是可以在网页中内嵌VLC的控件进行视频显示,电子地图和视频都可以在网页中进行展示了。
PC端界面