CN117063473A - 3d对象的流传输方法、装置和程序 - Google Patents

3d对象的流传输方法、装置和程序 Download PDF

Info

Publication number
CN117063473A
CN117063473A CN202280019625.5A CN202280019625A CN117063473A CN 117063473 A CN117063473 A CN 117063473A CN 202280019625 A CN202280019625 A CN 202280019625A CN 117063473 A CN117063473 A CN 117063473A
Authority
CN
China
Prior art keywords
information
client
server
data
alpha
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202280019625.5A
Other languages
English (en)
Inventor
路易斯·奥斯卡·拉米雷斯·索洛扎诺
亚历山大·米哈伊洛维奇·博里索夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mawari Co
Original Assignee
Mawari Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mawari Co filed Critical Mawari Co
Publication of CN117063473A publication Critical patent/CN117063473A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/503Blending, e.g. for anti-aliasing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/56Extraction of image or video features relating to colour
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23412Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs for generating or manipulating the scene composition of objects, e.g. MPEG-4 objects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44012Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving rendering scenes according to scene graphs, e.g. MPEG-4 scene graphs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/08Bandwidth reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Hardware Design (AREA)
  • Architecture (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Processing Or Creating Images (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Generation (AREA)

Abstract

本公开的方法是从服务器向客户端发送基于所述客户端的位置信息而生成的3D对象的方法,其包括以下步骤:从所述服务器上的所述3D对象提取颜色信息、阿尔法信息及几何图形信息;简化所述几何图形信息;以及编码包含所述颜色信息、所述阿尔法信息和所述简化后的几何图形信息的流并从所述服务器向所述客户端发送。

Description

3D对象的流传输方法、装置和程序
技术领域
本公开涉及关于3D(三维)对象的流传输方法、装置和程序。
背景技术
以往,已存在将3D图像从服务器向客户端发送并进行显示这样的技术,在该情形下,例如使用的是在服务器侧将3D图像转换成2D图像这样的手法(专利文献1)。
现有技术文献
专利文献
专利文献1:美国专利申请公开2010/0134494号说明书
发明内容
发明要解决的问题
要解决的以往的问题在于,在3D图像的传输中,在维持图像质量的同时降低数据传输中使用的带宽。
解决问题的方案
本公开的一个实施方式的方法是从服务器向客户端发送基于所述客户端的位置信息而生成的3D对象的方法,其包括以下步骤:从所述服务器上的所述3D对象提取颜色信息、阿尔法信息及几何图形信息;简化所述几何图形信息;以及编码包含所述颜色信息、所述阿尔法信息和所述简化后的几何图形信息的流并从所述服务器向所述客户端发送。
本公开的一个实施方式的方法是在客户端上重现服务器上的基于所述客户端的位置信息而生成的3D对象的方法,其包括以下步骤:从所述服务器接收包含所述3D对象的颜色信息、阿尔法信息和几何图形信息的编码后的流;解码所述流并从中提取所述颜色信息、所述阿尔法信息和所述几何图形信息;基于所述几何图形信息重现所述3D对象的形状;以及通过在所述重现后的3D对象的形状上投影将所述颜色信息和所述阿尔法信息组合后的信息来重建所述3D对象。
本公开的一个实施方式的服务器是包含一个以上的处理器和存储器的服务器,其中,所述一个以上的处理器通过执行所述存储器中存储的指令,进行以下处理:从所述服务器上的基于客户端的位置信息而生成的3D对象提取阿尔法信息和几何图形信息;简化所述几何图形信息;以及编码包含所述阿尔法信息和所述简化后的几何图形信息的流并从所述服务器向客户端发送。
本公开的一个实施方式的客户端是包含一个以上的处理器和存储器的客户端,其中,所述一个以上的处理器通过执行所述存储器中存储的指令,进行以下处理:从服务器接收包含基于所述客户端的位置信息而生成的3D对象的颜色信息、阿尔法信息和几何图形信息的编码后的流;解码所述流,并从中提取所述颜色信息、所述阿尔法信息和所述几何图形信息;基于所述几何图形信息重现所述3D对象的形状;以及通过在所述重现后的3D对象的形状上投影将所述颜色信息和所述阿尔法信息组合后的信息来重建所述3D对象。
本公开的一个实施方式的程序包含用于通过处理器执行上述任一方法的指令。
应予说明,这些总括性的或具体的方式可由系统、装置、方法、集成电路、电脑程序或记录介质实现,也可由系统、装置、方法、集成电路、电脑程序及记录介质的任意的组合实现。
发明效果
为了在客户端上显示3D图像,代替发送视频数据或像素而从服务器向客户端发送本公开的容器流,由此,每单位时间从服务器向客户端发送的数据量减少,从而客户端上的3D图像的显示质量及响应性提高。
本公开的一个实施例的进一步的优点和效果将通过说明书和附图予以阐明。这些优点和/或效果分别由若干个实施方式、以及说明书及附图所记载的特征提供,但未必需要为了获得一个或一个以上的相同的特征而全部提供。
本说明书中,为了便于说明,以服务器与客户端之间的3D图像(包括动态图像和/或静态图像)传输为例进行了说明,但本公开的应用并不限定于客户端服务器系统,也可以用于从一台计算机向其他计算机的传输,其他计算机可为单个,也可为多个。
附图说明
图1是本公开的服务器和客户端的功能框图。
图2是说明图1中说明的服务器与客户端之间的数据的流程中服务器侧的处理的流程图。
图3是说明图1中说明的服务器与客户端之间的数据的流程中客户端侧的数据处理的流程图。
图4是说明图1中说明的服务器与客户端之间的数据的流程中客户端侧的命令处理的流程图。
图5是记载了在应用了本公开的客户端服务器系统中用于在客户端侧显示3D场景或3D对象的数据的流程的图。
图6是表示本公开的几何图形信息的编码和解码过程的图。
图7是表示本公开的颜色信息/纹理信息的编码和解码过程的图。
图8是表示本公开的几何图形、颜色数据包、元数据和命令之间的数据同步的图。
图9是表示本公开的贴花方法的图。
图10是表示本公开的客户端的硬件配置例的示意图。
图11是表示本公开的服务器的硬件配置例的示意图。
图12是表示本公开的信息处理系统的配置的一例的示意图。
图13A是表示本公开的服务器侧的处理流程的示意图。
图13B是表示本公开的服务器侧的处理流程的示意图。
图14是表示本公开的客户端侧的处理流程的示意图。
图15是表示本公开中使用的相机的布置的图。
图16是表示本公开中使用的ARGB系统中的像素配置的图。
图17是表示客户端移动时的位置信息的变化的图。
图18是图像视图中的运动预测及误差检测的说明图。
具体实施方式
<1.3D流传输/系统/架构>
图1是本公开的服务器和客户端的功能框图。3D流传输服务器(3D streamingserver)100包括三维(3D)流传输服务器内的功能配置,3D流传输客户端(3D streamingclient)150包括3D流传输客户端内的功能配置。网络120表示服务器100与客户端150之间的有线或无线网络。
作为本公开的对象的一个系统在服务器侧生成3D图像,在客户端侧基于从服务器接收到的3D图像的特征量重建并显示3D图像。作为客户端设备,智能手机、移动电话、平板电脑、笔记本电脑、智能眼镜、头戴式显示器、头戴式耳机等具有显示和通信功能的所有设备均为对象。在此,特征量包括3D图像的颜色(color)信息、阿尔法(alpha)信息或几何图形(geometry)信息。
<1.23D流传输服务器侧的处理>
图1的上半部分是说明3D流传输服务器100中的处理的功能框图。网络数据包接收机构108经由有线或无线网络120从客户端150接收包含指令和/或数据的数据包。网络数据包接收机构108从数据包中提取从客户端接收到的指令和/或数据,将提取出的数据发送到处理来自客户端的指令和/或数据的接收数据处理机构101。接收了提取到的来自客户端的指令和/或数据的接收数据处理机构101从接收到的数据中进一步提取所需的指令和/或数据,将它们发送到3D场景数据生成机构102。接着,3D场景数据生成机构102按照从客户端150发送来的请求,对服务器具有的与来自该客户端的请求对应的3D场景(或3D对象)的数据进行加工/修正等。接着,从3D场景数据生成机构102接收到指令和/或数据的提取机构103从按照来自客户端的指令而更新的3D场景数据中提取所需的数据,将它们向3D流(3Dstream)转换/编码机构104发送。3D流转换/编码机构104将从提取机构103接收的数据转换成3D流并编码,由此生成3D流105。3D流105接着被发送到网络数据包构成机构106,由网络数据包构成机构106生成网络数据包。网络数据包被发送给网络数据包传输机构107。网络数据包传输机构107经由有线或无线网络120将接收到的网络数据包向一个以上的客户端150发送。
<1.33D流传输客户端侧的处理>
图1的下半部分是说明3D流传输客户端150中的处理的功能框图。经由有线或无线网络120从服务器100接收了数据包的网络数据包接收机构152从数据包提取编码后的3D流,将它向3D流解码机构154发送。接收了编码3D流的3D流解码机构154将3D流解码,将解码后的3D流向3D场景重建机构155发送。接收了解码后的3D流的3D场景重建机构155由从服务器100接收并解码后的3D流重建3D场景(或3D对象),将重建后的3D场景向显示机构156发送。显示机构156显示重建后的3D场景,从而呈现给用户。
另一方面,来自3D流传输客户端150的3D显示(更新)请求从应用程序数据输出机构153被发送给网络数据包传输机构151。作为应用程序数据输出机构153中生成的3D显示(更新)请求数据,例如可举出:用户输入或相机/设备的位置变更、或者请求更新显示等的命令。接收了3D显示请求的网络数据包传输机构151经由有线或无线网络120将进行了编码和数据包化等所需处理的3D显示(更新)请求发送至3D流传输服务器100。
上述的服务器100中包含的网络数据包构成机构106和网络数据包传输机构107、以及上述的客户端150中包含的网络数据包接收机构152和网络数据包传输机构151例如可以是基于现有的开源软件的相应发送接收模块实施所需的改进而成的,也可以是从头开始制作的专用的机构。
图2是说明图1中说明的服务器与客户端之间的数据的流程中服务器侧的处理的流程图。在开始(901)启动处理。首先,图1中说明的网络数据包接收机构108从客户端接收包含3D场景改写命令等的数据包(902)。接着,图1中说明的接收数据处理机构101处理接收到的命令等并输出其结果(903)。接着,图1中说明的3D场景数据生成机构102根据接收到的命令等,生成3D场景数据(904)。接着,图1的提取机构103提取3D场景的特征量(905)。在此,特征量是指后述的容器流中包含的几何图形、颜色、元数据、声音、命令等的数据。接着,图1的3D流转换/编码机构104将包含3D特征量的数据转换成3D流并编码(906)。接着,图1的网络数据包构成机构106以3D流构成网络数据包(907)。接着,图1的网络数据包传输机构107发送网络数据包(908)。这样,服务器侧的一系列数据发送处理就结束了(909)。
图2中,作为一例,记载了依次执行步骤902至903的处理和步骤904至908的处理的情况,但步骤902至903的处理和步骤904至908的处理也可以并列执行,还可以从步骤904的处理开始执行。在此,可以记述从客户端接收的位置信息,并将其用于更新服务器上的网格的几何图形信息。而且,可以在该阶段进行对下一帧的预测和运动模型的更新。可以从客户端接收运动信息/位置信息。可以使用姿态信息进行姿态的履历的积累,以预测下一帧的顶点数据的动向。然后,可以将该更新了的姿态与从客户端提供的数据集进行比较,以验证预测,并根据需要修改估计出的运动模型。
图3是说明图1中说明的服务器与客户端之间的数据的流程中客户端侧的数据处理的流程图。在开始(1001)启动处理。首先,图1中说明的网络数据包接收机构152接收从服务器100发送来的数据包(1002)。接着,图1中说明的3D流解码机构154将接收到的数据包解码(1003),并提取3D场景的特征量。接着,图1中说明的3D场景重建机构155使用3D场景的特征量等,在客户端上重建3D场景(1004),生成3D场景数据(1005)。接着,图1中说明的显示机构156显示重建后的3D场景,从而呈现给用户(1006)。这样,客户端侧的数据处理就结束了(1007)。
图3中,作为一例,记载了依次执行步骤1002至1004的处理和步骤1005至1006的处理的情况,但步骤1002至1004的处理和步骤1005至1006的处理也可以并列执行,还可以从步骤1005的处理开始执行。
图4是说明图1中说明的服务器与客户端之间的数据的流程中客户端侧的命令处理的流程图。在开始(1101)启动处理。图1中说明的应用程序数据输出机构153输出来自图像处理应用程序等的3D场景改写命令等(1102)。图1中说明的网络数据包传输机构151从应用程序数据输出机构153接收命令等,转换成数据包,并将转换而成的数据包传输给有线或无线网络120(1103)。这样,客户端侧的数据处理就结束了(1104)。
图4中,作为一例,记载了依次执行步骤1102的处理和步骤1103的处理的情况,但步骤1102的处理和步骤1103的处理也可以并列执行。
<2.本公开的3D流格式>
本公开的3D流的格式的主要特征如下。本公开的意义在于,这些是在不降低客户端侧显示的3D图像质量的情况下使用有限的网络带宽实现的。
(1)在服务器侧生成3D流。
在服务器侧生成3D流时,使用UE4或Unity等可利用的引擎。在此,UE是指虚幻引擎(Unreal Engine),其为Epic Games公司开发的游戏引擎,UR5于2020年5月发布。
(2)支持经由网络的高效传输。
因此,与以往的方法相比,从服务器转送给客户端的数据量少。为了实现这一点,本公开中使用容器流。
(3)可以在各种设备上运行。
作为对象的装置例如是可以使用Unity(Android、Windows、iOS)、WebGL、UE4或5(Android、iOS、Windows)的装置。
(4)相对于现代的AR(增强现实)设备,比较轻量。
即,与以往的方法相比,客户端侧的处理负荷小。这是因为使用了本公开的容器流。
(5)支持交互(即双向通信)。
即,流传输(streaming)是交互式的。这是因为可以在客户端与服务器相互之间进行命令的发送、接收。
为了实现上述的特征,本公开开发了独特的容器流作为在服务器与客户端之间传输的3D流。该独特的容器流包含如下的几何图形、颜色、元数据、声音和命令中的几个。流还可以进一步包含服务器和/或客户端的位置信息。
(1)几何图形:是关于如下外形的简化3D数据,该外形是服务器上的3D场景的被流传输的对象的外形。几何图形的数据例如是为了表示对象的形状而使用的多边形的顶点的阵列。
(2)颜色:是用处于特定位置的相机拍摄的对象的颜色数据。
(3)元数据:是说明3D场景、环境、个别的对象、流中的数据等的数据。
(4)声音:是在服务器侧或客户端侧的3D场景产生的声音(sound)数据。声音可以在服务器与客户端相互之间双向通信。
(5)命令(command):命令是包括服务器侧或客户端侧的3D场景、系统事件、状态消息、相机及用户的输入以及客户端的应用程序事件等的指令等。命令可以在服务器与客户端相互之间双向通信。
在以往的系统中,发送视频数据本身或各帧的像素数据而非本公开的上述的容器流。在此,容器流是指在服务器与客户端之间转送的一组数据,也称为数据流。容器流作为数据包流而经由网络转送。
以往以来使用的这些视频数据本身或各帧的像素数据存在如下问题:即使被压缩,每单位时间转送的容量也非常大,如果服务器与客户端之间的网络的带宽不大,则传输慢,产生迟延时间,无法在客户端侧顺利地进行3D图像的播放。另一方面,本公开的系统中,因为与以往的系统相比,服务器与客户端之间的转送所使用的数据容器的数据大小足够小,因此不必太在意服务器与客户端之间的网络的带宽就能够最低限度地确保单位时间的帧数,因而可以在客户端侧流畅地进行3D图像的播放。
图5是记载了在应用了本公开的客户端服务器系统中用于在客户端侧显示3D场景或3D对象的数据的流程的图。作为客户端侧,记载了智能手机等终端装置1221,终端装置1221与智能眼镜1210用无线LAN或蓝牙(注册商标)等经由无线通信或有线通信1222连接。智能眼镜1210表示用户从跟前侧看的图。人1211-1和光标1212-1被投影到客户端的智能眼镜的左眼,人1211-2和光标1212-2被投影到智能眼镜的右眼。右眼和左眼的像重叠从而智能眼镜的用户看到立体的人1214处于稍微远离的地方。客户端侧的智能眼镜1210的用户能够使用光标1212或其他输入单元,对客户端侧的智能眼镜1210中显示的人1214进行移动、旋转、缩小/放大、颜色(color)/纹理的变更或声音等操作。如果进行此类针对客户端上的对象(或场景)的操作,则命令(或声音)1213等经由网络120从客户端发送至服务器。
经由网络120从客户端接收了命令等的服务器针对服务器内的应用程序内的虚拟画面1201上的对应的人1202的图像,根据接收到的命令等进行操作。在此,服务器通常是无需具有显示装置的,其对虚拟空间内的虚拟图像进行处理。接着,服务器在进行该命令等的操作后生成3D场景数据(或3D对象数据),将从中提取出的特征量作为容器流1203经由网络120向客户端发送。接收了从服务器发送的容器流1203的客户端根据容器流1203中包含的几何图形、颜色/纹理、元数据、声音和命令,改写客户端的虚拟画面中的对应的人1214的数据并进行重新显示等。该例子中,对象是人,但对象也可以是建筑物、汽车、动物或静物等人以外的对象,场景包含一个以上的对象。
下面,参照图6~8,对上述的容器流中包含的“几何图形”数据和“颜色”数据是如何被处理的进行说明。
<3.几何图形的编码和解码过程>
图6是表示本公开的几何图形数据的编码和解码过程的图。图6中,201~205的处理由服务器进行,207~211的处理由客户端进行。
图6和后述的图7和8中记载的各处理通过CPU和/或GPU等处理器等,使用相关的程序来执行。作为本公开的对象的系统可以仅具备CPU或GPU中的任一种,但下面为了方便说明,将CPU和GPU合起来记作CPU。
<3.1服务器侧的处理>
在此假设存在具有对象的场景。各对象用一个以上的深度相机(depth camera)拍摄。在此,深度相机是指内置有获取纵深信息的深度(depth)传感器的相机。如果使用深度相机,则能够在一般相机所获取的二维(2D)图像上补充纵深信息而获取3D的立体信息。在此,为了获取场景的完整的几何图形数据,例如使用6台深度相机。关于拍摄时相机的配置将在后文中进行说明。
根据在服务器侧拍摄的图像生成流化3D对象,输出相机的深度(depth)信息(201)。接着,处理相机的深度信息而生成点云,输出点的阵列(202)。该点云被转换成表示对象的实际几何图形的三角形(三角形的顶点的阵列),由服务器生成三角形的云(群组)(203)。在此,作为一例,使用了三角形作为表示几何图形的图形,但也可以使用三角形以外的多角形。
然后,使用三角形的云的各顶点的阵列的数据,将几何图形数据添加到流中并压缩(204)。
服务器经由网络120发送包含压缩后的几何图形数据的容器流(205)。
<3.2客户端侧的处理>
客户端经由网络120从服务器接收从服务器发送的压缩数据即包含几何图形数据的容器流(207)。客户端对接收到的压缩后的数据进行解压缩,提取顶点的阵列(208)。
客户端将解压缩后的数据的顶点的阵列放入受到管理的几何图形数据队列,使在经由网络转送的过程中变乱的帧序列的顺序正确排列(209)。客户端基于正确排列的帧序列来重建场景的对象(210)。客户端在显示器上显示重建后的客户端侧的3D对象(211)。
几何图形数据被保存于受到管理的几何图形数据队列,与流中接收到的其他数据同步(209)。关于该同步,将在后文中使用图8进行说明。
应用了本公开的客户端基于接收到的顶点的阵列来生成网格。换言之,只有顶点的阵列作为几何图形数据从服务器被发送至客户端,通常,顶点的阵列的每单位时间的数据量与视频数据和帧数据相比要少的多。另一方面,以往的其他选项是将大量的三角形应用于规定的网格的数据,而该方法需要在客户端侧进行大量的处理,存在问题。
因为应用了本公开的服务器仅将场景(通常包含一个以上的对象)中需要变更的部分(例如,特定的对象)的数据向客户端发送而不将场景中没有变更的部分的数据向客户端发送,因此在这一点上也可以削减场景变更时从服务器向客户端的传输数据的量。
应用本公开的系统和方法是以从服务器向客户端发送多边形网格的顶点的阵列为前提的。另外,作为该多边形,以三角形的多边形为前提进行了说明,但多边形的形状并不限定于三角形,也可以为四角形或其他形状。
<4.颜色/纹理的编码和解码处理>
图7是表示本公开的颜色信息/纹理信息的编码和解码过程的图。图7中,301~303的处理由服务器进行,305~308的处理由客户端进行。
<4.1服务器侧的颜色处理>
假设存在具有对象的场景。服务器使用自相机的视图,提取场景的颜色数据、阿尔法数据和深度数据(301)。在此,阿尔法数据(或阿尔法值)是表示颜色信息之外的按每个像素(pixel)设置的添加信息的数值。阿尔法数据尤其经常被用作透明度。此外,阿尔法数据的集合也称为阿尔法通道。
接着,服务器将颜色数据、阿尔法数据和深度数据分别添加到流中并进行压缩(302-1、302-2、302-3)。服务器将压缩后的相机数据作为容器流的一部分经由网络120向客户端发送(303)。
<4.2客户端侧的颜色处理>
客户端经由网络120接收包含压缩后的相机数据流的容器流(305)。客户端与准备帧的集合时同样地,解压缩接收到的相机数据(306)。接着,客户端根据解压缩后的相机数据,分别进行视频流的颜色数据、阿尔法数据和深度数据的处理(306-1、306-2、306-3)。在此,这些原始的特征量数据是为了用于重建后的3D场景而被准备并被加入队列的。颜色数据是为了包裹(wrap)具有纹理的重建后的3D场景的网格而使用的。
此外,具有深度数据和阿尔法数据的补充的详细信息被使用。接着,客户端使视频流的颜色数据、阿尔法数据和深度数据同步(309)。客户端将同步后的颜色数据、阿尔法数据和深度数据保存于队列,并管理颜色数据队列(307)。接着,客户端向几何图形投射颜色/纹理信息(308)。
图8是表示本公开的几何图形数据包、颜色数据包、元数据和命令之间的数据同步的图。
为了能够在客户端侧利用数据,需要以一边进行客户端侧接收到的3D图像的播放一边提供流中的数据的正确内容的方法来管理数据。经由网络的数据包并不总是以可靠性高的方法转送,有可能发生数据包的延迟和/或数据包顺序的变更。因此,需要考虑在客户端接收数据的容器流的过程中,客户端的系统如何管理数据的同步。本公开的用于同步几何图形、颜色、元数据和命令的基本方案如下。该方案也可以是针对如下数据格式的标准方案,该数据格式是为用于网络应用程序或用于流而创建的数据格式。
参照图8可知,从服务器侧发送的3D流410包含几何图形数据包、颜色数据包、元数据和命令。在服务器上创建3D流的时间点,3D流中包含的几何图形数据包、颜色数据包、元数据和命令如帧序列410所示那样是彼此同步的。
在该帧序列410中,时间从左向右流动。然而,从服务器发送的帧序列410在经由网络的过程中有时无法彼此同步或发生随机的延迟,当其在客户端被接收到时,非同步或随机的延迟便会呈现在客户端侧接收到的3D流401上。即,可知,与在客户端创建的情况下的3D流410相比较,在客户端接收到的3D流401内,在有些地方,几何图形数据包、颜色数据包、元数据和命令在序列内的顺序或位置不同。
客户端接收到的3D流401由数据包队列管理器402以恢复至原始同步的方式进行处理而生成帧序列403。在通过数据包队列管理器402恢复了同步并且消除了互不相同的延迟的帧序列403中,几何图形数据包1、2、3成为正确的顺序/布置,颜色数据包1、2、3、4、5成为正确的顺序/布置,元数据1、2、3、4、5成为正确的顺序/布置,命令1、2成为正确的顺序/布置。即,在客户端内整队后的帧序列403与在服务器内创建的帧序列410为相同的排列。
接着,使用针对同步后的当前的帧的数据来重建场景(404)。接着,渲染重建后的帧(405),客户端在显示装置上显示场景(406)。
图9表示序列更新流程500的例子。图9中,时间从左向右前进。参照图9可知,首先,几何图形被更新(501)。在此,颜色/纹理与其同步(即横向的位置一致地)被更新(505)。接着,颜色/纹理被更新(506),但几何图形不被更新(例如,颜色变化了,但没有运动的情形)。接着,几何图形被更新(502),颜色/纹理与其同步被更新(507)。接着,颜色/纹理被更新(508),但几何图形不被更新。接着,几何图形被更新(503),颜色/纹理与其同步被更新(509)。
从图9可知,无需在颜色/纹理每次被更新时,都使几何图形被更新,相反,也无需在几何图形每次被更新时,都使颜色/纹理被更新。几何图形的更新与颜色/纹理的更新也可以同步。此外,进行颜色/纹理的更新时,无需颜色和纹理都被更新,也可以是颜色和纹理中任一种的更新。该图中,记载了频度为相对于颜色/纹理更新两次,几何图形更新一次的情况,但其为一例,也可以为其他频度。
图10是表示本公开的客户端的硬件配置例的示意图。客户端150可以是智能手机或移动电话等终端。客户端150通常具备CPU/GPU 601、显示部602、输入输出部603、存储器604、网络接口605和存储装置606,这些的配置要素通过总线607可相互通信地连接。
CPU/GPU601可以是CPU单个或GPU单个,也可以由一个或多个通过CPU与GPU协同动作而运行的部件构成。显示部602是通常用于用颜色显示图像的装置,其显示本公开的3D图像并呈现给用户。参照图5可知,如上所述,客户端可以是客户端终端与智能眼镜的组合,该情形下,智能眼镜具有显示部602的功能。
输入输出部603是用于与用户等外部进行交互的装置,可以与位于客户端150的内部或外部的键盘、扬声器、按钮、触摸面板连接。存储器604是用于存储运行CPU/GPU601所需的软件和数据的易失性存储器。网络接口605供客户端150与外部的网络连接,具有用于通信的功能。存储装置606是用于存储客户端150所需的软件、固件、数据等的非易失性存储器。
图11是表示本公开的服务器的硬件配置例的示意图。服务器100通常具备比客户端更高功能的CPU,通信速度也快,具备更大容量的存储装置。服务器100通常具备CPU/GPU701、输入输出部703、存储器704、网络接口705和存储装置706,这些配置要素通过总线707可相互通信地连接。
CPU/GPU701可以是CPU单个或GPU单个,也可以由一个或多个通过CPU与GPU协同动作而运行的部件构成。图10中记载的客户端装置具备显示部602,但在是服务器的情况下,显示部非必需。输入输出部703是用于与用户等进行交互的装置,可以与键盘、扬声器、按钮、触摸面板连接。存储器704是用于存储运行CPU/GPU701所需的软件和数据的易失性存储器。网络接口705具有供客户端与外部的网络连接而用于通信的功能。存储装置706是用于存储客户端所需的软件、固件、数据等的非易失性存储装置。
图12是表示本公开的信息处理系统的配置的一例的示意图。服务器100、客户端150-1和客户端150-2通过网络120可相互通信地连接。
服务器100例如是服务器等计算机装置,根据来自客户端150-1和客户端150-2的图像显示请求等进行运行,生成并发送与用于在客户端150-1和客户端150-2显示的图像相关的信息。该例子中,记载了两台客户端,但只要为一台以上即可,几台都可以。
网络120可以是有线或无线的LAN(局域网(Local Area Network)),客户端150-1和客户端150-2可以是智能手机、移动电话、平板式(Slate)PC或游戏终端等。
图13A是表示本公开的服务器侧的处理流程的示意图。使用RGB相机,从位于服务器侧的场景1301的对象1302中提取颜色信息(1303)(1310)。使用RGB相机,从位于服务器侧的场景1301的对象1302中提取阿尔法信息(1304)(1320)。使用深度相机,从位于服务器侧的场景1301的对象1320中提取点云(1305)的信息(1330)。接着,简化点云(1305)的信息,获得几何图形信息(1306)(1331)。
接着,获得的颜色信息(1303)、阿尔法信息(1304)和几何图形信息(1306)被处理成流数据格式(1307),作为3D流的容器流,经由网络向客户端发送(1340)。
图13B是表示本公开的服务器侧的处理流程的示意图。图13B的图中的1305和1306示出了降低表示低频分量的网格的空间频率的概念。粗网格1306与能够表示其表面的细节的高频分量信息1308、1309相关联。为了避免使用深度相机,可以使用z缓冲区来选择要渲染的表面。由于要渲染的表面实际上处于无限远处,z缓冲区也可用于提取阿尔法(透明)通道。高分辨率网格(或点云)可以分解成低分辨率网格和高频分量。应与说明,通过从高分辨率网格1305中去除高频分量,可以得到平滑的低分辨率网格1306。
图14是表示本公开的客户端侧的处理流程的示意图。图14与本公开的贴花方法相关。在此,贴花是指在对象上贴付纹理或材料的处理。在此,纹理是指为了表现3D(三维)CG模型的质感、图案、凹凸等而使用的数据等。此外,材料是指对象的材质等,在3DCG中例如是指物体的光学特性、材质感。
作为处理器的处理,本公开的贴花方法比以往的UV映射的处理负荷更轻,对其理由说明如下。目前,在网格设定颜色有几种方法。在此,UV是指在3DCG模型映射纹理时用于指定贴付的位置或方向、大小等而使用的坐标系。在二维的正交坐标系中,横向的轴为U,纵向的轴为V。将使用了UV坐标系的纹理映射称作UV映射。
<5.1在各顶点设定颜色的方法(以往的方法1)>
对作为对象的云内的所有三角形,将颜色的值保存在顶点。然而,顶点密度低时,会成为分辨率低的纹理,用户体验下降。相反,顶点密度高时,与向画面上的所有像素发送颜色相同,从服务器向客户端转送的数据量增加。另一方面,可将该方法用作添加/基本着色的步骤。
<5.2在网格的UV设定正确的纹理的方法(以往的方法2)>
为了用UV映射设定正确的纹理,需要生成三角形的云的纹理。然后,需要生成当前的网格的UV映射并添加到流中。模型的原始纹理中不包含场景中的雷等信息,为了实现高质量且详细的3D模型,需要大量的纹理,因此实质上无法使用。不采用该方法的另一个理由是,使用由渲染后的3D模型创建的UV运行的原始纹理是处于服务器上的。一般地,使用三角形的云,从不同的视图投影着色纹理,保存并发送接收到的UV纹理。进一步地,由于需要以与UV纹理相同的频度更新网格的几何图形或拓扑,因此在服务器与客户端之间发送接收的数据量增加。
<5.3在网格上投影纹理(贴花)的方法(本公开的方法)>
从流的特定位置起的颜色/纹理与关于其位置的元信息一起从服务器向客户端发送。客户端将该纹理从指定的位置投影到网格上。该情形下,不需要UV映射。该方法中,在接收流传输的一侧(即客户端侧)不加载UV生成。基于该贴花的方法能够提供优化数据流程的空间(例如,几何图形和颜色的更新能够以不同的频度连续进行)。
图14中记载的客户端侧的处理基本上进行与图13中记载的服务器侧的处理相反的处理。首先,客户端经由网络接收服务器发送的3D流即容器流。接着,从接收到的3D流中解码数据,为了来重建对象而将颜色信息、阿尔法信息、几何图形信息复原(1410)。
接着,首先,颜色信息1431和阿尔法信息1432被结合,其结果生成纹理数据。接着,将该纹理数据应用于几何图形数据1433(1420)。通过这样做,原来在服务器上的对象在客户端上被重建(1440)。服务器侧的场景中有多个对象时,按每个对象应用此类处理。
图15是表示本公开中使用的相机的布置的图。为了获取作为处理对象的场景1510中的对象的几何图形信息,使用1台以上的深度相机。深度相机针对每个帧、获取深度图,这些深度图接着被处理成点云。接着,为了简化,点云被分割成规定的三角形的网格。通过变更深度相机的分辨率,可以控制分割成三角形的网格的详细度(细小的程度、粒度)。例如,在设想的标准设定中,使用256×256分辨率的6台深度相机(1521~1526)。然而,所需的深度相机的台数和各相机的分辨率还可以进一步优化、降低,对应于深度相机的台数及其分辨率,性能即图像质量和传输数据量发生变化。
图15中,作为一例,记载了布置了6台深度相机(1521~1526)与1台普通相机(1530)的配置。普通相机(即RGB相机)(1530)是为了获取作为处理对象的场景1510中的对象的颜色信息和阿尔法信息而使用的。
作为替代方案,还有一种不使用深度相机而仅使用普通的RGB相机的方法。该情形下,根据由RGB相机获取的图像估计对象的位置,创建几何图形信息。进一步地,还有一种绕过虚拟相机的概念而直接处理网格的方法。即,如下的方法:绕过数据捕获步骤、点云处理和曲面细分,直接使用曲面细分后的数据,利用图形引擎固有的着色器来管理几何图形信息。
图16是表示本公开中使用的ARGB系统中的像素配置的图。ARGB系统是在以往的RGB(红、绿、蓝)的颜色信息中添加了表示透明度的阿尔法信息(A)的系统。在图16所示的例子中,阿尔法、蓝、绿、红分别以8比特(即256阶)表示,即在整个ARGB中成为32比特的配置。图16的1601表示各颜色或阿尔法的比特数,1602表示各个颜色或阿尔法,1603表示整体为32比特的配置。该例子中,对各颜色和阿尔法为8比特配置且整体为32比特的ARGB系统进行了说明,但这些比特数可根据所期望的图像质量和传输数据量进行变更。
阿尔法信息可作为针对彩色图像的遮罩/辅助层来使用。由于当前的硬件编码器的制约,针对具有阿尔法信息的颜色信息进行视频流编码耗费时间。此外,针对视频流的颜色和阿尔法的软件编码器不能实时编码,会产生延迟,无法实现本公开的目的,因此目前不能成为本公开的替代方案。
<6.1本公开的3D流/场景的几何图形重建的优点>
使用了本公开的方法的3D流/场景的几何图形重建的优点如下。本公开的方法通过使用“三角形的云(cloud oftriangles)”重建场景,在客户端侧重建各场景。该革新性想法的重要之处是作好了在客户端侧使用大量三角形的准备。该情形下,三角形的云中包含的三角形的数量可以为数十万个。
客户端一旦从流中获取信息,就立即作好为创建3D场景的形状而将各三角形布置在适当位置的准备。本公开的方法中,从服务器至客户端仅转送比以往更少的数据,因此该方法的优点是能够削减处理所需的电力和时间。并不是针对每个帧来生成网格这样的以往的方法,而是变更现有的几何图形的位置。然而,通过变更现有的几何图形的位置,能够变更场景内曾经生成的三角形的云的位置。因此,几何图形数据提供各三角形的坐标,对象的该位置的变更是动态的。
<6.2本公开的3D流传输的优点>
本公开的3D流传输的优点是即使在6个自由度(DoF:Degree of Freedom)下网络的延迟也更少。3D流传输格式的优点之一是在客户端侧也有3D场景。在混合现实(MR)中导航或在图像内环顾时,重要的部分是3D内容如何与现实世界连接,并且如何“在其中感觉到实际的位置”。换言之,当用户在几个显示的对象周围走动时,在没有意识到设备的位置更新延迟的情况下,人脑会有该对象确实在其位置的错觉。
目前,为了让用户认为3D内容是“真实存在”的,客户端侧的设备以70~90FPS(每秒帧数)为目标,更新显示器上的3D内容。当前尚不可能以12ms以下的等待时间在远程服务器上提供帧更新的完整周期。实际上,AR设备的传感器提供1,000FPS以上的信息。而且,在现代的设备上,在客户端侧同步3D内容已经成为可能,因此用本公开的方法能够在客户端侧同步3D内容。因此,重建3D场景后,在客户端侧处理增强内容的位置信息是客户端侧的工作,如果存在不影响现实感的合理的网络上的问题(例如传输延迟),在客户端侧能够解决该问题。
图17是表示客户端移动时的位置信息的变化的图。该图说明了客户端移动时的估计位置和实际位置之间的校正。服务器接收来自客户端设备的运动/位置信息。客户端的运动如图17所示。客户端的运动可以作为目标的反向运动来表达,因此可以对目标的特征的位置进行估计(参照图17和后述的图18)。可以通过使用该位置信息进行位置的履历的积累,来预测下一帧的顶点数据的动向。将该更新后的位置与从客户端提供的下一个数据集进行比较,以验证预测,并根据需要修改估计出的运动模型。可以看出,在图17中,观察者(客户端)位置的变化会导致检测出的顶点位置的变化。在点X看到的线PP’若在位置X’看则会被映射为线aa’,若在位置X”看则会被映射为线bb’。若将时刻t时的特征点的位置设为P,则该轨迹P-a-b定义了履历轨迹P(t),并定义了顶点的运动的模型。通过使用该模型估计P(t+1),可以预测点c和c’。
图18是图像视图中的运动预测及误差检测的说明图。在图17所记载的方法中,因为客户端不仅有可能改变位置还有可能改变方向,所以该估计值可能会出现误差。因此,计算P(t+1)与实际检测位置(箭头1801、1802)之间的误差,以得出可用来更新P(t)的误差δP(t)。
图17是着眼于客户端围绕目标(立方体)的运动而表示图像平面上的点如何移动的图。图18示出了通过设想目标(而非观察者)进行旋转/平移时的运动,从而预测相同的运动这一点。
<本公开的汇总>
下面,作为本公开的汇总,附记若干个实施例。
本公开的方法,其是从服务器向客户端发送3D对象的方法,其包括以下步骤:从所述服务器上的所述3D对象提取颜色信息、阿尔法信息和几何图形信息;简化所述几何图形信息;以及编码包含所述颜色信息、所述阿尔法信息和所述简化后的几何图形信息的流并从所述服务器向所述客户端发送。
本公开的方法,其中,所述几何图形信息的简化是如下处理,即,将从所述3D对象提取到的点云转换成三角形的顶点的信息的处理。
本公开的方法,其中,所述流还包含元数据、声音数据和命令中的至少一者。
本公开的方法,其中,所述服务器从所述客户端接收改写所述服务器上的3D对象的命令。
本公开的方法,其中,在所述服务器从所述客户端接收到改写3D对象的命令的情况下,所述服务器进行以下步骤:改写所述服务器上的3D对象;从所述改写后的3D对象提取所述颜色信息、所述阿尔法信息和所述几何图形信息;简化所述几何图形信息;以及编码包含所述颜色信息、所述阿尔法信息和所述简化后的几何图形信息的流并从所述服务器向所述客户端发送。
本公开的方法,其中,所述颜色信息和所述阿尔法信息通过RGB相机获取,所述几何图形信息通过深度相机获取。
本公开的方法,其是在客户端上重现存在于服务器上的3D对象的方法,其包括以下步骤:从所述服务器接收包含所述3D对象的颜色信息、阿尔法信息和几何图形信息的编码后的流;解码所述流并从中提取所述颜色信息、所述阿尔法信息和所述几何图形信息;基于所述几何图形信息重现所述3D对象的形状;以及通过在所述重现后的3D对象的形状上投影将所述颜色信息和所述阿尔法信息组合后的信息来重建所述3D对象。
本公开的方法,其中,在显示装置上显示所述重建后的3D对象。
本公开的方法,其中,所述显示装置是智能眼镜。
本公开的服务器,其是包含一个以上的处理器和存储器的服务器,其中,所述一个以上的处理器通过执行所述存储器中存储的指令,进行以下处理:从所述服务器上的3D对象提取阿尔法信息和几何图形信息;简化所述几何图形信息;以及编码包含所述阿尔法信息和所述简化后的几何图形信息的流并从所述服务器向客户端发送。
本公开的客户端,其是包含一个以上的处理器和存储器的客户端,其中,所述一个以上的处理器通过执行所述存储器中存储的指令,进行以下处理:从服务器接收包含3D对象的颜色信息、阿尔法信息和几何图形信息的编码后的流;解码所述流,并从中提取所述颜色信息、所述阿尔法信息和所述几何图形信息;基于所述几何图形信息重现所述3D对象的形状;以及通过在所述重现后的3D对象的形状上投影将所述颜色信息和所述阿尔法信息组合后的信息来重建所述3D对象。
一种程序,其包含用于通过处理器执行本公开的所述方法的指令。
本公开的方法是从服务器向客户端发送基于所述客户端的位置信息而生成的3D对象的方法,其包括以下步骤:从所述服务器上的所述3D对象提取颜色信息、阿尔法信息及几何图形信息;简化所述几何图形信息;以及编码包含所述颜色信息、所述阿尔法信息和所述简化后的几何图形信息的流并从所述服务器向所述客户端发送。
本公开的方法,其中,对所述几何图形信息的简化包括从所述几何图形信息中去除高频分量。
本公开的方法,其中,所述流还包含所述客户端的位置信息、元数据、声音数据和命令中的至少一者。
本公开的方法,其中,所述服务器从所述客户端接收改写所述服务器上的3D对象的命令,所述命令包含所述客户端的位置信息。
本公开的方法,其中,在所述服务器从所述客户端接收到改写3D对象的命令的情况下,所述服务器进行以下步骤:基于所述命令所含的所述客户端的位置信息,改写所述服务器上的3D对象;从所述改写后的3D对象提取所述颜色信息、所述阿尔法信息和所述几何图形信息;简化所述几何图形信息;以及编码包含所述颜色信息、所述阿尔法信息和所述简化后的几何图形信息的流并从所述服务器向所述客户端发送。
本公开的方法,其中,所述颜色信息、所述阿尔法信息和所述几何图形信息是基于由RGB相机获取的图像而生成的。
本公开的方法是在客户端上重现服务器上的基于所述客户端的位置信息而生成的3D对象的方法,其包括以下步骤:从所述服务器接收包含所述3D对象的颜色信息、阿尔法信息和几何图形信息的编码后的流;解码所述流并从中提取所述颜色信息、所述阿尔法信息和所述几何图形信息;基于所述几何图形信息重现所述3D对象的形状;以及通过在所述重现后的3D对象的形状上投影将所述颜色信息和所述阿尔法信息组合后的信息来重建所述3D对象
本公开的方法,其中,在显示装置上显示所述重建后的3D对象。
本公开的方法,其中,所述显示装置是智能眼镜。
本公开的服务器是包含一个以上的处理器和存储器的服务器,其中,所述一个以上的处理器通过执行所述存储器中存储的指令,进行以下处理:从所述服务器上的基于客户端的位置信息而生成的3D对象提取阿尔法信息和几何图形信息;简化所述几何图形信息;以及编码包含所述阿尔法信息和所述简化后的几何图形信息的流并从所述服务器向客户端发送。
本公开的客户端是包含一个以上的处理器和存储器的客户端,其中,所述一个以上的处理器通过执行所述存储器中存储的指令,进行以下处理:从服务器接收包含基于所述客户端的位置信息而生成的3D对象的颜色信息、阿尔法信息和几何图形信息的编码后的流;解码所述流,并从中提取所述颜色信息、所述阿尔法信息和所述几何图形信息;基于所述几何图形信息重现所述3D对象的形状;以及通过在所述重现后的3D对象的形状上投影将所述颜色信息和所述阿尔法信息组合后的信息来重建所述3D对象。
本公开的程序包含用于通过处理器执行本公开的任一方法的指令。
本公开能够通过软件、硬件或与硬件联合的软件来实现。
2021年3月9日提交的日本专利申请特愿2021-037507中包含的说明书、附图和摘要的公开内容全部引用到本申请中。
工业实用性
本公开可以用于软件、程序、系统、设备、客户端服务器系统、终端等。
附图标记说明
100 服务器
101 接收数据处理机构
102 3D场景数据生成机构
103 提取机构
104 3D流转换/编码机构
105 3D流
106 网络数据包构成机构
107 网络数据包传输机构
108 网络数据包接收机构
120 有线或无线网络
150 客户端
150-1 客户端
150-2 客户端
151 网络数据包传输机构
152 网络数据包接收机构
153 应用程序数据输出机构
154 3D流解码机构
155 3D场景重建机构
156 显示机构
602 显示部
603 输入输出部
604 存储器
605 网络接口
606 存储装置
607 总线
703 输入输出部
704 存储器
705 网络接口
706 存储装置
707 总线
1201 画面
1202 人
1203 容器流
1210 智能眼镜
1211-1 人
1211-2 人
1212-1 光标
1212-2 光标
1213 命令
1214 人
1221 终端装置
1521~1526 深度相机
1530 RGB相机

Claims (12)

1.一种方法,其是从服务器向客户端发送基于所述客户端的位置信息而生成的3D对象的方法,其包括以下步骤:
从所述服务器上的所述3D对象提取颜色信息、阿尔法信息及几何图形信息;
简化所述几何图形信息;以及
编码包含所述颜色信息、所述阿尔法信息和所述简化后的几何图形信息的流并从所述服务器向所述客户端发送。
2.根据权利请求1所述的方法,其中,
对所述几何图形信息的简化包括从所述几何图形信息中去除高频分量。
3.根据权利请求1或2所述的方法,其中,
所述流还包含所述客户端的位置信息、元数据、声音数据和命令中的至少一者。
4.根据权利请求1或2所述的方法,其中,
所述服务器从所述客户端接收改写所述服务器上的3D对象的命令,所述命令包含所述客户端的位置信息。
5.根据权利请求1或2所述的方法,其中,
在所述服务器从所述客户端接收到改写3D对象的命令的情况下,所述服务器进行以下步骤:基于所述命令所含的所述客户端的位置信息,改写所述服务器上的3D对象;从所述改写后的3D对象提取所述颜色信息、所述阿尔法信息和所述几何图形信息;简化所述几何图形信息;以及编码包含所述颜色信息、所述阿尔法信息和所述简化后的几何图形信息的流并从所述服务器向所述客户端发送。
6.根据权利请求1或2所述的方法,其中,
所述颜色信息、所述阿尔法信息和所述几何图形信息是基于由RGB相机获取的图像而生成的。
7.一种方法,其是在客户端上重现服务器上的基于所述客户端的位置信息而生成的3D对象的方法,其包括以下步骤:
从所述服务器接收包含所述3D对象的颜色信息、阿尔法信息和几何图形信息的编码后的流;
解码所述流并从中提取所述颜色信息、所述阿尔法信息和所述几何图形信息;
基于所述几何图形信息重现所述3D对象的形状;以及
通过在所述重现后的3D对象的形状上投影将所述颜色信息和所述阿尔法信息组合后的信息来重建所述3D对象。
8.根据权利请求7所述的方法,其中,
在显示装置上显示所述重建后的3D对象。
9.根据权利请求8所述的方法,其中,
所述显示装置是智能眼镜。
10.一种服务器,其是包含一个以上的处理器和存储器的服务器,其中,
所述一个以上的处理器通过执行所述存储器中存储的指令,进行以下处理:
从所述服务器上的基于客户端的位置信息而生成的3D对象提取阿尔法信息和几何图形信息;
简化所述几何图形信息;以及
编码包含所述阿尔法信息和所述简化后的几何图形信息的流并从所述服务器向客户端发送。
11.一种客户端,其是包含一个以上的处理器和存储器的客户端,其中,
所述一个以上的处理器通过执行所述存储器中存储的指令,进行以下处理:
从服务器接收包含基于所述客户端的位置信息而生成的3D对象的颜色信息、阿尔法信息和几何图形信息的编码后的流;
解码所述流,并从中提取所述颜色信息、所述阿尔法信息和所述几何图形信息;
基于所述几何图形信息重现所述3D对象的形状;以及
通过在所述重现后的3D对象的形状上投影将所述颜色信息和所述阿尔法信息组合后的信息来重建所述3D对象。
12.一种程序,其包含用于通过处理器执行权利要求1、2、7、8、9中任一项所述的方法的指令。
CN202280019625.5A 2021-03-09 2022-03-04 3d对象的流传输方法、装置和程序 Pending CN117063473A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2021-037507 2021-03-09
JP2021037507A JP2022137826A (ja) 2021-03-09 2021-03-09 3dオブジェクトのストリーミング方法、装置、及びプログラム
PCT/JP2022/009411 WO2022191070A1 (ja) 2021-03-09 2022-03-04 3dオブジェクトのストリーミング方法、装置、及びプログラム

Publications (1)

Publication Number Publication Date
CN117063473A true CN117063473A (zh) 2023-11-14

Family

ID=83226770

Family Applications (3)

Application Number Title Priority Date Filing Date
CN202180095336.9A Pending CN117043824A (zh) 2021-03-09 2021-04-21 3d对象的流传输方法、装置和程序
CN202280019625.5A Pending CN117063473A (zh) 2021-03-09 2022-03-04 3d对象的流传输方法、装置和程序
CN202280019626.XA Pending CN117121493A (zh) 2021-03-09 2022-03-08 关于3d对象的用户输入的分析方法、装置和程序

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202180095336.9A Pending CN117043824A (zh) 2021-03-09 2021-04-21 3d对象的流传输方法、装置和程序

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202280019626.XA Pending CN117121493A (zh) 2021-03-09 2022-03-08 关于3d对象的用户输入的分析方法、装置和程序

Country Status (6)

Country Link
US (3) US20230401785A1 (zh)
EP (3) EP4290465A1 (zh)
JP (3) JP2022137826A (zh)
KR (3) KR20230153467A (zh)
CN (3) CN117043824A (zh)
WO (3) WO2022190398A1 (zh)

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09200599A (ja) * 1996-01-22 1997-07-31 Sanyo Electric Co Ltd 画像撮影方法
JP4229398B2 (ja) * 2003-03-28 2009-02-25 財団法人北九州産業学術推進機構 3次元モデリング・プログラム、3次元モデリング制御プログラム、3次元モデリング・データ伝送プログラム、記録媒体および3次元モデリング方法
JP2005259097A (ja) 2004-03-15 2005-09-22 Katsunori Kondo 3次元cgインタラクティブバナー
JP5103590B2 (ja) 2007-12-05 2012-12-19 倫也 佐藤 情報処理装置および情報処理方法
US20100134494A1 (en) 2008-12-02 2010-06-03 Electronics And Telecommunications Research Institute Remote shading-based 3d streaming apparatus and method
KR101660721B1 (ko) 2009-06-15 2016-09-29 엘지전자 주식회사 발광 다이오드 패키지 및 이를 포함하는 백라이트 유닛과 디스플레이장치
EP2461587A1 (en) * 2010-12-01 2012-06-06 Alcatel Lucent Method and devices for transmitting 3D video information from a server to a client
JP5864474B2 (ja) * 2013-05-01 2016-02-17 株式会社ディジタルメディアプロフェッショナル 空間を分割してグラフィックスを処理する画像処理装置及び画像処理方法
JP6802393B2 (ja) 2017-06-09 2020-12-16 株式会社ソニー・インタラクティブエンタテインメント 中心窩レンダリングシステムにおける、遅延ライティングの最適化、パーティクルの中心窩適応、及びシミュレーションモデル
CN110832553B (zh) * 2017-06-29 2024-05-14 索尼公司 图像处理装置和图像处理方法
JP7192772B2 (ja) * 2017-08-22 2022-12-20 ソニーグループ株式会社 画像処理装置および画像処理方法
US11290758B2 (en) 2017-08-30 2022-03-29 Samsung Electronics Co., Ltd. Method and apparatus of point-cloud streaming
JP6778163B2 (ja) 2017-08-31 2020-10-28 Kddi株式会社 オブジェクト情報の複数面への投影によって視点映像を合成する映像合成装置、プログラム及び方法
EP3462415A1 (en) * 2017-09-29 2019-04-03 Thomson Licensing Method and device for modifying attributes of points of a 3d scene
WO2019082958A1 (ja) 2017-10-27 2019-05-02 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元モデル符号化装置、三次元モデル復号装置、三次元モデル符号化方法、および、三次元モデル復号方法
US10529129B2 (en) 2018-04-20 2020-01-07 Hulu, LLC Dynamic selection mechanism for interactive video
US10497180B1 (en) * 2018-07-03 2019-12-03 Ooo “Ai-Eksp” System and method for display of augmented reality
WO2020050222A1 (ja) * 2018-09-07 2020-03-12 シャープ株式会社 画像再生装置、画像生成装置、画像生成方法、制御プログラム及び記録媒体
JP2020113094A (ja) * 2019-01-15 2020-07-27 株式会社シーエスレポーターズ 拡張現実空間に配置される3dオブジェクトを生成する方法
JP6647433B1 (ja) * 2019-02-19 2020-02-14 株式会社メディア工房 点群データ通信システム、点群データ送信装置および点群データ送信方法
JP2021037507A (ja) 2019-08-29 2021-03-11 日本国土開発株式会社 濾過用カートリッジ

Also Published As

Publication number Publication date
JP2022137826A (ja) 2022-09-22
EP4290869A1 (en) 2023-12-13
JP7430411B2 (ja) 2024-02-13
CN117043824A (zh) 2023-11-10
KR20230153467A (ko) 2023-11-06
KR20230153468A (ko) 2023-11-06
US20240177354A1 (en) 2024-05-30
WO2022190398A1 (ja) 2022-09-15
KR20230153469A (ko) 2023-11-06
WO2022191070A1 (ja) 2022-09-15
EP4290868A1 (en) 2023-12-13
EP4290465A1 (en) 2023-12-13
US20240169595A1 (en) 2024-05-23
JP2024045258A (ja) 2024-04-02
WO2022191200A1 (ja) 2022-09-15
US20230401785A1 (en) 2023-12-14
JP2022138158A (ja) 2022-09-22
CN117121493A (zh) 2023-11-24

Similar Documents

Publication Publication Date Title
EP3695383B1 (en) Method and apparatus for rendering three-dimensional content
US11087549B2 (en) Methods and apparatuses for dynamic navigable 360 degree environments
CN110351592B (zh) 动画呈现方法、装置、计算机设备和存储介质
EP3264370B1 (en) Media content rendering method, user equipment, and system
CA2948903C (en) Method, system and apparatus for generation and playback of virtual reality multimedia
CN113661471A (zh) 混合渲染
US20200366962A1 (en) Bitstream merger and extractor
CN113891117B (zh) 沉浸媒体的数据处理方法、装置、设备及可读存储介质
CN117063473A (zh) 3d对象的流传输方法、装置和程序
KR20220110787A (ko) 이기종 클라이언트 종단점에 대한 스트리밍을 위한 2d 비디오의 적응
CN116075860A (zh) 信息处理装置、信息处理方法、视频分发方法和信息处理系统
TWI817273B (zh) 即時多視像視訊轉換方法和系統
CN117616762A (zh) 利用3d图形增强视频或外部环境
TW202344044A (zh) 多視像視訊彩現和製備多視像視訊快取的方法以及即時多視像視訊轉換的系統

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination