
视频元信息
- 课程来源:吴恩达深度学习专项课程(Deep Learning Specialization)
- 所属章节:卷积神经网络(CNN)第三周 —— 目标检测(Object Detection)
- 本节主题:地标检测(Landmark Detection)
- 视频时长:约 5 分 50 秒
- 语言:英文讲解,中英字幕
内容摘要(TL;DR)
本节承接上一节的边界框(Bounding Box)定位,讲解如何让神经网络输出图像中关键点(地标)的坐标。以人脸识别为例,网络可输出眼角、嘴角、鼻梁、下颌线等 64 个关键点的 (x, y) 坐标,加上"是否有人脸"共 129 个输出单元。核心要点是地标身份在不同图像中必须保持一致。该技术是情绪识别、AR 滤镜、人体姿态估计等应用的基础模块。
一、从边界框到地标检测 [00:00]
上一节介绍了让神经网络输出 4 个数字 BX、BY、BH、BW 来指定目标边界框的位置。
回顾:边界框定位——网络输出 4 个参数描述一个矩形框,用于定位单个目标。
理解:地标检测是边界框定位的自然延伸——边界框用 4 个数字描述"一个矩形",而地标检测用 2N 个数字描述"N 个关键点"。两者本质都是"让网络输出坐标数值"的回归问题。
在更一般的情况下,可以让神经网络直接输出图像中重要点的 (x, y) 坐标,这些点被称为地标(landmarks)。
二、人脸地标检测示例 [00:26]
2.1 单个眼角坐标 [00:30]
以人脸识别应用为例,如果只想知道某人眼角的位置:
- 该点有一个 x 坐标和一个 y 坐标
- 让网络的最后一层额外输出两个数字 LX、LY,即可给出眼角坐标
推导:网络原本做分类(输出是否为人脸的概率),现在改为多任务输出——既做分类又做回归,这是多任务学习(Multi-task Learning)的典型结构。
2.2 双眼四角坐标 [00:56]
如果要标出双眼的四个眼角(从左到右依次为第 1、2、3、4 个点):
- 修改网络输出为 L1X, L1Y, L2X, L2Y, L3X, L3Y, L4X, L4Y
- 网络即可输出这四个点的估计位置
2.3 扩展到 64 个面部地标 [01:29]
如果不止 4 个点,而是想输出:
- 眼睛周围多个关键点
- 嘴巴周围的关键点(用于提取嘴型,判断微笑或皱眉)
- 鼻子边缘的关键点
- 下颌线(jaw line)的关键点
可以定义一个固定数量的地标,比如 64 个面部地标。只要选定地标数量并生成包含所有地标的标注训练集,网络就能输出人脸所有关键地标的坐标。
三、网络结构与输出维度 [02:19]
以 64 个地标为例,网络结构如下:
- 输入:人脸图像
- 主干:卷积网络(ConvNet),提取特征
- 输出层:共 129 个输出单元
- 1 个单元:是否有人脸(0 或 1)
- 128 个单元:64 个地标 × 2(每个地标一对 x, y 坐标)
- 即 0,1,x, 0,1,y, …, 0,64,x, 0,64,y
考点:输出维度计算
- 输出单元数 = 1(是否有脸)+ 2 × 地标数量
- 64 个地标 → 1 + 64×2 = 129 个输出单元
- 易错点:不要漏掉"是否有人脸"那 1 个分类单元。
理解:这里网络同时完成两个任务——分类(有无脸)和回归(坐标预测)。吴恩达用 "0 to stand for a landmark" 表示 0 是地标编号起点,即 L0 到 L64 的记法。
四、应用场景 [03:14]
人脸地标检测是以下应用的基础构建模块(basic building block):
- 情绪识别:通过嘴型、眉眼形状判断情绪
- AR 增强现实滤镜:如 Snapchat 滤镜在脸上画皇冠、帽子等特效
- 计算机图形特效:基于面部关键点叠加各种装饰效果
拓展:现代人脸关键点检测已发展出 68 点(Dlib)、98 点、468 点(MediaPipe Face Mesh)等标准。MediaPipe 的 468 点模型可实现实时高精度面部网格重建,广泛用于直播美颜、虚拟形象驱动。
五、训练数据与标注成本 [03:50]
重要提醒:地标检测需要大量人工标注数据
- 需要一组图像及对应的标签 Y
- 必须有人逐一辛苦地标注(laboriously annotate)所有地标
- 标注成本高,是落地应用的主要瓶颈之一
思考:数据标注的代价正是为什么许多团队选择用预训练模型 + 微调,而非从零训练。也可用半自动标注(先用模型预测,人工修正)降低标注成本。
六、人体姿态检测示例 [04:06]
另一个应用是人体姿态检测(pose detection):
- 定义若干关键位置,如:
- 胸部中点
- 左肩、左肘、左腕
- 等
- 网络输出这些关键点的坐标,即可得到人体姿态
推导:若用 32 个坐标(即 16 个关键点,每点 2 个坐标),可记为 L1X, L1Y 到 L32X, L32Y。
考点:姿态估计的关键点数量
- 32 个坐标 = 16 个关键点 × 2
- 常见人体姿态模型(如 OpenPose)使用 18 或 25 个关键点
拓展:OpenPose 是经典的人体姿态估计模型,可同时检测多人、输出 18 个身体关键点 + 手部 21 点 + 面部 70 点。其核心是 Part Affinity Fields(PAF),解决"哪个关节点属于哪个人"的匹配问题。
七、核心原则:地标身份必须一致 [05:13]
这是本节最重要的注意事项:
易错点:地标编号的身份在不同图像中必须保持一致!
- 地标 1 永远是同一个位置(如某个眼角)
- 地标 2 永远是另一个固定位置(如另一个眼角)
- 地标 3、4……依此类推
- 标签在不同图像之间必须保持语义一致
理解:如果标注不一致(比如图像 A 的地标 1 是左眼角,图像 B 的地标 1 是右嘴角),网络将无法学到有意义的映射,训练必然失败。这是标注规范中必须严格定义的部分。
只要能够雇人标注或自己标注足够大的数据集,网络就能输出所有这些地标,用于:
- 人体姿态分析
- 从图片中识别情绪
- 其他有趣的效果
八、本节小结与下节预告 [05:50]
- 地标检测 = 让网络输出图像中关键点的 (x, y) 坐标
- 输出维度 = 1(有无目标)+ 2 × 地标数量
- 关键约束:地标身份跨图像一致
- 应用:人脸识别、情绪识别、AR 滤镜、姿态估计
下一节:将这些构建模块组合起来,开始搭建目标检测(Object Detection)系统。
关键标签 / 关键词
地标检测 #LandmarkDetection #目标检测 #ObjectDetection #人脸识别 #FaceRecognition #关键点检测 #KeypointDetection #姿态估计 #PoseEstimation #神经网络输出维度 #多任务学习 #AR滤镜 #吴恩达 #深度学习 #CNN #计算机视觉 #数据标注 #边界框定位
生成时间:2026-10-11 00:07:49 生成平台:VideoNote www.xygy.top