当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]基于手写辨识芯片的汉字手写输入技术

摘要 主要介绍在小型嵌入式应用系统中,如何借助于手写体辨识芯片ePH1200实现汉字以及其他字符的手写输入。根据芯片ePH1200的辨识功能和特点,介绍了手写体汉字的辨识过程;结合实例,介绍采用ePH1200、电阻式触摸屏和微控制器(MSP430)实现汉字手写输入的硬件接口电路与软件编程方法。
关键词 手写体辨识 触摸屏 ePH1200 辨识芯片

  许多的掌上装置与移动设备采用小型嵌入式系统,而这些装置很多都需要具有输入汉字的功能。计算机系统中实现汉字输入的方法有多种,但根据实现的技术路线区分,不外乎是编码输入(如拼音、五笔字型输入等)、语音输入(如语音识别)、字型辨识输入(如扫描输入、手写体输入)等几种。由于语音输入技术尚未成熟,手写汉字输入方法颇受人们青睐。然而由于受微控制器本身处理能力及系统内存空间的限制,要在其中嵌入手写体汉字识别软内核难度非常大,且软内核必须针对不同的嵌入式应用系统进行移植才能使用。这无疑增加了这类产品开发的成本与风险。ePH1200是义隆电子公司将手写体辨识软内核硬化的一款专用芯片,它通过与电阻式触摸屏、微控制器相连,有效地实现汉字的手写输入。这为掌上装置以及各种移动设备等嵌入应用系统实现汉字的手写输入功能提供了一个很好的解决方案。

1 ePH1200的特点与手写体辨识过程

  ePH1200手写体辨识芯片内嵌蒙恬手写识别软内核,能对国标汉字(共6 763个)、ASCII码字符以及其他一些特殊字符的手写体进行辨识,支持笔划连写,识别正确率高达99.9%;提供备选字输出,输出结果为 Unicode编码或者GB2312国标码,单字辨识时间约为0.34 s。ePH1200具有CSP24和LQFP44两种封装型式;功耗低,工作电压为2.8~3.6 V,工作电流约为2 mA,待机模式时的静态耗电小于20 μA;工作温度范围为-20~+80 ℃。ePH1200具有UART接口,方便与各种微控制器配合使用;UART接口的数据传输速率固定为9 600 bps,一帧数据为10位(1个起始位、8个数据位、1个停止位),数据位由低位到高位依次传送。ePH1200内嵌电阻式触摸屏控制接口电路,可直接与四线电阻式触摸屏相连。电阻式触摸屏控制接口电路包括电子开关切换电路和A/D转换器(转换精度8位/10位可选)[1]。图1为ePH1200的原理框图。

按此在新窗口浏览图片
图1  ePH1200原理框图

  ePH1200通过内部的触摸屏控制接口和A/D转换器,获取在电阻式触摸屏上笔划轨迹的坐标信息。当停笔时间(也就是书写笔不接触摸屏的时间)大于设定值时,表示一个字符已书写完成。这时内嵌的辨识内核开始处理,通过采用字符识别算法对输入的字型点阵信息进行计算,便可以辨识出刚才所书写的字符,获得其Unicode/GB2312编码。字符的编码和笔划字型点阵信息均可通过UART端口输出,送给系统的微控制器;系统的微控制器便将手写字符的笔划字型点阵和根据编码获取的标准字型点阵输出到显示屏。这样在显示屏上就可以映射显示出手写字型和被识别字符的标准字型。

2  ePH1200硬件接口电路的设计

  图2为实现手写输入的硬件接口电路。ePH1200通过XP、XN、YP、YN四个引脚端与四线电阻式触摸屏直接相连,通过串口与系统微控制器 MSP430交换信息。当ePH1200处在待机模式时,可通过WKI端输入外部中断唤醒信号(如微控制器通过检测触摸屏工作状态所产生的输出信号),使其恢复到正常工作模式。

按此在新窗口浏览图片
图2  ePH1200硬件接口电路图

  触摸屏上的笔划或点击信息,经过ePH1200的采集与处理,由串行接口送给微控制器MSP430;微控制器MSP430在收到这些数据后进行分析处理,将笔划点阵信息映射显示在LCD屏上,并将点触软键盘功能键的信息交由键盘处理程序处理。

3  应用程序设计

3.1  ePH1200的编程方法

  由于ePH1200只能通过串行接口与系统的微控制器通信,因此各种数据信息的传送都是通过串行协议来实现的。系统的微控制器由串口发送命令包,可以将ePH1200设置为不同的工作状态。当ePH1200工作在辨识状态时,可以对触摸屏上设定范围内手写的一级、二级汉字以及一些ASCII码字符进行辨识,并输出其代码(如GB2312码)和手写笔迹的坐标值;当工作在图形状态时,不对手写的字符进行辨识,而只是将触摸屏上设定范围内手写笔迹的坐标值输出。ePH1200上电工作后处在默认工作模式,系统的微控制器必须根据应用要求通过串口对其进行初始化设置。串行通信的命令包格式如下:

按此在新窗口浏览图片

  例如,要设置ePH1200工作在图形工作状态,系统的微控制器应通过串行接口向ePH1200发送以下8字节的命令包:

  0x50  0x14  0x04  0x01  0xFF  0xFF  0xFF  0x3A

  ePH1200工作状态被正确设置后便会作出应答,应答包的数据如下:

  0x50  0x14  0x04  0xFD  0xFF  0xFF  0xFF  0xFD

  ePH1200应答输出包的格式有多种,包括命令确认应答包、命令错误应答包、单字辨识结果数据包和笔迹坐标数据包等。限于篇幅不在此介绍。

3.2  手写笔迹坐标数据包的接收

  在手写输入过程中,ePH1200几乎同步地输出手写笔迹坐标数据包。系统的微控制器须不停地接收这些数据包,通过提取坐标值,将其在屏幕上显示出来。但由于系统的微控制器具有多个任务,处理速度不一定足够快,因此为了防止手写笔迹坐标数据包发生丢失,需要建立坐标数据包接收缓冲区。根据实际应用情况,缓冲区定义为环形,可存放10个数据包。缓冲区的管理采用双指针:数据包接收存放位置指针与数据包提取位置指针。数据包被提取后,相应的存储单元即被清除,以免被重复提取使用;数据包提取位置指针也调整为指向下一个数据包的存放位置,若没有新的数据包可提取则等待。数据包的接收存放管理相对简单,每接收存放一个数据包后,将数据包接收存放位置指针调整指向下一个存放位置即可,无须考虑缓冲区的溢出问题。

3.3  手写笔迹的显示

  在触摸屏上进行书写,虽然手写的笔划是连续的,但ePH1200输出的笔迹坐标数据包只是笔迹曲线上采样点的坐标值,因而是不连续的。如果要将手写的笔迹在显示屏上映射显示[2]出来,则必须利用软件进行处理。采用Bresenham画线算法[3]和利用ePH1200输出的坐标值,可在显示屏上绘出与手写笔迹基本一致的连续曲线。下面是绘线示例程序:

//绘线函数,起点坐标为(x_start,y_start),终点坐标为(x_end,y_end),scnum为显示缓冲区号
void lcd_line(unsigned char y_start,unsigned int x_start,unsigned char y_end,unsigned int x_end,unsigned char scnum) {
  unsigned int add_x,add_y,dx,dy;
  unsigned int l_long;//线段包含的点数
  int sign_x,sign_y;//线段的走向
  int x,y;
  int nx,ny;
  nx=x_start;ny=y_start;
  if(x_end>=x_start){ dx=x_end-x_start;sign_x=1;}
  else {dx=x_start-x_end;sign_x=-1;}
  if(y_end>=y_start) {dy=y_end-y_start;sign_y=1;}
  else {dy=y_start-y_end;sign_y=-1;}
  l_long=dx+dy;
  if(l_long==0) return;
  add_x=l_long/2;
  add_y=add_x;
  while(x !=x_end||y !=y_end) {add_x+=dx;
    add_y+=dy;
    if(x !=x_end)
      x=x_start+(add_x/l_long)*sign_x;
    if(y !=y_end)
      y=y_start+(add_y/l_long)*sign_y;
    if(nx !=x||ny !=y) {
      nx=x;ny=y;
      lcd_pt(y,x,1,scnum);//在显示屏上显示一个点
    }
  }
}

3.4  字符辨识结果的处理

  在触摸屏上书写完一个字符后,ePH1200会将辨识结果以数据包的形式输出,数据包的内容为若干个备选字符的Unicode/GB2312编码。根据这些编码,通过索引显示字模库,可将各备选字符在显示屏上依次显示出来;随后就可以根据需要,利用触摸屏或按键选取相应的字符。这样就完成了汉字的手写输入。

结语

  汉字的手写输入解决方案多种多样,ePH1200作为一款手写体的辨识芯片,为小型嵌入式系统应用增加手写汉字输入功能带来了方便。本文介绍的只是针对特定微控制器MSP430的一种典型硬件接口和软件设计方法,但由于ePH1200接口简单,因此采用其他微控制器的应用,设计方法大同小异。

参考文献

[1]  Elan MicroeLectronics Corp.ePH1200 DATA SHEET,2005.
[2]  崔如春,谭海燕. 电阻式触摸屏的坐标定位与笔画处理技术[J].仪表技术与传感器,2004(8).
[3]  陈元琰,张晓竞. 计算机图形学实用技术[M].北京:科学出版社,2000:5258.

谭海燕(硕士研究生),主要研究方向为多媒体数据通信、嵌入式系统应用。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭