- Published on
计算机视觉五大任务
五种计算机视觉任务详解
| 任务 | 英文全称 | 输出内容 | 典型应用 |
|---|---|---|---|
| detect | Object Detection | 边界框 + 类别 | 行人检测、车辆识别 |
| segment | Instance/Semantic Segmentation | 像素级掩码 | 医学影像、自动驾驶 |
| pose | Pose Estimation | 关键点坐标 | 动作识别、运动分析 |
| classify | Image Classification | 类别标签 | 图片分类、垃圾过滤 |
| obb | Oriented Bounding Box | 旋转框 + 类别 | 航拍分析、文本检测 |
1. Detect(目标检测)
做什么:找出图片中有什么物体,以及它们的位置。
输出:每个物体用一个矩形框标出位置,并给出类别标签。
输出: [猫, 置信度0.95, 位置(x1,y1,x2,y2)]
[狗, 置信度0.92, 位置(x3,y3,x4,y4)]
YOLO 最擅长的就是它。
2. Segment(分割)
做什么:不仅找出物体在哪,还要精确到每个像素属于哪个物体。
两种类型:
- 语义分割:把所有像素分类(比如:这是路、这是车、这是天空)
- 实例分割:区分同类的不同个体(比如:车A、车B、车C)
输出:每个物体的轮廓掩码(像抠图一样)。
输出: 猫 → 像素集合 { (120,50), (121,50), ... }
狗 → 像素集合 { (200,80), (201,80), ... }
应用:自动驾驶(区分道路、行人、车辆)、医学影像(肿瘤轮廓)。
3. Pose(姿态估计)
做什么:检测人体或物体的关键点(关节、五官等),判断姿势。
输出:一组关键点坐标,通常用骨架连线表示。
人体姿态:
鼻子(150, 80),
左肩(130, 100), 右肩(170, 100),
左肘(110, 130), 右肘(190, 130),
左腕(100, 160), 右腕(200, 160),
...
应用:健身动作纠正、安防异常行为检测、游戏体感交互。
4. Classify(分类)
做什么:给整张图片打一个标签,判断它属于哪个类别。
输出:一个类别标签 + 置信度。
输入: 一张猫的图片
输出: 猫 (置信度 0.98)
与 detect 的区别:
- classify:这张图里有什么?→ "猫"
- detect:猫在哪?→ 给出框
应用:图片内容审核、医学影像分类(正常/病变)、产品瑕疵判断。
5. OBB(有向边界框)
做什么:检测倾斜物体,用可旋转的矩形框紧贴物体。
输出:中心点 + 宽 + 高 + 旋转角度。
输出: [x, y, width, height, angle, confidence, class]
飞机, 角度 0.78 弧度
与 detect 的区别:
- detect:框永远是正的,倾斜物体会框进很多背景
- obb:框可以旋转,紧贴物体实际角度
应用:航拍图像(斜停的飞机/船舶)、场景文字检测(倾斜的文本行)。
对比总结表
| 任务 | 问的问题 | 输出维度 | 复杂度 |
|---|---|---|---|
| classify | 这是什么? | 1 个标签 | 低 |
| detect | 有什么?在哪? | N 个框 | 中 |
| segment | 每个像素是什么? | 像素级掩码 | 高 |
| pose | 姿势是什么? | N 个关键点 | 中高 |
| obb | 倾斜物体在哪? | N 个旋转框 | 中 |
一句话总结
- classify:给图片分类
- detect:框出物体位置
- segment:抠出物体轮廓
- pose:画出人体骨架
- obb:框且旋转,专治倾斜物体
THE END