基于云计算平台的手写识别系统

上传人:油条 文档编号:1724332 上传时间:2017-07-11 格式:PDF 页数:6 大小:427.82KB
返回 下载 相关 举报
基于云计算平台的手写识别系统_第1页
第1页 / 共6页
基于云计算平台的手写识别系统_第2页
第2页 / 共6页
基于云计算平台的手写识别系统_第3页
第3页 / 共6页
基于云计算平台的手写识别系统_第4页
第4页 / 共6页
基于云计算平台的手写识别系统_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《基于云计算平台的手写识别系统》由会员分享,可在线阅读,更多相关《基于云计算平台的手写识别系统(6页珍藏版)》请在金锄头文库上搜索。

1、云 计算专栏本文利用 Enomaly 虚拟云架构技术设计了一个云手写识别系统 , 除了提供高准确率的识别功能外 ,同时使得倾斜书写识别 、用户自适应识别等需要高计算及存储资源的功能实现成为可能 。 实验结果表明 ,传统 C/S 模式的传统服务器在用户并发数为 300 时处理能力已经达到极限 ,而采用基于云计算架构的手写识别系统能轻松处理 1 000 个并发用户的服务请求 , 在处理 300 个并发用户时 ,接入率为 100%,远高于传统服务器模式的接入率 (82.7%),平均识别处理时间仅为 16 ms,大大低于传统服务器模式的处理时间 (340 ms)。关键词 云计算 ;手写识别 ;手写输入

2、法 ;Android基于云计算平台的手写识别系统何 聪 ,金连文 ,周贵斌(华南理工大学电子与信息学院 广州 510640)摘 要1 引言随着科技的飞速发展 , 智能手机 、PDA 和平板电脑等移动终端的应用已经越来越广泛 。 随着触摸屏的广泛使用 ,加之手写识别技术的高速发展 ,移动终端的输入形式不再局限于键盘形式 ,手写输入也逐渐流行起来 。近年来 ,许多学者在手写文字识别领域付出了重大的努力并获得了很多优秀成果15。 当前移动终端受硬件性能限制 ,一些高准确率的手写识别算法对计算量和存储量的要求过高5,在实际应用中遇到了瓶颈 。 通常 ,为了能够在移动终端上应用手写识别技术 , 无论是使

3、用较为简单的识别分类器 ,还是对复杂程度较高的分类器进行压缩以降低对硬件要求 ,都意味着要以牺牲准确率为代价 。最近 ,云计算的提出 ,使得超级计算能力通过互联网自由流通成为了可能 ,并为各种应用开创了一种崭新的应用模式 ,逐渐发展成为一种网络应用趋势 。 超级计算机应用因需要非常昂贵的硬件投入而面临极高的推广门槛 ,云计算则通过互联网将普通的个人计算机和标准服务器结合成计算机机群 , 宣告了低成本提供超级计算服务的可能 。用户在任何时间 、任何地点 ,用任何可以连接至互联网的终端设备访问 “云 ”即可获得所需的服务 。借助于云计算技术 ,本文提出了一种移动终端进行手写识别的全新应用模式 。

4、通过云平台 ,建立一个基于网络的云手写识别系统 ,并通过无线网络为移动终端提供高准确率识别 、 倾斜书写识别和用户自适应等手写识别服务 。基于网络的服务 ,其主要的优点有 :识别准确率不再受到硬件性能的约束而可以达到比较高的水平 ;倾斜书写识别和用户自适应等个性化功能的推广应用变得可行 ;免去了用户设备不停升级的代价和麻烦 。 区别于普通 C/S 模式的系统 ,我们之所以利用云计算技术 ,一方面是通过云计算技术能够将已有的个人计算机和普通服务器结合起来 ,能够以较低的成本获得等同于超级计算机的计算能力 ,而不需要一次性进行昂贵的硬件投入 ; 另一方面是借助虚拟化 、负载均衡等技术 ,云服务器能

5、够根据用户的接入需求云计算专栏84电 信科学 2010 年第 9 期动态地分配计算资源 ,“云 ”的规模也可以动态伸缩以满足用户规模增长的需要 。 本手写识别系统的云服务器基于 Enomaly6虚拟云架构 (community edition),客户端基于Google Android 平台7。 客户端在手写输入完成后 ,将手写笔迹通过无线网络发送到云服务器 ,所有的识别处理工作都在云服务器上完成 , 识别结果再通过网络返回给客户端 。 通过不断提高云服务器的处理能力 ,进而减少了移动终端的处理负担 ,最终使用户终端简化成为一个单纯的输入输出设备 ,并能按需享受 “云 ”的超级计算处理能力 。2

6、 系统框架本文提出的云手写识别系统的框架如图 1 所示 。 客户端安装在基于 Google Android 平台的移动终端上 (同样客户端也可扩展到 Windows Mobile、MAC OS x 等其他平台上 ),主要分为候选字视图 (用来显示识别结果 )、手写区和功能键盘三部分 。 用户在手写区书写后 , 书写笔迹通过2.5G、3G、Wi-Fi 等无线网络传输到云计算服务器端进行识别处理 。服务器端是基于 Enomaly6虚拟云架构的 ,通过云计算技术将多台普通的个人计算机和标准服务器 (统称计算节点 )以及存储设备利用网络结合起来组成超级计算机集群 。每个客户端的接入及识别操作透过网络分

7、配到不同的计算节点进行处理 ,结果通过网络回传给客户端 。 云服务器提供了强劲的识别处理能力 ,进而减少了客户端的处理负担 ,使得用户终端简化为一个单纯的输入输出设备 ,却依然能获得较高准确率的识别和其他个性化的识别服务 。 借助3G、Wi-Fi 等高速无线网络 , 移动终端和云服务器之间数据传输所需的时间非常小 ,用户难以感觉到明显的延时 。3 系统设计本系统主要涉及 Google Android 平台的客户端 、 云计算服务器和手写文字识别三个方面 。3.1 基于 Enomaly 平台的云服务器云计算是以虚拟化技术为基础 ,以网络为载体提供基础架构 、平台 、软件等服务为形式 ,整合大规模

8、可扩展的计算 、存储 、数据 、应用等分布式计算资源进行协同工作的超级计算模式8。 云计算是并行计算 (parallel computing)、分布式 计 算 (distributed computing)和 网 格 计 算 (grid computing)的发展 ,或者说是这些计算机科学概念的商业实现 。 云计算是虚拟化 (virtualization) 、 效用计算 (utility computing)、IaaS(基础设施即服务 )、PaaS(平台即服务 )、SaaS(软件即服务 )等概念混合演进并跃升的结果810。 云计算旨在通过网络把多个成本相对较低的计算实体整合成一个具有强大计算能

9、力的完美系统 , 并借助 SaaS、PaaS、IaaS、MSP 等先进的商业模式把这强大的计算能力分布到终端用户手中 。云计算是一种共享基础架构的方法 ,可以将巨大的系统池连接在一起以提供各种服务 。 本文采用了一种简化的云计算架构 ,其系统结构示意如图 2 所示 。为了获得强大的并发计算能力和存储能力 , 本系统使用 Enomaly 平台6搭建了手写识别的服务器 。 云平台将多台虚拟机和物理机 (统称计算节点 )以及存储器连接在一起 ,能够有效地支持平行扩展 。 系统透过网络 ,采用请求分派机制 (如图 3 所示 )将庞大的用户接入自动分配到各个计算节点进行处理 。 系统根据负载和计算节点性

10、能等情况来决定用户的分配策略 , 这有利于合理地分配计算资源 ,能够在大量用户并发访问时依然保证快速的处理能力图 1 云手写识别系统框架85云 计算专栏和良好的服务 。 计算节点依据自身情况将请求转交给本机线程池中合适的线程处理 。 线程池中的每个线程独立处理一个连接 ,完成相关的识别工作并将结果返回给对应的客户端 。 线程池技术的使用 ,避免了直接从操作系统申请内存所造成的内存碎片现象 ,确保了服务长期运行的稳定性 。3.2 基于 Google Android 平台的客户端由 Google 公司牵头 ,多家手机设 备 制 造 商 、软 件 公司 、 半导体厂商等组成的开放手机联盟于 2007

11、 年 11 月12 日对外发布新一代开源的智能手机操作系统 Android11,12。 系统自发布以来 ,由于其开放性以及所提供的 强 大 SDK 开发包和大量的 API ( 应 用 程 序 接 口 ),Android 系统受到了广大开发者的热捧 。根据 Android 系统提供的输入法框架 (IMF),本文的输入法继承 “android.app.Service”API 的输入法后台服务 ,主要分为输入视图 (包括手写区和键盘 )和候选字视图两部分 。 其他应用程序需要进行输入时 ,系统会自动激活输入法 。 为了实现自定义的输入视图 ,必须重新实现 IMF 提供的 “onCreateInput

12、View()”方法并实现新的输入视图 。 在输入视图中 ,通过重写 “onTouchEvent”方法 ,实现手写笔迹的捕捉和显示 。 同样 ,为实现自定义的候选字视图 ,需重写“onCreateCandidatesView()”方法并实现新的视图 。3.3 手写文字识别手写文字识别主要包括预处理 、特征提取和分类三个步骤 ,其流程如图 4 所示 。 本系统采用具有良好性能的8 方向特征2作为识别特征 ,获得 8 方向特征后 ,先进行降维 ,然后使用两个 LDA(线性鉴别分析 )粗分类器对其进行粗分类 ,最后再用 MQDF(改进二次判决函数 )分类器进行精确分类3,5。本文使用的 MQDF 分类

13、器克服了负特征向量的偏差影响 ,从而提高了分类性能 ,其具体形式为 :(1)其中 ,K 为主特征向量的维数 , 参数 i可设为类别无关的常数4,5。利用上述方法训练所得的 MQDF 分类器需要的存储量较大 (对于国标 GB2312-80 字库 ,通常需要 140 MB 以上的存储空间 ),因而不能直接适用于移动终端 ,而在云服务器上实现却非常容易 。本文还在云平台服务器端实现了一个需要较大计算及存储资源的旋转无关联机手写识别算法12。4 系统实现及性能分析本节将通过图示说明本系统的实现效果 ,并通过一系列的实验和测试说明系统的性能 。4.1 系统界面图示客户端的手写输入视图分为普通模式和全屏模

14、式两种 (如图 5 所示 ),它们除了在外观上和书写区域范围不同外 ,其内部实现机制和识别流程是相同的 。 服务器运行在图 3 系统请求分配机制示意图 2 简化的云计算实现系统结构图 4 手写文字识别流程86电 信科学 2010 年第 9 期云平台上 ,它可以监测具体的某个连接的具体信息 ,其界面如图 6 所示 。4.2 实验及结果分析本文从手写识别分类器的性能 、多用户同时接入时的整体性能两部分进行实验来评价系统的性能 。4.2.1 手写识别分类器性能分析为了测试系统服务器端所用的手写识别分类器的性能 , 我们采用 60 套国家 863 联机手写汉字样本评测数据库作为样本进行测试 ,每套测试

15、样本均包括 3 755 类 GB1汉字和 3 008 类 GB2 汉字 。 实验结果见表 1。从表 1 可以看出 ,本系统使用的 MQDF 分类器 ,能够获得较高的识别准确率 。 工整手写汉字的识别准确率在98%以上 ,连笔手写汉字的识别准确率也达到 96.5%。 但是 ,所需的 MQDF 分类器的存储量超过 140 MB,难以适用于移动终端 ,因而利用云计算平台提供服务的应用模式具有一定的实用价值 。4.2.2 云服务器性能分析为了测试多用户并发访问时服务器的整体性能 ,本文设计了一系列的测试实验 。 实验模拟多个用户同时访问服务器 ,然后记录相关参数 。 表 2 记录了多个用户并发访问云服

16、务器时的性能参数 ,并与普通服务器的性能进行了比较 。从表 2 可以看出 ,云服务器 100、300、500 和 1 000 个用户并发访问时的实际接入数均和设定数量相等 ,也就是说用户的接入率为 100%。 每个接入识别的平均处理时间分别为 0.014 s、0.016 s、0.019 s 和 0.025 s,而 90%的用户所需的处理时间分别为 0.023 s、0.023 s、0.032 s 和 0.043 s,即大部分的用户所需的处理时间都处于较低的水平 ,从而说明云服务器能够较好地处理多用户并发访问 ,通过负载均衡和请求分配机制 ,能有效地提高每个用户所获得的计算能力 。 另外 ,云服务器的平均吞吐量随着用户数量的增多而逐渐增加 ,这也反映了云服务器可以适应不同规模的用户 。 从图 7 可以看出 ,不同数量规模的用户并发访问云服务器时 , 各时刻的平均处理时间组成的曲线较为平滑 ,说明了云服务器具有较好的稳定性 ,这也确保了移动终端通过网络接入获取所需服务的可靠性 。对于普通服务器 ,当并

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 其它文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号