开源文档解析工具,把 PDF、Office、HTML 等文件转换为结构化数据,供生成式 AI 使用。
BIT-DataLab/Edit-Banana
将静态图表图片转换为可编辑的 DrawIO(XML)文件,结合 SAM 3 分割、OCR 与公式识别。
- Star
- 5,498
- Fork
- 353
- 未关闭 Issue
- 40
- 最近提交
- 3天前
这是什么?
Edit Banana 是一个基于 Python 的工具,可以把图表、流程图、技术示意图和公式的静态图片转换为可编辑的 DrawIO XML 文件。转换后,每个元素都会作为独立图形保留,可以在 DrawIO 中直接拖动、修改样式或改写文字。
处理流程中,系统使用微调过的 SAM 3 模型分割图中元素,通过本地 Tesseract OCR 或 PaddleOCR 检测文字,并将文字与公式区域送入 Pix2Text 转换为 LaTeX。多模态大模型会引导多轮提取过程,最终结果合并为一个 DrawIO XML 文件。输入支持 PNG、JPG、BMP、TIFF 和 WebP 格式。
项目提供命令行入口(main.py),可处理单张或批量图片;另有基于 FastAPI 的服务(server_pa.py),提供 /convert 接口。SAM 3 模型权重需单独下载,并在 config.yaml 中配置路径。DrawIO 模板导入和本地视觉语言模型部署列在路线图中,尚未完成。
核心功能
- 01使用微调的 SAM 3 模型分割图表元素。
- 02通过本地 Tesseract OCR 或 PaddleOCR 识别文字。
- 03借助 Pix2Text 将文字和公式区域转换为 LaTeX。
- 04输出可编辑的 DrawIO(XML)文件,每个元素可独立选中。
- 05同时提供命令行工具和 FastAPI 网页接口。
适用场景
- 将论文或报告中的图表转换为可编辑的 DrawIO 图。
- 从旧截图中还原可编辑的流程图或架构图。
- 批量把扫描的技术示意图转换为 DrawIO 文件。
- 从图片中提取公式并输出为 LaTeX。
快速上手
- 1
克隆仓库
git clone https://github.com/BIT-DataLab/Edit-Banana.git && cd Edit-Banana - 2
安装基础 Python 依赖
pip install -r requirements.txt - 3
安装 SAM3 库并复制 BPE 词表(需另行下载 sam3.pt 权重)
bash scripts/setup_sam3.sh - 4
通过命令行将图表图片转换为 DrawIO XML
python main.py -i input/test_diagram.png
使用前须知
- 首次运行前需要下载 SAM3 模型权重并安装 Tesseract OCR。
- 强烈建议使用支持 CUDA 的 GPU。
- 采用 AGPL-3.0 许可证,属于 Copyleft 许可,网络使用场景下也有源码公开义务。
- GitHub 仓库的功能和性能落后于在线网页服务。
标签
常见问题
- Edit-Banana 是什么?
- 将静态图表图片转换为可编辑的 DrawIO(XML)文件,结合 SAM 3 分割、OCR 与公式识别。 Edit Banana 是一个基于 Python 的工具,可以把图表、流程图、技术示意图和公式的静态图片转换为可编辑的 DrawIO XML 文件。转换后,每个元素都会作为独立图形保留,可以在 DrawIO 中直接拖动、修改样式或改写文字。
- Edit-Banana 可以免费使用吗?用的什么许可证?
- Edit-Banana 以 AGPL-3.0 许可证开源。用于商业产品前,请先确认许可证条款。
- Edit-Banana 还在维护吗?
- 活跃维护中。Edit-Banana 最近一次提交是在 2026年10月17日。
- Edit-Banana 适合用来做什么?
- 将论文或报告中的图表转换为可编辑的 DrawIO 图。 从旧截图中还原可编辑的流程图或架构图。 批量把扫描的技术示意图转换为 DrawIO 文件。 从图片中提取公式并输出为 LaTeX。
- Edit-Banana 怎么安装和运行?
- 克隆仓库: git clone https://github.com/BIT-DataLab/Edit-Banana.git && cd Edit-Banana 安装基础 Python 依赖: pip install -r requirements.txt 安装 SAM3 库并复制 BPE 词表(需另行下载 sam3.pt 权重): bash scripts/setup_sam3.sh 通过命令行将图表图片转换为 DrawIO XML: python main.py -i input/test_diagram.png
- 在哪里获取 Edit-Banana?
- 源代码和安装说明在 GitHub 上:https://github.com/BIT-DataLab/Edit-Banana
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一个用于构建、运行和管理 AI 智能体平台的 Python 框架与运行时,附带 Web 管理界面。
让 Claude 等 AI 助手通过 MCP 协议直接操作 Blender,完成建模、场景搭建与素材导入。
开源自主研究智能体,自动规划研究问题、收集网页与本地资料,并调用任意 LLM 生成带引用的报告。
一款移除图片背景的工具,可作为命令行、Python 库、HTTP 服务或 Docker 容器使用。
开源 Python 框架,用于构建实时语音和多模态 AI 智能体,可插拔接入语音、大模型与传输服务。