27Kushal's picture
Update README.md
13dc73f verified
|
Raw History Blame Contribute Delete
2.09 kB
metadata
license: mit
tags:
  - satellite-imagery
  - semantic-segmentation
  - change-detection
  - pytorch
  - mgnrega
  - earth-observation

๐Ÿ”— View the Full Project Source Code on GitHub


PIXEL-Srishti: Geospatial Auditing Models ๐ŸŒ

This repository contains the core custom-trained vision models for PIXEL-Srishti (Jaldrishti).

These models are designed for Edge Inference (running locally on standard laptops) to audit MGNREGA projects, detect illegal construction, and track water body development without relying on high-bandwidth cloud APIs.

Models Included

1. Land Cover Semantic Segmentation (latest_seg_model.pth)

  • Architecture: DeepLabV3+ (with ResNet34 backbone and ASPP)
  • Dataset: Trained on LandCover.ai
  • Purpose: Classifies every pixel in a satellite image into 5 strict classes to identify exactly what is on the ground.
  • Classes:
    1. Background
    2. Buildings (Infrastructure)
    3. Woodlands (Vegetation)
    4. Water Bodies (Ponds/Lakes)
    5. Roads

2. Structural Change Detection (latest_cd_model.pth)

  • Architecture: Siamese U-Net
  • Purpose: Takes a "Before" and "After" satellite image (Optical or SAR) and extracts deep structural features to output a binary mask of exact terrain alterations.
  • Use Case: Validating if a contractor actually dug a new pond or moved earth, while safely ignoring seasonal color changes or shadows.

How to Use (Inference)

These weights are designed to be dynamically hot-swapped into VRAM by our custom Python Orchestrator to prevent Out-Of-Memory (OOM) errors on 8GB GPUs.

To run them in the PIXEL-Srishti backend, place both files into the pixel_srishti_ml/checkpoints/ directory:

import torch

# Load Siamese U-Net (Change Detection)
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
checkpoint_cd = torch.load('checkpoints/latest_cd_model.pth', map_location=device)

# Load DeepLabV3+ (Segmentation)
checkpoint_seg = torch.load('checkpoints/latest_seg_model.pth', map_location=device)