VSainteuf / pytorch-psetae

PyTorch implementation of the model presented in "Satellite Image Time Series Classification with Pixel-Set Encoders and Temporal Self-Attention"
MIT License
178 stars 39 forks source link

Question #9

Closed wangyuxx closed 3 years ago

wangyuxx commented 3 years ago

Hi, VSainteuf, I'm really interested in your project. But I don't understand the reference data 'rpg_2017_T31TFM.geojson' in the ./preprocessing/dataset_preparation.py file. Could you briefly introduce the data content or give a reference? I really hope to get your reply. Thank you very much. 😊

VSainteuf commented 3 years ago

Hi wangyuxx! The file 'rpg_2017_T31TFM.geojson' is the contains the annotations in the form of georeferenced polygons and their associated crop type. It's made publicly available by the French payment agency here : https://www.data.gouv.fr/en/datasets/rpg-2017-registre-parcellaire-graphique/

Hope this helps

wangyuxx commented 3 years ago

It's helpful! thanks!

priti28192 commented 2 years ago

Hi @VSainteuf, I downloaded the rpg_2017.geojson file provided at https://www.data.gouv.fr/en/datasets/rpg-2017-registre-parcellaire-graphique/, but it seems like that it is not falling in the Sentinel-2 T31TFM tile region (shown in pink) as shown in the picture attached. Tile_T31TFM I am not sure if I am downloading the correct crop parcel file. I am trying to download the corresponding Sentinel-2 tiles for the tile T31TFM to rebuild the dataset. Can you please guide me how I can go forward with it? Thank you very much for your help.

VSainteuf commented 2 years ago

Hi, yes indeed it seems that this link does not point to the correct part of the RPG. You can also download the RPG file from this page. The links are ftp links, so you need smth like FileZilla to access them, and the login info is contained in the link. For example: ftp://RPG_ext:quoojaicaiqu6ahD@ftp3.ign.fr/RPG_2-0__SHP_LAMB93_FR-2017_2017-01-01.7z.001 username : RPG_ext pwd = quo***D

priti28192 commented 2 years ago

Hi @VSainteuf, Thank you very much for your reply. Am I correct in my understanding that I need to download only "RPG Metropolitan France 2017 edition" (ftp://RPG_ext:quoojaicaiqu6ahD@ftp3.ign.fr/RPG_2-0__SHP_LAMB93_FR-2017_2017-01-01.7z.001) to get the crop parcels for the tile 31TFM. I tried with the FileZilla to download the above file, however it is a .7z.001 file and when I try to extract it, somehow 7 zip expects there should be other parts of the compressed file. Can you please let me know how I should proceed with that? Once again, thanks a lot for all the help.

Kind regards, Priti

VSainteuf commented 2 years ago

Hmm, can you try simply changing the file extension from .7z.001 to .7z and see if it decompresses successfully?

priti28192 commented 2 years ago

Hi @VSainteuf , I tried that using 7 zip, but it is throwing error and not able to decompress successfully.

Kind regards, Priti

VSainteuf commented 2 years ago

Ok sorry I don't have a simple solution then, I will get in touch with the relevant people to see what they can do.

priti28192 commented 2 years ago

Hi @VSainteuf , Thank you for your help. Please let me know if and when you are able to get your hands on it.

Kind regards, Priti

priti28192 commented 2 years ago

Hi @VSainteuf ,

I was finally able to decompress the file successfully. Apparently, the download did not complete the last time and the file was corrupted which led to unsuccessful decompression. I had one more question though. The file "RPG Metropolitan France 2017 edition" seems to contain the shapefiles for the whole of France. Did you just crop this dataset to include only tile 31TFM or I should look for any particular region on https://geoservices.ign.fr/rpg#telechargementrpg2017. Once again, thanks a lot for all the help you have been providing.

Kind regards, Priti

VSainteuf commented 2 years ago

Good to hear! yes exactly we just cropped tile 31TFM from the full dataset. You can find the tile here.

priti28192 commented 2 years ago

Hi @VSainteuf ,

Sorry for bothering you again. It seems like I have unending questions. I cropped the 31TFM out of the "RPG Metropolitan France 2017". This is how it looks image The legend indicates the "CODE_GROUP", However I can see that there are 21 legends present in it which indicates that it is from the label_44class and the maximum "CODE_GROUP" value I can find is 28. However, the crop parcels in S2-2017-T31TFM-PixelSet dataset contains CODE_GROUP upto 43 as seen in labels.json file of the META folder as shown below. image It would be great if you can provide any information regarding this.

Also, are the field ids provided in labels.json taken from the ID_PARCEL column of the RPG file?

Kind regards, Priti

VSainteuf commented 2 years ago

Hi @priti28192! Yes normally the field ids are the same as the ID_PARCELS of the RPG. Then regarding the classes, we indeed used another class grouping than the one in the RPG. I attach below the class hierarchical tree that we used. It starts from the CODE_CULTU labels and groups them in successive hierarchical levels. If I remember correctly the 19class and 44class labels correspond to the second and third level of this hierarchy.

{
    "Parcelle": {
        "Indefini": {
            "Indefini": {
                "Indefini": {
                    "Bande admissible le long d'une foret avec production": 0,
                    "Jachere noire": 1
                }
            }
        },
        "Prairies": {
            "Herbe predominante": {
                "Herbe predominante": {
                    "Bande admissible le long d'une foret sans production": 2,
                    "Bordure de champ": 3,
                    "Bourrache de 5 ans ou moins": 4,
                    "Brome de 5 ans ou moins": 5,
                    "Bande tampon": 6,
                    "Dactyle de 5 ans ou moins": 7,
                    "Fetuque de 5 ans ou moins": 8,
                    "Fleole de 5 ans ou moins": 9,
                    "Autre graminee fourragere pure de 5 ans ou moins": 10,
                    "Jachere de 5 ans ou moins": 11,
                    "Jachere de 6 ans ou plus": 12,
                    "Jachere de 6 ans ou plus declaree comme Surface d'interet ecologique": 13,
                    "Melange de legumineuses preponderantes au semis et de graminees fourrageres de 5 ans ou moins": 14,
                    "Paturin commun de 5 ans ou moins": 15,
                    "Phacelie de 5 ans ou moins": 16,
                    "Prairie permanente - herbe predominante (ressources fourrageres ligneuses absentes ou peu presentes)": 17,
                    "Prairie en rotation longue (6 ans ou plus)": 18,
                    "Autre prairie temporaire de 5 ans ou moins": 19,
                    "Ray-grass de 5 ans ou moins": 20,
                    "Surface pastorale - herbe predominante et ressources fourrageres ligneuses presentes": 21
                }
            }
        },
        "Terre Arrable": {
            "Cereales": {
                "Ble dur de printemps": {
                    "Ble dur de printemps": 22,
                    "Ble dur de printemps seme tardivement (apres le 31/05)": 23
                },
                "Ble dur d'hiver": {
                    "Ble dur d'hiver": 24
                },
                "Cereales de printemps": {
                    "Avoine de printemps": 25,
                    "Ble tendre de printemps": 26,
                    "Autre cereale de printemps de genre Avena": 27,
                    "Autre cereale de printemps de genre Hordeum": 28,
                    "Autre cereale de printemps de genre Secale": 29,
                    "Autre cereale de printemps de genre Triticum": 30,
                    "Orge de printemps": 31,
                    "Seigle de printemps": 32,
                    "Triticale de printemps": 33
                },
                "Cereales d'ete": {
                    "Mais doux": 34,
                    "Mais ensilage": 35,
                    "Mais": 36
                },
                "Cereales d'hiver": {
                    "Avoine d'hiver": 37,
                    "Ble tendre d'hiver": 38,
                    "Autre cereale d'hiver de genre Avena": 39,
                    "Autre cereale d'hiver de genre Hordeum": 40,
                    "Autre cereale d'hiver de genre Secale": 41,
                    "Autre cereale d'hiver de genre Triticum": 42,
                    "Orge d'hiver": 43,
                    "Seigle d'hiver": 44,
                    "Triticale d'hiver": 45
                },
                "Mais et zea": {
                    "Autre cereale de printemps de genre Zea": 46
                },
                "Sorgho/millet/moha": {
                    "Autre cereale de genre Sorghum": 47,
                    "Millet": 48,
                    "Moha": 49,
                    "Sorgho": 50
                },
                "Cereales": {
                    "Autre cereale d'un autre genre": 51,
                    "Autre cereale de genre Panicum": 52,
                    "Epeautre": 53,
                    "Melange de cereales": 54
                }
            },
            "Chanvre": {
                "Chanvre": {
                    "Chanvre": 57
                }
            },
            "Legumineuses fourrageres": {
                "Legumineuses fourrageres": {
                    "Feverole fourragere implantee pour la recolte 2015": 58,
                    "Feverole fourragere implantee pour la recolte 2016": 59,
                    "Feverole fourragere implantee pour la recolte 2017": 60,
                    "Autre feverole fourragere": 61,
                    "Gesse": 62,
                    "Jarosse implantee pour la recolte 2015": 63,
                    "Jarosse implantee pour la recolte 2016": 64,
                    "Jarosse implantee pour la recolte 2017": 65,
                    "Jarosse deshydratee": 66,
                    "Autre jarosse": 67,
                    "Lentille fourragere": 68,
                    "Lotier": 69,
                    "Luzerne implantee pour la recolte 2015": 70,
                    "Luzerne implantee pour la recolte 2016": 71,
                    "Luzerne implantee pour la recolte 2017": 72,
                    "Luzerne deshydratee": 73,
                    "Autre luzerne": 74,
                    "Melange de legumineuses fourrageres preponderantes au semis implantees pour la recolte 2015 et de cereales": 75,
                    "Melange de legumineuses fourrageres preponderantes au semis implantees pour la recolte 2016 et de cereales": 76,
                    "Melange de legumineuses fourrageres preponderantes au semis implantees pour la recolte 2017 et de cereales": 77,
                    "Melilot implante pour la recolte 2015": 78,
                    "Melilot implante pour la recolte 2016": 79,
                    "Melilot implante pour la recolte 2017": 80,
                    "Melilot deshydrate": 81,
                    "Autre melilot": 82,
                    "Melange de legumineuses fourrageres preponderantes au semis implantees pour la recolte 2015 et d'herbacees ou de graminees fourrageres": 83,
                    "Melange de legumineuses fourrageres preponderantes au semis implantees pour la recolte 2016 et d'herbacees ou de graminees fourrageres": 84,
                    "Melange de legumineuses fourrageres preponderantes au semis implantees pour la recolte 2017 et d'herbacees ou de graminees fourrageres": 85,
                    "Minette": 86,
                    "Melange de legumineuses fourrageres implantees pour la recolte 2015 (entre elles)": 87,
                    "Melange de legumineuses fourrageres implantees pour la recolte 2016 (entre elles)": 88,
                    "Melange de legumineuses fourrageres implantees pour la recolte 2017 (entre elles)": 89,
                    "Melange de legumineuses deshydratees (entre elles)": 90,
                    "Autre melange de plantes fixant l'azote": 91,
                    "Melange de proteagineux semes tardivement (apres le 31/05)": 92,
                    "Sainfoin implante pour la recolte 2015": 93,
                    "Sainfoin implante pour la recolte 2016": 94,
                    "Sainfoin implante pour la recolte 2017": 95,
                    "Sainfoin deshydrate": 96,
                    "Autre sainfoin": 97,
                    "Serradelle implantee pour la recolte 2015": 98,
                    "Serradelle implantee pour la recolte 2016": 99,
                    "Serradelle implantee pour la recolte 2017": 100,
                    "Serradelle deshydratee": 101,
                    "Autre serradelle": 102,
                    "Trefle implante pour la recolte 2015": 103,
                    "Trefle implante pour la recolte 2016": 104,
                    "Trefle implante pour la recolte 2017": 105,
                    "Trefle deshydrate": 106,
                    "Autre trefle": 107,
                    "Vesce implantee pour la recolte 2015": 108,
                    "Vesce implantee pour la recolte 2016": 109,
                    "Vesce implantee pour la recolte 2017": 110,
                    "Vesce deshydratee": 111,
                    "Autre vesce": 112
                }
            },
            "Autres fourrages": {
                "Autres fourrages": {
                    "Betterave fourragere": 113,
                    "Carotte fourragere": 114,
                    "Chou fourrager": 115,
                    "Fourrage compose de cereales et/ou de proteagineux (en proportion < 50%) et/ou de legumineuses fourrageres (en proportion < 50%)": 116,
                    "Autre fourrage annuel d'un autre genre": 117,
                    "Autre plante fourragere sarclee d'un autre genre": 118,
                    "Navet fourrager": 119,
                    "Radis fourrager": 120
                }
            },
            "Oleagineux": {
                "Colza d'hiver": {
                    "Colza d'hiver": 121
                },
                "colza de printemps": {
                    "Colza de printemps": 122
                },
                "Tournesol": {
                    "Autre oleagineux d'espece Helianthus": 123,
                    "Tournesol": 124
                },
                "Oleagineux": {
                    "Cameline": 125,
                    "Melange d'oleagineux": 126,
                    "Moutarde": 127,
                    "Navette d'ete": 128,
                    "Navette d'hiver": 129,
                    "Nyger": 130,
                    "Autre oleagineux d'un autre genre": 131,
                    "illette": 132,
                    "Autre oleagineux d'hiver d'espece Brassica napus": 133,
                    "Autre oleagineux d'hiver d'espece Brassica rapa": 134,
                    "Autre oleagineux de printemps d'espece Brassica napus": 135,
                    "Autre oleagineux de printemps d'espece Brassica rapa": 136
                }
            },
            "Proteagineux": {
                "Soja": {
                    "Soja": 137
                },
                "Proteagineux": {
                    "Feve": 138,
                    "Feverole semee avant le 31/05": 139,
                    "Feverole semee tardivement (apres le 31/05)": 140,
                    "Lupin doux d'hiver": 141,
                    "Lupin doux de printemps seme avant le 31/05": 142,
                    "Lupin doux de printemps seme tardivement (apres le 31/05)": 143,
                    "Autre lupin fourrager d'hiver": 144,
                    "Autre lupin fourrager de printemps": 145,
                    "Lupin fourrager d'hiver implante pour la recolte 2015": 146,
                    "Lupin fourrager d'hiver implante pour la recolte 2016": 147,
                    "Lupin fourrager d'hiver implante pour la recolte 2017": 148,
                    "Lupin fourrager de printemps implante pour la recolte 2015": 149,
                    "Lupin fourrager de printemps implante pour la recolte 2016": 150,
                    "Lupin fourrager de printemps implante pour la recolte 2017": 151,
                    "Melange de proteagineux (pois et/ou lupin et/ou feverole) preponderants semes avant le 31/05 et de cereales": 152,
                    "Autre proteagineux d'un autre genre": 153,
                    "Autre pois fourrager d'hiver": 154,
                    "Autre pois fourrager de printemps": 155,
                    "Pois fourrager d'hiver implante pour la recolte 2015": 156,
                    "Pois fourrager d'hiver implante pour la recolte 2016": 157,
                    "Pois fourrager d'hiver implante pour la recolte 2017": 158,
                    "Pois d'hiver": 159,
                    "Pois fourrager de printemps implante pour la recolte 2015": 160,
                    "Pois fourrager de printemps implante pour la recolte 2016": 161,
                    "Pois fourrager de printemps implante pour la recolte 2017": 162,
                    "Pois de printemps seme avant le 31/05": 163,
                    "Pois de printemps seme tardivement (apres le 31/05)": 164
                }
            },
            "Riz": {
                "Riz": {
                    "Riz": 165
                }
            },
            "Cultures industrielles": {
                "Betteraves": {
                    "Betterave non fourragere / Bette": 166
                },
                "Lin": {
                    "Lin fibres": 167,
                    "Lin non textile d'hiver": 168,
                    "Lin non textile de printemps": 169
                },
                "Pomme de terre": {
                    "Pomme de terre de consommation": 170,
                    "Pomme de terre feculiere": 171
                },
                "Tabac": {
                    "Tabac": 172
                }
            },
            "Fruits, legumes, fleurs": {
                "Banane": {
                    "Banane creole (fruit et legume) - autre": 173,
                    "Banane creole (fruit et legume) - fermage": 174,
                    "Banane creole (fruit et legume) - indivision": 175,
                    "Banane creole (fruit et legume) - propriete ou faire valoir direct": 176,
                    "Banane creole (fruit et legume) - reforme fonciere": 177,
                    "Banane export - autre": 178,
                    "Banane export - fermage": 179,
                    "Banane export - indivision": 180,
                    "Banane export - propriete ou faire valoir direct": 181,
                    "Banane export - reforme fonciere": 182
                },
                "Cafe/Cacao": {
                    "Cafe / Cacao": 183
                },
                "Legumes secs": {
                    "Lentille cultivee (non fourragere)": 184,
                    "Pois chiche": 185
                },
                "Fruits, legumes, fleurs": {
                    "Ail": 186,
                    "Ananas": 187,
                    "Arachide ": 188,
                    "Artichaut ": 189,
                    "Aubergine": 190,
                    "Basilic": 191,
                    "Bleuet": 192,
                    "Bugle rampante": 193,
                    "Carotte": 194,
                    "Concombre / Cornichon": 195,
                    "Courgette / Citrouille": 196,
                    "Celeri": 197,
                    "Chicoree / Endive / Scarole": 198,
                    "Chardon Marie": 199,
                    "Chou": 200,
                    "Courge musquee / Butternut": 201,
                    "Cresson": 202,
                    "Epinard": 203,
                    "Autre legume ou fruit annuel": 204,
                    "Autre legume ou fruit perenne": 205,
                    "Fenouil": 206,
                    "Fraise": 207,
                    "Haricot / Flageolet": 208,
                    "Horticulture ornementale de plein champ": 209,
                    "Horticulture ornementale sous abri": 210,
                    "Laitue / Batavia / Feuille de chene": 211,
                    "Legume sous abri": 212,
                    "Mache": 213,
                    "Mauve": 214,
                    "Melon": 215,
                    "Millepertuis": 216,
                    "Marguerite": 217,
                    "Navet": 218,
                    "Oignon / Echalote": 219,
                    "Oseille": 220,
                    "Panais": 221,
                    "Paquerette": 222,
                    "Pasteque": 223,
                    "Petit fruit rouge": 224,
                    "Primevere": 225,
                    "Poireau": 226,
                    "Potiron / Potimarron": 227,
                    "Petits pois": 228,
                    "Pensee": 229,
                    "Persil": 230,
                    "Poivron / Piment": 231,
                    "Radis": 232,
                    "Roquette": 233,
                    "Rutabaga": 234,
                    "Salsifis": 235,
                    "Tubercule tropical": 236,
                    "Tomate": 237,
                    "Topinambour": 238,
                    "Tomate pour transformation": 239
                }
            },
            "Plantes a parfum, aromatiques et medicinales": {
                "Lavande / Lavandin": {
                    "Lavande / Lavandin": 240
                },
                "Plantes a parfum, aromatiques et medicinales": {
                    "Aneth": 241,
                    "Angelique": 242,
                    "Anis": 243,
                    "Carvi": 244,
                    "Ciboulette": 245,
                    "Camomille": 246,
                    "Coriandre": 247,
                    "Cerfeuil": 248,
                    "Cumin": 249,
                    "Curcuma": 250,
                    "Estragon": 251,
                    "Geranium": 252,
                    "Melisse": 253,
                    "Marjolaine / Origan": 254,
                    "Menthe": 255,
                    "Plante aromatique (autre que vanille)": 256,
                    "Plante medicinale": 257,
                    "Autre plante a parfum, aromatique et medicinale annuelle": 258,
                    "Plante a parfum (autre que geranium et vetiver)": 259,
                    "Autre plante a parfum, aromatique et medicinale perenne": 260,
                    "Romarin": 261,
                    "Sauge": 262,
                    "Sarriette": 263,
                    "Thym": 264,
                    "Vetiver": 265,
                    "Vanille sous bois": 266,
                    "Vanille": 267,
                    "Vanille verte": 268,
                    "Ylang-ylang": 269
                }
            }
        },
        "Culture Perenne": {
            "Ligneux predominants": {
                "Ligneux predominants": {
                    "Bois pature": 270,
                    "Chataigneraie entretenue par des porcins ou des petits ruminants": 271,
                    "Chenaie entretenue par des porcins ou des petits ruminants": 272,
                    "Surface pastorale - ressources fourrageres ligneuses predominantes": 273
                }
            },
            "Vergers": {
                "Oliveraies": {
                    "Oliveraie ": 274
                },
                "Vergers": {
                    "Agrume": 275,
                    "Avocat": 276,
                    "Caroube": 277,
                    "Cerise bigarreau pour transformation": 278,
                    "Chataigne": 279,
                    "Noisette": 280,
                    "Noix": 281,
                    "Pistache ": 282,
                    "Prune d'Ente pour transformation": 283,
                    "Peche Pavie pour transformation": 284,
                    "Poire Williams pour transformation": 285,
                    "Truffiere (chenaie de plants mycorhizes)": 286,
                    "Verger (DOM)": 287,
                    "Verger": 288
                }
            },
            "Vigne": {
                "Vigne": {
                    "Restructuration du vignoble": 289,
                    "Vigne : raisins de cuve": 290,
                    "Vigne : raisins de table": 291
                }
            },
            "TCR": {
                "TCR": {
                    "Taillis a courte rotation": 292
                }
            }
        },
        "Autre": {
            "SNA": {
                "SNA": {
                    "Surface non agricole non visible sur l'orthophotographie": 293,
                    "Surface agricole temporairement non exploitee": 294
                }
            },
            "Autres": {
                "Sarrasin": {
                    "Autre cereale de genre Fagopyrum": 55,
                    "Sarrasin": 56
                },
                "Bati": {
                    "Culture sous serre hors sol": 295
                },
                "Biomasse": {
                    "Autre cereale de genre Phalaris": 296,
                    "Autre cereale de genre Setaria": 297,
                    "Miscanthus": 298,
                    "X-Felium de 5 ans ou moins": 299
                },
                "Bois": {
                    "Surface boisee sur une ancienne terre agricole": 300
                },
                "Canne a sucre": {
                    "Canne a sucre - autre": 301,
                    "Canne a sucre - fermage": 302,
                    "Canne a sucre - indivision": 303,
                    "Canne a sucre - propriete ou faire valoir direct": 304,
                    "Canne a sucre - reforme fonciere": 305
                },
                "Eau, marais": {
                    "Marais salant": 306,
                    "Roseliere": 307
                },
                "Houblon": {
                    "Houblon": 308
                },
                "Autres": {
                    "Autre culture non precisee dans la liste (admissible)": 309,
                    "Bardane": 310,
                    "Cultures conduites en interrangs : 2 cultures representant chacune plus de 25%": 311,
                    "Cultures conduites en interrangs : 3 cultures representant chacune plus de 25%": 312,
                    "Cresson alenois de 5 ans ou moins": 313,
                    "Cornille": 314,
                    "Culture sous abattis": 315,
                    "Dolique": 316,
                    "Fenugrec": 317,
                    "Gaillet": 318,
                    "Pepiniere": 319,
                    "Psyllium noir de Provence": 320,
                    "Plantain psyllium": 321,
                    "Valeriane": 322,
                    "Veronique": 323,
                    "Culture inconnue": 324
                }
            }
        }
    }
}