分布式大屏标注的系统及方法与流程

所属的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的电子设备、存储介质的具体工作过程及有关说明,可以参考前述方法实施例中的对应过程,在此不再赘述。本领域技术人员应该能够意识到,结合本文中所公开的实施例描述的各示例的模块、方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,软件模块、方法步骤对应的程序可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或内所公知的任意其它形式的存储介质中。为了清楚地说明电子硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以电子硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。下面参考图2,其示出了用于实现本技术方法、系统、设备实施例的服务器的计算机系统的结构示意图。图2示出的服务器仅仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。如图2所示,计算机系统包括中央处理单元(cpu,central processing unit)601,其可以根据存储在只读存储器(rom,read only memory)602中的程序或者从存储部分608加载到随机访问存储器(ram,random access memory)603中的程序而执行各种适当的动作和处理。在ram 603中,还存储有系统操作所需的各种程序和数据。cpu 601、rom 602以及ram603通过总线604彼此相连。输入/输出(i/o,input/output)接口605也连接至总线604。以下部件连接至i/o接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(crt,cathode ray tube)、液晶显示器(lcd,liquid crystal display)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如lan(局域网,local areanetwork)卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至i/o接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(cpu)601执行时,执行本技术的方法中限定的上述功能。需要说明的是,本技术上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。可以以一种或多种程序设计语言或其组合来编写用于执行本技术的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。术语“第一”、“第二”等是用于区别类似的对象,而不是用于描述或表示特定的顺序或先后次序。术语“包括”或者任何其它类似用语旨在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备/装置不仅包括那些要素,而且还包括没有明确列出的其它要素,或者还包括这些过程、方法、物品或者设备/装置所固有的要素。至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征做出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
背景技术:
1、传统的分布式大屏标注的方法,大多数只能在单屏上实现标注,无法实现跨节点拼接。即使有些支持跨屏拼接标注,尚存在显示效率低,无法支持快速后退和前进显示功能以及无法支持多用户情况下的同步显示。通常由上位机软件来确定标注元素,标注元素为矢量坐标序列,上位机将生成的标注元素分发给每个输出盒,每个输出盒对标注元素进行处理,得到一个虚拟画布,每个输出盒根据自己的输出区域,对虚拟画布进行缩放、裁剪得到自己输出区域,进行显示。这种技术方案的问题在于,需要上位机完成一次标注后,分发到输出盒,输出盒子再处理,再显示的过程,而该过程要求一次性标注完成,才能下发到输出盒,该方案标注显示滞后,无法达到实时标注的目的,无法实现多用户同时进行标注操作,标注一旦下发,也无法进行后退和前进操作。
技术实现思路
1、为了解决现有技术中的上述问题,即现有的分布式大屏标注的方法无法达到实时标注的目的,无法实现多用户同时进行标注操作,并且标注一旦下发,也无法进行后退和前进操作的问题,本发明提供了一种分布式大屏标注的系统,所述系统包括:
2、管理服务器,用于提供用来标注的ui操作界面,将用户绘制的轨迹实时生成针对大屏幕的矢量坐标,并基于所述矢量坐标生成udp特定坐标协议报文,管理服务器依据所述矢量坐标计算所述矢量坐标覆盖的解码盒,矢量坐标覆盖的解码盒作为第一解码盒,管理服务器随后以udp单播方式将所述udp特定坐标协议报文发送给所述第一解码盒;所述udp特定坐标协议报文包括所述矢量坐标、用户id以及当前的绘制步数;
3、第一解码盒,用于接收所述udp特定坐标协议报文;随后基于所述矢量坐标对收到的视频图层进行配置得到配置后的视频图层;并根据用户id查找当前帧缓冲;然后在当前帧缓冲上基于所述矢量坐标进行绘制标注,并将绘制标注后的当前帧缓冲与配置后的视频图层进行叠加得到标准图层发送给对应的拼接屏幕;
4、拼接屏幕,用于接收对应的标准图层并进行显示。
5、在一种优选的实施方式中,所述第一解码盒包括:如果所述第一解码盒接收到的绘制步数大于所述当前的绘制步数,则将当前帧缓冲备份到历史帧缓冲上。
6、在一种优选的实施方式中,所述管理服务器还用于通过http协议接口来为用户设置标注的颜色、粗细以及标注参数,还通过所述http协议进行标注的后退、前进、清空、打开以及关闭标注功能。
7、所述管理服务器将所述udp特定坐标协议报文发送给所述第一解码盒时,还将所述矢量坐标、当前的绘制步数以及所述矢量坐标覆盖的解码盒的信息存储到数据库。
8、在一种优选的实施方式中,所述解码盒为每个用户缓存的n个帧缓冲;为每个用户缓存的n个帧缓冲构成了每个用户的历史帧缓冲列表;当管理服务器进行后退或前进时,所述解码盒根据用户id查找所述用户id对应的历史帧缓冲列表,基于历史帧缓冲列表将后退或前进对应步数的对应帧缓冲与当前的配置后的视频图层、其他用户的当前帧缓冲进行叠加,叠加后送拼接屏幕显示。
9、在一种优选的实施方式中,每个用户均有一个当前帧缓冲,当前帧缓冲用于保存其对应的用户的最新绘制内容。
10、在一种优选的实施方式中,所述历史帧缓冲列表包括:所述历史帧缓冲列表用于记录用户绘制的历史帧缓冲;用户绘制的每一笔为一个历史帧缓冲,一个历史帧缓冲对应一步绘制步数。
11、在一种优选的实施方式中,所述历史帧缓冲包括:当用户绘制的历史帧缓冲达到最大可支持历史步数后,将覆盖步数最久的历史帧缓冲,进而循环使用历史帧缓冲。
12、在一种优选的实施方式中,所述分布式大屏标注的系统被用户绘制时,用户基于两种图层进行操作;所述两种图层分别为绘制图层和历史图层;
13、当用户执行前进、后退操作时,不会从历史图层向绘制图层执行拷贝动作,只会切换图层指向进而提升反应速度。
14、本发明的第二方面,提出了一种分布式大屏标注的方法,所述方法包括:
15、管理服务器,将用户绘制的轨迹实时生成针对大屏幕的矢量坐标,并基于所述矢量坐标生成udp特定坐标协议报文,管理服务器依据所述矢量坐标计算所述矢量坐标覆盖的解码盒,矢量坐标覆盖的解码盒作为第一解码盒,随后管理服务器以udp单播方式将所述udp特定坐标协议报文发送给所述第一解码盒;所述udp特定坐标协议报文包括所述矢量坐标、用户id以及当前的绘制步数;
16、第一解码盒根据所述udp特定坐标协议报文中的用户id查找当前帧缓冲,然后在当前帧缓冲上基于所述矢量坐标进行绘制标注;随后基于所述矢量坐标对收到的视频图层进行配置得到配置后的视频图层;并将绘制标注后的当前帧缓冲与配置后的视频图层进行叠加得到标准图层发送给对应的拼接屏幕;
17、拼接屏幕接收对应的标准图层并进行显示。
18、本发明的有益效果:
19、(1)本技术最大程度上解决了拼接大屏跨节点标注的实时显示,以及高效进行回退,前进等的标注操作问题;
20、(2)本技术将实现拼接大屏的标注功能,可支持多用户实时绘制展示,实时回退和前进能力,为应急指挥等场景,提供高效标注能力;
21、(3)本技术保证了,在一个分布式拼接大屏系统中,支持多用户同时对拼接大屏进行标注,标注可实时在输出盒上屏,增加了用户体验,在指挥,应急等实时性要求高的场景,效果更好。
技术研发人员:张宝柱,赵建立,李伟,李厚鹏
技术所有人:北京小鸟科技股份有限公司
备 注:该技术已申请专利,仅供学习研究,如用于商业用途,请联系技术所有人。
声 明 :此信息收集于网络,如果你是此专利的发明人不想本网站收录此信息请联系我们,我们会在第一时间删除
