文档OCR的进阶!华科&小红书新作MOCR:将文档万物转为代码,性能超越 Gemini 3 Pro

在多模态大模型(VLM)狂飙突进的今天,高质量的结构化数据早已成了各大实验室眼中的“硬通货”。然而,当我们试图从海量的 PDF、网页截图或扫描件中提取知识时,却发现传统 OCR 依然存在一个巨大的“断层”:文字被整整齐齐地排好了队,但那些承载着核心逻辑的图表、流程图、图标,却往往被当成一堆死气沉沉的像素直接裁剪掉,或者干脆丢弃。
这种“重文轻图”的处理方式,本质上是一种信息的浪费。现在学界一大趋势是将文档中的图形化资产视为代码,而今天分享的是来自华中科技大学和小红书的一项新研究——Multimodal OCR (MOCR)。
作者之所以强调“多模态”,是因为它不再仅仅把 OCR 看作是一个文字识别任务,而是将其提升到了“万物皆可解析”的高度。它不仅能看懂文字,还能理解视觉符号的结构逻辑,并将它们统一转化为可执行、可编辑的结构化代码。而该系统的具体实现被命名为 dots.mocr,其中“dots”寓意着模型能够精准捕捉从像素点到矢量结构点的转化。

-
论文地址: https://arxiv.org/abs/2603.13032 -
代码仓库: https://github.com/rednote-hilab/dots.mocr
为什么我们需要“多模态”解析?
在过去很长一段时间里,文档解析的逻辑是:先做布局分析(Layout Analysis),把文字块、表格、图片分开。文字块拿去跑 OCR,表格转成 Markdown,而图片呢?通常就直接存成一张 .png 完事。
但问题在于,图片里的信息密度极高。一个复杂的折线图或化学分子式,如果只是一张像素图,模型很难直接理解其中的数值关系或拓扑结构。而且,这种处理方式是“有损”的,一旦丢失了原始的矢量结构,就很难再进行精确的编辑和重构。

正如上图所示,MOCR 的核心思想是:将图形视为代码(Graphics as Code)。它不再把图表看作像素,而是将其解析为可缩放矢量图形(Scalable Vector Graphics, SVG)代码。这样做的好处显而易见:
-
无损重构:生成的 SVG 代码可以完美还原原始文档的视觉效果。 -
语义对齐:代码本身包含了丰富的结构信息,天然适合作为 VLM 的预训练语料。 -
可重用性:解析出的图表是可编辑的,这为下游任务提供了极大的便利。
核心技术:如何让模型“写”出图表?
为了实现这一目标,研究团队开发了一个名为 dots.mocr 的系统。它的架构主要由三部分组成:
-
高分辨率视觉编码器:这是一个拥有 1.2B 参数的骨干网络,完全从头开始训练。为什么要从头训?因为现有的视觉模型大多针对自然场景,对文档中的微小文字和精细线条(比如图表的坐标轴)不够敏感。这个编码器能处理高达 1100 万像素(11M pixels)的输入,确保每一个像素的细节都能被捕捉到。 -
轻量化多模态连接器:负责将视觉特征映射到语言空间。 -
结构化语言解码器:采用了 Qwen2.5-1.5B 模型。作者认为,1.5B 是一个性价比极高的平衡点,既能处理复杂的 SVG 生成任务,又不会让推理成本变得太高。

任务定义与数学表达
在 MOCR 中,模型会将输入图像 解析为一个有序的序列 :
其中, 代表空间区域(边界框), 是语义类别,而 则是最核心的 有效载体(Payload)。
-
输入(Input):一张包含文字、图表、公式的文档图像 。 -
输出(Output):一个按照人类阅读顺序排列的元素序列。如果 是文字,那么 就是 Markdown 文本;如果 是图表或图标,那么 就是一段可渲染的 SVG 代码。
这种统一的序列化表达,让模型能够像写文章一样,按照逻辑层次把文档里的所有要素“娓娓道来”。
强大的数据引擎
要训练这样一个“全能选手”,数据是关键。研究团队构建了一个庞大的数据引擎,来自四个方向:
-
PDF 文档:使用 dots.ocr 作为自动标注引擎,提供基础的文字和布局信息。 -
网页渲染:通过将网页渲染成图像,并利用 DOM 树提取天然的结构信号,减少标注噪声。 -
原生 SVG 资产:这是 MOCR 的秘密武器。团队从互联网上收集了海量的原生 SVG 图标、图表,并使用 svgo等工具进行了清洗和标准化处理。 -
通用 VQA 数据:保持模型的通用推理能力,如计数、定位等。
实验结果:刷新多项纪录
为了公平地评价模型性能,作者不仅使用了传统的硬性指标,还引入了 OCR Arena——一个基于“LLM 裁判”的 Elo 评分机制,使用 Gemini 3 Flash 作为裁判来评估 Markdown 转录的质量。
1. 文档解析:仅次于 Gemini 3 Pro
在 olmOCR-Bench、OmniDocBench 等主流榜单上,dots.mocr 的表现非常惊艳。

在 Table 2 中可以看到,dots.mocr 在 Elo 评分上达到了 1124.7,在开源模型中稳居第一,仅次于目前最强的闭源模型 Gemini 3 Pro。而在 olmOCR-Bench 的综合评分上,它更是跑出了 83.9 的高分,刷新了该榜单的纪录。

2. 结构化图形解析:超越 Gemini 3 Pro
这是 MOCR 的拿手好戏。在图像转 SVG 的任务中,dots.mocr-svg(针对图形优化的版本)展现出了统治级的实力。

如 Table 4 所示,在 UniSVG 评分上,dots.mocr-svg 拿到了 0.902,远超 Gemini 3 Pro 的 0.735。这意味着在处理图标、科学图表、化学分子式等复杂图形时,dots.mocr 生成的代码质量更高,重构效果更接近原图。
3. 真实场景的“降维打击”
除了跑分,定性分析更能说明问题。在处理长网页截图、真实场景文字以及手写内容时,模型展现出了极强的鲁棒性。

无论是复杂的跨学科插图,还是带有背景干扰的实景文字,dots.mocr 都能准确地识别出结构并进行有序排列。

看看这些生成的图表(Figure 7),从柱状图到散点图,模型不仅还原了形状,连坐标轴、图例这些细微的语义组件都一一对应。
写在最后
dots.mocr 的意义不仅仅在于它是一个更强的 OCR 工具。更有意思的一点是,它为我们展示了一种构建大规模多模态语料库的新路径。
过去,我们总是苦于没有足够的“图像-代码”对。现在,通过 MOCR 范式,我们可以把互联网上数以亿计的 PDF 和网页转化为高质量的训练数据。每一张被解析出来的 SVG 图表,都可以成为 VLM 学习逻辑推理的绝佳素材。


夜雨聆风