MADE CV Course Assignment 2 - Car plates OCR
За основу своего решения я брал baseline решение от Alexey Yaroshenko: source.
Baseline модель имеет следующую структуру:
- Модель для детекции:
- MaskRCNN Resnet50 для детекции bounding boxов и построения маски (сегментации)
- На каждую найденный номерной знак генерятся две картинки: одна по bounding box, другая с преобразованием маски в прямоугольник.
- Модель для распознавания номера
- RCNN на базе Resnet18 и GRU
Примененные изменения:
- Добавлена валидации при обучении моделей
- Настроен ReduceLROnPlateau scheduler
- Подобраны кол-ва эпох и размеров батчей
- Во второй модели заменил Resnet18 на Resnet50
- Использовал дополнительный датасет номерных знаков для обучения модели распознавания номеров
- Добавил цветовые аугментации в модель детекции
- Добавил цветовые и Affine аугментации к картинкам из дополнительного датасета
- Пробовал перевести нечастые кирильские буквы в латинские в основном датасете
К сожалению, я потерял счет попыткам и изменениям, которые я применял при каждой из них, но я уверен, что не все изменения сработали успешно. Например, добавление дополнительного датасета не дало прироста в результате, так же как и использование Resenet50. Возможно я где-то накосячил (скорее всего в модели детекции), ибо ожидал, что будет прирост. В любом случае, можно было еще попробовать трансформации картинок для модели детекции (вращение, Affine).