icevision's People
icevision's Issues
DataLoader для cvat формата
Написать загрузчик для cvat формата
Разметить классы 8.22.* в RTSD
Получить фаил формата cvat для RTDS датасета, содержащий знаки 8.22.*
Генерация масок по боксу и классу знака
Написать скрипт, котороый разметку в cvat формате, содержащую только боксы, расширит полигональными масками.
Конвертация icevision в cvat
Написать скрипт, котрый из разметки в наборе .csv фаилов формата соревнования icevision сформирует .xml фаил, совместимый с cvat
bug in the function find_tubelets in icevision/seq_bbox_matching.py
The function find_tubelets in icevision/seq_bbox_matching.py, won't add the tubelet which end up with the last frame. So I suggest to add the following code before return tubelets
for tubelet in current_tubelets:
tubelets.append(tubelet)
Обучение на кропах
Данные в icevision идут в 2k, в то время как в сеть стоит отправлять картинки 1k.
Вместо того, чтобы все изображения приводить к размеру 1k, предлагается вырезать из исходного изображения прямоугольник (случайный, или выбирать из предопределенных) нужного размера (обязательно содержащий хотя бы один знак) и обучаться на смеси кропа и исходных изображений.
TTA
Подумать над аугментациями времени выполнения. Как для всей сети, так и только для proposals. Поддержка последнего, похоже, уже реализована в коде facebook-research/maskrcnn-benchmark.
Обучение на RTSD
Обучить сеть на всех данных, на все классы в RTSD + 8.22 #9
Подготовка submission фаила
По разметке в cvat формате сформировать фаил для посылки в тестирующую систему
Конвертация формата RTSD в cvat
Написать скрипт, который из фаила формата gt-full.csv сформирует .xml фаил, совместимый с cvat.
Аугментации
Подумать и подобрать параметры цветовых аугментаций изображений. Аугментации не должны быть слишком жесткими.
Предлагается использовать следующие библиотеки.
https://github.com/albu/albumentations
https://github.com/UjjwalSaxena/Automold--Road-Augmentation-Library
Также подумать о возможности отражения картинки относительно вертикали. Есть три типа знаков:
- симметричные - никаких проблем при флипах нет
- нессиметричные
а. при флипе класс знака меняется
б. при флипе получается несуществующий знак
Аналитика
Для всех данных из icevision, для которых есть разметка нужно определить следующее:
- Распределение классов
- Распределения размеров боксов. По каждой из сторон и по площади.
- Распределение отношения сторон боксов.
- Карту вероятности обнаружения бокса на изображении. Чем выше вероятность, тем выше интенсивность пикселя на карте.
Отчет в виде востроизводимого сверху вниз jupyter notebook с готовыми картинками в репозиторий.
Для визуализаций использовать matplotlib и seaborn. В последней есть методы countplot(для пункта 1) и distplot(для 2 и 3).
Разреженное предсказание
Нужно реализовать возможность делать предсказания сетью не только для каждого кадра, а с шагом в k кадров. При этом результаты для недостающих кадров получать интерполяцией.
Кроме того, для тестирования необходимо иметь возможность имея предсказания для каждого кадра сымитировать разреженные предсказания.
Конвертация predictions.pth в cvat
Фаил predictions.pth содержит результат инференса сети. Написать скрипт для его конвертации в .xml для просмотра в cvat
Фильтрация predictions.pth от лишних боксов
Нужно выкинуть сильно перекрывающиеся боксы, выделяя в каждой компоненте наиболее вероятный. Выход скрипта - фаил в таком же формате.
Знаки с текстом
Подумать, как и чем разпознавать, к примеру, название города на соответствующем знаке. Кроме того, как обходится со знаком ограничения скорости. Вводить отдельный класс для каждого такого знака как-то не очень.
Можем использовать tesseract, либо что-то еще.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.