JP2014075071A - Information processor and information processing program - Google Patents

Information processor and information processing program Download PDF

Info

Publication number
JP2014075071A
JP2014075071A JP2012222861A JP2012222861A JP2014075071A JP 2014075071 A JP2014075071 A JP 2014075071A JP 2012222861 A JP2012222861 A JP 2012222861A JP 2012222861 A JP2012222861 A JP 2012222861A JP 2014075071 A JP2014075071 A JP 2014075071A
Authority
JP
Japan
Prior art keywords
line segment
stroke
module
determination
length
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
Application number
JP2012222861A
Other languages
Japanese (ja)
Other versions
JP6229254B2 (en
Inventor
Kosuke Maruyama
耕輔 丸山
Shunichi Kimura
俊一 木村
Eiichi Tanaka
瑛一 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2012222861A priority Critical patent/JP6229254B2/en
Publication of JP2014075071A publication Critical patent/JP2014075071A/en
Application granted granted Critical
Publication of JP6229254B2 publication Critical patent/JP6229254B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Character Input (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide an information processor for reducing determination errors as to whether a first segment and a second segment constitute the same character, compared with the case without this configuration.SOLUTION: First calculation means of the information processor calculates the distance of a part at which a first segment expressed by a first coordinate information string and a second segment expressed by a second coordinate information string overlap each other on the basis of the first coordinate information string and the second coordinate information string composed of coordinate information, second calculation means calculates the length of the first segment or the second segment, and determination means determines whether the first segment and the second segment constitute the same character on the basis of a ratio of the distance calculated by the first calculation means to the length calculated by the second calculation means.

Description

本発明は、情報処理装置及び情報処理プログラムに関する。   The present invention relates to an information processing apparatus and an information processing program.

特許文献1には、入力文字列の密度に応じた縦横比率を計算して、文字の認識率を向上させることを課題とし、座標入力手段であるタブレットから入力されたN本のストローク列は、基本セグメント分割手段に入力されて、基本セグメントに分割され、文字列密度計算手段は、基本セグメント分割手段により分割された基本セグメント間の隙間と入力文字列の最初の文字から最後の文字までの距離から文字列密度を計算し、縦横比率計算手段は、文字列密度から、その密度に応じた最適な縦横比率の閾値を求め、候補文字生成手段は、文字の候補となる候補文字を生成し、候補文字認識手段は、相違度が最小となる標準文字の名称とその相違度を検出し、最適文字列手段は、入力ストローク列に対して、相違度の総和を最小とする文字名称の系列を割り当てることが開示されている。   Patent Document 1 aims to improve the character recognition rate by calculating the aspect ratio according to the density of the input character string, and N stroke sequences input from a tablet as a coordinate input means are: Input to the basic segment dividing means and divided into basic segments. The character string density calculating means calculates the gap between the basic segments divided by the basic segment dividing means and the distance from the first character to the last character of the input character string. The character string density is calculated from the character string density, the aspect ratio calculating means obtains a threshold value of the optimum aspect ratio according to the density from the character string density, and the candidate character generating means generates candidate characters that are character candidates, The candidate character recognition means detects the name of the standard character having the smallest difference and the difference, and the optimum character string means has the character name that minimizes the sum of the differences for the input stroke string. Assigning a column is disclosed.

特開平09−034992号公報JP 09-034992 A

本発明は、本構成を有していない場合に比較して、第1の線分と第2の線分が同じ文字を構成しているか否かの判定誤りを減少させるようにした情報処理装置及び情報処理プログラムを提供することを目的としている。   The present invention reduces the determination error as to whether or not the first line segment and the second line segment constitute the same character as compared with the case where the present configuration is not provided. And an information processing program.

かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項1の発明は、座標情報によって構成されている第1の座標情報列と第2の座標情報列に基づいて、該第1の座標情報列によって表される第1の線分と該第2の座標情報列によって表される第2の線分が重なり合っている部分の距離を算出する第1の算出手段と、前記第1の線分又は前記第2の線分の長さを算出する第2の算出手段と、前記第1の算出手段によって算出された距離と前記第2の算出手段によって算出された長さの比率に基づいて、前記第1の線分と前記第2の線分が同じ文字を構成しているか否かを判定する判定手段を具備することを特徴とする情報処理装置である。
The gist of the present invention for achieving the object lies in the inventions of the following items.
The invention according to claim 1 is based on the first coordinate information sequence and the second coordinate information sequence configured by the coordinate information, and the first line segment represented by the first coordinate information sequence and the first A first calculation means for calculating a distance of a portion where the second line segments represented by the two coordinate information strings overlap, and a length of the first line segment or the second line segment. Based on the ratio of the distance calculated by the second calculation means, the distance calculated by the first calculation means, and the length calculated by the second calculation means, the first line segment and the second line segment It is an information processing apparatus characterized by comprising determination means for determining whether or not they constitute the same character.

請求項2の発明は、前記第2の算出手段は、前記第1の線分の長さを算出する第3の算出手段と、前記第2の線分の長さを算出する第4の算出手段を含み、前記判定手段は、前記第1の算出手段によって算出された距離と前記第3の算出手段によって算出された長さの比率に基づいて、前記第1の線分と前記第2の線分が同じ文字を構成しているか否かの仮の判定をする第2の判定手段と、前記第1の算出手段によって算出された距離と前記第4の算出手段によって算出された長さの比率に基づいて、前記第1の線分と前記第2の線分が同じ文字を構成しているか否かの仮の判定をする第3の判定手段と、前記第2の判定手段による判定結果と前記第3の判定手段による判定結果に基づいて、前記第1の線分と前記第2の線分が同じ文字を構成しているか否かを判定する第4の判定手段を含むことを特徴とする請求項1に記載の情報処理装置である。   According to a second aspect of the present invention, the second calculation means includes third calculation means for calculating the length of the first line segment, and fourth calculation for calculating the length of the second line segment. And the determination means includes the first line segment and the second line based on the ratio of the distance calculated by the first calculation means and the length calculated by the third calculation means. A second determination means for temporarily determining whether or not the line segments constitute the same character; a distance calculated by the first calculation means; and a length calculated by the fourth calculation means. Based on the ratio, a third determination unit that temporarily determines whether or not the first line segment and the second line segment constitute the same character, and a determination result by the second determination unit And the determination result by the third determination means, the first line segment and the second line segment form the same character. An information processing apparatus according to claim 1, characterized in that it comprises a fourth determination means for determining whether or not the.

請求項3の発明は、前記第2の算出手段は、前記第1の線分の長さを算出する第3の算出手段と、前記第2の線分の長さを算出する第4の算出手段と、前記第3の算出手段によって算出された長さと前記第4の算出手段によって算出された長さのいずれか一方を選択する選択手段を含み、前記判定手段は、前記第1の算出手段によって算出された距離と前記選択手段によって選択された長さの比率に基づいて、前記第1の線分と前記第2の線分が同じ文字を構成しているか否かを判定することを特徴とする請求項1に記載の情報処理装置である。   According to a third aspect of the present invention, the second calculation means includes a third calculation means for calculating the length of the first line segment, and a fourth calculation for calculating the length of the second line segment. And a selection unit that selects one of the length calculated by the third calculation unit and the length calculated by the fourth calculation unit, and the determination unit includes the first calculation unit. And determining whether or not the first line segment and the second line segment constitute the same character based on a ratio between the distance calculated by the above and the length selected by the selection unit. The information processing apparatus according to claim 1.

請求項4の発明は、前記第1の算出手段は、前記第2の線分又は前記第1の線分の予め定められた位置を算出し、前記第2の算出手段は、前記第1の線分又は前記第2の線分の範囲を算出し、前記判定手段は、前記第1の算出手段によって算出された位置が、前記第2の算出手段によって算出された範囲に含まれているか否かによって、前記第1の線分と前記第2の線分が同じ文字を構成しているか否かを判定することを特徴とする請求項1に記載の情報処理装置である。   According to a fourth aspect of the present invention, the first calculation unit calculates the second line segment or a predetermined position of the first line segment, and the second calculation unit includes the first line segment. A line segment or a range of the second line segment is calculated, and the determination unit determines whether or not the position calculated by the first calculation unit is included in the range calculated by the second calculation unit. The information processing apparatus according to claim 1, wherein the information processing apparatus determines whether or not the first line segment and the second line segment constitute the same character.

請求項5の発明は、前記第2の算出手段は、対象となり得る線分の長さを算出し、前記第2の算出手段によって算出された長さに基づいて、線分を昇順又は降順に整列する整列手段を具備し、前記判定手段は、前記第1の線分と前記第2の線分のうち、前記整列手段による整列順によって、線分の長さが短い線分を選択し、前記第1の算出手段によって算出された距離と該選択された線分の長さの比率に基づいて、前記第1の線分と前記第2の線分が同じ文字を構成しているか否かを判定することを特徴とする請求項1に記載の情報処理装置である。   According to a fifth aspect of the present invention, the second calculation unit calculates a length of a line segment that can be an object, and the line segments are arranged in ascending or descending order based on the length calculated by the second calculation unit. An alignment means for aligning, wherein the determination means selects a line segment having a short line length from the first line segment and the second line segment according to the alignment order by the alignment means; Whether or not the first line segment and the second line segment constitute the same character based on the ratio between the distance calculated by the first calculation means and the length of the selected line segment The information processing apparatus according to claim 1, further comprising:

請求項6の発明は、前記判定手段によって同じ文字を構成していると判定された前記第1の線分と前記第2の線分に基づいて、該文字を構成している線分群を抽出する抽出手段をさらに具備することを特徴とする請求項1から5のいずれか一項に記載の情報処理装置である。   The invention according to claim 6 extracts a line segment group constituting the character based on the first line segment and the second line segment determined to constitute the same character by the determining means. The information processing apparatus according to claim 1, further comprising an extraction unit configured to perform extraction.

請求項7の発明は、前記抽出手段によって抽出された線分群を対象として文字認識を行う文字認識手段をさらに具備することを特徴とする請求項6に記載の情報処理装置である。   The invention according to claim 7 is the information processing apparatus according to claim 6, further comprising character recognition means for performing character recognition on the line segment group extracted by the extraction means.

請求項8の発明は、コンピュータを、座標情報によって構成されている第1の座標情報列と第2の座標情報列に基づいて、該第1の座標情報列によって表される第1の線分と該第2の座標情報列によって表される第2の線分が重なり合っている部分の距離を算出する第1の算出手段と、前記第1の線分又は前記第2の線分の長さを算出する第2の算出手段と、前記第1の算出手段によって算出された距離と前記第2の算出手段によって算出された長さの比率に基づいて、前記第1の線分と前記第2の線分が同じ文字を構成しているか否かを判定する判定手段として機能させるための情報処理プログラムである。   According to the invention of claim 8, the computer is configured to output the first line segment represented by the first coordinate information sequence based on the first coordinate information sequence and the second coordinate information sequence configured by the coordinate information. And a length of the first line segment or the second line segment, a first calculation means for calculating a distance of a portion where the second line segment represented by the second coordinate information sequence overlaps, Based on the ratio of the distance calculated by the first calculation means and the length calculated by the second calculation means, and the first line segment and the second It is an information processing program for functioning as a determination means for determining whether or not the line segments constitute the same character.

請求項1の情報処理装置によれば、本構成を有していない場合に比較して、第1の線分と第2の線分が同じ文字を構成しているか否かの判定誤りを減少させることができる。   According to the information processing apparatus of claim 1, the determination error as to whether or not the first line segment and the second line segment constitute the same character is reduced as compared with the case where the present configuration is not provided. Can be made.

請求項2の情報処理装置によれば、本構成を有していない場合に比較して、高速に処理することができる。   According to the information processing apparatus of the second aspect, it is possible to perform processing at a higher speed than in the case where the present configuration is not provided.

請求項3の情報処理装置によれば、本構成を有していない場合に比較して、メモリの消費を抑制することができる。   According to the information processing apparatus of the third aspect, it is possible to suppress the memory consumption as compared with the case where the present configuration is not provided.

請求項4の情報処理装置によれば、本構成を有していない場合に比較して、第1の線分と第2の線分が同じ文字を構成しているか否かの判定誤りを減少させることができる。   According to the information processing apparatus of the fourth aspect, the determination error as to whether or not the first line segment and the second line segment constitute the same character is reduced as compared with the case where the present configuration is not provided. Can be made.

請求項5の情報処理装置によれば、本構成を有していない場合に比較して、高速に処理することができる。   According to the information processing apparatus of the fifth aspect, processing can be performed at a higher speed than in the case where the present configuration is not provided.

請求項6の情報処理装置によれば、文字を構成している線分群を抽出することができる。   According to the information processing apparatus of the sixth aspect, it is possible to extract a line segment group constituting a character.

請求項7の情報処理装置によれば、線分群から構成されている文字を認識することができる。   According to the information processing apparatus of the seventh aspect, it is possible to recognize a character composed of a line segment group.

請求項8の情報処理プログラムによれば、本構成を有していない場合に比較して、第1の線分と第2の線分が同じ文字を構成しているか否かの判定誤りを減少させることができる。   According to the information processing program of claim 8, the determination error as to whether or not the first line segment and the second line segment constitute the same character is reduced as compared with the case where the present configuration is not provided. Can be made.

第1の実施の形態の構成例についての概念的なモジュール構成図である。It is a conceptual module block diagram about the structural example of 1st Embodiment. 第1の実施の形態による処理例を示す説明図である。It is explanatory drawing which shows the process example by 1st Embodiment. 第1の実施の形態による処理例を示すフローチャートである。It is a flowchart which shows the process example by 1st Embodiment. 第1の実施の形態による処理例を示す説明図である。It is explanatory drawing which shows the process example by 1st Embodiment. 第1の実施の形態による処理例を示す説明図である。It is explanatory drawing which shows the process example by 1st Embodiment. 第1の実施の形態による処理例を示す説明図である。It is explanatory drawing which shows the process example by 1st Embodiment. 第1の実施の形態による処理例を示す説明図である。It is explanatory drawing which shows the process example by 1st Embodiment. 第1の実施の形態による処理例を示す説明図である。It is explanatory drawing which shows the process example by 1st Embodiment. 第1の実施の形態による処理例を示す説明図である。It is explanatory drawing which shows the process example by 1st Embodiment. 第2の実施の形態の構成例についての概念的なモジュール構成図である。It is a conceptual module block diagram about the structural example of 2nd Embodiment. 第2の実施の形態による処理例を示す説明図である。It is explanatory drawing which shows the process example by 2nd Embodiment. 第2の実施の形態による処理例を示すフローチャートである。It is a flowchart which shows the process example by 2nd Embodiment. 第3の実施の形態の構成例についての概念的なモジュール構成図である。It is a conceptual module block diagram about the structural example of 3rd Embodiment. 第3の実施の形態による処理例を示す説明図である。It is explanatory drawing which shows the process example by 3rd Embodiment. 第3の実施の形態による処理例を示すフローチャートである。It is a flowchart which shows the process example by 3rd Embodiment. 第4の実施の形態による処理例を示す説明図である。It is explanatory drawing which shows the process example by 4th Embodiment. 座標値の中心の例を示す説明図である。It is explanatory drawing which shows the example of the center of a coordinate value. 時間の中心の例を示す説明図である。It is explanatory drawing which shows the example of the center of time. 重心の例を示す説明図である。It is explanatory drawing which shows the example of a gravity center. 重み付き重心の例を示す説明図である。It is explanatory drawing which shows the example of a gravity center with a weight. 第5の実施の形態の構成例についての概念的なモジュール構成図である。It is a notional module block diagram about the structural example of 5th Embodiment. 第6の実施の形態の構成例についての概念的なモジュール構成図である。It is a notional module block diagram about the structural example of 6th Embodiment. 第6の実施の形態による処理例を示す説明図である。It is explanatory drawing which shows the process example by 6th Embodiment. 第7の実施の形態の構成例についての概念的なモジュール構成図である。It is a notional module block diagram about the structural example of 7th Embodiment. 第7の実施の形態による処理例を示す説明図である。It is explanatory drawing which shows the process example by 7th Embodiment. 第8の実施の形態の構成例についての概念的なモジュール構成図である。It is a notional module block diagram about the structural example of 8th Embodiment. 本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。It is a block diagram which shows the hardware structural example of the computer which implement | achieves this Embodiment. 重なり幅の例を示す説明図である。It is explanatory drawing which shows the example of an overlap width. 本実施の形態の前提条件となる例を示す説明図である。It is explanatory drawing which shows the example used as the precondition of this Embodiment.

まず、本実施の形態を説明する前に、その前提となる技術について説明する。なお、この説明は、本実施の形態の理解を容易にすることを目的とするものである。
手書き文字列の文字認識等を行う文字認識装置に用いられるオンライン手書き文字列切り出し装置に関するものである。オンライン手書き文字は、複数の線分(以下、ストロークともいう)によって文字が構成されている。例えば、文字認識を行うためには、1文字を区別する必要がある。
図28は、重なり幅の例を示す説明図である。図28(a)は、分離すべきストロークを示している。ストローク2810とストローク2820は、それぞれ別々の文字に属しているものである。図28(b)は、分離すべきではない(統合すべき)ストロークを示している。ストローク2830とストローク2840は、同じ文字を構成するストロークである。ここで、ストローク列を1つの座標軸に投影したときの隣接するストロークの隙間の距離を求め、その隙間の距離が設定の閾値よりも小さいとき、隙間の両側のストロークを1つに結合し、隙間の距離が閾値よりも大きいとき、隙間の両側のストロークを別々のものとして分割し、その結合又は分割したストロークを基本セグメントとし、さらに隣接する基本セグメントを組み合わせて候補文字を順次生成し、また、複数の基本セグメントに基づき、入力された文字列の文字の密度を計算し、その文字の密度によって文字の特徴量を決定するようなアルゴリズム(ストロークデータの隙間を切り出し位置とする手法)を採用した場合、文字間隔がある程度存在することを想定しており、文字間が狭い(又は無い)場合、ストロークデータを正しく分離・統合することができない場合が生じる。例えば、図28(c)に示すように、ストローク2810とストローク2820が重なり合っている部分の距離と、ストローク2830とストローク2840が重なり合っている部分の距離が等しい場合(オーバーラップ間隔2850)、前述のアルゴリズムでは、重なり合っている距離(正値)を閾値として、ストローク2830とストローク2840を統合しようとすると、ストローク2810とストローク2820も統合されてしまうことになってしまう。逆に、離れている距離(負値)を閾値として、ストローク2810とストローク2820を分離しようとすると、ストローク2830とストローク2840も分離されてしまうことになってしまう。
First, before explaining the present embodiment, a technique that is a premise thereof will be described. This description is intended to facilitate understanding of the present embodiment.
The present invention relates to an online handwritten character string cutout device used for a character recognition device that performs character recognition of a handwritten character string. Online handwritten characters are composed of a plurality of line segments (hereinafter also referred to as strokes). For example, in order to perform character recognition, it is necessary to distinguish one character.
FIG. 28 is an explanatory diagram illustrating an example of the overlap width. FIG. 28A shows strokes to be separated. Stroke 2810 and stroke 2820 belong to different characters. FIG. 28B shows strokes that should not be separated (to be integrated). Stroke 2830 and stroke 2840 are strokes constituting the same character. Here, the distance between the adjacent strokes when the stroke sequence is projected on one coordinate axis is obtained, and when the distance between the gaps is smaller than the set threshold, the strokes on both sides of the gap are combined into one, When the distance is larger than the threshold, the strokes on both sides of the gap are divided as separate ones, the combined or divided strokes are used as basic segments, and adjacent basic segments are combined to generate candidate characters sequentially, Based on multiple basic segments, an algorithm that calculates the character density of the input character string and determines the character feature value based on the character density (a technique that uses the gap in the stroke data as the cut-out position) was adopted. In this case, it is assumed that there is some space between characters, and if the space between characters is narrow (or absent), correct the stroke data. If it is not possible to separate and integrated results. For example, as shown in FIG. 28 (c), when the distance of the portion where the stroke 2810 and the stroke 2820 overlap is equal to the distance of the portion where the stroke 2830 and the stroke 2840 overlap (overlap interval 2850), In the algorithm, when the overlapping distance (positive value) is used as a threshold and the stroke 2830 and the stroke 2840 are integrated, the stroke 2810 and the stroke 2820 are also integrated. Conversely, if the stroke 2810 and the stroke 2820 are separated using the distance (negative value) as a threshold as a threshold, the stroke 2830 and the stroke 2840 will also be separated.

図29は、本実施の形態の前提条件となる例を示す説明図である。
前提条件として、以下の4つがある。
(1)文字列方向と直行する方向に分離(又は統合)する。
(2)文字列方向と直行するストロークは統合する。
(3)単文字を偏と旁に分離してもよい。
(4)2本の横棒がわずかに接触又はx座標上でわずかに重なっている場合は、隣の文字である可能性があるので、分離する。「わずかに接触」、「わずかに重なっている」ことの判定については後述する。
FIG. 29 is an explanatory diagram showing an example as a precondition for the present embodiment.
There are the following four preconditions.
(1) Separation (or integration) in a direction perpendicular to the character string direction.
(2) The strokes orthogonal to the character string direction are integrated.
(3) Single characters may be separated into unequal and ugly.
(4) If the two horizontal bars are slightly touching or slightly overlapping on the x coordinate, they may be adjacent characters, so they are separated. The determination of “slightly touching” or “slightly overlapping” will be described later.

図29(a)の例は、前提条件(1)の例を示すものである。図に示すように、文字列の方向が左から右への場合、上から下への矢印のように、各ストローク群を分離する。この分離したストローク群を一文字として文字認識等の対象とする。
図29(b)の例は、前提条件(2)の例を示すものである。図のように、3本のストローク群を統合する。ただし、統合するか否かの判定については後述する。
The example of FIG. 29A shows an example of the precondition (1). As shown in the figure, when the direction of the character string is from left to right, the stroke groups are separated as indicated by arrows from top to bottom. The separated stroke group is set as a character recognition target.
The example of FIG. 29B shows an example of the precondition (2). As shown in the figure, the three stroke groups are integrated. However, the determination of whether to integrate will be described later.

図29(c1)、(c2)の例は、前提条件(3)の例を示すものである。図29(c1)の例は、偏と旁に分離しているものであり、本実施の形態では許容されるものである。
図29(c2)の例は、冠とその下の部分を分離しているが、このような分離は本実施の形態では許容されないものである。なお、単文字を偏と旁に分離してもよいとした理由は、偏と旁を単文字に統合する手法が既にあるためである。例えば、多重仮説検定法という手法がある。これは、文字の切り出し方に複数の仮説を立て、文字パターンの候補を切り出した後、文字識別や文字列照合によって正しい仮説を決定する方式である。例えば、多重仮説検定法を活用した方式として、特開平09−185681号公報に示されているような技術があり、多重仮説検定法に、文字パターンの大きさや前後のパターンとの位置関係に基づく評価値(概形ペナルティ)を導入したものである。また、その他の方式として、特開平08−161432号公報に示されているような技術があり、外接矩形の形状情報から、まず、切り出しを確定できるものは確定し、残ったものに対しては、外接矩形の組み合わせによる複数の切り出し候補を推定し、それぞれの切り出し候補毎に個々の矩形に対する認識評価値を求め、これら個々の矩形に対する認識評価値を用いた各切り出し候補毎の組み合わせ評価値のうち最適な組み合わせ評価値を得た切り出し候補を切り出し結果として確定する。
The examples of FIGS. 29 (c1) and (c2) show an example of the precondition (3). The example of FIG. 29 (c1) is separated into a bias and a heel, and is allowed in this embodiment.
In the example of FIG. 29 (c2), the crown and the lower part are separated, but such separation is not allowed in the present embodiment. The reason that single characters may be separated into partial characters and 旁 is that there is already a method for integrating partial characters and 旁 into single characters. For example, there is a technique called multiple hypothesis testing. This is a method in which a plurality of hypotheses are set in the character cutout method, a character pattern candidate is cut out, and then a correct hypothesis is determined by character identification or character string matching. For example, as a method utilizing the multiple hypothesis testing method, there is a technique as disclosed in Japanese Patent Laid-Open No. 09-185681, and the multiple hypothesis testing method is based on the size of the character pattern and the positional relationship with the preceding and following patterns. Evaluation value (rough shape penalty) is introduced. As another method, there is a technique as disclosed in Japanese Patent Application Laid-Open No. 08-161432, and from the shape information of the circumscribed rectangle, first, what can be determined to be cut out is determined, and for the remaining ones , Estimating a plurality of cutout candidates based on a combination of circumscribed rectangles, obtaining a recognition evaluation value for each rectangle for each cutout candidate, and determining a combination evaluation value for each cutout candidate using the recognition evaluation value for each individual rectangle Of these, the extraction candidate that has obtained the optimum combination evaluation value is determined as the extraction result.

図29(d)の例は、前提条件(4)の例を示すものである。図に示すような2つのストロークは、分離すべきものである。   The example in FIG. 29D shows an example of the precondition (4). The two strokes as shown are to be separated.

以下、図面に基づき本発明を実現するにあたっての好適な各種の実施の形態の例を説明する。
<第1の実施の形態>
図1は、第1の実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム(コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム)、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、2以上の値(もちろんのことながら、全ての値も含む)が同じであってもよい。また、「Aである場合、Bをする」という意味を有する記載は、「Aであるか否かを判断し、Aであると判断した場合はBをする」の意味で用いる。ただし、Aであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」(社会システム)にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、RAM(Random Access Memory)、外部記憶媒体、通信回線を介した記憶装置、CPU(Central Processing Unit)内のレジスタ等を含んでいてもよい。
Hereinafter, examples of various preferred embodiments for realizing the present invention will be described with reference to the drawings.
<First Embodiment>
FIG. 1 is a conceptual module configuration diagram of a configuration example according to the first embodiment.
The module generally refers to components such as software (computer program) and hardware that can be logically separated. Therefore, the module in the present embodiment indicates not only a module in a computer program but also a module in a hardware configuration. Therefore, the present embodiment is a computer program for causing these modules to function (a program for causing a computer to execute each procedure, a program for causing a computer to function as each means, and a function for each computer. This also serves as an explanation of the program and system and method for realizing the above. However, for the sake of explanation, the words “store”, “store”, and equivalents thereof are used. However, when the embodiment is a computer program, these words are stored in a storage device or stored in memory. It is the control to be stored in the device. Modules may correspond to functions one-to-one, but in mounting, one module may be configured by one program, or a plurality of modules may be configured by one program, and conversely, one module May be composed of a plurality of programs. The plurality of modules may be executed by one computer, or one module may be executed by a plurality of computers in a distributed or parallel environment. Note that one module may include other modules. Hereinafter, “connection” is used not only for physical connection but also for logical connection (data exchange, instruction, reference relationship between data, etc.). “Predetermined” means that the process is determined before the target process, and not only before the process according to this embodiment starts but also after the process according to this embodiment starts. In addition, if it is before the target processing, it is used in accordance with the situation / state at that time or with the intention to be decided according to the situation / state up to that point. When there are a plurality of “predetermined values”, they may be different values, or two or more values (of course, including all values) may be the same. In addition, the description having the meaning of “do B when it is A” is used in the meaning of “determine whether or not it is A and do B when it is judged as A”. However, the case where it is not necessary to determine whether or not A is excluded.
In addition, the system or device is configured by connecting a plurality of computers, hardware, devices, and the like by communication means such as a network (including one-to-one correspondence communication connection), etc., and one computer, hardware, device. The case where it implement | achieves by etc. is included. “Apparatus” and “system” are used as synonymous terms. Of course, the “system” does not include a social “mechanism” (social system) that is an artificial arrangement.
In addition, when performing a plurality of processes in each module or in each module, the target information is read from the storage device for each process, and the processing result is written to the storage device after performing the processing. is there. Therefore, description of reading from the storage device before processing and writing to the storage device after processing may be omitted. Here, the storage device may include a hard disk, a RAM (Random Access Memory), an external storage medium, a storage device via a communication line, a register in a CPU (Central Processing Unit), and the like.

第1の実施の形態である情報処理装置は、文字を構成している複数の線分を統合すべきか否かを判定するものであって、図1の例に示すように、ストロークサイズ算出モジュール110、オーバーラップ算出モジュール120、判定モジュール130を有している。   The information processing apparatus according to the first embodiment determines whether or not a plurality of line segments constituting a character should be integrated, and, as shown in the example of FIG. 1, a stroke size calculation module 110, an overlap calculation module 120, and a determination module 130.

オーバーラップ算出モジュール120は、判定モジュール130と接続されている。オーバーラップ算出モジュール120は、座標情報によって構成されている第1の座標情報列(以下、ストローク情報ともいう)であるストロークA:100Aと第2の座標情報列であるストロークB:100Bに基づいて、ストロークA:100Aによって表される第1の線分とストロークB:100Bによって表される第2の線分が重なり合っている部分(以下、オーバーラップ)の距離を算出する。なお、ストロークA:100A、ストロークB:100Bは、2次元の座標データ群として構成されている。例えば、利用者によってタブレット上で電子ペン等を用いて筆記される文字列について、予め定められた時間間隔で各筆点を2次元の座標データとして検出したものである。また、この他に座標データが埋め込まれた情報画像が印刷された用紙上を、スキャナ付きの電子ペン等を用いて筆記される文字列について、その電子ペン等が情報画像を解析して座標データを検出するようにしたものであってもよい。なお、座標情報列は、少なくとも始点と終点の座標データによって構成されていればよい。   The overlap calculation module 120 is connected to the determination module 130. The overlap calculation module 120 is based on a stroke A: 100A that is a first coordinate information sequence (hereinafter also referred to as stroke information) constituted by coordinate information and a stroke B: 100B that is a second coordinate information sequence. The distance between the first line segment represented by stroke A: 100A and the second line segment represented by stroke B: 100B (hereinafter referred to as overlap) is calculated. The stroke A: 100A and the stroke B: 100B are configured as a two-dimensional coordinate data group. For example, for a character string written by a user using an electronic pen or the like on a tablet, each writing point is detected as two-dimensional coordinate data at a predetermined time interval. In addition, for a character string written on a paper on which an information image in which coordinate data is embedded is printed using an electronic pen with a scanner, the electronic pen analyzes the information image to obtain coordinate data. May be detected. In addition, the coordinate information sequence should just be comprised by the coordinate data of a starting point and an end point at least.

ストロークサイズ算出モジュール110は、判定モジュール130と接続されている。ストロークサイズ算出モジュール110は、第1の線分又は第2の線分の長さ(全長)を算出する。第1の線分又は第2の線分における始点から終点までの距離を算出する。
判定モジュール130は、ストロークサイズ算出モジュール110、オーバーラップ算出モジュール120と接続されている。判定モジュール130は、オーバーラップ算出モジュール120によって算出された距離とストロークサイズ算出モジュール110によって算出された長さの比率に基づいて、第1の線分と第2の線分が同じ文字を構成しているか否かを判定する。ここで、「比率に基づいて」とは、例えば、比率と予め定められた閾値とを比較することをいう。そして、比較結果として、閾値以上、閾値より大、閾値以下、閾値未満等の関係である場合に、同じ文字を構成していると判定する。そして、その判定結果199を出力する。出力先としては、例えば、後述する連結成分算出モジュール2420、オンライン文字列認識モジュール2620等である。また、判定モジュール130は、オーバーラップ算出モジュール120による算出結果が正値である場合に判定処理を行うようにしてもよい。つまり、オーバーラップが発生していない場合は、判定処理は不要だからである。又は、オーバーラップが発生していない場合は、同じ文字を構成していないとする判定結果にしてもよい。
図2は、第1の実施の形態(特に判定モジュール130)による処理例を示す説明図である。
ここでは、ストロークA:200AとストロークB:200Bが重なり合っている部分の距離(オーバーラップ間隔δ220)と、ストロークA:200AのストロークサイズW210を用いる。そして、(オーバーラップ間隔δ220)/(ストロークサイズW210)×100[%]が予め定められた閾値以上である場合、ストロークA:200AとストロークB:200Bは同じ文字を構成していると判定する。それ以外の場合は、同じ文字を構成していない(別々の文字の構成である)と判定する。
また、判定モジュール130は、2本のストロークにおいて、一方のストロークの予め定められた範囲(例えば、ストロークサイズ(ストロークの全長)のA%以上等)が、もう一方のストロークのx座標上における範囲内に含まれているかを判定するようにしてもよい。
The stroke size calculation module 110 is connected to the determination module 130. The stroke size calculation module 110 calculates the length (full length) of the first line segment or the second line segment. The distance from the start point to the end point in the first line segment or the second line segment is calculated.
The determination module 130 is connected to the stroke size calculation module 110 and the overlap calculation module 120. Based on the ratio of the distance calculated by the overlap calculation module 120 and the length calculated by the stroke size calculation module 110, the determination module 130 forms the same character in the first line segment and the second line segment. It is determined whether or not. Here, “based on the ratio” means, for example, comparing the ratio with a predetermined threshold value. Then, as a comparison result, if the relationship is greater than or equal to the threshold, greater than the threshold, less than the threshold, less than the threshold, it is determined that the same character is configured. Then, the determination result 199 is output. Examples of the output destination include a connected component calculation module 2420 and an online character string recognition module 2620 described later. Further, the determination module 130 may perform the determination process when the calculation result by the overlap calculation module 120 is a positive value. That is, if no overlap occurs, the determination process is unnecessary. Alternatively, if there is no overlap, it may be determined that the same character is not configured.
FIG. 2 is an explanatory diagram illustrating a processing example according to the first embodiment (particularly, the determination module 130).
Here, the distance (overlap interval δ220) of the portion where stroke A: 200A and stroke B: 200B overlap and the stroke size W210 of stroke A: 200A are used. When (overlap interval δ220) / (stroke size W210) × 100 [%] is equal to or larger than a predetermined threshold, it is determined that stroke A: 200A and stroke B: 200B constitute the same character. . In other cases, it is determined that the same character is not configured (a configuration of different characters).
In addition, in the two strokes, the determination module 130 determines that a predetermined range of one stroke (for example, A% or more of the stroke size (the total length of the stroke)) is a range on the x coordinate of the other stroke. You may make it determine whether it is contained in.

なお、記号を用いて説明するが、以下にその例を示す。
:ストローク
:ストロークsの幅
ij:ストロークsとストロークsが重なり合っている部分の距離(オーバーラップ間隔、被覆幅)
ij∈{0,1}:sがsに従属する
ij∈{0,1}:sとsを統合する(bijとbjiの論理和)
S:ストローク列(sの系列)
W:ストロークの幅列(wの系列)
M:全判定結果情報(mのセット)
:統合ストローク(sのセット)
C:統合ストローク列(cの系列)
θ:文字列方向
⊥:終了信号
In addition, although it demonstrates using a symbol, the example is shown below.
s i : Stroke w i : Width of stroke s i v ij : Distance between overlapping portions of stroke s i and stroke s j (overlap interval, covering width)
b ij ε {0,1}: s i is dependent on s j m ij ε {0, 1}: s i and s j are integrated (logical sum of b ij and b ji )
S: Stroke sequence (series of s)
W: Stroke width sequence (series of w)
M: All judgment result information (set of m)
c k : integrated stroke (set of s)
C: Integrated stroke sequence (series of c)
θ: Character string direction ⊥: End signal

図3は、第1の実施の形態による処理例を示すフローチャートである。
ステップS302では、第1の実施の形態が、ストローク情報を取得する。例えば、図4(a)に示すように、ストローク402〜412のストローク情報を取得する。
ステップS304では、第1の実施の形態が、取得したストローク情報から対象とする2つのストローク情報を抽出する。例えば、図4(b)に示すように、ストローク402とストローク404の組を抽出する。そして、2回目以降の処理で、ストローク406以降のストロークとストローク402との組み合わせを抽出する。この例は、全ての組み合わせを抽出する例である。
FIG. 3 is a flowchart illustrating a processing example according to the first exemplary embodiment.
In step S302, the first embodiment acquires stroke information. For example, as shown in FIG. 4A, the stroke information of the strokes 402 to 412 is acquired.
In step S304, the first embodiment extracts two pieces of target stroke information from the acquired stroke information. For example, as shown in FIG. 4B, a set of stroke 402 and stroke 404 is extracted. In the second and subsequent processing, combinations of strokes after stroke 406 and strokes 402 are extracted. In this example, all combinations are extracted.

ステップS306では、ストロークサイズ算出モジュール110が、ストロークのサイズを算出する。図5は、第1の実施の形態(特にストロークサイズ算出モジュール110)による処理例を示す説明図である。ストロークサイズ算出モジュール110は、文字列方向θについて、ストロークsの幅wを算出する。文字列方向が水平の場合は、そのストロークにおけるx座標の最小値から最大値までの距離である。 In step S306, the stroke size calculation module 110 calculates the size of the stroke. FIG. 5 is an explanatory diagram illustrating a processing example according to the first embodiment (particularly, the stroke size calculation module 110). The stroke size calculation module 110 calculates the width w i of the stroke s i with respect to the character string direction θ. When the character string direction is horizontal, it is the distance from the minimum value to the maximum value of the x coordinate in the stroke.

ステップS308では、オーバーラップ算出モジュール120が、2本のストロークの重なりを算出する。図6は、第1の実施の形態(特にオーバーラップ算出モジュール120)による処理例を示す説明図である。オーバーラップ算出モジュール120は、文字列方向θについて、ストロークsとsの被覆幅vijを算出する。 In step S308, the overlap calculation module 120 calculates the overlap of two strokes. FIG. 6 is an explanatory diagram illustrating a processing example according to the first embodiment (particularly, the overlap calculation module 120). The overlap calculation module 120 calculates the covering width v ij of the strokes s i and s j with respect to the character string direction θ.

ステップS310では、判定モジュール130が、統合判定を行う。図7は、第1の実施の形態(特に判定モジュール130)による処理例を示す説明図である。判定モジュール130は、幅wと被覆幅vijの比率が閾値th以上であれば1(ストロークsとsは同じ文字を構成している)を、そうでなければ0(ストロークsとsは同じ文字を構成していない)を返す。 In step S310, the determination module 130 performs integration determination. FIG. 7 is an explanatory diagram illustrating a processing example according to the first exemplary embodiment (particularly, the determination module 130). The determination module 130 determines 1 (strokes s i and s j constitute the same character) if the ratio of the width w i and the covering width v ij is equal to or greater than the threshold th, and 0 (stroke s i ) otherwise. And s j do not constitute the same character).

ステップS312では、判定モジュール130が、残っているストロークがあるか否かによって終了か否かを判断し、終了の場合は処理を終了し(ステップS399)、それ以外の場合はステップS304へ戻る。
ステップS306とステップS308の処理は、いずれが先に処理を行ってもよいし、平行して処理してもよい。
In step S312, the determination module 130 determines whether or not to end depending on whether or not there is a remaining stroke. If it is ended, the process ends (step S399), and otherwise returns to step S304.
Either step S306 or step S308 may be performed first or in parallel.

図8は、第1の実施の形態による処理例を示す説明図である。特に、データの流れを示したものである。ここでは、ストロークsとストロークsは、同じ文字を構成しているか否かを判定するものである。ストロークサイズ算出モジュール110は、ストロークsを受け取り、wを算出する。オーバーラップ算出モジュール120は、ストロークsとストロークsを受け取り、vijを算出する。判定モジュール130は、wとvijを受け取り、判定結果をbijとして、その2つのストロークが同じ文字を構成しているならばbij=1を、そうでなければbij=0を返す。 FIG. 8 is an explanatory diagram illustrating a processing example according to the first exemplary embodiment. In particular, it shows the flow of data. Here, it is determined whether or not the stroke s i and the stroke s j constitute the same character. Stroke size calculating module 110 receives the stroke s i, calculates the w i. The overlap calculation module 120 receives the stroke s i and the stroke s j and calculates v ij . The determination module 130 receives w i and v ij , sets b ij as the determination result, and returns b ij = 1 if the two strokes constitute the same character, otherwise returns b ij = 0. .

図9は、第1の実施の形態による処理例を示す説明図である。図8の例に示したように、ストロークサイズ算出モジュール110がストロークsの長さwを算出し、wにおけるvijの占める割合に基づいて判定モジュール130が判定することを示しており、どちらのストロークがsになるかによって、判定結果が異なる場合があることを示している。
図9(a)は、ストローク900Aをsとした場合の例を示している。つまり、ストロークsがストロークsより長く、ストロークサイズW910に占めるオーバーラップ間隔Vij920の割合が閾値Th未満となるため、判定結果は、bij=0となる。したがって、ストロークsとストロークsを分離する。
図9(b)は、ストローク900Bをsとした場合の例を示している。図9(a)の例とは、ストロークsとストロークsの関係が逆になっている。つまり、ストロークsがストロークsより長く、ストロークサイズW930に占めるオーバーラップ間隔Vij920の割合が閾値Th以上となるため、判定結果は、bij=1となる。したがって、ストロークsとストロークsを統合する。
ストロークの組み合わせとして、全ての組み合わせ(図9の例のように、いずれをsとするかについての組み合わせを含む)を生成し、判定を行う。そして、同じ2つのストロークの組み合わせにおいて、いずれかの判定結果が同じ文字の構成である(bij=1)となった場合は、その組み合わせの判定結果は、同じ文字の構成であるとする。
FIG. 9 is an explanatory diagram illustrating a processing example according to the first exemplary embodiment. As shown in the example of FIG. 8, the stroke size calculation module 110 calculates the length w i of the stroke s i , and the determination module 130 determines based on the ratio of v ij in w i . , depending on which stroke is s i, the determination result indicates that there may be different.
FIG. 9A shows an example in which the stroke 900A is set to s i . That is, since the stroke s i is longer than the stroke s j and the ratio of the overlap interval V ij 920 to the stroke size W i 910 is less than the threshold Th, the determination result is b ij = 0. Therefore, the stroke s i and the stroke s j are separated.
FIG. 9B shows an example in which the stroke 900B is set to s i . The relationship between the stroke s i and the stroke s j is reversed from the example of FIG. That is, since the stroke s j is longer than the stroke s i and the ratio of the overlap interval V ij 920 to the stroke size W i 930 is equal to or greater than the threshold Th, the determination result is b ij = 1. Therefore, the stroke s i and the stroke s j are integrated.
As combinations of strokes, all combinations (including combinations of which are set to s i as in the example of FIG. 9) are generated and determined. Then, in the combination of the same two strokes, if any of the determination results has the same character configuration (b ij = 1), the determination result of the combination is the same character configuration.

<第2の実施の形態>
図10は、第2の実施の形態の構成例についての概念的なモジュール構成図である。第2の実施の形態は、図10の例に示すように、ストロークサイズ算出モジュール1012、ストロークサイズ算出モジュール1014、オーバーラップ算出モジュール1020、判定モジュール1032、判定モジュール1034、OR演算モジュール1036を有している。
<Second Embodiment>
FIG. 10 is a conceptual module configuration diagram of a configuration example according to the second embodiment. As shown in the example of FIG. 10, the second embodiment includes a stroke size calculation module 1012, a stroke size calculation module 1014, an overlap calculation module 1020, a determination module 1032, a determination module 1034, and an OR operation module 1036. ing.

ストロークサイズ算出モジュール1012は、判定モジュール1032と接続されている。ストロークサイズ算出モジュール1012は、ストロークsの長さwを算出し、判定モジュール1032に渡す。
ストロークサイズ算出モジュール1014は、判定モジュール1034と接続されている。ストロークサイズ算出モジュール1014は、ストロークsの長さwを算出し、判定モジュール1034に渡す。
オーバーラップ算出モジュール1020は、判定モジュール1032、判定モジュール1034と接続されている。オーバーラップ算出モジュール1020は、ストロークsとストロークsを受け取り、vijを算出し、判定モジュール1032、判定モジュール1034に渡す。
判定モジュール1032は、ストロークサイズ算出モジュール1012、オーバーラップ算出モジュール1020、OR演算モジュール1036と接続されている。判定モジュール1032は、オーバーラップ算出モジュール1020によって算出されたvijとストロークサイズ算出モジュール1012によって算出されたwの比率に基づいて、ストロークsとストロークsが同じ文字を構成しているか否かの仮の判定を行い、判定結果であるbijをOR演算モジュール1036に渡す。
判定モジュール1034は、ストロークサイズ算出モジュール1014、オーバーラップ算出モジュール1020、OR演算モジュール1036と接続されている。判定モジュール1034は、オーバーラップ算出モジュール1020によって算出されたvijとストロークサイズ算出モジュール1014によって算出されたwの比率に基づいて、ストロークsとストロークsが同じ文字を構成しているか否かの仮の判定を行い、判定結果であるbjiをOR演算モジュール1036に渡す。
OR演算モジュール1036は、判定モジュール1032、判定モジュール1034と接続されている。OR演算モジュール1036は、判定モジュール1032による仮の判定結果bijと判定モジュール1034による仮の判定結果bjiに基づいて、ストロークsとストロークsが同じ文字を構成しているか否かを判定する。そして、判定結果をmijとして、同じ文字を構成しているならばmij=1を、そうでなければmij=0を出力する。
The stroke size calculation module 1012 is connected to the determination module 1032. The stroke size calculation module 1012 calculates the length w i of the stroke s i and passes it to the determination module 1032.
The stroke size calculation module 1014 is connected to the determination module 1034. The stroke size calculation module 1014 calculates the length w j of the stroke s j and passes it to the determination module 1034.
The overlap calculation module 1020 is connected to the determination module 1032 and the determination module 1034. The overlap calculation module 1020 receives the stroke s i and the stroke s j , calculates v ij , and passes it to the determination module 1032 and the determination module 1034.
The determination module 1032 is connected to the stroke size calculation module 1012, the overlap calculation module 1020, and the OR operation module 1036. The determination module 1032 determines whether or not the stroke s i and the stroke s j constitute the same character based on the ratio of v ij calculated by the overlap calculation module 1020 and w i calculated by the stroke size calculation module 1012. Tentative determination is performed, and the determination result b ij is passed to the OR operation module 1036.
The determination module 1034 is connected to the stroke size calculation module 1014, the overlap calculation module 1020, and the OR operation module 1036. The determination module 1034 determines whether the stroke s j and the stroke s i constitute the same character based on the ratio of v ij calculated by the overlap calculation module 1020 and w j calculated by the stroke size calculation module 1014. The provisional determination is performed, and the determination result b ji is passed to the OR operation module 1036.
The OR operation module 1036 is connected to the determination module 1032 and the determination module 1034. The OR operation module 1036 determines whether or not the stroke s i and the stroke s j constitute the same character based on the temporary determination result b ij from the determination module 1032 and the temporary determination result b ji from the determination module 1034. To do. Then, with the determination result being m ij , m ij = 1 is output if the same character is formed, and m ij = 0 is output otherwise.

ストロークサイズ算出モジュール1012、ストロークサイズ算出モジュール1014は、第1の実施の形態のストロークサイズ算出モジュール110と同等の処理を行う。オーバーラップ算出モジュール1020は、第1の実施の形態のオーバーラップ算出モジュール120と同等の処理を行う。判定モジュール1032、判定モジュール1034は、第1の実施の形態の判定モジュール130と同等の処理を行う。
ストロークサイズ算出モジュール1012による算出処理とストロークサイズ算出モジュール1014による算出処理は平行して行われる。判定モジュール1032による判定処理と判定モジュール1034による判定処理は平行して行われる。
The stroke size calculation module 1012 and the stroke size calculation module 1014 perform the same processing as the stroke size calculation module 110 of the first embodiment. The overlap calculation module 1020 performs the same processing as the overlap calculation module 120 of the first embodiment. The determination module 1032 and the determination module 1034 perform the same processing as the determination module 130 of the first embodiment.
The calculation process by the stroke size calculation module 1012 and the calculation process by the stroke size calculation module 1014 are performed in parallel. The determination process by the determination module 1032 and the determination process by the determination module 1034 are performed in parallel.

図11は、第2の実施の形態による処理例を示す説明図である。
ストロークサイズ算出モジュール1012がストロークs1100AのストロークサイズW1110を算出し、ストロークサイズ算出モジュール1014がストロークs1100BのストロークサイズW1120を算出し、オーバーラップ算出モジュール1020がオーバーラップ間隔Vij1130を算出し、判定モジュール1032がストロークサイズW1110におけるオーバーラップ間隔Vij1130の占める割合に基づいて仮判定し、判定モジュール1034がストロークサイズW1120におけるオーバーラップ間隔Vij1130の占める割合に基づいて仮判定し、OR演算モジュール1036が2つの仮判定結果(bij、bji)から判定し、判定結果mijを出力する。この場合、ストロークサイズW1120に占めるオーバーラップ間隔Vij1130の割合が閾値Th以上であるので、bji=1となり、mij=1となる。したがって、ストロークs1100Aとストロークs1100Bを統合する。
FIG. 11 is an explanatory diagram illustrating a processing example according to the second exemplary embodiment.
The stroke size calculation module 1012 calculates the stroke size W i 1110 of the stroke s i 1100A, the stroke size calculation module 1014 calculates the stroke size W j 1120 of the stroke s j 1100B, and the overlap calculation module 1020 calculates the overlap interval V. ij 1130 is calculated, and the determination module 1032 makes a tentative determination based on the ratio of the overlap interval V ij 1130 in the stroke size W i 1110. The determination module 1034 occupies the overlap interval V ij 1130 in the stroke size W j 1120. Temporary determination is made based on the ratio, and the OR operation module 1036 makes a determination from two temporary determination results (b ij , b ji ), and outputs a determination result m ij . In this case, since the ratio of the overlap interval V ij 1130 occupying the stroke size W j 1120 is equal to or greater than the threshold Th, b ji = 1 and m ij = 1. Therefore, the stroke s i 1100A and the stroke s j 1100B are integrated.

なお、OR演算モジュール1036の判定は、bij、bjiのいずれかが1(同じ文字を構成している)であれば、判定結果mijも1(同じ文字を構成している)となる。つまり、論理積(AND)演算ではなく、論理和(OR)演算としている。これは、次のような理由による。図11の例に示したように、
ij/W<Th → bij=0
ij/W≧Th → bji=1
となる。
wからみてvijはTh未満(bij=0であるが、wからみるとvijはTh以上(bji=0)となっているため、論理和演算によりmij=1とする。
論理積演算ではmij=0となるため、図11に示す例においてストロークを分離してしまう。よって、論理和演算とする。
The determination by the OR operation module 1036 is that if either b ij or b ji is 1 (constitutes the same character), the determination result m ij is also 1 (constitutes the same character). . That is, it is not a logical product (AND) operation but a logical sum (OR) operation. This is due to the following reason. As shown in the example of FIG.
V ij / W i <Th → b ij = 0
V ij / W j ≧ Th → b ji = 1
It becomes.
From the viewpoint of w i , v ij is less than Th (b ij = 0, but from the viewpoint of w j , v ij is equal to or greater than Th (b ji = 0), so that m ij = 1 by logical OR operation. .
Since m ij = 0 in the logical product operation, the stroke is separated in the example shown in FIG. Therefore, the logical sum operation is used.

図12は、第2の実施の形態による処理例を示すフローチャートである。
ステップS1202では、第2の実施の形態が、ストローク情報を取得する。
ステップS1204では、第2の実施の形態が、ストローク情報を抽出する。
ステップS1206では、オーバーラップ算出モジュール1020が、重なりを算出する。
ステップS1208では、ストロークサイズ算出モジュール1012が、サイズを算出する。
ステップS1210では、ストロークサイズ算出モジュール1014が、サイズを算出する。
ステップS1212では、判定モジュール1032が、統合判定を行う。
ステップS1214では、判定モジュール1034が、統合判定を行う。
ステップS1216では、OR演算モジュール1036が、総合判定を行う。
ステップS1218では、OR演算モジュール1036が、終了したか否かを判断し、終了の場合は処理を終了し(ステップS1299)、それ以外の場合はステップS1204へ戻る。
FIG. 12 is a flowchart illustrating a processing example according to the second exemplary embodiment.
In step S1202, the second embodiment acquires stroke information.
In step S1204, the second embodiment extracts stroke information.
In step S1206, the overlap calculation module 1020 calculates an overlap.
In step S1208, the stroke size calculation module 1012 calculates the size.
In step S1210, the stroke size calculation module 1014 calculates the size.
In step S <b> 1212, the determination module 1032 performs integration determination.
In step S1214, the determination module 1034 performs integration determination.
In step S1216, the OR operation module 1036 performs comprehensive determination.
In step S1218, the OR operation module 1036 determines whether or not the processing has ended. If the processing has ended, the processing ends (step S1299). Otherwise, the processing returns to step S1204.

<第3の実施の形態>
図13は、第3の実施の形態の構成例についての概念的なモジュール構成図である。第3の実施の形態は、ストロークサイズ算出モジュール1312、ストロークサイズ算出モジュール1314、オーバーラップ算出モジュール1320、ミニマム演算モジュール1332、判定モジュール1334を有している。
<Third Embodiment>
FIG. 13 is a conceptual module configuration diagram of an exemplary configuration according to the third embodiment. The third embodiment includes a stroke size calculation module 1312, a stroke size calculation module 1314, an overlap calculation module 1320, a minimum calculation module 1332, and a determination module 1334.

ストロークサイズ算出モジュール1312は、ミニマム演算モジュール1332と接続されている。ストロークサイズ算出モジュール1312は、ストロークsの長さwを算出し、ミニマム演算モジュール1332に渡す。第1の実施の形態のストロークサイズ算出モジュール110と同等の処理を行う。
ストロークサイズ算出モジュール1314は、ミニマム演算モジュール1332と接続されている。ストロークサイズ算出モジュール1314は、ストロークsの長さwを算出し、ミニマム演算モジュール1332に渡す。第1の実施の形態のストロークサイズ算出モジュール110と同等の処理を行う。
オーバーラップ算出モジュール1320は、判定モジュール1334と接続されている。オーバーラップ算出モジュール1320は、第1の実施の形態のオーバーラップ算出モジュール120と同等の処理を行う。
The stroke size calculation module 1312 is connected to the minimum calculation module 1332. The stroke size calculation module 1312 calculates the length w i of the stroke s i and passes it to the minimum calculation module 1332. Processing equivalent to that of the stroke size calculation module 110 of the first embodiment is performed.
The stroke size calculation module 1314 is connected to the minimum calculation module 1332. The stroke size calculation module 1314 calculates the length w j of the stroke s j and passes it to the minimum calculation module 1332. Processing equivalent to that of the stroke size calculation module 110 of the first embodiment is performed.
The overlap calculation module 1320 is connected to the determination module 1334. The overlap calculation module 1320 performs the same processing as the overlap calculation module 120 of the first embodiment.

ミニマム演算モジュール1332は、ストロークサイズ算出モジュール1312、ストロークサイズ算出モジュール1314、判定モジュール1334と接続されている。ミニマム演算モジュール1332は、ストロークサイズ算出モジュール1312によって算出された長さwとストロークサイズ算出モジュール1314によって算出された長さwのいずれか一方を選択する。具体的には、長さwと長さwを比較して、短いものを選択する。つまり、短いストロークが長いストロークへ従属しない(同じ文字を構成していない)とき、逆も必ず従属しないという関係になるからである。 The minimum calculation module 1332 is connected to the stroke size calculation module 1312, the stroke size calculation module 1314, and the determination module 1334. The minimum calculation module 1332 selects either the length w i calculated by the stroke size calculation module 1312 or the length w j calculated by the stroke size calculation module 1314. Specifically, the length w i is compared with the length w j and the short one is selected. In other words, when a short stroke does not depend on a long stroke (does not constitute the same character), the reverse is not necessarily dependent.

判定モジュール1334は、オーバーラップ算出モジュール1320、ミニマム演算モジュール1332と接続されている。判定モジュール1334は、オーバーラップ算出モジュール1320によって算出された距離Vijとミニマム演算モジュール1332によって選択された長さwの比率に基づいて、ストロークsとストロークsが同じ文字を構成しているか否かを判定する。第1の実施の形態の判定モジュール130と同等の処理を行う。
なお、第2の実施の形態よりも必要とするメモリ容量を少なくしたい場合は、仮判定結果bを記憶する必要がない第3の実施の形態を採用すればよい。
The determination module 1334 is connected to the overlap calculation module 1320 and the minimum calculation module 1332. The determination module 1334 determines whether the stroke s i and the stroke s j constitute the same character based on the ratio of the distance V ij calculated by the overlap calculation module 1320 and the length w selected by the minimum calculation module 1332. Determine whether or not. Processing equivalent to that of the determination module 130 of the first embodiment is performed.
If it is desired to reduce the required memory capacity compared to the second embodiment, the third embodiment that does not need to store the provisional determination result b may be employed.

図14は、第3の実施の形態による処理例を示す説明図である。
ストロークサイズ算出モジュール1312がストロークs1400AのストロークサイズW1410を算出し、ストロークサイズ算出モジュール1314がストロークs1400BのストロークサイズW1420を算出し、ミニマム演算モジュール1332がストロークサイズW1410とストロークサイズW1420のうち短いストロークサイズW1420を選択し、オーバーラップ算出モジュール1320がオーバーラップ間隔Vij1430を算出し、判定モジュール1334がストロークサイズW1420におけるオーバーラップ間隔Vij1430の占める割合に基づいて判定し、判定結果mijを出力する。この場合、ストロークサイズW1420に占めるオーバーラップ間隔Vij1430の割合が閾値Th以上であるので、mij=1となる。したがって、ストロークs1400Aとストロークs1400Bを統合する。
FIG. 14 is an explanatory diagram illustrating a processing example according to the third exemplary embodiment.
The stroke size calculation module 1312 calculates the stroke size W i 1410 of the stroke s i 1400A, the stroke size calculation module 1314 calculates the stroke size W j 1420 of the stroke s j 1400B, and the minimum calculation module 1332 calculates the stroke size W i 1410. and select a shorter stroke size W j 1420 of the stroke size W j 1420, overlap calculation module 1320 calculates the overlap distance V ij 1430, determination module 1334 overlap distance V ij 1430 at the stroke size W j 1420 And the determination result m ij is output. In this case, since the ratio of the overlap interval V ij 1430 to the stroke size W j 1420 is equal to or greater than the threshold Th, m ij = 1. Therefore, the stroke s i 1400A and the stroke s j 1400B are integrated.

図15は、第3の実施の形態による処理例を示すフローチャートである。
ステップS1502では、第3の実施の形態が、ストローク情報を取得する。
ステップS1504では、第3の実施の形態が、ストローク情報を抽出する。
ステップS1506では、ストロークサイズ算出モジュール1312が、一方のストロークのサイズを算出する。
ステップS1508では、ストロークサイズ算出モジュール1314が、他方のストロークのサイズを算出する。
ステップS1510では、オーバーラップ算出モジュール1320が、重なりを算出する。
ステップS1512では、ミニマム演算モジュール1332が、ストロークのサイズで小さい方を選択する。
ステップS1514では、判定モジュール1334が、統合判定を行う。
ステップS1516では、判定モジュール1334が、終了したか否かを判断し、終了の場合は処理を終了し(ステップS1599)、それ以外の場合はステップS1504へ戻る。
FIG. 15 is a flowchart illustrating a processing example according to the third exemplary embodiment.
In step S1502, the third embodiment acquires stroke information.
In step S1504, the third embodiment extracts stroke information.
In step S1506, the stroke size calculation module 1312 calculates the size of one stroke.
In step S1508, the stroke size calculation module 1314 calculates the size of the other stroke.
In step S1510, the overlap calculation module 1320 calculates an overlap.
In step S1512, the minimum calculation module 1332 selects the smaller stroke size.
In step S1514, the determination module 1334 performs an integrated determination.
In step S1516, the determination module 1334 determines whether or not the processing has ended. If the processing has ended, the processing ends (step S1599). Otherwise, the processing returns to step S1504.

<第4の実施の形態>
図16は、第4の実施の形態による処理例を示す説明図である。
第1の実施の形態においては、図16(a)の例に示すように、ストローク1600Aの長さであるストロークサイズW1610を用いているが、ストローク中のある一点(ストロークの中心、重心等)が他のストロークの範囲に入るか否かを用いるようにしてもよい。
具体的には、図16(b)の例に示すように、第1の実施の形態のストロークサイズ算出モジュール110が、ストローク1600A又はストローク1600Bの範囲を算出する。つまり、x軸上での始点から終点までの範囲を算出する。第1の実施の形態のオーバーラップ算出モジュール120が、ストローク1600B又はストローク1600Aの予め定められた位置を算出する。例えば、ストロークの中心(例えば、中心C)等である。なお、ストロークサイズ算出モジュール110がストローク1600Aを対象とした場合は、オーバーラップ算出モジュール120はストローク1600Bを対象とする。そして、ストロークサイズ算出モジュール110がストローク1600Bを対象とした場合は、オーバーラップ算出モジュール120はストローク1600Aを対象とする。そして、第1の実施の形態の判定モジュール130は、オーバーラップ算出モジュール120によって算出された位置(例えば、中心C)が、ストロークサイズ算出モジュール110によって算出された範囲(例えば、ストローク1600Aの左端から右端までの範囲)に含まれているか否かによって、ストローク1600Aとストローク1600Bが同じ文字を構成しているか否かを判定する。
<Fourth embodiment>
FIG. 16 is an explanatory diagram illustrating a processing example according to the fourth exemplary embodiment.
In the first embodiment, as shown in the example of FIG. 16A, a stroke size W i 1610, which is the length of the stroke 1600A, is used, but a certain point in the stroke (center of stroke, center of gravity) Etc.) may be used as to whether they fall within the range of other strokes.
Specifically, as illustrated in the example of FIG. 16B, the stroke size calculation module 110 according to the first embodiment calculates the range of the stroke 1600A or the stroke 1600B. That is, the range from the start point to the end point on the x-axis is calculated. The overlap calculation module 120 of the first embodiment calculates a predetermined position of the stroke 1600B or the stroke 1600A. For example, the center of the stroke (for example, the center C j ). When the stroke size calculation module 110 targets the stroke 1600A, the overlap calculation module 120 targets the stroke 1600B. When the stroke size calculation module 110 targets the stroke 1600B, the overlap calculation module 120 targets the stroke 1600A. Then, the determination module 130 according to the first embodiment is configured so that the position (for example, the center C j ) calculated by the overlap calculation module 120 is within the range (for example, the left end of the stroke 1600A) calculated by the stroke size calculation module 110. Whether or not the stroke 1600A and the stroke 1600B constitute the same character.

ストローク中のある一点として、中心を例にして説明する。
図16(b)の例に示すように、2本のストローク(ストローク1600A、ストローク1600B)のうち、一方のストローク(ストローク1600B)のストローク中心1630が、もう一方のストローク(ストローク1600A)の始点と終点に挟まれている範囲内に含まれている場合、その2本のストローク(ストローク1600A、ストローク1600B)は同じ文字を構成していると判定する。
なお、第4の実施の形態におけるストロークの中心とした場合は、第1の実施の形態における閾値Th=0.5(50%)とした場合と同等であることは、図16(b)の例から明らかである。
また、第1の実施の形態における閾値Th=0.7(70%)としたい場合は、第4の実施の形態ではストロークの中心ではなく、ストロークの端点からストローク全体の長さの70%の位置とすればよい。ここでのストロークの端点とは、重なり合っている範囲における端点である。図16(b)の例を用いて説明すると、ストローク1600Aの右端点から70%、又はストローク1600Bの左端点から70%の位置とすればよい。
As one point in the stroke, the center will be described as an example.
As shown in the example of FIG. 16B, of two strokes (stroke 1600A, stroke 1600B), the stroke center 1630 of one stroke (stroke 1600B) is the start point of the other stroke (stroke 1600A). If it is included in the range between the end points, it is determined that the two strokes (stroke 1600A, stroke 1600B) constitute the same character.
In addition, when it is set as the center of the stroke in 4th Embodiment, it is equivalent to the case where threshold value Th = 0.5 (50%) in 1st Embodiment is shown in FIG.16 (b). It is clear from the example.
Further, when it is desired to set the threshold Th = 0.7 (70%) in the first embodiment, in the fourth embodiment, not the center of the stroke but 70% of the entire stroke length from the end point of the stroke. It may be the position. The end point of the stroke here is an end point in the overlapping range. If it demonstrates using the example of FIG.16 (b), what is necessary is just to be 70% from the left end point of stroke 1600B, or 70% from the right end point of stroke 1600A.

図17は、座標値の中心の例を示す説明図である。ストロークの始点x、ストロークの終点xから式(1)で座標値の中心1730を算出する。

Figure 2014075071
ストロークの中心の他に、図18〜20の例に示すものを用いてもよい。
図18は、時間の中心の例を示す説明図である。ストロークを予め定められた時間間隔でサンプリングした位置で中心を決定するものである。ストロークの始点x、ストロークの終点xから式(2)で時間中心1830を算出する。
Figure 2014075071
FIG. 17 is an explanatory diagram illustrating an example of the center of coordinate values. The center 1730 of the coordinate value is calculated from the stroke start point x 1 and the stroke end point x K by Equation (1).
Figure 2014075071
In addition to the center of the stroke, those shown in the examples of FIGS.
FIG. 18 is an explanatory diagram showing an example of the center of time. The center is determined at a position where the stroke is sampled at a predetermined time interval. A time center 1830 is calculated from the stroke start point x 1 and the stroke end point x K by Equation (2).
Figure 2014075071

図19は、重心の例を示す説明図である。ストロークを予め定められた時間間隔でサンプリングした位置で重心を決定するものである。ストロークの始点x、ストロークの終点xから式(3)で重心1930を算出する。

Figure 2014075071
図20は、重み付き重心の例を示す説明図である。ここでは、筆圧を考慮した重心とした例を示している。ストロークを予め定められた時間間隔でサンプリングした位置と筆圧で重み付き重心を決定するものである。ストロークの始点x、ストロークの終点xから式(4)で重み付き重心2030を算出する。
Figure 2014075071
FIG. 19 is an explanatory diagram illustrating an example of the center of gravity. The center of gravity is determined at a position where the stroke is sampled at a predetermined time interval. The center of gravity 1930 is calculated from the stroke start point x 1 and the stroke end point x K by Equation (3).
Figure 2014075071
FIG. 20 is an explanatory diagram illustrating an example of a weighted center of gravity. Here, an example is shown in which the center of gravity is considered in consideration of writing pressure. The weighted center of gravity is determined by the position at which the stroke is sampled at a predetermined time interval and the writing pressure. A weighted centroid 2030 is calculated from the stroke start point x 1 and the stroke end point x K by Equation (4).
Figure 2014075071

<第5の実施の形態>
図21は、第5の実施の形態の構成例についての概念的なモジュール構成図である。第5の実施の形態は、ペア選択モジュール2110、統合判定モジュール2120、統合情報保持モジュール2130を有している。
第5の実施の形態は、2つ以上のストローク列Sの各要素どうしの全判定結果の情報Mを作成する。Mはストロークsとストロークsの判定結果mijの集合であり、最大要素数は、#{S}である。
<Fifth embodiment>
FIG. 21 is a conceptual module configuration diagram of a configuration example according to the fifth embodiment. The fifth embodiment includes a pair selection module 2110, an integrated determination module 2120, and an integrated information holding module 2130.
In the fifth embodiment, information M of all determination results for each element of two or more stroke sequences S is created. M is a set of the determination results m ij of the stroke s i and the stroke s j , and the maximum number of elements is # {S} C 2 .

ペア選択モジュール2110は、統合判定モジュール2120、統合情報保持モジュール2130と接続されている。ペア選択モジュール2110は、ストロークの集合Sから統合判定モジュール2120が処理する対象であるストロークの組(2つのストローク、sとs)を選択する。つまり、ペア選択モジュール2110は、Sからストロークsとストロークsを出力する。全てのペアを出力した後、終了信号⊥を出力する。
統合判定モジュール2120は、ペア選択モジュール2110、統合情報保持モジュール2130と接続されている。統合判定モジュール2120は、第1の実施の形態から第4の実施の形態のいずれかである。
統合情報保持モジュール2130は、ペア選択モジュール2110、統合判定モジュール2120と接続されている。統合情報保持モジュール2130は、統合判定モジュール2120の判定結果を記憶する。つまり、統合情報保持モジュール2130は、受け付けた判定結果mijを保持する。終了信号⊥を受け付けた場合に、全判定結果情報Mを出力する。
The pair selection module 2110 is connected to the integration determination module 2120 and the integration information holding module 2130. The pair selection module 2110 selects a set of strokes (two strokes, s i and s j ) to be processed by the integrated determination module 2120 from the set of strokes S. That is, the pair selection module 2110 outputs the stroke s i and the stroke s j from S. After all pairs are output, the end signal ⊥ is output.
The integrated determination module 2120 is connected to the pair selection module 2110 and the integrated information holding module 2130. The integrated determination module 2120 is one of the first to fourth embodiments.
The integrated information holding module 2130 is connected to the pair selection module 2110 and the integrated determination module 2120. The integrated information holding module 2130 stores the determination result of the integrated determination module 2120. That is, the integrated information holding module 2130 holds the received determination result m ij . When the end signal ⊥ is received, all determination result information M is output.

<第6の実施の形態>
図22は、第6の実施の形態の構成例についての概念的なモジュール構成図である。第6の実施の形態は、サイズ算出モジュール2210、サイズ順ソートモジュール2220、ペア選択モジュール2230、オーバーラップ算出モジュール2240、判定モジュール2250、統合情報保持モジュール2260を有している。予め、個々のストロークのサイズを算出しておく。なお、第4の実施の形態と比較して、サイズの算出回数が少なくなる。また、判定処理は第3の実施の形態と同様にメモリ容量を抑制している。
<Sixth Embodiment>
FIG. 22 is a conceptual module configuration diagram of a configuration example according to the sixth embodiment. The sixth embodiment includes a size calculation module 2210, a size order sort module 2220, a pair selection module 2230, an overlap calculation module 2240, a determination module 2250, and an integrated information holding module 2260. The size of each stroke is calculated in advance. Note that the number of times of size calculation is reduced compared to the fourth embodiment. Further, the determination process suppresses the memory capacity as in the third embodiment.

サイズ算出モジュール2210は、サイズ順ソートモジュール2220と接続されている。サイズ算出モジュール2210は、対象となり得るストロークの長さを算出する。サイズ算出モジュール2210は、ストローク群Sの全ての要素(ストローク)サイズを算出し、全サイズ情報Wを作成する。対象となり得るストロークとしては、例えば、1行内の手書き文字のストローク群、1ページ内の文書内の手書き文字のストローク群が該当する。
サイズ順ソートモジュール2220は、サイズ算出モジュール2210、ペア選択モジュール2230と接続されている。サイズ順ソートモジュール2220は、サイズ算出モジュール2210によって算出された長さに基づいて、ストロークを昇順又は降順に整列する。サイズ順ソートモジュール2220は、ストロークのサイズの昇順又は降順にSとWをソートする。ソート後のSとWを、それぞれ、S’とW’とする。長さを比較したソートであれば、どのようなソートアルゴリズムを用いてもよい。
The size calculation module 2210 is connected to the size order sorting module 2220. The size calculation module 2210 calculates the length of a stroke that can be a target. The size calculation module 2210 calculates all element (stroke) sizes of the stroke group S and creates all size information W. Examples of strokes that can be targeted include stroke groups of handwritten characters in one line and stroke groups of handwritten characters in a document in one page.
The size order sort module 2220 is connected to the size calculation module 2210 and the pair selection module 2230. The size order sorting module 2220 sorts the strokes in ascending order or descending order based on the length calculated by the size calculating module 2210. The size order sorting module 2220 sorts S and W in ascending or descending order of stroke size. Let S 'and W' after sorting be S 'and W', respectively. Any sort algorithm may be used as long as the sorts are compared in length.

ペア選択モジュール2230は、サイズ順ソートモジュール2220、オーバーラップ算出モジュール2240、判定モジュール2250、統合情報保持モジュール2260と接続されている。ペア選択モジュール2230は、ストローク群から2つのストローク(ストロークs、ストロークs)の組を選択する。選択方法は、どのような選択を行ってもよい。例えば、ランダム(疑似乱数を含む)に選択してもよいし、前述したような全ての組み合わせを発生させるような選択であってもよいし、座標値を元にしたオーバーラップのありそうなストロークの組(具体的には、ストロークをx座標でソートして隣り合うもの)を選択するようにしてもよい。ペア選択モジュール2230は、S’からストロークsとsを出力する。また、W’からi番目の要素w又はj番目のwのいずれかを出力する。つまり、昇順ソートであればi<jであるのでwを出力し、降順ソートであればi>jであるのでwを出力する。この処理は、サイズ順ソートモジュール2220による整列順によって、ストロークの長さが短いストロークを選択し、その選択したストロークの長さを出力することに相当する。ここで、ストロークの長さを比較する必要はない。
オーバーラップ算出モジュール2240は、ペア選択モジュール2230、判定モジュール2250と接続されている。オーバーラップ算出モジュール2240は、第1の実施の形態のオーバーラップ算出モジュール120と同等の処理を行う。
The pair selection module 2230 is connected to the size order sorting module 2220, the overlap calculation module 2240, the determination module 2250, and the integrated information holding module 2260. The pair selection module 2230 selects a set of two strokes (stroke s i , stroke s j ) from the stroke group. Any selection method may be used. For example, it may be selected randomly (including pseudo-random numbers), or may be a selection that generates all combinations as described above, or a stroke that is likely to overlap based on coordinate values. (Specifically, strokes sorted by x coordinate and adjacent to each other) may be selected. The pair selection module 2230 outputs strokes s i and s j from S ′. Also, either the i-th element w i or the j-th w j is output from W ′. That is, since i <j in the ascending sort, w i is output, and in the descending sort, i> j, so w j is output. This process corresponds to selecting a stroke having a short stroke length according to the order of sorting by the size order sorting module 2220 and outputting the selected stroke length. Here, there is no need to compare stroke lengths.
The overlap calculation module 2240 is connected to the pair selection module 2230 and the determination module 2250. The overlap calculation module 2240 performs the same processing as the overlap calculation module 120 of the first embodiment.

判定モジュール2250は、ペア選択モジュール2230、オーバーラップ算出モジュール2240、統合情報保持モジュール2260と接続されている。判定モジュール2250は、ストロークsとストロークsのうち、オーバーラップ算出モジュール2240によって算出された距離とペア選択モジュール2230によって選択されたストロークの長さ(w又はj番目のwのいずれか一方)の比率に基づいて、ストロークsとストロークsが同じ文字を構成しているか否かを判定する。具体的には、i<jであるとすると、サイズ順ソートモジュール2220が昇順でソートを行った場合は、ストロークsを選択する。
統合情報保持モジュール2260は、ペア選択モジュール2230、判定モジュール2250と接続されている。統合情報保持モジュール2260は、判定モジュール2250による判定結果を記憶する。
The determination module 2250 is connected to the pair selection module 2230, the overlap calculation module 2240, and the integrated information holding module 2260. The determination module 2250 determines the distance calculated by the overlap calculation module 2240 and the length of the stroke selected by the pair selection module 2230 (wh i or j-th w j) from the stroke s i and the stroke s j . On the other hand, it is determined whether or not the stroke s i and the stroke s j constitute the same character. Specifically, assuming that i <j, when the size order sorting module 2220 performs sorting in ascending order, the stroke s i is selected.
The integrated information holding module 2260 is connected to the pair selection module 2230 and the determination module 2250. The integrated information holding module 2260 stores the determination result by the determination module 2250.

図23は、第6の実施の形態による処理例を示す説明図である。ストローク2300Aとストローク2300Bでオーバーラップがあった場合に判定を行う。
昇順ソートであれば、i<jとしているため、必ず要素wが比率における分母となる。具体的には、ストロークサイズW2310とストロークサイズW2320のソートの結果、ストローク2300A、ストローク2300Bの順番になる。そして、このペアにおいてはストロークサイズW2310が選択される。比率として(オーバーラップ間隔Vij2330)/(ストロークサイズW2310)を計算する。つまり、ここではストロークサイズW2310とストロークサイズW2320のいずれを分母にするかを比較する必要がない。
FIG. 23 is an explanatory diagram illustrating a processing example according to the sixth exemplary embodiment. A determination is made when there is an overlap between stroke 2300A and stroke 2300B.
In the ascending order sort, since i <j, the element w i is always the denominator in the ratio. Specifically, as a result of sorting the stroke size W i 2310 and the stroke size W j 2320, the stroke 2300A and the stroke 2300B are in this order. In this pair, the stroke size W i 2310 is selected. As a ratio, (overlap interval V ij 2330) / (stroke size W i 2310) is calculated. That is, here, it is not necessary to compare which of the stroke size W i 2310 and the stroke size W j 2320 is the denominator.

<第7の実施の形態>
図24は、第7の実施の形態の構成例についての概念的なモジュール構成図である。第7の実施の形態は、統合情報作成モジュール2410、連結成分算出モジュール2420、統合ストローク保持モジュール2430を有しており、統合されたストローク列Cを作成する。
統合情報作成モジュール2410は、連結成分算出モジュール2420と接続されている。統合情報作成モジュール2410は、前述の実施の形態(第1の実施の形態〜第6の実施の形態)のいずれかである。
<Seventh embodiment>
FIG. 24 is a conceptual module configuration diagram of a configuration example according to the seventh embodiment. The seventh embodiment includes an integrated information creation module 2410, a connected component calculation module 2420, and an integrated stroke holding module 2430, and creates an integrated stroke sequence C.
The integrated information creation module 2410 is connected to the connected component calculation module 2420. The integrated information creation module 2410 is one of the above-described embodiments (first embodiment to sixth embodiment).

連結成分算出モジュール2420は、統合情報作成モジュール2410、統合ストローク保持モジュール2430と接続されている。連結成分算出モジュール2420は、統合情報作成モジュール2410によって同じ文字を構成していると判定されたストロークsとストロークsに基づいて、その文字を構成しているストローク群を抽出する。
統合ストローク保持モジュール2430は、連結成分算出モジュール2420と接続されている。統合ストローク保持モジュール2430は、入力された統合ストロークcを保持する。⊥を受け付けると、統合ストローク列Cを出力する。
The connected component calculation module 2420 is connected to the integrated information creation module 2410 and the integrated stroke holding module 2430. The connected component calculation module 2420 extracts a stroke group constituting the character based on the stroke s i and the stroke s j determined by the integrated information creation module 2410 to constitute the same character.
The integrated stroke holding module 2430 is connected to the connected component calculation module 2420. The integrated stroke holding module 2430 holds the input integrated stroke c. When ⊥ is accepted, the integrated stroke sequence C is output.

図25は、第7の実施の形態による処理例を示す説明図である。
連結成分算出モジュール2420は、全判定結果情報Mに基づいて、Sの要素((ストローク2512、2514、2516)、(ストローク2562、2564、2566、2568))を統合し、統合ストロークc(統合ストローク情報2530、2580)を作成する。これは、Sの要素を頂点として、Mの判定結果を辺(判定結果情報2522、2524)とする。具体的には、同じ文字を構成していると判定された場合を辺としてストロークの頂点を接続する。そして、できあがったグラフの連結成分(統合ストローク情報2530、2580)を1文字とすればよい。全ての連結成分を算出した後、終了信号⊥を出力する。グラフの連結成分の算出は既存技術を利用すればよい。
FIG. 25 is an explanatory diagram of a processing example according to the seventh embodiment.
The connected component calculation module 2420 integrates the elements of S ((strokes 2512, 2514, 2516), (strokes 2562, 2564, 2566, 2568)) based on the entire determination result information M, and an integrated stroke c k (integrated). Stroke information 2530, 2580) is created. This means that the element of S is a vertex and the determination result of M is a side (determination result information 2522, 2524). Specifically, the vertices of the stroke are connected with the sides determined as constituting the same character. Then, the connected component (integrated stroke information 2530, 2580) of the completed graph may be one character. After calculating all connected components, an end signal ⊥ is output. The calculation of the connected components of the graph may be performed using existing technology.

<第8の実施の形態>
図26は、第8の実施の形態の構成例についての概念的なモジュール構成図である。第8の実施の形態は、統合ストローク作成モジュール2610、オンライン文字列認識モジュール2620を有しており、文字認識を行う。
統合ストローク作成モジュール2610は、オンライン文字列認識モジュール2620と接続されており、第7の実施の形態である。
オンライン文字列認識モジュール2620は、統合ストローク作成モジュール2610と接続されており、オンライン文字列認識モジュール2620は、統合ストローク作成モジュール2610によって抽出されたストローク群を対象として文字認識を行い、文字認識結果を出力する。オンライン文字列認識モジュール2620は、具体的には、統合ストローク列Cを受け付け、オンライン文字認識を行う。これは、既存の文字認識技術を利用すればよい。
<Eighth Embodiment>
FIG. 26 is a conceptual module configuration diagram illustrating an exemplary configuration according to the eighth embodiment. The eighth embodiment includes an integrated stroke creation module 2610 and an online character string recognition module 2620, and performs character recognition.
The integrated stroke creation module 2610 is connected to the online character string recognition module 2620, which is the seventh embodiment.
The online character string recognition module 2620 is connected to the integrated stroke creation module 2610. The online character string recognition module 2620 performs character recognition on the stroke group extracted by the integrated stroke creation module 2610, and obtains the character recognition result. Output. Specifically, the online character string recognition module 2620 receives the integrated stroke string C and performs online character recognition. This may be done by using existing character recognition technology.

図27を参照して、本実施の形態の情報処理装置のハードウェア構成例について説明する。図27に示す構成は、例えばパーソナルコンピュータ(PC)などによって構成されるものであり、スキャナ等のデータ読み取り部2717と、プリンタなどのデータ出力部2718を備えたハードウェア構成例を示している。   With reference to FIG. 27, a hardware configuration example of the information processing apparatus according to the present embodiment will be described. The configuration shown in FIG. 27 is configured by a personal computer (PC), for example, and shows a hardware configuration example including a data reading unit 2717 such as a scanner and a data output unit 2718 such as a printer.

CPU(Central Processing Unit)2701は、前述の実施の形態において説明した各種のモジュール、すなわち、ストロークサイズ算出モジュール110、オーバーラップ算出モジュール120、判定モジュール130、ストロークサイズ算出モジュール1012、1014、オーバーラップ算出モジュール1020、判定モジュール1032、1034、OR演算モジュール1036、ストロークサイズ算出モジュール1312、1314、オーバーラップ算出モジュール1320、ミニマム演算モジュール1332、判定モジュール1334、統合判定モジュール2120、統合判定モジュール2120、統合情報保持モジュール2130、サイズ算出モジュール2210、サイズ順ソートモジュール2220、ペア選択モジュール2230、オーバーラップ算出モジュール2240、判定モジュール2250、統合情報保持モジュール2260、統合情報作成モジュール2410、連結成分算出モジュール2420、統合ストローク保持モジュール2430、統合ストローク作成モジュール2610、オンライン文字列認識モジュール2620等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。   The CPU (Central Processing Unit) 2701 is the various modules described in the above-described embodiments, that is, the stroke size calculation module 110, the overlap calculation module 120, the determination module 130, the stroke size calculation modules 1012, 1014, and the overlap calculation. Module 1020, determination modules 1032 and 1034, OR operation module 1036, stroke size calculation modules 1312 and 1314, overlap calculation module 1320, minimum operation module 1332, determination module 1334, integrated determination module 2120, integrated determination module 2120, integrated information holding Module 2130, size calculation module 2210, size order sorting module 2220 , Pair selection module 2230, overlap calculation module 2240, determination module 2250, integrated information holding module 2260, integrated information creating module 2410, connected component calculating module 2420, integrated stroke holding module 2430, integrated stroke creating module 2610, online character string recognition It is a control part which performs the process according to the computer program which described the execution sequence of each module, such as the module 2620.

ROM(Read Only Memory)2702は、CPU2701が使用するプログラムや演算パラメータ等を格納する。RAM(Random Access Memory)2703は、CPU2701の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはCPUバスなどから構成されるホストバス2704により相互に接続されている。   A ROM (Read Only Memory) 2702 stores programs used by the CPU 2701, operation parameters, and the like. A RAM (Random Access Memory) 2703 stores programs used in the execution of the CPU 2701, parameters that change as appropriate during the execution, and the like. These are connected to each other by a host bus 2704 including a CPU bus.

ホストバス2704は、ブリッジ2705を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス2706に接続されている。   The host bus 2704 is connected to an external bus 2706 such as a PCI (Peripheral Component Interconnect / Interface) bus via a bridge 2705.

キーボード2708、マウス等のポインティングデバイス2709は、操作者により操作される入力デバイスである。ディスプレイ2710は、液晶表示装置又はCRT(Cathode Ray Tube)などがあり、各種情報をテキストやイメージ情報として表示する。   A keyboard 2708 and a pointing device 2709 such as a mouse are input devices operated by an operator. The display 2710 includes a liquid crystal display device or a CRT (Cathode Ray Tube), and displays various types of information as text or image information.

HDD(Hard Disk Drive)2711は、ハードディスクを内蔵し、ハードディスクを駆動し、CPU2701によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、本実施の形態が受け付けるストロークA:100A、100B、判定結果199、統合ストローク保持モジュール2430の処理結果、文字認識結果等が格納される。さらに、その他の各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納される。   An HDD (Hard Disk Drive) 2711 includes a hard disk, drives the hard disk, and records or reproduces a program executed by the CPU 2701 and information. The hard disk stores the strokes A: 100A and 100B accepted by the present embodiment, the determination result 199, the processing result of the integrated stroke holding module 2430, the character recognition result, and the like. Further, various computer programs such as various other data processing programs are stored.

ドライブ2712は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体2713に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース2707、外部バス2706、ブリッジ2705、及びホストバス2704を介して接続されているRAM2703に供給する。リムーバブル記録媒体2713も、ハードディスクと同様のデータ記録領域として利用可能である。   The drive 2712 reads data or a program recorded on a removable recording medium 2713 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, and reads the data or program into an interface 2707 and an external bus 2706. , To the RAM 2703 connected via the bridge 2705 and the host bus 2704. The removable recording medium 2713 can also be used as a data recording area similar to the hard disk.

接続ポート2714は、外部接続機器2715を接続するポートであり、USB、IEEE1394等の接続部を持つ。接続ポート2714は、インタフェース2707、及び外部バス2706、ブリッジ2705、ホストバス2704等を介してCPU2701等に接続されている。通信部2716は、通信回線に接続され、外部とのデータ通信処理を実行する。データ読み取り部2717は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部2718は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。   The connection port 2714 is a port for connecting the external connection device 2715 and has a connection unit such as USB or IEEE1394. The connection port 2714 is connected to the CPU 2701 and the like via the interface 2707, the external bus 2706, the bridge 2705, the host bus 2704, and the like. A communication unit 2716 is connected to a communication line and executes data communication processing with the outside. The data reading unit 2717 is, for example, a scanner, and executes document reading processing. The data output unit 2718 is a printer, for example, and executes document data output processing.

なお、図27に示す情報処理装置のハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、図27に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア(例えば特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)等)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図27に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、複写機、ファックス、スキャナ、プリンタ、複合機(スキャナ、プリンタ、複写機、ファックス等のいずれか2つ以上の機能を有している画像処理装置)などに組み込まれていてもよい。   Note that the hardware configuration of the information processing apparatus illustrated in FIG. 27 illustrates one configuration example, and the present embodiment is not limited to the configuration illustrated in FIG. 27, and the modules described in the present embodiment are executed. Any configuration is possible. For example, some modules may be configured with dedicated hardware (for example, Application Specific Integrated Circuit (ASIC), etc.), and some modules are in an external system and connected via a communication line Alternatively, a plurality of systems shown in FIG. 27 may be connected to each other via communication lines so as to cooperate with each other. Further, it may be incorporated in a copying machine, a fax machine, a scanner, a printer, a multifunction machine (an image processing apparatus having any two or more functions of a scanner, a printer, a copying machine, a fax machine, etc.).

また、前述の実施の形態の説明において、予め定められた値との比較において、「以上」、「以下」、「より大きい」、「より小さい(未満)」としたものは、その組み合わせに矛盾が生じない限り、それぞれ「より大きい」、「より小さい(未満)」、「以上」、「以下」としてもよい。
なお、前述の各種の実施の形態を組み合わせてもよく(例えば、ある実施の形態内のモジュールを他の実施の形態内に追加する、入れ替えをする等も含む)、また、各モジュールの処理内容として背景技術で説明した技術を採用してもよい。
Further, in the description of the above-described embodiment, “more than”, “less than”, “greater than”, and “less than (less than)” in a comparison with a predetermined value contradicts the combination. As long as the above does not occur, “larger”, “smaller (less than)”, “more than”, and “less than” may be used.
Note that the above-described various embodiments may be combined (for example, adding or replacing a module in one embodiment in another embodiment), and processing contents of each module The technique described in the background art may be employed.

なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD−R、DVD−RW、DVD−RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)等、ブルーレイ・ディスク(Blu−ray Disc(登録商標))、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去及び書換可能な読出し専用メモリ(EEPROM(登録商標))、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)、SD(Secure Digital)メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
The program described above may be provided by being stored in a recording medium, or the program may be provided by communication means. In that case, for example, the above-described program may be regarded as an invention of a “computer-readable recording medium recording the program”.
The “computer-readable recording medium on which a program is recorded” refers to a computer-readable recording medium on which a program is recorded, which is used for program installation, execution, program distribution, and the like.
The recording medium is, for example, a digital versatile disc (DVD), which is a standard established by the DVD Forum, such as “DVD-R, DVD-RW, DVD-RAM,” and DVD + RW. Standard “DVD + R, DVD + RW, etc.”, compact disc (CD), read-only memory (CD-ROM), CD recordable (CD-R), CD rewritable (CD-RW), Blu-ray disc ( Blu-ray Disc (registered trademark), magneto-optical disk (MO), flexible disk (FD), magnetic tape, hard disk, read-only memory (ROM), electrically erasable and rewritable read-only memory (EEPROM (registered trademark)) )), Flash memory, Random access memory (RAM) SD (Secure Digital) memory card and the like.
The program or a part of the program may be recorded on the recording medium for storage or distribution. Also, by communication, for example, a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), a wired network used for the Internet, an intranet, an extranet, etc., or wireless communication It may be transmitted using a transmission medium such as a network or a combination of these, or may be carried on a carrier wave.
Furthermore, the program may be a part of another program, or may be recorded on a recording medium together with a separate program. Moreover, it may be divided and recorded on a plurality of recording media. Further, it may be recorded in any manner as long as it can be restored, such as compression or encryption.

110…ストロークサイズ算出モジュール
120…オーバーラップ算出モジュール
130…判定モジュール
1012…ストロークサイズ算出モジュール
1014…ストロークサイズ算出モジュール
1020…オーバーラップ算出モジュール
1032…判定モジュール
1034…判定モジュール
1036…OR演算モジュール
1312…ストロークサイズ算出モジュール
1314…ストロークサイズ算出モジュール
1320…オーバーラップ算出モジュール
1332…ミニマム演算モジュール
1334…判定モジュール
2110…ペア選択モジュール
2120…統合判定モジュール
2130…統合情報保持モジュール
2210…サイズ算出モジュール
2220…サイズ順ソートモジュール
2230…ペア選択モジュール
2240…オーバーラップ算出モジュール
2250…判定モジュール
2260…統合情報保持モジュール
2410…統合情報作成モジュール
2420…連結成分算出モジュール
2430…統合ストローク保持モジュール
2610…統合ストローク作成モジュール
2620…オンライン文字列認識モジュール
DESCRIPTION OF SYMBOLS 110 ... Stroke size calculation module 120 ... Overlap calculation module 130 ... Judgment module 1012 ... Stroke size calculation module 1014 ... Stroke size calculation module 1020 ... Overlap calculation module 1032 ... Judgment module 1034 ... Judgment module 1036 ... OR operation module 1312 ... Stroke Size calculation module 1314 ... Stroke size calculation module 1320 ... Overlap calculation module 1332 ... Minimum calculation module 1334 ... Determination module 2110 ... Pair selection module 2120 ... Integration determination module 2130 ... Integrated information holding module 2210 ... Size calculation module 2220 ... Sort in size order Module 2230 ... Pair selection module 2240 Overlap calculation module 2250 ... determination module 2260 ... integrated information holding module 2410 ... integrated information creation module 2420 ... connected component calculating module 2430 ... integrated stroke holding module 2610 ... integrated stroke creation module 2620 ... online character string recognition module

Claims (8)

座標情報によって構成されている第1の座標情報列と第2の座標情報列に基づいて、該第1の座標情報列によって表される第1の線分と該第2の座標情報列によって表される第2の線分が重なり合っている部分の距離を算出する第1の算出手段と、
前記第1の線分又は前記第2の線分の長さを算出する第2の算出手段と、
前記第1の算出手段によって算出された距離と前記第2の算出手段によって算出された長さの比率に基づいて、前記第1の線分と前記第2の線分が同じ文字を構成しているか否かを判定する判定手段
を具備することを特徴とする情報処理装置。
Based on the first coordinate information sequence and the second coordinate information sequence configured by the coordinate information, the first line segment represented by the first coordinate information sequence and the second coordinate information sequence First calculating means for calculating a distance of a portion where the second line segments to be overlapped with each other;
Second calculating means for calculating a length of the first line segment or the second line segment;
Based on the ratio between the distance calculated by the first calculation means and the length calculated by the second calculation means, the first line segment and the second line segment constitute the same character. An information processing apparatus comprising: determination means for determining whether or not there is.
前記第2の算出手段は、
前記第1の線分の長さを算出する第3の算出手段と、
前記第2の線分の長さを算出する第4の算出手段
を含み、
前記判定手段は、
前記第1の算出手段によって算出された距離と前記第3の算出手段によって算出された長さの比率に基づいて、前記第1の線分と前記第2の線分が同じ文字を構成しているか否かの仮の判定をする第2の判定手段と、
前記第1の算出手段によって算出された距離と前記第4の算出手段によって算出された長さの比率に基づいて、前記第1の線分と前記第2の線分が同じ文字を構成しているか否かの仮の判定をする第3の判定手段と、
前記第2の判定手段による判定結果と前記第3の判定手段による判定結果に基づいて、前記第1の線分と前記第2の線分が同じ文字を構成しているか否かを判定する第4の判定手段
を含むことを特徴とする請求項1に記載の情報処理装置。
The second calculation means includes:
Third calculating means for calculating the length of the first line segment;
Fourth calculating means for calculating the length of the second line segment,
The determination means includes
Based on the ratio of the distance calculated by the first calculation means and the length calculated by the third calculation means, the first line segment and the second line segment constitute the same character. Second determination means for making a temporary determination as to whether or not,
Based on the ratio between the distance calculated by the first calculation means and the length calculated by the fourth calculation means, the first line segment and the second line segment constitute the same character. Third determination means for making a temporary determination as to whether or not,
A first determination is made as to whether or not the first line segment and the second line segment constitute the same character based on the determination result by the second determination unit and the determination result by the third determination unit. The information processing apparatus according to claim 1, further comprising: 4 determination means.
前記第2の算出手段は、
前記第1の線分の長さを算出する第3の算出手段と、
前記第2の線分の長さを算出する第4の算出手段と、
前記第3の算出手段によって算出された長さと前記第4の算出手段によって算出された長さのいずれか一方を選択する選択手段
を含み、
前記判定手段は、前記第1の算出手段によって算出された距離と前記選択手段によって選択された長さの比率に基づいて、前記第1の線分と前記第2の線分が同じ文字を構成しているか否かを判定する
ことを特徴とする請求項1に記載の情報処理装置。
The second calculation means includes:
Third calculating means for calculating the length of the first line segment;
Fourth calculating means for calculating the length of the second line segment;
Selecting means for selecting one of the length calculated by the third calculating means and the length calculated by the fourth calculating means;
The determination unit is configured such that the first line segment and the second line segment form the same character based on a ratio between the distance calculated by the first calculation unit and the length selected by the selection unit. The information processing apparatus according to claim 1, wherein it is determined whether or not the information processing is performed.
前記第1の算出手段は、前記第2の線分又は前記第1の線分の予め定められた位置を算出し、
前記第2の算出手段は、前記第1の線分又は前記第2の線分の範囲を算出し、
前記判定手段は、前記第1の算出手段によって算出された位置が、前記第2の算出手段によって算出された範囲に含まれているか否かによって、前記第1の線分と前記第2の線分が同じ文字を構成しているか否かを判定する
ことを特徴とする請求項1に記載の情報処理装置。
The first calculating means calculates a predetermined position of the second line segment or the first line segment;
The second calculation means calculates the range of the first line segment or the second line segment,
The determination unit determines whether the position calculated by the first calculation unit is included in the range calculated by the second calculation unit, and whether or not the first line segment and the second line are included. The information processing apparatus according to claim 1, wherein it is determined whether or not minutes constitute the same character.
前記第2の算出手段は、対象となり得る線分の長さを算出し、
前記第2の算出手段によって算出された長さに基づいて、線分を昇順又は降順に整列する整列手段
を具備し、
前記判定手段は、前記第1の線分と前記第2の線分のうち、前記整列手段による整列順によって、線分の長さが短い線分を選択し、前記第1の算出手段によって算出された距離と該選択された線分の長さの比率に基づいて、前記第1の線分と前記第2の線分が同じ文字を構成しているか否かを判定する
ことを特徴とする請求項1に記載の情報処理装置。
The second calculation means calculates a length of a line segment that can be a target,
Alignment means for aligning line segments in ascending or descending order based on the length calculated by the second calculating means;
The determination unit selects a line segment having a short line length from the first line segment and the second line segment according to the alignment order by the alignment unit, and calculates the line segment by the first calculation unit. Determining whether or not the first line segment and the second line segment constitute the same character based on a ratio between the measured distance and the length of the selected line segment. The information processing apparatus according to claim 1.
前記判定手段によって同じ文字を構成していると判定された前記第1の線分と前記第2の線分に基づいて、該文字を構成している線分群を抽出する抽出手段
をさらに具備することを特徴とする請求項1から5のいずれか一項に記載の情報処理装置。
Extracting means for extracting a group of line segments constituting the character based on the first line segment and the second line segment determined to constitute the same character by the determining means. The information processing apparatus according to claim 1, wherein the information processing apparatus is an information processing apparatus.
前記抽出手段によって抽出された線分群を対象として文字認識を行う文字認識手段
をさらに具備することを特徴とする請求項6に記載の情報処理装置。
The information processing apparatus according to claim 6, further comprising: a character recognition unit that performs character recognition on the line segment group extracted by the extraction unit.
コンピュータを、
座標情報によって構成されている第1の座標情報列と第2の座標情報列に基づいて、該第1の座標情報列によって表される第1の線分と該第2の座標情報列によって表される第2の線分が重なり合っている部分の距離を算出する第1の算出手段と、
前記第1の線分又は前記第2の線分の長さを算出する第2の算出手段と、
前記第1の算出手段によって算出された距離と前記第2の算出手段によって算出された長さの比率に基づいて、前記第1の線分と前記第2の線分が同じ文字を構成しているか否かを判定する判定手段
として機能させるための情報処理プログラム。
Computer
Based on the first coordinate information sequence and the second coordinate information sequence configured by the coordinate information, the first line segment represented by the first coordinate information sequence and the second coordinate information sequence First calculating means for calculating a distance of a portion where the second line segments to be overlapped with each other;
Second calculating means for calculating a length of the first line segment or the second line segment;
Based on the ratio between the distance calculated by the first calculation means and the length calculated by the second calculation means, the first line segment and the second line segment constitute the same character. Information processing program for functioning as determination means for determining whether or not there is.
JP2012222861A 2012-10-05 2012-10-05 Information processing apparatus and information processing program Active JP6229254B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012222861A JP6229254B2 (en) 2012-10-05 2012-10-05 Information processing apparatus and information processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012222861A JP6229254B2 (en) 2012-10-05 2012-10-05 Information processing apparatus and information processing program

Publications (2)

Publication Number Publication Date
JP2014075071A true JP2014075071A (en) 2014-04-24
JP6229254B2 JP6229254B2 (en) 2017-11-15

Family

ID=50749170

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012222861A Active JP6229254B2 (en) 2012-10-05 2012-10-05 Information processing apparatus and information processing program

Country Status (1)

Country Link
JP (1) JP6229254B2 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57106986A (en) * 1980-12-24 1982-07-03 Oki Electric Ind Co Ltd Online handwritten character segmentation system
JPS58214971A (en) * 1982-06-07 1983-12-14 Nippon Telegr & Teleph Corp <Ntt> Feature extraction processing system
JP2007034812A (en) * 2005-07-28 2007-02-08 Ricoh Co Ltd Information processing apparatus, method thereof, program therefor, and recording medium
JP2009276709A (en) * 2008-05-19 2009-11-26 Fujitsu Ltd Learning support system, program, and learning support method
JP2011258129A (en) * 2010-06-11 2011-12-22 Fujitsu Ltd Handwritten character separation device, handwritten character separation method, and handwritten character separation program

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57106986A (en) * 1980-12-24 1982-07-03 Oki Electric Ind Co Ltd Online handwritten character segmentation system
JPS58214971A (en) * 1982-06-07 1983-12-14 Nippon Telegr & Teleph Corp <Ntt> Feature extraction processing system
JP2007034812A (en) * 2005-07-28 2007-02-08 Ricoh Co Ltd Information processing apparatus, method thereof, program therefor, and recording medium
JP2009276709A (en) * 2008-05-19 2009-11-26 Fujitsu Ltd Learning support system, program, and learning support method
JP2011258129A (en) * 2010-06-11 2011-12-22 Fujitsu Ltd Handwritten character separation device, handwritten character separation method, and handwritten character separation program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
相澤 博 外2名: "複数のストローク特徴を用いた手書き文字列からの実時間文字切出し", 電子情報通信学会論文誌 D−2 VOL.J80−D−2 NO.5, vol. 第J80-D-II巻 第5号, JPN6016031866, 25 May 1997 (1997-05-25), JP, pages 1178 - 1185, ISSN: 0003381387 *

Also Published As

Publication number Publication date
JP6229254B2 (en) 2017-11-15

Similar Documents

Publication Publication Date Title
CN102129560B (en) Method and device for identifying characters
US8391607B2 (en) Image processor and computer readable medium
AU2012203130B2 (en) Image processing apparatus, method, and program
US9280725B2 (en) Information processing apparatus, information processing method, and non-transitory computer readable medium
CN103425974A (en) Appratus and method for processing images
JP4834351B2 (en) Character recognition device and character recognition method
JP6229254B2 (en) Information processing apparatus and information processing program
JP5720182B2 (en) Image processing apparatus and image processing program
JP6201838B2 (en) Information processing apparatus and information processing program
JP6007720B2 (en) Information processing apparatus and information processing program
JP6511942B2 (en) INFORMATION PROCESSING APPARATUS AND INFORMATION PROCESSING PROGRAM
JP4882929B2 (en) Image processing apparatus and image processing program
JP6187307B2 (en) Image processing apparatus and image processing program
JP5949248B2 (en) Information processing apparatus and information processing program
JP5928714B2 (en) Information processing apparatus and information processing program
JP5821648B2 (en) Information processing apparatus and information processing program
JP4930288B2 (en) Image processing apparatus and image processing program
JP5062076B2 (en) Information processing apparatus and information processing program
JP5636691B2 (en) Image processing apparatus and image processing program
JP6281309B2 (en) Image processing apparatus and image processing program
JP2016053797A (en) Image processor and image processing program
JP5991076B2 (en) Image processing apparatus and image processing program
CN103198291B (en) Information processor
JP6268888B2 (en) Information processing apparatus and information processing program
JP5747604B2 (en) Image processing apparatus and image processing program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150819

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160712

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160823

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161014

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170315

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170413

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170919

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171002

R150 Certificate of patent or registration of utility model

Ref document number: 6229254

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350