計算機視覺的任務很多,有圖像分類、目標檢測、語義分割、實例分割和全景分割等,那它們的區別是什么呢?
1、Image Classification(圖像分類)
圖像分類(下圖左)就是對圖像判斷出所屬的分類,比如在學習分類中數據集有人(person)、羊(sheep)、狗(dog)和貓(cat)四種,圖像分類要求給定一個圖片輸出圖片里含有哪些分類,比如下圖的例子是含有person、sheep和dog三種。
2、Object detection(目標檢測)
目標檢測(上圖右)簡單來說就是圖片里面有什么?分別在哪里?(把它們用矩形框框住)
目前常用的目標檢測算法有Faster R-CNN和基於YOLO的目標檢測的算法
3、semantic segmentation(語義分割)
通常意義上的目標分割指的就是語義分割
語義分割(下圖左)就是需要區分到圖中每一點像素點,而不僅僅是矩形框框住了。但是同一物體的不同實例不需要單獨分割出來。對下圖左,標注為人,羊,狗,草地。而不需要羊1,羊2,羊3,羊4,羊5等。
4、Instance segmentation(實例分割)
實例分割(上圖右)其實就是目標檢測和語義分割的結合。相對目標檢測的邊界框,實例分割可精確到物體的邊緣;相對語義分割,實例分割需要標注出圖上同一物體的不同個體(羊1,羊2,羊3...)
目前常用的實例分割算法是Mask R-CNN。
Mask R-CNN 通過向 Faster R-CNN 添加一個分支來進行像素級分割,該分支輸出一個二進制掩碼,該掩碼表示給定像素是否為目標對象的一部分:該分支是基於卷積神經網絡特征映射的全卷積網絡。將給定的卷積神經網絡特征映射作為輸入,輸出為一個矩陣,其中像素屬於該對象的所有位置用 1 表示,其他位置則用 0 表示,這就是二進制掩碼。
一旦生成這些掩碼, Mask R-CNN 將 RoIAlign 與來自 Faster R-CNN 的分類和邊界框相結合,以便進行精確的分割:
5、Panoramic segmentation(全景分割)
全景分割是語義分割和實例分割的結合。跟實例分割不同的是:實例分割只對圖像中的object進行檢測,並對檢測到的object進行分割,而全景分割是對圖中的所有物體包括背景都要進行檢測和分割。