文字识别在虚拟导游系统中的应用研究与实现
李梵若,韩 莹,代广斌,冯天歌,胡 琳
(防灾科技学院,河北 燕郊 065201)
摘要: 随着虚拟现实和增强现实技术的不断发展,其在旅游业中的应用也愈发广泛,在虚拟导游应用不断普及的情况下,使用文字识别技术代替传统的GPS定位和无线射频技术来实现用户的定位,具有抗干扰性强、定位准确、定位效率高以及使用范围广泛等优点。本文以校园虚拟导游系统为例,以Unity 3D为开发平台,C#为开发语言,应用基于外观信息的目标切割的算法,通过预制文字识别库以及设计文字识别过滤器,实现自然场景的文字识别,通过识别出来的文字判断当前场所的名称和位置,快速、准确地加载对应场所的场所介绍等虚拟信息。通过实验验证,本系统所使用的自然场景中文字识别技术不仅具有识别速度较快和准确率较高的特点,并且可为虚拟导游系统提供一种用户定位方法。
关键词: 文字识别; 虚拟导游; OCR; 计算机视觉; Unity 3D
0 引 言
随着虚拟现实技术发展,光学字符识别(OCR)技术浪潮的涌现,以及智能手机等移动设备的不断发展,为文字识别和虚拟旅游的移动化、便携化提供了有利条件。浙江大学开发的数字故宫、数字敦煌[1],以及国外的虚拟东京、虚拟罗马广场等[2]都标志着虚拟现实技术在旅游业虚拟导游中的应用逐渐深入,也是虚拟现实技术和现实生活结合较为紧密的方向。如何对访客所在位置进行精准的判定,是系统正确地加载对应场景介绍和进行下一步虚拟技术应用的前提和关键所在。本文以校园虚拟导游系统为例,实现一种虚拟导游系统的文字识别技术,不仅实现了用户的定位操作,而且具有识别速度快和准确率高的优点。
1 文字识别研究现状
文字识别作为模式识别的一个重要领域[3]在日常生活中有着广泛且深入的应用。光学字符识别是当今移动设备和各类光学采集设备不断发展的情况下应用率较高的模式识别技术,其在各行各业深入信息化的过程中有着广阔的空间。所谓光学字符识别,是指电子设备检查通过摄像头或其他光学图像获取设备获取到的包含字符的图像,通过检测暗、亮、颜色、对比度、像素类别等指标模式确定其形状,然后使用字符识别方法将其形状通过与模板进行匹配的方式[4]翻译成计算机文字的过程。OCR的主要内容包含图像处理和文字识别2大部分[5]。
式中:Φm为永磁磁通,R为气隙磁阻。式(4)表明齿槽转矩与永磁磁通的平方成正比关系。可见,如果适当降低磁通密度,可以降低齿槽转矩,但同时也降低了电机的性能。因此,减小dR/dθ是抑制齿槽转矩的可行办法。由此得到的可降低齿槽转矩的主要措施有:分数槽绕组、优化磁极极弧和槽口宽、斜槽和斜极、磁极分段错位、磁极偏移等。该电机不能用分数槽,考虑到电机的工艺性,磁钢易碎不易加工等情况,所以将消除齿槽转矩的方法定为电枢斜槽。
虚拟导游技术是指充分应用3D场景技术、交互菜单、全景照片、模型交互和Flash动画等技术,以直观的、可交互的、富有趣味性的展现方式将一定时间、空间中不能充分展示的某一场所内部的设施、主体功能等基本信息呈现在游客面前,让游客在能够了解场所基本信息的基础上获得身临其境的感受[6]。
目前几乎没有将文字识别应用在虚拟导游系统中的范例,大多数虚拟导游系统需要使用专用导游设备与景点之间通过无线射频交互或GPS定位的方式来定位用户位置。但无论是无线射频还是GPS技术,其受到如无线电干扰、网络环境较差等外部因素的影响都较大,所以在复杂场景中的稳定性较差。本文以校园虚拟导游系统设计开发为例,以Unity 3D为开发平台,使用高通提供的Vuforia[7]模块作为文字识别的功能模块,并应用基于外观信息的目标切割的算法对文字边缘特征点进行识别,通过对图像的降噪和切割获取文字外形,将识别的文字与词库中的预设体比对,根据比对信息实现通过文字识别这一抗干扰性较强的方式获取用户定位的目的[8],为加载对应位置的虚拟导游信息提供位置信息。
2 基于外观信息的目标切割算法
基于外观信息的目标切割,是利用目标内部和外部关于亮度、颜色、纹理、像素比对等属性分布的统计特性指定目标对象,切割不同属性目标的边缘。这种目标切割技术中有执行分割任务之前一次性建立模型和从分割结果中自适应地学习外观模型从而产生对应的外观模型2种方法[9],它们都使用一元的维度建立模型。因为虚拟导游系统中各种场景的复杂性,本文采用第2种方法并结合高通提供的Vuforia来建立外观模型。
首先对所采集到的图像进行目标图像分割的最基本正则化处理,然后使用通过主动轮廓模型、水平集优化或直接通过图进行建模的算法求解能量函数的最小值。其函数模型可描述为式(1)所示:
2)相比于还需要借助眼镜来实现的VR技术的AR,已经可以摆脱智能眼镜的捆绑,因此也获得了更大的发展空间,得到了很多科技企业和景区的青睐。
E =E unary(x )+λE binary(x )
(1)
其中x ∈R , 0x 1,并且对于给定的背景集合像素其赋值为x =0,识别目标的集合像素赋值为x =1,用来描述外观边缘的像素点。对E (x )为MRF能量[10]的表达,具体表达式如式(2):
E (x )=∑g p (x p )+∑h pq (x p ,x q )
(2)
用来反映对每个位置赋予的类别属性的总体形象即∑g p (x p ),对于位置之间数据平滑程度的反应为∑h pq (x p ,x q )。式(1)中的λ ,作为目标和背景的权重调节,可理解为控制像素点是属于背景还是目标的置信度指标。能量函数的值越小越可以更为清晰地勾勒出不同属性之间的边界。对于像素点边缘过滤区较长的识别对象可使用未知背景像素和目标像素的方法[11],通过遍历的方法学习边缘的位置。
未知背景像素和目标像素的情况下,通过对P (g Wi |x i )的判断来描述目标模型,其中W i 表示以x i 为中心的一小段窗口内的所有像素。P (g Wi |x i )为该算法判定像素点属于背景像素或目标像素的阈值。如果阈值过高,在光线较昏暗或目标、背景像素的对比度较小,即目标像素点和背景像素点之间能量差异较小的情况下可能会导致将目标像素误判为背景像素;若阈值过低,则会使得该算法达不到有效区分目标和背景边缘的目的。通常设定0.5为P (g Wi |x i )的阈值[9],其算法逻辑描述如下所示:
for (i=0;i<getLabel.length;i++)
治疗前两组患者NIHSS、3MS、BI评分比较无显著性差异;治疗后两组患者NIHSS评分显著降低,3MS、BI评分均显著升高,同组治疗前后比较差异有统计学意义(P<0.05);治疗后观察组患者NIHSS、3MS、BI评分改善情况均显著优于对照组,两组比较存在显著性差异(P<0.05),见表2。
其中Δx 为x i 附近的足够小窗口,Δx 趋向的值越小则其算法对于目标边缘的勾勒范围就越精确。此时对于未知目标和背景像素点的情况下,可将式(1)中的目标函数优化为GrabCut[12]算法模型,如式(3)所示:
总有人说卫士才是路虎品牌最为硬派的代表,但路虎发现的可贵之处却在于它是路虎品牌取得长足发展的成功支柱。自1989年至今,经过四代发展的发现作为路虎品牌旗下毋庸置疑的中流砥柱已经走过了将近30年的光阴。尽管它仍旧不及揽胜豪华,但它却无法遮掩其内心的个性。从相对实用、注重全地形表现的朴实内涵到形成独立车系并开始衍生更多车型,路虎发现所创造的是一个传奇,而关于这个家族的最新篇章,自然要由2017年诞生的第五代路虎发现开始演绎。
W i 为目标像素点
为了文字识别在虚拟导游中能更加广泛地应用,需要对识别的文字以及预设体中的字符进行统一编码处理,再通过字符编码的比较,逐个判定字符并最后重新排列得出识别的单词或文字。UTF-8作为Unicode公司针对各国文字、符号进行统一编码的编码方式[17],其原理为最高位为1,次高位为0,剩余6位在进行字符的编码时使用二进制的编码方式,这样的二进制编码方式使得计算机对该种编码的读取效率较高,并且对中文、英文和数字能够较好地兼容并支持,依次达到应用范围进一步扩大的目标。该系统开发使用C#为脚本开发语言,对字符转换为UTF-8编码并与预设词库进行比较的部分代码[18]如下所示:
W i 为背景像素点
forW i in all(x i )
这样,不能进行矩阵乘法运算的两个矩阵A和B,在矩阵分块意义下,能够进行矩阵A和B的广义交叉乘法。文献[6]中已经证明:这种运算满足结合律和分配率的条件是运算符号π(x,y)满足结合律和分配率。容易验证运算符号π(x,y)是满足结合律和分配率的,于是上述矩阵A和B的广义交叉乘法也是满足乘法结合律和加法分配率的,即相应的运算是可以采用的运算。
E (θ ,x )=H (θ f ,g ,x )+H (θ B ,g ,(1-x ))+λE binary(x )
(3)
其中g 为属于目标像素的概率,x 为获取到的像素,θ f 和θ B 分别为目标和背景给定的参数。该算法使用控制变量法,每次固定2个变量,进行循环比较待定像素的概率,综合多次遍历的统计结果,在得到的稳定结果中取最小值与设定的目标阈值比较,以此判定该像素点的类别标号。
String target_decodedString = utf8.GetString(target_encodedBytes);
3 文字识别的设计与实现
通过上述基于外观信息的目标切割算法对识别的文字进行外形的切割,实现文字识别的预处理,然后将切割后的形状转换字符文本,经过设制识别词库,使用字符编码识别算法[13],实现了对自然场景中的文字识别,从而实现用户定位操作。以下将从设制文字识别词库、字符编码识别算法和编码识别算法改进3个方面做具体阐述。
①引江实现后天津农业需水及供水发展机制研究。②天津市城镇化后排水模数变化研究。③天津市农田排水末级渠道现状及综合整治调查研究。④天津市农业用水效率及节水潜力研究。⑤天津市设施农业条件下的不同作物灌溉制度研究。⑥基于物联网的土壤墒情预报研究。⑦基于遥感的汛期降雨农田积水灾害情况采集研究。⑧制定天津市设施农业微灌工程设计与运行管理规程。⑨天津市小型农田水利工程运行维护费用定额研究。
3.1 设制文字识别词库
本文使用Unity为开发平台,使用高通提供的Vuforia模块,设制文字识别词库作为匹配识别字符的字库。在系统设计中使用Vuforia中Text Recognition[14]自带的100000个经常使用的英语单词作为默认识别词库,由于校园内各个实验室名称各不相同,并且不全部出现在Text Recognition,所以为了能够囊括所有的识别对象,在开发过程中将各实验室的英文名称作为自定义预设体,添加到该模块的用于设置自定义词库的Word List中[15],如图1所示。即构成了由默认词库和自定义词库组成的识别词库,作为文字识别的先验知识[16],从而达到对识别目标实现个性化定制和全覆盖的目的。
图1 Word List预设体图
3.2 字符编码识别算法
else
if (P (x i ±Δx )<P (W i ))
string target="";
(3)区内地表上色彩明显的蚀变带,如接触带中的硅化、阳起石化、绿帘石化、矽卡岩化、孔雀石化、碳酸盐化等,以及岩体中的钾化、高岭土化、云英岩化等, 都具有明显的示矿作用。
forx i in all(x )
{
for (j=0;j<dictionary.length;j++)
{
UTF8Encoding utf8 = new UTF8Encoding();
Byte[] target_encodedBytes = utf8.GetBytes(getLabel[i]);
①课前:以班级为单位建立师生微信群,示教老师于课前一天以PPT形式通过微信推送“典型病例”至群聊,由学生提前自行对照课本,结合大课所授理论知识对病例进行诊断并准备提出的问题。
M公司于2003年成立,是集研发、生产、经营高吸收性树脂为一体的国家级高新技术企业。公司按照研制一代、开发一代、生产一代、储备一代的构思来创新,已拥有11项实用新型专利,三项国家发明专利。公司从始至今,改变旧有的企业经营模式,采取技术专利化,专利标准化,标准市场化道路,为企业持续发展打下了坚实的基础。现有员工400余人,研发人员、技术人员、管理人员所占比例之和为41%。作为发展中的民营企业,该比例有一定的现实性,今后在树立产业、技术、规模和管理优势中,应该吸引更多的知识型员工。
if (target_decodedString==dictionary[j])
{
造成学生作业质量差的因素是多种多样的,要想使学生改变现状,我们可以采取客观评价与鼓励上进相结合的策略。当学生通过努力,在作业的某方面有所进步时,就可以适当抬高评价等级,对他们进行鼓励,使其体会到战胜困难取得成功的快乐。这种策略,对中下的学生非常实用。
target+=dictionary[j];
}
}
}
2.细菌性腹泻。仔猪大肠杆菌病是由致病性大肠杆菌引起的一类传染病,引起仔猪腹泻的主要有仔猪黄痢(早发性大肠杆菌病)和仔猪白痢(迟发性大肠杆菌病)。
return target;
上述代码中字符串“target”为存放最后识别目标的变量,“dictionary”为默认词库和自定义词库构建的字符“字典”。以C#中自带的UTF8Encoding类新建对象,该类主要用于对不同编码的字符、字节等进行UTF-8编码的转换,使用其构造方法对获取到的待比较字符进行编码转换后,由字节形式再编码为字符串,通过遍历“dictionary”中的字符,将匹配的字符进行字符串叠加,遍历完成后返回比对完成的“target”词汇。
3.3 字符编码算法改进
由于基础的字符编码应用在单个字符识别中较为常见,为了符合实际需求,使系统在多个字符识别中有较好的表现,在开发过程中通过为识别目标添加识别过滤器[19]的方式,将文字间的空格作为分割符,先将多个文字切割成单个单词或字,再使用基于外观信息的目标切割算法对单个字符进行识别。切割示例如图2所示。
UVRAG基因缺失促进饥饿诱导的肝脏脂肪变性························胡晓雯 张沙沙 安 琳 AMBER Naz 朱洪新 (3,467)
图2 过滤器切割示例图
识别采用“白名单”、“黑名单”2种过滤模式,“白名单”过滤器在识别过程中将会对“白名单”中存在的字符片段进行挑选,并摒弃其余片段,只对白名单中的字符进行重点识别。“白名单”较为适用于识别目标基数较小的系统应用。面对基数较大的识别目标时可采用“黑名单”过滤器,即除了“黑名单”中存在的字符,对其他字符都予以识别。过滤器的使用,避免了对特征文字以外文字进行冗余识别浪费系统资源的情况,不但能提高识别准确率,而且提升了识别效率,缩短了识别时间。
基于校园虚拟导游系统中识别目标基数较小的显示情况,本系统采用“白名单”的过滤模式,例如将各个实验室识别目标上的特征文字作为“白名单”,以纯文本的方式加载进入识别模块,在默认词库和自定义词库中对“白名单”中添加的文字预设体实现双重的强调识别。开发过程中应用Vuforia中Text Recognition模块下的Text Reco Behaviour[20]脚本,选择Filter Mode中的WHITE_LIST过滤模式,在Filter List File中添加对应的“白名单”的文件列表,Additional Filter Words中加载“白名单”的具体内容如图3所示。
精准扶贫与乡村振兴在逻辑上具有自洽性,在机理上具有耦合性,二者虽然具有概念和内容上的差异性,但在主题和价值上具有属同性,是形式上的差异性和本质上的同质性的对立统一体。因此,精准扶贫在乡村振兴中具有不可替代的地位和作用,是乡村振兴的“助产婆”。通过产业扶贫、生态扶贫和教育扶贫,有助于乡村振兴的最终实现,达到农业全面升级、农村全面进步、农民全面发展的目标。
图3 添加识别白名单图
4 识别测试及分析
由于虚拟导游系统的应用环境普遍较为复杂,识别目标大多为多字符目标,故分别使用3.2节和3.3节中所述算法进行实际情况下的识别测试,以测试其识别性能。
4.1 识别测试
实验选取30个实验室的门牌为识别目标,其中包含单个字符、多个字符等识别目标。识别目标种类有代表性,截取其中部分识别目标词汇如表1所示。
表1 部分识别目标词汇
图4 识别成功加载对应信息图
选用三星S8手机为识别测试的试验设备,测试系统环境为Android 7.0,设备处理器使用骁龙835处理器,4 GB运行内存,800万像素摄像头,在普通日光灯照射条件下,测试识别算法对单个字符、多个字符为识别目标时的识别情况。该测试以能够加载如图4所示的对应场景信息为识别成功的标识。
在上述实验条件下,对30个识别目标进行测试并进行统计后,得到识别准确率如表2所示。
表2 不同识别目标/算法识别准确率
4.2 测试结果分析
如表2所示,使用未改进的字符编码算法,识别单个字符的识别目标时,准确率尚可;但在识别多个字符时由于摄像头对识别目标的Region of Interest[21]难以精准地控制,往往会出现识别特征文字以外的字或在识别多个词汇组成的句子时难以精准区分词汇之间间隔的情况,导致识别率仅为35%,难以满足利用该方法在虚拟导游中进行定位的需求。
改进后的字符编码算法,对比改进前,首先对OCR区域进行切割,并通过文字边缘切割后,只识别过滤器中存在的字符,使得识别单个字符、多个字符的准确率分别提高至82%和85%。
经过以上对比实验,对于字符编码算法的改进即文字过滤器的添加,使得系统识别过程更有“目标性”,能够更好地适应虚拟导游应用场景中的多字符识别目标,满足在虚拟导游中进行用户定位的要求,从而为进一步加载对应场景的虚拟导游内容提供准确的位置信息。
5 结束语
景区、场所等虚拟导游具体应用的场所中,场所构成普遍较为复杂、多样,所以在使用传统GPS或无线射频等容易受到外界因素较强干扰,并大多需要专业设备的技术进行定位时,使得该种虚拟导游对其应用外部环境的要求和使用成本较高。而上述场所色彩搭配较为多样、对比度较为鲜明[22]和路牌、指向等较为明晰的环境特点为在虚拟导游系统中使用文字识别技术提供了有利条件。
本文以校园虚拟导游系统为例,使用OCR技术为基本技术,以“基于外观信息的目标切割算法”获取目标文字,并通过调用高通提供的Vuforia对文字采用UTF-8编码。为提高文字识别准确率,对“字符编码”算法进行改进,添加文字过滤器,实现了较为准确、快速的自然场景中的文字识别[23],从而达到访客定位并加载虚拟场景描述信息。相对于传统定位方式受外界环境干扰较小,自定义词库的使用使得应用场所更加具体,以场景位置代替用户位置的模式,在复杂场景中定位准确性、稳定性表现更优秀,特征文字过滤器的应用提高了识别速度和准确率,保证了定位的时效性,为虚拟旅游系统提供了一种场景定位方法。本研究的不足之处在于目前只实现了对英文字符的识别,下一步工作将继续研究识别目标和词库编码统一,从而实现对自然场景中的中文字符串的文字识别研究。
参考文献:
[1] 刘洋,鲁东明,刁常宇,等. 敦煌285窟多媒体集成虚拟展示[J]. 计算机辅助设计与图形学学报, 2004,16(11):1528-1534.
[2] 罗月童,孙静,陈韬. 虚拟导游的行为模型研究[J]. 工程图学学报, 2011(5):35-39.
[3] 关保林. 模式识别技术在文字识别中的应用研究[D]. 乌鲁木齐:新疆大学, 2014.
[4] 田大增. 视觉文档图像识别预处理[D]. 保定:河北大学, 2007.
[5] 廖晓彬. 基于深度学习的浏览器OCR插件设计与实现[J]. 信息与电脑(理论版), 2018(10):108-109.
[6] 王语玺. 基于“虚拟导游”探讨数字媒体技术对旅游经济的发展与促进作用[J]. 数字通信世界, 2019(1):219.
[7] 陆泽萍,谢伙生,陈鑫凯,等. 基于Unity3D的实验室移动AR自动导览系统设计与实现[J]. 福建电脑, 2018,34(12):113-116.
[8] 秦伟. 图像文字定位与提取技术研究[D]. 哈尔滨:哈尔滨工程大学, 2015.
[9] 奥利维尔·勒卓瑞,利奥·格雷迪. 图像处理和分析的图模型:理论与应用[M]. 孙强,张成毅译. 北京:国防工业出版社, 2016:107-108.
[10] 现代工程数学手册编委会. 现代工程数学手册第Ⅳ卷 第七十五篇 可靠性数学[M]. 武汉:华中工学院出版社, 1987.
[11] 高明慧. 基于MRF模型的遥感图像分割算法研究[D]. 哈尔滨:哈尔滨工程大学, 2016.
[12] ROTHER C, KOLMOGOROV V, BLAKE A. “GrabCut”: Interactive foreground extraction using interated graph cuts[J]. ACM Transactions on Graphics, 2004,23(3):309-314.
[13] 王文韫,李学军,陈安华. 一种字符编码标志识别定位方法[J/OL]. 测绘科学, (2019-04-01)[2019-04-02]. http://kns.cnki.net/kcms/detail/11.4415.P.20190329.1144.002.html.
[14] Wikidata. Vuforia Augmented Reality SDK[DB/OL]. [2019-03-20]. https://www.wikidata.org/wiki/Q7943341.
[15] 鲁文娟,金一强. 基于智能手机的Vuforia+Unity3D增强现实技术方案及其教育应用[J]. 现代教育技术, 2017,27(5):19-25.
[16] 梅亚敏. 融合先验知识的场景文本识别应用研究[D]. 成都:电子科技大学, 2016.
[17] 鹿文鹏,薛若娟. Unicode与UTF-8编码转换方法研究[J]. 计算机时代, 2005(9):44-45.
[18] 明日科技. Visual C#开发技术大全[M]. 北京:人民邮电出版社, 2007.
[19] 汤亚萍. 自然场景下文本定位技术的研究[D]. 郑州:华北水利水电大学, 2018.
[20] 张克发,赵兴,谢有龙. AR与VR开发实战[M]. 北京:机械工业出版社, 2016.
[21] 邓书斌. ENVI遥感图像处理方法[M]. 北京:科学出版社, 2010.
[22] 付磊. 复杂背景下彩色图像中的文字识别[D]. 长春:吉林大学, 2011.
[23] 卢未来. 面向图像的场景文字识别技术研究[D]. 锦州:辽宁工业大学, 2018.
Application Research and Realization of Character Recognition in Virtual Tour Guide System
LI Fan-ruo, HAN Ying, DAI Guang-bin, FENG Tian-ge, HU Lin
(Institute of Disaster Prevention, Yanjiao 065201, China)
Abstract : With the continuous development of virtual reality and augmented reality technology, its application in the tourism industry is becoming more and more wide. Under the condition of the progressive expansion of the virtual tour guide application, the use of character recognition technology instead of the traditional GPS positioning and wireless radio frequency technology to realize the user positioning has the advantages of strong anti-interference, accurate positioning, high positioning efficiency and wide range of use. Taking the virtual tour guide system on campus as an example, the Unity 3D as the development platform and C# as the development language, this paper applies the algorithm of object cutting based on appearance information to realize the character recognition of natural scene through the prefabricated character recognition library and the design of character recognition filter, identifies the name and position of the current place through the recognized characters, and loads the introduction and other virtual information of corresponding place quickly and accurately. Through the experimental verification, the text recognition technology in the natural scene used in this system not only has the characteristics of fast recognition speed and high accuracy, but also can provide a user positioning method for the virtual tour guide system.
Key words : word recognition; virtual tour guide; optical character recognition; computer vision; Unity 3D
文章编号: 1006-2475(2019)12-0083-05
收稿日期: 2019-04-02;修回日期: 2019-05-08
基金项目: 河北省科技计划项目(16210120); 中央高校基本科研业务费专项资金资助项目(ZY20180120)
作者简介: 李梵若(1998-),男,安徽合肥人,本科生,研究方向:数据挖掘,机器学习,虚拟现实技术,E-mail: 951352961@qq.com; 韩莹(1979-),女,副教授,硕士,研究方向:虚拟现实技术,数据备份与存储,E-mail: 86411058@qq.com。
中图分类号: TP391
文献标识码: A
doi: 10.3969/j.issn.1006-2475.2019.12.016