本发明涉及一种全景视频插帧方法及装置,属于图像处理技术领域。
背景技术:
全景相机可以拍摄360度大空间视频,并以独特的播放方式,如水晶球、小行星等模式进行展示,或以vr模式配合头显设备进行观看,带来有别于普通视频的观看体验,因而得到越来越多的关注和应用。相比于普通视频,全景视频由于展示的是360度的图像,因而同等分辨率下像素密度更低,带给人不清晰的视觉感受。因此为了获得较为清晰的全景视频,图像分辨率越高越好。由于视频传输带宽和软硬件编解码能力的限制,需平衡单帧图像分辨率和视频帧率。理论上,视频帧率达到24fps时,由于视觉暂留效应可观看到流畅的视频,因而只要满足这个帧率要求即可尽可能地提高单帧图像的分辨率。但是,当画面中存在运动的物体,或是拍摄高速运动的物体时,常规帧率下物体可能会出现运动不连续或卡顿的现象,慢速播放时,卡顿的现象则更为明显。
技术实现要素:
为了解决上述存在的问题,本发明公开了一种全景视频插帧方法及装置,用于解决由于帧率限制,全景相机拍摄运动物体或是高速运动的物体后播放时存在运动不连续的问题,同时可实现慢动作播放的连续性。其具体技术方案如下:
一种全景视频插帧方法,包括以下操作步骤:
步骤1:加载全景视频,并解码得到全景经纬度图像序列;
步骤2:将全景经纬度图像投影到球面上;
步骤3:获取扩展全景经纬度图像;
步骤4:取相邻两幅扩展全景经纬度图像逐点计算位移值;
步骤5:根据插入帧数和位移值,变换相邻两组扩展全景经纬度图并进行融合,得到新插入的图像帧;
步骤6:将原始图像帧和新插入图像帧统一编码,获得高帧率的全景视频。
所述步骤2中所述的球面所在球体的经度角度值的范围为-180°—180°,球体的纬度角度值的范围为-90°—90°,经度:纬度为2:1,全景图像的宽:高也需满足2:1的要求,若全景经纬度图像的宽:高不满足2:1,则进行重采样,直到满足2:1的要求,然后将全景经纬度图像投影到球面上。
所述步骤3的具体步骤为:将球面以一条半圆弧线作为分割线展开,得到宽高比为2:1的全景图,
当画面中存在运动物体时,会出现运动物体被分割展开的情况,那么在下一步计算相邻两帧图像的位移值时会出现匹配不准而使插入帧中运动物体恢复不正确的情况,因此,结合全景图像360度记录的特性,展开时,全景图像沿分割线左右对称的两条半圆弧线处展开,得到扩展全景经纬度图,扩展补充部分图像的宽度与原全景图的经度对应,扩展全景经纬度图的高度与原全景图的高度一致。
一种全景视频插帧装置,包括顺次连接的全景视频解码模块、球面投影模块、扩展全景经纬度图像生成模块、位移场计算模块、变换融合模块和压缩编码模块,
所述全景视频解码模块,用于将全景视频解码得到全景经纬度图像序列;
所述球面投影模块,用于将全景经纬度图像投影到球面上;
所述扩展全景经纬度图像生成模块,用于将球面全景展开为经纬度全景图时,在经纬度全景图的左右两侧补充经度大小对应的图像,以确保运动物体不会被分割开来;
所述位移场计算模块,用于计算相邻两帧扩展全景经纬度图像之间的位移值;
所述变换融合模块,用于根据位移值和插入帧数,对相邻两帧扩展全景经纬度图像进行变换并融合,生成新插入的扩展全景图像帧。根据原始图像帧在扩展图像帧中的位置,截取出最终的与原图像一样大小的插入全景图像帧;
所述压缩编码模块,用于将原始图像帧和新插入图像帧统一编码,获得高帧率的全景视频。
本发明的有益效果是:
本发明能有效解决由于帧率限制,全景相机拍摄运动物体或是高速运动的物体后播放时存在运动不连续的问题,同时可实现慢动作播放的连续性。
附图说明
图1是本发明方法的流程图,
图2是全景球面投影图,
图3是运动物体在相邻两帧全景经纬度图中的位置示意图,
其中,图3(a)表示t帧在全景经纬度图中的位置示意图,
图3(b)表示t+1帧在全景经纬度图中的位置示意图,
图4是运动物体在相邻两帧扩展全景经纬度图中的位置示意图,
其中,图4(a)表示t帧在扩展全景经纬度图中的位置示意图,
图4(b)表示t+1帧在扩展全景经纬度图中的位置示意图,
图5是本发明全景视频插帧装置的模块连接示意图。
具体实施方式
下面结合附图和具体实施方式,进一步阐明本发明。应理解下述具体实施方式仅用于说明本发明而不用于限制本发明的范围。
图1是本发明的结构示意图,结合附图可见,本全景视频插帧方法,包括以下操作步骤:
步骤1:加载全景视频,并解码得到全景经纬度图像序列;加载全景视频可以通过电脑端、云端或者嵌入式端都可以。
步骤2:将全景经纬度图像投影到球面上;
球体经度角度值在-180:180度范围,球体纬度角度值在-90:90度范围,经纬度满足2:1的关系,因此,全景图像的宽和高也需满足2:1的要求。若全景经纬度图像的宽和高不满足这个比例,需进行重采样以达到这个要求,然后将全景经纬度图像投影到球面上,如图2所示。
步骤3:获取扩展全景经纬度图像;
全景球面投影图如图2所示,球面展开时,一般以圆弧abc为分割线展开得到宽高比为2:1的全景图。但是,当画面中存在运动物体时,会出现运动物体被分割展开的情况,如图3所示。那么在下一步计算相邻两帧图像的位移值时会出现匹配不准而使插入帧中运动物体恢复不正确的情况。因此,结合全景图像可以360度记录的特性,展开时,全景图像的右侧从圆弧ab1c处展开,全景图像的左侧从圆弧ab2c处展开,得到如图4所示的扩展全景经纬度图,扩展补充部分图像的宽度与图2中的经度θ对应,扩展全景经纬度图的高度与原全景图的高度一致。
步骤4:取相邻两幅扩展全景经纬度图像逐点计算位移值;
如图3所示,t表示时间,假设第t帧中存在运动物体arc11和arc21,根据s103生成第t帧和t+1帧的扩展全景经纬度图像,第t+1帧的运动物体变为arc12和arc22。根据相邻两帧图像的相似性,逐点计算相邻两帧图像的位移值。在原全景经纬度图中,arc11和arc12的运动未超出图像范围,arc11和arc12可以被正确的匹配到。而第t+1帧中arc22被分割到图像的左侧,但在扩展全景图像中,第t帧在图像的左侧补充了arc21的特征,因此arc21和arc22也可以被正确的匹配到。至此整个全景图像的位移场可以正确计算出来。
步骤5:根据插入帧数和位移值,变换相邻两组扩展全景经纬度图并进行融合,得到新插入的图像帧;
帧数是本发明方法的输入参数,即可以根据需要设置的,假设插入帧数为n,相邻两帧扩展全景经纬度图像的位移场为d,则为生成第i(1<=i<=n)帧插入图像,第t帧扩展全景图像的变换位移场为1/(n+1)*i*d,第t+1帧扩展全景图像的变换位移场为-(1-1/(n+1)*i)*d,根据相邻两帧图像的变换位移场,生成新位置的扩展全景经纬度图并融合,得到第i帧插入帧的扩展全景经纬度图,截取原全景图位置和宽度的图像,得到最终满足宽高2:1的全景经纬度图。
步骤6:将原始图像帧和新插入图像帧统一编码,获得高帧率的全景视频。统一编码就是将按时间序列,将原始帧和新插入帧排好序,然后按照一定的编码模式进行编码压缩,利于后期的视频传输。
一种全景视频插帧装置,包括顺次连接的全景视频解码模块、球面投影模块、扩展全景经纬度图像生成模块、位移场计算模块、变换融合模块和压缩编码模块,
所述全景视频解码模块,用于将全景视频解码得到全景经纬度图像序列;
所述球面投影模块,用于将全景经纬度图像投影到球面上;
所述扩展全景经纬度图像生成模块,用于将球面全景展开为经纬度全景图时,在经纬度全景图的左右两侧补充经度大小对应的图像,以确保运动物体不会被分割开来;
所述位移场计算模块,用于计算相邻两帧扩展全景经纬度图像之间的位移值;
所述变换融合模块,用于根据位移值和插入帧数,对相邻两帧扩展全景经纬度图像进行变换并融合,生成新插入的扩展全景图像帧。根据原始图像帧在扩展图像帧中的位置,截取出最终的与原图像一样大小的插入全景图像帧;
所述压缩编码模块,用于将原始图像帧和新插入图像帧统一编码,获得高帧率的全景视频。
本发明方案所公开的技术手段不仅限于上述技术手段所公开的技术手段,还包括由以上技术特征任意组合所组成的技术方案。
以上述依据本发明的理想实施例为启示,通过上述的说明内容,相关工作人员完全可以在不偏离本项发明技术思想的范围内,进行多样的变更以及修改。本项发明的技术性范围并不局限于说明书上的内容,必须要根据权利要求范围来确定其技术性范围。