- SVG 生成系列论文(一) 和 SVG 生成系列论文(二) 分别介绍了 StarVector 的大致背景和详细的模型细节。
- SVG 生成系列论文(三)则重点介绍实验以及数据集部分。
本篇则详细介绍 StarVector 如何制作数据集的,以及文章提到的两个 SVG 相关工具。
不过截止2024-05-10,https://github.com/joanrod/star-vector 还并没有开源任何代码和数据集,估计是因为论文没中的缘故😂
SVG 的数据增强
作者引入了几种增强操作来对SVG进行处理,以便对图像进行轻微的修改,从而帮助模型学习生成更精确的结果。
- 为了使模型能够从图像中准确捕获颜色,并将其编码为十六进制代码,然后将其引入SVG元素的
填充 (fill)
属性中。例如这段 svg 代码中的 fill 就是十六进制,
<path d="M0,0 L27,0 L25,37 L23,69 L21,72 L0,72 L-1,42 L-9,65 L-19,65 L-24,48 L-25,69 L-26,70 L-48,70 L-48,7 L-47,3 L-22,2 L-14,26 L-12,30 Z " fill="#292B59" transform="translate(215,213)"/>
- 对曲线的控制点进行旋转或添加噪声有助于模型学习准确捕捉边缘的位置或画笔 (Stroke) 的粗细:
- 旋转:在一个角度范围内进行随机旋转。通过首先解析元素的颜色,然后在 RGB 值上添加小的高斯白噪声来进行颜色变化。