项目作者: aperveyev
项目描述 :
open dataset and tools for Booru (anime style) and CG characters image processing
高级语言: PLSQL
项目地址: git://github.com/aperveyev/booru_processor.git
BOORU-CHARS OPEN DATASET (english description here ):
- открытый набор данных о качественных арт-изображениях персонажей аниме, игр, мультипликации и т.п.
- состоит из мета-данных (ссылок на booru-первоисточник, смысловых тегов, статистических показателей,
результатов применения алгоритмов на изображениях) и thumbnail-изображений 512x512px ( & 1024x1024px ? ) - содержит описание используемых методов, скриптов, программ и их параметров для единообразного применения
- большие наборы изображений распространяются через torrent, код, описание и компактные данные хостятся на Github
ЦЕЛИ ПРОЕКТА:
- быть основой для применения Machine Learning & Neural Networks алгоритмов к не-фотографическим изображениям (их “иконкам”), например
- обнаружение ключевых объектов в рисованных изображениях (лица, другие части тела, другие объекты, характер фона)
- сегментирование изображений по композиции и масштабу на основе относительного размера и положения детектированных лиц (и других ключевых объектов)
- разработка “весовой функции визуального качества”, пригодной для создания априорных “хит-парадов”,
а также (хотя бы частичной) автоматизации разгребания безбрежного арт-океана
- быть основой для нетривиального анализа накопленных мета-данных: SQL-запросы, data mining clustering & classification
с легкой визуализацией результатов, например
- рейтинг популярности для портретных изображений в разрезе персонажей и годов постинга
- самые многочисленные (в разрезе по авторам) серии для заданной комбинации тегов
- неисчислимое множество примеров “хит-парадов”, на основе которых можно отбирать для просмотра и/или качать подборки
- систематизация мета-данных - “тегов” - как таковых в т.ч. координация между их источниками, например
- соотнесение тегов артист/произведение/персонаж разных источников
- соотнесение произведений / персонажей myanimelist и соответствующих тегов Danbooru & Safebooru
- группировка произведений во “франшизы” с (в основном) пересекающимся множеством персонажей
До тех пор, пока я не научусь самостоятельно создавать адекватные модели, основным результатом проекта являются датасеты -
torrent-ы с “иконками” и метаданными, а также изображениями исходных размеров перечислены отдельно
BOORU-источники данных (только самые интенсивно используемые) и сопутствующие сервисы:
Необходимо упомянуть массовый кросспостинг между некоторыми источниками (например danbooru -> gelbooru -> safebooru ) и относительную изоляцию других (zerochan, yande-re).
ВНЕШНИЕ ПРОГРАММЫ (под Windows):
МЕТОДИКА ОБРАБОТКИ датасета в подробностях описана отдельно
- сбор (скачивание) и накопление оригинальных изображений для очередного релиза
- начальная обработка и итеративное улучшение релиза в т.ч. с помощью анализа атипичных метаданных
- слияние текущего релиза с пулом предыдущих релизов
Размышления о постановке задачи, обнаруженные датасеты, модели и сервисы:
Задача распозначания рисованных персонажей на данный момент (конец 2020) удовлетворительного решения не имеет.
На то есть объективные причины (кардинальное отличие от задачи распознавания объектов реального мира) и, по моему мнению,
большинство усилий по ее решению тратятся впустую.
Подроблее о моем видении ситуации в лонгриде
До относительно недавнего времени (примерно 2019) возня с распознаванием рисунков была в основном уделом энтузиастов и немногие достигнутые результаты стали “хрестоматийными”:
Затем важность задачи почувствовала индустрия (игровая, но и анимешная тоже) и в нее пришли некоторые деньги (гранты),
количество работ резко возросло, но результаты - в основном те же.
Из интересных проектов, некоторые из которых мне удалось оживить (под Windows и без специфического оборудования):
- детектор нецензурщины NudeNet но и лиц тоже, удалось запустить
- использует keras_retinanet, пришлось ставить Visual C++ 14, крайне желательна видеокарта с CUDA
- очень правильное направление “научиться узнавать определенных персонажей” MoeFlow
далее расширяя их список с доступным сервисом
- использует TensorFlow, не запускал
- детектор лиц и фигур full_body, upper_body torchvision у меня не заработал
- очень перспективный и потенциально полезный для меня проект
Другие решения, которые я не смог использовать или пока не пробовал:
В связи с ключевой важностью датасетов (тренировочных, тестовых) они начали появляться, иногда даже в общедоступном виде: