yava-code commited on
Commit
03a0ea9
·
verified ·
1 Parent(s): 8da82c7

Update model card for EuroSAT Field Scout

Browse files
Files changed (1) hide show
  1. README.md +50 -19
README.md CHANGED
@@ -1,23 +1,45 @@
1
  ---
2
  language: en
3
  license: mit
 
4
  tags:
5
  - pytorch
6
  - image-classification
7
  - satellite-imagery
8
  - computer-vision
9
  - eurosat
 
 
10
  datasets:
11
- - eurosat
12
  metrics:
13
  - accuracy
14
  pipeline_tag: image-classification
15
  ---
16
 
17
- # SimpleNet EuroSAT Land-Use Classifier
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
 
19
- Lightweight CNN (~850K params) trained from scratch on the EuroSAT dataset
20
- for 10-class satellite image classification.
21
 
22
  ## Usage
23
 
@@ -25,25 +47,34 @@ for 10-class satellite image classification.
25
  import torch
26
  from huggingface_hub import hf_hub_download
27
 
28
- # Download
29
- weights = hf_hub_download(repo_id="yava-code/eurosat-simplenet", filename="best_model.pth")
30
-
31
- # Load (you need model.py from this repo)
32
  from model import SimpleNet, CLASS_NAMES
33
- model = SimpleNet()
 
 
 
 
 
 
34
  model.load_state_dict(torch.load(weights, map_location="cpu"))
35
  model.eval()
36
  ```
37
 
38
- ## Architecture
39
- 4 convolutional blocks (Conv→BN→ReLU→Pool) + FC classifier.
40
- Channels: 3→32→64→128→256. Spatial: 64→32→16→8→4.
 
 
 
 
 
 
 
 
 
 
41
 
42
- ## Training
43
- - **Dataset**: EuroSAT (27,000 images, 10 classes)
44
- - **Optimizer**: Adam (lr=1e-3, StepLR γ=0.1 every 5 epochs)
45
- - **Augmentations**: Flip, Rotation ±15°, ColorJitter
46
- - **Epochs**: 20
47
 
48
- ## Demo
49
- 👉 [Try the live demo on Spaces](https://huggingface.co/spaces/yava-code/eurostat)
 
 
1
  ---
2
  language: en
3
  license: mit
4
+ library_name: pytorch
5
  tags:
6
  - pytorch
7
  - image-classification
8
  - satellite-imagery
9
  - computer-vision
10
  - eurosat
11
+ - small-models
12
+ - local-first
13
  datasets:
14
+ - torchgeo/eurosat
15
  metrics:
16
  - accuracy
17
  pipeline_tag: image-classification
18
  ---
19
 
20
+ # SimpleNet EuroSAT Land-Use Classifier
21
+
22
+ Small PyTorch CNN for 10-class EuroSAT land-use classification.
23
+
24
+ This model is used by the Gradio Space:
25
+
26
+ - Hackathon Space: https://huggingface.co/spaces/build-small-hackathon/EuroSATFieldScout
27
+ - Personal Space: https://huggingface.co/spaces/yava-code/eurosat-field-scout
28
+
29
+ ## Model Details
30
+
31
+ | Field | Value |
32
+ | --- | --- |
33
+ | Architecture | Four Conv-BN-ReLU-Pool blocks plus dense classifier |
34
+ | Parameters | 2,492,170 |
35
+ | Input | RGB image resized to 64 x 64 |
36
+ | Output | 10 EuroSAT land-use classes |
37
+ | Runtime | CPU-friendly PyTorch inference |
38
+
39
+ Classes:
40
 
41
+ `AnnualCrop`, `Forest`, `HerbaceousVegetation`, `Highway`, `Industrial`,
42
+ `Pasture`, `PermanentCrop`, `Residential`, `River`, `SeaLake`
43
 
44
  ## Usage
45
 
 
47
  import torch
48
  from huggingface_hub import hf_hub_download
49
 
 
 
 
 
50
  from model import SimpleNet, CLASS_NAMES
51
+
52
+ weights = hf_hub_download(
53
+ repo_id="yava-code/eurosat-simplenet",
54
+ filename="simple_net_v1.pth",
55
+ )
56
+
57
+ model = SimpleNet(num_classes=len(CLASS_NAMES))
58
  model.load_state_dict(torch.load(weights, map_location="cpu"))
59
  model.eval()
60
  ```
61
 
62
+ ## Training Notes
63
+
64
+ - Dataset: EuroSAT RGB land-use imagery
65
+ - Optimizer: Adam
66
+ - Augmentations: flips, rotations, color jitter
67
+ - Goal: compact educational classifier, not production remote-sensing model
68
+
69
+ ## Deployment Notes
70
+
71
+ For the Build Small Hackathon Space, the same state dict is converted to
72
+ float16 chunks so the app can be reviewed without Git LFS write permissions in
73
+ the organization repo. The runtime reconstructs the bytes, casts tensors back to
74
+ float32, and loads the explicit `SimpleNet` architecture.
75
 
76
+ ## Limits
 
 
 
 
77
 
78
+ This model is trained for EuroSAT-style RGB tiles. It should not be used for
79
+ production geospatial decisions without target-domain validation, calibration,
80
+ and uncertainty handling.