APP下载

基于深度学习的甲骨文字检测与识别

2020-11-16刘国英

殷都学刊 2020年3期
关键词:异体字单字拓片

刘国英

(安阳师范学院 甲骨文信息处理教育部重点实验室,河南 安阳 455000)

一、前言

甲骨文是迄今为止中国发现的年代最早的成熟文字系统,是汉字的源头和中华优秀传统文化的根脉。2017 年 10 月 30 日,甲骨文入选联合国教科文组织“世界记忆名录”,其研究价值得到全世界公认。然而,甲骨学一直是一个没有多少人参与的冷门学科。主要原因有两个方面。首先,甲骨学研究门槛高,必需具备古文字学、考古学、历史学、文献学等多学科知识背景,高水平人才匮乏。其次,甲骨文认读难度大而难以被大众接受。目前,甲骨文仅仅停留在少数甲骨学专家的学术研究中,普通大众没有热情,社会上没有培育出相应的土壤,后备人才匮乏。这一问题已经引起党和国家的高度重视。2016年5月习近平在全国哲学社会工作座谈会上指出要重视发展诸如“甲骨文等古文字研究”。在2019年11月1日,他在祝贺甲骨文发现和研究120周年的贺信中又进一步强调“在新形势下,要确保甲骨文等古文字研究有人做、有传承”。

在政府的大力倡导下,研究人员开始尝试利用计算机技术进行甲骨文字的检测与识别研究,以期在降低普通大众认读甲骨字难度的同时为甲骨学专家提供辅助工具。早期的甲骨文字检测和识别研究基本按照传统模式识别路线开展,特征提取和分类器设计等多个环节都需要人工参与。这对研究人员的经验要求较高,且流程较为复杂,应用也不够方便。近年来,深度学习技术尤其是自然场景目标检测和识别技术的快速发展为甲骨文字检测和识别注入了新的活力。研究人员逐渐开始尝试使用深度神经网络进行甲骨文字的检测和识别研究,提出了一些新的方法,建立了多个甲骨文字检测和识别数据集。对这些研究内容进行详细梳理,将有助于加速甲骨文字检测和识别技术的发展,为甲骨学研究和甲骨文活化利用提供支撑。

本文组织结构如下:第2节介绍甲骨文字识别的研究现状;第3节介绍甲骨文字检测的研究现状;第4节具体分析当前研究的困难;第5节对全文进行总结并进行展望。

二、甲骨文字识别

1.传统甲骨文字识别技术

早期的甲骨文字识别遵循了“数据预处理+特征提取+分类识别”的传统甲骨文字识别框架。复旦大学的周新伦和李锋等[1-2]将甲骨文字视为“线”和“点”构成的无向图,并基于图论方法提取多层次图特征,从而进行二级和三级甲骨文字识别。北京大学吕肖庆等人[3]将甲骨文字视为图形符号,并利用轮廓线曲率直方图获得的傅里叶描述子表示甲骨字形状,使用支持向量机(support vector machines , SVM)[4]进行甲骨字识别。安阳师范学院栗青生教授[5]将甲骨文字抽象为无向图,并基于图同构判定算法进行甲骨字识别。刘永革等[6]利用甲骨字的分块直方图表示文字特征、基于支撑向量机进行甲骨字识别。江苏师范大学顾绍通[7]假设甲骨文异体字之间的拓扑结构具有不变特性,并利用最小距离对甲骨字拓扑结构编码进行等价关系判断,进而获得甲骨文字的识别结果。日本立命馆大学(Ritsumeikan University)L. Meng[8](p8-10)针对待识别甲骨文字图像和模板甲骨图像,分别使用霍夫变换和聚类来提取的直线特征点,并利用对应的最小距离进行一级识别,再使用模板匹配方法进行识别结果优化。这些方法主要针对甲骨文字的字形特征进行研究,并取得了有意义的结果。上述方法基本在较小的数据集上进行甲骨文字识别尝试,方法的稳定性、准确率和泛化能力均难以满足要求。

2.基于深度学习的甲骨文字识别

目前,基于深度学习的甲骨文字识别都是监督方式的。它们需要大量的训练数据使深度神经网络学习甲骨单字的不同模式,从而实现对单字图像的自动识别。如图1所示,常见的甲骨单字图像主要有两类:甲骨字模图像和拓片文字图像。

图1 甲骨字模图像与拓片文字图像:第一行为字模图像,第二行为对应拓片文字图像。

最早将深度学习技术应用于甲骨字模图像识别的代表性工作是2016年郭俊等[11]提出的多层次甲骨字符表示方法。该方法将基于稀疏自编码的中层表示特征和基于Gabor的低层表示特征结合起来描述甲骨字符,采用的甲骨字模数据集包含291个甲骨文单字,共有20039个样本。2018年,Zhen Yang等人[12]基于LeNet和AlexNet在一个含有21373个样本、涉及39个单字的甲骨字模数据集上进行了识别研究。同年,我们设计了一个简单的深度识别网络,并在包含44868个样本、共计5491个单字(含异体字)的甲骨字模数据集上进行了验证[13]。甲骨字模数据集通过甲骨学专家手工描摹生成,不含任何噪声,上述识别方法均能达到90%以上的识别准确率。

然而,甲骨字模图像与拓片文字图像有较大区别,后者噪声影响极其严重,识别难度要大得多。因此,真正意义的甲骨文字识别工作需要在拓片文字数据集上进行。2019年,我校“甲骨文信息处理”教育部重点实验室和华南理工大学金连文教授团队[14]联合推出了目前标注样本最多的甲骨拓片文字数据集OBC306,包含306个甲骨文单字,共计309551个样本,并通过Inceptiion-v4、ResNet-101、ResNet-50、VGG16、AlexNet等典型识别网络提供了基准识别率。河南大学王慧慧[15]根据不同甲骨字的样本分布构造了一组更为精细的拓片文字数据集,并利用非稀疏表示、深度学习和稀疏表示三类方法进行了识别实验。甲骨磨损、拓印噪声和甲骨纹理干扰对识别结果影响很大,从公开报道结果来看,整体识别率都不理想,最高的仅为70%左右。

三、甲骨文字检测

1.基于传统方法的甲骨文字检测

基于传统方法进行甲骨文字检测的方法较少。安阳师范学院史小松老师进行了一定的尝试[16]。她使用基于连通分量的方法进行了甲骨字检测的探索,从一定程度上解决了纯手工提取甲骨字的误差和效率问题,并可作为进一步分析定位并识别甲骨字的基础。但该方法在复杂背景或噪声比较严重的拓片图像中,效果不太理想,存在拓片上部分残字或笔画定位不准确的现象。

2.基于深度学习的甲骨文字检测

随着深度学习技术的发展,尤其是自然场景图像中目标检测技术的快速发展,促使研究人员逐渐开始利用深度学习技术进行甲骨文字的检测尝试。目前,基于深度学习的甲骨文字检测也都是监督方式的。它利用大量已标注甲骨文字位置信息的训练数据,采用一阶段或者两阶段的方式训练深度神经网络,进而实现拓片图像中甲骨文字的自动标注。

华南理工大学黄双萍教授团队[17]构造了一个甲骨文字检测数据集OBCD,标注了5838幅甲骨拓片图像。他们结合使用基于区域的全卷积神经网络R-FCN(Region based Fully Convolutional Network)[18]和特征金字塔模型FPN(Feature Pyramid Networks)[19]进行甲骨字检测研究。日本立命馆大学Lin Meng[20]构造了一个包含330幅图像的甲骨文字检测数据集,改进了SSD[21]以提高较小字体甲骨字的检测准确率。我们在甲骨文字检测方面做了更为充分的基础性研究工作[22]。首先,构造了一个包含9500张图像的甲骨文字检测数据集。基于该数据集,分析了近几年有代表性的通用目标检测框架(包括:Faster R-CNN[23]、 SSD[21]、RefineDet[24]、RFBnet[25]和YOLOv3[26])的甲骨文字检测性能,并对性能最优的YOLOv3进行了改进。上述研究在字符分布均匀、大小相似、干扰较少的甲骨片上均表现良好。然而如图2所示,字符粘连、背景干扰、残缺字和重叠检测等问题使得一些甲骨字的准确检测十分困难。

图2 甲骨字检测面临的主要困难

四、甲骨文字检测和识别研究存在的问题

1.检测和识别方法存在的问题

与自然场景图像相比,甲骨图像数据有其自身的特点,具体来说,:

① 甲骨字的背景噪声严重。甲骨片在地下埋藏 3000 多年,经过长期的腐蚀变化,上面的文字变得模糊不清,获取的甲骨图像往往存在非常严重的背景噪声,拓印出来的拓片也常常出现严重的干扰拓痕。

② 残缺甲骨字较多。甲骨片在出土时很容易碎裂,甲骨字附近经常会出现断裂,因此产生大量的甲骨残字,这些残字与甲骨天然纹理非常相似,其检测与识别困难极大。

③ 甲骨字具有极强的不规则性。同一甲骨片上的甲骨字大小不一、方向随意、分布分散,极大增加了检测与识别的难度。

④ 甲骨文异体字出现频繁,但具有部分相似性。甲骨字出现在殷商时期,当时并没有统一的文字规范,再加上商周时期(约公元前 1600—公元前 256 年)跨度约 1300 多年,文字的演化比较明显,导致甲骨文中出现大量的异体字。很多异体字之间存在部分的相似性,这为异体字的识别提供了新的线索。

⑤ 甲骨字出现频率严重不平衡。在文献[28]研究的56743个甲骨字样本中,包含1425个单字。其中,常用字 366 个,次常用字 500 个,罕用字 559 个。甲骨字的字频结构极不平衡,为深度学习技术的使用带来困难。

然而,现有的检测和识别方法仅仅简单地将自然场景领域中的深度神经网络模型迁移到甲骨文字的检测和识别应用中来,并没有考虑甲骨图像数据自身的特点。这是现有方法不能取得令人满意的结果的主要原因。

2.训练数据集存在的问题

训练数据集对监督方式的甲骨文字检测和识别至关重要。然而因为主观和客观的原因,现有的训练数据集仍存在一些较为严重的问题。具体来说:

① 训练数据集规模不大,难以保证深度神经网络的学习性能。检测数据集主要来源于《甲骨文合集》[27]的部分扫描数据,最大的数据集仅含9500多幅图像,数据多样性得不到保证。识别数据集基本局限于样本较多的几百个甲骨单字,覆盖不了已释的1400个左右甲骨单字,更覆盖不了所有的4500个左右甲骨单字。

② 训练数据集标注质量不高,严重影响深度神经网络的学习质量。甲骨学研究人员极少,现有训练数据集基本依靠非甲骨学领域人员依据工具书进行标注,因甲骨学知识欠缺使得残缺甲骨字、高噪干扰甲骨字、相近字形等难以标注,数据集质量不高。

③ 训练数据标注标准不统一,严重影响深度学习的甲骨学实际应用。受标注人员个人素质影响,训练数据标注的标准可能有所差别。没有释读的甲骨字在进行类别划分时没有统一标准,甚至存在巨大争议。考虑到甲骨学研究的实际水平和甲骨学专家稀缺的客观现实,短期内难以获取大规模、高质量的训练数据集。

表1 用以深度学习的标注数据统计表

四、总结、讨论与展望

本文简要回顾了甲骨文字检测与识别的研究背景,分别介绍了传统甲骨文字检测与识别的主要成果,指出了存在的问题与缺陷,并介绍了基于深度神经网络的甲骨文字检测与识别研究现状,并分析了当前研究所面临的主要困难。

甲骨文字检测与识别是近年来才被学者关注的一个研究课题。从最初利用传统方法进行检测与识别,到当前深度学习技术在甲骨文字检测与识别上的应用尝试,在检测和识别的性能上均有明显提高。然而,仍有许多问题亟待解决:

(1)噪声干扰问题。甲骨拓片图像的噪声与常见的高斯噪声、椒盐噪声等不同,难以用常规技术进行建模。从形态上看,这些噪声与甲骨字刻痕存在一定程度的相似性,对甲骨文字的检测与识别极为不利,严重影响了检测和识别的精度。

(2)残缺甲骨字的检测与识别。甲骨字经常因甲骨片断裂而导致残缺,致使其字形特征与甲骨天然纹理极其相似,再加之残缺甲骨字训练样本量极少,其检测与识别困难非常大。

(3)超大类别的甲骨文字识别问题。已知的甲骨单字有4500多个,对甲骨单字图像进行识别必须产生4500个左右的类别。而现有甲骨文字识别方法难以对甲骨字进行全类别识别,主要原因是部分甲骨字样本极少,有的甚至只有几个样本。这极大增加了识别难度。

(4)甲骨文异体字的识别问题。甲骨文中严格意义上的异体字有1032 组,其字形总数为3085 个,占到了甲骨文字形总数的49.5%[28]。甲骨文异体字出现非常频繁,同一甲骨字的不同异体字之间字形相差极大,对应的异体字识别非常困难。

(5)检测和识别数据集的严重依赖问题。训练数据的束缚使得监督方式的深度学习难以发挥自身优势而陷入困境。事实上,通过数字化设备可以很容易获取大规模甲骨拓片图像数据。如果让深度神经网络学习数据自身的特性而不是学习难以获取的监督信息,则更有利于发挥深度神经网络强大的学习能力。

(6)甲骨字构件的检测与识别问题。甲骨字具有明显的构件信息。甲骨字中二级构件有291 个、三级构件有61 个,频率不为1 的基础构件为497 个,这些构件通过不同方式构成甲骨字[28]。构件的识别能够为甲骨字的识别提供有用信息。然而,甲骨字构件之间空间关系复杂,包围关系、嵌套关系等对甲骨字构件的自动分析技术提出挑战。

总之,甲骨文字检测与识别在近几年来取得了一定的研究成果,但仍然有大量问题值得深入研究。本文通过对有关研究进展的回顾、分析和讨论,以期为有兴趣从事该项研究的研究人员提供全面的信息和研究思路,为早日甲骨文字检测与识别研究的实用化贡献力量。

猜你喜欢

异体字单字拓片
东巴文字典异体字的整理与编纂规范
异体字字形类似偏旁的互用类型综合字图构建
垣曲北白鹅墓地出土青铜夺簋铭文
《汉字的特点与对外汉字教学》读后记
论计算机字库单字的著作权保护
字体侵权的认定及民事责任的承担
拓片
你读过历史,有没有见过历史的影子
清代《崇儒尊释双龙告示碑》考释
简化字规范问题例说