CN109427087A - 图像处理方法和装置 - Google Patents
图像处理方法和装置 Download PDFInfo
- Publication number
- CN109427087A CN109427087A CN201810176125.8A CN201810176125A CN109427087A CN 109427087 A CN109427087 A CN 109427087A CN 201810176125 A CN201810176125 A CN 201810176125A CN 109427087 A CN109427087 A CN 109427087A
- Authority
- CN
- China
- Prior art keywords
- cube
- asymmetric
- mapping
- common
- center
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 45
- 238000013507 mapping Methods 0.000 claims abstract description 252
- 238000012545 processing Methods 0.000 claims abstract description 67
- 238000000034 method Methods 0.000 claims abstract description 52
- 238000009877 rendering Methods 0.000 claims description 25
- 230000000717 retained effect Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 29
- 230000006870 function Effects 0.000 description 10
- 230000000007 visual effect Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 230000009471 action Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 241001269238 Data Species 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000006735 deficit Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000000149 penetrating effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
-
- 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
-
- 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/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/06—Topological mapping of higher dimensional structures onto lower dimensional surfaces
- G06T3/067—Reshaping or unfolding 3D tree structures onto 2D planes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2215/00—Indexing scheme for image rendering
- G06T2215/12—Shadow map, environment map
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/008—Cut plane or projection plane definition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2021—Shape modification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/001—Model-based coding, e.g. wire frame
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Multimedia (AREA)
- Computing Systems (AREA)
- Architecture (AREA)
- Signal Processing (AREA)
- Image Generation (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
Abstract
本公开涉及图像处理方法和装置。该方法包括:将输入的三维模型贴图进行非对称立方体贴图映射,所述非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同;将经过非对称立方体贴图映射的三维模型贴图展开得到二维平面展开图。由于非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同,将输入的三维模型贴图进行非对称立方体贴图映射并在二维平面展开,能够在非对称立方体贴图的一个面中保留图像的分辨率,在其他面中降低图像的分辨率,从而有利于在用户的ROI保持较高的图像分辨率,还可以使得远离ROI的区域分辨率缓慢下降,从而降低了二维平面展开图的整体的分辨率,减少后续处理的数据量。
Description
交叉引用
本申请主张2017年8月22日提交的中国专利申请号为201710726124.1的优先权,其全部内容通过引用包含于此。
技术领域
本公开涉及图像处理技术领域,尤其涉及一种图像处理方法和装置。
背景技术
在视频编码前,可以采用Equirectangular(等矩形投影)、Cubemap(立方体贴图)和Pyramid(金字塔)等模型,对全景视频进行映射和展开。
其中,Equirectangular模型是一种球映射的模型。采用Equirectangular模型映射后得到的图像面积太大,导致后续的转码码率较高。与Equirectangular模型相比,采用Cubemap模型映射可以使得全景视频的像素得到全部的保留,并且能够减少映射后的编码图像面积,从而减少后续视频编码的码率。
但是,由于普通Cubemap映射是对称的,不能提高当前ROI(region of interest,感兴趣区域)的压缩质量。Pyramid映射可以解决这个问题。Pyramid映射展开方式利用用户在不同观看的主视角映射出不同的图像。每路的映射图像在用户的某一个主视角具有最清晰的分辨率。而在远离用户主视角的位置降低映射的分辨率。因此,Pyramid映射展开方式在每一路的映射图像上可以得到具有较低分辨率的映射展开图像。通常,用户视角在离开主视角70度左右会出现锯齿效应,在远离主视角180度时图像质量会变得不可接受。
因此,采用Pyramid模型进行映射和展开,虽然可以提高ROI的压缩质量,但远离ROI的区域的图像质量迅速下降。
发明内容
有鉴于此,本公开提出了一种图像处理方法和装置。
根据本公开的一方面,提供了一种基于立方体贴图的图像处理方法,包括:将输入的三维模型贴图进行非对称立方体贴图映射,所述非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同;将经过非对称立方体贴图映射的三维模型贴图展开得到二维平面展开图。
在一种可能的实现方式中,将输入的三维模型贴图进行非对称立方体贴图映射,包括:
从非对称立方体贴图的中心进行映射,使得输入的三维模型贴图表面的像素与所述非对称立方体贴图的表面的像素对应,所述输入的三维模型贴图为普通立方体贴图,所述非对称立方体贴图与普通立方体贴图的映射中心的位置不同。
在一种可能的实现方式中,将输入的三维模型贴图进行非对称立方体贴图映射,还包括:
从普通立方体贴图的中心进行映射,使得输入的三维模型贴图表面的像素与所述普通立方体贴图的表面的像素对应,所述输入的三维模型贴图为球模型,所述普通立方体贴图与球模型的映射中心的位置相同;
从非对称立方体贴图的中心进行映射,使得所述普通立方体贴图表面的像素与所述非对称立方体贴图的表面的像素对应,所述非对称立方体贴图与普通立方体贴图的映射中心的位置不同。
在一种可能的实现方式中,将输入的三维模型贴图进行非对称立方体贴图映射,包括:
从非对称立方体贴图的中心进行映射,使得输入的三维模型贴图的表面的像素与所述非对称立方体贴图的表面的像素对应,所述输入的三维模型贴图为球模型,所述非对称立方体贴图与球模型的映射中心的位置不同。
在一种可能的实现方式中,将经过非对称立方体贴图映射的三维模型贴图展开得到二维平面展开图,包括:
将非对称立方体贴图的表面的像素与所述二维平面展开图的像素对应。
在一种可能的实现方式中,该方法还包括:
根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称立方体贴图的三维坐标之间的第一映射关系;
根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定所述非对称立方体贴图的三维坐标与所述二维平面展开图的二维坐标之间的第二映射关系。
在一种可能的实现方式中,该方法还包括:
确定球模型的极坐标与普通立方体贴图的三维坐标之间的第三映射关系;
根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称立方体贴图的三维坐标之间的第一映射关系;
根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定所述非对称立方体贴图的三维坐标与所述二维平面展开图的二维坐标之间的第二映射关系。
在一种可能的实现方式中,该方法还包括:
根据非对称立方体贴图与球模型的映射中心的偏移量,确定非对称立方体贴图的三维坐标与球模型的极坐标之间的第四映射关系;
根据非对称立方体贴图与球模型的映射中心的偏移量,确定所述非对称立方体贴图的三维坐标与所述二维平面展开图的二维坐标之间的第五映射关系。
根据本公开的另一方面,提供了一种图像处理方法,包括:
将输入的三维模型贴图进行非对称球模型映射,所述非对称球模型与输入的三维模型贴图的映射中心的位置不同;
将经过非对称球模型映射的三维模型贴图展开得到二维平面展开图。
根据本公开的另一方面,提供了一种图像处理方法,包括:
采用本公开任一实施例所述的图像处理方法对输入的三维模型贴图进行映射和展开,得到二维平面展开图;
对所述二维平面展开图进行转码。
根据本公开的另一方面,提供了一种图像处理方法,包括:
采用本公开任一实施例所述的图像处理方法对输入的三维模型贴图进行映射和展开,得到二维平面展开图;
对所述二维平面展开图进行转码;
将转码后的图像发送给客户端;
将非对称立方体贴图与输入的三维模型贴图的映射中心的偏移量发送给所述客户端,以使得所述客户端根据所述转码后的图像和所述偏移量进行渲染。
根据本公开的另一方面,提供了一种图像处理方法,包括:
接收转码后的图像;
接收偏移量,所述偏移量为转码端的非对称立方体贴图与输入的三维模型贴图的映射中心的偏移量,所述非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同;
对收到的图像进行解码;
根据所述偏移量对解码后的图像进行渲染。
在一种可能的实现方式中,根据所述偏移量对解码后的图像进行渲染包括以下任一方式:
对解码后的图像进行普通立方体贴图,根据所述偏移量对所述普通立方体贴图进行渲染;或
根据所述偏移量将解码后的图像反映射为普通立方体贴图,对所述普通立方体贴图进行渲染;或
根据所述偏移量将解码后的图像反映射为球模型,对所述球模型进行渲染。
根据本公开的另一方面,提供了一种全景视频图像的处理方法,还包括:
沿着选定的至少一个方向,采用本公开任一实施例所述的基于立方体贴图映射的图像处理方法对全景视频图像进行处理,以得到与至少一个方向对应的至少一个视频流。
根据本公开的另一方面,提供了一种全景视频图像的处理方法,包括:
确定用户视角所处的目标方向;
接收采用本公开任一实施例所述的全景视频图像的处理方法所得到的与所述目标方向对应的视频流。
根据本公开的另一方面,提供了一种图像处理装置,包括:
第一映射模块,用于将输入的三维模型贴图进行非对称立方体贴图映射,所述非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同;
第一展开模块,用于将经过非对称立方体贴图映射的三维模型贴图展开得到二维平面展开图。
在一种可能的实现方式中,所述第一映射模块包括:
第一映射子模块,用于从非对称立方体贴图的中心进行映射,使得输入的三维模型贴图表面的像素与所述非对称立方体贴图的表面的像素对应,所述输入的三维模型贴图为普通立方体贴图,所述非对称立方体贴图与普通立方体贴图的映射中心的位置不同。
在一种可能的实现方式中,所述第一映射模块还包括:
第二映射子模块,用于从普通立方体贴图的中心进行映射,使得输入的三维模型贴图表面的像素与所述普通立方体贴图的表面的像素对应,所述输入的三维模型贴图为球模型,所述普通立方体贴图与球模型的映射中心的位置相同;从非对称立方体贴图的中心进行映射,使得所述普通立方体贴图表面的像素与所述非对称立方体贴图的表面的像素对应,所述非对称立方体贴图与普通立方体贴图的映射中心的位置不同。
在一种可能的实现方式中,所述第一映射模块还包括:
第三映射子模块,用于从非对称立方体贴图的中心进行映射,使得输入的三维模型贴图的表面的像素与所述非对称立方体贴图的表面的像素对应,所述输入的三维模型贴图为球模型,所述非对称立方体贴图与球模型的映射中心的位置不同。
在一种可能的实现方式中,所述第一展开模块还用于将非对称立方体贴图的表面的像素与所述二维平面展开图的像素对应。
在一种可能的实现方式中,该装置还包括:
第一确定模块,用于根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称立方体贴图的三维坐标之间的第一映射关系;
第二确定模块,用于根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定所述非对称立方体贴图的三维坐标与所述二维平面展开图的二维坐标之间的第二映射关系。
在一种可能的实现方式中,该装置还包括:
第三确定模块,用于确定球模型的极坐标与普通立方体贴图的三维坐标之间的第三映射关系;
第一确定模块,用于根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称立方体贴图的三维坐标之间的第一映射关系;
第二确定模块,用于根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定所述非对称立方体贴图的三维坐标与所述二维平面展开图的二维坐标之间的第二映射关系。
在一种可能的实现方式中,该装置还包括:
第四确定模块,用于根据非对称立方体贴图与球模型的映射中心的偏移量,确定非对称立方体贴图的三维坐标与球模型的极坐标之间的第四映射关系;
第五确定模块,用于根据非对称立方体贴图与球模型的映射中心的偏移量,确定所述非对称立方体贴图的三维坐标与所述二维平面展开图的二维坐标之间的第五映射关系。
根据本公开的另一方面,提供了一种图像处理装置,包括:
第二映射模块,用于将输入的三维模型贴图进行非对称球模型映射,所述非对称球模型与输入的三维模型贴图的映射中心的位置不同;
第二展开模块,用于将经过非对称球模型映射的三维模型贴图展开得到二维平面展开图。
根据本公开的另一方面,提供了一种图像处理装置,包括:
图像处理模块,用于采用本公开任一实施例所述的图像处理装置对输入的三维模型贴图进行映射和展开,得到二维平面展开图;
转码模块,用于对所述二维平面展开图进行转码。
根据本公开的另一方面,提供了一种基于立方体贴图的图像处理装置,包括:
图像处理模块,用于采用本公开任一实施例所述的图像处理装置对输入的三维模型贴图进行映射和展开,得到二维平面展开图;
转码模块,用于对所述二维平面展开图进行转码;
第一发送模块,用于将转码后的图像发送给客户端;
第二发送模块,用于将非对称立方体贴图与输入的三维模型贴图的映射中心的偏移量发送给所述客户端,以使得所述客户端根据所述转码后的图像和所述偏移量进行渲染。
根据本公开的另一方面,提供了一种图像处理装置,包括:
第一接收模块,用于接收转码后的图像;
第二接收模块,用于接收偏移量,所述偏移量为转码端的非对称立方体贴图与输入的三维模型贴图的映射中心的偏移量,所述非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同;
解码模块,用于对收到的图像进行解码;
渲染模块,用于根据所述偏移量对解码后的图像进行渲染。
在一种可能的实现方式中,所述渲染模块包括以下任意一个:
第一渲染子模块,用于对解码后的图像进行普通立方体贴图,根据所述偏移量对所述普通立方体贴图进行渲染;或
第二渲染子模块,用于根据所述偏移量将解码后的图像反映射为普通立方体贴图,对所述普通立方体贴图进行渲染;或
第三渲染子模块,用于根据所述偏移量将解码后的图像反映射为球模型,对所述球模型进行渲染。
根据本公开的另一方面,提供了一种全景视频图像的处理系统,包括:
如本公开任一实施例所述的图像处理装置,用于沿着选定的至少一个方向对全景视频图像进行处理,以得到与至少一个方向对应的至少一个视频流。
根据本公开的另一方面,提供了一种全景视频图像的处理系统,包括:
方向确定模块,用于确定用户视角所处的目标方向;
接收模块,用于接收采用本公开任一实施例所述的全景视频图像的处理系统所得到的与所述目标方向对应的视频流。
由于非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同,将输入的三维模型贴图进行非对称立方体贴图映射并在二维平面展开,能够在非对称立方体贴图的一个面中保留图像的分辨率,在其他面中降低图像的分辨率,从而有利于在用户的ROI保持较高的图像分辨率,还可以使得远离ROI的区域分辨率缓慢下降,从而降低了二维平面展开图的整体的分辨率,减少后续处理的数据量。
根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
图1为基于三维模型映射和二维平面展开的全景视频处理流程图。
图2a示出根据本公开一实施例的基于立方体贴图的图像处理方法的流程图。
图2b示出根据本公开一实施例的图像处理方法的流程图。
图3a和图3b示出根据本公开一实施例的图像处理方法的流程图。
图4示出根据本公开一实施例的图像处理方法的流程图。
图5示出根据本公开一实施例的全景视频图像的处理方法的流程图。
图6示出根据本公开一实施例的全景视频图像的处理方法的流程图。
图7为球到普通立方体贴图映射的基本原理图。
图8为普通Cubemap的二维视图。
图9为非对称cubemap的二维视图。
图10为非对称cubemap的三维视图。
图11为非对称cubemap的边长计算的示意图。
图12为非对称cubemap映射展开的原理的示意图。
图13为本公开一示例中测试视频的一帧的映射结果的示意图。
图14a示出根据本公开一实施例的基于立方体贴图的图像处理装置的结构框图。
图14b示出根据本公开一实施例的基于立方体贴图的图像处理装置的另一结构框图。
图15a示出根据本公开一实施例的图像处理装置的结构框图。
图15b示出根据本公开一实施例的图像处理装置的另一结构框图。
图16a和图16b示出根据本公开一实施例的图像处理装置的结构框图。
图17示出根据本公开一实施例的图像处理装置的结构框图。
图18示出根据本公开一实施例的全景视频图像的处理系统的结构框图。
图19示出非对称立方体贴图的映射方式的比较图。
图20示出非对称球模型的映射方式的比较图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
图1为基于三维模型映射和二维平面展开的全景视频处理流程图。如图1所示,该全景视频处理流程可以包括:
转码端(也可以称为映射端)在收到输入的VR(Virtual Reality,虚拟现实)全景视频后,首先建立三维模型,并通过映射方法得到输入视频在新模型上的映射(S11)。然后,将三维模型按一定规则进行二维平面展开(S12)。后续,将二维平面展开图送到编码器中进行编码(S13)。
用户终端(例如客户端)在收到编码码流后,首先进行解码恢复出二维平面展开图(S14)。然后,根据二维平面展开图按照和转码端一致的方法进行三维模型重构(S15)。最后,用重构出的三维模型,根据用户的观看视角进行输出图像的渲染(S16)。
图2a示出根据本公开一实施例的基于立方体贴图的图像处理方法的流程图。如图2a所示,该方法可以包括:
步骤201、将输入的三维模型贴图进行非对称立方体贴图映射,所述非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同。例如,如图9和图11所示,非对称立方体贴图与普通立方体贴图的映射中心具有一定的偏移量。
步骤202、将经过非对称立方体贴图映射的三维模型贴图展开得到二维平面展开图。
参见图1,该方法可以应用于转码端例如服务器中。
在本实施例中,输入的三维模型贴图可以包括多种类型。例如,将二维的原始图像经过球映射例如Equirectangular映射得到三维模型贴图。再如,将二维的原始图像经过普通立方体贴图(ordinary cubemap)映射得到三维模型贴图。二维的原始图像可以为例如VR全景视频、非全景(如180度的)视频、三维全景视频等图像。
图7为球到普通立方体贴图映射的基本原理图。如图7所示,该映射的基本原理是:将球表面像素坐标与所映射到的封闭空间体表面像素坐标对应起来。图7中空间体分别是球体和立方体,它们都关于坐标原点中心对称。从坐标原点作一条射线,将分别通过立方体和球体表面,这样就可以将球表面像素坐标与立方体表面像素坐标对应起来。普通立方体贴图映射是以与球模型的中心点相同的坐标原点为映射中心,而非对称立方体贴图(asymmetric cubemap)映射是以与球模型的中心点具有一定偏移的坐标原点为映射中心,将球表面的像素映射到立方体表面的像素。
在一种可能的实现方式中,在步骤201中,将输入的三维模型贴图进行非对称立方体贴图映射包括以下示例的任意一一种:
示例一、输入的三维模型贴图为普通立方体贴图。
从非对称立方体贴图的中心进行映射,使得普通立方体贴图表面的像素与所述非对称立方体贴图的表面的像素对应,所述非对称立方体贴图与普通立方体贴图的映射中心的位置不同。
示例二、输入的三维模型贴图为球模型。
参见图10,从普通立方体贴图的中心进行映射,使得球模型表面的像素与所述普通立方体贴图的表面的像素对应;从非对称立方体贴图的中心进行映射,使得普通立方体贴图的表面的像素与所述非对称立方体贴图的表面的像素对应。其中,所述非对称立方体贴图与普通立方体贴图的映射中心的位置不同,所述普通立方体贴图与球模型的映射中心的位置相同。
示例三、输入的三维模型贴图为球模型。
从非对称立方体贴图的中心进行映射,使得球模型与所述非对称立方体贴图的表面的像素对应,所述非对称立方体贴图与球模型的映射中心的位置不同。
在一种可能的实现方式中,步骤202可以包括:将非对称立方体贴图的表面的像素与所述二维平面展开图的像素对应。
在一种可能的实现方式中,对于上述步骤201的不同示例,该基于立方体贴图的图像处理方法还包括相应的确定不同模型之间的映射关系的步骤:
对于示例一,该方法还包括:根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称立方体贴图的三维坐标之间的第一映射关系;根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定所述非对称立方体贴图的三维坐标与所述二维平面展开图的二维坐标之间的第二映射关系。例如,第一映射关系可以参见下述实施例中的表1。第二映射关系可以参见下述实施例中的表2。
这样,在示例一中,可以根据第一映射关系从非对称立方体贴图的中心进行映射,使得普通立方体贴图的表面的像素与所述非对称立方体贴图的表面的像素对应。并且,根据第二映射关系将经过非对称立方体贴图映射的三维模型贴图在二维平面展开。
对于示例二,该方法还包括:确定球模型的极坐标与普通立方体贴图的三维坐标之间的第三映射关系;根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称立方体贴图的三维坐标之间的第一映射关系;根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定所述非对称立方体贴图的三维坐标与所述二维平面展开图的二维坐标之间的第二映射关系。例如,第三映射关系可以参见下述实施例中的式1和式2。
这样,在示例二中,可以根据第三映射关系从普通立方体贴图的中心进行映射,使得球模型表面的像素与所述普通立方体贴图的表面的像素对应。根据第一映射关系从非对称立方体贴图的中心进行映射,使得普通立方体贴图表面的像素与所述非对称立方体贴图的表面的像素对应。并且,根据第二映射关系将经过非对称立方体贴图映射的三维模型贴图在二维平面展开。
对于示例三,该方法还包括:根据非对称立方体贴图与球模型的映射中心的偏移量,确定非对称立方体贴图的三维坐标与球模型的极坐标之间的第四映射关系;根据非对称立方体贴图与球模型的映射中心的偏移量,确定所述非对称立方体贴图的三维坐标与所述二维平面展开图的二维坐标之间的第五映射关系。
这样,在示例三中,可以根据第四映射关系从非对称立方体贴图的中心进行映射,使得球模型表面的像素与所述非对称立方体贴图的表面的像素对应。并且,根据第五映射关系将经过非对称立方体贴图映射的三维模型贴图在二维平面展开。
本实施例中,非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同,将输入的三维模型贴图进行非对称立方体贴图映射并在二维平面展开,能够在非对称立方体贴图的一个面中保留图像的分辨率,在其他面中降低图像的分辨率,从而有利于在用户的ROI例如主视角保持较高的图像分辨率,还可以使得远离ROI的区域分辨率缓慢下降,从而降低了二维平面展开图的整体的分辨率,减少后续处理的数据量。与金字塔映射方式相比,本公开的图像质量在更大的范围内下降得非常缓慢。
图2b示出根据本公开一实施例的图像处理方法的流程图。如图2b所示,该方法可以包括:
步骤701、将输入的三维模型贴图进行非对称球模型映射,所述非对称球模型与输入的三维模型贴图的映射中心的位置不同;
步骤702、将经过非对称球模型映射的三维模型贴图展开得到二维平面展开图。
参见图1,该方法可以应用于转码端例如服务器中。该方法中映射的基本原理可以见见上述实施例的相关描述。与非对称立方体贴图映射类似,非对称球模型映射以与普通球模型的中心点具有一定偏移的坐标原点为映射中心,将普通球模型或普通立方体贴图表面的像素与非对称球模型(或称为偏移球模型)表面的像素对应起来。
在一种可能的实现方式中,在步骤701中,将输入的三维模型贴图进行非对称球模型映射,包括以下示例的任意一一种:
示例四、输入的三维模型贴图为普通立方体贴图。
从非对称球模型的中心进行映射,使得输入的三维模型贴图表面的像素与所述非对称球模型的表面的像素对应,所述输入的三维模型贴图为普通立方体贴图,所述非对称球模型与普通立方体贴图的映射中心的位置不同。
示例五、输入的三维模型贴图为普通球模型。
从普通立方体贴图的中心进行映射,使得输入的三维模型贴图表面的像素与所述普通立方体贴图的表面的像素对应,所述输入的三维模型贴图为普通球模型,所述普通立方体贴图与普通球模型的映射中心的位置相同;
从非对称球模型的中心进行映射,使得所述普通立方体贴图表面的像素与所述非对称球模型的表面的像素对应,所述非对称球模型与普通立方体贴图的映射中心的位置不同。
示例六、输入的三维模型贴图为普通球模型。
从非对称球模型的中心进行映射,使得输入的三维模型贴图的表面的像素与所述非对称球模型的表面的像素对应,所述输入的三维模型贴图为普通球模型,所述非对称球模型与普通球模型的映射中心的位置不同。
在一种可能的实现方式中,步骤702可以包括:将非对称球模型的表面的像素与所述二维平面展开图的像素对应。
在一种可能的实现方式中,对于上述步骤701的不同示例,该图像处理方法还包括相应的确定不同模型之间的映射关系的步骤:
对于示例四,该方法还包括:
根据非对称球模型与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称球模型的极坐标之间的第六映射关系;
根据非对称球模型与普通立方体贴图的映射中心的偏移量,确定所述非对称球模型的极坐标与所述二维平面展开图的二维坐标之间的第七映射关系。
这样,在示例四中,可以根据第六映射关系从非对称球模型的中心进行映射,使得普通立方体贴图的表面的像素与非对称球模型的表面的像素对应。并且,根据第七映射关系将经过非对称球模型映射的三维模型贴图在二维平面展开。
对于示例五,该方法还包括:
确定普通球模型的极坐标与普通立方体贴图的三维坐标之间的第八映射关系;
根据非对称球模型与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称球模型的极坐标之间的第六映射关系;
根据非对称球模型与普通立方体贴图的映射中心的偏移量,确定所述非对称球模型的极坐标与所述二维平面展开图的二维坐标之间的第七映射关系。
这样,在示例五中,可以根据第八映射关系从普通立方体贴图的中心进行映射,使得普通球模型表面的像素与所述普通立方体贴图的表面的像素对应。根据第六映射关系从非对称球模型的中心进行映射,使得普通立方体贴图的表面的像素与非对称球模型的表面的像素对应。并且,根据第七映射关系将经过非对称球模型映射的三维模型贴图在二维平面展开。
对于示例六,该方法还包括:
根据非对称球模型与普通球模型的映射中心的偏移量,确定非对称球模型的极坐标与普通球模型的极坐标之间的第九映射关系;
根据非对称球模型与普通球模型的映射中心的偏移量,确定所述非对称球模型的极坐标与所述二维平面展开图的二维坐标之间的第十映射关系。
这样,在示例六中,可以根据第九映射关系从非对称球模型的中心进行映射,使得普通球模型表面的像素与非对称球模型的表面的像素对应。并且,根据第十映射关系将经过非对称球模型映射的三维模型贴图在二维平面展开。
图3a示出根据本公开一实施例的图像处理方法的流程图。如图3a所示,该方法可以包括:
步骤301、采用本公开上述实施例中所述的图像处理方法对输入的三维模型贴图进行映射和展开(参见步骤201和步骤202的相关描述,或者步骤701和步骤702的相关描述),得到二维平面展开图;
步骤302、对所述二维平面展开图进行转码。
在另一实施例中,如图3b所示,提供一种图像处理方法,该方法除了包括步骤302和步骤302之外,还可以包括:
步骤303、将转码后的图像发送给客户端;
步骤304、将非对称立方体贴图与输入的三维模型贴图的映射中心的偏移量发送给所述客户端,以使得所述客户端根据所述转码后的图像和所述偏移量进行渲染。
在转码端,对输入的三维模型贴图进行非对称立方体映射并在二维平面展开,得到二维平面展开图后,可以对二维平面展开图进行转码(或称为编码)。然后,转码端可以将转码后的图像发送至客户端。并且转码端还可以将非对称立方体贴图与输入的三维模型贴图的映射中心的偏移量发送给所述客户端。这样,客户端可以对收到的图像进行解码,再根据所述偏移量对解码后的图像进行渲染。其中,转码端向客户端发送偏移量的方式可以有多种,例如向客户端发送携带偏移量的URL(Uniform Resource Locator,统一资源定位符),由客户端解析得到偏移量。
本实施例中,非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同,将输入的三维模型贴图进行非对称立方体贴图映射并在二维平面展开,在用户主视角保持较高的分辨率,降低了二维平面展开图的整体的分辨率,因此能够在保证图像质量的同时降低转码的数据处理量,进而减少从转码端到客户端的数据传输量,以及减少客户端进行解码、渲染等操作时的数据处理量。与金字塔映射方式相比,本公开的图像质量在更大的范围内下降得非常缓慢。
图4示出根据本公开一实施例的图像处理方法的流程图。如图4所示,该方法可以包括:
步骤401、接收转码后的图像;
步骤402、接收偏移量,所述偏移量为转码端的非对称立方体贴图与输入的三维模型贴图的映射中心的偏移量,所述非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同;
步骤403、对收到的图像进行解码;
步骤404、根据所述偏移量对解码后的图像进行渲染。
在转码端,对输入的三维模型贴图进行非对称立方体映射并在二维平面展开,得到二维平面展开图后,可以对二维平面展开图进行转码(或称为编码)。然后,转码端可以将转码后的图像发送至客户端。并且转码端还可以将非对称立方体贴图与输入的三维模型贴图的映射中心的偏移量发送给所述客户端。这样,客户端收到转码后的图像和偏移量后,可以对收到的图像进行解码,再根据所述偏移量对解码后的图像进行渲染。
在一种可能的实现方式中,在步骤404中,根据所述偏移量对解码后的图像进行渲染包括以下任一方式:
对解码后的图像进行普通立方体贴图,根据所述偏移量对所述普通立方体贴图进行渲染;或
根据所述偏移量将解码后的图像反映射为普通立方体贴图,对所述普通立方体贴图进行渲染;或
根据所述偏移量将解码后的图像反映射为球模型,对所述球模型进行渲染。
此外,在实际应用中,转码端的非对称立方体贴图映射的偏移参数(如偏移量offset)与客户端的渲染参数需要是统一的。因此,需要在用户终端也设置相应的参数才能够得到正确的渲染。例如,转码端可以通过URL将偏移量发送给用户终端。用户终端收到该偏移量后,可以根据该参数对图像进行渲染。渲染的方式有多种:
例如,用户终端可以根据偏移量重构非对称立方体贴图,确定该非对称立方体贴图的映射中心的坐标。然后,根据该非对称立方体的映射中心的坐标,对贴图后的模型进行渲染。
再如,先根据偏移量反映射得到立方体贴图或者球模型的三维模型,然后再进行渲染。
在一种可能的实现方式中,接收的偏移量也可以为转码端的非对称球模型与输入的三维模型贴图的映射中心的偏移量。在这种实现方式中,所述非对称球模型与输入的三维模型贴图的映射中心的位置不同。这种情况下,在步骤404中,根据所述偏移量对解码后的图像进行渲染可以包括:根据所述偏移量将解码后的图像反映射为普通球模型,对所述普通球模型进行渲染。此外,也可以不反映射,而是直接在偏移位置非对称球模型进行渲染。
本实施例中,非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同,将输入的三维模型贴图进行非对称立方体贴图映射并在二维平面展开,在用户主视角保持较高的分辨率,降低了二维平面展开图的整体的分辨率,因此能够在保证图像质量的同时降低转码的数据处理量,进而减少从转码端到客户端的数据传输量,以及减少客户端进行解码、渲染等操作时的数据处理量。与金字塔映射方式相比,本公开的图像质量在更大的范围内下降得非常缓慢。
图5示出根据本公开一实施例的全景视频图像的处理方法的流程图。如图5所示,该方法可以包括:沿着选定的至少一个方向,采用上述任一实施例中所述的基于立方体贴图映射的图像处理方法(参见图2a至图4及其相关描述)对全景视频图像进行处理,以得到与至少一个方向对应的至少一个视频流。
在一种示例中,该方法具体可以以下步骤:
步骤501、在转码端,可以沿着选定的不同方向,分别对输入的全景视频图像进行非对称立方体贴图映射。
步骤502、将在各方向进行非对称立方体贴图映射得到的图像分别展开,得到二维平面展开图。
步骤503、对所述二维平面展开图进行转码,得到多个视频流。
这多个视频流,具有在ROI分辨率高在其他区域分辨率低的特点。根据用户的不同视角,转码端可以向客户端返回对应的视频流,以保证用户在各个视角(即ROI)都能够观看到清晰的全景视频图像。
图6示出根据本公开一实施例的全景视频图像的处理方法的流程图。如图6所示,该方法可以包括:
步骤601、确定用户视角所处的目标方向;
步骤602、接收上述实施例中所述的全景视频图像的处理方法所得到的与所述目标方向对应的视频流。
在转码端,可以沿着选定的不同方向,分别对输入的全景视频图像进行非对称立方体贴图映射和展开,得到多个视频流。这多个视频流,具有在ROI分辨率高,在其他区域分辨率低的特点。
在本公开中,转码端可以设置于服务器中,也可以与服务器分别独立设置。
在客户端,确定用户视角所处的目标方向后,可以向服务器发送该目标方向的播放请求。服务器收到播放请求后可以从转码端获取该目标方向所对应的视频流并发送给客户端,从而实现为用户的不同视角切换不同的视频流,以保证用户在各个视角(即ROI)都能够观看到清晰的全景视频图像。
另一种实现方式是,转码端生成各个方向对应的视频流之后,保存各方向对应的视频流,并将各方向对应的视频流的下载地址发送给客户端。客户端确定用户视角所处的目标方向后,可以查找到该目标方向对应的下载地址,再从该下载地址下载该目标方向对应的视频流。
本公开对普通立方体贴图(Cubemap)模型进行改进,通过一种非对称Cubemap模型来解决Pyramid模型出现的问题。非对称Cubemap与普通Cubemap相比,映射得到的分辨率是非对称的,部分保留普通Cubemap分辨率,部分分辨率下降。此外,非对称Cubemap与普通Cubemap的映射中心具有一定的偏移量,也可以将非对称Cubemap称为偏移立方体贴图(Biascubemap)。下面,以在普通Cubemap基础上的改进为例来说明非对称cubemap的映射原理。
图8为普通Cubemap的二维视图。图9为非对称cubemap的二维视图。图10为非对称cubemap的三维视图。图9可以看作是图10的一个俯视图,表示非对称cubemap的映射中心相对于普通Cubemap的映射中心在Z轴偏移。将图9中的A”B”C”D”看作是普通Cubemap。如果需要生成一个非对称cubemap,首先定位非对称cubemap的映射中心F。非对称cubemap的映射中心F可以由普通Cubemap的映射中心E偏移得到。例如,F相对于E向下偏移的距离为L。在实际应用中,L是可以根据实际需求灵活配置的参数。在F的位置确定后,通过F作对角线A”D”和C”B”的平行线,分别与边C”D”相交于点G”、H”。后续,可以通过G”H”这条边来构建出非对称cubemap的整体G”H”I”J”。
随后,在得到非对称cubemap的位置和形状G”H”I”J”后,能够将输入的经过Equirectangular映射的三维模型贴图在以F为中心进行非对称cubemap映射,从而得到一个非对称cubemap的6面体(立方体)。该6面体的边长与普通Cubemap的立方体不一样。如非对称cubemap的立方体的边长为G”H”,普通Cubemap的立方体的边长为C”D”。
非对称cubemap的核心参数为偏移的距离L。L可以直接决定非对称cubemap的立方体的边长和展开的面积。假设图9中EF的距离为正方形A”B”C”D”边长的1/4,经过非对称cubemap映射得到的立方体的边长G”H”为经过普通Cubemap映射得到的立方体的边长C”D”的1/2。进而,整个非对称cubemap映射展开后的面积为普通Cubemap映射展开后面积的25%。L越大,非对称cubemap映射得到的立方体展开的面积就越小,这样所需编码码率就会越小,图像损失也会越大。但与金字塔映射相比,非对称cubemap映射展开的图像质量在更大的范围内下降得非常缓慢。
由上可知,非对称cubemap和普通Cubemap的区别在于非对称cubemap的映射位置和映射中心的构建。与普通Cubemap不同,图9中非对称cubemap的映射中心不是E,而是F。E和F之间的距离为L。这样,可以将普通cubemap映射的分辨率保留在G”H”中(普通立方体贴图的G”H”的像素不变地映射到非对称立方体贴图的G”H”的像素)。从G”H”到A”B”映射d分辨率逐渐下降。例如,普通立方体贴图的H”D”和D”L”映射到非对称立方体贴图的I”H”。而L”B”、B”A”、A”K”则映射到非对称立方体贴图的I”J”。
需要注意的是,以上所述的映射原理,是在二维视图的基础上进行描述的。在实际情况中,非对称cubemap映射的构建方式是在三维中进行的。利用上述二维视图的非对称贴图的映射原理,可以得到三维模型的非对称立方体贴图的映射。在图10中采用三维模型中表示图9的二维视图G”H”I”J”和A”B”C”D”的映射原理。图9的二维正方形G”H”I”J”对应于图10中的立方体GHIJG'H'I'J'。GHG'H'和CDC'D'在同一平面上。而图9中正方形A”B”C”D”对应于图10中的立方体贴图ABCDA'B'C'D'。从GHIJG'H'I'J'的中心F进行映射,以使得立方体贴图GHIJG'H'I'J表面的每个像素都与ABCDA'B'C'D'表面的像素对应。从ABCDA'B'C'D'的中心E进行映射,以使得ABCDA'B'C'D'表面的每个像素与球表面的像素对应。通过上述两个步骤,可以获得立方体贴图GHIJG'H'I'J和球之间的映射。如果假设图9中的L是A”B”的长度的1/4,可以得到G”H”的长度是C”D”的长度的1/2。在这种实现中,后面ABA'B'通过映射后,水平和垂直分辨率都降采样3倍。
此外,参见图10,还可以从球模型直接映射到非对称Cubemap贴图GHIJG'H'I'J'的表面。在这种方式中,GHIJG'H'I'J'的位置和边长设定方法与上述的第一种非对称Cubemap方式相同。与第一种映射方式不同之处在于,直接通过GHIJG'H'I'J'的中心映射,来得到GHIJG'H'I'J'的六个表面和球模型表面的映射关系,而不用通过ABCDA'B'C'D'过渡。
参见图19,比较上述两种非对称Cubemap贴图映射的不同之处。第一种方式是:先通过非对称Cubemap贴图的中心点B1映射到普通Cubemap贴图表面上的一点D1,然后通过普通Cubemap贴图的中心点A1,找到点D1在球模型表面的对应的点F1。第二种方式是:直接从非对称Cubemap贴图的中心点B1映射到球模型的表面的点E1。这两种非对称Cubemap映射方法不同,在球模型表面得到的点E1和点F1的位置是不一样的。
这两种方式在映射的效果上有一定的区别。在第二种方式中,由于在偏移的位置上直接在球模型表面和非对称Cubemap表面进行映射,映射的结果会产生一定的非线性的弯曲。
另一种扩展的方式参见图20。将非对称Cubemap改变为非对称球模型。将图20在非对称球模型以及原始的普通球模型之间寻找一对一的映射关系。映射方式可以包括多种。第一种方式是:通过非对称球模型的中心点B2映射到普通Cubemap贴图表面上的一点D2。第二种方式是:先通过非对称球模型的中心点B2映射到普通Cubemap贴图表面上的一点D2。然后通过普通Cubemap贴图的中心点A2,找到点D2在普通球模型表面的对应的点F2。第三种方式是:直接从非对称球模型的中心点B2映射到球模型的表面的点E2。第二和第三种方式,在普通球模型表面得到的点E2和点F2的位置也是不一样的。
下面介绍从立方体贴图到二维展开的原理。
普通Cubemap的边长可以根据输入的原始图像计算。例如,输入的原始图像的宽高比例为2:1,根据输入的原始图像可以计算出普通Cubemap的边长。参照图11,CD为普通Cubemap的一个边长,将该边长表示为Lcd,则Lcd=原始图像的宽度除以4。例如,如果原始图像大小为3840x1920,则Lcd=960。
根据普通Cubemap的边长和偏移量offset的绝对值L可以计算出非对称cubemap的边长。参见图11,GH为非对称cubemap模型的立方体的一个边长,将该边长表示为Lgh。如图11所示,Lgh=Lcd(1–2|offset|)。如图12所示,二维平面展开图的矩形的宽为3×Lgh,高为2×Lgh。
下面采用一个示例说明非对称cubemap映射展开的原理:
假设图10中的BD方向与Z轴相同,L是AB的长度的1/4。如图10所示,可以通过下面的公式,得到普通立方体贴图ABCDA'B'C'D'的三维位置(qx,qy,qz)与非对称立方贴图展开的二维位置之间的映射。
表1普通立方体贴图和非对称立方体贴图之间的映射
(qx,qy,qz) | (qx’,qy’,qz’) |
(qx’,qy’,2*qz’–0.5) | qz’>0.25,qz’>=0.5*|qy’|+0.25,qz’>=0.5*|qx’|+0.25 |
(qx’,qy’,(4*qz’-1)/6) | qz’<0.25,qz’<=-1.5*|qx’|+0.25,qz’<=-1.5*|qy’|+0.25 |
(qx’,qy’,qz’+0.5*qx’-0.25) | qx’>0,qx’>=|qy’|,qx’>=2*qz’-0.5,1.5*qx’>=0.25-qz’ |
(qx’,qy’,qz’-0.5*qx’-0.25) | qx’<0,qx’<=-|qy’|,qx’<=0.5-2*qz’,1.5*qx’<=qz’-0.25 |
(qx’,qy’,qz’+0.5*qy’-0.25) | qy’>0,qy’>=|qx’|,qy’>=2*qz’-0.5,1.5*qy’>=0.25-qz’ |
(qx’,qy’,qz’-0.5*qy’-0.25) | qy’<0,qy’<=-|qx’|,qy’<=-2*qz’+0.5,1.5*qy’<=qz’-0.25 |
表2三维的非对称立方体贴图和二维的展开图之间的映射
(qx’,qy’,qz’) | (x,y) |
(0.5–2*y,0.5,0.5–3*x–offset) | 1/3>x>=0,1/2>y>=0 |
(0.5–2*y,1.5–3*x,-0.5–offset) | 2/3>x>=1/3,1/2>y>=0 |
(0.5–2*y,-0.5,3*x–2.5–offset) | 1>x>=2/3,1/2>y>=0 |
(-0.5,2*y–1.5,3*x–0.5–offset) | 1/3>x>=0,1>y>=1/2 |
(3*x–1.5,2*y–1.5,0.5–offset) | 2/3>x>=1/3,1>y>=1/2 |
(0.5,2*y–1.5,2.5–3*x–offset) | 1>x>=2/3,1>y>=1/2 |
在上述表1和表2的等式中,(x,y)是二维展开图中的坐标,对x、y进行归一化处理,将x,y都归一化到0和1之间,参见图12。(qx',qy',qz')是在非对称立方体贴图GHIJG'H'I'J'中对应的三维坐标。(qx,qy,qz)是在立方体贴图ABCDA'B'C'D'中对应的三维坐标。在式1和式2中,根据(qx,qy,qz)计算极坐标可以得到输入的equirectangular映射的三维模型贴图的对应的像素位置。
θ=-arctan(-qx/d,qz/d)/(2×π)+0.5 式1,
其中,d是(qx,qy,qy)的长度,表示对(qx,qy,qy)做归一化处理。是在球模型的极坐标。(qx,qy,qy)为普通cubemap的三维坐标。(qx',qy',qy')为非对称cubemap的三维坐标。其中,arctan表示反余切函数;arcsin表示反正弦函数。
利用上述表1、表2和式1、式2,可以得到输入坐标和输出坐标(x,y)之间的映射。
在上面的示例中,将L的长度设置为AB的长度为1/4,并且将L设置在Z轴的方向上。但是,本领域技术人员应能理解,L可以为其他任意长度,并且可以在任何方向对输入的三维模型贴图进行非对称立方体贴图映射。这样,能够为动态流产生多个非对称立方体贴图映射通道。
此外,所输出的映射的分辨率是基于L的长度的。例如,如果L=1/4*AB,输出的非对称立方体贴图的分辨率将是普通立方体贴图的1/4。在这种情况下,GH的ROI区域的分辨率得以保留,ROI的FOV(field of view,视角)为[-45°,+45°]。非对称立方体贴图映射的优点是,与金字塔映射相比,图像质量在更大的范围内下降得非常缓慢。基于这个优点,可以为动态流产生较少的映射通道(与金字塔的映射通道数量相比)。同时,在发生视图切换时,图像质量也会提高。
如图9和图10所示,非对称cubemap映射在CD这条边90度视角的映射分辨率较高,而在AB这条边90度视角的映射分辨率较低。因此,在实践中,为了使得用户在不同的视角都能感受到高分辨率,可以进行多路的非对称cubemap映射。典型情况下,用户可以在非对称cubemap的映射中心的上、下、左、右、前、后6个方向做6次非对称cubemap映射。
图13为本公开一示例中测试视频的一帧的映射结果的示意图。将测试视频按照上述实施例中的图像处理方法进行非对称立方体贴图映射后,按照图12的展开方式展开,可以得到图13所示的清晰显示效果。
本公开的将输入的三维模型贴图进行非对称cubemap映射的方式,可以将输入的三维模型贴图映射成非对称立方体贴图,并将所述非对称立方体在二维平面展开,能够在用户的ROI例如主视角保持较高的图像分辨率。并且在远离用户ROI的位置,分辨率缓慢下降,从而降低了二维平面展开图的整体的分辨率。与金字塔映射方式相比,本公开的图像质量在更大的范围内下降得非常缓慢,弥补了目前通用的Pyramid映射方式的弱点。
图14a示出根据本公开一实施例的基于立方体贴图的图像处理装置的结构框图。如图14a所示,该基于立方体贴图的图像处理装置包括:
第一映射模块41,用于将输入的三维模型贴图进行非对称立方体贴图映射,所述非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同;
第一展开模块43,用于将经过非对称立方体贴图映射的三维模型贴图展开得到二维平面展开图。
在一种可能的实现方式中,如图14b所示,所述第一映射模块41包括:
第一映射子模块411,用于从非对称立方体贴图的中心进行映射,使得输入的三维模型贴图表面的像素与所述非对称立方体贴图的表面的像素对应,所述输入的三维模型贴图为普通立方体贴图,所述非对称立方体贴图与普通立方体贴图的映射中心的位置不同。
在一种可能的实现方式中,如图14b所示,所述第一映射模块41还包括:
第二映射子模块413,用于从普通立方体贴图的中心进行映射,使得输入的三维模型贴图表面的像素与所述普通立方体贴图的表面的像素对应,所述输入的三维模型贴图为球模型,所述普通立方体贴图与球模型的映射中心的位置相同;从非对称立方体贴图的中心进行映射,使得所述普通立方体贴图表面的像素与所述非对称立方体贴图的表面的像素对应,所述非对称立方体贴图与普通立方体贴图的映射中心的位置不同。
在一种可能的实现方式中,如图14b所示,所述第一映射模块41还包括:
第三映射子模块415,用于从非对称立方体贴图的中心进行映射,使得输入的三维模型贴图的表面的像素与所述非对称立方体贴图的表面的像素对应,所述输入的三维模型贴图为球模型,所述非对称立方体贴图与球模型的映射中心的位置不同。
在一种可能的实现方式中,所述第一展开模块43还用于将非对称立方体贴图的表面的像素与所述二维平面展开图的像素对应。
在一种可能的实现方式中,如图14b所示,所述装置还包括:
第一确定模块51,用于根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称立方体贴图的三维坐标之间的第一映射关系;
第二确定模块53,用于根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定所述非对称立方体贴图的三维坐标与所述二维平面展开图的二维坐标之间的第二映射关系。
在一种可能的实现方式中,如图14b所示,所述装置还包括:
第三确定模块55,用于确定球模型的极坐标与普通立方体贴图的三维坐标之间的第三映射关系。
在一种可能的实现方式中,如图14b所示,所述装置还包括:
第四确定模块57,用于根据非对称立方体贴图与球模型的映射中心的偏移量,确定非对称立方体贴图的三维坐标与球模型的极坐标之间的第四映射关系;
第五确定模块59,用于根据非对称立方体贴图与球模型的映射中心的偏移量,确定所述非对称立方体贴图的三维坐标与所述二维平面展开图的二维坐标之间的第五映射关系。
图15a示出根据本公开一实施例的图像处理装置的结构框图。如图15a所示,该图像处理装置包括:
第二映射模块21,用于将输入的三维模型贴图进行非对称球模型映射,所述非对称球模型与输入的三维模型贴图的映射中心的位置不同;
第二展开模块23,用于将经过非对称球模型映射的三维模型贴图展开得到二维平面展开图。
在一种可能的实现方式中,如图15b所示,所述第二映射模块21包括:
第四映射子模块211,用于从非对称球模型的中心进行映射,使得输入的三维模型贴图表面的像素与所述非对称球模型的表面的像素对应,所述输入的三维模型贴图为普通立方体贴图,所述非对称球模型与普通立方体贴图的映射中心的位置不同。
在一种可能的实现方式中,所述第二映射模块21还包括:
第五映射子模块213,用于从普通立方体贴图的中心进行映射,使得输入的三维模型贴图表面的像素与所述普通立方体贴图的表面的像素对应,所述输入的三维模型贴图为普通球模型,所述普通立方体贴图与普通球模型的映射中心的位置相同;从非对称球模型的中心进行映射,使得所述普通立方体贴图表面的像素与所述非对称球模型的表面的像素对应,所述非对称球模型与普通立方体贴图的映射中心的位置不同。
在一种可能的实现方式中,所述第二映射模块21还包括:
第六映射子模块215,用于从非对称球模型的中心进行映射,使得输入的三维模型贴图的表面的像素与所述非对称球模型的表面的像素对应,所述输入的三维模型贴图为普通球模型,所述非对称球模型与普通球模型的映射中心的位置不同。
在一种可能的实现方式中,所述第二展开模块23还用于将非对称球模型的表面的像素与所述二维平面展开图的像素对应。
在一种可能的实现方式中,所述装置还包括:
第六确定模块31,用于根据非对称球模型与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称球模型的极坐标之间的第六映射关系;
第七确定模块33,用于根据非对称球模型与普通立方体贴图的映射中心的偏移量,确定所述非对称球模型的极坐标与所述二维平面展开图的二维坐标之间的第七映射关系。
在一种可能的实现方式中,所述装置还包括:
第八确定模块35,用于确定普通球模型的极坐标与普通立方体贴图的三维坐标之间的第八映射关系。
在一种可能的实现方式中,所述装置还包括:
第九确定模块37,用于根据非对称球模型与普通球模型的映射中心的偏移量,确定非对称球模型的极坐标与普通球模型的极坐标之间的第九映射关系;
第十确定模块39,用于根据非对称球模型与普通球模型的映射中心的偏移量,确定所述非对称球模型的极坐标与所述二维平面展开图的二维坐标之间的第十映射关系。
图16a示出根据本公开一实施例的图像处理装置的结构框图。如图16a所示,该装置包括:
图像处理模块61,用于采用上述实施例所述的图像处理装置,对输入的三维模型贴图进行映射和展开,得到二维平面展开图;
转码模块63,用于对所述二维平面展开图进行转码。
在另一实施例中,如图16b所示,还提供一种图像处理装置。该装置除了包括图像处理模块61和转码模块63之外,还包括:
第一发送模块65,用于将转码后的图像发送给客户端;
第二发送模块67,用于将非对称立方体贴图与输入的三维模型贴图的映射中心的偏移量发送给所述客户端,以使得所述客户端根据所述转码后的图像和所述偏移量进行渲染。
图17示出根据本公开一实施例的图像处理装置的结构框图。如图17所示,该装置包括:
第一接收模块71,用于接收转码后的图像;
第二接收模块73,用于接收偏移量,所述偏移量为转码端的非对称立方体贴图与输入的三维模型贴图的映射中心的偏移量,所述非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同;
解码模块75,用于对收到的图像进行解码;
渲染模块77,用于根据所述偏移量对解码后的图像进行渲染。
在一种可能的实现方式中,渲染模块77包括以下子模块中的任意一个:
第一渲染子模块,用于对解码后的图像进行普通立方体贴图,根据所述偏移量对所述普通立方体贴图进行渲染;或
第二渲染子模块,用于根据所述偏移量将解码后的图像反映射为普通立方体贴图,对所述普通立方体贴图进行渲染;或
第三渲染子模块,用于根据所述偏移量将解码后的图像反映射为球模型,对所述球模型进行渲染。
本公开一实施例提供一种全景视频图像的处理系统。该全景视频图像的处理系统可以应用于转码端,该系统可以包括:如上述实施例中所述的基于立方体贴图映射的图像处理装置。所述基于立方体贴图映射的图像处理装置用于沿着选定的至少一个方向对全景视频图像进行处理,以得到与至少一个方向对应的至少一个视频流。
图18示出根据本公开一实施例的全景视频图像的处理系统的结构框图。如图18所示,该全景视频图像的处理系统可以应用于转码端,该系统可以包括:
方向确定模块81,用于确定用户视角所处的目标方向;
接收模块83,用于接收上述实施例的全景视频图像的处理系统所得到的与所述目标方向对应的视频流。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本公开可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (44)
1.一种基于立方体贴图的图像处理方法,其特征在于,包括:
将输入的三维模型贴图进行非对称立方体贴图映射,所述非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同;
将经过非对称立方体贴图映射的三维模型贴图展开得到二维平面展开图。
2.根据权利要求1所述的方法,其特征在于,将输入的三维模型贴图进行非对称立方体贴图映射,包括:
从非对称立方体贴图的中心进行映射,使得输入的三维模型贴图表面的像素与所述非对称立方体贴图的表面的像素对应,所述输入的三维模型贴图为普通立方体贴图,所述非对称立方体贴图与普通立方体贴图的映射中心的位置不同。
3.根据权利要求1所述的方法,其特征在于,将输入的三维模型贴图进行非对称立方体贴图映射,还包括:
从普通立方体贴图的中心进行映射,使得输入的三维模型贴图表面的像素与所述普通立方体贴图的表面的像素对应,所述输入的三维模型贴图为球模型,所述普通立方体贴图与球模型的映射中心的位置相同;
从非对称立方体贴图的中心进行映射,使得所述普通立方体贴图表面的像素与所述非对称立方体贴图的表面的像素对应,所述非对称立方体贴图与普通立方体贴图的映射中心的位置不同。
4.根据权利要求1所述的方法,其特征在于,将输入的三维模型贴图进行非对称立方体贴图映射,包括:
从非对称立方体贴图的中心进行映射,使得输入的三维模型贴图的表面的像素与所述非对称立方体贴图的表面的像素对应,所述输入的三维模型贴图为球模型,所述非对称立方体贴图与球模型的映射中心的位置不同。
5.根据权利要求2至4中任一项所述的方法,其特征在于,将经过非对称立方体贴图映射的三维模型贴图展开得到二维平面展开图,包括:
将非对称立方体贴图的表面的像素与所述二维平面展开图的像素对应。
6.根据权利要求2所述的方法,其特征在于,还包括:
根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称立方体贴图的三维坐标之间的第一映射关系;
根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定所述非对称立方体贴图的三维坐标与所述二维平面展开图的二维坐标之间的第二映射关系。
7.根据权利要求3所述的方法,其特征在于,还包括:
确定球模型的极坐标与普通立方体贴图的三维坐标之间的第三映射关系;
根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称立方体贴图的三维坐标之间的第一映射关系;
根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定所述非对称立方体贴图的三维坐标与所述二维平面展开图的二维坐标之间的第二映射关系。
8.根据权利要求4所述的方法,其特征在于,还包括:
根据非对称立方体贴图与球模型的映射中心的偏移量,确定非对称立方体贴图的三维坐标与球模型的极坐标之间的第四映射关系;
根据非对称立方体贴图与球模型的映射中心的偏移量,确定所述非对称立方体贴图的三维坐标与所述二维平面展开图的二维坐标之间的第五映射关系。
9.一种图像处理方法,其特征在于,包括:
将输入的三维模型贴图进行非对称球模型映射,所述非对称球模型与输入的三维模型贴图的映射中心的位置不同;
将经过非对称球模型映射的三维模型贴图展开得到二维平面展开图。
10.根据权利要求9所述的方法,其特征在于,将输入的三维模型贴图进行非对称球模型映射,包括:
从非对称球模型的中心进行映射,使得输入的三维模型贴图表面的像素与所述非对称球模型的表面的像素对应,所述输入的三维模型贴图为普通立方体贴图,所述非对称球模型与普通立方体贴图的映射中心的位置不同。
11.根据权利要求9所述的方法,其特征在于,将输入的三维模型贴图进行非对称球模型映射,还包括:
从普通立方体贴图的中心进行映射,使得输入的三维模型贴图表面的像素与所述普通立方体贴图的表面的像素对应,所述输入的三维模型贴图为普通球模型,所述普通立方体贴图与普通球模型的映射中心的位置相同;
从非对称球模型的中心进行映射,使得所述普通立方体贴图表面的像素与所述非对称球模型的表面的像素对应,所述非对称球模型与普通立方体贴图的映射中心的位置不同。
12.根据权利要求9所述的方法,其特征在于,将输入的三维模型贴图进行非对称球模型映射,包括:
从非对称球模型的中心进行映射,使得输入的三维模型贴图的表面的像素与所述非对称球模型的表面的像素对应,所述输入的三维模型贴图为普通球模型,所述非对称球模型与普通球模型的映射中心的位置不同。
13.根据权利要求9至12中任一项所述的方法,其特征在于,将经过非对称球模型映射的三维模型贴图展开得到二维平面展开图,包括:
将非对称球模型的表面的像素与所述二维平面展开图的像素对应。
14.根据权利要求10所述的方法,其特征在于,还包括:
根据非对称球模型与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称球模型的极坐标之间的第六映射关系;
根据非对称球模型与普通立方体贴图的映射中心的偏移量,确定所述非对称球模型的极坐标与所述二维平面展开图的二维坐标之间的第七映射关系。
15.根据权利要求11所述的方法,其特征在于,还包括:
确定普通球模型的极坐标与普通立方体贴图的三维坐标之间的第八映射关系;
根据非对称球模型与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称球模型的极坐标之间的第六映射关系;
根据非对称球模型与普通立方体贴图的映射中心的偏移量,确定所述非对称球模型的极坐标与所述二维平面展开图的二维坐标之间的第七映射关系。
16.根据权利要求12所述的方法,其特征在于,还包括:
根据非对称球模型与普通球模型的映射中心的偏移量,确定非对称球模型的极坐标与普通球模型的极坐标之间的第九映射关系;
根据非对称球模型与普通球模型的映射中心的偏移量,确定所述非对称球模型的极坐标与所述二维平面展开图的二维坐标之间的第十映射关系。
17.一种图像处理方法,其特征在于,包括:
采用如权利要求1至16中任一项所述的图像处理方法对输入的三维模型贴图进行映射和展开,得到二维平面展开图;
对所述二维平面展开图进行转码。
18.一种图像处理方法,其特征在于,包括:
采用如权利要求1至16中任一项所述的图像处理方法对输入的三维模型贴图进行映射和展开,得到二维平面展开图;
对所述二维平面展开图进行转码;
将转码后的图像发送给客户端;
将非对称立方体贴图与输入的三维模型贴图的映射中心的偏移量发送给所述客户端,以使得所述客户端根据所述转码后的图像和所述偏移量进行渲染。
19.一种图像处理方法,其特征在于,包括:
接收转码后的图像;
接收偏移量,所述偏移量为转码端的非对称立方体贴图与输入的三维模型贴图的映射中心的偏移量,所述非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同;
对收到的图像进行解码;
根据所述偏移量对解码后的图像进行渲染。
20.根据权利要求19所述的方法,其特征在于,根据所述偏移量对解码后的图像进行渲染包括以下任一方式:
对解码后的图像进行普通立方体贴图,根据所述偏移量对所述普通立方体贴图进行渲染;或
根据所述偏移量将解码后的图像反映射为普通立方体贴图,对所述普通立方体贴图进行渲染;或
根据所述偏移量将解码后的图像反映射为球模型,对所述球模型进行渲染。
21.一种全景视频图像的处理方法,其特征在于,还包括:
沿着选定的至少一个方向,采用权利要求1至20中任一项所述的图像处理方法对全景视频图像进行处理,以得到与至少一个方向对应的至少一个视频流。
22.一种全景视频图像的处理方法,其特征在于,包括:
确定用户视角所处的目标方向;
接收如权利要求21所述的全景视频图像的处理方法所得到的与所述目标方向对应的视频流。
23.一种基于立方体贴图的图像处理装置,其特征在于,包括:
第一映射模块,用于将输入的三维模型贴图进行非对称立方体贴图映射,所述非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同;
第一展开模块,用于将经过非对称立方体贴图映射的三维模型贴图展开得到二维平面展开图。
24.根据权利要求23所述的装置,其特征在于,所述第一映射模块包括:
第一映射子模块,用于从非对称立方体贴图的中心进行映射,使得输入的三维模型贴图表面的像素与所述非对称立方体贴图的表面的像素对应,所述输入的三维模型贴图为普通立方体贴图,所述非对称立方体贴图与普通立方体贴图的映射中心的位置不同。
25.根据权利要求23所述的装置,其特征在于,所述第一映射模块还包括:
第二映射子模块,用于从普通立方体贴图的中心进行映射,使得输入的三维模型贴图表面的像素与所述普通立方体贴图的表面的像素对应,所述输入的三维模型贴图为球模型,所述普通立方体贴图与球模型的映射中心的位置相同;从非对称立方体贴图的中心进行映射,使得所述普通立方体贴图表面的像素与所述非对称立方体贴图的表面的像素对应,所述非对称立方体贴图与普通立方体贴图的映射中心的位置不同。
26.根据权利要求23所述的装置,其特征在于,所述第一映射模块还包括:
第三映射子模块,用于从非对称立方体贴图的中心进行映射,使得输入的三维模型贴图的表面的像素与所述非对称立方体贴图的表面的像素对应,所述输入的三维模型贴图为球模型,所述非对称立方体贴图与球模型的映射中心的位置不同。
27.根据权利要求23至26中任一项所述的装置,其特征在于,所述第一展开模块还用于将非对称立方体贴图的表面的像素与所述二维平面展开图的像素对应。
28.根据权利要求24所述的装置,其特征在于,还包括:
第一确定模块,用于根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称立方体贴图的三维坐标之间的第一映射关系;
第二确定模块,用于根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定所述非对称立方体贴图的三维坐标与所述二维平面展开图的二维坐标之间的第二映射关系。
29.根据权利要求25所述的装置,其特征在于,还包括:
第三确定模块,用于确定球模型的极坐标与普通立方体贴图的三维坐标之间的第三映射关系;
第一确定模块,用于根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称立方体贴图的三维坐标之间的第一映射关系;
第二确定模块,用于根据非对称立方体贴图与普通立方体贴图的映射中心的偏移量,确定所述非对称立方体贴图的三维坐标与所述二维平面展开图的二维坐标之间的第二映射关系。
30.根据权利要求26所述的装置,其特征在于,还包括:
第四确定模块,用于根据非对称立方体贴图与球模型的映射中心的偏移量,确定非对称立方体贴图的三维坐标与球模型的极坐标之间的第四映射关系;
第五确定模块,用于根据非对称立方体贴图与球模型的映射中心的偏移量,确定所述非对称立方体贴图的三维坐标与所述二维平面展开图的二维坐标之间的第五映射关系。
31.一种图像处理装置,其特征在于,包括:
第二映射模块,用于将输入的三维模型贴图进行非对称球模型映射,所述非对称球模型与输入的三维模型贴图的映射中心的位置不同;
第二展开模块,用于将经过非对称球模型映射的三维模型贴图展开得到二维平面展开图。
32.根据权利要求31所述的装置,其特征在于,所述第二映射模块包括:
第四映射子模块,用于从非对称球模型的中心进行映射,使得输入的三维模型贴图表面的像素与所述非对称球模型的表面的像素对应,所述输入的三维模型贴图为普通立方体贴图,所述非对称球模型与普通立方体贴图的映射中心的位置不同。
33.根据权利要求31所述的装置,其特征在于,所述第二映射模块还包括:
第五映射子模块,用于从普通立方体贴图的中心进行映射,使得输入的三维模型贴图表面的像素与所述普通立方体贴图的表面的像素对应,所述输入的三维模型贴图为普通球模型,所述普通立方体贴图与普通球模型的映射中心的位置相同;从非对称球模型的中心进行映射,使得所述普通立方体贴图表面的像素与所述非对称球模型的表面的像素对应,所述非对称球模型与普通立方体贴图的映射中心的位置不同。
34.根据权利要求31所述的装置,其特征在于,所述第二映射模块还包括:
第六映射子模块,用于从非对称球模型的中心进行映射,使得输入的三维模型贴图的表面的像素与所述非对称球模型的表面的像素对应,所述输入的三维模型贴图为普通球模型,所述非对称球模型与普通球模型的映射中心的位置不同。
35.根据权利要求31至34中任一项所述的装置,其特征在于,所述第二展开模块还用于将非对称球模型的表面的像素与所述二维平面展开图的像素对应。
36.根据权利要求32所述的装置,其特征在于,还包括:
第六确定模块,用于根据非对称球模型与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称球模型的极坐标之间的第六映射关系;
第七确定模块,用于根据非对称球模型与普通立方体贴图的映射中心的偏移量,确定所述非对称球模型的极坐标与所述二维平面展开图的二维坐标之间的第七映射关系。
37.根据权利要求33所述的装置,其特征在于,还包括:
第八确定模块,用于确定普通球模型的极坐标与普通立方体贴图的三维坐标之间的第八映射关系;
第六确定模块,用于根据非对称球模型与普通立方体贴图的映射中心的偏移量,确定普通立方体贴图的三维坐标与非对称球模型的极坐标之间的第六映射关系;
第七确定模块,用于根据非对称球模型与普通立方体贴图的映射中心的偏移量,确定所述非对称球模型的极坐标与所述二维平面展开图的二维坐标之间的第七映射关系。
38.根据权利要求34所述的装置,其特征在于,还包括:
第九确定模块,用于根据非对称球模型与普通球模型的映射中心的偏移量,确定非对称球模型的极坐标与普通球模型的极坐标之间的第九映射关系;
第十确定模块,用于根据非对称球模型与普通球模型的映射中心的偏移量,确定所述非对称球模型的极坐标与所述二维平面展开图的二维坐标之间的第十映射关系。
39.一种图像处理装置,其特征在于,包括:
图像处理模块,用于采用如权利要求23至38中任一项所述的图像处理装置对输入的三维模型贴图进行映射和展开,得到二维平面展开图;
转码模块,用于对所述二维平面展开图进行转码。
40.一种图像处理装置,其特征在于,包括:
图像处理模块,用于采用如权利要求23至38中任一项所述的图像处理装置对输入的三维模型贴图进行映射和展开,得到二维平面展开图;
转码模块,用于对所述二维平面展开图进行转码;
第一发送模块,用于将转码后的图像发送给客户端;
第二发送模块,用于将非对称立方体贴图与输入的三维模型贴图的映射中心的偏移量发送给所述客户端,以使得所述客户端根据所述转码后的图像和所述偏移量进行渲染。
41.一种图像处理装置,其特征在于,包括:
第一接收模块,用于接收转码后的图像;
第二接收模块,用于接收偏移量,所述偏移量为转码端的非对称立方体贴图与输入的三维模型贴图的映射中心的偏移量,所述非对称立方体贴图与输入的三维模型贴图的映射中心的位置不同;
解码模块,用于对收到的图像进行解码;
渲染模块,用于根据所述偏移量对解码后的图像进行渲染。
42.根据权利要求41所述的装置,其特征在于,所述渲染模块包括以下子模块中的任意一个:
第一渲染子模块,用于对解码后的图像进行普通立方体贴图,根据所述偏移量对所述普通立方体贴图进行渲染;或
第二渲染子模块,用于根据所述偏移量将解码后的图像反映射为普通立方体贴图,对所述普通立方体贴图进行渲染;或
第三渲染子模块,用于根据所述偏移量将解码后的图像反映射为球模型,对所述球模型进行渲染。
43.一种全景视频图像的处理系统,其特征在于,包括:
如权利要求23至42中任一项所述的图像处理装置,用于沿着选定的至少一个方向对全景视频图像进行处理,以得到与至少一个方向对应的至少一个视频流。
44.一种全景视频图像的处理系统,其特征在于,包括:
方向确定模块,用于确定用户视角所处的目标方向;
接收模块,用于接收采用权利要求43所述的全景视频图像的处理系统所得到的与所述目标方向对应的视频流。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2018/095220 WO2019037558A1 (zh) | 2017-08-22 | 2018-07-11 | 图像处理方法和装置 |
US16/632,618 US11270502B2 (en) | 2017-08-22 | 2018-07-11 | Method and apparatus for image processing of three-dimensional model maps |
EP18847857.2A EP3675058A4 (en) | 2017-08-22 | 2018-07-11 | IMAGE PROCESSING METHOD AND APPARATUS |
TW107126134A TWI696979B (zh) | 2017-08-22 | 2018-07-27 | 圖像處理方法和裝置及全景視頻圖像的處理方法和系統 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710726124 | 2017-08-22 | ||
CN2017107261241 | 2017-08-22 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109427087A true CN109427087A (zh) | 2019-03-05 |
Family
ID=65514411
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810176125.8A Pending CN109427087A (zh) | 2017-08-22 | 2018-03-02 | 图像处理方法和装置 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP3675058A4 (zh) |
CN (1) | CN109427087A (zh) |
TW (1) | TWI696979B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023173727A1 (zh) * | 2022-03-16 | 2023-09-21 | 北京字跳网络技术有限公司 | 图像处理方法、装置及电子设备 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2604193B (en) * | 2021-08-06 | 2023-03-08 | Imagination Tech Ltd | Texture address generation |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014071496A (ja) * | 2012-09-27 | 2014-04-21 | Kumahira Co Ltd | パノラマ画像作成装置、及び、プログラム |
CN105245838A (zh) * | 2015-09-29 | 2016-01-13 | 成都虚拟世界科技有限公司 | 一种全景视频播放方法及播放器 |
CN106651764A (zh) * | 2016-12-29 | 2017-05-10 | 北京奇艺世纪科技有限公司 | 一种全景图压缩方法及装置 |
CN106875331A (zh) * | 2017-01-19 | 2017-06-20 | 北京大学深圳研究生院 | 一种全景图像的非对称映射方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW413796B (en) * | 1998-06-25 | 2000-12-01 | Ind Tech Res Inst | A method and system for establishing environment image |
TW200723160A (en) * | 2005-12-08 | 2007-06-16 | Hong-Qian Liao | Mapping and drawing method for a tetrahedron |
US8203564B2 (en) * | 2007-02-16 | 2012-06-19 | Qualcomm Incorporated | Efficient 2-D and 3-D graphics processing |
US20120212491A1 (en) * | 2011-02-22 | 2012-08-23 | Sony Computer Entertainment Inc. | Indirect lighting process for virtual environments |
CN106534974B (zh) * | 2016-12-16 | 2019-04-26 | 暴风集团股份有限公司 | 自动识别立方体全景视频的方法及系统 |
-
2018
- 2018-03-02 CN CN201810176125.8A patent/CN109427087A/zh active Pending
- 2018-07-11 EP EP18847857.2A patent/EP3675058A4/en active Pending
- 2018-07-27 TW TW107126134A patent/TWI696979B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014071496A (ja) * | 2012-09-27 | 2014-04-21 | Kumahira Co Ltd | パノラマ画像作成装置、及び、プログラム |
CN105245838A (zh) * | 2015-09-29 | 2016-01-13 | 成都虚拟世界科技有限公司 | 一种全景视频播放方法及播放器 |
CN106651764A (zh) * | 2016-12-29 | 2017-05-10 | 北京奇艺世纪科技有限公司 | 一种全景图压缩方法及装置 |
CN106875331A (zh) * | 2017-01-19 | 2017-06-20 | 北京大学深圳研究生院 | 一种全景图像的非对称映射方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023173727A1 (zh) * | 2022-03-16 | 2023-09-21 | 北京字跳网络技术有限公司 | 图像处理方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
EP3675058A4 (en) | 2021-06-23 |
TWI696979B (zh) | 2020-06-21 |
TW201913573A (zh) | 2019-04-01 |
EP3675058A1 (en) | 2020-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6683608B2 (en) | Seaming polygonal projections from subhemispherical imagery | |
CN105247575B (zh) | 用于在三维场景上叠加二维地图数据的系统和方法 | |
US7292722B2 (en) | Representation and coding of panoramic and omnidirectional images | |
CN108564527B (zh) | 基于神经网络的全景图内容补全和修复的方法及装置 | |
KR102208773B1 (ko) | 파노라마 영상 압축 방법 및 장치 | |
US10880576B2 (en) | Method for encoding a light field content | |
WO1998049667A2 (en) | Method and system for light field rendering | |
CN109934764A (zh) | 全景视频文件的处理方法、装置、终端、服务器及存储介质 | |
WO2019065536A1 (ja) | 再構成方法および再構成装置 | |
WO2018040860A1 (zh) | 一种全景视频的压缩方法及装置 | |
US6750860B1 (en) | Rendering with concentric mosaics | |
CN114095737B (zh) | 媒体文件封装及解封装方法、装置、设备及存储介质 | |
CN110060201B (zh) | 一种全景视频的热点交互方法 | |
US20240015197A1 (en) | Method, apparatus and device for encapsulating media file, and storage medium | |
CN109427087A (zh) | 图像处理方法和装置 | |
JP2018504009A (ja) | デジタルビデオのレンダリング | |
WO2019037558A1 (zh) | 图像处理方法和装置 | |
CN117560578B (zh) | 基于三维场景渲染且视点无关的多路视频融合方法及系统 | |
EA008749B1 (ru) | Способ кодирования координат перемещающегося на экране вычислительного устройства видеоизображения | |
US20220108420A1 (en) | Method and system of efficient image rendering for near-eye light field displays | |
Pasewaldt et al. | Multi-Perspective Detail+ Overview Visualization for 3D Building Exploration. | |
KR100490885B1 (ko) | 직각 교차 실린더를 이용한 영상기반 렌더링 방법 | |
CN113421315B (zh) | 一种基于视图缩放的全景图像空洞填充方法 | |
EP3145191A1 (en) | Method for encoding a light field content | |
Popescu et al. | An efficient error-bounded general camera model |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200428 Address after: 310052 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province Applicant after: Alibaba (China) Co.,Ltd. Address before: 100080 Beijing Haidian District city Haidian street A Sinosteel International Plaza No. 8 block 5 layer A, C Applicant before: Youku network technology (Beijing) Co., Ltd |
|
TA01 | Transfer of patent application right | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190305 |
|
RJ01 | Rejection of invention patent application after publication |