面向延迟着色的统一反走样方法

文档序号:9235997阅读:604来源:国知局
面向延迟着色的统一反走样方法
【技术领域】
[0001] 本发明设及计算机图形学反走样领域,具体设及一种面向延迟着色的统一反走样 方法。
【背景技术】
[0002] 反走样是计算机图形学中的核屯、问题之一,广泛应用于=维计算机游戏、计算机 动画、虚拟现实、影视后期制作等诸多应用中。它能有效地消除或减少图像中的走样瑕疵, 从而提高图像视觉质量。传统的超采样反走样算法(SSAA)通常对屏幕上的每个像素计算 多个采样点的着色结果,然后计算它们的加权平均。该方法反走样效果好但计算代价较高。 多重采样反走样算法(MSAA)有效减少了像素着色程序的执行次数,W其高效性在很长时 间内成为了最为流行的反走样算法。然而,MSAA和近年来实时应用中主流的延迟着色绘制 技术并不兼容。延迟着色是一种把=维绘制对象转化到二维图像空间进行处理的技术,在 处理复杂光照条件和多光源的绘制应用中具有强大的性能优势。但由于它的实际着色操作 对象是二维的几何缓存佑-buffer),MSAA会由于场景几何信息的丢失而退化为SSAA,从而 丧失其优势。
[0003] 近年来,后期处理的反走样算法因其与延迟着色技术的良好兼容性,越来越多地 成为研究和应用的热点。该类方法的核屯、思想是把场景信息W二维纹理的形式存储,并借 助该些信息进行场景的反走样重建。该类算法主要可W分为两类:基于图像分析的反走样 算法(ReshetovA.Morphologicalantialiasing[C].ProceedingsoftheConference onHi曲PerformanceGraphics2009.New化rk;ACMPress,2009:109-116)和基于几何 辅助分析的反走样算法(QiajdasMG,McGuireM,LuebkeD.Subpixelreconstruction antialiasingfordeferredshading[C].SymposiumonInteractive3DGraphicsand Games.NewYork;ACMPress,2011 ;15-22)。前者大多使用启发式的形态学分析方法来确定 图像边界的形状和长度,具有简单高效的优势,但会因为滤波的方向受边界方向模板的限 制而导致边界估计得不平滑。后者使用几何信息更加准确地重构场景的几何边界,缺点是 需要存储和访问额外的G-buffer,并且无法有效地识别和处理颜色纹理的走样。
[0004] 两类算法分别在处理几何边界走样和颜色纹理走样上具有各自的优势,但是如何 有机地把两者结合使用W处理各种走样现象,存在如下挑战;1)高效地组织两种算法所需 的G-buffer,使得存储开销尽可能小;2)由于像素级别的图像分析反走样方法和子像素级 别的几何辅助反走样方法的方法原理和尺度不一致,可能导致在动态场景中两者交界处会 产生像素之间过渡不平滑的问题;3)基于图像分析的方法可能会在动态场景中存在像素 闪烁的现象,即时间域上的走样。

【发明内容】

[0005] 本发明针对现有反走样技术不足,提供一种能够有效地结合基于图像分析的反走 样和基于几何辅助分析的反走样两类算法优势,且减轻两类算法结合后导致的像素之间过 渡不平滑、动态场景中存在像素闪烁的现象出现,同时还能确保G-buffer的存储开销小的 面向延迟着色的统一反走样方法。
[0006] 为解决上述技术问题,本发明采用的技术方案为:
[0007] 一种面向延迟着色的统一反走样方法,包括:
[000引 (1)W屏幕分辨率绘制场景,并把屏幕像素的颜色、深度、面片序号W及S角形几 何信息存入G-buffer;
[0009] (2)对屏幕像素按几何边界和非几何边界进行分类;
[0010] (3)使用基于=角形的反走样滤波对几何边界像素进行反走样处理;使用基于子 像素形态学分析的反走样滤波对非几何边界像素进行反走样处理;
[0011] (4)对步骤(3)反走样处理后的结果使用重投影算法对所有屏幕像素进行时间域 上的滤波。
[0012] 所述=角形几何信息包括覆盖=角形与对应屏幕像素附近的子像素之间的位置 关系。且像素颜色和深度、面片序号可存储为较低精度的格式。
[001引本发明所述的G-buffer信息存储如下;
[0014] 对于每个屏幕像素,记录覆盖其像素中屯、的离视点最近的=角形(简称覆盖=角 形)与像素附近的子像素之间的位置关系。本发明方法没有存储覆盖=角形的几何,而是 利用高效地shader计算,存储S角形覆盖信息,进而W很小的时间代价(>〇. 1ms),降低了 G-buffer的存储空间代价和访存代价。
[0015]G-buffer所存储的数据中,像素中屯、的颜色和深度、覆盖S角形及其面片序号、深 度在覆盖S角形上的偏导等信息都可W从GPU绘制流水线中获取。而步骤(1)中提到的深 度、法向等几何信息仅仅用于步骤(3)中几何边界提取和采样信息的筛选,并不用于精确 地计算,因此可W存储为较低精度的格式,并不影响算法的结果。而历史像素颜色应用于步 骤(4)中重投影的时间域反走样算法时,存储前一帖的像素颜色,W便对当前帖进行颜色 平滑。
[0016] 本发明所述的屏幕像素分类如下:
[0017] 几何边界像素通常出现在几何不连续的区域,在多边形网格构成的场景中表现 为;轮廓线边界、网格边缘边界和折皱边界等形式,为了对屏幕像素按几何边界和非几何边 界进行分类,作为优选,步骤(2)中分类时,是根据相邻屏幕像素之间的深度和法向的差异 来进行检测的。
[0018] 作为优选,相邻屏幕像素之间的深度和法向的差异检测方法为:
[0019] 检测当前屏幕像素与4个相邻屏幕像素的深度和法向的差异,当差异大于用户设 定的阔值时,该屏幕像素为几何边界像素;否则,该屏幕像素为非几何边界像素。判断公式 如下:
[0020] IZ-ZneighborI I>K
[002U 1-| In ? rineighbJ I > tn
[0022] 其中,z表示屏幕像素的深度;
[002引Znei邮。r表示其相邻像素的深度;
[0024] n表示屏幕像素的法向;
[002引rinei邮。r表示其相邻像素的法向。
[0026] 公式中t,取值取决于场景模型的尺度和精细程度,t。的取值决定了场景中折皱边 界提取的完整程度。
[0027] 为了对几何边界像素进行反走样处理,作为优选,步骤(3)中基于=角形的反走 样滤波方法为:
[002引针对目标子像素,将其所在的屏幕像素W及屏幕像素的八连通像素区域作为9个 颜色采样点,从中选取和目标子像素具有几何相关性的屏幕像素,根据选取出的屏幕像素 的颜色信息进行插值计算,得到目标子像素的颜色;
[0029] 针对每个待处理的屏幕像素,将其包含的所有子像素颜色进行混合得到该屏幕像 素反走样的像素颜色。
[0030] 选取和目标子像素具有几何相关性的屏幕像素的步骤为:读取9个颜色采样点对 应的覆盖=角形,根据各覆盖=角形与目标子像素的关系,W及与目标子像素的颜色差异 对颜色采样点进行过滤;
[0031] 然后比较保留颜色采样点对应的面片序号,并验证保留颜色采样点是否对应同一 覆盖S角形。
[0032] 为了对非几何边界像素进行反走样处理,作为优选,步骤(3)中基于子像素形态 学分析的反走样滤波方法如下:
[0033] 针对待处理屏幕像素中的目标子像素,沿上、下、左、右四个方向检测像素颜色,直 到找到与当前像素颜色不同的像素或达到最大捜索距离为止;
[0034] 根据四个方向上的捜索距离得到四个方向上的对应的权值使用该权值混合 目标子像素上、下、左、右四个相邻像素的颜色值,作为目标子像素反走样颜色的计算值;
[0035] 当一个屏幕像素内所有子像素的颜色值确定后,取平均值作为该屏幕像素最终的 反走样颜色结果。
[0036] 作为优选,在计算捜索距离时,根据捜索结果得到四个方向上像素级别的捜索长 度后,使用=角形覆盖信息判断目标子像素和其所在像素的中屯、是否对应同一覆盖=角 形;
[0037] 若目标子像素和其所在像素的中屯、对应同一覆盖=角形,根据目标子像素相对于 像素中屯、
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1