AnyText
论文
AnyText: Multilingual Visual Text Generation And Editing
https://arxiv.org/abs/2311.03054模型结构
模型由4部分构成,分别是Auxiliary Latent Module
,Text Embedding Module
,Text-control Diffusion Pipeline
以及Text Preceptual Loss
。
其中,Auxiliary Latent Module
可产生3种附加信息用以生成??,其中??表示字形信息,??表示文字的位置信息,??表示被遮盖的图像(保留背景信息)。
Text Embedding
用于生成???,?′表示待生成的文字,??表示待生成文字的图像信息,??表示OCR识别模型(用于提取文字特征),?表示线性层(用于约束特征尺寸),??表示encoder(CLIP)。
Text-control Diffusion Pipeline
用于生成目标结果,?0加噪t次后获得??,Text ControlNet
用于生成控制信息(copy from Unet's Encoder),???表示扩散模型损失。
Text Preceptual Loss
用于进一步提升文字生成的准确率。
算法原理
该算法借鉴ControlNet思想,并在此基础上结合了文字,图像位置等多模态信息条件,可用于多语言文本的图像生成。
环境配置
Docker(方法一)
docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:1.13.1-centos7.6-dtk-23.04.1-py39-latest docker run --shm-size 10g --network=host --name=anytext --privileged --device=/dev/kfd --device=/dev/dri --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -v 项目地址(绝对路径):/home/ -it <your IMAGE ID> bash cd BasicSR pip install -r requirements.txt cd .. pip install -r requirements.txt
Dockerfile(方法二)
# 需要在对应的目录下 docker build -t <IMAGE_NAME>:<TAG> . # <your IMAGE ID>用以上拉取的docker的镜像ID替换 docker run -it --shm-size 10g --network=host --name=anytext --privileged --device=/dev/kfd --device=/dev/dri --group-add video --cap-add=SYS_PTRACE --security-opt seccomp=unconfined <your IMAGE ID> bash cd BasicSR pip install -r requirements.txt cd .. pip install -r requirements.txt
Anaconda (方法三)
1、关于本项目DCU显卡所需的特殊深度学习库可从光合开发者社区下载安装: https://developer.hpccube.com/tool/
DTK驱动:dtk23.04.1 python:python3.9 torch:1.13.1 torchvision:0.14.1 torchaudio:0.13.1 deepspeed:0.9.2 apex:0.1
Tips:以上dtk驱动、python、torch等DCU相关工具版本需要严格一一对应
2、其它非特殊库参照requirements.txt安装
cd BasicSR pip install -r requirements.txt cd .. pip install -r requirements.txt
数据集
无(暂未开源)
推理
模型下载
魔搭社区
https://huggingface.co/openai/clip-vit-large-patch14/tree/main
damo/ └── cv_anytext_text_generation_editing ├── anytext_v1.1.ckpt ├── clip-vit-large-patch14 │ ├── config.json │ ├── merges.txt │ ├── preprocessor_config.json │ ├── pytorch_model.bin │ ├── README.md │ ├── special_tokens_map.json │ ├── tokenizer_config.json │ ├── tokenizer.json │ └── vocab.json ├── configuration.json ├── description │ ├── eval.jpg │ ├── framework.jpg │ ├── gallary.png │ └── sample.jpg ├── ms_wrapper.py ├── nlp_csanmt_translation_zh2en │ ├── bpe.en │ ├── bpe.zh │ ├── configuration.json │ ├── README.md │ ├── resources │ │ ├── csanmt-model.png │ │ ├── ctl.png │ │ └── sampling.png │ ├── src_vocab.txt │ ├── tf_ckpts │ │ ├── checkpoint │ │ ├── ckpt-0.data-00000-of-00001 │ │ ├── ckpt-0.index │ │ └── ckpt-0.meta │ ├── train.en │ ├── train.zh │ └── trg_vocab.txt └── README.md
字体下载
下载并重命名 arialuni.ttf -> Arial_Unicode.ttf 文件结构 font/ └── Arial_Unicode.ttf
命令行
# 快速运行 export ATTN_PRECISION=fp16 python inference.py # graido客户端运行 export ATTN_PRECISION=fp16 python demo.py
result
精度
无
应用场景
算法类别
AIGC
热点应用行业
零售,广媒,设计
源码仓库及问题反馈
ModelZoo / AnyText_pytorch · GitLab
参考资料
GitHub - tyxsspa/AnyText: Official implementation code of the paper <AnyText: Multilingual Visual Text Generation And Editing>
总结
本文介绍了一种名为AnyText的多语言视觉文本生成与编辑模型。该模型由四个主要部分构成:Auxiliary Latent Module、Text Embedding Module、Text-control Diffusion Pipeline和Text Preceptual Loss。这些组成部分协同工作,可以实现多模态信息条件下的多语言文本图像生成。文章还详细介绍了AnyText的算法原理和环境配置方法,包括使用Docker、Dockerfile或Anaconda进行环境搭建的步骤。此外,文章提供了模型的推理过程,包括模型下载、字体下载以及命令行运行方式,但并未提及具体的数据集和精度信息。
在应用场景方面,AnyText可归类为AIGC算法,并在零售、广媒和设计等热点行业具有潜在应用价值。文章最后提供了源码仓库链接、问题反馈渠道以及相关的参考资料。 dockerdocjsoncodepythonpngclippytorchcli多语言diffusiontokenrfiidecontrolnetbpeaigc命令行数据集git