MS COCO:Microsoft Common Objects in Context
官網:http://cocodataset.org/#download
用途:CV方向通用目標檢測或者語義分割的benchmark
這篇博客寫給和我一樣的新手(被各種複雜的一逼的github代碼看花了眼),能夠快速構建屬於自己的pipeline。
本文以 COCO2017 做 Object Detection 爲例:
- 第一步:下載數據
COCO API # coco的API,根據github中的提示配置基於coco的python API
2017 Train images [118K/18GB]
2017 Val images [5K/1GB]
2017 Test images [41K/6GB] # 圖像
2017 Train/Val annotations [241MB]
2017 Testing Image info [1MB] # 註釋 --根據自己的目標(檢測、分割等)去下載
- 第二步:整理數據
COCO數據集下載好後,將圖像(train2017\val2017\test2017)和標註(annotations)放在一起。
注意:annotation中包含所有的標註信息,這裏我把目標檢測用到的標註: instances_train2017.json和instances_val2017.json
以及測試用的image_info_test-dev2017.json放在自己用的文件夾裏,其他不要。
coco
`-- |-- annotations
| |-- instances_train2017.json
| |-- instances_val2017.json
| |-- image_info_test-dev2017.json
|--- train2017
|--- val2017
`--- test2017
- 第三步,理解數據
1. train2017\val2017\test2017中都是圖片,圖片名稱就是其id,很好理解。
2. annotations部分:
(1)inatance_train2017.json、instance_val2017.json兩個json文件內容如何理解:
http://cocodataset.org/#format-data
可以打開文件對照着看,這裏安利Notepad++,可以打開各種不知道是什麼亂七八糟的文件。
(2)如何進行test:
http://cocodataset.org/#guidelines(其實2017 Testing Image info [1MB]下載後有兩個test_info文件,這兩個的區別就在這個鏈接裏說明,論文中的結果一般採用test-dev)
http://cocodataset.org/#format-results
注:這部分我直接放了官網的鏈接,因爲COCO官網解釋的最清楚。估計有很多朋友和我一樣英語不好,就想着有中文比較清楚的教程,然而中文搜索各種解釋其實都是對官網的照抄翻譯,還有的會漏很多細節,與其把精力放在無用的查找上,還不如硬着頭皮去看官網,堅持住就是豁然開朗。
第四步,構建pipeline調用數據