想象你刚接管一间堆满旧档案的库房:纸张皱皱巴巴,有的沾着咖啡渍,有的盖着歪斜的红章,表格密密麻麻,角落还散落着几份被折过的合同。你的任务是当一名细心的档案管理员,把这堆“乱象”整理成一本规范的总账——每份文档的抬头、日期、金额、盖章单位,都清清楚楚登记在册。智能文档分析,就是给计算机装上这套“档案管理员手艺”:先清理图像,再划分版面,读懂表格、辨认真章、逐字阅读,最后把关键信息抄进结构化账本。这篇文章会沿着这条整理档案的线索,带你走完这条流水线的每一个环节,并附上可直接运行的代码示范。

岗位关联

掌握智能文档分析,是进入财务自动化、合同审查、档案数字化等落地场景的钥匙,也是文档智能工程师的核心竞争力。

目录
  1. 可视化演示
  2. 文档分析概述
  3. 图像预处理
  4. 版面分析技术
  5. 表格识别技术
  6. 印章检测技术
  7. 文本识别基础
  8. 结构化信息提取
  9. AI 应用场景
  10. Python 演示
  11. 常见误区
  12. 面试题

可视化演示

动态演示智能文档分析技术全解的核心机制,通过源头/管道/节点/终端四种模式展示关键概念与交互流程。

本节配有交互动效(进入视口后自动加载,约 3KB)。

智能文档分析技术全解:文档分析 文档分析概述 文档分析原理 核心机制可视化 智能文档分析技术全解整体架构与关键组件

文档分析概述

想象你是一名新上任的档案管理员,推开工房的门,迎面的是一整屋凌乱的纸张:有的皱皱巴巴,有的洒了咖啡,有的红章歪斜,表格里挤满数字。你的目标很明确——把每份文档的关键信息抄进全馆统一的总账本。要做到这点,你必须按一套固定工序来:先清理,再分区,然后读表认章,最后抄录归档。

智能文档分析(Intelligent Document Analysis)就是把这套“档案管理员工序”搬进计算机。系统输入一张文档图像,输出一份结构化数据。和普通文字识别只输出文字不同,文档分析还要理解版面结构:哪里是标题、哪里是表格、哪里有印章,甚至要知道文字的阅读顺序,才能把信息准确放进正确的字段。

一条典型的文档分析流水线由六个环节组成:图像预处理、版面分析、表格识别、印章检测、文本识别与结构化信息提取。前一个环节的输出是后一个环节的输入,任何一个环节出错都会向下游扩散。把整条流水线抽象成一个函数链:

这串公式就是档案管理员那套固定工序的浓缩:先洗手擦桌(预处理),再整体观察分区(版面分析),处理表格和印章、逐行读字(识别),最后登记入账(提取)。每一步都依赖上一步的成果,缺了任何一环,总账本都会出错。

S=E(R(A(P(I))))\displaystyle S = E\big(R\big(A\big(P(I)\big)\big)\big)
原始图像 I 先被预处理 P 清理干净,再经版面分析 A 分区,表格、印章、文字识别 R 读出内容,最后结构化提取 E 生成结果 S。
  1. I 原始图像流水线的起点,即扫描或拍摄得到的文档图片。
    II
  2. P 预处理对图像去噪、矫正、灰度化,为后续环节铺路。
    P(I)P(I)
  3. A 版面分析把图像划分为标题、正文、表格等区域。
    A(P(I))A(P(I))
  4. R 识别环节对表格、印章、文本分别做内容识别。
    R(A(P(I)))R(A(P(I)))
  5. E 结构化提取按规则抽取关键字段,输出最终结果。
    S=E(R(A(P(I))))S = E(R(A(P(I))))

图像预处理

档案室里没有几张干净纸:有的被揉皱,有的边缘沾着泥点,有的放歪了。管理员绝不会直接照抄一张皱纸——他会先把纸铺平、擦净、摆正。图像预处理就是流水线里的“铺平、擦净、摆正”:用算法把脏、歪、糊的文档图像修整成适合识别的样子。

拍摄或扫描的文档图像常有四大问题:光照不均、几何变形、噪声干扰、对比度低。预处理环节主要通过四类操作应对:图像增强(提对比度)、透视矫正(把梯形拉回矩形)、噪声去除(把“椒盐”点抹掉)、图像二值化(把灰度图变成黑白图)。

其中灰度化是最基础的一步。彩色图每个像素有红、绿、蓝三个通道,直接处理计算量大。灰度化把三个分量压缩成一个亮度值,图像轮廓和文字信息几乎不丢失。人眼对三种颜色的敏感度不同,因此不能简单取平均,而要按敏感度加权:

把纸铺平擦净摆正之后,后面的“阅读”才能又快又准。预处理省下的每一分力气,都会在版面分析、表格识别、文本识别这些环节里加倍回报——脏图进,错字出,这是文档分析的第一条铁律。

Gray=0.299×R+0.587×G+0.114×B\displaystyle \text{Gray} = 0.299 \times R + 0.587 \times G + 0.114 \times B
这个公式把红、绿、蓝按人眼敏感度加权求和,绿色权重最高,蓝色最低。
  1. Gray 灰度值输出像素的亮度,越大越亮,范围 0 到 255。
    Gray\text{Gray}
  2. R、G、B 三通道彩色像素由红、绿、蓝三个分量组成。
    R,  G,  BR,\; G,\; B
  3. 权重系数0.299、0.587、0.114 反映人眼对红绿蓝的敏感程度。
    0.299,  0.587,  0.1140.299,\; 0.587,\; 0.114
  4. 加权求和三通道乘以各自权重后相加,得到一维亮度值。
    Gray=0.299R+0.587G+0.114B\text{Gray} = 0.299R + 0.587G + 0.114B

版面分析技术

拿到一张已经干净的纸,管理员不会急着逐字读,而是先退后一步看全貌:标题在纸上方,正文占中栏,左下是表格,右下是图片,页脚还有页码。这种“先看结构、再读内容”的习惯,对应技术里的版面分析。

版面分析(Layout Analysis)的目标是把文档图像划分为若干个语义区域——标题、正文、图片、表格、页眉页脚等,并输出每个区域的位置框和类别。它通常由目标检测模型完成:模型在整张图上扫描,输出一组带置信度的矩形框,每个框对应一个版面区域。

区域框不准,后面识别就找错地方。衡量框准不准,最常用的指标是 IoU(Intersection over Union,交并比):

版面分析相当于给档案画一张“房间分区图”:客厅、厨房、书房一目了然。分区图越准确,后面找表格、找印章、找正文就越有底气——这是整个流水线的“地图”环节。

IoU=∣A∩B∣∣A∪B∣\displaystyle \text{IoU} = \frac{|A \cap B|}{|A \cup B|}
IoU 用预测框 A 与真实框 B 的重叠面积除以两者覆盖的总面积,结果在 0 到 1 之间,越接近 1 说明框得越准。
  1. A 预测框模型输出的区域位置。
    AA
  2. B 真实框人工标注的标准区域位置。
    BB
  3. 交集部分两个框重叠的面积。
    A∩BA \cap B
  4. 并集部分两个框覆盖的总面积。
    A∪BA \cup B
  5. 两者比值重叠面积占覆盖总面积的比例。
    ∣A∩B∣∣A∪B∣\frac{|A \cap B|}{|A \cup B|}

表格识别技术

档案里最头疼的是表格:密密麻麻的小格子,行列错落,还有合并单元格。管理员拿到一张表,总会先数清几行几列,再逐格抄写。表格识别就是把“数格子、抄格子”自动化,而且必须保证每个数字落在正确的行列上。

表格识别分两步走。第一步是表格检测:在版面图像上定位表格所在的矩形区域,和版面分析中的目标检测一脉相承。第二步是结构解析:识别表格的行线、列线以及合并单元格,把它们组合成规范的网格,从而知道每个单元格的坐标和跨行跨列情况。最后才是内容提取:用文本识别把每格里的文字读出来,填回对应坐标。

结构解析的产物,本质是一张由单元格组成的集合。用符号表示就是:

读表格就像开一个抽屉柜:先找到柜子(表格检测),再摸清几层几格(结构解析),最后逐格取物(内容提取)。抽屉结构没摸清就乱取,物品全混在一起——这正是结构解析要死磕的原因。

T={Cell(i,j)∣i∈[1,m],  j∈[1,n]}\displaystyle T = \big\{ \mathrm{Cell}(i,j) \mid i \in [1,m],\; j \in [1,n] \big\}
一张 m 行 n 列的表格 T,由所有单元格 Cell(i,j) 组成,每个格子由行号 i 和列号 j 唯一定位。
  1. T 表格结构整张表的完整描述,是行列网格的集合。
    TT
  2. Cell(i,j) 单元格第 i 行第 j 列的那个格子。
    Cell(i,j)\mathrm{Cell}(i,j)
  3. m 与 n 行列数表格一共有 m 行、n 列。
    m,  nm,\; n
  4. 集合列举对 i 从 1 到 m、j 从 1 到 n 枚举所有格子。
    {Cell(i,j)∣i∈[1,m],  j∈[1,n]}\big\{ \mathrm{Cell}(i,j) \mid i \in [1,m],\; j \in [1,n] \big\}

印章检测技术

红章是档案的“身份证”,证明文件出自哪个单位、是否有效。可档案里的红章经常盖得歪、颜色深浅不一,有时还压在正文上。管理员会先找到章,把它转正,再看清印文。印章检测做的就是这套“找章、转正、读章”。

印章检测通常分四步:先用颜色特征筛选红色区域,得到候选区域;再用形状约束确认候选区域里是否有圆形(或椭圆)轮廓;接着对印章区域做校正,把歪斜的圆形印文“转正”甚至“拉直”成横排;最后交给文本识别模型读出印文内容,常见的是单位名称和“发票专用章”等字样。

圆形印章的几何本质是圆。圆的标准方程为:

找到红章、转正角度、读出印文,就像管理员拿到一份盖了章的文件:先确认盖章单位,再核对内容是否对得上。印章检测是文档可信度的守门员,缺了它,“假章”和“漏章”就会蒙混过关。

(x−a)2+(y−b)2=r2\displaystyle (x - a)^2 + (y - b)^2 = r^2
圆的每个像素点 (x,y) 到圆心 (a,b) 的距离都等于半径 r,检测算法据此找圆。
  1. 圆心坐标印章圆的中心点位置。
    (a,b)(a, b)
  2. 半径长度决定印章圆的大小。
    rr
  3. 圆周上的点落在圆周上的像素点坐标。
    (x,y)(x, y)
  4. 方程成立点到圆心距离等于半径时,该点在圆上。
    (x−a)2+(y−b)2=r2(x - a)^2 + (y - b)^2 = r^2

文本识别基础

版面分好了、表格读了、章也认了,剩下的就是普通正文。管理员开始逐行逐字地读。文本识别就是让计算机具备“逐字阅读”能力的技术——它也是文档分析流水线里最核心、最通用的环节。

文本识别分成两小步:文本检测负责回答问题“字在哪”——在图像上框出每一行文字;文本识别负责回答问题“字是啥”——把文本行图像变成字符串。现代方案普遍用深度学习序列模型:输入一行文字的图像,输出一串字符。这类模型在识别时,会对每一个候选字符序列计算一个概率。

模型最后选哪个候选输出?答案是挑概率最大的那个。用数学语言描述:

就像管理员遇到一个似曾相识的字,会凭着上下文挑出最可能的那个字。文本识别模型同样在“猜”,只是它把每个猜测都量化成概率,永远输出最有把握的那个。记住这一点,你就能理解为什么识别结果都会带一个“置信度”。

y^=arg⁡max⁡y∈YP(y∣x)\displaystyle \hat{y} = \arg\max_{y \in \mathcal{Y}} P(y \mid x)
x 是文本行图像,y 是所有可能的文本候选,模型计算每个候选的条件概率,取最大者作为结果。
  1. x 输入图像文本行的图片。
    xx
  2. y 候选文本所有可能的字符序列集合。
    Y\mathcal{Y}
  3. 条件概率 P(y|x)给定图像 x,输出为 y 的概率。
    P(y∣x)P(y \mid x)
  4. argmax 取最大在所有候选中挑概率最高的作为结果。
    y^=arg⁡max⁡y∈YP(y∣x)\hat{y} = \arg\max_{y \in \mathcal{Y}} P(y \mid x)

结构化信息提取

流水线的最后一站,是把读懂的文档“登记入账”:从标题、表格、正文、印文这些识别结果里,挑出姓名、日期、金额、单位这类关键字段,填写进统一格式的总账本。这一步在技术里叫结构化信息提取。

结构化提取通常分三层:第一层是关键信息定位,利用版面位置、语义标签或模板找到目标字段出现在哪个文本区域;第二层是字段抽取,用正则表达式、字典匹配或预训练语言模型把字段值提取出来;第三层是规则校验,用日期格式、金额范围、校验位等规则检查抽取结果合不合理,不合理的打回重抽或交人工复核。

工程实践中,单个字段的置信度不足以判断整份文档是否可信——有的字段容易识别,有的容易出错。因此系统会把各字段的置信度做加权求和,得到综合置信度:

登记入账是档案管理的终点,也是自动化办公的起点:达标的总账本会被下游系统直接使用,不达标的退回重抽。智能文档分析的真正价值,就在于最后输出这本既规范又能被检索、计算、流转的“总账本”。

Ctotal=∑i=1nwi×ci\displaystyle C_{\text{total}} = \sum_{i=1}^{n} w_i \times c_i
n 个字段各有置信度 c_i 和权重 w_i,加权求和得到整体可信度,低于阈值触发人工复核。
  1. n 字段数量要抽取的关键字段个数。
    nn
  2. c_i 单项置信度第 i 个字段识别结果的可信程度。
    cic_i
  3. w_i 权重不同字段对结果的重要程度。
    wiw_i
  4. 加权求和累加得到整体可信度。
    Ctotal=∑i=1nwi×ciC_{\text{total}} = \sum_{i=1}^{n} w_i \times c_i

AI 应用场景

发票自动录入:财务共享中心的“无纸化”改造

阶段:结构化信息提取 + 规则校验

解决的问题:传统财务人员逐张手工录入发票,速度慢、易出错、人力成本高。文档分析流水线能自动完成整套工序:预处理矫正倾斜的发票图,版面分析定位金额区,表格识别解析发票明细栏,印章检测验证发票专用章是否齐全,文本识别读出票面各字段,最后由结构化信息提取统一输出入库。

具体案例:某集团财务共享中心每天处理 5000+ 张发票。部署文档分析系统后,自动抽取发票抬头、税号、金额、开票日期,并调用税务局接口校验真伪;单张处理时间从 3 分钟降到 5 秒,录入准确率从 96% 提升到 99.7%。

银行信贷材料合规审查

阶段:版面分析 + 印章检测 + 字段抽取

解决的问题:信贷申请材料动辄几十页,人工审查易漏看缺章、信息不一致。需要自动把合同、登记表、抵押清单按版面分好类,检索每个关键位置,核对印章是否齐全、字段是否一致。

具体案例:某银行信贷审批部门用文档分析系统审查进件材料:先版面分析分出合同页、身份证页、抵押物清单,再表格识别解析抵押清单位置与行列,印章检测核对公章和法人章是否齐全,最后结构化提取把借款人姓名、证件号、贷款金额汇总比对,3 个月内抓出 200+ 份缺章或信息不一致的可疑材料。

Python 演示

python80 行
# -*- coding: utf-8 -*-"""智能文档分析流水线的简化演示""" import jsonimport re  def grayscale(r, g, b):    # 灰度化: Gray = 0.299*R + 0.587*G + 0.114*B    return 0.299 * r + 0.587 * g + 0.114 * b  def simulate_ocr_blocks():    # 模拟OCR得到的文本块: (区域类型, 文本内容)    return [        ("title", "ELECTRONIC INVOICE"),        ("field", "Invoice No: 12345678"),        ("field", "Date: 2024-06-18"),        ("field", "Buyer: Zhang San"),        ("field", "Amount: 1234.50"),    ]  def layout_analyze(blocks):    # 版面分析: 按类型划分到 title/body/footer 三个区域    regions = {"title": [], "body": [], "footer": []}    for kind, text in blocks:        if kind == "title":            regions["title"].append(text)        elif kind == "field":            regions["body"].append(text)        else:            regions["footer"].append(text)    return regions  def extract_fields(regions, rules):    # 结构化提取: 用正则规则从 body 区域中抽取字段    result = {}    for text in regions["body"]:        for field, pattern in rules.items():            match = re.search(pattern, text)            if match:                result[field] = match.group(1)    return result  def validate(result):    # 规则校验: 检查日期与金额格式    ok = True    if "date" in result and not re.match(r"^\d{4}-\d{2}-\d{2}$", result["date"]):        ok = False    if "amount" in result and not re.match(r"^\d+(\.\d{2})?$", result["amount"]):        ok = False    return ok  def main():    # 预处理演示: 计算一个像素的灰度值    gray = grayscale(128, 64, 192)    print("Grayscale:", round(gray, 1))     # 模拟OCR之后的流水线: 版面分析 -> 结构化提取 -> 规则校验    blocks = simulate_ocr_blocks()    regions = layout_analyze(blocks)    rules = {        "invoice_no": r"Invoice No:\s*(\w+)",        "date": r"Date:\s*([\d-]+)",        "buyer": r"Buyer:\s*(\S+)",        "amount": r"Amount:\s*([\d.]+)",    }    result = extract_fields(regions, rules)    if validate(result):        print("Validation OK ->", json.dumps(result, indent=2))    else:        print("Validation FAILED:", result)  if __name__ == "__main__":    main()
目的:用不到 100 行代码演示文档分析流水线——灰度化预处理、版面分析分区、正则抽取字段、规则校验输出,跑起来就能看到最终 JSON。
  1. return 0.299 * r + 0.587 * g + 0.114 * b灰度化公式的实现,绿色权重最高,模拟“擦净纸张”的第一步。
  2. regions = {"title": [], "body": [], "footer": []}版面分析先建好三个语义区域,就像给档案画分区图。
  3. for kind, text in blocks:遍历模拟的 OCR 文本块,按类型归类到对应区域。
  4. match = re.search(pattern, text)用正则规则在正文文本中匹配字段值,对应结构化提取的“字段抽取”。
  5. if validate(result):规则校验通过才输出结构化结果,失败则告警,对应“不达标退回重抽”。

常见误区

误区很多初学者觉得文档分析就是装一个 OCR 库,把整张图片丢进去,文字就全出来了。表格、印章、版面顺序都不用管。

正解文档分析是一条流水线:预处理、版面分析、表格识别、印章检测、文本识别、结构化提取各司其职。就像档案管理员不会拿起一张脏皱的纸就抄写,而是先铺平擦净摆正,再分区、读表、认章、逐字读、登记入账。只用一个通用 OCR 模型,遇到复杂版面就会乱成一团。

为何常见:因为很多手机扫描软件把过程封装得太好,用户只看到“上传 → 出文字”,误以为里面只有一个步骤。

误区新手常以为找到表格后,直接对整块区域做文字识别就完事了。结果输出的文字顺序混乱,根本不知道哪个数属于哪一行哪一列。

正解表格识别的核心是结构解析:先确定行列线、合并单元格,把“格子”的坐标建出来,再逐格提取内容。就像开抽屉柜,先摸清几层几格(结构),再逐格取物(内容);不知道结构就取物,东西全混在一起,数据就错位了。

为何常见:人眼天生能“看懂”表格结构,所以容易忽略结构解析这一步的技术难度。

误区很多人觉得印章上的字也是字,直接套用正文识别模型就能读出来。但实际效果奇差,印文又歪又糊,几乎全军覆没。

正解印章是圆形(或椭圆)排布的文字,且常与背景文字重叠。需要先用颜色和形状特征定位印章区域,再做校正把环状文字“转正拉直”,然后才能识别。红章像一张圆形贴纸,不先把它揭下来转正、摊平,正面看永远看不清印文。

为何常见:印章也是文字,逻辑上“应该能识别”,忽略了圆形排布和与背景重叠这两个特殊障碍。

误区有人觉得字段抽取用正则表达式就足够了,不需要版面分析、表格识别这些前置环节。反正最后都是匹配字符串。

正解正则依赖规范的文本顺序和格式,而真实文档版面五花八门:字段可能在表格里、可能在印章旁边、可能跨行换页。必须先做版面分析和各类识别,把文本按阅读顺序组织好,正则才能精准出手。就像查账本前,你得先知道哪一页是账、哪一行是日期,否则满屋翻纸也找不到数。

为何常见:因为对“文档分析是流水线”缺乏整体认知,把最末端的一步误当成了全部。

面试题

Q1. 智能文档分析流水线中,版面分析的输入通常是?

单选题 · easy

  • A.原始彩色文档图像
  • B.预处理后的文档图像← 正确答案
  • C.结构化 JSON 输出
  • D.纯文本识别结果

答案:B。版面分析位于预处理之后、各类识别之前,输入是经过去噪矫正的文档图像。就像档案管理员先抚平纸张再观察结构,不会拿皱脏的纸直接分区。原始彩色图要先经预处理,JSON 和纯文本则是后面的输出。

Q2. 灰度化公式中权重最大的通道是?

单选题 · easy

  • A.红色通道权重最大
  • B.绿色通道权重最大← 正确答案
  • C.蓝色通道权重最大
  • D.三个通道权重相同

答案:B。权重 0.299、0.587、0.114 就是人眼对红绿蓝的敏感度,绿色最高、蓝色最低。加权求和得到的灰度图最接近人眼观感,之后的二值化、识别都基于它。

Q3. IoU 指标衡量的是?

单选题 · easy

  • A.预测框与真实框的重叠程度← 正确答案
  • B.模型推理速度的快慢程度
  • C.图像压缩比例的大小程度
  • D.印章文字数量的多少程度

答案:A。IoU 用交集面积除以并集面积,值越接近 1,检测框与标注框越吻合。版面分析、表格检测、印章检测都用它衡量位置准不准,相当于“分区框与真实分区的贴合度”。

Q4. 表格结构解析需要完成的工作包括?

多选题 · mid

  • A.确定表格的完整行列结构← 正确答案
  • B.定位每个单元格的坐标← 正确答案
  • C.识别表格内的印章文字
  • D.判断合并单元格的范围← 正确答案

答案:ABD。结构解析要还原行列、定位单元格坐标、判断合并单元格;识别印章文字是印章检测环节的职责,不属于表格结构解析。若混淆两者,就像开抽屉柜却去读墙上挂的牌匾,方向就错了。

Q5. 识别圆形印章最常用的几何模型是?

单选题 · mid

  • A.抛物线方程的拟合
  • B.双曲线方程的拟合
  • C.圆的标准方程拟合← 正确答案
  • D.直线方程的拟合

答案:C。圆的标准方程 (x-a)²+(y-b)²=r² 描述圆上任意点到圆心等距,Hough 圆检测等算法据此投票找圆。抛物线、双曲线、直线对应其他形状,与印章的圆形轮廓不符。

Q6. 文本识别模型最终输出某个候选文本的依据是?

单选题 · mid

  • A.该候选中概率最大的那个← 正确答案
  • B.该候选中概率最小的那个
  • C.随机抽取一个候选结果
  • D.把所有候选文本拼起来

答案:A。模型对每个候选计算条件概率,取概率最大者作为识别结果。就像管理员看模糊的字形会挑最像的那个字,而不是随便猜一个或把几种可能全写上去。

Q7. 综合置信度加权公式的主要用途是?

单选题 · hard

  • A.判断整份文档数据是否可信← 正确答案
  • B.计算图像压缩后的大小
  • C.衡量版面分区的数量
  • D.决定文档存储的数据库

答案:A。各字段置信度按权重加权求和得到总体可信度,低于阈值转人工复核。如同一本总账抄完要整体核验,而不是只看某一栏填得对就草草入账。

Q8. 版面分析中还原“阅读顺序”的目的是?

单选题 · mid

  • A.按人的阅读习惯排列文本块← 正确答案
  • B.提高图像采集的帧率
  • C.减少印章检测的颜色误差
  • D.加速图像预处理的运算

答案:A。版面分析把图像切成块之后,还需要按从上到下、从主到次的顺序组织文本块,后续字段抽取才能先取标题后取正文。帧率、颜色误差、预处理速度都与阅读顺序无关。

Q9. 下列属于图像预处理操作的有?

多选题 · mid

  • A.对图像进行灰度化处理← 正确答案
  • B.对图像进行透视矫正← 正确答案
  • C.对图像进行噪声去除← 正确答案
  • D.对表格单元格进行合并

答案:ABC。灰度化、透视矫正、噪声去除都是预处理,目标是让图像干净、摆正;表格单元格合并属于表格识别阶段的结构解析,不在预处理环节,别把“整理纸张”和“整理抽屉柜”混为一谈。

Q10. 印章检测面临的主要技术难点包括?

多选题 · hard

  • A.印章文字沿圆周环形排布← 正确答案
  • B.印章与背景正文相互重叠← 正确答案
  • C.印章颜色深浅差异较大← 正确答案
  • D.印章检测与表格识别无关

答案:ABC。环排文字需校正后才能识别,重叠文字会互相干扰,颜色深浅影响特征提取,这三者是印章检测的典型难点。D 本身是错误表述:印章检测与表格识别是流水线中并列的两个环节,各有分工。