本发明涉及视频编码技术,特别是涉及一种全景视频六角形采样方法及装置。
背景技术:
全景视频是指空间中一个观察点四周所有的场景,由这个观察点所能接收到的所有光线构成。全景视频可以抽象成一个以观察点为中心的球面。
在用计算机处理全景视频的时候,不可避免地要对全景视频进行离散化空间采样。在对全景视频进行离散化空间采样的时候,需要保证一定的空间采样密度,以达到所需的清晰度。同时,又要考虑到计算机的存储器不适合存储球面结构的数据,需要以某种方式把采样点排列到平面上。
现有的球面采样方法,通常将球面采样过程分为三步:第一步,映射,把球面映射为平面上的一个区域;第二步,平面采样,以映射后的平面区域为基础设计采样点的分布方式;第三步,排列,把采样点排列为一个矩形。
在第一步映射的过程中,经常不是等面积映射,而且球面的不同区域在映射前后面积的比例也是不同的。第二步平面采样的过程中,经常是把采样点设计成在映射后的平面区域中均匀分布。第一步和第二步结合起来,就会造成采样点在球面上的分布不均匀。理论上,球面赤道附近的采样点数应该比两极附近采样点数多。第三步在排列时,往往不能做到内容的完整相邻,给视频编码压缩带来不利。
目前,有三种常用的球面采样方法:经纬图采样,六面体采样以及棱锥采样。
经纬图采样如图1所示,球面上任意一个点可以用所处的经度θ和纬度
六面体采样如图2所示,首先将球面映射为其外切正六面体的六个面,从而得到六个平面正方形,再对六个平面正方形进行均匀采样,最终用某种方式把六个正方形拼成一个矩形。六面体采样的采样点在球面上的分布也是不均匀的,依然存在较大的冗余,并且矩形的内容也不具有完整相邻性。
棱锥采样如图3所示,首先将球面映射为一个外切正四棱锥,再将该正四棱锥的每个侧面(等腰三角形)沿底边垂线的方向进行压缩,直到顶角变成直角。这样底面和四个经过二次映射的侧面正好可以拼成一个正方形。最后对这个正方形进行均匀采样。棱锥采样的采样点在球面上的分布也是不均匀的,矩形的内容也不具有完整相邻性。其不均匀程度介于经纬图采样和六面体采样之间,冗余程度也介于经纬图采样和六面体采样之间。
综上所述,已有的全景视频采样方法的主要缺点是存在较大的采样结构冗余和最终形成的矩形不具有内容完整相邻性。采样点在球面上不均匀分布,不仅会带来采样冗余,还给视频质量评价带来不便,因为最终的采样点对应的球面面积是不同的,因此每个采样点的失真对视频质量的影响也是不同的,在计算全景视频经过某种处理,例如压缩解压缩后的质量损失时,必须考虑到每个采样点的重要性是不同的。矩形视频在内容上的不相邻性也不利于视频编码的压缩编码。
技术实现要素:
为克服上述现有技术存在的不足,本发明之目的在于提供一种全景视频六角形采样方法及装置,其可以使采样点在球面上的分布满足赤道附近采样点数多,两极附近采样点数很少,从而避免了采样结构冗余,使得在达到相同的空间清晰度的条件下,采样点数减少,而且,拼成的矩形具有良好的内容相邻性,能提高编码压缩效率。
为达上述及其它目的,本发明提供一种全景视频六角形采样方法,包括如下步骤:
步骤一,用等间隔的纬线将球面分成n=6k个环形曲面,其中k为正整数;将得到的环形曲面依次记为oi,i=0,1,...n-1,从球心的角度观察,将oi按照从上到下的顺序排列;。
步骤二,用等间隔的经线将环形曲面oi均匀地分成ti个区域,其中,当0<=i<k时,ti=8i+4,当k<=i<3k时,ti=10k,当3k<=i<n时,ti=tn-1-i,其中一条经线为0°经线;将得到的区域依次记为ai,j,j=0,1,...ti-1,从球心的角度观察,ai,j按照东经度数增加或西经度数减少的顺序排列,其中ai,0和ai,ti-1相邻且分割线为0°经线;
步骤三,计算步骤二得到的球面上的每一个区域ai,j内的光线的平均值,作为该区域对应的采样点的采样值si,j;
步骤四,将采样值si,j排列成一个矩阵,用x表示si,j所处的列,y表示si,j所处的行,令di=i-5k,h=k-di-1,则
当0≤i<k,0≤j<2i+1时,y=i+k,x=11k-i+j-1;
当0≤i<k,2i+1≤j<4i+2时,y=3i+k-j+1,x=11k+i;
当0≤i<k,4i+2≤j<6i+3时,y=k-i-1,x=11k+5i-j+2;
当0≤i<k,6i+3≤j<8i+4时,y=k+j-7i-4,x=11k-i-1;
当k≤i<5k时,y=i-k,x=j;
当0≤di<k,0≤j<2h+1时,y=di+2k,x=11k-h+j-1;
当0≤di<k,2h+1≤j<4h+2时,y=j-3h-2+3k,x=12k-di-1;
当0≤di<k,4h+2≤j<6h+3时,y=4k-di-1,x=11k+5h-j+2;
当0≤di<k,6h+3≤j<8h+4时,y=3k-j+7h+3,x=10k+di;
到一个12k列×4k行的矩阵,或者将上述矩阵转置,得到一个4k列×12k行的矩阵。
进一步的,在所述的一种全景视频六角形采样方法中:于步骤一中,n为8的倍数,或n为16的倍数。
相应的,本发明还提供一种全景视频六角形采样装置,包括:
球面分割单元,用等间隔的纬线将球面分成n=6k个环形曲面,k为正整数;将得到的环形曲面依次记为oi,i=0,1,...,n-1,从球心的角度观察,oi按照从上到下的顺序排列;
环形曲面分割单元,用等间隔的经线将环形曲面oi均匀地分成ti个区域,其中,当0<=i<k时,ti=8i+4,当k<=i<3k时,ti=10k,当3k<=i<n时,ti=tn-1-i,其中一条经线为0°经线;将得到的区域依次记为ai,j,j=0,1,...ti-1,从球心的角度观察,ai,j按照东经度数增加或西经度数减少的顺序排列,其中ai,0和ai,ti-1相邻且分割线为0°经线;
采样值计算单元,计算得到的球面上的每一个区域ai,j内的光线的平均值,作为该区域对应的采样点的采样值si,j;
排列单元,将采样值si,j排列成一个矩阵,用x表示si,j所处的列,y表示si,j所处的行,令di=i-5k,h=k-di-1,则
当0≤i<k,0≤j<2i+1时,y=i+k,x=11k-i+j-1;
当0≤i<k,2i+1≤j<4i+2时,y=3i+k-j+1,x=11k+i;
当0≤i<k,4i+2≤j<6i+3时,y=k-i-1,x=11k+5i-j+2;
当0≤i<k,6i+3≤j<8i+4时,y=k+j-7i-4,x=11k-i-1;
当k≤i<5k时,y=i-k,x=j;
当0≤di<k,0≤j<2h+1时,y=di+2k,x=11k-h+j-1;
当0≤di<k,2h+1≤j<4h+2时,y=j-3h-2+3k,x=12k-di-1;
当0≤di<k,4h+2≤j<6h+3时,y=4k-di-1,x=11k+5h-j+2;
当0≤di<k,6h+3≤j<8h+4时,y=3k-j+7h+3,x=10k+di;
到一个12k列×4k行的矩阵,或者将上述矩阵转置,得到一个4k列×12k行的矩阵。
与现有技术相比,本发明一种全景视频六角形采样方法及装置采样点在球面上的分布满足赤道附近采样点数多,两极附近采样点数很少,从而减少了采样结构冗余,使得在达到相同的空间清晰度的条件下,采样点数减少,而且,拼成的矩形具有良好的内容相邻性,能提高编码压缩效率。
附图说明
图1为现有技术球面采样方法中经纬图采样的示意图;
图2为现有技术球面采样方法中六面体采样的示意图;
图3为现有技术球面采样方法中棱锥采样的实验图;
图4为本发明一种全景视频六角形采样方法的步骤流程图;
图5为本发明一种全景视频六角形采样装置的系统架构图;
图6所示为一个用分辨率为4096×2048的经纬图表示的全景视频的其中一幅图像;
图7所示为采用本发明后所得的显示图像。
图8所示为采用本发明后所得的编码图像。
图9所示为采用本发明后所得的编码图像。
具体实施方式
以下通过特定的具体实例并结合附图说明本发明的实施方式,本领域技术人员可由本说明书所揭示的内容轻易地了解本发明的其它优点与功效。本发明亦可通过其它不同的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离本发明的精神下进行各种修饰与变更。
图4为本发明一种全景视频六角形采样方法的步骤流程图。如图4所示,本发明一种全景视频六角形采样方法,包括如下步骤:
第一步,根据空间清晰度要求,用等间隔的纬线将球面分成n=6k个环形曲面,其中k为正整数,在本发明优选的实施例中,n为8的倍数,或n为16的倍数;将得到的环形曲面依次记为oi,i=0,1,...n-1,从球心的角度观察,将oi按照从上到下的顺序排列;
第二步,用等间隔的经线将环形曲面oi均匀地分成ti个区域,其中,当0<=i<k时,ti=8i+4,当k<=i<3k时,ti=10k,当3k<=i<n时,ti=tn-1-i,其中一条经线为0°经线;将得到的区域依次记为ai,j,j=0,1,...ti-1,从球心的角度观察,ai,j按照东经度数增加或西经度数减少的顺序排列,其中ai,0和ai,ti-1相邻且分割线为0°经线;
第三步,计算步骤二得到的球面上的每一个区域ai,j内的光线的平均值,作为该区域对应的采样点的采样值si,j。
第四步,将采样值si,j排列成一个矩阵,用x表示si,j所处的列,y表示si,j所处的行,令di=i-5k,h=k-di-1,则
当0≤i<k,0≤j<2i+1时,y=i+k,x=11k-i+j-1;
当0≤i<k,2i+1≤j<4i+2时,y=3i+k-j+1,x=11k+i;
当0≤i<k,4i+2≤j<6i+3时,y=k-i-1,x=11k+5i-j+2;
当0≤i<k,6i+3≤j<8i+4时,y=k+j-7i-4,x=11k-i-1;
当k≤i<5k时,y=i-k,x=j;
当0≤di<k,0≤j<2h+1时,y=di+2k,x=11k-h+j-1;
当0≤di<k,2h+1≤j<4h+2时,y=j-3h-2+3k,x=12k-di-1;
当0≤di<k,4h+2≤j<6h+3时,y=4k-di-1,x=11k+5h-j+2;
当0≤di<k,6h+3≤j<8h+4时,y=3k-j+7h+3,x=10k+di;
到一个12k列×4k行的矩阵,或者将上述矩阵转置,得到一个4k列×12k行的矩阵。
图5为本发明一种全景视频六角形采样装置的系统架构图。如图5所示,本发明一种全景视频六角形采样装置,包括:球面分割单元、环形曲面分割单元、采样值计算单元以及排列单元。
所述球面分割单元,用等间隔的纬线将球面分成n=6k个环形曲面,k为正整数;将得到的环形曲面依次记为oi,i=0,1,...,n-1,从球心的角度观察,oi按照从上到下的顺序排列;
所述环形曲面分割单元,用等间隔的经线将环形曲面oi均匀地分成ti个区域,其中,当0<=i<k时,ti=8i+4,当k<=i<3k时,ti=10k,当3k<=i<n时,ti=tn-1-i,其中一条经线为0°经线;将得到的区域依次记为ai,j,j=0,1,...ti-1,从球心的角度观察,ai,j按照东经度数增加或西经度数减少的顺序排列,其中ai,0和ai,ti-1相邻且分割线为0°经线;
所述采样值计算单元,计算得到的球面上的每一个区域ai,j内的光线的平均值,作为该区域对应的采样点的采样值si,j;
所述排列单元,将采样值si,j排列成一个矩阵,用x表示si,j所处的列,y表示si,j所处的行,令di=i-5k,h=k-di-1,则
当0≤i<k,0≤j<2i+1时,y=i+k,x=11k-i+j-1;
当0≤i<k,2i+1≤j<4i+2时,y=3i+k-j+1,x=11k+i;
当0≤i<k,4i+2≤j<6i+3时,y=k-i-1,x=11k+5i-j+2;
当0≤i<k,6i+3≤j<8i+4时,y=k+j-7i-4,x=11k-i-1;
当k≤i<5k时,y=i-k,x=j;
当0≤di<k,0≤j<2h+1时,y=di+2k,x=11k-h+j-1;
当0≤di<k,2h+1≤j<4h+2时,y=j-3h-2+3k,x=12k-di-1;
当0≤di<k,4h+2≤j<6h+3时,y=4k-di-1,x=11k+5h-j+2;
当0≤di<k,6h+3≤j<8h+4时,y=3k-j+7h+3,x=10k+di;
到一个12k列×4k行的矩阵,或者将上述矩阵转置,得到一个4k列×12k行的矩阵。
以下将通过具体实施例来进一步说明本发明:
实施举例
如图6所示为一个用分辨率为4096×2048的经纬图表示的全景视频的其中一幅图像,在本发明具体实施例中,该全景视频为彩色视频,具有三个分量。假设所采用的颜色分量是rgb,采样后仍然用rgb表示每个采样点的颜色。假设空间清晰度的要求对三个分量是相同的,都是n=1536,k=256,量化精度要求对每个分量也是相同的,都是量化为256级。则对每个分量,重复如下步骤一到步骤四:
第一步,用等间隔的纬线将球面分成1536=6*256个环形曲面。将得到的环形曲面依次记为oi,i=0,1,...,1535,从球心的角度观察,oi按照从上到下的顺序排列;
第二步,用等间隔的经线将环形曲面oi均匀地分成ti个区域,其中,当0<=i<256时,ti=8i+4,当256<=i<768时,ti=2560,当768<=i<1536时,ti=t1535-i,其中一条经线为0°经线。将得到的区域依次记为ai,j,j=0,1,...ti-1,从球心的角度观察,ai,j按照东经度数增加或西经度数减少的顺序排列,其中ai,0和ai,ti-1相邻且分割线为0°经线;
第三步,计算步骤二得到的球面上的每一个区域ai,j内的光线的平均值,并进行256级量化,得到一个0到255之间的整数值,作为该区域对应的采样点的采样值,记为si,j。
第四步,将采样值排列成一个矩阵,用x表示si,j所处的列,y表示si,j所处的行,令di=i-1280,h=255-di,则
当0≤i<256,0≤j<2i+1时,y=i+256,x=2816-i+j-1;
当0≤i<256,2i+1≤j<4i+2时,y=3i+256-j+1,x=2816+i;
当0≤i<256,4i+2≤j<6i+3时,y=256-i-1,x=2816+5i-j+2;
当0≤i<256,6i+3≤j<8i+4时,y=256+j-7i-4,x=2816-i-1;
当256≤i<1280时,y=i-256,x=j;
当1280≤i<1536,0≤j<2h+1时,y=di+512,x=2816-h+j-1;
当1280≤i<1536,2h+1≤j<4h+2时,y=j-3h-2+768,x=3072-di-1;
当1280≤i<1536,4h+2≤j<6h+3时,y=1024-di-1,x=2816+5h-j+2;
当1280≤i<1536,6h+3≤j<8h+4时,y=768-j+7h+3,x=2560+di;
到一个3072列×1024行的矩阵,如图8所示;或者将上述矩阵转置,得到一个1024列×3072行的矩阵,如图9所示。
也可以将所得的采样点排列在一个1536行、3072列的矩形区域内,并将每一行编号为(i,0)的数据放在每一行的第1536个位置,编号为(i,k),k=1..ti/2,的采样点的数据放在第i行第1536+k个位置,编号为(i,ti-k),k=1..ti/2-1,的采样点的数据放在第i行第1536-k个位置。矩形区域内没有填满的部分用255填充,所得图像如图7所示。
综上所述,本发明一种全景视频六角形采样方法及装置采样点在球面上的分布满足赤道附近采样点数多,两极附近采样点数很少,从而避免了采样结构冗余,使得在达到相同的空间清晰度的条件下,采样点数减少,而且,拼成的矩形具有良好的内容相邻性,能提高编码压缩效率。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何本领域技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰与改变。因此,本发明的权利保护范围,应如权利要求书所列。