StarVector: Генерация кода масштабируемой векторной графики из изображений
StarVector: Generating Scalable Vector Graphics Code from Images
December 17, 2023
Авторы: Juan A. Rodriguez, Shubham Agarwal, Issam H. Laradji, Pau Rodriguez, David Vazquez, Christopher Pal, Marco Pedersoli
cs.AI
Аннотация
Масштабируемая векторная графика (SVG) стала неотъемлемой частью современных приложений для рендеринга изображений благодаря своей бесконечной масштабируемости в разрешении, универсальности использования и возможностям редактирования. SVG особенно популярны в областях веб-разработки и графического дизайна. Существующие подходы к моделированию SVG с использованием глубокого обучения часто сталкиваются с трудностями при генерации сложных SVG и ограничиваются более простыми, которые требуют значительной обработки и упрощения. В данной статье представлен StarVector, мультимодальная модель генерации SVG, которая эффективно интегрирует крупные языковые модели для генерации кода (CodeLLMs) и модели компьютерного зрения. Наш подход использует CLIP-кодировщик изображений для извлечения визуальных представлений из пиксельных изображений, которые затем преобразуются в визуальные токены через адаптерный модуль. Эти визуальные токены добавляются к токенам SVG, и последовательность моделируется с помощью модели StarCoder с использованием предсказания следующего токена, что позволяет эффективно выравнивать визуальные и кодовые токены. Это позволяет StarVector генерировать неограниченные SVG, которые точно представляют пиксельные изображения. Для оценки производительности StarVector мы представляем SVG-Bench, комплексный бенчмарк для оценки методов SVG на основе нескольких наборов данных и соответствующих метрик. В рамках этого бенчмарка мы вводим новые наборы данных, включая SVG-Stack, крупномасштабный набор данных реальных примеров SVG, и используем его для предварительного обучения StarVector в качестве крупной базовой модели для SVG. Наши результаты демонстрируют значительное улучшение визуального качества и обработки сложности по сравнению с текущими методами, что отмечает заметный прогресс в технологии генерации SVG. Код и модели: https://github.com/joanrod/star-vector
English
Scalable Vector Graphics (SVGs) have become integral in modern image
rendering applications due to their infinite scalability in resolution,
versatile usability, and editing capabilities. SVGs are particularly popular in
the fields of web development and graphic design. Existing approaches for SVG
modeling using deep learning often struggle with generating complex SVGs and
are restricted to simpler ones that require extensive processing and
simplification. This paper introduces StarVector, a multimodal SVG generation
model that effectively integrates Code Generation Large Language Models
(CodeLLMs) and vision models. Our approach utilizes a CLIP image encoder to
extract visual representations from pixel-based images, which are then
transformed into visual tokens via an adapter module. These visual tokens are
pre-pended to the SVG token embeddings, and the sequence is modeled by the
StarCoder model using next-token prediction, effectively learning to align the
visual and code tokens. This enables StarVector to generate unrestricted SVGs
that accurately represent pixel images. To evaluate StarVector's performance,
we present SVG-Bench, a comprehensive benchmark for evaluating SVG methods
across multiple datasets and relevant metrics. Within this benchmark, we
introduce novel datasets including SVG-Stack, a large-scale dataset of
real-world SVG examples, and use it to pre-train StarVector as a large
foundation model for SVGs. Our results demonstrate significant enhancements in
visual quality and complexity handling over current methods, marking a notable
advancement in SVG generation technology. Code and models:
https://github.com/joanrod/star-vector