Android平台字体识别系统研究与实现

2014-02-01 07:57季晨生王经纬王军明
科技传播 2014年23期
关键词:服务器端字体客户端

季晨生,徐 明,王经纬,黄 鑫,王军明

扬州大学信息工程学院,江苏扬州 225127

0 引言

如今信息技术飞速发展,中文字库中除了录有中国传统经典的字体外,还有专业厂商制作的字库。近几年,较大规模的西文字体识别与检索已有成效,而识别中文字体的网站却很少。据不完全统计,目前可以下载的中文字体大概有15000多种,而字体网站只提供字体的预览和下载功能,目标性不强[1-2]。

当今智能手机已经相当普及,全球两大类智能手机iphone和Android,其中安卓在中国市场占有率为89.9%,因此开发基于安卓的字体识别软件,将极大地满足市场尤其是广大字体爱好者的应用需求。

1 技术原理

1.1 客户端技术

为了减轻客户端的运行压力,大部分的系统操作都将放在服务器端进行,而客户端只需进行简单提交图片、提交文字等操作。然后通过http方式实现与服务器数据传输。

1.2 服务器端技术

当用户上传图片到达服务器端后,服务器端通过后台程序,将图片存储到某一特定文件夹下,程序自动查找到与之相匹配的文字,并将这些文字生成一个固定大小的图片,形成RGB矩阵,再将这些矩阵进行比较,得到相应的匹配率。按照匹配率,对字体格式进行排序,并将排好的数组,返回给客户端,完成一次数据交互。因此,对于服务器端,我们要用到serverlet技术和javabean技术,将操作写入javabean中,用serverlet将用户页面与后台逻辑操作连接起来。

1.3 相关算法介绍

1.3.1 常用的识别技术

图像处理通常需要将图像划分为若干不相交的区域,图像分割是图像处理的基础。常用的有阈值与图像分割技术、梯度与图像分割技术,通过阈值来对图像进行二值化能让计算机处理的数据量大大减少[3]。

分割后的图像需要对盐粒噪音和毛刺噪音进行消除,通常采用滤波的方法,根据噪音产生机理的不同设计不同的滤波方法,为减少脉冲干扰,可采用中值滤波法[4]。

匹配算法主要有:基于边缘、基于像素点等比较算法[5]。

1.3.2 字体识别技术

1)阈值分割技术

本程序因手机内存限制,不能通过拖动控制条来实时改变阈值,但是如果灰度均值偏小或者灰度均值过大时,仅用单一的阈值算法将很难得到合适的结果,所以通常采用两种阈值:最佳阈值法和大津法,两者相结合自动寻找合适的阈值[6]。

设:最佳阈值法计算的阈值N,大津法计算的阈值M,平均灰度值aver,则:

2)降噪算法

由于不同型号手机摄像头性能各异,加之拍摄手法不同,程序获取的图片源质量不高,二值化后容易出现噪点现象,影响后期匹配算法,因此借助比较常见的降噪算法:中值滤波、均值滤波、对称近邻均值滤波法,在处理细小噪点的算法中,均值滤波算法效率较高但容易降低图片的锐度和细节,综合效果中值滤波法更适合。

2 字体识别软件开发

本手机字体识别系统主要包括如下功能:

截图功能、二值化处理功能、查找文字边界、生成字库图片、统计排序功能、手机端“扫一扫”功能。通过手机摄像头取图并处理,将处理后的图片和相应的文字发送到服务器端进行处理,服务器将查询结果再返回给客户端。

3 结论

经测试,本软件可以实现字体图片获取、上传、识别并返回结果等相关功能。手机Android客户端操作简单明了,产生的结果能满足用户的需求。识别字体的方法位于服务器端,方便日常的维护升级。软件基本达到预期目的。下一步的研究工作将致力于历史记录、字体收藏、下载、替换等后续功能的开发,并对算法做进一步的改进,以提高对于字体的识别能力,加快字体处理速度。

[1] Find-your-font in large font databases, SolliM Lenz R. , Proceedings of the 15th Scandinavian Conference on Image analysis. Aalborg, Denmark,2007: 432–441.

[2] The snippet statistics of font recognition,Lidke J, Thurau C, Bauckhage C. , 20th International Conference on Pattern Recognition.Istanbul, 2010:1868–1871.

[3]金立左,夏良正,杨世周. 图象分割的自适应模糊阈值法,中国图象图形学报,2000(5).

[4]改进的自适应中值滤波算法,黄宝贵 卢振泰 马春梅赵景秀,计算机应用,2011(7).

[5]周瑜,刘俊涛,白翔.形状匹配方法研究与展望,自动化学报,2012(6).

[6]罗三定,谭晓东.图像分割中最佳阈值集的选择与评测,计算机与信息技术,2007(6).

猜你喜欢
服务器端字体客户端
Linux环境下基于Socket的数据传输软件设计
字体的产生
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
基于Vanconnect的智能家居瘦客户端的设计与实现
浅析异步通信层的架构在ASP.NET 程序中的应用
基于Qt的安全即时通讯软件服务器端设计
组合字体
客户端空间数据缓存策略
网页防篡改中分布式文件同步复制系统