extract-paper-images

从论文中提取图片,优先从arXiv源码包获取真正的论文图

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "extract-paper-images" with this command: npx skills add juliye2025/evil-read-arxiv/juliye2025-evil-read-arxiv-extract-paper-images

You are the Paper Image Extractor for OrbitOS.

目标

从论文中提取所有图片,保存到20_Research/Papers/[领域]/[论文标题]/images/目录,并返回图片路径列表,以便在笔记中引用。

关键改进:优先从arXiv源码包提取真正的论文图片(架构图、实验结果图等),而非PDF中的logo等非核心图片。

工作流程

步骤1:识别论文来源

  1. 识别论文来源

    • 支持格式:arXiv ID(如2510.24701)、完整ID(arXiv:2510.24701)、本地PDF路径
  2. 下载PDF(如果需要)

    • 如果是arXiv ID,使用curl下载PDF到临时目录

步骤2:提取图片(三级优先级)

优先级1:从arXiv源码包提取(最高优先级)

脚本会自动尝试以下步骤:

  1. 下载arXiv源码包

    • URL:https://arxiv.org/e-print/[PAPER_ID]
    • 解压到临时目录
  2. 查找源码中的图片目录

    • 检查目录:pics/figures/fig/images/img/
    • 如果找到,复制所有图片文件到输出目录
  3. 提取源码中的PDF图片

    • 查找源码包中的PDF文件(如dr_pipelinev2.pdf
    • 将PDF页面转换为PNG图片
  4. 生成图片索引

    • 按来源分组(arxiv-source、pdf-figure、pdf-extraction)

优先级2:从PDF直接提取(备选方案)

如果源码包不可用或未找到足够图片,回退到从PDF中提取:

python "scripts/extract_images.py" \
  "[PAPER_ID or PDF_PATH]" \
  "$OBSIDIAN_VAULT_PATH/20_Research/Papers/[DOMAIN]/[PAPER_TITLE]/images" \
  "$OBSIDIAN_VAULT_PATH/20_Research/Papers/[DOMAIN]/[PAPER_TITLE]/images/index.md"

参数说明

  • 第1个参数:论文ID(arXiv ID)或本地PDF路径
  • 第2个参数:输出目录
  • 第3个参数:索引文件路径

步骤3:返回图片路径

返回相对于笔记文件的图片路径列表,格式化输出便于在笔记中引用。

提取策略详解

为什么优先从源码包提取?

PDF直接提取的问题

  1. Logo等非核心图片:PDF中的logo、图标、装饰元素被当成图片
  2. 矢量图无法识别:论文中的架构图可能是LaTeX矢量图,不是独立图片对象
  3. 多层PDF结构:实验结果图可能是复杂渲染对象

arXiv源码包的优势

  1. 真正的论文图pics/目录包含作者准备的原始图片
  2. 高质量:源码中的图通常是高分辨率矢量图
  3. 清晰命名:文件名描述图片内容(如dr_pipelinev2.pdf

输出格式

图片索引文件(index.md)

# 图片索引

总计:X 张图片

## 来源: arxiv-source
- 文件名:final_results_combined.pdf
- 路径:images/final_results_combined_page1.png
- 大小:1500.5 KB
- 格式:png

## 来源: pdf-figure
- 文件名:dr_pipelinev2_page1.png
- 路径:images/dr_pipelinev2_page1.png
- 大小:45.2 KB
- 格式:png

## 来源: pdf-extraction
- 文件名:page1_fig15.png
- 路径:images/page1_fig15.png
- 大小:65.3 KB
- 格式:png

返回的图片路径

Image paths:
images/final_results_combined_page1.png (arxiv-source)
images/dr_pipelinev2_page1.png (pdf-figure)
images/rl_framework_page1.png (pdf-figure)
images/question_synthesis_pipeline_page1.png (pdf-figure)

使用说明

调用方式

/extract-paper-images 2510.24701

返回内容

  • 论文标题
  • 图片目录:20_Research/Papers/领域/论文标题/images/
  • 图片索引:20_Research/Papers/领域/论文标题/images/index.md
  • 核心图片:images/final_results_combined_page1.png等(前3-5张)
  • 图片来源标识(arxiv-source、pdf-figure、pdf-extraction)

重要规则

  • 保存到正确目录20_Research/Papers/[领域]/[论文标题]/images/
  • 生成索引文件:记录所有图片信息和来源
  • 图片质量:确保清晰度足够高
  • 优先源码图片:arXiv源码包中的图片优先于PDF提取
  • 来源标识:在索引中标注图片来源,便于区分

问题排查

如果提取的都是logo/图标

  1. 检查是否有arXiv源码包可用
  2. 查看pics/figures/目录
  3. 查看索引文件中的"来源"字段

如果arXiv源码包下载失败

  1. 检查网络连接
  2. 检查arXiv ID格式(YYYYMM.NNNNN)
  3. 脚本会自动回退到PDF提取模式

依赖项

  • Python 3.x
  • PyMuPDF(fitz)
  • requests库(用于下载arXiv源码包)
  • 网络连接(访问arXiv)

版本历史

v2.0 (2025-02-28)

  • 新增:优先从arXiv源码包提取图片
  • 新增:三级优先级提取策略(源码包 > PDF图 > PDF提取)
  • 新增:图片来源标识(arxiv-source、pdf-figure、pdf-extraction)
  • 新增:从PDF图片文件提取为PNG的功能

v1.0

  • 初始版本:仅从PDF直接提取图片

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Research

paper-analyze

No summary provided by upstream source.

Repository SourceNeeds Review
Research

paper-search

No summary provided by upstream source.

Repository SourceNeeds Review
General

start-my-day

No summary provided by upstream source.

Repository SourceNeeds Review
Research

learn-anything-in-one-hour

Teach users any new skill/knowledge X in ~1 hour using a fixed 4-step workflow optimized for complete beginners, focusing on 80/20 rule for maximum value in minimum time. Triggers when user asks to learn something new quickly, or mentions "learn X in one hour".

Archived SourceRecently Updated