首页> 中国专利> 经由远程渲染的视频流进行3D模型的可视化和交互的系统和方法

经由远程渲染的视频流进行3D模型的可视化和交互的系统和方法

摘要

本公开涉及用于然后由远程计算机访问的3D模型的本地渲染的系统和方法。该系统的优势在于,渲染复杂3D模型所需的大量硬件被集中化,并且能够由小型远程计算机访问,而无需专门的硬件或软件安装。该系统还提供了增强的安全性,因为可以将模型数据限制于有限数量的服务器,而不是存储在各个计算机上。

著录项

  • 公开/公告号CN112997220A

    专利类型发明专利

  • 公开/公告日2021-06-18

    原文格式PDF

  • 申请/专利权人 阿韦瓦软件有限责任公司;

    申请/专利号CN201980072862.6

  • 申请日2019-09-10

  • 分类号G06T17/00(20060101);G06T19/20(20110101);G06T15/00(20110101);G06T1/20(20060101);H04L29/06(20060101);

  • 代理机构11038 中国贸促会专利商标事务所有限公司;

  • 代理人汪晶晶

  • 地址 美国加利福尼亚

  • 入库时间 2023-06-19 11:27:38

说明书

相关应用

本申请要求于2018年9月10日提交的标题为“VISUALIZATION AND INTERACTIONOF 3D MODELS VIA REMOTELY RENDERED VIDEO STREAM SYSTEM AND METHOD”的美国临时专利申请No.62/729,307和于2018年9月11日提交的标题为“VISUALIZATION ANDINTERACTION OF 3DMODELS VIA REMOTELY RENDERED VIDEO STREAM SYSTEM AND METHOD”的美国临时专利申请No.62/729,935的权益和优先权,这些申请的全部内容通过引用并入本文。

背景技术

由工业控制和监视软件平台生成的3D模型正在变得越来越大和越来越复杂,从而导致任何试图处理和可视化数据的计算机对硬件的要求在增加。一些系统提供者使用某种形式的服务器侧渲染,使用光线跟踪产生图像。其它视频流传输技术也很普及(例如,Skype),但仅流传输自创建内容。诸如WebRTC之类的一些技术提供了执行视频和通信的低时延流传输的能力,但仅仅是用于这样做的框架或SDK,并且不生成编码内容。

发明内容

根据各种实施例,本文描述的系统和方法涉及促进对在本地计算机处生成的三维(3D)模型的渲染,该三维(3D)模型可以使用远程计算机来操纵(例如,提供可视化服务器进程,从而将渲染的3D数据的交互式视频流传递到具有视频回放能力的一个或多个网络连接)。根据一些实施例,3D模型的本地渲染的优点包括在需要时升级本地装备以支持不断增长的复杂3D模型的能力,同时获得在可以支持视频流传输的任何远程计算机上渲染3D图像的能力。在一些实施例中,系统将图形处理单元(GPU)与位于本地站点的一个或多个处理器和非暂态计算机可读介质结合使用以生成3D模型。在一些实施例中,通过连接将3D模型的渲染作为视频流传递到一个或多个远程计算机。然后,根据一些实施例,用户可以使用各种命令来操纵3D模型。根据各种实施例,该系统极大地减少了时延对用户体验的影响,并且由于仅在本地网络内可访问而提供了更高的安全性。在一些实施例中,时延小于50ms。通过将3D数据集中在本地可访问的内部部署的网络上,在一些实施例中,3D模型变得高度可访问,而无需将相同的3D模型复制和/或拷贝到每个单独的远程计算机上。这也提供了增强的安全性,因为根据一些实施例,模型数据的使用可以限于特定数量的计算机,而不是多个最终用户计算机。另外,在一些实施例中,多个远程计算机可以间歇性地或同时访问本地计算机上的相同3D模型。

本发明的一些实施例包括可以在等待客户端连接的任何计算机上托管的系统和处理。本发明的一些实施例使得能够进行远程渲染,使得任何计算机都能够显示一个或多个复杂模型的渲染而不需要任何特殊的硬件或软件安装。在一些实施例中,这些连接可以用于发送实时视频流,该实时视频流是通过在本地计算机上渲染指定的3D模型并以交互速率对每一帧进行编码而生成的。在一些实施例中,来自本地计算机的渲染以视频流的形式被传递到远程计算机。

在一些实施例中,一旦开始流传输,远程计算机就可以通过向本地计算机发送简单的JavaScript对象表示法(JSON)命令来与渲染交互以允许导航、拾取、平移、缩放以及其它3D模型交互。在一些实施例中,对3D视图具有视觉影响(例如,视点改变)的交互可以触发新帧在本地计算机上被渲染并且作为视频流的一部分被流传输给用户。根据一些实施例,在交互、渲染和/或流传输的反馈环之后,用户可以与他们的远程计算机上的3D模型的渲染自由地交互。

该系统的一些实施例可以促进通过标准通信或流传输技术(包括但不限于H.264视频编码和解码、应用编程接口(API)和HTML5WebSocket)建立的连接。在一些实施例中,这允许不同操作系统之间的高度兼容性,从而使将来的应用能够基于web(例如,由远程计算机通过web访问的本地计算机),而不要求必须针对每个支持的操作系统编写应用或软件的多个版本。在一些实施例中,GPU光栅化器可以用于流传输,从而使其具有高度的交互性(例如,诸如通过使用30Hz帧速率)。在一些实施例中,例如,除了支持媒体源扩展和H264编码视频的标准HTML5浏览器之外,无需任何附加软件/插件就可以产生使用标准视频流的任何可视化。

在一些实施例中,该系统可以使得在多个计算机、虚拟机和/或服务器上同时运行的一个或多个本地计算机服务器进程能够支持任何数量的远程计算机。

一些实施例可以使用GPU视频编码器从由渲染引擎(例如,诸如AVEVA渲染引擎)生成的帧中产生视频流。在一些实施例中,在3D模型的渲染和编码二者期间确保GPU的高利用率可以导致在远程计算机交互之后的低时延。在各种实施例中,低时延小于或等于50ms。

在一些实施例中,至少一个本地计算机可以托管一个或多个虚拟和/或物理计算机,每个虚拟和/或物理计算机可以运行一个或多个服务器来处置来自远程计算机的一个或多个传入的远程客户端请求。在一些实施例中,是远程计算机负责解码视频流。在一些实施例中,视频流可以与媒体源扩展(MSE)兼容以确保良好的回放性能。

在一些实施例中,远程计算机可以经由WebSocket耦合到本地计算机并发送命令来渲染3D模型。在一些实施例中,该动作可以保留一些GPU资源来渲染2D帧以进行编码:在一些实施例中,MP4电影标头被发送到远程客户端以指示视频流的开始。

在一些实施例中,远程计算机可以发出命令以与3D模型进行交互。在一些非限制性实施例中,经由鼠标移动和/或点击、手指触摸、手势、眼睛移动跟踪或任何其它发送数字信号的方法来发出命令。在一些实施例中,命令修改本地3D模型并触发要渲染的新帧并将其发送到硬件编码器,然后将该新帧作为下一个P帧(相对先前图像的增量)发送到远程客户端。在一些实施例中,使用一个或多个硬件编码器和高GPU/低CPU组合实现这种交互所需的低时延。

附图说明

图1图示了根据一些实施例的系统体系架构。

图2图示了根据一些实施例的基于云的系统体系架构。

图3图示了实现或包括根据一些实施例的系统和方法的计算机系统。

具体实施方式

图1图示了根据一些实施例的系统体系架构100。在一些实施例中,远程计算机101促进与网络104的连接102、103,该网络104与本地计算机106处于连接105;在一些实施例中,连接102、103促进视频流传输102和命令103。根据一些实施例,3D模型数据107被上传到本地计算机106和/或存储在其上,在本地计算机106中被变换成3D模型渲染。在一些实施例中,3D模型渲染被通过网络104发送到远程计算机101,并且作为视频流102到达。然后可以在远程计算机101处向3D模型渲染给出3D模型操纵命令103。然后在一些实施例中,通过网络104将3D模型操纵命令103发送回本地计算机106。此时,在各种实施例中,本地计算机106根据命令103来操纵3D模型渲染。在各种实施例中,然后,新的3D渲染通过网络104被发送回远程计算机101,其中它以视频流102的形式到达远程计算机101。根据各种实施例,上述过程重复用户所需的次数,以根据期望操纵3D模型。

图2图示了根据一些实施例的基于云的系统体系架构200。类似于图1,在一些实施例中,远程计算机201促进与网络204的连接202、203,该网络204与本地云计算机209处于连接205。在一些实施例中,连接202、203促进视频流传输202和命令203。在一些实施例中,本地云计算机209包括代理服务器215、视频服务器211、每个都彼此处于连接210并且与实例208相关联。根据一些实施例,3D模型数据207被上传到视频服务器211和/或存储在其上,在视频服务器211中它被变换成3D模型渲染。在一些实施例中,3D模型渲染通过代理服务器215和网络204被发送到远程计算机201,并且作为视频流202到达。然后可以在远程计算机201处向3D模型渲染给出3D模型操纵命令203。然后在一些实施例中,通过网络204将3D模型操纵命令203发送回本地云计算机209。此时,在各种实施例中,本地云计算机209根据命令203来操纵3D模型渲染。在各种实施例中,然后,新的3D渲染通过网络204被发送回远程计算机201,其中它以视频流202的形式到达远程计算机201。根据各种实施例,上述过程重复用户所需的次数,以根据期望操纵3D模型。

在一些实施例中,如果3D模型数据207对于视频服务器211太大或太复杂而不能被处置,那么可以调用212附加的服务器213来支持视频服务器211,或者该附加的服务器213可以代替视频服务器211使用:根据一些实施例,多个服务器可以包括渲染的3D模型的部分。根据各种实施例,附加服务器213可以是与代理服务器215进行通信214的物理或虚拟服务器。

图3图示了实现或包括根据一些实施例的系统和方法的计算机系统。在一些实施例中,计算机系统210可以包括和/或操作和/或处理上述软件模块和/或系统中的一个或多个的计算机可执行代码。此外,在一些实施例中,计算机系统310可以使用计算机在一个或多个图形用户界面(GUI)内操作和/或显示信息。在一些实施例中,计算机系统210可以包括云和/或可以耦合到一个或多个基于云的服务器系统。

在一些实施例中,系统310可以包括至少一个计算机,该至少一个计算机包括至少一个处理器332。在一些实施例中,至少一个处理器332可以包括驻留在一个或多个服务器平台中或耦合到一个或多个服务器平台的处理器。在一些实施例中,系统310可以包括网络接口335a和应用接口335b,其耦合到能够处理至少一个操作系统334的至少一个处理器332。此外,在一些实施例中,耦合到至少一个处理器332的接口335a、335b可以被配置为处理软件模块中的一个或多个(例如,诸如企业应用238)。在一些实施例中,软件模块338可以包括基于服务器的软件,并且可以操作以托管至少一个用户账户和/或至少一个客户端账户,并且使用至少一个处理器332操作以在这些账户中的一个或多个之间传送数据。

根据一些实施例,本发明可以采用涉及存储在计算机系统中的数据的各种计算机实现的操作。此外,在一些实施例中,通篇描述的模型和上述数据库可以将分析模型和其它数据存储在系统310内的计算机可读存储介质上以及耦合到计算机系统310的计算机可读存储介质上。此外,在一些实施例中,系统的上述应用可以存储在计算机系统210内的计算机可读存储介质上以及耦合到计算机系统210的计算机可读存储介质上。根据各种实施例,这些操作是要求对物理量进行物理操纵的操作。虽然不是必需的,但通常,在一些实施例中,这些量采取能够被存储、传输、组合、比较和以其它方式操纵的光学或磁光形式、电、电磁或磁信号的形式。在一些实施例中,系统310可以包括耦合到至少一个数据源337a和/或至少一个数据存储装置337b和/或至少一个输入/输出337c的至少一个计算机可读介质336。在一些实施例中,计算机系统可以被实施为计算机可读介质336上的计算机可读代码。在一些实施例中,计算机可读介质336可以是能够存储数据的任何数据存储装置,该数据随后能够由计算机系统(诸如系统310)读取。在一些实施例中,计算机可读介质336可以是能够用于有形地存储期望的信息或数据或指令并且能够由计算机或处理器332访问的任何物理或材料介质。在一些实施例中,计算机可读介质336可以包括硬盘驱动器、网络附加存储装置(NAS)、只读存储器、随机存取存储器、基于FLASH的存储器、CD-ROM、CD-R、CD-RW、DVD、磁带、其它光学和非光学数据存储装置。在一些实施例中,各种其它形式的计算机可读介质336可以将指令传输或携带到计算机340和/或至少一个用户331,包括路由器、专用或公共网络,或有线和无线的其它传输设备或信道。在一些实施例中,软件模块338可以被配置为发送和从数据库(例如,从包括数据源337a和可以包括数据库的数据存储装置337b的计算机可读介质336)接收数据,并且数据可以由软件模块338从至少一个其它源接收。在一些实施例中,软件模块338中的至少一个可以被配置在系统内,以经由在至少一个数字显示器上渲染的至少一个图形用户界面将数据输出给至少一个用户331。

在一些实施例中,计算机可读介质336可以经由网络接口335a分布在常规的计算机网络上,其中系统由能够以分布式方式存储和执行的计算机可读代码实施。例如,在一些实施例中,系统210的一个或多个组件可以被耦合以通过局域网(“LAN”)339a和/或互联网耦合网络339b(例如,诸如无线互联网)发送和/或接收数据。在一些其它实施例中,网络339a、339b可以包括广域网(“WAN”)、直接连接(例如,通过通用串行总线端口)或其它形式的计算机可读介质336,或其任意组合。

在一些实施例中,网络339a、339b的组件可以包括任意数量的用户计算机,诸如通过LAN 339a耦合的个人计算机,包括例如台式计算机和/或膝上型计算机,或者任何固定的、一般非移动的互联网设备。例如,一些实施例包括通过LAN 339a耦合的个人计算机340a,其可以被配置用于包括管理员在内的任何类型的用户。其它实施例可以包括通过网络339b耦合的个人计算机。在一些其它实施例中,系统310的一个或多个组件可以被耦合以通过互联网网络(例如,诸如网络339b)发送或接收数据。例如,一些实施例包括至少一个用户331,其无线耦合并且经由输入和输出(“I/O”)337c访问包括至少一个企业应用338的系统的一个或多个软件模块。在一些其它实施例中,系统310可以使至少一个用户331能够通过LAN 339a经由I/O 337c被耦合以访问企业应用338。在一些实施例中,用户331可以包括使用通过互联网339b耦合的台式计算机和/或膝上型计算机或任何固定的、一般非移动的互联网设备耦合到系统310的用户331a。在一些其它实施例中,用户331可以包括耦合到系统310的移动用户331b。在一些实施例中,用户331b可以使用任何移动计算机331c来无线耦合到系统210,包括但不限于个人数字助理和/或蜂窝电话、移动电话或智能电话和/或寻呼机,和/或数字平板电脑和/或固定或移动互联网设备。

根据一些实施例,本文描述的构成系统的一部分的任何操作是有用的机器操作。在一些实施例中,该系统还涉及用于执行这些操作的装置。在一些实施例中,装置可以针对所需目的被专门地构造,诸如专用计算机。当被定义为专用计算机时,在一些实施例中,计算机还可以进行不属于专用目的的一部分的其它处理、程序执行或例程,同时仍然能够针对该专用目的进行操作。在各种实施例中,可以通过由在计算机存储器、高速缓存中存储的或通过网络获得的一个或多个计算机程序选择性地激活或配置的通用计算机来处理操作。当通过网络获得数据时,该数据可以被网络上的其它计算机(例如,在一些实施例中,计算资源的云)处理。

系统的实施例也可以被定义为将数据从一种状态变换成另一种状态的机器。数据可以表示物品,在各种实施例中,该物品可以被表示为电子信号并以电子方式操纵数据。在一些实施例中,可以在显示器上可视地描绘变换后的数据,从而表示由数据的变换产生的物理对象。在一些实施例中,可以将变换后的数据一般地或以使得能够构造或描绘物理和有形对象的格式保存到存储装置中。在一些实施例中,操纵可以由处理器执行。根据一些实施例,处理器将数据从一种事物变换成另一种事物。一些实施例包括可以由可以通过网络连接的一个或多个机器或处理器来处理的方法。在各种实施例中,每个机器可以将数据从一种状态或事物变换成另一种状态或事物,并且还可以处理数据、将数据保存到存储装置、通过网络传输数据、显示结果或将结果传送到另一个机器。如本文所使用的,根据一些实施例,计算机可读存储介质是指物理的或有形的存储装置(与信号相反),并且包括但不限于以用于信息(诸如计算机可读指令、数据结构、程序模块、实例或其它数据)的有形存储的任何方法或技术实现的易失性和非易失性的、可移动和不可移动的存储介质。

虽然可以按特定次序描述方法操作,但是在一些实施例中,其它整理操作可以在操作之间执行,或者操作可以被调整以使它们在稍微不同的时间发生,或者可以分布在允许处理操作在与处理相关联的各种间隔处发生的系统中,只要以期望的方式执行覆盖操作的处理即可。

本领域技术人员将认识到的是,虽然以上已经结合实施例、附图和示例描述了该系统,但是本发明不必局限于此:许多其它实施例、示例、用途、修改和相对于给出的实施例的偏离都旨在被本文的描述所涵盖。本发明能够具有其它实施例并且能够以各种方式被实践或执行。

另外,应该理解的是,本文所使用的措词和术语是出于描述的目的,而不应当被认为是限制性的。本文中“包括”、“包含”或“具有”及其变体的使用意在涵盖其后列出的项目及其等同物以及附加项目。除非另外指定或限制,否则术语“安装”、“连接”、“支撑”和“耦合”及其变化被广泛使用,并且包括直接和间接安装、连接、支撑和耦合。另外,“连接”和“耦合”不限于物理或机械连接或耦合,并且包括促进数据的传输的任何无线连接。

根据一些实施例,词语“计算机”涵盖一个或多个处理器、计算机可读介质(例如,计算机存储器)、显示器、扬声器、有线和无线通信及数据传输组件、客户端、服务器、API、数据库以及相关的硬件和软件中的任何一种或组合。在一些实施例中,“计算机”也可以指台式计算机、智能电话、PDA、平板电脑、收音机等,它们中的任何一个都可以包括上述软件和硬件中的一个或多个。

在一些实施例中,本地云计算机可以包括例如Amazon Web Services(AWS),但是广泛地适用于任何其它云平台,诸如Microsoft Azure。

AVEVA、AVEVA徽标和AVEVA产品名称是AVEVA Group plc或其在英国和其它国家的子公司的商标或注册商标。Windows和Azure是Microsoft公司在美国和其它国家的注册商标。Amazon和Amazon Web Services是Amazon公司的注册商标。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号