Coder Social home page Coder Social logo

nikita-belyakov / cloud_snow_segmentation Goto Github PK

View Code? Open in Web Editor NEW
5.0 3.0 1.0 917.57 MB

Research work for cloud and snow segmentation problem using meteorological satellite Electro-L №2 multispectral data, also suitable for GOES-16,17 multispectral data. This project includes all needed functions and utils for preprocessing multispectral data to make your own dataset for cloud and (or) snow segmentation problem

Jupyter Notebook 100.00%
electrol2 geostationary goes-r manet modis-data multispectral-images pytorch remote-sensing satellite segmentation

cloud_snow_segmentation's Issues

Планы до 07.06.23

  • Начать переписывать курсовую под статью (ИКИ РАН шаблон)!

  • Переобучить MANet на датасете с Электро Л2 и масками с GOES-16 с учетом световой коррекции

  • Попробовать получить репроекции на все месяцы\даты с GOES-16 для funetunning'a

  • Попробовать получить достаточно точные репроекции на все месяцы\даты с SEVIRI для funetunning'a

  • Почистить код и сделать пример inference'a на небольшой части данных, который влезет в github

  • Посмотреть на работу модели без геоинфы для раздела explainability

  • сгенерить requirements.txt

  • Найти альтернативный источник масок с GOES-16

  • Выкачать маски снега Terra\MODIS и clear_sky GOES-16 за все месяцы в 2022 году

Планы до 24.05.2023

  • Писать и редачить курсовую!!!

  • Получить метрики для классификатора и MANet на одних и тех же снимках для сравнения

  • Для всех дат и времен сделать световую коррекцию для Электро Л2

  • Переобучить MANet на датасете с Электро Л2 и масками с GOES-16 с учетом световой коррекции

  • Проверить и уточнить репрекции на все даты с GOES-16 для funetunning'a

  • Если выйдет точная репроекция, то написать автоэнкодер для DDA каналов с GOES-16 в каналы Электро Л2

  • Почистить код и сделать пример inferenc'a на небольшой части данных, который влезет в github

  • Подумать\попробовать что-то сделать для раздела explainability

Планы до 24.04.2023

  • Обучить трансформеры MAnet, PAN

  • Попробовать и подумать про U-2-Net и TverskiyLoss вместо DICE

  • Voting ensembling моделей сегментации и классификатора

  • Почитать про Data Adaptation датасета LEVIR_CS и Электро Л3 inference

  • Поаналозировать гистограммы спектральных каналов Levir и Электро Л3, чтоб подогнать одно под другое

  • Поискать еще разметку с GOES, GK-2A, SKYSAT

  • (возможно!?) Сделать несколько сэмплов ручной разметки с Электро Л3

ПЛАНЫ ДО 15.05.2023

  • Уточнить репроекцию маски облаков с GOES-16 на Электро Л2 (Серега хелп)) - подобрать нужные параметры эмпирически - ОК для октября и июля, в марте 2022 картинки Электро сдвинуты вверх, в январе 2023 - вверх и сильно вправо!

  • После репроекции масок облаков сделать датасет для Электро Л2 для finetunning'a MANet'a

  • Дообучить MANet на половинках снимка с Электро Л2 с масками с ГОЕСа (finetunning) -чет все плохо, без понятия пока - почему(...

  • Сделать soup MANet'ов после косинусного scheduler'a, чтоб чутка улучшить качесство для GOES'ов (НЕ СУПИТСЯ ПОКА, на 81 эпохе SOTA все равно на тесте)

  • Подумать про предобучение энкодера MANet'a на снимках ГОЕС'ов и Электро (реализация в коде)

  • Поискать сервера\хранилища, чтоб выложить туда данные для inference (мб выйдет сжать и залить на github)

  • Начать писать\переписывать курсач с учетом нового собранного датасета с ГОЕСов

  • autoencoder squeeze extintion goes to electro l2

  • Для proof of concept попробовать пообучать прошлую модель MANet только с RGB каналами, но с сэмплером

Планы до 03.05.2023

  • Чекнуть, есть ли для SEVIRI radiance, BT в файлах L2 в открытом доступе - НЕМА(((

  • Все каналы, маски и пр. перезаписать в формате TIF, ибо JPG - ЗЛО!

  • Попробовать уточнить маски облаков из Clear Sky GOES (более разреженными сделать)

  • Собрать несколько снимком GOES 16 и 17, разбить на патчи и сделать датасет из нескольких папок

  • Модифицировать класс датасета для GOES 16 и 17 под несколько директорий и с выборов прогона всех патчей или только непустых + добавить возможность выбора числа спектральных каналов до всех 10

  • Пересчитать mean, std для Электро на непустых патчах

  • Уточнить параметры репроециорования для Электро и попробовать сматчить часть маски облаков с GOES'a с Электро Л2

  • Подумать над предобучением энкодера через BYOL на всевозможных геостационарных снимках

  • Добавить подсчет метрик IoU, F1 для снега и облаков

  • Увеличить выборку с GOES'ов до 18 снимков для всех времен года

  • Правильно линейно нормировать все BT каналы для GOES'ов и Электро

  • Обучить MANet на всех каналах, которые совпадают у GOES'ов и Электро

  • Добавить weighted sampler для баланса снежных патчей

  • Подумать, как исправить черный верх в карте снега с MODIS !!!!

Планы до 19.06.23

  • Дописать и шлифануть курсовую, поправить ссылки на источники

  • Сгенерить несколько requirements.txt - отдельно для инференса, отдельно для обучения и тд

  • Залить блокнот с пайплайном обучения модели на датасете с Электро Л2 на github

  • Написать readme инструкцию пользования кодом и тезисно саму задачу

  • Распарсить оставшиеся снимки с Л2 за 2021, 2022 и 2023, маски облаков и снега

  • Попробовать обработать цветные маски снега MODIS на 2023 в бинарные маски

  • За сплитить оставшиеся снимки на патчи для finetunning'a модели

  • На дополненном датасете дообучиться еще раз с инициализацией весов с GOES

  • Провалидироваться и потеститься на снимках за 5 месяцев для лучшей репрезентативности

Планы до 17.04.2023

  • Подумать, как блендить классификатор и сегментатор по предиктам снега и облачности

  • Пообучать U-Net++ дальше на Levir_CS с CosineAnnealing scheduler и повысить IoU via souping

  • Потюнить классификатор, чтоб поднять F1 до уровня, как в статье

  • Завалидироваться на масках от НИЦ Планета, если пришлют их

  • Написать черновик курсовой !!!!

  • Отредачить презентацию к воркшопу 2

Планы до 13.03

  • Получить результаты обучения модели на LEVIR-CS
  • Подумать о получении априорной разметки человеком для нескольких снимков ELECTRO L1
  • Разобраться с цветовыми каналами с LEVIR-CS, почему там снимки выглядят как сепия

Планы до 10.04.2023

  • Попробовать классификатор 11*11 на картинке из HDF5 с radiance, brightness

  • Сделать постпроцессинг масок, используя карты снега MODIS и убрать черные квадраты в предиктах

  • Обучить модель DeepLabV3+ на датасете Levir CS

  • Получить и распарсить маски снега и облаков из НИЦ Планета

  • Попробовать разобраться с таблицами перехода к radiance, brightness temperature в L1.5 файлах

Планы к ВШ2

  • Определиться с тем, как оценивать качество модели на данных ELECTRO L1
  • Применить Transfer Learning с модели, обученной на LEVIR-CS, к данным ELECTRO L1
  • Экспериментировать с параметрами обучения, функциями потерь и т. д.

TO DO LIST ASSA ARTICLE!

  • Appendix for WRS on ELECTRO-L No. 2
  • remake patches with predicts with correct stats
  • Appendix with pretrain on GOES-16,17?
  • Appendix with models comparison on Levir CS?
  • Refit MANet without WRS to make a new table
  • Make inference on snow date
  • Explainability remake
  • Overfitting check up on aux info remake
  • References clean and rewrite in a needed format

ПЛАНЫ ДО 30.03.23

  • Добавить геометрические аугментации в пайплайн обучения на GPU через kornia

  • Попробовать использовать Ranger21 optimizer вместо AdamW

  • Попробовать сопоставить карты высот в разрешении 10*10км с aster GDEM на 2D развертке со снимком ЭЛЕКТРО Л1

  • Поискать способы ручной разметки в микроволновых каналах по разным порогам и через анализ гистограмм каналов

  • Уточнить\проверить правильность световой коррекции по углу Солнца для видимого спектра ЭЛЕКТРО Л1

  • Попробовать оптимизировать скорость работы световой коррекции по углу Солнца

  • Подумать, как матчить маски снега со смешанной маской облаков и снега с SEVIRI

  • Попробовать прогнать СNN классификатор из статьи для текстур 11*11 на изображении ЭЛЕКТРО Л1 с шагом 1 пиксель

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.