Я бы реализовывал вашу идею так: взял бы какой-нибудь детектор на много-много классов, искал бы объекты и для каждого из них учил бы отдельную сеть. Но мне кажется, что такой подход работал бы не сильно лучше одной большой сети.
Продакшн система с вашим решением требовала бы слишком много мощностей, поэтому я бы не стал такое реализовывать.
Идея отличная, это действительно помогло бы улучшить качество колоризации деталей. Мы отказались от идеи детектировать медали, погоны и другие детали одежды так как не хотели усложнять итоговую модель и процесс разработки.
Быстрый ответ: надежнее сделать большую сеть, которая будет раскрашивать изображение за один проход.
Если по частям:
1) Подход, про который вы рассказываете, называется бустингом. Мы берем N базовых алгоритмов, и учим каждый следующий алгоритм исправлять ошибки предыдущего. Я не встречал в современных работах по колоризации такого подхода. Думаю, это связано с тем, что сеть проще обучить одну большую сеть сразу предсказывать цвета всех пикселей чем учить много маленьких сетей исправлять ошибки друг друга. Для лучшего визуального качества сейчас часто используют GANы, которые тяжело учить и так, поэтому дополнительно усложнять архитектуру генератора не хочется.
Вторая сложность реализации вашей идеи — «это должны быть N+1 сетей натренированных на специальных наборах данных, которые вобщем-то можно получить из наборов цветных фото» — непонятно по каким критериям отбирать наборы цветных фотографий.
Вы правы, это помогло поднять нам качество. Мы аугментировали данные поворотами, случайными отражениями, вырезанием и масштабированием частей изображения.
Спасибо! Мы обновили модель колоризации, и сейчас картинка стала более насыщенной. Проблемы с зеленоватыми участками все еще есть, будем совершенствоваться.
Я бы реализовывал вашу идею так: взял бы какой-нибудь детектор на много-много классов, искал бы объекты и для каждого из них учил бы отдельную сеть. Но мне кажется, что такой подход работал бы не сильно лучше одной большой сети.
Продакшн система с вашим решением требовала бы слишком много мощностей, поэтому я бы не стал такое реализовывать.
В течение года сервисом точно можно будет пользоваться.
Если по частям:
1) Подход, про который вы рассказываете, называется бустингом. Мы берем N базовых алгоритмов, и учим каждый следующий алгоритм исправлять ошибки предыдущего. Я не встречал в современных работах по колоризации такого подхода. Думаю, это связано с тем, что сеть проще обучить одну большую сеть сразу предсказывать цвета всех пикселей чем учить много маленьких сетей исправлять ошибки друг друга. Для лучшего визуального качества сейчас часто используют GANы, которые тяжело учить и так, поэтому дополнительно усложнять архитектуру генератора не хочется.
Вторая сложность реализации вашей идеи — «это должны быть N+1 сетей натренированных на специальных наборах данных, которые вобщем-то можно получить из наборов цветных фото» — непонятно по каким критериям отбирать наборы цветных фотографий.
Мы решили сделать наш сервис максимально простым для пользователя, поэтому не добавляли возможность выбора цвета.
Сервис возвращает три фотографии:
1) колоризованную с закрашенными дефектами
2) колоризованный оригинал
3) оригинал с закрашенными дефектами.
Вы можете скачать любой из этих вариантов.
Третья фотография — ровно то, что вам нужно.