-
Notifications
You must be signed in to change notification settings - Fork 9
Road Damage Dataset
Takeshi Ishita edited this page Mar 10, 2018
·
14 revisions
入手元 https://s3-ap-northeast-1.amazonaws.com/mycityreport/RoadDamageDataset.tar.gz
location | train | val |
---|---|---|
Adachi | 1320 | 330 |
Chiba | 373 | 94 |
Ichihara | 203 | 51 |
Muroran | 1716 | 429 |
Nagakute | 1092 | 274 |
Numazu | 1625 | 407 |
Sumida | 911 | 228 |
All | 7240 | 1813 |
以下の図のようにクラス分けされている.
RoadDamageDataset
|-- Adachi
| |-- Annotations # アノテーションがXML形式で格納されている
| |-- ImageSets
| | `-- Main # JPEGImages/Annotations 内のどのデータが
| | # train/val になるかを指定している
| |-- JPEGImages # 画像データが入っている
| `-- labels # テキストファイルが入っているが学習にもテストにも使っていない
|-- Chiba # 他の地区についてもフォーマットは同じ
| |-- ...
|-- Ichihara
| |-- ...
|-- Muroran
| |-- ...
|-- Nagakute
| |-- ...
|-- Sumida
| |-- ...
|-- Numazu
| |-- Annotations
| |-- Annotations-original # Numazuにだけoriginalのアノテーションが含まれているが
| | # こちらは学習には使っていない
| |-- ImageSets
| | `-- Main
| |-- JPEGImages
| `-- labels
|-- All # 全地区のデータを統合して格納している
|-- Annotations
|-- ImageSets
| `-- Main
|-- JPEGImages
`-- labels
RoadDamageDataset/Adachi/
|-- Annotations
| |-- Adachi_20170906093835.xml
| |-- Adachi_20170906093840.xml
| |-- ...
|-- ImageSets
| `-- Main
| |-- D00_train.txt
| |-- D00_trainval.txt
| |-- D00_val.txt
| |-- D01_{train,trainval,val}.txt
| |-- D10_{train,trainval,val}.txt
| |-- D11_{train,trainval,val}.txt
| |-- D20_{train,trainval,val}.txt
| |-- D40_{train,trainval,val}.txt
| |-- D43_{train,trainval,val}.txt
| |-- D44_{train,trainval,val}.txt
| |-- train.txt # trainデータのファイルのIDの一覧
| |-- val.txt # valデータのファイルのIDの一覧
| |-- trainval.txt # trainとval
| |-- train_train.txt
| |-- train_trainval.txt
| `-- train_val.txt
|-- JPEGImages
| |-- Adachi_20170906093835.jpg
| |-- Adachi_20170906093840.jpg
| |-- ...
`-- labels
|-- Adachi_20170906093835.txt
|-- Adachi_20170906093840.txt
|-- ...
train.txt
とval.txt
によってtrainとvalそれぞれのアノテーションファイルと画像ファイルが指定される.
train.txt
Adachi_20170908100929
Adachi_20170907134444
...
例えばこの場合
JPEGImages/Adachi_20170908100929.jpg
JPEGImages/Adachi_20170907134444.jpg
がtrainの画像データとして,
Annotations/Adachi_20170908100929.xml
Annotations/Adachi_20170907134444.xml
が対応するアノテーションデータとして用いられる.
val.txt
Adachi_20170908142224
Adachi_20170906153135
...
例えばこの場合
JPEGImages/Adachi_20170908142224.jpg
JPEGImages/Adachi_20170906153135.jpg
がvalの画像データとして,
Annotations/Adachi_20170908142224.xml
Annotations/Adachi_20170906153135.xml
が対応するアノテーションデータとして用いられる.
ファイルには画像ファイル名と画像のサイズ,bounding boxの位置,そのbounding box内にある損傷の種類が記入されている.
<annotation>
<folder>Adachi</folder>
<filename>Adachi_20170912142057.jpg</filename>
<size>
<width>600</width>
<height>600</height>
</size>
<segmented>0</segmented>
<object>
<name>D10</name>
<bndbox>
<xmin>474</xmin>
<ymin>420</ymin>
<xmax>595</xmax>
<ymax>476</ymax>
</bndbox>
</object>
<object>
<name>D01</name>
<bndbox>
<xmin>11</xmin>
<ymin>383</ymin>
<xmax>206</xmax>
<ymax>552</ymax>
</bndbox>
</object>
</annotation>
ファイルに書き込まれているbounding boxの座標はは左上を(1, 1)としているため,コード内で左上が(0, 0)になるように補正している.
[int(bndbox_anno.find(tag).text) - 1 for tag in ('ymin', 'xmin', 'ymax', 'xmax')]
bounding boxとラベルを表示すると次のようになる.
表示のためにスコアをnanに設定しているが,predictionの際にはここにconfidenceが書き込まれる.