第四章 混淆与反混淆方法 ( 走样与反走样 )

第四章 混淆与反混淆方法

  • 掌握在光栅图形绘制过程中常见的三种混淆现象

    • 图形边界呈阶梯状
    • 图形细节失真
    • 狭小图形遗失
  • 掌握常用的三种反混淆方法

    • 提高分辨率方法
    • 非加权区域采样方法
    • 加权区域采样方法
混淆现象

在光栅显示器上显示图形时,直线段或图形边界或多或少会呈锯齿状

原因是图形信号是连续的,而在光栅显示系统中,用来表示图形的是一个个离散的象素

这种用离散量表示连续量引起的失真现象称之为混淆 (或走样 aliasing)

用于减少或消除这种效果的技术称为反混淆 (反走样 antialiasing)

  • 光栅图形的混淆现象

    • 阶梯状边界

      在这里插入图片描述

    • 图形细节失真

      细长的矩形显示成为加宽的矩形,细节丢失

    • 狭小图形遗失

      动画序列中时隐时现,产生闪烁

    在这里插入图片描述

  • 常用的反走样方法主要有

    • 提高分辨率
    • 区域采样
    • 加权区域采样
反混淆方法
提高分辨率

假如把显示器分辨率(水平、垂直)提高一倍,直线经过两倍的象素,线段上的阶梯锯齿也增加一倍,但同时每个阶梯的宽度也减小了一倍,所以显示出的直线段看起来就平直光滑了一些。

在这里插入图片描述

帧缓存容量则增加到原来的4倍,而扫描转换同样大小的图元却要花4倍时间。

  • 方法简单,但代价非常大,不经济
非加权区域采样
  1. 将直线段看作具有一定宽度的狭长矩形
  2. 当直线段与某象素有交时,求出两者相交区域的面积
  3. 根据相交区域的面积,确定该象素的亮度值
  • 计算量大

多重采样反走样 ( Multi-Sample Anti-Aliasing, MSAA )

  1. 将屏幕象素分割成n个更小的子象素
  2. 计算中心落在直线段内的子象素的个数,记为 k
  3. k/n 为线段与象素相交区域面积的近似值
  • 非加权区域采样方法缺点
    • 象素的亮度与相交区域的面积成正比,而与相交区域落在象素内的位置无关,这仍然会导致锯齿效应
    • 直线条上沿理想直线方向的相邻两个象素有时会有较大的灰度差
加权区域采样

改进非加权区域采样方法的第3条性质,相交区域对象素亮度的贡献依赖于该区域与象素中心的距离

权函数 w(x,y)

  • 反应了微面积元 dA 对整个象素亮度的贡献大小
  • 一般与微元面积到像素中心的距离 d 成反比
  • 权函数取恒等函数时, 加权区域采样退化为非加权区域采样

计算步骤:

  1. 求直线段与象素的相交区域

  2. 计算在这里插入图片描述

  3. 用结果乘象素的最大灰度值,即该象素的显示灰度。

  • 计算量大

加权区域采样方法的离散计算方法

  1. 将象素均匀分割成n个子象素, 则每个象素的面积为1/n, 计算每个子象素对原象素的贡献,并保存在一张二维的加权表中
  2. 求出所有中心落于直线段内的子象素
  3. 计算所有这些子象素对原象素亮度贡献之和的值, 该值乘以象素的最大灰度值作为该象素的显示灰度值。

( w 1   w 2   w 3 w 4   w 5   w 6 w 7   w 8   w 9 ) = 1 16 ( 1   2   1 2   4   2 1   2   1 ) \begin{pmatrix} w_1 \ w_2 \ w_3 \\ w_4 \ w_5 \ w_6 \\ w_7 \ w_8 \ w_9 \end{pmatrix}=\frac {1} {16} \begin{pmatrix} 1 \ 2 \ 1 \\ 2 \ 4 \ 2 \\ 1 \ 2 \ 1 \end{pmatrix} w1 w2 w3w4 w5 w6w7 w8 w9 =161 1 2 12 4 21 2 1

其他反走样算法

这里只做简单介绍, 想要详细了解请自行搜索相关信息

时域反走样 (TAA):通过使用多个帧的信息来平滑边缘,结合当前帧与过去帧的数据,利用运动矢量来减少锯齿现象,适合动态场景,但可能产生模糊效果

快速近似反走样 (FXAA):是一种后处理技术,通过分析图像的边缘和颜色差异来平滑锯齿,快速且性能消耗低,但可能在某些情况下产生色彩失真

深度学习超采样 (DLSS):使用神经网络模型预测和重建高分辨率图像,通过较低分辨率渲染提升画面质量,能显著提高性能,尤其在现代游戏中得到广泛应用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值