处理反走样常用的四种技术

本文整理自西安交通大学软件学院祝继华老师的计算机图形学课件,请勿转载


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

image-20220213220906343

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

  • 走样:用离散量表示连续量引起的失真现象。

    • 阶梯状边界;

      image-20220213220943645

    • 图形细节失真;

      image-20220213220948513

    • 狭小图形遗失(左):动画序列中时隐时现,产生闪烁(右)。

image-20220213221023952

反走样

在图形显示过程中,用于减少或消除走样现象的方法或技术

反走样几种方法:

  • 提高分辨率方法;
  • 非加权区域采样;
  • 加权区域采样;
  • 半色调技术。

提高分辨率

把显示器分辨率(水平、垂直)提高一倍

image-20220213221122966

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

评价:方法简单,但代价非常大,不经济

区域采样

  • 直线段对一个像素亮度的贡献:
    • 与两者相交区域的面积成正比;
    • 和像素中心点距直线段的距离成反比。
  • 当直线段和某个像素不相交时,它对该像素的亮度无影响;
  • 相同面积的相交区域对像素的亮度贡献相同,而与这个相交区域落在像素内的位置无关。
非加权区域采样

假设一条直线段的斜率为m(0≤m≤1),且所画直线为一个象素单位,则直线段与象素相交有五种情况。

image-20220213221256319

面积计算:

  • 情况(1)(5)阴影面积为: D 2 / 2 m D^2/2m D2/2m
  • 情况(2)(4)阴影面积为: D − m / 2 D-m/2 Dm/2
  • 情况(3)阴影面积为: 1 − [ ( 1 − D ) 2 + E 2 ] / 2 m , E = D + m − s q r t ( 1 + m 2 ) 1-[(1-D)^2+E^2]/2m,E=D+m-sqrt(1+m^2) 1[(1D)2+E2]/2m,E=D+msqrt(1+m2)

像素实际显示的灰度值=所得面积(0-1间)*该像素的最大灰度值

为了简化计算可以采用离散的方法

image-20220213221444992

  • 首先将屏幕象素均分成n个子象素;
  • 然后计算中心点落在直线段内的子象素的个数k;
  • 将屏幕该象素的亮度置为相交区域面积的近似值可k/n。
加权区域采样

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

可采用离散计算方法

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

对n=9的情况:

image-20220213221559394

对n=25的情况:

image-20220213221606215

例子

image-20220213221632041

半色调技术

对于给定的分辨率,通过将几个像素组合成一个单元来获得多级灰度

例:在一个显示器中将四个像素组成一个单元,可产生5种光强。

image-20220213221723509

评价

  • 对于两级灰度显示器可能构成的灰度数等于单元中像素个数加1;
  • 若有m级灰度, n × n n\times n n×n个像素组成一个单元,则灰度级别数为 n × n × ( m − 1 ) + 1 n\times n\times (m-1)+1 n×n×(m1)+1
  • 单元越大,灰度级别越高;
  • 它是以牺牲空间分辨率为代价的。

•例:灰度级别=4,每个单元=2*2

image-20220213221849113

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hydrion-Qlz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值