AnyText: создание и редактирование многоязычного текста на изображении, с возможностью управления для создания нескольких строк китайского языка на изображении
Общее введение
AnyText - это революционный инструмент для создания и редактирования многоязычного визуального текста, разработанный на основе диффузионной модели. Он генерирует естественный, высококачественный многоязычный текст на изображениях и поддерживает гибкие возможности редактирования текста. Разработанный командой исследователей и удостоенный награды Spotlight на ICLR 2024, AnyText имеет уникальную двухмодульную архитектуру: модуль вспомогательного потенциала кодирует текстовые глифы, положение и информацию о маскировке изображения, а модуль встраивания текста обрабатывает данные о штрихах с помощью модели OCR. Проект также предоставляет набор данных AnyWord-3M, первый многоязычный набор данных текстовых изображений, содержащий 3 миллиона пар с аннотациями OCR, который является важным оценочным эталоном для области визуальной генерации текста.

Опыт работы: https://modelscope.cn/studios/damo/studio_anytext/summary
Альтернативный адрес: https://huggingface.co/spaces/modelscope/AnyText
Список функций
- Генерация многоязычного текста: поддержка генерации многоязычного текста на изображениях
- Текстовый редактор: Вы можете редактировать и изменять текстовое содержимое существующих изображений.
- Контроль стиля: поддержка изменения стиля генерируемого текста с помощью базовой модели или модели LoRA
- Ускорение вывода FP16: поддержка быстрого вывода и работа на графических процессорах с более чем 8 ГБ видеопамяти
- Перевод с китайского и английского: встроенная модель перевода с китайского и английского, поддержка прямого ввода китайских слов-подсказок
- Пользовательские шрифты: позволяет пользователям использовать собственные файлы шрифтов
- Пакетная обработка: поддерживает пакетное создание и редактирование текста изображения
- Объединение моделей: поддержка объединения весов модели сообщества и модели LoRA
Использование помощи
1. Экологическая установка
- Сначала убедитесь, что Git установлен в вашей системе:
conda install -c anaconda git
- Клонируйте код проекта:
git clone https://github.com/tyxsspa/AnyText.git
cd AnyText
- Подготовьте файл шрифта (рекомендуется Arial Unicode MS):
mv your/path/to/arialuni.ttf ./font/Arial_Unicode.ttf
- Создайте и активируйте окружающую среду:
conda env create -f environment.yaml
conda activate anytext
2. Методы использования
2.1 Быстрый старт
Самый простой способ проверить это - выполнить следующую команду:
python inference.py
2.2 Запуск интерактивной презентации
Демонстрационный интерфейс рекомендуется для графических процессоров с лучшей конфигурацией (8 ГБ и более видеопамяти):
export CUDA_VISIBLE_DEVICES=0 && python demo.py
2.3 Расширенная конфигурация
- Используйте точность FP32 и отключите транслятор:
export CUDA_VISIBLE_DEVICES=0 && python demo.py --use_fp32 --no_translator
- Используйте пользовательские шрифты:
export CUDA_VISIBLE_DEVICES=0 && python demo.py --font_path your/path/to/font/file.ttf
- Загрузите определенные контрольные точки:
export CUDA_VISIBLE_DEVICES=0 && python demo.py --model_path your/path/to/your/own/anytext.ckpt
3. Стилистические корректировки
В демонстрационном интерфейсе стиль генерируемого текста можно настроить двумя способами:
- Изменить базовую модель: заполните путь к локальной базовой модели в [Путь базовой модели].
- Загрузка модели LoRA: введите путь модели LoRA и соотношение веса в [LoRA Path and Ratio], например:
/path/of/lora1.pth 0.3 /path/of/lora2.safetensors 0.6
4. оптимизация производительности
- По умолчанию используется вывод FP16, при этом загружены модели перевода на китайский и английский языки (занимают около 4 ГБ видеопамяти).
- При использовании FP16 и отсутствии модели трансляции одно изображение размером 512x512 требует всего около 7,5 ГБ видеопамяти.
- При первом запуске файлы модели загружаются в
~/.cache/modelscope/hub
каталог (на жестком диске компьютера) - Это можно сделать, установив переменную окружения
MODELSCOPE_CACHE
Измените каталог загрузки
5. предостережения
- Убедитесь, что установлена правильная версия пакета зависимостей
- Использование пользовательских шрифтов может повлиять на генерацию
- Для первого запуска модели необходимо загрузить соответствующие файлы
- Рекомендуется использовать GPU с 8 ГБ видеопамяти и выше.
AnyText генерирует инструкции по работе с изображениями
пример работы
AnyText имеет два режима работы: генерация текста и редактирование текста, каждый режим предоставляет множество примеров, выберите один из них и нажмите [Run!
Обратите внимание, что перед запуском примера убедитесь, что нарисованная от руки область расположения пуста, чтобы не повлиять на результаты примера. Кроме того, разные примеры используют разные параметры (такие как разрешение, количество семян и т.д.), если вы хотите создать свой собственный, пожалуйста, обратите внимание на изменения параметров, или обновите страницу, чтобы вернуться к параметрам по умолчанию.
Генерация текста
В строке Prompt введите описание слова подсказки (поддержка китайского и английского языков), необходимо сгенерировать каждую строку текста, заключенную в двойные кавычки, а затем последовательно вручную указать местоположение каждой строки текста для генерации изображения. Расположение текста очень важно для качества изображения, пожалуйста, не рисуйте слишком случайные или слишком маленькие позиции, количество позиций должно быть таким же, как количество строк текста, размер каждой позиции должен быть согласован с длиной или шириной соответствующей строки текста, насколько это возможно. Если вы не можете рисовать вручную (Manual-draw), вы можете попробовать перетащить прямоугольник (Manual-rect) или произвольно сгенерировать (Auto-rand).
При генерации нескольких строк каждая позиция сортируется по определенным правилам, чтобы соответствовать строке текста, а параметр Sort Position используется для определения приоритета сортировки: сверху вниз или слева направо. В настройках параметров можно включить опцию Show Debug, чтобы наблюдать за положением текста и глифами на изображении результата. Также можно отметить опцию Revise Position, которая будет использовать внешний прямоугольник отрисованного текста в качестве корректируемой позиции, хотя иногда оказывается, что текст, созданный таким образом, менее креативен.
редактор копий
Загрузите редактируемую картинку в качестве эталонной (Ref), затем, настроив размер обводки, закрасьте редактируемую позицию на эталонной картинке и введите слова подсказки описания и содержимое текста для изменения в подсказке для создания картинки.
Эталонное изображение может быть любого разрешения, но внутренняя обработка ограничивает длинную сторону не более чем 768, а ширина и высота масштабируются до целого числа, кратного 64.
© заявление об авторских правах
Авторское право на статью Круг обмена ИИ Пожалуйста, не воспроизводите без разрешения.
Похожие статьи
Нет комментариев...