Skip to content

geomi737/Hackathon2026

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SAD: Satellite Anomaly Detection 🛰️

3 место btw

Technostart 2026

Система автоматического мониторинга и анализа спутниковых снимков для обнаружения экологических аномалий.

📋 Возможности

  • 🔥 Обнаружение лесных пожаров: Использует специально предобученную модель YOLOv11 для поиска дыма/огня в видимом диапазоне и верифицирует данные с помощью инфракрасного слоя (SWIR) для исключения ложных срабатываний.
  • 🌲 Анализ потери растительности: Сравнивает текущий индекс NDVI с историческими спутниковыми данными (Sentinel-2) за прошлый год для выявления вырубок или гибели леса.
  • 🗺️ Интерактивная карта: Визуализация обнаруженных объектов с гео-привязкой через Leafmap.
  • 📊 Отчетность: Генерация и экспорт детального отчета о нарушениях в формате CSV.

🛠️ Установка и запуск

Предварительные требования

  • Linux / Windows / macOS
  • Python 3.8+
  • CUDA (рекомендуется для ускорения работы нейросетей)

Инструкция

  1. Клонируйте репозиторий:

    git clone https://github.com/your-repo/hackathon2026.git
    cd hackathon2026
  2. Создайте и активируйте виртуальное окружение:

    python -m venv .venv
    source .venv/bin/activate  # Linux/macOS
    # .venv\Scripts\activate   # Windows
  3. Установите зависимости:

    pip install -r requirements.txt
  4. Настройка API (для исторических данных): Создайте файл .env в корне проекта и добавьте учетные данные Sentinel Hub:

    sentinelid=ВАШ_CLIENT_ID
    sentinelkey=ВАШ_CLIENT_SECRET

    Без этих ключей функция анализа потери растительности (сравнение с прошлым годом) работать не будет.

  5. Запуск приложения:

    streamlit run app.py

📂 Как использовать

  1. Откройте приложение в браузере (обычно http://localhost:8501).
  2. В боковой панели загрузите ZIP-архив со спутниковыми данными. Для поиска можно использовать EO Browser или Copernicus
  3. Требования к архиву: Архив должен содержать файлы каналов формата TIF, соответствующие:
    • True Color (видимый спектр) — для поиска объектов нейросетью.
    • SWIR (коротковолновый инфракрасный) — для подтверждения температурных аномалий.
    • NDVI (индекс растительности) — для анализа состояния леса.
  4. Настройте пороги уверенности (Confidence Threshold) и чувствительности в боковом меню.
  5. Изучите результаты на карте и скачайте отчет violations_report.csv.

🏗️ Структура проекта

  • app.py: Основное веб-приложение на Streamlit.
  • src/:
    • processor.py: Обработка изображений, работа с ZIP, нормализация каналов.
    • sentinel.py: Клиент API Sentinel Hub для загрузки исторических данных.
    • ml.py: Обертка над моделями YOLO и SAHI (Slicing Aided Hyper Inference).
    • geo.py: Утилиты для работы с геокоординатами.
  • runs/: Папка с весами обученных моделей.

Разработано в рамках хакатона Technostart 2026 с использованием AI!

About

SAD

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages