项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 4639
使用教程
环境要求
- Python 3.11.3(README 使用 conda 指定该版本)
- 已安装 conda(用于创建虚拟环境)
- 支持 CUDA 的 GPU(示例代码调用 starvector.cuda())
- 可访问 Hugging Face 下载模型权重 starvector/starvector-8b-im2svg
- pip 可用并能执行 pip install -e . 本地安装
安装与启动步骤
-
1克隆仓库
把 star-vector 仓库下载到本地,并进入项目根目录,后续所有命令都在该目录执行。
git clone https://github.com/joanrod/star-vector.git cd star-vector -
2创建并激活环境
用 conda 新建名为 starvector 的环境,Python 版本按 README 固定为 3.11.3,然后激活。
conda create -n starvector python=3.11.3 -y conda activate starvector -
3升级 pip 并安装包
先升级 pip 以支持 PEP 660,再用可编辑模式安装 star-vector 本体。在项目根目录执行。
pip install --upgrade pip pip install -e . -
4安装训练依赖
如需训练或确认依赖完整,安装可选的 train 附加依赖组;README 的依赖确认部分也使用该命令。
pip install -e ".[train]" -
5运行图生 SVG 示例
保存为脚本运行:加载模型并转 cuda,读取示例图片生成 SVG,再栅格化输出。首次运行会下载模型权重,耗时较长。
from PIL import Image from starvector.model.starvector_arch import StarVectorForCausalLM from starvector.data.util import process_and_rasterize_svg model_name = "starvector/starvector-8b-im2svg" starvector = StarVectorForCausalLM.from_pretrained(model_name) starvector.cuda() starvector.eval() image_pil = Image.open('assets/examples/sample-0.png') image = starvector.process_images([image_pil])[0].cuda() batch = {"image": image} raw_svg = starvector.generate_im2svg(batch, max_length=1000)[0] svg, raster_image = process_and_rasterize_svg(raw_svg)
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
model_name | 是 | 指定要加载的 StarVector 模型,决定生成效果与显存占用 | starvector/starvector-8b-im2svg |
max_length | 否 | generate_im2svg 的最大生成长度,控制 SVG 代码长度上限 | 1000 |
image_path | 是 | 输入位图路径,示例使用仓库自带样例图片 | assets/examples/sample-0.png |
如何确认成功
示例脚本能跑完不报错,得到 raw_svg 字符串,并且 process_and_rasterize_svg 返回可用的 svg 与栅格化图像。
常见问题
Q:没有 GPU 能跑吗?
A:README 的示例显式调用了 starvector.cuda(),按官方流程需要 CUDA 环境;README 未提供纯 CPU 的运行方式。
Q:显存不够怎么办?
A:可换用 README 中提到的更小模型 starvector/starvector-1b-im2svg,即把 model_name 改为该模型名。
Q:首次运行很慢或卡住?
A:模型需从 Hugging Face 下载权重,请确认网络可访问 huggingface.co,下载完成后再运行生成。
Q:报依赖缺失错误?
A:README 建议再执行一次 pip install -e ".[train]" 来安装训练相关依赖。
注意事项
- Python 版本按 README 固定为 3.11.3,不要随意更换。
- 必须先 conda activate starvector,否则会装到 base 环境。
- pip install -e . 需在克隆后的 star-vector 目录内执行。
- 示例图片使用仓库内的 assets/examples/sample-0.png,请勿改动相对路径。
核心亮点
- 采用视觉-语言模型架构,将矢量图生成转化为代码生成,精度高且能处理复杂图形
- 支持图像到 SVG 和文本到 SVG 两种模式,输入灵活,覆盖多种创作场景
- 在多个公开基准上表现领先,生成结果具备良好的结构性和可编辑性
不足之处
- 模型体量较大,推理需要较高算力,普通 CPU 环境难以实时生成
- 对复杂位图(如照片)的转换效果可能不如专业矢量化工具,细节保留有限
适用场景
- UI/UX 设计师将位图素材快速转为可编辑的矢量图标或插画
- 开发者从文本描述直接生成 SVG 图形,用于前端页面或数据可视化
- 自动化流水线中批量将图片素材转换为 SVG 格式,便于缩放和样式调整
替代项目
vtracer、SVG-Generator、DeepSVG
上一篇:Infographic
下一篇:DeTikZify
同类项目推荐
Parts2Whole
开源
多参考图拼出全身像,局部细节不丢失
[TIP 2025] From Parts to Whole: A Unified Reference Framework for Controllable Human···
lumenshaders
开源
浏览器里玩转着色器,一键生成循环艺术动画并导出
LUMEN, a generative shader studio. 9 WebGL2 art modes plus synth style blending, per···
Paint-by-Example
开源
给张示例图,自动编辑图像,无需文字描述
Paint by Example: Exemplar-based Image Editing with Diffusion Models
VisorGPT
开源
用GPT自动生成空间布局,让ControlNet等模型按你指定的位置生成图像。
[NeurIPS 2023] Customize spatial layouts for conditional image synthesis models, e.g···
SkinDeep
开源
上传照片,AI 一键去除纹身,还原干净皮肤。
Get Deinked!!
SDNote
开源
照着做,从零上手 Stable Diffusion 绘画
一个关于 AI 绘画的使用文档。
DF-GAN
开源
用简单结构高效实现文本到图像生成,性能媲美复杂模型。
[CVPR2022 oral] A Simple and Effective Baseline for Text-to-Image Synthesis
photo-relic-editorial
开源
一键将照片变成怀旧纸艺遗物,保留真实感。
A Codex skill for transforming real photos into Photo Relic artworks: truthful photo···
stable-diffusion-streamlit
开源
量化压缩 Stable Diffusion,内存省 75%,Streamlit 一键跑起来
Quantized stable-diffusion cutting down memory 75%, testing in streamlit, deploying ···
