计算机图形学-反走样设计与实现.doc
《计算机图形学-反走样设计与实现.doc》由会员分享,可在线阅读,更多相关《计算机图形学-反走样设计与实现.doc(7页珍藏版)》请在咨信网上搜索。
1、计算机图形学反走样设计与实现学 生 董庆洋班 级 2012级四班反走样设计与实现董庆洋摘 要:图形图像技术是现代社会信息化的重要技术,而走样却是数字化表示图形图像的必然产物。为了提高图形的显示质量,需要减少或消除走样现象,用于减少或消除这种效果的技术称为反走样。消除或减缓走样现象,给人视觉上产生更舒适光滑的图形,在图形界面已成为人机交互主流方式的今天,具有一定的应用价值.本文介绍了几种常用的反走样方法,主要有:提高分辨率来显示图形对象、区域采样、加权区域采样以及改进的反走样方法:Wu像素反走样。关键词:走样;反走样;过取样;区域取样;加权区域取样;Wu像素反走样1。引入走样与反走样光栅图形显示
2、器是目前使用最广泛的图形显示器,因为它具有以下优点:光栅扫描显示器具有固定的刷新顺序,扫描从屏幕的左上角开始,从左到右,从上到下的顺序进行刷新,从而刷新控制部件得以简化,节约了成本。在光栅显示系统中,构成图形的最小图形元素是像素,这样只要计算屏幕上位于给定区域以内的所有像素,并且赋予一定的颜色,就完成了图形的绘制.光栅显示器中的图形由像素构成,而每一个像素又可呈现出多级灰度或不同的颜色值,颜色丰富,显示出来的图形具有更好的视觉效果。光栅扫描显示器是一个画点设备,与图形的复杂度无关,刷新频率固定,因此不会像随机扫描显示器那样出现闪烁现象,人眼看上去更舒服.但光栅显示器也有它的缺陷,数学意义上的图
3、形是由无线多个连续的、面积为零的点构成,而光栅显示系统中用来表示图形的却是一个个离散的,具有一定面积的像素。用离散的像素来表示连续的图形时会出现失真,也就称为走样。光栅显示系统为何会出现走样呢?光栅图形显示器上被显示的线段、字符、图形及背景色都按像素点一一存储在帧缓冲存储器中。当我们要画一条直线时,它通常不可能完全精确地从一个可编址的像素点画一条直线到另一个可编址的像素点,只可能用尽可能靠近这条直线路径的像素点集来近似地表示这条直线.显然只有画水平线、垂直线时,像素点集在直线路径上的位置才是准确的,其他情况下的直线均或多或少地存在阶梯状(锯齿状)的现象。光栅图形的走样现象除了上述锯齿状边界外,
4、还有图形细节失真,狭小图形遗失等现象。为了提高图形的显示质量,需要减少或消除走样现象,这种用于减少或消除走样现象的技术称为反走样技术。2.实现反走样技术的一些方法2.1 过取样技术一种简单的反走样方法是以较高的分辨率显示对象,如图1。假设把显示器分辨率提高一倍,直线经过两倍的像素,锯齿也增加一倍,但同时每个阶梯的宽度也减小了一倍,所以显示出的直线段看起来就平直光滑了一些。这种反走样方法是以4倍的存储器代价和扫描转换时间获得的.因此,增加分辨率虽然简单,但是不经济的方法,而且它也只能减轻而不能消除锯齿问题。但是它的思想给我们以后的反走样方法一定的启示。图1 分辨率提高一倍,阶梯程度减小一倍一种可
5、行的反走样方法:在较高分辨率下用点取样方法计算,然后对几个像素的属性进行平均得到较低分辨率下的像素属性,这种技术称为过取样(Supersampling),或后滤波(Postfiltering)。该技术是把显示器看成是比实际更细的网格来增加取样率,然后根据这种更细的网格使用取样点来确定每个屏幕像素合适的亮度等级。2.1.1 提高分辨率方法过取样方式的一个简单实现是用较高的分辨率进行计算,如图2,在x方向和y 方向上把分辨率提高一倍,使每个像素都对应4个子像素,然后扫描转换求得各子像素的颜色亮度,再对4个像素的颜色亮度进行平均,得到较低分辨率下的像素颜色亮度。由于像素中可供选择的子像素最大数目是4
6、,因此,该例中提供的亮度等级数是5。图中,编号为1和7的像素亮度级别是1,编号为2,3,4,5和6的像素亮度是2。通过这个方法为图中的每个像素设定不同的灰度值,可以使显示出来的直线看起来平滑一些,达到减少走样现象。图2 简单的过取样方式2。1。2 基于加权模板的过取样另一种过取样方式(重叠过取样)。为了得到更好的效果,在对一个像素点进行着色处理时,不仅仅只对其本身的子像素进行采样,同时对其周围的多个像素的子像素进行采样,来计算该点的颜色属性。如图3所示。由于接近像素区域中心的子像素在决定像素的颜色亮度值中发挥着重要的作用,因此过取样算法中采用了加权平均的方法来计算显示像素的颜色亮度值(基于加权
7、模板的过取样)。图4示出了33像素分割常采用的加权模板。中心子像素的权是角子像素的4倍,是其他子像素的2倍,中心子像素的加权系数是1/4,顶部和底部及两侧子像素的加权系数是1/8,而角子像素的加权系数是1/16。图3 重叠过取样图4 常用的加权模板2。1。3 过取样算法的实现对于过取样,不管用哪一种方法都需要在内存中建立一个比现在大几倍的图,便于对像素取样,取得像素的亮度值。具体实现的算法如下:void SuperSamplingLine(int xa, int ya, int xb, int yb,boolean Weighted) int dx = xb-xa+1, dy = yb-ya+
8、1, x,y,xs,ys,i,j,s, w33= 1,2,1, 2,4,2, 1,2,1; BYTE gray; Graphics::TBitmap * big_bmp; big_bmp = new Graphics:TBitmap(); big_bmp-Width = 3*dx; big_bmpHeight = 3*dy; /设置白底色 big_bmp-CanvasBrush-Color = clWhite; big_bmp-CanvasFillRect(big_bmpCanvasClipRect); big_bmp-Canvas-Refresh(); /设置绿笔 big_bmpCanvas
9、-Pen-Color = clGreen; big_bmp-Canvas-MoveTo(1,1); big_bmpCanvas-LineTo(3*dx1,3dy1); for (x=xa;x=xb;x+) xs = 3(x-xa); for (y=ya;y=yb;y+) ys = 3*(yya); s = 0; for (i=xs;iCanvas-Pixelsij=clGreen) if (Weighted) s=s+wixsj-ys; else s+; if (Weighted) gray = (BYTE)(255.0 s*(255.0/8.0); else gray = (BYTE)(25
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 图形学 走样 设计 实现
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。