Иллюстрированный контент для взрослых, созданный в Японии, должен быть подвергнут цензуре по закону. Два распространенных типа цензуры включают цензурные полосы и мозаичные размытия. Для нас, дегенератов, живущих за пределами Японии, это означает, что мы также подвержены решеткам и мозаикам. Есть решение, DeepCreamPy по deeppomf, который может привлечь цензоров, учитывая, что вы говорите ему, где цензоры находятся. Это долгий и кропотливый процесс, поэтому я надеюсь автоматизировать этот процесс с помощью этого проекта. Этот проект будет использовать глубокое обучение и сегментацию изображений, методы, обычно используемые в автономных транспортных средствах и задачах компьютерного зрения. Новое для 1.6.3, мы добавили ESRGAN в качестве альтернативы DeepCreamPy, который также будет декенсорить мозаичное изображение/видео после обнаружения.
Вот видео NSFW, которое лучше показывает, что делает этот проект, на старой модели 161.
Нравится то, что ты видишь? Помогите профинанси
Пример обнаружения стержня на модели 226:
Примеры обнаружения мозаики на модели 236:
Для обоих этих примеров новейшая модель 161 обеспечивает гораздо более точные маски и обнаружение.
Приступая к работе
Вам понадобятся все те же требования, что и к реализации Matterport Mask RCNN, не более того. Обратите внимание, что я использую tensorflow 1.8.0, tensorflow-gpu 1.9.0, torch 0.4.1 и keras 2.2.0. я еще не полностью проверил стабильность новых комбинаций. Я использую Anaconda3 для своей командной строки.
Для исполняемого файла поддерживается только windows. Вы можете вытащить этот код для linux.
Код
main.py содержит графический интерфейс и все операции ввода-вывода и синтаксического анализа файлов, а также основные ошибки обнаружения. Создает экземпляр класса детектора.
detector.py содержит мой класс детектора, который отвечает за вывод нейронной сети, запуск обнаружения вывода и создание наложения из маски для DCP. Больше не нуждается hentai.py, и может запускать обнаружение самостоятельно. Также обрабатывает функциональность ESRGAN.
hentai.py интерфейсы между моим детектором и моделью. Базируется на воздушном шаре.py реализации маски RCNN. Нужен только для тренировок.
inspect_h_model.ipynb этот блокнот идентичен Блокноту с воздушным шаром. Я изменил его, чтобы работать с этим проектом вместо этого, и он лучше всего используется для проверки модели. Для детального ведения журнала используйте Tensorboard (который должен быть установлен, если у вас есть tensorflow)
inspect_h_data. ipynb То же самое, что и выше, за исключением того, что эта записная книжка используется для проверки набора данных. Также есть классная информация, показывающая некоторые причуды и особенности MaskRcnn
test_combined_generator.py скрипт, который автоматизирует цензуру баров и аннотацию, подробнее объяснен ниже. Это предназначено для размещения в отдельной папке и ожидает нецензурные изображения в папке под названием "decensored_input" и выводит запрещенное изображение в "decensored_input_original", а также заполняет csv-файл аннотациями. Вам не нужно использовать этот скрипт, если вы не хотите помочь в расширении набора данных. В таком случае присоединяйтесь к раздору и свяжитесь со мной.
hent_ai_colab_1. ipynb Google Colab notebook с инструкциями по декенсорированию видео ESRGAN. Это позволит использовать графические процессоры Google в облаке бесплатно и должно быть быстрее, чем большинство, если не все потребительские графические процессоры. Но сеансы будут удалены после 30 минут простоя или 12 часов. Я рекомендую этот вариант для любого вида декенсорирования видео, он достаточно хорош визуально и действительно быстр.
green_mask_project_mosaic_resolution.py скрипт от GMP, который оценивает детализацию мозаики (размер мозаичных коробок) для использования в esrgan decensoring.
Набор данных содержит смесь некоторых аннотаций ручной работы и в основном аннотированных изображений ручной работы с использованием нашего test_combined_generator. Этот скрипт принимает нецензурные изображения в качестве входных данных и может создать клон изображения с мозаикой и случайными полосами цензуры, используя NudeNet. Этот набор данных здесь не представлен. Вы можете связаться со мной по Discord, если вам это интересно.
Аннотации набора данных были сделаны с помощью полигональной формы. Атрибуты области штриховки и мозаики формируются следующим образом:
"region_attributes":{"censor":"bar"}} OR "region_attributes":{"censor":"mosaic"}}
Вот пример аннотаций моего набора данных (NSFW) вместе с редактором vgg.
Модель
Вам понадобится последняя модель для лучшей точности.
Просто удалите ваши текущие веса.файл h5 и замените его новым. Пожалуйста, оставьте модель с именем weights.h5
ESRGAN (только в коде) использует модель фатальных пикселей Twittman для 4-кратного суперскейлинга. Его нет на этом РЕПО, так как он защищен MPL-2.0. скачать модель 340000 можно здесь из его РЕПО. Поместите эту модель в Главный каталог.
Требования
Вам нужно будет скачать и установить DeepCreamPy, который связан во вступлении.
Исполняемому файлу понадобится ffmpeg, если вы хотите, чтобы звук передавался на видео. Место ffmpeg.exe в главном каталоге, или где-то в вашем пути, или в переменной окружения. Для linux клонируйте РЕПО и следуйте приведенным инструкциям для получения его требований. Чтобы получить ffmpeg в linux или colab, используйте:
(Исходный код на Windows) Я бы рекомендовал запустить их в виртуальной среде с помощью Anaconda3. Python 3.5.2, TensorFlow 1.8, Keras 2.2, tensorflow-gpu 1.9.0, torch 0.4.1 и другие распространенные пакеты, перечисленные в requirements.txtразделе .
На данный момент DCP требуется до тех пор, пока я не смогу создать свою собственную альтернативу. В этом проекте предполагается использовать каталог DCP. Вы можете установить исполняемый файл или исходный код, либо он должен работать.
DCP совместим только с изображениями. png, а не jpg. Либо вы используете только png, либо попробуйте использовать прилагаемый конвертер jpg (кнопка Force jpg). Вы можете использовать онлайн-инструменты, такие как jpg2png. Опять же, это должно быть сделано до всего остального.
DCP не совместим с screentones или тем пунктирным эффектом, который характерен для печатных работ (см. ниже). Просто обратитесь к моему другому проекту, Screentone Remover, который будет пакетно удалять screentones с использованием методов цифровой обработки сигналов. Это единственный способ декенсорировать печатные цветные изображения.
Вот пример экранного изображения и то, как оно выглядит, когда удаляется моим приложением Screentone Remover:
Для полного декенсорирования видео через ESRGAN вам нужно будет скачать модель Twittman здесь и поместить ее в папку ColabESRGAN/models.
Владельцы графических процессоров Nvidia должны установить CUDA 9.0 и cuDNN 7.6.4. обратите внимание, что есть проблемы с картами RTX и ESRGAN, поэтому, если вы хотите использовать их, я снова рекомендую ноутбук colab вместо этого.
Важные Примечания (читайте перед использованием)
Я настоятельно рекомендую запускать hent-AI на пакетах, например, один дуджин или несколько дуджинов сразу. Самая медленная часть hent-AI-это инициализация, поэтому первый вывод требует времени, но остальные будут быстрее.
Нынешняя модель не идеальна. Еще. Ожидайте каких-то неприятностей с белыми цензорными полосами, маленькими цензорными полосами, частично прозрачными цензорными полосами и цензорными полосами, которые слиты вместе как один большой Цензор. Любое абсурдное количество цензуры может вызвать проблемы для hent-AI.
Эта модель не обучена распознавать полную цензуру, где генеталии не рисуются вообще. Нестандартная цензура также не поддерживается.
Модель поддерживает мозаику и бруски, но она действительно борется, когда оба используются на одном и том же месте. Кроме того, DCP может генерировать только для баров или мозаик, поэтому вам нужно будет держать работы по цензуре мозаики отдельно от работ по цензуре баров. Если вы должны декенсорировать изображения с обоими, я предлагаю декенсорировать бары на одном прогоне, а затем мозаики на секундном прогоне.
Графические процессоры Nvidia, совместимые с CUDA, рекомендуются для больших объемов изображений или видео. Если у вас его нет, обратитесь к записной книжке colab.
Кнопка Video Maker создает видео с выхода DCP в decensored_output. Запустите это после завершения DCP. Примечание. вам все еще нужно выбрать каталоги для исходного видео и каталог установки DCP.
Не ставьте целые клипы через обнаружение видео, это очень медленная задача. Если вы можете, отредактируйте только короткие клипы с видимыми мозаиками, получите декенсорированный вывод, а затем отредактируйте их в остальной части видео.
Скомпилированный exe-релиз не поддерживает ESRGAN. Если вы хотите использовать это, обратитесь к записной книжке colab.
Версии и загрузки
v1. 0. 0: первоначальный релиз для 2020 Hackillinois Demo
v1.1.0: очищен код, удален ненужный импорт библиотеки, добавлены инструкции по установке и учебник. Добавлено обнаружение ошибок.
v1.2. 0: исполняемый релиз, основанный на ветви detect-only. Учебные и резервные библиотеки были удалены или перемещены. Исправлена ошибка, при которой все изображение возвращается зеленым цветом. Пониженный порог обнаружения.
v1.3.0: (exe еще не выпущен) удалена ошибка, не связанная с unicode. Добавлено всплывающее окно загрузочного экрана. Пониженный порог обнаружения. Незначительные изменения пользовательского интерфейса.
v1.5. 0: Исправлена ошибка формы оттенков серого. Исправлена ошибка, при которой видео копировалось в папку DCP. Добавлена поддержка jpg, как вариант для преобразования jpg в png. Добавлена лучшая ловля исключений. Обновлен вес до модели 236.
v1.5.2: обновлен tensorflow до 1.8 в рамках подготовки к будущим функциям обнаружения видео. Ошибки изображения больше не останавливают программу и не пропускаются. Терминальная печать более информативна. Настройки пользовательского интерфейса.
1.6.3: добавлен ESRGAN для декенсорирования видео, DCP для этого не требуется. Дальнейшая поддержка имен файлов, отличных от unicode.
1.6.5: добавлена адаптивная проверка детализации мозаики через GMP компанией rekaXua. Добавлен файл colab для бесплатного облачного декенсорирования видео ESRGAN.
1.6.7: изменены процессы ESRGAN для запуска в 2 этапа: изменение размера ESRGAN, а затем обнаружение маски. Медленнее, но память прощает больше. Добавлено размытие маски для уменьшения швов на ЭСРГАНЕ. Для не-ESRGAN добавлена пользовательская дилатация для расширения масок. Удалена опция для jpg, она будет использоваться автоматически. Улучшена Очистка файлов.
1.6.8: видео теперь будет принимать аудио из исходного видео, используя ffmpeg. Переменный битрейт видео еще не доступен, поэтому размер файла может не совпадать с исходным кодом. Теперь ESRGAN будет сохранять видео в том же каталоге, что и исходное видео, в основном для помощи с Colab.
1.6.9: незначительные настройки пользовательского интерфейса. Теперь есть файл hconfig.ini, который сохранит ваши предыдущие используемые каталоги и настройки при запуске. Во время процесса обнаружения изображений и видео будет отображаться общее количество изображений/кадров.
1.6.9 b: исправление для ESRGAN и ESRGAN video. Исправлена ошибка с файлом. ini. Примечание:. exe не влияет, поэтому нет необходимости в другой версии.
1.6.9 c: исправление для декенсорирования изображений и мозаики для colab. Примечание:. exe не влияет, поэтому нет необходимости в другой версии.
Указания по установке
Для получения подробных инструкций следуйте инструкциям ниже Install_and_Tutorial.txt
Выполнимый:
Установите по ссылкам выше
Распаковать в какую-нибудь папку
Следуйте за Install_and _tutorial для получения дополнительной информации
Код:
После клонирования этого РЕПО сначала установите требования:
pip install -r requirements.txt
Затем скомпилируйте maskrcnn:
python setup.py install
Чтобы запустить хентай, беги
python main.py
В главном каталоге. Следуйте инструкциям пользовательского интерфейса оттуда.