两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

漢字字形自動生成方法及其裝置的制作方法

文檔序號:6615639閱讀:641來源:國知局
專利名稱:漢字字形自動生成方法及其裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明屬信息技術(shù)領(lǐng)域,是一種漢字字形自動生成方法及其裝置。
隨著計(jì)算機(jī)應(yīng)用的迅猛發(fā)展,各行各業(yè)對計(jì)算機(jī)漢字字形的要求也越來越廣,但由于漢字字符集龐大,漢字結(jié)構(gòu)復(fù)雜,字體繁多,漢字字形設(shè)計(jì)一直是計(jì)算機(jī)應(yīng)用領(lǐng)域的一大難題。目前,漢字字形設(shè)計(jì)技術(shù)主要有點(diǎn)陣法、輪廓線法和部件組字法等。點(diǎn)陣法主要是依靠手工設(shè)計(jì),輪廓線法和部件組字法可不同程度借助計(jì)算機(jī)自動交互完成。現(xiàn)有的借助計(jì)算機(jī)生成所需漢字字形的方法主要有如下幾種(1)量化傳統(tǒng)書法規(guī)則(樊建平,智能漢字字形設(shè)計(jì)技術(shù)及一個實(shí)驗(yàn)性系統(tǒng)IC-CDS,中文信息學(xué)報(bào),4(3),1-11,1990);(2)以現(xiàn)有的特定字形為基礎(chǔ),衍生出新的字形(嚴(yán)偉榮,蔡士杰,基于筆畫特征的宋體字衍生方法,中文信息學(xué)報(bào),8(4),16-22,1994);(3)借助形狀合成操作對字形的風(fēng)格進(jìn)行合并(潘志康,馬小虎,石教英,動態(tài)漢字庫自動生成算法,自動化學(xué)報(bào),22(5),561-567,1996);(4)借助數(shù)學(xué)形態(tài)變換(劉文予,萬菲,朱光喜,基于形態(tài)學(xué)的漢字字形自動生成方法,計(jì)算機(jī)學(xué)報(bào),22(3),235-240,1999)。
上述方法的不足之處主要是生成的漢字字形不夠豐富,并且占用的字庫規(guī)模較大,難以適應(yīng)各行各業(yè)對計(jì)算機(jī)漢字字形越來越廣泛的需求。
本發(fā)明的目的在于提出一種生成的漢字字形豐富、占用的字庫規(guī)模較小的漢字字形自動生成方法及其裝置,以適應(yīng)各行各業(yè)對計(jì)算機(jī)漢字字形越來越廣泛的需求。
本發(fā)明提出的漢字字形自動生成方法,首先將漢字表示成由漢字部件作為操作數(shù)、部件間相互位置關(guān)系作為運(yùn)算符號的數(shù)學(xué)表達(dá)式(這些漢字部件表達(dá)式庫固化于一個專用的漢字字形自動生成器控制卡中);然后,采用漢字筆畫自動抽取方法形成對應(yīng)于不同字體的漢字部件框架,并根據(jù)字體要求,使用相應(yīng)的筆畫生成函數(shù),再按相應(yīng)的規(guī)則,構(gòu)造出所需的漢字字形。
下面將進(jìn)一步具體描述本發(fā)明方法。
漢字由部件組成,部件由筆畫組成,這是一個顯而易見的事實(shí)。不少研究者就漢字的表達(dá)提出了很多有益的思想,如漢字的有向圖表示,漢字的層次模型等。但這些表達(dá)方法的數(shù)據(jù)結(jié)構(gòu)比較復(fù)雜,不能很好地用于漢字信息處理。本發(fā)明提出一種全新的漢字表達(dá)方法,即將漢字表示成由漢字部件作為操作數(shù)、部件間結(jié)構(gòu)關(guān)系為運(yùn)算符號的數(shù)學(xué)表達(dá)式。
我們選擇組成漢字的基本部件共512(29)個,這些部件與現(xiàn)有漢字處理方法中的部件結(jié)構(gòu)基本相同(具體可見《中文信息學(xué)報(bào)》,8(4),16-22,1994)),這些部件當(dāng)然不是絕對固定,的,根據(jù)實(shí)際處理情況,可作某些變動。這512個漢字部件中,部分部件如圖1所示。
我們將部件分為如下幾類(1)獨(dú)體字部件;(2)左右型部件;(3)上下型部件;(4)包圍型部件。
如圖1所示,第一、二行的部件均為獨(dú)體字部件,第三行前面第一、二、三個為左右型部件,第五行面前第二、三個為上下型部件,第四行前面第一、二、三個為包圍型部件等。
部件間可通過位置的相互組合生成漢字,這種相互位置關(guān)系我們用運(yùn)算符號表示。漢字部件運(yùn)算符號有(1)lr,A lr B表示部件A在部件B的左面;(2)ud,A ud B表示部件A在部件B的上面;(3)ld,A ld B表示部件A在部件B的左下方;(4)lu,A lu B表示部件A在部件B的左上方;(5)ru,A ru B表示部件A在部件B的右上方;(6)le,A le B表示部件A左包含部件B;(7)re,A re B表示部件A右包含部件B;(8)ue,A ue B表示部件A上包含部件B;(9)de,A de B表示部件A下包含部件B;(10)we,A we B表示部件A全包含部件B;以上各運(yùn)算符都具有相同的優(yōu)先級,括號優(yōu)先運(yùn)算。
然后,對所選的512個部件依次編號。以圖1中部件為例,從左到右,從上到下依次進(jìn)行編號,編號從0開始。如,部件“木”、“小”、“土”、“口”的編號依次為0、1、2、3,“君“的編號為48,“門”的編號為59。則有林=000 lr 000森=000 ud(000 lr 000)沐=024 lr 000問=059 ue 003君=048 lu 003戴=041 ru(013 ud 086 ud 085)因=003 we 007木=010因所選部件為512個,故部件編碼要9位二進(jìn)制位,如第512個部件的編碼為111111111(EP511),運(yùn)算符號(包括括號)編碼要4位。通過對國標(biāo)規(guī)定的6763個一級、二級漢字表達(dá)式進(jìn)行統(tǒng)計(jì),平均每個漢字需要2.7個字節(jié)表示,6763個一級、二級漢字需要的空間不超過23KB。故我們可將該漢字表達(dá)式庫固化于專用控制卡上的28C256中。
上面介紹了本發(fā)明漢字表達(dá)式庫的建立,下面進(jìn)一步介紹字形生成方法。
本發(fā)明采用漢字筆畫自動抽取方法(見本發(fā)明申請人的另一專利申請“漢字筆畫自動抽取方法及其裝置”,中國專利申請?zhí)枮?0115655,申請日為2000年5月11日),抽取上述512個漢字部件的筆畫的端點(diǎn)坐標(biāo),經(jīng)判斷筆畫的類型(本發(fā)明中將筆畫分成橫、豎、撇、捺、點(diǎn)、提、勾七種)即可形成部件框架。本發(fā)明中每個筆畫用其端點(diǎn)坐標(biāo)表示,如果選定32×32模板,則表示一個筆畫的兩個端點(diǎn)需要20位(或2.5個字節(jié))。通過對所選512個部件的筆畫統(tǒng)計(jì),平均每個部件需要16個字節(jié)表示,512個部件需要的空間不超過13KB。
形成部件框架后,根據(jù)字體要求,利用相應(yīng)的筆畫生成函數(shù),形成字形。本發(fā)明中,筆畫生成函數(shù)可采用B樣條函數(shù)。B樣條函數(shù)的參數(shù),根據(jù)字體要求加以調(diào)節(jié)。B樣條函數(shù)確定后,就對漢字的上述7種筆畫(橫、豎、撇、捺、點(diǎn)、提、勾)的輪廓曲線進(jìn)行擬合,從而形成字形(可參見①C.W.Liao,etc.Stroke segmentation by Bernstein-Bezi-er urve fitting,pattern Recognition,23(5),475-484,1990;②嚴(yán)偉榮,蔡士杰,基于筆畫特征的宋體字衍生方法,中文信息學(xué)報(bào),8(4),16-22,1994)。
關(guān)于B樣條函數(shù)說明如下設(shè)(x1,y1),…,(xn,yn)是平面上的幾個點(diǎn),P1(x),…,Pn-1(x)是多項(xiàng)式函數(shù)滿足Pi(x)的圖像經(jīng)過(xi,yi)和xi+1,yi+1),

可以作為點(diǎn)(x1,y1)…,(xn,yn)的B樣條函數(shù)。要確定它有很多種方法,各種方法的效果都不同,當(dāng)Pi和Ci變化時將得到不同的字型。本發(fā)明常用的是Pi為經(jīng)過(xi,yi),(xi+1,yi+1)的一次或二次函數(shù)。如令Ci為1,這時B樣條一次函數(shù)的表達(dá)式為y-yix-xi=yi+1-yixi+1-xi,]]>xi≤x≤xi+1B樣條二次函數(shù)表達(dá)式為y=ax2+bx+c
a,b,c由(xi,yi),(xi+1,yi+1)的最小二乘法確定。(xi,yi)為抽取筆劃端點(diǎn)坐標(biāo)間的擬合點(diǎn)。
由漢字表達(dá)式通過部件構(gòu)造出漢字的過程中,要遵守有關(guān)漢字的生成規(guī)則。本發(fā)明中將使用如下一些規(guī)則設(shè)某一表達(dá)式為com[1]op com[2]op com[3]…op com[n],其中com[i](i=1,2…,n)為參與運(yùn)算的漢字部件,op為某一已經(jīng)定義好了的漢字表達(dá)式運(yùn)算符號。用lenx[com[i]],leny[com[i]]分別表示部件com[i]在該漢字中應(yīng)占的寬度和高度,用leftx[com[i]],lefty[com[i]]分別表示部件com[i]的左上角在該漢字中出現(xiàn)的位置,用lx,ly分別表示該漢字的總寬度和總高度,用x0,y0分別表示該漢字的左上角所處的坐標(biāo)位置,于是(1)當(dāng)op為lr時,如果設(shè)con(i1),con(i2),…,com(im)為左右型部件,則leny[com[i]]=ly,lefty[com[i]]=y(tǒng)0,leftx[com[i]]=leftx[com[i-1]]+lenx[com[i-1]] (i>1),leftx[com[1]]=x0,lenx[com[ij]]=R(com[ij])·lx,其中,R(x)表示左右型部件x在原模板中所占的寬度比(即部件所占的寬度除以模板總寬度)。
,當(dāng)com[i]不是左右型部件時。
(2)當(dāng)op為ud時,如果設(shè)com(i1),com(i2)…,con(im)為上下型部件,則lenx[com[i]]=lx,leftx[com[i]]=x0,
lefty[com[i]]=lefty[com[i-1]+leny[com[i-1]] (i>1),lefty[com[1]]=x0,leny[com[ij]]=R(com[ij])·ly,其中,R(x)表示上下型部件x在原模板中所占的高度比(即部件所占的高度除以模板總高度)。
,當(dāng)com[i]不是上下型部件時。
(3)當(dāng)op為ld、lu、ru、le、re、ue、de、we時,一般說來此時n=2,則leny[com[1]]=ly,lenx[com[1]]=lxlefty[com[1]]=y(tǒng)0leftx[com[1]]=x0第二個部件的高度、寬度及左上角的坐標(biāo)要根據(jù)第一個部件決定。下面只就ue給出決定方法(其他與此類似,故略)。
為簡單起見,我們以圖2為例直觀地予以說明。在圖2中將部件1對應(yīng)的區(qū)域分成6區(qū),X軸方向平均分成3份,Y方向平均分成2份。用xmin表示第4區(qū)中筆畫軌跡對應(yīng)的x的最大值,xmax表示第6區(qū)中筆畫軌跡對應(yīng)的x的最小值,ymin表示第2區(qū)中筆畫軌跡對應(yīng)的y的最大值,ymax表示第4、5、6區(qū)中筆畫軌跡對應(yīng)的y的最大值。則有l(wèi)eftx[com[2]]=xmin+mlefty[com[2]]=y(tǒng)min+nlenx[com[2]]=xmax-xmin-mleny[com[2]]=y(tǒng)max-ymin-n(m,n為一預(yù)定值)。
m,n表示部件間的間隙,m,n一般取值為1,當(dāng)字型較大時可適當(dāng)增加。
對應(yīng)于上述漢字字形的生成方法,本發(fā)明還設(shè)計(jì)了漢字字形自動生成裝置,(或稱自動生成器)它由漢字字形自動生成器專用控制卡和主計(jì)算機(jī)及其相應(yīng)軟件構(gòu)成。
漢字字形自動生成專用控制卡的電原理圖如圖4所示。此卡的主要作用是存儲系統(tǒng)的環(huán)境參數(shù)和所有漢字的數(shù)學(xué)表達(dá)式。另外,還可以防止該系統(tǒng)被盜用,軟件只有檢測到此卡存在時,才能正常工作。該控制卡由核心芯片U8、與非反向器U1、反向器U2和U3、譯碼器U4、雙向緩沖器U5、三態(tài)緩沖器U6和U7經(jīng)電路連接構(gòu)成。其中,U8采用28C256芯片,其容量為32K×8,引腳數(shù)為28,它主要用于寫入/讀出有關(guān)參數(shù)和所有漢字?jǐn)?shù)學(xué)表達(dá)式。U1采用74LS02芯片,U2、U3采用74LS04芯片,U4采用74LS30芯片。U1、U2、U4的主要作用是為U8提供讀/寫/片選信號,并使之正常工作。片選信號(U8的CE端)由下列地址決定CE=A19·A18·A17·A16·A15因此,存儲器的地址為A0000。
U5采用74LS245芯片,其作用是隔離、緩沖和傳送數(shù)據(jù)(D0-D7)。U6和U7采用74LS244芯片,其作用是緩沖、放大地址信號(A0-A12)。
本發(fā)明使用的28C256芯片的結(jié)構(gòu)框圖如圖5所示,其引腳圖見圖6。28C256的引腳功能及引腳的工作方式分列由表1和表2列出。
表1
表2
本發(fā)明的軟件部分的功能塊結(jié)構(gòu)框圖如圖3所示。它主要由漢字部件,部件運(yùn)算規(guī)則,表達(dá)式庫、部件框架、筆畫書寫規(guī)則、字形生成規(guī)則、形成漢字字形等功能塊構(gòu)成。其工作流程如圖7所示。具體過程分為二個階段預(yù)處理先確定漢字部件,然后根據(jù)漢字筆畫自動抽取方法形成部件框架庫,并確定漢字表達(dá)式,然后將漢字表達(dá)式存入專用控制卡。
實(shí)際處理從部件框架庫中抽取部件框架,從專用控制卡中讀取并生成工作環(huán)境參數(shù),如工作環(huán)境不合適則終止運(yùn)行,當(dāng)工作環(huán)境適合時,再從專用控制卡中抽取當(dāng)漢字表達(dá)式,由漢字表達(dá)式按漢字生成規(guī)則生成漢字框架,引入筆畫生成函數(shù)形成漢字字型。
使用本發(fā)明不僅可以自動生成已有漢字字形,而且可以自動寫出一些虛構(gòu)的漢字。圖8就是利用本發(fā)明生成的一些漢字(包括虛構(gòu)的漢字)的骨架。這些漢字對應(yīng)的表達(dá)式如下025lr(002ud095);025lr(061ue(002ud003));047le(024lr(002ud013));026lr(050ud000);047le054;031lu018;054ud(040ru011);027ld(019lu007);048lu003;030lr(002ud003ud062ud003);(034de000)lr017;024lr(032ru(016ud011));(006re008)le008;038we013;037ue000;033re(000ud(000lr000));003we007;04lru(013ud004);060de067;06lue(002ud003);063ud010ud075;024lr(060de(064lr083));059we003;064lr(027ld(082lu012))。
本發(fā)明選擇512個漢字部件,每個部件的框架大小平均不超過16B,故每種字形的框架庫大小不會超過13KB。而且,表達(dá)式庫的大小不會超過23KB。因此,通過調(diào)整筆畫生成函數(shù),要生成一種字形只要13KB的字庫即可完成。故本發(fā)明的特點(diǎn)是生成的字形豐富,字庫很小,不需參考字庫,而且整個生成過程都不需人機(jī)交互等。本發(fā)明可直接應(yīng)用于計(jì)算機(jī)漢字信息處理、印刷、廣告、中文移動通訊等領(lǐng)域。


圖1為部分漢字部件圖示。
圖2為漢字部件構(gòu)造圖示。
圖3為漢字自動生成裝置軟件功能塊結(jié)構(gòu)框圖。
圖4為漢字字形自動生成控制卡電原理圖。
圖5為圖4控制卡芯片28C256的結(jié)構(gòu)框6為芯片28C256引腳圖。
圖7為漢字字形自動生成器工作流程圖。
圖8為利用本發(fā)明自動生成的漢字圖例。
權(quán)利要求
1.一種漢字字形自動生成方法,其特征在于將漢字表示成由漢字部件作為操作數(shù)、漢字部件間相互位置關(guān)系作為運(yùn)算符的數(shù)學(xué)表達(dá)式,然后采用漢字筆畫自動抽取方法形成對應(yīng)于不同字體的漢字部件框架,并根據(jù)字體要求,使用相應(yīng)的筆畫生成函數(shù),再按相應(yīng)的規(guī)則,構(gòu)造出所需的漢字字形。
2.根據(jù)權(quán)利要求1所述的漢字字形自動生成方法,其特征在于所述漢字部件共有512個。
3.根據(jù)權(quán)利要求1所述的漢字字形自動生成方法,其特征在于漢字部件的運(yùn)算符號為(1)lr,A lr B表示部件A在部件B的左面;(2)ud,A ud B表示部件A在部件B的上面;(3)ld,A ld,B表示部件A在部件B的左下方;(4)lu,A lu B表示部件A在部件B的左上方;(5)ru,A ru B表示部件A在部件B的右上方;(6)le,A le B表示部件A左包含部件B;(7)re,A re B表示部件A右包含部件B;(8)ue,A ue B表示部件A上包含部件B;(9)de,A de B表示部件A下包含部件B;(10)we,A we B表示部件A全包含部件B。
4.根據(jù)權(quán)利要求2或3所述的漢字字形自動生成方法,其特征在于對漢字部件和運(yùn)算符號分別編碼,其中,部件編碼為9位,運(yùn)算符號騙碼為4位。
5.根據(jù)權(quán)利要求4所述的漢字字形自動生成方法,其特征在于采用漢字筆畫自動抽取方法抽取所述512個漢字部件的筆畫的端點(diǎn)坐標(biāo),再判斷筆畫類型,形成部件框架。
6.根據(jù)權(quán)利要求5所述的漢字字形自動生成方法,其特征在于采用B樣條函數(shù)作為筆畫生成函數(shù),可形成漢字字形。
7.根據(jù)權(quán)利要求6所述的漢字字形自動生成方法,其特征在于采用的B樣條函數(shù)為一次函數(shù)或二次函數(shù)。
8.一種漢字字形自動生成裝置,由漢字字形自動生成專用控制卡、主計(jì)算機(jī)和相應(yīng)軟件構(gòu)成,其特征在于專用控制卡由核心芯片U8、與非反向器U1、反相器U2和U3、譯碼器U4、雙向緩沖器U5、三態(tài)緩沖器U6和U7經(jīng)電路連接構(gòu)成,其中,U8采用28C256,U1采用74LSO2,U2和U3采用74LSO4,U4采用74LS30,U5采用74LS245,U6和U7條用74LS244。
9.根據(jù)權(quán)利要求8所述的漢字字形自動生成裝置,其特征在于軟件部分由漢字部件、部件運(yùn)算規(guī)則、表達(dá)式庫、部件框架、筆畫寫書規(guī)則、字形生成規(guī)則、形成漢字字形等功能塊構(gòu)成,其工作流程如下預(yù)處理先確定漢字部件,然后根據(jù)漢字筆畫自動抽取方法形成部件框架庫,并確定漢字表達(dá)式,然后將漢字表達(dá)式存入專用控制卡;實(shí)際處理從部件框架庫中抽取部件框架,從專用控制卡中讀取并生成工作環(huán)境參數(shù),當(dāng)工作環(huán)境合適時,從專用控制卡中抽取漢字表達(dá)式,由漢字表達(dá)式按漢字生成規(guī)則生成漢字框架,引入筆畫生成函數(shù),形成漢字字形
全文摘要
本發(fā)明涉及一種漢字字形自動生成的方法及其裝置。它將漢字表示成以漢字部件作為操作數(shù)、部件間結(jié)構(gòu)關(guān)系為運(yùn)算符號的數(shù)學(xué)表達(dá)式,存入專用控制卡中。從專用控制卡中讀取工作環(huán)境參數(shù),并抽取漢字表達(dá)式,再按漢字生成規(guī)則生成漢字框架,引入筆畫生成函數(shù),形成漢字字形。裝置由漢字自動生成控制卡、主計(jì)算機(jī)和相應(yīng)于本方法的軟件構(gòu)成。本發(fā)明生成的漢字字形豐富,字庫很小,不需人機(jī)交互??芍苯討?yīng)用于計(jì)算機(jī)漢字信息處理、印刷、廣告、中文移動通訊等領(lǐng)域。
文檔編號G06F3/023GK1277377SQ00116218
公開日2000年12月20日 申請日期2000年5月30日 優(yōu)先權(quán)日2000年5月30日
發(fā)明者孫星明, 胡運(yùn)發(fā) 申請人:復(fù)旦大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
灵寿县| 高尔夫| 湘阴县| 盘锦市| 宁晋县| 渝中区| 宁化县| 新安县| 余江县| 南汇区| 兴业县| 九江市| 清河县| 玉龙| 云霄县| 蒙山县| 洛阳市| 泸定县| 延安市| 镶黄旗| 宜川县| 新巴尔虎右旗| 忻城县| 四川省| 紫金县| 沅江市| 西峡县| 清新县| 福建省| 西城区| 仲巴县| 安仁县| 忻州市| 西乌珠穆沁旗| 乌审旗| 郁南县| 博兴县| 大港区| 来宾市| 芜湖县| 北京市|