CN116709033A - 全景视频录制的方法、装置、设备及存储介质 - Google Patents
全景视频录制的方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116709033A CN116709033A CN202310573802.0A CN202310573802A CN116709033A CN 116709033 A CN116709033 A CN 116709033A CN 202310573802 A CN202310573802 A CN 202310573802A CN 116709033 A CN116709033 A CN 116709033A
- Authority
- CN
- China
- Prior art keywords
- spherical
- point
- spherical coordinate
- camera
- projection template
- 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
- 238000000034 method Methods 0.000 title claims abstract description 72
- 238000013507 mapping Methods 0.000 claims abstract description 153
- 238000009877 rendering Methods 0.000 claims abstract description 59
- 230000003287 optical effect Effects 0.000 claims description 43
- 238000003384 imaging method Methods 0.000 claims description 42
- 238000004590 computer program Methods 0.000 claims description 21
- 238000012545 processing Methods 0.000 claims description 17
- 230000000694 effects Effects 0.000 abstract description 12
- 238000010586 diagram Methods 0.000 description 10
- 230000000007 visual effect Effects 0.000 description 8
- 238000005070 sampling Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 241000226585 Antennaria plantaginifolia Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- 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
- 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
- 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
-
- 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/80—Camera processing pipelines; Components thereof
- H04N23/81—Camera processing pipelines; Components thereof for suppressing or minimising disturbance in the image signal generation
- H04N23/811—Camera processing pipelines; Components thereof for suppressing or minimising disturbance in the image signal generation by dust removal, e.g. from surfaces of the image sensor or processing of the image signal output by the electronic image sensor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/61—Scene description
-
- 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/2012—Colour editing, changing, or manipulating; Use of colour codes
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Architecture (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Image Processing (AREA)
Abstract
本申请实施例提供了一种全景视频录制的方法、装置、设备及存储介质。该方法包括:确定当前时刻下的反畸变相机图像和球面投影模板;针对所述球面投影模板内的每一球面坐标点,根据相机视场角,确定所述球面坐标点在所述反畸变相机图像内的映射点纹理;根据每一球面坐标点的映射点纹理,对所述球面投影模板进行像素渲染,得到所述当前时刻下录制的全景视频帧。本申请实施例可以消除全景视频帧内的相机畸变和球面投影畸变,实现全景视频的无畸变录制,提升全景视频录制的画质效果。
Description
技术领域
本申请实施例涉及图像处理技术领域,尤其涉及一种全景视频录制的方法、装置、设备及存储介质。
背景技术
目前,扩展现实(Extended Reality,简称为XR)技术的应用场景越来越广泛了,具体包含虚拟现实(Virtual Reality,简称为VR)、增强现实(Augmented Reality,简称为AR)和混合现实(Mixed Reality,简称为MR)等。
通常情况下,用户在佩戴好XR设备后,可以启用XR设备的影像透视(Video See-Through,简称为VST)功能,来录制真实场景内的全景视频,以便第三方用户通过另一XR设备来观看该用户所录制的全景视频。
为了保证第三方用户对于全景视频的沉浸式观看体验,全景视频录制时通常可以通过球面投影方式,来将各个全景视频帧投影变换到二维平面上进行存储,以实现全景视频的球面化播放。那么,全景视频帧在投影变换过程中会出现拉伸变形的现象,且由于镜头工艺和组装偏差,全景视频帧也会存在一定的拍摄畸变。所以,急需设计一种无畸变的全景视频录制方案,来消除全景视频内的各种畸变现象。
发明内容
本申请实施例提供一种全景视频录制的方法、装置、设备及存储介质,实现全景视频的无畸变录制,在保证全景视频录制的画质效果的基础上,降低全景视频录制时的帧处理开销,提高全景视频的录制帧率。
第一方面,本申请实施例提供了一种全景视频录制的方法,该方法包括:
确定当前时刻下的反畸变相机图像和球面投影模板;
针对所述球面投影模板内的每一球面坐标点,根据相机视场角,确定所述球面坐标点在所述反畸变相机图像内的映射点纹理;
根据每一球面坐标点的映射点纹理,对所述球面投影模板进行像素渲染,得到所述当前时刻下录制的全景视频帧。
第二方面,本申请实施例提供了一种全景视频录制的装置,该装置包括:
图像确定模块,用于确定当前时刻下的反畸变相机图像和球面投影模板;
纹理映射模块,用于针对所述球面投影模板内的每一球面坐标点,根据相机视场角,确定所述球面坐标点在所述反畸变相机图像内的映射点纹理;
视频帧录制模块,用于根据每一球面坐标点的映射点纹理,对所述球面投影模板进行像素渲染,得到所述当前时刻下录制的全景视频帧。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括:
处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行本申请第一方面中提供的全景视频录制的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,用于存储计算机程序,所述计算机程序使得计算机执行如本申请第一方面中提供的全景视频录制的方法。
第五方面,本申请实施例提供了一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现如本申请第一方面中提供的全景视频录制的方法。
本申请实施例提供的一种全景视频录制的方法、装置、设备及存储介质,在全景视频的实时录制下,首先确定当前时刻下的反畸变相机图像和球面投影模板。根据相机视场角,确定球面投影模板内的每个球面坐标点在反畸变相机图像内的映射点纹理。然后,根据每个球面坐标点的映射点纹理,对该球面投影模板进行像素渲染,来得到当前时刻下录制的全景视频帧,从而消除全景视频帧内的相机畸变和球面投影畸变,实现全景视频的无畸变录制,提升全景视频录制的画质效果。而且,通过相机视场角实现每个球面坐标点到反畸变相机图像内的便捷纹理映射,无需对球面坐标点执行任何三维空间处理,在保证全景视频录制的画质效果的基础上,进一步降低全景视频录制时的帧处理开销,从而提高全景视频的录制帧率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例示出的一种全景视频录制的方法的流程图;
图2a为本申请实施例示出的全景视频通过球面化播放时所在的球坐标系的示例性示意图;
图2b为本申请实施例示出的全景视频录制后存储的各个全景视频帧采用球面投影方式投影后所在的二维平面的示例性示意图;
图3为本申请实施例示出的球面投影模板的示例性示意图;
图4为本申请实施例示出的另一种全景视频录制的方法的流程图;
图5a为本申请实施例示出的反畸变相机图像的成像过程的原理示意图;
图5b为本申请实施例示出的球坐标系下单位球面内的任一视场空间点球面坐标与该视场空间点与相机光轴间的水平夹角α_h和垂直夹角α_v之间的变换关系的示意图;
图6为本申请实施例提供的球面投影模板内各球面坐标点的映射点纹理的确定过程的方法流程图;
图7a和图7b分别为本申请实施例提供的球面投影模板内第一类球面坐标点和第二类球面坐标点的分类原理的示例性示意图;
图8为本申请实施例示出的一种全景视频录制的装置的原理框图;
图9为本申请实施例示出的电子设备的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明,本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或方案不应被解释为比其它实施例或方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
考虑到通过球面投影方式录制全景视频时,全景视频帧在投影变换过程中会存在相应的投影畸变。而且,由于镜头工艺和组装偏差,全景视频帧也会存在一定的拍摄畸变,导致全景视频内可能存在各种形式的畸变。为了消除全景视频内的各种畸变,本申请可以提供一种无畸变的全景视频录制方案。根据相机视场角,确定球面投影模板内的每一球面坐标点在当前时刻下的反畸变相机图像内的映射点纹理,以此对球面投影模板进行像素渲染,得到当前时刻下录制的全景视频帧,从而消除全景视频帧内的相机畸变和球面投影畸变,实现全景视频的无畸变录制,提升全景视频录制的画质效果。
图1为本申请实施例示出的一种全景视频录制的方法的流程图。该方法可以由本申请提供的全景视频录制的装置来执行,其中,全景视频录制的装置可以通过任意的软件和/或硬件的方式实现。示例性地,该全景视频录制的装置可以应用于任一电子设备中,该电子设备可以包括但不限于平板电脑、手机(如折叠屏手机、大屏手机等)、可穿戴设备、车载设备、XR设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,简称为UMPC)、上网本、个人数字助理(personal digital assistant,简称为PDA)、智能电视、智慧屏、高清电视、4K电视、智能音箱、智能投影仪等设备,本申请对电子设备的具体类型不作任何限制。
具体的,如图1所示,该方法可以包括如下步骤:
S110,确定当前时刻下的反畸变相机图像和球面投影模板。
对于任一用户所录制的全景视频而言,为了保证全景视频在其他用户端的播放逼真性,通常会采用球面投影方式来录制全景视频,以将真实场景内的三维实时影像投影变换到二维平面上进行存储,得到每一时刻下的全景视频帧,从而实现全景视频的球面化播放。
由此可知,全景视频录制后存储的各个全景视频帧可以是采用球面投影方式投影后的二维平面图像。而且,全景视频为立体视频,可以通过球坐标系下的相应球面进行播放。如图2a所示,对于球坐标系下的任一球面点(也就是全景视频帧中的某一像素点),可以通过方位角和仰角θ来表示。其中,方位角/>的取值范围可以为[-π,π],仰角θ的取值范围可以为[-π/2,π/2]。
所以,为了保证全景视频帧的快速球面化呈现,对于各个全景视频帧所在的二维平面,本申请可以按照球坐标系中的方位角坐标和仰角坐标θ,将三维球面展开为按照分布的二维平面,作为全景视频帧所在的二维平面,如图2b所示。那么,按照每个全景视频帧中的球面坐标点/>分布,可以直接将该全景视频帧渲染到球坐标系下的三维球面内,即可实现全景视频帧的球面化呈现。
在一些可实现方式中,本申请中的球面投影方式可以为等距柱状投影(Equirectangular Projection,ERP)。ERP投影可以确定三维单位球面上的任一点到按照分布的二维平面上的投影映射关系。
本申请中,由于全景视频中的每个全景视频帧所在的二维平面是按照球坐标系中各个球面点的分布的二维平面。所以,为了保证各个全景视频帧的准确录制,本申请可以按照全景视频帧的视角大小,预先设定一个球面投影模板,以通过对该球面投影模板进行不同纹理渲染,来得到不同时刻下的全景视频帧。
其中,本申请中的球面投影模板的渲染视场角与相机视场角相关。示例性的,假设相机视场角为180度,那么如图3所示,球面投影模板可以为按照分布的渲染视角均为[-π/2,π/2]的二维平面图像。
而且,由于球面投影模板面向各个全景视频帧的渲染纹理不确定,所以球面投影模板内按照分布的各个坐标点可以具备相同的灰度值,使得球面投影模板能够作为一个不包含任何图像信息的参考帧而存在。例如,本申请中的球面投影模板可以为按照分布的每个坐标点的灰度值均为255的空白图像。
为了对球面投影模板进行相应纹理渲染,而得到不同时刻下的全景视频帧,本申请可以将每一时刻下的相机图像作为球面投影模板在该时刻下的纹理图像,以对该球面投影模板进行相应纹理渲染。
而且,在全景视频的实时录制过程中,可以通过相机实时拍摄真实场景内的周边环境图像,作为本申请中的相机图像。那么,每一时刻下的相机图像内会包含该时刻下的全景视频帧内的纹理信息,所以可以将每一时刻下的相机图像作为球面投影模板在该时刻下的纹理图像,以得到该时刻下的全景视频帧。
然而,由于镜头工艺和组装偏差,真实场景内实时拍摄的相机图像可能会存在一定的拍摄畸变。所以,为了消除全景视频帧内的拍摄畸变,本申请在全景视频的实施录制过程中,可以对当前时刻下的相机图像进行反畸变处理,得到对应的反畸变相机图像,从而将该反畸变相机图像作为球面投影模板在当前时刻下的纹理图像。
作为本申请中的一种可选实现方案,对于当前时刻下的反畸变相机图像,本申请可以通过下述方式确定:获取当前时刻下的原始相机图像;采用预设定的相机畸变参数,对原始相机图像进行反畸变处理,得到对应的反畸变相机图像。
也就是说,在全景视频的实时录制过程中,每次获取到当前时刻下的原始相机图像时,如果对该原始相机图像直接进行上屏显示,用户通过XR设备安装的透镜来观看上屏显示的原始相机图像时,通常会存在相应的畸变。那么,在将每一时刻下的原始相机图像作为球面投影模板在该时刻下的纹理图像,来获取该时刻下的全景视频帧时,也会使全景视频帧存在相应的畸变。所以,为了消除全景视频帧内的拍摄畸变,本申请每次获取到当前时刻下的原始相机图像时,可以通过相应的反畸变算法,对该原始相机图像进行相应的反畸变处理,来得到当前时刻下的反畸变相机图像。
示例性的,假设原始相机图像并经过反畸变处理时,用户通过XR设备安装的透镜来观看上屏显示的原始相机图像时,通常会观看到桶形畸变下的相机图像。所以,通过对原始相机图像进行反畸变处理,可以得到枕形畸变下的相机图像,作为对应的反畸变相机图像。那么,用户通过XR设备安装的透镜来观看上屏显示的反畸变相机图像时,即可观看到无畸变的相机图像。
S120,针对球面投影模板内的每一球面坐标点,根据相机视场角,确定球面坐标点在反畸变相机图像内的映射点纹理。
反畸变相机图像内的各个像素坐标点可以表示真实场景内处于相机视场内的各个空间点在经过相机成像后,在成像平面内按照空间位置分布所形成的二维像素点。而球面投影模板内的各个球面坐标点可以表示真实场景内处于相机视场内的各个空间点经过球面投影方式进行球面投影后,按照球面坐标分布所形成的二维像素点。
由此可知,反畸变相机图像内的像素坐标点和球面投影模板内的球面坐标点之间存在相应的映射关系。而反畸变相机图像内会包含各个空间点的纹理信息。所以,可以将每一时刻下的反畸变相机图像作为球面投影模板在该时刻下的纹理图像,并通过分析球面投影模板内的各个球面坐标点到反畸变相机图像内的坐标映射关系,来判断每个球面坐标点的具体纹理。
通过对相机成像原理进行分析,可知不同空间点在成像平面内的像素坐标与该空间点与相机光轴间的夹角相关。而且,相机视场角下的视野范围的四个视场边界顶点与相机光轴间的夹角为相机视场角的一半,并经过相机成像后会变换为相机图像的四个边界顶点。而成像平面内相机图像的像素坐标的取值范围为[0,1],那么相机图像的四个边界顶点的像素坐标是已知的。所以,对于反畸变相机图像内任一像素点的像素坐标可以通过该像素点与相机光轴间的夹角和相机视场角来表示。
而且,在三维空间坐标系内,可以将相机光轴作为对应的X轴,那么通过分析反畸变相机图像内任一像素点对应的空间点与X轴间的夹角,即可确定反畸变相机图像内该像素点对应的空间点与相机光轴间的夹角。而且,反畸变相机图像内任一像素点对应的空间点在球坐标系中的球面坐标表示为可以映射到球面投影模板内该球面坐标对应的球面坐标点。所以,球面投影模板内每一球面坐标点的球面坐标/>可以通过该球面坐标点与X轴间的夹角(也就是该球面坐标点在反畸变相机图像内的映射点与相机光轴间的夹角)来表示。
那么,根据反畸变相机图像内任一像素点的像素坐标与该像素点与相机光轴间的夹角和相机视场角之间的表示关系,和球面投影模板内每一球面坐标点的球面坐标与该球面坐标点在反畸变相机图像内的映射点与相机光轴间的夹角之间的表示关系,可以确定出由相机视场角表示的球面投影模板内每一球面坐标点的球面坐标/>与反畸变相机图像内任一像素点的像素坐标之间的映射关系。
进而,在确定出当前时刻下的反畸变相机图像和球面投影模板后,可以针对球面投影模板内的每一球面坐标点,基于由相机视场角表示的球面投影模板内每一球面坐标点的球面坐标与反畸变相机图像内任一像素点的像素坐标之间的映射关系,可以利用本次使用的相机视场角和该球面坐标点的球面坐标值/>确定出该球面坐标点映射到反畸变相机图像内的像素坐标,以此确定该球面坐标点在反畸变相机图像内的映射点。然后,从反畸变相机图像中,确定出该映射点的真实纹理信息,即可得到本申请中该球面坐标点在反畸变相机图像内的映射点纹理。
其中,本申请中的映射点纹理可以为反畸变相机图像内该映射点处的像素颜色值。
S130,根据每一球面坐标点的映射点纹理,对球面投影模板进行像素渲染,得到当前时刻下录制的全景视频帧。
在确定出球面投影模板内每一球面坐标点的映射点纹理后,可以将各个球面坐标点的映射点纹理,渲染到该球面投影模板内的相应球面坐标点处,使得球面投影模板内的每个球面坐标点能够与该球面坐标点在反畸变相机图像内的映射点具备相同的纹理信息。进而,将经过像素渲染后的球面投影模板作为当前时刻下录制的全景视频帧。那么,各个时刻下的全景视频帧按照分布进行球面化播放时,可以同时消除全景视频帧在球面投影变换过程中存在的投影畸变和相机拍摄造成的拍摄畸变,从而提升全景视频录制的画质效果。
本申请实施例提供的技术方案,在全景视频的实时录制下,首先确定当前时刻下的反畸变相机图像和球面投影模板。根据相机视场角,确定球面投影模板内的每个球面坐标点在反畸变相机图像内的映射点纹理。然后,根据每个球面坐标点的映射点纹理,对该球面投影模板进行像素渲染,来得到当前时刻下录制的全景视频帧,从而消除全景视频帧内的相机畸变和球面投影畸变,实现全景视频的无畸变录制,提升全景视频录制的画质效果。而且,通过相机视场角实现每个球面坐标点到反畸变相机图像内的便捷纹理映射,无需对球面坐标点执行任何三维空间处理,在保证全景视频录制的画质效果的基础上,进一步降低全景视频录制时的帧处理开销,从而提高全景视频的录制帧率。
作为本申请中的一种可选实现方案,为了完全消除全景视频录制时的各种畸变,本申请需要准确分析球面投影模板内的各个球面坐标点与反畸变相机图像内的各个像素坐标点之间的映射关系,来确定各个球面坐标点的真实纹理信息。所以,本申请可以对球面投影模板内的各个球面坐标点到反畸变相机图像内的具体映射过程进行详细的解释说明。
图4为本申请实施例示出的另一种全景视频录制的方法的流程图。如图4所示,该方法具体可以包括如下步骤:
S410,确定当前时刻下的反畸变相机图像和球面投影模板。
S420,针对球面投影模板内的每一球面坐标点,根据相机视场角和已构建的球面坐标映射关系,确定球面坐标点的映射点像素坐标。
对于反畸变相机图像的成像过程进行分析,可以获知真实场景内处于相机视场内的各个空间点在经过相机成像后,可以在成像平面内按照空间位置分布变换为反畸变相机图像内的各个像素坐标点。而且,成像平面垂直于相机光轴,且相机光轴在成像平面内的投影点可以为成像平面内像素坐标系的坐标原点。
由此可知,不同空间点在成像平面内的像素坐标与该空间点与相机光轴间的夹角相关。而且,相机视场角表示的视野范围的四个视场边界顶点与相机光轴间的夹角为相机视场角的一半,并经过相机成像后会变换为反畸变相机图像内的四个边界顶点。而反畸变相机图像在成像平面内的像素坐标的取值范围为[0,1],那么反畸变相机图像的四个边界顶点的像素坐标是已知的。所以,通过对反畸变相机图像内任一像素点的成像过程进行分析,可以利用反畸变相机图像内四个边界顶点的像素坐标、相机视场角和该像素点对应的空间点与相机光轴间的夹角,来表示出反畸变相机图像内该像素点的像素坐标值。
而且,对于球面投影模板的球面投影过程进行分析,可以获知真实场景内处于相机视场内的各个空间点在经过球面投影方式后,可以按照球面坐标分布而变换为球面投影模板内的各个球面坐标点。
而在三维空间坐标系内,将相机光轴作为对应的X轴,那么通过分析反畸变相机图像内任一像素点对应的空间点与X轴间的夹角,即可表示反畸变相机图像内该像素点对应的空间点与相机光轴间的夹角。而且,反畸变相机图像内任一像素点对应的空间点在球坐标系中的球面坐标表示为可以映射到球面投影模板内该球面坐标/>对应的球面坐标点。
所以,通过分析球面投影模板内每一球面坐标点的球面坐标与该球面坐标点对应的空间点与X轴间的夹角之间的关系,可以利用该球面坐标点对应的空间点与X轴间的夹角,来表示该球面坐标点的球面坐标/>
然后,对于由反畸变相机图像内四个边界顶点的像素坐标、相机视场角和该像素点对应的空间点与相机光轴间的夹角所表示的反畸变相机图像内任一像素点的像素坐标值的计算关系式,和由每一球面坐标点对应的空间点与X轴间的夹角所表示的该球面坐标点的球面坐标的计算关系式,本申请可以对上述两个计算关系式进行综合分析,即可得到每一球面坐标点的球面坐标/>与反畸变相机图像内各个像素点的像素坐标值之间的映射关系,作为本申请中已构建的球面坐标映射关系。
进而,对于球面投影模板中的每一球面坐标点,本申请可以按照已构建的球面坐标映射关系,对该球面坐标点的球面坐标和本次使用的相机视场角进行统一分析,来确定出该球面坐标点在反畸变相机图像内的映射点像素坐标,以此在反畸变相机图像中确定出每个球面坐标点的映射点。
在一些可实现方式中,对于球面坐标映射关系,本申请可以通过下述步骤来确定:
第一步,根据视场边界顶点在成像平面内由相机视场角表示的第一像素坐标和任一视场空间点在成像平面内由所述视场空间点与相机光轴间的夹角表示的第二像素坐标,确定对应的像素坐标夹角表示关系。
通过对反畸变相机图像的相机成像过程进行分析,如图5a所示,按照相机视场角对应的相机视野范围,可以确定出四个视场边界顶点。而且,相机视场角可以包括水平视场角和竖直视场角两种。四个视场边界顶点在经过相机成像后,在成像平面内会变换为反畸变相机图像内的四个边界顶点。此时,由于相机光轴作为三维空间坐标系的X轴,与成像平面垂直。所以,相机光轴在成像平面内的投影点,可以作为成像平面内像素坐标系的像素原点。那么,考虑到反畸变相机图像在成像平面内像素归一化后的uv坐标的取值范围为[0,1]。所以,将成像平面左下角作为原点,并将原点平移至相机光轴与成像平面的交点(也就是成像平面的中心点)处,那么反畸变相机图像内四个边界顶点的uv坐标可以分别为(-0.5,-0.5)、(-0.5,0.5)、(0.5,-0.5)和(0.5,0.5)。
由此可知,由于视场边界顶点与相机光轴间的水平夹角为相机的水平视场角的一半,视场边界顶点与相机光轴间的垂直夹角为相机的竖直视场角的一半。所以,视场边界顶点在成像平面内的第一像素坐标中水平像素坐标值(也就是u值)可以为:0.5=tan(Fov_H/2)*f。视场边界顶点在成像平面内的第一像素坐标中垂直像素坐标值(也就是v值)可以为:0.5=tan(Fov_V/2)*f。
其中,Fov_H为相机的水平视场角,Fov_V为相机的竖直视场角,f为相机焦距。
对于相机视场范围内的任一视场空间点,可以按照上述相同方式,利用该视场空间点与相机光轴间的水平夹角和垂直夹角,来分析该视场空间点在成像平面内的第二像素坐标中的水平像素坐标值(也就是u值)和垂直像素坐标值(也就是v值)。
示例性的,任一视场空间点在成像平面内的第二像素坐标中的水平像素坐标值(也就是u值)可以为:u=tan(α_h)*f。该视场空间点在成像平面内的第二像素坐标中的垂直像素坐标值(也就是v值)可以为:v=tan(α_v)*f。
其中,α_h为该视场空间点与相机光轴间的水平夹角,α_v为该视场空间点与相机光轴间的垂直夹角。
那么,通过对上述第一像素坐标和第二像素坐标进行综合分析,即可得到对应的像素坐标夹角表示关系。该像素坐标夹角表示关系可以表示相机视场内的任一视场空间点在成像平面内的像素坐标值(也就是反畸变相机图像内任一像素点的像素坐标值)由相机视场角和该视场空间点与相机光轴间的夹角所表示的计算关系式。
而且,该像素坐标夹角表示关系可以包括水平像素坐标夹角表示关系和垂直像素坐标夹角表示关系两种。其中,该水平像素坐标夹角表示关系可以为:该垂直像素坐标夹角表示关系可以为:/>
由此可知,如果获知相机视场内任一视场空间点与相机光轴间的水平夹角α_h和垂直夹角α_v,即可确定该视场空间点在反畸变相机图像内的像素坐标值。
第二步,根据任一视场空间点的球面坐标和该视场空间点与相机光轴间的夹角,确定对应的球面坐标夹角表示关系。
考虑到相机视场内的任一视场空间点通过球面投影方式,可以变换为球面投影模板内的某一球面坐标点。那么,对于球面投影模板内的任一球面坐标点,可以按照球面坐标变换为球坐标系下任一渲染球面上的某一视场空间点。
以渲染球面为单位球面为例,对于球面投影模板内任一球面坐标点的球面坐标如图5b所示,可以在将该球面坐标点变换为球坐标系下单位球面上的视场空间点
此时,如图5b所示,可以表示出视场空间点与X轴(也就是相机光轴)间的水平夹角α_h和垂直夹角α_v。由此可以得到,视场空间点的球面坐标/>和该视场空间点与相机光轴的水平夹角α_h和垂直夹角α_v存在相应的变换关系。
考虑到相机成像时,相机光轴与X轴重合且正方向一致,而成像平面内位于相机光轴左侧的像素点与相机光轴的夹角为负,而位于相机光轴左侧的像素点与相机光轴的夹角为正。由此可知,对于球面投影模板内任一球面坐标点的球面坐标中的方位角坐标与该球面坐标点对应的视场空间点与相机光轴间的水平夹角α_h数值相同,而符号相反。也就是,对于球面投影模板内任一球面坐标点的球面坐标/>可以确定/>
而且,对于球面投影模板内任一球面坐标点的球面坐标中的仰角坐标θ,如图5b所示,可以得到/>PB=sinθ、/>进而,按照上述关系,可以确定/>
所以,按照上述方式可以确定出球面坐标夹角表示关系为和
第三步,根据像素坐标夹角表示关系和球面坐标夹角表示关系,确定对应的球面坐标映射关系。
通过对像素坐标夹角表示关系和球面坐标夹角表示关系进行综合分析,以除掉像素坐标夹角表示关系和球面坐标夹角表示关系中未知的视场空间点与相机光轴间的水平夹角α_h和垂直夹角α_v,即可得到球面投影模板内的任一球面坐标点到反畸变相机图像内的球面坐标映射关系。
本申请中,由上述分析可知,球面坐标映射关系可以包括球面坐标水平映射关系式和球面坐标垂直映射关系式两种。其中,球面坐标水平映射关系式可以为球面坐标垂直映射关系式/>
进一步的,由于上述球面坐标映射关系是将成像平面的中心点作为像素坐标系的坐标原点而得到的。但实际情况下,像素坐标系的坐标原点通常会是成像平面左下角的边界顶点。所以,对于最终的球面坐标映射关系,还需要在上述球面坐标映射关系加上坐标原点的偏移。
也就是,最终的球面坐标映射关系中的球面坐标水平映射关系式可以为球面坐标垂直映射关系式/>
然后,针对球面投影模板内的每一球面坐标点,可以按照最终的球面坐标映射关系,将相机的水平视场角Fov_H和该球面坐标点的方位角坐标代入到最终的球面坐标水平映射关系式中,即可得到该球面坐标点的映射点水平像素坐标。而且,可以将相机的竖直视场角Fov_V、该球面坐标点的方位角坐标/>和仰角坐标θ代入到最终的球面坐标垂直映射关系式中,即可得到该球面坐标点的映射点垂直像素坐标。
按照上述方式,可以确定出球面投影模板内的每一球面坐标点在反畸变相机图像内的映射点像素坐标,以此确定出每个球面坐标点在反畸变相机图像内的映射点。
S430,根据映射点像素坐标,在反畸变相机图像内确定对应的映射点纹理。
在确定出球面投影模板内每一球面坐标点在反畸变相机图像内的映射点像素坐标后,可以按照每个球面坐标点的映射点像素坐标,在反畸变相机图像内确定出对应的映射点纹理,作为该球面坐标点的真实纹理信息,以便后续对球面投影模板进行纹理渲染。
S440,根据每一球面坐标点的映射点纹理,对球面投影模板进行像素渲染,得到当前时刻下录制的全景视频帧。
本申请实施例提供的技术方案,在全景视频的实时录制下,首先确定当前时刻下的反畸变相机图像和球面投影模板。根据相机视场角,确定球面投影模板内的每个球面坐标点在反畸变相机图像内的映射点纹理。然后,根据每个球面坐标点的映射点纹理,对该球面投影模板进行像素渲染,来得到当前时刻下录制的全景视频帧,从而消除全景视频帧内的相机畸变和球面投影畸变,实现全景视频的无畸变录制,提升全景视频录制的画质效果。而且,通过相机视场角实现每个球面坐标点到反畸变相机图像内的便捷纹理映射,无需对球面坐标点执行任何三维空间处理,在保证全景视频录制的画质效果的基础上,进一步降低全景视频录制时的帧处理开销,从而提高全景视频的录制帧率。
根据本申请的一个或多个实施例,按照球面投影方式的行业规范,通常会将球面投影模板的渲染视场角设定为180度或者360度,使得不同用户可以录制统一格式下的全景视频,以支持某一用户能够成功观看其他用户录制的全景视频,实现全景视频在不同用户间的成功分享。
然而,由于相机视场角的最大极限为180度,说明反畸变相机图像的拍摄视场角最大能达到180度。那么,球面投影模板的渲染视场角通常会大于等于反畸变相机图像的拍摄视场角。所以,在球面投影模板的渲染视场角大于反畸变相机图像的拍摄视场角时,球面投影模板内处于相机视场范围之内的球面坐标点在反畸变相机图像内才会存在映射点,也才存在相应的纹理信息。而球面投影模板内处于相机视场范围之外的部分球面坐标点在反畸变相机图像内并不存在映射点,也就不存在纹理信息。
由此可知,在球面投影模板的渲染视场角大于反畸变相机图像的拍摄视场角时,反畸变相机图像作为球面投影模板的纹理图像,是无法铺满整个球面投影模板的。也就是说,球面投影模板经过纹理渲染后,会包含处于相机视场范围之内的纹理区域和处于相机视场范围之外的非纹理区域两部分。
由于反畸变相机图像内的像素点数是由相机分辨率确定的,而球面投影模板的渲染视场角大于反畸变相机图像的拍摄视场角。那么,如果采用相机分辨率对整个球面投影模板进行采样,球面投影模板内处于相机视场角之内的纹理区域的分辨率会小于相机分辨率。也就是说,在分析球面投影模板内处于相机视场角之内的纹理区域内的各个球面坐标点在反畸变相机图像内的映射点纹理时,会降低反畸变相机图像在纹理采样时的分辨率,从而导致球面投影模板经过纹理渲染后的清晰度降低。
例如,假设相机分辨率为3000*3000,相机视场角为120度,球面投影模板的渲染视场角为180度。那么,如果采用相机分辨率对整个球面投影模板进行采样,球面投影模板内处于相机视场角之内的球面坐标点数量为3000*120/180=2000。也就是说,球面投影模板将反畸变相机图像作为纹理图像,在反畸变相机图像内采样出的映射点数量为2000,使得反畸变相机图像在纹理采样时的分辨率为2000,小于相机分辨率。
为了保证全景视频录制的清晰度,本申请可以对球面投影模板内的各个球面坐标点到反畸变相机图像内的具体映射过程进行详细说明。
图6为本申请实施例提供的球面投影模板内各球面坐标点的映射点纹理的确定过程的方法流程图。如图6所示,该方法具体可以包括如下步骤:
S610,根据相机视场角、相机分辨率和球面投影模板的渲染视场角,确定球面投影模板的最佳分辨率。
由于球面投影模板的渲染视场角通常大于相机视场角,而球面投影模板内处于相机视场范围之内的球面坐标点才会在反畸变相机图像内存在映射点。所以,为了保证全景视频录制的清晰度,要求球面投影模板内处于相机视场范围之内的球面坐标点数量与反畸变相机图像通过相机分辨率采样后的像素点数量相同,也就是球面投影模板内处于相机视场范围之内的纹理区域的分辨率可以为相机分辨率。
因此,相机视场角与球面投影模板的渲染视场角之间的比值,会和相机分辨率与整个球面投影模板的分辨率之间的比值相等。那么,按照上述关系,可以确定出整个球面投影模板的分辨率,作为该球面投影模板的最佳分辨率。
例如,假设相机分辨率为3000*3000,相机视场角为120度,球面投影模板的渲染视场角为180度。那么,球面投影模板的最佳分辨率可以为3000*180/120=4500。
S620,根据最佳分辨率,确定球面投影模板内的第一类球面坐标点和第二类球面坐标点。
在确定出球面投影模板的最佳分辨率后,可以采用该最佳分辨率对球面投影模板进行采样,得到球面投影模板内的各个球面坐标点。此时,球面投影模板内处于相机视场范围内的球面坐标点数量与反畸变相机图像采用相机分辨率采样后的像素点数量相同。
由于球面投影模板内处于相机视场范围内的球面坐标点才会在反畸变相机图像内存在映射点,也就是存在真实的纹理信息。所以,为了提高球面投影模板与反畸变相机图像间的纹理映射的确定效率,本申请可以直接将球面投影模板内处于相机视场范围内的球面坐标点作为第一类球面坐标点,而将包括球面投影模板内处于相机视场范围之外的各个球面坐标点在内的相应球面坐标点作为第二类球面坐标点。
那么,对于每个第一类球面坐标点来说,需要分析该第一类球面坐标点在反畸变相机图像内的映射点纹理,而无需分析第二类球面坐标点到反畸变相机图像内的映射情况,极大减少了球面投影模板到反畸变相机图像间的映射计算开销,提高了全景视频录制的效率。
S630,针对每一第一类球面坐标点,根据相机视场角,确定第一类球面坐标点在反畸变相机图像内的映射点纹理。
对于每个第一类球面坐标点来说,该第一类球面坐标点在反畸变相机图像内存在映射点。所以,基于由相机视场角表示的球面投影模板内每一球面坐标点的球面坐标与反畸变相机图像内任一像素点的像素坐标之间的映射关系,本申请可以利用本次使用的相机视场角和该第一类球面坐标点的球面坐标值/>确定出该第一类球面坐标点映射到反畸变相机图像内的像素坐标,以此确定该第一类球面坐标点在反畸变相机图像内的映射点。然后,从反畸变相机图像中,确定出该映射点的真实纹理信息,即可得到本申请中该第一类球面坐标点在反畸变相机图像内的映射点纹理。
S640,针对每一第二类球面坐标点,将预设纹理作为第二类球面坐标点的映射点纹理。
由于整个球面投影模板内第一类球面坐标点的纹理信息才会影响到全景视频的录制真实性,而第二类球面坐标点的纹理信息并不会对全景视频的录制造成影响。所以,按照全景视频的多样化呈现需求,本申请可以预先设定一个纹理信息,该预设纹理可以为一个具体的像素颜色值,本申请对于预设纹理不作限定。
对于每个第二类球面坐标点来说,本申请可以直接将预设纹理统一赋值给各个第二类球面坐标点,从而得到第二类球面坐标点的映射点纹理。
本申请实施例提供的技术方案,根据相机视场角、相机分辨率和球面投影模板的渲染视场角,确定球面投影模板的最佳分辨率。然后,根据该最佳分辨率,确定出在反畸变相机图像内存在映射点的第一类球面坐标点和在反畸变相机图像内不存在映射点的第二类球面坐标点,以此分析第一类球面坐标点在反畸变相机图像内的映射点纹理,而无需分析第二类球面坐标点到反畸变相机图像内的映射情况,极大降低全景视频录制时的映射计算开销,提升全景视频的录制高效性。而且,通过最佳分辨率可以使球面投影模板内处于相机视场范围内的第一类球面坐标点数量与反畸变相机图像采用相机分辨率采样后的像素点数量相同,避免反畸变相机图像在纹理采样时的降采样,从而保证全景视频录制的清晰度。
作为本申请中的一种可选实现方案,对于球面投影模板内的第一类球面坐标点和第二类球面坐标点,本申请可以采用两种方式来确定:
方式一:根据球面投影模板的最佳分辨率,确定球面投影模板内的球面坐标点;从球面投影模板内的球面坐标点中,选取处于相机视场范围内的球面坐标点,作为第一类球面坐标点;将球面投影模板内选取第一类球面坐标点后的剩余球面坐标点,作为第二类球面坐标点。
也就是说,采用球面投影模板的最佳分辨率来对球面投影模板进行采样,可以得到球面投影模板内的各个球面坐标点。然后,球面投影模板内处于相机视场范围内的球面坐标点数量与反畸变相机图像采用相机分辨率采样后的像素点数量相同,使得球面投影模板经过纹理渲染后实际占用的纹理区域与反畸变相机图像具备相同的分辨率,避免反畸变相机图像在纹理采样时的降采样,保证全景视频录制的清晰度。
进而,如图7a所示,本申请可以从球面投影模板内的所有球面坐标点中,选取处于相机视场范围内的部分球面坐标点,作为第一类球面坐标点,以便分析第一类球面坐标点到反畸变相机图像的映射情况。而且,从球面投影模板内的所有球面坐标点中,可以确定出选取第一类球面坐标点后剩余的部分球面坐标点,该剩余球面坐标点在球面投影模板内处于相机视场范围之外,作为第二类球面坐标点。
方式二:将球面投影模板转换为第一球面投影模板和第二球面投影模板;根据第一球面投影模板的图像分辨率,将第一球面投影模板内的球面坐标点作为第一类球面坐标点;根据第二球面投影模板的图像分辨率,将第二球面投影模板内的球面坐标点作为第二类球面坐标点。
也就是说,在确定出球面投影模板的最佳分辨率后,由于该最佳分辨率与相机分辨率不同。所以,为了保证球面投影模板内的球面坐标点与反畸变相机图像的映射点间的分辨率一致性,本申请可以将球面投影模板转换为第一球面投影模板和第二球面投影模板两种。
其中,第一球面投影模板的渲染视场角和图像分辨率可以分别为相机视场角和相机分辨率,使得第一球面投影模板到反畸变相机图像间的纹理映射无需降采样。而且,第二球面投影模板的渲染视场角和图像分辨率可以分别为球面投影模板的渲染视场角和最佳分辨率,以便符合全景视频的录制规范。
例如,假设相机分辨率为3000*3000,相机视场角为120度,球面投影模板的渲染视场角为180度。那么,球面投影模板的最佳分辨率为4500*4500。此时,如图7b所示,球面投影模板可以转换为渲染视场角为120度、且图像分辨率为3000*3000的第一球面投影模板,以及渲染视场角为180度、且图像分辨率为4500*4500的第二球面投影模板。
然后,采用相机分辨率对第一球面投影模板进行采样,可以得到第一球面投影模板内的球面坐标点,作为第一类球面坐标点,以便后续确定第一类球面坐标点在反畸变相机图像内的映射点纹理。而且,采用最佳分辨率对第二球面投影模板进行采样,可以得到第二球面投影模板内的球面坐标点,作为第二类球面坐标点,以便将预设纹理赋值给第二类球面坐标点,得到第二类球面坐标点的映射点纹理。
可以理解的是,在将球面投影模板转换为第一球面投影模板和第二投影模板后,对于球面投影模板经过纹理渲染后得到的全景视频帧,本申请可以通过下述方式确定:根据每一第一类球面坐标点的映射点纹理,对第一球面投影模板进行像素渲染,得到当前时刻下的第一全景候选帧;根据每一第二类球面坐标点的映射点纹理,对第二球面投影模板进行像素渲染,得到当前时刻下的第二全景候选帧;合并第一全景候选帧和第二全景候选帧,得到当前时刻下录制的全景视频帧。
也就是说,对于第一球面投影模板,可以将各个第一类球面坐标点的映射点纹理,渲染到第一球面投影模板内的相应球面坐标点处,使得第一球面投影模板内的每个球面坐标点能够与第一类球面坐标点在反畸变相机图像内的映射点具备相同的纹理信息,从而得到当前时刻下的第一全景候选帧。
而且,对于第二球面投影模板,可以将各个第二类球面坐标点的映射点纹理,渲染到第二球面投影模板内的相应球面坐标点处,使得第二球面投影模板内的每个球面坐标点能够具备预设纹理,从而得到当前时刻下的第二全景候选帧。
然后,如图7b所示,按照第一全景候选帧和第二全景候选帧内的球面坐标点的球面坐标值可以将第一全景候选帧贴图合并到第二全景候选帧内,以在两者的重合区域保留第一全景候选帧的纹理信息,而在未重合区域保留第二全景候选帧的纹理信息,从而得到当前时刻下录制的全景视频帧。
图8为本申请实施例示出的一种全景视频录制的装置的原理框图。如图8所示,该装置800可以包括:
图像确定模块810,用于确定当前时刻下的反畸变相机图像和球面投影模板;
纹理映射模块820,用于针对所述球面投影模板内的每一球面坐标点,根据相机视场角,确定所述球面坐标点在所述反畸变相机图像内的映射点纹理;
视频帧录制模块830,用于根据每一球面坐标点的映射点纹理,对所述球面投影模板进行像素渲染,得到所述当前时刻下录制的全景视频帧。
在本申请的一些实施例中,纹理映射模块820,可以包括:
映射点确定单元,用于根据所述相机视场角和已构建的球面坐标映射关系,确定所述球面坐标点的映射点像素坐标;
映射点纹理确定单元,用于根据所述映射点像素坐标,在所述反畸变相机图像内确定对应的映射点纹理。
在本申请的一些实施例中,全景视频录制的装置800还可以包括映射关系确定模块,所述球面坐标映射关系通过该映射关系确定模块确定。其中,该映射关系确定模块,可以用于:
根据视场边界顶点在成像平面内由所述相机视场角表示的第一像素坐标和任一视场空间点在所述成像平面内由所述视场空间点与相机光轴间的夹角表示的第二像素坐标,确定对应的像素坐标夹角表示关系;
根据任一视场空间点的球面坐标和该视场空间点与相机光轴间的夹角,确定对应的球面坐标夹角表示关系;
根据所述像素坐标夹角表示关系和所述球面坐标夹角表示关系,确定对应的球面坐标映射关系。
在本申请的一些实施例中,所述球面坐标映射关系包括球面坐标水平映射关系式和球面坐标垂直映射关系式。映射点确定单元,可以具体用于:
将所述相机的水平视场角和所述球面坐标点的方位角坐标代入到所述球面坐标水平映射关系式中,得到所述球面坐标点的映射点水平像素坐标;
将所述相机的竖直视场角、所述球面坐标点的方位角坐标和仰角坐标代入到所述球面坐标垂直映射关系式中,得到所述球面坐标点的映射点垂直像素坐标。
在本申请的一些实施例中,图像确定模块810,可以具体用于:
获取当前时刻下的原始相机图像;
对所述原始相机图像进行反畸变处理,得到对应的反畸变相机图像。
在本申请的一些实施例中,纹理映射模块820,还可以包括:
分辨率优化单元,用于根据相机视场角、相机分辨率和所述球面投影模板的渲染视场角,确定所述球面投影模板的最佳分辨率;
坐标点分类单元,用于根据所述最佳分辨率,确定所述球面投影模板内的第一类球面坐标点和第二类球面坐标点;
第一纹理确定单元,用于针对每一所述第一类球面坐标点,根据所述相机视场角,确定所述第一类球面坐标点在所述反畸变相机图像内的映射点纹理;
第二纹理确定单元,用于针对每一所述第二类球面坐标点,将预设纹理作为所述第二类球面坐标点的映射点纹理;
其中,所述第一类球面坐标点为所述球面投影模板内处于相机视场范围内的球面坐标点。
在本申请的一些实施例中,坐标点分类单元,可以具体用于:
根据所述球面投影模板的最佳分辨率,确定所述球面投影模板内的球面坐标点;
从所述球面投影模板内的球面坐标点中,选取处于相机视场范围内的球面坐标点,作为所述第一类球面坐标点;
将所述球面投影模板内选取所述第一类球面坐标点后的剩余球面坐标点,作为所述第二类球面坐标点。
在本申请的一些实施例中,坐标点分类单元,还可以具体用于:
将所述球面投影模板转换为第一球面投影模板和第二球面投影模板,所述第一球面投影模板的渲染视场角和图像分辨率分别为所述相机视场角和所述相机分辨率,所述第二球面投影模板的渲染视场角和图像分辨率分别为所述球面投影模板的渲染视场角和最佳分辨率;
根据所述第一球面投影模板的图像分辨率,将所述第一球面投影模板内的球面坐标点作为所述第一类球面坐标点;
根据所述第二球面投影模板的图像分辨率,将所述第二球面投影模板内的球面坐标点作为所述第二类球面坐标点。
在本申请的一些实施例中,视频帧录制模块830,可以具体用于:
根据每一所述第一类球面坐标点的映射点纹理,对所述第一球面投影模板进行像素渲染,得到所述当前时刻下的第一全景候选帧;
根据每一所述第二类球面坐标点的映射点纹理,对所述第二球面投影模板进行像素渲染,得到所述当前时刻下的第二全景候选帧;
合并所述第一全景候选帧和所述第二全景候选帧,得到所述当前时刻下录制的全景视频帧。
本申请实施例中,在全景视频的实时录制下,首先确定当前时刻下的反畸变相机图像和球面投影模板。根据相机视场角,确定球面投影模板内的每个球面坐标点在反畸变相机图像内的映射点纹理。然后,根据每个球面坐标点的映射点纹理,对该球面投影模板进行像素渲染,来得到当前时刻下录制的全景视频帧,从而消除全景视频帧内的相机畸变和球面投影畸变,实现全景视频的无畸变录制,提升全景视频录制的画质效果。而且,通过相机视场角实现每个球面坐标点到反畸变相机图像内的便捷纹理映射,无需对球面坐标点执行任何三维空间处理,在保证全景视频录制的画质效果的基础上,进一步降低全景视频录制时的帧处理开销,从而提高全景视频的录制帧率。
应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图8所示的装置800可以执行本申请提供的任一方法实施例,并且装置800中的各个模块的前述和其它操作和/或功能分别为了实现本申请实施例的各个方法中的相应流程,为了简洁,在此不再赘述。
上文中结合附图从功能模块的角度描述了本申请实施例的装置800。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
图9为本申请实施例示出的电子设备的示意性框图。
如图9所示,该电子设备900可包括:
存储器910和处理器920,该存储器910用于存储计算机程序,并将该程序代码传输给该处理器920。换言之,该处理器920可以从存储器910中调用并运行计算机程序,以实现本申请实施例中的方法。
例如,该处理器920可用于根据该计算机程序中的指令执行上述方法实施例。
在本申请的一些实施例中,该处理器920可以包括但不限于:
通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等等。
在本申请的一些实施例中,该存储器910包括但不限于:
易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
在本申请的一些实施例中,该计算机程序可以被分割成一个或多个模块,该一个或者多个模块被存储在该存储器910中,并由该处理器920执行,以完成本申请提供的方法。该一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序在该电子设备中的执行过程。
如图9所示,该电子设备还可包括:
收发器930,该收发器930可连接至该处理器920或存储器910。
其中,处理器920可以控制该收发器930与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器930可以包括发射机和接收机。收发器930还可以进一步包括天线,天线的数量可以为一个或多个。
应当理解,该电子设备中的各个组件通过总线系统相连,其中,总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
本申请还提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。或者说,本申请实施例还提供一种包含指令的计算机程序产品,该指令被计算机执行时使得计算机执行上述方法实施例的方法。
当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。例如,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
以上提供的内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以该权利要求的保护范围为准。
Claims (13)
1.一种全景视频录制的方法,其特征在于,包括:
确定当前时刻下的反畸变相机图像和球面投影模板;
针对所述球面投影模板内的每一球面坐标点,根据相机视场角,确定所述球面坐标点在所述反畸变相机图像内的映射点纹理;
根据每一球面坐标点的映射点纹理,对所述球面投影模板进行像素渲染,得到所述当前时刻下录制的全景视频帧。
2.根据权利要求1所述的方法,其特征在于,所述根据相机视场角,确定所述球面坐标点在所述反畸变相机图像内的映射点纹理,包括:
根据所述相机视场角和已构建的球面坐标映射关系,确定所述球面坐标点的映射点像素坐标;
根据所述映射点像素坐标,在所述反畸变相机图像内确定对应的映射点纹理。
3.根据权利要求2所述的方法,其特征在于,所述球面坐标映射关系通过下述方式确定:
根据视场边界顶点在成像平面内由所述相机视场角表示的第一像素坐标和任一视场空间点在所述成像平面内由所述视场空间点与相机光轴间的夹角表示的第二像素坐标,确定对应的像素坐标夹角表示关系;
根据任一视场空间点的球面坐标和该视场空间点与相机光轴间的夹角,确定对应的球面坐标夹角表示关系;
根据所述像素坐标夹角表示关系和所述球面坐标夹角表示关系,确定对应的球面坐标映射关系。
4.根据权利要求2所述的方法,其特征在于,所述球面坐标映射关系包括球面坐标水平映射关系式和球面坐标垂直映射关系式,所述根据所述相机视场角和已构建的球面坐标映射关系,确定所述球面坐标点的映射点像素坐标,包括:
将所述相机的水平视场角和所述球面坐标点的方位角坐标代入到所述球面坐标水平映射关系式中,得到所述球面坐标点的映射点水平像素坐标;
将所述相机的竖直视场角、所述球面坐标点的方位角坐标和仰角坐标代入到所述球面坐标垂直映射关系式中,得到所述球面坐标点的映射点垂直像素坐标。
5.根据权利要求1所述的方法,其特征在于,确定当前时刻下的反畸变相机图像,包括:
获取当前时刻下的原始相机图像;
对所述原始相机图像进行反畸变处理,得到对应的反畸变相机图像。
6.根据权利要求1所述的方法,其特征在于,所述针对所述球面投影模板内的每一球面坐标点,根据相机视场角,确定所述球面坐标点在所述反畸变相机图像内的映射点纹理,包括:
根据相机视场角、相机分辨率和所述球面投影模板的渲染视场角,确定所述球面投影模板的最佳分辨率;
根据所述最佳分辨率,确定所述球面投影模板内的第一类球面坐标点和第二类球面坐标点;
针对每一所述第一类球面坐标点,根据所述相机视场角,确定所述第一类球面坐标点在所述反畸变相机图像内的映射点纹理;
针对每一所述第二类球面坐标点,将预设纹理作为所述第二类球面坐标点的映射点纹理;
其中,所述第一类球面坐标点为所述球面投影模板内处于相机视场范围内的球面坐标点。
7.根据权利要求6所述的方法,其特征在于,所述根据所述最佳分辨率,确定所述球面投影模板内的第一类球面坐标点和第二类球面坐标点,包括:
根据所述球面投影模板的最佳分辨率,确定所述球面投影模板内的球面坐标点;
从所述球面投影模板内的球面坐标点中,选取处于相机视场范围内的球面坐标点,作为所述第一类球面坐标点;
将所述球面投影模板内选取所述第一类球面坐标点后的剩余球面坐标点,作为所述第二类球面坐标点。
8.根据权利要求6所述的方法,其特征在于,所述根据所述最佳分辨率,确定所述球面投影模板内的第一类球面坐标点和第二类球面坐标点,还包括:
将所述球面投影模板转换为第一球面投影模板和第二球面投影模板,所述第一球面投影模板的渲染视场角和图像分辨率分别为所述相机视场角和所述相机分辨率,所述第二球面投影模板的渲染视场角和图像分辨率分别为所述球面投影模板的渲染视场角和最佳分辨率;
根据所述第一球面投影模板的图像分辨率,将所述第一球面投影模板内的球面坐标点作为所述第一类球面坐标点;
根据所述第二球面投影模板的图像分辨率,将所述第二球面投影模板内的球面坐标点作为所述第二类球面坐标点。
9.根据权利要求8所述的方法,其特征在于,所述根据每一球面坐标点的映射点纹理,对所述球面投影模板进行像素渲染,得到所述当前时刻下录制的全景视频帧,包括:
根据每一所述第一类球面坐标点的映射点纹理,对所述第一球面投影模板进行像素渲染,得到所述当前时刻下的第一全景候选帧;
根据每一所述第二类球面坐标点的映射点纹理,对所述第二球面投影模板进行像素渲染,得到所述当前时刻下的第二全景候选帧;
合并所述第一全景候选帧和所述第二全景候选帧,得到所述当前时刻下录制的全景视频帧。
10.一种全景视频录制的装置,其特征在于,包括:
图像确定模块,用于确定当前时刻下的反畸变相机图像和球面投影模板;
纹理映射模块,用于针对所述球面投影模板内的每一球面坐标点,根据相机视场角,确定所述球面坐标点在所述反畸变相机图像内的映射点纹理;
视频帧录制模块,用于根据每一球面坐标点的映射点纹理,对所述球面投影模板进行像素渲染,得到所述当前时刻下录制的全景视频帧。
11.一种电子设备,其特征在于,包括:
处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行权利要求1-9中任一项所述的全景视频录制的方法。
12.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序使得计算机执行如权利要求1-9中任一项所述的全景视频录制的方法。
13.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现如权利要求1-9中任一项所述的全景视频录制的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310573802.0A CN116709033A (zh) | 2023-05-19 | 2023-05-19 | 全景视频录制的方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310573802.0A CN116709033A (zh) | 2023-05-19 | 2023-05-19 | 全景视频录制的方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116709033A true CN116709033A (zh) | 2023-09-05 |
Family
ID=87834906
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310573802.0A Pending CN116709033A (zh) | 2023-05-19 | 2023-05-19 | 全景视频录制的方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116709033A (zh) |
-
2023
- 2023-05-19 CN CN202310573802.0A patent/CN116709033A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10595004B2 (en) | Electronic device for generating 360-degree three-dimensional image and method therefor | |
US9177368B2 (en) | Image distortion correction | |
US9819865B2 (en) | Imaging device and method for generating an undistorted wide view image | |
US10789672B2 (en) | Method and device for performing mapping on spherical panoramic image | |
US20180374192A1 (en) | Viewport Independent Image Coding and Rendering | |
US20220301121A1 (en) | Method and apparatus for correcting face distortion, electronic device, and storage medium | |
TWI637355B (zh) | 紋理貼圖之壓縮方法及其相關圖像資料處理系統與產生360度全景視頻之方法 | |
JP6764995B2 (ja) | パノラマ画像圧縮方法および装置 | |
CN112017222B (zh) | 视频全景拼接与三维融合方法及装置 | |
US20210295467A1 (en) | Method for merging multiple images and post-processing of panorama | |
US20190244424A1 (en) | Methods and apparatus for providing rotated spherical viewpoints | |
CN111402404B (zh) | 全景图补全方法、装置、计算机可读存储介质及电子设备 | |
US11922568B2 (en) | Finite aperture omni-directional stereo light transport | |
CN110060201B (zh) | 一种全景视频的热点交互方法 | |
US20220405968A1 (en) | Method, apparatus and system for image processing | |
CN109427087A (zh) | 图像处理方法和装置 | |
CN115222602B (zh) | 图像拼接方法、装置、设备及存储介质 | |
CN116709033A (zh) | 全景视频录制的方法、装置、设备及存储介质 | |
CN111161148B (zh) | 一种全景图像生成方法、装置、设备和存储介质 | |
US20230005213A1 (en) | Imaging apparatus, imaging method, and program | |
CN112291445B (zh) | 图像处理的方法、装置、设备和存储介质 | |
CN115170395A (zh) | 全景图像拼接方法、装置、电子设备、介质和程序产品 | |
CN112308809B (zh) | 一种图像合成方法、装置、计算机设备及存储介质 | |
CN114257733A (zh) | 具有视点偏移的全向图像的图像处理的方法和系统 | |
CN118368526A (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 |