从方法文本到可编辑的 SVG
AutoFigure-edit 是 AutoFigure 的新一代版本。它能将论文的方法部分自动转化为完全可编辑的 SVG 插图,并支持在嵌入式 SVG 编辑器中进行微调。
| 特性 | 描述 |
|---|---|
| 📝 文本转插图 | 直接从方法文本生成插图草稿。 |
| 🧠 SAM3 图标检测 | 通过多提示词检测图标区域并合并重叠部分。 |
| 🎯 带标签占位符 | 插入一致的 AF 风格占位符,实现可靠的 SVG 映射。 |
| 🧩 SVG 生成 | 生成与插图对齐的可编辑 SVG 模板。 |
| 🖥️ 嵌入式编辑器 | 使用内置的 svg-edit 在浏览器中直接编辑 SVG。 |
| 📦 产物输出 | 每次运行保存 PNG/SVG 输出及裁剪后的图标。 |
AutoFigure-edit 引入了两项突破性功能:
- 完全可编辑的 SVG(纯代码实现): 与位图不同,我们的输出是结构化的矢量图形(SVG)。每个组件都是可编辑的——文本、形状和布局都可以无损修改。
- 风格迁移: 系统可以模仿用户提供的参考图片的艺术风格。
以下是涵盖 3 篇不同论文的 9 个示例。每篇论文都使用 3 种不同的参考风格生成。 (每张图片展示:左侧 = AutoFigure 生成的原图 | 右侧 = 矢量化后的可编辑 SVG)
| 论文案例与风格迁移展示 |
|---|
CycleResearcher / Style 1![]() |
CycleResearcher / Style 2![]() |
CycleResearcher / Style 3![]() |
DeepReviewer / Style 1![]() |
DeepReviewer / Style 2![]() |
DeepReviewer / Style 3![]() |
DeepScientist / Style 1![]() |
DeepScientist / Style 2![]() |
DeepScientist / Style 3![]() |
AutoFigure-edit 的处理流程通过四个阶段将原始生成的位图转化为可编辑的 SVG:
- 生成 (
figure.png): LLM 根据方法文本生成初始的光栅化草图。 - 分割 (
sam.png): 集成 SAM3 检测并分割出独立的图标与文本区域。 - 模板 (
template.svg): 系统构建包含占位符的 SVG 结构骨架(线框图)。 - 合成 (
final.svg): 将高质量的抠图图标和矢量化文本注入模板,完成组装。
点击查看技术流程详解
AutoFigure2 的流程始于论文的方法文本,首先调用 文本生成图像 LLM (Text-to-Image LLM) 渲染出期刊风格的示意图,保存为 figure.png。接着,系统使用一个或多个文本提示词(如 "icon, diagram, arrow")对该图像运行 SAM3 分割,通过 IoU 阈值合并重叠的检测结果,并在原图上绘制灰底黑边的带标签框;这一步生成了 samed.png(带标签的掩码层)和一个包含坐标、置信度和提示词来源的结构化文件 boxlib.json。
随后,每个方框区域从原图中裁剪出来,并经过 RMBG-2.0 进行背景去除,生成位于 icons/*.png 和 *_nobg.png 的透明图标素材。系统将 figure.png、samed.png 和 boxlib.json 作为多模态输入,由 LLM 生成一个占位符风格的 SVG (template.svg),其方框与标记区域相匹配。
此外,SVG 可以选择性地通过 LLM 优化器 进行迭代微调,以更好地对齐线条、布局和风格,生成 optimized_template.svg(若跳过优化则使用原始模板)。系统随后比较 SVG 与原始图像的尺寸以计算缩放因子并对齐坐标系。最后,它将 SVG 中的每个占位符替换为对应的透明图标(通过标签/ID 匹配),从而组装出最终的 final.svg。
关键配置细节:
- 占位符模式 (Placeholder Mode): 控制图标框在提示词中的编码方式(
label、box或none)。 - 优化 (Optimization): 设置
optimize_iterations=0可跳过微调步骤,直接使用生成的结构模板。
# 1) 安装依赖
pip install -r requirements.txt
# 2) 单独安装 SAM3 (本项目未包含)
git clone https://github.com/facebookresearch/sam3.git
cd sam3
pip install -e .运行:
python autofigure2.py \
--method_file paper.txt \
--output_dir outputs/demo \
--provider bianxie \
--api_key YOUR_KEYpython server.py然后在浏览器打开 http://localhost:8000。
AutoFigure-edit 提供了一个可视化的 Web 界面,旨在实现无缝的生成和编辑体验。
在起始页面左侧粘贴论文的方法文本。在右侧配置生成选项:
- 供应商 (Provider): 选择 LLM 供应商(OpenRouter 或 Bianxie)。
- 优化 (Optimize): 设置 SVG 模板的优化迭代次数(日常使用建议设为
0)。 - 参考图片 (Reference Image): 上传目标图片以启用风格迁移功能。
生成结果会直接加载到集成的 SVG-Edit 画布中,支持全功能的矢量编辑。
- 状态与日志: 左上角查看实时进度,右上角按钮查看详细执行日志。
- 素材抽屉 (Artifacts): 点击右下角的悬浮按钮展开 素材面板。这里包含所有中间产物(图标、SVG 模板等)。你可以直接将任何素材 拖拽 到画布上进行自定义创作。
AutoFigure-edit 依赖 SAM3,但本项目未直接包含它。请遵循官方 SAM3 安装指南和先决条件。上游仓库目前针对 GPU 构建要求 Python 3.12+、PyTorch 2.7+ 和 CUDA 12.6。
SAM3 权重文件托管在 Hugging Face 上,下载前可能需要申请访问权限并进行认证(例如 huggingface-cli login)。
- SAM3 仓库: https://github.com/facebookresearch/sam3
- SAM3 Hugging Face: https://huggingface.co/facebook/sam3
| 供应商 | Base URL | 备注 |
|---|---|---|
| OpenRouter | openrouter.ai/api/v1 |
支持 Gemini/Claude/其他模型 |
| Bianxie | api.bianxie.ai/v1 |
兼容 OpenAI 接口 |
常用 CLI 参数:
--provider(openrouter | bianxie)--image_model,--svg_model--sam_prompt(逗号分隔的提示词)--merge_threshold(0 禁用合并)--optimize_iterations(0 禁用优化)--reference_image_path(可选)
点击展开目录树
AutoFigure-edit/
├── autofigure2.py # 主流水线
├── server.py # FastAPI 后端
├── requirements.txt
├── web/ # 静态前端
│ ├── index.html
│ ├── canvas.html
│ ├── styles.css
│ ├── app.js
│ └── vendor/svg-edit/ # 嵌入式 SVG 编辑器
└── img/ # README 资源
微信交流群
扫描二维码加入我们的社区。如果二维码过期,请添加微信号 nauhcutnil 或联系 tuchuan@mail.hfut.edu.cn。
如果您觉得 AutoFigure 或 FigureBench 对您有帮助,请引用:
@inproceedings{
zhu2026autofigure,
title={AutoFigure: Generating and Refining Publication-Ready Scientific Illustrations},
author={Minjun Zhu and Zhen Lin and Yixuan Weng and Panzhong Lu and Qiujie Xie and Yifan Wei and Yifan_Wei and Sifan Liu and QiYao Sun and Yue Zhang},
booktitle={The Fourteenth International Conference on Learning Representations},
year={2026},
url={https://openreview.net/forum?id=5N3z9JQJKq}
}
@dataset{figurebench2025,
title = {FigureBench: A Benchmark for Automated Scientific Illustration Generation},
author = {WestlakeNLP},
year = {2025},
url = {https://huggingface.co/datasets/WestlakeNLP/FigureBench}
}本项目基于 MIT 许可证开源 - 详见 LICENSE 文件。













