跨页表格合并问题
Closed this issue · 5 comments
🔎 Search before asking | 提交之前请先搜索
- I have searched the MinerU Readme and found no similar bug report.
- I have searched the MinerU Issues and found no similar bug report.
- I have searched the MinerU Discussions and found no similar bug report.
🤖 Consult the online AI assistant for assistance | 在线 AI 助手咨询
- I have consulted the online AI assistant but was unable to obtain a solution to the issue.
Description of the bug | 错误描述
发现跨页表格无法合并的原因,主要在于解析出来的空列会被自动合并,如第一页表格本来有6列,下一页的表格中后两列为空就会自动合并成4列,且colspan都为1。我在utils的table merge的合并逻辑中查到关于实际列数和视觉列数的匹配,但是问题不在于逻辑,可能出现在了表格解析所用的模型上
How to reproduce the bug | 如何复现
pipeline backend,cli mode,只要出现这一列所有单元格内都为空就会消失在解析出的html标签中
Operating System Mode | 操作系统类型
MacOS
Operating System Version| 操作系统版本
macos
Python version | Python 版本
3.10
Software version | 软件版本 (mineru --version)
2.0.x
Device mode | 设备模式
mps
Hi @Hlizzzzz! I'm Dosu and I’m helping the MinerU team.
你反馈的跨页表格空列丢失问题,确实是 MinerU 2.0.x 版本表格解析模型的已知局限:当某一列整页为空时,模型直接省略该列,导致后续合并时列数不一致,无法正确跨页合并。merge 逻辑本身只做结构比对和拼接,没有能力“补全”被模型省略的空列,也没有任何配置项可以强制保留空列或自定义合并行为(merge 逻辑假设输入 HTML 结构一致)代码参考。
这个问题在 2.2.0 及 2.5.0 版本有了显著改善:新模型和混合结构解析算法大幅提升了表格结构还原能力,跨页合并准确率和空列保留效果都更好升级说明。如果可以,建议直接升级到 2.5.0 或更高版本。
如果暂时无法升级,唯一的变通办法是后处理:根据首页表头结构,手动补全后续页缺失的空列(如用空字符串填充),再合并为统一结构。
总结:2.0.x 没有配置项或代码层 workaround,根因在模型,升级新版本是根本解决方案。
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other
目前 pipeline 模式下,无论是 ModelScope 还是 HuggingFace,唯一支持的模型就是 pdf-extract-kit-1.0,没有更高版本。所有表格解析和跨页合并的准确率提升,主要来自 MinerU 主程序本身的升级(比如 2.5.0+),而不是 pipeline 模型包的更新。如果你已经从 ModelScope 下载了 pdf-extract-kit-1.0,就是最新版,无需额外更新模型包。
如需获得最新的表格解析能力,建议升级 MinerU 到最新版本,并用如下命令重新下载 pipeline 模型并自动配置路径(如有仓库迁移或模型包更新时):
mineru download-models -s modelscope -m pipeline升级后,mineru.json 的 models-dir.pipeline 路径应指向新下载的 models 目录即可。VLM 模式(vlm-transformers/vlm-vllm)才用到了 MinerU2.5-2509-1.2B 等新模型,pipeline 模式暂未支持参考。
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other
pipeline的表格模型对空列会做删除处理,主要原因是模型经常会在正常的表后增加额外空列。而单元格的合并操作对行列的匹配程度要求较高,如果对表格合并需求较强,可以切换至vlm模型,拥有更高的表格结构识别精度与更好的合并效果
有没有参数可以控制是否开启表格合并,某些场景下,不太希望跨页表格合并