CN110956583A - 球面图像处理方法、装置及服务器 - Google Patents
球面图像处理方法、装置及服务器 Download PDFInfo
- Publication number
- CN110956583A CN110956583A CN201811125870.6A CN201811125870A CN110956583A CN 110956583 A CN110956583 A CN 110956583A CN 201811125870 A CN201811125870 A CN 201811125870A CN 110956583 A CN110956583 A CN 110956583A
- Authority
- CN
- China
- Prior art keywords
- pixel
- spherical image
- viewpoint
- image
- sphere
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 36
- 238000012545 processing Methods 0.000 claims abstract description 125
- 230000008602 contraction Effects 0.000 claims abstract description 115
- 238000000034 method Methods 0.000 claims abstract description 59
- 238000013507 mapping Methods 0.000 claims description 115
- 210000001508 eye Anatomy 0.000 claims description 72
- 230000007704 transition Effects 0.000 claims description 30
- 210000005252 bulbus oculi Anatomy 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 11
- 210000000887 face Anatomy 0.000 claims description 6
- 101000633607 Bos taurus Thrombospondin-2 Proteins 0.000 claims 2
- 230000008859 change Effects 0.000 abstract description 19
- 230000000007 visual effect Effects 0.000 abstract description 11
- 230000009467 reduction Effects 0.000 abstract description 8
- 230000003321 amplification Effects 0.000 abstract description 4
- 238000003199 nucleic acid amplification method Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000007654 immersion Methods 0.000 description 7
- 238000006073 displacement reaction Methods 0.000 description 6
- 239000011521 glass Substances 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012952 Resampling Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000010339 dilation Effects 0.000 description 1
- 238000010295 mobile communication 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
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- 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/04—Context-preserving transformations, e.g. by using an importance map
- G06T3/053—Detail-in-context presentations
-
- 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/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/698—Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/147—Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
-
- 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
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- 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/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/65—Transmission of management data between client and server
- H04N21/658—Transmission by the client directed to the server
- H04N21/6587—Control parameters, e.g. trick play commands, viewpoint selection
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)
- Signal Processing (AREA)
- Geometry (AREA)
- Human Computer Interaction (AREA)
- Computing Systems (AREA)
- Image Processing (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请提供一种球面图像处理方法、装置及服务器。本申请一种球面图像处理方法,包括:获取球面图像,并确定球面图像的球心;确定用户观看球面图像时的视点,视点位于球面图像所包围的球体空间内除球心外的任意一点;根据球心和视点确定球面图像上的像素扩张区域和像素收缩区域;对球面图像进行图像处理,图像处理包括对像素扩张区域内的图像进行像素扩张处理,对像素收缩区域内的图像进行像素收缩处理。本申请实现依视点的实际视野进行局部的放大和局部的缩小,使得用户获得类似于真实世界中实际观看到的物体发生近大远小缩放变化的观影体验。
Description
技术领域
本申请涉及图像处理技术,尤其涉及一种球面图像处理方法、装置及服务器。
背景技术
在虚拟现实(Virtual Reality,简称:VR)全景视频应用中,用户能够以360度任意视角观看动态视频,享受一种全新的观看体验。现有的全景视频观看方式大都采用3自由度(3Degree of Freedom,简称:3DOF)的观影体验,在这种应用中,视点(包括VR眼镜、手机、平板、电视、电脑等)固定在全景视频组成的球体的中心点位置,可进行任意水平偏转、竖直俯仰、绕轴滚转的偏转对全景视频进行观看。但随着人们对VR强烈沉浸感的需求逐渐加深,期望可以佩戴视点在空间范围内进行前后左右自由移动,同时在这种移动的情况下观看到的视频仍保持与现实世界相同或相近的体验。由此带来的图像处理中如何对全景视频中物体的缩放成为关键技术之一。
现有技术对全景视频的图像处理实现了视点在前后移动时其视角范围内的画面内容随之增大或减小,但是如果终端再进行旋转时,会出现对应视角内容运动变得过快(放大后旋转)或过慢(缩小后旋转)的情况,不符合人在真实世界自由走动观看时的情况,无法做到沉浸式的视觉效果,影响体验。
发明内容
本申请提供一种球面图像处理方法、装置及服务器,以实现依用户观看球面图像时的视点的实际视野进行局部的放大和局部的缩小,使得用户获得类似于真实世界中实际观看到的物体发生近大远小缩放变化的观影体验。
第一方面,本申请提供一种球面图像处理方法,对全景视频中的每一帧球面图像进行处理,服务器先获取球面图像,该球面图像横向跨度为360度,纵向跨度为180度,其包围的空间呈球体状。本申请中由于视点的位移使得其可以看到的视野范围内的画面相较于位于球心位置时发生了放大或缩小的变化,为了适应这种变化,服务器需要对球面图像进行区域划分,划分的目的是需要将球面图像中的某些区域进行放大(像素扩张区域),某些区域进行缩小(像素收缩区域),且放大和缩小的比例并非完全一致,视实际情况而定,因此划分后的球面图像可以针对不同的区域进行不同的图像处理。本申请中的图像处理包括对像素扩张区域内的图像进行像素扩张处理,对像素收缩区域内的图像进行像素收缩处理,像素扩张处理包括将像素扩张区域内的图像像素的数量增多,像素收缩处理包括将像素收缩区域内的图像像素的数量减少。可见经过上述对球面图像进行的处理后,本申请不再是简单的只对球面图像进行放大或缩小,而是依视点的实际视野进行局部的放大和局部的缩小,使得用户观看VR全景视频的过程中视点自由移动时,能够获得类似于真实世界中实际观看到的物体发生近大远小缩放变化的观影体验,即使用户旋转也可以观看到物体逐渐由大变小或由小变大的变化,而不会看到类似于望远镜体验中所有的物体都被缩放的情况,符合真实世界中物体的缩放变化,从而产生更为强烈的沉浸感。
在一种可能的实现方式中,服务器可以先确定球面图像上与球心和视点结合后满足设定的几何规则的像素,然后根据像素确定像素扩张区域和像素收缩区域。
基于上述方法,服务器可以根据视点相对于球心的偏移,确定球面图像上与视点的距离等于r的第一像素,然后以连接第一像素的圆为界限将球面图像划分为两个区域,其中,所包括的像素与视点的距离小于r的区域作为像素扩张区域,所包括的像素与视点的距离大于r的区域作为像素收缩区域。
基于上述方法,服务器还可以以视点为顶点,以视点到球心的连线为角平分线,确定角度为θ的角在球面图像上对应的第二像素,然后以连接第二像素的弧线为界限将球面图像划分为两个区域,其中,距离视点较近的区域作为像素扩张区域,距离视点较远的区域作为像素收缩区域。
在一种可能的实现方式中,服务器还可以根据球心和视点确定球面图像上的过渡区域,因此图像处理还包括对过渡区域内的图像中临近像素扩张区域的部分进行像素扩张处理,对过渡区域内的图像中临近像素收缩区域的部分进行像素收缩处理。
基于上述方法,服务器还可以根据球心和视点构建外切于球面图像的六面体,根据六面体中的各个面和球心构建六个椎体,根据六个椎体与球面图像相交处的像素将球面图像划分为六个区域,其中,六面体中垂直于球心到视点的连线的延长线的面对应的区域作为像素扩张区域,垂直于视点到球心的连线的延长线的面对应的区域作为像素收缩区域,其余四个面对应的区域作为过渡区域。
在一种可能的实现方式中,服务器可以以视点为顶点,以球心到视点的连线的延长线为角平分线,确定角度为ψ的角在球面图像上对应的第三像素,角度为ψ的角为处于视点的FOV角,构建与球面图像外切的正四棱锥体,其中,正四棱锥的顶部由球心到第三像素的连线的延长线与外切于球面图像的平面相交的点围成。
在一种可能的实现方式中,服务器可以以视点为顶点,以球心到视点的连线的延长线为角平分线,确定角度为ψ的角在球面图像上对应的第三像素,角度为ψ的角为处于视点的FOV角,以球心为顶点,以视点到球心的连线的延长线为角平分线,确定角度为δ的角在球面图像上对应的第四像素,角度为δ的角为背视面张角,构建与球面图像部分外切的四棱锥体,其中,四棱锥体的侧面与球面图像相切,球心到第三像素的连线的延长线与四棱锥体的侧面相交的点围成四棱锥体的顶部,球心到第四像素的连线的延长线与四棱锥体的侧面相交的点围成四棱锥体的底部。
基于上述方法,服务器可以在球面图像上,将四棱锥体的顶部对应的区域作为像素扩张区域,将四棱锥体的底部对应的区域作为像素收缩区域,将四棱锥体的侧面对应的区域作为过渡区域。
在一种可能的实现方式中,服务器可以以视点为球心,以球面图像所包围的球体空间的半径为半径,构建偏移球体;将偏移球体的球面划分为多个区域,多个区域与划分后的球面图像上的各个区域一一对应;确定偏移球体和划分后的球面图像上彼此对应的两个区域之间的映射关系,并根据映射关系对划分后的球面图像进行图像处理。
基于上述方法,服务器可以先调整四棱锥体构建与偏移球体外切的正方体,正方体中的各个面和视点构建六个椎体,根据六个椎体与偏移球体相交处的像素将偏移球体划分为六个区域;确定球面图像上的像素和四棱锥体上的点之间的映射关系,确定正方体和偏移球体上的映射关系,根据四棱锥体和正方体之间的映射关系确定偏移球体上的点与球面图像上的像素之间的映射关系。
上述实施例中将四棱锥体的六个映射面缩放到相同大小,形成一个正方体,该正方体外切于以视点为球心的偏移球体,以球面图像的直径作为缩放后正方体每个面的边长,可知正视面对应的区域中的像素被扩张,背视面对应的区域中的像素被收缩,侧视面对应的区域中的像素依照从正视面至背视面的方向由扩张逐渐变为收缩。使得用户观看VR全景视频的过程中视点自由移动时,能够获得类似于真实世界中实际观看到的物体发生近大远小缩放变化的观影体验,即使用户旋转也可以观看到物体逐渐由大变小或由小变大的变化,而不会看到类似于望远镜体验中所有的物体都被缩放的情况,符合真实世界中物体的缩放变化,从而产生更为强烈的沉浸感。
在一种可能的实现方式中,当球面图像采用非三维空间球面坐标表示像素时,非三维空间球面坐标包括等距柱状投影ERP格式的像素坐标、立方体映射CMP格式的像素坐标、克拉斯特抛物线映射CPP格式的像素坐标,改进的立方体映射ACP格式的像素坐标,截断四棱锥映射TSP格式的像素坐标,紧凑格式正八面体映射COHP格式的像素坐标以及紧凑格式正二十面体映射CISP格式的像素坐标中的任意一种。因此服务器获取球面图像之后,先将球面图像中表示像素的坐标映射为以球心为原点的三维空间球面坐标,而对划分后的球面图像进行图像处理之后,要将球面图像中表示像素的坐标反映射回非三维空间球面坐标。
在一种可能的实现方式中,当球面图像为3D全景球面图像时,3D全景球面图像包括左眼球面图像和右眼球面图像。因此,服务器获取球面图像之后,如果是针对左眼球面图像,先确定左眼球面图像的左眼球心,获取左眼视点,然后根据左眼球心和左眼视点确定左眼球面图像上的像素扩张区域和像素收缩区域,最后对左眼球面图像进行图像处理;如果是针对右眼球面图像,先确定右眼球面图像的右眼球心,获取右眼视点,然后根据右眼球心和右眼视点确定右眼球面图像上的像素扩张区域和像素收缩区域,最后对右眼球面图像进行图像处理。
第二方面,本申请提供一种球面图像处理装置,包括:
图像获取模块,用于获取球面图像,并确定球面图像的球心;
位置确定模块,用于确定用户观看球面图像时的视点,视点位于球面图像所包围的球体空间内除球心外的任意一点;
区域确定模块,用于根据球心和视点确定球面图像上的像素扩张区域和像素收缩区域;
处理模块,用于对划分后的球面图像进行图像处理,图像处理包括对像素扩张区域内的图像进行像素扩张处理,对像素收缩区域内的图像进行像素收缩处理,像素扩张处理包括将像素扩张区域内的图像像素的数量增多,像素收缩处理包括将像素收缩区域内的图像像素的数量减少。
在一种可能的实现方式中,区域确定模块,具体用于确定所述球面图像上与所述球心和所述视点结合后满足设定的几何规则的像素,根据像素确定像素扩张区域和像素收缩区域。
在一种可能的实现方式中,区域确定模块,具体用于根据视点相对于球心的偏移,确定球面图像上与视点的距离等于r的第一像素;以连接第一像素的圆为界限确定像素扩张区域和像素收缩区域,其中,所包括的像素与视点的距离小于r的区域作为像素扩张区域,所包括的像素与视点的距离大于r的区域作为像素收缩区域。
在一种可能的实现方式中,区域确定模块,具体用于以视点为顶点,以视点到球心的连线为角平分线,确定角度为θ的角在球面图像上对应的第二像素;以连接第二像素的弧线为界限确定像素扩张区域和像素收缩区域,其中,距离视点较近的区域作为像素扩张区域,距离视点较远的区域作为像素收缩区域。
在一种可能的实现方式中,区域确定模块,还用于根据球心和视点确定球面图像上的过渡区域;图像处理还包括对过渡区域内的图像中临近像素扩张区域的部分进行像素扩张处理,对过渡区域内的图像中临近像素收缩区域的部分进行像素收缩处理。
在一种可能的实现方式中,区域确定模块,具体用于根据球心和视点构建外切于球面图像的六面体;根据六面体中的各个面和球心构建六个椎体;根据六个椎体与球面图像相交处的像素将球面图像划分为六个区域,其中,六面体中垂直于球心到视点的连线的延长线的面对应的区域作为像素扩张区域,垂直于视点到球心的连线的延长线的面对应的区域作为像素收缩区域,其余四个面对应的区域作为过渡区域。
在一种可能的实现方式中,区域确定模块,具体用于以视点为顶点,以球心到视点的连线的延长线为角平分线,确定角度为ψ的角在球面图像上对应的第三像素,角度为ψ的角为处于视点的FOV角,构建与球面图像外切的正四棱锥体,其中,正四棱锥的顶部由球心到第三像素的连线的延长线与外切于球面图像的平面相交的点围成。
在一种可能的实现方式中,区域确定模块,具体用于以视点为顶点,以球心到视点的连线的延长线为角平分线,确定角度为ψ的角在球面图像上对应的第三像素,角度为ψ的角为处于视点的FOV角,以球心为顶点,以视点到球心的连线的延长线为角平分线,确定角度为δ的角在球面图像上对应的第四像素,角度为δ的角为背视面张角,构建与球面图像部分外切的四棱锥体,其中,四棱锥体的侧面与球面图像相切,球心到第三像素的连线的延长线与四棱锥体的侧面相交的点围成四棱锥体的顶部,球心到第四像素的连线的延长线与四棱锥体的侧面相交的点围成四棱锥体的底部。
在一种可能的实现方式中,区域确定模块,具体用于在球面图像上,将四棱锥体的顶部对应的区域作为像素扩张区域,将四棱锥体的底部对应的区域作为像素收缩区域,将四棱锥体的侧面对应的区域作为过渡区域。
在一种可能的实现方式中,处理模块,具体用于以视点为球心,以球面图像所包围的球体空间的半径为半径,构建偏移球体;将偏移球体的球面划分为多个区域,多个区域与划分后的球面图像上的各个区域一一对应;确定偏移球体和划分后的球面图像上彼此对应的两个区域之间的映射关系,并根据映射关系对划分后的球面图像进行图像处理。
在一种可能的实现方式中,处理模块,具体用于确定偏移球体上的点与球面图像上的像素之间的映射关系。
在一种可能的实现方式中,处理模块,具体用于调整四棱锥体构建与偏移球体外切的正方体,正方体中的各个面和视点构建六个椎体,根据六个椎体与偏移球体相交处的像素将偏移球体划分为六个区域;确定球面图像上的像素和四棱锥体上的点之间的映射关系,确定正方体和偏移球体上的映射关系,根据四棱锥体和正方体之间的映射关系确定偏移球体上的点与球面图像上的像素之间的映射关系。
在一种可能的实现方式中,当球面图像采用非三维空间球面坐标表示像素时,非三维空间球面坐标包括等距柱状投影ERP格式的像素坐标、立方体映射CMP格式的像素坐标、克拉斯特抛物线映射CPP格式的像素坐标,改进的立方体映射ACP格式的像素坐标,截断四棱锥映射TSP格式的像素坐标,紧凑格式正八面体映射COHP格式的像素坐标以及紧凑格式正二十面体映射CISP格式的像素坐标中的任意一种;图像获取模块,还用于将球面图像中表示像素的坐标映射为以球心为原点的三维空间球面坐标;处理模块,还用于将球面图像中表示像素的坐标反映射回非三维空间球面坐标。
在一种可能的实现方式中,当球面图像为3D全景球面图像时,3D全景球面图像包括左眼球面图像和右眼球面图像;针对左眼球面图像,图像获取模块,还用于确定左眼球面图像的左眼球心;位置确定模块,还用于获取左眼视点;区域划模块,还用于根据左眼球心和左眼视点确定左眼球面图像上的像素扩张区域和像素收缩区域;处理模块,还用于对左眼球面图像进行图像处理;针对右眼球面图像,图像获取模块,还用于确定右眼球面图像的右眼球心;位置确定模块,还用于获取右眼视点;区域划模块,还用于根据右眼球心和右眼视点确定右眼球面图像上的像素扩张区域和像素收缩区域;处理模块,还用于对右眼球面图像进行图像处理。
第三方面,本申请提供一种服务器,服务器包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上述第一方面中任一的球面图像处理方法。
第四方面,本申请提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包含至少一段代码,该至少一段代码由计算机执行,以执行上述第一方面中任一的球面图像处理方法。
第五方面,本申请提供一种计算机程序,当计算机程序被计算机执行时,用于执行上述第一方面中任一的球面图像处理方法。
本申请球面图像处理方法、装置及服务器,通过根据视点的位移对球面图像进行区域划分,并分区域进行像素扩张或像素收缩的处理,实现依视点的实际视野进行局部的放大和局部的缩小,使得用户观看VR全景视频的过程中视点自由移动时,能够获得类似于真实世界中实际观看到的物体发生近大远小缩放变化的观影体验,即使用户旋转也可以观看到物体逐渐由大变小或由小变大的变化,而不会看到类似于望远镜体验中所有的物体都被缩放的情况,符合真实世界中物体的缩放变化,从而产生更为强烈的沉浸感。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请全景视频处理框架实施例的结构示意图;
图2为本申请球面图像处理方法实施例一的流程图;
图3为本申请球面图像处理方法实施例一的区域划分示意图;
图4为本申请球面图像处理方法实施例一的区域划分示意图;
图5为本申请球面图像处理方法实施例二的流程图;
图6为本申请球面图像处理方法实施例二的六面体三维示意图;
图7为本申请球面图像处理方法实施例二的区域划分示意图;
图8a-8c为本申请球面图像处理方法实施例二的区域划分示意图;
图9为本申请球面图像处理方法实施例二的区域划分示意图;
图10为本申请球面图像处理装置实施例的结构示意图;
图11为本申请服务器实施例的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请基于视点在球面图像所包围的球体空间内的位移情况,对整个球面图像的像素进行重采样处理,使得在视点靠近球面图像时,正视面进行像素扩张(即相比原图像内容减少,图像放大),背视面进行像素收缩(即相比原图像内容增加,图像缩小),而视点远离球面图像时,正视面进行像素收缩(即相比原图像内容增加,图像缩小),背视面进行像素扩张(即相比原图像内容减少,图像放大),从而获得新的球面图像。视点是指用户观看球面图像时的视点,其位置可以是观看球面图像时用户佩戴着VR眼镜所处的位置,也可以是用户借助传感器观看球面图像,传感器所处的位置,例如用户在远端通过计算机、终端等操控传感器的位置,借助传感器捕捉画面并将画面传输回来在计算机、终端等设备上观看。经过上述处理,可使用户在观看VR全景视频的过程中视点自由移动时,能够获得类似于真实世界中实际观看到的物体发生近大远小缩放变化的观影体验,即使用户旋转也可以观看到物体逐渐由大变小或由小变大的变化,而不会看到类似于望远镜体验中所有的物体都被缩放的情况,符合真实世界中物体的缩放变化,从而产生更为强烈的沉浸感。
图1为本申请全景视频处理框架实施例的结构示意图,如图1所示,全景视频经由服务器处理后传输给播放设备,由播放设备播放出来给用户看。本实施例中服务器包括编码前处理器、视频编码器、码流封装装置和发送传输装置,服务器对全景视频进行前处理,编码或转码,然后将编码后的码流数据封装为可传输的文件,通过网络传输到播放设备,除此之外,服务器还可以根据播放设备反馈的信息(如用户视角等),选择需要传输的内容进行传输。播放设备包括接收装置、码流解封装装置、视频解码器和显示装置,播放设备是VR眼镜,手机,平板,电视,电脑等可以连上网络的电子设备,播放设备接收服务器发送的数据,并进行码流解封装以及解码显示。
为了获得类似于真实世界中实际观看到的物体发生近大远小缩放变化的观影体验,本申请提供一种球面图像处理方法,对全景视频中的每一帧球面图像进行处理,该方法的执行主体可以是上述框架中的服务器,具体为编码前处理器。服务器先获取球面图像,该球面图像横向跨度为360度,纵向跨度为180度,其包围的空间呈球体状,服务器可以从全景视频拍摄摄像机直接获取球面图像,也可以从存储设备中获取球面图像,还可以从网络接收到的码流中解码获取球面图像。现有技术中通常是将视点置于前述球体的球心位置,本申请中视点在球面图像包围的球体空间内发生了位移,视点的位置可以由处于视点的设备(例如,包括位置传感器的设备)自己定位位置后上报给服务器,也可以由服务器根据与处于视点的设备之间的通信对其位置进行定位。由于视点的位移使得可以看到的视野范围内的画面发生了放大或缩小的变化,为了适应这种变化,服务器需要确定球面图像上的多个区域,本申请中服务器确定出来的区域可以包括球面图像上的某个像素点、某条弧线及某个封闭区域。服务器的目的是需要将球面图像中的某些区域进行放大(像素扩张区域),某些区域进行缩小(像素收缩区域),且放大和缩小的比例并非完全一致,视实际情况而定,因此划分后的球面图像可以针对不同的区域进行不同的图像处理。本申请中的图像处理包括对像素扩张区域内的图像进行像素扩张处理,对像素收缩区域内的图像进行像素收缩处理,像素扩张处理包括将像素扩张区域内的图像像素的数量增多,像素收缩处理包括将像素收缩区域内的图像像素的数量减少。可见经过上述对球面图像进行的处理后,本申请不再是简单的只对球面图像进行放大或缩小,而是依视点的实际视野进行局部的放大和局部的缩小,使得用户观看VR全景视频的过程中视点自由移动时,能够获得类似于真实世界中实际观看到的物体发生近大远小缩放变化的观影体验,即使用户旋转也可以观看到物体逐渐由大变小或由小变大的变化,而不会看到类似于望远镜体验中所有的物体都被缩放的情况,符合真实世界中物体的缩放变化,从而产生更为强烈的沉浸感。
下面采用几个具体的实施例,对上述方法实施例的技术方案进行详细说明。
图2为本申请球面图像处理方法实施例一的流程图,如图2所示,本实施例的方法可以包括:
步骤101、获取球面图像,并确定球面图像的球心。
如上所述,服务器获取球面图像后,基于球面图像所包围的球体空间确定球心。
步骤102、确定用户观看球面图像时的视点,视点位于球面图像所包围的球体空间内除球心外的任意一点。
本实施例是针对视点相对于球心发生了位移的场景,因此视点可以是球面图像所包围的球体空间内除球心外的任意一点,视点获取可以采用多种方式,本实施例对此不做具体限定。
步骤103、确定球面图像上与球心和视点结合后满足设定的几何规则的像素,根据该像素确定像素扩张区域和像素收缩区域。
确定球面图像上与球心和视点结合后满足设定的几何规则的像素,一种可能的实现方式以满足设定的几何规则为前提,确定出相应的阈值,然后结合阈值在球面图像上确定出对应的像素,再以像素为区域划分的界限确定像素扩张区域和像素收缩区域。本实施例将球面图像划分为两个区域,即像素扩张区域和像素收缩区域,顾名思义,像素扩张区域就是要对其内的图像进行像素扩张处理,像素收缩区域就是要对其内的图像进行像素收缩处理。视点只要不在球心,只要发生偏移,就一定会出现靠近球面图像中的某一部分,而远离球面图像中的另一部分,那么在实际情况中,人们在保持视野不变的情况下,离某个画面越接近则看到的图像范围就越小,能看到的细节就越多,而离某个画面越远则看到的图像范围就越大,能看到的细节就越少。因此,本申请要根据视点的位移划分出对应的球面图像中需要像素扩张的区域和需要像素收缩的区域。
示例性的,图3为本申请球面图像处理方法实施例一的区域划分示意图,如图3所示,服务器先根据视点相对于球心的偏移,确定球面图像上与视点的距离等于r的第一像素,然后以第一像素组成的圆为界限确定像素扩张区域和像素收缩区域,其中,所包括的像素与视点的距离小于r的区域作为像素扩张区域,所包括的像素与视点的距离大于r的区域作为像素收缩区域。
本实施例中根据球心和视点设定的阈值为长度r,球面图像所包围的球体空间的球心是O,半径是R,视点是S,以图3上方为视点的正视面,可见视点移动后离球面图像更接近了,服务器构建以S为球心,半径为r的偏移球体,该偏移球体与球面图像相交的点即为第一像素,连接第一像素的圆Q将球面图像划分为上下两个区域,位于上方的区域内的所有像素与S的距离小于r,因此将其作为像素扩张区域,位于下方的区域内的所有像素与S的距离大于r,因此将其作为像素收缩区域。
示例性的,图4为本申请球面图像处理方法实施例一的区域划分示意图,如图4所示,服务器先以视点为顶点,以视点到球心的连线为角平分线,确定角度为θ的角在球面图像上对应的第二像素,然后以第二像素组成的弧线为界限确定像素扩张区域和像素收缩区域,其中,距离视点较近的区域作为像素扩张区域,距离视点较远的区域作为像素收缩区域。
本实施例示出的是球面图像的横截面视图,可见视点离球面图像更接近了,根据球心和视点设定的阈值为角度θ,服务器以S为顶点,以S到O连线为角平分线,构建角度为θ的角,其与球面图像相交的像素是A和B(第二像素),扩展到立体空间上是连接第二像素的圆Q,位于其上方的区域距离视点较近作为像素扩张区域,位于其下方的区域距离视点较远作为像素收缩区域。
步骤104、对球面图像进行图像处理,图像处理包括对像素扩张区域内的图像进行像素扩张处理,对像素收缩区域内的图像进行像素收缩处理。
像素扩张是指像素的关联邻域变大,即该像素的关联邻域中的像素数量增多,体现在该像素旁边出现更多它的关联像素。像素收缩是指像素的关联邻域变小,即该像素的关联邻域中的像素数量减少,体现在该像素旁边它的关联像素减少。关联像素是指由包含至少一个相同像素的一个或一组像素进行图像处理操作(如复制或插值)所生成的各个像素互为关联像素。例如,像素A是由像素X1、X2、X3进行插值获得,像素B是由像素X1、X4、X5、X6进行插值获得,由于像素A和像素B均由包含像素X1的一组像素获得,因此A和B均为像素X1的关联像素。本申请中可以根据需求确定插值计算的方法,例如,在两个像素之间插入一个像素,或者在多个像素之间插入一个像素,对比不做具体限定。对于一个像素来说,其关联邻域指的是在包含该像素的一定区域范围的图像内,该像素的关联像素组成的像素集合,该一定区域范围属于上述像素扩张区域或像素收缩区域,其可以包括其他非关联像素,也可以不包括其他非关联像素。
本申请通过根据视点的位移对球面图像进行区域划分,并分区域进行像素扩张或像素收缩的处理,实现依视点的实际视野进行局部的放大和局部的缩小,使得用户观看VR全景视频的过程中视点自由移动时,能够获得类似于真实世界中实际观看到的物体发生近大远小缩放变化的观影体验,即使用户旋转也可以观看到物体逐渐由大变小或由小变大的变化,而不会看到类似于望远镜体验中所有的物体都被缩放的情况,符合真实世界中物体的缩放变化,从而产生更为强烈的沉浸感。
在上述技术方案的基础上,图5为本申请球面图像处理方法实施例二的流程图,如图5所示,本实施例的方法可以包括:
步骤201、获取球面图像,并确定球面图像的球心。
步骤202、确定用户观看球面图像时的视点,视点位于球面图像所包围的球体空间内除球心外的任意一点。
步骤203、根据球心和视点构建外切于球面图像的六面体。
图6为本申请球面图像处理方法实施例二的六面体三维示意图,如图6所示,视点的正视面冲着x轴的反方向,视点从O点移动到S点距离球面图像的正视面近了。
示例性的,图7为本申请球面图像处理方法实施例二的区域划分示意图,如图7所示,服务器以视点为顶点,以球心到视点的连线的延长线为角平分线,确定角度为ψ的角在球面图像上对应的第三像素,设定的角度为ψ的角为处于视点的视场(Field of View,简称:FOV)角,将其作为阈值构建与球面图像外切的正四棱锥体,其中,正四棱锥的顶部由球心到第三像素的连线的延长线与外切于球面图像的平面相交的点围成。
本实施例示出的是球面图像和六面体的横截面视图,图7的上方为视点的正视面,设定FOV角ψ,角度为ψ的角的两条边与圆O相交,可以在圆O上获得E和F点,∠ESF即为FOV角,表示在S处向着OS连线的的延长线方向可见的球面图像的内容为弧面EF内的画面。扩展到立体空间上以FOV角ψ作为张角构建外切于球面图像的的正四棱锥体,正四棱锥体的顶部AD作为正视面与球面图像相切于B点。从正四棱锥体的顶部的每条边向x轴正方向引出四个均与球体相切的平面,其中一个平面AI与球面图像相切于C点,相邻面之间相交的直线作为面边界,获得四个梯形,可做为四个侧视面。正四棱锥体的底部IL作为背视面与球面图像相切于K点,与侧视面的四个梯形相交的直线作为面边界,从而获得一个矩形面。
示例性的,图8a-8c为本申请球面图像处理方法实施例二的区域划分示意图,如图8a-8c所示,服务器以视点为顶点,设定的角度为ψ的角为处于视点的FOV角,以球心到视点的连线的延长线为角平分线,确定角度为ψ的角在球面图像上对应的第三像素,以球心为顶点,以视点到球心的连线的延长线为角平分线,确定角度为δ的角在球面图像上对应的第四像素,设定的角度为δ的角为背视面张角,将FOV角和背视面张角的角度作为阈值构建与球面图像部分外切的四棱锥体,其中,四棱锥体的侧面与球面图像相切,球心到第三像素的连线的延长线与四棱锥体的侧面相交的点围成四棱锥体的顶部,球心到第四像素的连线的延长线与四棱锥体的侧面相交的点围成四棱锥体的底部。
本实施例示出的是球面图像和六面体的三种横截面视图,图8a-8c的上方为视点的正视面,图8a中球面图像与六面体的底部(背视面)和侧面(侧视面)相切,图8b中球面图像与六面体的顶部(正视面)和侧面(侧视面)相切,图8c中球面图像只与六面体的侧面(侧视面)相切,可见六面体的正视面和背视面可以均不与球面图像相切,或者其中之一不与球面图像相切。本实施例是根据视点的FOV角ψ和背视面张角δ对球面图像进行区域划分,即根据FOV角ψ和背视面张角δ,以及侧视面与球面图像相切的条件,可以构建出部分外切于球面图像的四棱锥体。角度为ψ的角的两条边与圆O相交,可以在圆O上获得E和F点,∠ESF即为FOV角,表示在S处向着OS连线的的延长线方向可见的球面图像的内容为弧面EF内的画面。以下分别针对图8a-8c描述三种四棱锥体的构建方法:
以背视面张角δ作为张角构建外切于球面图像的四棱锥体,其底部与球面图像相切,底部的边界由背视面张角δ与相切平面相交的直线组成。从四棱锥体的底部的每条边向x轴反方向引出四个均与球体相切的平面,相邻面之间相交的直线作为面边界,获得四个梯形,可做为四个侧视面。以FOV角ψ作为张角在圆O上获得E和F点,O点和E点、F点的连线的延长线与四个侧视面相交,相交的直线作为边界形成四棱锥体的顶部,即为正视面。经过上述方法构建的四棱锥体如图8a所示。
以FOV角ψ作为张角构建外切于球面图像的四棱锥体,其顶部与球面图像相切,顶部的边界由FOV角ψ与相切平面相交的直线组成。从四棱锥体的顶部的每条边向x轴正方向引出四个均与球体相切的平面,相邻面之间相交的直线作为面边界,获得四个梯形,可做为四个侧视面。以背视面张角δ作为张角与四个侧视面相交,相交的直线作为边界形成四棱锥体的底部,即为背视面。经过上述方法构建的四棱锥体如图8b所示。
以FOV角ψ和背视面张角δ作为张角构建外切于球面图像的四棱锥体,其四个侧面均与球面图像相切,相邻面之间相交的直线作为面边界,获得四个梯形,可做为四个侧视面。以FOV角ψ作为张角与四个侧视面相交,相交的直线作为边界形成四棱锥体的顶部,即为正视面。以背视面张角δ作为张角与四个侧视面相交,相交的直线作为边界形成四棱锥体的底部,即为背视面。经过上述方法构建的四棱锥体如图8c所示。
可选的,背视面张角δ也可以由FOV角ψ计算获取,可采用以下计算过程:
假设圆O的半径为r=1,S到O的偏移量长度为|OS|,根据FOV角ψ可以得到O点的正视面半张角大小
侧视面张角大小
η=∠AOI=(2π-ψ-2β)/2
根据角β、δ、η,可以确定一个外切于球面图像的四棱锥体。
在获得了正视面半张角β后,可基于β来确定背视面张角δ,其中一种方式是规定β与ε的张角范围,然后通过线性方式来获得与β对应的δ值,这里假设规定β∈[βmin,βmax],ε∈[εmin,εmax],则基于β计算ε的一种方式如下:
步骤204、根据六面体中的各个面和球心构建六个椎体。
在上述四棱锥体的基础上,从O点向四棱锥体的各个面引出六个椎体。
步骤205、根据六个椎体与球面图像相交处的像素将球面图像划分为六个区域,其中,六面体中垂直于球心到视点的连线的延长线的面对应的区域作为像素扩张区域,垂直于视点到球心的连线的延长线的面对应的区域作为像素收缩区域,其余四个面对应的区域作为过渡区域。
在上述四棱锥体的基础上,正视面对应的球面图像上的区域作为像素扩张区域,背视面对应的球面图像上的区域作为像素收缩区域,侧视面对应的球面图像上的区域作为过渡区域。
步骤206、对球面图像进行图像处理。
在确定了球面图像的区域后,可根据这些区域调整球面图像像素的分布情况,将像素进行扩大或缩小,像素分布变化实际涉及到球面图像上两个像素之间距离的变化,在像素扩张区域,球面图像上两个像素的距离被拉伸,在像素收缩区域,球面图像上两个像素的距离被缩小。因此,需要确定球面图像转换前后的坐标映射关系,服务器以S为球心,以球面图像所包围的球体空间的半径为半径,构建偏移球体,将偏移球体划分为多个区域,多个区域与球面图像上的各个区域一一对应,确定偏移球体和球面图像上彼此对应的两个区域之间的映射关系,即确定偏移球体上的点V1(x1,y1,z1)和球面图像上的点V0(x0,y0,z0)的映射关系。
一种方法是,根据从球面映射到映射面,再从映射面逆映射回球面的方式确定映射关系。映射面指的是上述四棱锥体的六个面,以图8a所示的四棱锥体为例,描述整个映射过程。
(1)对于给定映射面上任意一点,获取其在球面图像上对应的点
如图8a所示,将球面图像上的任意像素映射到其所在区域对应的映射面上,也即获取映射面上任意点在球面图像上对应区域中的位置。如弧面EF上的点对应到正视面AD上,对于正视面AD上任意一点VF点(xF,yF,zF),根据映射函数(x0,y0,z0)=f(xF,yF,zF)获取到弧面EF上的对应点V0点(x0,y0,z0)。需要说明的是,VF不一定在OV0这条射线上。对于其他映射面,同样使用与其对应的函数fN(x,y,z)即可获取到该映射面上的点在球面图像上对应区域中的位置。
示例地,对于映射面上的点VF(xF,yF,zF)与该映射面上的二维坐标点(xf,yf)对应,二者可相互转化。设定映射面上的坐标点(xf,yf)相对于该点所在映射面的宽与高的比率分别为(uf,vf),计算式可如下所示:
其中,W与H分别为映射面的宽高,由于是正方形,有W=H,uf与vf取值范围均为[-1,1]。
对于正视面AD,可以根据如下计算式获得点V0:
对于后视面IL,可以根据如下计算式获得点V0:
对于侧视面,以映射面AI为例,其为梯形映射面,宽高比率(uf,vf)的可通过如下公式获得:
其中,|AJ|、|AD|、|IL|均可以由已知张角β、ε、η与几何关系计算得到,uf、vf的值域同样为[-1,1]。
将uf取值范围更改为[0,|AJ|],以方便计算,即uf用xf的值代替,得到u’f=xf。按照等角度映射方法,可先得到调整后的u’f,设为uadj,使用如下公式计算:
其中,OC⊥AI,AP⊥CP,|AP|、|PJ|的值均可由已知张角β、ε、η与几何关系计算得到。由此,可根据如下计算式获得点V0:
(2)将映射面的尺寸大小按照一定比例系数进行缩放,使得其能够外切于以偏移点为球心,以原球半径为半径的球体,获得缩放后平面上对应的映射点。
本实施例中将四棱锥体的六个映射面缩放到相同大小,形成一个正方体,该正方体外切于以点S为球心的偏移球体。以球面图像的直径作为缩放后正方体每个面的边长,可知正视面像素被扩张,背视面像素被收缩,侧视面依照从正视面至背视面的方向进行逐渐收缩。映射面上点的位置改变可以通过函数(x’,y’,z’)=fm(x,y,z,s)实现,其中(x,y,z)为球面图像上的像素,(x’,y’,z’)为偏移球体外切的正方体的映射面上的点,s为对应于坐标点(x,y,z)的缩放系数;反之,也可以通过fm的反函数(x,y,z)=fm -1(x’,y’,z’,s’),获得偏移球体外切的正方体的映射面上的点所对应的球面图像上的像素。
图9为本申请球面图像处理方法实施例二的区域划分示意图,如图9所示,图8a的正视面AD平面被扩张为A’D’平面,侧视面AI平面被缩放为A’I’平面,背视面IL平面被收缩为I’L’平面。此时,AD平面缩放系数可为sf=|A’D’|/|AD|,IL的缩放系数可为sb=|I’L’|/|IL|,其中|.|表示长度值。对于侧视面,从A’点至I’点,其缩放系数sd可从sf至sb线性下降。通过对不同映射面进行缩放操作,改变映射面上的坐标点位置,如AD平面上的点VF(xF,yF,zF)被缩放后对应于A’D’上的点V’F(x’F,y’F,z’F)。反之,对于A’D’上任一点V’F,可以根据反向缩放,获得AD上的点VF。
(3)获得缩放后的平面对应于以偏移点为球心的球面映射点。
映射面改变后外切于球体,其对应的球面区域发生相对应的改变,如图8a中的弧面EF对应于图9中的弧面E’F’,弧面EG对应于弧面E’G’,弧面GH对应于弧面G’H’。因此,该步骤通过反映射函数(x1,y1,z1)=fi(x’F,y’F,z’F)将映射面上的点逆映射到对应偏移球体的对应区域上。例如,平面A’D’上的点V’F被逆映射到弧面E’F’上的点V1(x1,y1,z1)。
示例地,可以通过使用从六面体到球面的逆映射函数来执行该步骤。比如,对于正视面A’D’,可根据如下式获得球面上的点V1(x1,y1,z1)在映射面上的二维点坐标(xF’,yF’):
获得映射面上的二维点坐标(xF’,yF’),即可对应该映射面在三维空间对应的位置点V’F(x’F,y’F,z’F)。
通过上述步骤后,对于偏移球面上的每个像素V1(x1,y1,z1),可以获得球面图像上的像素V0(x0,y0,z0)。因此在获得偏移球面与球面图像上像素的映射关系后,可基于球面图像上的像素V0(x0,y0,z0)以及其关联邻域中的关联像素通过插值方式获得偏移球面上的像素点V1(x1,y1,z1)。
由于偏移球面上两点距离相对于原球面上对应两点的距离发生了缩放变化,因此在偏移球面上的像素的关联像素会随之变多或者变少,从而关联邻域也会变化,相对于原球面图像产生像素扩张或收缩。
在上述技术方案的基础上,当上述球面图像采用非三维空间球面坐标表示像素时,本申请中非三维空间球面坐标包括等距柱状投影(Equi-Rectangular Projection,简称:ERP)格式的像素坐标、立方体映射(Cube Map Projection,简称:CMP)格式的像素坐标、克拉斯特抛物线映射(Craster Parabolic Projection,简称:CPP)格式的像素坐标,改进的立方体映射(Adjusted Cube map Projection,简称:ACP)格式的像素坐标,截断四棱锥映射(Truncated Square Pyramid projection,简称:TSP)格式的像素坐标,紧凑格式正八面体映射(Compact Octahedron Projection,简称:COHP)格式的像素坐标以及紧凑格式正二十面体映射(Compact Icosahedral projection,简称:CISP)格式的像素坐标中的任意一种。因此服务器在获取球面图像之后要先将球面图像中表示像素的坐标映射为以球心为原点的三维空间球面坐标,然后再使用上述方法实施例中的技术方案对球面图像进行图像处理,之后服务器再将球面图像中表示像素的坐标反映射回非三维空间球面坐标。
示例一,球面图像采用ERP格式的像素坐标表示像素,ERP是将球面信号按照经度和纬度均匀采样映射获得的能够用于保存和传输的二维全景图像,该图像的像素坐标可以用经纬度来表示,宽度方向上可用经度表示,跨度为360°,高度方向上可用纬度表示,跨度为180°。服务器在视点偏移球心后,对获取的球面图像先进行像素坐标的映射。
假设在ERP格式图像中任意点(m,n),其中m为图像沿水平方向坐标,n为图像沿竖直方向坐标,根据经纬图图像点与球面经纬度的映射公式,可求得其对应点经纬度的值:
其中,W1为ERP图像宽度,H1为ERP图像高度,φ1为球面图像的经度,取值范围为[-π,π],λ1为球面图像的纬度,取值范围为[-π/2,π/2],ε0为常数,取值范围为[0,1),表示坐标偏移量,通常取值为0或0.5。然后,根据球面经纬度与球面坐标点的对应关系,可获得待生成球面上的坐标点V1(x1,y1,z1):
在服务器根据上述方法实施例中的技术方案对球面图像处理后,根据球面坐标转ERP格式经纬度坐标公式,可以获得对应球面上的点V0(x0,y0,z0)在源经纬图像的经纬度坐标(φ0,λ0):
其中,arctan2(z0,x0)表示依照坐标点(x0,z0)象限确定的arctan(z0/x0)的角度值,角度范围为(-π,π]。然后根据经纬度转图像坐标公式,进而获得该点在源经纬图上的像素点位置(m’,n’):
其中,W0为源ERP图像宽度,H0为源ERP图像高度。
示例二,球面图像采用CMP格式的像素坐标表示像素,服务器在视点偏移球心后,对获取的球面图像先进行像素坐标的映射。以CMP格式的一个映射面(x轴负轴方向的面,即正视面)为例,假设在CMP格式图像中正视面上任意点(m,n),其中m为图像沿水平方向坐标,n为图像沿竖直方向坐标,根据CMP正视面图像点与球面坐标点的映射公式,可求得其对应球面坐标点坐标点V1(x1,y1,z1)的值:
其中W1为CMP正视面图像宽度,H1为CMP正视面图像高度,ε0为常数,取值范围为[0,1),表示坐标偏移量,通常取值为0或0.5。对于CMP格式图像中的其他映射面,以类似的方式获得面上每个点对应于球面上的坐标点。
在服务器根据上述方法实施例中的技术方案对球面图像处理后,根据球面坐标转CMP格式映射面坐标公式,可以获得对应球面上的点V0(x0,y0,z0)在原CMP格式图像上的像素点位置坐标(m’,n’)(以正视面为例):
其中,W0为源CMP格式图像映射面宽度,H0为源CMP格式图像映射面高度。以类似的方式,获得整个球面在所有映射面上的像素点位置坐标。
在上述技术方案的基础上,当球面图像为3D全景球面图像时,3D全景球面图像包括左眼球面图像和右眼球面图像,因此服务器针对左眼球面图像,确定左眼球面图像的左眼球心,获取左眼视点,根据左眼球心和左眼视点确定左眼球面图像上的像素扩张区域和像素收缩区域,对左眼球面图像进行图像处理;针对右眼球面图像,确定右眼球面图像的右眼球心,获取右眼视点,根据右眼球心和右眼视点确定右眼球面图像上的像素扩张区域和像素收缩区域,对右眼球面图像进行图像处理。另外,左眼球面图像和右眼球面图像均可以如上述方法实施例所述,除像素扩张区域和像素收缩区域外,确定出过渡区域,进而分别对像素扩张区域、像素收缩区域外和过渡区域进行相应的图像处理。
3D全景球面图像指的是3D格式的全景视频,其每一帧图像包括两路360度的球面图像,一路用于左眼显示(左眼球面图像),一路用于右眼显示(右眼球面图像),两路图像在同一帧中为左眼和右眼显示的内容有些许差异,使用户在观看时出现3D效果。因此本实施例服务器分别针对左眼球面图像和右眼球面图像进行图像处理,该图像处理的方法采用上述方法实施例中的技术方案。
图10为本申请球面图像处理装置实施例的结构示意图,如图10所示,本实施例的装置可以包括:图像获取模块11、位置确定模块12、区域确定模块13和处理模块14,其中,图像获取模块11,用于获取球面图像,并确定所述球面图像的球心;位置确定模块12,用于确定用户观看所述球面图像时的视点,所述视点位于所述球面图像所包围的球体空间内除所述球心外的任意一点;区域确定模块13,用于根据所述球心和所述视点确定所述球面图像上的像素扩张区域和像素收缩区域;处理模块14,用于对所述球面图像进行图像处理,所述图像处理包括对所述像素扩张区域内的图像进行像素扩张处理,对所述像素收缩区域内的图像进行像素收缩处理,所述像素扩张处理包括将所述像素扩张区域内的图像像素的数量增多,所述像素收缩处理包括将所述像素收缩区域内的图像像素的数量减少。
在上述技术方案的基础上,所述区域确定模块13,具体用于确定所述球面图像上与所述球心和所述视点结合后满足设定的几何规则的像素,根据所述像素确定所述像素扩张区域和所述像素收缩区域。
在上述技术方案的基础上,所述区域确定模块13,具体用于根据所述视点相对于所述球心的偏移,确定所述球面图像上与所述视点的距离等于r的第一像素;以连接所述第一像素的圆为界限确定所述像素扩张区域和所述像素收缩区域,其中,所包括的像素与所述视点的距离小于r的区域作为所述像素扩张区域,所包括的像素与所述视点的距离大于r的区域作为所述像素收缩区域。
在上述技术方案的基础上,所述区域确定模块13,具体用于以所述视点为顶点,以所述视点到所述球心的连线为角平分线,确定角度为θ的角在所述球面图像上对应的第二像素;以连接所述第二像素的弧线为界限确定所述像素扩张区域和所述像素收缩区域,其中,距离所述视点较近的区域作为所述像素扩张区域,距离所述视点较远的区域作为所述像素收缩区域。
在上述技术方案的基础上,所述区域确定模块,还用于根据所述球心和所述视点确定所述球面图像上的过渡区域;所述图像处理还包括对所述过渡区域内的图像中临近所述像素扩张区域的部分进行所述像素扩张处理,对所述过渡区域内的图像中临近所述像素收缩区域的部分进行所述像素收缩处理。
在上述技术方案的基础上,所述区域确定模块13,具体用于根据所述球心和所述视点构建外切于所述球面图像的六面体;根据所述六面体中的各个面和所述球心构建六个椎体;根据所述六个椎体与所述球面图像相交处的像素将所述球面图像划分为六个区域,其中,所述六面体中垂直于所述球心到所述视点的连线的延长线的面对应的区域作为所述像素扩张区域,垂直于所述视点到所述球心的连线的延长线的面对应的区域作为所述像素收缩区域,其余四个面对应的区域作为所述过渡区域。
在上述技术方案的基础上,所述区域确定模块13,具体用于以所述视点为顶点,以所述球心到所述视点的连线的延长线为角平分线,确定角度为ψ的角在所述球面图像上对应的第三像素,所述角度为ψ的角为处于所述视点的FOV角,构建与所述球面图像外切的正四棱锥体,其中,所述正四棱锥的顶部由所述球心到所述第三像素的连线的延长线与外切于所述球面图像的平面相交的点围成。
在上述技术方案的基础上,所述区域确定模块13,具体用于以所述视点为顶点,以所述球心到所述视点的连线的延长线为角平分线,确定角度为ψ的角在所述球面图像上对应的第三像素,所述角度为ψ的角为处于所述视点的FOV角,以所述球心为顶点,以所述视点到所述球心的连线的延长线为角平分线,确定角度为δ的角在所述球面图像上对应的第四像素,所述角度为δ的角为背视面张角,构建与所述球面图像部分外切的四棱锥体,其中,所述四棱锥体的侧面与所述球面图像相切,所述球心到所述第三像素的连线的延长线与所述四棱锥体的侧面相交的点围成所述四棱锥体的顶部,所述球心到所述第四像素的连线的延长线与所述四棱锥体的侧面相交的点围成所述四棱锥体的底部。
在上述技术方案的基础上,所述区域确定模块13,具体用于在所述球面图像上,将四棱锥体的顶部对应的区域作为所述像素扩张区域,将四棱锥体的底部对应的区域作为所述像素收缩区域,将四棱锥体的侧面对应的区域作为所述过渡区域。
在上述技术方案的基础上,所述处理模块14,具体用于以所述视点为球心,以所述球面图像所包围的球体空间的半径为半径,构建偏移球体;将所述偏移球体的球面划分为多个区域,所述多个区域与所述划分后的球面图像上的各个区域一一对应;确定所述偏移球体和所述划分后的球面图像上彼此对应的两个区域之间的映射关系,并根据所述映射关系对所述划分后的球面图像进行所述图像处理。
在上述技术方案的基础上,所述处理模块14,具体用于确定所述偏移球体上的点与所述球面图像上的像素之间的映射关系。
在上述技术方案的基础上,所述处理模块14,具体用于调整所述四棱锥体构建与所述偏移球体外切的正方体,所述正方体中的各个面和所述视点构建六个椎体,根据所述六个椎体与所述偏移球体相交处的像素将所述偏移球体划分为六个区域;确定所述球面图像上的像素和所述四棱锥体上的点之间的映射关系,确定所述正方体和所述偏移球体上的映射关系,根据所述四棱锥体和所述正方体之间的映射关系确定所述偏移球体上的点与所述球面图像上的像素之间的映射关系。
在上述技术方案的基础上,当所述球面图像采用非三维空间球面坐标表示像素时,所述非三维空间球面坐标包括等距柱状投影ERP格式的像素坐标、立方体映射CMP格式的像素坐标、克拉斯特抛物线映射CPP格式的像素坐标,改进的立方体映射ACP格式的像素坐标,截断四棱锥映射TSP格式的像素坐标,紧凑格式正八面体映射COHP格式的像素坐标以及紧凑格式正二十面体映射CISP格式的像素坐标中的任意一种;所述图像获取模块11,还用于将所述球面图像中表示像素的坐标映射为以所述球心为原点的三维空间球面坐标;所述处理模块14,还用于将所述球面图像中表示像素的坐标反映射回所述非三维空间球面坐标。
在上述技术方案的基础上,当所述球面图像为3D全景球面图像时,所述3D全景球面图像包括左眼球面图像和右眼球面图像;针对所述左眼球面图像,所述图像获取模块11,还用于确定所述左眼球面图像的左眼球心;所述位置确定模块12,还用于获取左眼视点;所述区域划模块13,还用于根据左眼球心和所述左眼视点确定所述左眼球面图像上的像素扩张区域和像素收缩区域;所述处理模块14,还用于对所述左眼球面图像进行所述图像处理;针对所述右眼球面图像,所述图像获取模块11,还用于确定所述右眼球面图像的右眼球心;所述位置确定模块12,还用于获取右眼视点;所述区域划模块13,还用于根据右眼球心和所述右眼视点确定所述右眼球面图像上的像素扩张区域和像素收缩区域;所述处理模块14,还用于对所述右眼球面图像进行所述图像处理。
本申请的装置,可以用于上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图11为本申请服务器实施例的结构示意图,如图11所示,该服务器包括处理器20、存储器21、输入装置22和输出装置23;服务器中处理器20的数量可以是一个或多个,图11中以一个处理器20为例;服务器中的处理器20、存储器21、输入装置22和输出装置23可以通过总线或其他方式连接,图11中以通过总线连接为例。
存储器21作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本申请中的球面图像处理方法对应的程序指令/模块。处理器20通过运行存储在存储器21中的软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述的球面图像处理方法。
存储器21可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器21可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器21可进一步包括相对于处理器20远程设置的存储器,这些远程存储器可以通过网络连接至服务器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置22可用于接收输入的数字或字符信息,以及产生与服务器的用户设置以及功能控制有关的键信号输入。输出装置23可包括显示屏等显示设备。
本申请还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包含至少一段代码,该至少一段代码由计算机执行,以执行上述任一方法实施例所述的球面图像处理方法。
本申请还提供一种计算机程序,当所述计算机程序被计算机执行时,用于执行上述任一方法实施例所述的球面图像处理方法。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (31)
1.一种球面图像处理方法,其特征在于,包括:
获取球面图像,并确定所述球面图像的球心;
确定用户观看所述球面图像时的视点,所述视点位于所述球面图像所包围的球体空间内除所述球心外的任意一点;
根据所述球心和所述视点确定所述球面图像上的像素扩张区域和像素收缩区域;
对所述球面图像进行图像处理,所述图像处理包括对所述像素扩张区域内的图像进行像素扩张处理,对所述像素收缩区域内的图像进行像素收缩处理,所述像素扩张处理包括将所述像素扩张区域内的图像像素的数量增多,所述像素收缩处理包括将所述像素收缩区域内的图像像素的数量减少。
2.根据权利要求1所述的方法,其特征在于,所述根据所述球心和所述视点确定所述球面图像上的像素扩张区域和像素收缩区域,包括:
确定所述球面图像上与所述球心和所述视点结合后满足设定的几何规则的像素,根据所述像素确定所述像素扩张区域和所述像素收缩区域。
3.根据权利要求2所述的方法,其特征在于,所述确定所述球面图像上与所述球心和所述视点结合后满足设定的几何规则的像素,根据所述像素确定所述像素扩张区域和所述像素收缩区域,包括:
根据所述视点相对于所述球心的偏移,确定所述球面图像上与所述视点的距离等于r的第一像素;
以连接所述第一像素的圆为界限确定所述像素扩张区域和所述像素收缩区域,其中,所包括的像素与所述视点的距离小于r的区域作为所述像素扩张区域,所包括的像素与所述视点的距离大于r的区域作为所述像素收缩区域。
4.根据权利要求2所述的方法,其特征在于,所述确定所述球面图像上与所述球心和所述视点结合后满足设定的几何规则的像素,根据所述像素确定所述像素扩张区域和所述像素收缩区域,包括:
以所述视点为顶点,以所述视点到所述球心的连线为角平分线,确定角度为θ的角在所述球面图像上对应的第二像素;
以连接所述第二像素的弧线为界限确定所述像素扩张区域和所述像素收缩区域,其中,距离所述视点较近的区域作为所述像素扩张区域,距离所述视点较远的区域作为所述像素收缩区域。
5.根据权利要求1-4中任一项所述的方法,其特征在于,还包括:
根据所述球心和所述视点确定所述球面图像上的过渡区域;
所述图像处理还包括对所述过渡区域内的图像中临近所述像素扩张区域的部分进行所述像素扩张处理,对所述过渡区域内的图像中临近所述像素收缩区域的部分进行所述像素收缩处理。
6.根据权利要求5所述的方法,其特征在于,根据所述球心和所述视点确定所述球面图像上的像素扩张区域、像素收缩区域和过渡区域,包括:
根据所述球心和所述视点构建外切于所述球面图像的六面体;
根据所述六面体中的各个面和所述球心构建六个椎体;
根据所述六个椎体与所述球面图像相交处的像素将所述球面图像划分为六个区域,其中,所述六面体中垂直于所述球心到所述视点的连线的延长线的面对应的区域作为所述像素扩张区域,垂直于所述视点到所述球心的连线的延长线的面对应的区域作为所述像素收缩区域,其余四个面对应的区域作为所述过渡区域。
7.根据权利要求6所述的方法,其特征在于,所述根据所述球心和所述视点构建外切于所述球面图像的六面体,包括:
以所述视点为顶点,以所述球心到所述视点的连线的延长线为角平分线,确定角度为ψ的角在所述球面图像上对应的第三像素,所述角度为ψ的角为处于所述视点的视场(Fieldof View,FOV)角,构建与所述球面图像外切的正四棱锥体,其中,所述正四棱锥的顶部由所述球心到所述第三像素的连线的延长线与外切于所述球面图像的平面相交的点围成。
8.根据权利要求6所述的方法,其特征在于,所述根据所述球心和所述视点构建外切于所述球面图像的六面体,包括:
以所述视点为顶点,以所述球心到所述视点的连线的延长线为角平分线,确定角度为ψ的角在所述球面图像上对应的第三像素,所述角度为ψ的角为处于所述视点的FOV角,以所述球心为顶点,以所述视点到所述球心的连线的延长线为角平分线,确定角度为δ的角在所述球面图像上对应的第四像素,所述角度为δ的角为背视面张角,构建与所述球面图像部分外切的四棱锥体,其中,所述四棱锥体的侧面与所述球面图像相切,所述球心到所述第三像素的连线的延长线与所述四棱锥体的侧面相交的点围成所述四棱锥体的顶部,所述球心到所述第四像素的连线的延长线与所述四棱锥体的侧面相交的点围成所述四棱锥体的底部。
9.根据权利要求7或8所述的方法,其特征在于,所述根据所述六个椎体与所述球面图像相交处的像素将所述球面图像划分为六个区域,包括:
在所述球面图像上,将四棱锥体的顶部对应的区域作为所述像素扩张区域,将四棱锥体的底部对应的区域作为所述像素收缩区域,将四棱锥体的侧面对应的区域作为所述过渡区域。
10.根据权利要求9所述的方法,其特征在于,所述对所述划分后的球面图像进行图像处理,包括:
以所述视点为球心,以所述球面图像所包围的球体空间的半径为半径,构建偏移球体;
将所述偏移球体的球面划分为多个区域,所述多个区域与所述划分后的球面图像上的各个区域一一对应;
确定所述偏移球体和所述划分后的球面图像上彼此对应的两个区域之间的映射关系,并根据所述映射关系对所述划分后的球面图像进行所述图像处理。
11.根据权利要求10所述的方法,其特征在于,所述确定所述偏移球体和所述划分后的球面图像上彼此对应的两个区域之间的映射关系,包括:
确定所述偏移球体上的点与所述球面图像上的像素之间的映射关系。
12.根据权利要求11所述的方法,其特征在于,所述确定所述偏移球体上的点与所述球面图像上的像素之间的映射关系,包括:
调整所述四棱锥体构建与所述偏移球体外切的正方体,所述正方体中的各个面和所述视点构建六个椎体,根据所述六个椎体与所述偏移球体相交处的像素将所述偏移球体划分为六个区域;
确定所述球面图像上的像素和所述四棱锥体上的点之间的映射关系,确定所述正方体和所述偏移球体上的映射关系,根据所述四棱锥体和所述正方体之间的映射关系确定所述偏移球体上的点与所述球面图像上的像素之间的映射关系。
13.根据权利要求1-12中任一项所述的方法,其特征在于,当所述球面图像采用非三维空间球面坐标表示像素时,所述非三维空间球面坐标包括等距柱状投影ERP格式的像素坐标、立方体映射CMP格式的像素坐标、克拉斯特抛物线映射CPP格式的像素坐标,改进的立方体映射ACP格式的像素坐标,截断四棱锥映射TSP格式的像素坐标,紧凑格式正八面体映射COHP格式的像素坐标以及紧凑格式正二十面体映射CISP格式的像素坐标中的任意一种;
所述获取球面图像之后,还包括:
将所述球面图像中表示像素的坐标映射为以所述球心为原点的三维空间球面坐标;
所述对所述划分后的球面图像进行图像处理之后,还包括:
将所述球面图像中表示像素的坐标反映射回所述非三维空间球面坐标。
14.根据权利要求1-13中任一项所述的方法,其特征在于,当所述球面图像为3D全景球面图像时,所述3D全景球面图像包括左眼球面图像和右眼球面图像;所述获取球面图像之后,还包括:
针对所述左眼球面图像,确定所述左眼球面图像的左眼球心,获取左眼视点,根据所述左眼球心和所述左眼视点确定所述左眼球面图像上的像素扩张区域和像素收缩区域,对所述左眼球面图像进行所述图像处理;
针对所述右眼球面图像,确定所述右眼球面图像的右眼球心,获取右眼视点,根据所述右眼球心和所述右眼视点确定所述右眼球面图像上的像素扩张区域和像素收缩区域,对所述右眼球面图像进行所述图像处理。
15.一种球面图像处理装置,其特征在于,包括:
图像获取模块,用于获取球面图像,并确定所述球面图像的球心;
位置确定模块,用于确定用户观看所述球面图像时的视点,所述视点位于所述球面图像所包围的球体空间内除所述球心外的任意一点;
区域确定模块,用于根据所述球心和所述视点确定所述球面图像上的像素扩张区域和像素收缩区域;
处理模块,用于对所述球面图像进行图像处理,所述图像处理包括对所述像素扩张区域内的图像进行像素扩张处理,对所述像素收缩区域内的图像进行像素收缩处理,所述像素扩张处理包括将所述像素扩张区域内的图像像素的数量增多,所述像素收缩处理包括将所述像素收缩区域内的图像像素的数量减少。
16.根据权利要求15所述的装置,其特征在于,所述区域确定模块,具体用于确定所述球面图像上与所述球心和所述视点结合后满足设定的几何规则的像素,根据所述像素确定所述像素扩张区域和所述像素收缩区域。
17.根据权利要求16所述的装置,其特征在于,所述区域确定模块,具体用于根据所述视点相对于所述球心的偏移,确定所述球面图像上与所述视点的距离等于r的第一像素;以连接所述第一像素的圆为界限确定所述像素扩张区域和所述像素收缩区域,其中,所包括的像素与所述视点的距离小于r的区域作为所述像素扩张区域,所包括的像素与所述视点的距离大于r的区域作为所述像素收缩区域。
18.根据权利要求16所述的装置,其特征在于,所述区域确定模块,具体用于以所述视点为顶点,以所述视点到所述球心的连线为角平分线,确定角度为θ的角在所述球面图像上对应的第二像素;以连接所述第二像素的弧线为界限确定所述像素扩张区域和所述像素收缩区域,其中,距离所述视点较近的区域作为所述像素扩张区域,距离所述视点较远的区域作为所述像素收缩区域。
19.根据权利要求15-18中任一项所述的装置,其特征在于,所述区域确定模块,还用于根据所述球心和所述视点确定所述球面图像上的过渡区域;
所述图像处理还包括对所述过渡区域内的图像中临近所述像素扩张区域的部分进行所述像素扩张处理,对所述过渡区域内的图像中临近所述像素收缩区域的部分进行所述像素收缩处理。
20.根据权利要求19所述的装置,其特征在于,所述区域确定模块,具体用于根据所述球心和所述视点构建外切于所述球面图像的六面体;根据所述六面体中的各个面和所述球心构建六个椎体;根据所述六个椎体与所述球面图像相交处的像素将所述球面图像划分为六个区域,其中,所述六面体中垂直于所述球心到所述视点的连线的延长线的面对应的区域作为所述像素扩张区域,垂直于所述视点到所述球心的连线的延长线的面对应的区域作为所述像素收缩区域,其余四个面对应的区域作为所述过渡区域。
21.根据权利要求20所述的装置,其特征在于,所述区域确定模块,具体用于以所述视点为顶点,以所述球心到所述视点的连线的延长线为角平分线,确定角度为ψ的角在所述球面图像上对应的第三像素,所述角度为ψ的角为处于所述视点的FOV角,构建与所述球面图像外切的正四棱锥体,其中,所述正四棱锥的顶部由所述球心到所述第三像素的连线的延长线与外切于所述球面图像的平面相交的点围成。
22.根据权利要求20所述的装置,其特征在于,所述区域确定模块,具体用于以所述视点为顶点,以所述球心到所述视点的连线的延长线为角平分线,确定角度为ψ的角在所述球面图像上对应的第三像素,所述角度为ψ的角为处于所述视点的FOV角,以所述球心为顶点,以所述视点到所述球心的连线的延长线为角平分线,确定角度为δ的角在所述球面图像上对应的第四像素,所述角度为δ的角为背视面张角,构建与所述球面图像部分外切的四棱锥体,其中,所述四棱锥体的侧面与所述球面图像相切,所述球心到所述第三像素的连线的延长线与所述四棱锥体的侧面相交的点围成所述四棱锥体的顶部,所述球心到所述第四像素的连线的延长线与所述四棱锥体的侧面相交的点围成所述四棱锥体的底部。
23.根据权利要求21或22所述的装置,其特征在于,所述区域确定模块,具体用于在所述球面图像上,将四棱锥体的顶部对应的区域作为所述像素扩张区域,将四棱锥体的底部对应的区域作为所述像素收缩区域,将四棱锥体的侧面对应的区域作为所述过渡区域。
24.根据权利要求23所述的装置,其特征在于,所述处理模块,具体用于以所述视点为球心,以所述球面图像所包围的球体空间的半径为半径,构建偏移球体;将所述偏移球体的球面划分为多个区域,所述多个区域与所述划分后的球面图像上的各个区域一一对应;确定所述偏移球体和所述划分后的球面图像上彼此对应的两个区域之间的映射关系,并根据所述映射关系对所述划分后的球面图像进行所述图像处理。
25.根据权利要求24所述的装置,其特征在于,所述处理模块,具体用于确定所述偏移球体上的点与所述球面图像上的像素之间的映射关系。
26.根据权利要求25所述的装置,其特征在于,所述处理模块,具体用于调整所述四棱锥体构建与所述偏移球体外切的正方体,所述正方体中的各个面和所述视点构建六个椎体,根据所述六个椎体与所述偏移球体相交处的像素将所述偏移球体划分为六个区域;确定所述球面图像上的像素和所述四棱锥体上的点之间的映射关系,确定所述正方体和所述偏移球体上的映射关系,根据所述四棱锥体和所述正方体之间的映射关系确定所述偏移球体上的点与所述球面图像上的像素之间的映射关系。
27.根据权利要求15-26中任一项所述的装置,其特征在于,当所述球面图像采用非三维空间球面坐标表示像素时,所述非三维空间球面坐标包括等距柱状投影ERP格式的像素坐标、立方体映射CMP格式的像素坐标、克拉斯特抛物线映射CPP格式的像素坐标,改进的立方体映射ACP格式的像素坐标,截断四棱锥映射TSP格式的像素坐标,紧凑格式正八面体映射COHP格式的像素坐标以及紧凑格式正二十面体映射CISP格式的像素坐标中的任意一种;所述图像获取模块,还用于将所述球面图像中表示像素的坐标映射为以所述球心为原点的三维空间球面坐标;所述处理模块,还用于将所述球面图像中表示像素的坐标反映射回所述非三维空间球面坐标。
28.根据权利要求15-27中任一项所述的装置,其特征在于,当所述球面图像为3D全景球面图像时,所述3D全景球面图像包括左眼球面图像和右眼球面图像;
针对所述左眼球面图像,所述图像获取模块,还用于确定所述左眼球面图像的左眼球心;所述位置确定模块,还用于获取左眼视点;所述区域划模块,还用于根据所述左眼球心和所述左眼视点确定所述左眼球面图像上的像素扩张区域和像素收缩区域;所述处理模块,还用于对所述左眼球面图像进行所述图像处理;
针对所述右眼球面图像,所述图像获取模块,还用于确定所述右眼球面图像的右眼球心;所述位置确定模块,还用于获取右眼视点;所述区域划模块,还用于根据所述右眼球心和所述右眼视点确定所述右眼球面图像上的像素扩张区域和像素收缩区域;所述处理模块,还用于对所述右眼球面图像进行所述图像处理。
29.一种服务器,其特征在于,所述服务器包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-14中任一所述的球面图像处理方法。
30.一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包含至少一段代码,其特征在于,该至少一段代码由计算机执行,以执行权利要求1-14中任一所述的球面图像处理方法。
31.一种计算机程序,其特征在于,当所述计算机程序被计算机执行时,用于执行权利要求1-14中任一所述的球面图像处理方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811125870.6A CN110956583B (zh) | 2018-09-26 | 2018-09-26 | 球面图像处理方法、装置及服务器 |
PCT/CN2019/107360 WO2020063547A1 (zh) | 2018-09-26 | 2019-09-23 | 球面图像处理方法、装置及服务器 |
EP19864892.5A EP3846464A4 (en) | 2018-09-26 | 2019-09-23 | SPHERICAL IMAGE PROCESSING METHOD AND APPARATUS, AND SERVER |
US17/213,050 US12075166B2 (en) | 2018-09-26 | 2021-03-25 | Spherical image processing method and apparatus, and server |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811125870.6A CN110956583B (zh) | 2018-09-26 | 2018-09-26 | 球面图像处理方法、装置及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110956583A true CN110956583A (zh) | 2020-04-03 |
CN110956583B CN110956583B (zh) | 2022-05-10 |
Family
ID=69952390
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811125870.6A Active CN110956583B (zh) | 2018-09-26 | 2018-09-26 | 球面图像处理方法、装置及服务器 |
Country Status (4)
Country | Link |
---|---|
US (1) | US12075166B2 (zh) |
EP (1) | EP3846464A4 (zh) |
CN (1) | CN110956583B (zh) |
WO (1) | WO2020063547A1 (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111833243A (zh) * | 2020-09-20 | 2020-10-27 | 武汉中科通达高新技术股份有限公司 | 一种数据展示方法、移动终端和存储介质 |
CN111880305A (zh) * | 2020-08-14 | 2020-11-03 | 中国科学院国家天文台南京天文光学技术研究所 | 基于地图投影的大型光学望远镜非球面主镜划分的方法 |
CN112543345A (zh) * | 2020-12-02 | 2021-03-23 | 深圳创维新世界科技有限公司 | 图像处理方法、发送端、接收端以及计算机可读存储介质 |
CN112927371A (zh) * | 2021-03-03 | 2021-06-08 | 深圳市创想三维科技有限公司 | 图像处理方法、装置、计算机设备和存储介质 |
CN113163184A (zh) * | 2021-03-25 | 2021-07-23 | 复旦大学 | 一种面向vr自适应传输的投影算法 |
CN113630622A (zh) * | 2021-06-18 | 2021-11-09 | 中图云创智能科技(北京)有限公司 | 全景视频图像处理方法、服务端、目标设备、装置和系统 |
CN115103114A (zh) * | 2022-06-16 | 2022-09-23 | 京东方科技集团股份有限公司 | 全景视频的视角跟踪方法、装置、设备和介质 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11295541B2 (en) * | 2019-02-13 | 2022-04-05 | Tencent America LLC | Method and apparatus of 360 degree camera video processing with targeted view |
CN116700659B (zh) * | 2022-09-02 | 2024-03-08 | 荣耀终端有限公司 | 一种界面交互方法及电子设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103955960A (zh) * | 2014-03-21 | 2014-07-30 | 南京大学 | 一种基于单幅输入图像的图像视点变换方法 |
CN104835117A (zh) * | 2015-05-11 | 2015-08-12 | 合肥工业大学 | 基于重叠方式的球面全景图生成方法 |
CN106097245A (zh) * | 2016-07-26 | 2016-11-09 | 北京小鸟看看科技有限公司 | 一种全景3d视频图像的处理方法和装置 |
CN106127691A (zh) * | 2016-07-12 | 2016-11-16 | 北京大学深圳研究生院 | 全景图像映射方法 |
CN106846245A (zh) * | 2017-01-17 | 2017-06-13 | 北京大学深圳研究生院 | 基于主视点的全景视频映射方法 |
CN107230180A (zh) * | 2016-10-10 | 2017-10-03 | 华为技术有限公司 | 一种全景图像的映射方法、装置和设备 |
CN107622474A (zh) * | 2017-09-26 | 2018-01-23 | 北京大学深圳研究生院 | 基于主视点的全景视频映射方法 |
KR20180066551A (ko) * | 2016-12-09 | 2018-06-19 | 한국과학기술원 | 전방향 카메라의 깊이 지도 획득 방법 및 장치 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5891425B2 (ja) * | 2011-03-03 | 2016-03-23 | パナソニックIpマネジメント株式会社 | 追体験映像を提供することができる映像提供装置、映像提供方法、映像提供プログラム |
US9055277B2 (en) * | 2011-03-31 | 2015-06-09 | Panasonic Intellectual Property Management Co., Ltd. | Image rendering device, image rendering method, and image rendering program for rendering stereoscopic images |
CN102971770B (zh) * | 2011-03-31 | 2016-02-10 | 松下电器产业株式会社 | 进行全周围立体图像的描绘的图像描绘装置、图像描绘方法 |
CN107439010B (zh) * | 2015-05-27 | 2022-01-04 | 谷歌公司 | 流传输球形视频 |
KR102458339B1 (ko) * | 2015-08-07 | 2022-10-25 | 삼성전자주식회사 | 360도 3d 입체 영상을 생성하는 전자 장치 및 이의 방법 |
US10659742B2 (en) * | 2015-08-18 | 2020-05-19 | Sony Interactive Entertainment, Inc. | Image generating apparatus and image display control apparatus |
US10217189B2 (en) * | 2015-09-16 | 2019-02-26 | Google Llc | General spherical capture methods |
GB202108749D0 (en) * | 2016-05-23 | 2021-08-04 | Canon Kk | Method, device, and computer program for adaptive streaming of virtual reality media content |
CN106991640B (zh) * | 2016-10-31 | 2020-06-16 | 深圳市圆周率软件科技有限责任公司 | 一种全景图像展开方法及系统 |
CN108124108B (zh) * | 2016-11-30 | 2020-03-27 | 央视国际网络无锡有限公司 | 一种球面全景图像/视频中像素均衡方法 |
US10313664B2 (en) * | 2017-01-11 | 2019-06-04 | Qualcomm Incorporated | Adjusting field of view of truncated square pyramid projection for 360-degree video |
US10958942B2 (en) * | 2017-02-27 | 2021-03-23 | Koninklijke Kpn N.V. | Processing spherical video data |
US11057643B2 (en) * | 2017-03-13 | 2021-07-06 | Mediatek Inc. | Method and apparatus for generating and encoding projection-based frame that includes at least one padding region and at least one projection face packed in 360-degree virtual reality projection layout |
US9998664B1 (en) * | 2017-06-20 | 2018-06-12 | Sliver VR Technologies, Inc. | Methods and systems for non-concentric spherical projection for multi-resolution view |
CN107396077B (zh) * | 2017-08-23 | 2022-04-08 | 深圳看到科技有限公司 | 虚拟现实全景视频流投影方法和设备 |
CN107864370A (zh) * | 2017-11-14 | 2018-03-30 | 暴风集团股份有限公司 | 一种球面全景图处理方法、装置、服务器及系统 |
CN111971954A (zh) * | 2018-04-11 | 2020-11-20 | Lg电子株式会社 | 使用与热点和roi相关的元数据发送360度视频的方法和装置 |
-
2018
- 2018-09-26 CN CN201811125870.6A patent/CN110956583B/zh active Active
-
2019
- 2019-09-23 EP EP19864892.5A patent/EP3846464A4/en active Pending
- 2019-09-23 WO PCT/CN2019/107360 patent/WO2020063547A1/zh unknown
-
2021
- 2021-03-25 US US17/213,050 patent/US12075166B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103955960A (zh) * | 2014-03-21 | 2014-07-30 | 南京大学 | 一种基于单幅输入图像的图像视点变换方法 |
CN104835117A (zh) * | 2015-05-11 | 2015-08-12 | 合肥工业大学 | 基于重叠方式的球面全景图生成方法 |
CN106127691A (zh) * | 2016-07-12 | 2016-11-16 | 北京大学深圳研究生院 | 全景图像映射方法 |
CN106097245A (zh) * | 2016-07-26 | 2016-11-09 | 北京小鸟看看科技有限公司 | 一种全景3d视频图像的处理方法和装置 |
CN107230180A (zh) * | 2016-10-10 | 2017-10-03 | 华为技术有限公司 | 一种全景图像的映射方法、装置和设备 |
KR20180066551A (ko) * | 2016-12-09 | 2018-06-19 | 한국과학기술원 | 전방향 카메라의 깊이 지도 획득 방법 및 장치 |
CN106846245A (zh) * | 2017-01-17 | 2017-06-13 | 北京大学深圳研究生院 | 基于主视点的全景视频映射方法 |
CN107622474A (zh) * | 2017-09-26 | 2018-01-23 | 北京大学深圳研究生院 | 基于主视点的全景视频映射方法 |
Non-Patent Citations (1)
Title |
---|
江龙: ""360°泊车辅助系统全景成像的研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111880305A (zh) * | 2020-08-14 | 2020-11-03 | 中国科学院国家天文台南京天文光学技术研究所 | 基于地图投影的大型光学望远镜非球面主镜划分的方法 |
CN111833243A (zh) * | 2020-09-20 | 2020-10-27 | 武汉中科通达高新技术股份有限公司 | 一种数据展示方法、移动终端和存储介质 |
CN112543345A (zh) * | 2020-12-02 | 2021-03-23 | 深圳创维新世界科技有限公司 | 图像处理方法、发送端、接收端以及计算机可读存储介质 |
CN112543345B (zh) * | 2020-12-02 | 2023-01-06 | 深圳创维新世界科技有限公司 | 图像处理方法、发送端、接收端以及计算机可读存储介质 |
CN112927371A (zh) * | 2021-03-03 | 2021-06-08 | 深圳市创想三维科技有限公司 | 图像处理方法、装置、计算机设备和存储介质 |
CN113163184A (zh) * | 2021-03-25 | 2021-07-23 | 复旦大学 | 一种面向vr自适应传输的投影算法 |
CN113163184B (zh) * | 2021-03-25 | 2022-11-18 | 复旦大学 | 一种面向vr自适应传输的投影算法 |
CN113630622A (zh) * | 2021-06-18 | 2021-11-09 | 中图云创智能科技(北京)有限公司 | 全景视频图像处理方法、服务端、目标设备、装置和系统 |
CN113630622B (zh) * | 2021-06-18 | 2024-04-26 | 中图云创智能科技(北京)有限公司 | 全景视频图像处理方法、服务端、目标设备、装置和系统 |
CN115103114A (zh) * | 2022-06-16 | 2022-09-23 | 京东方科技集团股份有限公司 | 全景视频的视角跟踪方法、装置、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
EP3846464A1 (en) | 2021-07-07 |
CN110956583B (zh) | 2022-05-10 |
US20210218890A1 (en) | 2021-07-15 |
US12075166B2 (en) | 2024-08-27 |
WO2020063547A1 (zh) | 2020-04-02 |
EP3846464A4 (en) | 2021-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110956583B (zh) | 球面图像处理方法、装置及服务器 | |
CN110663245B (zh) | 用于存储成像数据的重叠区以产生优化拼接图像的设备及方法 | |
US11257283B2 (en) | Image reconstruction method, system, device and computer-readable storage medium | |
US7570280B2 (en) | Image providing method and device | |
CN107924556B (zh) | 图像生成装置和图像显示控制装置 | |
US20170280133A1 (en) | Stereo image recording and playback | |
US10650592B2 (en) | Methods and apparatus for providing rotated spherical viewpoints | |
JP2019534500A (ja) | 没入型ビデオフォーマットのための方法、機器、及びシステム | |
WO2017128887A1 (zh) | 全景图像的校正3d显示方法和系统及装置 | |
Nielsen | Surround video: a multihead camera approach | |
CN113643414A (zh) | 一种三维图像生成方法、装置、电子设备及存储介质 | |
TW201803358A (zh) | 將沈浸式視訊格式化用於傳統及沈浸式顯像元件之方法、裝置及串流 | |
CN105809729A (zh) | 一种虚拟场景的球形全景渲染方法 | |
CN113286138A (zh) | 一种全景视频显示方法及显示设备 | |
CN114513646B (zh) | 一种三维虚拟场景中全景视频的生成方法及设备 | |
US10699372B2 (en) | Image generation apparatus and image display control apparatus | |
CN110060349B (zh) | 一种扩展增强现实头戴式显示设备视场角的方法 | |
CN108022204A (zh) | 一种柱面全景视频转换为球面全景视频的方法 | |
KR20190074490A (ko) | 이미지의 관심 영역의 위치에 따라 이미지를 다면체에 매핑하는 장치 및 그 영상 처리 방법 | |
CN110913198B (zh) | 一种vr图像传输方法 | |
CN110913199B (zh) | 一种vr图像传输方法 | |
KR101947799B1 (ko) | 가상현실 콘텐츠 서비스를 위한 360도 vr 어안 렌더링 방법 | |
JP2012191380A (ja) | カメラ、画像変換装置、及び画像変換方法 | |
JP7302647B2 (ja) | 画像処理システム、画像処理方法およびプログラム | |
CN105828104A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |