三维物体的分层表示及利用其绘制物体的方法和装置的制作方法

文档序号:6583021阅读:373来源:国知局
专利名称:三维物体的分层表示及利用其绘制物体的方法和装置的制作方法
技术领域
本发明涉及计算机图形,更具体地说,涉及从真实物体照片以及它们的几何表示获得的三维静态和动态物体表示,并涉及一种用于使用二进制的八叉树(Binary Volumetric Octree)表示和绘制(rendering)的方法和装置。
背景技术
在不久的将来,以交互速度高质量地绘制三维物体将在现代图形系统中受到重视。对于高质量地绘制3D物体的需求使得发明用于压缩物体并借助通信网络在例如电子商务、计算机游戏、科学、工程、医药领域发送该物体的有效算法成为必要。在过去几十年间,使用3D物体的传统的多边形模型来同时满足所有这些要求并未达到预期效果。多边形模型有两个主要的缺点大体积(例如现实模型需要好几千万个三角形)和构造困难。
为了克服这些缺点,近年来提出一些3D图形的方法。他们最大的优点是基于使用物体图像的方法,和基于在3D空间使用点而非三角形的方法。
基于图像的方法把给定的物体表示成物体的一组图像-‘照片’-完全包括其可见表面,它们是自多个不同的相机位置拍摄而来。此外,每个这样的图像有一个对应的景深图(depth-map),该景深图是从图像平面的像素到物体表面的距离的阵列。这种表示的优点是参考图像可以提供高质量的物体可视化,而不管其多边形模型的复杂性,并且可以通过普通的图像压缩技术进行压缩,而不会牺牲太多质量。此外,绘制时间与参考和输出图像的像素数而不是物体的复杂性成比例。
缺点在于获得真实物体(例如,雕刻)的景深图是非常复杂的操作,及处理这种表示的技术发展尚未完善。
基于点的方法将物体表示成‘一堆点’而不利用显式的(explicit)局部多边形结构。在这种方法中,通过在垂直于图像平面的方向上,将每个参考图像的每个像素平移相应的景深的值,具有相应的景深的一组图像定义在物体表面的一组点(具有对应的颜色)。因此基于图像的表示是基于点的表示的特例。随后我们集中精力在基于图像的表示,因为它们更接近我们的方法。
在文献中,描述3D物体表示和绘制方法的参考文献〔1〕至〔13〕描述了上述两种趋势,如减轻纹理图〔1〕,分层景深图像(depth image)〔2〕,分层景深图像树〔3〕,Q纵立长条(Qsplat)〔4〕,Surfels〔5〕和其他在现有技术已知的。在现有技术方法的以下讨论中,将参考以下出版物〔1〕manuel M.Oliveira,Gary Bishop,David McAllister,Relief TexturesMapping,Proceedings of SIGGRAPH’00(减轻纹理图,SIGGRAPH 2000会议论文集);〔2〕Johathan Shade,Steven Gortler,Li-wei He,Richard Szeliski,LayeredDepth Images,Proceedings of SIGGRAPH’98 (分层景深图像,SIGGRAPH1998会议论文集);〔3〕Chun-Fa Chang,Gary Bishop,Anselmo Lastra,LDI TreeAHierarchical Representation for Image-Based Rendering,Proceedings ofSIGGRAPH’00(LDI树基于图像绘制的分层表示,SIGGRAPH 2000会议论文集);〔4〕Szymon Rusinkiewicz,Marc Levoy,QsplatA Multiresolution PointRendering System for Large Meshes,Proceedings of SIGGRAPH’00(SIGGRAPH 2000会议论文集,Q纵立长条大的网状结构的多分辨率点绘制系统);〔5〕Hanspeter Pfister,Matthias Zwicker,Jeroen van Baar,Markus Gross,Surfels表面元素作为绘制图素(SurfelsSurface Elements as RenderingPrimitives,Proceedings of SIGGRAPH’00,SIGGRAPH 2000会议论文集);〔6〕Chamberlain et al.,Fast Rendering of Complex Environments Using aSpatial Hierarchy,Proceedings of Graphics Interface’96(使用空间分层快速绘制复杂的环境,图像界面会议论文集1996);〔7〕Grossman and Dally,Point sample rendering,Proceedings ofEurographics Workshops on Rendering Techniques’98 (点取样绘制,关于绘制技术的欧洲图形研究组会议论文集1998);〔8〕Lischinski and Rappoport,Image-Based Rendering for Non-DiffuseSynthetic Scenes,Proceedings of Eurographics Workshops on RenderingTechinques’98(非扩散的综合景物的基于图像的绘制,关于绘制技术的欧洲图形研究组会议论文集1998);〔9〕M.Levoy and T.Whitted,The Use of Points as Display Primitives.Technical Report TR 85-022,The University of North Carolina at Chapel Hill,Department of Computer Science,1985(使用点作为显示图素,北卡大学计算机科学系,技术报告TR 85-022);〔10〕L.Westover,Footprint Evaluation for Volume Rendering,Proceedingsof SIGGRAPH’90(体绘制的轨迹评估,SIGGRAPH 90会议论文集);〔11〕C.I.Connolly.Intl.Conf,Cumulative Generation of Octree Modelsfrom Range Data,Proceedings of Intl.Conf.Robotics,pp.25-32,March 1984(从区域数据的八叉树模型的累积生成,自动机工程学会议论文集25-32页,1984年3月);〔12〕G.H.Tarbox and S.N.Gottschlich,IVISAn Integrated VolumetricInspection System,Proceedings of the 1994 Second CAD-Based VisionWorkshop,pp.220-227,February 1994(IVIS综合容量检查系统,1994年第二届基于CAD的图像研究组会议论文集);〔13〕Curless,B.,Levoy,M.,A Volumetric Method for Building ComplexModels from Range Images,Proceedings of SIGGRAPH’96(用于从范围图像建造复杂模型的体方法,SIGGRAPH 1996会议论文集);〔14〕C.Bregler,Video Based Animation Techniques for Human Motion,SIGGRAPH’00 Course 39Image-based Modeling and Rendering(基于视频的人类行为的动画技术,SIGGRAPH 2000 39章基于图像的模型和绘制);以及〔15〕Paul F.Debevec,Camillo J.Taylor,Jitendra Malik,“Modeling andRendering Architecture from PhotographsA Hybrid Geometry-and Image-basedApproach,Proceedings of SIGGRAPH’96(从相片的建模和绘制结构混合几何图形和基于图像的方法,SIGGRAPH 1996会议论文集)。
基于图像方法存在的一个普遍问题是在结果图像中存在孔(hole)。不象在物体表面被线性地插入到所有多边形(通常为三角形)的内部的意义下是‘连续的’多边形模型,基于图像和基于点的表示提供物体的‘离散’的逼近。在基于图像的表示情况下,物体表面事实上以小的有色的方块即参考图像的漂移(shifted)像素近似。当观察方向与每个参考图像平面的法方向非常不同时,近似方块的投影通常不完全覆盖物体表面的投影。我们称这样的孔为第一类孔。基于图像表示的结果图像中的孔的另一来源是该表面的某些部分可能在所有参考图像中都是不可见的,但是对某些视角是可见的(第二类孔)。这些孔是由于在特定的基于图像的表示中没有足够的信息。
减轻纹理方法〔1〕通过使用线性内插法的模拟消除第一类孔,其可能导致失真和人为图像污染,因为内插是在物体的二维(2D)投影上执行而非三维(3D)空间。更为重要的是,在这个方法下,第二类孔仅可以以相同的方式处理。因为方法〔1〕仅使用6个参考图像,即物体在外接立方体表面上的投影,当存在从所有6个立方体表面都不可见的点时,对于这种方法在复杂形状上的应用有严格的限制。选择这种方法来最大化绘制速度,即通过使用快速预弯曲(相当于在正交投影下改变观察方向的几何变换),但是它导致质量降低。
分层景深图像(LDI)〔2〕是设计用以避免有第二类孔的问题的数据结构。LDI是一图像,其像素包含所有投影到参考图像平面上固定位置的物体点。〔1〕的快速预弯曲(prewarping)算法也在此处应用。但是,第一类孔的问题仍然存在。纵立长条(splatting)(最早在〔10〕中引入)被用来解决第一类孔的问题。纵立长条(Splat)是小型的二维用直线围着的或椭圆曲面,赋予特定的颜色分布-例如,聚集在曲面的中心的高斯分布,或常数分布。LDI方法的缺点在于其不对称性,因为表示是基于某个固定方向上的投影。这将导致孔填充非常困难,因为观察方向与所述的固定方向非常不同。
LDI树〔3〕是一个八叉树,在其中有一个LDI附着在每个八叉树单元(cell)(结点)上。具有分层模型的优点是不需要绘制八叉树中的每个LDI。通过使用存储在分级层更高的LDI中的过滤点,不那么详细绘制较远的那些单元。通过使用许多参考图像,设计这种表示以便克服LDI的不对称性。但是,存储量非常大如〔3〕所报道,对于512×512的图像(从36个参考图像获得),LDI树占了30M字节,并且这个数量的一半都是树结构本身。如〔3〕所报道,对于这个物体的绘制时间也很大在具有32250 MHz MIPS R10000处理器的Silicon Graphics Onyx2上,每帧花2-3秒(没有使用并行操作)。
然而,最近设计了另一种表示Surfels方法〔5〕,该方法将基于图像的数据结合到树结构中。它涉及特殊的树〔8〕,该树是分层景深立方体用来代替对应于三个正交平面的、包含三个LDI的单个LDI树结点。在〔5〕中得到对于包含81000个三角形的原始模型的结果。在奔腾III700MHz处理器上获得对于256×256输出缓冲器的每秒11帧(fps)的帧频。Surfels是由对应的景深向量移动的参考图像像素。使用树结构来加速选择可见元素(element)的计算。通过最近邻域或高斯滤波实现孔填充。在这个结构中应用纵立长条(splatting)。以数据内容和速度限制为代价换来了结果图像的高质量。
最近引入的Q纵立长条(Qsplat)〔4〕表示,尽管它是基于点而非基于图像的方法,在此也应该提及一下。该方法使用基于嵌套球(nested ball)的分层点结构。在绘制阶段使用适当大小的椭圆纵立长条。但是在〔4〕中使用了稍微有些复杂和费时的截断的选择(truncated culling)。数据结构也更为复杂,并且需要更多的处理时间。
在〔1〕-〔12〕中开发了用于从范围数据,例如多组景深图像,获得八叉树结构的3D模型的想法和多种实现方法。〔13〕涉及使用八叉树从原始数据构造的多边形模型。所有上述内容涉及基于静态3D图像的表示。对于动态3D物体,值得注意,迄今为止对于这个问题只有少数基于图像的方法被建议使用。在〔14〕中,对于几乎是不变的3D表面的几何图形,发展了表面的(facial)图像修改的想法。这仅适用于有限类的动态物体,并且并不是实际的3D物体动画。在〔15〕中,在视图相关性纹理图(texture map)的帮助下使建筑景物动态化,视图相关性纹理图用于在一些照片的基础上从多个视点重构结构视图。
因此,很明显,需要允许压缩存储、快速绘制且具有高输出图像质量、和适合于动画目的的基于图像的表示。

发明内容
本发明的目的是提供基于景深图像的、需要相对小的存储空间、并允许快速和高质量地绘制的三维物体表示,其中讨论的现有技术的缺点被减少或消除。
本发明的具体目的是提供一种用于3D物体表示和绘制的方法和装置,允许快速计算坐标变换,自动确定二进制的八叉树(BVO)的施加元素的顺序,和形成精确定义大小的纵立长条。
本发明的另一个目的是提供一种动态3D物体压缩表示的方法,允许快速和正确的绘制。
通过分离BVO的几何和颜色分量以及使用用于几何分量压缩的八叉树的二进制表示,和用于压缩颜色分量的2D图像压缩算法,实现压缩数据流表示。
以根据本发明的用于表示和绘制三维(3D)物体的方法实现上述结果,该方法包括步骤将三维物体的原始数据转换成二进制的八叉树(BVO)格式,其中颜色被赋予对应于属于物体表面点的坐标的每个BVO顶点,所述颜色是物体表面点的有色的平均值,该物体表面点的坐标是在立方体内部代表对应于给定的BVO顶点的三维图像元素即三维像素(voxel);通过从根顶点到叶顶点分层遍历八叉树来绘制BVO,以便获得对应于BVO叶顶点的三维像素中心的局部的3D坐标,将获得的3D坐标变换成三维像素中心的2D坐标和投影三维像素图像大小的信息,并且为每个BVO叶顶点生成和显示相应的投影三维像素图像的纵立长条覆盖区域,并使用颜色信息,通过多个显示的纵立长条可视化3D物体。
3D物体的原始数据是一组景深图像,或多边形模型数据,或一组有颜色的点。
此外,从离观察者最远的BVO三维像素,到靠近的BVO三维像素,顺序执行分层八叉树的遍历。
为最小化转换过程的计算复杂度,在遍历八叉树之前,该方法包括计算fT(i,σi)=T2i-1σi其中T是坐标型变换(coordinate type transformation)的4×4矩阵,σi是元素为0或1的任意四维向量,i是整数,取值从0到分析的BVO的高度值,并且使用3D坐标分层变换到2D坐标所获得的结果,同时为每个BVO顶点计算FiFi=Σj=infr(i,σj)=fT(i,σi)=Fi+1=Fi(σi,Fi+1)]]>在遍历从BVO根顶点到叶顶点的所有路径后,其给出了由局部坐标(x,y,z)指定的每个BVO叶顶点Tv=F1(σ1,F2(σ2..Fn(σn)..))其中σi由使用坐标的二进制记录的表达式确定v=xtzl(σxii...σx2σx1σyn...σy2σy1σzn...σz2σz10...01=Σi=1n2i-1σi]]>由三维(3D)物体表示和绘制装置实现上述技术结果,包括用于生成3D物体原始数据的3D物体原始数据生成装置;用于将3D物体原始数据转换成二进制的八叉树(BVO)格式的3D物体原始数据转换装置,所述的3D物体原始数据转换装置与3D物体原始数据生成装置相连,其中颜色是被赋予对应于物体点坐标的每个BVO顶点,所述颜色是其坐标在立方体内、代表对应于所述的BVO顶点的三维图像元素即三维像素的物体点的有色的平均值;和与3D物体原始数据转换装置相连的BVO绘制装置。
3D物体原始数据生成装置是用于输出多个点的3D坐标的三维现实物体扫描仪,或3D物体多边形模型生成装置,或景深图像生成装置。
此外,以用于表示动态三维(3D)物体的方法实现上述技术结果,包括步骤将一系列3D物体中的每个3D物体的原始数据转换成二进制的八叉树(BVO)格式,其颜色被赋予对应于属于物体表面点的坐标的每个BVO顶点,所述的颜色是物体表面点的有色的平均值,物体表面点的坐标在立方体内代表对应于所述的BVO顶点的三维图像元素即三维像素,以便为一系列3D物体生成对应于动态3D物体的一系列BVO。
该方法还包括步骤投影一系列BVO中的每个BVO到对应于BVO根顶点的立方体表面,以便为每个立方体表面获得对应于动态物体图像的视频流并生成八叉树字节流,在八叉树字节流中的每个字节对应于八叉树顶点,并且在字节中的每个比特分别指示所述的八叉树顶点的子树的存在或不存在,其中六个视频流和八叉树字节流一起表示动态3D物体,使用MPEG视频压缩格式以压缩形式存储六个视频流,并且使用熵压缩存储八叉树字节流。
此外,通过在BVO上投影六个参考图像流来可视化动态3D物体以确定每个BVO顶点的颜色,并且投影用于可视化动态3D物体的获得的有色的BVO。


通过结合附图对本发明的优选实施例进行详细描述,本发明将变得更加清楚,其中图1是使用多类原始数据用于3D物体表示和绘制的装置的功能示意图;图2显示了从用正交照相机(orthographic cameras)(2D视图)获得的一对景深图像生成BVO;图3表示3D点和多个BVO分层级(2D视图)的相应的图;图4说明了BVO立方体和由该立方体分成的8个子立方体;图5a,b是在单个分层级中确定BVO顶点遍历顺序的2D和3D例图;图6说明了在时间和空间上投影纵立长条的过程,以及纵立长条大小确定的几何条件;图7显示了表示动态3D物体的数据流的结构;和图8是由数据流表示的动态3D物体可视化过程的流程图。
具体实施例方式
现在参考图1,用于使用多种类型原始数据的3D物体表示和绘制的装置包括3D物体原始数据生成装置,例如用于输出多个点的3D坐标的现实3D扫描仪1,或多边形模型生成装置2,或景深图像生成装置3;装置4用于将3D物体原始数据转换成BVO格式,所述的转换装置包括用于生成多个6D向量的装置5,包括三个坐标x,y,z和三个颜色坐标,例如RGB,以及BVO构造装置6。BVO构造装置6与BVO可视化装置7相连,BVO可视化装置7包括图像缓冲器以及坐标变换矩阵生成装置8。
图2显示了如何从现实表面生成景深图像,以及如何在两个正交照相机情况下将其结合而生成三维像素。在图2显示的是现实物体表面的区域9;近似于由第一照相机(未显示)拍摄的现实物体表面的长方形投影10,所述的投影对应于景深图像像素的离散值;由第二照相机(未显示)拍摄的表面9的取样的景深值11;对应于由两个照相机拍摄的表面的结合的景深值的三维像素12。
图3描述了3D点和BVO(2D视图)的多种尺度级(scale level)图相应的。在图3中给出的是多个具有3D坐标的点13;对应于点13的BVO结构14;具有标出的三维像素16的BVO尺度级15,三维像素16包含颜色信息并且位于BVO结点。
图4说明了BVO立方体17和由该立方体分成的8个子立方体18。
图5a,b说明了如何确定在单个分层级的BVO顶点的遍历顺序。图5a,b给出的是投影平面19;投影方向20;对应于一个BVO顶点的立方体21,被与立方体21表面平行的平面22、23、24划分;立方体所分析的8个子立方体中的每个的遍历(投影)顺序25。
图6说明如何在时间和空间上投影纵立长条,以及确定纵立长条大小的几何条件。在图6中给出的是完整的8×8 BVO 26;三维像素16;纵立长条27;正交投影方向28;图像缓冲器29。
图7显示了BVO动画序列30的结构,包括对应于动态物体变化的几何图形的一系列BVO字节流31,和视频流32(每个动画帧的参考图像序列)。
图8说明了用于可视化由数据流表示的动态3D物体的过程,步骤33至39。
可以从大部分现在使用的3D模型表示获得要求的3D物体表示,BVO。图1显示了用于生成输入表示的常规的装置,这种表示例如是3D扫描仪1的数据、由装置2生成的多边形模型,由装置3生成的一组景深图像。BVO应用的主要目的在于使用一组景深图像作为输入表示。依赖于景深图像的模型表示的优点是可能直接从现实模型的相片生成3D模型,而不用通过艰巨的建模过程。
为了生成BVO,由装置1、2、3中任何一个提供的输入表示在装置5的帮助下被转换成中间表示,所述装置5用于生成多个6D向量,这种向量的元素包括三个坐标x,y,z和三个颜色坐标RGB。为了构建BVO,应该给定其高度,而在局部BVO坐标中的BVO立方体的边长是L=2n。以下列方式,由装置5构造中间表示。
对于多边形模型使用转换和比例变换(transfer and scaling transformation),模型多边形的所有顶点都放置于一立方体内,该立方体有一顶点在坐标原点,并且相对的顶点位于坐标为(L,L,L)的点。通过多边形细分方法,任意多边形的任意两个相邻顶点间的距离不会大于1。使用原始多边形模型的结构和结构坐标,将颜色被赋予多边形的每个顶点。
对于景深图像景深图像被按比例变换和转换,以便在重新计算图像的通用坐标系统后,对应于像素的长方形的线尺寸不会超过1,并且所有的长方形都位于由BVO立方体限定的空间内。对于通用坐标系统的重新计算,其中在照相机的位置信息的帮助下获得图像,使用照相机的位置信息和对应于图像中的像素的景深值。这给出了多个具有颜色坐标的点和对于所有图像通用的坐标。点的颜色坐标对应于原始比例图像中的像素颜色。
对于3D模型扫描的数据使用转换和比例变换,扫描的模型的所有点都位于由BVO立方体限定的空间内,BVO立方体的顶点在坐标原点上,并且相对的顶点位于点(L,L,L)。一旦获得以多个点{x,y,z,G,G,B}的形式表示的中间表示(其中坐标x,y,z在BVO立方体内),装置6构造如图3所述的BVO。立方体17被分层地划分成8个子立方体18(图4),就对应于根顶点后的下一分层级上的顶点,因而获得第一尺度级的BVO。BVO可以被认为是一系列具有渐增高度的BVO的尺度级15(图3),其中对于以下所列的所有算法,使用具有更小高度的树并未使处理具有更大高度的树成为必要。对于随后的处理,只有当对应于给定子树的立方体包括至少一个点13时,才存储BVO子树。从多个点13获得BVO结构14。颜色被赋予每个BVO顶点(不仅是末端的一个)。被赋予顶点的颜色是对应于这个顶点的属于立方体的点的有色的平均值。
BVO绘制装置7使用由用于生成坐标型变换4×4矩阵T的装置8指定的3D坐标系统变换。从类型变换得到的坐标指定相对于BVO的视点位置。
为了绘制,应该从根顶点到树的叶顶点通过其所有顶点遍历BVO。在遍历树期间,称为纵立长条的特殊图案被存储在图像缓冲器29中。如图6所示,分析的(analyzed)顶点的纵立长条27应该覆盖对应于所分析的顶点的投影的立方体26的空间。纵立长条的颜色应该对应于所分析的BVO顶点的颜色。选择纵立长条的形状以便使其能够在图像缓冲器中快速存储,并且通常是正方形或圆。纵立长条27中心的坐标应该对应于对应该顶点的投影的立方体26的中心坐标。
为了提供考虑到相对于视点的立方体位置的正确的BVO绘制,在绘制过程中必须小心,以便在图像缓冲器的每个点,最后投影的纵立长条比其他早先投影在图像缓冲器中所分析的点上的纵立长条离观察者更近。BVO绘制速度主要依赖于对应于立方体中心点的坐标型变换速度。借助于硬件图像加速器,使用硬件z-缓冲器和在计算立方体中心点的变换中的矩阵乘法的硬件辅助加速,可以解决上述问题以提供正确的绘制。
没有使用专用的图像加速器的BVO绘制方法包括一种确定BVO遍历正确顺序的方法和一种立方体中心坐标的快速分层坐标型变换的方法。使用根据本发明的BVO遍历顺序确保了纵立长条正确的投影而不使用z-缓冲器。
确定BVO遍历顺序的方法确保了纵立长条正确的投影,该方法是基于在每个BVO顶点确定子树的遍历顺序,其中该子树的根顶点源于这个顶点。如图5所示,为确定对应于所分析的BVO顶点的立方体21的顶点遍历顺序,使用所有三种可用的方法,由一平面将立方体21分成两个相同的平行六面体。在图5a,b中,由线段22、23、24画出平面。通过确定平行六面体22(23)普通表面(common face)的法线和投影方向19之间的角的方向,确定每个区域的正确的投影顺序。一旦执行该操作,在三种情况的每个中获得所分析的立方体21的8个子立方体中每个的遍历顺序25。
根据下述总体绘制过程的描述,循环执行确定立方体投影顺序的上述过程,其包括确定BVO遍历顺序和快速分层变换a.在每次变化视点时,执行预处理。
b.使根顶点成为当前顶点。
c.确定对应于当前顶点的所有8个子立方体的正确的投影顺序。对于正交投影,所有结点从对应的根顶点的立方体细分(sub-division)继承该顺序。
d.对于当前顶点的所有子立方体,执行1)计算对于这个顶点必需的立方体中心坐标的转换。
2)如果当前顶点是树的叶,按如上图6所述方式投影纵立长条。
3)如果当前顶点不是树的叶,使对应于这个子立方体的顶点成为当前顶点并循环地跳转至(b)。
用以下方式完成步骤(a)和(d(1))的操作。用T代表4×4变换矩阵。变换描述了在4维空间的线性转换。让n是BVO的高度,v是顶点的局部法线坐标。假设三维像素坐标以标准隐式二进制形式(BVO格式的标准二进制记录,其每个字节对应于一内部八叉树顶点(包括根顶点),并且在字节中的每位分别指示这个八叉树顶点的子树的存在或不存在)存储,并且重写结点坐标为(1)v=xyzl(σxn...σx2σx1)(σyn...σy2σy1)(σzn...σz2σz1)(0...01)=Σi=1n2i-1σi-----(1)]]>顶点坐标的期望的转换具有形式Tv=Σi=1nT2i-1σi------(2)]]>此处σi(x,y,z)是对应的顶点的坐标二进制形式的分量(例如立方体中心的坐标),σi是关于固定分量号i的这些坐标分量的向量。在每个BVO顶点,Fi按下式计算Fi=Σj=infT(i,σj)=fT(i,σi)=Fi+1=Fi(σi,Fi+1)------(3)]]>对于固定的T,在预处理步骤(a),计算表示式(3)中的项fT(i,σi)=T2i-1σi (4)这些表示式存储在n×8表中,然后对于所有顶点仅使用查表和求和由公式(3)计算变换。结果,在通过从根顶点到BVO叶顶点的全部路径后,得到关于由局部坐标(x,y,z)指定的每个BVO叶Tv=F1(σ1,F2(σ2..Fn(σn)..))与关于八叉树每个叶的直接矩阵乘法相比,坐标变换方法使计算量减少了一个数量级。
值得提出的是,前述的BVO多尺度特性使得能够直接选择与被表示为BVO的3D模型的期望的细节级成比例的特定的BVO多尺度级,和模型与观察者之间的距离。
如下执行用于表示动态3D物体的方法。一系列3D物体中每个3D物体的原始数据转换成BVO格式。对于每个3D动画帧,构造6个景深图像,对应于物体到立方体表面的投影。因此,对于每个立方体表面生成一视频流,以及每帧6个景深图。对于每帧,BVO格式以字节流形式构造,解释如上。用任意有效的压缩方法,如MPEG2,压缩视频流。如图8所示,BVO动画序列30包括对应于动态物体的变化的几何图形的BVO字节流的序列31,和前述的6个视频流32(动画的每个帧的参考图像序列)在图8的流程图中说明了动态3D物体可视化的方法。在步骤33,从动画序列提取出按以上描述形成的6个参考图像的数据和字节流的数据。在步骤34,解压缩6个图像并构造BVO结构。在步骤35,所获得的6个参考图像流投影到BVO上,以确定每个BVO顶点的颜色。在步骤36,决定是否可视化解压缩的BVO。如果是,在步骤37,可视化对应于动态物体帧的BVO。在步骤38,决定是否有必要读取下一帧。如果是,进程转到步骤33,否则进程转到步骤39,并且如果视点变化,回到可视化步骤37。
经验表明,根据本发明的方法获得的单个BVO格式帧的体积比最接近的现有技术的正交LDI格式小4-10倍。对于参考和输出图像256×256的分辨率,在奔腾赛扬500MHz计算机中(没有使用硬件辅助加速,以固定的尺度级),BVO绘制速度大约是20fps,这是也不使用硬件加速的现有技术方法的绘制速度的2-3倍。
权利要求
1.一种表示和绘制三维物体的方法,包括步骤将三维物体原始数据转换成二进制的八叉树(Binary Volumetric OctreeBVO)格式,其中颜色被赋予对应于物体表面的点的坐标的每个BVO顶点,所述颜色是坐标在一立方体内的物体表面点有色的平均值,该立方体代表对应于给定BVO顶点的三维图像元素即三维像素;和通过从根顶点到叶顶点分层遍历八叉树来绘制BVO,所述绘制包括获得对应于BVO叶顶点的三维像素的中心的局部三维坐标;将获得的三维坐标变换为该三维像素中心的二维坐标和投影的三维像素图像的大小信息;并为每个BVO叶顶点生成和显示覆盖投影的三维像素图像区域的相应的纵立长条,以及使用颜色信息,由多个显示的纵立长条可视化三维物体。
2.如权利要求1所述的方法,其中所述三维物体原始数据是一组景深图像,或多边形模型数据,或一组有颜色的点。
3.如权利要求1或2所述的方法,其中从离观察者最远的BVO顶点到更近的BVO三维像素顺序执行所述八叉树分层遍历。
4.如权利要求1至3之一所述的方法,其中在所述八叉树遍历以前,所述方法包括计算fT=(i,σi)=T2i-1σi其中T是坐标型变换的4×4矩阵,σi是任意四维向量,其元素是0或1,i是整数,取自从0到所分析的BVO的高度,和使用从三维坐标到二维坐标的分层变换中获得的结果,计算每个BVO顶点的FiFi=Σj=infT(i,σj)=fT(i,σi)=Fi+1=Fi(σi,Fi+1)]]>在遍历从BVO根顶点到叶顶点的整个路径后,对于由局部坐标(x,y,z)指定的每个BVO叶顶点,给出Tv=F1(σ1,F2(σ2..Fn(σn)..))其中σi由使用坐标的二进制记录的表示式确定v=xtzl(σxn...σx2σx1)(σyn...σy2σy1)(σzn...σz2σz1)(0...01)=Σi=1n2i-1σi]]>
5.一种三维物体表示和绘制装置,包括生成三维物体原始数据的三维物体原始数据生成装置;将三维物体原始数据转换成二进制的八叉树(BVO)格式的三维物体原始数据转换装置,所述三维物体原始数据转换装置与三维物体原始数据生成装置相连,其中颜色被赋予对应于物体点坐标的每个BVO顶点,所述颜色是坐标在一立方体内的物体点有色的平均值,该立方体代表对应于给定BVO顶点的三维图像元素即三维像素;和与所述三维物体原始数据转换装置相连的BVO绘制装置。
6.如权利要求5所述装置,其中所述三维物体原始数据生成装置是输出多个点的三维坐标的三维现实物体扫描仪。
7.如权利要求5所述装置,其中所述三维物体原始数据生成装置是三维物体多边形模型生成装置。
8.如权利要求5所述装置,其中所述三维物体原始数据生成装置是景深图像生成装置。
9.一种表示动态三维物体的方法,包括步骤将一系列三维物体中的每个三维物体原始数据转换成二进制的八叉树(BVO)格式,其中颜色被赋予对应于物体表面点坐标的每个BVO顶点,所述颜色是坐标在一立方体内物体表面点的有色的平均值,该立方体代表对应于给定BVO顶点的三维图像元素即三维像素,以便为一系列三维物体生成对应于动态三维物体的一系列BVO。
10.如权利要求9所述的方法,还包括将一系列BVO中每个BVO投影到对应于BVO根顶点的立方体表面上,以便为每个立方体表面获得对应于动态物体图像的视频流,并且生成八叉树字节流,在所述八叉树字节流中每个字节对应于八叉树顶点,并且在字节中每个比特分别指示所述八叉树顶点的子树的存在或不存在,其中6个视频流和八叉树字节流一起形成动态3D物体的表示。
11.如权利要求10所述的方法,还包括用MPEG视频压缩格式以压缩形式存储所述6个视频流,并且以熵压缩格式存储所述八叉树字节流。
12.一种可视化由如权利要求10或11所述方法表示的动态三维物体的方法,包括解压缩视频数据和投影6个参考图像流到BVO上,以确定每个BVO顶点的颜色,并投影有色的BVO以可视化动态三维物体。
13.一种表示动态三维物体的方法,包括步骤将一系列三维物体中的每个三维物体的原始数据转换成二进制的八叉树(BVO)格式,其中颜色被赋予对应于物体表面点坐标的每个BVO顶点,所述颜色是坐标在一立方体内的物体表面点有色的平均值,该立方体代表对应于给定BVO顶点的三维图像元素即三维像素,以便为该一系列三维物体生成对应于该动态三维物体的一系列BVO;投影一系列BVO中每个BVO到对应于BVO根顶点的立方体表面,以便为每个立方体表面获得对应于动态物体图像的视频流,并生成八叉树字节流,在所述八叉树字节流中的每个字节对应于八叉树顶点,并且字节中每个比特分别指示八叉树顶点的子树的存在或不存在,其中6个视频流和八叉树字节流一起形成动态三维物体的表示。
14.如权利要求13所述的方法,还包括用MPEG视频压缩格式以压缩形式存储所述6个视频流,并且以熵压缩格式存储八叉树字节流。
15.一种可视化由如权利要求13或14所述方法表示的动态三维物体的方法,包括解压缩视频数据和投影6个参考图像流到BVO上,以确定每个BVO顶点的颜色,并投影有色的BVO,以可视化动态3D物体。
全文摘要
提供一种使用二进制的八叉树,表示和绘制三维动态和静态物体的方法和装置。基于景深图像的三维物体表示,需要相对小的存储空间,并允许快速和高质量的绘制。将三维物体原始数据转换成二进制的八叉树(BVO)格式,其中颜色被赋予对应于物体表面点坐标的每个BVO顶点,所述颜色是坐标在一立方体内的物体表面点有色的平均值,该立方体代表三维图像元素即三维像素;通过从根顶点到叶顶点分层遍历八叉树来绘制BVO,以便获得对应于BVO叶顶点的三维像素的中心的局部三维坐标,以变换获得的三维坐标为三维像素中心的二维坐标和投影的三维像素图像的大小信息,并为每个BVO叶顶点生产和显示覆盖投影的三维像素图像区域的对应的纵立长条(splat),以及使用颜色信息,由多个显示的纵立长条可视化三维物体。
文档编号G06T15/20GK1395221SQ0212512
公开日2003年2月5日 申请日期2002年6月28日 优先权日2001年6月29日
发明者韩万镇, 亚历山大·O·泽科夫 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1