本发明涉及竞赛监控系统,特别涉及基于移动通信技术的竞赛运行监控系统。
背景技术:
移动通信技术是沟通移动用户之间或者移动用户与固定点用户之间的通信方式,移动通信双方有一方或者两方处于运动之中。随着体育事业的蓬勃发展,与体育竞赛相关的信息系统开发越来越受到重视,但就目前而言,完善的竞赛运行监控系统并未得到普及,而在以移动通信技术为载体的移动终端上的应用少之又少。众多大型体育赛事,竞赛管理和运行部门管理者仍然需要通过较为传统低效、可移动性差、信息单一的视频墙进行全天候的竞赛运行监控。
在国外,在体育竞赛相关系统开发领域有代表性的服务公司主要是致力于信息系统集成服务的法国源讯公司(ATOS)及专注于计时记分硬件设备的瑞士欧米茄公司(OMEGA)。目前对于在移动终端进行进行竞赛运行监控,这套技术掌握在欧米茄公司(OMEGA)手中,整个系统的设备成型,只有在购买设备后才能使用其系统,直接造成使用费用高昂。而法国源讯公司(ATOS)开发一套将比赛数据和竞赛视频融合后的系统,通用性不强,可扩展性低,并且无法通过移动终端进行观看,仍需要大量人力进行使用。
在国内的体育赛事中,竞赛管理和运行部门管理者主要通过以下三种方式对竞赛运行实现监控。第一种方式是向各个竞赛场馆实时电话咨询竞赛运行情况。第二种方式是通过竞赛场馆的视频监控的视频墙全天候观看竞赛场馆的视频。第三种方式是通过竞赛成绩系统了解比赛运行情况。这三种方式工作效率低,可移动性差,且信息相互独立,与竞赛融合较少。
技术实现要素:
目的:为了克服以上不足,考虑现实情况的需求,本发明提供了基于移动通信技术的竞赛运行监控系统,根据大型赛事竞赛运行监控的应用现状和实际需求,应用移动通信技术对原有竞赛运行监控解决方案进行改进,使得系统更加稳定高效、经济、实用。
本发明的技术方案如下:
基于移动通信技术的竞赛运行监控系统,包括由监控系统采集端、监控系统服务端和监控系统移动终端,其中,
所述监控系统采集端包括比赛数据采集端和竞赛场馆视频采集端,所述比赛数据采集端包括现场成绩处理系统、计分计时系统、中央成绩处理系统和读取中央成绩系统配置,所述计分计时系统获取现场比赛数据,经过现场成绩处理系统处理后由交换机发送到中央成绩系统,所述读取中央成绩系统配置采用Newtonsoft.json技术将从中央成绩系统获取的XML格式的成绩数据转换成JSON格式,并将JSON格式数据的字符串反序列化成对象,通过所需数据的字段属性对对象进行筛选,完成数据剥离;所述视频采集端包括网络摄像机、多路视频编码器、千兆交换机和网络硬盘录像机,设置在场馆的网络摄像机获取场馆视频后由多路视频编码器进行编码,并由千兆交换机将编码后的数字视频流传送到网络硬盘录像机,由网络硬盘录像机可以对视频数字流进行存储和管理;
所述监控系统服务端分别连接监控系统采集端和监控系统移动终端,所述监控系统服务端从监控系统移动终端获取到请求数据后,经过解析处理将请求数据发送至监控系统采集端,从监控系统采集端得到所需的比赛数据和竞赛场馆视频URL数据,所得数据经监控系统服务端整合后分别保存至监控系统服务端数据库和发送至监控系统移动终端显示;
所述监控系统移动终端在登入获取权限后将所需竞赛监控的项目和时间段数据通过HTTP方式向监控系统服务端发送请求数据,并接收监控服务端根据请求数据从监控系统采集端获取的数据进行解析,在监控系统移动终端实时显示;若监控系统移动终端需播放视频时,向监控系统采集端的竞赛场馆视频采集端发送请求,所述监控系统采集端收到请求后将视频流数据发送至监控系统移动终端进行播放,并根据播放时间点向监控系统服务端请求获取比赛数据,在监控系统移动终端将数据融合显示。
优选地,所述视频采集端的视频服务器在Linux运行环境下的ubuntu系统下搭建,采用Nignx作为HTTP服务器来支持HTTP协议,并在Nignx服务器中加入nginx-rtmp-module和nginx-hls-module模块实现流媒体服务,使得服务器支持RTMP协议和HLS切片技术,且采用索尼摄像机,海康威视视频编码器和网络硬盘录像机,来实现视频采集端的视频服务器搭建。
优选地,所述视频服务器的控制软件采用基于.NET平台的C#语言进行C/S结构设计,并采用三层C/S架构体系进行设计。
优选地,包括本地数据操作模块和业务数据处理模块,所述业务数据处理模块包括接收请求、返回请求数据以及业务数据处理和交互功能,所述本地数据操作模块包括服务端数据库连接、服务端数据库数据读取、服务端数据库数据修改、视频存储和视频回放功能。
优选地,所述监控系统移动终端采用基于PhoneGap的Hybrid App开发模式、AJAX的数据请求方式、MVC的设计模式以及结合HTML5、JavaScript和CSS的Web设计技术来进行监控系统移动终端开发,包括数据处理和功能使用两个模块,所述数据处理模块包括发送请求数据、接收返回数据和业务数据融合,所述功能使用模块包括监控信息实时显示、监控视频播放、比赛信息显示和监控计划制定。
本发明的有益效果:本发明提供基于移动通信技术的竞赛运行监控系统,一方面实现在了移动终端上观看竞赛运行的监控视频,代替以往需要全天候观看视频墙或者电话咨询的低效率工作模式,另一方面在赛时将竞赛运行监控视频数据与比赛数据融合,使得使用者更能直观解竞赛的运行情况。
附图说明
图1为本发明的系统结构图;
图2为本发明系统的流程示意图;
图3为本发明服务端数据库访问组件的工作流程;
图4为本发明的监控系统采集端的业务流程图;
图5为本发明的竞赛场馆视频服务器的工作流程图;
图6为本发明的监控系统服务端的业务流程图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
如图1-6所示,基于移动通信技术的竞赛运行监控系统,包括由监控系统采集端、监控系统服务端和监控系统移动终端,其中,
所述监控系统采集端包括比赛数据采集端和竞赛场馆视频采集端,所述比赛数据采集端包括现场成绩处理系统、计分计时系统、中央成绩处理系统和读取中央成绩系统配置,所述计分计时系统获取现场比赛数据,经过现场成绩处理系统处理后由交换机发送到中央成绩系统,所述读取中央成绩系统配置采用Newtonsoft.json技术将从中央成绩系统获取的XML格式的成绩数据转换成JSON格式,并将JSON格式数据的字符串反序列化成对象,通过所需数据的字段属性对对象进行筛选,完成数据剥离;所述视频采集端包括网络摄像机、多路视频编码器、千兆交换机和网络硬盘录像机,设置在场馆的网络摄像机获取场馆视频后由多路视频编码器进行编码,并由千兆交换机将编码后的数字视频流传送到网络硬盘录像机,由网络硬盘录像机可以对视频数字流进行存储和管理;
所述监控系统服务端分别连接监控系统采集端和监控系统移动终端,所述监控系统服务端从监控系统移动终端获取到请求数据后,经过解析处理将请求数据发送至监控系统采集端,从监控系统采集端得到所需的比赛数据和竞赛场馆视频URL数据,所得数据经监控系统服务端整合后分别保存至监控系统服务端数据库和发送至监控系统移动终端显示;
所述监控系统移动终端在登入获取权限后将所需竞赛监控的项目和时间段数据通过HTTP方式向监控系统服务端发送请求数据,并接收监控服务端根据请求数据从监控系统采集端获取的数据进行解析,在监控系统移动终端实时显示;若监控系统移动终端需播放视频时,向监控系统采集端的竞赛场馆视频采集端发送请求,所述监控系统采集端收到请求后将视频流数据发送至监控系统移动终端进行播放,并根据播放时间点向监控系统服务端请求获取比赛数据,在监控系统移动终端将数据融合显示。
如图1所示,所述监控系统采集端通过竞赛专用以太网一方面与中央成绩系统服务器相连获取比赛数据,另一方面与竞赛场馆的网络硬盘录像机相连获取竞赛场馆的视频;
所述监控系统服务端一方面将监控系统采集端所获取的比赛数据和竞赛场馆视频URL数据存储在服务端数据库,另一方面根据监控系统移动终端的请求为竞赛管理和运行部门管理者提供数据服务,最后将竞赛场馆的视频进行归档存储。
如图2所示为本发明的系统运行流程示意图,具体步骤如下:
2a)在开始阶段,监控系统采集端主要完成视频服务器和中央成绩系统(CRS)的相关配置,监控系统服务端主要完成数据库和视频存储参数的配置,监控系统移动终端主要是用户完成登陆并进行权限分配;
2b)在数据处理阶段,监控系统移动终端向监控系统服务端发送获取竞赛运行监控实时列表的请求,由监控系统服务端通过解析请求参数,向监控系统采集端获取比赛信息和视频信息(竞赛场馆视频URL数据)后,通过相关操作将数据返回至监控系统移动终端显示,并进行数据库存储。在用户通过视频URL向监控系统采集端视频服务器发起视频请求后,监控系统采集端得到参数开启视频播放服务,将视频流数据返回监控系统移动终端播放,根据视频播放的时间点向监控系统服务端请求获取比赛数据,从服务端数据库读取数据后在移动终端融合显示。最后监控系统移动终端发送结束监控竞赛视频请求,监控系统采集端视频服务器结束视频播放服务。
2c)在结束阶段三部分各自结束流程。
优选地,所述竞赛场馆视频采集端还包括视频服务器,所述视频服务器是在基于Linux运行环境下的ubuntu系统搭建的,采用H.264编码标准,以Nignx作为HTTP服务器来支持HTTP协议,并在Nignx服务器中加入nginx-rtmp-module和nginx-hls-module模块实现流媒体服务,使得服务器支持RTMP协议和HLS切片技术。支持RTMP协议使得网络摄像头(IPC)可以主动将视频流推送至视频服务器,减小视频服务器压力。支持RTSP协议使得视频服务器可以主动从网络摄像机拉取所需的视频流。而支持HTTP协议和HLS切片技术使得移动端用户可以直接访问视频服务器的视频流,并且支持视频直播和视频点播。此外本发明采用索尼摄像机,海康威视视频编码器和网络硬盘录像机,来实现视频采集端的视频服务器搭建。
优选地,所述视频服务器的控制软件采用基于.NET平台的C#语言进行C/S结构设计,并采用三层C/S架构体系进行设计。整个界面主要包括功能按钮区、竞赛项目场次区、视频数据控制区和运行状态监控区,简洁明,操作简单。功能按钮区主要包括刷新、配置和退出等系统所需的按钮,设计时采用WinForm窗体下的Button控件。竞赛项目场次区采用树形结构,以竞赛项目为根节点,采用TreeView控件,单击TreeView的子节点,视频数据控制区数据进行刷新。视频数据控制区包括上下两部分,上部分主要是相关的监控列表,下部分为视频信息的详细介绍以及视频数据操作按钮,包括开始、删除、停止、重启等按钮。上部分采用WinForm窗体下的DataGridView控件,下部分采用Label和Button控件进行设计。运行状态监控区主要对本机的IP、视频服务器的IP和运行状态进行实时监控,并显示操作者的相关信息,主要采用WinForm窗体下Label、Button和TextView控件进行设计。
如图4所示为本发明的监控系统采集端的业务流程图,在开始后首先配置视频服务器和CRS的相关参数,并运行视频服务器控制软件,在接收到监控系统服务端的请求数据后,分别从网络硬盘录像机(NVR)获取竞赛场馆视频、从中央成绩系统(CRS)获取比赛数据,从中央成绩系统获取到比赛数据后需要将XML结构的数据转为JSON数据结构。在获取数据的过程中如果发生异常,则会通知正在运行的监控系统采集端控制软件,并将异常通知平台管理人员。最后将获得的比赛数据和竞赛场馆视频URL数据送至监控系统服务端,在视频服务器接收到监控系统移动终端视频播放请求后将视频流数据发送给监控系统移动终端,在接收到停止播放的请求后,关闭视频流,整个业务流程完成。
如图5所示为视频服务器的工作流程,竞赛场馆视频服务器在接收到控制软件发出的开启视频流获取指令后,通过网络硬盘录像机通知网络摄像机开始获取视频流,在接收到网络硬盘录像机发来的视频流后开启视频播放服务。同样,在接收到控制软件发出的停止视频流指令后,通知网络硬盘录像机停止视频流的获取,并且停止视频播放服务。
优选地,所述监控系统服务端包括本地数据操作模块和业务数据处理模块,所述业务数据处理模块包括接收请求、返回请求数据以及业务数据处理和交互功能,所述本地数据操作模块包括服务端数据库连接、服务端数据库数据读取、服务端数据库数据修改、视频存储和视频回放功能。
如图6所示为本发明的监控系统服务端的业务流程,首先配置服务端数据库和视频存储参数,监控系统服务端从监控系统移动终端获取到请求数据后,经过解析处理以后将请求数据发送至监控系统采集端,从监控系统采集端得到所需的比赛数据和竞赛场馆视频URL数据,经过监控系统服务端的整合后一方面操作数据库进行保存,另一方面将数据发送至监控系统移动终端显示,最后结束整个流程。
本发明监控系统服务端的数据通信设计主要包括数据通信格式和HTTP通信协议两方面。本发明采用JSON数据格式作为数据通信格式。HTTP通信协议操作过程主要分为四个步骤,首先是监控系统移动终端与监控系统服务端建立链接,HTTP开始工作。在链接建立后,监控系统移动终端发送一个HTTP请求给监控系统服务端,监控系统服务端接收到监控系统移动终端请求后给予相应的响应数据。最后监控系统移动终端接收监控系统服务端的返回数据并进行显示,整个连接断开。
本发明以SQL Server 2008R2为构建平台,并结合竞赛运行监控的业务需求进行数据库ListenDB和备用数据库ExListenDB的设计,系统的最主要的表组成如表1所示,主要包括T_User、T_Authority、T_Role、T_Match和T_Video。其中T_User表主要存储平台的用户信息,如姓名、帐号、密码和备注等信息;T_Authority主要存储用户的使用权限,如全部运动项目或者个别运动项目;T_Role表主要存储平台的使用角色;T_ListenList主要存储竞赛运行监控列表信息;T_MatchInfo主要存储各监控列表的比赛数据,如比赛对阵双方,比分等信息;T_Video主要存储竞赛场馆的视频信息。
表1
监控系统服务端采用基于Node.js的msnodelsql包进行SQL Server数据库的访问。本发明采用JSON数据格式的配置文件进行主备数据库连接,配置文件包含的属性字段包含服务器IP地址、端口号、业务数据库名称、数据库用户名密码。
本发明中在视频归档的存储过程中,采用树形结构设计,将赛区作为一级目录节点,考虑到实际情况中,更多竞赛项目和竞赛场馆是一对一或者一对多的情况,因此将竞赛项目作为二级节点,竞赛场馆作为三级节点。考虑到各竞赛项目时间的差异性,本设计中将整个竞赛运行时间段分为上午、下午和晚上三个阶段,这三个时间段作为第四节点。
监控系统服务端的视频归档存储操作通过Cmd_VideoFile.js文件的SaveVideoFile方法实现,SaveVideoFile采用递归的循环操作,包含aDivision、aSport、aSportArea、aTime和aCallback五个参数。其中aDivision是竞赛赛区参数,aSport是竞赛项目参数,aSportArea是竞赛场馆参数,aTime是时间段参数,aCallback是视频存储的回调函数。在实际操作中,视频服务器控制终端的操作者根据竞赛项目的情况,分时间段将视频进行归档存储。在完成相关视频归档存储后,将视频所在的目录数据保存在数据库中。
优选地,所述监控系统移动终端采用基于PhoneGap的Hybrid App开发模式、AJAX的数据请求方式、MVC的设计模式以及结合HTML5、JavaScript和CSS的Web设计技术来进行监控系统移动终端开发,包括数据处理和功能使用两个模块,所述数据处理模块包括发送请求数据、接收返回数据和业务数据融合,所述功能使用模块包括监控信息实时显示、监控视频播放、比赛信息显示和监控计划制定。
本发明监控系统移动终端业务流程如下:先登陆获取权限,登陆后用户通过监控系统移动终端将所需的竞赛监控的项目、时间段等数据通过HTTP方式向监控系统服务端发送请求。其次,监控系统服务端在将用户所需的数据准备好后发送至监控系统移动终端。监控系统移动终端接收返回数据解析,在监控系统移动终端实时显示。最后当监控系统移动终端播放视频时,向监控系统采集端视频服务器发送请求,监控系统采集端收到请求后将视频流数据发送至监控系统移动终端进行播放,根据播放时间点向监控系统服务端请求获取比赛数据,最后在监控系统移动终端将数据融合显示。
本发明中监控系统移动终端的数据请求方式采用AJAX方式,在实际设计中使用基于JavaScript的jQuery库的$.ajax()方法来简化移动端的数据请求。jQuery中$.ajax()方法的参数配置如表2所示。其中,url参数是监控系统服务端服务器所在的地址,data参数是发送到服务端的请求数据,采用的是JSON的数据格式,主要包括ServiceKey、CmdID、DataJson等参数。timeout参数是配置请求超时的时间,默认设置为30s。async参数配置是否异步请求方式,默认是异步请求,本次设计选用异步请求。cache参数配置是否缓存请求信息,本次设计选用缓存。type参数是配置请求的方式,包括GET请求和POST请求,设计时根据需求选择配置。datatype参数是预期服务端返回的数据类型,主要包括XML、HTML、SCRIPT、JSON、JSONP和TEXT六种数据类型。由于监控系统移动终端和监控系统服务端在实际应用中处于异域,在进行交换数据时需要进行跨域,因此在本设计中选用JSONP数据类型而不是JSON数据类型。jsonp参数配置在JSONP请求中重写回调函数callback的名称。success函数是在请求得到服务端正确响应后的回调函数,主要包括服务器返回数据和返回状态。error函数是在请求异常的情况下的回调函数。
表2
本发明采用的数据融合技术包括视频实时播放阶段数据融合和视频回放阶段数据融合,对于视频实时播放阶段数据融合,用户通过竞赛运行监控列表中的视频URL向视频服务器获取实时视频流,采用监控系统移动终端主动轮询请求获取最新比赛数据,即由监控系统移动终端每隔一段时间主动请求监控系统服务端,当比赛数据有更新后监控系统服务端返回最新比赛数据;对于视频回放阶段数据融合,监控系统移动终端使用者的视频请求,监控系统服务端从数据库中获得视频的URL,并对URL进行判断,如果该URL是视频归档存储的物理文件路径,则直接将监控系统服务端上的归档视频流发送给监控系统移动终端。如果该URL是视频服务器的路径,则表示该视频虽是回放请求,但仍未进行视频归档,监控系统移动终端根据URL从视频服务器获取视频流。在监控系统移动终端将视频流数据和比赛数据的时间点进行匹配,制作出整个播放时间轴与每个事件所发生的时间点,并能根据这些时间点选择视频回放的进度,同时还能看到每个事件所对应的比赛数据。
本发明采用SQL Server 2008R2作为数据库平台,服务端数据库访问组件的工作流程如图3所示,首先创建SQL Connection对象进行连接,并将连接状态设为OPEN,根据获取SQL语句的不同,分别创建SqlCommond对象、SqlDataReader对象和SqlDataAdapter对象,其中,SqlCommond对象会直接执行SQL语句,SqlDataReader对象用于直接读取数据库数据,SqlDataAdapter对象实现对数据库数据的填充和修改,在完成SQL语句操作后关闭与数据库的连接,并释放资源。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。