基于图像的图形绘制技术
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于图像的图形绘制技术
浙江大学CAD & CG国家重点实验室鲍虎军彭群生目前,实时图形绘制算法主要采用实时消隐技术、场景简化技术和基于图像的图形绘制(Image-Based Rendering,IBR)技术。本文主要介绍IBR技术及其最新发展。
一、IBR技术的特点
传统图形绘制技术均是面向景物几何而设计的,因而绘制过程涉及到复杂的建模、消隐和光亮度计算。尽管通过可见性预计算技术及场景几何简化技术可大大减少需处理景物的面片数目,但对高度复杂的场景,现有的计算机硬件仍无法实时绘制简化后的场景几何。因而我们面临的一个重要问题是如何在具有普通计算能力的计算机上实现真实感图形的实时绘制。IBR技术就是为实现这一目标而设计的一种全新的图形绘制方式。该技术基于一些预先生成的图像(或环境映照)来生成不同视点的场景画面,与传统绘制技术相比,它有着鲜明的特点:
*图形绘制独立于场景复杂性,仅与所要生成画面的分辨率有关。
*预先存储的图像(或环境映照)既可以是计算机合成的,亦可以是实际拍摄的画面,而且两者可以混合使用。
*该绘制技术对计算资源的要求不高,因而可以在普通工作站和个人计算机上实现复杂场景的实时显示。每一帧场景画面都只描述了一给定视点沿一特定视线方向观察场景的结果,为摆脱单帧画面视域的局限性,我们可在一给定视点处拍摄或计算得到其沿所有方向的图像,并将它们拼接成一张全景图像。为使用户能在场景中漫游,我们需要建立场景在不同位置处的全景图。IBR技术是新兴的研究领域,它将改变人们对计算机图形学的传统认识。
二、IBR技术的现状及发展
IBR的最初发展可追溯到图形学中广为应用的纹理映射技术。传统的几何造型技术只能表示景物的宏观形状,无法有效地描述景物表面的微观细节,而恰恰是这些微观因素极大地影响着景物的视觉效果。根据光照明理论,景物表面的微观属性最终反映在景物表面各点处的双向反射率上。传统真实感图形绘制技术利用纹理图像来描述景物表面各点处的反射属性,从而模拟了景物表面的丰富的纹理细节。
环境映照技术继承了上述思想,它采用纹理图像来表示景物表面的镜面反射和规则透射效果。在早期的应用中,环境映照以景物中心为固定视点,观察整个场景,并将周围场景的图像记录在以该点为中心的环境映照球面或立方体表面上。因此,环境映照实际上以全景图像的方式提供了其中心视点处的场景描述。80年代初,这一技术在飞行模拟器的设计中得到了成功的应用,后来被广泛应用于游戏设计中。
但单一环境映照无法完全描述一个场景。一个自然的选择是在一些路径上选取一些采样点作为视点,预先生成存储该点处的全景图像。在漫游时,沿给定路径前进,并根据采样点处的全景图像生成画面。Miller等用此技术建立了一个具有多条固定路径的虚拟博物馆漫游系统。Apple公司的Quick Time VR系统摆脱了固定漫游路线的约束,用户可在环境中随意漫游。该系统的优点是能在中低档硬件平台上实现复杂场景的漫游,缺点是前后帧画面间有时会出现不连续现象,因而产生跳跃感。随着商用系统的推出,IBR技术的研究进入了一个高潮,在短短的几年间,涌现出了一大批高效的算法。
1. 图像投影变形技术
如前所述,纹理映射技术其实是一种典型的IBR技术,该技术以纹理图像作为输入,将它
映射到简单景物几何上,以近似描述表面上的纹理细节。用户可取不同的位置和角度来观察这些景物,在不同视点和视线方向下,景物表面的绘制过程实际上是纹理图像在取景变换后的简单景物几何上的重投影变形的过程。类似地,采用图像投影变形(Image Projective Warping)技术亦可将给定图像重投影变形到新的图像平面上来生成新的画面。根据投影方式,投影变形技术可以分为两类,它们构成了目前IBR算法的核心。(1) 无需深度或光流信息的投影变形技术这一技术将两幅取相同视点但不同视线方向的图像联系起来。当两幅图像部分重合时,利用这一技术就可将它们无缝地粘接成一幅更大的画面。这一技术的典型代表是图像马赛克算法。该算法首先由用户绕一固定点摇拍场景,得到一图像序列,其中前后两帧图像保持一定的重叠区域,然后利用这一技术将图像序列拼接起来,形成一幅全景图像(环境映照)。对全景图像重采样就可得到新的画面。事实上,具有同一视点、但视线方向不同的两幅部分重叠画面间的投影变形函数可简单地表示成一个3×3矩阵。在计算机视觉中,有多种优化迭代方法来决定该矩阵。但当两幅图像无重叠部分时,我们不能直接确定所需的投影变换,此时,需找出一些中间相互重叠的画面序列将两个图像连结起来,通过复合两个重叠画面间的投影变换即可得到所需的投影变换。这一技术的发展,有力地促进了Quick Time VR类型系统的实用化,该技术已成为目前应用最为成功的IBR算法。
这类投影变形技术存在很大的局限性,即只适用于摄像机绕全景图像中心旋转时中间画面的生成,而不适用于摄像机位置移动的情形。在摄像机做前后移动时,由于景物前后遮挡关系的改变,所得图像并不完全是原存储图像的重新投影和简单变形,其画面内容在局部区域中发生变化。解决这一问题的有效方法是在原给定的图像序列中引入可见点的深度信息,以提供原始场景的部分三维信息。
(2) 基于深度或光流信息的投影变形技术
其基本思想是利用给定画面上可见点的深度值,局部重建场景的三维几何,并基于这些三维信息对可见点直接进行投影变换,或建立该画面与其相邻画面象素的对应关系。对于前者,由单幅画面即可生成相邻视点处新的图像,后者则需给定多幅相邻的深度图像。由于这一技术不再要求新画面的视点与原图像的视点位置重合,从而摆脱了第一类投影变形技术的严格限制,该技术可在不同视点的图像序列之间生成连续过渡的中间画面。因而,若在预处理中已生成好场景中各采样点处的深度全景图像,则可实现对场景的连续漫游,此时,前后帧画面之间不再具有跳跃感。Eric Chen的视图插值算法是第一个在给定两帧深度图像之间实现画面自然过渡的IBR算法。该算法采用线性插值技术模拟了各相邻采样点间场景透视变换的变化。之后,这一算法被McMillan等进一步扩展,成为一个更具一般性的全景函数造型技术。基于可见点深度信息投影变形技术的缺点是在所生成的中间画面上可能存在空洞。这是由于所给定的图像无法提供中间画面空洞处可见点的信息而造成的。空洞的填补是一个非常复杂、耗时的过程,填充效率将严重影响各中间画面生成的实时性和质量。尽管如此,深度图像的重投影变形技术可在一定精度值内将原给定图像上的相邻象素组合成子块图像,以一个整体进行投影变换,因而算法的计算效率非常高,能在低档的硬件平台上实现给定图像间的实时过渡。考察中间过渡画面上空洞的成因,可发现空洞大致分为两类,即由于可见景物在屏幕上的投影区域扩张而引起的空洞;由于场景中景物的可见性发生变化而引起的空洞。对第一类空洞,可通过插值相邻象素颜色或插值相邻象素在源图像中的相应偏移向量来近似填补空洞;精确地填补第二类空洞涉及对场景的重新采样,当然,我们亦可采用多个源图像来生成同一视点和视线方向的多幅画面,利用这些画面空洞的互补性,经合成得到最终画面。为有效地减少中间过渡画面上的空洞数目,McMillan等许多研究者近年来提出了逆向投影变形技术,以解决第一类空洞。