CN1083954A - 文字数据、词符-插图数据的输入输出装置及其方法 - Google Patents
文字数据、词符-插图数据的输入输出装置及其方法 Download PDFInfo
- Publication number
- CN1083954A CN1083954A CN93117077A CN93117077A CN1083954A CN 1083954 A CN1083954 A CN 1083954A CN 93117077 A CN93117077 A CN 93117077A CN 93117077 A CN93117077 A CN 93117077A CN 1083954 A CN1083954 A CN 1083954A
- Authority
- CN
- China
- Prior art keywords
- tie point
- point
- data
- string
- approximation
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/20—Contour coding, e.g. using detection of edges
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Image Processing (AREA)
- Controls And Circuits For Display Device (AREA)
- Image Generation (AREA)
Abstract
本发明能用很短时间把文字字体、词符一插图变
换为少量数据进行存储,并能以任意尺寸、在任意的
位置再生。其构成是以光学读取文字字体、词符一插
图,求轮廓点串,利用自变量t存储轮廓点串的坐标,
求轮廓点串的连接点,利用直线、圆弧、自由曲线近似
连接点之间的区间,存储近似的参数的连接点坐标。
输出联结连接点的坐标和相邻连接点的线段的参数,
由此再生轮廓点串,将轮廓点串所围区域同其它区域
进行区别后,再生文字、词符—插图。
Description
本发明是通过图象读取装置以二值数据得到文字字体(铅印体或毛笔体等)、词符-插图等(为简单起见,以下简称为词符-插图)数据后,在不丢失文字、词符-插图的特征的情况下,去除噪声,进行压缩、存储,并根据压缩过的数据重现文字、词符-插图的技术。特别是利用根据母字把文字字体或根据原图把词符-插图自动地变为数字数据,以及以任意的尺寸在任意的位置进行再生,能够简单地在印刷机器、文字处理器、微机中使用的技术。
文字字体是规定形状文字的集合,要想将其自由地缩小或放大后加以利用,就需要以抽象的数据而不是文字的二维形状进行存储。由于包括汉字在内的文字的数量很多,所以,如果每一个文字的数据量很大的话,不但输入数据费时间,还要求存储装置的容量要很大。还有,输出数据也费时间,故而很不经济。最好是每一个文字的数据量尽可能少。
以往,把每个文字的数据存储到存储装置中的方法有两种:
①.把文字数据作为二值数据串进行编码,这种方法,是把文字作为黑白二值图象,通过微分等方法抽取出轮廓线,求出轮廓线的连续方向后,编成链式字符,存储始点和字符串。
②.抽取出文字字体的轮廓线,用直线或圆弧进行近似,存储始点的坐标和直线、圆弧等的函数。由于这种方法能够压缩数据,因而输入、输出很便利。
本发明属于后一种方法。抽取出文字字体的轮廓线后,编成链式字符时,由于根据图象最小单位,即象素,存储轮廓点的坐标,所以,放大时,再生文字的质量低劣。因为是将存储的数据乘上一定的乘数后来决定放大文字的坐标的,故轮廓点不光滑,成为锯齿状。因此,用链式字符法不能再生任意倍率的良好的放大文字。
轮廓线可以视为直线与圆弧等的组合,但是,有时也有一部分是其它形状。这些能用某些函数进行表示。考虑到数据处理的简易性,数据量越少越好。为了正确地表现文字字体,必须求出能够正确地近似轮廓线的数据。因此,希望有既能尽量减少数据量又有尽量正确地近似轮廓线的方法。
文字字体是二维信息。关于这方面的先有技术比较少。作为关于一维信息的数据压缩方法,有特愿昭63-211948号专利。这是用二次曲线近似一条连续的曲线,根据近似式求出各点的曲率后,求微分不连续点。微分不连续点相当于连接点。接着,用二次函数近似相邻微分不连续点间的数据后,进行压缩。这个二次函数可以由简单的参数指定。于是,通过指定微分不连续点和二次函数串的参数,能够近似一维数据。
词符-插图是任意形状和尺寸的图形、花纹或它们的集合。虽然也有3维的情况,但这里以2维情况为对象。和文字不同,形状不是预先确定的,而是根据设计人员的创意创造出来。有多种多样的词符-插图,但在本说明书中,参照图17所示的乐谱音符、图18的半导体二极管、图44的圆形图表、图45的香烟以及图51-图57的例子等等进行说明。
原图是以画在纸等材料上的状态直接保存的。原图只有1份。要想再生只有用复印机进行光学复制。想放大或缩小时,就用复印机进行光学放大或缩小。
还有,想把词符-插图插入某种文件中指定的位置时,需要用复印机复印,然后剪切下来,再用浆糊粘到所希望的位置。这全部是手工作业。这样,由于是不定形的形状、花纹的集合,所以,难于进行词符-插图的记录、再生、放大、缩小等处理。
因为是设计人员创造出来的,故词符-插图的数量极多,而且又由于一个符号反复使用次数不多,所以,词符-插图处理的自动化还没有达到完全理想的程度。除用复印机复制外也有用印刷机大量复制再生的。然而,这是复印原画后制的版,所以和光学复制相同。
因此,能够称为关于词符-插图自动处理的先有技术还不存在。
以往,不存在能够以较少的数据存储文字字体并能再生任意大小文字的技术。前述方法是自变量为时间,因变量是位移时使用的方法,所以,数据是一维的信息,例如,处理像声音这样的一个变量的情况。
前述方法不能用于文字字体这样的二维信息的数据压缩。以横轴为x,纵轴为y时,可以把y作为x的函数表示文字字体,所以看起来似乎可以把这个方法扩展到2维使用。然而,事实并不如此。由于文字字体的轮廓线是闭合的二维信息,因此,若取独立变量为x,y就成为x的多值函数,所以不能简单使用前述方法。
还有,前述方法的对象不是二维信息,所以不具有轮廓线和连接点这样明确的意义。变量的变化是随机的,微分不连续点的意义也不明确,所以,没有考虑这些点的决定是否存在误差。
然而,对于文字的情况,不仅包含有大量的直线成分,还有很多圆弧部分。当然,变量不会是随机变化的。
另外,为了把前述方法应用于二维信息,可以考虑某一独立变量,把轮廓线的x、y坐标视为是相对于该独立变量的因变量。但,这时不明确什么量表示曲率。处理二维信息时首先出现的是连接点,但是并不是仅作为微分不连续点而求出的,必须考虑噪声的影响。有时,表观上噪声也以连接点的形式出现。因此,必须去除这些噪声,求出正确的连接点。
本发明第一个目的是提供一种文字字体数据输入输出装置。该装置能读取文字字体、自动地进行数据压缩和存储,并能以任意尺寸的文字、在任意的位置再生文字字体。其目标如下:
(1).节省造字的劳力;
(2).能进行高品质的文字处理;
(3).减少字体的数据量。
以往,尚不存在不用复印机而能再生词符-插图的技术。除了直接保存原图之外,不存在其它的记录方法。况且,缩小、放大等处理只有依赖复印机。这样的方法根本不能自动地处理词符-插图。用人工方法进行处理不仅费时,而且需要熟练的操作技术。另外,反复复制后就会掺入噪声降低画面质量,放大后轮廓线就变得模糊不清,不能得到漂亮的放大图。
于是,人们迫切期望能有一种不是保存原图进行光学处理,而能以数字数据记录词符-插图,并能以任意的尺寸、在任意的位置漂亮地再生词符-插图的方法。
为满足这一要求,本发明的第2个目的是要提供一种词符-插图的输入输出装置。该装置能用光学方法读取词符-插图、自动地进行数据压缩和存储,并能以任意的尺寸在任意的位置再生忠实于原图的词符-插图。其目标如下:
(1).节省造词符-插图的劳力;
(2).能进行高品质的词符-插图处理;
(3).减少存储词符-插图的数据量。
本发明的文字数据、词符-插图数据输入输出装置的特征在于包含:
文字、词符-插图读取装置,用于以光学方式读取文字字体数据、词符-插图数据,并对应于纵横方向上有限个排列的象素存储这些数据;
轮廓线抽取机构,用于对应纵横排列的象素抽出己读取的文字的轮廓线;
轮廓点串存储机构,用于对每个使抽出的轮廓线的二维坐标(x,y)连续的群进行存储;
数据近似机构,用于把自变量记为t,把因变量记为x,y,用以t为自变量、以x和y为因变量的2次分段多项式近似上述每个群的轮廓点串的x,y坐标,反复进行最小二乘法近似,直到近似精度达到指定的范围,从而求出每个轮廓线点中的每个群的近似多项式;
曲率运算机构,用于从上述近似结果求x,y空间的每个群的点串中各点的曲率;
正圆抽取机构,用于从每个群的曲率数据中抽取出正圆;
临时连接点位置抽取机构,用于从点串的曲率数据中把空间不可微点作为临时连接点抽取出来;
最佳连接点抽取机构,用于把位于临时连接点近旁的其它候补连接点根据相关关系进行概率拟合,求出最佳连接点;
不必要的连接点去除机构,用于从最佳连接点中找出既使去掉也可以保证近似精度的那些不必要的连接点;
数据近似机构,用于当按直线、圆弧的次序近似同一点串群内相邻连接点的间隔而不能得到指定的近似精度时,用以t为自变量、以x、y为因变量的2次分段多项式近似,并增加2次分段多项式的因次数,同时反复进行最小二乘法近似,直到近似精度达到指定的数值后,在相邻连接点间用直线、圆弧、2次多项式进行近似;
压缩数据存储机构,用于存储点串的每个群中近似上述连接点的坐标和相邻连接点的函数的参量;
压缩数据输出机构,用于输出存储的用来近似点串的每个群中的连接点的坐标和相邻连接点的函数的参量;
压缩数据输入机构,用于输入压缩数据;
轮廓线再生机构,用于根据输入的压缩数据得到近似点串的每个群的连接点的坐标和相邻连接点函数的参量,从而再生轮廓线;
文字、词符-插图再生机构,用于使与再生的轮廓线的内部象素与外部象素不同的值对应;
再生数据输出机构,用于把再生的文字字体和词符-插图作为文字、词符-插图输出。
图1是表示本发明的文字字体、词符-插图数据输入输出装置的总体结构图。
图2是在读取了文字、词符-插图的图象上对于象素定义的x、y坐标系的示意图。
图3是一个象素周围的链形码示意图。
图4是在图象数据中用于搜索轮廓点的扫描方向示意图。
图5是在已知一个轮廓点时用于寻找下一个轮廓点的搜索方向示意图。
图6是存在黑象素和白象素时某轮廓点和下一个轮廓点的示意图。
图7是在“口”字型的图象数据中抽出外侧轮廓线和内侧轮廓线,并使2值数据与象素对应的状态示意图。
图8是表示轮廓点串抽取装置结构的流程图。
图9是为近似轮廓点串求曲率的数据近似机构的流程图。
图10是数据近似机构的一部分,表示在用分段多项式近似全部轮廓点串时决定系数的过程的流程图。
图11是用于计算前段所述近似的轮廓点串的各点处的曲率的流程图。
图12是表示根据用分段多项式所近似的数据抽取正圆的机构的流程图。
图13是表示连接点抽取方法的概略的流程图。
图14是表示根据前面计算的曲率抽取连接点的位置的机构的流程图。
图15是用于制作文字字体的原文字“あ”、“ボ”的示例图。
图16是求“あ”和“ボ”的轮廓点串并进而抽出连接点的示例图。
图17是作为词符-插图的一例的乐谱的16分音符图。包括原图(a)和表示其轮廓点串抽取结果和连接点抽取结果的图(b)。“x”号表示连接点。
图18是作为词符-插图的一例的半导体二极管图。包括原图(a)和表示其轮廓点串抽取结果和连接点抽取结果的图(b)。
图19是最佳连接点抽取机构概略的流程图。
图20是根据曲率所选择的临时连接点及其近旁的候补连接点编号的示意图。
图21是在根据曲率所选择的临时连接点附近有近旁连接点时输出近旁的各点的编号示意图。
图22是在有近旁连接点时决定相宜系数的流程图。
图23是连接根据曲率所选择的临时连接点附近的候补连接点C、输出近旁的候补连接点B、临时连接点的下一个连接点D与输出近旁的连接点的前一个连接点A的近似曲线和拐点的数目的示意图。
图24是在根据曲率所选择的临时连接点附近不存在近旁连接点时求相宜系数的流程图。
图25是在临时连接点附近不存在近旁连接点时,该临时连接点的候补连接点B、前后临时连接点的候补连接点A、C和连接它们的曲线、以及表明这些点的编号的示意图。
图26是说明根据曲率所选择的临时连接点附近的候补连接点C、输入近旁的近旁连接点附近的候补连接点B和该临时连接点前面一个临时连接点的候补连接点D的定义和符号的说明图。
图27是用于决定一个临时连接点的输入近旁及输出近旁的近旁连接点的流程图。
图28是表示候补连接点内哪个为最佳连接点的概率变量的定义和反复运算的流程图。
图29是其它最佳系数的给出方法的流程图。
图30是对以临时连接点为中心的2a+1个候补连接点给出的初始概率的示意图。
图31是对全部临时连接点进行概率变量的计算并把给出最大概率的候补连接点作为最佳连接点存储到最佳连接点存储装置的示意图。
图32是以“ぱ”为例,简单地回顾迄今为止的操作程序的示意图。
图33是以变形二极管的图为例简单地回顾迄今为止的操作程序的示意图。
图34是说明从最佳连接点串去除不必要的连接点求出最终连接点的操作流程图。
图35是在多个直线连接点连续存在时,应判断是否应去除的对象的中间连接点和两端连接点的符号的示意图。
图36是在图35的配置下从中间的连接点向连接两端的连接点的直线所做的垂线的垂足长度小于某个阈值时去除中间的连接点的示意图。
图37是在多个圆弧连接点连续存在时应判断是否应去除的中间连接点和两端连接点的符号的示意图。
图38是在图37中从第1个连接点开始的圆弧的半径、中心,以及从第2个连接点开始的圆弧的半径、中心的示意图。
图39是根据轮廓点串、最终连接点、正圆等的数据来近似数据,并利用近似函数表示轮廓点串的操作说明图。
图40是“体”字的原图象和利用本发明的方法将其进行数据压缩后再生的图象。
图41是“语”字的原图象和处用本发明的方法将其进行数据压缩后再生的图象。
图42是“明”字的原图象和利用本发明的方法将其进行数据压缩后再生的图象。
图43是乐谱的16分音符的词符-插图的原图象(a)和利用本发明的方法进行数据压缩后再生的图象(b)。
图44是圆形图表的词符-插图的原图象(a)和利用本发明的方法进行数据压缩后再生的图象(b)。
图45是香烟的词符-插图的原图象(a)和利用本发明的方法进行数据压缩后再生的图象(b)。
图46是2次光滑函数和0次、1次、3次光滑函数(fluency)的概略图。
图47是采用2次光滑函数、而基函数的数目较少时,即使不能充分地近似数据,只要提高因次数,就能提高近似程度的事例的概略图。
图48是以“和”字为例,用分段多项式近似全部轮廓点串的过程的示意图。
图49是以香烟的词符-插图为例,用分段多项式近似全部轮廓点串的过程的示意图。
图50是半导体二极管的词符-插图的原画象(a)和利用本发明的方法进行数据压缩后再生的图象(b)。
图51是含有文字且自由曲线较多的词符-插图的例子。
图52是图51的词符-插图的缩小图。
图53是自由曲线较多的词符-插图的例子。
图54是根据本发明的方法把图53存储、变形后输出的示例图。
图55是包含装饰文字和图形的词符-插图的例子,(a)是缩小图,(b)是放大图。用本发明的装置存储其中的任一个就能够简单地得到另一个图形。
图56是利用本发明的方法把蜗牛的词符-插图印到明信片的某位置上的示例图。可以任意决定、变更尺寸和位置。
图57是利用本发明的方法把山岳的词符-插图印到明信片的某位置上的示例图。可以任意决定、变更尺寸和位置。
图1中把总体结构示为一览表的形式,在这里,预先写出所有的机构:
A.图象存储装置1
B.轮廓点串抽取装置
C.轮廓点串存储装置
D.数据近似机构A
E.曲率运算机构
E′.近似曲率存储装置
F.正圆抽取机构
G.正圆存储装置
H.连接点位置抽取机构
I.连接点位置存储装置
J.最佳连接点抽取机构
K.最佳连接点存储装置
L.连接点去除机构
M.最终连接点存储装置
N.数据近似机构B
O.压缩数据输出机构
P.压缩数据存储装置
R.轮廓再生机构
S.文字、词符-插图再生机构
T.再生数据输出机构
U.图象存储装置2。
作为例子,对图32所示的“ぱ”字简单地说明操作顺序。图32后面还要再一次说明。首先用图象扫描器读取写在纸上的“ ”,这是文字的光学读取、输入。当抽出轮廓线的集合即轮廓点串时,就成为黑框白底字。在本例中有5个轮廓点串群。左边的纵线有1个,中央与“ょ”相似的部分有2个,右边肩部的圆圈有内外2个。使用参变量表示方法,把X,Y坐标作为t的函数。在每一个轮廓点串群中,用分段多项式进行全部近似。在分段的多项式中成为连续函数,所以在各轮廓点串中可以进行2阶微分求曲率。曲率一定的轮廓点串是正圆,这样就作为正圆被分离出来。在本例中,右上肩的“O”就被去除了。在本例中剩下的还有3个轮廓点串群。曲率大的位置是连接点。在第4步,对轮廓点串的交点和弯曲点等处标上“x”号。这是连接点。也有后来追加轮廓点串的情况。
根据连接点分割出轮廓点串,若曲率很大,也可以使用所求出的最初的连接点(称为临时连接点)作为连接点。对于文字字体的情况,因为从开始就是以漂亮地书写的文字为对象的,所以噪声难以混入,故即使只根据曲率也能够正确地求出连接点。这样,计算就极其单纯化了。
有时,要对连接点进一步反复推敲。这时,便考虑与邻近连接点的配合来修正连接点。这些作为临时连接点的候补连接点将在后面进行说明。另外,修正连接点的位置后,对去除不必要的连接点也是有效的。也有再追加新连接点的情况。这样,就能有效地去除在进行光学读取等操作时所产生的噪声。
当确定了连接点时,就可以用直线、圆弧、自由曲线近似连接点之间的连线。近似按直线、圆弧、自由曲线的顺序进行。由于是文字字体,所以直线部分较多。特别是对于汉字的情况,直线部分的比率极高,仅次于直线的是圆弧,对于汉字的情况,可以认为比率高低的顺序是直线、圆弧、自由曲线。不过,近似的顺序为直线、圆弧、自由曲线的理由并不是因为其出现频度为这个顺序。
不是由于频度,而是为了提高所记录的数据的品质来按这个顺序近似的。如果从开始就以自由曲线进行近似,则直线和圆弧也就相应地被用2次曲线进行近似。2次曲线的集合不能正确地表现直线和圆弧。存在噪声时,近似出的直线、圆弧更加变形。由于确实存在直线和圆弧部分,故为确实地抽出它们而按直线、圆弧、自由曲线的顺序进行近似。对于直线,进行近似所需要的时间短,数据量也少。圆弧的近似也比较简单,只要给出圆心的坐标、半径、圆心角就可以了。
既不能用直线,也不能用圆弧进行近似时,就用自由曲线进行近似。这时,把连接点之间分割为n个小区间用分段多项式进行近似。由于增加小区间分割数能够提高近似程度所以近似达到所希望的精度。
这样,由于可以得到连接点和直线、圆弧、自由曲线的参量,所以可以把这些参量作为文字字体的数据进行存储。随各文字的笔划数和复杂程度不同,1个文字大约用300-500字节的数据就够了。如果是黑白图象的原图,则需要构成画面的全部象素数的数据。例如,假设有纵横256个象素,则也有8k个字节,而按照本发明就能大幅度地压缩数据。反过来,读出这些数据后,又可以连接点为基准再生出直线、圆弧、自由曲线。并且通过计算,能够以任意的尺寸、在任意的位置再生。
作为词符-插图的例子,简单地说明图33所示的半导体二极管的词符-插图的操作顺序。图33还要在后面再次说明。这是为说明正圆的抽取,在右上肩画入了一个多余的圆。
首先,用图象扫描器读取画在纸上的半导体二极管的图形,这是词符-插图的光学读取和输入。当抽取出轮廓线的集合即轮廓点串时,就成为黑框白底的词符-插图。在本例中,作为轮廓点串的群有5个。右上肩的圆有内外2条轮廓线,二极管部分有外侧轮廓线和内外上、下轮廓线,合计是5条。
用参变量表示,把x,y坐标作为t的函数。在各个轮廓点串群中,全部用分段多项式进行近似。由于在分段多项式中为连续函数,所以在各轮廓点串中可以做2阶微分求曲率。曲率一定的轮廓点串是正圆,这样就作为正圆被分离出来。在本例中,右上肩的“O”就被去除。
在本例中,余下的还有3个轮廓点串群,曲率大的位置是连接点。在第4步,对轮廓点串的交点、拐点等处标上“x”号,这就是连接点。也有在后来追加轮廓点串的情况。
利用连接点分割出轮廓点串。若曲率很大,也可以使用所求出的最初的连接点(称为临时连接点)。对于词符-插图的情况,若从开始就使用漂亮地描画的词符-插图,由于噪声难以混入,故即使只根据曲率也能够正确地求出连接点。这样,计算就极其单纯化了。但是,按照本发明,即使根据包含噪声的原图也能够得到非常漂亮的复制图形。
以后的顺序与文字字体的情况相同。
实施例:
A.图象存储装置1
这是用光学方法读取写在纸等介质上的文字字体,词符-插图,并以分解为各象素的信息进行存储的装置。文字、词符-插图即使着色也可以,但是,所需要的是黑白2值图象。例如,将着色部分作为黑色,将不构成文字、词符-插图的部分作为白色形成2值图象,把它们按各个象素进行存储。
例如,用图象扫描器以256×256个点的精度输入。当然,点的数目是任意的,点数越多,作为文字,词符-插图所存储的内容的品质就越高,但是点数太多时,计算时间和存储容量就增大,所以,使用适当点数的图象读取装置就行了。对每个点(象素)区别出是白象素或黑象素后暂时存储起来。以后,有时把一个象素称为点。另外,把一系列连续的黑象素串称为点串。为了表示点,使用由画面上象素的横向符号x和纵向符号y约成的坐标(x,y)进行表示。对坐标变量标以各种下标以示区别。
B.轮廓点串抽取装置
轮廓点串抽取装置是进行求所读取的文字、词符-插图的轮廓线的操作的装置。下面先介绍其大致的流程。
①.从左上方到右下方扫描图象数据,并寻找还未被找到的轮廓点(示于图4)。
②.环绕轮廓线一周搜索下一个轮廓点。轮廓点用2标记。
③.检查图象数据直至右下方的数据为止。
首先根据定义说明进行的这一操作。图象用象素的集合进行表示。象素用画面内的坐标进行指示。象素的坐标以行(横)方向的坐标为x,以列(纵)方向的坐标为y。左上方的坐标为x=0,y=0。若横向有x个象素,纵向有y个的象素,则x的取值为0~X-1,y的取值为0~Y-1。坐标系如图2所示,是指向右下方的。图象本身是输入的文字、词符-插图,所以只取黑、白2个值。对每个象素进行黑白的指定。
二值图象输入:
按如下方式定义特性函数gxy:
(ⅰ)在0≤x≤X,0≤y<Y内,坐标(x,y)上存在点(黑象素)时,
gxy=1(1)
(ⅱ)其它情况(在该点上不存在黑象素)
gxy=0(2)
轮廓点串的表现:
所谓轮廓点串是存在于黑象素群周围的黑象素的左右上下倾斜的连续点的串。不仅在外部,在内部也有轮廓点串。把闭合的一个点串称为轮廓点串。设轮廓点串的总数为U。对U个轮廓点串标以从0到U-1的序号。第u个轮廓点串的轮廓点的总数用N(u)表示。在一个轮廓点串中,对连续的点标以序号k。k是0~N(u)-1的整数。
把第u个轮廓点串的第k个轮廓点的坐标用(xu k,yu k)表示。全部轮廓点用
{(xu k,yu k)}k=0 Nu-1 u=0 U-1(3)
表示。k=Nu-1 0表示点串序号k能取从0到N(u)-1的值。Nu-1含有括号,而括号在打字时不能用1/4角的格式,所以作为变量的标注时,去掉括号写为N(u)-1。即Nu-1=N(u)-1。由于是标注,故应该按上下方式写,但这在打字时不可能,所以分为左下和右上进行标准。u=ou-1表示轮廓点串群的序号u取0~U-1的值。另外,轮廓点串的序号u应在变量的右肩加上括号,但因为括号在打字时不能用1/4角的格式故省略。实际上如图所示的那样是带有括号的。不是变量的u次方。这对于参变量t、自变量x、y等都是相同的。u是群序号,直接写在变量的右肩上,但实际上是带有括号的。链形码:
如图3所示,以某象素为中心,周围8个点的象素按顺时针标以序号0-7。这是为了表示轮廓点中点串的连续而使用的。另外,也用于调查连续的状态。设C为链形码,定义如下的函数α(c)和β(c)。函数α(c)为
c=3,4,5时,α(c)=-1(4)
c=2,6时,α(c)=0(5)
c=0,1,7时,α(c)=1(6)
函数β(c)为
c=5,6,7时,β(c)=-1(7)
c=0,4时,β(c)=0(8)
c=1,2,3时,β(c)=1(9)
根据这样的定义进行轮廓线的抽取。如前述,像图4所示那样把整个图像从左上方到右下方进行扫描寻找出黑象素。轮廓线是二值图象的gxy=1部分的外周的象素,在循环1周进行搜索的同时,就把点串的坐标存储起来。环绕1周的方向规定为:在其区域的外侧环绕时,按顺时针方向旋转,在其内侧环绕时按逆时针方向旋转。图5示出了环绕轮廓点的顺序。当然也可以规定按与上述方向相反的方向环绕,但这里讨论的是按上述规定环绕的。
假定已知道了某轮廓点串中的某轮廓点。为了求出下一个轮廓点,就以此轮廓点为中心,从前一次的轮廓点开始按顺时针方向旋转搜索8个相邻象素。图6示出其一例。设标以“☆”符号的是最新的轮廓点。按顺时针方向旋转搜索下个轮廓点,但直到序号1,2,3,4,5全是白象素gxy=0,所以不符合条件。第6个象素是黑象素,因gxy=1,所以是轮廓点。这样,由于求出了下一个轮廓点,所以就以第6个象素为中心来求其下一个轮廓点。
下面,用同样的顺序可以求出一个个轮廓点。因是根据邻近8个象素求下一个轮廓点的,所以能够得到连续的轮廓点串。轮廓点把gxy的值取为2。由此能够与内部的黑象素gxy=1相区别。另外,由于gxy=1的象素应该局限在画面上,所以如果逐次求轮廓点,就会回到最初的轮廓点。即轮廓点串形成环状。设这样的轮廓点串总共有U个,轮廓点串的序号用u表示,某轮廓点串u部的点的序号用k表示。
确定了1个轮廓点串时,就重新开始图4的扫描,搜索下一个轮廓点。知道了这个轮廓点后,就按同样的顺序确定轮廓点的坐标。有多个轮廓点串时,当然是从左上方开始进行这些处理并顺序标以0、1,…(U-1)的轮廓点串序号。对于内部有孔的情况如图5所示,可以通过若干次的扫描检出某些点。虽然进行图6所示的相邻点的搜索,但是,有孔时就如图5所示的那样按逆时针方向旋转找出轮廓点。这样,不论是外部的轮廓点串还是内部的轮廓点串,探索到后就存储点串的坐标。这些点串的gxy的值成为2。
由于轮廓点串的搜索是对于gxy=1的象素进行的,所以在外周和内周的宽度仅为1个象素时要产生一点问题。如图7所示。(a)是仅为1个象素宽度的环状的图形。gxy=1的象素分布为正方形。若宽度大于2个象素,就可以按前述的顺序毫无问题地求出外部轮廓点串、和内部轮廓点串。但是,如果宽度是1个象素,由于在先确定了外周的轮廓点串后,gxy=1的象素是轮廓点,故变为gxy=2。因为轮廓点的搜索是对于gxy=1进行的,因此gxy=2就不能再成为轮廓点串。于是,不去识别内周的轮廓点串。因此,就不考虑孔的存在。由于这样是不行的,所以,作为对策,规定当下一个轮廓点位于现轮廓点的下方时就不进行赋值(gxy→2),该点仍保留为gxy=1。在图7(b)中,右边中间的值为1就表示这一点。因为数值为1,所以,就找到了作为内轮廓点的出发点。从该点出发能够抽出内轮廓点串。结果,可以既不忽略内部的孔又能找出内外轮廓点串。图7(c)示出了这一结果。
结果确定了轮廓点串,由轮廓点串所包围的内部的黑象素就不是为了规定这个区域最早所必须的象素了。因此,内部的黑象素就不必存储。这样,就可以先减少应存储的数据量。
C.轮廓点串存储装置
轮廓点串存储装置是存储在前段所求的轮廓点串的装置。以(xu k,yu k)k=0 Nu-1 u=0 u-1的形式进行存储。如前所述,U是总点串数,u是点串的序号。点串u是的点的数目是N(u),k是点的序号。用k=0 Nu-1 u=0 u=1表示上述规定。(xu k,yu k)是第u个点串的第k个点的x、y坐标。再重复说明一下,把N(u)-1以标注的形式写为Nu-1。
D.数据近似机构A
数据近似机构有2个。这是最初的1个,为区别起见标以A。这是假定求出的轮廓点串的曲率大时,为了求连接点所必须的。为了求曲率,也可以在离散的点内采用若干个点作为数据,根据这些数据来求。本发明采用这样的离散曲率也可以实施。但是,这里用连续函数近似数据后,将其进行2阶微分求曲率。因此,此处的近似是数据近似。
因为是求曲率,所以,通常的方法是把x作为自变量,y作为因变量,求y对x的二阶微分。但是这样一来,对x,y的处理就变成非对称的,这是所不希望的。本发明不采用这样的方法。
这里,设自变量为t,因变量为x,y,用以t为自变量,x和y为因变量的2次分段多项式近似前述每个连续群的轮廓线的点串的x,y坐标,反复运用最小二乘法近似,直到近似精度达到指定的范围,求出轮廓线点串的每个群的近似多项式。这样做不是要得到最终的数据而是求连接点。
如前所述,把群u的点串k的坐标写为(xu k,yu k)。根据前述轮廓线点串存储机构可以得到这个坐标。图9示出了这一操作。先从轮廓点串存储装置读入轮廓点串全部的(xu k,yu k),把它们分解为参变量。即对于各点使共同的参变量t与2个(xu k,yu k)对应,也可以附加标注,成为tu k。虽然是二维信息,但是,为了把它用于一维问题而使用了参变量。图9的第2步示出了这一过程。
通过使用参变量,(tu k,xu k)和(tu k,yu k)这2个坐标的组合就和各轮廓点串的各点对应。以后,由于对2个变量的处理相同,故仅对1个进行说明。
按照以二维光滑函数(Fluency functions)的函数{ψm}为基底的线性组合给出近似群u中的轮廓点串(tu k、xu k)的t的函数Sx(t)。根据Sx(t)来近似群u中t的函数x。同样,利用Sy(t)也可以近似群u中的y。近似函数是否合适,可以通过评价最小二乘法的误差是否在规定的范围内来确定。
应该注意的是,这里是利用Sx(t)、Sy(t)近似轮廓点串群u的整个闭合曲线的。是用1个函数Sx(t)近似全体而不是中途具有的连接点。这是因为还没有决定连接点。如前所述,为了求曲率,有不利用近似的更简便的方法,那就是直接用轮廓点串的数据求离散曲率的方法。为了实施本发明,也可以利用这样的离散曲率,但是,这里对此不作说明,而说明近似函数Sx(t)、Sy(t)的生成。
将Sx(t)以非周期m次光滑函数ψk为基底展开,则
Sx(t)=∑k=-m M+mCx kφk(t)(10)
所谓光滑函数是本发明者命名的函数名。次数m对应于多项式的因次。M是维数。一般,设m次光滑函数的定义域为〔o,T〕,参量为k,把这个参量作为角标表示。Cx k是线性组合系数。ψk本身是在k附近有值的多项式。
φk(t)=3(T/M)-m∑q=0 m+1(-1)q{t-(k+q)(T/M)}m +/{q!(m+1-q)!}(11)
式中,
k=-m,-m+1,…,0,1,2,…,m+M
这里,标在m次下方的“+”号表示括号内的值为负时是0,括号内的值为正时是m次方的意思,即定义如下:
(t-a)m +=(t-a)mt>a(12)
0 t≤a(13)
基底函数ψk是在分段序号k~k+m+1内具有有限值、而在其两侧为0的山峰形函数。这是把{t-(k+q)(T/M)}m+从0上升的m次函数沿横向一个坐标一个坐标地移动(一个q一个q地增加)、重迭组合而成的形状。t>(k+m+1)(T/M)时,必须恒等于0。根据这一条件,重迭系数由(-1)q/{q!(m+1-q)!}决定。使区域的大小T与轮廓点串群的点数N(u)相等是比较简单,但也可以按某种比例进行定义。这样,利用光滑函数就可以近似轮廓点串。但是,由于具有T/M间隔的分割点有很多,故即使没有连接点也能够近似。为提高近似程度,可以提高光滑函数的因次m。但是,如果因次数很高,计算次数就要增加,从而会使处理时间加长。
本发明者的主张是:表示众多自然界物理量变化的函数可以用1次、2次光滑函数的线性组合表示。光滑函数并不是完备、正交、规范化函数。如果采用m值取到无穷大的函数并把它们进行线性组合,就可以表现任意的函数,这是毫无疑义的。然而,本发明者所说的并非如此,而是利用很小因次数的光滑函数描述自然界物理量的变化的情况。这里只采用m=2。这样就可以使文字、词符-插图等的轮廓线不会表现得过分不足。当然,本发明可以用m=3以上的光滑函数构成。
如果采用最适宜的函数系并利用它们的线性组合来描述物理量的变化,则可用最少的函数得到最佳的近似。如果函数系不佳,则必须以较多的函数为基底展开线性组合式。这样,既不能得到良好的近似,而且最终的数据也增多,从而导致存储装置的负担增大。还有,读出这些数据进行利用也不容易。故应选择最佳函数系。本发明者认为m=2为最佳。
本发明者在这里采用m=2的光滑函数。图46(a)示出了2次光滑函数的概略。这是跨越3个区间的2次曲线。两端的上升边和下降边是2次函数。中央的点为最大值,其邻域也是2次函数。
0次光滑函数如图46(b)所示,是仅在1个区间内取一定值的箱形函数。
1次光滑函数如图46(c)所示,是跨越2个区间的三角形函数。
3次光滑函数如图46(e)所示,是涉及4个区间的光滑函数。
一般m次光滑函数是跨越(m+1)个区间、中部具有极大值中部的平滑(m≥2)的函数。两端有以m次方的上升边和下降边。中部的函数形状仍是m次方。基底ψk的参量k每增加1,就从原来的位置向右平移1个单位。如果用m次分段多项式近似在某区间的某种变化,则在该区间具有值的函数的基底有(m+1)个。虽然可以采用m=3以上的函数,但这里取m=2。即,在3个区间上有值,极大值和端点处的2次函数。上式中m=2时,则
Sx(t)=∑k=-2 M+2Cx kφk(t)(14)
φk(t)=3(T/M)-2∑q=0 3(-1)q{t-(k+q)(T/M)}2 +/{q!(3-q)!}(15)
基底函数是4个从0开始上升的2次函数的重迭组合。这4个函数以{t-(k+q)(T/M)}2+所示的向横向逐次移动T/M。是小区间的数目从k到k+3有值的函数。由于大于k+4时恒等于0,故重迭系数成为(-1)q/{q!(3-q)!}。基数函数的数目为M+5个。M是全区间的分割数,将其称为近似的因次数。不能把它与光滑函数的次数m混同,用图47说明这一点。图(a)示出数据点。数据的区域是0~T。图(b)示出基底函数为3个、因次M为1的情况。这时,由于基底函数太少,所以系数的量也少,因而给不出良好的近似。然而,如果增加因次M,就如(C)所示,无论多么复杂的变化也能近似。近似的程度可以用在多大程度上接近原轮廓点串(xu k,yu k)来判断。根据最小二乘法评价,就是使
Q=∑{Sx(tu k)-xu k}2+{Sy(tu k)-yu k}2(16)
为最小。求和的范围是轮廓点串群u的全部点。这里,由于仅求曲率,所以精度不必很高。在后面说明的第2次的数据近似B中也是进行同样的近似。那时,精度将更高。
图10示出这一部分的流程。这是决定系数Ch,它的阶段是M。规了某个M时,根据(10)式,系数Cx h就唯一地决定了。然而,该系数并不限于满足最小二乘法的限制。这时,使因次M增加1。因而,当达到所希望的近似范围时,就用这个值确定因次M中的系数Ch。
(10)式左边的Sx(t)在t=tk时应成为Sx(t)=xu k。而且,把这个值代入到(10)式中,则
xu k=∑h=-2 M+2Cx hφh(tu k)(17)
把上式乘以ψw(tu k),并对点串k求和,则
∑k=0 N-1φw(tu k)xu k=∑k=0 N-1∑h=-2 M+2Cx hφh(tu k)φw(tu k)=∑h=-2 M+2∑k=0 N-1φh(tu k)φw(tu k)Cx h(18)
这里,从第2式到第3式的变化是交换了求和的顺序。由于是有限数列,故可以自由地变更求和次序。
该式的左边∑k=0 N-1φw(tu k)xu k可以认为是标注为W(W=-2,-1,0,1,2)的M+5维的列向量。右项的前项可以认为是光滑函数的乘积之和∑k=0 N-1φh(tu k)φw(tu k)即M+5列、M+5行的正方形矩阵。另外,右边的后项Cx h是M+5列的行向量。由于在文字上方不能添加“→”符号,所以决定以下把表示向量的符号“→”加在文字之后。用
向量=cx→=T{C-2 x、C-1 x、····Cm+2 x}(19)
向量=bx→=T{∑K=0 N-1φ-2(tu k)xu k,∑k=0 N-1φ-1(tkxu k···,∑k=0 N-1φM+2(tu k)xu k}(20)
定义向量bx→、向量Cx→。T表示转置矩阵。
矩阵G定义为
G={Ghw}={∑K=0 N-1φh(tu k)φw(tu k)}(21)
向量之间下式成产立:
bx→=Gcx→(22)
这是求向量C→的公式,但是,以
cx→=G-1bx→(23)
的形式可以求关于某个因次数M的系数Ch。G-1是矩阵G的逆矩阵。这是对于x的计算。对于y同样
Sy(t)=∑h=-2 M+2Cy hφh(t)(24)
yu k=∑h=-2 M+2Cy hφh(tu k)(25)
∑k=0 N-1φw(tu k)yu k=∑k=0 N-1∑h=-2 M+2Cy hφh(tu k)φw(tu k)=∑h=-2 M+2∑k=0 N-1φh(tu k)φw(tu k)Cy h(26)
也成立,用
向量cy→=t{C-2 y、C-1 y、····Cm+2 y}(26′)
向量by→=t{∑k=0 N-1φ-2(tu k)xu k,∑k=0 N-1φ-1(tu kxu k,···,∑k=0 N-1φM+2(tu k)xu k}(27)
来定义向量b→、C→。和(23)式相同,对于y分量也可以以
cy→=G-1by→(28)
的形式求关于某因次数M的数Cy h。G-1是矩阵G的逆矩阵,和用于x的计算相同。图10说明了这一情况。最初是对群序号u=0进行的。另外,近似次数M从1开始。这样,对于轮廓点串u=0可以求出近似(xu k,yu k)的Sx(t)、Sy(t)的系数Cx h、Cy h。计算它们与(xu k、yu k)点之差的平方和Q,则为
Q=∑k=0 N-1{Sx(tu k)-xu k}2+{Sy(tu k)-yu k}2(29)
把Q值与预先确定的阈值ε相比较。ε是充分小的确定的正定数。在此取为1个象素的距离。如果Q>ε,则近似就不够充分。因此,这时,就把次数M从1增加到2。于是Ch数增加1。
在此种状态下,反复同样的过程,如果还是Q>ε。就进一步把M加1。然后,反复同样的过程,提高近似程度,直至使Q<ε。这样就确定了M和{Cx h}、{Cy h}。从而可以求近似函数Sx(t)、Sy(t)。当完成对轮廓点串群u=0的计算时,对u=1的群进行计算。以下,同样,当对某个u值决定了系数时,就对下一个u+1的轮廓点串进行同样的计算。并且反复进行计算直至u=U-1群为止。
下面,根据图48再次说明文字字体的近似机构的过程。设画面上输入“和”字。如果进行轮廓点串抽取,能得到3个轮廓点串群。左边的轮廓点串为u=0,右边的“口”部分具有外轮廓点串u=1和内轮廓点串u=2。从画面左上方的点(0,0)开始向右方向逐行扫描象素的值。把最先遇到轮廓线点记为(to o,xo o)、(to o,yo o),以t为参量求轮廓点串的坐标。作为t的函数能够得到轮廓点串坐标x(t)、y(t)。若用2次光滑函数进行近似,则首先从M=1出发。这是把全区间〔0,1〕作为1个区间处理。3个基底函数ψ-2、ψ-1、ψ。在这个区间有值。适当地选择这些函数系数的3个值,能得到中间所示的近似曲线、放大后来看,可知与原数据的误差相当大。根据误差的平方和评价误差,近似不充分时,使M增加1。在下一步,示出了m=2的例子。基底函数增加为4。最后一步示出了M=10的情况。基底函数的个数为12。随着M的增大,能够精密地近似复杂的曲线。这里所说明的是用于求曲率的近似,而在后面所述的数据压缩时的近似中,对各个区间进行这种操作。
以上是数据近似机构A。
下面根据图49进一步说明词符-插图情况的近似机构的过程。设画面上输入香烟的概略图的图形。如果抽取轮廓点串,能得到2个轮廓点串群。左边长方形的轮廓点串为u=1,右边烟的部分具有轮廓点串u=0。从画面左上方的点(0,0)开始向右方逐行扫描象素的值。把最初遇到轮廓线的点记为(to o,xo o)、(to o,yo o),以t为参量求轮廓点串的坐标。能够得到作为t的函数的轮廓点串坐标x(t)、y(t)。
其后的过程与图48文字字体的场合相同。
E.曲率演算机构
由于对所有的轮廓点串群求出了近似函数,故通过对这些函数求2阶微分,可以求出各轮廓点串群和各点的曲率。图11示出了曲率计算的流程。轮廓点串群u的第k个点(xu k、yu k)的曲率K(tu k)可以利用公式
K(tu k)={Sx′(tu k)Sy″(tu k)-Sx″(tu k)Sy′(tu k)}/{Sx′(tu k)2+Sy′(tu k)2}3/2(30)
进行计算。从最初u=0的轮廓点串群的k=0的点开始计算。对每个点进行这一计算。即,当完成对第k点的计算时,接着就对第k+1点进行同样的计算。当一个轮廓点串群的计算结束后,就移到下一个轮廓点串。并且,对所有轮廓点串的全部点求曲率。
E′.近似曲率存储装置
这是把在前一步所求的曲率K(tu k)按每个点(轮廓点串群u、第k点)进行存储的装置。
F.正圆抽出机构
这是根据近似曲率判断某个轮廓点串是否为正圆、并抽出正圆的机构。文字、(词符-插图中有不少正圆部分。就是利用字文、词符-插图的这种性质。然而,这里所说的正圆是对轮廓线而言的,所以,指的是孤立的正圆。对于正圆部分与其它的直线,曲线交差接触的情况,不能抽出正圆。对于图33的情况,通过抽出正圆可以去除加在右肩上的圆。对于图44的圆形图表的情况,亦因为最外周的圆是孤立的圆,所以通过正圆抽取被抽出后,以后就可以从近似计算中除去。
如果抽出正圆就有如下优点。其一,原来是正圆的图形,即使因噪声产生一些畸变,由于也按正圆变为数据化处理,所以能够非常正确地决定完全除去噪声的形状。还有,由于圆只用半径和圆心的坐标就能够指定,故在数据压缩这一点上是极其有效的。
所谓正圆是其轮廓点串中各点的曲率全部相等的图形。利用这个性质可以抽出正圆。图12中说明了其流程。首先读入关于曲率K(tu k)的数据,然后,检查各轮廓点串群u是否构成圆。求关于轮廓点串群u的平均曲率ku。这就是简单地对曲率求平均值。群序号u应该加括号,但是,因为括号不能加在标注上,所以只写作u。在图面上添标有括号。
Ku={∑K=0 N-1K(tu k)}/N(31)
这就是平均曲率。预先确定曲率的上限ε1,若平均曲率大于ε1,就认为该轮廓点串u群不是正圆。
|Ku|>ε1(32)
是包含曲率极大点的情况,与不是圆又不能微分的点和拐点等相对应。这时,将群u表为不是正圆的表示Circle(u)=0。
与此相反,若平均曲率小于ε1,则群u有可能是正圆。因此,从k=0的点开始求点附近的曲率K(tu k)与平均曲率Ku之差的绝对值,并检查这个值是否小于一定的阈值ε2。如果
|Ku-K(tu k)|<ε2(33)
则有可能是圆的一部分。于是,对下一个点k=1的曲率同样也求与平均曲率之差的绝对值并与ε2相比较。这样,依次对群u的所有点进行比较。只要这个不等式成立,这些点就位于圆弧上。若在某点曲率和平均曲率之差大于ε2,则该点就不再位于圆弧上,包含该点的轮廓点串也就不形成正圆。这时,就对该群标以不是正圆的表示Circle(u)=0。
如果群内所有点的曲率与平均曲率之差都小于ε2,则该轮廓点串就是正圆。因此,就标以是正圆的表示Circle(u)=1。对于所有的轮廓点串群从0~U-1进行这样正圆的抽取。最后,总起来从群u=0开始对群检查是否Circle(u)=0。如果所有的轮廓点串群u都是Circle(u)=0,则在这些文字字体、词符-插图中设有一个正圆。若有Circle(u)=1,则该群是正圆,可以求出该圆的圆心坐标(X,Y)和半径r,并把它们输入正圆存储装置G存储起来。
G.正圆存储装置
这是用于在前一阶段所求出的正圆的圆心坐标和半径r的装置。由此,可用3个值记述群u的数据。由于以文字字体、词符-插图为对象,所以全部轮廓点串是闭合曲线。对于单重正圆的情况,由于是内部整体用黑象素涂满的圆,所以是孤立的圆点。对于2重正圆的情况,与2重圆之间用黑象素涂满的圆圈(はひ
へほ)等相对应。
H.连接点位置抽取机构
所谓连接点,就是直线和直线、曲线和曲线、直线和曲线等的连接处。由于是不同斜率的线相接故称之为连接点。对文字字体、词符-插图进行函数近似时,连接点起着极其重要的作用。因此,对于连接点的意义。连接点的作用、连接点的抽取等等必须具有明确的观念。本发明通过正确适当地决定连接点,可以使文字字体、词符-插保持高品质,同时使数据量减到最少。
图13示出连接点抽取过程的概略情况。输入文字,词符-插图后,把它们作为图象,形成2值图象后,抽取构成外周的轮廓点串。由此,对得到的各轮廓点串群抽出连接点。
首先,抽取已知道的连接点。这可以按曲率大的点决定。这是临时连接点,还不是最佳的连接点。还有,仅以这样的点不能找出所有的连接点。反之,也包含有不必要的连接点。
因此,必须对连接点的指定做修正。然后进行直角部分连接点的抽取、这将在后面叙述,这是为了在文字、词符-插图的二条直线交差时使交差点的接续平滑。所谓直线的连接点就是始点和终点,是细线,是在曲率大的条件下追加不显现的连接点情况。对于文字的情况几乎不必要,但对于词符-插图,常常是必要的。
反之,由于有不必要的连接点,所以必须除去这些点。其中之一就是位于直线中的连接点。如果连接点位于直线的中间,则当到直线的距离比较小时,即使除去该点也能够保持为直线。因为它是由噪声产生的连接点,所以除去。另一种是圆弧的连接点。本来应是一个圆弧的曲线,有时会因为连接点多而分离为二个圆弧来表现。这也要除去中间的连接点将圆弧合并成一个圆弧。
并且,当确定了连接点时,就用分段多项式近似各区间。这种分段多项式的近似和前面在数据近似机构A中所述的相同,但是,前面所述的近似区间遍及所有轮廓点串群。现在并不是那样,而是在每个连接点进行分段多项式近似。
首先,对临时连接点的抽取进行说明。在连接点处,由于斜率变化,故曲率也大。在接着进行的函数近似时,连接点是决定函数的定义域的。连接点和连接点之间是直线或斜率平滑地变化的曲线。连接点间的近似函数可以用简单的形式表现。因此,只要求出连接点的坐标和连接点间的近似函数,就可以求出该文字字体的全部数据。
但是,若连接点的选择不合适,连接点之间过于分离,则由于相邻连接点之间不能用简单形状的近似函数表现,反而增加了数据量。反之,若连接点过多,则由于连接点坐标的数据增加,故不能充分进行数据压缩。因此,连接点的选择是很重要的。根据图14的流程,说明连接点位置的抽取方法。前面已对全部轮廓点串求出了近似曲率,故可以利用它们。
从近似曲率存储装置E′读入曲率,该曲率是{K(tu k)}。根据这些数据顺序检查u群中所有点k=0~N-1的曲率是否大于某个值δ。即,
|K(tu k)|>δ(34)
所谓连接点,就是斜率是不连续的,并且是曲率大到某种程度的点,所以利用这种方法可以求出。δ的值可以根据不同目的适当决定。
而且,由于构成正圆的轮廓点串已被除去,所以,在圆弧的一部分用这种演算不会出现大曲率的点(不可能是连接点)。
因此,把曲率超过δ的点作为临时连接点。并且,把这个坐标(xu k,yu k)存储到连接点位置存储装置I中。设临时连接点的序号为i。因此,第i个临时连接点可以写为di(xu i,yu i)。轮廓点串中的序号k置换为连接点序号i。对于各点k进行这样的比较和连接点的抽取。对群u进行这样的处理后,对群u+1进行同样的处理。这样就能得到各群内所有临时连接点的坐标。
下面,直觉地说明连接点。图15是平假名“あ”和片假名“ボ”的原文字。把它们输入到图象处理装置进行轮廓点串抽取,抽出连接点的图形示于图16。标“x”号的地方是连接点。为了无差错地抽取这些连接点,之后要进行一些计算。
另外,图17是乐谱音符的例子。左右有2条竖线,上面有2条倾斜地连接竖线的线。竖线的下方连接着2个倾斜的椭圆。(a)是原图,是黑白图形。(b)是进行轮廓点串抽取、进而抽取出连接点后的图形。标有“x”号的点是连接点。在这个例中,有外侧轮廓线亻和内侧轮廓线口2条轮廓线。
外轮廓线亻具有连接点ハ~ヌ。ハ~二、二~ホ、ヘ~卜、卜~チ、チ~リ、ヌ~ハ是直线。ホ~ヘ和リ~ヌ是自由曲线。内轮廓线口中,ル~ヲ,カ~ワ是直线。ヲ~ワ、カ~ル是圆弧或自由曲线。这个例中直线部分多,能够把直线按直线的形式正确地抽取出来。当然也包括自由曲线部分。
图18是半导体二极管的略图。大的圆形中有三角和线段,有从这些线段中央横向贯穿的直线。轮廓线有外侧圆形的轮廓线ヨ和内侧轮廓线レ、ソ共有3条。外轮廓线ヨ的连接点有8个,仅对上半部分标注了符号。ッ、、ネ是短线段,ネ~ナ是半圆弧,ナ~ラ是短线段,ッ~フ是短圆弧或自由曲线、内轮廓线レ、ソ是对称的,所以对レ进行说明。ム~ウ是线段,ウ~ヰ是线段,ヰ~ノ似乎也是线段,但在ノ的附近为自由曲线。ノ~オ是线段,オ~ク也是线段,ク~ヤ是线段,ヤ~マ是线段,マ~ム是半圆弧。这个图形直线部分也较多,其次圆弧也较多。在几何学中线段规定了两端,直线是没有两端的图形,但在本说明书中把线段和半直线也称为直线。
当然不是说无论什么样的词符-插图都是直线多,也有圆弧多的图形(图45、图56)、自由曲线多的图形(图51、图53、图55、图57)和多种多样的图形。词符-插图是由设计者的自由想象创造出来的,所以无法决定其倾向。
I.连接点位置存储装置
这是存储由前述操作求出的临时连接点的序号和坐标di(xu i,yu i)的装置。称为临时连接点是正确的。关于连接点,有前述以大曲率所选择的临时连接点和后面所述的候补连接点以及最佳连接点3种。不能将它们混同。
J.最佳连接点抽取机构
前面所求的是仅以曲率的大小判断的临时接合点。这些有的并不是实际的连接点。在光学读取文字字体。词符-插图的图象中,由于透镜及玻璃对光的反射和散射以及外界干扰光等存在噪声,所以实际上有时2条直线、2条曲线的连接点的曲率会变小。因此,按照前面的处理,有时可能没有以连接点留下来。相反,由于噪声的影响,尽管是直线、曲线的中间点,有时也因曲率变大而视为连接点。
因而,必须找出最佳连接点。最佳连接点应该位于用前述方法求出的候补连接点附近。所谓最佳连接点,如前所述是直线和直线的交点及拐点等,所以,是文字、词符-插图所固有的。由于噪声的影响,仅用曲率的大小不可能够正确地找到它们。
图19示出了最佳连接点抽出机构的流程。从连接点位置存储装置I读入临时连接点di(xy i,yu i)i=0 I=1。这里,u是轮廓点串的群序号,i是该群中临时连接点的序号,I是该群中临时连接点数。称为临时连接点是因为这不是最终的连接点。本发明的显著特征也在于此,对于连接点的位置反复推敲这一点,在本发明中是很重要的。
考虑临时连接点附近的几个称为候补连接点的点。设它们为λi。加上坐标写为λi。(xio,yio)。i是临时连接点的序号,应该放在括号内作为上标,但因括号不能形成1/4角,所以省略。在图面正确地书写为(i)的标注。省略了群u的表示。当然是群u中第i个临时连接点附近的候补连接点。设候补连接点的数为0。这对任何临时连接点都是相同的数。图20示出了这种表示方法。
中央的xi是根据曲率所选择的临时连接点,其前后α个是候补连接点。不过,这里写为xi的就是di(xu i,yu i)包括x坐标和y坐标2个坐标的意思。虽然可以写为di,但这里为了清楚地表示是位置坐标的意思,所以简单地写为xi。后面出现的附近连接点的表记也是同样的。
候补连接点有o=0,1,…,0-1个。这由di+α或di-α求出的。这是把临时连接点前后α个轮廓点串作为候补连接点的结果。由于临时连接点也和它对应,故0=2α+1。其中存在一个最佳连接点。根据临时连接点与最佳连接点偏离的大小的评价来决定,偏离大时必须增大α。但是,如果增大α,后面的计算量就要增加。因此,应该兼顾两方面决定适当的数。
接着,根据这个数抽出近旁连接点{di(xu i,yu i)}。近旁连接点是位于以临时连接点xi为中心、半径为ρ的圆内的临时连接点,是由连续的轮廓点串所联系的点以及位于由包含这个临时连接点的轮廓点串所包围的轮廓点串内的点。例如,对于“ ”这一文字的情况,右下角的○的内侧轮廓点串也形成外侧临时连接点的近旁连接点,对于图33的词符-插图的情况,如最下段所示的包含在○内部的临时连接点サ、
、テ成为近旁连接点。
设对近旁连接点标的序号为j。成为先前考察对象的临时连接点xi以i为序号,以示区别。所谓位于半径ρ内,可以用条件
{(xi-xj)2+(yi-yj)2}1/2<ρ(35)
表示。需要“由轮廓点串联系着”这个条件,是因为最佳连接点的抽出,在线与线的交差处为了使连接点之间光滑地相联系。没有由轮廓点串联系着的连接点之间的相对关系,无论如何都可以。另外,由轮廓点串(黑象素的连结)联系的这一条件可以利用xj与xi是否在一个轮廓点串群中简单地进行检查。
近旁连接点应该正确地写为xj(xu j、yu j),但由于太冗长,故以后简单地写为xj。这不单纯只是x坐标,也包含y坐标的意思。
设近旁连接点的数为J。J有时为0,有时大于1。J=0时,没有近旁连接点。J大于1时,有几个近旁连接点。对于两种情况的处理不同。下面,分为J≥1和J<1(即J=0)的两种情况进行说明。
J≥1时,进一步分为两种情况。轮廓点串的跟踪,在外部有轮廓点串时,顺时针旋转,位于内部时,逆时针旋转。所以,有的近旁连接点xj位于成为考察对象的临时连接点xi之后,有的近旁连接点xj位于xi之前。必须区别二者。
位于用曲率选择的临时连接点xi之前的近旁连接点xj称为输出近旁,如图21所示。位于临时连接点xi之后的近旁连接点xj称为输入近旁。即,位于从临时连接点xi向轮廓点串扫描方向发出的向量走出去的前端的近旁连接点是输出近旁。相反,从近旁连接点向扫描方向发出的向量进来的临时连接点是输入近旁。关于输出近旁和输入近旁的判断在后面进行说明。
情况1.(J≥1,输出近旁的情况)
首先,根据图21考虑输出近旁的近旁连接点。可以有几种考虑方法。这里,考虑4个临时连接点的近旁。并且,根据联系这4个点的曲线为最光滑的这一条件,决定临时连接点附近的候补连接点λi。(xio,yio)中的最佳点。
图21中,最初根据曲率所选定的临时连接点是xi(C的附近)。近旁连接点是xj(B的附近)对于输出近旁的情况,考虑临时连接点的下一个临时连接点xi+1(D的附近)和近旁连接点xj之前的一个临时连接点xj-1(A的附近)。连接这些点,使通过这4个点的曲线最光滑,这4个连接点内,两侧的A、D固定,仅移动中间的B、C求适宜系数。B、C点具有2α+个候补连接点。于是,进行(2α+)2个组合的分段多项式近似。其中,最光滑地联结4个点的近似给出最高的适宜系数。
有几种方法表现光滑这一条件,但是,此处采用根据曲线的拐点最少这一条件进行评价。以逐次近似为例,用t表示近似的次数。
曲线的端点A是xj-1中某个候补连接点λj-1(xj-(l),yj-(l))。不过,这里候补连接点的角标是1′,但因“′”号不能用于1/4角格式,故在此写为1。实际上是1′。
中间点B是近旁连接点xj的某个候补连接点λj l(xj1,yj1)。候补连接点的序号用1表示。1是一个参数,改变1要进行若干次相同的计算。
中间点c是原来的临时连接点xi中某个候补连接点λi o(xio,yio)。候补连接点的序号用o表示。o是一个参数,改变它要反复若干次相同的计算。
曲线的另一个端点D是xi+1中某个候补连接点λi+1 o(xio,yio)。不过,这里候补连接点的角标是o′,但是由于“′”号不能用于1/4角格式,故在此仅写为o。实际上是如图21的o′。
以上是计算的顺序,但是,由于两端的A、D点是固定点(在第t次近似中),所以,对于中间点B的候补连接点Xi i(xil,yil)、中间点c的候补连接点λi o(xio,yio)逐次改变参数l、o反复进行计算。在这个计算中把作为连接点的适宜性视为概率函数进行计算。概率函数具有由曲线光滑性决定的系数rij(ol)。可以把这个系数称为适宜系数。i和j是临时连接点xi和近旁连接点xj的符号。
o和l是这些临时连接点所属的候补连接点的序号。由于系数是对每个参数o、l决定的值,因而必须有这些角标。在曲线ABCD足够光滑时为1,不光滑时小于1。所以可以成为决定曲线适宜性的参数。
图22是表示存在近旁连接点时(J≥)的适宜系数rij(ol)决定法的流程图。首先指定参数的范围。
i从o变到I-1,对于根据曲率所求的临时连接点xi就是从0到I-1反复进行这种计算。
0从0变到2x,就是在作为对象的临时连接点xi中有2α+1个候补连接点,故对它们一个一个地进行计算。
i从0变到J-1,就是有多个近旁连接点xj时,要全部对它们反复进行这种计算。因为J大于1,所以必须如此处理。
1从0变到2α,就是在邻近连接点xj中有2α+1个候补连接点,故对它们一个一个地进行计算。
虽然对i、o、j、l各参数进行这样的计算,但这里,书写的顺序不同,并不是越靠前面的参数构成的循环越大。但是,根据以后的说明,可以唯一地给这些参数的变化。
首先,根据与数据近似相同的方法,用光滑函数近似点A、B、C、D。即,用分段多项式进行近似。近似函数的次数为2次就足够了。在前述的公式中,取m=2,则
Sx(t)=∑k=-2 M+2Cx kφk(t)(36)
Sy(t)=∑k=-2 M+2{-M+2Cx kφk(t)}(37)
φK(t)=3(T/M)-2∑q=0 3(-1)q{t-(k+q)(T/M)}2 +/{q!(3-q)!}(38)
k=-2,-1,0,1,2,……,M+2(39)
这里,参量t是表示连接量的to与前面所讲的表示近似次数的t不同。由于字符数不够,故用同一个t表现不同的量。
最初的数据近似时,对全部轮廓点串确定范围T,对全部轮廓点串给出一个近似。所以,必须参照所有轮廓点串的坐标数据。
然而,此处不是那样,只要联结4点ABCD就可以了。只需要4点的坐标,不需要4点间众多的轮廓点串的坐标。由于只要联结4点就可以了,故用分段多项式近似AD。区间T与曲线AD对应。虽然进行图10所示的计算,但因点数明显减少,故这种近似很简单。用最小二乘法确定系数时也相同。利用这样的近似可以作通过4点的近似曲线ABCD。
下面,计算曲线ABCD的各轮廓点处的曲率。由于有近似函数Sx(t)、Sy(t),所以有
K(tu w)={Sx′(tu w)Sy″(tu w)-Sx″(tu w)Sy′(tu w)}/{Sx′(tu w)2+Sy′(tu w)2}3/2(40)
式中,w=A、B、C、D
这不用遍及整个曲线AD求曲率,只计算4点就行,因而很简单。
下面,根据曲率的反转次数求拐点数nc。拐点数当然小于3。图23是曲线的大致形状和拐点数nc的示例图。用“X”号表示拐点。(a)是拐点数为3的情况,曲折明显。(b)是拐点数为2的情况,(c)是拐点数为1的情况,(d)是拐点数为0的情况。这是最光滑地联结4点的情况。采用这个形式是所希望的。这时,规定rij(ol)为1。例如,用拐点数nc,可以按下式决定:
rij(ol)=min{1/c2(nc-c1),1}(41)
(c1、c2は定数)
(c1,c2为常数)
在本例中,拐点数为3时,rij(ol)=1/3。这是取c1=-1、取c2=3/4的结果。于是,n2=2时为4/9,nc=1时为2/3,nc=0时为1。当然可以适当决定这些常数。1和min的演算是为了防止在拐点数过少时计算值过大,但是,并不是说rij(ol)的上限必须为1。也可以仅用公式rij(ol)=1/c2(n2-c1)计算。
重复若干次这种计算。用t表现近似计算次数。这是求概率的计算。关于近似计算将在后面将叙述。这里,仅就适宜系数rij(kl)决定进行了说明。
情况2,(J<1时,没有近旁连接点)
图24示出了J>1,即不存在近旁连接点时的处理流程。图25示出了这种情况下连接点位置的例子。这是临时连接点Xi之前的临时连接点Xi-1和其后的临时连接点Xi+1的3点联结的问题。图24的流程中开始也定义了参数的范围。
i从0~I-1,是临时连接点的序号,对所有的临时连接点进行演算。k是临时连接点Xi的候补连接点λi k(Xik、yik)的序号。1是Xi之前的临时连接点Xi-1的候补连接点λ(i) 1(Xi-11、yi-1)的序号。对所有的候补连接点进行计算。j是i-1~i-1,即,j仅是j=i-1。
设各个临时连接点的临时连接点Xi-1、Xi、Xi+1的候补连接点为A、B、C。点A是λi 1(Xi-1 、yi-1 ),1是参数。点B是λi k(Xik、yik),参数是k。点c是Xi+1的候补连接点λi h(Xih、yih),表示,maxh(pt-1 i+1h),maxh表示参数h中的最大者。
用光滑函数插值这3个点。虽然用图10所示的方法进行,但只有3个点,故极其简单。然而这也要提高近似程度,用t表示近似次数。并且,近似到最小二乘法的误差达到εmax。这时,设近似的因次数为M。rij(ol)由min{1/(c3m+c4ε,1}决定。ε是最终误差,M是最终因次。
即,要求出能以尽可能低的因次,很小的误差进行近似的点。这样的点可以在分别属于各临时连接点的候补连接点内给出最光滑的曲线。t是近似次数,从0开始上升。与前面说明的J≥1时相同,t从0-4,在4次停止近似。
情况3,(J≥1,输入近旁的情况)
图21中所示的是J≥1时对于临时连接点Xi的近旁连接点Xi为输出近旁的情况。J≥1时,近旁连接点Xj为输入近旁的情况也进行同样的计算,但这时,4个点的取法稍有不同。
图26地出了输入近旁情况下对于近旁连接点Xj取4个点的方法。近旁连接点Xj位于以Xi为中心的半径ρ内。而且对于扫描方向,该点位于原来的临时连接点Xi的前面。4个点是作为对象的临时连接点Xi之前的临时连接点Xi-1和近旁连接点Xj的下一个临时连接点Xj+1。从位于这些点附近的2α个候补连接点中取出4个点。
A是Xi+1的候补连接点λi 1(Xj+1 、yj+1 )之一。这里的1是加“′”的,但由于它能用于1/4角的格式,故省去“′”号。该点是用前面的概率计算给出的最大值决定的,是固定值。
B是近旁连接点Xj的候补连接点λi 1(Xil、yil)之一。
C是作为对象的临时连接点Xi的候补连接点λi 0(Xi0、yi0)之一。
D是Xi-1的候补连接点λi-1 0(Xi-10、yi-10)之一。该点也是利用前面的概率计算中给出的最大值决定的,是固定值。如图所示,实际上是o′,但是由于“′”不能形成1/4角,故这里省略。
以上确定了4个点。以后的计算与前面说明过的情况1相同。〔输出近旁和输入近旁决定方法〕
对于作为对象的临时连接点Xi的近旁连接点Xj,必须区别输出近旁和输入近旁。通过沿轮廓点串扫描方向的2个临时连接点的向量指向近旁连接点时,称为输出近旁。相反,通过沿轮廓点串扫描方向的2个的近旁连接点的向量指向临时连接点时称为输入近旁。
这是难于理解的概念。连接点具有2个近旁连接点,必须与二者光滑地接续。为此,必须区别这两个近旁连接点。
图27是决定输入、输出近旁连接点的流程。输入全部候补连接点λi 0(Xi0、yi0)。
i是计算对象即临时连接点Xi的序号。对于一个轮廓点串群u有I个序号(0~I-1),从i=0开始。j是近旁连接点的序号,当然不是从一开始就知道是否为近旁的。开始,全部为临时连接点Xj。o是包含在临时连接点附近2α个之内的候补连接点的序号。图中,o上加有上横线,但在说明书中未加横线,省略了仅固定临时连接点Xi的i,决定近旁连接点。
di(xu j,yu i)是第j个临时连接点的坐标,为简单起见写为dj。检查di是否在以λi 0(Xi0、yi0)。(为简单起见,写为λi 0)为中心的半径ρ内。这里(35)式中已示出的条件,现在再次记述如下:
{(xio-xj)2+(yio-yj)2}1/2<ρ(42)
(35)直接使用了临时连接点的坐标Xi,这里使用Xi的候补连接点的坐标。如果dj位于半径ρ内,则该点有可能是近旁连接点。其次,检查dj和λ0是否位于同一个轮廓点串。如果位于不同的轮廓点串,它们就不是近旁连接点。
如果位于同一个轮廓点串,dj就是λi 0所属的临时连接点Xi的近旁连接点。用di表示Xi。在作为对象的临时连接点Xi,可以用di-b表示某一常数b前面的点的坐标(不一定是候补连接点)。向量di-bdi的方向在临时连接点沿扫描方向。但b在图中是β,由于β不能成为1/4角格式,故在此写为b。b应该改读为β。另外,由于在文字上面不能加→号故在这里写为标量。
一方面,在近旁连接点Xj可以把位于其后一定数b的点的坐标写为dj+b。向量djdj+b的方向在近旁连接点之后沿扫描的方向。计算这些向量的标积。标积很小时,这些向量几乎正交。即,如果
向量didi+b·向量djdj+b<ε(43)
则两者几乎正交。式中,ε是适当小的数值。这时,dj是输入近旁。于是,把它作为dinput j(i)进行存储。
另一方面,在近旁连接点Xj,可以把位于其前面一定数b的点的坐标写为dj-b。向量djdj-b的方向在近旁连接点之前沿扫描的方向。计算这些向量的标积。标积很小时,这些向量几乎正交。即,如果
二者几乎正交。式中,ε是适当小的数值。这时,dj是输入近旁。于是,把它作为doutput j(i)进行存储。
以上所说明的是利用向量标积的情况,也可以利用向量的矢积。使用矢积时,可以找到平行的向量,即
|向量di-bdi×向量dj-bdj|<ε(45)
|向量didi+b×向量djdj+b|<ε(46)
等等。另外,若用以上方法还不能知道输出近旁和输入近旁的区别,则计算标积
向量di-bdi·向量dj-bdj<ε(47)
向量didi+b·向量djdj+b<ε(48)
确定这些标积的正负后,就能区别输入、输出近旁。
[概率的计算]
为了求最佳连接点,对候补连接点进行以下的计算,以选择最佳点。图28是表示这一计算的流程。输入的是
λi o(xio,yio)、dinput j(i)、doutput j(i)(49)
λi 0(Xi0、yi0)是根据曲率所选定的临时连接点Xi附近的候补连接点。o是候补连接点的序号。i的意思是关于Xi的量。dinput o(i)是临时连接点Xi的近旁连接点中的输入近旁连接点的位置坐标。doutput j(i)是Xi的近旁连接点中的输出近旁连接点的位置坐标。
开始时先输入这些值。用t表示计算概率的次数。这不是当用最小二乘法决定的误差小到某种程序时中止计算,而是从开始就预先决定次数。例如取4次(t=0-4)。当然根据目的不同也可以取5次以上。
定义概率变量pt i(O)。这是位于临时连接点Xi附近的2α+1(包括Xi自身)个候补连接点内0的第t次概率。不是t次方而是第t次,所以应该加括号。但由于不能把括号加在标注上,所以只写为t。这里说的概率是作为最佳连接点的概率。在2α+1个候补连接点内,选择它的概率最高的点。每增加概率计算的次数t,对于连接点,就提高了更适宜的概率变量。这样,就可以决定概率变量。当然,可能有几种定义。在这里,按如下决定。考虑互补概率变量Qt i(o)。这个变量也给出候补连接点0的第t次概率,这是输入近旁的贡献qinput i(o)与输出近旁的贡献qinput i(o)之和。这些值也计入了t次,但此处省略。
Qt i(o)=qinput i(o)+qoutput i(o)(50)
qinput i(o)和qoutput i(o)定义如下:
qinput i(o)=max{rij(ol)×Pt j(l)}(51)
(λj l∈dinput j(i))(52)
式中,max的计算,在候补连接点λj 1属于dinput j(i)的候补连接点这一条件下取最大值。这里,l是变化的参数。适宜系数rij(ol)已在前面给出。同样,
qoutput i(o)=max{rij(ol)×Pt j(l)}(53)
(λj l∈doutput j(i))(54)
max的计算,在候补连接点λj l属于doutput g(i)的候补连接点这一条件下取最大值。
第t+1次的概率变量是用第t次的概率变量、互补概率量等按如下定义的。
Pt+1 i(o)=Pt i(o)Qt i(o)/{∑Pt i(o)Qt i(o)}(55)
(∑是对λi 0进行求和)。
在t=0-4进行这个计算。但是,初始(t=0)的概率变量不知道时不能计算。虽然初始概率不管怎样赋值都可以,但是此处赋予尽可能接近Xi的较大值。因为一般认为最佳连接点位于临时连接点Xi的附近,如果提高Xi的初始概率,就可能提高概率变量的收敛速度。
图30中说明了初始值的设定。候补连接点λi 0有2α+1个。从0开始。o=α时,就是Xi本身。初始值Pi′(o)在o=α时取最大值k。0=α-1,α+1时取(k-2)。以后,随着远离α,每次减少2。在o=0、2α时,初始值是1。使用初始值时,初始概率P(o) i(0)为
Po i(o)=Pi′(o)/∑Pi′(o)(56)
∑的运算对0进行求和。这样,由于给出了初始概率,所以,和适宜系数rij(ko)组合后,就可能计算t=1时的qinput l(o)和qoutput i(o)。作为它们的和,可以计算互补概率变量Qt i(0),以及进而计算第t+1次的概率变量pt i(o)。反复进行这一计算直到t=4。在t=4时,具有最高概率变量的候补连接点就是最佳连接点。这里的输出是p4 i(0)i=0 I-1 o=0 0-1,示于图31。
这样,就能根据位于由概率求出的临时连接点附近的候补连接点求出最佳连接点。开始时,先求临时连接点,进而把范围扩大到该点附近的轮廓点中,作为候补连接点,从中求出最佳连接点,这就是本发明的显著特征之一。这是基于本发明者发现,曲率极大的点作为连接点,不一定是最佳的。
〔适当系数的其它定义〕
在前述方法中,最佳连接点的条件是连接4个点的曲线的拐点最少,即最光滑地接续。除了计算拐点数外也可以直接采用以曲线的曲率为对象的方法。图29是表示这种根据其它条件求候补连接点适宜系数方法的流程图。
开始的J>1是存在近旁连接点的条件。这时,考虑输入近旁和输出近旁,考虑过4个点A、B、C、D的曲线(图21,图26),但是,这时不是求拐点而是求曲率。Kinput是在输入近旁联结4点的曲线的最大曲率。所希望的是曲率变小的曲线。Koutput是在输入近旁联结4点的曲线的最大曲率。这也是较小为好。为此取二者之和,求给出最小值的点。因此,定义适宜系数如下:
rij(ol)=min{γ(Kinput+Koutput)-1,1}(57)
r是常数。它是在最佳时曲率之和几乎等于r这一要求决定的。
图31表示反复计算概率变量,当t=4时中止反复,求出所得到的概率变量P4 i(0)为最大的候补连接点的序号o,并把它作为前述临时连接点xi所属的候补连接点内的最佳连接点λi 0,然后,把它输入最佳连接点存储装置K中。对轮廓点串群的所有临时连接点进行这样的操作,可以决定各类最佳连接点。
K.最佳连接点存储装置
这是存储利用上述操作求出的全部最佳连接点的装置。如图31的最后一步所示,把最佳连接点作为(xu i,yu i)进行存储。u是轮廓点串的序号。i是群u中的连接点的序号。前面对临时连接点标以Xi的序号(也代表y坐标),虽然序号i相同,但没有关系。因为一个临时连接点对应一个最佳连接点,并且最佳连接点与前面所求的临时连接点相同,或者极为接近。
按照顺序说明了至此的操作,但是为了易于了解步骤,这里以图32所示的“ぱ”字为例,简单回顾前面的操作。图32中有黑体的“ぱ”字。用图象扫描器读入,作为图象。在经过图象处理后,进行轮廓点串抽出。用黑框白底字表示。右肩上的圆圈利用正圆抽出除去,并用正圆存储装置进行存储。
余下的变为“は”。作为轮廓点串有独立的3个群。遍及它们的全长进行分段多项式近似,并且,计算曲率后求临时连接点。这些画在第3步中。临时连接点出现在线段的接头处。
在第4步用“×”号表示临时连接点。由于利用曲率进行选择,所以“は”的右下部分有时出现临时连接点。这时,要将该点追加为连接点。接着,求候补连接点。进而在“は”的下部的交差点部分抽出近旁连接点。根据以上的说明,至此为止的过程是清楚的。
其次,以图33所示的词符-插图为例,同样简单地回顾前面的操作。这是在图18、图50的半导体二极管图形的右肩添加了多余的“o”的图形。这是为了说明正圆的处理。用图象扫描器读入这一原图,形成图象。经过图象处理后,进行轮廓点串的抽取。用黑框白底的词符-插图表示这一图形。有5个轮廓点串。右肩上的圆圈利用正圆抽取除去,存入正圆存储机构。由于去除了圆圈,所以,减少了2个内外同芯的轮廓点串。
余下的是由圆和三角、线段组合的图形。作为轮廓点串有3个独立的群。遍及轮廓点串的全长进行分段多项式近似。并且,计算曲率后求临时连接点。这些画在第3步中。临时连接点出现在线段的接头处。
在第4步中,用“×”号表示临时连接点。由于利用曲率进行选择,所以有时在本来应该成为连接点的地方2个线段也以钝角交叉时,不出现临时连接点。这时,要将该点追加为临时连接点。在本例中,由于利用曲率计算全部出现临时连接点,所以不需要追加连接点。接着,求候补连接点。然后,以圆和横直线的交差点、纵线段和直线的交差点等作为一定半径内的临时连接点,抽取近旁连接点。根据以上的说明,至此为止的过程是清楚的。
L.连接点去除机构
在这里,是除去前面抽出的连接点内不必要的连接点。图34是表示该过程的流程图。从最佳连接点存储装置读入最终连接点,是{λi o}={(xu i,yu i)}i=0 I-1u是群序号,i是群中连接点的序号。然后,除去直线近似中冗长的连接点。
进而,除去在圆弧近似中冗长的连接点。对于每个轮廓点串利用坐标(xu i,yu i)和序号i′把最终连接点存储到存储装置中。
前面所求的连接点是用分段多项式近似轮廓线、求曲率、求临时连接点,再从候补连接点中求出的最终连接点。因此,应该几乎没有不必要连接点,但是由于图象噪声的影响等,可能存在不必要的连接点。这就是直线的连接点和圆弧的连接点。
〔直线的连接点的除去〕
图35的轮廓点串的例子示出了在线段中有连接点的情况。利用(Xi4 B,yi4 B)表现这个点的坐标。顺次评价这个连接点。存在直线的连接点大于2的连续区间时,在该区间内取3个连续的点串设i4=ns、ns+1、ns+2。用直线连接两侧的(Xns B、Yns B)和(Xns+2 B、Yns+2 B)。设从中间的连接点(Xns+1 B、Yns+1 B)向这条直线所做的垂线长度为Lns+1。这个长度上预先确定的常数K7时,
Lns+1<K7(58)
则除去这个连接点。图36示出了除去该连接点后连接两侧连接点的状态。
反之,垂线的足Lns+1大于常数K7时,
Lns+1≥K7(59)
则保留该连接点。对于所有的连接点都进行这样的评价。
〔圆弧的连接点除去〕
在前面抽出的圆弧的连接点中,有时多个连接点连续。这时,即使除去中间的连接点,也能保证数据的品质时,就除去该连接点。判断除去的可能性按如下方法进行。如图37所示,用(Xi4 B,Yi4 B)表示圆弧的连接点。i4是连续的序号。
如图37那样,设连续存在3个连接点(xns B,yns B)、(Xns+1 B、Yns+1 B)、(Xns+2 B、Yns+2 B)。这时,考虑从(Xns B、Yns B)开始的圆弧(メ)和从(Xns+1 B、Yns+1 B)、开始的圆弧(ミ)。如图38所示,设两圆弧的半径为rns、rns+1。设它们的中心坐标分别为(xns、yns)、(xns+1,yns+1)。圆弧メ,ミ满足如下条件时,可以看作是单一的圆弧。
|rns+1-rns|<K8(60)
{(xns+1-xns)2+(yns+1-yns)2}1/2<K9(61)
即,如果中心座标几乎为同一点,且半径几乎相同时,则2个圆弧メ,ミ视为同一圆弧的一部分。这时,中间的连接点(Xns+1 B、Yns+1 B)、可以作为不必要的点而除去。否则,就保留该连接点。
对全部圆弧的连接点顺次进行这种判断、除去、保留的作业。虽然应适当地决定半径差、中心差的阈值,但是例如定为K8=1,K9=2就可能了。
利用以上的操作,可以除去直线和圆弧上的不必要的连接点。这对于压缩数据是有效的。不仅如此,而且由于还把应该是直线和圆弧的图形修正为所应有的形状,所以在提高数据的品质方面具有积极的意义。这样选定的连接点称为最终连接点。
M.最终连接点存储装置
这是存储除去不必要的连接点后得到的最终连接点的装置。如图34的最后一步所示,坐标(xu i,yu i)。但是,由于在图面中,为了与最佳连接点区别加有“′”号。由于“′”号不能形成1/4角格式,故在说明书中省去。实际上是加有“′”号的。
N.数据近似机构
这是根据前面得到的轮廓点串、最终连接点、正圆等数据来近似数据的机构。是本发明的核心部分。从各个存储装置中输入的数据,如图39所示,分别是:
轮廓点串存储装置…轮廓点串{(xu k,yu k)}k=0 Nu-1 =0 U-1
最终连接点存储装置…最终连接点{(xu i,yu i)i=0 I-1
正圆存储装置…圆Circle(u)
轮廓点串的标就u是轮廓点串群的序号。k是该轮廓点串群内的轮廓点串的序号。N(u)(写为Nu)是群u内的轮廓点串数。i是群u内的最终连接点。只写为i,但实际上如图39所示是i′。由于“′”号不能形成1/4角格式,故在此省略。虽然可以得到最终连接点,但是把相邻的2个连接点之间(连接点间)进行直线、圆弧、自由曲线近似。在近似中,用参变量t把x分量用Sx(t)表示,y分量用Sy(t)表现。
这和最初用参变量t表现整个轮廓点串的方法是相同的。但是现在区域成为连接点之间,所以t的范围和t与Sx(t)、Sy(t)的对应关系就与前面的不同。还有,从某连接点开始的区间是直线区间。还是圆弧区间或自由曲线区间,求出各点的曲率就知道了。
在存储了这些信息时,则从开始就能区别是直线还是圆弧或自由曲线。即,如果该区间的所有点的曲率为o,则这就是直线。另外,如果该区间的曲率为一定值,则这就是圆弧。进而,如果曲率变化,则这就是自由曲线。若能像这样区别区间,则决定近似计算的参数就比较简单了。
但是,反过来,即使没有存储曲率计算的结果,在这个阶段也能检查直线、圆弧及自由曲线的区别。区别之后也可以进行近似。
不论哪种情况,本发明都能适用。下面,对前者的情况进行说明。
〔直线区间的近似〕
对从直线的连接点开始的区间的近似进行说明。在连接点抽取阶段,已判断为直线。这时,x方向的近似曲线Sx(t)成为联结始点x11和终点xn3的一次函数。y方向的近似曲线Sy(t)成为联结始点y1和终点yn3的一次函数。这时,对于参变量x、y都成为一次函数。
参变量t与Sx(t)、Sy(t)的比例常数变为参数。但是,没有必要存储这个比例常数。这是因为,若是直线区间,则只要知道始点(x1,y1)和终点(Xn3,yn3)就可以在这两点之间引直线。另外,由于终点(Xn3,yn3)作为下一个区间的始点给出,故没有必要进行存储。
〔圆弧区间的近似〕
对从圆弧的连接点开始的区间的近似进行说明。这个区间在连接点抽取阶段,已判断为圆弧。表示圆弧的近似曲线Sx(t)、Sy(t)可用如下三角函数的线性组合表示。设观测区间为t∈(0,T),则Sx(t)、Sy(t)可以表示为
sx(t)=Axcos(2πt/(T/narc))+Bxsin(2πT/(T/narc))+Cx(62)
sy(t)=Aycos(2πt/(T/narc))+Bysin(2πT/(T/narc))+Cy(63)
narc是圆弧与整个圆之比。即,是以360度除圆心角得到的值。例如,对于4分之一圆的情况,narc等于1/4。所以,2πnarc是该圆弧的圆心角。变量2πt/(T/narc)是从圆弧的始点到与参数t对应的点的圆心角。(Cx,Cy)是圆弧的中心的坐标。这时,如果关系式
A2 x+B2 x=A2 y+B2 y(64)
By/Ay=Bx/Ax(65)
成立,则近似函数就是圆弧。这时,规定圆弧的参数是函数各个系数Ax、Bx、Ay、By、Cx、Cy、narc。如果从开始就知道该区间是圆弧,则根据始点、终点的坐标、曲率、中间一点的坐标可以唯一地决定这些参数。
〔自由曲线的近似〕
对既不是从直线的连接点,也不是从圆弧的连接点开始的区间自由曲线近似。虽然可用参变量t表示,但轮廓点串用(xi3 u、yi3 u)表示。使其与t相对应,可用参变量t表示为(ti3 u、xi3 u),(ti3 u、yi3 u)。前面轮廓点串的下标是k,但是,由于这里用k作为区分区间的序号,故代替k用i3作为轮廓点串的序号。并且,设轮廓点串的总数为n3。
以2次光滑函数为底展开Sx(t)、Sy(t)。关于光滑函数如图46所示。它是只在3个小区间有值的函数。把区间取为(0,T),则2次光滑函数ψk3的M维函数系为
φk3(t)=3(T/M)-2∑q=0 3(-1)q(t-ξk+q)2 +/{(q!(3-q)!)}(66)
k=-2,-1,0,1,2,···M+2
以该函数为基底,利用系数,Sx(t)、Sy(t)可以表示为
sx(ti3)=∑k=-2 M+2cx kφk3(ti3)(67)
sy(ti3)=∑k=-2 M+2cy kφk3(ti3)(68)
这里,定义
t>ξk+q時(t-ξk+q)2 +=(t-ξk+q)2(69)
t≤ξk+q時(t-ξk+q)2 +=0(70)
ξk+9是将区间T作M等分时的小区间。
ξk+q=(k+q)T/M(71)
系数Cx k、Cy k通过使各轮廓点串的值(xi3 u、yi3 u)和Sx(ti3)、Sy(ti3)的值近似来决定。利用最小二乘法决定系数的值。平方误差Q定义为
Q=∑i3=1 n3|xi3 u-sx(ti3)|2-∑i3=1 n3|yi3 u-sy(ti3)|2(72)
为了使其为最小值,利用下式决定:
∑k=-2 M+2cx k{∑i3=1 n3φk3(ti3)φm3(ti3)}=∑i3=1 n3xi3φm3(ti3)(73)
∑k=-2 M+2cy k{∑i3=1 n3φk3(ti3)φm3(ti3)}=∑i3=1 n3yi3φm3(ti3)(74)
m=-2,-1,0,1,…,M+2(75)
求解上面的关系式,可以求出系数Cx k、Cy k。为了评价该系数是否适当,按下式求各点误差的最大值。
ε=maxi3=0 n3{(xi3 u-sx(ti3))2-(yi3 u-sy(ti3))2}1/2(76)
其中,在max的演算中,i3的范围从0到n3-1,求这个范围内的最大值。若ε小于某常数,就可以近似。例如,根据是否ε<0.9进行判断。如果ε大于某一常数,就把因次数M加1,进行同样的计算。提高因次数,就增加了区间数,所以可以提高近似精度。进行同样的误差计算,则在某时达到ε<0.9。这时,近似计算即告结束。
O.压缩数据输出机构
这是利用前面的程序把文字字体、词符-插图的轮廓线分离为直线(线段)、正圆、圆弧、自由曲线。它们有始点、终点,还有斜率、圆心、半径等等参数。根据种类不同,应存储的数据也不同。
对直线数据的情况,把表示直线的图、直线的始点坐标作为数据进行存储。终点坐标作为下一个区间的始点给出,所以这里不需要存储。直线的斜率是定义直线的参数,但通过连结始点和下一个连接点的坐标,能够得到直线,所以也不需要斜率,也不需要存储。
对于正圆数据情况,可以从正圆存储装置G直接得到数据。这些数据已用第1次的数据近似机构A选择出来。对于正圆,把表示正圆的图、圆心坐标、圆半径作为数据进行存储。
作为圆弧数据,把表示圆弧的图、圆弧始点坐标、圆弧的分割长度(圆弧长/周长)、轮廓点数和函数的系数进行存储。
作为自由曲线的数据,存储函数的因次,轮廓点数,轮廓点串变化的中点及函数的系数。
P.压缩数据存储装置
这是存储从压缩数据输出机构输出的直线、正圆、圆弧、自由曲线等数据的装置。存储这些数据后,在适当的时候输出。这是将数据压缩并进行存储的装置。后面将说明根据存储的数据再生文字的装置。
存储在压缩数据存储装置P中的数据结构示于表1。
下面,对数据的大小进行说明。连接点间是直线时,用于表示直线的图需要1字节,表示线段的始点需要2个字节(x坐标和y坐标),共需要3个字节。连接点间是圆弧时,表示圆弧的图需要1个字节,表示圆弧的始点需要2个字节,表示圆弧的圆心角需要4个字节,表示轮廓点串数需要1个字节,表示近似函数的系数(有6个)需要12个字节,总共需要20个字节。连接点间是自由曲线时,表示函数的因次M需要1个字节,表示轮廓点数需要1个字节,表示轮廓点的变化中心需要2个字节,表示近似函数的系数需要2M个字节,合计为4+2M个字节。
下面说明的轮廓再生机构R、文字、词符-插图再生机构S、再生数据输出机构T构成用于以任意的大小再生文字体、词符-插图的再生数据生成装置。
R.轮廓再生机构
这是根据存储的压缩数据再生应成为文字字体、词符-插图的骨架的轮廓线的机构。轮廓线有直线、正圆、圆弧和自由曲线等情况。
〔直线的再生〕直线的再生通过用直线从始点的坐标连结到下一个区间的连接点的坐标来进行。不需要关于直线的斜率的数据。
〔正圆的再生〕正圆的再生根据圆心坐标和半径的数据,通过描述以圆心坐标为圆心给定半径的圆进行。
〔圆弧的再生〕圆弧的再生通过把所存储的各数据(Ax,Bx…)代入下式进行。
Sx(t)=Axcos{2πt/(T/narc)}+Bxsin{2πt/(T/narc)}+Cx(77)
Sy(t)=Aycos{2πt/(T/narc)}+Bysin{2πt/(T/narc)}+Cy(78)
通过使参数t在(o~T)的区间内变化,可以根据Sx(t)、Sy(t)得到x、y坐标。
〔自由曲线的再生〕
标本点ti处于区间((L-1)(T/M),L(T/M))内时(1≤L≤M),利用p=L-ti×M/T,各标本点ti的近似函数基底ψk3的值可以表示为
φk3(ti)=0.5p2k=L(79)
φk3(ti)=p(1-p)+0.5 k=L+1(80)
φk3(ti)=1-φL3(ti)-φL+13(ti) k=L+2(81)
φk3(ti)=0 k≤L-1,L+3≤k(82)
式中,L是小于因次数M的自然数。由于是同一性质的数,所以应写为M′,但是,由于“′”号不能成为1/4角格式,故用L表示。
利用这样的基底ψk3,各标点的近似函数值S(ti)可以由下式求出。
S(ti)=∑k=L L+2Ckφk3(ti)(83)
S.文字、词符-插图再生机构
这是再生文字形状、词符-插图形状的机构。由于得到了轮廓线,所以把轮廓线所包围的部分作为黑象素,形成黑白2值图象后,再生为文字形状、词符-插图的形状。或者相反,也可以把轮廓所包围的部分作为白象素,把其余的部分作为黑象素。进而,还可以把轮廓线所包围的部分作为某种彩色象素,把其它部分作为另一种彩色象素。总之,只要能区别轮廓线的内外就行。
T.再生数据输出机构
为了根据函数的系数再生图象,例如利用能将再生图象的尺寸从1mm的正方形到A3版指定的设计编辑器。可用有300DPI精度的激光打印机或具有600DPI精度的激光打印机印制再生图象。此外,还可以用3000DPI的电植机(印刷机器)或400DPI的可读数据对应的打印机、激光剪辑机进行输出。
用函数系数的形式存储文字字体、词符-插图后,可以以任意的信率放大和缩小,另外,坐标也可任意指定其中心。因此,可以在任意的位置以任意的尺寸输出任意的图案、词符-插图。
上述机构,可以通过装配含有根据用C语言编制的程序进行浮点运算的数值运算处理器的PC-9801DA来实现。
为确认本发明的效果,用本发明对铅印体的“明”、“体”、黑体字的“语”以及JIS第1标准的文字进行了压缩。其结果示于表2。另外,在图40-图42还示出了“明”、“体”、“语”3个文字的原图象和根据本发明的再生图象(用300DPI的激光打印机进行打印)。从这些图可知,能够非常忠实地再生。
此外,还用本发明对图43的乐谱音符、图44的圆形图表、图45的香烟的词符-插图进行了压缩,其结果于表3。并对这些乐谱音符、圆形图表、香烟及图50的半导体二极管等,分别在各图的下半部示出了根据本发明的数据压缩存储后再生的图象。它们都是优质的再生图象,几乎找不出与原图象的区别。由此可知,根据本发明的再生图象(用300DPI的激光打印机进行打印)能够不降低品质并且忠实地再生图象。
表2、表3示出了用本发明把各文字、词符-插图数据压缩后的数据量(字节)、压缩率(%)和压缩时间(秒)。
这里,所谓压缩率是用原图象的数据量(约8k字节)去除按本发明所压缩的字体的数据量(字节),再乘100,以%表示的数值、因为原图象是用256×256象素的光学读取装置读取的,所以有约8k字节的数据量,但是,用本发明的方法进行压缩时,对于文字字体,将减少到300-500字节,对于词符-插图将减少到100-300字节的数据量。
压缩率约为2-6%,可以归结为极少量的数据。另外,每1个文字或1个词符-插图的压缩时间约为数秒,时间极短。这里所说的压缩时间是CPU时间,也包括收入到单字的数据的分割合成处理时间和绘图时间。
这样,便可缩短处理时间,减少数据。特别是印刷体的文字,多数由直线部分构成,由于在第1阶段作为已知的连接点抽出,故在第2阶段进行反复近似所求的连接点数就很少。
U.图象存储装置2
这是直接存储再生文字字体、词符-插图的装置。包括直接存储用打印机打印出的文字的所有的机构装置。也可以使用录像机进行存储。也包括打印的纸在内。也可以没有特别的图象存信储置。
本发明读取基本的文字字体、词符-插图后,可以压缩为少量数据进行存储。对于文字字体,每1个文字的处理时间很短。因而,即使创造由几千字构成的汉字的新字体也能够在短时间内把它们作为数据进行存储。不仅存储简单,再生也很简单。使用存储数据能够再生任意大小的文字。
另外,对于词符-插图,同样也能以光学读取词符-插图,并压缩为少量数据进行存储,没有必要再以画在纸上的原图的形式进行保存。由于直线以直线形式抽出进行存储,圆弧和圆以几何学上的正确的圆弧和圆抽出进行存储,所以,能够除去包括在原图象中和读取时混入的噪声,使画质提高。此外,本发明能通过除去连接点,可以提高词符-插图的品质。并且,每1个词符-插图的处理时间很短。因而,即使创造众多的新词符-插图也能在短时间内把它们作为数学的数据进行存储。
不仅存储简单,而且再生也很简单。使用存储的数据,能在任意的位置再生任意大小的词符-插图。图51和图52是放大和缩小的例子。若用光学方法放大,则无论如何也增加噪声,且轮廓线模糊不清。而本发明在计算的基础上进行放大,所以直线作为直线进行再生,圆弧作为圆弧进行再生。自由曲线也一样。由于这是在计算的基础上进行放大,所以,线段不会凹凸不平,也不会模糊不清。
图53和图54示出图形的放大、缩小、变形、回转、移动等是自由的。图54中,(a)是沿纵方向拉伸,(b)是沿纵方向压缩,(c)是沿斜方向拉伸,(d)是旋转45度,(e)、(f)是缩小且旋转的例子。图55示出了同一标记的放大和缩小,并且位置也是任意的。这是自由曲线较多的例子,但是,这样的图形也能定义连接点,应用本发明。图56、图57示出了在明信片上印刷图形的情况。能够把原图以任意的大小,印制到明信片的任意位置。考虑与文字的均衡分布,可以插入到适当的部位。不需要以前那种用剪刀剪下原图,再用浆糊贴到原图上的麻烦手续了。
以往,文字、词符-插图的放大、缩小并不容易,除了利用光学的方法进行放大和缩小外,没有别的办法。若把图象进行光学放大、缩小、移动等过程后,会混入噪声,降低品质。另外,不仅自由度低,而且费时间。反复进行几次复制后品质就降低得很显著。
由于本发明是以连接点和分段多项式系数存储数据的,所以,可以通过计算进行文字、词符-插图尺寸的放大、缩小、平行移动等等、因此,可以迅速、自由地进行文字、词符-插图的放大、缩小和移动等。通过这些操作,也不会使文字、词符-插图的品质恶化。本发明通过除去连接点还可以进一步提高文字字体、词符-插图的品质。
通过整体坐标的平行移动可以完成位置的移动。将作为基准的点的坐标、圆弧半径、分段多项式的系数{Cx h}、{Cy h}乘以倍率,通过计算可以完成扩大和缩小。由于数据量少,所以计算可以迅速进行。
另外,图54所示的旋转也可以只通过计算完成。将作为基准的坐标和分段多项式的系数{Cx h}、{Cy h}乘以与回转角对应的系数,就可以求出新的系数。
通过计算,也可以给出图54所示的沿不同方向的放大和缩小。这里所谓不同的方向是放大和缩小的系数随方向而不同。如同圆和椭圆,正方形和长方形之间的变换一样。将x方向的系数{Cx h}和y方向的系数{Cy h}乘以不同的乘数后,只要进行前面所述的旋转即可。
这样,利用系数{Cx h}、{Cy h}的一次变换,就可以简单地进行移动、旋转、放大、缩小和不同方向的放大、缩小等的仿射变换。因为这些都是根据计算进行的。所以,不会因变形而掺入噪声。另外,由于数据量少,所以,短时间的计算就可以完成。对于和由形状所决定的文字不同的词符-插图的情况,这样的变形常常是有用的。
在本发明中,图形要素是以连接点和圆弧中心、半径、自由曲线的系数等集合表现的,所以,上述计算量少,时间也短。而且,利用这样的计算不会产生噪声。即,通过这些操作,词符-插图的品质不会恶化。
表1
根据本发明作成的数据结构
内容 大小(字节)
连接点间是直线 1.直线图 每个连接点间1
时 1.线分始点的坐标 每个连接点间2
连接点间是圆弧 1.圆弧图 每个连接点间1
时 1.圆弧始点坐标 每个连接点间2
1.各连接点间的函数中 每个连接点间4
心角的系数narc
(1/4≤narc≤1)
1.存在于各连接点间的 每个连接点间1
1个节点区间中的轮
廓点数
1.近似函数的系数(6 每个连接点间12
个)
连接点间是自由 1.各连接点间的函数因 每个连接点间1
曲线时 次数M (M≥3)
1.存在于各连接点间的 每个连接点间1
1个节点区间中的轮
廓点数
1.在各连接点间的轮廓 每个连接点间2
点列的变动中心
(μx,μy)
1.近似函数的系数 每个连接点间2M
CX、Cy
表2
用本发明的数据平均量、压缩率、压缩时间
(文字字体数据)
表3
用本发明的平均数据量、压缩率、压缩时间(标识、图符)
Claims (16)
1、一种文字数据输入输出装置,其特征在于包括:
文字读取装置,用于光学读取文字字体数据,使这些数据与有限个纵横排列的象素对应并进行存储;
轮廓线抽取机构,用于抽取与从横排列象素对应的已读取的文字的轮廓线;
轮廓点串存储机构,用于对每个连续的群,把抽取出的轮廓线的2维坐标(X,Y)进行存储;
数据近似机构A,其用途是,设自变量为t,因变量为x、y,使用以t为自变量,x、y为因变量的2次分段多项式近似上述各群中轮廓点串的x、y坐标,反复进行最小二乘法近似直到近似精度达到指定的范围,并求出各轮廓点串群的近似多项式;
曲率运算机构,用于根据上述近似结果,求出在x、y空间中各群的点串的每一点的曲率;
正圆抽取机构;用于根据各群的曲率数据抽取正圆;
临时连接点位置抽取机构,用于根据点串的曲率数据抽取空间不可微点作为临时连接点;
最佳连接点抽取机构,用于把位于临时连接点近旁的其它候补连接点根据相关关系概率地实施曲线拟合,求出最佳连接点;不必要的连接点除去机构,用于从最佳连接点中找出并除去那些即使去掉去也可以保证近似精度的不必要连接点;
数据近似机构B,其用途是当按直线、圆弧的顺序近似同一点串群内的相邻连接点之间不能得到指定的精度时,就用以t为自变量,x、y为因变量的2次分段多项式进行近似,并在增加2次分段多项式因次数的同时,反复时行最小二乘近似,直到近似精度达到指定的数值后,再利用直线、圆弧、分段多项式近似相邻连接点之间的连线。
压缩数据存储机构,用于对每个点串群存储近似上述连接点的坐标和相邻连接点之间的函数的参数;
轮廓再生机构,用于输入存储的压缩数据,得到近似每个点串群的连接点的坐标和相邻连接点函数的参数,再生出轮廓线;
文字再生机构,用于使再生的轮廓线内的象素和外部象素对应不同的值;
再生数据输出机构,用于把再生的文字字体作为文字输出。
2、一种文字数据输入输出装置,其特征在于包括:
文字读取装置,用于光学读取文字字体数据,使这些数据与有限个纵横排列的象素对应,并进行存储;
轮廓线抽取机构,用于抽取与纵横排列象素对应的已读取的文字的轮廓线;
轮廓点串存储机构,用于对每个连续的群把抽取出的轮廓线的2维坐标(x、y)进行存储;
数据近似机构,用于用以t为自变量,x、y为因变量的2次分段多项式近似上述各群的轮廓点串的x、y坐标,反复进行最小二乘法近似直到近似精度达到指定的范围,并求出各轮廓点串群的近似多项式;
曲率运算机构,用于根据上述近似结果,求出在x、y空间的各群内点串的每一点的曲率;
正圆抽取机构,用于根据各群的曲率数据抽取出正圆;
临时连接点位置抽取机构,用于根据点串的曲率数据抽取出空间不可微点作为临时连接点;
最佳连接点抽取机构,用于把位于临时连接点近旁的其它候补连接点根据相关关系概率地实施曲线拟合,求出最佳连接点;
数据近似机构,用于当按直线、圆弧的顺次近似同一点串群的相邻连接点之间不能得到指定的近似精度时,就用以t为自变量,x、y为因变量的2次分段多项式进行近似,并在增加2次分段多项式的因次的同时,反复进行最小二乘近似直到近似精度达到指定的数值后,再利用直线、圆弧、分段多项式近似相邻连接点之间的连线;
压缩数据存储机构,用于对每个点串群存储近似上述连接点的坐标和相邻连接点之间的函数的参数;
轮廓再生机构,用于输入存储的压缩数据,得到近似每个点串群的连接点的坐标和相邻连接点的函数的参数,并再行出轮廓线;
文字再生机构,用于使再生的轮廓线内的象素和外部象素对应不同的值;
再生数据输出机构,用于把再生的文字字体作为文字输出。
3、一种文字数据输入输出装置,其特征在于包括:
文字读取装置,用于光学读取文字字体数据,使这些数据与有限个纵横排列的象素对应并进行存储;
轮廓线抽取机构,用于抽取与纵横排列象素对应的已读取的文字的轮廓线;
轮廓点串存储机构,用于对每个连续的群把抽取出的轮廓线的2维坐标(x、y)进行存储;
数据近似机构,用于用以t为自变量,x、y为因变量的分段多项式近似上述各群的轮廓线点串的x、y坐标,求出各轮廓线点串的近似多项式;
曲率运算机构,用于根据上述近似结果,求出在x、y空间的各群的点串的每一点的曲率;
正圆抽取机构,用于根据各群的曲率数据抽取正圆;
连接点位置抽取机构,用于根据点串的曲率数据抽取出空间不可微点作为连接点;
数据近似机构,用于当按直线、圆弧的顺序近似同一点串群内的相邻连接点之间不能得到指定的近似精度时,就用以t为自变量,x、y为因变量的分段多项式进行近似,从而利用直线、圆弧、分段多项式近似相邻连接点之间的连线;
压缩数据存储机构,用于对每个点串群存储近似上述连接点坐标和相邻连接点之间的函数的参数;
轮廓再生机构,用于输入存储的压缩数据,得到近似各轮廓点串群的连接点的坐标和相邻连接点的函数的参数,并再生出轮廓线;
文字再生机构,用于使再生轮廓线内的象素和外部象素对应不同的值;
再生数据输出机构,用于把再生的文字字体作为文字输出。
4、一种文字数据输入输出装置,其特征在于包括:
文字读取装置,用于光学读取文字字体数据,使这些数据与有限个纵横排列的象素对应并进行存储;
轮廓线抽取机构,用于抽取与纵横排列象素对应的已读取的文字的轮廓线;
轮廓点串存储机构,用于对每个连续的群把抽取出的轮廓线的2维坐标(X、Y)以t为自变量,X,Y为因变量进行存储;
曲率运算机构,用于求出x、y空间的各群内点串的每一点的离散曲率;
正圆抽取机构,用于根据各群的曲率数据抽取正圆;
连接点位置抽取机构,用于根据点串的曲率数据抽出空间不可策点作为连接点;
数据近似机构,用于当按直线、圆弧的顺序近似同一点串群的相邻连接点之间不能得到指定的近似精度时,就用以t为自变量,x、y为因变量的分段多项式进行近似,并在增加分段多项式的因次数的同时,反复进行最小二乘近似,直到近似精度达到指定的数值,再利用直线、圆弧、分段多项式近似相邻连接之间的连线;
压缩数据存储机构,用于对每个点串群存储近似上述连接点的坐标和相邻连接点之间的函数的参数;
轮廓再生机构,用于输入存储的压缩数据,得到近似各点串群的连接点的坐标和相邻连接点的函数的参数,并再生出轮廓线;
文字再生机构,用于使再生的轮廓线内的象素和外部的象素对应不同的值;
再生数据输出机构,用于把再生的文字字体作为文字输出。
5、一种文字数据的输入输出方法,其特征在于:
光学读取文字字体数据,使这些数据与有限个纵横排列的象素对应,并存储这些数据;抽取出与纵横排列象素对应的已读取的文字的轮廓线,对每个连续的群,以t为自变量,以X、Y为因变量存储已抽取出的轮廓线的2维坐标(X,Y);设自变量为t,因变量为x,y,用以t为自变量,x、y为因变量的分段多项式近似上述各群的轮廓点串的x、y坐标;根据上述近似结果;求x、y空间的各群中点串的每一点的曲率;根据各群的曲率数据抽取正圆;根据点串的曲率数据抽取出空间不可微点作为连接点;当按直线、圆弧的顺序近似同一点串群内的相邻连接点之间不能得到指定的近似精度时,用以t为自变量,x、y为因变量的分段多项式近似;通过对各点串群存储近似上述连接点的坐标和相邻连接点之间的函数的参数,输入文字字体数据;而在输出文字时对各点串群输出存储的近似连接点坐标和相邻连接点之间的函数的参数;然后再生文字字体的轮廓线;通过使再生的轮廓线内的象素和外部象素对应不同的值,再生出文字,最后把再生的文字字体作为文字输出。
6、一种文字数据输入输出方法,其特征在于:
光学读取文字字体数据,使这些数据与有限个纵横排列的象素对应并存储这些数据;抽取与纵横排列象素对应的已读取的文字的轮廓线;对各连续群以t为自变量,X、Y为因变量存储已抽取的轮廓线的2维坐标(X,Y);设自变量为t,因变量作为x、y,用以t为自变量,x、y为因变量的分段多项式近似上述各群的轮廓线点串的x、y坐标;根据上述近似结果,求出x、y空间的各群中点串的每一点的曲率;根据各群的曲率数据抽取正圆;根据点串的曲率数据抽取出空间不可微点作为临时连接点;把位于临时连接点近旁的其它候补连接点根据相关关系概率地进行曲线拟合,求出最适宜的连接点;从最佳连接点中找出并除去即使没有也能保证近似精度的不必要的连接点;当按直线、圆弧的顺序近似同一点串群内相邻连接点之间不能得到指定的近似精度时,用以t为自变量、x、y为因变量的分段多项式进行近似,并在增加分段多项式的因次数的同时,反复用最小二乘近似直到近似精度达到指定的数值后,再利用直线、圆弧、分段多项式近似相邻连接点之间;通过对各点串群存储近似上述连接点的坐标和相邻连接点之间的函数的参数,输入文字字体数据;另一方面,输出文字时,对各点串群输出存储的近似连接点的坐标和相邻连接点之间的函数的参数;然后再生文字字体的轮廓线;通过使再生的轮廓线内的象素和外部的象素对应不同的值,再生出文字;最后把再生的文字字体作为文字输出。
7、一种文字数据输入输出方法,其特征在于:
光学读取文字字体数据,使这些数据与有限个纵横排列的象素对应并存储这些数据;抽取与纵横排列象素对应的已读取的文字的轮廓线;对各连续群以t为自变量,X、Y为因变量存储已抽出的轮廓线的2维坐标(X、Y);求出x、y空间各群的点串的每一点的离散的曲率;根据各群的曲率数据抽取正圆;根据点串的曲率数据抽取空间不可微点作为连接点;当按直线、圆弧的顺序近似同一点串群的相邻连接点之间不能得到指定的近似精度时,用以t为自变量,以x、y为因变量的分段多项式进行近似,并在增加分段多项式的因次数的同时,反复进行最小二乘近似,直到近似精度达到指定的数值后,再利用直线、圆弧、分段多项式近似相邻连接点之间的连线;通过对各点串群存储近似上述连接点的坐标和相邻连接点之间的函数的参数,输入文字字体数据;另一方面,输出文字时,对各点串群输出存储的近似连接点的坐标和相邻连接点之间的函数的参数;然后再生文字字体的轮廓线;通过使再生的轮廓线内的象素和外部象素对应不同的数值,再生出文字;最后把再生的文字字体作为文字输出。
8、一种词符-插图数据输入输出装置,其特征在于包括:
词符-插图读取装置,用于光学读取词符-插图数据,使这些数据与有限个纵横排列的象素对应并进行应存储;
轮廓线抽取机构,用于抽取与纵横排列象素对应的已读取的词符-插图的轮廓线;
轮廓点串存储机构,用于对每个连续的群把抽取出的轮廓线的2维坐标(X,Y)进行存储;
数据近似机构A,用于用以t为自变量,x、y为因变量的2次分段多项式近似上述各群轮廓线点串的x、y坐标,反复进行最小二乘近似直到近似精度达到指定的范围,并求出各轮廓点串群的近似多项式;
曲率运算机构,用于根据上述近似结构求出x、y空间各群的点串的每一点的曲率;
正圆抽取机构,用于根据各群的曲率数据抽取正圆;
临时连接点位置抽取机构,用于根据点串的曲率数据抽取空间不可微点作为临时连接点;
最佳连接点抽取机构,用于把位于临时连接点近旁的其它候补连接点根据相关关系概率地进行曲线拟合,求出最佳连接点;
不必要的连接点除去机构,用于从最佳连接点中找出并除去即使没有也能保证近似精度的不必要的连接点;
数据近似机构B,用于当按直线、圆弧的顺序近似同一点串群的相邻连接点之间不能得到指定的近似精度时,就用以t为自变量,x、y为因变量的2次分段多项式进行近似,并在增加2次分段多项式的因次数的同时,反复进行最小二乘近似直到近似精度达到指定的数值后,再利用直线、圆弧、分段多项式近似相邻连接点之间的连线;
压缩数据存储机构,用于对各点串群存储近似上述连接点的坐标和相邻连接点之间的函数的参数;
轮廓再生机构,用于输入存储的压缩数据,得到近似各点串群的连接点的坐标和相邻连接点之间的函数的参数,并再生出轮廓线;
词符-插图再生机构,用于使再生的轮廓线内的象素和外部象素对应不同的值;
再生数据输出机构,用于把再生的词符-插图作为词符-插图输出。
9、一种词符-插图输入输出装置,其特征在于包括:
词符-插图读取装置,用于光学读取词符-插图数据,使这些数据与有限个纵横排列的象素对应并存储这些数据;
轮廓线抽取机构,用于抽取与纵横排列象素对应的已读取的词符-插图的轮廓线;
轮廓点串存储机构,用于存储对每个把抽取出的轮廓线的2维坐标(X、Y)连续起来的群;
数据近似机构,用于用以t为自变量,以x、y为因变量的分段多项式近似上述各群的轮廓线点串的x、y坐标,反复进行最小2乘近似直到近似精度达到指定的范围,并求出各轮廓点串群的近似多项式;
曲率运算机构,用于根据上述近似结果,求出x、y空间各群的点串的每一点的曲率;
正圆抽取机构,用于根据各群的曲率数据抽取正圆;
临时连接点位置抽取机构,用于根据点串的曲率数据抽取空间不可微点作为临时连接点;
最佳连接点抽取机构,用于把位于临时连接点近旁的其它候补连接点,根据相关关系概率地进行曲线拟合,求出最佳连接点;
数据近似机构,用于当按直线、圆弧的顺序近似同一点串群的相邻连接点之间不能得到指定的近似精度时,就用以t为自变量,以x、y为因变量的分段多项式进行近似,并在增加2次分段多项式的因次数的同时反复进行最小二乘近似直到近似精度达到指定的数值后,再利用直线、圆弧、分段多项式近似相邻连接点之间的连线;
压缩数据存储机构,用于对各点串群存储近似上述连接点的坐标和相邻连接点之间的函数的参数;
轮廓再生机构,用于输入存储的压缩数据,得到近似各点串群的连接点的坐标和相邻连接点的函数的参数,并再生出轮廓线;
词符-插图再生机构,用于使再生的轮廓线内的象素和外部象素对应不同的值;
再生数据输出机构,用于把再生的词符-插图作为词符-插图输出。
10、一种词符-插图输入输出装置,其特征在于包括:
词符-插图读取装置,用于光学读取词符-插图数据,使这些数据与有限个纵横排列的象素对应并存储这些数据;
轮廓线抽取机构,用于抽取与纵横排列的象素对应的已读取的词符-插图的轮廓线;
轮廓点串存储机构,用于存储对每个把抽取出的轮廓线的2维坐标(X、Y)连续起来的群;
数据近似机构,用于用以t为自变量,以x、y为因变量的分段多项式近似上述各群的轮廓线点串的x、y坐标,求出各轮廓线点串群的近似多项式;
曲率运算机构,用于根据上述近似结果,求出x、y空间各群的点串的每一点的曲率;
正圆抽取机构,用于根据各群的曲率数据抽取正圆;
连接点位置抽出机构,用于根据点串的曲率数据抽取空间不可微点作为连接点;
数据近似机构,用于用直线、圆弧、分段多项式近似相邻连接点间,当按直线、圆弧的顺序近似同一点串群的相邻连接点之间不能得到指定的近似精度时,就用以t为自变量,x、y为因变量的分段多项式进行近似;然后,再利用直线、圆弧、分段多项式近似相邻连接点之间;
压缩数据存储机构,用于对各点串群存储近似上述连接点的坐标和相邻连接点的函数的参数;
轮廓再生机构,用于输入存储的压缩数据,得到近似各点串群的连接点的坐标和相邻连接点的函数的参数,并再生出轮廓线;
词符-插图再生机构,用于使再生的轮廓线内的象素和外部象素对应不同的值;
再生数据输出机构,用于把再生的词符-插图作为词符-插图输出。
11、一种词符-插图输入输出装置,其特征在于包括:
词符-插图读取装置,用于光学读取词符-插图数据,使这些数据与有限个纵横排列的象素对应并存储这些数据;
轮廓线抽取机构,用于抽取与纵横排列象素对应的已读取的词符-插图的轮廓线;
轮廓点串存储机构,用于以t为自变量,以X,Y为因变量存储对每个把抽取出的轮廓线的2维坐标(X,Y)连续起来的群;
曲率运算机构,用于求出x、y空间各群的点串的每一点的离散曲率;
正圆抽取机构,用于根据各群的曲率数据抽取正圆;
连接点位置抽取机构,用于根据点串的曲率数据抽取空间不可微点作为连接点;
数据近似机构,用于当按直线、圆弧的顺序近似同一点串群的相邻连接点之间不能得到指定的近似精度时,就用以t为自变量,以x、y为因变量的分段多项式进行近似,并在增加分段多项式的因次数的同时,反复进行最小二乘近似,直到近似精度达到指定的数值后,再利用直线、圆弧、分段多项式近似相邻连接点;
压缩数据存储机构,用于对各点串群存储近似上述连接点的坐标和相邻连接点之间的函数的参数;
轮廓再生机构,用于输入存储的压缩数据,得到近似各点串群的连接点的坐标和相邻连接点的函数的参数,并再生出轮廓线;
词符-插图再生机构,用于使再生的轮廓线内的象素和外部象素对应不同的值;
再生数据输出机构,用于把再生的词符-插图作为调符-插图输出。
12、一种词符-插图数据输入输出方法,其特征在于:
光学读取词符-插图数据,使这些数据与有限个纵横排列的象素对应并存储这些数据;抽取与纵横排列象素对应的已读取的词符-插图的轮廓线,以t为自变量,以X、Y为因变量存储对每个把抽取出的轮廓线的2维坐标(X,Y)连续起来的群;设自变量为t,把因变量为x、y,用以t为自变量,以x、y为因变量的分段多项式近似上述各轮廓点串的X、Y坐标;根据上述近似结果,求出x、y空间各群的点串的每一点的曲率;根据各群的曲率数据抽取正圆;根据点串的曲率数据抽取空间不可微点作为连接点;当按直线、圆弧的顺序近似同一点串群的相邻连接点之间不能得到指定的近似精度时用以t为自变量,以x、y为因变量的分段多项式进行近似;通过对各点串群存储近似上述连接点的坐标和相邻连接点之间的函数的参数,输入词符-插图;另一方面,输出词符-插图时,对各点串群输出存储的连接点的坐标和相邻连接点之间的函数的参数,然后再生词符-插图的轮廓线;通过使再生的轮廓线内的象素和外部象素对应不同的值,再生出词符-插图;最后把再生的词符-插图作为词符-插图输出。
13、一种词符-插图数据输入输出方法,其特征在于:
光学读取词符-插图数据,使这些数据与有限个纵横排列的象素对应,并存储这些数据;抽取与纵横排列象素对应的已读取的词符-插图的轮廓线;以t为自变量,以X、Y为因变量存储对每个把抽取出的轮廓线的2维坐标(X、Y)连续起来的群;设自变量为t,把因变量为x、y,用以t为自变量,x、Y为因变量的分段多项式近似上述各群的轮廓线点串的X、Y坐标;根据上述近似结果,求出x、y空间各群的点串的每一点的曲率;根据各群的曲率数据抽取正圆;根据点串的曲率数据抽取空间不可微点作为临时连接点;把位于临时连接点近旁的其它候补连接点根据相关关系曲线概率地进行曲线拟合,求出最佳连接点;从最佳连接点中找出并除去即使没有也能保证近似精度的不必要的连接点;当按直线、圆弧的顺序近似同一点串群的相邻连接点之间不能得到指定的近似精度时,就用以t为自变量,以x、y为因变量的分段多项式进行近似,并在增加分段多项式的因次数的同时,反复进行最小二乘近似直到近似精度达到指定的数值后,再利用直线、圆弧、分段多项式近似相邻连接点之间的连线;通过对各点串群存储上述近似连接点的坐标和相邻连接点的函数的参数,输入词符-插图;另一方面,输出词符-插图时,对各点串群输出存储的近似连接点的坐标和相邻连接点之间的函数的参数;然后再生词符-插图的轮廓线;通过使再生的轮廓线内的象素和外部象素对应不同的值,再生出词符-插图,最后,把再生的词符-插图作为词符-插图输出。
14、一种词符-插图的输入输出方法,其特征在于:
光学读取词符-插图数据,使这些数据与有限个纵横排列的象素对应并存储这些数据;以t为自变量,以X、Y为因变量存储对每个把抽取出的轮廓线的2维坐标(X、Y)连续起来的群;求出x、y空间各群的点串的每一点的离散曲率;根据各群的曲率数据抽取正圆;根据点串的曲率数据抽取出空间不可微点作为连接点;当按直线、圆弧的顺序近似同一点串群的相邻连接之间不能得到指定的近似精度时,就用以t为自变量,以x、y为因变量的分段多项式进行近似,并在增加分段多项式的因次数的同时,反复进行最小二乘近似直到近似精度达到指定的数值后,再用直线、圆弧、分段多项式近似相邻连接点之间;通过对各点串群存储近似上述连接点的坐标和相邻连接点的函数的参数,输入词符-插图;另一方面,输出词符-插图时,对各点串群输出存储的近似连接点的坐标和相邻连接点之间的函数的参数;然后再生词符-插图的轮廓线;通过使再生的轮廓线内的象素和外部象素对应不同的值,再生出词符-插图;最后把再生的词符-插图作为词符-插图再生。
15、一种词符-插图数据的输入输出方法,其特征在于:
光学读取词符-插图数据,使这些数据与有限个纵横排列的象素对应并存储这些数据;抽取与纵横排列象素对应的已读取的词符-插图的轮廓线;以t为自变量,X、Y为因变量存储对每个把抽取出的轮廓线的2维坐标(X、Y)连续起来的群;设自变量为t,因变量为x、y,用以t为自变量t、x、y为因变量的分段多项式近似上述各群的轮廓点串的X、Y坐标;根据上述近似结果,求出x、y空间各群的点串的每一点的曲率;根据各群的曲率数据抽取正圆;根据点串的曲率数据抽取空间不可微点作为连接点;当按直线、圆弧的顺序近似同一点串群的相邻连接点之间不能得到指定的精度时,用以t为自变量,以x、y因变量的分段多项式进行近似;通过对各点串群存储近似上述连接点的坐标和相邻连接点之间的函数的参数,输入词符-插图;另一方面,输出词符-插图时,对各点串群输出存储的近似连接点的坐标和相邻连接点之间的函数的参数;平移这些连接点的坐标,或者将连接点的坐标和圆弧的曲率、分段多项式的系数等乘以x方向,y方向的系数,通过求和进行平移、放大缩小、旋转及不同方向的放大缩小等等之后,再生词符-插图的轮廓线;通过使再生的轮廓线内的象素和外部象素对应不不的值,再生出词符-插图,最后,把再生的词符-插图作为词符-插图输出。
16、一种词符-插图数据输入输出方法,其特征在于:
光学读取词符-插图数据,使这些数据与有限个纵横排列的象素对应;抽取与纵横排列象素对应的已读取的词符-插图的轮廓线;以t为自变量,以X、Y为因变量存储对每个把已抽取出的轮廓线的2维坐标(X、Y)连续起来的群;求出x、y空间各群的点串的每一点的离散曲率;根据各群的曲率数据抽取正圆,根据点串的曲率数据抽取空间不可微点作为连接点;当按直线、圆弧的顺序近似同一点串群的相邻连接点之间不能得到指定的精度时,就用以t为自变量,以x、y为因变量的分段多项式进行近似,并在增加分段多项式的因次数的同时,进行最小二乘近似直到近似精度达到指定的数值后,再用直线、圆弧、分段多项式近似相邻连接点之间的连线;通过对各点串群存储近似上述连接点的坐标和相邻连接点之间的函数的参数,输入词符-插图数据;另一方面,输出词符-插图时,对各点串群输出存储的近似连接点的坐标和相邻连接点之间的函数的参数,平移这些连接点的坐标或将连接点的坐标和圆弧的曲率,分段多项式的系数等乘以x方向、y方向的系数,通过求和,进行平移、放大缩小、旋转、不同方向的放大缩小等某种操作之后,再生词符-插图的轮廓线;通过使再生的轮廓线内的象素和外部象素对应不同的值,再生出词符-插图,最后,把再生的词符-插图作为词符-插图输出。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP259137/92 | 1992-09-01 | ||
JP4259137A JP2646475B2 (ja) | 1992-09-01 | 1992-09-01 | 文字デ−タ入力出力装置と入力出力方法 |
JP4269646A JP2646476B2 (ja) | 1992-09-11 | 1992-09-11 | ロゴ・イラストデ−タ入力出力装置と入力出力方法 |
JP269646/92 | 1992-09-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1083954A true CN1083954A (zh) | 1994-03-16 |
CN1033110C CN1033110C (zh) | 1996-10-23 |
Family
ID=26543986
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN93117077A Expired - Fee Related CN1033110C (zh) | 1992-09-01 | 1993-08-30 | 文字数据、词符-插图数据的输入输出装置及其方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US5572605A (zh) |
EP (1) | EP0586219A3 (zh) |
KR (1) | KR0129505B1 (zh) |
CN (1) | CN1033110C (zh) |
AU (1) | AU656090B2 (zh) |
CA (1) | CA2105125C (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1110018C (zh) * | 1998-10-02 | 2003-05-28 | 国际商业机器公司 | 特征值抽取方法及设备 |
CN104980619A (zh) * | 2014-04-10 | 2015-10-14 | 富士通株式会社 | 图像处理设备和电子装置 |
CN111063009A (zh) * | 2019-12-18 | 2020-04-24 | 山东山科智能科技有限公司 | 一种汉字书写动画演示方法及装置 |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5623555A (en) * | 1994-04-18 | 1997-04-22 | Lucent Technologies Inc. | Method and apparatus for handwriting decompression using estimated timing information |
JPH0816801A (ja) * | 1994-06-30 | 1996-01-19 | Canon Inc | 画像処理方法及び装置 |
EP1229740A3 (en) * | 1996-01-22 | 2005-02-09 | Matsushita Electric Industrial Co., Ltd. | Method and device for digital image encoding and decoding |
KR0181075B1 (ko) * | 1996-05-08 | 1999-04-01 | 배순훈 | 적응 윤곽선 부호화 방법 |
JP3031613B2 (ja) * | 1996-11-12 | 2000-04-10 | 株式会社つくばソフト研究所 | カラー/濃淡画像入力出力装置と入力出力方法 |
JP4021058B2 (ja) * | 1998-06-17 | 2007-12-12 | 新潟精密株式会社 | データ補間方式 |
US6401133B1 (en) * | 1998-06-24 | 2002-06-04 | Unisys Corporation | System for high speed continuous file transfer processing of data files |
JP3732978B2 (ja) * | 1999-08-23 | 2006-01-11 | ペンタックス株式会社 | 画像圧縮および伸張装置とその方法 |
US6584237B1 (en) * | 1999-08-23 | 2003-06-24 | Pentax Corporation | Method and apparatus for expanding image data |
JP3709106B2 (ja) * | 1999-09-10 | 2005-10-19 | ペンタックス株式会社 | 画像圧縮および伸張装置 |
US6820032B2 (en) * | 2001-02-05 | 2004-11-16 | National Instruments Corporation | System and method for scanning a region using conformal mapping |
CN1926768B (zh) * | 2004-03-03 | 2010-07-14 | 独立行政法人科学技术振兴机构 | 信号处理装置和方法 |
JP4053021B2 (ja) * | 2004-05-12 | 2008-02-27 | 三洋電機株式会社 | 画像拡大装置、及びプログラム |
US7418145B2 (en) * | 2004-06-30 | 2008-08-26 | Matsushita Electric Industrial Co., Ltd. | Compression device and decompression device |
TWI254234B (en) * | 2004-12-24 | 2006-05-01 | Hon Hai Prec Ind Co Ltd | System and method for auto-judging geometric shape trend of a set of dots on an image |
CN100377578C (zh) * | 2005-08-02 | 2008-03-26 | 北京北大方正电子有限公司 | 一种电视字幕文字的处理方法 |
US10347016B2 (en) * | 2016-01-12 | 2019-07-09 | Monotype Imaging Inc. | Converting font contour curves |
US10936792B2 (en) | 2017-12-21 | 2021-03-02 | Monotype Imaging Inc. | Harmonizing font contours |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2147474B (en) * | 1983-10-03 | 1987-05-07 | Shaken Kk | Method of processing character or pictorial image data |
JPH0613212B2 (ja) * | 1983-10-03 | 1994-02-23 | 株式会社写研 | 文字画像デ−タの処理方法 |
JP2735197B2 (ja) * | 1987-11-12 | 1998-04-02 | 株式会社東芝 | 図形入力装置 |
JP2806961B2 (ja) * | 1989-02-22 | 1998-09-30 | 株式会社リコー | 画像符号化方法 |
US5233671A (en) * | 1989-02-22 | 1993-08-03 | Ricoh Company Ltd. | Image coding method for coding characters using a modified Bezier curve |
JPH0458378A (ja) * | 1990-06-28 | 1992-02-25 | Mitsubishi Heavy Ind Ltd | ベジエ曲線を分割して展開する方法 |
-
1993
- 1993-08-30 CA CA002105125A patent/CA2105125C/en not_active Expired - Fee Related
- 1993-08-30 CN CN93117077A patent/CN1033110C/zh not_active Expired - Fee Related
- 1993-08-31 EP EP19930306856 patent/EP0586219A3/en not_active Withdrawn
- 1993-08-31 AU AU46008/93A patent/AU656090B2/en not_active Ceased
- 1993-09-01 KR KR1019930017344A patent/KR0129505B1/ko not_active IP Right Cessation
- 1993-09-01 US US08/114,364 patent/US5572605A/en not_active Expired - Lifetime
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1110018C (zh) * | 1998-10-02 | 2003-05-28 | 国际商业机器公司 | 特征值抽取方法及设备 |
CN104980619A (zh) * | 2014-04-10 | 2015-10-14 | 富士通株式会社 | 图像处理设备和电子装置 |
CN104980619B (zh) * | 2014-04-10 | 2018-04-13 | 富士通株式会社 | 图像处理设备和电子装置 |
CN111063009A (zh) * | 2019-12-18 | 2020-04-24 | 山东山科智能科技有限公司 | 一种汉字书写动画演示方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
AU656090B2 (en) | 1995-01-19 |
EP0586219A3 (en) | 1994-06-08 |
CN1033110C (zh) | 1996-10-23 |
CA2105125A1 (en) | 1994-03-02 |
KR0129505B1 (ko) | 1998-04-15 |
KR940007735A (ko) | 1994-04-28 |
AU4600893A (en) | 1994-03-24 |
CA2105125C (en) | 2000-04-18 |
US5572605A (en) | 1996-11-05 |
EP0586219A2 (en) | 1994-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1033110C (zh) | 文字数据、词符-插图数据的输入输出装置及其方法 | |
CN1168033C (zh) | 数据结构编辑装置及其编辑方法 | |
CN1136516C (zh) | 图案抽取装置和方法 | |
CN1213592C (zh) | 采用自适应二值化的图象处理方法和设备 | |
CN1249617C (zh) | 图像补正装置,图像补正方法,及图像形成装置 | |
CN1131495C (zh) | 特征信息赋予方法及装置 | |
CN1220163C (zh) | 标题抽取装置及其方法 | |
CN1254769C (zh) | 图像处理方法和装置 | |
CN101038625A (zh) | 图像处理装置和方法 | |
CN1207896C (zh) | 图象数据的压缩和恢复方法 | |
CN1399243A (zh) | 显示装置、显示方法及记录有显示控制程序的记录媒体 | |
CN1577333A (zh) | 图像处理装置、图像处理方法、其记录介质和程序 | |
CN1795468A (zh) | 在基于扫描线的光栅图像处理器中跟踪深度的方法 | |
CN1334544A (zh) | 二维代码读取方法、信息记录媒体和二维代码读取装置 | |
CN1510593A (zh) | 编排系统、编排程序和编排方法 | |
CN1749958A (zh) | 使用形状的公用图表 | |
CN1645241A (zh) | 摄影装置、图像处理装置、摄影装置的图像处理方法 | |
CN1178461C (zh) | 图像编码装置、图像译码装置、传真装置 | |
CN1922630A (zh) | 图象处理装置、图象处理系统、图象处理方法、图象处理程序及集成电路装置 | |
CN1530855A (zh) | 布局系统和布局程序以及布局方法 | |
CN1910900A (zh) | 防止擅自复制的设备、方法和程序 | |
CN1652241A (zh) | 可抑制电路规模能进行高速纠错的纠错装置和解码装置 | |
CN1826612A (zh) | 电子化服务指南显示程序、记录了程序的记录介质、电子化服务指南显示控制方法、电子化服务指南显示控制装置、程序传送方法、程序传送装置、程序接收方法、及程序接收装置 | |
CN1599445A (zh) | 数据处理方法、数据处理装置 | |
CN1926881A (zh) | 运动矢量检测装置、运动矢量检测方法和计算机程序 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |