论文部分内容阅读
如何准确的合成透明物体在各种不同场景下的真实效果,是当今计算机图形学研究的一个热门领域。由于透明物体材质的特殊性,渲染合成透明物体在不同真实场景中的结果,相比一般不透明物体来说更为复杂,需要考虑和合成很多不同方面的效果,包括合成透明物体本身对背景的折射与反射效果,以及其对环境光折射与反射之后产生的带有聚光(caustic)的阴影效果和自身的高亮效果等等。在传统图形学领域,在基于模型的基础上,通常利用光线跟踪或者光子映射等方法来渲染最终结果。实际上这类方法有很大缺陷和局限性:首先它需要一个精确的物体模型和材质属性,传统的三维扫描技术仅能够获取物体的三维形状,并不能准确获得得到复杂的物体属性,包括高光,模糊以及透明物体的折射反射属性等等;其次由于制作工艺和材质属性的不同,光线在透明物体内部的传播与折射过程是非常复杂的,用现有算法并不能准确地模拟和计算,因此这样的渲染结果并不能令人满意,存在很大的误差;最后,由于需要精确的几何模型和材质信息,该算法并不适用于渲染现实生活中我们常见的透明物体,而只是使用一些已知模型通过修改材质属性来验证渲染算法和实现效果,所以并不能在实际中进行广泛应用。本文针对现有技术中存在的众多局限性进行研究,在基于图像遮片技术,渲染技术和重光照技术的基础上,提出了一种全新的透明物体合成算法来渲染透明物体在任意真实场景下的合成结果。主要工作包括:(1)基于算法设计思想,设计了整套基图片的采集流程与方法,并设计制造了一个精确控制的自动装置来实现整套流程,采集处理需要的整套基图片。(2)采用基于图像的环境遮片方法来合成透明物体的折射与反射效果。由于透明物体的模型很难获取,而且光线在透明物体内部的传播过程是非常复杂的,所以现有基于模型的渲染技术并不能很精确的模拟这类效果。针对这个问题,本文采用基于图像的环境遮片的技术,在辐射度空间提取与合成透明物体遮片数据,避开复杂困难的建模和渲染处理过程,合成非常接近真实的结果。(3)基于relighting的方法来合成物体在不同光照条件下的高光效果。透明物体的高光效果与很多因素有关,除了光源之外,还与物体模型,物体自身遮挡,光线折射等方面都有关系,由于渲染过程过于复杂,之前的研究和渲染结果大多都忽略了物体高光效果的合成计算。针对这个问题,本文通过提取基图片中物体在各个方向光源照射条件下的高光信息,用relighting的算法来计算新的环境光源条件下的高光结果,并进行合成。(4)基于阴影遮片的思想来合成真实带聚光的阴影效果。现有的渲染方法在已知精确的物体模型的基础上,通过模拟光路传播过程来渲染这类特殊的阴影效果,但由于实际光路传播的不确定性,结果并不精确。这里我们借鉴阴影遮片算法的思想,通过事先采集的一些特定光源条件下透明物体的阴影图片,通过颜色空间的转换准确提取对应的阴影遮片,最后根据真实目标场景的环境光照信息来合成透明物体在新场景下将产生的阴影。在我们的整套框架中,物体本身的遮片数据,高光及阴影遮片数据都准确的被提取出来作为中间结果,因此基于这套框架,我们可以对提取的这些中间数据进行直接编辑操作,可以非常容易的对算法进行扩展,实现很多特效效果,在这方面我们也进行了一定尝试。主要实现了以下特效:(1)我们直接对提取的环境遮片和阴影遮片进行编辑操作,计算折射率改变之后的透明物体的环境遮片,阴影遮片数据及高光数据并进行合成,实现了透明物体在真实场景中的渐入渐出效果。(2)通过分析阴影遮片数据,提取阴影内部的轮廓信息,在保证阴影内部结构和纹理不变的情况下对阴影进行插值,模拟实现阴影随光源位置和方向改变而改变的动态效果,以弥补离散采样过程中采样率不够高的问题。