CN116543131A - 画面的虚实融合方法、存储介质和电子装置 - Google Patents
画面的虚实融合方法、存储介质和电子装置 Download PDFInfo
- Publication number
- CN116543131A CN116543131A CN202310824003.6A CN202310824003A CN116543131A CN 116543131 A CN116543131 A CN 116543131A CN 202310824003 A CN202310824003 A CN 202310824003A CN 116543131 A CN116543131 A CN 116543131A
- Authority
- CN
- China
- Prior art keywords
- terminal
- cloud
- transparency
- virtual
- picture
- 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
Links
- 238000007500 overflow downdraw method Methods 0.000 title claims abstract description 24
- 238000009877 rendering Methods 0.000 claims abstract description 78
- 230000004927 fusion Effects 0.000 claims abstract description 61
- 238000000034 method Methods 0.000 claims abstract description 32
- 239000011159 matrix material Substances 0.000 claims description 30
- 238000004590 computer program Methods 0.000 claims description 16
- 239000000284 extract Substances 0.000 claims description 9
- 239000013589 supplement Substances 0.000 claims description 6
- 238000003780 insertion Methods 0.000 claims description 4
- 230000037431 insertion Effects 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 10
- 230000000694 effects Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 20
- 230000005540 biological transmission Effects 0.000 description 17
- 230000006835 compression Effects 0.000 description 5
- 238000007906 compression Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 238000002156 mixing Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 230000003190 augmentative effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000013075 data extraction Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008707 rearrangement Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明实施例提供了一种画面的虚实融合方法、存储介质和电子装置,其中,方法包括云端进行虚景的画面渲染,并对渲染画面的透明度信息进行提取和重排;云端对透明度信息重排后的渲染画面进行编码,以获得视频编码文件;云端将视频编码文件发送至终端,以便终端基于透明度信息将渲染画面中的虚景与终端中的实景相融合获得虚实融合画面。通过本发明,解决了相关技术中采用云端渲染的视频流无法与设备相机画面进行虚实融合的问题,达到了使云端渲染的视频流可以与设备相机画面进行高效的虚实融合的效果。
Description
技术领域
本发明实施例涉及计算机图形处理领域,具体而言,涉及一种画面的虚实融合方法、存储介质和电子装置。
背景技术
现有的画面的虚实融合方法通过采用云端渲染的方案,解决了移动设备渲染资源紧缺的问题。但是云端渲染完成之后,在进行视频编码传输时,主流的H264算法因无法处理渲染后画面的透明度信息,导致视频流中无法携带透明度信息,视频流传递至终端后没有画面透明度信息,无法与设备相机画面进行虚实融合。
发明内容
本发明实施例提供了一种画面的虚实融合方法、存储介质和电子装置,以至少解决相关技术中采用云端渲染的视频流无法与设备相机画面进行虚实融合的问题。
根据本发明的一个实施例,提供了一种画面的虚实融合方法,包括:云端进行虚景的画面渲染,并对渲染画面的透明度信息进行提取和重排;所述云端对所述透明度信息重排后的所述渲染画面进行编码,以获得视频编码文件;所述云端将所述视频编码文件发送至终端,以便所述终端基于所述透明度信息将所述渲染画面中的虚景与所述终端中的实景相融合获得虚实融合画面。
根据本发明的另一个实施例,提供了一种画面的虚实融合方法,包括:终端接收来自云端的视频编码文件,其中,所述视频编码文件包括所述云端的渲染画面和所述渲染画面的透明度信息;所述终端对所述视频编码文件进行解码,获得原始图像数组和透明度数据数组;所述终端将终端相机图像与所述原始图像数组和所述透明度数据数组进行融合,获得虚实融合画面。
根据本发明的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,提供了一种画面的虚实融合方法,通过云端进行虚景的画面渲染,并对渲染画面的透明度信息进行提取和重排;云端对透明度信息重排后的渲染画面进行编码,以获得视频编码文件;云端将视频编码文件发送至终端,以便终端基于透明度信息将渲染画面中的虚景与终端中的实景相融合获得虚实融合画面。解决了相关技术中采用云端渲染的视频流无法与设备相机画面进行虚实融合的问题,达到了使云端渲染的视频流可以与设备相机画面进行高效的虚实融合的效果。
附图说明
图1是相关技术中虚实融合原理示意图;
图2是相关技术中云端渲染视频编码后丢失透明度信息示例图;
图3是本发明实施例的一种画面的虚实融合方法的计算机终端的硬件结构框图;
图4是根据本发明实施例的画面的虚实融合方法的流程图;
图5是根据本发明另一实施例的画面的虚实融合方法的流程图;
图6是根据本发明实施例的画面的虚实融合装置的结构框图;
图7是根据本发明另一实施例的画面的虚实融合装置的结构框图;
图8是根据本发明另一实施例的画面的虚实融合装置的结构框图;
图9是根据本发明另一实施例的画面的虚实融合装置的结构框图;
图10是根据本发明场景实施例的云端与终端数据交互原理示意图;
图11是根据本发明场景实施例的透明通道传输流程原理图;
图12是根据本发明场景实施例的透明度数据提取和插入原理示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明的实施例。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
虚实结合即强调虚拟跟现实的融合,体现在虚实结合、实时交互和三维尺度匹配,主要通过显示技术、交互技术、传感技术和计算机图形和图像技术实现。虚实融合技术通过位姿即时定位结果来即时渲染计算机虚拟物体并叠加到计算机设备相机画面之上合成显示的一种技术,可以将计算机生成的文字、图像、三维模型等虚拟信息与真实世界相结合,是增强现实类产品的基础实现原理。图1是相关技术中虚实融合原理示意图,如图1所示,虚实融合技术在进行虚景(虚拟物体画面)和实景(相机画面)融合时,要以实景为合成底部图层,虚景为上部图层,根据上部图层中虚景的透明度信息,将透明区域丢弃,最终形成虚实融合的画面。
相关技术中,均依靠设备自身硬件来计算实时位姿并实时渲染虚拟物体,而增强现实场景的实时交互性就需要用户使用移动设备或可穿戴设备来使用,设备硬件本身需要采用轻量化设计,导致硬件性能存在瓶颈,在实时渲染某些复杂或大型虚拟物体时会因为超出硬件极限导致渲染卡顿或无法渲染的问题。
针对移动终端设备性能瓶颈问题,相关技术中又提出了增强现实场景下云渲染的方案,依赖云端的硬件渲染资源来解决移动设备渲染资源紧缺的问题,但是云端渲染完成之后,在进行视频编码传输时,主流的H264算法因无法处理渲染后画面的透明度信息,导致视频流中无法携带透明度信息,图2是相关技术中云端渲染视频编码后丢失透明度信息示例图,如图2所示,视频流传递至终端后没有画面透明度信息,无法与设备相机画面进行虚实融合。
针对上述问题,本发明实施例提出一种虚实融合方案,基于透明通道传输,通过设计的适配于H264的视频透明通道技术,实现了增强现实云渲染并在最终移动设备上虚实融合的方案,提升了移动设备的渲染能力。
本申请实施例中所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图3是本发明实施例的一种画面的虚实融合方法的计算机终端的硬件结构框图。如图3所示,计算机终端可以包括一个或多个(图3中仅示出一个)处理器302(处理器302可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器304,其中,上述计算机终端还可以包括用于通信功能的传输设备306以及输入输出设备308。本领域普通技术人员可以理解,图3所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图3中所示更多或者更少的组件,或者具有与图3所示不同的配置。
存储器304可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的画面的虚实融合方法对应的计算机程序,处理器302通过运行存储在存储器304内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器304可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器304可进一步包括相对于处理器302远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备306用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输设备306包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备306可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种运行于上述计算机终端的画面的虚实融合方法,图4是根据本发明实施例的画面的虚实融合方法的流程图,如图4所示,该流程包括如下步骤:
步骤S402,云端进行虚景的画面渲染,并对渲染画面的透明度信息进行提取和重排;
在一个示例性实施例中,在云端进行虚景的画面渲染之前,还包括:云端接收来自终端的终端位姿矩阵和终端设备信息。在一个示例性实施例中,终端位姿矩阵至少包括:终端空间位置信息、终端旋转信息;终端设备信息至少包括:终端显示器分辨率、终端相机视场角。
在一个示例性实施例中,云端进行虚景的画面渲染,包括:云端根据终端设备信息初始化云端的渲染相机参数,并根据终端位姿矩阵实时控制渲染相机的相机空间位置和相机旋转信息。
在一个示例性实施例中,对渲染画面的透明度信息进行提取和重排,包括:云端按行提取渲染画面中颜色空间(Red Green Blue Alpha, RGBA)数据的透明度信息,获得透明度数据数组;云端对透明度数据数组进行补齐操作,使得透明度数据数组的长度为终端显示器分辨率宽度的整数倍;云端将完成补齐操作的透明度数据数组拼接至RGBA数据的末尾。
在一个示例性实施例中,云端对透明度数据数组进行补齐操作,包括:云端在透明度数据数组中每隔若干个透明度数据插入一个占位数据,插入完成后计算透明度数据数组的长度,如果长度不是终端显示器分辨率宽度的整数倍,则继续补充占位数据至透明度数据数组中,直至长度为终端显示器分辨率宽度的整数倍。
在实际实施过程中,云端可以将透明度数据数组按照每三个中插入一个占位数据0,补充完成之后计算透明度数据数组长度,如果长度不为终端显示器分辨率宽度的整数倍,则继续补充占位数据0至透明度数据数组中,直至透明度数据数组长度为终端显示器分辨率宽度的整数倍。
步骤S404,云端对透明度信息重排后的渲染画面进行编码,以获得视频编码文件;
在实际实施过程中,云端可以将拼接后的RGBA数据送入编码器,RGBA会被编码器过滤为RGB格式并最终压缩生成视频编码H264文件,将H264文件下发给终端。
步骤S406,云端将视频编码文件发送至终端,以便终端基于透明度信息将渲染画面中的虚景与终端中的实景相融合获得虚实融合画面。
通过上述步骤,通过云端进行虚景的画面渲染,并对渲染画面的透明度信息进行提取和重排;云端对透明度信息重排后的渲染画面进行编码,以获得视频编码文件;云端将视频编码文件发送至终端,以便终端基于透明度信息将渲染画面中的虚景与终端中的实景相融合获得虚实融合画面。通过本发明,解决了相关技术中采用云端渲染的视频流无法与设备相机画面进行虚实融合的问题,达到了使云端渲染的视频流可以与设备相机画面进行高效的虚实融合的效果。
本发明实施例还提供了一种画面的虚实融合方法,图5是根据本发明实施例的画面的虚实融合方法的流程图,如图5所示,画面的虚实融合方法包括以下步骤:
步骤S502,终端接收来自云端的视频编码文件,其中,视频编码文件包括云端的渲染画面和渲染画面的透明度信息;
在一个示例性实施例中,在终端接收来自云端的视频编码文件之前,还包括:终端将终端位姿矩阵和终端设备信息发送至云端,以使云端根据终端位姿矩阵和终端设备信息进行画面渲染。
在一个示例性实施例中,终端位姿矩阵至少包括:终端空间位置信息、终端旋转信息;终端设备信息至少包括:终端显示器分辨率、终端相机视场角。
在一个示例性实施例中,视频编码文件的文件形式至少包括:H264文件。
步骤S504,终端对视频编码文件进行解码,获得原始图像数组和透明度数据数组;
在一个示例性实施例中,终端对视频编码文件进行解码,获得原始图像数组和透明度数据数组,包括:终端启动解码线程,根据视频编码文件获得RGB数据;终端计算未拼接的RGB数据的长度,根据RGB数据的长度获得原始图像数组和透明度数据数组。
在实际实施过程中,终端设备启动解码线程,并得到压缩前的RGB数据,因云端编码之前末尾按规则拼接了透明度数据,所以根据自身屏幕分辨率的宽高,计算出未拼接之前图像RGB数据的长度为宽x高x3,并按照计算长度将解码之后的RGB数据分为原始图像数组和透明度数据数组。
步骤S506,终端将终端相机图像与原始图像数组和透明度数据数组进行融合,获得虚实融合画面。
在一个示例性实施例中,终端将终端相机图像与原始图像数组和透明度数据数组进行融合,包括:终端依据原始图像数组中的一个RGB像素获取透明度数据数组中的一个透明度数据的原则,将透明度数据数组的透明度数据、终端相机图像、原始图像数组中的RGB图像进行融合,获得虚实融合画面。
在实际实施过程中,终端将原始RGB图像与终端相机画面混合时,依据一个RGB像素获取一个透明度数据数组中一个透明度数据的原则,并将RGB图像、终端相机图像和透明度数据传入渲染引擎的混合函数即可得到最终的虚实融合画面。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种画面的虚实融合装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图6是根据本发明实施例的画面的虚实融合装置的结构框图,该融合装置60可以设置于云端,如图6所示,该融合装置60包括:渲染模块610,用于进行虚景的画面渲染,并对渲染画面的透明度信息进行提取和重排;编码模块620,用于对透明度信息重排后的所述渲染画面进行编码,以获得视频编码文件;下行发送模块630,用于将视频编码文件发送至终端,以便终端基于透明度信息将渲染画面中的虚景与终端中的实景相融合获得虚实融合画面。
图7是根据本发明实施例的画面的虚实融合装置的结构框图,该融合装置70可以设置于云端,如图7所示,该融合装置70除了包括图6所示的模块外,还包括:上行接收模块710,用于接收来自终端的终端位姿矩阵和终端设备信息。
在本发明实施例中,还提供了另一种画面的虚实融合装置,图8是根据本发明实施例的画面的虚实融合装置的结构框图,该融合装置80可以设置于终端,如图8所示,该融合装置80包括:下行接收模块810,用于接收来自云端的视频编码文件,其中,视频编码文件包括云端的渲染画面和渲染画面的透明度信息;解码模块820,用于对视频编码文件进行解码,获得原始图像数组和透明度数据数组;融合模块830,用于将终端相机图像与原始图像数组和透明度数据数组进行融合,获得虚实融合画面。
图9是根据本发明实施例的画面的虚实融合装置的结构框图,该融合装置90可以设置于云端,如图9所示,该融合装置90除了包括图8所示的模块外,还包括:上行发送模块910,用于将终端位姿矩阵和终端设备信息发送至云端,以使云端根据终端位姿矩阵和终端设备信息进行画面渲染。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
为了使得本领域的技术人员更好地理解本发明的技术方案,下面结合具体的场景实施例进行阐述。
场景实施例一
在本发明的场景实施例中,终端设备需要具备即时定位与地图构建(Simultaneous Localization And Mapping,SLAM)能力以及与云端渲染应用的网络联通能力。
传统虚实融合方案中,虚拟物体只能依靠设备自身硬件来完成渲染,性能瓶颈问题十分严重,大型虚拟物体无法正常工作。本发明将虚拟物体渲染工作移动至云端完成,但虚实融合时需要使用虚景的透明度信息,而云端渲染之后,使用H264编码时压缩算法会将透明度信息过滤再编码,导致终端解码后因无透明度信息而无法完成虚实融合,所以本发明设计出了在原有H264压缩算法下,通过透明度信息的重新排列并插入原始帧画面数据,使得视频流可以携带透明度信息,终端只需将最终渲染结果解码并按照解码后的透明度数据来混合本地画面即可实现虚实融合,突破了终端设备的硬件限制,降低终端设备要求及成本,提升了用户体验。
图10是根据本发明场景实施例的云端与终端数据交互原理示意图,如图10所示,其中,终端位姿矩阵:终端通过SLAM计算出的空间位置和旋转信息并以30-60HZ发送;终端设备信息:终端相机视场角度(Field Of View,FOV)及显示屏幕分辨率;网络传输上行:终端将位姿矩阵和设备信息发送至云端;相机位置控制:云端渲染引擎根据终端设备信息设置相机视场角度和相机采集分辨率、根据终端位姿矩阵实时更新相机在空间中位姿。画面渲染:云端渲染引擎进行画面实时渲染;渲染画面透明度信息重排:云端将渲染画面中的RGBA中透明度信息提取并按规则插入RGBA队尾;编码:云端采用视频编码器H264对透明度信息重排后的画面进行编码;网络传输下行:云端将视频流发送至终端;解码:终端对视频流进行解码;解码后透明度信息提取:终端将解码后的帧画面尾部的透明度信息提取;画面合成显示:终端本地相机画面与截取后的帧画面根据透明度信息进行合成并上屏显示。
根据图10所示的云端与终端数据交互原理,本发明场景实施例提供的画面的虚实融合方法包括以下步骤:
步骤1:获取终端位姿矩阵和终端设备信息上传至云端,其中姿态矩阵包括设备设备位置信息和终端设备旋转信息。设备信息包括显示终端设备显示器分辨率及终端设备相机FOV。
步骤2:云端渲染应用侧初始化渲染相机,相机渲染参数由FOV和终端显示器分辨率决定;云端实时接收终端上行的姿态矩阵,相机位置和相机旋转信息由上行的姿态矩阵实时控制更新。
步骤3:开始启动透明通道传输。
需要注意的是,在本发明场景实施例中,为在云端渲染并编码后获得视频流中携带透明度信息提供了具体的方法,并描述成透明通道传输,其中,透明通道传输用于展示透明度信息的具体传递流程原理,并不是限制具体的传输通道。图11是根据本发明场景实施例的透明通道传输流程原理图,如图11所示,首先分离渲染帧RGBA中的透明度信息,之后在渲染帧RGBA的末尾插入分离的透明度信息,其中在具体实施过程中,分离获得的透明度信息可以是透明度数据数组的形式。之后,对插入了透明度信息的渲染帧RGBA进行编码,之后压缩获得上述实施例中H264文件,再将H264文件发送至终端进行解码,从解码文件中的尾部分离之前插入的透明度信息,最后在实景和虚景进行结合即虚实融合时使用上述透明度信息(或者透明度数据数组),之后终端对完成虚实融合的画面进行上屏显示。
步骤4:云端创建并启动渲染线程,渲染相机在姿态矩阵的控制下分别进行实时渲染,渲染结果实时更新并保存在图形处理器(Graphics Processing Unit,GPU)帧缓存中。
步骤5:云端对GPU帧缓存的RGBA数据中的透明度数据按行取出得到透明度数据数组。
步骤6:图12是根据本发明场景实施例的透明度数据提取和插入原理示意图,如图12所示,云端将透明度数据数组按照每三个中插入一个占位数据0,补充完成之后计算透明度数据数组长度,如果长度不为终端显示器分辨率宽度的整数倍,则继续补充占位数据0至透明度数据数组中,直至透明度数据数组长度为终端显示器分辨率宽度的整数倍。
步骤7:云端将透明度数据数组拼接至帧缓存RGBA数据末尾。
步骤8:云端创建并启动编码线程,将拼接后的RGBA数据送入编码器,RGBA会被编码器过滤为RGB格式并最终压缩生成视频编码H264文件,将H264文件下发给终端。
步骤9:终端设备启动解码线程,并得到压缩前的RGB数据,因云端编码之前末尾按规则拼接了透明度数据,所以根据自身屏幕分辨率的宽高,计算出未拼接之前图像RGB数据的长度为宽x高x3,并按照计算长度将解码之后的RGB数据分为原始图像数组和透明度数据数组。
步骤10:终端将原始RGB图像与终端相机画面混合时,依据一个RGB像素获取一个透明度数据数组中一个透明度数据,并将RGB图像、终端相机图像和透明度数据传入渲染引擎的混合函数即可得到最终的虚实融合画面。
场景实施例二
本场景实施例提供的画面的虚实融合方法的步骤主要包括:
步骤1:获取终端位姿矩阵和终端设备信息上传至云端,其中姿态矩阵包括设备设备位置信息和终端设备旋转信息。设备信息包括显示终端设备显示器分辨率及终端设备相机FOV。
步骤2:云端渲染应用侧初始化渲染相机,相机渲染参数由FOV和终端显示器分辨率决定;云端实时接收终端上行的姿态矩阵,相机位置和相机旋转信息由上行的姿态矩阵实时控制更新。
步骤3:云端创建并启动渲染线程,渲染相机在姿态矩阵的控制下分别进行实时渲染,渲染结果实时更新并保存在GPU帧缓存中。
步骤4:云端将RGBA数据编码压缩并发送至终端。
其中,云端对RGBA数据编码步骤如下:
(1)对GPU帧缓存的RGBA数据中的透明度数据按行取出得到透明度数据数组。
云端将透明度数据数组按照每三个中插入一个占位数据0,补充完成之后计算透明度数据数组长度,如果长度不为终端显示器分辨率宽度的整数倍,则继续补充占位数据0至透明度数据数组中,直至透明度数据数组长度为终端显示器分辨率宽度的整数倍
(2)将透明度数据数组拼接至帧缓存RGBA数据末尾
(3)将拼接后的RGBA数据送入编码器,RGBA会被编码器过滤为RGB格式并最终压缩生成H264文件
步骤5:终端设备启动解码线程,并将压缩带有透明度信息的数据解码还原。
步骤6:终端依据RGB数据和透明度信息与终端相机画面混合,并上屏现实。
其中,终端对带透明通道编码数据解码上屏:
(1)终端设备启动解码线程,并得到压缩前的RGB数据,因云端编码之前末尾按规则拼接了透明度数据,所以根据自身屏幕分辨率的宽高,计算出未拼接之前图像RGB数据的长度为宽x高x3,并按照计算长度将解码之后的RGB数据分为原始图像数组和透明度数据数组。
(2)终端将原始RGB图像与终端相机画面混合时,依据一个RGB像素获取一个透明度数据数组中一个透明度数据,并将RGB图像、终端相机图像和透明度数据传入渲染引擎的混合函数即可得到最终的虚实融合画面。
综上,本发明实施例提出的虚实融合方案,将计算机虚拟物体的渲染在云端完成,云端渲染应用将渲染出的画面和整幅画面的透明度信息合并打包发送给当前设备,当前设备只需要完成解码并根据透明度信息将虚拟物体从视频画面中取出并与相机画面合成,大大降低了当前设备的硬件消耗及要求,可以实现复杂和大型虚拟物体的虚实融合。
本发明实施例通过对云端渲染结果中将透明度信息进行提取并重排,使得渲染结果在进行普通视频编码后就可以保留透明度信息并生成视频编码文件,这样可以使得普通的视频编码传输方案可以携带透明度信息。终端侧接收到带透明度信息的视频流之后,通过对解码后的数据尾部的透明度信息进行截取,再通过明信息就可以进行终端实景和云端虚景的融合。利用云端的硬件渲染资源,将虚实融合场景中的虚景渲染从终端移动至云端,并通过终端实时更新位姿来更新云端的虚景渲染,再利用透明通道方案将渲染结果传输到终端进行虚实融合,这样终端只需要进行视频流中透明度信息的获取和虚实景融合的工作,大大减少了终端的渲染压力。
相较于传统的虚实融合方案,虚拟物体只能依靠设备自身硬件来完成渲染,性能瓶颈问题十分严重,大型虚拟物体无法正常工作。本发明实施例的融合方法将虚拟物体渲染工作移动至云端完成,终端只需将最终渲染结果解码并按照解码后的透明度数据来混合本地画面即可实现虚实融合,突破了终端设备的硬件限制,降低终端设备要求及成本,提升了针对复杂、大型虚拟物体的用户体验。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种画面的虚实融合方法,其特征在于,包括:
云端进行虚景的画面渲染,并对渲染画面的透明度信息进行提取和重排;
所述云端对所述透明度信息重排后的所述渲染画面进行编码,以获得视频编码文件;
所述云端将所述视频编码文件发送至终端,以便所述终端基于所述透明度信息将所述渲染画面中的虚景与所述终端中的实景相融合获得虚实融合画面。
2.根据权利要求1所述的方法,其特征在于,在所述云端进行虚景的画面渲染之前,所述方法还包括:
所述云端接收来自所述终端的终端位姿矩阵和终端设备信息。
3.根据权利要求2所述的方法,其特征在于,其中,
所述终端位姿矩阵至少包括:终端空间位置信息、终端旋转信息;
所述终端设备信息至少包括:终端显示器分辨率、终端相机视场角。
4.根据权利要求2所述的方法,其特征在于,所述云端进行虚景的画面渲染,包括:
所述云端根据所述终端设备信息初始化所述云端的渲染相机参数,并根据所述终端位姿矩阵实时控制渲染相机的相机空间位置和相机旋转信息。
5.根据权利要求1所述的方法,其特征在于,所述对渲染画面的透明度信息进行提取和重排,包括:
所述云端按行提取所述渲染画面中RGBA数据的所述透明度信息,获得透明度数据数组;
所述云端对所述透明度数据数组进行补齐操作,使得所述透明度数据数组的长度为终端显示器分辨率宽度的整数倍;
所述云端将完成补齐操作的所述透明度数据数组拼接至所述RGBA数据的末尾。
6.根据权利要求5所述的方法,其特征在于,所述云端对所述透明度数据数组进行补齐操作,包括:
所述云端在所述透明度数据数组中每隔若干个透明度数据插入一个占位数据,插入完成后计算所述透明度数据数组的长度,如果所述长度不是终端显示器分辨率宽度的整数倍,则继续补充所述占位数据至所述透明度数据数组中,直至所述长度为所述终端显示器分辨率宽度的整数倍。
7.一种画面的虚实融合方法,其特征在于,包括:
终端接收来自云端的视频编码文件,其中,所述视频编码文件包括所述云端的渲染画面和所述渲染画面的透明度信息;
所述终端对所述视频编码文件进行解码,获得原始图像数组和透明度数据数组;
所述终端将终端相机图像与所述原始图像数组和所述透明度数据数组进行融合,获得虚实融合画面。
8.根据权利要求7所述的方法,其特征在于,在所述终端接收来自云端的视频编码文件之前,所述方法还包括:
所述终端将终端位姿矩阵和终端设备信息发送至所述云端,以使所述云端根据所述终端位姿矩阵和所述终端设备信息进行画面渲染。
9.根据权利要求8所述的方法,其特征在于,其中,
所述终端位姿矩阵至少包括:终端空间位置信息、终端旋转信息;
所述终端设备信息至少包括:终端显示器分辨率、终端相机视场角。
10.根据权利要求7所述的方法,其特征在于,所述终端对所述视频编码文件进行解码,获得原始图像数组和透明度数据数组,包括:
所述终端启动解码线程,根据所述视频编码文件获得RGB数据;
所述终端计算未拼接的所述RGB数据的长度,根据所述RGB数据的长度获得所述原始图像数组和所述透明度数据数组。
11.根据权利要求7所述的方法,其特征在于,所述终端将终端相机图像与所述原始图像数组和所述透明度数据数组进行融合,包括:
所述终端依据所述原始图像数组中的一个RGB像素获取所述透明度数据数组中的一个透明度数据的原则,将所述透明度数据数组的透明度数据、所述终端相机图像、所述原始图像数组中的RGB图像进行融合,获得虚实融合画面。
12.根据权利要求7所述的方法,其特征在于,所述视频编码文件的文件形式至少包括:H264文件。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至12任一项中所述的方法。
14.一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述权利要求1至12任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310824003.6A CN116543131A (zh) | 2023-07-06 | 2023-07-06 | 画面的虚实融合方法、存储介质和电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310824003.6A CN116543131A (zh) | 2023-07-06 | 2023-07-06 | 画面的虚实融合方法、存储介质和电子装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116543131A true CN116543131A (zh) | 2023-08-04 |
Family
ID=87447544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310824003.6A Pending CN116543131A (zh) | 2023-07-06 | 2023-07-06 | 画面的虚实融合方法、存储介质和电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116543131A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3310053A1 (en) * | 2016-10-12 | 2018-04-18 | Thomson Licensing | Method and apparatus for coding transparency information of immersive video format |
EP3310057A1 (en) * | 2016-10-12 | 2018-04-18 | Thomson Licensing | Method, apparatus and stream for coding transparency and shadow information of immersive video format |
CN109194962A (zh) * | 2017-04-08 | 2019-01-11 | 腾讯科技(深圳)有限公司 | 一种图片文件处理方法及系统 |
US20200380635A1 (en) * | 2019-05-31 | 2020-12-03 | Apple Inc. | Configuring alpha channel video based on display settings |
CN113808242A (zh) * | 2021-09-23 | 2021-12-17 | 广州虎牙科技有限公司 | 图像合成方法、装置及图像处理设备 |
CN115297312A (zh) * | 2022-08-04 | 2022-11-04 | 深圳市瑞云科技有限公司 | 一种传输图像透明度信息的方法 |
CN115801983A (zh) * | 2022-11-04 | 2023-03-14 | 西安维度视界科技有限公司 | 图像叠加方法和装置、电子设备 |
-
2023
- 2023-07-06 CN CN202310824003.6A patent/CN116543131A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3310053A1 (en) * | 2016-10-12 | 2018-04-18 | Thomson Licensing | Method and apparatus for coding transparency information of immersive video format |
EP3310057A1 (en) * | 2016-10-12 | 2018-04-18 | Thomson Licensing | Method, apparatus and stream for coding transparency and shadow information of immersive video format |
CN109194962A (zh) * | 2017-04-08 | 2019-01-11 | 腾讯科技(深圳)有限公司 | 一种图片文件处理方法及系统 |
US20200380635A1 (en) * | 2019-05-31 | 2020-12-03 | Apple Inc. | Configuring alpha channel video based on display settings |
CN113808242A (zh) * | 2021-09-23 | 2021-12-17 | 广州虎牙科技有限公司 | 图像合成方法、装置及图像处理设备 |
CN115297312A (zh) * | 2022-08-04 | 2022-11-04 | 深圳市瑞云科技有限公司 | 一种传输图像透明度信息的方法 |
CN115801983A (zh) * | 2022-11-04 | 2023-03-14 | 西安维度视界科技有限公司 | 图像叠加方法和装置、电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11348283B2 (en) | Point cloud compression via color smoothing of point cloud prior to texture video generation | |
CN110892453B (zh) | 使用图像/视频编解码器的点云和网格压缩 | |
US11514613B2 (en) | Point cloud and mesh compression using image/video codecs | |
US11210812B2 (en) | Single-pass boundary detection in video-based point cloud compression | |
US20180098090A1 (en) | Method and Apparatus for Rearranging VR Video Format and Constrained Encoding Parameters | |
US11216984B2 (en) | Patch splitting for improving video-based point cloud compression performance | |
EP4072132B1 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method | |
CN109643456A (zh) | 图像压缩方法与设备 | |
US11882297B2 (en) | Image rendering and coding method and related apparatus | |
US20220383552A1 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method | |
US11922663B2 (en) | Decision-making rules for attribute smoothing | |
US11310560B2 (en) | Bitstream merger and extractor | |
US10958950B2 (en) | Method, apparatus and stream of formatting an immersive video for legacy and immersive rendering devices | |
TW201904294A (zh) | 數位內容串流壓縮 | |
TW201806386A (zh) | 影像壓縮方法與設備 | |
US11706450B2 (en) | Partial decoding and reconstruction of a video-based point cloud compression bitstream | |
US11895341B2 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method | |
US20230308684A1 (en) | Tiling for video based point cloud compression | |
US20050196056A1 (en) | Image coding and decoding method | |
CN117063473A (zh) | 3d对象的流传输方法、装置和程序 | |
CN113127637A (zh) | 一种字符的还原方法及装置、存储介质、电子装置 | |
CN116543131A (zh) | 画面的虚实融合方法、存储介质和电子装置 | |
CN115002468A (zh) | 视频处理方法、装置、系统以及客户端 | |
CN116962742A (zh) | 网络直播的视频图像数据传输方法、装置及直播系统 | |
CN111901581A (zh) | 基于2d视频转3d效果的视频像素处理系统及方法 |
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 |