反走样技术的研究
反走样技术的研究
反走样技术的研究摘要反走样技术是提高光栅图形显示质量的重要技术之一。
研究如何消除或减缓走样现象,给人视觉上产生更舒适光滑的图形,在图形界面已成为人机交互主流方式的今天,具有一定的应用价值。
在查阅了大量文献资料的基础上,本文从现有的反走样技术(如普通区域取样、普通过取样、加权过取样)入手,对反走样的理论基础和实现技术进行了分析研究。
普通区域取样是将直线看成具有一定宽度的狭小矩形,当直线与像素相交时,求出两者相交区域的面积,然后根据相交区域的面积来确定像素的亮度值,从而达到反走样效果。
而过取样是在提高分辨率下用点取样方法计算,然后对几个像素的属性进行平均得到较低分辨率下的像素属性。
由于需要对每个像素进行处理,因此速度比区域取样明显慢了很多。
普通区域取样和过取样都是在整数坐标上进行的,而WU像素反走样算法采用了非整数坐标改进,视觉效果比前两者更好。
本文的研究重点在直线段反走样、曲线反走样和图像处理速度方面进行了研究和改进。
为了提高过取样的速度,充分利用直线段像素可能存在的多段相似性,算法对其中的一段进行反走样处理后,其余各段只要简单地复制即可,比普通过取样算法明显具有优势,速度提高了很多,也为并行处理提供了可能。
在现有的反走样文献中,对曲线反走样提及较少,本文对圆的反走样算法及实现进行了分析探讨,充分利用圆的八对称性,以加权过取样算法为基础在画圆的同时进行反走样。
第三方面的工作是如何提高编程实现速度,常用的一种技术是利用Pixels[]方法,它通过对像素点逐个进行处理,分别对红色、绿色、蓝色分量进行处理来实现图形的反走样。
这个方法虽然简单、直观,但处理速度缓慢。
通过对Delphi图像处理机制的分析及实验,提出了利用Scnaline方法的改进方案,使处理速度提高到Pixels[]方法的50倍左右。
关键词:反走样,区域取样,过取样本文由天空乐园大学生旅游网整理分享一、研究背景光栅图形显示器是目前使用最广泛的图形显示器,因为它具有以下优点:光栅扫描显示器具有固定的刷新顺序,扫描从屏幕的左上角开始,从左到右,从上到下的顺序进行刷新,从而刷新控制部件得以简化,节约了成本。
反走样的概念
反走样的概念反走样是一种计算机图形学中的技术,是指在图像渲染过程中,为了减少图像中出现的锯齿状边缘,通过一定的算法将图像中出现的锯齿状边缘平滑化的过程。
锯齿状边缘的出现是由于基于像素渲染的方式是将每个像素点单独渲染的结果。
因此,当图像中的线条或者边缘不是水平或者垂直线条时,会出现一种“台阶状”的锯齿状边缘。
这些锯齿状边缘会影响到图像的细节和真实感,因此反走样技术的应用成为了图像渲染领域中的一项重要技术。
目前,反走样技术被广泛应用于电影、游戏等数字娱乐产业以及虚拟现实和增强现实应用中。
反走样技术的应用可以提高图像的质量,从而获得更好的视觉效果和真实感。
反走样技术的实现可以采用多种算法,包括简单线性插值、多重采样、超采样、抗锯齿过滤等。
以下分别介绍这些算法的原理和实现方式。
1. 简单线性插值算法简单线性插值算法是最简单的反走样算法之一。
它的原理是根据图像中相邻像素值的差异来计算处于它们之间的像素的值。
这个算法可以用下面的公式来表示:F(x,y) = A*(1-α)*(1-β) + B*α*(1-β) + C*(β)*(1-α) + D*α*β其中A、B、C、D 是相邻的四个像素,(α,β) 是当前像素相对于A、B、C、D 的位置。
由于相邻的像素值会根据位置进行线性插值,因此可以有效减少锯齿状边缘的出现,提高图像的平滑度。
但是,由于该算法只依赖于相邻像素值之间的插值,因此容易出现过渡不自然等问题。
2. 多重采样算法多重采样算法是一种常用的反走样算法。
该算法的原理是对每个像素进行多次采样,然后对采样的结果进行平均,从而得到更平滑的图像。
多重采样算法可以使用网格覆盖技术或随机采样技术来实现。
网格覆盖技术是将图像分成若干个网格,对每个网格进行多次采样,从而得到更好的像素值。
随机采样技术是随机在像素周围选择多个采样点,然后对采样点的值进行平均,从而得到更平滑的图像。
3. 超采样算法超采样算法是一种基于增加像素采样率的反走样算法。
基于反走样算法的地图可视化研究
wu算法是 目前在计算机中常用的反走样算法 。
P个像素上分为 W个片段和终点的像素 ,则 :
地 图可视化显示 的图形 中,主要存在折线 、接 口部 位和曲线三种可视化显示 的图形走样现象 比较严重 。
一
,.
0
k(xo+jp)+b-Yo lc ̄o+b-Yo+kjp 后
—
—
:——Biblioteka xl 一 ( 0+ip)一Xo
ip
(1)
2 基于不同的图形反走样处理和算法模型
+
(2)
2.1 折线边缘反走样处理和算法模型 通常有两种折线边缘的走样 ,一种是单 向素折线
的走样 ,另一种为带宽度折线的走样。
P= fl— o
q:Yn—Yo
(3)
通过上述转换 ,可以使每一个片段的斜率都相等 ,
和 Y转换为第①种情况 。
提 高可 视 图的显 示效 果 。
设 Y=F(X),两点 为 (xO,Y0),(Xj,Yj),其 中 X0<
对于像素的赋值 ,可以把长轴作为横 向,在 x轴的
xj,YO<Yj,通过计算得 出,直接 的斜率 = ,其中 ,0<
UA
dY<dX,假设 in为最大公约数 ,则 = =里 = ,
解 两条 直线 的二元 二次方 程组 得 出 :X=Xo Y=Y。
度 比例 ;xi一横 坐标 ;Yi一 纵 坐标 。
然后通过像素 中心 的距离分配交点坐标 ,改善显
表 1 单位 片 断折 线 亮 度 初 始赋 值
Yn Yg
T( l1l W
W
Til W T( -2)l W
Tt 1) W
对 于两 条直 线接 口部位 存 在亮 度 缺失 现 象 的处 理
反走样技术及其应用
学 术 论 坛
反走样 技术及其应用
袁 芬 (浙江长征职业技术学院 计算机学院)
摘 要: 反走样技术是提高光栅图形显示质量的重要技术之一。研究如何消除或减缓走样现象, 给人视觉上产生更舒适光滑的图形, 在图形界面已成为人机交互主流方式的今天, 具有一定的应用价值。在查阅了 大量文献资料的基础上, 论文从现有的反走样技术 (如 普通区域取样、普通过取样、加权过取样) 人手,对反走样的理论基础和实现技术进行了分析研究,本文重点对直线段反走样进行了
研究和改进 。 关键词: 反走样
区域取样 中图分类号:TN919.号: 1672一 3791(2007)05(a卜0208一 02
完全的排列位置。 例如, 在图3 . 1 的示例中,直线段被划 类: 分为1 1 : (0 , ) 一 (4 ,3 ) , 2 : (5 , 0 1 ( 1 ) 0 (k ( 1 . 4) 一(9, B : (10, 一 (14, 三个 7), 8) 11) ( 2 ) 1 (k ( 。 片段及右端点 (巧, )。 2 1 ( 3 ) 一 ( k (一1 。 设计思想2 、若反走样直线段1扫描转 ( 4 ) 一1 (k (0 ; 换生成的像素序列为1(范, ) } 0, 2, i = y 1 1, …, (5)k = 0 ,Ik } 1 , } 。 = }k = 则该序列的y 坐标值关于线段1的中点对 根据数字图形的特点,对第(5 类直线不 n }, ) 即yn一 1=抓一 yi+yo(1 1, …, 2」 =0, 2, In/ )。 必反走样扫描转换就可简单地生成直线。而 称, 证明、 因为y = kx + b ,注意到x 从x o 对第(2),(3) ,(4) 类直线, 只要在反走样扫 描转换时通过简单地交换x 和y , 或改变其增 开始以正单位步长取样,得 量的符号就可变换到第 ( 1 类的反走样直线。 ) 币= 凡 + 1 , 共= 权 +b = k x + )十 二 十 ( n i b y k o i 设x o , , n , n 为整数, yo x y 不妨设 i 0 ( = ,1,2,一, 则 ) n o n yo x (x , (邓 , 对于以 (xo, 和 (x , yo) n n y ) 为端点的直线段1, 记dy=y 一y , = n ’ o d x 凡 =从、 b= k 凡一 +b二 +b一 * 十 ( 0 从 翻 xn一 则 率k一 , 为 k ( , = 凡一 八一 o xo, 斜 会 因 。( 0 七= 片+y 所以0 (dy (dx 。 。记m 为dy , 的最大公 1.3 算法的实现 dx 对于水平线、垂直线、4 5 线可直接反 约数, 即m=gdc (d , ) , x d y 则存在互质的正 走样直线。 整数p 和q ,使得 对于 m = 1 的线段,根据性质2 ,对称 k二 塑 里 空二竺 =里 反走样直线扫描转换可降低一半的计算开销。 击 m. 尸 P 例如,如图3 . 1 所示,(x o ,y o ) = 对于 m> 1 的线段,根据性质 1 的分段相 (0, , n , = ( 15, , e (15, 似特性,可在反走样线段n 段后简单地复制 0) (x ”) 12) m=gd 12) =3, p=5 , q=40 或 地反 并行 走样线 段12 , …, m。 13, l 设计思想1 : 反走样直线段1扫描转换生 综上所述,充分利用直线段特性,以普 成的像素序列1(劝, ) } i y 1=0,1, 2,…, } 通过取样算法为基础,提出改进算法如下: n 可被划分成具有相同形状的m 个片段: 11 , 计算两个数的最大公约数函数 2 …, 1 , lm加终点像素, 每个片段含p 个像素, gdc(1吐 x , t y) n i 样现象的技术, 称为反走样 (Ant a ias ng)。 每个片段的第一个像素精确地落在1上,且在 il i 整个像素序列中有且仅有m+ 1个像素精确地 m=x , y , mP ,。 n= t e r 研究如何消除或减缓这类走样现象,给人视 < n) {t lllP=m ;m=n 。 e mP。 e n=t 觉上产生更舒适光滑的图形,在图形界面已 落在1上 (如图二所示) 。 证明、因为对于第( 1 类直线,沿x 轴 ) f = m%n l 成为人机交互主流方式的今天, 具有一定的 单位步长取样且有d =mp , x 所以扫描 应用价值。本文主要介绍多段反走样直线。 正方向 while(r !=0) 转换生成的像素序列具有mp+ 1个像素, 故可 { m=n ;n=r 。 r=m%n . } 等分为 每段p 个像素的m 个片段1 , , 1 1 …, 2 化t r f , u n i 1 多段反走样直线算法 lm, 再加一个终点像素。 记第j 段的起点像素 } , 1 概述 . yi」 < 则有x ij二 o+」, x p 考察 直线是最基本的图形元素,是构成复杂 (xij , )(0< 」 m) , J沁一 。 竺立‘ 土 红二 少二 于 兰 压型 五 丝=* 巴 二 止 上 图形的基础,人们在设计和改进直线生成算 口口口口口口口 口 口口口口 口口 口 帆 +j )一 P 凡 , 凡 . x 一 法方面 已经进行 了较深 的研 究 。其 中 口 口口 口 口 口口 口 口 口 口 口 口口 口 口口口口口口口 口 口口口口 口口 口 x y)在1上, 即每个片段的第一个像素 Br s nham 算 最著 ee 法是 名的, 在绘 线段 所以点( , 它 制 口口口口口口口 口 口口口口 口口 团 的过程当中只涉及整数的加法和符号的判 精确地落在1上, 门口口口口口口 口 门口口口 口巴 口 由 式(1)可 ( 。 ,, 得, , ) 可见在 x 了 纵方向 每个 断,是一种简单、高效的算法。但不管是 口口口口口口口口 口口口国口曰 口 于m二 e (d , ), gd x dy 上述分 口口口口口口口 口 口口2 口 口口 口 Br s nham 算法还是别 ee 的直线生成算法都会 片段的高度为q . 由 口 口口 口 口 口口 口 口 团 口 口 口口 口 所以整个扫 使直线产生锯齿状边界。现有的几种反走样 段已经是整数意义下的最细划分, 口口口口口口「 口 团口口口 口口 口 算法, 它们都需要对直线上的每一个像素进行 描转换生成的像素序列中有且仅有每段的起点 口口口口口口口 巴 门口口口 口口 口 合计m+1 反走样处理,我们研究的多段反走样直线算 像素及1的终点像素精确地落在1上, 口口口口口泛「口 口口口口口口 口 口 口口 口 团 口[ 口 口 口 口 口 口口 口 时可得, p=气一 x一q=入一 , 0 ’ 。 J 法利用直线段像素可能存在的多段相似性, 个. 同 口口 爪 曰口口「 口 口口口口 口口 口 这样, 每个片段具有同样的斜率k , 同样 大大提高反走样速度,节省了反走样时间。 口口巴[ 口口「 口 口口口口 口口 口 的 度 不 了 且 点 标 落 1 ,以 口 [ 口 [ 口 [ 「 口 口 口 口 口 口口 口 长 石 并 起 坐 都 在上所 1. 2 算法的设计思想 各l i= 1, …, ( i 2, m)的扫描转换生成像素段 具有 设平面直线1的 程为y = k x + b , 根 光栅图形显示器是目 前使用最广泛的图 形显示器, 因为它具有以下优点: 光栅扫描显 示器具有固定的刷新顺序,扫描从屏幕的左 上角开始, 从左到右, 从上到下的顺序进行刷 新,从而刷新控制部件得以简化,节约了成 本。 在光栅显示系统中, 构成图形的最小图形 元素是像素,这样只要计算屏幕上位于给定 区域以内的所有像素,并且赋予一定的颜色, 就完成了图形的绘制。 但光栅显示器也有它的缺陷,图形信号 是连续的,而光栅显示系统中用来表示图形 的却是一个个离散的像素。用离散的像素来 表示连续的图形时会出现失真,也就称为走 样。光栅显示系统为何会出现走样呢? 光栅 图形显示器是一个画点设备 ,被显示的线 段、字符、图形及背景色都按像素点一一存 储在帧缓冲存储器中。当我们要画一条直线 时,它通常不可能完全精确地从一个可编址 的像素点画一条直线到另一个可编址的像素 点,只可能用尽可能靠近这条直线路径的像 素点集来近似地表示这条直线。显然只有画 水平线、垂直线时,像素点集在直线路径上 的位置才是准确的,其他情况下的直线均或 多或少地存在阶梯状 (锯齿状) 的现象。光 栅图形的走样现象除了上述锯齿状边界外, 还有图形细节失真,狭小图形遗失等现象。 为了提高图形的显示质量,需要减少或 消除上述走样现象。用干减少或消除这种走 斜率为k 的取值范围, 可将平面直线分为5
反走样算法——精选推荐
反⾛样算法反⾛样算法对直线、圆及椭圆这些最基本元素的⽣成速度和显⽰质量的改进,在图形处理系统中具有重要的应⽤价值但它们⽣成的线条具有明显的“锯齿形”即会发⽣⾛样(Liasing)现象⾛样“锯齿”是“⾛样”(aliasing)的⼀种形式。
⽽⾛样是光栅显⽰的⼀种固有性质。
产⽣⾛样现象的原因是像素本质上的离散性⾛样现象:⼀是光栅图形产⽣的阶梯形(锯齿形)⼆是图形中包含相对微⼩的物体时,这些物体在静态图形中容易被丢弃或忽略⼩物体由于“⾛样”⽽消失在动画序列中时隐时现,产⽣闪烁矩形从左向右移动,当其覆盖某些像素中⼼时,矩形被显⽰出来,当没有覆盖像素中⼼时,矩形不被显⽰简单地说,如果对⼀个快速变化的信号采样频率过低,所得样本表⽰的会是低频变化的信号:原始信号的频率看起来被较低的“⾛样”频率所代替反⾛样技术如何降低由于采样不⾜⽽产⽣的⾛样现象呢?⽤于减少或消除⾛样效果的技术,称为反⾛样(Antialiasing)技术由于图形的⾛样现象对图形的质量有很⼤影响, ⼏乎所有图形处理系统都要对基本图形进⾏反⾛样处理1.提⾼分辨率采⽤分辨率更⾼的显⽰设备,对解决⾛样现象有所帮助,因为可以使锯齿相对物体会更⼩⼀些该反⾛样⽅法是以4倍的存储器代价和扫描转换时间获得的为了稳定屏幕上的图象,电⼦枪⾄少要1/24秒时间轰击屏幕上所有像素⼀次,如果像素提⾼⼀倍,电⼦枪就要快4倍!2.模糊边界反⾛样技术涉及到某种形式的“模糊”来产⽣更平滑的图像对于在⽩⾊背景中的⿊⾊矩形,通过在矩形的边界附近掺⼊⼀些灰⾊像素,可以柔化从⿊到⽩的尖锐变化从远处观察这幅图像时,⼈眼能够把这些缓和变化的暗影融合在⼀起,从⽽看到了更加平滑的边界介绍两种反⾛样⽅法:1、⾮加权区域采样⽅法2、加权区域采样⽅法1、⾮加权区域采样⽅法根据物体的覆盖率(coverage)计算像素的颜⾊。
覆盖率是指某个像素区域被物体覆盖的⽐例把这个多边形放在⽅格线中,其中每个正⽅形的中⼼对应显⽰器上⼀个像素中⼼。
任意波形的彩色反走样算法研究与实现
任意波形的彩色反走样算法研究与实现秦立红;肖铁军;华纯【期刊名称】《计算机工程与设计》【年(卷),期】2011(032)011【摘要】Adopting anti-aliasing technique to improve display effect has become a trend with the continuous development of intelligent devices. Aimming at the limitation that graphic types existing anti-aliasing algorithms can process is comparatively single, an arbitrary waveform Antialiasing method based on color graphics is designed. Wu line anti-aliasing algorithm is improved in light of the arbitrary waveform data characteristics, and anti-aliasing of arbitrary waveform is realized through drawing line between adjacent datas. Adopting RGB color space, three components in foreground and background is dealt with respectively according to the brightness value, which satisfied the demand of any background color display. Experimental results show that this method is flexible, efficient and better universality, can effectively eliminate jaggies, and has no color distortion.%由于智能仪器的不断发展,使用反走样技术来提高显示效果已成为一种趋势,针对现有反走样算法处理的图形种类比较单一的局限,设计了一种基于彩色图形的任意波形反走样方法.根据任意波数据的特征,对wu直线反走样算法进行了改进,使用连线的方式实现了任意波形的反走样.采用RGB颜色空间,根据亮度大小分别对前景色和背景色的3个分量值做处理,达到了任意背景色显示的要求.实验结果表明,该方法灵活高效、通用性强,能有效消除图形锯齿,且没有色彩失真.【总页数】5页(P3784-3788)【作者】秦立红;肖铁军;华纯【作者单位】江苏大学计算机科学与通信工程学院,江苏镇江212013;江苏大学计算机科学与通信工程学院,江苏镇江212013;江苏大学计算机科学与通信工程学院,江苏镇江212013【正文语种】中文【中图分类】TP391【相关文献】1.基于屏幕背景色的彩色直线反走样算法 [J], 康凤娥;孔令德2.小号汉字反走样旋转算法的研究与实现 [J], 杜海涛;康旭红;经亚枝;张焕春3.彩色基本图元反走样算法 [J], 康凤娥;孔令德4.点光栅化及反走样算法的研究与实现 [J], 王媛媛;韩俊刚;蒋林;张娜5.数字化仪表中图形反走样算法的研究与实现 [J], 于化龙;马齐爽因版权原因,仅展示原文概要,查看原文内容请购买。
三像素宽反走样直线的绘制算法研究
第35卷第2期2003年4月 南 京 航 空 航 天 大 学 学 报Journal of Nanjing University of Aeronautics &AstronauticsVol.35No .2 Apr.2003三像素宽反走样直线的绘制算法研究江 修,张焕春,经亚枝(南京航空航天大学自动化学院,南京,210016)摘要:直线绘制是计算机图形学的基本内容。
在光栅图形显示系统中,要快速绘制无锯齿的光滑直线是很困难的。
本文从走样的机理入手,在对Wu 反走样直线算法和Gupta &Sproull 圆锥滤波反走样算法进行研究的基础上,提出了改进的三像素宽度直线反走样算法,用于显示高质量的反走样直线,应用于飞机座舱显示系统中全罗盘画面的刻度线绘制,取得了较好的应用效果。
关键词:计算机图形学;反走样;圆锥滤波;Wu 反走样算法;像素中图分类号:TP 391141 文献标识码:A 文章编号:100522615(2003)022******* 基金项目:国家“十五”空军武器装备预研基金(102010303)资助项目。
收稿日期:2002210208;修订日期:2002212223 作者简介:江 修,男,博士研究生,1969年6月生。
E 2mail :jiang -xiu @ ;张焕春,男,教授,博士生导师,1940年3月生;经亚枝,女,副教授,1942年9月生。
Study on Algorithms for Three Pixel Thick StraightLine with AntialiasingJiang Xiu ,Zhang Huanchun ,Jing YazhiCollege of Automation Engineering ,NanjingUniversity of Aeronautics &Astronautics ,Nanjing ,210016,ChinaAbstract :Scan 2converting or rastering a straight line or line segment is the most basic operation incomputer graphics .It is very difficult to draw a smooth straight line without jaggies in a raster graphics system .A more efficient and better looking algorithm is Wu antialiasing algorithm ,and the idea of Gupta &Sproull cone filtering is widely used for antialiasing in computer graphics .Improved algorithms of a line with thickness of three pixels with antialiasing are presented based on the principle of aliasing and Wu antialiasing and Gupta &Sproull cone filtering algorithms .These improved algorithms areapplied to the scale line drawing of a compass for cockpit display system .Experimental results of thehigh quality straight line with antialiasing show that the algorithms are successful .Key words :computer graphics ;antialiasing ;cone filtering ;Wu antialiasing algorithms ;pixel引 言走样和反走样是计算机图形学研究的重要内容。
反走样算法分类
反走样算法分类反走样算法是计算机图形学中常用的一种技术,目的是在渲染图像时减少或消除走样现象,提高图像的质量和真实感。
走样是指在图像边缘或曲线处出现锯齿状的像素,使图像显得不平滑。
这种现象是由于数字图像是由离散的像素组成的,而图像中的边缘和曲线是连续的,因此在显示或打印时会出现走样现象。
为了解决走样问题,人们提出了各种反走样算法。
常见的反走样算法包括抗锯齿(Anti-aliasing)、多重采样(Multi-Sampling)、超采样(Supersampling)等。
这些算法通过在像素级别上对图像进行处理,使得图像边缘和曲线变得平滑,达到减少走样的效果。
抗锯齿是最常用的一种反走样算法。
它通过在图像边缘的像素周围添加中间色调的像素,使得边缘过渡更加平滑。
抗锯齿算法分为两种类型:区域抗锯齿和点抗锯齿。
区域抗锯齿是在像素的颜色值中使用灰度来模拟颜色的变化,从而实现平滑过渡;点抗锯齿是在像素的边缘周围添加额外的像素,使得边缘变得模糊,从而减少锯齿状的像素。
多重采样是一种更高级的反走样算法,它通过对每个像素进行多次采样,然后对这些采样结果进行平均,从而减少走样。
多重采样算法可以分为均匀采样和随机采样两种。
均匀采样是在每个像素上均匀采样多次,并对采样结果进行平均;随机采样是在每个像素上随机选择采样点,并对采样结果进行平均。
多重采样算法的优点是可以有效地减少走样,但计算复杂度较高。
超采样是一种更为精确的反走样算法,它通过对图像进行超高分辨率的渲染,然后将渲染结果缩小到目标分辨率,从而减少走样。
超采样算法可以分为平均超采样和加权超采样两种。
平均超采样是对超高分辨率的像素进行平均,然后将平均结果缩小;加权超采样是对超高分辨率的像素进行加权平均,然后将加权平均结果缩小。
超采样算法的优点是可以获得更高质量的图像,但计算复杂度较高。
除了以上常见的反走样算法,还有一些其他的反走样算法,如几何抗锯齿、滤波抗锯齿等。
这些算法在具体实现上可能有所不同,但都是为了解决走样问题而设计的。
嵌入式设备上Mobile SVG显示的反走样算法研究
嵌 入式 移 动设备 相对 于桌 面机 而言属 于低 端
设 备 , 然 近几 年 它无 论 从 硬 件体 系 结 构还 是 系 虽
统 软 件都 有 较 大 的优 化 和 升级 , 对 于越 来 越 丰 但 富 的 MMS应 用 来说 还 是有 些 捉襟 见 肘. 3 W C在
20 0 3年针 对 嵌入 式 移 动设 备定 义 了 Mo i VG bl S e
第 3 卷 第 5期 2
20 0 8年 1 O月
武汉理工大学学报鸯 差 ( )
J u n l fW u a nv r i fTe h oo y o r a h n U ie st o c n l g o y
( a so tt nSine& E gn eig Trn p rai c c o e n ier ) n
问题. 利用后滤 波的原理 , 对多邻接点 时新边 界点的选择 和轮廓端点 的对 称合成等 问题进行 了分
析 , 用 构 造 拟 合 曲 线 查 找 表进 行 曲线 拟 合 的方 法 实 现 反 走 样 . 采 由于 映射 关 系 独 立 于 具 体 图 形 绘 制 而 事 先 已经 建 立 , 而 计 算 量 不 大 , 于 低 端 设 备 图 形 应 用 非 常 适 合 . 验 证 明 该 方 法 用 于 因 对 实
备 图形应 用非 常适合 .
ቤተ መጻሕፍቲ ባይዱ
1 自适 应 后 滤 波 反 走 样 算 法 思 想
本 文算 法 的主要 思想来 源 于 图像 处理 领域 而 不 是 传统 的图 形领 域 . 以往 的反 走 样 方法 大 体 上 可 以分 为 2大类 : 传统 方法 和后 滤 波 ( 用 信号处 借
基于OpenGL纹理映射反走样技术的研究
Computer Knowledge and Technology 电脑知识与技术本栏目责任编辑:唐一东人工智能及识别技术第7卷第17期(2011年6月)基于OpenGL 纹理映射反走样技术的研究赵方,张军和,彭亚雄(贵州大学计算机科学与信息学院,贵州贵阳550025)摘要:在计算机图形学中,引人注目的是图像的真实感问题。
图像的真实感来源于建模软件中渲染效果的好坏,渲染用时越少,质量越高,渲染出来的图像就越逼真。
利用纹理映射技术,即“贴”墙纸的方法将反映物体表面细节的图案贴到物体表面上。
现有的纹理映射技术存在诸多方面的缺陷,用时长,清晰度低,走样等使得渲染出来的图像不能满足实时的需求。
在原有纹理映射反走样技术的基础上,利用OpenGL 图像库,改进原有纹理映射技术中存在的问题,能得到高度真实感的图像。
关键词:真实感;纹理映射;OpenGL ;走样;反走样中图分类号:TP311文献标识码:A 文章编号:1009-3044(2011)17-4160-02The Anti-aliasing Research of Texture Mapping Based on OpenGLZHAO Fang,ZHANG Jun-he,PENG Ya-xiong(Computer Science and Information Department,Guizhou University,Guiyang 550025,China)Abstract:In Computer Graphics,the most important is the realistic of images.The realistic of images is form the stand or fall of rendering effects in modeling software,the less time spent,the high quality is,the images more e texture mapping technology,that is stick wallpaper,it will reflect object surface detail design on the object surface tack.The existing texture mapping technology has many defects,more time,low duration,aliasing and so on,it could not satisfy the real-time demand.In the original texture mapping technology based on anti -aliasing,using OpenGL image library,improving the original texture mapping technology,problem existing in the image can be sloved.Key words:realistic;texture mapping;OpenGL;aliasing;anti-aliasing计算机图形学中,图形的真实感是指计算机所生成的图形反映客观世界的程度。
走样与反走样
走样与反走样-CAL-FENGHAI.-(YICAI)-Company One12 简述走样(aliasing)和反走样(antialiasing)的概念,并描述反走样的主要方法。
答:(1) 走样(Aliasing ):光栅系统在理论上只能用光栅网格上的象素近似地描绘平滑的直线、多边形和诸如圆与椭圆那样的曲线图元的边界。
它引起了锯齿或阶梯状,这种视觉人工痕迹是信号处理理论中被称为走样的错误采样的表现。
(2) 反走样(Antialiasing ):用于减少或消除走样(Aliasing )效果的技术,就称为反走样(antialiasing)。
(3) 反走样的主要方法:①提高分辨率②简单区域取样③加权区域取样① 提高分辨率:把显示器分辨率提高一倍,直线经过两倍的象素,锯齿也增加一倍, 但同时每个阶梯的宽度也减小了一倍,所以显示出的直线段看起来就平直光滑了一些,但此方法代价太大。
② 简单区域采样:将直线段看作具有一定宽度的狭长矩形;当直线段与某象素有交时,求出两者相交区域的面积;根据相交区域的面积,确定该象素的亮度值。
求相交区域的近似面积的离散计算方法:将屏幕象素分割成n 个更小的子象素;计算中心点落在直线段内的子象素的个数k ;k/n 为线段与象素相交区域面积的近似值。
缺点:象素的亮度与相交区域的面积成正比,而与相交区域落在象素内的位置无关,这仍然会导致锯齿效应;直线条上沿理想直线方向的相邻两个象素有时会有较大的灰度差,特别是当直线是一条接近水平或接近垂直的直线时,这种现象就会比较突出。
③ 加权区域采样:采用圆锥形滤波器,圆锥的底圆中心在当前像素,底圆半径为一个像素,锥高为1。
当直线条经过该像素时,该像素的灰度值是在二者相交区域上对滤波器(函数w )进行积分的积分值。
222221),(σπσy x e y x w +-= ⎰='),(A dA y x w F 可采用离散计算方法,然后求出所有中心落于直线段内的子象素。
直线光栅化与反走样算法研究及硬件实现
KEY WORDS: Edge-juge Function, Area-traversal, Line Raster, Stochastic Sampling
第 II 页
目录
图目录
图 1 光栅扫描显示系统 .............................................................................................. 3 图 2 机载座舱全罗盘画面 .......................................................................................... 5 图 3 直线段示意图 ...................................................................................................... 7 图 4 中点画线法原理图 .............................................................................................. 9 图 5 中点画线法举例 ................................................................................................ 10 图 6 锯齿状边缘 ........................................................................................................ 12 图 7 增大分辨率后走样现象对比 ............................................................................ 13 图 8 超采样后走样现象对比 .................................................................................... 14 图 916 点随机采样子像素位置 ................................................................................ 15 图 10 反走样直线光栅化模块结构图 ...................................................................... 18 图 11 二维平面象限划分图 ...................................................................................... 19 图 12 二维平面八象限划分图 .................................................................................. 19 图 13 1a 象限内原始直线与参考直线的对应过程 .................................................. 20 图 14 1b 象限内原始直线与参考直线的对应过程 ................................................... 20 图 15 2b 象限内原始直线与参考直线的对应过程 .................................................. 21 图 16 2a 象限内原始直线与参考直线的对应过程 .................................................. 21 图 17 3a 象限内原始直线与参考直线的对应过程 .................................................. 22 图 18 3b 象限内原始直线与参考直线的对应过程 .................................................. 23 图 19 4b 象限内原始直线与参考直线的对应过程 .................................................. 24 图 20 4a 象限内原始直线与参考直线的对应过程 .................................................. 24 图 21 象限标志赋值规则 .......................................................................................... 26 图 22 直线所在矩形框 .............................................................................................. 28 图 23 矩形框参数示意图 .......................................................................................... 29 图 24 方法一相对误差 .............................................................................................. 32 图 25 方法二相对误差 .............................................................................................. 33
反走样技术和滤波技术在地图可视化表达中的应用
致 谢在论文搁笔之际,谨向我的导师朱翊致以最诚挚的谢意。
本文是在导师朱翊的悉心指导下完成的,课题研究倾注了导师大量的心血。
在整个研究生学习期间,不仅学到了理论知识,而且锻炼了动手能力,更重要的是让我学到了一种科学的研究方法,这使我在以后的工作生活中都受益匪浅。
在实践方面,朱老师鼓励我多参加科研项目,给我很多实际的动手的机会。
感谢中国测绘科学研究院的刘纪平、王亮、辽宁工程技术大学的宋伟东教授。
他们在学习上为我创造了良好的环境和条件,在生活上给予了我无微不至的关怀。
他们严谨求实的治学态度、勤勉不懈的工作作风、诚恳朴实的为人原则将使我受益终生。
感谢项目组孙立坚老师,在选题过程中,给予我很多的建议和帮助;在论文的整个研究和具体实践过程中,也有他耐心地指导和教诲,其严谨的科研态度和钻研精神使我从中学会了很多知识。
感谢项目组刘晓东老师、柳棽老师、张羽硕士在本论文研究过程中给予的帮助和支持。
感谢中国测绘科学研究院的李青元、石丽红、董春、张福浩、李玉祥、王勇等各位老师在研究工作中给予我的帮助。
陈旭、李海勇、宋全红、刘兴万、刘亚东、刘刚、毕军芳、等硕士以及王想红、张建博等博士,我们一起学习、互相交流,共同度过了一段愉快的科研生活。
感谢在天津实习过程中,领导和同事给予的学习和生活上帮助。
特别感谢我的家人一直以来给我的精神支持与物质资助,谢谢他们对我的理解和支持。
摘 要本文基于已有的计算机设备和计算机图形图像处理理论基础,从算法研究和理论应用的角度针对地图可视化表达中存在的走样现象进行研究,建立相关地图数据可视化表达处理的数学计算模型,并将运用反走样技术处理后的地图显示图形数据再转为图像数据格式,运用适当的滤波算法进行处理,尽可能地在效率允许的范围内达到地图可视化美观的效果,满足地图用户视觉享受的需求,从而探索出地图可视化表达的实用化技术实现路线。
结合地图可视化表达的特点,实现地图可视化表达走样现象处理技术的完善是计算机图形图像学应用领域在GIS应用领域的渗透。
一种基于Bresenham算法的直线快速反走样技术
一种基于Bresenham算法的直线快速反走样技术
舒若;张焕春;经亚枝
【期刊名称】《机械制造与自动化》
【年(卷),期】2002(000)005
【摘要】直线生成算法的优劣对计算机绘图及应用至关重要.Bresenham算法是最有效的直线生成算法,利用直线的两侧对称性可以进一步加快生成速度.但由于受到光栅扫描显示器的限制,用离散像素绘制的直线存在走样问题,实际应用中经常需要进行反走样处理.在本文中,作者基于Bresenham算法,依据直线的对称生成原理,结合矩形滤波反走样技术,提出了一种快速的反走样直线的对称生成算法,并论述了反走样过程中的浮点运算问题.
【总页数】3页(P15-17)
【作者】舒若;张焕春;经亚枝
【作者单位】南京航空航天大学,自动化学院,江苏,南京,210016;南京航空航天大学,自动化学院,江苏,南京,210016;南京航空航天大学,自动化学院,江苏,南京,210016【正文语种】中文
【中图分类】TP301;TP311
【相关文献】
1.基于Bresenham算法的反走样直线整数生成算法 [J], 牛连强;邵中
2.一种新的基于圆锥滤波的直线反走样生成技术 [J], 刘涛;高青伟;赵国荣
3.一种快速的多线宽直线反走样算法 [J], 骆朝亮;谢忠
4.一种快速精确的反走样直线算法及其嵌入式实现 [J], 刘小燕;李秋生;袁新娣
5.基于Bresenham算法的快速直线脉冲增量插补算法 [J], 王宝仁;李金松;吕国娜;董洁
因版权原因,仅展示原文概要,查看原文内容请购买。
CG09-反走样技术原理
☆图形反走样
◘ 线段过取样 ◘ 宽线段过取样 ◘ 线段区域取样 ◘ 过滤技术 ◘ 像素移相 ◘ 线亮度校正 ◘ 边界反走样 ◘ 边界反走样 ◘ 边界反走样
• 沿这种更细网格(子像素)使用取样点来确定每个 屏幕像素的合适亮度等级。
• 从多个点(子像素)对一个像素总体 亮度的贡献来得到该象素亮度; – 每个像素可能的亮度等级数目 等于像素区域内子像素的总数;
反走样技术
● 走样现象 ● 反走样技术
◘ 非加权采样 ◘ 加权采样
• 反走样用来校正不充分取样过程,避免从这种周期性对 象中丢失信息,改善所显示的光栅线的外观。 – 把取样频率至少设置为出现在对象中的最高频率的 两倍。这个频率称为Nyquist取样频率fs: • fs=2fmax。
☆图形反走样
◘ 线段过取样 ◘ 宽线段过取样 ◘ 线段区域取样 ◘ 过滤技术 ◘ 像素移相 ◘ 线亮度校正 ◘ 边界反走样 ◘ 边界反走样 ◘ 边界反走样
☆图形反走样
◘ 线段过取样 ◘ 宽线段过取样 ◘ 线段区域取样 ◘ 过滤技术 ◘ 像素移相 ◘ 线亮度校正 ◘ 边界反走样 ◘ 边界反走样 ◘ 边界反走样
– 对水平线和垂直线,要求线路径是线宽边界之一;
– |m|<1时,线路径宜取在接近于较低边界处; – |m|>1时,线路径放在较接近于较上边界合适。 • 有颜色显示时: 对子像素亮度进 行平均来得到像 素颜色设置。
☆图形反走样
◘ 线段过取样 ◘ 宽线段过取样 ◘ 线段区域取样 ◘ 过滤技术 ◘ 像素移相 ◘ 线亮度校正 ◘ 边界反走样 ◘ 边界反走样 ◘ 边界反走样
每个过滤函 数的体积被 规范化为1。
根据任何子 像素位置处 的高度给出 相应的权值。
立方体滤波
走样,反走样
反走样在光栅图形显示器上绘制非水平且非垂直的直线或多边形边界时,或多或少会呈现锯齿状或台阶状外观。
这是因为直线、多边形、色彩边界等是连续的,而光栅则是由离散的点组成,在光栅显示设备上表现直线、多边形等,必须在离散位置采样。
由于采样不充分重建后造成的信息失真,就叫走样(aliasing)。
而用于减少或消除这种效果的技术,就称为反走样(antialiasing)。
计算机生成图像时通常存在三种走样现象中的两种:锯齿形边以及图形细节或纹理绘制失真。
第三种现象出现在显示非常微小对象的场合。
基本上反走样方法可分为两类。
第一类是提高分辨率即增加采样点(提高采样频率)。
然而,CRT光栅扫描设备显示非常精细光栅的能力是有限的,因此人们通常是在较高分辨率上对光栅进行计算,然后采用某种平均算法(滤除高频分量)得到较低分辨率的象素的属性,并显示在分辨率较低的显示器上。
这种方法称为超采样或后置滤波。
另一类反走样是把像素作为一个有限区域,对区域采样来调整像素的亮度,以光顺边界来减小锯齿现象J。
这种方法等价于图像的前置滤波。
反走样在光栅图形显示器上绘制非水平且非垂直的直线或多边形边界时,或多或少会呈现锯齿状或台阶状外观。
这是因为直线、多边形、色彩边界等是连续的,而光栅则是由离散的点组成,在光栅显示设备上表现直线、多边形等,必须在离散位置采样。
由于采样不充分重建后造成的信息失真,就叫走样(aliasing)。
而用于减少或消除这种效果的技术,就称为反走样(antialiasing)。
计算机生成图像时通常存在三种走样现象中的两种:锯齿形边以及图形细节或纹理绘制失真。
第三种现象出现在显示非常微小对象的场合。
基本上反走样方法可分为两类。
第一类是提高分辨率即增加采样点(提高采样频率)。
然而,CRT光栅扫描设备显示非常精细光栅的能力是有限的,因此人们通常是在较高分辨率上对光栅进行计算,然后采用某种平均算法(滤除高频分量)得到较低分辨率的象素的属性,并显示在分辨率较低的显示器上。
一种基于Bresenham算法的直线快速反走样技术
一种基于Bresenham算法的直线快速反走样技术舒 若,张焕春,经亚枝(南京航空航天大学自动化学院,江苏南京210016)摘 要:直线生成算法的优劣对计算机绘图及应用至关重要。
Bresenham算法是最有效的直线生成算法,利用直线的两侧对称性可以进一步加快生成速度。
但由于受到光栅扫描显示器的限制,用离散像素绘制的直线存在走样问题,实际应用中经常需要进行反走样处理。
在本文中,作者基于Bresenham算法,依据直线的对称生成原理,结合矩形滤波反走样技术,提出了一种快速的反走样直线的对称生成算法,并论述了反走样过程中的浮点运算问题。
关键词:Bresenham算法;直线;反走样;像素;灰度中图分类号:TP301;TP311 文献标识码:B 文章编号:167125276(2002)0520015203A F ast T echnique for Dra wing Anti2aliased StraightLine B ased on B resenham’s AlgorithmSHU Ruo,ZHAN G Huan2chun,J IN G Ya2zhi(The Institute of Automation,Nanjing University of Aeronautics&Astronautics,J S Nanjing210016,China)Abstract:Algorithms for straight line drawing are important for computer graphics,in which Bresenham’s al2 gorithm is the most efficient ing the bilateral symmetry of the straight line can make it much faster be2 ing limited by CR T,the sraight line drawed with discrete pixels is distorted often,and needs to be anti2aliased in application.In this article,the author gives a new anti2aliasing technique according to the symmetry of the straight line,based on Bresenham’s algorithm and the rectangle filter anti-aliasing technique.in the end,the operation of floating2point in anti2aliasing is discussed.K ey w ords:Bresenham’s algorithm;straight line;anti2aliasing;picture element;gray scale0 引言直线是组成图形的基本元素之一,其生成算法的优劣对整个图形系统的效率是至关重要的。
一种快速高效的反走样算法
( 四川 大学
摘
a计 算机 学院 ;b视 觉合 成 图形 图像技 术 国防重 点学科 实验 室 , 都 60 6 ) . . 成 105
要 :快速 近似 反走样 是一种 后 处理 式反 走样技 术 , 效果 好 、 率 高 , 由 于是根 据 亮度 值检 测 边缘 , 致 其 效 但 导 种 改进 的反 走样 方 法 : 根据 物理 和 阴影 信 息检 测 出模 型 与 阴影 边缘 , 以边缘周 围状 况计算 确 定混合 朝 向 , 再 最
C ia hn )
Ab t a t F s a p o i t n iaisn sap s p o e sa t aisn e h oo y whc e fr ef cl n f ci ey I sr c : a t p rx mae a t—l i g i o t r c s n i l ig tc n lg , ih p r msp re t a d ef t l . t a — a o y e v d tc st e e g sb mi a c ,S tie f e t r n ih ih n mo esa e d tce ee t h d e y l n n e O sr so xu e a d h g l t d l r ee td,r s h n n u n c sa y a t ai s u p t g o e u i gi n e e s r ni l — - a i g o s le t ep o lm ,ti a e r vd d an w meh d: e e t d t ee g so d l a d s a o , a e n p y ia n n .T ov rb e h h sp p rp o i e e t o d t ce d e fmo e s n h d ws b s d o h s l — h c i fr t n a d s a o si fr t n,a d t e o u e ln i gd rc in a c r i gt d e ’ mb e t o d t n .F n l t e o ma i n h d w n omai o o n n c mp td b e d n ie t c od n oe g s a i n n i o s i al h h o c i y, b e d n i cin wa o i e t u — i e c v r g o a he e t e g a fa t ai s g l n ig d r t sc mb n d wi s b p x l o e a e t c iv o l ni l i .E p rme t s o h t h sag — e o h h o — an x e i n s h w ta i lo t
贝塞尔曲线 反走样算法
贝塞尔曲线反走样算法
贝塞尔曲线(Bezier Curve)是一种数学曲线,广泛应用于计算机图形学和计算机辅助设计(CAD)领域。
它由法国工程师皮埃尔·贝塞尔(Pierre Bézier)于20世纪60年代提出。
贝塞尔曲线通过控制点来定义曲线的形状,具有光滑、灵活和可调节的特点。
反走样算法(Anti-aliasing Algorithm)是一种用于减少图像锯齿感的技术。
当将一个低分辨率图像或直线绘制在高分辨率屏幕上时,会出现锯齿状边缘,给人一种粗糙的感觉。
反走样算法通过在图像边缘或曲线周围添加额外的像素级别的细微变化,以模糊边缘,从而减少锯齿感,使图像或曲线看起来更平滑。
常见的反走样算法包括超采样抗锯齿(Supersampling Anti-aliasing,简称SSAA)、多重抽样抗锯齿(Multisample Anti-aliasing,简称MSAA)和使用着色器进行抗锯齿(Shader-based Anti-aliasing)。
这些算法在计算机图形渲染中广泛应用,以提升图像质量和视觉效果。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
反走样技术的研究Revised on November 25, 2020反走样技术的研究摘要反走样技术是提高光栅图形显示质量的重要技术之一。
研究如何消除或减缓走样现象,给人视觉上产生更舒适光滑的图形,在图形界面已成为人机交互主流方式的今天,具有一定的应用价值。
在查阅了大量文献资料的基础上,本文从现有的反走样技术(如普通区域取样、普通过取样、加权过取样)入手,对反走样的理论基础和实现技术进行了分析研究。
普通区域取样是将直线看成具有一定宽度的狭小矩形,当直线与像素相交时,求出两者相交区域的面积,然后根据相交区域的面积来确定像素的亮度值,从而达到反走样效果。
而过取样是在提高分辨率下用点取样方法计算,然后对几个像素的属性进行平均得到较低分辨率下的像素属性。
由于需要对每个像素进行处理,因此速度比区域取样明显慢了很多。
普通区域取样和过取样都是在整数坐标上进行的,而WU像素反走样算法采用了非整数坐标改进,视觉效果比前两者更好。
本文的研究重点在直线段反走样、曲线反走样和图像处理速度方面进行了研究和改进。
为了提高过取样的速度,充分利用直线段像素可能存在的多段相似性,算法对其中的一段进行反走样处理后,其余各段只要简单地复制即可,比普通过取样算法明显具有优势,速度提高了很多,也为并行处理提供了可能。
在现有的反走样文献中,对曲线反走样提及较少,本文对圆的反走样算法及实现进行了分析探讨,充分利用圆的八对称性,以加权过取样算法为基础在画圆的同时进行反走样。
第三方面的工作是如何提高编程实现速度,常用的一种技术是利用Pixels[]方法,它通过对像素点逐个进行处理,分别对红色、绿色、蓝色分量进行处理来实现图形的反走样。
这个方法虽然简单、直观,但处理速度缓慢。
通过对Delphi图像处理机制的分析及实验,提出了利用Scnaline方法的改进方案,使处理速度提高到Pixels[]方法的50倍左右。
关键词:反走样,区域取样,过取样本文由天空乐园网整理分享一、研究背景光栅图形显示器是目前使用最广泛的图形显示器,因为它具有以下优点:光栅扫描显示器具有固定的刷新顺序,扫描从屏幕的左上角开始,从左到右,从上到下的顺序进行刷新,从而刷新控制部件得以简化,节约了成本。
在光栅显示系统中,构成图形的最小图形元素是像素,这样只要计算屏幕上位于给定区域以内的所有像素,并且赋予一定的颜色,就完成了图形的绘制。
光栅显示器中的图形由像素构成,而每一个像素又可呈现出多级灰度或不同的颜色值,颜色丰富,显示出来的图形具有更好的视觉效果。
光栅扫描显示器是一个画点设备,与图形的复杂度无关,刷新频率固定,因此不会象随机扫描显示器那样出现闪烁现象,人眼看上去更舒服。
但光栅显示器也有它的缺陷,图形信号是连续的,而光栅显示系统中用来表示图形的却是一个个离散的像素。
用离散的像素来表示连续的图形时会出现失真,也就称为走样,如图所示。
图锯齿状边界光栅显示系统为何会出现走样呢光栅图形显示器是一个画点设备,被显示的线段、字符、图形及背景色都按像素点一一存储在帧缓冲存储器中。
当我们要画一条直线时,它通常不可能完全精确地从一个可编址的像素点画一条直线到另一个可编址的像素点,只可能用尽可能靠近这条直线路径的像素点集来近似地表示这条直线。
显然只有画水平线、垂直线时,像素点集在直线路径上的位置才是准确的,其他情况下的直线均或多或少地存在阶梯状(锯齿状)的现象。
光栅图形的走样现象除了上述锯齿状边界外,还有图形细节失真,狭小图形遗失等现象。
图图形细节失真在光栅显示器上显示如图(a)所示的细长矩形时,出现了图形细节失真,其结果如图(b)所示,原细长的矩形被显示成了加宽的矩形。
图狭小图形的遗失由于光栅系统中表示图形的最小单位是一个像素,图形中那些比像素更窄的细节丢失了,这就出现了图形细节失真现象。
在图中,一些狭小的图形分布在两条扫描线之间,由于它不覆盖任何一个像素中心,故不会被显示出来。
当这些狭小的图形进行运动时,覆盖像素中心时被显示出来,不覆盖像素中心时不被显示出来。
这样在运动的过程中时隐时现,产生闪烁。
为了提高图形的显示质量,需要减少或消除上述走样现象。
用于减少或消除这种走样现象的技术,称为反走样(Antialiasing)。
研究如何消除或减缓这类走样现象,给人视觉上产生更舒适光滑的图形,在图形界面已成为人机交互主流方式的今天,具有一定的应用价值。
反走样技术能提高图形的显示质量,因此在很多画图软件中也采用了这种技术。
优软电脑有限公司设计推出的新一代绘画程序---优软精灵画笔,在原有的各种绘画功能上,添加了一系列全新设计的绘画工具;可以打开外来JPG,TAG,TIFF,GIF,BMP文件;更新三维立体窗口系统;对压力感应笔高效率支持,速度和流畅度达到专业软件水准,让用户的体会更加细腻逼真。
它的精妙之处在于具有细笔尖反走样功能,所以使细笔画更细致更漂亮。
反走样技术不仅能提高图形显示质量,而且在反走样汉字方面也有很好的效果。
由于汉字的笔画很多,而且大多数非水平非垂直,也会产生较严重的走样现象。
图中第1 个字为追踪出的轮廓,第2 个为显示的原始矢量字符。
第3 个为反走样处理后的矢量字符。
图矢量字体轮廓的反走样由此可见,反走样技术在实际应用中有十分重要的意义。
另外, 在处理纹理图形, 以及在动画中闪烁的细小物体图形等问题中反走样技术都得到了广泛运用。
二、反走样技术概述在光栅显示器上显示图形时,直线段或图形边界或多或少会呈锯齿状。
原因是图形信号是连续的,而在光栅显示系统中,用来表示图形的却是一个个离散的象素。
这种用离散量表示连续量引起的失真现象称之为走样(aliasing),走样是伴随着光栅显示系统而出现的,也是数字化的必然产物。
用于减少或消除这种效果的技术称为反走样(antialiasing)。
第一章中已经介绍了光栅图形的走样现象除了阶梯状的边界外,还有图形细节失真(图形中的那些比象素更窄的细节变宽),狭小图形遗失等现象。
常用的反走样方法主要有:提高分辨率、区域采样和加权区域采样等。
下面将对他们进行介绍。
过取样技术反走样的方法很多,一种简单的反走样方法是以较高的分辨率显示对象,如图。
假设把显示器分辨率提高一倍,直线经过两倍的象素,锯齿也增加一倍,但同时每个阶梯的宽度也减小了一倍,所以显示出的直线段看起来就平直光滑了一些。
这种反走样方法是以4倍的存储器代价和扫描转换时间获得的。
因此,增加分辨率虽然简单,但是不经济的方法,而且它也只能减轻而不能消除锯齿问题。
但是它的思想给我们以后的反走样方法一定的启示。
图提高显示分辨率一种可行的反走样方法:在较高分辨率下用点取样方法计算,然后对几个像素的属性进行平均得到较低分辨率下的像素属性。
这种技术称为过取样(Supersampling),或后滤波(Postfiltering)。
该技术是把显示器看成是比实际更细的网格来增加取样率,然后根据这种更细的网格使用取样点来确定每个屏幕像素合适的亮度等级。
反走样的另一种方法是根据图形对象在每个像素点上的覆盖程度率来确定像素点的亮度,这种计算覆盖率的反走样技术称为区域取样(Area Sampling),或前滤波(Prefiltering)。
提高分辨率方法过取样方式的一个简单实现是用较高的分辨率进行计算,如图,在x方向和y 方向上把分辨率提高一倍,使每个像素都对应4个子像素,然后扫描转换求得各子像素的颜色亮度,在对4个像素的颜色亮度进行平均,得到较低分辨率下的像素颜色亮度。
由于像素中可供选择的子像素最大数目是4,因此,该例中提供的亮度等级数是5。
如图中,编号为1和7的像素亮度级别是1,编号为2,3,4,5和6的像素亮度是2。
通过这个方法为图中的每个像素设定不同的灰度值,可以使显示出来的直线看起来平滑一些,达到减少走样现象。
图简单的过取样方式另一种过取样方式(重叠过取样),如图,假设显示器分辨率为m*n,其中m=4,n=3,首先把显示窗口划分为(2m+1)*(2n+1)个像素,然后通过扫描转换求得各子像素的颜色值,在对为于子像素中心及四周的9个子像素的颜色值进行平均,最后得到显示像素的颜色亮度值。
由于接近像素区域中心的子像素在决定像素的颜色亮度值中发挥着重要的作用,因此过取样算法中采用了加权平均的方法来计算显示像素的颜色亮度值(基于加权模板的过取样)。
图示出了3*3像素分割常采用的加权模板。
中心子像素的权是角子像素的4倍,是其他子像素的2倍,中心子像素的加权系数是1/4,顶部和底部及两侧子像素的加权系数是1/8,而角子像素的加权系数是1/16。
图另一种过取样方式图图加权模板过取样的一种简单方法就是在较高的分辨率下进行计算,扫描转换求得各子像素的颜色亮度,然后对子像素的颜色亮度进行平均,得到较低分辨率下的像素颜色亮度。
由于接近像素区域中心的子像素在决定像素的颜色亮度值中发挥着重要的作用,因此过取样的另一种算法采用了加权平均的方法来计算显示像素的颜色亮度值。
不管是哪一种方法都需要在内存中建立一个比现在大几倍的图,便于对像素取样,取得像素的亮度值。
区域取样直线段扫描转换算法均假定像素是数学上的一个点,像素颜色是由对应于像素中心的图形中一点的颜色决定的;并且直线段是数学上抽象的直线段,它的宽度是0。
但实际上像素不是一个点,而是一个有限区域。
屏幕上所画的直线不是数学意义上的无宽度的理想线段,而是一个宽度至少为一个像素单位的线条。
算法中所假定的条件和实际情况之间的差距是造成走样的原因之一。
为了减少走样,必须改变直线段的模型,从而得到了简单区域取样的方法,这个方法的具体步骤是:(1)将直线看成具有一定宽度的狭小矩形;(2)当直线与像素相交时,求出两者相交区域的面积;(3)根据相交区域的面积,确定像素的亮度值;图具有一定宽度的直线图灰度与面积成比例通过将每个像素亮度设置成与线条部分重叠的区域面积成正比,可以完成对直线的区域取样。
若一个像素与线条部分重叠,根据重叠区域面积的大小来选择不同的灰度。
重叠面积大的像素黑一点,重叠面积小的像素白一点。
这种方法将产生模糊的边界,以次来减轻锯齿效应。
图是待显示的直线段,图是采用简单区域取样方法绘制的结果。
这个方法中,起关键作用的是直线段与像素相交区域面积的计算。
那么相交区域如何计算呢假设一条直线的斜率是m,若规定它的显示宽度是一个像素,那么直线和像素的相交有如下三种情况,如图所示。
其中(c)的计算可转化为正方形面积减去两个三角形面积。
接下来介绍(a)和(b)两种情况。
(a)(b)(c)图直线段与像素相交的三种情况在图(a )中,假设三角形x 方向上的边长为D ,则y 方向上的边长为mD ,从而三角形的面积为2212mD mD D =•.在图(b )中,假设梯形左底边长为D ,则右底边长为D-m ,从而梯形的面积为221)(m D M D D -=•-+;所得到的面积介于0,1之间的实数,用它乘以像素的最大灰度值,即可得到像素实际显示的灰度值。