计算机图形学导论:复习

Revision

Posted by R1NG on June 6, 2022 Viewed Times

计算机图形学导论: 复习

Quiz

Computer Graphics

20220521125744

($\uparrow$ 注意 Fragment 的定义.)

20220521125811

($\uparrow$ 实际上还是和答案有区别的: 阳间的计算机图形学框架会提供预先实现的着色器, 甚至会在用户未指定着色器时使用默认着色器渲染.)

20220521125911

($\uparrow$ 这个要是考了的话我把出题人吃下去…)

20220521125941

20220521130037

($\uparrow$ 因为为了统一表示平移变换 Translation, 旋转变换 Rotation 和拉伸变换 Scaling, 我们使用维度为 $4$ 而不为 $3$ 的齐次坐标)

20220521130047

($\uparrow$ 同时回顾以任意三维向量作为旋转轴时应该怎么做: 旋转轴转换到坐标轴上 - 执行旋转 - 转换回来)

20220521130153

($\uparrow$ 向量归一化的基本定义.)

20220521130309

20220521130220

($\uparrow$ 注意向量点乘和叉乘的基本性质, 同时回顾使用右手定则确定向量叉乘结果方向的方法)

20220521130318

($\uparrow$ 栅格化, 也称曲面细分, 注意 OpenGL 只能处理凸多边形. 其实解答这类题目最困难的地方在于单词背不下来….)

20220521130440

($\uparrow$ 视角控制的是我们观察模型的方式.)

20220521130513

($\uparrow$ 这也是为什么 “用固定视点模拟虚拟相机” 可行的原因.)

20220521130547

($\uparrow$ 实在记不住的话就回顾三维图形管线流程图: 模型变换总在视角变换之前应用.)

20220521130626

($\uparrow$ 平行投影和透视投影是最基本的两种投影方式.)

20220521130702

($\uparrow$ 此处注意 Tetrahedron 就是 “台体/四面体”, 它是透视投影的视景体.)

Image Processing

20220606232905

($\uparrow$ 计算方法不多赘述, 此处需要注意, 对于 RGB 图像它包含三个颜色通道, 因此需要将计算出的, 存储单个颜色通道 intensity 的文件大小相应地 乘以$3$.)

20220606233032

($\uparrow$ 第一点最全面, 也最准确. 第二点可以描述是仿射变换和镜头畸变, 第三点是图像处理的基本假设, 第四点则属于 Region Processing.)

20220606233152

($\uparrow$ 注意 Thresholding 的实质是将灰度图像转换为只包含 $0$ 和 $255$ 两种 intensity 的二值图, 其中黑色的部分是我们需要分离的 object, 背景被统一设为白色)

20220606233306

($\uparrow$ 基于三原色理论, 我们可以使用三种基础颜色的混合得到大量的不同颜色, 同时三原色也和人眼视觉细胞对红, 绿, 蓝敏感的生理规律匹配.)

20220606233425

($\uparrow$ 回忆: 色彩空间的基本分类为 CIE, YCrCbPerceptual Space. 第一个是 $1931$ 年的古墓级标准, 第二个用于数字视频领域, 最后一个具备的特点是贴合视觉规律, 即: 我们关注色彩的变化而不是绝对准确的色彩表示. CIE 色域图中边缘部分的不同色彩在人看来实际上非常相似, 这并不是我们所需要的)

20220606233758

($\uparrow$ 对基本 Pointwise Processing 的变换原理和对应的变换矩阵表示需要非常熟悉! 显然 Scaling 本质是对比度调节, 但是对比度调节中同时伴随了亮度变化.)

20220606233929

($\uparrow$ 回顾课上介绍的非线性变换曲线. 显然曲线的形状会决定 $x$ 轴对应 intensity value 被映射到的值. 基于曲线凹凸形状不同, 每个 intensity 可能被映射到不同的值, 具体会体现出多少效果, 体现出哪些效果完全依照曲线形状而定)

20220606234145

($\uparrow$ 回顾 Slides 上那张曼哈顿街区的图: 灰度插值不仅会导致 Image Histogram 中每一条柱之间存在间隙, 在视觉上还会有 “色彩断层” 的效果.)

20220606234504

($\uparrow$ 注意仿射变换是几何变换的 子集, 任何几何变换一定会影响像素在图像坐标系中的坐标. 此处考虑一般性, 不许举诸原地旋转 $360\degree$, 缩放 $1$ 倍这种例子抬杠)

20220606234646

($\uparrow$ 此处注意回忆角分辨率的计算方式和性质. 可知在固定像素数量不变的情况下, fov 越大角分辨率越大, 每个像素对应的视角度数越大, 能表示的最小物体的大小越大, 越不清晰.)

20220609115129

($\uparrow$ 注意卷积运算在图形处理中的实际作用: 检查image和template之间的相似性. 剩下的三个选项分别是template matching 卷积核, Box Filter/Gaussian Filter, Edge Detectors的功能, 它们本质上执行的都是卷积运算.)

20220609164353

($\uparrow$ 在正常情况下, 绝大多数噪音都是远小于实际信号的, 因此可以通过averaging让这些噪音自行互相抵消.)

20220609164436

($\uparrow$ 回顾课上内容: 常规的 box filter 对边缘的模糊效应最严重, Gaussian Filter 可以避免在边缘上出现 ringing effect, 但仍然会模糊边缘. median filter 则基本不会模糊边缘, 也就是 “retain significant image structures”.)

20220609164618

($\uparrow$ 这里实际上就是在描述 Gaussian Smoothing 不会导致边缘出现 ringing effect 的特性.)

20220609164702

($\uparrow$ 回忆对 Prewitt, Sobel 卷积核的, 拆成一个averaging kernel 和一个edge detection kernel 的拆解过程. 同时明确卷积计算的时间复杂度, 从此可以看出通过将 square template 拆分成两个卷积核分别计算可以节约大量的计算资源和时间.)

20220609164844

($\uparrow$ 避免 overflow 是老生常谈的事情)

20220609164925

($\uparrow$ 注意对 “边” 的定义. $12$ 题的做法实际上就是最简单的 Simple edge detection 进行的操作)

20220609165136

($\uparrow$ 回顾课上介绍的例子, template 源于图片本身)

20220609165958

($\uparrow$ 注意对 blob 的定义: 一系列连续的, 共享某些性质的像素的集合. 它被用于物体识别和表示, 我们可通过表示 blob 的外围构造 (path, chain code), 计算周长, 计算大致面积 (shoelace algorithm), 表示颜色等方式描述它的特征.)

20220609170143

($\uparrow$ 实际上这也是我们在课上唯一关心的, 检测 blob 的方式.)

20220609170237

($\uparrow$ 注意 Path首尾相连 的. 一般可以用 chain code 表示.)

20220609170308

($\uparrow$ 回忆 CCA 分为两次扫描, 得到的结果是: 同一个 blob 中所有的像素均被赋予相同的 label.)

20220609170354

($\uparrow$ 注意 Central Moment 可视为 Moment 关于 blob 重心的偏置)

20220609170600

($\uparrow$ 注意此处 center of gravity 的计算方式: $\frac{M_{10}}{M_{00}}, \frac{M_{01}}{M_{00}}$.)

20220609170728

($\uparrow$ 回忆我们使用 differential chain code 表示 blob 边缘的生成, perimeter 的计算涉及 chain code 中奇数和偶数的数量, 由于外部环境的影响得到的图像中 blob 的亮度可能随着光照不同发生变化, 属于干扰 blob tracking 的不利因素, 应当利用 HSI, HSB 等色彩和亮度分离的色彩标准, 排除 Intensity 的影响只考虑 Chromaticity.)

20220609165223

($\uparrow$ Hough Transformation 将图像平面中的点映射为一条直线, 也就是表示 “所有过这点可能的直线”; 将图像平面中的直线映射为一个点.)

20220609165403

20220609165332

($\uparrow$ 务必对 Hough Plane 中, 直线的直角坐标表示和极坐标表示足够熟悉. 直线用这样的直角坐标表示是因为我们找到点之后已经固定了 $x$ 和 $y$, 此时变量就是 $m$ 和 $c$.)

20220609165853

($\uparrow$ Structured elements 就是一系列像素组成的物体, 大小和形状不定.)

20220609165758

($\uparrow$ 如果被 erode 的 structuring element 太小的话它自身就可能会连同 noise 一起被腐蚀掉.)

复习笔记

Here