计算机图形学圆反走样代码,计算机图形学——反走样

对于直线、圆形、椭圆这些最基本元素的生成速度和显示质量的改进,在图形处理系统中具有重要的使用价值。

但它们生成的线条具有明显的“锯齿形”即会发生走样(Liasing)现象

一、走样

计算机图形学圆反走样代码,计算机图形学——反走样_第1张图片

产生走样现象的原因是像素本质上的离散性,要用有限的像素点来逼近无限的直线!

走样是数字化的必然产物!

走样现象:

一是光栅图行产生的阶梯形(锯齿形);

二是图形中包含相对微小的物体时,这些物体在静态图形中容易被丢弃或忽略。

小物体由于走样而消失

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

计算机图形学圆反走样代码,计算机图形学——反走样_第2张图片

矩形从左到右移动,当其覆盖某些像素中心时,矩形被显示出来,当没有覆盖像素中心时,矩形不被显示

简单地说,如果对一个快速变化的信号采样频率过低,所得样本表示的会是低频变化的信号;原始信号的频率看起来被较低的“走样”频率所替代。

计算机图形学圆反走样代码,计算机图形学——反走样_第3张图片

如何降低由于采样不足而产生的走样现象?

二、反走样技术

用于减少或消除走样效果的技术,称为反走样(Antialiasing)技术

由于图形的走样现象对图形的质量有很大影响,几乎所有图形处理系统都要对基本图形进行反走样处理

硬件解决方法

采用高分辨率的光栅图形显示器

计算机图形学圆反走样代码,计算机图形学——反走样_第4张图片

该反走样方式是以4倍的存储器代价和扫描转换时间获得的

为了稳定屏幕上图像,电子枪至少要1/24秒时间轰击屏幕所有像素一次,如果像素提高一倍,电子枪就要快4倍!

软件解决方法

用“模糊”来产生更平滑的图像

对于在白色背景的黑色矩形,通过在矩形边界附近渗入一些灰色像素,可以柔化从黑到白的尖锐变化

从远处观察这幅图像时,人眼能够将这些缓和变化的暗影融合在一起,从而看到更加平滑的世界

计算机图形学圆反走样代码,计算机图形学——反走样_第5张图片

这里有两种反走样方法,非加权区域采样方法和加权区域采样方法。

三、非加权区域采样方法

根据物体的覆盖率(某个象素区域被物体覆盖的比例)计算像素点颜色。

计算机图形学圆反走样代码,计算机图形学——反走样_第6张图片

缺点

1、像素的亮度与相交区域的面积成正比,而与相交区域落在像素内的位置无关,这仍会导致锯齿效应

2、直线上沿理想直线方向的相邻两个象素有时会有较大的灰度差;

每个像素的权值是一样的,这是主要缺点。

四、加权区域采样方法

这种方法更符合人视觉系统对图像信息的处理方式,反走样效果更好

计算机图形学圆反走样代码,计算机图形学——反走样_第7张图片

直线段对一个象素亮度的贡献正比于相交区域与象素中心的距离

设置相交区域面积与像素中心距离的权函数(高斯函数)反映相交面积对整个像素亮度的贡献大小

利用权函数积分求相交区域面积,用它乘以象素可设置的最大亮度值,即可得到该象素实际显示的亮度值。

计算机图形学圆反走样代码,计算机图形学——反走样_第8张图片

f063ce6a1da55aa85afdf4b0f8e5d91d.png

你可能感兴趣的:(计算机图形学圆反走样代码)