1. 程式人生 > >MS COCO資料集介紹

MS COCO資料集介紹

本文直接從實用型角度介紹下coco資料集。

以coco2014為例,下載資源以後,得到以下目錄:

annotations中存放的是一大堆json檔案:

(注,帶person和face的是我自己製作的json檔案,截圖時懶得刪除,可以忽略,想了解如何製作的,請看我的下一篇部落格)

train2014和val2014中儲存的是jpg圖片,就不放截圖了,點開比較卡,圖片太多了,載入比較慢。

接下來著重講一下json中儲存的東西,老規矩,先上圖:

這是用來train的json中儲存的東西,首先json儲存的是一個大的字典:

info這個key指向的字典是一些基本資訊,包括時間,版本,貢獻者,網址連結等不重要,可以忽略。

images這個key指向的列表(注意是列表,上面info指向的是字典)是圖片資訊,列表中的每一個字典下儲存一張圖片的資訊,license、coco_url、data_captured和flickr_url這幾個key指向的資訊大概瞭解下就行,在你已經下載到原圖jpg檔案的情況下,這些資訊基本沒用。接下來就是比較重要的幾個資訊了,首先是file_name,指向的是一個字串,是jpg的檔名;其次是height和width指向的是該圖片的高和寬,id指向的數字可能讓大家比較迷惑,這個資訊非常至關鍵,這一串數字是每張圖片特有的一個標誌,數字不重複,可以看作是圖片的身份資訊,就像身份證那一串數字一樣。

(注:接下來的圖是images這個字典下面的一個字典。所以繼續上圖,乖乖,找到這個結合部真不容易,這個json實在是太大了,哭哭)

下一個License這個key指向的資訊也可以忽略不計,就是途中被我選中標黑的那個部分。

再下一個annotations這個key是本json中最最最最最重要的一個部分了。該key指向的是一個list,然後包含多個字典,每個字典包含一個物體分割的資訊。看該列表中第一個字典,segmentation指向是的一個套著兩個list的東西,裡面一堆數字的含義是畫素級分割得到的物體邊緣座標(有心的同學會發現這裡面的數字個數都是偶數,因為座標是成對出現的);area指向該segmentation的面積,iscrowd目前來看都指向0,表示沒有重疊吧,有重疊指向1(我的理解是這樣,可能有偏差,不過影響不大);image_id就是前面images中儲存的id !

讀取json資訊的時候會用到;bbox指向的就是物體的框;category_id指向的數字代表類別(這裡說一下,有些部落格說是有90類,但是從coco2014上來看,只是category_id標定到了90這個數字而已,但是實際類數只有80類,因為,1-90這數字中有一些是跳過的,即有些數字沒有);id不同於images中的id,images中的id是每幅圖片的身份編號,而此處的id是每個框的身份編號,注意區分。

最後一部分依然上圖:

最後categories這個key指向的是每個類別的名稱和編號。