非平面图像的图像处理装置、图像处理方法、 存储介质及计算机程序 【技术领域】
本发明涉及一种图像处理装置和图像处理方法、存储介质和计算机程序,其中,对由摄像机拍摄的视频图像数据执行如压缩、存储和再现的处理。更具体地说,本发明涉及一种图像处理装置和图像处理方法、存储介质和计算机程序,其中,对通过拼接由多台摄像机拍摄的视频图像数据而形成的图像执行如压缩、存储和再现的处理。
更具体地说,本发明涉及一种图像处理装置和图像处理方法、存储介质和计算机程序,其中,对通过拼接由多台摄像机拍摄的视频图像数据而作为非平面图像形成的图像执行如压缩、存储和再现的处理。更具体地说,本发明涉及一种图像处理装置和图像处理方法、存储介质和计算机程序,其中,对从由布置为拍摄确定为视点的某一空间点周围的图像的多台摄像机形成的全向摄像机或全天球型摄像机获得的柱面或球面图像执行处理。
背景技术
众所周知,全向摄像机是提供用户周围景致图像的装置。所述类型的全向视频图像系统典型地由布置为拍摄确定为视点的某一空间点周围的图像的多台摄像机形成。由多台摄像机形成的全向视频图像系统对相邻摄像机的拍摄图像执行连接边界的图像处理以产生比各个摄像机的视野大得多的宽区域图像作为看上去就像是由单个广角摄像机拍摄的一样。
虽然摄像机如果使用具有宽广视角地镜头可以拍摄宽广区域图像,但是分辨率将同等程度地降低,并且拍摄图像的细节不太清楚。相反,在使用全向视频图像系统的情况下,可以在保持高分辨率的情况下提供宽广区域的拍摄图像。
在使用如上所述的全向视频图像的情况下,可以观察自由视点型图像。例如,在一个人物(角色)可以在太空中自由移动的电视游戏中,可以显示从任意视点的背景屏幕。因此,可以通过更逼真的视频图像玩游戏,并且增加娱乐度。
此外,虽然全向视频图像与普通视频图像相比具有更大的容量,但是由于它在交互性上更加优越,因此它作为宽带网络时代的新内容是有前景的。
对于全向视频图像系统已有若干提案。例如,在日本专利公开号平9-62861中,公开了一种全景视频图像编辑装置,它可以显示全景视频图像,其中,视点和视线方向根据用户的指定而不断改变。在所述发行物中公开的全景视频图像编辑装置根据在沿着任意任意空间轨迹运动且确定为视点的点周围拍摄的图像的图像数据,从各个视点合成全景图像,并且将连续视点位置信息设到各个全景图像。再现时,全景视频图像编辑装置根据显示图像的视点位置和视线方向信息、视点运动方向信息以及由用户输入的视线,计算各显示图像的空间位置以合成显示图像。
然而,传统地,上述发行物没有具体考虑这样一种情形:对于合成高画面质量的视频图像如作为显示装置的电视机的视频图像或者从任意视点的视频图像需要实时性能。此外,上述发行物没有提及对图像显示或再现方的性能或条件加以考虑来存储全向视频图像的方法。而且,上述发行物没有考虑不仅从内侧在任意视点方向上观看而且从外侧进行利用的图像存储方法。
【发明内容】
本发明的一个目的是提供一种图像处理装置、图像处理方法、存储介质和计算机程序,其优势在于,可以对通过拼接由多台摄像机拍摄的视频图像数据而作为非平面图像形成的图像适当执行如压缩、存储和再现的处理。
本发明的另一个目的是提供一种图像处理装置、图像处理方法、存储介质和计算机程序,其优势在于,从由布置为拍摄确定为视点的某一空间点周围的图像的多台摄像机形成的全向摄像机或全天球型摄像机获得的柱面或球面图像。
本发明的另一个目的是提供一种图像处理装置、图像处理方法、存储介质和计算机程序,其中,可以对显示或再现方的性能加以考虑来存储和处理非平面图像如全向视频图像。
本发明是鉴于上述主题而提出的,并且根据本发明的一方面,提供一种非平面图像的图像处理装置或图像处理方法,用于处理在三维坐标系统上表示的非平面图像,其特征在于它包括:二维平面图像映射部件或步骤,用于将在三维坐标系统上表示的非平面图像映射到二维平面;以及映射信息产生部件或步骤,用于产生描述表示原始非平面图像的三维坐标系统与映射二维图像坐标系统之间的对应关系的映射信息。
在此,在三维坐标系统上表示的非平面图像例如是球面全向图像。在这种情况下,最好二维平面图像映射部件以最小化误差的方式将全向像素信息转换成低冗余度的二维图像,同时尽可能地保持信息量相等。此外,最好,以对读取全向视频图像的系统方的性能加以考虑而确定的形式将全向视频图像转换成二维图像。
此外,二维图像映射信息表示描述原始全向图像的三维坐标系统(Θ,Φ,r)与映射二维图像坐标系统(TX,TY)之间的对应关系的信息,并且当合成从任意视点方向的全向视频图像时,需要该信息。二维图像映射信息是当要从外侧观察全向视频图像时以任意形状再现全向视频图像所需的信息。
二维平面图像映射部件或步骤可以以相互等间距的方式将球面水平方向上的角度分配给二维平面的水平方向,并且将球面垂直方向上的角度分配给二维平面的垂直方向。在这种情况下,映射信息产生部件可以产生以分配给二维平面图像行和列的球面水平方向和垂直方向角度描述的映射信息。
在使用如上所述的映射方法的情况下,有一个优点是空间和时间相关性高并且从球面到二维平面的转换表达式即二维映射信息简单。此外,人可以容易地从映射二维平面图像掌握原始全向图像的整体图像。然而,映射二维平面的上下部分(在地图的情况下为两极部分)的失真较大(密度比赤道周围低),并且包含在各个像素中的信息量不能在各方向上保持相等。
另一方面,二维平面图像映射部件可以以任意间距关系将球面水平方向和/或垂直方向角度分配给二维平面的水平方向和/或垂直方向。例如,可以提供增大在水平方向和垂直方向的特定角度范围内划分的区域内的密度即信息量这一灵活性。在这种情况下,二维图像映射信息是分配给各行和各列的角度。
此外,在三维坐标系统上表示的非平面图像是球面全向图像的情况下,二维平面图像映射部件或步骤可以将球面投影到柱面,从而使面积比正确,并且将柱面展开到平面以将其映射到二维平面图像。
采用如上所述的映射方法,由于等面积特性,优点是包含在像素中的信息量相等,空间和时间相关性高,并且从球面到二维平面的转换表达式即二维图像映射信息简单。
此外,二维平面图像映射部件或步骤可以将在三维坐标系统上表示的非平面图像映射到二维平面图像,从而使包含在像素中的信息量在各方向上可以保持相等。
可以以下面情形为例,例如,在三维坐标系统上表示的非平面图像为球面全向图像的情况下,如果二维平面图像映射部件利用下面定理:当以平行平面等间距地切割球体的z轴时,由相邻平面限定的球面面积相等,则可以从球面均匀地对像素进行采样,以将三维极坐标系统的z轴方向上等间距范围内划分的球面区域随机映射到二维正交坐标系统上等间距范围内划分的带状平面区域。
然而,如上所述的映射方法所存在的缺点是所需的计算处理量稍大,并且不能容易地从映射到二维平面的图像掌握原始全向图像的整体图像。此外,由于二维图像映射信息是以像素为单位来描述的,因此该映射方法不能用于逐区域地执行全向视频图像的显示或再现的系统。而且,由于全向视频图像映射到随机位置的像素,因此当从二维图像显示或再现全向视频图像时,为了对点(Θ,Φ)的像素值进行插值,必须高效搜索出相邻像素。
此外,二维平面图像映射部件或步骤可以将使用Hammersley序列从全向图像在第iw+j提取的点映射到其中一行包括w像素的二维平面图像的第i行和第j列的点。这样,在三维坐标系统上表示的非平面图像可以映射到二维平面图像,从而使包含在像素中的信息量可以在各方向上保持更相等。
然而,如上所述的映射方法所存在的缺点是所需的计算处理量稍大以及不能容易地从映射到二维平面的图像掌握原始全向图像的整体图像。此外,由于二维图像映射信息是以像素为单位来描述的,因此该映射方法不能用于逐区域地执行全向视频图像的显示或再现的系统。而且,由于相邻像素不一定是以邻近关系来映射,因此当从二维图像显示或再现全向视频图像时,为了对点(Θ,Φ)的像素值进行插值,必须高效搜索出相邻像素。
此外,在三维坐标系统上表示的非平面图像为柱面全向图像的情况下,二维平面图像映射部件或步骤可以垂直切割柱面,将柱面展开为矩形,将矩形图像等分为分割片段,并且从上依次布置分割片段,从而满足规定格式尺寸。
此外,根据本发明第一方面的非平面图像的图像处理装置和图像处理方法还可以包括图像压缩部件或步骤,用于以预定压缩格式压缩映射二维平面图像信息。
对于活动画面,可以采用MPEG-1、MPEG-2、MPEG-4、H.263、H.261、AVI、运动JPEG等的压缩格式,并且对于静止画面,可以采用JPEG、GIF、PNG、BMP、TIFF等的压缩格式。
例如,在将球面全向视频图像投影到柱面从而使面积比正确并且将柱面展开到平面以将其映射到二维平面图像的情况下,使用二维平面图像信息产生其中没有映射任何像素的未用区域。通过将相同像素值分配给如上所述的未用区域,提高空间和时间相关性,因此,可以提高压缩比。
如上所述,映射信息是从任意视点方向合成全向视频图像所需的数据。因此,根据本发明第一方面的非平面图像的图像处理装置或图像处理方法还可以包括数据格式转换部件或步骤,用于将数据格式转换成包括由二维平面图像映射部件或步骤所映射的二维平面图像或者二维平面图像的压缩图像和映射信息产生部件或步骤所产生的映射信息组成的集合的数据格式。
此外,数据格式转换部件或步骤可以采用将音频信息与视频图像信息同步的形式以交织关系插入音频信息。
此外,每次改变二维平面图像映射部件或步骤所采用的映射方法时,数据格式转换部件或步骤可以将映射信息插入到帧的顶部。
同时,根据本发明的第二方面,提供一种图像处理装置或图像处理方法,用于将映射到二维平面图像上的三维坐标系统非平面图像作为视频图像进行显示,其特征在于它包括:
指示部件或步骤,用于指定视点方向和/或缩放值;以及
视频图像产生部件或步骤,用于使用非平面图像映射到二维平面图像时的映射信息,根据指定视点方向和/或缩放值,在任意视点方向上产生三维形状视频图像。
在此,视频图像产生部件或步骤执行从映射在二维平面上的非平面视频图像到预定视频图像显示装置的二维显示屏幕的重新映射。
视频图像产生部件或步骤可以包括:一部件或步骤,用于根据视点方向视频图像各像素的视点方向和/或缩放值计算极坐标;以及一部件或步骤,用于参考二维图像映射信息将极坐标转换成全向图像坐标,并且可以以像素为单位合成或处理任意视点方向上的全向视频图像。
另一方面,视频图像产生部件或步骤可以包括一部件或步骤,用于使用二维图像映射信息,转换包含在全向视频图像中的图元的各顶点的全向图像坐标;一部件或步骤,用于根据视点方向和/或缩放值将极坐标转换成视点方向图像坐标;以及一部件或步骤,用于使用全向视频图像作为纹理以图元为单位产生视点方向图像,并且可以以区域为单位合成和处理任意视点方向上的全向视频图像。
此外,视频图像产生部件或步骤还可以包括一部件或步骤,用于根据全向视频图像的相邻像素对像素进行插值。此外,通过像素插值时在全向图像的左右两个相反端的附近均布置从另一端重复预定宽度的像素区域,可以防止出现其中像素尚未得到校正的断裂。
此外,视频图像产生部件或步骤还可以包括一部件或步骤,用于产生一个查询表,用于为二维映射全向图像的各像素搜索相邻像素;一部件或步骤,用于根据视点方向视频图像各像素的视点方向和缩放值计算极坐标;一部件或步骤,用于参考查询表搜索与对应于视点方向视频图像像素的极坐标相邻的像素;一部件或步骤,用于使用相邻像素对像素的极坐标进行插值;以及一部件或步骤,用于参考二维图像映射信息将极坐标转换成全向图像坐标。
如上所述的视频图像产生部件或步骤可以从二维平面图像合成任意视点方向上的视频图像,其中,利用下面定理:当等间距地以平行平面切割球体的z轴时,由相邻平面限定的球面面积不变,将三维极坐标系统的z轴方向上等间距范围内划分的球面区域随机映射到二维正交坐标系统或二维平面图像上等间距范围内划分的带状平面区域,其中,映射使用Hammersley序列从全向图像在第iw+j提取的点以映射在三维坐标系统上表示的非平面图像,从而使包含在像素中的信息量可以在各方向上保持更相等。
此外,在合成任意视点方向视频图像时视点处于内侧的情况下,视频图像产生部件可以摹仿实现由不同类型镜头的摄像机拍摄的视频图像。例如,根据由原始是由针孔摄像机拍摄的视频图像组成的全向视频图像,可以合成看上去就像是通过鱼眼镜头拍摄一样的视点图像。
此外,在合成任意视点方向视频图像时视点处于外侧的情况下,视频图像产生部件可以产生任意三维形状的全向视频图像。例如,如果将视点指定到多边形等的外侧,则可以将全向视频图像拼接到多边形表面。这样,可以预期可以获得史无前例的GUI(图形用户界面)。
根据本发明的第三方面,提供一种存储介质,以计算机可读形式物理存储有被描述为在计算机系统上对在三维坐标系统上表示的非平面图像执行处理的计算机软件,其特征在于计算机软件包括:
二维平面图像映射步骤,将在三维坐标系统上表示的非平面图像映射到二维平面;以及
映射信息产生步骤,产生描述表示原始非平面图像的三维坐标系统与映射二维图像坐标系统之间的对应关系的映射信息。
同时,根据本发明的第四方面,提供一种存储介质,以计算机可读形式物理存储有被描述为在计算机系统上执行将映射到二维平面图像上的三维坐标系统的非平面图像作为视频图像进行显示的处理的计算机软件,其特征在于计算机软件包括:
指示步骤,指定视点方向和/或缩放值;以及
视频图像产生步骤,使用非平面图像映射到二维平面图像时的映射信息,根据指定视点方向和/或缩放值,在任意视点方向上产生三维形状视频图像。
根据本发明第三和第四方面的记录介质是例如将计算机可读形式的计算机软件提供给可以执行各种程序码的通用计算机系统的介质。这些介质是可移动和便携式存储介质例如DVD(数字多功能盘)、CD(致密盘)、FD(软磁盘)和MO(磁光盘)等。或者,通过传输介质如网络(网络可以是无线网络和有线网络中的任一种)将计算机软件提供给特定计算机系统在技术上也是可能的。
如上所述的记录介质定义预定计算机软件与存储介质之间的结构或功能协作关系,以在计算机系统上实现计算机软件功能。换句话说,如果预定计算机软件通过根据本发明第三或第四方面的记录介质安装到计算机系统中,则在计算机系统上展现协作操作,并且可以实现类似于根据本发明第一或第二方面的非平面图像的非平面图像的图像处理装置或图像处理方法的操作或效果。
根据本发明的第五方面,提供一种以计算机可读形式描述为在计算机系统上对在三维坐标系统上表示的非平面图像执行处理的计算机程序,其特征在于它包括:
二维平面图像映射步骤,将在三维坐标系统上表示的非平面图像映射到二维平面;以及
映射信息产生步骤,产生描述表示原始非平面图像的三维坐标系统与映射二维图像坐标系统之间的对应关系的映射信息。
根据本发明的第六方面,提供一种以计算机可读形式描述为在计算机系统上执行将映射到二维平面图像上的三维坐标系统的非平面图像作为视频图像进行显示的处理的计算机程序,其特征在于它包括:
指示步骤,指定视点方向和/或缩放值;以及
视频图像产生步骤,使用非平面图像映射到二维平面图像时的映射信息,根据指定视点方向和/或缩放值,在任意视点方向上产生三维形状视频图像。
根据本发明第五和第六方面的计算机程序定义以计算机可读形式描述为在计算机系统上实现预定处理的计算机程序。换句话说,如果根据本发明第五或第六方面的计算机程序安装到计算机系统中,则在计算机系统上展现协作操作,并且可以实现类似于根据本发明第一或第二方面的非平面图像的非平面图像的图像处理装置或图像处理方法的操作或效果。
通过下述基于本发明实施例的详细描述以及附图,本发明的其他目的,特性、优点将会变得清楚。
附图简述
图1是用来实施本发明的全向视频图像产生系统10的结构示意图;
图2是全向图像拍摄装置10的结构示例图;
图3是全向图像拍摄装置10的另一结构示例图;
图4是全向图像拍摄装置10的结构示例图;
图5是全向视频图像合成装置12的功能结构示意图;
图6是由全向视频图像数据格式转换部分26转换之后的包括由二维图像映射信息和视频图像数据组成的集合的数据格式的结构示例图;
图7是用作全向视频图像合成装置12和全向视频图像存储装置13的计算机系统100的结构示意图;
图8是将三维坐标系统的图像映射到二维平面图像的方法的示例图,并且更具体地是示出将球面投影到柱面并且将其展开到平面上的方法的图;
图9是通过如图8所示的柱面投影方法将在户外特定位置拍摄的全向图像映射到二维平面而获得的图像的示例图;
图10是将三维坐标系统的图像映射到二维平面图像的方法的示例图,并且更具体地是图8所示方法的变型的示例图;
图11是通过将球面投影到柱面并且将其展开到平面上来将三维坐标系统的图像映射到二维平面图像的方法的另一示例图,并且更具体地是通过Sanson-Flamsteed投影进行映射的示例图;
图12是示出将相同背景颜色分配给图11所示二维映射图像的未用区域的方式的图;
图13是分层随机方法的概念图;
图14是示出分层随机方法处理过程的图;
图15是通过基于分层随机法的映射方法将在户外特定位置拍摄的全向图像映射到二维平面而获得的图像的示例图;
图16是示出通过Hammersley序列从球面提取1,000个样本点的方式的图;
图17是示出通过Hammersley序列从球面提取10,000个样本点的方式的图;
图18是示出使用随机数从球面提取1,000个样本点的方式的图;
图19是示出使用随机数从球面提取10,000个样本点的方式的图;
图20是示出使用Hammersley序列将全向图像映射到二维平面图像的方式的图;
图21是通过基于Hammersley序列的映射方法将在户外特定位置拍摄的全向图像映射到二维平面而获得的图像的示例图;
图22是示出将柱面全向视频图像映射到二维平面的方法的图;
图23是示出将从柱面图像展开的矩形图像分成两半,并且将右半部分拼接到左半部分的底部来调整纵横比的方式的图;
图24是用来实施本发明的全向视频图像显示系统50的结构示意图;
图25是任意视点方向视频图像合成装置53的功能结构示意图;
图26是在采用像素系统来将全向视频图像映射到二维平面的情况下以任意视点方向再现三维形状视频图像的数据流的示意图;
图27是在采用区域系统来将全向视频图像映射到二维平面的情况下以任意视点方向再现三维形状视频图像的数据流的示意图;
图28是在采用区域系统的情况下合成任意视点方向视频图像的概念图;
图29是示出通过将球面或柱面全向图像映射到二维平面而获得的二维全向图像的图(然而,其中矩形图像没有经过等分和拼接);
图30是示出通过将球面或柱面全向图像映射到二维平面而获得的二维全向图像的图(然而,其中矩形图像经过等分和拼接);
图31是示出没有执行过线性插值的部分在视频图像显示装置54的屏幕上看上去为剩余线的方式的图;
图32是示出增加与各等分片断的相反端相邻的部分的宏块作为重叠宽度的方式的图(然而,其中矩形图像没有经过等分和拼接);
图33是示出增加与各等分片断的相反端相邻的部分的宏块作为重叠宽度的方式的图(然而,其中矩形图像经过等分和拼接);
图34是从根据数学方法映射的二维图像再现任意视点方向上的三维视频图像的数据流的示意图;
图35是示出在使用鱼眼镜头的情况下所产生的视点图像的图;
图36是从映射在二维平面上的全向视频图像合成任意三维形状的视频图像的数据流的示意图;
图37是从映射在二维平面上的全向视频图像合成的任意三维形状的示例图,并且更具体地是示出将全向视频图像拼接到立方体外侧的方式的图;
图38是从映射在二维平面上的全向视频图像合成的任意三维形状的示例图,并且更具体地是示出将全向视频图像拼接到正二十面体外侧的方式的图;
图39是从映射在二维平面上的全向视频图像合成的任意三维形状的示例图,并且更具体地是示出将全向视频图像拼接到正十二面体外侧的方式的图;以及
图40是从映射在二维平面上的全向视频图像合成的任意三维形状的示例图,并且更具体地是示出将全向视频图像拼接到环体外侧的方式的图。
【具体实施方式】
下面参照附图对本发明的实施例进行描述。
A.全向视频图像产生系统
图1示意性地示出用来实施本发明的全向视频图像产生系统10的结构。如图1所示,全向视频图像产生系统10包括全向图像拍摄装置11、全向视频图像合成装置12和全向视频图像存储装置13。
全向图像拍摄装置11被配置为,N个摄像机位于使它们可以以从某一空间视点为中心在各方向上拍摄视频图像。可以采用下列摄像机排列结构例子。
(1)N个摄像机呈放射状排列的结构。例如,针孔摄像机各自位于多面体如正十二面体的组成面上的结构。
(2)N个摄像机位于使它们可以通过反射镜在水平方向上分割性地拍摄图像的另一结构。
(3)通过使用鱼眼镜头的单个摄像机拍摄半天球图像的另一结构。
(4)通过组合两个使用鱼眼镜头的摄像机来拍摄全向(全天球)视频图像的图像的另一结构。
(5)单个摄像机围绕其视点旋转以在各方向上拍摄图像的另一结构。
A-1.全向图像拍摄装置
图2示出采用上述结构(1)的全向图像拍摄装置11的结构例子。全向图像拍摄装置11-1包括形状大致为具有12个大致五边形组成面的十二面体的框架和各自位于框架一面上的11个摄像机。各摄像机可以拍摄从周围景致内向其分配的区域的图像,并且提供图像作为周围图像的一部分。各摄像机是具有投影中心的针孔型摄像机,并且例如可以是在各器件的表面上包括显微镜头的CCD(电荷耦合器件)摄像机。对应于框架底面的组成面用作底座。用于外部输出由摄像机拍摄的图像数据的电缆连接到底座的一个侧面。球面全向图像通过拼接各摄像机的视频图像来获得。
同时,图3示出采用上述结构(2)的全向图像拍摄装置11的结构例子。全向图像拍摄装置11-2,包括:8个摄像机,以相互大致等间距的关系位于预定圆周方向上;以及反射部分,其中,各自位于摄像机视线方向上的8个平面镜对应于各个摄像机位于八角金字塔上。在此,摄像机位于使其投影中心在全向图像拍摄装置11-2的中心附近相互一致并且摄像机的视线方向在一个水平面上以预定角度距离相互隔开。由于由平面镜反射的周围景致图像由在反射方向上引导的摄像机进行拍摄,因此全向图像拍摄装置11-2可以在总体上在水平方向上拍摄360度视频图像的镜面图像。柱面全向图像可以通过对摄像机的视频图像执行如反转和拼接的处理来获得。
在VTR如图4所示单独连接到摄像机的情况下,可以记录总共8个视频图像(和音频)流。所记录的视频图像流是通过开关进行摄像并且作为计算机数据(位图文件)传到下一级的全向视频图像合成装置12中的视频,从而可以执行各种数据处理如将三维图像映射到球面或柱面。
A-2.全向视频图像合成装置
图5示意性地示出全向视频图像合成装置12的功能结构。参照图5,全向视频图像合成装置12包括镜头失真、亮度、对比度和透视校正部分21、三维坐标系统映射部分22、二维图像映射部分23、活动和静止画面压缩部分24、映射信息产生部分25以及全向视频图像数据格式转换部分26。
镜头失真、亮度、对比度和透视校正部分21接收由全向图像拍摄装置11拍摄的N个摄像机的视频图像数据(活动画面或静止画面)作为其输入,并且以帧为单位根据摄像机的摄影参数执行如镜头失真校正、色彩校正、亮度校正、对比度校正和透视校正的处理。
三维坐标系统映射部分22从由校正部分21校正的N个视频图像中选择逐一相互同步的那些静止画面,并且使用N个图像和用于图像拍摄的相应摄像机的摄影参数,将N个图像映射到三维坐标系统(极坐标系统)上的球面或柱面。
二维图像映射部分23将映射在三维坐标系统如球面或柱面上的图像映射到二维平面图像。最好,全向像素信息以最小化的误差转换成低冗余度的二维图像,同时尽可能地保持信息量相等。此外,最好全向视频图像以对读取全向视频图像的系统(下面描述)方的性能加以考虑所确定的形式转换成二维图像。
需要注意的是,虽然可以采用若干方法来将映射在三维坐标系统如球面或柱面上的非平面图像映射到二维图像,但是下面将描述它们的细节。
映射信息产生部分25根据二维图像映射部分23所应用的映射方法,产生由全向视频图像显示系统(下面描述)进行图像显示或再现所需的二维图像映射信息。二维图像映射信息在此表示描述原始全向图像的三维坐标系统(Θ,Φ,r)与映射二维图像坐标系统(TX,TY)之间的对应关系的信息。二维图像映射信息是当要从外侧观察全向视频图像时以任意形状再现全向视频图像所需的信息(下面描述)。
二维图像映射部分23对所有帧执行映射处理。虽然映射方法可以以帧为单位来改变,但是在这种情况下,映射信息产生部分25每次都产生映射信息。
活动和静止画面压缩部分24压缩由二维图像映射部分23产生的二维静止画面或活动画面。至于压缩方法,MPEG-1、MPEG-2、MPEG-4、H.263、H.261、AVI、运动JPEG等可以用于活动画面,而任何可以处理二维图像的现有格式如JPEG、GIF、PNG、BMP、TIFF等可以用于静止画面。
全向视频图像数据格式转换部分26将数据格式转换成在一组中包括由映射信息产生部分25产生的二维图像映射信息和由活动和静止画面压缩部分24产生的压缩视频图像的数据格式。图6示意性地示出上述数据格式的结构。
还可以采用将视频图像信息与音频信息进行同步的形式以交织关系将它们插入到所述数据格式中。每次改变应用于视频图像信息的二维图像映射方法时,将二维图像映射信息插入到相应帧的顶部内。简而言之,在对所有帧都使用相同的二维图像映射方法的情况下,只需将映射信息包括在仅一帧的顶部。此外,在显示或再现方(全向视频图像显示系统)包括必要二维映射信息的情况下,可以忽略数据格式中的二维映射信息。
例如,如果显示或再现方试图以像素为单位再现二维图像,则各像素必须具有映射信息,并且向该映射信息分配大量数据,并且要分配给视频图像或声音的数据量减小。因此,最好可以忽略映射信息。另外,即使不是以像素为单位而是以具有预定面积的区域为单位试图再现二维图像,但当将二维图像重新映射到三维坐标系统中时,与顺序使用二维图像映射信息相比,通过采用转换表达式的计算也可以以更高速度执行该重新映射。
A-3.全向视频图像存储装置
全向视频图像存储装置13可以使用计算机系统的流行外部存储装置如硬盘或DVD(数字多功能盘)来配置。
此外,还可以采用在单个计算机系统或多个计算机系统上启动预定图像处理和存储应用程序的形式实现全向视频图像合成装置12和全向视频图像存储装置13。
图7示意性地示出用作全向视频图像合成装置12和全向视频图像存储装置13的计算机系统100的结构。下面将参照图7对计算机系统100进行描述。
CPU(Central Processing Unit,中央处理单元)101是计算机系统100的主控制器,它在操作系统(OS)的控制下执行各种应用程序。CPU 101可以执行例如用于将绘制在球面或柱面上的三维图像转换成二维平面图像并且对转换之后的二维平面图像进行压缩和存储的非平面图像处理应用程序。如图7所示,CPU 101通过总线108与其他装置(下面描述)互连。
存储器102是用来存储要由CPU 101执行的程序码的存储设备,并且在该执行期间临时存储工作数据。应该理解,图7所示的存储器102包括非易失性存储器如ROM和易失性存储器如DRAM。
显示控制器103是专用于从CPU 101发出的绘制指令的实际处理的控制器。由显示控制器103处理的绘制数据一次写入到例如帧缓冲区(未示出)中,然后通过显示单元111输出到屏幕上。
输入装置接口104是将用户输入装置如键盘(KBD)112和鼠标113连接到计算机系统100的装置。
网络接口105可以根据预定通信协议如以太网,将系统100连接到本地网络如LAN(Local Area Network,局域网)以及广域网如因特网。
在网络上,多个主机终端(未示出)以透明的状态连接以构造分布计算环境。在网络上,可以发行软件程序、数据内容等。例如,可以通过网络下载用于将绘制在球面或柱面上的三维图像转换成二维平面图像并且对转换之后的二维平面图像进行压缩和存储的非平面图像处理应用程序。另外,还可以通过网络发行通过非平面图像处理应用程序压缩的图像数据。
外部装置接口107是用于将外部装置如硬盘驱动器(HDD)114或介质驱动器(115)连接到系统100的装置。
HDD 114是(本领域内公知的)外部存储装置,其中,固定性地包括作为存储载体的磁盘,并且在存储容量、传输速率等方面优于其他外部存储装置。以可执行状态将软件程序放在HDD 114上称作将程序“安装”到系统中。通常,要由CPU 101执行的操作系统程序码、应用程序、设备驱动程序等以非易失方式存储在HDD 114上。
例如,用于将绘制在球面或柱面上的三维图像转换成二维平面图像并且对转换之后的二维平面图像进行压缩和存储的非平面图像处理应用程序可以安装到HDD 114中。另外,还可以在HDD 114上存储作为非平面图像处理应用程序处理对象的三维非平面图像,通过转换到二维平面中而获得的图像、图像的压缩图像数据等。
介质驱动器115是载有便携式介质如CD(致密盘)、MO(磁光盘)或DVD(数字多功能盘)并且访问便携式介质的数据记录表面的装置。
便携式介质主要用来备份作为计算机可读类型数据的软件程序、数据文件等以及将该数据在不同系统之间移动(移动包括销售、流通和发行)。例如,用于将绘制在球面或柱面上的三维图像转换成二维平面图像并且对转换之后的二维平面图像进行压缩和存储的非平面图像处理应用程序可以在物理上通过使用便携式介质在多个装置之间流通或发行。此外,作为非平面图像处理应用程序处理对象的三维非平面图像、通过转换到二维平面中而获得的图像、图像的压缩图像数据等可以在物理上通过使用便携式介质在多个装置之间流通或发行。
视频捕获卡109是用于将来自全向图像拍摄装置11的输入信号即从通过开关连接的VTR再现的视频图像信号作为计算机数据(位图文件)取到计算机中的装置。
需要注意,如图7所示的计算机系统100的例子是美国IBM个人计算机“PC/AT(个人计算机/高级技术)”的兼容机或后代机。自然地,具有其他体系结构的其他计算机也可以用作根据本实施例的计算机系统100。
A-4.将三维坐标系统的图像映射到二维平面
如前所述,根据本实施例的全向视频图像产生系统10是处理例如由如图2所示的全向图像拍摄装置11拍摄的全向视频图像的系统。原始所述类型的全向视频图像是映射在极坐标系统的球面或柱面上的非平面三维图像,并且不适宜采用以二维图像处理为前提的现有压缩格式来处理。换句话说,要执行如数据压缩、存储和传输的处理,需要将在三维坐标系统的非平面表面如球面或柱面上表示的全向图像映射到二维平面图像。
虽然可以采用若干方法来将三维坐标系统的图像映射到二维平面图像,但是最好根据下述条件选择最优映射方法。
(1)为了将球面展开到平面,需要扩展球面的某些表面部分,或者在球面的某些表面部分形成破裂。换句话说,不可能将球形按原样展开在平面上,并且必定出现一定的误差。最好,使用在最小化误差的时候将球面投影到平面的方法。最好,当球面映射到平面时,包含在各个像素中的信息量在各方向上保持相等,也就是,各个像素在各方向上以相等面积出现。
(2)在用于显示或再现全向视频图像的全向视频图像显示系统中,在全向视频图像存储装置和任意视点方向视频图像合成装置通过网络相互连接的情况下,或者即使是在全向视频图像存储装置是如DVD的记录介质的情况下,对传输速率存在限制。在传输速率受限的情况下,压缩率也相应受到限制,因此最好冗余度低。此外,最好,图像可以使用标准压缩方法(例如,MPEG-2)来容易地压缩(例如,空间和/或时间相关性高)。
(3)在考虑全向视频图像显示系统需要实时处理以及存在全向视频图像显示系统的处理性能或资源受到限制这一可能性的情况下,最好从球面转换到平面中的算术操作处理是简单的。
(4)根据如MPEG-2的压缩格式,分辨率受到一定的限制。此外,在全向视频图像显示系统中,在以区域为单位合成任意视点方向视频图像(下面描述)的情况下,有时不是将任意视点方向视频图像而是将全向视频图像传输到临时存储视频图像的纹理缓冲区以传输到视频图像显示装置,并且纹理缓冲区有时存在一定的限制。在以这种方式分辨率受到限制的情况下,必须转换成二维图像,从而满足限制。
下面是将三维坐标系统如球面或柱面的图像映射到二维平面图像的方法的具体例子。
A-4-1.从球面全向视频图像到二维平面的映射方法
作为将球面映射到平面的方法,将地球仪投影到平面世界地图上的地图投影方法在本领域内是公知的。在使用流行地图投影方法来将球面全向视频图像展开到平面上的情况下,将与绘制在球面上的内容类似的图案投影在平面上,因此,一个优点是人可以容易地从映射二维平面图像掌握原始全向图像的整体图像。
例如,可以采用如图8所示将球面投影到柱面上并且将柱面展开到平面上的方法。在图8所示的例子中,以相等的间距单独地将水平方向上的球面角度分配给二维平面的水平方向,而将垂直方向上的球面角度分配给二维平面的垂直方向。在这种情况下,二维图像映射信息是分配给各行和各列的角度数据。
图9示出通过如图8所示的柱面投影方法将在户外特定位置拍摄的全向图像映射到二维平面而获得的图像的例子。
在如上所述的映射方法中,由于映射二维平面的上下部分的变形(在地图的情况下为两极部分)较大(密度比赤道周围低),因此不能满足上述第一条件:包含在各个像素中的信息量在各方向上保持相等。然而,根据该映射方法,一个优点是空间和时间相关性高并且从球面到二维平面的转换表达式即二维映射信息简单。此外,从图9可以估计,人可以容易地从映射二维平面图像掌握原始全向图像的整体图像。
另一方面,在将球面投影到柱面并且展开在平面上之后,不是以等间距的关系将水平方向和垂直方向上的角度分配给球面上的水平方向和垂直方向角度,而是如图10所示可以自由改变映射角度之间的距离。例如,可以提供增大在水平方向和垂直方向上的特定角度范围所划分的区域内的密度即信息量这一灵活性。例如,较大角度范围可以分配给从全向图像内留有详细信息的图像区域。在这种情况下,二维图像映射信息是类似于上述的分配给各行和各列的角度。
此外,在球面映射到柱面并且展开在平面上的地图投影方法中,可以采用“Sanson Flamsteed投影”,对于地球仪上的任何部分,在地图上正确表示面积比,也就是,它具有等面积地图投影的性质。纬线表示为具有正确长度和正确间距的水平线。同时,子午线表示为相等间距的曲线。失真在赤道和中央子午线的附近变小。
根据应用Sanson-Flamsteed投影的二维图像映射方法,由于等面积特性,存在优点是包含在像素中的信息量相等、空间和时间相关性高,并且从球面到二维平面的转换表达式即二维图像映射信息简单。二维图像映射信息在这种情况下由下面给出的三维坐标系统到二维坐标系统转换表达式形成。(注意二维平面图像尺寸为W×H。)
TX=r×θ×cosΦ
TY=r×Φ …(1)
φ=TYHπ-π2]]>
θ=TXW·2πsin(π2+φ)---(2)]]>
在使用如Sanson-Flamsteed投影(或Mollweide投影)的等面积柱面地图投影的情况下,产生如图11所示的未用图像区域。如果将相同背景颜色(像素值)分配给如图12所示的未用区域,则提高空间和时间相关性以增大压缩比,从而改善显示或再现时的质量。
在使用上述传统地图投影来将球面全向视频图像映射到二维平面的情况下,由于可以通过视觉识别原始三维图像与映射之后的二维平面图像之间的相关性,因此一个优点是人可以容易地从二维平面图像掌握全向图像的整体图像。然而,根据本实施例的全向视频图像产生系统10映射到二维平面图像的主要原因是可以利用规定数据格式来在图像压缩等方面处理全向视频图像。换句话说,当人观察二维平面图像时它是否能被人识别的重要性是其次的,并且从改善视频图像显示系统方的画面质量或数据处理这一角度,最好当球面映射到平面时,包含在像素中的信息量在各方向上保持相等,也就是,像素在各方向上是以相等面积来处理的。
本发明人提出一种技术,为了将球面映射到二维平面从而使包含在像素中的信息量在各方向上保持相等,根据数学方法从球面均匀提取样本点,并且将其映射到二维平面图像。在这种情况下,从球面采样的点的三维坐标与映射目标的二维图像之间的对应关系构成二维图像映射信息。
例如,存在几何定理“当等间距地以平行平面切割球体的z轴时,由相邻平面限定的球面面积不变”。例如,半径为r的球体以垂直于z轴的平行平面等间距地切割成圆片,则各分割球面部分的面积为2πh,并且不变(详见Joseph O’Rourke“Compututational Geometry Column 31(计算几何学31栏)”。
在Z轴为[-1..1]并且二维平面图像的尺寸为W×H的情况下,如果h为[0..H],则与z轴方向上的高度h相对应的角度(纬度)Φh用下面表达式表示:
φh=arcsin(2h-HH)---(3)]]>
在此,使用均匀随机数连续确定(Φ,Θ)对,其中,Φ包含在[Φh-1..Φh]中,并且Θ包含在[0..2π]中。各对内容置于二维图像映射信息中,并且产生二维图像。具体而言,三维极坐标系统的Z轴方向上等间距即采用相等面积的范围[Φh-1..Φh]划分的球面区域随机展开到二维坐标系统上的[Φh-1..Φh]范围内以相等间距即相等面积划分的带状平面区域(参见图13)。本发明的发明人将上述二维图像映射方法称作“分层随机法”。
如图14所示,例如,随机确定在二维平面上的点(i,j)满足Φi-1<Φi,j<Φi+1的Φi,j。然后,在二维平面上的点(i,j)绘制通过对Θ值进行排序在球面上随机提取的点(Θi,j,Φi,j)的点。然而,需要注意,在[0..2π]的范围内随机确定Θi,j,而在[Φi-1..Φi+1]的范围内随机确定i,j。对于二维平面的各行i,以字典方式对所有(Θi,j,Φi,j)进行排序,并且在这种情况下这构成二维图像映射信息。
图15示出通过基于分层随机法的映射方法将在户外特定位置拍摄的全向图像映射到二维平面而获得的图像的例子。图15所基于的全向图像与图9所使用的相同。从图15也可以看出,由于基于分层随机法的映射方法将在z轴方向上等间距划分的球面区域随机映射到二维平面的相应区域内,因此与图9相比不能容易地通过视觉观察来掌握整体图像。
基于分层随机法的二维图像映射方法的其中一个优点是可以从球面均匀地对像素进行采样。
另一方面,基于分层随机法的二维图像映射方法有(两个)缺点是所需的计算处理量稍大以及不能容易地从映射到二维平面的图像掌握原始全向图像的整体图像(参见图15)。此外,由于二维图像映射信息是以像素为单位来描述的,因此基于分层随机法的二维图像映射方法不能用于逐区域地显示或再现全向视频图像的系统。而且,由于全向视频图像映射到随机位置的像素,因此当从二维图像显示或再现全向视频图像时,为了对点(Θ,Φ)的像素值进行插值,必须高效搜索出相邻像素。
根据上述基于分层随机法的到二维平面的映射方法,使用随机数来将由三维坐标系统表示的非平面图像映射到二维平面图像,从而使包含在像素中的信息量在各方向上保持相等,也就是,像素在各方向上是以相等面积处理的。在这种情况下,像素信息量的均匀性以获得所要产生的随机数的均匀性为前提。然而,产生均匀随机数在技术上是困难的。
另一方面,在数学领域内,存在一种允许从正方形或球形表面提取大量点同时保持密度均匀性的称作“Hammersley”的定理。根据应用Hammersley的Hammersley序列,可以从球面连续提取样本点,同时保持密度均匀性(例如参见Tien-Tsin Wong,Wai-Shing Luk和Pheng-Ann Heng的论文,“Samplingwith Hammersley and Halton Points(采用Hammersley和Halton点的采样)”。
图16和17分别示出根据Hammersley序列从球面提取1,000和10,000个样本点的方式。此外,为比较起见,图18和19分别示出使用通过普通随机数计算获得的随机数从球面提取1,000和10,000个样本点的方式。从图间比较可以看出,在使用Hammersley序列提取样本点的情况下,从球面提取多个点,而密度均匀性比使用随机数提取样本点的情况保持得更好,从而可以理解根据由三维坐标系统表示的非平面图像包含在像素中的信息量在各方向上保持相等。
因此,本发明的发明人提出一种使用下述Hammersley序列的映射方法作为根据数学方法从球面均匀提取样本点并且将其映射到二维平面图像的另一个例子。
根据本方法,使用Hammersley序列提取要映射到映射目标二维平面图像的第i行和第j列的点的球面样本点。例如,在二维图像的一行包括w像素的情况下,使用Hammersley序列提取原始球面上的第iw+j样本点,并且将其映射到二维平面上的点(Θi,j,Φi,j)(参见图20)。
在此,描述一种使用Hammersley序列从球面提取第iw+j样本点的过程。
首先,将k设为k=iw+j,并且该k用下面使用基数p的递推公式来表示:
k=a0+a1p+a2p2+…+arpr …(4)
此外,包含k作为变量的函数Ψp(k)如下定义:
ψp(k)=a0p+a1p2+a2p3+...+arpr+1---(5)]]>
在此,下面通过替换(k/m,Ψp(k))=(Ψ,t)用变量Ψ和t表示的坐标值(X,Y,Z)表示使用Hammersley序列确定的样本点。
1-t2cosψ1-t2sinψt=XYZ---(6)]]>
在这种情况下,与原始球面上的三维坐标系统(Θ,Φ)的对应关系即映射信息如下面表达式给出:
ΘΦ=tan-1(XY)sin-1YX2+Y2+Z2---(7)]]>
图21示出通过基于Hammersley序列的映射方法将在户外特定位置拍摄的全向图像映射到二维平面而获得的图像的例子。虽然图21所基于的全向图像与在图9的情况下所使用的相同,但是由于基于Hammersley序列的映射方法将采用Hammersley序列连续计算的样本点随机映射到二维平面上的相关区域内,因此与图9相比难以通过视觉观察掌握全向图像的整体图像。
基于Hammersley序列的二维图像映射方法的其中一个优点是可以从球面均匀地对像素进行采样。
另一方面,基于Hammersley序列的二维图像映射方法有(两个)缺点是所需的计算处理量稍大以及不能容易地从映射到二维平面的图像掌握原始全向图像的整体图像(参见图21)。此外,由于二维图像映射信息是以像素为单位来描述的,因此基于Hammersley序列的二维图像映射方法不能用于逐区域地显示或再现全向视频图像的系统。而且,由于通过Hammersley序列相邻像素不一定以相邻关系来映射,因此当从二维图像显示或再现全向视频图像时,为了对点(Θ,Φ)的像素值进行插值,必须高效搜索出相邻像素。
A-4-2.从柱面全向初频图像到二维平面的映射方法
在全向视频图像为柱面类型的情况下,如果垂直切割柱面并且将它打开,则它如图22所示按原样成为矩形。虽然在图22的例子中将±45°向上和向下分配给垂直轴,但是该值是可选的。类似于上面参照图10给出的描述,也可以以串接的方式增大特定区域内的密度以提高画面质量。
然而,需要注意的是,在全向视频图像为柱面类型的情况下,有时出现将柱面展开为矩形时的纵横比大大不同,也就是,水平方向上的数量大于垂直方向上的数量。由于上述类型的图像与例如MPEG的压缩格式的规定尺寸不匹配,因此从上依次布置通过等分矩形图像而获得的分割片断从而满足规定格式大小。在图23所示的例子中,从柱面图像展开的矩形图像分为两半,并且将右半部分拼到左半部分的底部以调整纵横比。
A-5.二维图像映射信息
如上所述,映射信息产生部分25产生平面图像的坐标(TX,TY)与三维极坐标(Θ,Φ,r)之间的对应信息作为二维映射信息。此外,如果必要,全向视频图像数据格式转换部分将二维映射信息加到视频图像信息。然而,根据不是以像素而是以区域为单位执行映射的系统,可以只有各图元顶点的坐标具有二维映射信息。
在二维映射信息加到视频图像信息的情况下,消除(TX,TY) →(Θ,Φ)的转换需要,因此全向视频图像显示系统(下面描述)的负担减轻。另外,从三维图像映射到二维图像的自由度增大。例如,即使是在使用如图8所示的简单格式的情况下,也可以增大两极部分的密度,或者提高特定位置的密度。
此外,通过利用映射信息,作为三维对象利用全向视频图像的自由度或者全向视频图像显示装置的空间增大。例如,全向视频图像显示装置的任意视点方向视频图像合成装置可以使用包含在映射信息中的距离信息重新生成任意三维形状。例如,如果距离1加到所有像素,则获得半径为1的球体,并且如果分配任意r,则可以重新生成任意形状。这样,可以实现在传统上尚未采用的三维GUI(图形用户界面)的产生和利用。下面描述全向视频图像显示装置的详细信息。
二维映射信息根据映射部分23所采用的映射到二维平面的方法而不同。以上描述的是采用不同映射方法的映射信息。
B.全向视频图像显示系统
随后描述一种全向视频图像显示系统,用于将通过根据如前一项A所述的处理映射到二维平面图像而获得的三维坐标系统的非平面图像作为视频图像进行显示。
B-1.系统结构
图24示意性地示出用来实施本发明的全向视频图像显示系统50的结构。如图24所示,全向视频图像显示系统50包括全向视频图像存储装置51、视点指定装置52、任意视点方向视频图像合成装置53和视频图像显示装置54。虽然全向视频图像显示系统50可以设计为专用硬件装置,但是以例如在如图7所示的普通计算机系统100上启动预定图像处理应用程序的形式对其进行实现也是可能的。
全向视频图像存储装置51可以使用普通计算机系统的外部存储装置如硬盘或DVD(数字多功能盘)来形成。
视点指定装置52是接受用户想要观看全向视频图像的全向视频图像信息如角度方向、缩放、平行移动等作为其输入的装置,并且由一般用户输入装置例如鼠标、键盘和游戏控制器形成。通过视点指定装置52输入的输入数据提供给任意视点方向视频图像合成装置53。
任意视点方向视频图像合成装置53是产生用户所需视频图像的装置,并且至少包括CPU(中央处理单元)和GPU(图形处理单元)。由任意视点方向视频图像合成装置53产生的视频图像是从三维对象(球体、柱体等)的内侧观看外侧时的视点方向视频图像或者当从外侧观看三维对象时的三维形状视频图像。
视频图像显示装置54由一般显示装置如电视机或PC监视器形成,并且显示和输出从任意视点方向视频图像合成装置53向其传输的视频图像。
图25示意性地示出任意视点方向视频图像合成装置53的功能结构。如图25所示,任意视点方向视频图像合成装置53包括全向视频图像数据格式读取和分离部分61、全向视频图像解码部分62以及视点方向视频图像和三维形状视频图像产生部分63。
全向视频图像数据格式读取和分离部分61从全向视频图像存储装置51读取具有如图6所示的数据格式的全向视频图像数据,并且将全向视频图像数据分离为全向视频图像信息和二维图像映射信息。
全向视频图像解码部分62对例如以MPEG格式等编码的全向视频图像信息执行解码处理。
视点方向视频图像和三维形状视频图像产生部分63使用解码全向视频图像和二维图像映射信息,根据通过视点指定装置52从用户指定的视点方向和缩放值,产生三维形状图像。所产生的三维形状视频图像传输到视频图像显示装置54以进行显示和输出。
B-2.根据视点方向再现全向视频图像
在此,描述一种用于从映射到二维平面图像的全向视频图像在任意视点方向上再现三维形状视频图像的处理。
用于将球面或柱面全向视频图像映射到二维平面图像的系统大致分为以像素为单位执行映射的“像素系统”和以区域为单位执行映射的“区域系统”。无论使用哪种系统,都执行从映射在二维平面上的全向视频图像到视频图像显示装置54的二维显示屏幕的重新映射。
B-2-1.像素系统
图26示意性地示出在采用像素系统来将全向视频图像映射到二维平面的情况下以任意视点方向再现三维形状视频图像的数据流。在这种情况下,视点方向视频图像的各像素通过使用来自视点指定装置52的输入(视点方向和指定缩放值)和加到全向视频图像的二维图像映射信息根据全向视频图像进行计算来确定。
首先,对于视点方向视频图像的各像素(x,y),通过使用下面表达式根据从视点指定装置52传递的视点方向(θv,Φv)和缩放值z进行计算来确定:(X,Y,Z)=(KR)-1×(x,y,l)
Θ=tan-1XY]]>
φ=sin-1YX2+Y2+Z2]]>(对于柱面,φ=sin-1YX2+Z2---(8)]]>
在此,R表示旋转矩阵,并且如下面表达式所示根据视点方向(θv,Φv)来确定:
R=cosθv0sinθvsinφvsinθvcosφv-sinφv-cosφvsinθvsinφvcosφvcosθvcosθv---(9)]]>
其中,K是透视转换的矩阵,并且由如下给出的3×3矩阵表示:
K=fx0px0fypy001---(10)]]>
然而,点(px,py)是图像的中心点,并且fy和fy分别是x和y方向上的焦距。缩放通过将fx和fy与z相乘来实现。
然后,参考二维图像映射信息将极坐标(Θ,Φ)转换成全向图像坐标(TXf,TYf)。在这种情况下,如果全向视频图像产生系统10的全向视频图像合成装置12(参见前面描述和图1)将三维坐标转换成二维图像时所用的表达式对于全向视频图像显示系统50方也已知,则可以不使用加到全向视频图像数据格式的映射信息,而使用表达式。由于为每个像素提供映射信息有时是冗余的,因此使用上述方法的有效性高。
在这种情况下所确定的全向图像坐标经常具有浮点。因此,根据使用整数坐标系统的全向图像通过插值确定全向图像坐标有时更好。可以使用最近插值、线性插值、立方插值、正弦插值、样条内插等作为插值方法。
对所有视点方向图像(x,y)计算如上所述的转换,并且根据全向图像坐标(TX,TY)产生视点方向图像,并且将其传输到视频图像显示装置54。
B-2-2.区域系统
根据任意视点方向视频图像合成装置53的CPU性能,在使用上述像素系统的时候不能及时执行实时处理。因此,计算量可以通过使用区域系统来大大减小,其中,区域系统使用纹理映射函数,其中,在屏幕上拼接CPU以标准方式所配备的纹理。
图27示意性地示出在采用区域系统来将全向视频图像映射到二维平面的情况下以任意视点方向再现三维形状视频图像的数据流。同时,图28示出在采用区域系统的情况下合成任意视点方向视频图像的概念图。
首先,使用作为附加信息包含的映射信息,将以“图元”为单位的全向视频图像关于图元各顶点的全向图像坐标(TX,TY)转换成极坐标(Θ,Φ)。在此,图元是由三角形或四边形形成的基本绘制因子,并且GPU通常以图元为单位执行绘制操作。
然后,根据从视点指定装置52传递的视点方向(θv,Φv)和缩放值z将极坐标(Θ,Φ)转换成视点方向图像坐标(xf,yf)。转换表达式如下给出:
(X,Y,Z)=(sinθvcosφv,sinφv,cosθvcosφv)
(对于柱面,(sinθv,φv,cosθv))
(xf′yf′,w)=K×R×(X,Y,Z)
(xf,yf)=(xf′w,yf′w)---(11)]]>
在此,R是旋转矩阵,并且K是透视转换的3×3矩阵。参见上面给出的表达式(7)和(8)。
采用上述表达式,确定在两点(X,Y,Z)和(-X,-Y,-Z)(相对于一点对称的一对点)具有相同坐标值(xf,yf)的视点方向图像坐标。因此,为了研究从两点中的哪一个确定所确定的视点方向图像坐标(xf,yf),使用映射信息将所确定的坐标(xf,yf)转换成三维坐标系统(X’,Y’,Z’),然后检查(X’,Y’,Z’)与(X,Y,Z)是否相互一致,这样,就可以辨别出前者。否则,如果w值为正,则可以解释采用(X,Y,Z)确定的值有效。
然后,全向视频图像作为纹理传输到GPU(或者装备在GPU中的VRAM(视频随机访问存储器)中的纹理缓冲区)。然后,在纹理缓冲区上与各图元顶点的全向图像坐标(TX,TY)相对应的一对坐标值(tx,ty)和视点方向图像坐标(xf,yf)与指令一起传输到GPU,从而以图元为单位产生视点方向图像。在这种情况下,可以使用配备在GPU中的插值法。可以使用最近插值、线性插值、立方插值、正弦插值、样条插值等作为插值方法。
在此,当执行插值处理时,依赖于GPU图像可能会出现一些麻烦。例如,在纹理缓冲区的宽度最大限定于1,024像素的系统中,需要等分柱面全向视频图像,并且从上依次布置所得到的分割片断,从而满足上面参照图23所述的规定格式尺寸(在图23所示的例子中,从圆柱形状展开的矩形图像分为两半并且将右半部分拼接到左半部分的底部以调整纵横比)。在使用配备有线性插值函数的GPU例如包括在索尼计算机娱乐公司的游戏机游戏站2(PS2)中的GPU “图形合成器”的情况下,线性插值函数在分割片断的末梢边部分有时工作不好。
例如,当像素插值处理到达切割和展开的矩形图像末梢边的附近部分时,用于插值的像素如图29或30所示位于回叠位置。然而,由于如上所述的矩形图像末梢边的附近部分没有原始与其毗邻的相邻像素或宏块的像素数据,因此不能执行像素值的插值。由于在该地方没有执行任何线性插值,因此如上所述的地方有时在视频图像显示装置54的屏幕上看上去是剩余线(参见图31)。
因此,本发明的发明人将任意宽度的重叠宽度部分加到如图32和33所示通过等分而获得的各分割片断的相反端。例如,增加要在相反端连接的部分的宏块(在此假定全向视频图像根据MPEG-2系统来编码)(应该理解图中的数值对应于宏块的序列号)。通过利用该附加像素块作为重叠宽度,在回叠点也执行准确的插值处理,并且产生不出现如图31所示的剩余线的正常图像。
需要注意,GPU通常装备有称作“夹子(CLAMP)”的功能,并且可以重复布置纹理。然而,在矩形图像如图23所示回叠成两部分的情况下,由于左端和右端相互不一致,因此即使使用夹子功能,也不产生适当的图像。
前述坐标转换处理是针对图元的所有顶点(TX,TY)而计算的,并且纹理缓冲区上图元顶点的坐标(tx,ty)和视点方向图像坐标(xf,yf)对和加有重叠宽度的全向视频图像传输到GPU。然后,GPU产生视点方向图像,并且将它传输到视频图像显示装置54。
B-2-3.根据数学方法映射的二维图像的视频图像再现
上面描述过,通过根据分层随机法或Hammersley序列的数学方法从球面均匀提取样本点并且将样本点映射在二维平面图像上,可以将非平面图像映射到二维平面上,从而使包含在像素中的信息量可以在各方向上保持相等。
在此描述使用根据如上所述的数学方法映射的二维图像在任意视点方向上再现三维形状视频图像的处理过程。图34示意性地示出从根据数学方法映射的二维图像在任意视点方向上再现三维形状视频图像的数据流。
虽然像素可以通过基于分层随机法或Hammersley序列的二维图像映射方法从球面均匀地对像素进行采样,但是由于采用分层随机法或Hammersley序列相邻像素不是以相邻关系来映射,因此为了当要从二维图像显示或再现全向视频图像时对点(Θ,Φ)的像素值进行插值,必须高效搜索出相邻像素。
因此,在本实施例中,作为合成三维形状视频图像的预处理,利用映射信息来计算极坐标系统上与各样本点(Θi,Φj)相邻的四个(或多个)相邻像素(Θi(1),Φj(1))、(Θi(2),Φj(2))、(Θi(3),Φj(3))和(Θi(4),Φj(4))以产生查询表T(Θ,Φ)来对于二维映射全向图像的像素尺寸W×H搜索相邻像素。
在如上所述的预处理之后,对于视点方向视频图像的各像素(x,y),通过根据从视点指定装置52传递的视点方向(θv,Φv)和缩放值z进行计算来确定极坐标点(Θ,Φ)。
然后,参考查询表T(Θ,Φ)来搜索与对应于视点方向视频图像中的像素(x,y)的极坐标(Θ,Φ)相邻的像素。
然后,使用相邻像素来对极坐标(Θ,Φ)的像素进行插值。可以使用最近插值、线性插值、立方插值、正弦插值、样条内插等作为插值方法。
然后,参考二维图像映射信息将极坐标(Θ,Φ)转换成全向图像坐标(TXf,TYf)。
对整个视点方向图像(x,y)执行如上所述的转换,并且从全向图像坐标(TX,TY)产生视点方向图像,并且将其传输到视频图像显示装置54。
B-3.镜头效果
当执行极坐标系统与二维图像坐标系统之间的转换时,可以在像素系统和区域系统中增加各种镜头效果。分别对上述系统给出的转换表达式应用于理想针孔摄像机。
当全向视频图像作为采用鱼眼镜头拍摄的视频图像显示时的转换表达式如下给出。在使用鱼眼镜头的情况下所产生的视点图像如图35所示。
(X,Y)=(r(Φ)cosΘ,r(Φ)sinθ)
r(Φ)=f1Φ+f2Φ2+… …(12)
B-4.合成任意三维形状
视点方向视频图像和三维形状视频图像产生部分63可以使用二维图像映射信息来根据通过视点指定装置52从用户指定的视点方向和缩放值产生三维形状视频图像。更具体地说,视点方向视频图像和三维形状视频图像产生部分63使用形成任意视点方向视频图像合成装置53的GPU所配备的将纹理拼接到三维形状的功能,以参考二维图像映射信息的距离信息将全向视频图像拼接到三维形状。因此,当从外侧观察全向图像时,可以以任意形状对它进行再现。
下面描述用于合成映射在任意外侧三维形状的二维表面上的全向视频图像的处理。图36示意性地示出从映射在二维平面上的全向视频图像合成任意三维形状的视频图像的数据流。
首先,参考二维图像映射信息以图元为单位转换全向视频图像,从而使全向视频图像图元各顶点的全向图像坐标(TX,TY)转换成极坐标(Θ,Φ,r)。图元是由三角形或四边形形成的绘制单元,并且GPU通常以图元为单位执行绘制操作。
然后,根据极坐标(Θ,Φ,r)和从视点指定装置52传递的视点方向(θv,Φv)和平行移动量(Xv,Yv,Zv)将极坐标(Θ,Φ,r)转换成三维坐标(X,Y,Z)。转换表达式如下给出:
(Xf,Yf,Zf)=(rsinθvcosΦv,rsinΦv,rcosθvcosΦv)
(X,Y,Z)=(R×(Xf,Yf,Zf)+(Xv,Yv,Zv)) …(13)
然后,将全向视频图像作为纹理传输到GPU(或者装备在GPU中的VRAM(视频随机访问存储器)中的纹理缓冲区)。然后,将图元各顶点的全向图像坐标(TX,TY)和三维坐标(X,Y,Z)对与指令一起传输到GPU,从而以图元为单位产生三维形状视频图像。在这种情况下,可以使用配备在GPU中的插值法。可以使用最近插值、线性插值、立方插值、正弦插值、样条内插等作为插值方法。
图37到40示出从映射在二维平面上的全向视频图像合成的任意三维形状的视频图像的例子。图37示出将全向视频图像拼到立方体外侧的方式。类似地,图38、39和40分别示出将全向视频图像拼到正二十面体、正十二面体和环体(环面)外侧的方式。
例如,如果将距离1加到所有像素,则获得半径为1的球体,并且如果分配任意r,则可以重新生成任意形状。这样,可以实现传统上尚未采用的三维GUI(图形用户界面)的产生或利用。
附言
本发明在上面是参照特定实施例来详细描述的。然而,显然本领域的技术人员可以在不脱离本发明的精神和范围的情况下对实施例进行修改或变更。换句话说,本发明是示例性的,而不是限制性的。为了确定本发明的精神和范围,应该对权利要求加以考虑。
工业应用
根据本发明,可以提供一种优良的图像处理装置、图像处理方法、记录介质和计算机程序,它们可以对通过拼接由多台摄像机拍摄的视频图像数据而作为非平面图像形成的图像适当执行如压缩、存储和再现的处理。
此外,根据本发明,可以提供一种优良的图像处理装置、图像处理方法、记录介质和计算机程序,它们可以对从由布置为拍摄确定为视点的某一空间点周围的图像的多台摄像机形成的全向摄像机或全天球型摄像机获得的柱面或球面图像适当执行处理。
而且,根据本发明,可以提供一种优良的图像处理装置、图像处理方法、记录介质和计算机程序,它们可以对显示或再现方的性能加以考虑来存储和处理非平面图像如全向视频图像。
根据本发明,通过根据压缩格式和显示装置的性能编辑全向视频图像,可以提高显示或再现装置方的画面质量或实时性能。
通常,不仅当通过网络传输信息时,而且当从如DVD的记录介质读取信息时,比特速率经常受到一定的限制。在根据本发明压缩和存储如全向视频图像的非平面图像的情况下,可以将最大信息量置于上述受限比特速率中。
此外,根据本发明,当从全向视频图像合成任意视点方向视频图像时,可以通过摹仿再现由各种镜头拍摄的视频图像来利用各种特殊效果。
而且,根据本发明,通过应用不仅从内侧而且从外侧以任意形状再现全向视频图像的功能,可以提供新的GUI(图形用户接口)环境。