CN1889174A - 一种语音编码有声读物及其拾音器 - Google Patents
一种语音编码有声读物及其拾音器 Download PDFInfo
- Publication number
- CN1889174A CN1889174A CNA200510200358XA CN200510200358A CN1889174A CN 1889174 A CN1889174 A CN 1889174A CN A200510200358X A CNA200510200358X A CN A200510200358XA CN 200510200358 A CN200510200358 A CN 200510200358A CN 1889174 A CN1889174 A CN 1889174A
- Authority
- CN
- China
- Prior art keywords
- speech
- numbering
- frequency
- word
- coding
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Electrically Operated Instructional Devices (AREA)
Abstract
本发明涉及一种使用语音组合编码的有声书籍载体及其拾音器,在普通书籍的页面上每句或几句赋予一个码字,码字包含的信息不是整句语音编号信息,而是语音音码的组合信息,所说语音音码可以是词组合,单词(词),词根或音标的发音,所涉及的语言种类既可以是英语,法语,德语,俄语等印欧语系,也可以是汉语,韩语等非印欧语系。拾音器读取这种码字,并解码发出语音声音来。拾音器的读码头可以使用条码读码头或导电码读码头,而相应的码字是条码或导电码。
Description
技术领域:
本发明涉及一种使用语音组合编码的有声读物及其拾音器的解决方案。
背景技术:
在现有技术中,有声读物的解决形式一般采取发音器带各种读码头,根据读得的码的内容对应发声。如中国专利号为:91207427.2的专利,其读码方式是卡片读取器,这类解决方式是读得的码的内容为对应的语音的顺序编号或磁带的地址,然后寻号发声,其缺点是语音通用性差,如更换读物,就需更换语音存储器内容或磁带,麻烦而且成本也高。
发明内容:
本发明的任务是提供一种结构简单,成本低,使用方便的有声指读读物及其拾音器。
本方案是将某种语言的音码,如音标发音,词根发音或词发音作为基本发音,然后任意的句子的发音,都由这些基本发音拼合编码而成,并且使用压缩编码技术以节约码长。
本发明涉及两个方面,一是使用这种编码方法的读物:在页面上需要发声的地方,以印刷或其他方式贴附上这种码。
二是能够析读这种编码方式的拾音器:其包括码读取头,声音数据存储器,mcu,发声电路,键盘等。
本方案的特点是(英语例):将48个国际音标的发音录下来,转换成的语音数据备用。
将英语单词及贯用词组按其在日常生活中的使用频率排序后做成数据库备用,如is,and这类词常用就排前面,排前面的常用词用短的码字表示,后面不常用的词用长码字表示;每个单词并记录其音标读法,要发单词音时,可以按其音标组合而将音标发音拼接起来发音;
然后再按各不同单词的性质而归类到不同的表中,比如run,go,jump等表示人的动作的词就归在一起,he,she,you等名词归在一起,然后对于不同的词,建立它与这些类表的联系信息。
编码主要采取的几种主要方式:
将一个句子的单词按顺序,每个单词查其在单词表里的频率编号,将这些对应频率编号按顺序排列即可。
将句里的单词转成频率编号后,再利用各单词的相关性,以达到节省辅助字节的目的。
通过一个句子里的单词的互相之间的关联信息,对单词分层,并进行压缩编码。
存储一些常用句型,然后将当前句与某常用句型的区别,作为编码。
在两个相邻码字之间,后面的可以利用前面的相同的单词信息,以达压缩目的。
在同一个码字里,可以利用前面或后面的相同的单词信息,以达到压缩目的。
具有对陌生单词的处理能力。(包括陌生人名,地名的处理)
在对单词进行压缩后,还需对各单词记录其词型变化选择信息。
对于非印欧语系的汉韩日语的处理方式是类似的。汉韩日语里,一般没有词根的概念,但其单字相当与英语的词根,其所有字的发音可归纳限制到几百个以内,汉韩日语一般没有单复数,词的时态变化;除了这些区别造成一些处理不同外,总的来说,非印欧语系与印欧语系的处理方式类似。
其编码是基于二进制编码的。
可以是一维条形码或二维条形码,也可以是本发明人在另一个专利里申请的导电码,或其它比如图象识别码或磁码等。
对于包含码值较少的码,可表示短的句子或单个单词,而如使用包含码值较多的如二维条形码如pdf417码,再使用压缩方式,一个码可携带一整页课文的语音。
对于其解码,需在解码单片机里存有与编码时用的相同或相兼容的数据库,解码过程是可以参照编码原理解码。
能够析读这种编码方式的拾音器:其包括码读取头,声音数据存储器,mcu,发声电路,键盘等。其读码头可以是光笔等以读条形码符号,也可以是本发明人申请的另一专利导电码读码头以读取导电码符号。
本编码方式及其硬件实现使用数据压缩,及语音合成技术,达到不需换数据卡,成本低,使用方便等效果;平均每100个二进制位的码字,可以析解出至少20个英语单词的句子(大学听力难度英语)。
附图说明:
图1:使用光笔作为读码头的拾音器的一个实例电路图
具体实施方式:
本编码方案涉及各种语系。
本发明对世界范围内语系的划分采用常规的划法,一个比较大的语系是印欧语系,包括欧洲,印度,西亚各国的语种,如英语,法语,德语,俄语,拉丁语,希腊语等都属于印欧语系,印欧语系里的语种的语法风格比较类似,词有词形变化。
本发明所称的非印欧语系是指除了印欧语系的世界其它地区的所有语系,主要包括亚洲的语系,如汉藏,南亚,南岛等语系,也包括阿尔泰语系,以及非洲,美洲的语系。汉语属于汉藏语系,韩语,日语属于阿尔泰语系,这三种语言的语法风格比较类似,词没有词形变化。
其处理的既可以是完整的句子,也可以是句子的一部分。
句子的难度从幼儿园程度,小学程度,中学程度,直至大学程度,最简单的可以是单个的单词。
以下的编码是基于二进制编码的。
因为不方便打音标(考虑到电子档文件的兼容问题),所以本说明书有个别涉及音标的地方是用英语字母模拟代替的。
先述以英语为代表的印欧语系的编码处理:
音码的定义:
这里音码是按照印欧语系的发音习惯来划分的,音码可以是表示发音的音标,或者是代表音标组合的代码,或者是可以转换成发音的词根,单词,单词组合或句子;音码的组合可以是音标,音标组合代码,词根,单词或单词组合中的任意数种的组合,也可以是句子与音标,音标组合代码,词根,单词或单词组合中数种的组合。
代表音标组合的代码,是指对句子的分解不是按词或词根的概念,比如allow of这样一个短语,如将其分解成a和llow of这样两段,
其表示发音的音标也相应分成两段(e)(lau ov)(这里因不方便打音标所以用字母来模拟音标),对这两段分别赋予编号如0010,0011,即是这两个音标组合的代码;代码0010和0011可以分别按其音标转换成a和llow of的发音,将这样的代码组合起来也是可以组成句子发音的。
音码的拼合是既指音码简单的叠加,也指音码的增,删操作,也指为了实现压缩bit长度而采取的操作,比如后面要叙述的各压缩操作,时态处理及附加句子编码头信息等。
音码简单的叠加拼合举例:将单词词典里的各单词都赋予不同的编号(长度同),一个单词的不同变形也赋予不同编号,对于需编码的句子的各单词,分别替换成其在词典里的编号,按原来顺序排列即可。
音码语音的处理:
有几种方案:
1:对应于每个单词及其词型变化,都录音,存储起来,朗读句子时,将各单词按排列顺序依次读出即可。这种方案的语音存储量很大。
2:由于很多单词都是由词根及前后缀组成的,比如commitment就是由前缀com,词根mit,后缀ment所组成,这样的词根及前后缀有一两千个,所以可以对每个词根前后缀录音,并把48个音标录音,朗读句子时,对于每个单词,按其词根和前后缀发音即可,不属词根的,按其音标发音。这种方案的语音存储量也较大。
3:只对48个音标进行录音,朗读句子时,顺序读出单词,而单词的发音由音标的发音组合而成。这种方式语音存储量很小。
在做组合发音时,有些特殊地方需注意,可参考现成的语音合成技术。
在各音标语音之间,以及各单词之间,有静音间隔,可用程序调节间隔的长度,可实现句子的变速朗读。
单词及单词组合的排序及分配码:
单词及单词组合是编码的基本处理单位。
这里的单词是指如he,man这样的单词,单词组合既包括平时所指的如:take up
这类词组,也包括像he is a这样常用的单词组合。
而且一个句子可完全看成音标组合起来的,所以把单词或单词组合转成他们的音标组合(空格用停顿音表示),把其音标组合直接作为处理单位也是可以的。
本说明书为了叙述方便,采用单词的表达方式。
给单词和单词组合编码的方法,最简单的就是每个单词固定长度编一个二进制码,比如4千个单词的话,每个单词用12位bit表示即可。本说明书称此编码法编的号为等长编号,
单词和单词组合可以分开排序,也可以混合排序。
排序的方法是:可对平时使用的教材进行统计,统计其各单词和单词组合的使用频率,然后依其在课本中的使用出现频率按顺序排序,比如the单词的使用频率高,就排在前面,如this的使用频率次之,就紧接排在the的后面。
按大学四级的大纲要求,有4千多个单词,加上一些常用单词组合,约5,6千数量。
对单词按使用频率排序的目的是为了节省码长,按哈夫曼编号的原理,对于使用频率高的分配短的码字,使用频率低的分配长的码字;所以这里既可以直接使用哈夫曼编号的原理进行编码,也可使用另一种方式,即按使用频率分成,前8个单词用3个二进制位表示,接着的64个单词用6个二进制位表示,再接着的512个单词用9个二进制位表示,余下的4096个单词用12个二进制位表示,共可表示8+64+512+4096=4680个单词。比如the在第一段,用001表示,say在第二段,用010001表示,wait在第三段,用001011010表示,potato不常用在第4段,用011010011100表示。本说明书称此编码法编的号为阶梯编号,阶梯的长度改为别的如4,8,12也可以的。
哈夫曼编号方式,可以采用常规的编法,将单词和单词组合全统计其使用频率值,然后按频率值排序,再按哈夫曼编码法给每个单词和单词组合赋予号值。这种码的好处是不需表示码长。
为了叙述方便,下面将等长编号,阶梯编号,哈夫曼编号都称为频率编号的一种(等长编号的各词的使用频率假设相同)。
单词排序后,所建立的单词数据表里,需附带其发音信息,比如附带其音标,以便发音时提取音标信息,以组合音素发出音来。
另外,因为有的语言,如英语,德语,韩语,其单词(字)拼法,即隐含或部分隐含了读音,所以当单词库里需同时带单词拼法和读音拼法时,可只记录单词拼法,然后有读音规则得出其读音,如有的单词不符合读音规则,就同时记录单词拼法和读音拼法。
单词的分类:
按单词的属性进行归类,比如可分为:
社会,家庭,人,食品,服装,建筑,动作,相貌,表情,运动,艺术,上班,经贸,连词,助词等
比如:
人:people,man,woman,boy,girl,youth,baby,child,human,person
动作:open,close,pull,draw,put,place.lay,give,carry
相貌:beauty,ugly,pretty
每一个类里面包含的单词数量可以固定,也可不固定,在不固定时,可按其单词数量的多少分配其编号的位长,比如某一个类里面,有32个单词,就分配5个二进制位,另一个类有6个单词,就分配3个二进制位。
建立单词的关联:
对于一个句子中出现的词,其附近都可能会有单词来修饰它,而修饰它的单词数量是有限的,然后就可以利用这个原理达到压缩编码的目的;对于名词,一般有形容词,数词去修饰,比如boy,修饰的词可以是one handsome boy,对于动词,一般有副词形容词去修饰,比如run,修饰的词可是fast run。对于单词表里的某一单词,比如boy,与其可能相关的词类可能是:动作,相貌,运动,表情等,然后就在单词表里记录下单词boy与哪些词类相关。
对于有些单词组合,也可如上法编入。
这种关联的用处在后面述。
这样单词表的单词的结构就如:(本发明所称单词表,单词数据表,单词数据库是相同概念;另所称词数据表与词数据库是相同概念)
man:单词
011100100:频率编号
3:所属词类编号
7,8,10,9:相关词类编号
[man]:音标(这里是用英语字母模拟代替音标的)
boy:单词
110010:频率编号
3:所属词类编号
7,8,10,9:相关词类编号
[boi]:音标(这里是用英语字母模拟代替音标的)
[bois]:音标(boy的复数)(这里是用英语字母模拟代替音标的)
建立单词的关联还有另外一种方式:即对应于每个单词,都穷举罗列与其有关联的单词(而不是词类);比如与boy的有关联的词就有(fat,low,good,old,young等),当然这样做的缺点是单词的关联数据库会相当大。
如果为了要处理陌生单词的方便,一般还需建立词根的数据库,单词一般都可看作是由词根及前后缀构成的,对于英语来说,常见的词根如:sit,put,fuse等,而单词的发音,也可看作是类似于词根发音的组合,所以在mcu的存储器里可建立这样的词根库,收录常用的词根及前后缀,并记录它们的发音规则,常用词根一般有1,2千个。
欧洲的其它语种也类似,比如德语,词neulich就是由词根neu加后缀lich组合成的,所以欧洲的其它语种编码时的处理也与英语类似,建立词根及前后缀数据库。
编码的数据一般分成以下顺序排列的段:
头段:记录单词数量,所用编码方式等信息。
单词段:这段的数据是对单词编码压缩后的数据,可解码成按句子原来顺序排列的全部单词。
时态词形选择段:是对句子的单词的词形选择。
陌生单词段:是先在单词段里用111111作引导,这里再附具体的发音信息。
后调前段:是先在单词段里用111作引导,这里再附往前调用的单词的距离。
校验码段:用以对整个编码进行对误校验。(此段可选择不用)
以频率排序的编码方式:
句子都是由单词顺序组成的,对一个句子里的单词,全部换成其使用频率编号,并且每个编码前都带一个2位二进制位的长度标志,以表示其频率编号的长度是3,6,9,12中的哪一个。然后顺序排在一起即可,后面还需跟一串顺序排列的词形选择信息。
比如对于英语,有的词是没有词形变化的,如the,to这样的词;而名词有单复数之分,动词有时态之分等,在单词表里的每个单词的单元里记录此单词有无词形变化,有几个词形变化。
举例:the man is a engineer。
00:the词的频率编号长度
010:the词的频率编号
10:man词的频率编号长度
011100100:man词的频率编号
01:is词的频率编号长度
010110:is词的频率编号
00:a词的频率编号长度
101:a词的频率编号
10:engineer词的频率编号长度
010110010:engineer词的频率编号
合起来这一句话的编码就是:
0001010011100100010101100010110010110010
这里的频率编号可以是等长编号,阶梯编号,哈夫曼编号。如为等长编号,哈夫曼编号那其前面不用带编号长度。
如果这里使用等长编号,就不用带编号长度,并且这种编码是一种无压缩的编码方式。
以频率和关联混合的编码方式:
这是对频率排序(阶梯编号)的编码方式的改进,由于完全用频率排序(阶梯编号)编码时,每个单词前面需带2个二进制位,如15个单词的句子总共就要耗30个二进制位,占位较多;可以结合关联的方式进行改进。具体做法为:
先对句子里的所有单词都转成阶梯编号并按原顺序排列,然后假如单词段的二进制长度为84位,就在第21位,42位,63位处分别设点分节,在21位处向后查与最近的单个单词阶梯编号结束的距离值记录下来(2个二进制位),并把分节点挪到这个阶梯编号结束处,对42,63位处如法处理,这样就将单词段分成4节,每节长度大约为21位,在每节里可能有几个单词,长度可能为3,6,9,12位,但是具体的第一个单词占几位,第二个单词占几位,还是未知的。但由于分节后位数较少,其排列组合情况较少,所以可以对其穷举,对于每种单词长度可能情况都计算,计算这种长度可能情况时,对应的各单词之间的相关性;因为在一个句子中紧排在一起的几个单词或隔1,2个单词的单词,一般是互相有关联的,利用前述的单词关联机制,计算节里的单词关联度,然后比较每种分法的关联程度,取最相关的那种分法作为解出结果;当在编码时发现分节后有某节的歧义分法的关联度还大于原句子时,可调整节长度,如仍不行,就改另外的编码方法。
这种编码方案需每节设2个二进制位的偏移,如分4节,需3*2=6位二进制位,比30位节省了不少。
举例:the fat man is a engineer。
01100:有效bit长度,3个bit一个单位(本例有3*12个bit)
010000:21在is词的频率编号的中间,分节点挪到is词的频率编号末,并记录01,后面两个长度没达到都是00
010:the词的频率编号
001011:fat词的频率编号
011100100:man词的频率编号
010110:is词的频率编号
|\分节处
101:a词的频率编号
010110010:engineer词的频率编号
这样单词段就分成两节:010001011011100100010110,101010110010
如对于后一段101010110010,可分解为7种情况:
101,010,110,010
101,010,110010
101,010110010
101,010110,010
101010110,010
101010,110,010
101010,110010
分别计算这7种情况的单词相关度,相关程度最大的为解,比如前一词在后一词的关联类里,相关值加1,其计算标准自定,如某句符合标准而解出来又不是原句,此句可放弃这种编法。
这里除了可以定量地计算其关联值外,还可以利用排除方法,比如在程序里存储一些信息库,指示在某些单词后面或前面不会出现某些词或词性,这样如果某种分解方式出现前后非法的搭配,即排除这种分法。比如the,jump这样的一个冠词,一个动词一般不会在句中紧挨在一起的,如出现the jump这样分法,即可判断为不正确的分法。
假设这种非法信息库里存有两条规则:1:两个冠词不能紧邻。2:不能前冠词后动词紧邻,编码时从第1节开始顺序处理,对于某节的某分法,根据此分法各词先用后面的词性数据对其赋予词性(即各取所需,比如在单词数据库里有4个词性变化的就依次取两bit词性数据,而这种赋予词性是临时的不一定是正确解),然后就可先排除有这两种情况的分法,然后再计算各分法的单词关联度,如按原句的分法的关联度是最大即编码成功。第1节完后再处理第2节直至完。
对于其中有单词组合的,可取其前后单词,再与旁边的单词计算关联度及判断是否非法。
这里的频率编号可以是阶梯编号。
以关联的编码方式:
这种编码法是利用单词的关联性来进行压缩编码的,比如名词动词之间的搭配,形容词对名词的修饰都属于关联性,一个名词与其搭配的动词数量是有限的,比如tree,搭配的动词可以是stand,但一般不会是say这样的动词,形容词副词的修饰类似,fat可以修饰人,但一般不会修饰book,利用这种有限性可以达到压缩的目的。具体处理方法:
对于一个句子,先将其单词分成几层,下面一层词是对其紧邻的上面一层词的修饰,如某词其下面没有词修饰它,它就处于最上层,示例:
有句子:the fat man make his brother angry。
分层为:
the和fat都是修饰man的,brother和angry有关联关系,his修饰brother,make没有与其它词的修饰关系,处于最上层。共3层
编码方法:(这里为了方便注解,采用分行的方式写)
00110:句子中的单词个数(这里5个二进制位最多限制一句32个单词)
00010000100100:7个单词,bit为00表示处于第1层,bit为01表示处于第2层,bit为
10表示处于第3层,而且从这14个bit可以看见总句子某个位置的单词是处于某层词的第几个,以及每层各共有多少词
00:the词的频率编号长度
010:the词的频率编号
10:man词的频率编号长度
011100100:man词的频率编号
01:make词的频率编号长度
010110:make词的频率编号
10:angry词的频率编号长度
010110010:angry词的频率编号
01:fat词是对上层(1层)第2个词man的修饰
10:fat词是man词第2个关联类(相貌)。(这里的bit长度据上层词man的关联类个数自己变)
0011:fat词在相貌类中的寻址偏移(这里的bit长度也据类里的词个数自己变)
11:brother词是对上层(1层)第4个词angry的关联,这里使用2位二进制,如果上层单词超4个,就需使用更多位二进制表达
11:brother词属于angry词第3个关联类(人)。(这里的bit长度据上层词angry的关联类个数自己变)
0110:brother词在人类中的寻址偏移(这里的bit长度也据类里的词个数自己变)
01:his词是对上层(2层)第2个词brother的修饰,这里使用2位二进制,如果上层单词超4个,就需使用更多位二进制表达
010:his词属于brother词第2个关联类(物主代词类)。(这里的bit长度据上层词brothe的关联类个数自己变)
0101:his词在相貌类中的寻址偏移(这里的bit长度也据类里的词个数自己变)
由于在00010000100100中包含了各层个数信息,位置信息,所以不再需附加其它bit,即可正确解读。
另一句:the fat man is a good engineer。
分层为:
这句分两层。
编码方法:(这里为了方便注解,采用分行的方式写)
00110:句子中的单词个数(这里5个二进制位最多限制一句32个单词)
0100010:7个单词,bit为0表示处于第1层,bit为1表示处于第2层(如是4层需两个
bit),而且从这7个bit可以看见总句子某个位置的单词是处于某层词的第几个,以及每层各共有多少词
00:the词的频率编号长度
010:the词的频率编号
10:man词的频率编号长度
011100100:man词的频率编号
01:is词的频率编号长度
010110:is词的频率编号
00:a词的频率编号长度
101:a词的频率编号
10:engineer词的频率编号长度
010110010:engineer词的频率编号
01:fat词是对上层(1层)第2个词man的修饰
10:fat词是man词第2个关联类(相貌)。(这里的bit长度据上层词man的关联类个数自己变)
0011:fat词在相貌类中的寻址偏移(这里的bit长度也据类里的词个数自己变)
100:good词是对上层(1层)第5个词engineer的修饰,这里使用3位二进制,如果上层单词超8个,就需使用更多位二进制表达
101:good词属于engineer词第5个关联类(品行类)。(这里的bit长度据上层词engineer的关联类个数自己变)
0010:good词在品行类中的寻址偏移(这里的bit长度也据类里的词个数自己变)
这里关联数据库是采用分类的方式,如果关联数据库是采用每个单词穷举其关联单词的方式,那也可类似处理,比如刚才的good词就可表示成:
100:good词是对上层(1层)第5个词engineer的修饰,这里使用3位二进制,如果上层单词超8个,就需使用更多位二进制表达
1010:good词是engineer词的第10个关联词。(这里的bit长度据上层词engineer的关联类词的总个数自己变,如共16个词,就用4个bit)
由于在0100010中包含了各层个数信息,位置信息,所以不再需附加其它bit,即可正确解读。
下层的词,如果本身频率编号的长度很短,可以直接放在最高层,比如单词a。
对于包含较多单词的单词组合,由于一般没有与其它词的关联,直接放在最高层。
这里的频率编号可以是等长编号,阶梯编号,哈夫曼编号。如为等长编号,哈夫曼编号那其前面不用带编号长度。
整句差别式编码方式:
由于许多的外语教材,涉及的语音及示例,是在举例,所以同样或相似的句型经常出现,比如he is a engineer,应该是经常在初级教材中出现的句子,而与其相似的句子是he is not a engineer,仅多了一个not;所以,可以先统计这些常用的句子,比如有1千句,然后把这1千句集合起来,做成数据库放在mcu这边的存储器里,每句都有其在数据库的寻址地址;前述的he is a engineer就编入数据库,但he is not a engineer不编入数据库,当在做句子编码时,如遇到he is a engineer时,直接将其在数据库里的寻址地址作为编码即可;而如遇到he is not a engineer时,就先把he is a engineer这句的寻址地址放前面,然后再在后面附上与其差别的信息,这种差别可能是在某几处加词了,可能是在某处删词了,举例:假定一句的词数上限为32个,即用5个二进制位可表示其顺序编号,附差别信息时,先附删词信息,即从原句哪一个开始删,删几个词;再附增加词信息,即从哪个词开始增,增几个,接着附增加的词的频率编号。
如果是仅对范句库里的某句中的少量词改了时态,也可以以此方式先直接是范句地址,以后时态选择信息接在后面(见后述)。
例:
需编码句:the young man is a good engineer
与在范句库里第0000100101句(第37句)相似:the fat man is a engineer。
第1次删去第2个词fat
第2次从第2个词,增young
第3次从第6个词,增good
分行写:
0000100101:本句在1千句中的寻址地址值(固定10个bit)
0:删词标志
00001:从第2个词开始删(如为11111,就结束编码)
001:删1个(一次删增数限制8个内或4个内等)
1:增词标志
00001:从第2个词开始增
001:增1个词(young)(一次删增数限制8个内或4个内等)
10:单词young的频率编号长度
010100110:单词young的频率编号
1:增词标志
00101:从第6个词开始增
001:增1个词(good)
10:单词good的频率编号长度
101001011:单词good的频率编号
0:再遇0,结束编码
合起来是:000010010100000100110000101010010100110100101010101010010110
这里的频率编号可以是等长编号,阶梯编号,哈夫曼编号。如为等长编号或哈夫曼编号那其前面不用带编号长度。
后调前或前调后的编码方式:
这种方式一般是在前面几种编码的基础上再处理。
对于紧邻的几个句子,里面可能有一些比较偏僻的单词被重复调用,而其本身的频率编号较长,这时可以使用后调前或前调后的编码方式,即,当某单词出现在前面句时,使用频率编号,而当紧邻一句又出现这单词时,就可以将指针指到前面这单词的位置,而不必用其较长的频率编号;具体可以在频率编号中占用一个111,当出现与前面句或本句前面或本句后面有相同的单词时,就附上111,然后在整个编码的后面附5个bit表示当前位置与前面或后面单词的距离。这种方式是可以与其他几种方式混合编码的。
这里的频率编号可以是等长编号,阶梯编号,哈夫曼编号。如为等长编号,哈夫曼编号那其前面不用带编号长度。
陌生词的处理:
由于单词表的数量总是有限的,所以随时会遇到陌生词,所以处理陌生词是必要的;陌生词的发音构成一般可看为几种(以英语例,其它欧洲语种及处理是类似的):一种是几个常用单词拼合成的,比如loudspeaker,一种是由几个词根加前后缀拼合成的,比如commitment,一种主要是由单个的音标拼合的;
所以陌生词的处理可为,在单词的频率编号中,留一个专用于指示有陌生词,比如111111,这个编码只出现在单词段中,然后陌生词的具体编码附在后面,具体可分几种方式:
1:完全由其音标构成,开始4个bit表示音标个数,后面每个音标占6bit。
2:主要由词根前后缀构成,辅以音标,如此先须建立词根发音与音标的混合库,并对各词根前后缀与音标分别编号;这样陌生词的处理就是:开始4个bit表示词根个数,后面每个词根编号占10bit(1千词根)。这种编码的长度是第1种的1/2。
3:找与单词数据库里的单词相似读音的,然后记录与其读音差别(删增音);开始12bit是库里单词的寻址地址,接着0,表示删,接着是删的起始位置,删几个音标;直到1,开始增,增的起始位置,增几个音标,音标的编号(6bit),直到0结束。
4:主要由常用短单词构成,辅以音标,如此先须建立常用短单词与音标的混合库,并对短单词与音标分别编号;这样陌生词的处理就是:开始4个bit表示短单词个数,后面每个短单词编号占10bit(1千短单词)。
这样处理的陌生词已包括词形变化了。
有时候词根或短单词组合长单词后,其发音有变,这时可考虑使用音符合而形不符合的词根来组合,或者就用音标来代替发音有变的词根。
另外在一个编码中,是允许含有两个及以上的句子,对于不同的句子,可使用相同的编码法,也可使用不同的编码法,比如某一个编码中含有3句,前两句(1,2)使用相同编码法,后面一句(3)使用另一种编码法,其编码的数据结构就是:
头段(1,2)单词段(1,2)词形选择段(1,2)头段(3)单词段(3)词形选择段(3)校验段
时态词型变化的处理:
前已述过,单词是有时态,单复数变化的,其变形的个数是各异的,都存储在单词数据表的每个单词项里,编码时,查单词数据表,如不存在变化的,就不占bit,在4个以内的变化个数的,就占2个bit,依此类推,附在单词段后即可;解码时,先解出单词段的各单词,再依次查各单词在单词数据表中的时态变化个数,得出占几位bit,然后依次在时态选择段读取数据即可。
如某句用了词’better’
在单词数据表里’好’有三种变化(顺序排):good,better,best
所以时态变化信息占2个字节,而better排在第2,所以时态变化信息就是01。
举一个较完整的例:
句子为:
the handsome man is a engineer。
依照上述编码方式,分开编码是:
00 英语语种
00 使用第1种编码方式(频率编码)
00101:单词个数(6个)
00:the词的频率编号长度
010:the词的频率编号
01:111111的频率编号长度
111111:111111表示这是陌生词编码(handsome)
10:man词的频率编号长度
011100100:man词的频率编号
01:is词的频率编号长度
010110:is词的频率编号
00:a词的频率编号长度
101:a词的频率编号
10:engineer词的频率编号长度
010110010:engineer词的频率编号
0 man词的词形选择(在单词数据库里有man,mans共两个变化,用1bit)
01 is词的词形选择(be,is,been共三个变化,用2bit)
0 a词的词形选择(a,an共两个变化,用1bit)
0 engineer词的词形选择(engineer,engineers共两个变化,用1bit)
01 陌生词的编码种类(词根音标组合)
01 词根个数(2个)
0100101100 词根hand在词根表里的顺序编号
0010111001 词根some在词根表里的顺序编号
组合起来码的数据为:
00000010100010011111111001110010001010110001011001011001000100010101001011000010111001
这里的频率编号可以是等长编号,阶梯编号,哈夫曼编号。如为等长编号,哈夫曼编号那其前面不用带编号长度。
如果这里使用等长编号,就不用带编号长度,并且这种编码是一种无压缩的编码方式。
再述非印欧语系里的汉韩日语的编码处理:
汉韩日语的编码处理,与前述印欧语系的处理方式类似,汉韩日语一般没有时态单复数的变化。
以下以中文为例。
这里音码是按照汉韩日语的发音习惯来划分的,音码可以是表示发音的元音,辅音,或者是代表元辅音组合的代码,或者是可以转换成发音的字,词,词组合或句子;音码的组合可以是元音,辅音,元辅音组合代码,字,词或词组合中的任意数种的组合,也可以是句子与元音,辅音,元辅音组合代码,字,词或词组合中数种的组合。
代表元辅音组合的代码,是指对句子的分解不是按词或字的概念,比如‘电视机’这样一个词,如将其分解成‘电’和‘视机’这样两段,其发音也相应分成两段dian和shiji,对这两段分别赋予编号如0110,0111,即是这两个元辅音组合的代码;代码0110,0111可以分别转换成dian和shiji这样的拼音发音;将这样的代码组合起来也是可以组成句子发音的。
音码的拼合是既指音码简单的叠加,也指音码的增,删操作,也指为了实现压缩bit长度而采取的操作,比如后面要叙述的各压缩操作及附加句子编码头信息等。
音码简单的叠加拼合举例:将词典里的各词都赋予不同的编号(长度同),对于需编码的句子的各词,分别替换成其在词典里的编号,按原来顺序排列即可。
音码语音的处理:
句子一般是由词和单字组成,词一般由1-4个字组成,每个字的发音是由元音和辅音组合而成,元音的个数是有限的几十个,辅音的个数也是有限的几十个。
音码语音的处理有几种方案:
1:对于所有的单个元音都录音,对于所有的单个辅音也录音,对于所有的可能的字的发音(元辅音组合)都录音。比如汉语元音a,e,o等,辅音b,p,d等,而拼音组合则是如da(大),xie(写),并且有轻声,1声,2声,3声,4声之分,总共几百个。这种方案的语音存储量较大。例如:
a(0),a(1),a(2),a(3),a(4)
ai(1),ai(2),ai(3),ai(4)
an(1),an(3),an(4)
ang(1),ang(2),ang(4)
ao(1),ao(2),ao(3),ao(4)
ba(0),ba(1),ba(2),ba(3),ba(4)
bai(0),bai(1),bai(2),bai(3),bai(4)
ban(1),ban(3),ban(4)
。。。。。。
这是涉及的单字语音列表的前面一小节,基本上也是新华字典上的拼音检索的内容。括号内的是声调,4就表示第4声调。如(班)和(搬)的拼音就相同为ban(1)。
对于韩语:其单个的字的发音基本上都是由元音+辅音+韵尾构成,而元音,辅音,韵尾各自只有十余个,所以组合起来后可能的字的不同发音总数也是有限的,可以把可能的字的发音都录音保存下来。
对于日语:其单个字的可能发音情况都包括在50音表及少部分浊音表里,可把这些发音分别录音下来。
2:只对于所有的单个元音都录音,对于所有的单个辅音也录音。朗读句子时,顺序读出词,而词的发音由元辅音的发音组合而成。这种方式语音存储量很小。
例:对于汉语,可录其拼音的元音,辅音。
对于韩语,可录其元音,辅音的音。
对于日语,直接录表示元音和辅音的假名的发音。
在做组合发音时,有些特殊地方需注意,可参考现成的语音合成技术。
在各音标语音之间,以及个单词之间,有静音间隔,可用程序调节间隔的长度,可实现句子的变速朗读。
词及词组合是编码的基本处理单位。
词及词组合的排序:
对于汉韩日语,同样,可分为单个的词,如(学校),还有词的组合,如(他们是)。
有时词可以是一个单字,比如(他)。
而且一个句子可完全看成拼音组合起来的,所以把词或词组合转成他们的拼音组合(词间隔用停顿音表示),把其拼音组合直接作为处理单位也是可以的。
本说明书为了叙述方便,采用词的表达方式。
给词和词组合编码的方法,最简单的就是每个词固定长度编一个二进制码,比如4千个词的话,每个词用12位bit表示即可。本说明书称此编码法编的号为等长编号,
词和词组合可以分开排序,也可以混合排序。
排序的方式与前面述的印欧语系是类似的。
排序的方法是:可对平时使用的教材进行统计,统计其各词和词组合的使用频率,然后依其在课本中的使用出现频率按顺序排序,使用频率高,就排在前面,使用频率低的,就排在后面。
一般排几千数量词和词组合。
这里既可以直接使用哈夫曼编号的原理进行编码,也可使用前述频率编号方式,即按使用频率分成,前8个词用3个二进制位表示,接着的64个词用6个二进制位表示,再接着的512个词用9个二进制位表示,余下的4096个词用12个二进制位表示,共可表示8+64+512+4096=4680个词。
比如(他)在第一段,用010表示,(说)在第二段,用000101表示,(等)在第三段,用010010110表示,(土豆)不常用在第4段,用011010011011表示。本说明书称此编码法编的号为阶梯编号,阶梯的长度改为别的如4,8,12也可以的。
哈夫曼编号方式,可以采用常规的编法,将词和词组合全统计其使用频率值,然后按频率值排序,再按哈夫曼编码法给每个词和词组合赋予号值。这种码的好处是不需表示码长。
下面将等长编号,阶梯编号,哈夫曼编号都称为频率编号的一种。
词的分类:
这与前面印欧语系的处理类似。
按词的属性进行归类,比如可分为:
社会,家庭,人,食品,服装,建筑,动作,相貌,表情,运动,艺术,上班,经贸,连词,助词等。
每一个类里面包含的词数量可以固定,也可不固定,在不固定时,可按其词数量的多少分配其编号的位长,比如某一个类里面,有32个词,就分配5个二进制位,另一个类有6个词,就分配3个二进制位。
建立词的关联:
这也与前面印欧语系的处理类似。
对于一个句子中出现的词,其附近都可能会有词来修饰它,而修饰它的词数量是有限的,然后就可以利用这个原理达到压缩编码的目的;对于名词,一般有形容词,数词去修饰,对于动词,一般有副词形容词去修饰。对于词表里的某一词,比如(工程师),与其可能相关的词类可能是:动作,相貌,运动,表情等,然后就在词表里记录下词(工程师)与哪些词类相关。
对于有些词组合,也可如上法编入。
这样词数据表里的每个词的结构就如下:(本发明所称词数据表与词数据库是相同概念),这个词数据表与前述印欧语系里用的单词数据表的结构及功用类似:
‘男人’:词
011001100:频率编号
3:所属词类编号
7,8,10,9:相关词类编号
nan(2)ren(2):拼音
建立词的关联还有另外一种方式:即对应于每个词,都穷举罗列与其有关联的词(而不是词类);当然这样做的缺点是词的关联数据库会相当大。
汉韩日语一般没有词根的概念,但是单个的字类似于英语中的词根,可以统计所有可能的字的发音,然后建立一个库,在处理陌生词时使用。
编码的数据一般分成以下顺序排列的段:
头段:记录词数量,所用编码方式等信息。
词段:这段的数据是对词编码压缩后的数据,可解码成按句子原来顺序排列的全部词。
时态词形选择段:是对句子的词的词形选择。(此段可不用)
陌生词段:是先在词段里用111111作引导,这里再附具体的发音信息。
后调前段:是先在词段里用111作引导,这里再附往前调用的词的距离。
校验码段:用以对整个编码进行对误校验。(此段可选择不用)
以频率排序的编码方式:
这也与前面印欧语系的处理类似。
句子都是由词顺序组成的,对一个句子里的词,全部换成其使用频率编号,并且每个编码前都带一个2个二进制位的长度标志,以表示其频率编号的长度是3,6,9,12中的哪一个。然后
顺序排在一起即可。
举例:’这个男人是一个工程师’
00:’这个’词的频率编号长度
011:’这个’词的频率编号
10:’男人’词的频率编号长度
011001100:’男人’词的频率编号
01:’是’词的频率编号长度
010101:’是’词的频率编号
00:’一个’词的频率编号长度
110:’一个’词的频率编号
10:’工程师’词的频率编号长度
011101010:’工程师’词的频率编号
合起来这一句话的编码就是:0001110011001100010101010011010011101010
这里的频率编号可以是等长编号,阶梯编号,哈夫曼编号。如为等长编号,哈夫曼编号那其前面不用带编号长度。
如果这里使用等长编号,就不用带编号长度,并且这种编码是一种无压缩的编码方式。
以频率和关联混合的编码方式:
这也与前面印欧语系的处理类似。
这是对频率排序(阶梯编号)的编码方式的改进,由于完全用频率排序(阶梯编号)编码时,每个词前面需带2个二进制位以表示阶梯编号长度,如15个词的句子总共就要耗30个二进制位,占位较多;可以结合关联的方式进行改进。具体做法为:
先对句子里的所有词都转成阶梯编号并按原顺序排列,每个阶梯编号前不带长度字节,然后假如词段的二进制长度为84位,就在第21位,42位,63位处分别设点分节,在21位处向后查与最近的单个词阶梯编号结束的距离值记录下来(2个二进制位),并把分节点挪到这个阶梯编号结束处,对42,63位处如法处理,这样就将词段分成4节,每节长度大约为21位,在每节里可能有几个词,长度可能为3,6,9,12位,但是具体的第一个词占几位,第二个词占几位,还是未知的。但由于分节后位数较少,其排列组合情况较少,所以可以对其穷举,对于每种词长度可能情况都计算,计算这种长度可能情况时,对应的各词之间的相关性;因为在一个句子中紧排在一起的几个词或隔1,2个词的词,一般是互相有关联的,利用前述的词关联机制,计算节里的词关联度,然后比较每种分法的关联程度,取最相关的那种分法作为解出结果;当在编码时发现分节后有某节的歧义分法的关联度还大于原句子时,可调整节长度,如仍不行,就改另外的编码方法。
这种编码方案需每节设2个二进制位的偏移,如分4节,需3*2=6位二进制位,比30位节省了不少。
举例:’这个胖男人是一个工程师’。
01100共有多少个单位,3个bit一个单位(本例有3*12个bit)
01000021在is词的频率编号的中间,分节点挪到is词的频率编号末,并记录01,后
面两个长度没达到都是00,00
011:’这个’词的频率编号
011011:’胖’词的频率编号
011001100:’男人’词的频率编号
010101:’是’词的频率编号
|\分节处
110:’一个’词的频率编号
011101010:’工程师’词的频率编号
和起来编码是:011011011011001100010101110011101010
这样词段就分成两节:011011011011001100010101 110011101010
如对于后一段110011101010,可分解为7种情况:
110,011,101,010
110,011,101010
110,011101010
110,011101,010
110011101,010
110011,101,010
110011,101010
分别计算这7种情况的词相关度,相关程度最大的为解,比如前一词在后一词的关联类里,相关值加1,其计算标准自定,如某句符合标准而解出来又不是原句,此句可放弃这种编法。
这里除了可以定量地计算其关联值外,还可以利用排除方法,比如在程序里存储一些信息库,指示在某些词后面或前面不会出现某些词或词性,这样如果某种分解方式出现前后非法的搭配,即排除这种分法。
假设这种非法信息库里存有两条规则:1:两个冠词不能紧邻。2:不能前冠词后动词紧邻,编码时对于某分法,即可先排除有这两种情况的分法,然后再计算各分法的单词关联度,如按原句的分法的关联度是最大即编码成功。
对于其中有词组合的,可取其前后词,再与旁边的词计算关联度及判断是否非法。
这里的频率编号可以是阶梯编号。
以关联的编码方式:
这也与前面印欧语系的处理类似。
对于一个句子,先将其单词分成几层,下面一层词是对其紧邻的上面一层词的修饰,如某词其下面没有词修饰它,它就处于最上层。
下层的词,如果本身频率编号的长度很短,可以直接放在最高层。
对于包含较多单词的单词组合,由于一般没有与其它词的关联,直接放在最高层。
编码的前面是词的个数信息。
接着是分层信息,其中包含了各层个数信息,位置信息,所以不再需附加其它bit,即可正确解读。
接着顺序排出最高层的频率编号及其编码长度。
再顺序排出下一层词最上一层词的修饰偏移信息。
再顺序排出下一层词最上一层词的修饰偏移信息。
直至所有层排列完。
这里的频率编号可以是等长编号,阶梯编号,哈夫曼编号。如为等长编号,哈夫曼编号那其前面不用带编号长度。
整句差别式编码方式:
这也与前面印欧语系的处理类似。
先统计常用的句型,并做成数据库,对每句给个编号。然后在编句子时,在库中找到与其相似的句子,将那句的编号排前面,然后后面跟着删词信息和增词信息。
这里的频率编号可以是等长编号,阶梯编号,哈夫曼编号。如为等长编号,哈夫曼编号那其前面不用带编号长度。
后调前或前调后的编码方式:
这也与前面印欧语系的处理类似。
一般是在前几种编码后再处理。
当某词出现在前面句时,使用频率编号,而当紧邻一句又出现这词时,就可以将指针指到前面这词的位置,而不必用其较长的频率编号;具体可以在频率编号中占用一个111,当出现与前面句或本句前面或本句后面有相同的词时,就附上111,然后在整个编码的后面附5个bit表示当前位置与前面或后面词的距离。这种方式是可以与其他几种方式混合编码的。
陌生词处理:
这也与前面印欧语系的处理类似。
由于词表的数量总是有限的,所以随时会遇到陌生词,所以处理陌生词是必要的;陌生词的发音构成一般可看为几种:一种是几个常用单字拼合成的,比如(课程)由两个单字组成,一种可看作是由单个元辅音拼合的;
所以陌生词的处理可为,在词的频率编号中,留一个专用于指示有陌生词,比如111111,这个编码只出现在词段中,然后陌生词的具体编码附在后面,具体可分几种方式:
1:完全由其元辅音构成,开始4个bit表示元辅音个数,后面每个元辅音占6bit,声调与元辅音同处理。
2:主要由单字的发音组合构成,由于单字的发音只有有限几百个内,比如(班)和(搬)的发音完全相同,共用一个单字的语音;所以先建立所有可能的单字发音的语音库(并且有声调区别),并对各单字语音分别编号;这样陌生词的处理就是:开始4个bit表示词个数,后面每个词的编号占8bit(256个单字语音计)。
3:找与词数据库里的词相似读音的,然后记录与其读音差别(删增音);开始12bit是库里词的寻址地址,接着0,表示删,接着是删的起始位置,删几个元辅音;直到1,开始增,增的起始位置,增几个元辅音,元辅音的编码(6bit),直到0结束。
时态词型变化的处理:在汉韩日语里,一般没有词的时态变化及单复数变化,遇到需表示过去,将来等时态时,一般是附加一些词以表示时态,比如汉语中,要表示将来时态,句中一般会加有(将)这样的词。所以对时态的处理有两种方式:一是在编码时可以不考虑时态变化,附加的时态词作为平常词处理。二是因为有些时态变化是在动词后面附词,有点类似于英语的词形变化(词后缀变化),所以可以使用前述的印欧语系的时态词型选择机制。
下面举一个较完整的例子:
句子为:’这个年轻漂亮男人是一个年轻工程师’
依照上述汉韩日语编码方式,分开编码是:
00 汉语语种
00 使用第1种编码方式(频率编码)
00101:词个数(6个)
00:’这个’词的频率编号长度
011:’这个’词的频率编号
10:’年轻’词的频率编号长度
010110110:’年轻’词的频率编号
01:111111的频率编号长度
111111:表示这是陌生词编码(handsome)
10:’男人’词的频率编号长度
011001100:’男人’词的频率编号
01:’是’词的频率编号长度
010101:’是’词的频率编号
00:’一个’词的频率编号长度
110:’一个’词的频率编号
00:111的长度,后调前
111:后调前词的标志
10:’工程师’词的频率编号长度
011101010:’工程师’词的频率编号
01 陌生词的编码种类(单字发音组合)
01 单字个数(2个)
0100101100 单字’漂’读音在拼音表里的顺序编号
0010111001 单字’亮’读音在拼音表里的顺序编号
0 往前调词标志(如往后调为1)
0101 往前数第5个(‘年轻’)
组合起来码的数据为:
000000101000111001011011001111111100110011000101010100110001111001110101001010100101100001011100100101
这里的频率编号可以是等长编号,阶梯编号,哈夫曼编号。如为等长编号或哈夫曼编号那其前面不用带编号长度。
如果这里使用等长编号,就不用带编号长度,并且这种编码是一种无压缩的编码方式。
印欧语系的mcu解码方式:
以下举例是用的英语。
在解码时,首先在存储器器里需存储与编码时所使用的数据一样或兼容的数据库,再使用与编码时所用编码规则对应的解码规则来进行解码。
按常规一个码字,可能含有几句。一般以一个句子作为一个处理单位(包括头段,词段,时态词形选择段,陌生词段,后调前段),但也可把多句作为一个处理单位,这时需将定义一个码字作为断句的标志;编码也可以在一句的中间结束。下面以一整句作为一个处理单位。
每句的编码可以看作含有:头段,词段,时态词形选择段,陌生词段,后调前段。
先读取头段含的信息:本句是什么语种,所用编码是何格式,也可带单词数量信息(但不必须),每一信息固定分配几个位。
接下来是词段,按其使用的编码格式而使用不同的解码方式(相关的数据结构参见前面编码时的介绍):
a:频率编号方式,先是取5个bit的单词个数信息,然后只需顺序取出各单词的信息,先是此单词的频率编号长度,根据长度,取此单词的频率编号,查表转换成其音标,然后再取下一个词,直到到取完单词为止。
例:
00101:单词个数(5个)
00:the词的频率编号长度
010:the词的频率编号
10:man词的频率编号长度
011100100:man词的频率编号
01:is词的频率编号长度
010110:is词的频率编号
00:a词的频率编号长度
101:a词的频率编号
10:engineer词的频率编号长度
010110010:engineer词的频率编号
第1步解码结果是:010 011100100 010110 101 010110010
查单词数据表,最后解码结果顺序为(音标):
’the’词的音标
’man’词的音标
’is’词的音标
’a’词的音标
’engineer’词的音标
b:频率关联混合方式:先读取5个bit的词段长度信息,再读取是用那种间隔方式(即分成几段),然后读取每个分节处的偏移信息,得出实际的分节点,再对各节,排出各种单词组合,根据组句规则排除一些单词组合,再对余下组合计算其单词之间的关联度,取关联度最大的为解码值。
举例:
编码是:010001011011100100010110101010110010
01100 有效bit长度,3个bit一个单位(本例有3*12个bit)
010000 21在is词的频率编号的中间,分节点挪到is词的频率编号末,并记录01,后
面两个长度没达到都是00
010:the词的频率编号
001011:fat词的频率编号
011100100:man词的频率编号
010110:is词的频率编号
|\分节处
101:a词的频率编号
010110010:engineer词的频率编号
第1次分节:010001011011100100010,110101010110010
第2次根据010000值对节进行修正:010001011011100100010110,101010110010
如对于后一段101010110010,可分解为7种情况:
101,010,110,010
101,010,110010
101,010110010
101,010110,010
101010110,010
101010,110,010
101010,110010
分别计算这7种情况的词相关度,相关程度最大的为解,比如前一词在后一词的关联类里,相关值加1。
这里除了可以定量地计算其关联值外,还可以利用排除方法,比如在程序里存储一些信息库,指示在某些词后面或前面不会出现某些词或词性,这样如果某种分解方式出现前后非法的搭配,即排除这种分法。
假设这种非法信息库里存有两条规则:1:两个冠词不能紧邻。2:不能前冠词后动词紧邻,解码时,先处理第1节,对于某分法,到后面词形变换信息那里取词形数据得各词的词性,然后先排除有这两种非法情况的分法,然后再计算此分法的各单词关联度,关联度最大的即为第1节的解;接着处理后面节直至处理完。
对于其中有词组合的,可取其前后词,再与旁边的词计算关联度及判断是否非法。
结果两节分别分解成:
010 001011 011100100 010110
101 010110010
查单词数据表,将这些频率编码转为音素(音标),顺序读出音来,就是这句’thefat man is a engineer’的语音。
c:关联方式:先读取句中含的单词个数的信息,再读取分层的信息,这段信息的长度与单词个数相等,bit为0表示处于第1层,bit为1表示处于第2层(如是4层需两个bit),而且从这些个bit可以看见总句子某个位置的单词是处于某层词的第几个,以及每层各共有多少词。由第1层词的个数顺序取出第1层词(每词都先频率编号长度,再频率编号),接着读取第2层词的信息,这层每词的信息包含:是上层第几个词的修饰,属于其第几个关联类,本词在关联类中的编号;顺序读取完第2层词,如还有下层的,继续此步骤。
d:整句差别式编码方式:先读取出本句在一千句范句中的寻址地址值,接着读取出是删词标志,及从哪个开始删,删几个,再重复此删词过程,直到接着读取的是增词标志,再读取从第几词开始增,增几个,增的词的频率编号,重复增词至读取到结束标志止。
例:
000010010100000100110000101010010100110100101010101010010110
分行写:
0000100101:本句在1千句中的寻址地址值(固定10个bit)
0:删词标志
00001:从第2个词开始删(如为11111,就结束编码)
001:删1个(一次删增数限制8个内或4个内等)
1:增词标志
00001:从第2个词开始增
010:增1个词(young)
10:单词young的频率编号长度
010100110:单词young的频率编号
1:增词标志
00101:从第6个词开始增
010:增1个词(good)
10:单词good的频率编号长度
101001011:单词good的频率编号
0:再遇0,结束编码
在范句库里第0000100101句(第37句)是:the fat man is a engineer。
第1次删操作后,得:the man is a engineer
第2次作增操作后,得:the young man is a engineer
第3次作增操作后,得:the young man is a good engineer
即为结果。
前调后或后调前方式,一般与前面其它编码方式结合使用,比如与频率编号方式合用,先按频率解码方式解出词段,其中某词为111,即表示此词是前调后或后调前方式,然后等到后面的信息进一步处理。
接下来是时态词形选择段:解出前面的词段以后,依次查每个词在单词数据库里的变形个数(或没有),确定这词带的词形选择长度是没有,还是1位,两位(含3个或4个词形变化就占2bit),然后依次在时态词形选择段里读取选择变化信息,对解出的单词做其词形替换即可。
例:the man is a engineer。
其中the一词没词形变化,所以词形选择段的数据为:
0 man词的词形选择(在单词数据库里有man,mans共两个变化,用1bit)
01 is词的词形选择(be,is,been共三个变化,用2bit)
0 a词的词形选择(a,an共两个变化,用1bit)
0 engineer词的词形选择(engineer,engineers共两个变化,用1bit)
当在词段中解出111111,表示是陌生词,接下来的段是陌生词信息段顺序排列,每个陌生词的信息包括此词的编码种类(音标组合,词根发音组合,差别式,短单词发音组合),音标个数或词根个数或短单词个数,接着字节表示其由哪些音标或词根或短单词组合而成。
再接下来是前后调用的信息段,当词段里出现111的词时,就要到这段顺序读,每个前后调的具体信息包括往前(后)调的词的相对位置,词形变化。
以上的字节数据读取采用顺序读取即可,前面处理完,前面解出的数据又是后面段解码的基础。到一句解完,本句数据也读取完。再后面的数据就是后面一句的数据,可继续用此步骤解下面一句的码。
解码完后,顺序发出音素,即是一句话的发音。
下面举一个较完整的例子:
原话是:the handsome man is a engineer。
码的数据为:
00000010100010011111111001110010001010110001011001011001000100010101001011000010111001
分开看是:
00 英语语种
00 使用第1种编码方式(频率编码)
00101:单词个数(6个)
00:the词的频率编号长度
010:the词的频率编号
01:111111的频率编号长度
111111:表示这是陌生词编码(handsome)
10:man词的频率编号长度
011100100:man词的频率编号
01:is词的频率编号长度
010110:is词的频率编号
00:a词的频率编号长度
101:a词的频率编号
10:engineer词的频率编号长度
010110010:engineer词的频率编号
0 man词的词形选择(在单词数据库里有man,mans共两个变化,用1bit)
0 1is词的词形选择(be,is,been共三个变化,用2bit)
0 a词的词形选择(a,an共两个变化,用1bit)
0 engineer词的词形选择(engineer,engineers共两个变化,用1bit)
01 陌生词的编码种类(词根组合)
01 词根个数(2个)
0100101100 词根hand在词根表里的顺序编号
0010111001 词根some在词根表里的顺序编号
依照上述解码步骤,
第1步解码结果是:010 111111 011100100 010110 101 010110010
查单词数据表,最后解码结果顺序为(音标):
’the’词的音标
’hand’的音标
’some’的音标
’man’词的音标
’is’词的音标
’a’词的音标
’engineer’词的音标
解码完后,顺序发出音素,即是一句话的发音。
非印欧语系里的汉韩日语的mcu解码方式:
以下举例是用的汉语。
在解码时,首先在存储器器里需存储与编码时所使用的数据一样或兼容的数据库,再使用与编码时所用编码规则对应的解码规则来进行解码。
按常规一个码字,可能含有几句。一般以一个句子作为一个处理单位(包括头段,词段,陌生词段,后调前段),但也可把多句作为一个处理单位,这时需将定义一个码字作为断句的标志;编码也可以在一句的中间结束。下面以一整句作为一个处理单位。
每句的编码可以看作含有:头段,词段,陌生词段,后调前段。
先读取头段含的信息:本句是什么语种,所用编码是何格式,也可带单词数量信息(但不必须),每一信息固定分配几个位。
接下来是词段,按其使用的编码格式而使用不同的解码方式(相关的数据结构参见前面编码时的介绍):
a:频率编号方式,先是读取5个bit的词个数信息,然后只需顺序读取出各词的信息,先是此词的频率编号长度,根据长度,取此词的频率编号,查词数据表转换成其发音,然后再读取下一个词,直到取完词为止。
举例:
00101:词个数(5个)
00:’这个’词的频率编号长度
011:’这个’词的频率编号
10:’男人’词的频率编号长度
011001100:’男人’词的频率编号
01:’是’词的频率编号长度
010101:’是’词的频率编号
00:’一个’词的频率编号长度
110:’一个’词的频率编号
10:’工程师’词的频率编号长度
011101010:’工程师’词的频率编号
第1步解码结果是:011 011001100 010101 110 011101010
第2步转成音素(拼音):zhe(4)ge(4)nan(2)ren(2)shi(4)yi(1)ge(4)gong(1)cheng(2)shi(1)
(括号内是音调)
b:频率关联混合方式:先读取5个bit的词段长度信息,再读取是用那种间隔方式(即分成几段),然后读取每个分节处的偏移信息,得出实际的分节点,再对各节,排出各种单词组合,根据组句规则排除一些单词组合,再对余下组合计算其单词之间的关联度,取关联度最大的为解码值。
举例:
编码是:011011011011001100010101110011101010
01100 共有多少个单位,3个bit一个单位(本例有3*12个bit)
010000 21在is词的频率编号的中间,分节点挪到is词的频率编号末,并记录01,后
面两个长度没达到都是00,00
011:’这个’词的频率编号
011011:’胖’词的频率编号
011001100:’男人’词的频率编号
010101:’是’词的频率编号
|\分节处
110:’一个’词的频率编号
011101010:’工程师’词的频率编号
第1次分节:011011011011001100010 101110011101010
第2次根据010000值对节进行修正:011011011011001100010101 110011101010
如对于后一段110011101010,可分解为7种情况:
110,011,101,010
110,011,101010
110,011101010
110,011101,010
110011101,010
110011,101,010
110011,101010
分别计算这7种情况的词相关度,相关程度最大的为解,比如前一词在后一词的关联类里,相关值加1。
这里除了可以定量地计算其关联值外,还可以利用排除方法,比如在程序里存储一些信息库,指示在某些词后面或前面不会出现某些词或词性,这样如果某种分解方式出现前后非法的搭配,即排除这种分法。
假设这种非法信息库里存有两条规则:1:两个冠词不能紧邻。2:不能前冠词后动词紧邻,解码时,先处理第1节,对于某分法,先排除有这两种非法情况的分法,然后再计算此分法的各单词关联度,关联度最大的即为第1节的解;接着处理后面节直至处理完。
对于其中有词组合的,可取其前后词,再与旁边的词计算关联度及判断是否非法。
结果两节分别分解成:
011 011011 011001100 010101
110 011101010
查词数据表,将这些频率编码转为音素(拼音),顺序读出音来,就是这句’这个胖男男人是一个工程师’的语音。
c:关联方式:先读取句中含的单词个数的信息,再读取分层的信息,这段信息的长度与单词个数相等,bit为0表示处于第1层,bit为1表示处于第2层(如是4层需两个bit),而且从这些个bit可以看见总句子某个位置的单词是处于某层词的第几个,以及每层各共有多少词。由第1层词的个数顺序取出第1层词(每词都先频率编号长度,再频率编号),接着读取第2层词的信息,这层每词的信息包含:是上层第几个词的修饰,属于其第几个关联类,本词在关联类中的编号;顺序读取完第2层词,如还有下层的,继续此步骤。
d:整句差别式编码方式:先读出本句在一千句范句中的寻址地址值,接着读取的是删词标志,及从哪个开始删,删几个,再重复此删词过程,直到接着读取的是增词标志,再读取从第几词开始增,增几个,增的词的频率编号,重复增词至读取出结束标志止。
例:
0000100101000001001000100001100001010010110110
分行写:
0000100101:本句在1千句中的寻址地址值(固定10个bit)
0:删词标志
00001:从第2个词开始删(如为11111,就结束编码)
001:删1个(一次删增数限制8个内或4个内等)
0:删词标志
00100:从第6个词开始删(如为11111,就结束编码)
001:删1个(一次删增数限制8个内或4个内等)
1:增词标志
00001:从第2个词开始增
001:增1个词’胖’
01:词’胖’的频率编号长度
011011:词’胖’的频率编号
0:再遇0,结束编码
在范句库里第0000100101句(第37句)是:这个高男人是一个好工程师。
第1次删操作后,得:这个男人是一个好工程师。
第2次作删操作后,得:这个男人是一个工程师。
第3次作增操作后,得:这个胖男人是一个工程师。
即为结果。
前调后或后调前方式,一般与前面其它编码方式结合使用,比如与频率编号方式合用,先按频率解码方式解出词段,其中某词为111,即表示此词是前调后或后调前方式,然后等到后面的信息进一步处理。
汉韩日语一般不设时态词形选择段。
当在词段中解出111111,表示是陌生词,接下来的段是陌生词信息段顺序排列,每个陌生词的信息包括此词的编码种类(元辅音组合,单字发音组合,差别式),元辅音或单字个数,接着字节表示其由哪些元辅音或单字组合而成。
再接下来是前后调用的信息段,当词段里出现111的词时,就要到这段顺序读,每个前后调的具体信息包括往前(后)调的词的相对位置,词形变化。
以上的字节数据读取采用顺序读取即可,前面处理完,前面解出的数据又是后面段解码的基础。到一句解完,本句数据也读取完。再后面的数据就是后面一句的数据,可继续用此步骤解下面一句的码。
下面举一个较完整的例子:
句子原话:’这个漂亮男人是一个工程师’
码的数据为:
00000010100010011111111001110010001010110001011001011001000100010101001011000010111001
分开看是:
00 汉语语种
00 使用第1种编码方式(频率编码)
00101:词个数(6个)
00:’这个’词的频率编号长度
011:’这个’词的频率编号
01:111111的频率编号长度
111111:表示这是陌生词编码(handsome)
10:’男人’词的频率编号长度
011001100:’男人’词的频率编号
01:’是’词的频率编号长度
010101:’是’词的频率编号
00:’一个’词的频率编号长度
110:’一个’词的频率编号
10:’工程师’词的频率编号长度
011101010:’工程师’词的频率编号
01 陌生词的编码种类(单字发音组合)
01 单字个数(2个)
0100101100 单字’漂’读音在拼音表里的顺序编号
0010111001 单字’亮’读音在拼音表里的顺序编号
依照上述解码步骤,
第1步解码结果是:011 111111 011001100 010101 110 011101010
查词数据表,最后解码结果为(拼音):
zhe(4)ge(4)piao(4)liang(4)nan(2)ren(2)shi(4)yi(1)ge(4)gong(1)cheng(2)shi(1)
解码完后,顺序发出音素(拼音),即是一句话的发音。
关于所使用的码字的形式:
一:使用一维条形码,一般一个码至多可表示15个左右十进制位,转换成二进制约有50个二进制位,位数较少,所以一般只适于表示短的句子;其识读设备可使用光笔或ccd扫描器。
二:使用二维条形码,一般可使用行排式二维条码,如果是两排的话,就可表示到100个二进制位以上,即可正常表示一般难度的句子;其识读设备可使用线性ccd扫描器,使用时需沿垂直方向拖动扫描器。
三:使用本发明人在另一个专利里申请的导电码,一般每个码能表示100个以上的二进制位,可正常表示一般难度的句子;其识读设备使用本发明人在前述专利里申请的专用导电码识读器。
四:使用其它图形码,磁码一类的码字。
所使用的码字的特点:
其包含的数据信息是按前面所述的压缩规则中的一种或几种来作压缩组合的。
导电码表示码值一般是简单的形式,每个伸脚表示那bit的值,如有伸脚,表示为1,如没有伸脚,表示为0。
条形码到二进制的翻译:
一般条形码的码制是表示10个十进制,或者表示几十个ascii码,可以建表将各ascii码按二进制值顺序编号,即建立了条形码与二进制值的对应关系,以用于编码,解码。
码字的位置是在读物(书)的各页页面上的,并且一本书里可以有几种不同的语种,码字的前面一般带有表示是哪个语种的信息。
所使用的拾音器的结构,特点:
所使用的硬件,包括读码头,存储器,mcu,发声部件,按键等。
读码头是用于读取书页上的数据信息的,可以是光电式读取头读取条码,也可以是本发明人发明的导电码识读器读取导电码,或其它的读入方式,其读入的数据不是整句语音数据的地址信息,而是语音音素的压缩拼合信息,这些读入数据是按前面所述的压缩规则中的一种或几种来作压缩组合的。
存储器,包括数据存储器,语音数据存储器和程序存储器。数据存储器主要用来存储单词数据库,常用句型,单词分类数据,单词关联规则等。语音数据存储器主要用于存储音标,词根前后缀等的发音数据等。程序存储器主要存储的是程序,用于整机的控制,发音,以及对读码头读入数据的解码,其解码的程序,是按前面所述的压缩规则来对读入的数据进行解码的。存储器可以是单片机内存储器,当容量不够时,可外接存储器。
也可以把拾音器做成一个拾音器可以读几个语种,比如既可读英语也可读汉语,这时在存储器里需有几个语种的分类关联等数据及语音数据,mcu可以对各语种分别解码,而码字的前面一般带有表示是哪个语种的信息。
mcu,是对整机的读码,解码,发音等的主控。
发音部件用于将语音数据转换成语音,并且可根据情况加音量放大电路。
一般情况下,需有按键回路。
如附图1,是一个拾音器的实施例,其读码头使用光笔,主MCU芯片3是SNC5A9,其配有24个IO脚,双通道语音功能,384K*10BIT的数据语音存储器。光笔是成熟共知技术,利用其光电原理读出码的黑白条空值,这里给出的是一个参考电路。所读的码除了可以是导电码外,也可以是条码。
D1是发光二极管照射码字,D2是光敏二极管,用于感受码字回来的光,01运放是信号的第1级放大,02运放组成滞回比较器,用于信号整形成方波输出,其中Rx的阻值可以调节,D4,D5是稳压管,Qb组成开关回路,提供适合MCU读取的方波输出。这个实施例,将解码的工作放在MCU里面进行,光笔的输出在Out那里是方波输出,其波形的高低宽度与码的条空比宽度是一致的,这样就可以在MCU里记录从P12口进来的波形的每个波峰的高电平持续时间及低电平持续时间,即可得到码的码线的0,1原始码值,然后根据码的相应的编码规则,用软件解出其最后码值来;对高低电平持续时间的计时可使用MCU的中断来做。
按单片机技术公知惯例可知,这里SNC5A9的内存储器足够大,所以用于音码拼合解码的单词表,单词分类数据以及音码语音数据等都可放入SNC5A9片内,解码程序也可放片内,可由SNC5A9的CPU调解码程序及数据执行音码拼合解码及发音处理。
关于导电码及其拾音器的发明内容,请见本发明人申请的另一项发明申请“一种有声读物及其拾音器”。
另,用作码字承载物的读物除了如前述可是书外,还可以是印有图文的卡片或报纸杂志,读物上的码字供拾音器读取。(这里‘卡片或报纸杂志’不要求优先权,相应的第23,47项权利要求也不要求优先权;‘书’要求优先权,优先权申请文件有记载)
另外,有一个技术点(不要求优先权,相应的第46项权利要求也不要求优先权):当某读物A的码字的音码拼合编码规则及编码数据库与一种拾音器B的音码拼合解码规则及解码数据库是配套的时,两者是可以正常使用发音的,就如本说明书前面所述;然后另有别的读物C,其码字的音码拼合编码规则及编码数据库与读物A的码字的音码拼合编码规则及编码数据库相同或兼容的话,也是可以使用这种拾音器B读取读物C的;然后再有拾音器D,其音码拼合解码规则及解码数据库与拾音器B的音码拼合解码规则及解码数据库相同或兼容的话,那拾音器D也可以读取读物A和读物C;也就是说,只要使用相同的音码拼合编解码规则及编解码数据库,就能实现读物与拾音器的任意通读使用,并且还可以做到拾音器不用换数据卡,因为如说明书前面述,只需有限个的音标及词根(对汉语来说是所有可能的字发音)就可表示任意陌生词的发音,如果再加一些有限个常用词,即可将这些数据装入一个拾音器里,就可读取任意句子的码字,并正确地拼合出句子的发音来,所以就可做到拾音器不用换数据卡就可解读任意读物(当然要求读物的码的音码拼合编码规则及编码数据与拾音器配套),而要做到这点,对拾音器来说,对其读码头并没限制,如果读物采用的是条码,那读码头用各种光电式条码读码头都可,如果读物采用的是导电码,那读码头用光电式或导电码式读码头都可,只需读码头读入的各读物的码值的音码拼合编码规则及编码数据是统一或兼容的并与拾音器配套,即可做到拾音器不用换数据卡就可解读任意读物,及任意读物都可由具有与其编码配套的同样音码拼合解码规则及解码数据的不同型号的拾音器解读;即只要各出版社编码使用统一的音码拼合编码规则及数据,各拾音器生产厂使用同样的音码拼合解码规则及数据,并且音码拼合编码规则数据与解码规则数据是配套的,那么就可实现各出版社的书籍与各型号的拾音器任意搭配使用。并且如拾音器使用光电式读码头的话,那它还可做成既可读条码,又可读导电码,读入的值,用同样一套音码拼合解码规则及解码数据进行解码发音。
Claims (47)
1.一种语音编码有声读物,其主体为普通的读物,读物页面上在需要按某种语言发声的地方***字,这种码字可被相应拾音器的读码头读取以发音,其特征在于:所述码字的值所表示的信息不是单句语音的地址,而是用于拼合成一整语句或部分语句或多语句发音的音码的拼合信息;所述码字的值所表示的音码的拼合是按照某种编码规则的。
2.根据权利要求1所述的语音编码有声读物,其特征在于:
所述的编码规则是有压缩处理的。
3.根据权利要求2所述的语音编码有声读物,其特征在于:
所述的语言可以是属于印欧语系的语种;所述的音码,可以表示或转化为发音,使用多个音码的拼合可组合成句子的发音。
4.根据权利要求3所述的语音编码有声读物,其特征在于:
所述的语言可以是英语,法语,德语,俄语;所述的音码可以是表示发音的音标或音标组合代码,或者是可以转换成发音的词根,单词,单词组合或句子;所述音码的拼合可以是音标,音标组合代码,词根,单词或单词组合中的任意数种的拼合,也可以是句子与音标,音标组合代码,词根,单词或单词组合中的任意数种的拼合;所述音码,在做拼合时,音码可用与其相对应的编号表示。
5.根据权利要求4所述的语音编码有声读物,其特征在于:
所述音码,同样一个音码可以用于不同语句的拼合发音。
6.根据权利要求2所述的语音编码有声读物,其特征在于:
所述的语言可以是属于非印欧语系的语种;所述的音码,可以表示或转化为发音,使用多个音码的拼合可组合成句子的发音。
7.根据权利要求6所述的语音编码有声读物,其特征在于:
所述的语言可以是汉语,韩语,日语;所述的音码可以是表示发音的元音,辅音或元辅音组合代码,或者是可以转换成发音的字,词,词组合或句子;所述音码的拼合可以是元音,辅音,元辅音组合代码,字,词或词组合中的任意数种的拼合,也可以是句子与元音,辅音,元辅音组合代码,字,词或词组合中的任意数种的拼合;所述音码,在做拼合时,音码可用与其相对应的编号表示;所述音码,同样一个音码可以用于不同语句的拼合发音。
8.根据权利要求5所述的语音编码有声读物,其特征在于:
所述的压缩编码方式可以是频率排序方式,其编码前提需有对常用单词或单词组合按其日常使用频率赋频率编号,使用频率高的赋短编号,使用频率低的赋长编号;采用频率排序编码方式,即将单词或单词组合简单换成其频率编号,如频率编号是阶梯编号则每个频率编号前带有频率编号长度,再依次排起来。
9.根据权利要求5所述的语音编码有声读物,其特征在于:
所述的压缩编码方式可以是频率关联混合方式,其编码前提需有对常用单词或单词组合按其日常使用频率赋频率编号,使用频率高的赋短编号,使用频率低的赋长编号,且频率编号是阶梯编号,另还需有对各单词建立其与其它单词的关联关系,另还需有建立单词的非法搭配数据库;采用频率关联编码方式,即将单词或单词组合简单换成其频率编号,每个频率编号前不带频率编号长度,再依次排起来,再按一种预定方式分节,记录单词在分节处的偏移,对每节内的编号穷举其单词组合可能,排除不可能的,计算剩余的组合可能的关联度,如关联度最大的组合正好是本句单词,则编码成功,否则可调节分节的节长,再不行可选用其它编码方式。
10.根据权利要求5所述的语音编码有声读物,其特征在于:
所述的压缩编码方式可以是关联式,其编码前提需有对常用单词或单词组合按其日常使用频率赋频率编号,使用频率高的赋短编号,使用频率低的赋长编号,另还需有对各单词建立其与其它单词的关联关系;对于一个句子,先将其单词分成几层,下面一层词是对其紧邻的上面一层词的修饰,编码的最前面是单词个数及分层信息,表示各层有多少词,每个位置的词属于哪层,然后从最高层始按层排词,最高层排各词的频率编号,下几层排分别对其上层的关联信息。
11.根据权利要求5所述的语音编码有声读物,其特征在于:
所述的压缩编码方式可以是整句差别式,其编码前提需有对常用单词或单词组合按其日常使用频率赋频率编号,使用频率高的赋短编号,使用频率低的赋长编号,另还需把平常的常用句型集中做成数据库,各句顺序编号;编码时,在句子库中寻找与需编码句相似的句子,在编码的最前面即是数据库中相似的句子的顺序编号,然后后面附带删除词的位置及个数,增加词的位置及其频率编号。
12.根据权利要求8,9,10或11所述的语音编码有声读物,其特征在于:
所述的编码规则,是可以处理时态的变化,各单词的时态变化信息存储在单词数据库里,编码时,顺序看各词,查其处于在单词数据库里的时态顺序,将序号附在后面,本来就没有时态的则不占BIT;所述的编码规则,是可以处理陌生词,先建立词根前后缀音标的数据库,并对各词根前后缀音标分别编号,编码时,遇到陌生词,就以一个特殊码字代替,然后在后面陌生词段用词根前后缀及音标的编号混合表示陌生词。
13.根据权利要求7所述的语音编码有声读物,其特征在于:
所述的压缩编码方式可以是频率排序方式,其编码前提需有对常用词或词组合按其日常使用频率赋频率编号,使用频率高的赋短编号,使用频率低的赋长编号;采用频率排序编码方式,即将词或词组合简单换成其频率编号,如频率编号是阶梯编号则每个频率编号前带有频率编号长度,再依次排起来。
14.根据权利要求7所述的语音编码有声读物,其特征在于:
所述的压缩编码方式可以是频率关联混合方式,其编码前提需有对常用词或词组合按其日常使用频率赋频率编号,使用频率高的赋短编号,使用频率低的赋长编号,且频率编号是阶梯编号,另还需对各词建立其与其它词的关联关系,另还需建立词的非法搭配数据库;采用频率关联编码方式,即将词或词组合简单换成其频率编号,每个频率编号前不带频率编号长度,再依次排起来,再按一种预定方式分节,记录词在分节处的偏移,对每节内的编号穷举其词组合可能,排除不可能的,计算剩余的组合可能的关联度,如关联度最大的组合正好是本句词,则编码成功,否则可调节分节的节长,再不行可选用其它编码方式。
15.根据权利要求7所述的语音编码有声读物,其特征在于:
所述的压缩编码方式可以是关联式,其编码前提需有对常用词或词组合按其日常使用频率赋频率编号,使用频率高的赋短编号,使用频率低的赋长编号,另还需对各词建立其与其它词的关联关系;对于一个句子,先将其词分成几层,下面一层词是对其紧邻的上面一层词的修饰,编码的最前面是词个数及分层信息,表示各层有多少词,每个位置的词属于哪层,然后从最高层始按层排词,最高层排各词的频率编号,下几层排分别对其上层的关联信息。
16.根据权利要求7所述的语音编码有声读物,其特征在于:
所述的压缩编码方式可以是整句差别式,其编码前提需有对常用词或词组合按其日常使用频率赋频率编号,使用频率高的赋短编号,使用频率低的赋长编号,另还需把平常的常用句型集中做成数据库,各句顺序编号;编码时,在库中寻找与需编码句相似的句子,在编码的最前面即是数据库中相似的句子的顺序编号,然后后面附带删除词的位置及个数,增加词的位置及其频率编号。
17.根据权利要求13,14,15或16所述的语音编码有声读物,其特征在于:
所述的编码规则,是可以处理陌生词,先建立字所有可能发音的数据库,并对库中各字发音分别编号,编码时,遇到陌生词,就以一个特殊码字代替,然后在后面陌生词段用数据库中的字的发音的编号来组合表示陌生词。
18.据权利要求12所述的语音编码有声读物,其特征在于:
所述读物作为码字载体,此读物可以是书;所述码字是导电码,可以供导电码读码头读取,其码值是表示语音编码值的。
19.据权利要求17所述的语音编码有声读物,其特征在于:
所述读物作为码字载体,此读物可以是书;所述码字是导电码,可以供导电码读码头读取,其码值是表示语音编码值的。
20.据权利要求1,2,3,4,5,6,7,8,9,10,11,13,14,15或16所述的语音编码有声读物,其特征在于:
所述读物作为码字载体,此读物可以是书;所述码字是导电码,可以供导电码读码头读取,其码值是表示语音编码值的。
21.据权利要求1,2,3,4,5,6,7,8,9,10,11,13,14,15或16所述的语音编码有声读物,其特征在于:
所述读物作为码字载体,此读物可以是书;所述码字是条形码,可以供光电读码头读取,通过相应转换使条形码的码制来表示语音编码值的二进制码。
22.据权利要求1,2,3,4,5,6,7,8,9,10,11,13,14,15或16所述的语音编码有声读物,其特征在于:
所述读物作为码字载体,此读物可以是书;所述码字是图形码,可以供光电读码头读取,通过相应转换使图形码的码制来表示语音编码值的二进制码;或者所述码字是磁码,可以供磁读码头读取。
23.根据权利要求1,2,3,4,5,6,7,8,9,10,11,13,14,15或16所述的语音编码有声读物,其特征在于:
所述的读物作为码字载体,此读物可以是印有图文的卡片或报纸杂志。
24.一种与语音编码有声读物配合使用发声的拾音器,包括读码头,发音器件,另还包括有单片机芯片作为主处理芯片,读码头用于读取读物页面上的码字,单片机芯片取得读码头读得的码值,使发音器件发声,其特征在于:
所述码字的值所表示的信息不是某种语言单句语音的地址,而是用于拼合成某种语言一整语句或部分语句或多语句发音的音码的拼合信息;所述码字的值所表示的音码的拼合是按照某种编码规则的,所述单片机芯片是按与音码拼合的编码规则相对应的解码规则来对读入的码数据执行解码的。
25.根据权利要求24所述的拾音器,其特征在于:
所述的编码规则是有压缩处理的;所述单片机芯片执行解码是有压缩解码处理的。
26.根据权利要求25所述的拾音器,其特征在于:
所述的语言可以是属于印欧语系的语种;所述的音码,可以表示或转化为发音,使用多个音码的拼合可组合成句子的发音;所述拾音器,有存储器用于存储解码数据,存储器可以是在单片机芯片内部的,或是单片机片外加的存储器。
27.根据权利要求26所述的拾音器,其特征在于:
所述语言可以是英语,法语,德语,俄语;所述单片机芯片解码时涉及的音码,及片内或片外存储器存储涉及的音码,可以是表示发音的音标或音标组合代码,或者是可以转换成发音的词根,单词,单词组合或句子,并且与编码时对音码的定义方式相同或兼容;对于用于组合成音码发音的语音,将其录音后存入存储器;所述音码的拼合可以是音标,音标组合代码,词根,单词或单词组合中的任意数种的拼合,也可以是句子与音标,音标组合代码,词根,单词或单词组合中的任意数种的拼合;所述音码,在做编码拼合时,音码可用与其相对应的编号表示。
28.根据权利要求27所述的拾音器,其特征在于:
所述的编码规则可含有一种或几种针对不同需要的压缩编码方式,所述单片机芯片执行解码,可含有一种或几种针对不同压缩编码方式的压缩解码方式;所述音码,同样一个音码可以用于不同语句的拼合发音。
29.根据权利要求25所述的拾音器,其特征在于:
所述的语言可以是属于非印欧语系的语种;所述的音码,可以表示或转化为发音,使用多个音码的拼合可组合成句子的发音;所述拾音器,有存储器用于存储解码数据,存储器可以是在单片机芯片内部的,或是单片机片外加的存储器。
30.根据权利要求29所述的拾音器,其特征在于:
所述语言可以是汉语,韩语,日语;所述单片机芯片解码时涉及的音码,及片内或片外存储器存储涉及的音码,可以是表示发音的元音,辅音或元辅音组合代码,或者是可以转换成发音的字,词,词组合或句子,并且与编码时对音码的定义方式相同或兼容;对于用于组合成音码发音的语音,将其录音后存入存储器;所述音码的拼合可以是元音,辅音,元辅音组合代码,字,词或词组合中的任意数种的拼合,也可以是句子与元音,辅音,元辅音组合代码,字,词或词组合中的任意数种的拼合;所述音码,在做编码拼合时,音码可用与其相对应的编号表示;所述的编码规则可含有一种或几种针对不同需要的压缩编码方式,所述单片机芯片执行解码,可含有一种或几种针对不同压缩编码方式的压缩解码方式;所述音码,同样一个音码可以用于不同语句的拼合发音。
31.根据权利要求28所述的拾音器,其特征在于:
所述的压缩解码方式可以是频率排序方式,其解码前提需有在存储器里建立频率编号与常用单词或单词组合的对应关系,对常用单词或单词组合按其日常使用频率赋频率编号,使用频率高的赋短编号,使用频率低的赋长编号,编号的数据与编码时采用的数据是相同或兼容的;采用频率排序解码方式,即将频率编号简单换成其单词或单词组合,再依次排起来。
32.根据权利要求28所述的拾音器,其特征在于:
所述的压缩解码方式可以是频率关联混合方式,其解码前提需有在存储器里建立频率编号与常用单词或单词组合的对应关系,对常用单词或单词组合按其日常使用频率赋频率编号,使用频率高的赋短编号,使用频率低的赋长编号,且频率编号是阶梯编号,编号的数据与编码时采用的数据是相同或兼容的,另还需在存储器里对各单词建立其与其它单词的关联关系,这些关联关系数据与编码时采用的关联关系数据是相同或兼容的,另还需在存储器里建立单词的非法搭配数据库,数据库里的数据与编码时采用的数据是相同或兼容的;采用频率关联解码方式,是先在码字前面读出分节信息,然后据此对词段进行分节,对每节内,穷举其频率编号组合的所有可能组合,将频率编号转换成单词,通过单词非法搭配数据库的信息来排除一些不可能的组合,计算剩余的组合各单词的总关联度,关联度最大的组合即是解。
33.根据权利要求28所述的拾音器,其特征在于:
所述的压缩解码方式可以是关联式,其解码前提需有在存储器里建立频率编号与常用单词或单词组合的对应关系,对常用单词或单词组合按其日常使用频率赋频率编号,使用频率高的赋短编号,使用频率低的赋长编号,编号的数据与编码时采用的数据是相同或兼容的,另还需在存储器里对各单词建立其与其它单词的关联关系,这些关联关系数据与编码时采用的关联关系数据是相同或兼容的;解码时,先读取码的前面是单词个数及位置及分层信息,表示各层有多少词,每个位置的词属于哪层,然后是最高层的词,这是按频率编号排的,将频率编号编译成对应单词即可,然后是第2层词的信息,这层词的信息是最上一层词的修饰,即由信息找到上层的某词的关联类词中的一个即为本层的一词,将本层词都解出,然后如还有下一层就继续此步骤直至所有层都解完;然后依据最前面读的位置信息,即可将各词按原来的顺序重排。
34.根据权利要求28所述的拾音器,其特征在于:
所述的压缩解码方式可以是整句差别式,其解码前提需有在存储器里建立频率编号与常用单词或单词组合的对应关系,对常用单词或单词组合按其日常使用频率赋频率编号,使用频率高的赋短编号,使用频率低的赋长编号,编号的数据与编码时采用的数据是相同或兼容的,另还需在存储器里需先把平常的常用句型集中做成数据库,各句顺序编号,这些数据库的数据与编码时采用的数据是相同或兼容的;解码时,先在码前面取与库中相似的句子的编号,然后在库中取出与解码句相似的句子,然后在码的后面取删除词的位置及个数,增加词的位置及其频率编号,据此修改取出来的与解码句相似的句子,最后结果即是解。
35.根据权利要求31,32,33或34所述的拾音器,其特征在于:
所述的解码规则,是可以处理时态的变化,各单词的时态变化信息存储在单词数据库里,解码时,顺序看各词,查其处于在单词数据库里的时态变化的个数,确定每个单词时态占BIT的位数,然后依次从时态段里取出时态变化信息,各词分别还原成编码前的时态;所述的解码规则,是可以处理陌生词,在存储器里先建立词根前后缀音标的数据库,解码时,遇到陌生词的标志符号,就在后面陌生词段取出词根前后缀及音标的编号来组成陌生词的发音。
36.根据权利要求30所述的拾音器,其特征在于:
所述的压缩解码方式可以是频率排序方式,其解码前提需有在存储器里建立频率编号与常用词或词组合的对应关系,对常用词或词组合按其日常使用频率赋频率编号,使用频率高的赋短编号,使用频率低的赋长编号,编号的数据与编码时采用的数据是相同或兼容的;采用频率排序解码方式,即将频率编号简单换成其词或词组合,再依次排起来。
37.根据权利要求30所述的拾音器,其特征在于:
所述的压缩解码方式可以是频率关联混合方式,其解码前提需有在存储器里建立频率编号与常用词或词组合的对应关系,对常用词或词组合按其日常使用频率赋频率编号,使用频率高的赋短编号,使用频率低的赋长编号,且频率编号是阶梯编号,编号的数据与编码时采用的数据是相同或兼容的,另还需在存储器里对各词建立其与其它词的关联关系,这些关联关系数据与编码时采用的关联关系数据是相同或兼容的,另还需在存储器里建立词的非法搭配数据库,数据库里的数据与编码时采用的数据是相同或兼容的;采用频率关联解码方式,是先在码字前面读出分节信息,然后据此对词段进行分节,对每节内,穷举其频率编号组合的所有可能组合,将频率编号转换成词,通过词非法搭配数据库的信息来排除一些不可能的组合,计算剩余的组合各词的总关联度,关联度最大的组合即是解。
38.根据权利要求30所述的拾音器,其特征在于:
所述的压缩解码方式可以是关联式,其解码前提需有在存储器里建立频率编号与常用词或词组合的对应关系,对常用词或词组合按其日常使用频率赋频率编号,使用频率高的赋短编号,使用频率低的赋长编号,编号的数据与编码时采用的数据是相同或兼容的,另还需在存储器里对各词建立其与其它词的关联关系,这些关联关系数据与编码时采用的关联关系数据是相同或兼容的;解码时,先读取码的前面是词个数及位置及分层信息,表示各层有多少词,每个位置的词属于哪层,然后是最高层的词,这是按频率编号排的,将频率编号编译成对应词即可,然后是第2层词的信息,这层词的信息是最上一层词的修饰,即由信息找到上层的某词的关联类词中的一个即为本层的一词,将本层词都解出,然后如还有下一层就继续此步骤直至所有层都解完;然后依据最前面读的位置信息,即可将各词按原来的顺序重排。
39.根据权利要求30所述的拾音器,其特征在于:
所述的压缩解码方式可以是整句差别式,其解码前提需有在存储器里建立频率编号与常用词或词组合的对应关系,对常用词或词组合按其日常使用频率赋频率编号,使用频率高的赋短编号,使用频率低的赋长编号,编号的数据与编码时采用的数据是相同或兼容的,另还需在存储器里需先把平常的常用句型集中做成数据库,各句顺序编号,这些数据库的数据与编码时采用的数据是相同或兼容的;解码时,先在码前面取与库中相似的句子的编号,然后在库中取出与解码句相似的句子,然后在码的后面取删除词的位置及个数,增加词的位置及其频率编号,据此修改取出来的与解码句相似的句子,最后结果即是解。
40.根据权利要求36,37,38或39所述的拾音器,其特征在于:
所述的解码规则,是可以处理陌生词,在存储器里先建立字的所有可能发音的数据库;解码时,遇到陌生词的标志符号,就在后面陌生词段取出字发音的编号来组成陌生词的发音。
41.根据权利要求35所述的拾音器,其特征在于:
所述读物可以是书;所述读码头是读导电码的导电码读码头。
42.根据权利要求40所述的拾音器,其特征在于:
所述读物可以是书;所述读码头是读导电码的导电码读码头。
43.根据权利要求24,25,26,27,28,29,30,31,32,33,34,36,37,38或39所述的拾音器,其特征在于:
所述读物可以是书;所述读码头是读导电码的导电码读码头。
44.根据权利要求24,25,26,27,28,29,30,31,32,33,34,36,37,38或39所述的拾音器,其特征在于:
所述读物可以是书;所述读码头是读条形码的光电式读码头。
45.根据权利要求24,25,26,27,28,29,30,31,32,33,34,36,37,38或39所述的拾音器,其特征在于:
所述读物可以是书;所述读码头是读图形码的光电式读码头,或者是读磁码的磁读码头。
46.根据权利要求24,25,26,27,28,29,30,31,32,33,34,36,37,38或39所述的拾音器,其特征在于:
所述码字,如果各读物的码值的音码拼合编码规则及编码数据是统一或兼容的并与所述拾音器的解码规则配套,并且所述拾音器的存储器包含了解码必需及处理陌生词必需的解码数据,即可做到拾音器不用换数据卡就可解读任意读物,及任意读物都可由具有与其编码配套的同样音码拼合解码规则及解码数据的不同型号的拾音器解读。
47.根据权利要求24,25,26,27,28,29,30,31,32,33,34,36,37,38或39所述的拾音器,其特征在于:
所述的读物可以是印有图文的卡片或报纸杂志。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA200510200358XA CN1889174A (zh) | 2005-06-28 | 2005-06-28 | 一种语音编码有声读物及其拾音器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA200510200358XA CN1889174A (zh) | 2005-06-28 | 2005-06-28 | 一种语音编码有声读物及其拾音器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1889174A true CN1889174A (zh) | 2007-01-03 |
Family
ID=37578443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA200510200358XA Pending CN1889174A (zh) | 2005-06-28 | 2005-06-28 | 一种语音编码有声读物及其拾音器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1889174A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101783083A (zh) * | 2009-01-19 | 2010-07-21 | 冯石文 | 条形码学习机 |
CN102737535A (zh) * | 2011-03-31 | 2012-10-17 | 赵文志 | 一种快速学习语言的工具设置 |
CN103198722A (zh) * | 2013-03-15 | 2013-07-10 | 肖云飞 | 英语培训方法及装置 |
-
2005
- 2005-06-28 CN CNA200510200358XA patent/CN1889174A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101783083A (zh) * | 2009-01-19 | 2010-07-21 | 冯石文 | 条形码学习机 |
CN102737535A (zh) * | 2011-03-31 | 2012-10-17 | 赵文志 | 一种快速学习语言的工具设置 |
CN103198722A (zh) * | 2013-03-15 | 2013-07-10 | 肖云飞 | 英语培训方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1155906C (zh) | 数据处理方法、***、处理程序及记录媒体 | |
CN1567174A (zh) | 对象表示和处理的方法及其装置 | |
CN1311423C (zh) | 利用多语言字典执行语音识别的***和方法 | |
CN1856036A (zh) | 字幕产生设备和方法 | |
CN1620659A (zh) | 多种语言的数据库创建***和方法 | |
CN1761996A (zh) | 采用合并词典的语音识别***及方法 | |
CN1889174A (zh) | 一种语音编码有声读物及其拾音器 | |
CN1342115A (zh) | 快速键入设备和方法 | |
CN1321941A (zh) | 中外文信息数字化运算编码处理*** | |
CN1154502A (zh) | 教育规范五笔字型汉字输入法及其装置 | |
CN1048343C (zh) | 自由组合码汉字输入方法及键盘 | |
CN1089919C (zh) | 一种叠加式按形归类的文字拆分编码输入方法及键盘 | |
CN1407483A (zh) | 文本表达方法及***以及文本翻译方法及*** | |
CN1140865C (zh) | 超级数字码 | |
CN1529219A (zh) | 语言码输入法 | |
CN1068127C (zh) | 文字信息处理方法和装置 | |
CN1399185A (zh) | 整体汉字输入法及其键盘 | |
CN1664811A (zh) | 语文编码与输入方法 | |
CN1025896C (zh) | 新概念编码计算机汉字输入键盘 | |
CN1303504C (zh) | 计算机汉字字母文字化输入法 | |
CN86104850A (zh) | 安子介式编码输入的多功能语言文字处理装置—安子介式写字机 | |
CN1417674A (zh) | 汉语音节双读方案和汉语键盘及其信息输入处理方法 | |
CN1104352A (zh) | 计算机汉字输入*** | |
CN1752899A (zh) | 汉语编码及其汉字输入法和汉字检索法 | |
CN1281178A (zh) | 黎明形意类字母汉字多功能输入编码技术 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |