Este repositorio es la implementación oficial de Pytorch de nuestros dos potentes modelos de reconocimiento de gráficos vectoriales.
Neurips-2021 Papel: Reconocimiento de gráficos vectoriales sin rasterización.
Documento TPAMI-2024: Reconocimiento jerárquico de gráficos vectoriales y un nuevo conjunto de datos de gráficos vectoriales basado en gráficos

La representación de gráficos vectoriales en matrices de píxeles puede dar como resultado costos de memoria significativos o pérdida de información, como se demuestra en la Figura 1. Además, este proceso descarta información estructural de alto nivel dentro de las primitivas, lo que es fundamental para tareas de reconocimiento, como identificar esquinas y contornos. Para resumir, proponemos que solo mire la serie de texto (Yolat & Yolat ++) que aborda los problemas con los gráficos de trama al tomar documentos textuales de gráficos vectoriales como entrada.
conda create -n your_env_name python=3.8
conda activate your_env_name
sh deepgcn_env_install.sh a) Descargue y descomprima el conjunto de datos de Plan de piso a la carpeta del conjunto de datos: data/FloorPlansGraph5_iter
b) Ejecute los siguientes scripts para preparar el conjunto de datos para la capacitación/inferencia.
cd utils
python svg_utils/build_graph_bbox.py a) Descargue y descomprima el conjunto de datos de los diagramas a la carpeta del conjunto de datos: data/diagrams
b) Ejecute los siguientes scripts para preparar el conjunto de datos para la capacitación/inferencia.
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
Se introduce Yolat ++, caracterizado por una estructura jerárquica diseñada para VGS, que abarca tres niveles: primitivo, curva y punto . Además, Yolat ++ emplea una estrategia de mejora consciente de la posición para diferenciar efectivamente primitivas similares.
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}}
Por favor considere? ¡Estrata nuestro proyecto para compartir con su comunidad si le resulta útil este repositorio!
Partido de referencia para la detección basada en VG y la comprensión del gráfico