JP6241311B2 - Image processing apparatus and image processing program - Google Patents

Image processing apparatus and image processing program Download PDF

Info

Publication number
JP6241311B2
JP6241311B2 JP2014029205A JP2014029205A JP6241311B2 JP 6241311 B2 JP6241311 B2 JP 6241311B2 JP 2014029205 A JP2014029205 A JP 2014029205A JP 2014029205 A JP2014029205 A JP 2014029205A JP 6241311 B2 JP6241311 B2 JP 6241311B2
Authority
JP
Japan
Prior art keywords
character
font
overlap
image
module
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.)
Active
Application number
JP2014029205A
Other languages
Japanese (ja)
Other versions
JP2015153352A (en
Inventor
宋 一憲
一憲 宋
木村 俊一
俊一 木村
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
Fujifilm Business Innovation Corp
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, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2014029205A priority Critical patent/JP6241311B2/en
Publication of JP2015153352A publication Critical patent/JP2015153352A/en
Application granted granted Critical
Publication of JP6241311B2 publication Critical patent/JP6241311B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

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

特許文献1には、水平走査画素数と水平黒画素幅を計数し、また黒白画素境界を検出する計数/境界検出回路と、計数された該黒画素幅が所定の数値を満足し且つ黒白画素境界検出信号が与えられたとき格納命令を発生する制御部と、該格納命令によって計数/境界検出回路から与えられる水平走査画素数をパターン相対位置として格納するパターン相対位置レジスタとを備えてなることを特徴とする水平パターン検出措置について開示されている。   Patent Document 1 discloses a count / boundary detection circuit that counts the number of horizontal scanning pixels and horizontal black pixel widths and detects black and white pixel boundaries, and the counted black pixel widths satisfy predetermined numerical values and are black and white pixels. A control unit that generates a storage command when a boundary detection signal is given; and a pattern relative position register that stores the number of horizontal scanning pixels given from the counting / boundary detection circuit by the storage command as a pattern relative position. A horizontal pattern detecting measure is disclosed.

特開昭62−271085号公報JP-A-62-271085

本発明は、文字認識結果の文字画像を描画する場合にあって、文字画像同士が重なり合うことを抑制するようにした画像処理装置及び画像処理プログラムを提供することを目的としている。   An object of the present invention is to provide an image processing apparatus and an image processing program that suppress the overlap of character images when a character image of a character recognition result is drawn.

かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項1の発明は、文字認識結果を受け付ける受付手段と、前記文字認識結果の文字画像同士が重なり合う場合は、その文字画像が重ならないように、描画する文字画像の大きさを決定する決定手段と、前記決定手段によって決定された大きさに応じて、前記文字認識結果を描画する描画手段を具備し、前記受付手段は、複数列における前記文字認識結果を受け取り、前記決定手段は、文字列内で最も縦長が高い文字に大きさを合わせた後に、対象とする列の文字認識結果の文字画像と隣り合う列の文字認識結果の文字画像との間で重なり合う場合は、該対象とする列の文字画像と重ならないように該隣り合う行の位置を変更することを特徴とする画像処理装置である。
The gist of the present invention for achieving the object lies in the inventions of the following items.
According to the first aspect of the present invention, the receiving means for receiving the character recognition result and the determining means for determining the size of the character image to be drawn so that the character images do not overlap when the character images of the character recognition result overlap. And drawing means for drawing the character recognition result according to the size determined by the determining means , wherein the receiving means receives the character recognition results in a plurality of columns, and the determining means If the character image of the character recognition result of the target column overlaps with the character image of the character recognition result of the adjacent column after matching the size of the character with the highest vertical length, the target column The image processing apparatus is characterized in that the position of the adjacent line is changed so as not to overlap the character image .

請求項2の発明は、前記決定手段は、文字サイズを小さくすること、及び文字幅を小さくすることによって、前記文字画像の大きさを小さくすることを特徴とする請求項1に記載の画像処理装置である。   The invention according to claim 2 is characterized in that the determining means reduces the size of the character image by reducing the character size and the character width. Device.

請求項の発明は、コンピュータを、文字認識結果を受け付ける受付手段と、前記文字認識結果の文字画像同士が重なり合う場合は、その文字画像が重ならないように、描画する文字画像の大きさを決定する決定手段と、前記決定手段によって決定された大きさに応じて、前記文字認識結果を描画する描画手段として機能させ、前記受付手段は、複数列における前記文字認識結果を受け取り、前記決定手段は、文字列内で最も縦長が高い文字に大きさを合わせた後に、対象とする列の文字認識結果の文字画像と隣り合う列の文字認識結果の文字画像との間で重なり合う場合は、該対象とする列の文字画像と重ならないように該隣り合う行の位置を変更することを特徴とする画像処理プログラムである。 The invention according to claim 3 determines the size of the character image to be drawn so that the accepting means for receiving the character recognition result and the character image of the character recognition result overlap each other so that the character images do not overlap. And determining means for functioning as a drawing means for drawing the character recognition result according to the size determined by the determining means , wherein the receiving means receives the character recognition results in a plurality of columns, and the determining means If the character image of the character recognition result of the target column overlaps with the character image of the character recognition result of the adjacent column after matching the size of the character with the highest vertical length in the character string, the target The image processing program is characterized in that the position of the adjacent row is changed so as not to overlap the character image in the column .

請求項1の画像処理装置によれば、文字認識結果の文字画像を描画する場合にあって、文字画像同士が重なり合うことを抑制することができる。また、文字列間で文字画像同士が重なり合うことを抑制することができる。 According to the image processing apparatus of the first aspect, it is possible to prevent the character images from overlapping each other when the character image as the character recognition result is drawn. Moreover, it can suppress that character images overlap between character strings.

請求項2の画像処理装置によれば、文字サイズを小さくすること、及び文字幅を小さくすることによって、文字画像の大きさを小さくすることができる。   According to the image processing apparatus of the second aspect, the size of the character image can be reduced by reducing the character size and the character width.

請求項の画像処理プログラムによれば、文字認識結果の文字画像を描画する場合にあって、文字画像同士が重なり合うことを抑制することができる。また、文字列間で文字画像同士が重なり合うことを抑制することができる。 According to the image processing program of the third aspect , it is possible to suppress the overlapping of the character images when drawing the character image as the character recognition result. Moreover, it can suppress that character images overlap between character strings.

第1の実施の形態の構成例についての概念的なモジュール構成図である。It is a conceptual module block diagram about the structural example of 1st Embodiment. 文字情報テーブルのデータ構造例を示す説明図である。It is explanatory drawing which shows the example of a data structure of a character information table. 文字フォント情報テーブルのデータ構造例を示す説明図である。It is explanatory drawing which shows the example of a data structure of a character font information table. 第1の実施の形態による処理例を示すフローチャートである。It is a flowchart which shows the process example by 1st Embodiment. 第1の実施の形態による処理例を示すフローチャートである。It is a flowchart 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 a flowchart which shows the process example by 2nd Embodiment. 第2の実施の形態による処理例を示すフローチャートである。It is a flowchart which shows the process example by 2nd Embodiment. 第2の実施の形態による処理例を示す説明図である。It is explanatory drawing which shows the process example by 2nd Embodiment. 清書処理の例を示す説明図である。It is explanatory drawing which shows the example of a cleansing process. 本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。It is a block diagram which shows the hardware structural example of the computer which implement | achieves this Embodiment.

まず、本実施の形態を説明する前に、その前提又は本実施の形態を利用する画像処理装置について説明する。なお、この説明は、本実施の形態の理解を容易にすることを目的とするものである。
手書き文字又は活字文字、例えば、ホワイトボードや、ノート、印字した紙等を撮影した画像を文字認識し、認識した文字をPDF(Portable Document Format)、ワープロ文書等において活字に置き換える清書機能がある。
この清書機能によってユーザーの視認性や文字検索性、また再利用性が高まるが、自由に記載された文字列を認識して、活字(文字認識結果の文字を描画した文字画像)で置き換える場合、文字列の始点から活字を描画すると位置が合わない文字が出てくる。例えば、図10(a)に示すように手書き文字の原画像1010を清書化して、原画像1010の文字列の始点(「A」の最左端)から文字認識結果を描画した場合、図10(b)に示すような清書処理結果画像1020になり、文字列の最後の文字「C」が原画像1010の位置とずれてしまう。
また、原画像の文字(文字認識対象の文字)の位置にそのまま活字を当てはめると、文字同士が重なり合ってしまう場合がある。例えば、図10(a)に示すように原画像1010を清書化して、原画像1010の文字列内の各文字の位置に、文字認識した活字を埋め込む清書化を行うと、図10(c)に示すように、文字「C」の位置へ文字「B」が入り込み、2文字が重なってしまう。
また、原画像の各文字矩形の大きさを用いて、活字の文字サイズを決定すると、図10(a)の例に示す手書きの「A」と「B」のような場合、1つの文字列内の文字であるにもかかわらず、置き換えた活字の文字サイズが異なることになる。
First, before describing the present embodiment, the premise or an image processing apparatus using the present embodiment will be described. This description is intended to facilitate understanding of the present embodiment.
There is a clean-writing function that recognizes characters obtained by photographing handwritten characters or printed characters, for example, whiteboards, notebooks, printed paper, and the like, and replaces the recognized characters with printed characters in PDF (Portable Document Format), word processing documents, and the like.
This clean-up function increases the visibility, character searchability, and reusability of the user. However, when recognizing a freely-written character string and replacing it with a typeface (a character image in which the character recognition result is rendered) If you draw a type from the beginning of the string, characters that do not match will appear. For example, when the original image 1010 of the handwritten character is clarified as shown in FIG. 10A and the character recognition result is drawn from the starting point of the character string of the original image 1010 (the leftmost end of “A”), FIG. As shown in b), the clearing process result image 1020 is obtained, and the last character “C” of the character string is shifted from the position of the original image 1010.
In addition, if characters are applied as they are to the positions of characters (character recognition target characters) in the original image, the characters may overlap each other. For example, when the original image 1010 is clarified as shown in FIG. 10A and the character recognition is performed to embed character-recognized characters at the position of each character in the character string of the original image 1010, FIG. As shown, the character “B” enters the position of the character “C”, and the two characters overlap.
Further, when the character size of the type is determined using the size of each character rectangle of the original image, in the case of handwritten “A” and “B” shown in the example of FIG. The character size of the replaced character will be different despite the character inside.

以下、図面に基づき本発明を実現するにあたっての好適な各種の実施の形態の例を説明する。
<第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 also 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の実施の形態である画像処理装置100は、文字認識結果の文字画像を描画する清書処理を行うものであって、図1の例に示すように、フォント情報決定モジュール110、フォント描画モジュール120、フォント重なり検出モジュール130、フォント描画モジュール140を有している。
なお、清書後の文字列内の文字の大きさ(以下、フォントサイズともいう)は、1つの文字列内の文字についてフォントサイズは同じとする。
The image processing apparatus 100 according to the first embodiment performs a clearing process for drawing a character image as a character recognition result. As shown in the example of FIG. 1, a font information determination module 110, a font drawing module, and the like. 120, a font overlap detection module 130, and a font drawing module 140.
Note that the font size of characters in one character string is the same as the size of characters in the character string after clean-up (hereinafter also referred to as font size).

フォント情報決定モジュール110は、フォント描画モジュール120、フォント重なり検出モジュール130、フォント描画モジュール140と接続されている。フォント情報決定モジュール110は、文字列情報106、文字コード・文字矩形座標108を受け付け、フォント描画モジュール120にフォントサイズ・フォントタイプ・文字位置112を渡し、フォント重なり検出モジュール130より重なり情報132を受け取り、フォント描画モジュール140に清書フォントサイズ・フォントタイプ・文字位置138を渡す。
文字列情報106は、文字認識装置の出力情報であり、内容は手書き文字画像又は活字文字画像に対する文字認識結果であり、文字コード・文字矩形座標108を含む。つまり、文字列毎に、各文字画像(1文字分の文字画像)の文字コード、各文字画像(認識対象の文字画像)を囲む外接矩形の位置が含まれている。また、これら以外の情報(例えば、各文字の色を示す情報、認識した文字画像そのもの等)を含んでいてもよい。なお、文字列とは、横書きの場合は1行を指し、縦書きの場合は1列を指す。また、文字コード・文字矩形座標108は文字列情報106と同じデータであってもよい。例えば、文字列情報106は文字情報テーブル200のようなデータ構造であってもよい。図2は、文字情報テーブル200のデータ構造例を示す説明図である。文字情報テーブル200は、文字列毎に文字コード欄210、文字矩形座標欄220の組を文字数分だけ有している。文字コード欄210は、文字認識結果である文字コードを記憶している。文字矩形座標欄220は、その文字コードに対応する文字画像(認識対象の文字画像)の外接矩形の位置を記憶している。なお、文字認識装置は、文字画像の認識のほかに、オンライン文字認識を行うものであってもよい。
The font information determination module 110 is connected to the font drawing module 120, the font overlap detection module 130, and the font drawing module 140. The font information determination module 110 receives the character string information 106 and the character code / character rectangular coordinates 108, passes the font size / font type / character position 112 to the font drawing module 120, and receives the overlap information 132 from the font overlap detection module 130. The font size, font type, and character position 138 are passed to the font drawing module 140.
The character string information 106 is output information of the character recognition device, the content is a character recognition result for a handwritten character image or a printed character image, and includes a character code / character rectangular coordinate 108. That is, for each character string, the character code of each character image (character image for one character) and the position of a circumscribed rectangle surrounding each character image (character image to be recognized) are included. In addition, information other than these (for example, information indicating the color of each character, the recognized character image itself, and the like) may be included. The character string refers to one line in horizontal writing and one column in vertical writing. The character code / character rectangular coordinates 108 may be the same data as the character string information 106. For example, the character string information 106 may have a data structure such as the character information table 200. FIG. 2 is an explanatory diagram showing an example of the data structure of the character information table 200. The character information table 200 has a set of a character code field 210 and a character rectangular coordinate field 220 for each character string corresponding to the number of characters. The character code column 210 stores character codes that are character recognition results. The character rectangular coordinate column 220 stores the position of the circumscribed rectangle of the character image (character image to be recognized) corresponding to the character code. The character recognition device may perform online character recognition in addition to character image recognition.

フォント情報決定モジュール110は、文字認識結果である文字コード・文字矩形座標108を受け付ける。そして、文字認識結果の文字画像同士が重なり合う場合は、その文字画像が重ならないように、描画する文字画像の大きさを決定する。そのために、「文字認識結果の文字画像同士が重なるか否か」の判断を行う。その判断は、文字認識結果の文字コードに対応する文字画像を、原文字画像の位置に描画して、その文字画像同士が重なり合うか否かによって判断する。なお、「文字コードに対応する文字画像」とは、原文字画像の位置に文字コードの文字画像を描画することである。ただし、この描画は、実際に描画してもよいし、実際には描画せずに、その描画を行ったとした場合の文字画像の外接矩形を生成して、重なりを判断するようにしてもよい。この判断のために、フォント情報決定モジュール110は、フォント描画モジュール120、フォント重なり検出モジュール130を用いる。フォント描画モジュール120に渡すフォントサイズ・フォントタイプ・文字位置112は、例えば、文字フォント情報テーブル300のようなデータ構造であってもよい。図3は、文字フォント情報テーブル300のデータ構造例を示す説明図である。文字フォント情報テーブル300は、文字列毎に文字コード欄310、位置座標欄320、フォントサイズ欄330、フォントタイプ欄340の組を文字数分だけを有している。文字コード欄310は、文字認識結果である文字コードを記憶している。位置座標欄320は、その文字コードを描画する位置を記憶している。フォントサイズ欄330は、その文字コードの描画の際のフォントサイズを記憶している。フォントタイプ欄340は、その文字コードの描画の際のフォントタイプを記憶している。フォント情報決定モジュール110が、最初にフォントサイズ・フォントタイプ・文字位置112に渡す場合は、文字コード・文字矩形座標108のデータをそのままフォントサイズ・フォントタイプ・文字位置112に入れて渡せばよい。2回目以降のフォントサイズ・フォントタイプ・文字位置112は、図5の例を用いて後述するように、文字サイズを小さくしたものにする。なお、フォントタイプは、予め定められたフォントタイプであってもよいし、文字列情報106内に含まれているフォントタイプを用いるようにしてもよい。また、文字サイズと同様に、1つの文字列内のフォントタイプは同じとしてもよい。
また、フォント情報決定モジュール110は、文字サイズを小さくすること、及び文字幅を小さくすることによって、フォント描画モジュール140が描画する文字画像の大きさを小さくするようにしてもよい。
The font information determination module 110 receives a character code / character rectangular coordinate 108 as a character recognition result. When the character images of the character recognition result overlap, the size of the character image to be drawn is determined so that the character images do not overlap. For this purpose, a determination is made as to whether or not the character images of the character recognition result overlap. The determination is made by drawing a character image corresponding to the character code of the character recognition result at the position of the original character image and determining whether the character images overlap each other. The “character image corresponding to the character code” is to draw a character image of the character code at the position of the original character image. However, this drawing may be actually drawn, or a circumscribed rectangle of the character image when the drawing is performed without actually drawing may be generated to determine the overlap. . For this determination, the font information determination module 110 uses the font drawing module 120 and the font overlap detection module 130. The font size, font type, and character position 112 to be passed to the font drawing module 120 may have a data structure such as the character font information table 300, for example. FIG. 3 is an explanatory diagram showing an example of the data structure of the character font information table 300. The character font information table 300 has a set of a character code column 310, a position coordinate column 320, a font size column 330, and a font type column 340 for each character string as many as the number of characters. The character code column 310 stores character codes that are character recognition results. The position coordinate column 320 stores a position where the character code is drawn. The font size column 330 stores the font size when drawing the character code. The font type column 340 stores a font type at the time of drawing the character code. When the font information determination module 110 first passes the data to the font size / font type / character position 112, the data of the character code / character rectangular coordinates 108 may be input as it is into the font size / font type / character position 112. The font size, font type, and character position 112 for the second and subsequent times are set to have a smaller character size, as will be described later using the example of FIG. Note that the font type may be a predetermined font type, or a font type included in the character string information 106 may be used. Similarly to the character size, the font type in one character string may be the same.
Further, the font information determination module 110 may reduce the size of the character image drawn by the font drawing module 140 by reducing the character size and the character width.

フォント描画モジュール120は、フォント情報決定モジュール110、フォント重なり検出モジュール130と接続されている。フォント描画モジュール120は、フォント情報決定モジュール110よりフォントサイズ・フォントタイプ・文字位置112を受け取り、フォント重なり検出モジュール130に文字画像情報122を渡す。フォント描画モジュール120は、フォントサイズ・フォントタイプ・文字位置112にしたがって文字画像を描画し、文字画像情報122を生成して、フォント重なり検出モジュール130に渡す。なお、フォント重なり検出モジュール130に渡す文字画像情報122には、フォントサイズ・フォントタイプ・文字位置112を含めてもよい。なお、フォント描画モジュール120は、処理量を減らすため、重なりの検出を可能にする描画座標情報(文字画像が描かれる座標群)のみを算出し、実際の描画処理は行わなくてもよい。
フォント重なり検出モジュール130は、フォント情報決定モジュール110、フォント描画モジュール120と接続されている。フォント重なり検出モジュール130は、フォント描画モジュール120より文字画像情報122を受け取り、フォント情報決定モジュール110に重なり情報132を渡す。フォント重なり検出モジュール130は、文字画像情報122を検証することによって、その文字列内で文字画像同士が重なり合っているか否かを判断する。その判断結果としての重なり情報132をフォント情報決定モジュール110に渡す。重なり合っているか否かの判断は、対象としている文字画像とその隣にある文字画像との外接矩形が、重なり合っているか否かを判断する。例えば、横書きの場合は、対象としている文字画像の外接矩形の右端の座標が、右隣の文字画像の外接矩形の左端の座標よりも右側にある場合は重なり合っていると判断する。同様に、縦書きの場合は、対象としている文字画像の外接矩形の下端の座標が、下にある文字画像の外接矩形の上端の座標よりも下側にある場合は重なり合っていると判断する。
The font drawing module 120 is connected to the font information determination module 110 and the font overlap detection module 130. The font drawing module 120 receives the font size / font type / character position 112 from the font information determination module 110 and passes the character image information 122 to the font overlap detection module 130. The font drawing module 120 draws a character image according to the font size, font type, and character position 112, generates character image information 122, and passes it to the font overlap detection module 130. The character image information 122 passed to the font overlap detection module 130 may include the font size, font type, and character position 112. Note that the font drawing module 120 calculates only drawing coordinate information (coordinate group in which a character image is drawn) that enables detection of overlap, and does not need to perform actual drawing processing in order to reduce the processing amount.
The font overlap detection module 130 is connected to the font information determination module 110 and the font drawing module 120. The font overlap detection module 130 receives the character image information 122 from the font drawing module 120 and passes the overlap information 132 to the font information determination module 110. The font overlap detection module 130 verifies the character image information 122 to determine whether or not the character images overlap in the character string. The overlap information 132 as the determination result is passed to the font information determination module 110. The determination as to whether or not they are overlapping determines whether or not the circumscribed rectangles of the target character image and the adjacent character image are overlapping. For example, in the case of horizontal writing, if the coordinate of the right end of the circumscribed rectangle of the target character image is on the right side of the coordinate of the left end of the circumscribed rectangle of the right adjacent character image, it is determined that they overlap. Similarly, in the case of vertical writing, if the coordinates of the lower end of the circumscribed rectangle of the target character image are below the coordinates of the upper end of the circumscribed rectangle of the lower character image, it is determined that they overlap.

フォント描画モジュール140は、フォント情報決定モジュール110と接続されている。フォント描画モジュール140は、文字列情報106を受け付け、フォント情報決定モジュール110より清書フォントサイズ・フォントタイプ・文字位置138を受け取り、清書文字列142を出力する。フォント描画モジュール140は、フォント情報決定モジュール110によって決定された大きさに応じて、文字認識結果を描画する。具体的には、清書フォントサイズ・フォントタイプ・文字位置138のフォントサイズの各文字を、清書フォントサイズ・フォントタイプ・文字位置138内の文字位置に描画して清書文字列142を生成して出力する。清書文字列142を出力するとは、例えば、プリンタ等の印刷装置で印刷すること、ディスプレイ等の表示装置に表示すること、PDFやワープロ文書等に埋め込むこと、その文書を文書記憶装置へ書き込むこと、メモリーカード等の記憶媒体に記憶すること、他の情報処理装置へ渡すこと等が含まれる。   The font drawing module 140 is connected to the font information determination module 110. The font drawing module 140 receives the character string information 106, receives the clear text font size / font type / character position 138 from the font information determination module 110, and outputs the clear text string 142. The font drawing module 140 draws the character recognition result according to the size determined by the font information determination module 110. Specifically, each character of the clear font size, the font type, and the font size of the character position 138 is drawn at the character position in the clear font size, the font type, and the character position 138, and the clear character string 142 is generated and output. To do. To output the clear text string 142 is, for example, printing on a printing device such as a printer, displaying on a display device such as a display, embedding in a PDF or word processor document, writing the document to a document storage device, It includes storing in a storage medium such as a memory card, passing to another information processing apparatus, and the like.

図4は、第1の実施の形態による処理例を示すフローチャートである。
ステップS402では、フォント情報決定モジュール110が、文字コード・文字矩形座標108を受け付ける。
ステップS404では、フォント情報決定モジュール110が、文字コード・文字矩形座標108からフォントサイズ・フォントタイプ・文字位置112を決定する。例えば、文字コード・文字矩形座標108をそのままフォントサイズ・フォントタイプ・文字位置112としてもよい。
ステップS406では、フォント情報決定モジュール110が、フォントサイズ・フォントタイプ・文字位置112をフォント描画モジュール120に渡す。
ステップS408では、フォント描画モジュール120が、フォントサイズ・フォントタイプ・文字位置112にしたがってフォントを描画する。なお、ここでの描画は、実際に文字画像を描画してもよいし、描画する座標だけを算出するだけで、実際には文字画像を描画しなくてもよい。
ステップS410では、フォント描画モジュール120が、描画した文字画像情報122をフォント重なり検出モジュール130に渡す。
ステップS412では、フォント重なり検出モジュール130が、文字画像情報122を解析して、文字の重なりを判定する。前述したように、文字画像の外接矩形を利用すればよい。
FIG. 4 is a flowchart illustrating a processing example according to the first exemplary embodiment.
In step S <b> 402, the font information determination module 110 receives the character code / character rectangular coordinates 108.
In step S <b> 404, the font information determination module 110 determines the font size / font type / character position 112 from the character code / character rectangular coordinates 108. For example, the character code / character rectangular coordinates 108 may be used as the font size / font type / character position 112 as they are.
In step S <b> 406, the font information determination module 110 passes the font size / font type / character position 112 to the font drawing module 120.
In step S <b> 408, the font drawing module 120 draws a font according to the font size / font type / character position 112. In the drawing here, a character image may be actually drawn, or only the coordinates for drawing may be calculated, and the character image may not actually be drawn.
In step S 410, the font drawing module 120 passes the drawn character image information 122 to the font overlap detection module 130.
In step S412, the font overlap detection module 130 analyzes the character image information 122 and determines character overlap. As described above, the circumscribed rectangle of the character image may be used.

ステップS414では、フォント重なり検出モジュール130が、判定結果である重なり情報132をフォント情報決定モジュール110に渡す。
ステップS416では、フォント情報決定モジュール110が、フォントが重なるか否かを判断し、重なる場合はステップS418へ進み、それ以外の場合はステップS420へ進む。
ステップS418では、フォント情報決定モジュール110が、以前のフォントサイズ・フォントタイプ・文字位置112からフォントサイズ・フォントタイプ・文字位置112を決定し、ステップS406からの処理を行う。ステップS418等の処理の詳細については、図5の例に示すフローチャートを用いて後述する。
ステップS420では、フォント情報決定モジュール110が、清書フォントサイズ・フォントタイプ・文字位置138をフォント描画モジュール140に渡す。
ステップS422では、フォント描画モジュール140が、清書フォントサイズ・フォントタイプ・文字位置138にしたがって清書文字列142を生成する。
ステップS424では、フォント描画モジュール140が、清書文字列142を出力する。
In step S414, the font overlap detection module 130 passes the overlap information 132, which is the determination result, to the font information determination module 110.
In step S416, the font information determination module 110 determines whether or not the fonts overlap. If the fonts overlap, the process proceeds to step S418. Otherwise, the process proceeds to step S420.
In step S418, the font information determination module 110 determines the font size / font type / character position 112 from the previous font size / font type / character position 112, and performs the processing from step S406. Details of the processing in step S418 and the like will be described later using the flowchart shown in the example of FIG.
In step S <b> 420, the font information determination module 110 passes the clear font size, font type, and character position 138 to the font drawing module 140.
In step S 422, the font drawing module 140 generates a clear text string 142 according to the clear font size, font type, and character position 138.
In step S424, the font drawing module 140 outputs the clear text string 142.

図5は、第1の実施の形態(フォント情報決定モジュール110)による処理例を示すフローチャートである。
ステップS502では、文字列内で最も縦長が高い文字にフォントサイズを合わせる。この処理は、ステップS418で行ってもよいし、ステップS404で行ってもよい。
ステップS504では、フォント重なり検出モジュール130からの重なり情報132によって文字画像が重なるか否かを判断し、重なる場合はステップS506へ進み、それ以外の場合は処理を終了する(ステップS599)。この処理は、ステップS416と同等のものである。
ステップS506では、フォントサイズを予め定められた値だけ下げる。
ステップS508では、フォントサイズが閾値以下であるか否かを判断し、閾値以下である場合はステップS510へ進み、それ以外の場合はステップS504へ戻る。
FIG. 5 is a flowchart illustrating a processing example according to the first exemplary embodiment (font information determination module 110).
In step S502, the font size is adjusted to the character having the highest vertical length in the character string. This process may be performed in step S418 or in step S404.
In step S504, it is determined whether or not the character images overlap based on the overlap information 132 from the font overlap detection module 130. If they overlap, the process proceeds to step S506, and otherwise the process ends (step S599). This process is equivalent to step S416.
In step S506, the font size is lowered by a predetermined value.
In step S508, it is determined whether or not the font size is equal to or smaller than a threshold value. If the font size is equal to or smaller than the threshold value, the process proceeds to step S510. Otherwise, the process returns to step S504.

ステップS510では、フォントタイプを幅が狭いものとする。
ステップS512では、幅の狭いフォントタイプがないか否かを判断し、ない場合はステップS514へ進み、それ以外の場合はステップS502へ戻る。
ステップS514では、文字列情報から同じフォントで文字列矩形内に入るように、アフィン変換で幅を狭くしたフォントを生成する。
なお、ステップS506、S508の処理とステップS510、S512の処理を入れ替えてもよい。
In step S510, the font type is assumed to be narrow.
In step S512, it is determined whether or not there is a narrow font type. If not, the process proceeds to step S514. Otherwise, the process returns to step S502.
In step S514, a font with a narrow width is generated by affine transformation so as to enter the character string rectangle with the same font from the character string information.
Note that the processing in steps S506 and S508 may be interchanged with the processing in steps S510 and S512.

<第2の実施の形態>
図6は、第2の実施の形態の構成例についての概念的なモジュール構成図である。
第2の実施の形態である画像処理装置600は、文字認識結果の文字画像を描画する清書処理を行うものであって、図6の例に示すように、フォント情報決定モジュール610、フォント描画モジュール620、フォント重なり検出モジュール630、文字列周辺探索モジュール640、フォント描画モジュール650を有している。
例えば、図9(a)に示す原画像910のように、異なる文字列(2つの文字列)同士が近接している場合は、清書化された場合に文字が重なる可能性がある。図9(a)の例の場合、「C」と「私」の文字画像が重なってしまう。これは、1つの文字列内の重なりだけでは判断できない。
<Second Embodiment>
FIG. 6 is a conceptual module configuration diagram of a configuration example according to the second embodiment.
The image processing apparatus 600 according to the second embodiment performs a clearing process for drawing a character image as a result of character recognition. As shown in the example of FIG. 6, a font information determination module 610, a font drawing module, and the like. 620, a font overlap detection module 630, a character string periphery search module 640, and a font drawing module 650.
For example, when different character strings (two character strings) are close to each other as in the original image 910 shown in FIG. 9A, there is a possibility that the characters overlap when they are clarified. In the case of the example of FIG. 9A, the character images “C” and “I” overlap. This cannot be determined only by the overlap in one character string.

フォント情報決定モジュール610は第1の実施の形態のフォント情報決定モジュール110と対応し、この他にフォント描画モジュール620はフォント描画モジュール120と対応し、フォント重なり検出モジュール630はフォント重なり検出モジュール130と対応し、フォント描画モジュール650はフォント描画モジュール140と対応している。第1の実施の形態とは異なる。
フォント情報決定モジュール610は、フォント描画モジュール620、フォント重なり検出モジュール630、文字列周辺探索モジュール640、フォント描画モジュール650と接続されている。フォント情報決定モジュール610は、文字列情報606、文字コード・文字矩形座標608を受け付け、フォント描画モジュール620にフォントサイズ・フォントタイプ・文字位置612、文字列周辺探索モジュール640に文字コード・文字矩形座標608を渡し、フォント重なり検出モジュール630より重なり情報632を受け取り、フォント描画モジュール650に清書フォントサイズ・フォントタイプ・文字位置638を渡す。ここで、フォント情報決定モジュール610は、複数列における文字認識結果である文字コード・文字矩形座標608を受け取る。そして、フォント描画モジュール620に渡すフォントサイズ・フォントタイプ・文字位置612は、対象とする1つの文字列内の文字認識結果を含むものである。複数の文字列における文字認識結果は、文字コード・文字矩形座標608として文字列周辺探索モジュール640に渡す。そして、フォント情報決定モジュール610は、対象とする列の文字認識結果の文字画像と隣り合う列の文字認識結果の文字画像との間で重なり合う場合は、その対象とする列の文字画像と重ならないように隣り合う行の位置を変更する。詳細は、図8の例に示すフローチャートを用いて後述する。
The font information determination module 610 corresponds to the font information determination module 110 of the first embodiment, the font drawing module 620 corresponds to the font drawing module 120, and the font overlap detection module 630 includes the font overlap detection module 130. Correspondingly, the font drawing module 650 corresponds to the font drawing module 140. Different from the first embodiment.
The font information determination module 610 is connected to the font drawing module 620, the font overlap detection module 630, the character string periphery search module 640, and the font drawing module 650. The font information determination module 610 receives the character string information 606 and the character code / character rectangular coordinates 608, the font drawing module 620 receives the font size / font type / character position 612, and the character string peripheral search module 640 receives the character code / character rectangular coordinates. 608 is received, the overlap information 632 is received from the font overlap detection module 630, and the clear font size / font type / character position 638 is passed to the font drawing module 650. Here, the font information determination module 610 receives a character code / character rectangular coordinate 608 which is a character recognition result in a plurality of columns. The font size / font type / character position 612 to be passed to the font drawing module 620 includes a character recognition result in one target character string. Character recognition results in a plurality of character strings are passed to the character string periphery search module 640 as character codes / character rectangular coordinates 608. Then, the font information determination module 610 does not overlap the character image of the target column when it overlaps between the character image of the character recognition result of the target column and the character image of the character recognition result of the adjacent column. Change the position of adjacent rows. Details will be described later using the flowchart shown in the example of FIG.

フォント描画モジュール620は、フォント情報決定モジュール610、フォント重なり検出モジュール630と接続されている。フォント描画モジュール620は、フォント情報決定モジュール610よりフォントサイズ・フォントタイプ・文字位置612を受け取り、フォント重なり検出モジュール630に文字画像情報622を渡す。
フォント重なり検出モジュール630は、フォント情報決定モジュール610、フォント描画モジュール620、文字列周辺探索モジュール640と接続されている。フォント重なり検出モジュール630は、フォント描画モジュール620より文字画像情報622を受け取り、フォント情報決定モジュール610に重なり情報632を渡す。
文字列周辺探索モジュール640は、フォント情報決定モジュール610、フォント重なり検出モジュール630と接続されている。文字列周辺探索モジュール640は、フォント情報決定モジュール610より文字コード・文字矩形座標608を受け取り、フォント重なり検出モジュール630に周辺文字情報642を渡す。
文字列周辺探索モジュール640は、フォント情報決定モジュール610から文字コード・文字矩形座標608を受け取って、対象としている文字列と隣り合っている文字列を抽出する。そして、対象としている文字列内の文字と予め定められた距離内に存在する文字が、隣り合っている文字列内に存在しているか否かを判断する。存在している場合は、隣り合っている文字列内の文字情報(フォントサイズ・フォントタイプ・文字位置612と同等の情報)を周辺文字情報642としてフォント重なり検出モジュール630に渡す。フォント重なり検出モジュール630は、周辺文字情報642を受け取った場合は、再度、フォント描画モジュール620に対象としている文字列と隣り合っている文字列内の文字画像を描画させる。フォント描画モジュール620は、対象としている文字列と隣り合っている文字列内の文字画像を描画して、フォント重なり検出モジュール630に渡す。フォント重なり検出モジュール630は、文字列内の文字画像の重なり合いと、対象としている文字列と隣り合っている文字列内の文字画像の重なり合いを検出する。
The font drawing module 620 is connected to the font information determination module 610 and the font overlap detection module 630. The font drawing module 620 receives the font size / font type / character position 612 from the font information determination module 610 and passes the character image information 622 to the font overlap detection module 630.
The font overlap detection module 630 is connected to the font information determination module 610, the font drawing module 620, and the character string periphery search module 640. The font overlap detection module 630 receives the character image information 622 from the font drawing module 620 and passes the overlap information 632 to the font information determination module 610.
The character string periphery search module 640 is connected to the font information determination module 610 and the font overlap detection module 630. The character string peripheral search module 640 receives the character code / character rectangular coordinate 608 from the font information determination module 610 and passes the peripheral character information 642 to the font overlap detection module 630.
The character string periphery search module 640 receives the character code / character rectangle coordinate 608 from the font information determination module 610 and extracts a character string adjacent to the target character string. Then, it is determined whether a character existing within a predetermined distance from a character in the target character string is present in an adjacent character string. If it exists, the character information (information equivalent to the font size, font type, and character position 612) in the adjacent character string is passed to the font overlap detection module 630 as the peripheral character information 642. When the font overlap detection module 630 receives the peripheral character information 642, it again causes the font drawing module 620 to draw the character image in the character string adjacent to the target character string. The font drawing module 620 draws a character image in a character string adjacent to the target character string and passes it to the font overlap detection module 630. The font overlap detection module 630 detects the overlap of the character images in the character string and the overlap of the character images in the character string adjacent to the target character string.

フォント描画モジュール650は、フォント情報決定モジュール610と接続されている。フォント描画モジュール650は、文字列情報606を受け付け、フォント情報決定モジュール610より清書フォントサイズ・フォントタイプ・文字位置638を受け取り、清書文字列652を出力する。例えば、図9(a)に示した原画像910の文字列情報606を受け付けた場合は、清書文字列652として図9(b)に示した清書処理結果画像920を出力する。清書処理結果画像920では、2列目の文字列である「私の」は、原画像910と比較するとその位置が下になり、1列目の文字列「ABC」との重なりがない。   The font drawing module 650 is connected to the font information determination module 610. The font drawing module 650 receives the character string information 606, receives the clear font size / font type / character position 638 from the font information determination module 610, and outputs the clear text string 652. For example, when the character string information 606 of the original image 910 shown in FIG. 9A is received, the clear text processing result image 920 shown in FIG. 9B is output as the clear text string 652. In the clean copy processing result image 920, the character string “my” in the second column is positioned lower than the original image 910, and there is no overlap with the character string “ABC” in the first column.

図7は、第2の実施の形態による処理例を示すフローチャートである。図4の例に示したフローチャート内の処理と同等のものは、その旨を記す。
ステップS702では、フォント情報決定モジュール610が、文字コード・文字矩形座標608を受け付ける。ステップS402と同等の処理である。
ステップS704では、フォント情報決定モジュール610が、文字コード・文字矩形座標608からフォントサイズ・フォントタイプ・文字位置612を決定する。ステップS404と同等の処理である。
ステップS706では、フォント情報決定モジュール610が、文字コード・文字矩形座標608を文字列周辺探索モジュール640に渡す。つまり、対象としている文字列以外の文字列内の文字情報を渡す。
ステップS708では、フォント情報決定モジュール610が、フォントサイズ・フォントタイプ・文字位置612をフォント描画モジュール620に渡す。ステップS406と同等の処理である。
ステップS710では、フォント描画モジュール620が、フォントサイズ・フォントタイプ・文字位置612にしたがってフォントを描画する。ステップS408と同等の処理である。
ステップS712では、フォント描画モジュール620が、描画した文字画像情報622をフォント重なり検出モジュール630に渡す。ステップS410と同等の処理である。
FIG. 7 is a flowchart illustrating a processing example according to the second exemplary embodiment. The processing equivalent to the processing in the flowchart shown in the example of FIG.
In step S <b> 702, the font information determination module 610 receives a character code / character rectangular coordinate 608. This process is equivalent to step S402.
In step S <b> 704, the font information determination module 610 determines the font size / font type / character position 612 from the character code / character rectangular coordinates 608. This process is equivalent to step S404.
In step S706, the font information determination module 610 passes the character code / character rectangular coordinates 608 to the character string periphery search module 640. That is, the character information in the character string other than the target character string is passed.
In step S708, the font information determination module 610 passes the font size / font type / character position 612 to the font drawing module 620. This is the same processing as step S406.
In step S 710, the font drawing module 620 draws a font according to the font size, font type, and character position 612. This is the same processing as step S408.
In step S712, the font drawing module 620 passes the drawn character image information 622 to the font overlap detection module 630. This is the same processing as step S410.

ステップS714では、文字列周辺探索モジュール640が、対象としている文字列の周辺にある文字を探索する。前述したように、隣り合う文字列内の文字との距離を利用する。
ステップS716では、フォント重なり検出モジュール630が、文字画像情報622、周辺文字情報642を解析して、文字の重なりを判定する。フォント重なり検出モジュール630は必要であれば(周辺文字があれば)フォント描画モジュール620に周辺にある文字を描画させて、その描画結果の文字画像情報622を用いる。
ステップS718では、フォント重なり検出モジュール630が、判定結果である重なり情報632をフォント情報決定モジュール610に渡す。ステップS414と同等の処理である。
ステップS720では、フォント情報決定モジュール610が、フォントが重なるか否かを判断し、重なる場合はステップS722へ進み、それ以外の場合はステップS724へ進む。ステップS416と同等の処理である。ステップS722等の処理の詳細については、図8の例に示すフローチャートを用いて後述する。
ステップS722では、フォント情報決定モジュール610が、以前のフォントサイズ・フォントタイプ・文字位置612からフォントサイズ・フォントタイプ・文字位置612を決定し、ステップS708からの処理を行う。
ステップS724では、フォント情報決定モジュール610が、清書フォントサイズ・フォントタイプ・文字位置638をフォント描画モジュール650に渡す。ステップS420と同等の処理である。
ステップS726では、フォント描画モジュール650が、清書フォントサイズ・フォントタイプ・文字位置638にしたがって清書文字列652を生成する。ステップS422と同等の処理である。
ステップS728では、フォント描画モジュール650が、清書文字列652を出力する。ステップS424と同等の処理である。
In step S714, the character string periphery search module 640 searches for characters around the target character string. As described above, the distance between characters in adjacent character strings is used.
In step S716, the font overlap detection module 630 analyzes the character image information 622 and the surrounding character information 642 to determine character overlap. The font overlap detection module 630 causes the font drawing module 620 to draw surrounding characters if necessary (if there are surrounding characters), and uses the character image information 622 of the drawing result.
In step S718, the font overlap detection module 630 passes the overlap information 632 that is the determination result to the font information determination module 610. This is the same processing as step S414.
In step S720, the font information determination module 610 determines whether or not the fonts overlap. If the fonts overlap, the process proceeds to step S722. Otherwise, the process proceeds to step S724. This process is equivalent to step S416. Details of the processing in step S722 and the like will be described later using the flowchart shown in the example of FIG.
In step S722, the font information determination module 610 determines the font size / font type / character position 612 from the previous font size / font type / character position 612, and performs the processing from step S708.
In step S 724, the font information determination module 610 passes the clear font size / font type / character position 638 to the font drawing module 650. This is the same processing as step S420.
In step S 726, the font drawing module 650 generates a clear text string 652 according to the clear text font size / font type / character position 638. This is the same processing as step S422.
In step S728, the font drawing module 650 outputs the clear text string 652. This is the same processing as step S424.

図8は、第2の実施の形態による処理例を示すフローチャートである。図5の例に示したフローチャート内の処理と同等のものは、その旨を記す。
ステップS802では、文字列内で最も縦長が高い文字にフォントサイズを合わせる。ステップS502と同等の処理である。
ステップS804では、重なりは周辺文字との重なりがあるか否かを判断し、ある場合はステップS818へ進み、それ以外の場合はステップS806へ進む。重なりの態様としては、(1)1つの文字列内の文字画像同士の重なり合いと、(2)対象としている文字列内の文字画像と隣り合う文字列内の文字画像との重なり、の2つがある。ここでは態様(2)の場合を判断対象としている。
ステップS818では、周辺文字の文字列を対象文字列と重ならないように下げる。具体的には、文字列全体の位置を下に移動するものである。その移動距離は、対象としている文字列内の文字画像と重ならない程度の距離であり、さらに、文字列間の間隔を予め定められた距離とするようにしてもよい。
FIG. 8 is a flowchart illustrating a processing example according to the second exemplary embodiment. The processing equivalent to the processing in the flowchart shown in the example of FIG.
In step S802, the font size is adjusted to the character having the highest vertical length in the character string. This is the same processing as step S502.
In step S804, it is determined whether or not there is an overlap with surrounding characters. If there is an overlap, the process proceeds to step S818; otherwise, the process proceeds to step S806. There are two overlapping modes: (1) the overlapping of character images in one character string and (2) the overlapping of the character image in the target character string and the character image in the adjacent character string. is there. Here, the case of the mode (2) is set as a determination target.
In step S818, the character string of the surrounding characters is lowered so as not to overlap the target character string. Specifically, the position of the entire character string is moved downward. The moving distance is a distance that does not overlap the character image in the target character string, and the distance between the character strings may be a predetermined distance.

ステップS806では、対象文字列内の文字画像が重なるか否かを判断し、重なる場合はステップS808へ進み、それ以外の場合は処理を終了する(ステップS899)。ここでは重なりの態様(1)の場合を判断対象としている。
ステップS808では、フォントサイズを予め定められた値だけ下げる。ステップS506と同等の処理である。
ステップS810では、フォントサイズが閾値以下であるか否かを判断し、閾値以下である場合はステップS812へ進み、それ以外の場合はステップS806へ戻る。ステップS508と同等の処理である。
ステップS812では、フォントタイプを幅が狭いものとする。ステップS510と同等の処理である。
ステップS814では、幅の狭いフォントタイプがないか否かを判断し、ない場合はステップS816へ進み、それ以外の場合はステップS802へ戻る。ステップS512と同等の処理である。
ステップS816では、文字列情報から同じフォントで文字列矩形内に入るように、アフィン変換で幅を狭くしたフォントを生成する。ステップS514と同等の処理である。
In step S806, it is determined whether or not the character images in the target character string overlap. If they overlap, the process proceeds to step S808. Otherwise, the process ends (step S899). Here, the case of the overlap mode (1) is set as a determination target.
In step S808, the font size is lowered by a predetermined value. This is the same processing as step S506.
In step S810, it is determined whether or not the font size is equal to or smaller than the threshold value. If the font size is equal to or smaller than the threshold value, the process proceeds to step S812. Otherwise, the process returns to step S806. This is the same processing as step S508.
In step S812, the font type is assumed to be narrow. This is the same processing as step S510.
In step S814, it is determined whether or not there is a narrow font type. If not, the process proceeds to step S816. Otherwise, the process returns to step S802. This is the same processing as step S512.
In step S816, a font with a narrow width is generated by affine transformation so as to enter the character string rectangle with the same font from the character string information. This is the same processing as step S514.

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

CPU(Central Processing Unit)1101は、前述の実施の形態において説明した各種のモジュール、すなわち、フォント情報決定モジュール110、フォント描画モジュール120、フォント重なり検出モジュール130、フォント描画モジュール140、フォント情報決定モジュール610、フォント描画モジュール620、フォント重なり検出モジュール630、文字列周辺探索モジュール640、フォント描画モジュール650等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。   A CPU (Central Processing Unit) 1101 is the various modules described in the above embodiment, that is, the font information determination module 110, the font drawing module 120, the font overlap detection module 130, the font drawing module 140, and the font information determination module 610. A control unit that executes processing according to a computer program describing an execution sequence of each module such as a font drawing module 620, a font overlap detection module 630, a character string periphery search module 640, and a font drawing module 650.

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

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

キーボード1108、マウス等のポインティングデバイス1109は、操作者により操作される入力デバイスである。ディスプレイ1110は、液晶表示装置又はCRT(Cathode Ray Tube)などがあり、各種情報をテキストやイメージ情報として表示する。   A keyboard 1108 and a pointing device 1109 such as a mouse are input devices operated by an operator. The display 1110 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)1111は、ハードディスクを内蔵し、ハードディスクを駆動し、CPU1101によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、文字列情報106、文字コード・文字矩形座標108、フォントサイズ・フォントタイプ・文字位置112、文字画像情報122、重なり情報132、清書フォントサイズ・フォントタイプ・文字位置138、清書文字列142等が格納される。さらに、その他の各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納される。   An HDD (Hard Disk Drive) 1111 includes a hard disk, drives the hard disk, and records or reproduces a program executed by the CPU 1101 and information. In the hard disk, character string information 106, character code / character rectangular coordinate 108, font size / font type / character position 112, character image information 122, overlap information 132, clear font size / font type / character position 138, clear character string 142 etc. are stored. Further, various computer programs such as various other data processing programs are stored.

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

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

なお、図11に示す画像処理装置のハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、図11に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア(例えば特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)等)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図11に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、複写機、ファックス、スキャナ、プリンタ、複合機(スキャナ、プリンタ、複写機、ファックス等のいずれか2つ以上の機能を有している画像処理装置)などに組み込まれていてもよい。   Note that the hardware configuration of the image processing apparatus shown in FIG. 11 shows one configuration example, and the present embodiment is not limited to the configuration shown in FIG. 11, and the modules described in this 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 In addition, a plurality of systems shown in FIG. 11 may be connected to each other via a communication line 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.

なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(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 (registered trademark) Disc), 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.

100…画像処理装置
106…文字列情報
108…文字コード・文字矩形座標
110…フォント情報決定モジュール
112…フォントサイズ・フォントタイプ・文字位置
120…フォント描画モジュール
122…文字画像情報
130…フォント重なり検出モジュール
132…重なり情報
138…清書フォントサイズ・フォントタイプ・文字位置
140…フォント描画モジュール
142…清書文字列
600…画像処理装置
606…文字列情報
608…文字コード・文字矩形座標
610…フォント情報決定モジュール
612…フォントサイズ・フォントタイプ・文字位置
620…フォント描画モジュール
622…文字画像情報
630…フォント重なり検出モジュール
632…重なり情報
638…清書フォントサイズ・フォントタイプ・文字位置
640…文字列周辺探索モジュール
642…周辺文字情報
650…フォント描画モジュール
652…清書文字列
DESCRIPTION OF SYMBOLS 100 ... Image processing apparatus 106 ... Character string information 108 ... Character code / character rectangular coordinate 110 ... Font information determination module 112 ... Font size, font type, character position 120 ... Font drawing module 122 ... Character image information 130 ... Font overlap detection module 132 ... Overlapping information 138 ... Clear font size / font type / character position 140 ... Font drawing module 142 ... Clear text string 600 ... Image processing device 606 ... Character string information 608 ... Character code / character rectangular coordinates 610 ... Font information determination module 612 ... Font size, font type, character position 620 ... Font drawing module 622 ... Character image information 630 ... Font overlap detection module 632 ... Overlap information 638 ... Clear font size and font tie - character position 640 ... string around the search module 642 ... peripheral character information 650 ... font rendering module 652 ... fair copy string

Claims (3)

文字認識結果を受け付ける受付手段と、
前記文字認識結果の文字画像同士が重なり合う場合は、その文字画像が重ならないように、描画する文字画像の大きさを決定する決定手段と、
前記決定手段によって決定された大きさに応じて、前記文字認識結果を描画する描画手段
を具備し、
前記受付手段は、複数列における前記文字認識結果を受け取り、
前記決定手段は、文字列内で最も縦長が高い文字に大きさを合わせた後に、対象とする列の文字認識結果の文字画像と隣り合う列の文字認識結果の文字画像との間で重なり合う場合は、該対象とする列の文字画像と重ならないように該隣り合う行の位置を変更する
ことを特徴とする画像処理装置。
A receiving means for receiving the character recognition result;
A determination means for determining the size of the character image to be drawn so that the character images do not overlap when the character images of the character recognition result overlap;
Drawing means for drawing the character recognition result according to the size determined by the determining means ;
The receiving means receives the character recognition results in a plurality of columns;
In the case where the determining means overlaps between the character recognition result character image of the target column and the character recognition result character image of the adjacent column after matching the size of the character with the highest vertical length in the character string The image processing apparatus is characterized in that the position of the adjacent row is changed so as not to overlap with the character image of the target column .
前記決定手段は、文字サイズを小さくすること、及び文字幅を小さくすることによって、前記文字画像の大きさを小さくする
ことを特徴とする請求項1に記載の画像処理装置。
The image processing apparatus according to claim 1, wherein the determining unit reduces the size of the character image by reducing a character size and a character width.
コンピュータを、
文字認識結果を受け付ける受付手段と、
前記文字認識結果の文字画像同士が重なり合う場合は、その文字画像が重ならないように、描画する文字画像の大きさを決定する決定手段と、
前記決定手段によって決定された大きさに応じて、前記文字認識結果を描画する描画手段
として機能させ
前記受付手段は、複数列における前記文字認識結果を受け取り、
前記決定手段は、文字列内で最も縦長が高い文字に大きさを合わせた後に、対象とする列の文字認識結果の文字画像と隣り合う列の文字認識結果の文字画像との間で重なり合う場合は、該対象とする列の文字画像と重ならないように該隣り合う行の位置を変更する
ことを特徴とする画像処理プログラム。
Computer
A receiving means for receiving the character recognition result;
A determination means for determining the size of the character image to be drawn so that the character images do not overlap when the character images of the character recognition result overlap;
According to the size determined by the determination means, function as a drawing means for drawing the character recognition result ,
The receiving means receives the character recognition results in a plurality of columns;
In the case where the determining means overlaps between the character recognition result character image of the target column and the character recognition result character image of the adjacent column after matching the size of the character with the highest vertical length in the character string Change the position of the adjacent row so as not to overlap the character image of the target column
An image processing program characterized by that .
JP2014029205A 2014-02-19 2014-02-19 Image processing apparatus and image processing program Active JP6241311B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014029205A JP6241311B2 (en) 2014-02-19 2014-02-19 Image processing apparatus and image processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014029205A JP6241311B2 (en) 2014-02-19 2014-02-19 Image processing apparatus and image processing program

Publications (2)

Publication Number Publication Date
JP2015153352A JP2015153352A (en) 2015-08-24
JP6241311B2 true JP6241311B2 (en) 2017-12-06

Family

ID=53895473

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014029205A Active JP6241311B2 (en) 2014-02-19 2014-02-19 Image processing apparatus and image processing program

Country Status (1)

Country Link
JP (1) JP6241311B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6447066B2 (en) * 2014-12-01 2019-01-09 株式会社リコー Image processing apparatus, image processing method, and program

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4150842B2 (en) * 2000-05-09 2008-09-17 コニカミノルタビジネステクノロジーズ株式会社 Image recognition apparatus, image recognition method, and computer-readable recording medium on which image recognition program is recorded
JP2008059527A (en) * 2006-09-04 2008-03-13 Ricoh Co Ltd Image processor and program

Also Published As

Publication number Publication date
JP2015153352A (en) 2015-08-24

Similar Documents

Publication Publication Date Title
US20060082475A1 (en) Method, an apparatus and a storage medium for locating QR codes
US8391607B2 (en) Image processor and computer readable medium
US20150213332A1 (en) Image processing apparatus, non-transitory computer readable medium, and image processing method
US20130136360A1 (en) Image processing apparatus, image processing method, and computer readable medium
US10643097B2 (en) Image processing apparatuses and non-transitory computer readable medium
US20150254869A1 (en) Image processing apparatus, image processing method, and storage medium
US8751214B2 (en) Information processor for translating in accordance with features of an original sentence and features of a translated sentence, information processing method, and computer readable medium
JP2009251872A (en) Information processing device and information processing program
JP6828333B2 (en) Image processing equipment and image processing program
JP6241311B2 (en) Image processing apparatus and image processing program
JP5601027B2 (en) Image processing apparatus and image processing program
US8749854B2 (en) Image processing apparatus, method for performing image processing and computer readable medium
JP5440043B2 (en) Image processing apparatus and image processing program
US8620090B2 (en) Line determination apparatus, line determination method, and computer-readable medium
JP2017010187A (en) Image processing device and image processing program
JP6187307B2 (en) Image processing apparatus and image processing program
JP6323009B2 (en) Image processing apparatus and image processing program
JP6682827B2 (en) Information processing apparatus and information processing program
JP5949248B2 (en) Information processing apparatus and information processing program
JP5062076B2 (en) Information processing apparatus and information processing program
JP6606885B2 (en) Image processing apparatus and image processing program
JP5924035B2 (en) Information processing apparatus and information processing program
JP5928714B2 (en) Information processing apparatus and information processing program
JP2010182052A (en) Apparatus and program for processing image
JP2011065311A (en) Image processor 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: 20160722

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170519

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170530

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170626

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: 20171010

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171023

R150 Certificate of patent or registration of utility model

Ref document number: 6241311

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