段码是对
液晶屏显示模式的一种叫法,特点是呈笔段式的组成。
纵横投影的七段码“8”字型手写数字识别
根据电子屏幕只需七段码“8”字型就可将0~9这10个数字表示出来的情况,设想把数字作为一个整体放到七段码“8”字型中进行识别。提出了一种纵横投影的七段码“8”字型手写数字识别,其做法是根据数字的外形特征将数字对七段码“8”字的各框上进行投影,将手写符转化为标准符进行识别,从而简化字符特征的提取。与传统识别方法相比,更容易实现,实验证明了这种方法的有效性。
预处理
预处理包括细化、切割及规划这几步。
细化也称骨架化,其实是对原图进行处理,达到从粗到细的过程。细化处理能去除字符上不影响连通性的轮廓像素,获得单位宽度的中心骨架,从而方便对字符的轮廓跟踪。本系统使用的是基于膨胀和腐蚀的形态操作来进行细化处理的。
投影
纵横投影的七段码“8”字型手写数字识别法对任一数字均向七个框上投影,七框分别为上框、中框、下框、左上框、右上框、左下框、右下框。投影线段是水平或垂直的直线段,七段码“8”字的七个框都投影完后每条框的值不是0就是1,由27=128可知投影后各边框的值的组合只有128种。
对数组加工
对数组u1~u7进行统计,将统计的阈值定为一半,即数组中超过一半的点被赋为1,则与此数组相对应的 “日”字框就置1,否则置0。u1~u3要求要超过8个像素点被置为1,“日”字框上对应的框就整条置1,否则置0;u4 ~u7要求要超过6个像素点被置为1,“日 ”字框上对应的框就整条置1,否则置0。
投影后的识别处理
对数字投影后就要对这些七段码的“8”字进行判决,提供了一种可供参考的判决分类树, 树干如下:
从上框是否为0分开两类。
上框为0时,又再继续看下框是否为0,又再分两类,一直分下去。
上框为1时,从中框是否为0分为两类:中框为0时,以左上框是否为0再继续分下去。中框为1时,以左上框是否为0分为两类。
判决法则因人而异,是非常灵活的,有时只要修改一个子叶的判决,都会提升较大的识别率。这需要研究人员更多地尝试与修改。
七段码显示电子时钟
以BASIC语言、6502汇编语言、z一80汇编语言等编制的电子时钟程序,己基本完善了时钟的计时精度,程序设计的最优化等问题。但是,在时间数字的显示上,大多是文本状态下的屏幕单元显示。这样显示的时间数字,字形过小,很多时候使用起来不很方便。现试用七段代码显示,时间数字的输出可在屏幕允许的范围内进行任意放大,解决了数字输出过小的问题。这样,时钟程序更加适用于车站、影剧院、会场等大型公共场合。程序短小,设计简单,仅需一 块软盘辅助计算机工作。程序已在APPE一1型微机上调试完毕,运行效果良好 。
设计思想
将当前时间送入计算机后,程序开始运行。首先采集即将显示的时间数宇,转换成七段代码,然后把代码分解成七段信息,在低分辨图形状态下,由每一段代码控制显示屏幕上纵向或横向若干个相连的图形块 ( 开亮或不开亮这些单元 ),经七次显示后,每一 时刻的时间数字就在计算机屏幕上放大显示出来了。整个程序由四 模块构成,即设置初始时间模块、计时模块、延时模块和七段显示模块。整个计时过程由这四个模块交互运行来实现。 为便于使用,可由一段BASIC语言程序进行管理。
设置初始时间模块
设置初始时间分键入初值和设置初值两步进行。键入初值由BASIC管理程序完成,用POKE函数把六位时间数字送到$06一地址单元,要求用标准形式输入hh/ mm/ss( 时 /分 / 秒 ),即每送两位数字,要有一间隔符,间隔符可以是键盘上任一字符键。设置初值是先从一$06 单元中依次采集数据,用后变址 ( y ) 间接寻址的方式转换成相应的七段代码( (0 一 9 )10个数码的七段代码存放在$300~$309单元中 ),然后用七段代码显示子程序,将时间数字显示在屏幕上。
计时模块
初始时间设置完毕,计时程序开始工作。计时程序的主要功能是修改$06~$0B单元中的时间数据,由判别进位、七段显示、修改数据、延时4个步骤周期运行来完成的。六位时间数字为:秒个位、秒十位、分个位、分十位、时个位、时十位。 其中秒个位、分个位的数字是十进制的;秒十位、分十位的数字是六进制的;时个位数字的进制要看时十位,当时十位是2时,时个位为四进制数字;当时十位不是2(0或1) 时,时个位为十进制数字。
延时模块
将延时参数设置为$8C(LDA # $8C),调用APPLE一II型微机内延时子程序(JSR),则产生0.05秒的延时时间,循环调用此子程序20次,则产生1秒的延时时间。
七段显示模块
七段代码是七段发光2极管显示器显示字符时所采用的代码,七段显示器所用七段代码显示十进数字。
在一字节中构成七段代码的方法是最高位为0,其它七位由低位向高位顺厅为a,b,c,d,e,f,g各段的代码。这样,一 个数字的七段显示就可以由一个字节的低七位中的内容来控制了。如果这七位中某一位的内容为 1,则开亮它所对应的一段;否则,如果某一位的内容为0,则它所对应的一段就不开亮。在程序的设计中,存放七段代码单元($0300一$03c9) 的低七位的每 一位,对应着处于低分辨图形状态屏幕上的一段图形块,因此,由七段代码控制的就是放大了的时间数字了。