计算机图形学·1 什么是计算机图形学?
本文是记录专业课“计算机图形学”的部分笔记,参考教材为Angel的第八版交互式计算机图形学——基于WebGL 2.0的自顶向下方法。
1、Computer graphics(图形)deals with all aspects of creating images(图像)with a computer,其应用包括显示、仿真动画、用户界面、设计。可视化概念 Visualization 金句:See the Unseen。
2、Open Scene Graph开源项目,简称OSG,分为 top down(各种基于OSG的3D可视化、游戏、动画仿真、桌面虚拟现实等)、down top(例如人工构造视觉数据集DeepOSG,用于各种视觉场景的理解和重建)。类似的,FLIGHTGEAR飞行仿真、Unity游戏开发、Opencascade计算机辅助设计(CAD)也可以如此分类。
3、一个没有GPU的图形系统中,图像在 Frame Buffer (FB) 帧缓存中形成。

Image produced as an array (the raster) of picture elements (pixels) in the frame buffer,这里的Raster是光栅。光栅扫描光束的强度会根据帧缓冲区的内容进行调制调整,帧缓冲区中的每个元素都与屏幕上的一个像素相关联,像素的亮度由来自数模转换器 (DAC) 的电压控制。

4、基本光栅扫描系统如下图所示。其中,视频控制器具备刷新操作(X、Y 寄存器用于指示像素位置,固定 Y 寄存器并递增 X 寄存器以生成扫描线)和双缓冲(像素值可以在刷新的同时加载到缓冲区中,提供快速的实时动画生成机制)的功能。而光栅扫描图形处理器负责将 CPU 从图形处理任务中解放出来、提供独立的图形处理器内存,带图形处理器的光栅扫描系统如图2所示。


5、CPU:通用计算、Rasterization光栅化 / Scan conversion扫描转换、系统内存。GPU:数百个处理单元,高度并行,负责通用计算、图形计算图形计算(光栅化/扫描转换,circuit memory)。
6、输出设备示例:The cathode-ray tube (CRT)阴极射线管可用作线条绘制工具(线画模式)或显示帧缓冲区内容(光栅模式)。而 Color CRT Monitors 彩色阴极射线管显示器结构如下图所示,其中DAC是Digital-to-Analog Converters,scan controller是扫描控制。
术语“真彩色”有时用来指帧缓冲区直接存储每个通道值的系统,即使是真彩色系统也经常使用颜色表。在这种情况下,每个 8 位通道都有一个单独的颜色表,共有`2^8*2^8*2^8=16M`种。

7、总结:Pixel是像素,表示图像元素。Raster是光栅,表示像素数组。Frame Buffer是帧缓冲区、存储像素的内存。帧缓冲区深度是每个像素使用的位数,例如8位深度,每种颜色 28 位(=256 位),或者RGB 颜色模式每个像素额外 24 位。
Resolution是分辨率,表示帧缓冲区中的像素数。Rasterization是光栅化(Scan Conversion扫描转换))表示将几何实体(例如直线、圆和多边形)转换为帧缓冲区中的像素值。Refresh Rate是刷新率,表示显示的折回率(retracing)。
8、平面显示器与 CRT 显示器相比,体积、重量和功耗均有所降低,可分为自发光显示器(将电能转换为光能,如等离子面板)和非自发光显示器(利用光学效应将其他光源的光转换为图形图案,如液晶显示器 LCD)。

9、输入设备按物理属性描述可分为鼠标、键盘、跟踪球(Trackball),按逻辑属性可通过API 返回给程序的内容描述(返回一个位置位置,还是一个对象标识符),按如何以及何时获取输入可分为请求(主动)、事件(被动)和采样三种模式。
10、物理输入设备——增量(相对)设备:数据板等设备直接向操作系统返回绝对位置;鼠标、轨迹球和操纵杆等设备向操作系统返回增量输入(或速度),必须把这些输入累加在一起才能获得绝对位置(鼠标中圆柱体的旋转、轨迹球的滚动,难以获得绝对位置,输入可能相当敏感)。
而逻辑设备是类似cin >> x;的东西,从代码中无法判断,可能是键盘、文件或来自其他程序的输出。图形输入比标准程序的输入更加多样化,标准程序的输入通常是数字、字符或位,两个较早的 API(GKS 和 PHIGS)定义了六种逻辑输入类型:
- 键盘/字符串:返回字符串
- Locator:返回一个位置
- Pick:返回对象的标识 ID
- Choice:返回 n 项中的一个
- Valuator:返回浮点数
- Stroke:返回一系列位置
11、①请求模式(Request Mode)中,输入设备包含一个触发扳机,可用于向操作系统发送信号(如鼠标按钮、按/放键盘上的键),触发后,输入设备会将信息(其测量值)返回给系统(鼠标返回位置信息、键盘返回 ASCII 码)。如下图所示:

②采样模式(Sample Mode)比较少见,立即返回应用程序、没有显式触发器。③事件模式(Event Mode)中大多数系统都有多个输入设备,每个输入设备都可以在任意时间被用户触发。每次触发都会生成一个事件,该事件的度量值会被放入事件队列,该队列可供用户程序检查。

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)