全景视频的传输方法、装置及存储介质与流程

文档序号:30265125发布日期:2022-06-02 03:50阅读:187来源:国知局
全景视频的传输方法、装置及存储介质与流程

1.本发明属于图像处理技术领域,尤其涉及一种全景视频的传输方法、装置及存储介质。


背景技术:

2.全景视频是一种新兴的数据形态,和传统的视频相比,具有视野大、分辨率高、数据量大等特点。现有技术中通常是把拼接好的全景视频或原始鱼眼视频编码成标准的数据流格式进行数据传输,在客户端对数据流解码后再观看感兴趣区域,但传输这种大分辨率高画质的数据,会产生很大的网络资源开销,并且会产生一定程度的网络传输时延。


技术实现要素:

3.本发明的目的在于提供一种全景视频的传输方法、装置及存储介质,旨在解决由于现有技术中全景视频传输过程中网络资源浪费和传输时延的问题。
4.一方面,本发明提供一种全景视频的传输方法,所述方法包括下述步骤:
5.基于当前全景视频帧获取客户端用户的感兴趣区域的第一投影图像;
6.将所述第一投影图像和缩小分辨率后的当前全景视频帧编码后发送给客户端。
7.可选地,所述基于当前全景视频帧获取客户端用户的感兴趣区域的第一投影图像的步骤,包括:
8.根据全景拍摄装置预设的标定参数生成经纬度映射表;
9.获取第二投影图像的各像素在目标三维坐标系下的各第一坐标信息,其中,所述第二投影图像为根据所述客户端的屏幕尺寸从所述全景拍摄装置的正前方取景时得到的投影图像;
10.根据用于表征所述感兴趣区域的欧拉角建立旋转矩阵;
11.根据所述旋转矩阵对所述各第一坐标信息旋转,得到各第二坐标信息;
12.对所述各第二坐标信息进行经纬度映射,得到各经纬度信息;
13.使用所述经纬度映射表对所述各经纬度信息进行坐标映射,得到所述感兴趣区域在当前全景视频帧下的各第三坐标信息;
14.根据当前全景视频帧获取所述各第三坐标信息对应的像素值,得到所述第一投影图像。
15.可选地,所述目标三维坐标系为右手坐标系,所述右手坐标系以所述全景拍摄装置所在点为原点,所述第一坐标信息的计算方式如下:
16.x=(i-rayw
×
0.5)
17.y=(j-rayh
×
0.5)
18.z=tan(0.5π-0.5
×
fov
×
π/180
°
)
×
rayw
×
0.5
19.其中,(i,j)表示所述第二投影图像在二维投影坐标系下的二维坐标,i、j均为正数,所述二维投影坐标系以所述客户端的屏幕所显示图像的左上角为原点,所述二维投影
坐标系的x轴和y轴分别与所述右手坐标系的x轴和y轴同向,(x,y,z)表示二维坐标点(i,j)在所述右手坐标系中的三维坐标,fov表示所述客户端的屏幕所显示图像的视场角,rayw表示所述客户端的屏幕的宽,rayh表示所述客户端的屏幕的高;
20.所述旋转矩阵的计算方式如下:
[0021][0022]
r(0,0)=cos(pitch)*cos(yaw)
[0023]
r(0,1)=sin(roll)*sin(pitch)*cos(yaw)-cos(roll)*sin(yaw)
[0024]
r(0,2)=cos(roll)*sin(pitch)*cos(yaw)+sin(roll)*sin(yaw)
[0025]
r(1,0)=cos(pitch)*sin(yaw)
[0026]
r(1,1)=sin(roll)*sin(pitch)*sin(yaw)+cos(roll)*cos(yaw)
[0027]
r(1,2)=cos(roll)*sin(pitch)*sin(yaw)-sin(roll)*cos(yaw)
[0028]
r(2,0)=-sin(pitch)
[0029]
r(2,1)=sin(roll)*cos(pitch)
[0030]
r(2,2)=cos(roll)*cos(pitch)
[0031]
其中,r表示所述旋转矩阵,yaw、pitch和roll分别表示所述感兴趣区域的偏航角、俯仰角和横滚角;
[0032]
所述第二坐标信息的计算方式如下:
[0033]
x0=x
×
r(0,0)+y
×
r(0,1)+z
×
r(0,2)
[0034]
y0=x
×
r(1,0)+y
×
r(1,1)+z
×
r(1,2)
[0035]
z0=x
×
r(2,0)+y
×
r(2,1)+z
×
r(2,2)
[0036]
其中,(x0,y0,z0)表示所述第二坐标信息中投影点的三维坐标;
[0037]
所述经纬度信息计算方式如下:
[0038][0039][0040]
其中,θ1表示经度,θ2表示纬度。
[0041]
可选地,所述将所述第一投影图像和缩小分辨率后的当前全景视频帧编码后发送给客户端的步骤,包括:
[0042]
获取当前全景视频帧的两个鱼眼图像;
[0043]
将缩小分辨率后的两个鱼眼图像和所述第一投影图像组合,将组合后的图像编码后发送给所述客户端。
[0044]
可选地,所述将所述第一投影图像和缩小分辨率后的当前全景视频帧编码后发送给客户端的步骤,包括:
[0045]
获取当前全景视频帧的平面投影图像;
[0046]
将缩小分辨率后的平面投影图像和所述第一投影图像组合,将组合后的图像编码
后发送给所述客户端。
[0047]
可选地,所述方法还包括:
[0048]
根据获取到的目标环境信息确定所述缩小分辨率后的当前全景视频帧的分辨率。
[0049]
另一方面,本发明提供了一种全景视频的传输装置,所述装置包括:
[0050]
投影图像获取单元,用于基于当前全景视频帧获取客户端用户的感兴趣区域的第一投影图像;
[0051]
视频发送单元,用于将所述第一投影图像和缩小分辨率后的当前全景视频帧编码后发送给客户端。
[0052]
可选地,所述投影图像获取单元还包括:
[0053]
映射表生成单元,用于根据全景拍摄装置预设的标定参数生成经纬度映射表;
[0054]
第一信息获取单元,用于获取第二投影图像的各像素在目标三维坐标系下的各第一坐标信息,所述第二投影图像为根据所述客户端的屏幕尺寸从所述全景拍摄装置的正前方取景时得到的投影图像;
[0055]
旋转矩阵建立单元,用于根据用于表征所述感兴趣区域的欧拉角建立旋转矩阵;
[0056]
第二信息获取单元,用于根据所述旋转矩阵对所述各第一坐标信息旋转,得到各第二坐标信息;以及
[0057]
经纬度映射单元,用于对所述各第二坐标信息进行经纬度映射,得到各经纬度信息;
[0058]
第三信息获取单元,用于使用所述经纬度映射表对所述各经纬度信息进行坐标映射,得到所述感兴趣区域在当前全景视频帧下的各第三坐标信息;以及
[0059]
投影图像生成单元,用于根据当前全景视频帧获取所述各第三坐标信息对应的像素值,得到所述第一投影图像。
[0060]
另一方面,本发明还提供了一种全景拍摄装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述方法的步骤。
[0061]
另一方面,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述方法的步骤。
[0062]
本发明基于当前全景视频帧获取客户端用户的感兴趣区域的第一投影图像,将第一投影图像和缩小分辨率后的当前全景视频帧编码后发送给客户端,从而降低了全景视频传输过程中的网络资源开销和传输时延,并保证感兴趣区域的清晰度。
附图说明
[0063]
图1a是本发明实施例一提供的全景视频的传输方法的实现流程图;
[0064]
图1b是本发明实施例一提供的右手坐标系与二维投影坐标系示意图;
[0065]
图1c是本发明实施例一提供的编码图像的显示效果示例图;
[0066]
图2是本发明实施例二提供的全景视频的传输装置的结构示意图;以及
[0067]
图3是本发明实施例三提供的全景拍摄装置的结构示意图。
具体实施方式
[0068]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0069]
以下结合具体实施例对本发明的具体实现进行详细描述:
[0070]
实施例一:
[0071]
图1a示出了本发明实施例一提供的全景视频的传输方法的实现流程,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:
[0072]
在步骤s101中,基于当前全景视频帧获取客户端用户的感兴趣区域的第一投影图像。
[0073]
本发明实施例适用于全景拍摄装置,该全景拍摄装置可以为监控摄像头、相机、手机、平板电脑、可穿戴设备、车载设备、笔记本电脑等,本技术实施例对全景拍摄装置的具体类型不作任何限制。上述的客户端可以是手机、平板电脑、可穿戴设备、车载设备、笔记本电脑、超级移动个人计算机、服务器等视频播放设备。
[0074]
在本发明实施例中,客户端获取用户的感兴趣区域,并将获取到的客户端用户的感兴趣区域发送给全景拍摄装置。其中,客户端可用于获取客户端用户输入的感兴趣区域,客户端也可用于在每个感兴趣区域计算周期内,对客户端用户在下一周期的感兴趣区域进行预测,将预测出的感兴趣区域发送给全景拍摄装置。
[0075]
全景拍摄装置根据获取到的该客户端用户的感兴趣区域,对当前全景视频帧进行投影计算,得到感兴趣区域的第一投影图像。该第一投影图像通常为当前全景视频帧中感兴趣区域的球面图像在直线投影模式下的投影图像。
[0076]
在基于当前全景视频帧获取客户端用户的感兴趣区域的第一投影图像时,可选地,根据全景拍摄装置预设的标定参数生成经纬度映射表,获取第二投影图像的各像素在目标三维坐标系下的各第一坐标信息,之后,根据用于表征感兴趣区域的欧拉角建立旋转矩阵,根据旋转矩阵对各第一坐标信息旋转,得到各第二坐标信息,对各第二坐标信息进行经纬度映射,得到各经纬度信息,使用预设的经纬度映射表对各经纬度信息进行坐标映射,得到感兴趣区域在当前全景视频帧下的各第三坐标信息,根据当前全景视频帧获取各第三坐标信息对应的像素值,得到第一投影图像,从而通过坐标换算实现了感兴趣区域图像的获取。其中,第二投影图像为根据客户端的屏幕尺寸从全景拍摄装置的正前方取景时得到的投影图像,经纬度映射表的横纵坐标分别表示以全景拍摄装置为中心的球面的经纬度,经纬度映射表里面的值则为全景视频帧的具体坐标,上述标定参数可以包括内外参数和畸变参数,上述内外参数可以包括视场角、焦距等参数。
[0077]
如图1b所示,可选地,目标三维坐标系为右手坐标系,右手坐标系以全景拍摄装置所在点为原点,以全景拍摄装置的正前方为z轴方向,图1b中xd、yd、zd为右手坐标系的三个轴,od为右手坐标系的原点,即球面模型的圆心,在直线投影模式下,根据客户端的屏幕尺寸从全景拍摄装置正前方取景时得到上述第二投影图像,在二维投影坐标系下第二投影图像的投影点的二维坐标用(i,j)表示,二维投影坐标系的x轴和y轴分别与右手坐标系的x轴和y轴同向,二维投影坐标系以客户端屏幕所显示图像的左上角为原点,图1b中xp、yp为二维投影坐标系的两个轴,od为圆心,第一坐标信息的计算方式如下:
[0078]
x=(i-rayw
×
0.5)
[0079]
y=(j-rayh
×
0.5)
[0080]
z=tan(0.5π-0.5
×
fov
×
π/180
°
)
×
rayw
×
0.5
[0081]
其中,i、j均为正数,(x,y,z)表示二维坐标点(i,j)在右手坐标系中的三维坐标,fov表示客户端屏幕所显示图像的视场角,rayw表示客户端屏幕的宽,rayh表示客户端屏幕的高。
[0082]
在获取到上述各第二坐标信息之后,接收客户端发送的感兴趣区域,根据感兴趣区域的欧拉角计算旋转矩阵,旋转矩阵的计算方式如下:
[0083][0084]
r(0,0)=cos(pitch)*cos(yaw)
[0085]
r(0,1)=sin(roll)*sin(pitch)*cos(yaw)-cos(roll)*sin(yaw)
[0086]
r(0,2)=cos(roll)*sin(pitch)*cos(yaw)+sin(roll)*sin(yaw)
[0087]
r(1,0)=cos(pitch)*sin(yaw)
[0088]
r(1,1)=sin(roll)*sin(pitch)*sin(yaw)+cos(roll)*cos(yaw)
[0089]
r(1,2)=cos(roll)*sin(pitch)*sin(yaw)-sin(roll)*cos(yaw)
[0090]
r(2,0)=-sin(pitch)
[0091]
r(2,1)=sin(roll)*cos(pitch)
[0092]
r(2,2)=cos(roll)*cos(pitch)
[0093]
其中,r表示旋转矩阵,yaw、pitch和roll分别表示感兴趣区域的偏航角、俯仰角和横滚角。
[0094]
在计算出旋转矩阵之后,根据旋转矩阵对各第一坐标信息旋转,得到各第二坐标信息,第二坐标信息的计算方式如下:
[0095]
x0=x
×
r(0,0)+y
×
r(0,1)+z
×
r(0,2)
[0096]
y0=x
×
r(1,0)+y
×
r(1,1)+z
×
r(1,2)
[0097]
z0=x
×
r(2,0)+y
×
r(2,1)+z
×
r(2,2)
[0098]
其中,(x0,y0,z0)表示第二坐标信息中投影点的三维坐标。
[0099]
在获取到上述第二坐标信息之后,可对各第二坐标信息进行经纬度映射,得到各经纬度信息,经纬度信息计算方式如下:
[0100][0101][0102]
其中,θ1表示经度,θ2表示纬度。
[0103]
在获取到上述经纬度信息之后,即可根据上述经纬度映射表对各经纬度信息进行坐标映射,得到感兴趣区域在当前全景视频帧下的各第三坐标信息,最后根据当前全景视频帧获取各第三坐标信息对应的像素值,基于各第三坐标信息对应的像素值即可得到第一
投影图像。
[0104]
在步骤s102中,将第一投影图像和缩小分辨率后的当前全景视频帧编码后发送给客户端。
[0105]
在本发明实施例中,可选地,获取当前全景视频帧的两个鱼眼图像,将缩小分辨率后的两个鱼眼图像和第一投影图像组合,将组合后的图像编码后发送给客户端,以在保证用户感兴趣区域的图像清晰度的同时,保证用户从两个鱼眼图像中观察全局信息。图1c为将缩小分辨率后的两个鱼眼图像和第一投影图像组合后的显示效果示例图。
[0106]
可选地,获取当前全景视频帧的平面投影图像,将缩小分辨率后的平面投影图像和第一投影图像组合,将组合后的图像编码后发送给客户端,以在保证用户感兴趣区域的图像清晰度的同时,保证用户从平面投影图像中观察全局信息。
[0107]
可选地,获取客户端用户选择的显示模式,若为鱼眼显示模式,则将缩小分辨率后的两个鱼眼图像和第一投影图像组合,将组合后的图像编码后发送给客户端,若为平铺显示模式,则将缩小分辨率后的平面投影图像和第一投影图像组合,将组合后的图像编码后发送给客户端,以丰富降低分辨率后的全景视频帧的显示模式。
[0108]
缩小分辨率后的当前全景视频帧的分辨率可以为一固定分辨率,也可以由客户端用户灵活设置,可选地,根据获取到的目标环境信息确定缩小分辨率后的当前全景视频帧的分辨率,从而提高了对当前全景视频帧的分辨率调整的灵活性。其中,目标环境信息可以包括客户端的网络环境和/或软硬件环境,上述网络环境可以包括网络带宽、网络传输时延等,软硬件环境可以包括客户端的数据处理能力、客户端能耗、客户端用户指定的最低分辨率等。
[0109]
在本发明实施例中,基于当前全景视频帧获取客户端用户的感兴趣区域的第一投影图像,将第一投影图像和缩小分辨率后的当前全景视频帧编码后发送给客户端,从而降低了全景视频传输过程中的网络资源开销和传输时延,并保证感兴趣区域的清晰度。
[0110]
实施例二:
[0111]
图2示出了本发明实施例二提供的全景视频的传输装置的结构,为了便于说明,仅示出了与本发明实施例相关的部分,其中包括:
[0112]
投影图像获取单元,用于基于当前全景视频帧获取客户端用户的感兴趣区域的第一投影图像;以及
[0113]
视频发送单元,用于将第一投影图像和缩小分辨率后的当前全景视频帧编码后发送给客户端。
[0114]
可选地,投影图像获取单元还包括:
[0115]
映射表生成单元,用于根据全景拍摄装置预设的标定参数生成经纬度映射表;
[0116]
第一信息获取单元,用于获取第二投影图像的各像素在目标三维坐标系下的各第一坐标信息,第二投影图像为根据客户端的屏幕尺寸从全景拍摄装置的正前方取景时得到的投影图像;
[0117]
旋转矩阵建立单元,用于根据用于表征感兴趣区域的欧拉角建立旋转矩阵;
[0118]
第二信息获取单元,用于根据旋转矩阵对各第一坐标信息旋转,得到各第二坐标信息;
[0119]
经纬度映射单元,用于对各第二坐标信息进行经纬度映射,得到各经纬度信息;
[0120]
第三信息获取单元,用于使用经纬度映射表对各经纬度信息进行坐标映射,得到感兴趣区域在当前全景视频帧下的各第三坐标信息;以及
[0121]
投影图像生成单元,用于根据当前全景视频帧获取各第三坐标信息对应的像素值,得到第一投影图像。
[0122]
在本发明实施例中,全景视频的传输装置的各单元可由相应的硬件或软件单元实现,各单元可以为独立的软、硬件单元,也可以集成为一个软、硬件单元,在此不用以限制本发明。全景视频的传输装置的各单元的具体实施方式可参考前述方法实施例的描述,在此不再赘述。
[0123]
实施例三:
[0124]
图3示出了本发明实施例三提供的全景拍摄装置的结构,为了便于说明,仅示出了与本发明实施例相关的部分。
[0125]
本发明实施例的全景拍摄装置3包括处理器30、存储器31以及存储在存储器31中并可在处理器30上运行的计算机程序32。该处理器30执行计算机程序32时实现上述各方法实施例中的步骤,例如,图1a所示的步骤s101至s102。或者,处理器30执行计算机程序32时实现上述各装置实施例中各单元的功能,例如,图2所示单元21至22的功能。
[0126]
在本发明实施例中,基于当前全景视频帧获取客户端用户的感兴趣区域的第一投影图像,将第一投影图像和缩小分辨率后的当前全景视频帧编码后发送给客户端,从而降低了全景视频传输过程中的网络资源开销和传输时延,并保证感兴趣区域的清晰度。
[0127]
实施例四:
[0128]
在本发明实施例中,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述方法实施例中的步骤,例如,图1a所示的步骤s101至s102。或者,该计算机程序被处理器执行时实现上述各装置实施例中各单元的功能,例如,图2所示单元21至22的功能。
[0129]
在本发明实施例中,基于当前全景视频帧获取客户端用户的感兴趣区域的第一投影图像,将第一投影图像和缩小分辨率后的当前全景视频帧编码后发送给客户端,从而降低了全景视频传输过程中的网络资源开销和传输时延,并保证感兴趣区域的清晰度。
[0130]
本发明实施例的计算机可读存储介质可以包括能够携带计算机程序代码的任何实体或装置、记录介质,例如,rom/ram、磁盘、光盘、闪存等存储器。
[0131]
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1