模型训练数据-MinerU一款Pdf转Markdown软件

模型训练数据-MinerU一款Pdf转Markdown软件-说明

简介:

MinerU是什么

MinerU是上海人工智能实验室OpenDataLab团队推出的开源智能数据提取工具,专注于复杂PDF文档的高效解析与提取。MinerU能将包含图片、公式、表格等元素的多模态PDF文档转化为易于分析的Markdown格式,支持从网页和电子书中提取内容,提高AI语料准备效率。MinerU具备高精度的PDF模型解析工具链,支持多种输入模型,自动识别乱码,保留文档结构,转换公式为LaTex,适用于学术、财务、法律等多个领域,支持CPU和GPU,兼容Windows/Linux/Mac平台,性能卓越。

https://opendatalab.com/OpenSourceTools/Extractor/PDF

MinerU的主要功能

  • PDF到Markdown转换:将包含多种内容类型的PDF文档转换为结构化的Markdown格式,便于进一步的编辑和分析。
  • 多模态内容处理:能识别和处理PDF中的图像、公式、表格和文本等多种内容。
  • 结构和格式保留:在转换过程中,保留原始文档的结构和格式,如标题、段落和列表。
  • 公式识别与转换:特别针对数学公式,能识别并转换成LaTeX格式,方便学术交流和技术文档使用。
  • 干扰元素去除:自动删除页眉、页脚、脚注和页码等非内容元素,净化文档信息。
  • 乱码识别与处理:自动识别并纠正PDF文档中的乱码,提高信息提取的准确性。
  • 高质量解析工具链:集成了先进的PDF解析工具,包括布局检测、公式检测和光学字符识别(OCR),确保提取结果的高准确度。

MinerU的技术原理

  • PDF文档分类预处理:在处理PDF文档之前,MinerU首先对文档进行分类,识别其类型(如文本型、图层型或扫描版PDF),并进行相应的预处理,例如检测乱码和识别是否为扫描文档。
  • 模型解析与内容提取
    • 布局检测:使用基于深度学习的模型,如LayoutLMv3,进行区域检测,识别文档中的图像、表格、标题和文本等不同区域。
    • 公式检测:利用基于YOLOv8的自研模型来识别文档中的数学公式,区分行内公式和行间公式。
    • 公式识别:通过自研的UniMERNet模型来识别和解析数学公式,将它们转换成LaTeX格式。
    • 光学字符识别(OCR):使用PaddleOCR等OCR技术来识别文档中的文本内容。
  • 管线处理:将模型解析得到的数据输入到处理管线中,进行后处理,包括:
    • 确定块级别的顺序。
    • 删除无用元素。
    • 根据版面进行内容排序和拼装,以保证正文的流畅性。
    • 进行坐标修复、高iou处理、图片和表格描述合并、公式替换、图标转储、Layout排序等操作。
  • 多种格式输出:处理后的文档信息可以转换为统一的中间态格式(middle-json),并根据需求输出为不同的格式,如Layout、Span、Markdown或Content list等。
  • PDF提取结果质检:使用人工标注的PDF自测评测集对整个流程进行检测,确保提取效果的优化。使用可视化质检工具进行人工质检与标注,反馈给模型训练,进一步提升模型能力。

  • 项目官网:https://opendatalab.com/OpenSourceTools/Extractor/PDF
    • GitHub仓库:https://github.com/opendatalab/MinerU
  • GitHub仓库:https://github.com/opendatalab/PDF-Extract-Kit
  • HuggingFace模型库:https://huggingface.co/wanderkid/PDF-Extract-Kit
  • 魔搭社区模型库:https://www.modelscope.cn/models/wanderkid/PDF-Extract-Kit

MinerU的应用场景

  • 学术研究:研究人员可从学术论文和期刊中提取关键信息,包括文本、公式和图表,支持文献综述和数据分析。
  • 法律文档处理:法律专业人士可用MinerU从合同、法律意见书和其他法律文件中提取条款和证据,提高工作效率。
  • 技术文档管理:工程师和技术作者可从技术手册和产品文档中提取技术规格和操作步骤,便于知识管理和技术传播。
  • 知识管理和信息检索:企业和组织可以用MinerU从内部文档库中提取信息,构建知识库,提高信息检索的效率。
  • 数据挖掘和自然语言处理(NLP):数据科学家和NLP研究人员可用MinerU提取的数据来训练和优化机器学习模型。

部署使用:

官方说明地址:

体验使用cpu跑 正式使用可以用GPU来跑

https://github.com/opendatalab/MinerU/blob/master/README_zh-CN.md

使用CPU快速体验

conda create -n MinerU python=3.10
conda activate MinerU
pip install -U magic-pdf[full] --extra-index-url https://wheels.myhloli.com -i https://mirrors.aliyun.com/pypi/simple

从 ModelScope 下载模型(国内直接模搭上下吧)

使用python脚本 从ModelScope下载模型文件

pip install modelscope
wget https://gitee.com/myhloli/MinerU/raw/master/scripts/download_models.py -O download_models.py
python download_models.py

python脚本会自动下载模型文件并配置好配置文件中的模型目录

配置文件可以在用户目录中找到,文件名为magic-pdf.json

windows的用户目录为 “C:\Users\用户名”, linux用户目录为 “/home/用户名”, macOS用户目录为 “/Users/用户名”

命令行执行:

https://mineru.readthedocs.io/zh-cn/latest/user_guide/quick_start/command_line.html

示例:

magic-pdf -p 44_宏光MINI_EV_instruction.pdf -o output -m auto

使用过程中的一些异常:

1.个别文档会遇到这总叠词,需要自己手动处理一下

2.pdf的水印问题导致文档解析失败

一些水印情况会导致失败,只能是处理完水印再重新处理文档

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/934883.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

51c深度学习~合集9

我自己的原文哦~ https://blog.51cto.com/whaosoft/12750420 #傅里叶特征 (Fourier Feature)与核回归 位置编码背后的理论解释 本文探讨了位置编码背后的理论基础,特别是傅里叶特征(Fourier Feature)与核回归(Kern…

数据仓库工具箱—读书笔记01(数据仓库、商业智能及维度建模初步)

数据仓库、商业智能及维度建模初步 记录一下读《数据仓库工具箱》时的思考,摘录一些书中关于维度建模比较重要的思想与大家分享🤣🤣🤣 博主在这里先把这本书"变薄"~有时间的小伙伴可以亲自再读一读,感受一下…

【JVM】JVM基础教程(三)

上一章:【JVM】JVM基础教程(二)-CSDN博客 目录 运行时数据区 应用场景 程序计数器 程序计数器在运行时会出现内存溢出吗? 栈 IDEA的debug工具查看栈帧的内容 栈帧的组成 局部变量表 关于 this 的内存存储 操作数栈 帧…

如何编译安装系统settings设置应用(5.0.0-Release)

本文介绍如何在OpenHarmony 5.0.0 r版本中修改系统设置应用,并且编译安装到开发板上 开发环境 1.dayu200开发板 2.OpenHarmony 5.0.0r 固件 3.API12 full sdk (如果安装full sdk过程中出现报错hvigor ERROR: Cannot find module typescript,请参考 h…

【Unity】Amplify Shader Editor

Amplify Shader Editor (ASE) Amplify Shader Editor,是一个功能强大的基于节点的着色器开发工具,允许开发者在 Unity 中轻松创建和管理复杂的 Shader。 主要功能和特点 基于节点的编辑器: • 提供直观的可视化界面,减少手写 Sh…

Github2024-12-10 Python开源项目日报 Top10

根据Github Trendings的统计,今日(2024-12-10统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目10HTML项目1Rust项目1系统设计指南 创建周期:2507 天开发语言:Python协议类型:OtherStar数量:241693 个Fork数量:42010 次关注人…

1.2.3计算机软件

一个完整的计算机系统由硬件和软件组成,用户使用软件,而软件运行在硬件之上,软件进一步的划分为两类:应用软件和系统软件。普通用户通常只会跟应用软件打交道。应用软件是为了解决用户的某种特定的需求而研发出来的。除了每个人都…

ElementEye,网页分析器

介绍 我们经常使用Python写爬虫,爬到网页数据之后,就需要用beautifulSoup进行解析。因为写爬虫并不是我的主营工作,大多数只是用来分析一下想要的数据而已,所以经常会忘记beautifulSoup的用法。 同时,我们总是分析页面…

Qt 联合Halcon配置

文章目录 配置代码窗口绑定 配置 选择添加库 选择外部库 LIBS -LC:/Program Files/MVTec/HALCON-17.12-Progress/lib/x64-win64/ LIBS -lhalconcpp\-lhdevenginecpp\-lhalconINCLUDEPATH C:/Program Files/MVTec/HALCON-17.12-Progress/include DEPENDPATH C:/Program Fil…

图像像素如何排列?是如何存储到diocm里面?读取到内存中是如何存储?

图像像素的排列和存储在DICOM(Digital Imaging and Communications in Medicine,医学数字成像和通信)文件中遵循特定的标准。DICOM 是一种国际标准(ISO 12052),用于处理、存储、打印和传输医学影像信息。 …

深度学习常用损失函数介绍

均方差损失(Mean Square Error,MSE) 均方误差损失又称为二次损失、L2损失,常用于回归预测任务中。均方误差函数通过计算预测值和实际值之间距离(即误差)的平方来衡量模型优劣。即预测值和真实值越接近&…

在PowerShell下运行curl命令出现错误:Invoke-WebRequest : 无法处理参数,因为参数名称“u”具有二义性

今天在Windows 11下测试Nanamq的HTTP API,按照其文档输入: curl -i --basic -u admin:public -X GET "http://localhost:8081/api/v4/subscriptions" 结果出现二义性错误: 而且输入curl --help命令想看看参数说明的时候&#xff…

学者观察 | Web 3.0生态治理及其安全——北京交通大学副教授李超

导语 李超教授认为Web 3.0中无论是链上治理还是链下治理都有其优劣。链下治理机制更侧重于社区广泛参与和讨论,过程较为繁琐,但能够形成广泛的社区支持和参与,增强决策的合法性和接受度;链上治理机制通过直接在区块链上执行决策&…

React Router 6的学习

安装react-router-dom npm i react-router-dom 支持不同的路由创建 createBrowserRouter 特点 推荐使用的方式,基于 HTML5 的 History API。支持用户友好的 URL,无需 #。适用于生产环境的绝大多数场景。 适用 使用现代浏览器,支持 pus…

光猫开DMZ教程

本教程以移动光猫未例,具体操作以实际光猫为准 1、登录移动光猫管理后台 打开浏览器,在浏览器地址栏输入移动光猫登录管理地址192.168.1.1或者tplogin.cn 按“回车键”打开登录页面,然后输入路由器管理密码登录。 移动光猫登录页面 超级密…

图像的像素的存储结构:线性结构和二维数组

图像的像素的存储结构 无论是灰度图像还是RGB图像,当它们被读取到内存中时,通常也是以线性结构存储的。 这是因为计算机内存本质上是一维的地址空间,所有数据都是按照线性顺序存储在内存中的。 然而,在程序中处理这些图像时&am…

重庆轨道交通4号线寸滩地铁站自动化监测

1. 项目概述 本次项目位于重庆市轨道交通4号线中江北区寸滩站,轨道交通4号线是中国重庆市第八条开通运营的城市轨道交通,识别色为太阳橙。寸滩地处江北区中部,东与铁山坪街道毗邻,南与南岸区隔江相望,西与江北城中央商…

jQuery漏洞——CVE-2020-11022/CVE-2020-11023,保姆篇---春不晚

漏洞号:CVE-2020-11022/CVE-2020-11023 漏洞概况及影响 该类风险为应用安全缺陷类DXSS攻击,攻击者可以利用该漏洞注入恶意脚本代码,并在受害者的浏览器上执行。将导致受害者的个人信息泄露、账户被劫持、会话被劫持等安全问题。 一、漏洞版…

十五、K8s计划任务JobCronJob

K8s计划任务CronJob&Job 一、Job可以干什么 Job 控制器用于管理 Pod 对象运行一次性任务,比方说我们对数据库备份,可以直接在 k8s 上启动一个 mysqldump 备份程序,也可以启动一个 pod,这个 pod 专门用来备份用的,备份结束 pod 就可以终止了,不需要重启,而是将 Pod…

[入门一]C# webApi创建、与发布、部署、api调用

一.创建web api项目 1.1、项目创建 MVC架构的话,它会有view-model-control三层,在web api中它的前端和后端是分离的,所以只在项目中存在model-control两层 1.2、修改路由 打开App_Start文件夹下,WebApiConfig.cs ,修改路由&…