AnyText: 다국어 이미지 텍스트를 생성하고 편집할 수 있으며, 이미지에 여러 줄의 중국어를 생성하도록 고도로 제어할 수 있습니다.
일반 소개
AnyText는 확산 모델을 기반으로 개발된 혁신적인 다국어 시각 텍스트 생성 및 편집 도구입니다. 이미지에서 자연스러운 고품질 다국어 텍스트를 생성하고 유연한 텍스트 편집 기능을 지원합니다. 연구팀이 개발하여 ICLR 2024에서 스포트라이트를 받은 AnyText의 핵심 강점은 보조 잠재 모듈이 텍스트 글리프, 위치 및 마스크된 이미지 정보를 인코딩하고 텍스트 임베딩 모듈이 OCR 모델을 사용하여 획 데이터를 처리하는 독특한 두 가지 모듈 아키텍처에 있습니다. 또한 이 프로젝트는 시각적 텍스트 생성 분야의 중요한 평가 기준을 제공하는 3백만 쌍의 OCR 주석이 포함된 최초의 다국어 텍스트 이미지 데이터 세트인 AnyWord-3M 데이터 세트를 제공합니다.

체험: https://modelscope.cn/studios/damo/studio_anytext/summary
대체 주소: https://huggingface.co/spaces/modelscope/AnyText
기능 목록
- 다국어 텍스트 생성: 이미지에 다국어 텍스트 생성 지원
- 텍스트 편집기: 기존 이미지의 텍스트 콘텐츠를 편집하고 수정할 수 있습니다.
- 스타일 제어: 기본 모델 또는 LoRA 모델을 통해 생성된 텍스트의 스타일 변경 지원
- FP16 추론 가속화: 빠른 추론을 지원하며 8GB 이상의 비디오 메모리가 있는 GPU에서 실행됩니다.
- 중국어 및 영어 번역: 중국어 및 영어 번역 모델 내장, 중국어 프롬프트 단어 직접 입력 지원
- 사용자 정의 글꼴: 사용자가 직접 만든 글꼴 파일을 사용할 수 있습니다.
- 일괄 처리: 이미지 텍스트의 일괄 생성 및 편집 지원
- 모델 병합: 커뮤니티 모델과 LoRA 모델 가중치 병합 지원
도움말 사용
1. 환경 설치
- 먼저 Git이 시스템에 설치되어 있는지 확인합니다:
conda install -c anaconda git
- 프로젝트 코드를 복제합니다:
git clone https://github.com/tyxsspa/AnyText.git
cd AnyText
- 글꼴 파일을 준비합니다(Arial 유니코드 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 대화형 프레젠테이션 시작하기
데모 인터페이스는 더 나은 구성의 GPU(8GB 이상의 비디오 메모리)에 권장됩니다:
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/of/lora1.pth 0.3 /path/of/lora2.safetensors 0.6
4. 성능 최적화
- 중국어 및 영어 번역 모델이 모두 로드된 기본 FP16 추론이 사용됩니다(약 4GB의 비디오 메모리를 차지함).
- FP16을 사용하고 번역 모델을 사용하지 않는 경우, 단일 512x512 이미지에는 약 7.5GB의 비디오 메모리만 필요합니다.
- 모델 파일을 처음 실행하면 모델 파일이
~/.cache/modelscope/hub
디렉토리(컴퓨터 하드 드라이브에 있음) - 환경 변수를 설정하여 이 작업을 수행할 수 있습니다.
MODELSCOPE_CACHE
다운로드 디렉터리 수정
5. 주의 사항
- 올바른 버전의 종속성 패키지가 설치되어 있는지 확인합니다.
- 사용자 지정 글꼴을 사용하면 생성에 영향을 줄 수 있습니다.
- 모델을 처음 실행하려면 관련 파일을 다운로드해야 합니다.
- 8GB 이상의 비디오 메모리가 있는 GPU에서 실행하는 것이 좋습니다.
AnyText는 이미지 작동 지침을 생성합니다.
실행 예제
애니텍스트에는 텍스트 생성과 텍스트 편집의 두 가지 작동 모드가 있으며, 각 모드에는 풍부한 예제가 제공되므로 하나를 선택하고 [실행]을 클릭합니다.
예제를 실행하기 전에 예제 결과에 영향을 미치지 않도록 손으로 그린 위치 영역이 비어 있는지 확인하고, 예제마다 다른 파라미터(해상도, 시드 수 등)를 사용하므로 직접 생성하려면 파라미터 변경 사항에 주의하거나 페이지를 새로 고침하여 기본 파라미터로 되돌리시기 바랍니다.
텍스트 생성
프롬프트 단어에 대한 설명을 입력하는 프롬프트 (중국어 및 영어 지원)에서 각 텍스트 줄을 큰 따옴표로 묶은 다음 순차적으로 손으로 그려서 각 텍스트 줄의 위치를 지정하여 이미지를 생성해야 합니다. 텍스트 위치 그리기는 그림의 품질에 매우 중요하므로 너무 무작위로 그리거나 너무 작게 그리지 말고 위치 수는 텍스트 줄 수와 같아야 하며 각 위치의 크기는 가능한 한 해당 텍스트 줄의 길이 또는 너비와 일치해야 합니다. 손으로 그릴 수 없는 경우(수동 그리기) 상자 직사각형을 드래그하거나(수동-렉트) 무작위로 생성(자동-랜트)해 볼 수 있습니다.
여러 줄을 생성할 때 각 위치는 텍스트 줄에 해당하는 특정 규칙에 따라 정렬되며, 정렬 위치 옵션은 정렬 우선순위를 위에서 아래로 또는 왼쪽에서 오른쪽으로 결정하기 위해 사용됩니다. 매개변수 설정에서 디버그 표시 옵션을 켜면 결과 이미지의 텍스트 위치와 글리프를 관찰할 수 있습니다. 위치 수정 옵션을 선택하면 렌더링된 텍스트의 바깥쪽 사각형을 수정된 위치로 사용할 수도 있지만, 이렇게 생성된 텍스트의 창의성이 약간 떨어지는 경우가 종종 있습니다.
복사 편집기
편집할 사진을 참조 사진(Ref)으로 업로드한 후 획 크기를 조정한 후 참조 사진에 편집할 위치를 칠하고 설명 프롬프트에 수정할 문구와 텍스트 내용을 입력하면 그림이 생성됩니다.
참조 이미지는 모든 해상도를 사용할 수 있지만 내부 처리에서는 세로 길이를 768 이하로 제한하고 가로와 높이는 정수의 배수인 64로 배율을 조정합니다.
© 저작권 정책
이 글은 저작권이 있으며 무단으로 복제해서는 안 됩니다.
관련 문서
댓글 없음...