本发明涉及全景图像处理技术领域,具体涉及一种全景图像展开方法及系统。
背景技术:
随着vr(虚拟现实)行业的快速发展,全景图像(包括全景图片和全景视频,以下统称全景图像)的需求也就越来越多,存储和传输全景图像,需要把全景图像的球面图像展开并保存到一个平面图像中,目前,全景视频行业大多使用的是矩形投影(equirectangularprojection),经过投影处理后的全景图像是一幅2:1比例的图像。
使用球面矩形投影的全景图像,原本面积很小的球面图像会被拉伸得面积很大。就是说,本来像素很低的球面图像,经过球面矩形投影,需要尺寸较大的平面图像去保存,如果将这样的图像保存或传输,就需要更大的内存和网络带宽。
技术实现要素:
为了解决上述问题,本发明提供了一种全景图像展开方法及系统,可以保证在展开后的平面图像质量相同的情况下,使展开后的二维图像尺寸小于目前主流的全景图像展开方法展开图像的尺寸。
第一方面,本发明提供了一种全景图像展开方法,包括以下步骤:
将全景球面图像在经度上以等纬度差n-1等分为n个球面区域,并将所述n个球面区域分别进行投影,得到n个矩形,并称所述n个矩形的整体为纬度展开图,其中,n为无穷大的正整数;
将所述纬度展开图在纬度上以经度差m-1等分为m个球面区域,并将所述m个球面区域分别进行投影,得到m个六边形,并称所述m个六边形的整体为经度展开图,其中,m为无穷大的正整数;
将所述经度展开图的六边形下半部分均匀的转移到所述经度展开图的六边形上半部分并进行拼接,得到全景平面图像。
优选的,所述纬度展开图的任何一条纬度上的图片的宽度,均等于所述全景球面图像的纬度的周长。
优选的,将所述n个球面区域分别进行投影采用的是矩形投影。
优选的,将所述m个球面区域分别进行投影采用的是曲直近似变换。
优选的,所述曲直近似变换的是将圆弧进行拉伸或者压缩成直线。
另一方面,本发明提供了一种全景图像展开系统,包括纬度切割模块、经度切割模块以及拼接模块。纬度切割模块用于将全景球面图像在经度上以等纬度差n-1等分为n个球面区域,并将所述n个球面区域分别进行投影,得到n个矩形,并称所述n个矩形的整体为纬度展开图,其中,n为无穷大的正整数。经度切割模块,用于将所述纬度展开图在纬度上以经度差m-1等分为m个球面区域,并将所述m个球面区域分别进行投影,得到m个六边形,并称所述m个六边形的整体为经度展开图,其中,m为无穷大的正整数。拼接模块,用于将所述经度展开图的六边形下半部分均匀的转移到所述经度展开图的六边形上半部分并进行拼接,得到全景平面图像。
优选的,所述纬度展开图的任何一条纬度上的图片的宽度,均等于所述全景球面图像的纬度的周长。
优选的,将所述n个球面区域分别进行投影采用的是矩形投影。
优选的,将所述m个球面区域分别进行投影采用的是曲直近似变换。
优选的,所述曲直近似变换将圆弧进行拉伸或者压缩成直线。
本发明提供的一种全景图像展开方法及系统,在保证展开后的平面图像质量相同的情况下,使展开后的二维图像尺寸小于目前主流的全景图像展开方法展开图像的尺寸,达到节约内存和减少带宽的目的,相对于矩形投影(equirectangularprojection),可大大减少冗余数据。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种全景图像展开方法的流程图;
图2是本发明实施例公开的全景球面图像投影为等纬度四等分全景展开图像的示意图;
图3是本发明实施例公开的全景球面图像投影为等纬度n等分全景展开图像的示意图;
图4是本发明实施例公开的等纬度n等分全景展开图像投影为等经度二等分全景展开图像以及投影图像的示意图。
图5是本发明实施例公开的等纬度n等分全景展开图像投影为等经度m等分全景展开图像以及投影图像的示意图。
图6是本发明实施例公开的等经度m等分全景展开图像进行拼接后的全景平面图像的示意图。
图7是本发明实施例公开的一种全景图像展开系统的框架图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种全景图像展开方法及系统。以下分别进行详细说明。
请参见图1,图1是本发明实施例公开的一种全景图像展开方法的流程图。在本实施方式中,全景图像为全景球面图像,以地球球面的展开过程来描述全景球面的展开过程,并引用了地球经纬线的概念,以便具体说明本发明。
在本实施方式中,全景图像展开方法的流程包括如下步骤:
步骤s100,将全景球面图像在经度上以等纬度差n-1等分为n个球面区域,并将n个球面区域分别进行投影,得到n个矩形,并称n个矩形的整体为纬度展开图,其中,n为无穷大的正整数;
步骤s102,将纬度展开图在纬度上以经度差m-1等分为m个球面区域,并将m个球面区域分别进行投影,得到m个六边形,并称m个六边形的整体为经度展开图,其中,m为无穷大的正整数;
步骤s104,将经度展开图的六边形下半部分均匀的转移到经度展开图的六边形上半部分并进行拼接,得到全景平面图像。
具体而言,纬度展开图的任何一条纬度上的图片的宽度,均等于全景球面图像的相应纬度的周长,且将所述n个球面区域分别进行投影采用的是矩形投影。
进一步的,将m个球面区域分别进行投影采用的是曲直近似变换,且曲直近似变换将圆弧进行拉伸或者压缩成直线。
为了进一步说明本发明实施例,请参见图2,图2是本发明实施例公开的全景球面图像投影为等纬度四等分全景展开图像的示意图。
如前述,为了便于描述,本实施例依然采用地球球面的展开过程来描述全景球面的展开过程,并引用了地球经纬线的概念。
图2表示的是当n=4时,全景球面图像投影为等纬度四等分全景展开图像的示意图,如图所示,全景球面图像投影通过矩形投影而得到等纬度四等分全景展开图像,其中,等纬度四等分全景展开图像中的中间部分长度等于全景球面图像的周长,且等纬度的值为πd/8。
当n为无穷大时,请参阅图3,图3是本发明实施例公开的全景球面图像投影为等纬度n等分全景展开图像的示意图。如图所示,全景球面图像投影通过矩形投影而得到等纬度n等分全景展开图像,其中,等纬度n等分全景展开图像中的零纬度线的长度等于全景球面图像的周长。有图中可见,经过矩形投影后,展开率为1:1。
请继续参阅图4,图4是本发明实施例公开的等纬度n等分全景展开图像投影为等经度二等分全景展开图像以及投影图像的示意图。在本实施方式中,当m=2时,等纬度n等分全景展开图像中经过投影,且同时采用曲直近似变换,得到等经度二等分全景展开图像。其中,曲直近似变换依据的是将圆弧拉伸或者压缩至直线。
具体而言,在图4中,虚线为二等分全景展开图像,而实线为二等分展开后投影图像,从图中可以看出,将某一纬度的8个点分别进行拉伸和压缩变换,得到六边形图像。其中,从a点处拉伸到x处,从b点和c点处分别拉伸到y处,从d点处拉伸到z处,将e点压缩至j点,将f点压缩至k点,将g点压缩至m点,将h点压缩至n点。进一步的,经过圆弧上四点a、b、c、d的纬度线为任一纬度线,且在这圆弧上经过四点a、b、c、d的纬度线与零度纬度线之间的所有圆弧上的点都是经过拉伸得到垂直于零度纬度线的直线,即拉伸后的直线之间的距离为赤道长度。再进一步的,在圆弧顶与经过四点a、b、c、d的纬度线之间的所有圆弧上的点均是经过压缩或者拉伸成直线,正如将e点压缩至j点,将f点压缩至k点,将g点压缩至m点,将h点压缩至n点所示。
这样圆弧上半部分的圆弧均经过曲直变换,也就是拉伸和压缩而得到直线图形。
同样的,在与上半圆弧相对应的下半圆弧上的点经过同样的拉伸和压缩处理,从而形成两个六边形。由此可见,经过二等分展开,可以得到两个六边形。
再参阅图5,图5是本发明实施例公开的等纬度n等分全景展开图像投影为等经度m等分全景展开图像以及投影图像的示意图。在本实施方式中,当m为无穷大时,依然采用图4类似的方法,将处于同一纬度的圆弧上的每一点进行拉伸。如图5,将a拉伸至x,将b拉伸至y,处于圆弧上半部分的其他各个点相应的进行拉伸或者压缩。同理,处于圆弧下半部分的其他各个点相应的进行拉伸或者压缩。整个圆弧经过压缩与拉伸,从而得到损失无穷小的六边形图像。
进一步的,请参阅图6,图6是本发明实施例公开的等经度m等分全景展开图像进行拼接后的全景平面图像的示意图。
当m为无穷大时,将m等分全景展开图像的六边形下半部分均匀的转移到m等分全景展开图像的六边形上半部分并进行拼接,得到m等分全景拼接平面图像。
经过上述处理,最后得到的全景平面图像相对于矩形投影直接得到的全景平面图像而言,可大大减少冗余数据,达到节约内存和减少带宽的目的。
请参阅图7,图7是本发明实施例公开的一种全景图像展开系统70的框架图。在本实施方式中,全景图像为全景球面图像,以地球球面的展开过程来描述全景球面的展开过程,并引用了地球经纬线的概念,以便具体说明本发明。具体而言,全景图像展开系统70包括纬度切割模块701、经度切割模块703以及拼接模块705。
纬度切割模块701用于将全景球面图像在经度上以等纬度差n-1等分为n个球面区域,并将n个球面区域分别进行投影,得到n个矩形,并称n个矩形的整体为纬度展开图,其中,n为无穷大的正整数。
经度切割模块703用于将纬度展开图在纬度上以经度差m-1等分为m个球面区域,并将m个球面区域分别进行投影,得到m个六边形,并称m个六边形的整体为经度展开图,其中,m为无穷大的正整数。
拼接模块705用于将经度展开图的六边形下半部分均匀的转移到经度展开图的六边形上半部分并进行拼接,得到全景平面图像。
经过全景图像展开系统中的各个模块处理之后,最后得到的全景平面图像相对于矩形投影直接得到的全景平面图像而言,大大减少冗余数据,达到节约内存和减少带宽的目的。
以上对本发明实施例所提供的一种全景图像展开系统进行了详细介绍,本文中应用了具体实例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。