JP6489768B2 - 情報処理装置、情報処理方法、プログラム - Google Patents

情報処理装置、情報処理方法、プログラム Download PDF

Info

Publication number
JP6489768B2
JP6489768B2 JP2014139867A JP2014139867A JP6489768B2 JP 6489768 B2 JP6489768 B2 JP 6489768B2 JP 2014139867 A JP2014139867 A JP 2014139867A JP 2014139867 A JP2014139867 A JP 2014139867A JP 6489768 B2 JP6489768 B2 JP 6489768B2
Authority
JP
Japan
Prior art keywords
area
character
recognition
cell
region
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
JP2014139867A
Other languages
English (en)
Other versions
JP2016019099A5 (ja
JP2016019099A (ja
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2014139867A priority Critical patent/JP6489768B2/ja
Priority to US14/789,205 priority patent/US10607381B2/en
Publication of JP2016019099A publication Critical patent/JP2016019099A/ja
Publication of JP2016019099A5 publication Critical patent/JP2016019099A5/ja
Application granted granted Critical
Publication of JP6489768B2 publication Critical patent/JP6489768B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Character Input (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

本発明は、情報処理装置、情報処理方法、プログラムに関する。
図3は、スキャン画像の一例である。このスキャン画像を編集したい場合がある。特許文献1は、スキャン画像の編集機能を開示している。
具体的には、特許文献1は、スキャン画像から、複数の罫線により構成される表領域を特定し、さらに、その表領域の内部の文字を文字認識する。また、表領域を構成する各罫線をベクトル化する。
そして、スキャン画像を左のウィンドウに表示しつつ、ベクトル化結果と認識文字とを右のウィンドウに表示する(特許文献1の図5)。
ユーザがこの右のウィンドウにて文字の編集を行うと、左のウィンドウから、上記特定された表領域が削除される。そして、編集後の文字が追加された表を生成し、当該生成された表を左のウィンドウに表示する。
特開2001−094760
しかしながら、特許文献1の手法を取ると表領域の誤認識があった場合に、文字の編集が行いづらくなる。
上記課題を解決するために、本発明の情報処理装置は、画像と、前記画像を解析することにより特定された複数の領域とを表示するように制御する第1表示制御手段と、前記表示された複数の領域の中から、ユーザの指示に基づいて第1の領域を選択する選択手段と、前記選択手段で選択された前記第1の領域の頂点の位置を変更するための指示を前記ユーザから受付ける受付手段と、前記指示に応じて頂点の位置が変更された前記第1の領域が、前記表示された複数の領域の中の第2の領域を含んでいるか否かを判定し、前記指示に応じて頂点の位置が変更された前記第1の領域が、前記表示された複数の領域の中の第2の領域を含んでいると判定したことに従って、前記第1の領域と前記第2の領域とを結合する結合手段とを有することを特徴とする。
画像を解析することにより特定される領域についての変更が容易にできるようになる。
複写機100の構成を示すブロック図 情報処理装置200の構成を示すブロック図 スキャン画像の例 スキャン画像の領域分割結果 認識セルの枠を表示する表示画面 認識セルが選択された際に表示される表示画面 編集後の文字を表示した画面 メインフローチャート 編集のフローチャート 認識セルの位置を変更するフローチャート 編集後の文字の表示フロー 認識セル406が選択された際に表示される表示画面 認識セルを拡大する際に表示される表示画面 認識セルを結合後に表示される表示画面 認識セルを結合・分割するフローチャート 認識セル407が選択された際に表示される表示画面 認識セルを縮小する際に表示される表示画面 認識セルを分割後に表示される表示画面 式1の意味を説明する図 セル内接直線検出領域を示す図 セル内接直線の検出を示す図 認識セル内部の削除のフローチャート 認識セルの検出を示す図 実施例2のフローチャート 実施例2の認識セルを結合する際に表示される表示画面 実施例3のフローチャート 実施例3の認識セルを結合する際に表示される表示画面 実施例4の課題を説明する図 実施例4の課題を説明する図 実施例4のフローチャート
まず、言葉の定義を行う。
オリジナル文字とは、スキャン画像中の文字のことである。
認識文字とは、オリジナル文字を文字認識することで得られた文字コード、又は、編集ウィンドウに表示される、その文字コードに対応する文字のことである。この認識文字は、編集ウィンドウ用文字サイズ(編集ウィンドウ用文字サイズとは、編集ウィンドウ用に設定された文字サイズという意味である)で編集ウィンドウ上に表示される。なお、この編集ウィンドウに表示される文字は、編集対象の文字となっている。
文字の編集は、ユーザが、編集ウィンドウから認識文字を削除して、代わりの文字を編集ウィンドウに入力する行為を示す。編集後の文字とは、入力された代わりの文字、又は、その文字に対応する文字コードのことである。この編集後の文字は、編集ウィンドウ上に表示される場合には、編集ウィンドウ用文字サイズで表示されるが、スキャン画像上に表示される場合には、スキャン画像用文字サイズで表示される。
なお、スキャン画像用文字サイズも編集ウィンドウ用文字サイズも共にそのデフォルト値は、予め保存部202に保存されているものとする。
以下、本発明を実施するための最良の形態について図面を用いて説明する。
<第1の実施形態>
<複写機の構成と情報処理装置の構成>
図1に本実施形態における複写機100の構成を示す。複写機100は、スキャナ101、送受信部102、プリンタ103より構成される。
図2に本実施形態における情報処理装置200の構成を示す。情報処理装置200は、CPUとROM及びRAMを内部に有する。CPUはROMから情報処理装置200のプログラムをロードし、一次保存領域としてRAMを利用して情報処理装置200のプログラムを実行する。以上の動作により、各部(201−205)の処理が実行される。なお、受付部205は、キーボードとマウスを含む形態が一般的であるが、この形態に限られない。また、受付部205と表示部204は一体であっても良い。その場合、受付部205と表示部204をまとめてタッチパネルと呼ぶことになり、実施例中のクリックなる記載は、タッチと読み替えて頂くことになる。
<スキャンから領域分割、文字認識まで>
複写機100のスキャナが文書をスキャンすると、スキャン画像(スキャン画像データとも言う)が生成される。生成されたスキャン画像を送受信部102が情報処理装置200に送信する。すると、情報処理装置200の送受信部201がこれを受信し、保存部202にそのスキャン画像を保存する。
ユーザが受付部205を介して、保存部202に保存されている複数のスキャン画像の中から、一つのスキャン画像を選択する。すると、制御部203は、そのスキャン画像を表示部204に表示する。
ユーザが受付部205を介して、表示部204に表示されたスキャン画像の解析を指示する。すると、制御部203は、領域分割と、文字認識と、認識セル枠表示の三つの処理を実行し、実行結果を表示部204に表示する。図3は、スキャン画像の例であり、図4は、制御部203による三つの処理の実行後の表示部204の表示結果である。
<領域分割(1)−(5)、文字認識(6)、認識セル枠表示(7)の説明>
(1)二値化
制御部203は、スキャン画像に対して2値化を行うことにより、2値画像を得る。この2値化により、スキャン画像における閾値より濃い色の画素は黒画素、その閾値より薄い色の画素は白画素となる。なお、以下では、スキャン画像が100DPIであるものとして説明を行うが、スキャン画像がこの解像度に限られないのは言うまでもない。
(2)黒画素塊検出
制御部203は、2値画像に対して8連結で繋がる黒画素の輪郭を追跡することにより、8方向の何れかの方向で連続して存在する黒画素の塊(黒画素塊)を検出する。8連結とは、左上、左、左下、下、右下、右、右上、上の8つの方向の何れかで、同じ色(今回のケースでは黒)の画素が連続しているという意味である。一方、4連結とは、左、下、右、上の4つの方向の何れかで同じ色の画素が連続しているという意味である。この(2)では、8方向に存在する8つの隣接画素の何れもが黒画素ではない単独の黒画素は検出されない。一方、8方向に存在する8つの隣接画素の何れか1つにでも黒画素が存在する黒画素は、その隣接する黒画素と共に、黒画素塊として検出されることになる。図23の2301は制御部203が検出した黒画素塊の一例である。また制御部203は、検出した黒画素塊の外接矩形の位置情報(四頂点のX、Y座標情報のこと)を算出する。なお、X軸は右方向に伸び、Y軸は下方向に伸びているものとする。幅は、X軸方向の長さ、高さは、Y軸方向の長さを指す。図23の2302は黒画素塊2301の外接矩形である。なお、本明細書で矩形と表現した時には、斜め向きの矩形は含まれず、四辺の全てがX座標軸、Y座標軸の何れかと平行な矩形を表す。
(3)表領域検出
制御部203は検出した黒画素塊が以下の全ての条件に該当するか判定し、全てに該当する黒画素塊を表の枠線を構成する黒画素塊であると判定する。
黒画素塊の外接矩形の幅、高さが閾値以上(たとえば、100画素・・・0.25cm以上)である。
外接矩形の内部における黒画素塊の充填率が閾値以下である(たとえば、黒画素塊が外接矩形に占める割合が20%以下)。
黒画素塊の最大幅及び高さと、外接矩形の幅及び高さの差が何れも小さい(たとえば、黒画素塊の最大幅及び高さと、外接矩形の幅及び高さの画素の差がともに10画素以下)。
制御部203は、表の枠線を構成すると判定した黒画素塊の外接矩形の位置情報を保存部202に保存する。以下では、そのように保存された位置情報を持つ外接矩形を表領域と呼ぶ。なお、以上の判定の結果、図23の黒画素塊2301は表の枠線を構成すると判定されたものとする。それに伴い、外接矩形2302は、表領域と呼ばれることになる。
(4)認識セルの特定
制御部203は、表領域内部の認識セルを特定する。認識セルを特定するためには、表領域内部の白画素の輪郭を追跡することにより、白画素塊を検出する必要がある。その上で、その白画素塊が所定の条件に合致する場合に、その白画素塊の外接矩形は、認識セルとして特定される。図23の2303、2304は、制御部203が特定した認識セルである。制御部203は、特定された認識セルの位置情報を保存部202に保存する。
なお、例えば、所定の条件に合致するとは、以下の三つの条件の全てに合致することを指す。
白画素塊の外接矩形の幅、高さが閾値以上(たとえば、20画素)である。
外接矩形の内部における黒画素塊の充填率が閾値以下である(たとえば、黒画素塊が外接矩形に占める割合が20%以下)。
白画素塊の最大幅及び高さと、外接矩形の幅及び高さの差が何れも小さい(たとえば、白画素塊の最大幅及び高さと、外接矩形の幅及び高さの画素の差がともに5画素以下)。
(5)認識セル内の文字領域の特定
制御部203は、各認識セルの内部に、その各認識セルに内接する白画素塊によって囲まれた黒画素塊があるか判定する。そして、黒画素塊があると判定した場合、あると判定された全ての黒画素塊に外接矩形を設定する。
さらに、制御部203は、自身が一つの認識セルの中に複数の外接矩形を設定した場合には、外接矩形同士の距離が閾値3(例えば20画素・・・0.5cm)以内であるか判定する。具体的には、制御部203は、外接矩形を一つ一つ選択し、選択された外接矩形からの距離が閾値3以内である外接矩形を検出する。
さらに、制御部203は、自身がそうした外接矩形を検出した場合、検出した外接矩形と、選択された外接矩形とを統合する。即ち、制御部203は、両方の外接矩形に外接する新たな外接矩形を設定し、その代わり、選択された外接矩形と、検出された外接矩形を削除する。
新たな外接矩形の設定、二つの外接矩形の削除が完了した後、制御部203は、その認識セル内の外接矩形をまた初めから一つ一つ選択し、互いの間の距離が閾値3以内である外接矩形同士を統合していく。以上の処理を繰り返す。即ち、互いの間の距離が閾値3以内である外接矩形が無くなるまで、外接矩形同士の統合が繰り返される。
以上の通り、本実施例では、一つの認識セルの内部に存在する外接矩形同士の統合を行うが、認識セルをまたぐ外接矩形同士の統合を行わない。
以上の処理が終わって依然として設定されている外接矩形は、文字領域と呼ばれる。以上の処理を認識セル内の文字領域の特定と呼ぶ。制御部203は、認識セルの内部に存在する文字領域の位置情報を、当該認識セルに関連付けて保存部202に保存する。
図23の2305、2306は文字領域であって、認識セル2303には、文字領域2305が、認識セル2304には文字領域2306が関連付けられ、保存部202に保存される。
図3のスキャン画像に対して行われた領域分割の結果を図4に示す。図4では、特定された認識セルを示す外接矩形に太線枠を付け、文字領域を示す外接矩形に点線枠を付けている。図4の例では、402、403、404、406、407が認識セルである。401、405が文字領域である。
この図4では、403内部の罫線が掠れてしまっているため、本来は、複数のセルからなる403が1つの認識セルとして特定されている。また、406、407は、本来は、単一のセルであるにも関わらず、ノイズの関係で、別々の認識セルとして特定されている。
(6)文字認識
制御部203は、各文字領域に対して文字認識を行うことによって、各文字領域に対応する認識文字を得る。認識文字は、対応する文字領域に関連付けて保存部202に保存する。そうすることによって、認識文字は、文字領域と予め関連付けられている認識セルとも関連付けられることになる。文字認識を行わない場合、もしくは文字認識に失敗した場合は、文字領域に関連付けられる認識文字はない。
(7)認識セル枠表示
制御部203は、各認識セルの四辺(即ち、外接矩形の四辺)に太線枠を付けてスキャン画像を表示部204に表示する。表示された画面は図5となっている。なお、枠の形態は、太線でなくても実線でなくても良く、黒でなくても良いのは言うまでも無いが、これ以降は、太線であるものとして説明を続ける。また、この(7)で太線枠と共に表示されるスキャン画像は、(1)−(6)の処理が行われる前のスキャン画像であり、即ち、2値化前のスキャン画像である。
<図8の説明>
ユーザが受付部205を介して、表示部204に表示されている図5における任意の箇所をクリックする。なお、本明細書においてクリックとは、マウスの左ボタンを押して、すぐに(押してから一定時間内に)離す行為のことである。クリックされた箇所が認識セルの外接矩形の内側の場合に、制御部203は、その認識セルが選択されたと判定する(S801)。図6に、認識セル602が選択された際に表示される表示画面を示す。ここでは、認識セル602が選択されたものとして以下説明を続ける。なお、601は、受付部205を介してユーザが指し示している場所を示すマウスポインタである。
上記判定がなされると、制御部203は、選択された認識セルの内部のオリジナル文字を編集するための編集ウィンドウ604と、選択された認識セル602の位置や大きさを変更するためのハンドル603とを表示部204に追加表示する(S802)。このハンドル603(認識セル位置変更ハンドルと呼ばれる)は、選択された認識セル602の太線枠の四頂点に追加表示される。図6に、認識セル位置変更ハンドル603と編集ウィンドウ604が追加表示された結果を示す。
またS802では図6のように、選択された認識セル(選択状態の認識セル)が他の認識セルと区別つくようにするのも好ましい。例えば、選択状態の認識セルの枠をより太くするのも好ましい(極太線枠とするのも好ましい)。もちろん他の認識セルと区別つくのであれば他の方法を取っても良い。例えば、選択状態の認識セルの枠を他の色にしたり、点線とするような方法も考えられる。ただし、本明細書では、選択された認識セルを他の認識セルと区別つけるための方法として極太線枠を用いる方法を採用した場合を例に以下説明を続ける。
なお、認識セルに対する選択状態が解除された場合には、そうした極太線枠状態から元の状態に戻ることになる(即ち、他の認識セルと同じ太線枠状態に戻ることになる)。
編集ウィンドウ604における文字入力欄605には、選択された認識セルに関連付けられている認識文字が編集ウィンドウ用文字サイズで表示される。ユーザはこの文字入力欄605から認識文字を削除し、代わりに、他の文字を入力することができる。そうすることにより、認識文字の編集ができる。なお、選択された認識セルと関連付けられている認識文字が無い(例えば、選択された認識セル内部から文字領域が検出されなかった、もしくは文字領域は検出されたが文字認識が失敗して認識文字が存在しない。)場合には、文字入力欄605は空欄となる。
OKボタン606は、文字の編集を確定する場合にクリックされるボタンである。Applyボタン607は、編集後の文字をスキャン画像上に表示したい場合にクリックされるボタンである。Cancelボタン608は、文字の編集をキャンセルしたい場合にクリックされるボタンである。
図6が表示された後、ユーザは受付部205に対して新たな操作を行う。もしその操作が編集ウィンドウ604上での文字編集であれば、制御部203は、S803(図9のS901)に処理を進める。ユーザが受付部205に対して行った操作が認識セル位置変更ハンドルに対する操作であれば、制御部203は、S804(図10のS1001)に処理を進める。
<図9の説明>
S901では、制御部203は、認識セル位置変更ハンドル603を非表示にする。
S902では、制御部203は、編集ウィンドウ604上で編集された後の文字を、編集ウィンドウ用文字サイズで編集ウィンドウ604に表示する。
S903では、制御部203は、文字編集後にユーザが受付部205に対して行った操作が、別の認識セルの選択か、Applyボタンのクリックか、OKボタンのクリックか、Cancelボタンのクリックか判定する。Cancelボタンのクリックであると判定した場合には、制御部203は、選択されている認識セルの選択状態を解除して図9の処理を終了する。なお、これ以降では説明を省略するが、選択状態が解除された認識セルは、上述の通り、極太線枠状態から、他の認識セルと同じ太線枠状態に戻ることになる。
それ以外であると判定した場合には、制御部203は、選択されている認識セル内部(即ち、スキャン画像における認識セルの内部)の色を全て削除する(S904)。ここで、色を削除するとは、認識セル内の画素の色情報を既定の色情報に置換するという意味である。本実施例では、規定の色情報が白であるものとして説明を続けるが、白に限るものではない。このS904における具体的な処理は、図20−図22を用いて後述する。
その上で制御部203は、編集後の文字をその認識セル内部にスキャン画像用文字サイズで配置する(S905.1。図11で詳細に説明する)。そして、制御部203は、編集後のスキャン画像(即ち、認識セル内部の削除、及び、編集後の文字の配置が完了した画像)を保存部202に保存すると共に、表示部204で表示されているスキャン画像にこの編集後のスキャン画像を置き換える(S905.2)。そうすることにより、この編集後のスキャン画像は、各認識セルの外接矩形に太線枠が付けられた状態で表示されることになる。また、現在選択されている認識セルの外接矩形については極太線枠状態で表示されたままとなる。
さらに、上記操作がOKボタンのクリックであれば(S906)、制御部203は、選択されている認識セルの選択状態を解除した上で図9の処理を終了する。また、上記操作が別の認識セルの選択であれば(S906)、制御部203は、選択されている認識セルの選択状態を解除した上でS802に処理を進める。また、上記操作がApplyボタン607のクリックであれば(S906)、制御部203は、S905.1で配置された編集後の文字の外接矩形の四頂点に文字位置変更ハンドルを表示する(S907)。
ユーザがもし編集後の文字の位置を変更したい場合には、この文字位置変更ハンドルの位置を動かす操作を受付部205に対して行うことになる。すると、その操作に応じた文字位置変更を制御部203は行い、さらに、その文字位置変更後の画像を、保存部202で保存されている編集後のスキャン画像と置き換える。さらに、表示中の編集後のスキャン画像とも置き換える。そうすることにより、文字位置変更後の画像が、編集後のスキャン画像として保存、表示されることになる(S908)。一方、文字位置を変更する必要が無い場合には、文字位置変更ハンドルに対する操作は行われない。その場合、S908では何も行われず、スキップされることになる。
その後、ユーザは、別の認識セルを選択するか、OKボタンをクリックするか、Cancelボタンをクリックすることになる。もし別の認識セルの選択がされたことを受付部205が受付けると(S909)、制御部203は、選択されている認識セルの選択状態を解除してS802に処理を進める。OKボタンがクリックされたことを受付部205が受付けると(S909)、制御部203は、選択されている認識セルの選択状態を解除して図9の処理を終了する。また、もしCancelボタンがクリックされたことを受付部205が受付けると(S909)、制御部203は、選択されている認識セルの内部を元の状態に戻す(即ち、黒画素塊の削除前の状態に戻す)。その上で制御部203は、選択されている認識セルの選択状態を解除して図9の処理を終了する(S910)。
図9の処理が終了した後は、ユーザからの他の認識セルの選択を待つ状態となる。また、ユーザから受付部205に対して別の装置への編集後のスキャン画像の送信が指示された場合には、制御部203は、その選択待ち状態を解除する。その上で、制御部203は、保存部202に保存されている編集後のスキャン画像を送受信部201に別の装置へ送信させる。その別の装置が仮に複写機100だったとすると、複写機100は、編集後のスキャン画像を送受信部102により受信し、ユーザからの指示によっては編集後のスキャン画像をプリンタ103により印刷することになる。
以上の処理を行った場合、別の装置に送信される編集後のスキャン画像は、(選択されていた)認識セル内部の削除、及び、編集後の文字の配置が完了した画像となる。しかし、送信される画像は、必ずしもこれに限られるものではない。例えば、元のスキャン画像(2値化前のスキャン画像)と、認識セル内部の削除命令と、編集後の文字の配置命令とを含むファイルであっても良い。そのようなファイルを別の装置が受信した場合には、その別の装置の側で元のスキャン画像から認識セル内部の削除、及び、編集後の文字の配置が行われることになる。
<図10の説明>
上述の通り、ユーザが受付部205に対して行った操作が認識セル位置変更ハンドル603に対する操作であれば、制御部203は、S804(図10のS1001)に処理を進める。
S1001では、制御部203は、その操作に合わせて、認識セルの位置を変更し、変更後の位置の認識セルの四辺を極太線枠状態にして表示部204に表示する。この際、変更前の位置の認識セルの四辺の極太線枠状態は解除され、通常の状態(太線枠も極太線枠も付いていない状態)に戻ることになる。また、認識セル位置変更ハンドル603も同様に、変更前の位置の認識セルの四頂点からは解除され、変更後の位置の認識セルの四頂点に表示されることになる。なお、認識セルの位置を変更するとは、保存部202に保存されている認識セルの位置情報を変更することを意味する。
その後、制御部203は、編集ウィンドウ604を介した文字編集が行われるまで待機し、文字編集が行われると制御部203は、S901に処理を進める。
このように、文字編集が行われる前に認識セルの位置を変更可能とすることによって、S904で内部が削除される対象となる認識セルの位置を変更することができる。これにより、削除されるべき部位が削除され、かつ、削除されるべきでない部位が削除されずにすむこととなる。
<図11の説明>
図11を用いて、S905.1の処理の詳細を説明する。
S1101で、制御部203は、選択されている認識セルの位置情報、および当該認識セルに関連付けられた文字領域の位置情報を保存部202から取得する。
次にS1102で、制御部203は基準線の設定を行う。
認識セルの左上座標を(X1,Y1)、右下座標を(X2,Y2)、文字領域の左上座標を(x1,y1)、右下座標を(x2,y2)とする。
制御部203は、基準線の設定を行うために、まず、選択されている認識セルにおける文字領域の左右の余白を計算する。
左側の余白 x1−X1
右側の余白 X2−x2
(左側の余白)≧(右側の余白)ならば、基準線は文字領域の右辺、すなわち、(x2,y2)、(x2,y2)を結ぶ直線に設定される。
(左側の余白)<(右側の余白)ならば、基準線は文字領域の左辺、すなわち、(x1,y1)、(x1,y2)を結ぶ直線に設定される。
S1103で、制御部203は、選択されている認識セル内部の設定されている基準線に合わせて、編集後の文字を配置する。
この時、配置される文字のサイズとして、スキャン画像用文字サイズのデフォルト値が用いられるものとするが、下記のようにして決定されたサイズを用いても良い。たとえば、選択されている認識セル内部に存在していたオリジナル文字の幅が4文字で100ドットだった場合に、1文字あたりのサイズは、25ドットと推定される。この認識セル内部に編集後の文字を違和感なく配置するためには、編集後の文字も1文字あたり25ドット程度であるのが好ましい。このことから、標準的な文字のサイズが25ドットとなるようなポイント数を計算し、そのポイント数を、配置される文字のサイズとして用いることも可能である。また、そのように決定された文字サイズをユーザが手動で変更できるような構成としても良い。さらには、配置される文字の色やフォント、スタイル(標準、斜体、太字)をユーザが手動で変更できるような構成としても良い。
ここで、編集後の文字の外接矩形の高さがH、幅がWだったとする。また、文字領域の左上座標が(x1,y1)、右下座標が(x2,y2)であり、S1102で求めた基準線が文字領域の右辺だったとする。
この場合、編集後の文字の外接矩形を配置する座標は、Windows(登録商標)の場合(x座標は右に行くほど大きくなり、y座標は下に行くほど大きくなる)、
左上座標(x2−W,y2−H)
右下座標(x2,y2)
となる。
もし、基準線が左辺の場合には、編集後の文字の外接矩形の左辺を基準線(文字領域の左辺)に合わせるため、編集後の文字を配置する座標は、
左上座標(x1,y2−H)
右下座標(x1+W,y2)
となる。
なお、これらの例では、編集後の文字の高さ方向(Y方向)の位置は、オリジナル文字の配置されていた文字領域の下辺の位置を基準とした。しかしながら、この位置ではなく、編集後の文字の高さ方向の中心と、オリジナル文字の配置されていた文字領域の高さ方向の中心が揃うように編集後の文字の位置を決めても構わない。
<S1001の詳細(認識セルの結合と分割)>
図4において、認識セル406と認識セル407は、本来は単一のセルであるにも関わらず、ノイズの関係で別々の認識セルとして特定されている。認識セル406と認識セル407を結合して、単一の認識セルとする手段について、図15を用いて説明する。なお図15は、図10のS1001の認識セル位置変更の処理の詳細を示す。
まず、ユーザが受付部205を介して、認識セル位置変更ハンドルをドラッグして、選択中の認識セルの位置を変更する(S1501)。本実施形態では、認識セルの四頂点に表示されている四つのハンドルのうちの一つのハンドルを掴んで、その一つのハンドルの位置の変更のみを行うため、認識セルのサイズも自動的に変更されることになる。
S1502では、制御部203が、変更した位置が、選択中の認識セルの縮小にあたるか、拡大にあたるか、どちらにもあたらないかを判定する。具体的な判定方法を以下に述べる。位置を変更する前の認識セルの幅をW1、高さをH1とし、位置を変更した後の認識セルの幅をW2、高さをH2とする。W1<W2かつH1<H2の場合は、制御部203が認識セルの拡大と判定する。W1>W2かつH1>H2の場合は、制御部203が認識セルの拡大と判定する。それ以外の場合は、制御部203が、どちらにもあたらないと判定する。
どちらにもあたらないと判定された場合は、制御部203は処理を終了する。
認識セルの拡大と判定した場合、制御部203は、拡大後の認識セルが、別の認識セルを包含するかどうかを判定する(S1503)。別の認識セルを包含しないと判定した場合は、制御部203は認識セルの結合は行わず、処理を終了する。
一方、S1503で別の認識セルを包含すると判定した場合は、制御部203は、拡大後の認識セルと、包含した当該別の認識セルを結合する(S1505)。
認識セルの結合ステップ(S1505)では、制御部203は、結合する前の各々の認識セルの座標を元に、両方の認識セルを含む最小の矩形を結合後の認識セルと設定する。そして、その設定した結合後の認識セルの位置情報を保存部202に保存する。例えば、結合する2つの認識セルの左上座標をそれぞれ(Xa,Ya)、(Xb,Yb)とし、仮にXa>Xb、Ya<Ybとすると、結合後の認識セルの左上座標は(Xb、Ya)になる。左下、右上、右下座標についても同様の考え方で決定する。また、結合する認識セルが3個以上の場合でも同様である。なお、結合後の認識セルの位置情報が保存されることに伴い、拡大後の認識セルの位置情報及び上記別の認識セルの位置情報は保存部202から削除される。
次に、制御部203は、各々の認識セルに含まれる文字領域を結合する(S1506)。
具体的には、制御部203が、結合後の認識セルに含まれている文字領域を検出する。検出される文字領域は、拡大前の認識セルに含まれている文字領域と、上記別の認識セルに含まれている文字領域となる。その上で、検出した文字領域同士を結合する。結合後の文字領域は、結合前の全ての文字領域を包含する最小の矩形となる。この最小の矩形の位置情報を結合後の文字領域の位置情報として、結合後の認識セルと関連付けて保存部202に保存する。その代わりに、拡大前の認識セルに含まれていた文字領域の位置情報と、上記別の認識セルに含まれていた文字領域の位置情報を保存部202から削除する。
次に制御部203は、認識文字を結合する(S1507)。具体的には、制御部203は結合後の文字領域に含まれる複数の認識文字同士を結合することにより、1つの認識文字を新規に作成する。代わりに、元の複数の認識文字は削除する。新規に作成した認識文字は、制御部203が結合後の文字領域に関連付ける。なお、認識文字の結合では、単純に複数の認識文字を繋げるだけでもよいし、認識文字の間にスペースを挿入してもよい。
次に制御部203は、結合前の認識セルの四頂点から認識セル位置変更ハンドルを消して、結合後の認識セルの四頂点に認識セル位置変更ハンドルを表示部204に表示する(S1508)。つまり、結合後の認識セルが選択された状態にする。
また、制御部203は、結合後の認識文字を、編集ウィンドウ604における文字入力欄605に表示する(S1509)。
以上の認識セルの結合手段について、図12、図13、図14を用いて、具体例を示す。
図12はノイズにより別々の認識セルとして特定された認識セル406と認識セル407のうち、認識セル406がユーザにより選択された際の表示画面である。認識セル406と認識セル407は別々の認識セルとして特定されているため、文字入力欄1201には認識文字として「Gym Bag」ではなく「Gym」が表示されている。
認識セル406と認識セル407を結合したい場合、まずユーザは認識セル406の認識セル位置変更ハンドル603をドラッグして、認識セル407を全て含むまで拡大する(図13)。なお、認識セルをドラッグして拡大する際には、認識セルを拡大している最中であることが分かるよう、認識セルの枠の表示を変更するのが好ましい。例えば1301のように、認識セルを拡大している間は、認識セルの枠を点線で表示する。
ユーザが認識セル位置変更ハンドル603のドラッグを完了すると、制御部203は認識セル406と認識セル407を結合して、結合後の認識セル1401を表示部204に表示する(図14)。また、文字領域の結合も行う。そして、S1507で認識文字の結合を行い、結合後の認識文字「Gym Bag」を認識文字として文字入力欄1402に表示する。
次に、認識セルの分割について説明する。
図16において、認識セル403は、本来は「Description」、「Quantity」、「Unit Price」、「Amount」の認識文字を含む4つの認識セルとなるべきである。しかし、スキャン画像の罫線が掠れているため、1つの認識セルとして特定されている。認識セル403を分割して、複数の認識セルとする手段について、S1511−S1516を用いて説明する。
S1502で、制御部203が認識セルの縮小と判断した場合、次に制御部203は、選択中の認識セルに含まれていた文字領域の全てが、縮小後の認識セル内でも含まれているかどうかを判定する(S1511)。全て含まれていると判定した場合は、制御部203は選択中の認識セルの分割は行わず、処理を終了する。
一方、S1511で縮小後の認識セルに含まれない文字領域があると判定した場合は、制御部203は、縮小前の認識セルを分割する(S1512)。即ち、縮小前の認識セルに含まれていた文字領域の一部又は全てが、縮小後の認識セル内に含まれていない場合には、縮小前の認識セルを分割する。縮小前の認識セルの分割とは、具体的には、制御部203は、縮小後の認識セルとは別に、新規に認識セルを作成することを意味する。
縮小後の認識セルと、上記新規に作成する認識セルの位置情報は、縮小後の認識セルの位置情報と縮小前の認識セルの位置情報とを元に制御部203が決定する。例えば、縮小前の認識セルが、左上座標(Xa1,Ya1)、右下座標(Xa2,Ya2)とする。ユーザが右下の認識セル位置変更ハンドルをドラッグして認識セルを左方向に縮小して、その結果右下座標が(Xa2−W,Ya2)になったとする(Wは縮小幅)。この場合、制御部203は「X座標=Xa2−W」の位置で縮小前の認識セルを分割すると判断する。分割した結果、縮小後の認識セルの座標は、左上座標(Xa1,Ya1)右下座標(Xa2−W,Ya2)となり、新規に作成した認識セルの座標は、左上座標(Xa2−W,Ya1)右下座標(Xa2,Ya2)となる。
次に制御部203は、文字領域の分割を行う(S1513)。具体的には、まず縮小後の認識セル内に包含されていない文字領域と、縮小後の認識セルとの関連付けを解除し、代わりに、その文字領域を、新規に作成した認識セルに新たに関連付ける。また、認識セルを分割した位置の上に文字領域が重なっている場合は、その分割した位置で文字領域も分割する。例えば、左上座標(Xa3,Ya3)、右下座標(Xa4,Ya4)の文字領域を、X座標がXa5の位置で分割するとする。この場合は、左上座標(Xa3,Ya3)、右下座標(Xa5,Ya4)の文字領域と、左上座標(Xa5,Ya4)、右下座標(Xa4,Ya4)の文字領域の、2つの文字領域を作成する。そして、元の文字領域は制御部203が削除する。その後、制御部203は、新規に作成した2つの文字領域を、文字領域を包含している認識セルにそれぞれ関連付ける。
次に制御部203は、認識文字の分割を行う(S1513)。上記分割された文字領域に含まれるように認識文字を分割して、各文字領域に関連付ける。
次に制御部203は、分割後の認識セルのうち、もっとも左上側にある認識セルの四頂点に対して認識セル位置変更ハンドルを表示部204に表示する(S1515)。つまり、分割後に生成された複数の認識セルのうち、最も左上側に位置する認識セルを選択状態にする。また、制御部203は、分割後の認識文字を、編集ウィンドウ604における文字入力欄605に表示する(S1516)。
以上の認識セルの分割手段について、図16、図17、図18を用いて、具体例を示す。図16では認識セル403が選択されている状態の表示画面である。認識セル403は本来は複数の認識セルとなるべきだが、スキャン画像の罫線が掠れているため、単一の認識セルとして特定されている。単一の認識セルとして特定されているため、文字入力欄1601には、認識セル403内の認識文字が全て結合されて表示されている。
認識セル403を分割したい場合、まずユーザは認識セル403の認識セル位置変更ハンドル603をドラッグして、認識セルを分割したい位置まで認識セルを縮小する(図15)。
図17では、縮小後の認識セルの中には、認識文字「Description」の文字領域のみが含まれていて、「Quantity」、「Unit Price」、「Amount」は含まれていない。そのためS1903で、制御部203は、縮小後の認識セルに包含していない文字領域があると判定し、認識セルの分割をおこなう。
認識セルを分割したあと、制御部203は、分割された各々の認識セルのうち、もっとも左上に位置する認識セルを選択状態にする(図18)。また、制御部203は、分割後の認識セルに含まれる認識文字「Description」を文字入力欄1802に表示する。
<S904の詳細(図20−図23)>
図20−23を用いて、S904の詳細を説明する。
スキャン画像には、認識セルに対して、対応する実際のセルが1つ存在する。以降、スキャン画像の実際のセルをセルと呼ぶ。
保存部202で保存されている認識セルの位置情報は、外接矩形の座標情報である。スキャン画像の傾きや歪みにより、認識セルの外接矩形の座標情報(2303、2304)とセルの罫線(2301)の位置は完全には一致しない。認識セルの外接矩形の内側にセルの罫線の一部が含まれていた場合、認識セル内部をすべて削除すると、セルの罫線の一部を削除してしまう場合がある。セルの罫線を削除することなく、認識セル内部のセルの罫線以外を削除するステップを以下に説明する。
図20で2014はセルである。セル2014は、四点(2010−2013)を繋ぐ四本の罫線からなる領域である。2001は、セル2014に対応する認識セルである。セル2014に内接する直線をセル内接直線と呼ぶ。セル内接直線は1つのセルに対して、上下左右の四本存在する(2002−2005)。
認識セル2001に対応するセルのセル内接直線を検出するための領域を、セル内接直線検出領域と呼ぶ。1つの認識セルに対して4つのセル内接直線検出領域がある(2006−2009)。
S2201で、制御部203は、選択されている認識セル2001の位置情報を保存部202から取得する。
S2202で、制御部203は、認識セル2001の上下左右計4つのセル内接直線検出領域(2006−2009)を設定する。
上部のセル内接直線検出領域2006は、認識セル2001の上部の辺を基準として、上下にあらかじめ決められた値分(例えば20画素・・・0.50cm)広げた領域である。下部のセル内接直線検出領域2007上部と同様の方法で設定される。左部のセル内接直線検出領域2008は、認識セルの左部の辺を基準として、左右にあらかじめ決められた値分広げた領域である。右部のセル内接直線検出領域2009は左部と同様の方法で設定される。
S2203で、制御部203は、上下左右のセル内接直線検出領域(2006−2009)に対して、直線検出を行う。直線検出はハフ変換を用いる。
上部のセル内接直線検出領域2006に対するハフ変換による直線検出の方法を具体的に説明する。
まず、制御部203は、上部のセル内接直線検出領域2006に対して、エッジ検出を行う。エッジ検出により、上下左右の画素との濃度の差が閾値以上のエッジ画素と、それ以外の非エッジ画素に分類される。図21の2101は上部のセル内接直線検出領域2006に対してエッジ検出を行い、エッジ画素を黒画素として表示した図である。
2102は上部のセル内接直線検出領域2006内のエッジ画素の1つであり、エッジ画素の座標を(Xb1,Yb1)と表す。(Xb1,Yb1)を通る直線は式1で表現される。ρは原点から直線に垂線を引いた時の長さであり、θはx軸とのなす角度である。また、ρの小数点第一位を四捨五入し、整数化したものをρiとする。
ρ=Xb1cosθ+Yb1sinθ・・・式1
この式1が表す直線を図19に図示する。
制御部203は、θを一定の変化量(たとえば、1度ごと)で0度から360度まで変化させ、それぞれのθに対するρの値を計算することで、(Xb1,Yb1)を通る直線の(ρ,θ)の組み合わせを360個求める。制御部203は、上部のセル内接直線検出領域内2006で、この処理をエッジ画素の全てに対して行うことにより、エッジ画素数×360個の(ρ,θ)の組み合わせを求める。仮にエッジ画素数が100個あるとすると、3万6000個の(ρ,θ)の組み合わせが求まるわけである。その中には、もちろん重複があり、(ρ1,θ1)の組み合わせは20回あった、(ρ2,θ2)の組み合わせは30回あったというふうに重複回数が求まる。つまり、(ρi,θi)の組み合わせの出現頻度が求まることになる。
この出現頻度を閾値と比較し、その閾値を超えた(ρi,θi)の組み合わせを直線を表す数式とみなす。
この閾値は、上部もしくは下部のセル内接直線検出領域の場合、セル内接直線検出領域の幅にあらかじめ定められた定数(例えば、0.7)を掛けた値とする。左部もしくは右部のセル内接直線検出領域の場合、セル内接直線検出領域の高さにあらかじめ定められた定数を掛けた値とする。その結果、図21の例では、2101に対して直線検出を行った結果、2103と2104の二本の直線が検出される。2103と2104は検出された直線を黒画素で示した線である。制御部203は、下部、左部、右部に関しても同様の方法でそれぞれ直線検出を行う。
S2204で、制御部203は、S2203における直線検出結果を基にセル内接直線を特定する。
例えば、上部のセル内接直線検出領域の場合、上部のセル内接直線検出領域2006から2本の直線が検出されている。この2本の直線の中から、認識セルを基準として最も内側、すなわち最下部の直線を上部のセル内接直線として検出する。
数学的には、上部のセル内接直線検出領域2006の中央のx座標2105における、検出された各直線(2103、2014)のy座標の値を算出し、y座標の値が最も大きい直線をセル内接直線として特定することになる。図21の例では、y座標の値が最も大きい2014がセル内接直線として特定される。
また、制御部203は上部のセル内接直線検出領域に1つも直線が検出されなかった場合、認識セルの上部の辺をセル内接直線として特定する。もちろん、1本のみ直線が検出された場合、その直線をセル内接直線として特定する。
制御部203は、下部、左部、右部に関しても同様にそれぞれ最も内側の直線をセル内接直線として検出する。
S2205で、制御部203は、スキャン画像に対して上下左右の四本のセル内接直線に囲まれた領域内部の色情報を削除する。具体的には、領域内部の画素の色情報を白に置換する。
この処理により、スキャン画像のセルの罫線を削除することなく、認識セル内部の罫線以外の色を削除することができる。
<第2の実施形態>
前記第1の実施形態では、認識セルを拡大することで認識セルを結合する方法について述べた。これに対して本実施例では、認識セルをドラッグして認識セルを結合する方法について述べる。
<図24の説明>
まず、ユーザは認識セルをドラッグして、認識セルの位置を変更する(S2401)。
次に、制御部203は、位置変更後の認識セルに、他の認識セルが重なっているかどうかを判定する(S2402)。具体的には、制御部203は、まず位置変更後の認識セルと、他の認識セルの両方を含む領域の面積Sを求める。次に制御部203は、面積Sが、各認識セルの面積のN%より大きいかどうかを判定する。具体的には、位置変更後の認識セルの面積をS1、他の認識セルの面積をS2として、
S1×(N÷100)<S
S2×(N÷100)<S
のいずれかを満たすかどうかを制御部203は判定する。例えば、N=80の場合、面積Sの大きさが、各認識セルのいずれかの面積の80%よりも大きいことを示す。つまり、位置変更後の認識セルと、他の認識セルの両方を含む領域がある程度大きければ、2つの認識セルは重なっていると判定する。
なお、上記認識セルの重なりを判定する処理は一例であり、他の判定方法でもかまわない。
S2402で認識セルが重なっていないと判定された場合は、処理を終了する。
一方、S2402で認識セルが重なっていると判定された場合は、制御部203は、重なっていると判定した認識セルを結合する(S2403)。認識セルの結合は、具体的には、まず制御部203が、重なった認識セルのうちの1つについて位置を変更する。その後、もう1つの認識セルの位置を保存部202から削除する。
上記、認識セルの位置を変更した後の認識セルの座標は、前記S1505と同様の方法で制御部203が決定する。つまり、結合後の認識セルは、結合する前の全ての認識セルを包含する最小の矩形となる。
その後はS1505の処理に続き、最終的にユーザは認識セルを結合することができる。
<図25の説明>
図25は、図12の認識セル406が選択状態にある表示画面から、認識セル406の位置を変更している表示画面を示す図である。ユーザは認識セル407の認識セル位置変更ハンドル2501をマウス601でドラッグし、認識セル407に重ねている。図24の処理に従い、制御部203は認識セル406と認識セル407を結合する。認識セルを結合したあとは、図14で示した表示画面になる。
<第3の実施形態>
本実施形態では、前記第1、第2の実施形態とは別の手段で認識セルを結合する方法について述べる。本実施例は受付部205と表示部204がタッチパネルであることを想定している。
<図26の説明>
まず、ユーザは、表示部204に対してピンチインの操作をおこなう(S2601)。ピンチインとは、ユーザが2本の指で表示部204の任意の場所をつまむように動かす操作のことであり、一般的には表示画面を縮小させるための操作である。
次に制御部203は、認識セルが選択されている状態かどうかを判定する(S2602)。認識セルが選択されていない場合は、制御部203は、表示画面を縮小する操作だと判断し、表示画面を縮小する(S2603)。
一方、認識セルが選択されている状態だと判定された場合は、制御部203は、ユーザがピンチインでタッチした2つの位置の両方に、認識セルがあるかどうかを判定する(S2604)。タッチした2つの位置に認識セルがないと判定された場合は処理を終了する。
タッチした2つの位置の両方に認識セルがあると判定された場合は、制御部203は、前記2つの認識セルを結合する(S2605)。具体的には、まず制御部203が、タッチした2つの位置にある認識セルのうちの1つについて、位置を変更する。その後、制御部203は、もう1つの認識セルの位置を保存部202から削除する。
上記、認識セルの位置を変更した後の認識セルの座標は、前記S1505と同様の方法で制御部203が決定する。つまり、結合後の認識セルは、結合する前の全ての認識セルを包含する最小の矩形となる。
その後はS1505の処理に続き、最終的にユーザは認識セルを結合することができる。
<図27の説明>
図27は、図12の認識セル406が選択状態にある表示画面から、ユーザが表示部204をピンチインしているところを示す図である。図27では、認識セル406が選択された状態である。ユーザは2本の指2701で認識セル406と認識セル407をタッチして、ピンチインの操作を行う。この操作により、制御部203は認識セル406と認識セル407を結合する。認識セルを結合したあとは、図14で示した表示画面になる。
<第4の実施形態>
第1の実施形態では、認識セルを拡大して、別の認識セルを包含する場合に認識セルを結合することについて述べた。それに対して本実施例では、認識セルを拡大して、別の認識セルを包含しなくても、ある程度認識セルが重なっていれば認識セルを結合する手段について述べる。
<図28、図29の説明>
図28、図29は本実施例で解決する課題を説明するための図である。
図28の、2801はスキャン画像内のセルの1つを示す。セル2801は少し傾いており、これはスキャナ101で文書をスキャンした際に、スキャン画像が傾いてしまったことを想定している。なお、セル2801は、分かりやすくするためにセルが大きく傾いている図になっているが、実際には数dotの傾きであり、視覚では傾いていることが判断できない場合も想定している。また、セル2801にはノイズ2807がある。
制御部203がスキャン画像の解析を行うと、ノイズ2807によりセルが分断され、認識セル2802と認識セル2803が特定される。このとき、セル2801は傾いているため、認識セル2802と認識セル2803の高さがそろっていない。なお、この図では高さがそろっていないことが視覚で分かるよう記載しているが、実際には最低1dotの違いであり、視覚では判断できない場合も想定している。
次にユーザが認識セル2802と認識セル2803を結合するとする。実施例1で説明したように、ユーザは、認識セル2802の認識セル位置変更ハンドル2804をドラッグして拡大し、認識セル2803を包含しようとする。しかし、認識セル2802と認識セル2803の高さがそろっていないため、認識セル2803を左方向に拡大するだけでは、認識セル2803を包含できていない。そのため図15のS1503で、別の認識セルを包含していないと判定され、制御部203は認識セルの結合をおこなわない。図では高さがそろっていないことが視覚で判断できるよう記載しているが、実際には高さのズレは最低1dotの違いでしかなく、視覚では高さのズレが分からない。視覚では高さのズレが分からないため、ユーザは認識セルを包含したつもりでいるため、なぜ認識セルが結合されないのかが分からない。また、図28の場合、認識セル2802を左方向ではなく左上方向に拡大すれば包含できるが、視覚では高さのズレが分からないため、ユーザはその操作に気づかない場合がある。
次に図29の説明をする。2901はスキャン画像内のセルの1つを示す。セル2901はセル2801と違い、傾いてはいない。セル2901はノイズ2905により、認識セル2902と認識セル2903が特定される。この時、認識セル2902と認識セル2903の高さがそろっていない。高さがそろっていないのは、制御部203がスキャン画像を解析して認識セルを特定する際の誤差によるものである。制御部203が、黒画素塊を検出して罫線を特定する際に、スキャン画像のわずかな掠れなどにより、誤差が発生して、結果的に認識セル2902と認識セル2903の高さに違いが出ている。図29では視覚で高さの違いが分かるよう記載しているが、実際には1dotの違いであり、視覚では判断できない。
この場合も図28で説明したのと同様に、認識セル2902を拡大しても認識セル2903を包含することができず、認識セルの結合ができない。
<図30の説明>
図30では、図28、図29で説明した本実施例の課題を解決する。
まず、S1503で、拡大後セルが別のセルを包含していないと判定された場合に、制御部203は、拡大後の認識セルが、別のセルと一部重なっているかどうかを判定する(S3001)。重なっていないと判定した場合は、認識セルの結合は行わず、処理を終了する。
S3001で一部重なっていると判定された場合は、制御部203は、認識セルが重なっている領域の面積Sを求める(S3002)。
次に制御部203は、面積Sが、各認識セルの面積のN%より大きいかどうかを判定する(S3003)。具体的には、拡大前の認識セルの面積をS1、別の認識セルの面積をS2として、
S1×(N÷100)<S
S2×(N÷100)<S
のいずれかを満たすかどうかを判定する。例えば、N=80の場合、面積Sの大きさが、各認識セルのいずれかの面積の80%よりも大きいことを示す。
S3003で大きくないと判定された場合は、認識セルの結合は行わず、処理を終了する。
一方、S3003で大きいと判定した場合は、S3003に進み、認識セルを結合する。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。

Claims (9)

  1. 画像と、前記画像を解析することにより特定された複数の領域とを表示するように制御する第1表示制御手段と、
    前記表示された複数の領域の中から、ユーザの指示に基づいて第1の領域を選択する選択手段と、
    前記選択手段で選択された前記第1の領域の頂点の位置を変更するための指示を前記ユーザから受付ける受付手段と、
    前記指示に応じて頂点の位置が変更された前記第1の領域が、前記表示された複数の領域の中の第2の領域を含んでいるか否かを判定し、前記指示に応じて頂点の位置が変更された前記第1の領域が、前記表示された複数の領域の中の第2の領域を含んでいると判定したことに従って、前記第1の領域と前記第2の領域とを結合する結合手段と
    を有することを特徴とする情報処理装置。
  2. 前記第1の領域と前記第2の領域はそれぞれ文字領域を含み、
    前記指示に応じて頂点の位置が変更された前記第1の領域が前記第2の領域を含む場合、前記結合手段は、前記第1の領域と前記第2の領域とを結合し、さらに、前記第1の領域に含まれる文字領域と前記第2の領域に含まれる文字領域とを結合することを特徴とする請求項1に記載の情報処理装置。
  3. 前記第1の領域と前記第2の領域それぞれに含まれる文字領域に対して文字認識処理を行うことによって、各文字領域に対応する文字認識結果の認識文字を得る文字認識手段を、さらに有し、
    前記指示に応じて頂点の位置が変更された前記第1の領域が前記第2の領域を含む場合、前記結合手段は、前記第1の領域と前記第2の領域とを結合し、さらに、前記第1の領域に含まれる文字領域と前記第2の領域に含まれる文字領域とを結合し、さらに、前記第1の領域に含まれる文字領域に対応する文字認識結果の認識文字と前記第2の領域に含まれる文字領域に対応する文字認識結果の認識文字とを結合することを特徴とする請求項2に記載の情報処理装置。
  4. 前記選択手段で第1の領域が選択された場合、前記第1の領域の頂点の位置を変更するためのハンドルを前記第1の領域の各頂点に対応付けて更に表示するように制御する第2表示制御手段を、さらに有し、
    前記受付手段は、前記ユーザによる前記ハンドルの操作に基づいて、前記選択手段で選択された前記第1の領域の頂点の位置を変更するための指示を受付けることを特徴とする請求項1乃至3の何れか1項に記載の情報処理装置。
  5. 前記第1表示制御手段により表示される前記複数の領域は、表領域を構成する複数のセルそれぞれに含まれる白画素塊の外接矩形であることを特徴とする請求項1乃至4の何れか1項に記載の情報処理装置。
  6. 前記指示に応じて頂点の位置が変更された前記第1の領域が、前記第2の領域を含まない場合、前記結合手段は、前記第1の領域と前記第2の領域とを結合しないことを特徴とする請求項1乃至5の何れか1項に記載の情報処理装置。
  7. 前記指示に応じた頂点の位置の変更により前記第1の領域が縮小される場合、前記位置の変更が為される前の前記第1の領域に含まれ且つ前記位置の変更が為された後の当該縮小された前記第1の領域に含まれない新たな第3の領域を作成する作成手段を、さらに有することを特徴とする請求項1乃至6の何れか1項に記載の情報処理装置。
  8. コンピュータを、請求項1乃至の何れか1項に記載の情報処理装置の各手段として機能させるためのプログラム。
  9. 情報処理装置の表示制御手段が、画像と、前記画像を解析することにより特定された複数の領域とを表示するように制御する表示制御工程と、
    前記情報処理装置の選択手段が、前記表示された複数の領域の中から、ユーザの指示に基づいて第1の領域を選択する選択工程と、
    前記情報処理装置の受付手段が、前記選択工程で選択された前記第1の領域の頂点の位置を変更するための指示を前記ユーザから受付ける受付工程と、
    前記指示に応じて頂点の位置が変更された前記第1の領域が、前記表示された複数の領域の中の第2の領域を含んでいるか否かを判定し、前記指示に応じて頂点の位置が変更された前記第1の領域が、前記表示された複数の領域の中の第2の領域を含んでいると判定したことに従って、前記情報処理装置の結合手段が、前記第1の領域と前記第2の領域とを結合する結合工程とを有することを特徴とする情報処理方法。
JP2014139867A 2014-07-07 2014-07-07 情報処理装置、情報処理方法、プログラム Active JP6489768B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014139867A JP6489768B2 (ja) 2014-07-07 2014-07-07 情報処理装置、情報処理方法、プログラム
US14/789,205 US10607381B2 (en) 2014-07-07 2015-07-01 Information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014139867A JP6489768B2 (ja) 2014-07-07 2014-07-07 情報処理装置、情報処理方法、プログラム

Publications (3)

Publication Number Publication Date
JP2016019099A JP2016019099A (ja) 2016-02-01
JP2016019099A5 JP2016019099A5 (ja) 2017-08-17
JP6489768B2 true JP6489768B2 (ja) 2019-03-27

Family

ID=55234036

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014139867A Active JP6489768B2 (ja) 2014-07-07 2014-07-07 情報処理装置、情報処理方法、プログラム

Country Status (1)

Country Link
JP (1) JP6489768B2 (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08161306A (ja) * 1994-12-05 1996-06-21 Sharp Corp 表編集装置
JPH0916566A (ja) * 1995-06-29 1997-01-17 Canon Inc 文書処理装置及び方法
JP4235286B2 (ja) * 1998-09-11 2009-03-11 キヤノン株式会社 表認識方法及び装置
JP2001067425A (ja) * 1999-08-25 2001-03-16 Casio Comput Co Ltd 表データ処理装置、及び記憶媒体
JP4973063B2 (ja) * 2006-08-14 2012-07-11 富士通株式会社 表データ処理方法及び装置
JP2014115894A (ja) * 2012-12-11 2014-06-26 Canon Inc 表示装置

Also Published As

Publication number Publication date
JP2016019099A (ja) 2016-02-01

Similar Documents

Publication Publication Date Title
EP2966578B1 (en) Information processing apparatus, information processing method, program, and storage medium
JP6463066B2 (ja) 情報処理装置、情報処理方法、プログラム
US10607381B2 (en) Information processing apparatus
US10222971B2 (en) Display apparatus, method, and storage medium
US20030179235A1 (en) Method and system for overloading loop selection commands in a system for selecting and arranging visible material in document images
JP5882779B2 (ja) 画像処理装置、画像処理装置の制御方法及びプログラム
US9843691B2 (en) Image display device, image display system, image display method, and computer-readable storage medium for computer program
CN107133615B (zh) 信息处理设备和信息处理方法
US20160349968A1 (en) Methods of Content-Based Image Area Selection
JP5981175B2 (ja) 図面表示装置、及び図面表示プログラム
US11132122B2 (en) Handwriting input apparatus, handwriting input method, and non-transitory recording medium
JP6053291B2 (ja) 画像処理装置、画像処理装置の制御方法、及びプログラム
JP6241320B2 (ja) 画像処理装置、画像処理方法、画像処理システムおよびプログラム
US9195915B2 (en) Printing apparatus, method of changing layout, and storage medium
JP6489768B2 (ja) 情報処理装置、情報処理方法、プログラム
RU2458396C1 (ru) Способ редактирования статических цифровых комбинированных изображений, включающих в себя изображения нескольких объектов
JP6452329B2 (ja) 情報処理装置、情報処理方法、プログラム
JP6370162B2 (ja) 情報処理装置、情報処理方法、プログラム
US11588945B2 (en) Data input support apparatus that displays a window with an item value display area, an overview image display area, and an enlarged image display area
US20130208313A1 (en) Image processing apparatus, method for controlling image processing apparatus, and program
JP7329957B2 (ja) 仮想オブジェクト表示装置、及びプログラム
KR100769677B1 (ko) 화상형성장치 및 시스템의 제어방법
JP6242427B2 (ja) 印刷装置、レイアウト変更方法、及びプログラム
JP2001282405A (ja) 座標入力装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170706

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170706

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180515

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180713

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180904

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181203

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20181211

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190226

R151 Written notification of patent or utility model registration

Ref document number: 6489768

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151