Model details
TextDART returns one quadrilateral and transcription for each visible text region:
{ "regions": [ { "quad": [x1, y1, x2, y2, x3, y3, x4, y4], "recognized_text": "recognized text" } ]}
Coordinates are normalized to a 0–1000 grid. The model uses the following structural
anomaly markers:
<#>: one malformed and unreadable Chinese character or English letter
<###>: one malformed and unreadable English word
<#####>: an entirely unreadable block of secondary or fine-print text
Usage
The official repository contains the exact system prompt, an OpenAI-compatible vLLM
deployment script, response parsing, and visualization:
git clone https://github.com/WeChatCV/TextDART-SCANNER.gitcd TextDART-SCANNER/TextDART/train conda create -n TextDART python=3.11 -yconda activate TextDARTbash install_all.sh # Each listed GPU hosts one full model replica.bash deploy_server.sh SujieHu/TextDART-8B-Qwen3VL 1925 0
In another shell:
conda activate TextDARTcd TextDART-SCANNER/TextDART/trainpython infer_demo.py --server-url http://127.0.0.1:1925
The demo processes the included example images and writes parsed JSON plus annotated
images. See the
TextDART deployment guide
for custom images, server options, and training instructions. See the
main repository for using TextDART as the
reward model in SCANNER.
Intended use
TextDART is intended for:
- detecting and transcribing text regions in generated images
- identifying distortion, missing or extra strokes, blur, and other malformed glyphs
- providing region-level reward signals for reinforcement learning of visual text
generation models
- evaluating semantic correctness and glyph fidelity in visual text generation.
Citation
If you find this model useful, please cite:
@article{hu2026textdartscanner, title={Blame Errant Words, Not the Canvas: Defect-Aware Spatial Credit Assignment for Visual Text Generation}, author={Hu, Sujie and Zhang, Huaisong and Yang, Pujing and Wang, Qian and Li, Xiaomin and Leng, Xinhang and Li, Chen and Lyu, Jing and Li, Xiu and Pan, Ling}, journal={arXiv preprint arXiv:2610.20794}, year={2026}}