DeepFakes

DeepFakes


Хули столько текста, где скачать то блять???

Относительно современную 2.2 скачивай по гайду отсюда:

https://www.fakeapp.org/forum/releases-tech-support/releases

Если хочешь православную, но уже устаревшую версию 1.1:

https://mega.nz/#!hTgA2b6b!mI6k9dFt_w__jIEUQO2ZePhzFMg6JWUpBZWiV2TDgs4

Оригинальный скрипт (для мазохистов):

https://anonfile.com/p7w3m0d5be/face-swap.zip

Более продвинутый скрипт (куда более тяжелый, но потенциальные результаты на порядок более правдоподобны):

https://github.com/shaoanlu/faceswap-GAN

Альтернативное приложение с возможностью юза GAN (кривое, косое, с кучей багов - автор обещает когда-нибудь допилить, но походу забил):

https://radek350.wordpress.com/2018/02/17/myfakeapp-fakeapp-alternative/


Это /e , какие нейросети?

- Речь идет про скрипт от товарища с reddit под ником deepfakes, который уже проник по всем новостям (погугли новости со словами "порно" и "нейросеть", который учит твой компьютер заменять одно лицо другим. Разумеется, приспособили это в первую очередь для создания порнофейков. Порно двигает прогресс, блять. Примеры можете видеть в прикрепе. В связи с разорвавшимися сраками как знаменитостей, с которыми ВНЕЗАПНО появилось много порнухи, так и порнозвезд, тела которых стали юзать без лица, лол, и, до кучи, всегда желающих пернуть о том, как их ущемляют (точнее о том, что на них никто не хочет дрочить), фемок, все соответствующие реддиты, где все и концентрировалось, были выпилены, а потому сообщество разлетелось на осколки. Кто-то сидит в опр. разделах на аиб и регулярно тонет, кто-то сидит на полумертвых форумах типа того же fakeapp.org, кто-то решил, что это противозаконно (тут можно долго спорить - но если ты делаешь фейки для себя, не заливаешь их на сайты с монетизациями и не берешь за это деньги, ничего тебе не грозит) и ушел в даркнет. Мы вот сидим тут, ждем пока мамка купит новую ВК.


Скрипт? Что такое скрипт, блять, я не погромист-кун!

- Не волнуйся, всё уже упаковали в обычное приложение. Оно не так уж просто в использовании, но разобраться - легче простого, особого IQ не надо. Разработчики немного прихуевать начинают в последнее время, конечно, но пока что всё работает забесплатно, без регистрации на самом деле с ней и смс. Майнер, о котором было столько криков, из нынешней версии выпилен. на самом деле, просто выключен разрабами, ибо много вони поднялось


Технические требования?

- Высокие.

В первую очередь, это видеокарта от Nvidia с Compute Capability не менее 3.0 и не менее 2Gb видеопамяти. Это абсолютный минимум. А вообще, нужна какая-нибудь йоба из последних поколений. Во-вторую, это винда. Любая с поддержкой Visual Studio 2015+CUDA 9.0.

Проверить Compute Capability своей ВК можно тут:

https://developer.nvidia.com/cuda-gpus

Имей в виду, что если у тебя что-то слабее 6-гиговой 1060, ты даже в теории не можешь надеяться на хорошие результаты. В лучшем случае - относительно правдоподобное "мыло", не более того. Увы.


У меня AMD видеокарта/макось/линукс/спектрум

- В любом случае придется быть погромистом, чтобы что-то суметь. Все на несколько порядков сложнее. 99.9999%, что ты не справишься. Нет, это действительно сложно. Придется ставить линух, пересобирать половину библиотек на OpenCL, ебаться с 50 консолями, где-то править исходники задействованных программ, и то не факт что поползет. Если ты хоть полслова не понял, даже не берись. Гайд найдешь в боковом меню на сайте, ссылка на который в самом конце поста.


Я соснул, мой компьютер не подходит. Это конец?

- Можно арендовать виртуальную машину с видеокартой у облачных сервисов - рекомендую Google Cloud Services/Microsoft Azure, т.к. можно пощупать бесплатно. Платить за это не стоит - аренда ВК очень дорогая, не стоит оно своих денег. Гугл предоставляет 300$ триальных денег после закидывания на счет 35$ реальных. Если не использовать триал до конца и отменить подписку впоследствии - 35$ реальных вернут. Мелкософт предоставляет 12500 рублей триала. Однако действуй на свой страх и риск - оба способа невозможны без привязки живой кредитки, и если не понимать, что делаешь - рискуешь попасть на деньги после окончания триальных денег. Серьезно так попасть, ибо час работы K80 стоит порядка 35-55 рублей, а P100 - от 50 до 90 рублей. Считай, сколько накапает долга за месяц, если забудешь выключить машину. И да, спишут его только в конце месяца, с кредитки, не спрашивая.

Короче говоря - сомневаешься в том, что ты всё в этом понимаешь - не лезь, она тебя сожрет нахуй. Тебя предупредили.

Ввиду убогости частоты серверных процессоров, ты будешь ограничен именно ею (а не мощностью ВК) в скорости трейна - в P100 смысла особого нет, бери K80, которые дешевле. И да, скорость процесса будет относительно низкая - "профессиональность" видеокарт тут не дает никакого профита, ибо, повторюсь, все упирается в убогость частоты серверных ядер и неоптимизированность самого скрипта под использование на серверных машинах.


Как долго занимает создание фейка?

- Вообще, сильно зависит от железа. В общих чертах - от 6 до 24 часов на мощном железе (1070+), и от 12 до 100 часов на минималках. При использовании GAN - от 10 часов до бесконечности.


Каков принцип работы?

- Вообще, процесс состоит из 3 этапов. В разных местах их называют по-разному, постараюсь привести все названия.

Подготовка:

Для работы программе понадобятся МНОГО (от 100 до бесконечности) фотографий с лицом обоих действующих лиц (порноактрисы и той/того, чье лицо будем вставлять). Для порноактрисы идеальными будут кадры из этого же видео, в которое планируется вставка (ffmpeg либо приложение версии 2.1). Для цели... лучше всего найти какое-нибудь видео с ней, чтобы оттуда набрать кадров. Для знаменитостей - это какие-нибудь интервью, обычно. Если просто скормишь проге все её фотки из ВК/гугла/итд, тоже сойдет, но программе будет на порядок сложнее из-за разных макияжей, освещений, да просто возраста в момент фотографии. Итак, у тебя должно быть две папки с кучей фоток обеих актрис.

1. Align/Extract/Faceset Creation/Get Dataset: Ищет лица на предоставленных тобою фото, вырезает их в отдельную папочку, и записывает файлик alignments.json , где помечает в текстовом виде, на какой фотке где нашел какое лицо. Этот файл может быть будет нужен на шаге 3.

2. Train: Тренирует нейросеть заменять лица из одной папки, подготовленной на прошлом шаге, на лица из второй папки, и сам же дает оценку своим попыткам. Учится само, и очень долго. Основной, и самый долгий, вобщем-то, шаг. Показывает примерный результат своих потуг в окне превью и в окне программы путем числа loss.

3. Merge/Convert/Create: На основе данных тренировки и того, в каком кадре где находится лицо (да, надо будет все кадры всеравно прогнать через шаг 1, если тренировка велась не на них), заменяет одно лицо на другое на каждом отдельном кадре. Приложения версии 2.1+ всё это сделают за тебя, нужно лишь указать им на видеофайл и указать FPS видео.

Завершение:

В конце нужно склеить отдельные кадры обратно в видео. FFmpeg, или приложение версии 2.1+ в помощь.


Что означают настройки в приложении?

Настройки, которые "можно" трогать - 

Влияющие на Train:

Batch Size - условно говоря, сколько "пар" фоток пытается за раз зафейкать нейросеть на каждой эпохе(за раз). Определяет скорость всего процесса. Чем больше - тем тяжелее будет видеокарте. Может принимать только значения, равные степени двойки. Желательно, чтобы Batch Size был МЕНЬШЕ, чем меньшее из двух количеств файлов лиц, на которых ведется Train. Оптимально: 64 либо 128. Для 2GB-видеокарт: 16.

Layers - кол-во промежуточных "слоёв" сравнения между исходником и результатом. Изменяется с шагом в единицу, больше 4 ставить смысла особого нет. Влияет, грубо говоря, на качество выходного материала. Оптимально: 4. Для 2GB-видеокарт: 2.

Nodes - то, на сколько "кусочков" каждый промежуточный слой дробит фотку, для сравнения. Может принимать только степени двойки, влияет так же, на качество выходного материала. Оптимальное значение - 512 либо 1024. Для 2GB-видеокарт: 64.

Влияющие на Create:

Seamless - в положении On при вставке лиц в кадры видео использует отдельный скрипт SeamlessClone, который сам пытается подобрать тон кожи и границы вставляемого лица. Зачастую лажает, и на видео лицо получается "мигающим" разными цветами.

Blur/Kernel Size - работают только когда Seamless в положении Off. По сути, величина границ "смешения" и краев элементов. Чем больше значения - тем меньше будут видимы границы в местах замены лица, но тем больше будет и мыла. Если значения слишком малы - будут очевидные границы ("квадрат") лица.


Что за всраток вы тут постите? Ебаный пиздец, нонеймы одни.

Возьми да сделай фейк со своей вайфу. Тебе никто не мешает, все инструменты даны.


До какого loss тренировать?

Вообще считается оптимальным, когда почти все лоссы становятся меньше 0.01 или около того, но некоторые модели выдают на preview уже очень неплохие результата и начиная с 0.025. Смотри на превью, вобщем. Обычно, если на лоссах ~0,02 все выглядит очень крипово, даже на лицах анфас - можно не продолжать - фейссеты хуёвые.

Имей в виду, что если кажется, что loss начал "стагнировать" (кажется, что совсем перестал уменьшаться со временем) - это еще не повод заканчивать трейн и идти плакать. Если эта "стагнация" началась в районе 0.019-0.025 - это хороший признак. Просто подожди. Если же лосс упал до 0.01-0.015 без периода этой "стагнации", довольно быстро, а на превью все еще крипота - скорее всего, дело плохо.


Почему получается крипота?

Крайне редко - из-за недостатка терпения. В подавляющем же большинстве случаев - наличие "плохих" фоток в лицах, на которых ведется тренировка. Оригинальный скрипт вообще плохо переваривает:

-лица в профиль (особенно те, где не видно второго глаза), 

-очень сильно наклоненные вверх/вниз, 

-нечеткие (смазанные юустрым движением кадры) лица, 

-затененные либо наоборот пересвеченные, 

-с, извиняюсь, хуем во рту, а также с другими штуками телесного цвета типа руки, прислоненными к лицу

-с волосами, закрывающими часть лица (не считая чёлку) 

-с очками, кепкой, маской и т.д.


Желательно убирать все такие лица из папок, на которых ведется тренировка.


Также имей в виду, если ты надергал фоток своей ЕОТ из ВК, скорее всего, там есть приличный такой временной промежуток между ними, и лицо её, так или иначе, менялось (а также косметика меняется от фотки к фотке) - это также повлияет на качество выходного материала. Хотя, если она нос, к примеру, не ломала, или резко не худела/толстела - должно быть более-менее. Вообще, как показывает практика, ЕОТ сделать удается крайне редко. Слишком мало исходников и велика вероятность отсутствия видео. Если она поклонник инсты - лови и схороняй сториз, это твой счастливый билет, лол.


GAN куда лучше работает с "хуевыми" лицами (за исключением, пожалуй, нечетких и недосвета/пересвета). Но пока что, чтобы тренировать с его помощью, нужно быть немного погромистом, ибо нет адекватного приложения. MyFakeApp кривой донельзя и часто засирает результаты.


Какую порномодель искать для максимального сходства?

Основные элементы, необходимые для сходства: Фигура, прическа, форма лица+расположение глаз/рта/носа/итд. Можно еще попытаться хоть чутка похожую мимику найти. Такие вещи как форма носа, разрез глаз, форма рта - вторичны (но конечно, чем ближе - тем лучше).

Обращай внимание на татухи порномодели - зачастую именно они портят все впечатление (ну какая Эмма с татухой на всю руку, блять?)


Окей, буду пробовать. Советы вдогонку будут?

Для начала попробуй зафейкать одну сцену, с прямо смотрящим лицом модели, короткую (5-10-20 секунд). Вобщем-то, лучше вообще на длинные ролики не позариваться, делать все нарезками из отдельных коротких сцен. Иначе очень долго будет всё делаться, и с вероятностью 90% получится крипота.



Сделайте мне Поклонскую - на нее похожа Abigaile Johnson, сделайте Карину, сделайте Варлей...

Никто не будет тебе ничего тут делать. Запомни это раз и навсегда. Слишком много геморроя, времени, и высокий шанс фейла, для того, чтобы стараться и пыжиться для рандомного анона из /e.

Если прям ну очень хочется - осиль себе скачать приложение, найти подходящий видео-исходник(порно), нарезать его на кадры, найти кучу хороших кадров твоей вайфу, прогнать их через 1-й шаг процесса (выдергивание физиономий с фоток), почистить от плохих физиономий (прикрытых волосами, боком, засвеченных, затененных и т.д.) и залей эти две папки, чтобы анон потренировал на них. Это единственный вариант, при котором тут анон с хорошей ВК сделает что-то для тебя. И то, не факт, увы. Ну правда, йобы от нвидии у считанных единиц тут.

А реквесты ваши вот эти бесконечные - сделайте ту, сделайте эту - бесполезны.

Основной фак от автора похерен. Да и не нужен он уже.

Какая-никакая инфа (правда, она заточена под FakeApp 1.1), позволяющая в общих чертах понять происходящее, собрана тут:

https://www.deepfakes.club/faq/

Треды:

https://arhivach.org/thread/322726/ - первый

https://arhivach.org/thread/341428/ - второй

https://arhivach.org/thread/349389/ - третий

Ссылки: Tutorial, FAQ, туториал на ютубе,




Report Page