Nouvelles méthodes pour le transfert de style dans les graphiques vectoriels
Présentation d'une méthode efficace pour transférer des styles dans des images vectorielles.
― 9 min lire
Table des matières
Le transfert de style neural, c'est une méthode qui permet de changer l'apparence des images en se basant sur le style d'une autre image. La plupart des recherches dans ce domaine se concentrent sur les images bitmap, faites de pixels. Il existe plusieurs modèles pour appliquer des styles artistiques à ce type d’images. Par contre, le Transfert de styles entre des images vectorielles, qui sont créées avec des formes géométriques au lieu de pixels, n'a pas encore été vraiment exploré.
Notre recherche montre que les techniques standard pour modifier les styles bitmap ne fonctionnent pas bien sur les graphiques vectoriels. En effet, les images vectorielles sont constituées de formes définies par des points et des lignes, plutôt que d'une grille de pixels colorés. Du coup, on a développé de nouvelles fonctions de perte spécifiquement pour les graphiques vectoriels. On a aussi créé une nouvelle technique qui applique ces fonctions pour ajuster la couleur et la forme des images vectorielles selon le style qu'on veut transférer.
Dans nos tests, notre méthode, qu'on appelle VectorNST, a montré des résultats prometteurs par rapport aux techniques existantes pour les images bitmap et vectorielles. Même si elle ne peut pas égaler la qualité du transfert de styles pour les images bitmap, on considère que c'est un premier pas important dans le domaine du transfert de style pour les images vectorielles.
VectorNST prend une image vectorielle de contenu et une image de style en entrée et produit une nouvelle image vectorielle qui combine le sujet de l'image de contenu avec le style de l'image de style. L'objectif est de créer un nouvel objet visuel qui garde les motifs reconnaissables de l'image de style tout en préservant le sujet de l'image de contenu.
La base de cette technique a été influencée par des travaux antérieurs qui ont montré comment des réseaux de neurones profonds pouvaient séparer le contenu et le style des images. Sur ces bases, plusieurs améliorations ont été apportées au transfert de style neural, y compris l'utilisation de fonctions de perte basées sur des matrices de Gram et la formation de réseaux capables de gérer plusieurs styles.
Une des limites identifiées dans les méthodes existantes est qu'elles ne fonctionnent que sur des images bitmap de tailles fixes, ce qui limite leur utilisation pour des images haute résolution. Si tu veux redimensionner une image bitmap, tu perds généralement en qualité. En revanche, les graphiques vectoriels n'ont pas cette contrainte car ils peuvent être redimensionnés sans perdre leur qualité.
Les recherches précédentes se sont concentrées sur les graphiques vectoriels pour les polices et les graphiques plus simples, comme les icônes et les emojis. Certaines études ont suggéré des méthodes pour créer des images vectorielles basées sur des morceaux de musique et des émotions. Cependant, le seul travail notable qui aborde directement le transfert de style neural pour les graphiques vectoriels est une méthode appelée DiffVG. Toutefois, cette méthode ne se concentre pas sur le transfert de style en lui-même mais fournit des outils qui peuvent être utilisés pour cela. En conséquence, le domaine du transfert de style pour les graphiques vectoriels reste largement inexploré.
Il y a deux approches principales pour transférer des styles aux images vectorielles : (1) Convertir l'image vectorielle en bitmap, utiliser des méthodes de transfert de style bitmap, puis la reconvertir en format vectoriel, ou (2) Appliquer le transfert de style directement à l'image vectorielle sans conversion. On pense que la deuxième approche est mieux pour plusieurs raisons.
D'abord, de nombreuses méthodes utilisées pour l'extraction de caractéristiques sont formées sur des images faites de pixels, et elles ont du mal à analyser efficacement les images vectorielles. Donc, un réseau différent devrait être formé spécifiquement pour les caractéristiques vectorielles. Ensuite, quand on utilise la première approche, reconvertir en format vectoriel peut entraîner divers problèmes, comme des artefacts dans l'image et une augmentation significative du nombre de formes vectorielles, ce qui complique l'édition.
Pour y remédier, on s'est attelés à trouver un moyen de transférer efficacement le style des images vectorielles. Notre contribution est d'introduire une méthode adaptée aux images vectorielles qui apprend à ajuster une image en améliorant les pertes de contour et de perception à travers un nouveau processus de rasterisation. Cette approche permet de façonner et de colorer le résultat en fonction de l'image de style d'entrée tout en gardant le sujet original intact.
Travaux Connus
Le transfert de style neural a commencé quand des chercheurs ont montré qu'il était possible de séparer le contenu et le style des images à l'aide de réseaux de neurones profonds. Au départ, ces méthodes impliquaient d'optimiser une fonction de perte qui équilibrait le contenu d'une image et le style d'une autre. La technique nécessite beaucoup de calculs parce qu'elle doit passer plusieurs fois par le réseau pour obtenir des résultats de qualité.
Pour accélérer ce processus, certains chercheurs ont proposé une approche feed-forward qui pourrait créer des images stylisées en un seul passage, en utilisant un réseau pré-entraîné pour mesurer les pertes. Cependant, cela voulait toujours dire que chaque style nécessitait un modèle unique entraîné.
Plus récemment, plusieurs méthodes avancées ont été introduites, y compris celles qui utilisent des mécanismes d'attention et des modèles de transformateurs. Ces approches ont montré des promesses dans diverses tâches, mais elles ont souvent du mal à préserver tous les détails des objets et peuvent entraîner des distorsions dans les images finales.
Les graphiques vectoriels se composent généralement de formes comme des lignes et des courbes définies par des points mathématiques. Les formats vectoriels communs comme le SVG décrivent les formes en utilisant ces points et offrent des avantages clairs, comme étant indépendants de la résolution et économes en mémoire.
La plupart des techniques neurales pour générer des images vectorielles se sont précédemment appuyées sur des processus comme DiffVG, qui ont ouvert la voie à une génération d'images vectorielles plus complexe. Cette méthode permet la manipulation directe des éléments d'image vectorielle, plutôt que de traiter une grille de pixels.
Pour créer une méthode de transfert de style pour les graphiques vectoriels, on a utilisé DiffVG pour décomposer des images vectorielles et extraire des paramètres clés. Les changements dans ces paramètres équivalent à modifier le style d'un dessin, permettant un transfert efficace des styles vectoriels.
Aperçu de la Méthode
Notre technique pour le transfert de style vectoriel fonctionne en temps réel, en optimisant deux aspects : la similarité perceptuelle entre l'image de style et la sortie, et la similarité de contour entre l'image de contenu et la sortie.
Pour comparer l'efficacité de notre approche, on rasterise les deux images vectorielles puis on évalue leur similarité comme s'il s'agissait d'images bitmap. Cela nécessite un processus de rasterisation différentiable, ce qui nous permet de modifier et d'améliorer les images vectorielles en utilisant des méthodes basées sur les gradients. On a rencontré quelques problèmes en utilisant les méthodes de rasterisation existantes, notamment lorsque les tags étaient traités dans une séquence qui entraînait des erreurs. On a résolu ces problèmes en triant les tags à l'avance.
Expérimentations et Résultats
Pour tester notre méthode, on l'a comparée à plusieurs autres, y compris des méthodes établies pour les images bitmap. Notre configuration expérimentale impliquait l'utilisation de plusieurs fonctions de perte différentes et l'analyse de leur efficacité à capturer les styles vectoriels.
On a constaté que notre nouvelle fonction de perte, basée sur la distance perceptuelle et la Perte de contour, fournissait de meilleurs résultats que les autres méthodes. La stabilité et l'efficacité de ces fonctions étaient cruciales pour garantir un transfert de style fluide sans perte d'informations clés.
On a aussi fait appel à un groupe d'évaluateurs pour juger de la qualité des images produites par notre méthode et les autres. Ils ont évalué les images selon la façon dont ils ressentaient que le style était transféré tout en gardant le sujet original reconnaissable.
En plus des évaluations visuelles, on a comparé le temps nécessaire pour chaque méthode à traiter une image. Notre approche a pris un peu plus de temps que certaines autres, mais elle a tout de même montré de bonnes performances globales, notamment en équilibrant la préservation du style et du contenu.
Conclusion
En résumé, on a présenté une méthode novatrice pour transférer des styles dans les graphiques vectoriels. Notre approche modifie efficacement l'apparence des images vectorielles tout en maintenant le sujet essentiel, en atteignant des résultats de haute qualité.
Alors qu'on continue à peaufiner notre technique, les améliorations futures pourraient inclure l'utilisation de modèles basés sur des transformateurs pour mieux préserver les contours. Un autre domaine à développer serait d'améliorer notre méthode pour permettre un ajustement plus efficace de divers paramètres vectoriels.
Collecter des ensembles de données supplémentaires d'images vectorielles pourrait aussi aider à améliorer notre processus de transfert de style, notamment pour des temps d'inférence meilleurs. Globalement, notre travail représente une avancée prometteuse dans le domaine du transfert de style neural pour les graphiques vectoriels et ouvre de nouvelles voies pour des explorations futures.
Titre: Neural Style Transfer for Vector Graphics
Résumé: Neural style transfer draws researchers' attention, but the interest focuses on bitmap images. Various models have been developed for bitmap image generation both online and offline with arbitrary and pre-trained styles. However, the style transfer between vector images has not almost been considered. Our research shows that applying standard content and style losses insignificantly changes the vector image drawing style because the structure of vector primitives differs a lot from pixels. To handle this problem, we introduce new loss functions. We also develop a new method based on differentiable rasterization that uses these loss functions and can change the color and shape parameters of the content image corresponding to the drawing of the style image. Qualitative experiments demonstrate the effectiveness of the proposed VectorNST method compared with the state-of-the-art neural style transfer approaches for bitmap images and the only existing approach for stylizing vector images, DiffVG. Although the proposed model does not achieve the quality and smoothness of style transfer between bitmap images, we consider our work an important early step in this area. VectorNST code and demo service are available at https://github.com/IzhanVarsky/VectorNST.
Auteurs: Valeria Efimova, Artyom Chebykin, Ivan Jarsky, Evgenii Prosvirnin, Andrey Filchenkov
Dernière mise à jour: 2023-03-06 00:00:00
Langue: English
Source URL: https://arxiv.org/abs/2303.03405
Source PDF: https://arxiv.org/pdf/2303.03405
Licence: https://creativecommons.org/licenses/by-nc-sa/4.0/
Changements: Ce résumé a été créé avec l'aide de l'IA et peut contenir des inexactitudes. Pour obtenir des informations précises, veuillez vous référer aux documents sources originaux dont les liens figurent ici.
Merci à arxiv pour l'utilisation de son interopérabilité en libre accès.
Liens de référence
- https://github.com/IzhanVarsky/VectorNST
- https://colab.research.google.com/github/pytorch/pytorch.github.io/blob/master/assets/hub/pytorch_vision_vgg.ipynb
- https://pytorch.org/hub/pytorch_vision_vgg/
- https://github.com/BachiLi/diffvg
- https://github.com/ktaebum/AttentionedDeepPaint
- https://freesvg.org
- https://github.com/mgharbi/ttools/blob/master/ttools/modules/losses.py