当前位置:AIGC资讯 > AIGC > 正文

anytext_pytorch AIGC 可以用于生成多语言文字图像算法模型

AnyText

论文

AnyText: Multilingual Visual Text Generation And Editing

https://arxiv.org/abs/2311.03054

模型结构

模型由4部分构成,分别是Auxiliary Latent ModuleText Embedding ModuleText-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算法,并在零售、广媒和设计等热点行业具有潜在应用价值。文章最后提供了源码仓库链接、问题反馈渠道以及相关的参考资料。

更新时间 2024-07-13