Computer Vision, from first principles
计算机视觉,从第一性原理出发
A linearized tour from image formation to production CV systems. The goal is coverage without memorization: understand what signal is in the pixels, what invariances the model needs, which task head follows, and which failure mode matters.
一条从图像成像到生产级计算机视觉系统的线性化路线。目标是覆盖全面而无需死记硬背:理解像素里有什么信号、模型需要哪些不变性、后面接什么任务头,以及哪种失效模式才重要。
The first-principles frame
第一性原理框架
A camera turns a 3D world into a 2D grid of noisy measurements. CV asks a model to recover useful structure from that grid while ignoring nuisance variation: translation, scale, viewpoint, illumination, occlusion, blur, compression, sensor noise, and dataset bias. Every interview question reduces to four things.
相机把一个三维世界变成一个带噪声的二维测量网格。计算机视觉要求模型从这个网格中恢复出有用的结构,同时忽略那些无关的干扰变化:平移、尺度、视角、光照、遮挡、模糊、压缩、传感器噪声以及数据集偏置。每一道面试题都可归结为四件事。
Why this order
为什么是这个顺序
The order starts with the measurement process, not with ResNet. Pixels and filtering explain why edges and local features are useful. Classical matching and camera geometry explain what deep networks eventually learn to approximate, and why 2D shortcuts fail when viewpoint changes. CNNs, training, and classification form the backbone layer. Detection, segmentation, pose, retrieval, transformers, self-supervision, multimodal models, video, generation, and deployment then become task-specific extensions of the same representation problem.
这个顺序从测量过程开始,而不是从 ResNet 开始。像素与滤波解释了为什么边缘和局部特征有用。经典匹配与相机几何解释了深度网络最终学着去逼近的是什么,以及为什么当视角改变时二维的捷径会失效。CNN、训练与分类构成了骨干层。检测、分割、姿态、检索、Transformer、自监督、多模态模型、视频、生成与部署,随后都成为同一个表示问题的、面向具体任务的扩展。
| Stage阶段 | Lessons课程 | What you should be able to do你应当能够做到的 |
|---|---|---|
| Measurement测量 | 01-02 | Reason from sampling, color, convolution, gradients, edges, and aliasing.从采样、颜色、卷积、梯度、边缘和混叠出发进行推理。 |
| Geometry几何 | 03-05 | Explain features, matching, camera projection, calibration, stereo, depth, and SLAM failure modes.解释特征、匹配、相机投影、标定、立体视觉、深度以及 SLAM 的失效模式。 |
| Backbones骨干网络 | 06-08 | Choose and train CNN classifiers with the right architecture, augmentation, loss, and metric.用合适的架构、数据增强、损失和评价指标来选择并训练 CNN 分类器。 |
| Spatial tasks空间任务 | 09-11 | Turn features into boxes, masks, keypoints, poses, and tracks.把特征转化为边界框、掩码、关键点、姿态和轨迹。 |
| Representations表示 | 12-15 | Build embedding, transformer, self-supervised, and vision-language answers from first principles.从第一性原理出发,构建关于嵌入、Transformer、自监督和视觉-语言的答案。 |
| Dynamics and synthesis动态与合成 | 16-17 | Handle temporal signals and generative image models.处理时序信号和生成式图像模型。 |
| Restoration复原 | 18 | Recover a clean image from a degraded one — denoise, super-resolve, deblur, inpaint — plus the camera ISP and computational photography.从退化图像中恢复出干净的图像——去噪、超分辨率、去模糊、图像修复——外加相机 ISP 和计算摄影。 |
| Production生产 | 19 | Evaluate, compress, serve, monitor, and design CV systems under real constraints.在真实约束下评估、压缩、部署、监控并设计计算机视觉系统。 |
The lessons
课程列表
How to use this
如何使用本课程
- Read it linearly once. Detection assumes feature pyramids. Feature pyramids assume receptive fields. Receptive fields assume convolution.先线性地通读一遍。检测以特征金字塔为前提。特征金字塔以感受野为前提。感受野以卷积为前提。
- Answer every question in task form. "Use ResNet" is weak. "This is a low-latency detector with small objects, so I need high-resolution features and an FPN" is the right level.用任务的语言回答每一道题。"用 ResNet"太弱了。"这是一个低延迟、带小目标的检测器,所以我需要高分辨率特征和一个 FPN"才是恰当的层次。
- Practice failure modes. CV systems fail on lighting, occlusion, viewpoint, domain shift, duplicates, class imbalance, annotation noise, and thresholds that do not match the business cost.练习各种失效模式。计算机视觉系统会在光照、遮挡、视角、域偏移、重复样本、类别不平衡、标注噪声,以及与业务成本不匹配的阈值上翻车。
- Connect model and system constraints. A 60 FPS camera pipeline, offline product matching, radiology triage, and document OCR need different trade-offs even when they share a backbone.把模型与系统约束联系起来。一条 60 FPS 的相机流水线、离线商品匹配、放射影像分诊和文档 OCR,即便共用同一个骨干网络,也需要不同的取舍。