Это официальный реподжирий для статьи «Генерация амбиграммы с помощью диффузионной модели». Эта статья принята на ICDAR 2023.
【 ОБНОВЛЯТЬ 】
2023/07/20: Ambifusion2 открыта. Этот метод может генерировать амбиграммы с любой парой изображений, указав два подсказки в качестве пары.
TL; DR
ambigramability
, объективную меру того, насколько легко генерировать амбиграммы для каждой буквной пары. Амбиграммы представляют собой графические конструкции букв, которые можно прочитать не только из исходного направления, но и по вращающемуся направлению (особенно с 180 градусами). Проектирование амбиграмм трудно даже для человеческих экспертов, потому что поддерживать их двойную читаемость в обоих направлениях часто сложно. В этой статье предлагается модель генерации амбиграммы. В качестве модуля генерации мы используем диффузионную модель, которая недавно использовалась для создания высококачественных фотографических изображений. Указав пару классов букв, таких как «A» и «B», предлагаемая модель генерирует различные изображения амбиграмм, которые можно рассматривать как «A» из исходного направления и «B» из направления, повернутого на 180 градусов. Количественный и качественный анализ экспериментальных результатов показывает, что предлагаемая модель может генерировать высококачественные и разнообразные амбиграммы. Кроме того, мы определяем амбиминальность, объективную меру того, насколько легко генерировать амбиграммы для каждой буквной пары. Например, пара «A» и «v» показывает высокую амбинативность (то есть легко генерировать их амбиграммы), а пара «D» и «k» показывает более низкую амбинаруемость. Ампутальность дает различные намеки на генерацию Ambigram не только для компьютеров, но и для людей.
Наш предлагаемый метод генерирует амбиграммы, как следующие примеры.
Сложное число - это счет в амбинажировке (↑) буквенной пары. Верхние три ряда являются довольно простыми парами классов (с более высокими показателями амвозможности), а три нижних трех - нет.
Мы проверили все коды в Python: 3.8.10
. Вы можете скачать внешние библиотеки с pip
в следующем.
pip install torch==1.11.0+cu113 torchvision==0.12.0+cu113 torchaudio==0.11.0 --extra-index-url https://download.pytorch.org/whl/cu113
pip install -r requirements.txt
Вы также можете скачать предварительно обученные веса. Замените все псевдонимых файлов weight_name.txt
на загруженный файл реального веса.
python demo.py
127.0.0.1:11111
с вашим веб -браузером. TestConfigs
в ambigram_random_sample.py
. python ambigram_random_sample.py
TestConfigs
в calc_ambigramability.py
. python calc_ambigramability.py
TrainConfigs
в configs/trainargs.py
. Если вы хотите, вы можете изменить DA_ambigram_configs.yaml
(детали упоминаются в разделах 3.2 в статье). ## Run on single gpu
python ambigram_train.py
## Run on multiple gpus
mpiexec -n [NUM_GPUs] python ambigram_train.py
ПРИМЕЧАНИЕ [1]: Если вы хотите генерировать амбиграммы, используя classifier-free guidance
, вам нужно обучать как условную модель, так и безусловную модель отдельно.
@article{shirakawa2023ambigram,
title={Ambigram Generation by A Diffusion Model},
author={Shirakawa, Takahiro and Uchida, Seiichi},
booktitle={2023 17th international conference on document analysis and recognition (ICDAR)},
year={2023}
}