反走样技术Antialiasing
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5.1直线段的过采样技术
4 1 1 2 3
2 图5.3
3
4
5.2 加权像素掩模
对于这种方法,在计算某像素总的颜色之时,可以将 背景颜色考虑进去,例如一个像素的5个子像素被确 定在线宽度边界内,其余4个落在背景内,该像素的 颜色值可以用线段颜色和背景颜色加权计算得到。要 显示的像素颜色值为: pixelcolor=(5*red+4*blue)/9
5.3直线段的区域采样
覆盖区域的大小可以利用5.1节介绍的将每个像素分 割为更次层次的字像素,用直线宽度范围内覆盖的子 像素的多少来表示。 如图5.3中(1,1)像素被覆盖9个像素,其颜色 值为直线颜色值,(3,2)中被覆盖7个像素,其颜 色值为直线颜色的7/9。
5.4 滤波技术
类似于前面介绍的掩模技术,在区域采样中,可以采 用一个滤波函数来计算不同覆盖区域对最终像素颜色 贡献大小,5.3介绍的只是利用覆盖像素的面积大小 比例来确定该像素的颜色,这实际上是假设一个像素 的各个位置对像素的贡献是相同的,这相当于一个方 形滤波器(图5.5 a)。可以采用其他滤波器, 如图5.5所示的锥形滤波和高斯滤波,最终的像素颜 色值是滤波函数对覆盖区域的二重积分。在具体实施 中,为减少计算量,一般不直接计算积分值,而是对 不同位置区域建建立一个查找表,
反走样
分辨率屏幕上显示其结果的技术称为过取样 (supersampling)也叫后滤波(postfiltering)。 所显示的像素位置为覆盖更细屏幕网格区域中的点, 每个像素的亮度由更细网格中的这些点来决定的。用 过取样方法,可从多个点对一个像素总体亮度的贡献 来得到亮度信息。 另一种反走样技术是通过计算待显示每个像素被目标 物体覆盖区域的多少来确定像素亮度。这种方法称为 区域取样(或前滤波)。像素覆盖区域通过确定对象边 界与单个像素边界的相交处而得到
5.4 滤波技术
b a 图5.5 a:方形滤波 b:锥形滤波 c: 高斯滤波
C
5.5 区域边界的反走样
区域边界的反走样和可以直接应用前面介绍的各种反 走样技术,本部分内容课后自学
作 业
Discribe either the advantages or defects of each antialiasing technologies mentioned in this lecture.
4-31. Implement an antialiasing procedure by extending B来自百度文库esenham's line algorithm to adjust pixel intensities in the vicinity of a line path.
Computer graphics
C version. Second Edition
第五讲: 反走样技术
Antialiasing
山东师范大学传播学院 李大锦
2008.9.28
反走样
前面介绍的通过光栅化算法生成的基本图元在视觉上 会产生锯齿状,这是因为我们在算法中将图元上的坐 标离散化为整数的像素位置,产生视觉上的失真是由 地低频率的采样(欠采样)造成的。这种失真叫走样, 通过反走样的方法可以有效的减少欠采样引起的失真。 图5.1显示了低频采样引起的信息丢失,对于这种 周期性信息,为了减少信息的丢失,采样频率一般要 大于要处理的对象的最高频率的两倍,这个采样频率 成为Nyquist采样频率fs 。 fs=2fmax
图5.4
5.3直线段的区域采样
对于直线段的区域采样,我们将某一像素的颜色值设 置为与直线宽度范围内覆盖该像素区域的大小成正比。 如右图所示:在 (2,2)处直线覆 盖该像素区域的大约 70%则它的颜色值是 直线颜色的70%,在 (3,3)处覆盖该像 素区域大约50%则颜 色为直线颜色的50%
1 2 3 4
5.1直线段的过采样技术
直线段的过采样,一种方法将每个屏幕像素看成是由 更细层次的字像素构成,待显示的像素颜色亮度和直 线通过该像素时覆盖更细层次的子像素的格数成正比, (如图所示)子像素的选择可以由前面介绍的 bresenham或中点法计算得到
图5.2
5.1直线段的过采样技术
前面介绍的过采样方法,得到的像素的颜色亮度值只 有3个级别,因为线段穿过每一个待显示像素时,最 多穿过3个子像素,另外一种过采样方法是将线段看 作是由一个像素宽度的多变形,计算每一个待显示像 素的亮度时,检查多边形覆盖该像区域中子像素的个 数,最终的像素亮度和多边形在该像素区域中覆盖的 字像素个数成正比。这样每个像素就有9种不同的亮 度。用多边形表示带宽度的直线,可以在直线两侧放 置两条平行于直线的直线来表示多边形的边界。如图 5.3。 这种方法的李一个优点是总的线亮度分布在更 多的像素上。一个像素的视觉效果可以来自其相邻像 素。
加权像素掩模
在使用更细层次的字像素进行最终像素颜色计算时, 在接近像素中心位置的子像素,我们给他赋予更大的 权值,在远离中心位置的地方赋予较小的权值。
5.2 加权像素掩模
右图是一个将像素分为3*3字像素 的掩模,每个掩模值标示了不同位 置对最终颜色值的贡献大小,当直 线通过该像素时,该像素的颜色值 等于直线所穿过的每个子像素的掩 模值乘以直线颜色值的和再除以16,
反走样
图5.1 上:对周期性对象低频率采样 下:低频率采样后恢复的图形造成了信息的
丢失
反走样
或者说采样的间隔应不大于周期对象的最小周期的 1/2。 在光栅系统中解决走样问题的最直接的方法是增加分 辨率,这样对可以得到更多的采样点。但是屏幕的分 辨率并不能无限放大,即使相当高的分辨率也仍然有 锯齿存在,为什么? 我们可以利用多种颜色亮度来对图形对象进行反走样 操作。最直接的反走样方法是把屏幕看成比实际所具 有的更细的网格来增加取样数目,在这种更细网格使 用取样点来确定每个屏幕像素的亮度等级。这种在高 分辨率下对对象取样并在较高