论文部分内容阅读
随着多媒体技术和CG技术的发展,渲染引擎在电影动画、模拟仿真、游戏特效等方面具有越来越广泛的应用。同时,渲染的计算量也日益增加,单个计算机难以满足其巨大的计算量,因此集群渲染应运而生。集群渲染平台主要采用RenderMan、 mental ray、 Vray等渲染引擎提供渲染服务,这些渲染软件多使用Reyes (Renders Everything You Ever Saw)渲染算法,可实现快速高质量渲染。尽管Reyes渲染速度较其他算法渲染速度快,但是对于大规模真实感渲染任务,需要集群渲染来实现,渲染任务的并行化不可或缺,因此,渲染时间预估则是渲染任务的分解与并行调度中关键的一步,此外,用户的渲染费用预估同样需要渲染任务的时间预估提供依据。Reyes渲染架构下的时间预估是根据大量的历史数据预测新场景需要花费的渲染时间,这方面的研究工作较少。针对当前集群渲染任务高效并行的需求,本文以RenderMan接口为标准,对Reyes渲染架构中对渲染时间产生影响的各种因素进行深入分析和研究,结合机器学习算法,提出一种集群渲染时间预估算法。根据Reyes渲染流程以及渲染标准,提取出PixelSample、像素数量、灯光数量、阴影图数量、材质数量、细分面片数量以及线程数量七大要素特征,并应用于AdaBoost.MH分类算法,从而提出基于AdaBoost.MH算法的Reyes渲染架构时间预估算法。进一步,实验证明该算法的有效性,训练集和测试集的准确率分别达到79%和78%,得到比较好的结果。本文的主要贡献包括:1.详细分析了Reyes渲染架构的工作流程,并找到其中对渲染时间产生影响的各种因素,通过实验提取出较为全面准确的特征向量,为使用机器学习方法作好了准备。2.时间预估虽然从一般意义上为回归问题,即输出为连续值,但是时间的预估不一定要求十分精确,只要在一定误差内,就可以接受。本文将时间预估问题转化为分类问题,应用到AdaBoost.MH算法,得到的是时间预估范围,从而为AdaBoost.MH分类算法在时间预估方面找到了新的应用。3.提出Reyes渲染架构下的时间预估算法,为集群渲染的并行调度奠定了基础,同时为用户费用预估提供了依据。在上述研究的基础上,本文还需要在材质类别特征提取等方面进一步开展工作。