计算机视觉可以大致有以下几个方向(更详细的可以参考papers with code):
- 图像分类
- 目标检测
- 图像分割
- 图像生成
- 风格迁移
- 超分辨率
1. 图像分类
图像分类是是视觉识别中的一项基本任务,目的是分辨整个图像并将其分类。
1.1 常用数据集
- MNIST:手写数字数据集,包含 60000 张训练集和 10000 张测试集
- CIFAR-10:包含飞机、汽车、鸟、猫等10个类别,每个类别包含 5000 张训练图像和 1000 张测试图像
- CIFAR-100:包含 100 个类,每个类别有 500 张训练图像和 100 张测试图像
2. 目标检测
目标检测的目的是找到并识别图像中的物体。如下图所示,一张图中包含多个物体,目标检测的任务是识别图像中不同物体的位置和边界,并将对象分类为各自的类别。
2.1 常用数据集
- COCO
- VOC
2.2 常用方法
- one-state(优先考虑速度):YOLO、SSD、Retina Net……
- two-state(优先考虑精度):R-CNN、Fast R-CNN、Faster R-CNN、Mask R-CNN……
3.图像分割
基于目标检测,不仅需要检测出图像中存在的物体,还需要将图像中检测到的物体分割出来。
主要有以下三种:
- 语义分割:在像素级别上的分类,将属于同一类的像素归为一类
- 实例分割:分割出每个实例物体,将属于同一个体的像素归为一类,比如对图片中的多只狗都分割出来,并识别出来它们是不同的个体,而不仅仅是简单的对其进行分类为狗
- 全景分割:可以表示为语义分割和实例分割的组合,其中图像中每个实例都被分割并预测其身份
3.1 常用数据集
- COCO
- VOC
3.2 常用方法
- 语义分割:FCN、U-Net、Mask R-CNN……
- 实例分割:R-CNN、Faster R-CNN、Mask R-CNN
注:
图像分类重在分类,解决“是什么”的问题;
检测解决“在哪里,是什么”的问题;
分割解决“每一个像素属于哪个类别或物体”的问题。
4. 图像生成
根据已有图片生成新的图片。
5. 风格迁移
将图像A的图像风格作用到图像B上,生成新的图片即符合A的风格又保留了B的内容。
6. 超分辨率
提高原始图像的分辨率,从低分辨率图片中生成丢失的高频细节来提高图像或视频的分辨率。目标是生成比输入图像分辨率更高的输出图像,同时保留原始内容和结构。