ZFTurbo / Keras-RetinaNet-for-Open-Images-Challenge-2018

Code for 15th place in Kaggle Google AI Open Images - Object Detection Track
MIT License
268 stars 76 forks source link

Converting to generator CSV file #3

Open harshit4084 opened 5 years ago

harshit4084 commented 5 years ago

I have a csv file like: ''' image path, x, x+w, y , y+h ''' There is no class label. I am having a hard time understanding how to convert this into csv that this code can read. OR generator of keras-retinanet if for that i have to convert

ZFTurbo commented 5 years ago

I used the following format of files for training:

Files with annotations: validation-annotations-bbox-level-1.csv and train-annotations-bbox-level-1.csv

ImageID,Source,LabelName,Confidence,XMin,XMax,YMin,YMax,IsOccluded,IsTruncated,IsGroupOf,IsDepiction,IsInside
0001eeaf4aed83f9,freeform,/m/0cmf2,1.0,0.022463999999999998,0.9641780000000001,0.070656,0.800164,0,0,0,0,0
00075905539074f2,freeform,/m/0dzf4,1.0,0.015193,0.11075299999999999,0.251654,0.367367,0,0,0,1,0
00075905539074f2,freeform,/m/0dzf4,1.0,0.159303,0.257175,0.116079,0.21883899999999998,0,0,0,1,0
00075905539074f2,freeform,/m/0dzf4,1.0,0.33115700000000003,0.46601899999999996,0.070312,0.17739000000000002,0,0,0,1,0
00075905539074f2,freeform,/m/0dzf4,1.0,0.518423,0.644808,0.061676999999999996,0.219703,0,0,0,1,0
00075905539074f2,freeform,/m/0dzf4,1.0,0.721102,0.905286,0.187752,0.43126800000000004,0,0,0,1,0
00075905539074f2,freeform,/m/0dzf4,1.0,0.8844780000000001,0.969249,0.558207,0.797405,0,0,0,1,0
0007cebe1b2ba653,freeform,/m/035r7c,1.0,0.732595,0.8215790000000001,0.026793,0.403305,0,0,0,0,0
0007cebe1b2ba653,freeform,/m/035r7c,1.0,0.826202,0.931365,0.0068390000000000005,0.375544,0,0,0,0,0
0007cebe1b2ba653,freeform,/m/0bt9lr,1.0,0.420795,0.79402,0.181372,0.7205739999999999,0,0,0,0,0
0007cebe1b2ba653,freeform,/m/0dzf4,1.0,0.777104,0.804149,0.000132,0.01991,0,1,0,0,0
0007d6cf88afaa4a,freeform,/m/0bt9lr,1.0,0.173566,0.9025690000000001,0.216627,0.941628,0,0,0,0,0
0008e425fb49a2bf,freeform,/m/0bt9lr,1.0,0.22699699999999998,0.715052,0.11206400000000001,0.934448,0,0,0,0,0
0009bad4d8539bb4,freeform,/m/0cmf2,1.0,0.293854,0.705171,0.34031500000000003,0.515992,0,0,0,0,0
....

Columns IsOccluded,IsTruncated,IsGroupOf,IsDepiction,IsInside can be skipped they don't used.

File with classes description class-descriptions-boxable-level-1.csv:

/m/0mkg,Accordion
/m/03m3vtv,Adhesive tape
/m/0cmf2,Airplane
/m/046dlr,Alarm clock
/m/0pcr,Alpaca
/m/012n7d,Ambulance
/m/0_k2,Ant
/m/0czz2,Antelope
/m/014j1m,Apple
...

In your case you can add some dummy label like 'dummy' or label.

Then your CSV file will be like :

ImageID,Source,LabelName,Confidence,XMin,XMax,YMin,YMax
0001eeaf4aed83f9,freeform,dummy,1.0,0.022,0.9641,0.07,0.8

And your description.csv file:

dummy,Dummy