简介:古籍数字化中,普通OCR常在繁体异体字、竖排多栏版式与字迹残损面前失效。本文拆解古籍文字识别的三大结构性难点,梳理大字符集识别、版面分析与语义校勘三项核心能力要求,并给出识别率科学评估方法、图像采集规范与人机协同校对流程,帮助研究团队搭建高效、可复核的古籍数字化工作流。
一、引言:古籍数字化,往往卡在“识字”这一步
做文献整理的人多半有过类似经历:把一册古籍扫描件交给普通OCR软件,导出的文本要么缺字错字连篇,要么行序颠倒、批注混入正文。原因并不复杂——主流OCR是围绕“当代印刷体简体中文”这一场景构建的,而古籍恰好在这个场景的每一个维度上都“越界”:字符集不同、版式规则不同、底本质量分布也不同。
因此,评估与选型古籍文字识别方案,不能停留在“识别率多少”这一句提问上,而要理解它难在哪里、成熟技术靠什么能力应对、以及我们还能用什么工程手段把效果推到上限。本文按“难点—能力—评估—实践”四层展开。
二、通用OCR为什么在古籍上失效:三个结构性原因
2.1 字符集鸿沟:从“几千字”到“数万字形”
现代规范汉字的日常覆盖面是千量级到万量级(《通用规范汉字表》收字8105个),通用OCR的字符分类能力通常只需覆盖这个量级。而古籍用字远超于此:历代传世字书累计收录的字头已达数万量级,其中相当比例是异体字、古今字、俗字与避讳字。
对古籍研究而言,最麻烦的不是“生僻字认不出”,而是“长得不一样却实为同一个字”。以中医古籍为例:
换言之,古籍OCR在字符层要同时做好两件事:把数万级字形“认对”,再把它们“归一”到标准字位,供后续检索与量化统计使用。
2.2 版式复杂:竖排、右起、多栏、批注混排
古籍的物理形态决定了它的版面规则与现代书籍几乎相反:
版面分析出错是一种“隐性灾难”:即便每个单字都识别正确,只要段落结构与阅读顺序错了,全文语义就不可用,而且人工排查的成本极高——错乱往往看起来“通顺”,不对照原件根本发现不了。
2.3 底本质量谱系宽:刻本、抄本、残损本差异巨大
古籍底本的质量分布很宽:官刻本、坊刻本、影抄本、稿本、近代石印与铅印本,各有各的“坏法”——版面歪斜、纸张透光、墨色浓淡不均、虫蛀残损、朱墨双色批注。通用OCR的训练数据里几乎没有这类样本,泛化能力自然崩塌。即使采用专门方案也要清醒:识别效果高度依赖底本类型,同一套系统在规范刻本与漫漶抄本上的表现可能差出一个量级。
三、成熟古籍OCR方案的三项核心能力
针对上述难点,当前业界主流的古籍文字识别技术路线可以概括为“大字符集识别 + 版面分析 + 语义校勘”三层。
3.1 大字符集识别与字形归一
识别模型需要把分类能力扩展到数万级字符,覆盖常用繁体字、高频异体字与俗写形态,并在后处理阶段做字形归一:
异体字归一映射(示意):脈 -> 脉 (繁简归一)薑 -> 姜 (繁简归一)癥 -> 症 (古今字归一,需注意医学语境)囘 -> 回 (异体字归一)
归一不能是简单查表:部分对应关系依赖语境,工程上更稳妥的做法是同时保留“原始识别结果”与“归一结果”两份输出,校勘时可随时回溯原字。选型时值得专门验证这一点——只输出归一结果、丢弃原始字形的工具,会直接破坏校勘学的证据链。
3.2 版面分析引擎
版面分析要解决三个子问题:
以处理清代批注本这类复杂样本为例,理想的输出应当是“正文层 + 批注层 + 图表区”三份结构化结果,批注附带位置信息,方便对照核查。这类版面若靠人工整理,仅格式还原一项往往就要耗费数天,自动化版面分析的核心价值正在于此。
3.3 上下文语义校正
单字识别总会留有残余错误,语义层是最后一道防线。基于古籍语料训练的语言模型可以在三个方向上发挥作用:结合上下文对候选字重排序,纠正形近字误识;标注低置信度片段,驱动人工优先复核;提示疑似通假字位置,辅助校勘判断。需要注意的原则是:语义层应当“提示”而非“擅自改动”——自动改字会引入难以察觉的新错误,损害文本可信度。
四、如何科学评估识别率:不要被单一数字带偏
选型时更严谨的做法是自建一个小型分层评测集:
经验上,规范刻本的字符级准确率达到较高水平(如90%以上)在成熟方案中是可期的;但手抄本、残损本会显著下滑——这属于任务本身的难度边界,不应指望更换工具就发生质变,正确策略是调整流程:更严格的图像规范加上更重的人工校对投入。
五、实践规范:把识别效果推到上限
5.1 图像采集规范
图像质量是识别效果的第一决定因素,采集阶段务必做到:
5.2 预处理流水线
# 伪代码:古籍图像预处理示意def preprocess(page):page = deskew(page) # 纠偏page = crop_borders(page) # 裁切边框regions = layout_analysis(page) # 版面分区for r in regions:r.bin = adaptive_binarize(r) # 自适应二值化return regions
关键原则:二值化参数宁保守勿激进。过度二值化造成的笔画断裂是不可逆损伤,宁可保留灰度信息交给识别引擎处理。
5.3 人机协同校对流程
5.4 工具组合策略
务实的做法是分层使用工具:现当代排印本、整理本可直接交给通用云文字识别服务(如百度智能云的OCR类能力)批量处理,成本与吞吐都占优;原刻本、抄本再进入专门的大字符集古籍识别流程;两类输出最终汇入同一条归一与校对管道。判断标准很朴素——底本越接近现代印刷规范,通用方案越够用;越接近手写与雕版形态,越需要专门方案。
六、结语
古籍文字识别不是一个“换个工具就能解决”的问题,而是一条由图像采集规范、大字符集识别、版面分析、语义校勘与人机协同校对组成的完整流水线。理解每一环节的能力边界,自建分层评测集客观度量,把不可靠的环节交给人工流程兜底,才能让古籍数字化项目既快得起来,又经得起学术层面的复核。