#sec-1
Computer Graphics · Chapter 1 · 02

图像是怎样形成的?

从对象、观察者和光,到虚拟相机与二维图像

Object
+
Viewer / Camera
+
Light / Material
Image

40 min · 思想实验 + 成像模型 + 概念辨析 + AI纠错

#sec-2-1
Bridge-in · 0–5 min

人眼、相机和计算机图形学,有什么共同问题?

小孔成像原理图 相机成像示意图

共同问题

怎样把三维世界中的对象,变成二维平面上的图像

真实相机依赖光学;计算机图形学则要把这个过程抽象成数学模型,再交给程序和GPU计算。

#sec-2-2
MED × CG · 医工交叉

把成像问题放进医学场景:三维器官怎样“被看见”?

CT / MRI 数据
图像处理 / 重建
3D Organ Model
Camera + Rendering
2D Display

边界要分清

从原始 CT / MRI 到分割、重建三维结构,主要涉及医学图像处理与重建。

本课关注

从已有三维结构出发:从哪里看?怎样投影?光与材质怎样影响最终显示?

#sec-2-3
Learning goals

今天要建立三层认识

01

成像需要什么?

对象、观察者和光为什么缺一不可。

02

三维怎样投到二维?

小孔相机、透视关系与视域。

03

计算机怎样模拟?

虚拟相机、裁剪窗口与成像过程。

#sec-2-4
Pre-assessment · Thought experiment

思想实验:在窗户上“描”出你眼前的世界

限制条件

  • 眼睛位置固定不动
  • 玻璃窗的位置固定
  • 物体也不移动

怎样在玻璃上画出与眼睛所见一致的轮廓?

你会自然得到

观察点 / Viewpoint
投影线 / Projector
成像平面 / Image Plane
两人讨论2 min

先画图,不查资料:你认为“观察点”和“玻璃平面”的位置改变后,最终图像会发生什么变化?

#sec-3-1
Imaging system · 5–10 min

成像三要素:对象、观察者、光

对象观察者光源关系
Object · 对象
Viewer · 观察者
Light · 光

最终图像是三者相互作用的结果,而不是某一个对象“自带”的属性。

#sec-3-2
Object & Viewer

对象与观察者:同一个对象,可以有完全不同的图像

对象

由空间中的几何信息定义,本身独立于某个特定观察者。

观察者

位置与方向决定从哪里看、朝哪里看

二维图像

是三维对象在特定观察条件下的投影结果

快速判断

“图像就是对象的二维副本。”这句话哪里不准确?

#sec-3-3
A useful abstraction

先把今天的核心关系写成一条“概念公式”

Image = f ( Object / Scene, Camera / Viewer, Light, Material )

改相机

位置、方向、视野变化 → 构图和透视变化。

改光与材质

亮暗、颜色、阴影、反射等视觉效果变化。

#sec-4-1
Light · 10–17 min

为什么“看见”离不开光?

光线传播示意图

图形学常采用几何光学近似

  • 把光近似成沿直线传播的光线
  • 光线与物体表面发生反射、折射、吸收
  • 进入观察者/相机的光决定最终可见结果

第一章只建立模型,不深入电磁波物理细节。

#sec-4-2
Physical transport vs algorithm

物理世界从光源出发,算法为什么常从相机出发?

物理光传播

Light
Surface
Camera

真实光线从光源发出,经过场景后只有极少一部分进入相机。

经典 Ray Tracing

Camera / Pixel
Scene
Light

从“真正要生成的像素”出发反向查询场景,更高效。

概念连接

这与上一课的“光栅化:物体→屏幕;光追:像素/相机→场景”怎样对应?

#sec-4-3
Ray tracing

光线追踪:沿着“看见什么”继续追问光从哪里来

光线追踪示意图

每个交点可能继续产生

  • 到光源的阴影测试
  • 反射光线
  • 折射光线
  • 递归查询其他表面

因此它特别适合表达镜面反射、透明物体和复杂阴影。

#sec-4-4
Local vs Global Illumination

局部光照与全局光照:差别在“是否考虑间接光”

局部和全局光照示意

关键区别

局部光照:主要根据光源到当前表面的直接作用计算颜色。

全局光照:还考虑其他表面反射/透射来的间接光。

光线追踪是一类求解路径;是否“全局”取决于追踪和光照模型考虑了哪些传播过程。

#sec-4-5
Extension · 可略讲

基于物理的图像生成:不只有一种算法

Ray Tracing

沿光线路径求交与递归,现代实时图形也大量使用。

Radiosity

以能量交换为基础,经典上特别适合漫反射表面的间接光照。

Path Tracing

通过随机采样大量光路估计完整光传输,是现代离线真实感渲染的重要方法。

第一章只需要认识:越接近完整光传输,通常计算代价越高。

#sec-5-1
Color & perception · 17–23 min

灰度和彩色:像素究竟存什么?

灰度图 · Luminance / Intensity

每个像素用一个数值表示亮暗。

彩色图 · Color Image

每个像素需要多个分量共同描述颜色;显示系统最常见的是 RGB。

RGB
#sec-5-2
Human visual system

为什么显示器只用 RGB,就能覆盖大量可见颜色?

视杆和视锥细胞示意

第一章记住两点

  • 视杆细胞主要支持低照度下的亮暗感知
  • 视锥细胞具有不同光谱响应,是三色视觉的基础

因此,显示系统可以用三个基色分量来近似形成丰富的颜色感知。

#sec-5-3
Color models

RGB 与 CMY(K):一个“发光”,一个“减光”

RGB · 加色系统

RGB 加色模型

显示器、投影等主动发光设备。

CMY(K) · 减色系统

CMYK 减色模型

印刷等依靠材料吸收部分白光的系统。

#sec-5-4
Connection

颜色不是“物体固定拥有的一个RGB值”

Light spectrum / intensity
×
Material response
×
Viewing / display
Perceived color
概念辨析

为什么同一件衣服在日光、暖色灯和显示器照片中,看起来可能不是同一种颜色?

#sec-6-1
Camera model · 23–30 min

小孔成像:把三维到二维写成一个比例关系

针孔照相机

由相似三角形得到

\(x_p=-d\frac{x}{z}\)
\(y_p=-d\frac{y}{z}\)
  • z 增大 → 投影尺寸减小
  • d 改变 → 视野与图像尺度改变
  • 负号来自真实胶片成像的倒立关系
#sec-6-2
Perspective

透视的核心直觉:近大远小

z

物体离相机越远,投影越小。

d

焦距/投影平面距离改变,观察范围随之变化。

FOV

视域描述相机能够“纳入画面”的角度范围。

一分钟推理

物体距离变成原来的 2 倍,其他条件不变,它在图像上的线性尺寸大约怎样变化?

#sec-6-3
Synthetic camera

虚拟相机:把真实相机“翻到镜头前面”

合成相机模型

为什么这样做?

真实胶片位于针孔后面且图像倒立;虚拟相机把成像平面移到投影中心前方,得到更直观的正立几何模型。

物理装置可以不同,但投影几何关系等价

#sec-6-4
Why synthetic camera?

合成相机模型为什么适合图形 API?

对象与观察者分离

可以独立定义模型和相机,再自由组合视图。

二维图像 = 三维对象的投影

统一了透视、平行投影等不同观察方式。

API 参数清晰

位置、方向、焦距/FOV、成像窗口等都能显式描述。

利于GPU实现

投影和坐标变换可转化为规则的矩阵计算。

#sec-6-5
Clipping

相机不是“什么都看见”:还需要确定可见窗口

窗口裁剪

Clipping Window / Volume

  • 决定画面边界
  • 窗口外的对象不进入最终图像
  • 跨越边界的图元只保留可见部分

这就是后续“裁剪”算法的几何来源。

#sec-6-6
Interactive thinking

相机动了,还是物体动了?

方案 A

相机向前移动 2m

Camera →
Object
≈ ?

方案 B

物体向相机移动 2m

Camera
← Object
现场演示 / 讨论2 min

什么条件下两幅图像可以完全相同?——这正是后续“世界坐标 → 相机坐标”变换的直觉基础。

#sec-7-1
Image formation pipeline · 30–34 min

从合成相机到计算机成像过程

成像过程
#sec-7-2
MED × CG · Imaging pipeline

一个三维器官模型怎样进入图形成像过程?

Organ Mesh
View / Projection
Clip
Rasterize + Shade
Medical Image
课堂判断

医生旋转三维肝脏模型、放大病灶区域时,原始器官几何一定发生改变了吗?请区分“模型变化”和“观察条件变化”。

#sec-7-3
From concept to GPU

三层过程:应用程序 → 几何处理 → 像素处理

01应用程序定义对象、相机、光源、材质与绘制任务
02几何处理坐标变换、投影、裁剪、屏幕映射
03像素处理光栅化、片元着色、深度与帧缓冲处理
04显示最终像素进入帧缓冲并输出到屏幕

下一课将把这条链真正“打开”,进入 GPU 绘制流水线。

#sec-8-1
AI as a learning tool · 34–37 min

让 AI 犯一次“听起来很对”的错误

“计算机图形学中的相机负责捕获三维世界中真实存在的光线,并将其转换为二维图像。”

合理之处

它描述了真实相机的物理直觉。

不严谨之处

虚拟相机主要定义观察与投影关系,图像由渲染算法计算,而不是物理设备直接“捕获”。

AI纠错活动2 min

请把原句改成一条适用于计算机图形学的准确表述,再让 AI 评价你修改后的版本,并判断 AI 的评价是否可信。

#sec-8-2
Bridge to neural rendering · Extension

从虚拟相机到神经场景表示:什么变了,什么没变?

经典图形学

Geometry
+
Camera
Image

Neural Rendering

Learned Scene
+
Camera Ray
Image

场景表示和绘制算法可以变化,但“场景 + 观察条件 → 图像”仍是核心问题。

#sec-9-1
Post-assessment · 37–39 min

知识检验:把概念放回正确位置

问题 你的答案
一幅合成图像的三个基本要素是什么? 对象 / ______ / ______
为什么远处物体看起来更小? 来自 ______ 投影关系
全局光照比局部光照多考虑了什么? ______ 光
虚拟相机最核心的任务是什么? 定义观察与 ______ 关系
#sec-9-2
Summary

本课内容总结:从物理成像到合成相机

01

成像三要素

对象、观察者和光共同决定图像。

02

光与颜色

光的传播、材质响应和视觉系统决定可见结果。

03

透视投影

小孔模型解释三维点如何映射到二维平面。

04

虚拟相机

用几何参数描述观察、投影与裁剪,连接到GPU流水线。

医工连接:三维器官模型 → 虚拟相机 / 投影 → 裁剪 → 成像。下一课继续追踪它如何进入 GPU,并最终成为屏幕像素。
#sec-9-3
Exit ticket · 39–40 min

用一句话解释今天最核心的关系

“三维场景变成二维图像,本质上需要 ______________________________。”

提交1 min

再勾选目前最不确定的一项:光 / 颜色 / 透视 / FOV / 合成相机 / 裁剪。

下一课:GPU 怎样真正把三角形变成屏幕像素?