star-vector

上传图片或输入文字,一键生成可编辑的 SVG 矢量图

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 开源模型 🍴 复刻 263 🐛 待处理 51 👀 关注 38
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 4639
维护状态 低维护
是否开源 开源
定价模式 🏷️完全免费 开源模型,Apache-2.0 许可证,完全免费,可自行部署使用。

项目预览

star-vector 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类开源模型
开发团队joanrod
定价模式🏷️完全免费
价格说明开源模型,Apache-2.0 许可证,完全免费,可自行部署使用。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议Apache-2.0
主要语言Python
技术栈/模型llm,multimodal-large-language-models,svg,vlm
GitHub 星标★ 4639
上线时间2023-12-11 00:00:00
代码更新2025-11-07
仓库体积6.5 MB
本站数据更新2026-11-09
维护状态低维护
收录时间2026-08-09
浏览次数11

项目介绍

StarVector 是一个用于 SVG 生成的基础模型,它将矢量图转换任务重构为代码生成任务。基于视觉-语言建模架构,StarVector 能同时处理图像和文本输入,生成高质量的 SVG 代码。它解决了传统矢量图转换方法依赖几何处理、精度有限且难以处理复杂图形的问题。核心能力包括:将位图图像(如 PNG、JPG)自动转换为可编辑的 SVG 矢量图形;支持通过文本描述生成对应的 SVG 代码;在生成过程中保持视觉细节和结构准确性。该模型在多个基准测试上表现优异,为设计师和开发者提供了一种全新的、基于 AI 的矢量图形创作方式,降低了矢量图制作的门槛。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 4639

使用教程

难度:进阶 约 20 分钟 部署方式:库/依赖 5 步

环境要求

  • Python 3.11.3(README 使用 conda 指定该版本)
  • 已安装 conda(用于创建虚拟环境)
  • 支持 CUDA 的 GPU(示例代码调用 starvector.cuda())
  • 可访问 Hugging Face 下载模型权重 starvector/starvector-8b-im2svg
  • pip 可用并能执行 pip install -e . 本地安装

安装与启动步骤

  1. 1克隆仓库

    把 star-vector 仓库下载到本地,并进入项目根目录,后续所有命令都在该目录执行。

    git clone https://github.com/joanrod/star-vector.git
    cd star-vector
  2. 2创建并激活环境

    用 conda 新建名为 starvector 的环境,Python 版本按 README 固定为 3.11.3,然后激活。

    conda create -n starvector python=3.11.3 -y
    conda activate starvector
  3. 3升级 pip 并安装包

    先升级 pip 以支持 PEP 660,再用可编辑模式安装 star-vector 本体。在项目根目录执行。

    pip install --upgrade pip
    pip install -e .
  4. 4安装训练依赖

    如需训练或确认依赖完整,安装可选的 train 附加依赖组;README 的依赖确认部分也使用该命令。

    pip install -e ".[train]"
  5. 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···

★ 196 2026-08-09
lumenshaders 开源

浏览器里玩转着色器,一键生成循环艺术动画并导出

LUMEN, a generative shader studio. 9 WebGL2 art modes plus synth style blending, per···

★ 365 2026-08-09
Paint-by-Example 开源

给张示例图,自动编辑图像,无需文字描述

Paint by Example: Exemplar-based Image Editing with Diffusion Models

★ 1254 2026-08-09
VisorGPT 开源

用GPT自动生成空间布局,让ControlNet等模型按你指定的位置生成图像。

[NeurIPS 2023] Customize spatial layouts for conditional image synthesis models, e.g···

★ 138 2026-08-09
SkinDeep 开源

上传照片,AI 一键去除纹身,还原干净皮肤。

Get Deinked!!

★ 954 2026-08-09
SDNote 开源

照着做,从零上手 Stable Diffusion 绘画

一个关于 AI 绘画的使用文档。

★ 70 2026-08-09
DF-GAN 开源

用简单结构高效实现文本到图像生成,性能媲美复杂模型。

[CVPR2022 oral] A Simple and Effective Baseline for Text-to-Image Synthesis

★ 327 2026-08-09
photo-relic-editorial 开源

一键将照片变成怀旧纸艺遗物,保留真实感。

A Codex skill for transforming real photos into Photo Relic artworks: truthful photo···

★ 452 2026-08-09
stable-diffusion-streamlit 开源

量化压缩 Stable Diffusion,内存省 75%,Streamlit 一键跑起来

Quantized stable-diffusion cutting down memory 75%, testing in streamlit, deploying ···

★ 52 2026-08-09