Saltar al contenido
ModelPublicadoExterno
Descargar

Euroset Resnet50

ResNet50 fine-tuned via transfer learning to classify Sentinel-2 satellite image patches into 10 land cover categories, using the EuroSAT dataset.

TipoOtherModelo basemicrosoft/resnet-50VersiónRevision cf76129Ccalidad

Fuente del modelo

Tipo
Other
Tamaño del archivo
90,1 MB
Modelo base
microsoft/resnet-50
Versión
vRevision cf76129
Actualizado
17 sept 2026
Descargas
0
Fuente
Hugging Face

Descripción de la fuente

EuroSAT Land Cover Classifier (ResNet50)

ResNet50 fine-tuned via transfer learning to classify Sentinel-2 satellite image patches into 10 land cover categories, using the EuroSAT dataset.

Model Details

  • Base model: ResNet50, pretrained on ImageNet (IMAGENET1K_V2 weights via torchvision)
  • Training approach: final layer trained first (backbone frozen), then full fine-tuning at lower learning rate
  • Input: 224x224 RGB images, normalized with ImageNet mean/std
  • Output: 10-class softmax (see label map below)

Performance (EuroSAT official test split, 2,700 images)

  • Overall test accuracy: 98%
  • Weakest classes: PermanentCrop (F1 0.96), AnnualCrop (F1 0.96)
  • Strongest classes: Residential, SeaLake (F1 1.00)

Label Map

{'AnnualCrop': 0, 'Forest': 1, 'HerbaceousVegetation': 2, 'Highway': 3, 'Industrial': 4, 'Pasture': 5, 'PermanentCrop': 6, 'Residential': 7, 'River': 8, 'SeaLake': 9}

How to Load

```python import torch import torchvision.models as models import torch.nn as nn

model = models.resnet50(weights='IMAGENET1K_V2') model.fc = nn.Linear(model.fc.in_features, 10) model.load_state_dict(torch.load('eurosat_resnet50.pt', map_location='cpu')) model.eval() ```

ScreenShot

Confusion matrix

Limitations

  • Trained on European Sentinel-2 imagery; accuracy may degrade on other regions/sensors.
  • 64x64 patch size limits detection of small-scale land features.
  • RGB-only (no multispectral bands), which loses some vegetation-discriminating signal.
  • Confusion observed between agricultural sub-classes (AnnualCrop/PermanentCrop/Pasture) and an unexpected River-to-AnnualCrop misclassification pattern (see confusion matrix).

Fuentes

1 fuente
Hugging FacePrincipalVersión cf7612914abe3a63277e9c10d7fe39a5306bbef0
huggingface.co/chitransh001/euroset-resnet50/tree/cf7612914abe3a63277e9c10d7fe39a5306bbef0

Verificado 2 sept

Artefactos del modelo

1 artefacto

eurosat_resnet50.pt

pt · 90,1 MB · SHA-256 c425173ce6d0…54d4 · Hugging Face

Download file

Extractos de fuentes

2 extractos

--- license: mit tags: - image-classification - satellite-imagery - resnet50 - transfer-learning - remote-sensing datasets: - blanchon/EuroSAT_RGB language: - en base_model: - microsoft/resnet-50 --- # EuroSAT Land Cover Classifier (ResNet50) ResNet50 fine-tuned via transfer learning to classify Sentinel-2 satellite image patches into 10 land cover categories, using the EuroSAT dataset. ## Model Details - **Base model**: ResNet50, pretrained on ImageNet (`IMAGENET1K_V2` weights via torchvision) - **Training approach**: final layer trained first (backbone frozen), then full fine-tuning at lower learning rate - **Input**: 224x224 RGB images, normalized with ImageNet mean/std - **Output**: 10-class softmax (see label map below) ## Performance (EuroSAT official test split, 2,700 images) - **Overall test accuracy: 98%** - Weakest classes: PermanentCrop (F1 0.96), AnnualCrop (F1 0.96) - Strongest classes: Residential, SeaLake (F1 1.00) ## Label Map {'AnnualCrop': 0, 'Forest': 1, 'HerbaceousVegetation': 2, 'Highway': 3, 'Industrial': 4, 'Pasture': 5, 'PermanentCrop': 6, 'Residential': 7, 'River': 8, 'SeaLake': 9} ## How to Load \`\`\`python import torch import torchvision.models as models import torch.nn as nn model = models.resnet50(weights='IMAGENET1K_V2') model.fc = nn.Linear(model.fc.in_features, 10) model.load_state_dict(torch.load('eurosat_resnet50.pt', map_location='cpu')) model.eval() \`\`\` ## ScreenShot ![Confusion matrix](confmat.png) ## Limitations - Trained on European Sentinel-2 imagery; accuracy may degrade on other regions/sensors. - 64x64 patch size limits detection of small-scale land features. - RGB-only (no multispectral bands), which loses some vegetation-discriminating signal. - Confusion observed between agricultural sub-classes (AnnualCrop/PermanentCrop/Pasture) and an unexpected River-to-AnnualCrop misclassification pattern (see confusion matrix).

Source context: 0 downloads · 0 likes · Pipeline image-classification · Repo chitransh001/euroset-resnet50