|
oloth
 Стаж: 15 лет 7 месяцев Сообщений: 119
|
oloth ·
27-Май-18 21:21
(7 лет 4 месяца назад, ред. 27-Май-18 21:23)
CyberDain писал(а):
75418319рваных краев нет, если обучать на реконструкцию того же изображения из мути. Но результат я говорю что не сильно отличается от шарпен.
Так и должно быть, сделайте этот вариант, когда будет время. Там всегда можно будет сменить алгоритм, также возможно при более длительной тренировке он улучшиться. Результаты всех этих ESR всё таки сильно превосходят sharpen.
Возможно мне стоит вырезать ESR прямо из их кода. Он очень ресурсоёмкий и его запросто можно тренировать на CPU. Там размер конволюции 64 32 32 32. Мне кажется его можно тренировать не на aligned, а вообще на исходных кадрах прям в онлайне=)
У меня 128 батч стоит для sr при этом скорость тренинга упала только на 20% только по сравнению без sr.
PS: у вас очень большой scale ratio при тренинге сэмплов. Обучение ухудшилось. Оно чуть ли не в 4 раза рандомно меняет размеры лиц.
|
|
CyberDain
Стаж: 13 лет 4 месяца Сообщений: 839
|
CyberDain ·
27-Май-18 21:24
(спустя 3 мин., ред. 27-Май-18 21:24)
sr тренится очень быстро, оригинальная 64-32 слоя занимает 30кб, тут увеличенная и всё равно тренится быстро забудь про цпу, на гпу быстрее и эффективнее. Короче sr тема бред как по мне. Лучше искать новые модели, такие как MIAEF128 я открыл случайно.
|
|
oloth
 Стаж: 15 лет 7 месяцев Сообщений: 119
|
oloth ·
27-Май-18 21:29
(спустя 4 мин., ред. 27-Май-18 21:29)
CyberDain писал(а):
75418475sr тренится очень быстро, оригинальная 64-32 слоя занимает 30кб, тут увеличенная и всё равно тренится быстро
Так и отлично, дело за малым, эта вот плитка на сэмплах. Вы скажите их можно "малой кровью" убрать? Если нет, то я постараюсь в их коде разобраться и использовать их метод разборки и сборки изображений.
Цитата:
Короче sr тема бред как по мне.
Там много алгоритмов, можно будет если процесс отлажен заменить на более мощный.
Цитата:
Лучше искать новые модели, такие как MIAEF128 я открыл случайно.
Это классно, но у меня нет такого чутья. А super-resolution и есть новая модель.
Я бы только её приклеил к LIAEF128.
|
|
CyberDain
Стаж: 13 лет 4 месяца Сообщений: 839
|
CyberDain ·
28-Май-18 12:53
(спустя 15 часов)
в sr копайся сам, более ничем не помогу.
|
|
oloth
 Стаж: 15 лет 7 месяцев Сообщений: 119
|
oloth ·
28-Май-18 16:11
(спустя 3 часа)
CyberDain писал(а):
75421012в sr копайся сам, более ничем не помогу.
Конечно, благодарю за показанный путь. Я уже дальше своими силами. Похоже, что потенциал большой, дело за выбором алгоритма.
|
|
oloth
 Стаж: 15 лет 7 месяцев Сообщений: 119
|
oloth ·
28-Май-18 20:23
(спустя 4 часа, ред. 28-Май-18 20:23)
Для liaef128 было бы очень круто, единственная просьба тренировать x4 сразу в 512 вектор, по ресурсам это всеравно одинаково. Эти алгоритмы работают неплохо, особенно DDSR, но тоже пока нет времени разобраться как сшить результат безшовно.
Потом ему надо показывать куски увеличенных картинок, и их уменьшенные аналоги, например 64->32. Я видел как у Вас в модели реализовано извлечение features, но возможно sklearn extract_patches_2d более очевидный подход, так как там можно сразу указать размер извлекаемой картинки. Интересно, а что если попробовать извлекать случайные кусочки не из папки aligned, а из картинок src и dst поочерёдно (картинки тоже выбирать случайным образом, но без повторов). Пусть учится потихоньку, торопиться некуда. Я кстати видел зрачки, глаза, и ресницы на той модели, что Вы дали, правда свёртки существенно уменьшил в размерах до обычной ESR модели.
|
|
CyberDain
Стаж: 13 лет 4 месяца Сообщений: 839
|
CyberDain ·
29-Май-18 10:50
(спустя 14 часов, ред. 29-Май-18 10:50)
sklearn extract_patches_2d это не гпу версия.
"Пусть учится потихоньку" - эта фраза меня вымораживает 
в ходе экспериментирования с GAN, нашел новый конфиг автоэнкодера
результат на 34к эпох https://webm.video/i/BqUtfY.mp4
прикол в том что размерность выходного кода dense = 64, отсутствие интер-слоёв, батч=8 для 6гб карты, тренировка была на сэмплах без рандом варпа по сетке, т.е. только смещенные сэмплы, сеть тренится в 1 проход сразу на всех сэмплах, т.е. веса обновляются 1 раз после анализа двух пар сэмплов.
Лицо на вид тоже морфится под размерность бошки: в третьей строке видно как щека растягивается. + нейронка отлично предсказала ракурсы которых нет в источнике: это голова повернутая наверх, путин всегда из под низу смотрит.
правда не факт что она хорошо подойдет для замены лица, но как минимум модель управления лицом уже будет
|
|
Dimon146
Стаж: 17 лет 8 месяцев Сообщений: 123
|
Dimon146 ·
29-Май-18 14:07
(спустя 3 часа)
Обалдеть. Ты шедевр создал! Менял лицо в клипе, где полутьма, сцена и постоянно бегающие по лицам цветовые прожектора.
Режим (1) hist match вытянул всё!!! Никаких искажений, потери цветности, выпадающего квадратика!
Я пытался такое такое на дипфейке сделать, - получил жуть, а тут как живьем снято.
Еще раз, - Спасибо.
|
|
oloth
 Стаж: 15 лет 7 месяцев Сообщений: 119
|
oloth ·
29-Май-18 17:55
(спустя 3 часа, ред. 29-Май-18 17:55)
Цитата:
sklearn extract_patches_2d это не гпу версия.
Её применяют в тех super-res примерах, непринципиально.
Цитата:
"Пусть учится потихоньку" - эта фраза меня вымораживает
Поясню, обучение super-res тензора не приязанно к обучению автоэнкодера для предсказания лиц, он не должен замедлять общий цикл,
и может спокойно работать на CPU в соседнем процессе, так как связи между эпохами здесь никакой. При размере изображения 256 обучение
такой простой нейросети вполне возможно, также ей не требуются десятки тысяч эпох, чтобы стать эффективной.
Если Вы отбросите эмоции, есть ещё один интересный тэнзор это de-blur для расфокусированных изображений. Работает он хорошо,
только на том же материале, на котором его изначально обучали, т.е. в жизни малопригоден, но в нашем редком случае,
как раз будет крайне эффективен. Могу найти ссылку, но его также легко найти как и суперрес.
Выход таких предсказателей, как faceswap всегда мутные линии, и градиенты лишённые деталей, так,
что совмещение этих технологий вполне позволит создавать все эти фейки любимых политиков для мониторов 4к.
Цитата:
нейронка отлично предсказала ракурсы которых нет в источнике: это голова повернутая наверх, путин всегда из под низу смотрит.
Обычные автогенераторы это тоже делают при бо́льших ресурсах. При 12 слоях даже сшивают совершенно новые лица + ракурсы из кусков.
Я делал видео с эльфом, но у меня было всего ~40 рисунков из интернета в итоге получилась такая неплохая обобщённая модель со любых сторон.
С информацией о положении головы обучение происходит гораздо быстрее, что собственно отличает Ваши модели в лучшую сторону, от того же faceswap.
|
|
CyberDain
Стаж: 13 лет 4 месяца Сообщений: 839
|
CyberDain ·
29-Май-18 18:06
(спустя 10 мин., ред. 29-Май-18 18:06)
CPU как я уже говорил это бред. sr можно обучить просто до N эпох и автоматически прекратить. только sr пока нафиг не нужна. Ультра четких лиц нет. Тот же трамп видео достаточно не четкое, и если кейдж будет еще четче - станет не реалистично.
|
|
oloth
 Стаж: 15 лет 7 месяцев Сообщений: 119
|
oloth ·
29-Май-18 20:36
(спустя 2 часа 29 мин., ред. 29-Май-18 20:36)
Так мы же применяем sr на вывод предиктора, который теряет все детали. Потом ESR не повышает чёткость, он повышает разрешение, и восстанавливает детали.
Просто посмотрите на выходе на Кэйджа даже после 100 эпох это обсосанный кусок мыла - линии и градиенты. Никаких деталей лица не сохраняется.
Нейросеть не меняет лица, она закрашивает лицо обсосанной аппроксимацию. Я специально для Вас натренирую самую чёткую из нейросетей, на пристойном видео и покажу пример, где исходник и целевое видео не размытое 144p снятое с видеокассеты, а нормальные blue-ray качества сьёмки. (Да даже в ДВД качестве будет заметно, если это снято не на домашнюю кинокамеру).
Можно сделать ещё проще, морфить dst в dst, чтобы стало видно, что пропадают вообще ВСЕ детали. Это не камень в огород DeepFaceLab, все подобные пакеты так работают. PS: Я ещё сам не пробовал, вдруг я не прав.
|
|
Dimon146
Стаж: 17 лет 8 месяцев Сообщений: 123
|
Dimon146 ·
29-Май-18 21:56
(спустя 1 час 20 мин., ред. 29-Май-18 21:56)
CyberDain писал(а):
75427965это на урезанной H128 ? =)
Ну, да. Да медленно, эпох много надо, уже больше 300 кило и не предел, ну и фиг с ним. Запас памяти не ограничивает работу на компе. Вот сейчас и тебе пишу и фильм смотрю и эпохи в трее спокойно считаются.
|
|
oloth
 Стаж: 15 лет 7 месяцев Сообщений: 119
|
oloth ·
29-Май-18 22:36
(спустя 40 мин., ред. 29-Май-18 22:36)
Dimon146, поставьте её второй картой просто у вас куча места на ней освободится сразу. Также если хотите, я могу показать через TeamView как модифицировать тензор, чтобы он влезал почти не урезанный в память.
|
|
da771
Стаж: 16 лет 2 месяца Сообщений: 160
|
da771 ·
01-Июн-18 20:37
(спустя 2 дня 22 часа)
Обсуждения затихли... наверное готовится что-то новое, прорыв в высокие разрешения, да ?
|
|
CyberDain
Стаж: 13 лет 4 месяца Сообщений: 839
|
CyberDain ·
01-Июн-18 20:42
(спустя 4 мин.)
откуда? всё выжато на максимум из текущих видюх.
|
|
da771
Стаж: 16 лет 2 месяца Сообщений: 160
|
da771 ·
01-Июн-18 21:21
(спустя 39 мин.)
Тогда ждём новое поколение GTX c 16Гб на борту, я в любом случае планирую проапгрейдится со своей 1070 ))
|
|
oloth
 Стаж: 15 лет 7 месяцев Сообщений: 119
|
oloth ·
02-Июн-18 05:01
(спустя 7 часов, ред. 02-Июн-18 05:01)
Пока нечего обсуждать,
CyberDain, если Вы всётаки захотите добавить супер рес: https://github.com/jiny2001/dcscn-super-resolution
Эта версия работает с версиями библиотек DeepFaceLab, т.е. его не нужно ещё отдельно адаптировать.
|
|
CyberDain
Стаж: 13 лет 4 месяца Сообщений: 839
|
CyberDain ·
03-Июн-18 11:50
(спустя 1 день 6 часов, ред. 03-Июн-18 11:50)
Я щас доделываю аватар модель для приколов.
Нашел схему как управлять лицом без морфинга, тогда и косяков с неизвестными направлениями меньше.
до https://webm.video/i/QxuQ3w.mp4
после https://webm.video/i/OYiTK3.mp4
|
|
oloth
 Стаж: 15 лет 7 месяцев Сообщений: 119
|
oloth ·
04-Июн-18 14:09
(спустя 1 день 2 часа)
Присутствует некая проблема обучения в профиле, проблема замечена на всех моделях.
Как видим, здесь профиль Кэйжа смазан в области носа.
|
|
CyberDain
Стаж: 13 лет 4 месяца Сообщений: 839
|
CyberDain ·
04-Июн-18 15:09
(спустя 59 мин.)
не смазан, всё по маске, а точка маски носа в основном внутри контура лица
|
|
oloth
 Стаж: 15 лет 7 месяцев Сообщений: 119
|
oloth ·
04-Июн-18 16:00
(спустя 50 мин., ред. 04-Июн-18 16:00)
Спасибо, я ещё считаю отстранение MIAEF256 необоснованным. Когда я тренировал H128 при 64 батче, даже на 50к эпохах всё ещё было крайне размыто, но на 100к эпохах у героев появились глаза, зрачки, ресницы и зубы, при этом ошибка всё время стояла на месте.
Думаю логично MIAEF256 проверить на аналогичном количестве эпох. Между тем она ещё и гораздо больше в размерах и точное время её полного обучения вообще неизвестно.
Я понимаю, что это никак не влияет на возможность её применения мной. Но было бы справедливо, что и другие могли бы попробовать.
|
|
CyberDain
Стаж: 13 лет 4 месяца Сообщений: 839
|
CyberDain ·
04-Июн-18 16:33
(спустя 33 мин., ред. 04-Июн-18 16:33)
оказывается форки не ищутся в поиске github, пересоздаю репозиторий ... oloth натрень что-либо сравнительное MIAEF128 vs MIAEF256 , чтобы можно было выложить на главную страницу и показать сравнительно, что вот посмотрите по пикселям это лучше только не кейдж-трампа, это фейловый результат для MIAEF.
|
|
Dimon146
Стаж: 17 лет 8 месяцев Сообщений: 123
|
Dimon146 ·
04-Июн-18 21:13
(спустя 4 часа, ред. 04-Июн-18 21:13)
CyberDain писал(а):
75445000откуда? всё выжато на максимум из текущих видюх.
Не всё. Та же 1050, при 4-х гигах
Один добрый человек сделал. 
И наблюдение. При конвертации больший процент не обнаруженных лиц чем в предыдущих версиях, хотя извлекалка их удачно нашла и поместила в папку aligned
|
|
CyberDain
Стаж: 13 лет 4 месяца Сообщений: 839
|
CyberDain ·
04-Июн-18 21:33
(спустя 20 мин., ред. 04-Июн-18 21:33)
поэтому надо смотреть с отладкой в каких кадрах что обнаружилось, и при случае делать с ручной правкой
|
|
oloth
 Стаж: 15 лет 7 месяцев Сообщений: 119
|
oloth ·
05-Июн-18 08:41
(спустя 11 часов, ред. 05-Июн-18 08:41)
Цитата:
oloth натрень что-либо сравнительное MIAEF128 vs MIAEF256
Обязательно как будет время. Она очень медленная.
Я кажется понял, почему shaoanlu творит таких мутантов. Он использует свой собственный слой активации, на вроде PReLu, только более адванснутый, который оценивает картинку, и дорисовывает куски, имеет предпочтения (аналогично биологическим слоям активации). Для этого у него Adversary попытаться стабилизировать генератор. Гениальный подход, только не работает. Я сделал тоже самое с YawYaw128, без GA, он вообще не создает ни 1 похожей картинки. Постоянно экспериментирует с вводом, вместо 5, 28 слоёв создалось. Не зависимо от ввода он постоянно создаёт какие то под-детски наивные лица, похожие на те, которые рисовали в эпоху возрождения на полунагих девицах.
Чем мне подход понравился, что он не делает предпочтения target A, со схожей гистограммой. Больше всего в автогенераторах это напрягает.
|
|
CyberDain
Стаж: 13 лет 4 месяца Сообщений: 839
|
CyberDain ·
05-Июн-18 11:24
(спустя 2 часа 43 мин., ред. 05-Июн-18 11:24)
вообще-то в любой GAN дискриминатор создан для того, чтобы генератор стремился выдавать результат, который устраивает дискриминатор. А дискриминатор стремится подгонять под раздел "устраивает" - реальные картинки, а "не устраивает" - то что выдает генератор. В этом плане дискриминатор может по сути быть любым оценщиком например предтренированной моделью, которая узнавала бы зубы на картинке, а генератор бы стремился эти зубы везде добавить, даже если их там нет.
Пока что ни один GAN не может выдать что-либо вразумительное с лицами в видео. Везде какие-то придумки в картинку добавляются.
Посмотрим на релиз deep video portraits https://www.youtube.com/watch?v=qc5P2bvfl44 в августе, но подозреваю, что простым смертным это будет недоступно, из-за необходимости иметь кучу предтренированных моделей-естиматоров, а также я думаю видюхи с минимум 16гб памяти, чтобы уместить огромную четкую модель генератора и эту кучу естиматоров.
С гистограммой я пробовал сделать дискриминатор, который бы учил только гистограмму , и говорил бы что вот эта гистограмма правильная, а эта нет - но не получилось) хз как сделать.
|
|
oloth
 Стаж: 15 лет 7 месяцев Сообщений: 119
|
oloth ·
05-Июн-18 23:14
(спустя 11 часов, ред. 05-Июн-18 23:14)
CyberDain писал(а):
75463021вообще-то в любой GAN дискриминатор создан для того, чтобы генератор стремился выдавать результат, который устраивает дискриминатор ... С гистограммой я пробовал сделать дискриминатор, который бы учил только гистограмму , и говорил бы что вот эта гистограмма правильная, а эта нет - но не получилось) хз как сделать.
CyberDain, я примерно в курсе метода работы GAN. Но, например, Ваши сети, и так выдающие хороший результат, вряд ли испортит внедрение дискриминатора. А тот же GAN2.1 сам по себе генерирует какуе-то муть, настолько жуткую, что даже дискриминатор его не спасает.
С гистограммой у меня немного другая идея/тема. Если dst (targetA) снят днём, а в src (targetB) суп из картинок под разными углами, снятыми в неоднородных условиях освещённости, то автоэнкодер предпочтёт учиться по тем, что похожи на услвоия dst, игнорируя (в ущерб качеству) те картинки из src, которые хоть и сняты под схожыми углами, но имеют сильно отличную гистограмму. Такие картинки почти игнорируются автогенераторами с LeakyRelu, приводя к моргающему результату и странным морфам под разными углами. Такая ситуация отчасти избегается только MIAEF, хотя не до конца. В кратце, если в dst человек смотрит вниз и улыбается, и в src есть такая же картинка, с большой вероятностью автоэнкодер её пропустит, если их гистограммы слишком отличаются (из за разных условий освещённости, к примеру).
Моё предложение, внедрения альтернативного тренера, приводящего гистограммы dst (targetA) к эталонной картинке historgam.png, совершенно неважно в каких условиях была снята эталонная картинка, главное, что весь набор теперь будет иметь схожие условия освещения и оттенков, тем самым избегая проблемы предпочтения. Это слегка испортит исходные цвета, но улучшит тренировку, а главное уменьшаться мерцания и несовпадения лиц при переходах углов.
|
|
CyberDain
Стаж: 13 лет 4 месяца Сообщений: 839
|
CyberDain ·
05-Июн-18 23:40
(спустя 25 мин.)
я предполагал, что автоэнкодер усредняет все лица.
Привести к одной гистограмме суп это значит на лице будут яркие точки либо очень темные лица из-за бэкграунда.
Т.е. по твоему с разными активациями можно получить разную интерполяцию неизвестных углов? Собсно изначальная идея miaef чтобы привести гистограмму кейджа к трампу. В идеале бы это сделать через gan =)
|
|
oloth
 Стаж: 15 лет 7 месяцев Сообщений: 119
|
oloth ·
06-Июн-18 10:18
(спустя 10 часов, ред. 06-Июн-18 10:18)
CyberDain писал(а):
75466119я предполагал, что автоэнкодер усредняет все лица.
Я тоже, но он имеет сильное предпочтение по гистограмме, и чем больше разница, тем хуже усреднение.
CyberDain писал(а):
Привести к одной гистограмме суп это значит на лице будут яркие точки либо очень темные лица из-за бэкграунда.
Возможно, стоит попробовать. Когда мы делаем match historgam у лица при конверторе этого не происходит, хотя понятно, что здесь маска
и face-hull обрезают бэкграунд, который не частвует в приведении гистограмм. Возможно стоит эталонное изображение всё таки выбирать без бэкграунда.
CyberDain писал(а):
Т.е. по твоему с разными активациями можно получить разную интерполяцию неизвестных углов?
Разные активации дают разный уровень "усреднения" или обобщения. Это совершено точно. Неизвестных - не знаю, а вот известных,
но отличных по гистограмме от исходника - да. Смешать 4 лица в 1 без "прыжков" тоже удалось только с активацией ШаоЛиня из GAN2.1 (на YAWYAW).
Могу кинуть модель, но сомневаюсь, что Вам будет интересно.
CyberDain писал(а):
Собсно изначальная идея miaef чтобы привести гистограмму кейджа к трампу. В идеале бы это сделать через gan =)
MIAEF в некотором роде EPIC Win не в том плане, что он хорошо воспроизводит A в B, а в том, что он крайне стабилен в отличие от стальных моделей.
Он не прыгает, не меняет форму, не производит каких-то броский морфов и в целом выглядит как одна чёткая 3д маска.
В некотором роде при удачном определении лиц на видео, MIAEF единственный, кто не "палится" как замена лица.
Вот, например, дата-сет один и тот же, а уровень обобщения совершенно разный.
Сверху H128, снизу YawYaw c Шаолиньской версией PRelu, (сразу после) Relu.
|
|
CyberDain
Стаж: 13 лет 4 месяца Сообщений: 839
|
CyberDain ·
06-Июн-18 17:41
(спустя 7 часов, ред. 06-Июн-18 17:41)
че за нах? откуда мультяшное лицо. Но снизу и fullface же, сверху halfface Попробовал я тут для теста H64 перевести на низкоуровневую модель, которая через K.Function напрямую тензорами ворочить.
Получается что одна эпоха тренировки делается в один проход и веса энкодера обновляются 1 раз после анализа и src и dst.
Вышло ускорение тренировки на 10% на 1060 6GB и на 15% GT 730 2GB.
+ смотри разницу на 13-й эпохе при батче 2 старая модель:
новая модель:
60я эпоха: старая модель:
новая модель:
теперь думаю надо все модели переводить на эту концепцию, т.к. получаем не только ускорение тренировки по времени батча, но и более лучший поиск общих фич лиц? -
вот только multigpu не работает с K.function =\ и на DF при батче 16 почему-то наоборот медленнее этот режим, видимо из-за нехватки памяти
Вощем сделал эту тему только для H64, H128 без K.function
|
|
|