Dieses Repository ist die offizielle Pytorch -Implementierung unserer beiden leistungsstarken Vektor -Grafikerkennungsmodelle.
Neurips-2021 Papier: Erkennen von Vektorgrafiken ohne Raster.
TPAMI-2024-Papier: Hierarchische Erkennung von Vektorgrafiken und einem neuen dabellbasierten Vektorgrafikdatensatz

Das Rendern von Vektorgrafiken in Pixel-Arrays kann zu erheblichen Speicherkosten oder Informationsverlusten führen, wie in obigen Abbildung 1 gezeigt. Zusätzlich wirft dieser Prozess strukturelle Informationen auf hoher Ebene innerhalb der Primitiven ab, was für Erkennungsaufgaben wie die Identifizierung von Ecken und Konturen von entscheidender Bedeutung ist. Zusammenfassend schlagen wir vor, dass Sie sich nur die Textreihen (Yolat & Yolat ++) ansehen, die Probleme mit Rastergrafiken behandelt, indem sie Textdokumente der Vektorgrafik als Eingabe aufnehmen.
conda create -n your_env_name python=3.8
conda activate your_env_name
sh deepgcn_env_install.sh a) Download und entpackt den Datensatz des Grundrisses in den Datensatzordner: data/FloorPlansGraph5_iter
b) Führen Sie die folgenden Skripte aus, um den Datensatz für Training/Inferenz vorzubereiten.
cd utils
python svg_utils/build_graph_bbox.py a) Laden Sie den Diagrammdatensatz in den Datensatzordner herunter und entpacken Sie: data/diagrams
b) Führen Sie die folgenden Skripte aus, um den Datensatz für Training/Inferenz vorzubereiten.
cd utils
python svg_utils/build_graph_bbox_diagram.py cd cad_recognition
CUDA_VISIBLE_DEVICES=0 python -u train.py --batch_size 4 --data_dir data/FloorPlansGraph5_iter --phase train --lr 2.5e-4 --lr_adjust_freq 9999999999999999999999999999999999999 --in_channels 5 --n_blocks 2 --n_blocks_out 2 --arch centernet3cc_rpn_gp_iter2 --graph bezier_cc_bb_iter --data_aug true --weight_decay 1e-5 --postname run182_2 --dropout 0.0 --do_mixup 0 --bbox_sampling_step 10 cd cad_recognition
CUDA_VISIBLE_DEVICES=0 python -u train.py --batch_size 4 --data_dir data/diagrams --phase train --lr 2.5e-4 --lr_adjust_freq 9999999999999999999999999999999999999 --in_channels 5 --n_blocks 2 --n_blocks_out 2 --arch centernet3cc_rpn_gp_iter2 --graph bezier_cc_bb_iter --data_aug true --weight_decay 1e-5 --postname run182_2 --dropout 0.0 --do_mixup 0 --bbox_sampling_step 5
Yolat ++ wird eingeführt, gekennzeichnet durch eine hierarchische Struktur, die für VGs ausgelegt ist und drei Ebenen umfasst: Primitive, Kurve und Punkt . Darüber hinaus wendet Yolat ++ eine positionbewusste Verbesserungsstrategie an, um ähnliche Primitive effektiv zu unterscheiden.
Bibtex:
@inproceedings{jiang2021recognizing,
title={{Recognizing Vector Graphics without Rasterization}},
author={Jiang, Xinyang and Liu, Lu and Shan, Caihua and Shen, Yifei and Dong, Xuanyi and Li, Dongsheng},
booktitle={Proceedings of Advances in Neural Information Processing Systems (NIPS)},
volume={34},
number={},
pages={},
year={2021}}
@inproceedings{yolat24,
title={{Hierarchical Recognizing Vector Graphics and A New Chart-based Vector Graphics Dataset}},
author={Shuguang Dou, Xinyang Jiang, Lu Liu, Lu Ying, Caihua Shan, Yifei Shen, Xuanyi Dong, Yun Wang, Dongsheng Li, Cairong Zhao},
booktitle={IEEE Transactions on Pattern Analysis and Machine Intelligence},
volume={},
number={},
pages={},
year={2024}}
Bitte bedenken Sie? Seien Sie unser Projekt, um mit Ihrer Community zu teilen, wenn Sie dieses Repository hilfreich finden!
Benchmark für VG-basierte Erkennung und Diagrammverständnis