表データ処理方法及び装置
【課題】帳票文書画像などから自動抽出された罫線やセルを容易に修正できるようにする。
【解決手段】本表データ処理方法は、複数のセルを含む表の画像から複数の候補セルを生成し、当該候補セルの特定の組み合わせを抽出して初期的な表を出力するステップと、初期的な表においてユーザから当該初期的な表に含まれる特定の候補セルの指定を誤りセルの指定として受け付けるステップと、指定された上記誤りセルの少なくとも一部を置換可能な候補セルを上記候補セルの特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成ステップと、記憶装置に格納された候補集合をユーザに提示して、候補集合に含まれるいずれかの候補セルの選択を促す提示ステップとを含む。このようにユーザの手間を削減できれば業務効率が改善する。
【解決手段】本表データ処理方法は、複数のセルを含む表の画像から複数の候補セルを生成し、当該候補セルの特定の組み合わせを抽出して初期的な表を出力するステップと、初期的な表においてユーザから当該初期的な表に含まれる特定の候補セルの指定を誤りセルの指定として受け付けるステップと、指定された上記誤りセルの少なくとも一部を置換可能な候補セルを上記候補セルの特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成ステップと、記憶装置に格納された候補集合をユーザに提示して、候補集合に含まれるいずれかの候補セルの選択を促す提示ステップとを含む。このようにユーザの手間を削減できれば業務効率が改善する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、罫線や罫線で囲まれた領域であるセルで構成される表の画像から当該表を認識する技術に関し、より詳しくは自動的に認識された罫線やセルの修正のための技術に関する。
【背景技術】
【0002】
近年、業務の電子化に伴い多くの電子文書が利用されるようになっている。これまで紙文書で運用されてきた業務を電子化したり、紙で配布された文書を電子文書に変換したりするための技術としてOCR(optical character reader/optical character recognition)などの文書画像認識技術の重要性が増している。特に帳票文書などにおいて文書中に含まれる表を認識する技術は特に重要である。
【0003】
表は縦横の罫線で構成されていることが多い。表の構造を認識する表認識技術では、表中の罫線や、罫線に囲まれたセルの位置やサイズを認識する技術が開発されてきた。
【0004】
罫線抽出は、例えば文書画像の画素の縦横のランに基づいて罫線を抽出する方法がある(例えば、特開平1−217583号公報)。画像入力手段はスキャナ等で文書イメージを取得する。縦横のラン抽出手段は、縦方向又は横方向に黒画素が一定長以上連続している領域をラン領域として抽出する。縦横のラン統合手段は、抽出されたラン領域の中で近傍にあるものを統合して一つの罫線領域とする。最後に、抽出された罫線領域を罫線データ構造に格納する。
【0005】
また、特開平7−28939号公報では、入力した表画像が多少傾いても、正確に表部分のベクトル化ができるようにするための技術が開示されている。具体的には、表画像から表部分をベクトル化する装置に、表画像から、線分を水平/垂直方向の線分に分け、水平軸には垂直方向の線分のみを投影し、垂直軸には水平方向の線分のみを投影して罫線の投影像を求める投影部を設ける。また、罫線の投影像と同じ幅の直線を、メモリ上に水平/垂直方向から引き、それをマスク画像として生成するマスク画像生成部と、マスク画像に従って罫線を探索し、表部分をベクトル化する罫線探索部を設ける。そして、罫線探索部が、マスク画像から直線の交点を抽出し、抽出した交点間の距離に対する画素数の比率から、交点間の罫線の存在を決定する。
【0006】
セル抽出手法には、主に罫線に囲まれた矩形領域を抽出するものと、罫線が交差した位置である交点を抽出し、交点の位置関係に基づいてセル領域を抽出する方法とが存在する。罫線に囲まれた矩形領域を抽出する方法は、例えば、「複雑な構造を持つ表の認識に関する基礎検討」児島、清末、秋山、情報処理学会全国大会 第37回後期 6W-8 pp.1660-1661 (1988.10)(以下、非特許文献1と呼ぶ)、「多種帳票文書の構造認識」駱、渡辺、杉江、電子情報通信学会論文誌 D-II, Vol.J76-D-II, No.10, pp.2165-2176 (1993.10)(以下、非特許文献2と呼ぶ)など開示されている。さらに、特開平9−50527号公報も類似の原理を用いている。
【0007】
非特許文献2によるセル抽出手法は、以下のとおりである。すなわち、セル抽出を行う表の領域を対象領域と定め、対象領域の端から端へ達する横罫線で対象領域を分割する。分割した領域毎に、今度は縦に分割する。同様に横と縦の分割を順に行い、分割できなくなるまで続ける。そうすれば、セルが抽出されることとなる。
【0008】
また、罫線が交差した交点に基づいてセル領域を抽出する方法は様々な文献に開示されている。例えば、特開平8−212292号公報、特開平9−138837号公報、特開平10−40333号公報、特開平8−221506号公報などがある。その基本的な手順は、セルの左上を始点としてセル内部を右回りに辿り、始点に戻って来た経路がセルの領域を表すというものである。
【0009】
上で述べたような表認識技術により抽出された罫線やセルは誤りを含む場合がある。特に劣化した画像中の表を認識した場合は誤りが多数存在することが考えられる。そこで、表認識の精度を向上させて誤りを減らそうというアプローチと、ユーザによる誤り訂正の操作性を向上させようというアプローチにより、表認識誤りの悪影響を低減させようという試みが存在する。
【0010】
誤りを低減させる試みの1つには、罫線やセルの抽出結果をその時点では確定せずに複数の候補を生成し、最後に最適な候補の集合を選び出すという手法が提案されている。例えば、「複数セル候補の組み合わせ探索に基づく帳票画像からのセル抽出」田中、武部、藤本、電子情報通信学会技術報告PRMU2005-185 (2006.2)(以下、非特許文献3と呼ぶ)には、以下のような技術が開示されている。すなわち、表罫線が交差する交点の情報を用いてセル領域の候補を複数抽出し、組み合わせ探索によって最適なセル集合を求めるものである。本技術では、曖昧な交点には複数の候補を用意し、複数のセル候補を生成することによって交点誤りの影響の低減を実現している。
【0011】
一方で、誤り罫線やセルをユーザが修正する方法は、従来は誤った部分を削除してユーザが正しい罫線やセルを改めて入力したり、誤った罫線やセルの形状をユーザ操作により変形して正しい結果を生成するという方法が用いられていた。例えば、誤りセル1000をユーザがカーソル1001を用いて指定して(図24(a))削除し(図24(b))、その後で欠けた部分の罫線やセルをユーザが自ら描画して修正する(図24(c)及び(d))。また、複数のセルを描画しなければならない場合は、それだけ修正の手間がかかる。このような編集操作には、例えばセルや罫線の削除や挿入、形状の変形などいくつかの操作が存在する。
【0012】
また、特開平6−60222号公報には、以下のような技術が開示されている。すなわち、帳票にかかる画像デ―タに対してセパレータ候補を抽出し、このセパレータ候補の情報を画像データとともに表示させ、使用者は、キーボードなどを使ってのセパレータ候補の編集操作は画像データイメージが表示されている画面を見ながら修正をしたり、新たにセパレータを追加したりして選定を行なった後に書式データベースに登録する。これにより、データベースに登録されるセパレータ情報の登録ミス、情報の抜けを防止できるとともに、必要により情報の追加も行うことができるようになる。また、その後に、帳票を認識させるような場合に、書式データベースに登録されたセパレータ情報を参照させるようにすることで文字認識を簡単に行うことができるとともに、その認識精度を高めることもできる。但し、セルや罫線の候補を提示して選択させるような構成ではない。
【0013】
さらに、日本特許第2687902号公報には、文書を量子化画像データとして入力する文書画像入力部と、文書画像入力部から入力された文書画像を格納する文書画像記憶部と、文書画像に対し図表分離、表解析、段組分離、線分分離、行分離、文字分離を施し、レイアウト情報を抽出するレイアウト解析部と、レイアウト解析部において得られるレイアウト情報のうち、表項目を構成する罫線の輪郭の形状を用いて表項目分離誤りである可能性が高い部分を判別し、文字ピッチ、文字幅を用いた検証により線分分離誤りを判別し、また、行ピッチ、行幅を用いた検証により行分離誤りを判別し、それぞれに、誤りの種類を示すレイアウト誤りフラグを付加するレイアウト誤り候補検出部と、レイアウト誤りフラグが付加されたレイアウト情報を格納するレイアウト情報記憶部と、レイアウト解析部において得られた文字画像を認識し、文字コードを得る文字認識部と、文字認識部で得られた文字コードを格納する文字情報記憶部と、ユーザからのオペレーションを入力する修正指示入力部と、表項目分離誤りに対するレイアウト候補として領域分割方向と領域分割数、線分分離誤りに対するレイアウト候補として線分の方向、および、行分離誤りに対するレイアウト候補として文字列の方向をあらかじめ格納し、レイアウト情報記憶部と文書画像記憶部と文字情報記憶部との各々の出力を入力し、レイアウト誤りフラグに対応するレイアウト候補と文書画像および文字コードを表示情報として出力し、修正指示入力部の出力に従いレイアウト候補の中から正しいレイアウト候補を選択して再解析情報として出力し、また、修正指示入力部の出力に従い誤りのある文字コードを修正する修正処理部と、修正処理部で指定された再解析情報に基づいて、レイアウト解析部に対してレイアウト解析処理の再実行を起動する再解析制御部と、修正処理部から出力された表示情報を表示する画像表示部とを備える文書画像認識装置が開示されている。但し、セルの形状を直感的に選択できるようにするようなインターフェースは開示されていない。
【0014】
また、特開2001−118030号公報には、帳票の項目名定義作業を簡単化し、作業に要する時間を短縮するための技術が開示されている。具体的には、書類の画像から当該書類の書式を構成する複数の可変項目フィールドを抽出し、抽出した可変項目フィールドをオペレータに表示して一つの可変項目フィールドをオペレータに指示させ、その可変項目フィールドと特定関係にある固定項目フィールドの候補を画像上の特徴から抽出し、抽出した固定項目フィールドをオペレータに表示して一つまたは複数の固定項目フィールドをオペレータに指示させ、可変項目フィールドおよび固定項目フィールドの対応情報を記憶し、その対応情報を用いて書式データを編集する。これによって、項目名を簡単に短時間で定義できると共に1つの領域または可変項目フィールドに複数の項目名がある場合にも対応可能となる、というものである。本公報には、セルの形状を直感的に選択できるようにするようなインターフェースは開示されていない。
【0015】
さらに、特開2001−109888号公報には、画像の品質に対応した罫線抽出処理を行うことを可能とする罫線抽出技術が開示されている。具体的には、画像入力手段により入力画像が取得され、異なる解像度の画像生成手段で低解像度画像、高解像度画像が作成される。罫線候補領域抽出手段は、生成された低解像度画像を用いて罫線候補領域を抽出する。画像の品質評価手段は、抽出された罫線候補領域内の画素を探索することにより、画像の品質を評価し、品質に応じた処理方法または閾値を選択する手段は、画像の品質評価手段で評価された結果に基づいて、画像品質に適応した処理方法、または閾値の選択を行う。部分処理毎に適した画像解像度を選択する手段は、画像品質に基づいて、処理対象とする画像を選択する。以上の手段を経て、罫線抽出手段における適切な処理方法、閾値、処理対象画像が選択され、罫線が抽出される。本公報についても、セルの形状を直感的に選択できるようにするインターフェースは開示されていない。
【0016】
また、特開平11−219442号公報には、帳票の記入内容によって出力画像を変更し、編集出力する文書編集出力装置が開示されている。具体的には、文書画像と文書レイアウト規則とを照合することにより文書構造を解析する文書構造解析手段と、文書レイアウト規則を記憶する文書レイアウト規則記憶手段と、文書構造解析の結果得られる文書部分画像を記憶する入力画像データ記憶手段と、文書レイアウト規則に従い、文書部分画像内のコード化が可能なものに対してコード化を行う画像情報コード化手段と、画像情報コード化手段で得られるコード情報及び入力画像データ記憶手段に格納された文書部分画像の内容に応じて出力画像の内容を決定する出力規則を記憶する出力規則記憶手段と、出力規則を用いて出力内容を決定する出力情報決定手段と、出力情報決定手段から出力された文書内容を入力として出力画像を生成する編集出力手段を備える。本公報についても、セルの形状を直感的に選択できるようにするインターフェースは開示されていない。
【特許文献1】特開平1−217583号公報
【特許文献2】特開平7−28939号公報
【特許文献3】特開平9−50527号公報
【特許文献4】特開平8−212292号公報
【特許文献5】特開平9−138837号公報
【特許文献6】特開平10−40333号公報
【特許文献7】特開平8−221506号公報
【特許文献8】特開平6−60222号公報
【特許文献9】日本特許第2687902号公報
【特許文献10】特開2001−118030号公報
【特許文献11】特開2001−109888号公報
【特許文献12】特開平11−219442号公報
【非特許文献1】「複雑な構造を持つ表の認識に関する基礎検討」児島、清末、秋山、情報処理学会全国大会 第37回後期 6W-8 pp.1660-1661 (1988.10)
【非特許文献2】「多種帳票文書の構造認識」駱、渡辺、杉江、電子情報通信学会論文誌 D-II, Vol.J76-D-II, No.10, pp.2165-2176 (1993.10)
【非特許文献3】「複数セル候補の組み合わせ探索に基づく帳票画像からのセル抽出」田中、武部、藤本、電子情報通信学会技術報告PRMU2005-185 (2006.2)
【発明の開示】
【発明が解決しようとする課題】
【0017】
以上のように、帳票文書画像から抽出した罫線やセルに基づいて帳票フォーマットの設計を行う帳票設計支援装置において罫線やセルを自動抽出した結果が誤っていた場合、ユーザが誤った部分を指定して削除し、再描画したり変形したりといった編集操作を行う必要があった。このような編集操作による誤り訂正は、複数回の描画が必要な場合もあり、またユーザが細かな座標位置まで注意深く意識しなければならないなど、ユーザにとって大きな負担となっていた。
【0018】
従って、本発明の目的は、帳票文書画像などから自動抽出された罫線やセルを容易に修正できるようにするための支援技術を提供することである。
【0019】
さらに、本発明の他の目的は、帳票文書画像などから自動抽出された罫線やセルを修正する際の手間を削減するための技術を提供することである。
【課題を解決するための手段】
【0020】
本発明の第1の態様に係る表データ処理方法は、複数のセルを含む表の画像から複数の候補セルを生成し、当該候補セルの特定の組み合わせを抽出して初期的な表を出力するステップと、初期的な表においてユーザから当該初期的な表に含まれる特定の候補セルの指定を誤りセルの指定として受け付けるステップと、指定された上記誤りセルの少なくとも一部を置換可能な候補セルを上記候補セルの特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成ステップと、記憶装置に格納された候補集合をユーザに提示して、候補集合に含まれるいずれかの候補セルの選択を促す提示ステップとを含む。
【0021】
このようにすればユーザは候補集合に含まれるいずれかの候補セルを選択すればよいので、修正が容易になる。また、わざわざ座標を気にしつつ描画する必要なくなり、修正の手間も省ける。また、業務効率化も図られる。
【0022】
また、本発明の第1の態様に係る表データ処理方法は、候補集合に含まれる候補セルのそれぞれにつき、当該候補セルと同時に選択されるべき関連候補セルを特定する関連候補セル特定ステップを含むようにしてもよい。その場合、上で述べた提示ステップが、候補集合に含まれる候補セル及び当該候補セルの関連候補セルを提示するステップを含むようにしてもよい。このようにすることによってより修正が簡便になる。
【0023】
さらに、ユーザから候補集合に含まれるいずれかの候補セルの選択を次候補セルの選択として受け付けるステップと、選択された上記次候補セルの次に選択されるべき第3の候補セルを特定し、当該第3の候補セルのデータを記憶装置に格納する第3候補セル特定ステップと、記憶装置に格納された第3の候補セルをユーザに提示するステップとを含むようにしてもよい。このように連続的に修正を行うことができれば、修正の手間を削減することができるようになる。
【0024】
また、上で述べた関連候補セル特定ステップが、候補集合に含まれる候補セルのそれぞれにつき、当該候補セルと誤りセルとで重複しない、誤りセルの部分である非重複部分を特定するステップと、候補集合に含まれる候補セルのそれぞれにつき、非重複部分を含む、上記候補セルの特定の組み合わせ以外の候補セルを、関連候補セルとして特定するステップとを含むようにしてもよい。
【0025】
さらに、上で述べた第3候補セル特定ステップが、選択された上記次候補セルを採用し誤りセルを除外することによって生ずる初期的な表における空白を擬似誤りセルとして選択するステップと、擬似誤りセルを誤りセルとして上で述べた候補集合生成ステップ以降のステップを実行するステップとを含むようにしてもよい。
【0026】
さらに、上で述べた表は、候補セルの最小単位である格子ブロックに分割される場合もある。このような場合には、複数の候補セルの各々について、当該候補セルを構成する格子ブロックの識別データと、上記表を構成するセルであるか否かを表すデータとが格子データ格納部に格納されている場合もある。そして、上で述べた候補集合生成ステップが、指定された上記誤りセルを構成する格子ブロックを格子データ格納部から特定するステップと、格子データ格納部から、特定された上記格子ブロックを含む候補セルを、上記候補セルの特定の組み合わせ以外から抽出するステップとを含むようにしてもよい。格子ブロックを導入することによって、処理が簡略化され、高速化される。
【0027】
また、格子ブロック及び格子データ格納部を導入する場合には、上で述べた関連候補セル特定ステップが、格子データ格納部から特定される候補セルを構成する格子ブロックと、誤りセルを構成する格子ブロックとを比較することによって、候補集合に含まれる候補セルの各々について、当該候補セルと前記誤りセルとで重複せず且つ誤りセルに含まれる格子ブロックである非重複格子ブロックを特定するステップと、候補集合に含まれる候補セルの各々について、非重複格子ブロックを含む、上記候補セルの特定の組み合わせ以外の候補セルを、格子データ格納部から関連候補セルとして特定するステップとを含むようにしてもよい。
【0028】
さらに、格子ブロック及び格子データ格納部を導入する場合には、上で述べた候補集合生成ステップが、格子データ格納部において、指定された上記誤りセルに対して上記表を構成するセルから除外するようにデータを登録するステップと、指定された上記誤りセルを構成する格子ブロックを格子データ格納部から特定するステップと、特定された上記格子ブロックを含む候補セルを、格子データ格納部において誤りセルを除き上記表を構成するセルではないとされる候補セルから、候補集合に含まれる候補セルとして抽出するステップとを含むようにしてもよい。また、上で述べた第3候補セル特定ステップが、格子データ格納部において、選択された上記次候補セルを上記表を構成するセルとして登録するステップと、格子データ格納部において、選択された上記次候補セルを除き上記表を構成するセルとして登録されている候補セルのうち、誤りセルを構成する格子ブロックを含む候補セルを特定し、上記表を構成するセルから除外するようにデータを登録するステップと、格子データ格納部において、上記表を構成するセルとして登録されている候補セルのいずれにも採用されていない格子ブロックを擬似誤りセルとして特定するステップと、擬似誤りセルを誤りセルとして上で述べた候補集合生成ステップ以降のステップを実行するステップとを含むようにしてもよい。
【0029】
以上述べた構成では、セルについて説明したが罫線についても同様である。すなわち、本発明の第2の態様に係る表データ処理方法は、複数の罫線を含む表の画像から複数の候補罫線を生成し、当該候補罫線の特定の組み合わせを抽出して初期的な表を出力するステップと、初期的な表においてユーザから当該初期的な表に含まれる特定の候補罫線の指定を誤り罫線の指定として受け付けるステップと、指定された上記誤り罫線の少なくとも一部を置換可能な候補罫線を上記候補罫線の特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成ステップと、記憶装置に格納された候補集合をユーザに提示して、候補集合に含まれるいずれかの候補罫線の選択を促す提示ステップとを含む。
【0030】
本発明にかかる方法をコンピュータに実行させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブル・ディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等の記憶媒体又は記憶装置に格納される。また、ネットワークを介してディジタル信号にて頒布される場合もある。なお、処理途中のデータについては、コンピュータのメモリ等の記憶装置に一時保管される。
【発明の効果】
【0031】
本発明によれば、帳票文書画像などから自動抽出された罫線やセルを容易に修正できるようになる。
【0032】
本発明の他の側面によれば、帳票文書画像などから自動抽出された罫線やセルを修正する際の手間を削減することができるようになる。
【発明を実施するための最良の形態】
【0033】
図1に、本発明の実施の形態に係る帳票設計支援装置に係る機能ブロック図を示す。本実施の形態における帳票設計支援装置100は、表などを含む文書を光学的に読み込むスキャナなどの装置である画像入力部1と、画像入力部1が読み取った画像データを格納する画像データ格納部3と、読み取った画像データから表を構成するセルを自動的に認識する処理を実施するセル認識処理部5と、セル認識処理部5により生成された格子テーブルなどのデータを格納する格子データ格納部7と、格子データ格納部7に格納されているデータを用いて認識結果を表示装置に表示する表認識結果表示部19と、表認識結果表示部19によって表示された認識結果に含まれる候補セルについてユーザによる誤りセルの指定を受け付ける誤りセル入力部11と、格子データ格納部7に格納されているデータを用いてユーザに対して提示すべき候補セルを特定する処理を実施する候補生成部9と、候補生成部9により特定された候補セルのデータなどを格納する候補データ格納部13と、候補データ格納部13に格納されたデータを用いてユーザに提示すべき候補セル等を表示装置に表示する候補表示部15と、ユーザによる候補選択入力を受け付け、格子データ格納部7に格納されたデータを更新すると共に、候補表示部15や表認識表示部19と連携する候補選択入力部17とを有する。
【0034】
候補生成部9は、次候補生成部91と、関連候補生成部93と、連続候補生成部95との少なくともいずれかを含む。
【0035】
次に、図1に示した帳票設計支援装置100の処理を図2乃至図22を用いて説明する。まず、画像入力部1は、表などを含む帳票文書などを光学的に読み取り、当該帳票文書を含む画像を生成して画像データ格納部3に格納する。帳票文書を含む画像のファイルを他の記憶装置から取得したり、ネットワークを介して他のコンピュータから取得するようにしてもよい。例えば、図3(a)のような画像が取得されるものとする。なお、図3(a)において点線で表示されている部分は、罫線が存在するか否かが曖昧な部分(例えば罫線がかすれて半分程度しか残っていない部分など)を表している。
【0036】
次に、セル認識処理部5は、画像データ格納部3に格納されている画像データから、例えば非特許文献3(若しくは特願2006−31581)に開示されているアルゴリズムに従って格子データを生成し、格子データ格納部7に格納する(ステップS1)。具体的には、表を構成する縦横の罫線を抽出し、図3(b)に示すように、各罫線の格子点(交点及び例えば同方向の罫線に存在する交点を写像した点)の座標を特定すると共に、各格子点に識別子を付与する。座標は、予め定められた点(例えば左上の格子点)を原点とした場合の座標である。格子点の識別子については、例えば左上の格子点を1として、縦方向に通番で格子点に番号を付し、横方向にも通番で格子点に番号を付す。そうすると、例えば図4に示すようなデータが格子データ格納部7に格納される。すなわち、格子点毎に座標値が格納される。
【0037】
なお、これ以降は、罫線の長さの情報は無くとも、図4に示したテーブルで格子点の座標を得ることができるので、図3(c)に示すように、各セルの縦横長さが均等な状態を想定すればよい。また、図3(b)及び図3(c)において、セルを構成する可能性のある最も小さい候補セルを格子ブロックと呼ぶものとする。図3(b)及び図3(c)においては、格子ブロックa乃至dが存在する。さらに、例えば図3(c)に示すように、座標値に基づき、格子ブロックaには格子インデックス(1,1)、格子ブロックbには格子インデックス(1,2)、格子ブロックcには格子インデックス(2,1)、格子ブロックdには格子インデックス(2,2)が付与される。格子ブロックを用いることによって、座標の比較処理などを最小限に押さえることができ、処理を簡略化・高速化させることができるようになる。
【0038】
次に、セル認識処理部5は、上記アルゴリズムに従って候補セル集合を生成する(ステップS3)。例えば罫線の確からしさなどから、図3(d)の例では、格子ブロックaから構成される候補セル(1)、格子ブロックbから構成される候補セル(2)、格子ブロックb乃至dから構成される候補セル(3)、格子ブロックc及びdから構成される候補セル(4)が、特定される。但し、この段階では、罫線などから候補セルを特定して、候補セルと格子ブロックとの対応関係は特定されていないものとする。
【0039】
そして、セル認識処理部5は、各候補セルを構成する格子ブロックを特定し、格子テーブルを生成して格子データ格納部7に格納する(ステップS5)。具体的には、各候補セルの頂点座標と格子データ格納部7に格納されている格子点座標(図4)とを比較し、各候補セルの各頂点について最も近い格子点を対応付け、セルの頂点と格子点との対応関係に基づき、各候補セルが包含する格子ブロックを特定し、登録する。
【0040】
例えば、図5に示すような格子テーブルが格子データ格納部7に格納される。図5の例では、候補セルの採否を表す採用フラグの列と、候補セル番号の列と、候補セルの座標の列と、候補セルを構成する格子インデックスの列とを含む。この段階では、採用フラグについては全てオフにセットされている。座標については、基本的には左上の頂点(又は格子点)の座標と右下の頂点(又は格子点)の座標とが登録される。候補セル(3)の場合には、2つの領域に分けて左上の頂点及び右下の頂点の座標を登録してもよいし、全ての頂点の座標を登録するようにしてもよい。
【0041】
さらに、セル認識処理部5は、上記アルゴリズムに従って、表を完成させる、候補セルの組み合わせの候補を抽出すると共に、その中から最も確からしい、候補セルの最適組み合わせを特定し、格子データ格納部7の格子テーブルに登録する(ステップS7)。例えば図3(e)の例では、候補セル(1)と候補セル(3)との組み合わせと、候補セル(1)と候補セル(2)と候補セル(4)との組み合わせとが候補として抽出される。そして、これらの中から最も確からしい候補が図3(e)の右側であると特定される。そうすると、格子データ格納部7の格子テーブルにおいて、候補セル(1)と候補セル(2)と候補セル(4)との採用フラグがオンにセットされる。図5の例では、第1行目、第2行目、第4行目の採用フラグがオンにセットされる。
【0042】
そうすると、表認識結果表示部19は、格子データ格納部7に格納されている格子テーブルのデータを用いて、候補セルの最適組み合わせを表認識結果として表示装置に表示する(ステップS9)。例えば、図3(f)に示すような表示がなされるようになる。
【0043】
そして、ユーザによって予め定められたキーや表示画面に表示されている所定のボタンなどがクリックされると、候補セル修正処理を実施するようになる(ステップS11)。例えば、例えば図3(f)に示されるような表が表示されている場合に、ユーザによりいずれかの候補セルが誤りセルとして選択された場合に、ステップS11を実行するようにしてもよい。
【0044】
ステップS11の処理については、次候補生成部91を用いた場合、関連候補生成部93を用いた場合、連続候補生成部95を用いた場合で異なるので、それぞれについて説明する。
【0045】
(1)次候補生成部91を用いた場合
次候補生成部91を用いた場合の処理について図6乃至図12を用いて説明する。ユーザは、表示装置に表示された、認識結果である初期的な表を見て、誤認識が無いか確認する。そして誤認識が存在している場合には、入力装置(例えばマウスやペン)を用いて、誤認識に係るセルを指定する。帳票設計支援装置100の誤りセル入力部11は、ユーザからの誤りセルの選択入力を受け付け(ステップS21)、誤りセルのデータを候補生成部9に出力する。
【0046】
例えば、図7に示すような表を含む画像を処理する例を説明する。点線は、罫線のかすれを示している。このような場合には、上で述べた処理において、図8に示すような格子ブロック群(インデックス(1,1)乃至(1,4)、(2,1)乃至(2,4))が認識され、図9に示すような格子テーブルが形成される。格子テーブルの形式は図5に示したものと同様である。図9のような格子テーブルに従えば、表認識結果表示部19は、図10(a)に示すような表示を行う。但し、この段階では誤りセルを意味する強調表示(ハッチング)はまだなされない。ユーザが誤りセルを指定すると、誤りセルが強調表示され、当該誤りセルのデータが次候補生成部91に出力される。
【0047】
候補生成部9の次候補生成部91は、誤りセルのデータを受信すると、格子データ格納部7内の格子テーブルにおいて誤りセルを不採用に変更する(ステップS23)。なお、誤りセルの候補セル番号(図10(a)の例では候補セル番号(2))などについては例えばメインメモリに保持しておく。また、次候補生成部91は、格子データ格納部7内の格子テーブルから、誤りセルを構成する格子ブロックのインデックスを特定する(ステップS25)。誤りセルのレコードにおいて格子インデックスの列のデータを読み出す。図9の例では、候補セル番号(2)が誤りセルなので、インデックス(1,2)及び(1,3)が特定される。
【0048】
次に、候補生成部9は、誤りセルを除く不採用候補セルの中から誤りセルを構成するいずれかの格子ブロックを含む候補セルを次候補セルとして選択する(ステップS27)。図9の例では、格子ブロックのインデックス(1,2)又は(1,3)を含む候補セルを選択することになるので、図10(b)に示すように、候補セル番号(6)、(7)、(8)、(9)が選択される。
【0049】
但し、(6)を選択した場合には、(7)が選択されることになり、(7)を選択すると、(6)が選択されることになるので、(7)については除外する場合もある。すなわち、誤りセルを構成する格子ブロックが2つの場合、そのいずれかの格子ブロックのみを次候補セルとして選択するようにしてもよい。また、候補セルの尤度が保持されている場合には、尤度が低い候補セルを除外したり、他のルール(例えば他の候補セルとの関係で互いに相補的な関係にある候補セルはいずれかのみを選択するルールなど)によって除外するようにしてもよい。
【0050】
そして、次候補生成部91は、次候補セルのデータ(候補セル番号及び座標のデータなど)を候補データ格納部13に格納する。
【0051】
候補表示部15は、次候補セルを表示装置に提示する(ステップS29)。次候補セルの提示方法は、例えば図11(a)及び(b)に示すように、次候補セルを所定の順番で表示するような方式であってもよい。すなわち、NGボタンがクリックされると、次の次候補セルが表示される。全ての次候補セルが表示し終わった場合には最初の次候補セルを表示すればよい。一方、全ての次候補セルを、他の表示欄等において提示するようにして、いずれかを選択させる方式を採用してもよい。この際、次候補セルの形状のみではなく、例えば縮小表示された表全体を提示するようにしてもよい。ユーザは、表示された次候補セルのうち適切と考えるものを選択する。
【0052】
候補選択入力部17は、ユーザから次候補セルの選択入力を受け付け、当該次候補セルの候補セル番号から、格子データ格納部7内の格子テーブルにおいて採用フラグをオンにセットする(ステップS31)。そして、候補選択入力部17は、表認識結果表示部19に対し、格子データ格納部7に格納されているデータを基に表示をリフレッシュするように指示する。表認識結果表示部19は、候補選択入力部17からの指示に従って、格子データ格納部7に格納されているデータを用いて表示を更新する(ステップS33)。
【0053】
以上のような処理を実施することによって、ユーザは正しいセルを座標を気にしつつ描画する必要はなく、次候補セルを選択するだけで済む。すなわち、容易に修正を行うことができ、ユーザの手間を削減することができるようになる。
【0054】
なお、ステップS27については、図12に示すような処理を行う。すなわち、格子データ格納部7内の格子テーブルにおいて、未処理の不採用候補セルを特定する(ステップS41)。すなわち、採用フラグがオフにセットされている候補セルを1つ特定する。そして、特定された不採用候補セルが、ステップS25で特定されており且つ誤りセルを構成する格子ブロックと完全に同じ格子ブロックで構成されているか判断する(ステップS43)。すなわち、誤りセルは不採用候補セルとなるので、ステップS43で誤りセルを次候補セルとして提示しないようにするものである。不採用候補セルが、誤りセルを構成する格子ブロックと完全に同じ格子ブロックで構成されている場合にはステップS49に移行する。
【0055】
一方、不採用セルが、誤りセルを構成する格子ブロックと完全に同じ格子ブロックで構成されているとは言えない場合には、特定された不採用候補セルが、誤りセルと一部同じ格子ブロックを含むか判断する(ステップS45)。誤りセルと同じ格子ブロックを全く含まない場合には、誤りセルを置換できるような候補セルではないので、ステップS49に移行する。一方、特定された不採用候補セルが、誤りセルと一部同じ格子ブロックを含む場合には、当該不採用候補セルを次候補セルとして特定する(ステップS47)。
【0056】
そして、全ての不採用候補セルについて処理したか判断し(ステップS49)、未処理の不採用候補セルが存在している場合にはステップS41に戻り、全ての不採用候補セルについて処理が完了した場合には元の処理に戻る。
【0057】
(2)関連候補生成部93を用いた場合
次に関連候補生成部93を用いた場合の処理を図13乃至図16を用いて説明する。次候補生成部91の処理では、1つの誤りセルの選択につき、1つの候補セルしか修正できないが、実際には1つ誤りセルが存在すると、その影響は他の候補セルにも及ぶ場合が多い。ここでは、同時に2つ以上の候補セルを組み合わせて関連候補として提示する。関連候補は、(a)組み合わせ中のいずれの候補セルも、誤りセル及び当該組み合わせのコアとなる次候補セルと完全一致せず、(b)組み合わせた候補セル同士には重なりが無く、(c)組み合わせた候補セルと次候補セルを合わせると誤りセルを埋めるというものである。
【0058】
まず、ユーザは、表示装置に表示された、認識結果である初期的な表を見て、誤認識が無いか確認する。そして誤認識が存在している場合には、入力装置(例えばマウスやペン)を用いて、誤認識に係るセルを指定する。帳票設計支援装置100の誤りセル入力部11は、ユーザからの誤りセルの選択入力を受け付け(ステップS51)、誤りセルのデータを候補生成部9に出力する。ここでも、図7に示すような表を含む画像を処理する例を説明する。同様に、上で述べた処理において、図8に示すような格子ブロック群が認識され、図9に示すような格子テーブルが形成されるものとする。そうすると、表認識結果表示部19は、図14(a)に示すような表示を行う。但し、この段階では誤りセルを意味する強調表示(ハッチング)はまだなされない。ユーザが誤りセルを指定すると、誤りセルが強調表示され、当該誤りセルのデータが関連候補生成部93に出力される。
【0059】
候補生成部9の関連候補生成部93は、誤りセルのデータを受信すると、格子データ格納部7内の格子テーブルにおいて誤りセルを不採用に変更する(ステップS53)。なお、誤りセルの候補セル番号(図14(a)の例では候補セル(2))などについては例えばメインメモリに保持しておく。また、関連候補生成部93は、格子データ格納部7内の格子テーブルから、誤りセルを構成する格子ブロックのインデックスを特定する(ステップS55)。誤りセルのレコードにおいて格子インデックスの列のデータを読み出す。図9の例では、候補セル番号(2)が誤りセルなので、インデックス(1,2)及び(1,3)が特定される。
【0060】
次に、関連候補生成部93は、誤りセルを除く不採用候補セルの中から誤りセルを構成するいずれかの格子ブロックを含む候補セルを次候補セルとして選択する(ステップS57)。図9の例では、格子ブロックのインデックス(1,2)又は(1,3)を含む候補セルを選択することになるので、候補セル(6)、(7)、(8)、(9)が選択される。なお、具体的には図12の処理を実施する。
【0061】
また、関連候補生成部93は、各次候補セルについて、誤りセルと共有する(すなわち誤りセルと共通する)格子ブロックのインデックスを特定し、例えばメインメモリなどの記憶装置に格納する(ステップS59)。図9の例では、候補セル(6)については格子ブロック(1,2)が特定され、候補セル(7)については格子ブロック(1,3)が特定され、候補セル(8)については格子ブロック(1,3)が特定され、候補セル(9)については(1,2)が特定される。
【0062】
さらに、関連候補生成部93は、各次候補セルについて、誤りセルから、ステップS59で特定された格子ブロックを除外した後の格子ブロックのインデックスを残余格子ブロックとして抽出し、例えばメインメモリなどの記憶装置に格納する(ステップS61)。候補セル(6)については格子ブロック(1,3)が特定され、候補セル(7)については格子ブロック(1,2)が特定され、候補セル(8)については格子ブロック(1,2)が特定され、候補セル(9)については(1,3)が特定される。
【0063】
そして、関連候補生成部93は、誤りセルを除き不採用の候補セルから、各次候補セルについて、残余格子ブロックを含み且つ当該次候補セルとは異なる候補セルを関連候補セルとして特定し、次候補セルと関連候補セルとの組み合わせを関連候補として、候補データ格納部13に登録する(ステップS63)。
【0064】
候補セル(6)については、格子ブロック(1,3)を含む候補セル(7)及び候補セル(8)が特定される。すなわち、候補セル(6)と(7)との組み合わせである関連候補と、候補セル(6)と(8)との組み合わせである関連候補とが構成され、これらの候補セル番号及び座標データなどが候補データ格納部13に格納される。
【0065】
候補セル(7)については、格子ブロック(1,2)を含む候補セル(6)及び候補セル(9)が特定される。すなわち、候補セル(7)及び(6)との組み合わせである関連候補と、候補セル(7)及び(9)との組み合わせである関連候補とが構成され、これらの候補セル番号及び座標データなどが候補データ格納部13に格納される。
【0066】
候補セル(8)については、格子ブロック(1,2)を含む候補セル(6)及び候補セル(9)が特定される。すなわち、候補セル(8)及び(6)との組み合わせである関連候補と、候補セル(8)及び(9)との組み合わせである関連候補とが構成され、これらの候補セル番号及び座標データなどが候補データ格納部13に格納される。
【0067】
候補セル(9)については、格子ブロック(1,3)を含む候補セル(7)及び候補セル(8)が特定される。すなわち、候補セル(9)及び(7)との組み合わせである関連候補と、候補セル(9)及び(8)との組み合わせである関連候補とが構成され、これらの候補セル番号及び座標データなどが候補データ格納部13に格納される。
【0068】
これらをまとめると図14(b)に示すように8つの関連候補が生成されたことになる。図14(b)でハッチングが付されている候補セルが次候補セルである。但し、次候補セルと関連候補セルとの組み合わせとしては、図14(b)に示されているように重複があるので実質4つの関連候補しかない。
【0069】
処理は端子Aを介して図15の処理に移行して、関連候補生成部93は、上で述べたように、関連候補の中で同一の格子ブロックの組み合わせを抽出して、存在する場合にはそれらをマージする処理を実施する(ステップS65)。具体的には、候補データ格納部13において、重複する関連候補セルのデータを1つを残して残りを削除する。
【0070】
そして候補表示部15は、関連候補を表示装置に提示する(ステップS67)。関連候補の提示方法は、例えば図16(a)及び(b)に示すように、関連候補を所定の順番で表示するような方式であってもよい。すなわち、NGボタンがクリックされると、次の関連候補が表示される。全ての関連候補が表示し終わった場合には最初の関連候補を表示すればよい。一方、全ての関連候補を、他の表示欄において提示するようにして、いずれかを選択させる方式を採用してもよい。この際、関連候補の形状のみではなく、例えば縮小表示された表全体を提示するようにしてもよい。ユーザは、表示された関連候補のうち適切と考えるものを選択する。
【0071】
候補選択入力部17は、ユーザから関連候補の選択入力を受け付け、当該関連候補の候補セル番号から、格子データ格納部7内の格子テーブルにおいて採用フラグをオンにセットする(ステップS69)。そして、候補選択入力部17は、表認識結果表示部19に対し、格子データ格納部7に格納されているデータを基に表示をリフレッシュするように指示する。表認識結果表示部19は、候補選択入力部17からの指示に従って、格子データ格納部7に格納されているデータを用いて表示を更新する(ステップS71)。
【0072】
以上のような処理を実施することによって、ユーザは関連候補を選択するだけで済むようになる。2つ以上の候補セルが一度に設定できるので、よりユーザの手間が削減されている。
【0073】
(3)連続候補生成部95を用いた場合
次に連続候補生成部95を用いた場合の処理を図17乃至図22を用いて説明する。連続候補生成部95の処理では、1つの誤りセルの選択につき、1つの候補セルしか修正できないが、実際には1つ誤りセルが存在すると、その影響は他の候補セルにも及ぶ場合が多い。ここでは、連続的に誤りセルを指定できるようにして、その都度次候補セルを提示することで、ユーザビリティ及び効率を向上させるものである。
【0074】
まず、ユーザは、表示装置に表示された、認識結果である初期的な表を見て、誤認識が無いか確認する。そして誤認識が存在している場合には、入力装置(例えばマウスやペン)を用いて、誤認識に係るセルを指定する。帳票設計支援装置100の誤りセル入力部11は、ユーザからの誤りセルの選択入力を受け付け(ステップS81)、誤りセルのデータを候補生成部9に出力する。ここでも、図7に示すような表を含む画像を処理する例を説明する。同様に、上で述べた処理において、図8に示すような格子ブロック群が認識され、図9に示すような格子テーブルが形成されるものとする。そうすると、表認識結果表示部19は、図18(a)に示すような表示を行う。但し、この段階では誤りセルを意味する強調表示(ハッチング)はまだなされない。ユーザが誤りセルを指定すると、誤りセルが強調表示され、当該誤りセルのデータが連続候補生成部95に出力される。
【0075】
候補生成部9の連続候補生成部95は、誤りセルのデータを受信すると、格子データ格納部7内の格子テーブルにおいて誤りセルを不採用に変更する(ステップS83)。なお、誤りセルの候補セル番号(図18(a)の例では候補セル番号(2))などについては例えばメインメモリに保持しておく。また、連続候補生成部95は、格子データ格納部7内の格子テーブルから、誤りセルを構成する格子ブロックのインデックスを特定する(ステップS85)。誤りセルのレコードにおいて格子インデックスの列のデータを読み出す。図9の例では、候補セル番号(2)が誤りセルなので、(1,2)及び(1,3)が特定される。
【0076】
次に、連続候補生成部95は、誤りセルを除く不採用候補セルの中から誤りセルを構成するいずれかの格子ブロックを含む候補セルを次候補セルとして選択する(ステップS87)。図9の例では、格子ブロックのインデックス(1,2)又は(1,3)を含む候補セルを選択することになるので、候補セル(6)、(7)、(8)、(9)が選択される。なお、具体的には図12の処理を実施する。
【0077】
そして、連続候補生成部95は、次候補セルのデータ(候補セル番号及び座標のデータなど)を候補データ格納部13に格納する。
【0078】
候補表示部15は、次候補セルを表示装置に提示する(ステップS89)。次候補セルの提示方法は、例えば図11(a)及び(b)に示すように、次候補セルを所定の順番で表示するような方式であってもよい。一方、全ての次候補セルを、他の表示欄において提示するようにして、いずれかを選択させる方式を採用してもよい。ユーザは、表示された次候補セルのうち適切と考えるものを選択する。
【0079】
候補選択入力部17は、ユーザから次候補セルの選択入力を受け付け、当該次候補セルの候補セル番号から、格子データ格納部7内の格子テーブルにおいて採用フラグをオンにセットする(ステップS91)。また、表認識結果表示部19は、候補選択入力部17からの指示に応じて、格子データ格納部7内の格子テーブルに従って、表示を更新する(ステップS92)。
【0080】
次に、連続候補生成部95は、格子データ格納部7の更新に応じて、選択された次候補セル(今回採用フラグがオンにセットされた候補セル)を構成する格子ブロックのインデックスを、格子テーブルから特定し、例えばメインメモリなどの記憶装置に格納する(ステップS93)。候補セル(6)が選択されれば格子ブロック(1,2)が特定され、候補セル(7)が選択されれば格子ブロック(1,3)が特定され、候補セル(8)が特定されれば格子ブロック(1,3)及び(1,4)が特定され、候補セル(9)が特定されれば格子ブロック(1,2)及び(2,2)が特定される。ここでは、図18(b)に示されているように、候補セル(9)が選択されたものとすると、格子ブロック(1,2)及び(2,2)が特定され、メインメモリなどの記憶装置に格納される。
【0081】
処理は端子Bを介して図19の処理に移行し、連続候補生成部95は、格子データ格納部7内の格子テーブルにおいて、選択された次候補セルを除く採用候補セルの中から、選択された次候補セルを構成するいずれかの格子ブロックを含む候補セルを抽出し、例えばメインメモリなどの記憶装置に格納する(ステップS95)。図9の例では、候補セル(5)が抽出される。但し、場合によっては存在しない場合もある。
【0082】
そして、連続候補生成部95は、ステップS95で候補セルが抽出できたか判断する(ステップS97)。抽出できなければステップS101に移行する。一方、抽出された候補セルが存在すれば、格子テーブルにおいて、当該抽出された候補セルを不採用に変更する(ステップS99)。ここで不採用に変更された候補セルのセル番号も例えばメインメモリなどの記憶装置に格納しておく。上の例では候補セル(5)の採用フラグがオフにセットされる。これは、図18(c)に示すように、新たに採用となった次候補セルと重なる候補セルを削除する処理である。
【0083】
その後、連続候補生成部95は、全ての格子ブロックから、採用となっていない格子ブロックのインデックスを抽出する(ステップS101)。ステップS101の段階で格子テーブルは図20に示したような状態となっており、採用候補セルの格子ブロックは、(1,1)、(1,2)、(1,4)、(2,1)、(2,2)となり、全体の格子ブロック(1,1)乃至(1,4)及び(2,1)乃至(2,4)から、採用となっていない格子ブロックは、(1,3)、(2,3)及び(2,4)であることが特定される。
【0084】
そして、連続候補生成部95は、採用となっていない格子ブロックがステップS101で抽出できたか判断する(ステップS103)。もし、採用となっていない格子ブロックが存在しない場合には、全ての格子ブロックが候補セルによって埋められているので、元の処理に戻る。
【0085】
一方、採用となっていない格子ブロックが存在する場合には、ステップS101で特定された全ての格子ブロックを擬似誤りセルとして特定し、例えばメインメモリなどの記憶装置に格納する(ステップS105)。そして端子Cを介してステップS87に戻り、擬似誤りセルを、ユーザにより指定された誤りセルとして処理を実施する。なお、ユーザによって指定された誤りセルは二度と採用されないので、ステップS87では必ず除外対象に入れる。さらに、ステップS99で不採用に設定された候補セルについても提示するのは不適切であるから、ステップS87では必ず除外対象に入れる。
【0086】
図20の例では、図18(d)でハッチングが付された部分が擬似誤りセルとして特定される。従って、次のステップS87では、(1,3)、(2,3)及び(2,4)のいずれかを含む不採用の候補セルを特定すると、候補セル(7)、候補セル(8)、候補セル(10)が次候補セルとして特定される。すなわち、図18(e)に示すように候補セルが3種類提示されるようになる。提示の仕方はステップS89で述べたとおりである。
【0087】
このような処理を行うことによって、誤りセルを指定することによって生ずる他の誤りセルを順次修正することができるようになり、ユーザの修正作業が簡便且つ容易になる。さらに、業務効率も改善される。
【0088】
以上表におけるセルの修正について説明したが、本実施の形態は、表を構成する罫線の修正にも適用することができる。具体的には、図21に示すような格子テーブルを用いる。すなわち、採用フラグの列と、罫線番号の列と、座標(始点及び終点)の列と、始点インデックス(格子点の識別子)の列と、終点インデックスの列とが設けられている。このように、格子ブロックのインデックスではなく、始点及び終点の格子点の識別子(インデックス)で特定する。罫線の場合でも、格子ブロックを単位格子点間の罫線であるとして処理すれば、同様の処理で対処できる。
【0089】
また、罫線の場合も、図22(a)に示すように、ユーザが誤り罫線を指定すると、図22(b)に示すように、罫線候補が表示される。図22(b)の例では、全ての候補(候補A乃至C)を一度に表示する例を示している。罫線の場合には、表示スペースに余裕があるので、一度に表示してもあまり問題とならない場合が多いが、1つずつ罫線候補を提示するようにしてもよい。ユーザが例えば罫線候補Bを指定すれば、図22(c)に示すように、罫線が置換されるようになる。
【0090】
以上本発明の実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、画面例は一例にすぎず、様々な形態に変更可能である。すなわち、OKボタンやNGボタンを用いなくとも、所定のキーを押すことによって次候補を表示させるようにしてもよいし、エンターキーで確定されるようにすることも可能である。
【0091】
また、図1に示した機能ブロック図は一例であって、必ずしも実際のプログラムモジュール構成を表すものではない。
【0092】
さらに、帳票設計支援装置100は、図23のようなコンピュータ装置であって、メモリ2501(記憶装置)とCPU2503(処理装置)とハードディスク・ドライブ(HDD)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施の形態における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。必要に応じてCPU2503は、表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ2501に格納され、必要があればHDD2505に格納される。本発明の実施の形態では、上で述べた処理を実施するためのアプリケーション・プログラムはリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【0093】
(付記1)
複数のセルを含む表の画像から複数の候補セルを生成し、当該候補セルの特定の組み合わせを抽出して初期的な表を出力するステップと、
前記初期的な表においてユーザから当該初期的な表に含まれる特定の候補セルの指定を誤りセルの指定として受け付けるステップと、
指定された前記誤りセルの少なくとも一部を置換可能な候補セルを前記候補セルの特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成ステップと、
前記記憶装置に格納された前記候補集合をユーザに提示して、前記候補集合に含まれるいずれかの候補セルの選択を促す提示ステップと、
を含み、コンピュータにより実行される表データ処理方法。
【0094】
(付記2)
前記候補集合に含まれる前記候補セルのそれぞれにつき、当該候補セルと同時に選択されるべき関連候補セルを特定する関連候補セル特定ステップ
を含み、
前記提示ステップが、
前記候補集合に含まれる前記候補セル及び当該候補セルの関連候補セルを提示するステップ
を含む付記1記載の表データ処理方法。
【0095】
(付記3)
ユーザから前記候補集合に含まれるいずれかの候補セルの選択を次候補セルの選択として受け付けるステップと、
選択された前記次候補セルの次に選択されるべき第3の候補セルを特定し、当該第3の候補セルのデータを前記記憶装置に格納する第3候補セル特定ステップと、
前記記憶装置に格納された前記第3の候補セルをユーザに提示するステップと、
を含む付記1記載の表データ処理方法。
【0096】
(付記4)
前記関連候補セル特定ステップが、
前記候補集合に含まれる前記候補セルのそれぞれにつき、当該候補セルと前記誤りセルとで重複しない、前記誤りセルの部分である非重複部分を特定するステップと、
前記候補集合に含まれる前記候補セルのそれぞれにつき、前記非重複部分を含む、前記候補セルの特定の組み合わせ以外の候補セルを、前記関連候補セルとして特定するステップと、
を含む付記2記載の表データ処理方法。
【0097】
(付記5)
前記第3候補セル特定ステップが、
選択された前記次候補セルを採用し前記誤りセルを除外することによって生ずる前記初期的な表における空白を擬似誤りセルとして選択するステップと、
前記擬似誤りセルを前記誤りセルとして前記候補集合生成ステップ以降のステップを実行するステップと、
を含む付記3記載の表データ処理方法。
【0098】
(付記6)
前記表は、前記候補セルの最小単位である格子ブロックに分割されており、
前記複数の候補セルの各々について、当該候補セルを構成する格子ブロックの識別データと、前記表を構成するセルであるか否かを表すデータとが格子データ格納部に格納されており、
前記候補集合生成ステップが、
指定された前記誤りセルを構成する格子ブロックを前記格子データ格納部から特定するステップと、
前記格子データ格納部から、特定された前記格子ブロックを含む候補セルを、前記候補セルの特定の組み合わせ以外から抽出するステップと、
を含む付記1記載の表データ処理方法。
【0099】
(付記7)
前記表は、前記候補セルの最小単位である格子ブロックに分割されており、
前記複数の候補セルの各々について、当該候補セルを構成する格子ブロックの識別データと、前記表を構成するセルであるか否かを表すデータとが格子データ格納部に格納されており、
前記候補集合生成ステップが、
指定された前記誤りセルを構成する格子ブロックを前記格子データ格納部から特定するステップと、
前記格子データ格納部から、特定された前記格子ブロックを含む候補セルを、前記候補セルの特定の組み合わせ以外から前記候補集合に含まれる候補セルとして抽出するステップと、
を含み、
前記関連候補セル特定ステップが、
前記格子データ格納部から特定される前記候補セルを構成する格子ブロックと、前記誤りセルを構成する格子ブロックとを比較することによって、前記候補集合に含まれる候補セルの各々について、当該候補セルと前記誤りセルとで重複せず且つ前記誤りセルに含まれる格子ブロックである非重複格子ブロックを特定するステップと、
前記候補集合に含まれる候補セルの各々について、前記非重複格子ブロックを含む、前記候補セルの特定の組み合わせ以外の候補セルを、前記格子データ格納部から前記関連候補セルとして特定するステップと、
を含む付記2記載の表データ処理方法。
【0100】
(付記8)
前記表は、前記候補セルの最小単位である格子ブロックに分割されており、
前記複数の候補セルの各々について、当該候補セルを構成する格子ブロックの識別データと、前記表を構成するセルであるか否かを表すデータとが格子データ格納部に格納されており、
前記候補集合生成ステップが、
前記格子データ格納部において、指定された前記誤りセルに対して前記表を構成するセルから除外するようにデータを登録するステップと、
指定された前記誤りセルを構成する格子ブロックを前記格子データ格納部から特定するステップと、
特定された前記格子ブロックを含む候補セルを、前記格子データ格納部において前記誤りセルを除き前記表を構成するセルではないとされる候補セルから、前記候補集合に含まれる候補セルとして抽出するステップと、
を含み、
前記第3候補セル特定ステップが、
前記格子データ格納部において、選択された前記次候補セルを前記表を構成するセルとして登録するステップと、
前記格子データ格納部において、選択された前記次候補セルを除き前記表を構成するセルとして登録されている候補セルのうち、前記誤りセルを構成する格子ブロックを含む候補セルを特定し、前記表を構成するセルから除外するようにデータを登録するステップと、
前記格子データ格納部において、前記表を構成するセルとして登録されている候補セルのいずれにも採用されていない格子ブロックを擬似誤りセルとして特定するステップと、
前記擬似誤りセルを前記誤りセルとして前記候補集合生成ステップ以降のステップを実行するステップと、
を含む付記3記載の表データ処理方法。
【0101】
(付記9)
複数の罫線を含む表の画像から複数の候補罫線を生成し、当該候補罫線の特定の組み合わせを抽出して初期的な表を出力するステップと、
前記初期的な表においてユーザから当該初期的な表に含まれる特定の候補罫線の指定を誤り罫線の指定として受け付けるステップと、
指定された前記誤り罫線の少なくとも一部を置換可能な候補罫線を前記候補罫線の特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成ステップと、
前記記憶装置に格納された前記候補集合をユーザに提示して、前記候補集合に含まれるいずれかの候補罫線の選択を促す提示ステップと、
を含み、コンピュータにより実行される表データ処理方法。
【0102】
(付記10)
前記候補集合に含まれる前記候補罫線のそれぞれにつき、当該候補罫線と同時に選択されるべき関連候補罫線を特定するステップ
を含み、
前記提示ステップが、
前記候補集合に含まれる前記候補罫線及び当該候補罫線の関連候補罫線を提示するステップ
を含む付記9記載の表データ処理方法。
【0103】
(付記11)
ユーザから前記候補集合に含まれるいずれかの候補罫線の選択を次候補罫線の選択として受け付けるステップと、
選択された前記次候補罫線の次に選択されるべき第3の候補罫線を特定し、当該第3の候補罫線のデータを前記記憶装置に格納するステップと、
前記記憶装置に格納された前記第3の候補罫線をユーザに提示するステップと、
を含む付記9記載の表データ処理方法。
【0104】
(付記12)
付記1乃至11のいずれか1つ記載の表データ処理方法をコンピュータに実行させるためのプログラム。
【0105】
(付記13)
複数のセルを含む表の画像から複数の候補セルを生成し、当該候補セルの特定の組み合わせを抽出して初期的な表を出力する手段と、
前記初期的な表においてユーザから当該初期的な表に含まれる特定の候補セルの指定を誤りセルの指定として受け付ける手段と、
指定された前記誤りセルの少なくとも一部を置換可能な候補セルを前記候補セルの特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成手段と、
前記記憶装置に格納された前記候補集合をユーザに提示して、前記候補集合に含まれるいずれかの候補セルの選択を促す提示手段と、
を有する表データ処理装置。
【0106】
(付記14)
複数の罫線を含む表の画像から複数の候補罫線を生成し、当該候補罫線の特定の組み合わせを抽出して初期的な表を出力する手段と、
前記初期的な表においてユーザから当該初期的な表に含まれる特定の候補罫線の指定を誤り罫線の指定として受け付ける手段と、
指定された前記誤り罫線の少なくとも一部を置換可能な候補罫線を前記候補罫線の特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成手段と、
前記記憶装置に格納された前記候補集合をユーザに提示して、前記候補集合に含まれるいずれかの候補罫線の選択を促す提示手段と、
を有する表データ処理装置。
【図面の簡単な説明】
【0107】
【図1】本発明の実施の形態における帳票設計支援装置の機能ブロック図である。
【図2】本発明の実施の形態におけるメインの処理フローを示す図である。
【図3】(a)乃至(f)は、メインの処理フローの前処理を説明するための図である。
【図4】格子データ格納部に格納されるデータの一例を示す図である。
【図5】格子テーブルに格納されるデータの一例を示す図である。
【図6】次候補生成部による第1候補セル修正処理の処理フローを示す図である。
【図7】入力画像の一例を示す図である。
【図8】格子ブロック及びインデックスを説明するための図である。
【図9】格子テーブルに格納されるデータの一例を示す図である。
【図10】(a)及び(b)は、第1候補セル修正処理の処理の概要を説明するための図である。
【図11】(a)及び(b)は、第1候補セル修正処理における画面例を示す図である。
【図12】次候補セル特定処理の処理フローを示す図である。
【図13】関連候補生成部による第2候補セル修正処理の処理フローを示す図である。
【図14】(a)及び(b)は、第2候補セル修正処理の処理の概要を説明するための図である。
【図15】関連候補生成部による第2候補セル修正処理の処理フローを示す図である。
【図16】(a)及び(b)は、第2候補セル修正処理における画面例を示す図である。
【図17】連続候補生成部による第3候補セル修正処理の処理フローを示す図である。
【図18】(a)乃至(e)は、連続候補生成部を用いた場合の処理の概要を示す図である。
【図19】連続候補生成部による第3候補セル修正処理の処理フローを示す図である。
【図20】格子テーブルに格納されるデータの他の例を示す図である。
【図21】罫線の場合における格子テーブルの一例を示す図である。
【図22】(a)乃至(c)は、罫線の場合における処理の概要を説明するための図である。
【図23】コンピュータの機能ブロック図である。
【図24】(a)乃至(d)は、従来技術を説明するための図である。
【符号の説明】
【0108】
1 画像入力部 3 画像データ格納部 5 セル認識処理部
7 格子データ格納部 9 候補生成部 11 誤りセル入力部
13 候補データ格納部 15 候補表示部 17 候補選択入力部
19 表認識結果表示部
91 次候補生成部 93 関連候補生成部 95 連続候補生成部
【技術分野】
【0001】
本発明は、罫線や罫線で囲まれた領域であるセルで構成される表の画像から当該表を認識する技術に関し、より詳しくは自動的に認識された罫線やセルの修正のための技術に関する。
【背景技術】
【0002】
近年、業務の電子化に伴い多くの電子文書が利用されるようになっている。これまで紙文書で運用されてきた業務を電子化したり、紙で配布された文書を電子文書に変換したりするための技術としてOCR(optical character reader/optical character recognition)などの文書画像認識技術の重要性が増している。特に帳票文書などにおいて文書中に含まれる表を認識する技術は特に重要である。
【0003】
表は縦横の罫線で構成されていることが多い。表の構造を認識する表認識技術では、表中の罫線や、罫線に囲まれたセルの位置やサイズを認識する技術が開発されてきた。
【0004】
罫線抽出は、例えば文書画像の画素の縦横のランに基づいて罫線を抽出する方法がある(例えば、特開平1−217583号公報)。画像入力手段はスキャナ等で文書イメージを取得する。縦横のラン抽出手段は、縦方向又は横方向に黒画素が一定長以上連続している領域をラン領域として抽出する。縦横のラン統合手段は、抽出されたラン領域の中で近傍にあるものを統合して一つの罫線領域とする。最後に、抽出された罫線領域を罫線データ構造に格納する。
【0005】
また、特開平7−28939号公報では、入力した表画像が多少傾いても、正確に表部分のベクトル化ができるようにするための技術が開示されている。具体的には、表画像から表部分をベクトル化する装置に、表画像から、線分を水平/垂直方向の線分に分け、水平軸には垂直方向の線分のみを投影し、垂直軸には水平方向の線分のみを投影して罫線の投影像を求める投影部を設ける。また、罫線の投影像と同じ幅の直線を、メモリ上に水平/垂直方向から引き、それをマスク画像として生成するマスク画像生成部と、マスク画像に従って罫線を探索し、表部分をベクトル化する罫線探索部を設ける。そして、罫線探索部が、マスク画像から直線の交点を抽出し、抽出した交点間の距離に対する画素数の比率から、交点間の罫線の存在を決定する。
【0006】
セル抽出手法には、主に罫線に囲まれた矩形領域を抽出するものと、罫線が交差した位置である交点を抽出し、交点の位置関係に基づいてセル領域を抽出する方法とが存在する。罫線に囲まれた矩形領域を抽出する方法は、例えば、「複雑な構造を持つ表の認識に関する基礎検討」児島、清末、秋山、情報処理学会全国大会 第37回後期 6W-8 pp.1660-1661 (1988.10)(以下、非特許文献1と呼ぶ)、「多種帳票文書の構造認識」駱、渡辺、杉江、電子情報通信学会論文誌 D-II, Vol.J76-D-II, No.10, pp.2165-2176 (1993.10)(以下、非特許文献2と呼ぶ)など開示されている。さらに、特開平9−50527号公報も類似の原理を用いている。
【0007】
非特許文献2によるセル抽出手法は、以下のとおりである。すなわち、セル抽出を行う表の領域を対象領域と定め、対象領域の端から端へ達する横罫線で対象領域を分割する。分割した領域毎に、今度は縦に分割する。同様に横と縦の分割を順に行い、分割できなくなるまで続ける。そうすれば、セルが抽出されることとなる。
【0008】
また、罫線が交差した交点に基づいてセル領域を抽出する方法は様々な文献に開示されている。例えば、特開平8−212292号公報、特開平9−138837号公報、特開平10−40333号公報、特開平8−221506号公報などがある。その基本的な手順は、セルの左上を始点としてセル内部を右回りに辿り、始点に戻って来た経路がセルの領域を表すというものである。
【0009】
上で述べたような表認識技術により抽出された罫線やセルは誤りを含む場合がある。特に劣化した画像中の表を認識した場合は誤りが多数存在することが考えられる。そこで、表認識の精度を向上させて誤りを減らそうというアプローチと、ユーザによる誤り訂正の操作性を向上させようというアプローチにより、表認識誤りの悪影響を低減させようという試みが存在する。
【0010】
誤りを低減させる試みの1つには、罫線やセルの抽出結果をその時点では確定せずに複数の候補を生成し、最後に最適な候補の集合を選び出すという手法が提案されている。例えば、「複数セル候補の組み合わせ探索に基づく帳票画像からのセル抽出」田中、武部、藤本、電子情報通信学会技術報告PRMU2005-185 (2006.2)(以下、非特許文献3と呼ぶ)には、以下のような技術が開示されている。すなわち、表罫線が交差する交点の情報を用いてセル領域の候補を複数抽出し、組み合わせ探索によって最適なセル集合を求めるものである。本技術では、曖昧な交点には複数の候補を用意し、複数のセル候補を生成することによって交点誤りの影響の低減を実現している。
【0011】
一方で、誤り罫線やセルをユーザが修正する方法は、従来は誤った部分を削除してユーザが正しい罫線やセルを改めて入力したり、誤った罫線やセルの形状をユーザ操作により変形して正しい結果を生成するという方法が用いられていた。例えば、誤りセル1000をユーザがカーソル1001を用いて指定して(図24(a))削除し(図24(b))、その後で欠けた部分の罫線やセルをユーザが自ら描画して修正する(図24(c)及び(d))。また、複数のセルを描画しなければならない場合は、それだけ修正の手間がかかる。このような編集操作には、例えばセルや罫線の削除や挿入、形状の変形などいくつかの操作が存在する。
【0012】
また、特開平6−60222号公報には、以下のような技術が開示されている。すなわち、帳票にかかる画像デ―タに対してセパレータ候補を抽出し、このセパレータ候補の情報を画像データとともに表示させ、使用者は、キーボードなどを使ってのセパレータ候補の編集操作は画像データイメージが表示されている画面を見ながら修正をしたり、新たにセパレータを追加したりして選定を行なった後に書式データベースに登録する。これにより、データベースに登録されるセパレータ情報の登録ミス、情報の抜けを防止できるとともに、必要により情報の追加も行うことができるようになる。また、その後に、帳票を認識させるような場合に、書式データベースに登録されたセパレータ情報を参照させるようにすることで文字認識を簡単に行うことができるとともに、その認識精度を高めることもできる。但し、セルや罫線の候補を提示して選択させるような構成ではない。
【0013】
さらに、日本特許第2687902号公報には、文書を量子化画像データとして入力する文書画像入力部と、文書画像入力部から入力された文書画像を格納する文書画像記憶部と、文書画像に対し図表分離、表解析、段組分離、線分分離、行分離、文字分離を施し、レイアウト情報を抽出するレイアウト解析部と、レイアウト解析部において得られるレイアウト情報のうち、表項目を構成する罫線の輪郭の形状を用いて表項目分離誤りである可能性が高い部分を判別し、文字ピッチ、文字幅を用いた検証により線分分離誤りを判別し、また、行ピッチ、行幅を用いた検証により行分離誤りを判別し、それぞれに、誤りの種類を示すレイアウト誤りフラグを付加するレイアウト誤り候補検出部と、レイアウト誤りフラグが付加されたレイアウト情報を格納するレイアウト情報記憶部と、レイアウト解析部において得られた文字画像を認識し、文字コードを得る文字認識部と、文字認識部で得られた文字コードを格納する文字情報記憶部と、ユーザからのオペレーションを入力する修正指示入力部と、表項目分離誤りに対するレイアウト候補として領域分割方向と領域分割数、線分分離誤りに対するレイアウト候補として線分の方向、および、行分離誤りに対するレイアウト候補として文字列の方向をあらかじめ格納し、レイアウト情報記憶部と文書画像記憶部と文字情報記憶部との各々の出力を入力し、レイアウト誤りフラグに対応するレイアウト候補と文書画像および文字コードを表示情報として出力し、修正指示入力部の出力に従いレイアウト候補の中から正しいレイアウト候補を選択して再解析情報として出力し、また、修正指示入力部の出力に従い誤りのある文字コードを修正する修正処理部と、修正処理部で指定された再解析情報に基づいて、レイアウト解析部に対してレイアウト解析処理の再実行を起動する再解析制御部と、修正処理部から出力された表示情報を表示する画像表示部とを備える文書画像認識装置が開示されている。但し、セルの形状を直感的に選択できるようにするようなインターフェースは開示されていない。
【0014】
また、特開2001−118030号公報には、帳票の項目名定義作業を簡単化し、作業に要する時間を短縮するための技術が開示されている。具体的には、書類の画像から当該書類の書式を構成する複数の可変項目フィールドを抽出し、抽出した可変項目フィールドをオペレータに表示して一つの可変項目フィールドをオペレータに指示させ、その可変項目フィールドと特定関係にある固定項目フィールドの候補を画像上の特徴から抽出し、抽出した固定項目フィールドをオペレータに表示して一つまたは複数の固定項目フィールドをオペレータに指示させ、可変項目フィールドおよび固定項目フィールドの対応情報を記憶し、その対応情報を用いて書式データを編集する。これによって、項目名を簡単に短時間で定義できると共に1つの領域または可変項目フィールドに複数の項目名がある場合にも対応可能となる、というものである。本公報には、セルの形状を直感的に選択できるようにするようなインターフェースは開示されていない。
【0015】
さらに、特開2001−109888号公報には、画像の品質に対応した罫線抽出処理を行うことを可能とする罫線抽出技術が開示されている。具体的には、画像入力手段により入力画像が取得され、異なる解像度の画像生成手段で低解像度画像、高解像度画像が作成される。罫線候補領域抽出手段は、生成された低解像度画像を用いて罫線候補領域を抽出する。画像の品質評価手段は、抽出された罫線候補領域内の画素を探索することにより、画像の品質を評価し、品質に応じた処理方法または閾値を選択する手段は、画像の品質評価手段で評価された結果に基づいて、画像品質に適応した処理方法、または閾値の選択を行う。部分処理毎に適した画像解像度を選択する手段は、画像品質に基づいて、処理対象とする画像を選択する。以上の手段を経て、罫線抽出手段における適切な処理方法、閾値、処理対象画像が選択され、罫線が抽出される。本公報についても、セルの形状を直感的に選択できるようにするインターフェースは開示されていない。
【0016】
また、特開平11−219442号公報には、帳票の記入内容によって出力画像を変更し、編集出力する文書編集出力装置が開示されている。具体的には、文書画像と文書レイアウト規則とを照合することにより文書構造を解析する文書構造解析手段と、文書レイアウト規則を記憶する文書レイアウト規則記憶手段と、文書構造解析の結果得られる文書部分画像を記憶する入力画像データ記憶手段と、文書レイアウト規則に従い、文書部分画像内のコード化が可能なものに対してコード化を行う画像情報コード化手段と、画像情報コード化手段で得られるコード情報及び入力画像データ記憶手段に格納された文書部分画像の内容に応じて出力画像の内容を決定する出力規則を記憶する出力規則記憶手段と、出力規則を用いて出力内容を決定する出力情報決定手段と、出力情報決定手段から出力された文書内容を入力として出力画像を生成する編集出力手段を備える。本公報についても、セルの形状を直感的に選択できるようにするインターフェースは開示されていない。
【特許文献1】特開平1−217583号公報
【特許文献2】特開平7−28939号公報
【特許文献3】特開平9−50527号公報
【特許文献4】特開平8−212292号公報
【特許文献5】特開平9−138837号公報
【特許文献6】特開平10−40333号公報
【特許文献7】特開平8−221506号公報
【特許文献8】特開平6−60222号公報
【特許文献9】日本特許第2687902号公報
【特許文献10】特開2001−118030号公報
【特許文献11】特開2001−109888号公報
【特許文献12】特開平11−219442号公報
【非特許文献1】「複雑な構造を持つ表の認識に関する基礎検討」児島、清末、秋山、情報処理学会全国大会 第37回後期 6W-8 pp.1660-1661 (1988.10)
【非特許文献2】「多種帳票文書の構造認識」駱、渡辺、杉江、電子情報通信学会論文誌 D-II, Vol.J76-D-II, No.10, pp.2165-2176 (1993.10)
【非特許文献3】「複数セル候補の組み合わせ探索に基づく帳票画像からのセル抽出」田中、武部、藤本、電子情報通信学会技術報告PRMU2005-185 (2006.2)
【発明の開示】
【発明が解決しようとする課題】
【0017】
以上のように、帳票文書画像から抽出した罫線やセルに基づいて帳票フォーマットの設計を行う帳票設計支援装置において罫線やセルを自動抽出した結果が誤っていた場合、ユーザが誤った部分を指定して削除し、再描画したり変形したりといった編集操作を行う必要があった。このような編集操作による誤り訂正は、複数回の描画が必要な場合もあり、またユーザが細かな座標位置まで注意深く意識しなければならないなど、ユーザにとって大きな負担となっていた。
【0018】
従って、本発明の目的は、帳票文書画像などから自動抽出された罫線やセルを容易に修正できるようにするための支援技術を提供することである。
【0019】
さらに、本発明の他の目的は、帳票文書画像などから自動抽出された罫線やセルを修正する際の手間を削減するための技術を提供することである。
【課題を解決するための手段】
【0020】
本発明の第1の態様に係る表データ処理方法は、複数のセルを含む表の画像から複数の候補セルを生成し、当該候補セルの特定の組み合わせを抽出して初期的な表を出力するステップと、初期的な表においてユーザから当該初期的な表に含まれる特定の候補セルの指定を誤りセルの指定として受け付けるステップと、指定された上記誤りセルの少なくとも一部を置換可能な候補セルを上記候補セルの特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成ステップと、記憶装置に格納された候補集合をユーザに提示して、候補集合に含まれるいずれかの候補セルの選択を促す提示ステップとを含む。
【0021】
このようにすればユーザは候補集合に含まれるいずれかの候補セルを選択すればよいので、修正が容易になる。また、わざわざ座標を気にしつつ描画する必要なくなり、修正の手間も省ける。また、業務効率化も図られる。
【0022】
また、本発明の第1の態様に係る表データ処理方法は、候補集合に含まれる候補セルのそれぞれにつき、当該候補セルと同時に選択されるべき関連候補セルを特定する関連候補セル特定ステップを含むようにしてもよい。その場合、上で述べた提示ステップが、候補集合に含まれる候補セル及び当該候補セルの関連候補セルを提示するステップを含むようにしてもよい。このようにすることによってより修正が簡便になる。
【0023】
さらに、ユーザから候補集合に含まれるいずれかの候補セルの選択を次候補セルの選択として受け付けるステップと、選択された上記次候補セルの次に選択されるべき第3の候補セルを特定し、当該第3の候補セルのデータを記憶装置に格納する第3候補セル特定ステップと、記憶装置に格納された第3の候補セルをユーザに提示するステップとを含むようにしてもよい。このように連続的に修正を行うことができれば、修正の手間を削減することができるようになる。
【0024】
また、上で述べた関連候補セル特定ステップが、候補集合に含まれる候補セルのそれぞれにつき、当該候補セルと誤りセルとで重複しない、誤りセルの部分である非重複部分を特定するステップと、候補集合に含まれる候補セルのそれぞれにつき、非重複部分を含む、上記候補セルの特定の組み合わせ以外の候補セルを、関連候補セルとして特定するステップとを含むようにしてもよい。
【0025】
さらに、上で述べた第3候補セル特定ステップが、選択された上記次候補セルを採用し誤りセルを除外することによって生ずる初期的な表における空白を擬似誤りセルとして選択するステップと、擬似誤りセルを誤りセルとして上で述べた候補集合生成ステップ以降のステップを実行するステップとを含むようにしてもよい。
【0026】
さらに、上で述べた表は、候補セルの最小単位である格子ブロックに分割される場合もある。このような場合には、複数の候補セルの各々について、当該候補セルを構成する格子ブロックの識別データと、上記表を構成するセルであるか否かを表すデータとが格子データ格納部に格納されている場合もある。そして、上で述べた候補集合生成ステップが、指定された上記誤りセルを構成する格子ブロックを格子データ格納部から特定するステップと、格子データ格納部から、特定された上記格子ブロックを含む候補セルを、上記候補セルの特定の組み合わせ以外から抽出するステップとを含むようにしてもよい。格子ブロックを導入することによって、処理が簡略化され、高速化される。
【0027】
また、格子ブロック及び格子データ格納部を導入する場合には、上で述べた関連候補セル特定ステップが、格子データ格納部から特定される候補セルを構成する格子ブロックと、誤りセルを構成する格子ブロックとを比較することによって、候補集合に含まれる候補セルの各々について、当該候補セルと前記誤りセルとで重複せず且つ誤りセルに含まれる格子ブロックである非重複格子ブロックを特定するステップと、候補集合に含まれる候補セルの各々について、非重複格子ブロックを含む、上記候補セルの特定の組み合わせ以外の候補セルを、格子データ格納部から関連候補セルとして特定するステップとを含むようにしてもよい。
【0028】
さらに、格子ブロック及び格子データ格納部を導入する場合には、上で述べた候補集合生成ステップが、格子データ格納部において、指定された上記誤りセルに対して上記表を構成するセルから除外するようにデータを登録するステップと、指定された上記誤りセルを構成する格子ブロックを格子データ格納部から特定するステップと、特定された上記格子ブロックを含む候補セルを、格子データ格納部において誤りセルを除き上記表を構成するセルではないとされる候補セルから、候補集合に含まれる候補セルとして抽出するステップとを含むようにしてもよい。また、上で述べた第3候補セル特定ステップが、格子データ格納部において、選択された上記次候補セルを上記表を構成するセルとして登録するステップと、格子データ格納部において、選択された上記次候補セルを除き上記表を構成するセルとして登録されている候補セルのうち、誤りセルを構成する格子ブロックを含む候補セルを特定し、上記表を構成するセルから除外するようにデータを登録するステップと、格子データ格納部において、上記表を構成するセルとして登録されている候補セルのいずれにも採用されていない格子ブロックを擬似誤りセルとして特定するステップと、擬似誤りセルを誤りセルとして上で述べた候補集合生成ステップ以降のステップを実行するステップとを含むようにしてもよい。
【0029】
以上述べた構成では、セルについて説明したが罫線についても同様である。すなわち、本発明の第2の態様に係る表データ処理方法は、複数の罫線を含む表の画像から複数の候補罫線を生成し、当該候補罫線の特定の組み合わせを抽出して初期的な表を出力するステップと、初期的な表においてユーザから当該初期的な表に含まれる特定の候補罫線の指定を誤り罫線の指定として受け付けるステップと、指定された上記誤り罫線の少なくとも一部を置換可能な候補罫線を上記候補罫線の特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成ステップと、記憶装置に格納された候補集合をユーザに提示して、候補集合に含まれるいずれかの候補罫線の選択を促す提示ステップとを含む。
【0030】
本発明にかかる方法をコンピュータに実行させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブル・ディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等の記憶媒体又は記憶装置に格納される。また、ネットワークを介してディジタル信号にて頒布される場合もある。なお、処理途中のデータについては、コンピュータのメモリ等の記憶装置に一時保管される。
【発明の効果】
【0031】
本発明によれば、帳票文書画像などから自動抽出された罫線やセルを容易に修正できるようになる。
【0032】
本発明の他の側面によれば、帳票文書画像などから自動抽出された罫線やセルを修正する際の手間を削減することができるようになる。
【発明を実施するための最良の形態】
【0033】
図1に、本発明の実施の形態に係る帳票設計支援装置に係る機能ブロック図を示す。本実施の形態における帳票設計支援装置100は、表などを含む文書を光学的に読み込むスキャナなどの装置である画像入力部1と、画像入力部1が読み取った画像データを格納する画像データ格納部3と、読み取った画像データから表を構成するセルを自動的に認識する処理を実施するセル認識処理部5と、セル認識処理部5により生成された格子テーブルなどのデータを格納する格子データ格納部7と、格子データ格納部7に格納されているデータを用いて認識結果を表示装置に表示する表認識結果表示部19と、表認識結果表示部19によって表示された認識結果に含まれる候補セルについてユーザによる誤りセルの指定を受け付ける誤りセル入力部11と、格子データ格納部7に格納されているデータを用いてユーザに対して提示すべき候補セルを特定する処理を実施する候補生成部9と、候補生成部9により特定された候補セルのデータなどを格納する候補データ格納部13と、候補データ格納部13に格納されたデータを用いてユーザに提示すべき候補セル等を表示装置に表示する候補表示部15と、ユーザによる候補選択入力を受け付け、格子データ格納部7に格納されたデータを更新すると共に、候補表示部15や表認識表示部19と連携する候補選択入力部17とを有する。
【0034】
候補生成部9は、次候補生成部91と、関連候補生成部93と、連続候補生成部95との少なくともいずれかを含む。
【0035】
次に、図1に示した帳票設計支援装置100の処理を図2乃至図22を用いて説明する。まず、画像入力部1は、表などを含む帳票文書などを光学的に読み取り、当該帳票文書を含む画像を生成して画像データ格納部3に格納する。帳票文書を含む画像のファイルを他の記憶装置から取得したり、ネットワークを介して他のコンピュータから取得するようにしてもよい。例えば、図3(a)のような画像が取得されるものとする。なお、図3(a)において点線で表示されている部分は、罫線が存在するか否かが曖昧な部分(例えば罫線がかすれて半分程度しか残っていない部分など)を表している。
【0036】
次に、セル認識処理部5は、画像データ格納部3に格納されている画像データから、例えば非特許文献3(若しくは特願2006−31581)に開示されているアルゴリズムに従って格子データを生成し、格子データ格納部7に格納する(ステップS1)。具体的には、表を構成する縦横の罫線を抽出し、図3(b)に示すように、各罫線の格子点(交点及び例えば同方向の罫線に存在する交点を写像した点)の座標を特定すると共に、各格子点に識別子を付与する。座標は、予め定められた点(例えば左上の格子点)を原点とした場合の座標である。格子点の識別子については、例えば左上の格子点を1として、縦方向に通番で格子点に番号を付し、横方向にも通番で格子点に番号を付す。そうすると、例えば図4に示すようなデータが格子データ格納部7に格納される。すなわち、格子点毎に座標値が格納される。
【0037】
なお、これ以降は、罫線の長さの情報は無くとも、図4に示したテーブルで格子点の座標を得ることができるので、図3(c)に示すように、各セルの縦横長さが均等な状態を想定すればよい。また、図3(b)及び図3(c)において、セルを構成する可能性のある最も小さい候補セルを格子ブロックと呼ぶものとする。図3(b)及び図3(c)においては、格子ブロックa乃至dが存在する。さらに、例えば図3(c)に示すように、座標値に基づき、格子ブロックaには格子インデックス(1,1)、格子ブロックbには格子インデックス(1,2)、格子ブロックcには格子インデックス(2,1)、格子ブロックdには格子インデックス(2,2)が付与される。格子ブロックを用いることによって、座標の比較処理などを最小限に押さえることができ、処理を簡略化・高速化させることができるようになる。
【0038】
次に、セル認識処理部5は、上記アルゴリズムに従って候補セル集合を生成する(ステップS3)。例えば罫線の確からしさなどから、図3(d)の例では、格子ブロックaから構成される候補セル(1)、格子ブロックbから構成される候補セル(2)、格子ブロックb乃至dから構成される候補セル(3)、格子ブロックc及びdから構成される候補セル(4)が、特定される。但し、この段階では、罫線などから候補セルを特定して、候補セルと格子ブロックとの対応関係は特定されていないものとする。
【0039】
そして、セル認識処理部5は、各候補セルを構成する格子ブロックを特定し、格子テーブルを生成して格子データ格納部7に格納する(ステップS5)。具体的には、各候補セルの頂点座標と格子データ格納部7に格納されている格子点座標(図4)とを比較し、各候補セルの各頂点について最も近い格子点を対応付け、セルの頂点と格子点との対応関係に基づき、各候補セルが包含する格子ブロックを特定し、登録する。
【0040】
例えば、図5に示すような格子テーブルが格子データ格納部7に格納される。図5の例では、候補セルの採否を表す採用フラグの列と、候補セル番号の列と、候補セルの座標の列と、候補セルを構成する格子インデックスの列とを含む。この段階では、採用フラグについては全てオフにセットされている。座標については、基本的には左上の頂点(又は格子点)の座標と右下の頂点(又は格子点)の座標とが登録される。候補セル(3)の場合には、2つの領域に分けて左上の頂点及び右下の頂点の座標を登録してもよいし、全ての頂点の座標を登録するようにしてもよい。
【0041】
さらに、セル認識処理部5は、上記アルゴリズムに従って、表を完成させる、候補セルの組み合わせの候補を抽出すると共に、その中から最も確からしい、候補セルの最適組み合わせを特定し、格子データ格納部7の格子テーブルに登録する(ステップS7)。例えば図3(e)の例では、候補セル(1)と候補セル(3)との組み合わせと、候補セル(1)と候補セル(2)と候補セル(4)との組み合わせとが候補として抽出される。そして、これらの中から最も確からしい候補が図3(e)の右側であると特定される。そうすると、格子データ格納部7の格子テーブルにおいて、候補セル(1)と候補セル(2)と候補セル(4)との採用フラグがオンにセットされる。図5の例では、第1行目、第2行目、第4行目の採用フラグがオンにセットされる。
【0042】
そうすると、表認識結果表示部19は、格子データ格納部7に格納されている格子テーブルのデータを用いて、候補セルの最適組み合わせを表認識結果として表示装置に表示する(ステップS9)。例えば、図3(f)に示すような表示がなされるようになる。
【0043】
そして、ユーザによって予め定められたキーや表示画面に表示されている所定のボタンなどがクリックされると、候補セル修正処理を実施するようになる(ステップS11)。例えば、例えば図3(f)に示されるような表が表示されている場合に、ユーザによりいずれかの候補セルが誤りセルとして選択された場合に、ステップS11を実行するようにしてもよい。
【0044】
ステップS11の処理については、次候補生成部91を用いた場合、関連候補生成部93を用いた場合、連続候補生成部95を用いた場合で異なるので、それぞれについて説明する。
【0045】
(1)次候補生成部91を用いた場合
次候補生成部91を用いた場合の処理について図6乃至図12を用いて説明する。ユーザは、表示装置に表示された、認識結果である初期的な表を見て、誤認識が無いか確認する。そして誤認識が存在している場合には、入力装置(例えばマウスやペン)を用いて、誤認識に係るセルを指定する。帳票設計支援装置100の誤りセル入力部11は、ユーザからの誤りセルの選択入力を受け付け(ステップS21)、誤りセルのデータを候補生成部9に出力する。
【0046】
例えば、図7に示すような表を含む画像を処理する例を説明する。点線は、罫線のかすれを示している。このような場合には、上で述べた処理において、図8に示すような格子ブロック群(インデックス(1,1)乃至(1,4)、(2,1)乃至(2,4))が認識され、図9に示すような格子テーブルが形成される。格子テーブルの形式は図5に示したものと同様である。図9のような格子テーブルに従えば、表認識結果表示部19は、図10(a)に示すような表示を行う。但し、この段階では誤りセルを意味する強調表示(ハッチング)はまだなされない。ユーザが誤りセルを指定すると、誤りセルが強調表示され、当該誤りセルのデータが次候補生成部91に出力される。
【0047】
候補生成部9の次候補生成部91は、誤りセルのデータを受信すると、格子データ格納部7内の格子テーブルにおいて誤りセルを不採用に変更する(ステップS23)。なお、誤りセルの候補セル番号(図10(a)の例では候補セル番号(2))などについては例えばメインメモリに保持しておく。また、次候補生成部91は、格子データ格納部7内の格子テーブルから、誤りセルを構成する格子ブロックのインデックスを特定する(ステップS25)。誤りセルのレコードにおいて格子インデックスの列のデータを読み出す。図9の例では、候補セル番号(2)が誤りセルなので、インデックス(1,2)及び(1,3)が特定される。
【0048】
次に、候補生成部9は、誤りセルを除く不採用候補セルの中から誤りセルを構成するいずれかの格子ブロックを含む候補セルを次候補セルとして選択する(ステップS27)。図9の例では、格子ブロックのインデックス(1,2)又は(1,3)を含む候補セルを選択することになるので、図10(b)に示すように、候補セル番号(6)、(7)、(8)、(9)が選択される。
【0049】
但し、(6)を選択した場合には、(7)が選択されることになり、(7)を選択すると、(6)が選択されることになるので、(7)については除外する場合もある。すなわち、誤りセルを構成する格子ブロックが2つの場合、そのいずれかの格子ブロックのみを次候補セルとして選択するようにしてもよい。また、候補セルの尤度が保持されている場合には、尤度が低い候補セルを除外したり、他のルール(例えば他の候補セルとの関係で互いに相補的な関係にある候補セルはいずれかのみを選択するルールなど)によって除外するようにしてもよい。
【0050】
そして、次候補生成部91は、次候補セルのデータ(候補セル番号及び座標のデータなど)を候補データ格納部13に格納する。
【0051】
候補表示部15は、次候補セルを表示装置に提示する(ステップS29)。次候補セルの提示方法は、例えば図11(a)及び(b)に示すように、次候補セルを所定の順番で表示するような方式であってもよい。すなわち、NGボタンがクリックされると、次の次候補セルが表示される。全ての次候補セルが表示し終わった場合には最初の次候補セルを表示すればよい。一方、全ての次候補セルを、他の表示欄等において提示するようにして、いずれかを選択させる方式を採用してもよい。この際、次候補セルの形状のみではなく、例えば縮小表示された表全体を提示するようにしてもよい。ユーザは、表示された次候補セルのうち適切と考えるものを選択する。
【0052】
候補選択入力部17は、ユーザから次候補セルの選択入力を受け付け、当該次候補セルの候補セル番号から、格子データ格納部7内の格子テーブルにおいて採用フラグをオンにセットする(ステップS31)。そして、候補選択入力部17は、表認識結果表示部19に対し、格子データ格納部7に格納されているデータを基に表示をリフレッシュするように指示する。表認識結果表示部19は、候補選択入力部17からの指示に従って、格子データ格納部7に格納されているデータを用いて表示を更新する(ステップS33)。
【0053】
以上のような処理を実施することによって、ユーザは正しいセルを座標を気にしつつ描画する必要はなく、次候補セルを選択するだけで済む。すなわち、容易に修正を行うことができ、ユーザの手間を削減することができるようになる。
【0054】
なお、ステップS27については、図12に示すような処理を行う。すなわち、格子データ格納部7内の格子テーブルにおいて、未処理の不採用候補セルを特定する(ステップS41)。すなわち、採用フラグがオフにセットされている候補セルを1つ特定する。そして、特定された不採用候補セルが、ステップS25で特定されており且つ誤りセルを構成する格子ブロックと完全に同じ格子ブロックで構成されているか判断する(ステップS43)。すなわち、誤りセルは不採用候補セルとなるので、ステップS43で誤りセルを次候補セルとして提示しないようにするものである。不採用候補セルが、誤りセルを構成する格子ブロックと完全に同じ格子ブロックで構成されている場合にはステップS49に移行する。
【0055】
一方、不採用セルが、誤りセルを構成する格子ブロックと完全に同じ格子ブロックで構成されているとは言えない場合には、特定された不採用候補セルが、誤りセルと一部同じ格子ブロックを含むか判断する(ステップS45)。誤りセルと同じ格子ブロックを全く含まない場合には、誤りセルを置換できるような候補セルではないので、ステップS49に移行する。一方、特定された不採用候補セルが、誤りセルと一部同じ格子ブロックを含む場合には、当該不採用候補セルを次候補セルとして特定する(ステップS47)。
【0056】
そして、全ての不採用候補セルについて処理したか判断し(ステップS49)、未処理の不採用候補セルが存在している場合にはステップS41に戻り、全ての不採用候補セルについて処理が完了した場合には元の処理に戻る。
【0057】
(2)関連候補生成部93を用いた場合
次に関連候補生成部93を用いた場合の処理を図13乃至図16を用いて説明する。次候補生成部91の処理では、1つの誤りセルの選択につき、1つの候補セルしか修正できないが、実際には1つ誤りセルが存在すると、その影響は他の候補セルにも及ぶ場合が多い。ここでは、同時に2つ以上の候補セルを組み合わせて関連候補として提示する。関連候補は、(a)組み合わせ中のいずれの候補セルも、誤りセル及び当該組み合わせのコアとなる次候補セルと完全一致せず、(b)組み合わせた候補セル同士には重なりが無く、(c)組み合わせた候補セルと次候補セルを合わせると誤りセルを埋めるというものである。
【0058】
まず、ユーザは、表示装置に表示された、認識結果である初期的な表を見て、誤認識が無いか確認する。そして誤認識が存在している場合には、入力装置(例えばマウスやペン)を用いて、誤認識に係るセルを指定する。帳票設計支援装置100の誤りセル入力部11は、ユーザからの誤りセルの選択入力を受け付け(ステップS51)、誤りセルのデータを候補生成部9に出力する。ここでも、図7に示すような表を含む画像を処理する例を説明する。同様に、上で述べた処理において、図8に示すような格子ブロック群が認識され、図9に示すような格子テーブルが形成されるものとする。そうすると、表認識結果表示部19は、図14(a)に示すような表示を行う。但し、この段階では誤りセルを意味する強調表示(ハッチング)はまだなされない。ユーザが誤りセルを指定すると、誤りセルが強調表示され、当該誤りセルのデータが関連候補生成部93に出力される。
【0059】
候補生成部9の関連候補生成部93は、誤りセルのデータを受信すると、格子データ格納部7内の格子テーブルにおいて誤りセルを不採用に変更する(ステップS53)。なお、誤りセルの候補セル番号(図14(a)の例では候補セル(2))などについては例えばメインメモリに保持しておく。また、関連候補生成部93は、格子データ格納部7内の格子テーブルから、誤りセルを構成する格子ブロックのインデックスを特定する(ステップS55)。誤りセルのレコードにおいて格子インデックスの列のデータを読み出す。図9の例では、候補セル番号(2)が誤りセルなので、インデックス(1,2)及び(1,3)が特定される。
【0060】
次に、関連候補生成部93は、誤りセルを除く不採用候補セルの中から誤りセルを構成するいずれかの格子ブロックを含む候補セルを次候補セルとして選択する(ステップS57)。図9の例では、格子ブロックのインデックス(1,2)又は(1,3)を含む候補セルを選択することになるので、候補セル(6)、(7)、(8)、(9)が選択される。なお、具体的には図12の処理を実施する。
【0061】
また、関連候補生成部93は、各次候補セルについて、誤りセルと共有する(すなわち誤りセルと共通する)格子ブロックのインデックスを特定し、例えばメインメモリなどの記憶装置に格納する(ステップS59)。図9の例では、候補セル(6)については格子ブロック(1,2)が特定され、候補セル(7)については格子ブロック(1,3)が特定され、候補セル(8)については格子ブロック(1,3)が特定され、候補セル(9)については(1,2)が特定される。
【0062】
さらに、関連候補生成部93は、各次候補セルについて、誤りセルから、ステップS59で特定された格子ブロックを除外した後の格子ブロックのインデックスを残余格子ブロックとして抽出し、例えばメインメモリなどの記憶装置に格納する(ステップS61)。候補セル(6)については格子ブロック(1,3)が特定され、候補セル(7)については格子ブロック(1,2)が特定され、候補セル(8)については格子ブロック(1,2)が特定され、候補セル(9)については(1,3)が特定される。
【0063】
そして、関連候補生成部93は、誤りセルを除き不採用の候補セルから、各次候補セルについて、残余格子ブロックを含み且つ当該次候補セルとは異なる候補セルを関連候補セルとして特定し、次候補セルと関連候補セルとの組み合わせを関連候補として、候補データ格納部13に登録する(ステップS63)。
【0064】
候補セル(6)については、格子ブロック(1,3)を含む候補セル(7)及び候補セル(8)が特定される。すなわち、候補セル(6)と(7)との組み合わせである関連候補と、候補セル(6)と(8)との組み合わせである関連候補とが構成され、これらの候補セル番号及び座標データなどが候補データ格納部13に格納される。
【0065】
候補セル(7)については、格子ブロック(1,2)を含む候補セル(6)及び候補セル(9)が特定される。すなわち、候補セル(7)及び(6)との組み合わせである関連候補と、候補セル(7)及び(9)との組み合わせである関連候補とが構成され、これらの候補セル番号及び座標データなどが候補データ格納部13に格納される。
【0066】
候補セル(8)については、格子ブロック(1,2)を含む候補セル(6)及び候補セル(9)が特定される。すなわち、候補セル(8)及び(6)との組み合わせである関連候補と、候補セル(8)及び(9)との組み合わせである関連候補とが構成され、これらの候補セル番号及び座標データなどが候補データ格納部13に格納される。
【0067】
候補セル(9)については、格子ブロック(1,3)を含む候補セル(7)及び候補セル(8)が特定される。すなわち、候補セル(9)及び(7)との組み合わせである関連候補と、候補セル(9)及び(8)との組み合わせである関連候補とが構成され、これらの候補セル番号及び座標データなどが候補データ格納部13に格納される。
【0068】
これらをまとめると図14(b)に示すように8つの関連候補が生成されたことになる。図14(b)でハッチングが付されている候補セルが次候補セルである。但し、次候補セルと関連候補セルとの組み合わせとしては、図14(b)に示されているように重複があるので実質4つの関連候補しかない。
【0069】
処理は端子Aを介して図15の処理に移行して、関連候補生成部93は、上で述べたように、関連候補の中で同一の格子ブロックの組み合わせを抽出して、存在する場合にはそれらをマージする処理を実施する(ステップS65)。具体的には、候補データ格納部13において、重複する関連候補セルのデータを1つを残して残りを削除する。
【0070】
そして候補表示部15は、関連候補を表示装置に提示する(ステップS67)。関連候補の提示方法は、例えば図16(a)及び(b)に示すように、関連候補を所定の順番で表示するような方式であってもよい。すなわち、NGボタンがクリックされると、次の関連候補が表示される。全ての関連候補が表示し終わった場合には最初の関連候補を表示すればよい。一方、全ての関連候補を、他の表示欄において提示するようにして、いずれかを選択させる方式を採用してもよい。この際、関連候補の形状のみではなく、例えば縮小表示された表全体を提示するようにしてもよい。ユーザは、表示された関連候補のうち適切と考えるものを選択する。
【0071】
候補選択入力部17は、ユーザから関連候補の選択入力を受け付け、当該関連候補の候補セル番号から、格子データ格納部7内の格子テーブルにおいて採用フラグをオンにセットする(ステップS69)。そして、候補選択入力部17は、表認識結果表示部19に対し、格子データ格納部7に格納されているデータを基に表示をリフレッシュするように指示する。表認識結果表示部19は、候補選択入力部17からの指示に従って、格子データ格納部7に格納されているデータを用いて表示を更新する(ステップS71)。
【0072】
以上のような処理を実施することによって、ユーザは関連候補を選択するだけで済むようになる。2つ以上の候補セルが一度に設定できるので、よりユーザの手間が削減されている。
【0073】
(3)連続候補生成部95を用いた場合
次に連続候補生成部95を用いた場合の処理を図17乃至図22を用いて説明する。連続候補生成部95の処理では、1つの誤りセルの選択につき、1つの候補セルしか修正できないが、実際には1つ誤りセルが存在すると、その影響は他の候補セルにも及ぶ場合が多い。ここでは、連続的に誤りセルを指定できるようにして、その都度次候補セルを提示することで、ユーザビリティ及び効率を向上させるものである。
【0074】
まず、ユーザは、表示装置に表示された、認識結果である初期的な表を見て、誤認識が無いか確認する。そして誤認識が存在している場合には、入力装置(例えばマウスやペン)を用いて、誤認識に係るセルを指定する。帳票設計支援装置100の誤りセル入力部11は、ユーザからの誤りセルの選択入力を受け付け(ステップS81)、誤りセルのデータを候補生成部9に出力する。ここでも、図7に示すような表を含む画像を処理する例を説明する。同様に、上で述べた処理において、図8に示すような格子ブロック群が認識され、図9に示すような格子テーブルが形成されるものとする。そうすると、表認識結果表示部19は、図18(a)に示すような表示を行う。但し、この段階では誤りセルを意味する強調表示(ハッチング)はまだなされない。ユーザが誤りセルを指定すると、誤りセルが強調表示され、当該誤りセルのデータが連続候補生成部95に出力される。
【0075】
候補生成部9の連続候補生成部95は、誤りセルのデータを受信すると、格子データ格納部7内の格子テーブルにおいて誤りセルを不採用に変更する(ステップS83)。なお、誤りセルの候補セル番号(図18(a)の例では候補セル番号(2))などについては例えばメインメモリに保持しておく。また、連続候補生成部95は、格子データ格納部7内の格子テーブルから、誤りセルを構成する格子ブロックのインデックスを特定する(ステップS85)。誤りセルのレコードにおいて格子インデックスの列のデータを読み出す。図9の例では、候補セル番号(2)が誤りセルなので、(1,2)及び(1,3)が特定される。
【0076】
次に、連続候補生成部95は、誤りセルを除く不採用候補セルの中から誤りセルを構成するいずれかの格子ブロックを含む候補セルを次候補セルとして選択する(ステップS87)。図9の例では、格子ブロックのインデックス(1,2)又は(1,3)を含む候補セルを選択することになるので、候補セル(6)、(7)、(8)、(9)が選択される。なお、具体的には図12の処理を実施する。
【0077】
そして、連続候補生成部95は、次候補セルのデータ(候補セル番号及び座標のデータなど)を候補データ格納部13に格納する。
【0078】
候補表示部15は、次候補セルを表示装置に提示する(ステップS89)。次候補セルの提示方法は、例えば図11(a)及び(b)に示すように、次候補セルを所定の順番で表示するような方式であってもよい。一方、全ての次候補セルを、他の表示欄において提示するようにして、いずれかを選択させる方式を採用してもよい。ユーザは、表示された次候補セルのうち適切と考えるものを選択する。
【0079】
候補選択入力部17は、ユーザから次候補セルの選択入力を受け付け、当該次候補セルの候補セル番号から、格子データ格納部7内の格子テーブルにおいて採用フラグをオンにセットする(ステップS91)。また、表認識結果表示部19は、候補選択入力部17からの指示に応じて、格子データ格納部7内の格子テーブルに従って、表示を更新する(ステップS92)。
【0080】
次に、連続候補生成部95は、格子データ格納部7の更新に応じて、選択された次候補セル(今回採用フラグがオンにセットされた候補セル)を構成する格子ブロックのインデックスを、格子テーブルから特定し、例えばメインメモリなどの記憶装置に格納する(ステップS93)。候補セル(6)が選択されれば格子ブロック(1,2)が特定され、候補セル(7)が選択されれば格子ブロック(1,3)が特定され、候補セル(8)が特定されれば格子ブロック(1,3)及び(1,4)が特定され、候補セル(9)が特定されれば格子ブロック(1,2)及び(2,2)が特定される。ここでは、図18(b)に示されているように、候補セル(9)が選択されたものとすると、格子ブロック(1,2)及び(2,2)が特定され、メインメモリなどの記憶装置に格納される。
【0081】
処理は端子Bを介して図19の処理に移行し、連続候補生成部95は、格子データ格納部7内の格子テーブルにおいて、選択された次候補セルを除く採用候補セルの中から、選択された次候補セルを構成するいずれかの格子ブロックを含む候補セルを抽出し、例えばメインメモリなどの記憶装置に格納する(ステップS95)。図9の例では、候補セル(5)が抽出される。但し、場合によっては存在しない場合もある。
【0082】
そして、連続候補生成部95は、ステップS95で候補セルが抽出できたか判断する(ステップS97)。抽出できなければステップS101に移行する。一方、抽出された候補セルが存在すれば、格子テーブルにおいて、当該抽出された候補セルを不採用に変更する(ステップS99)。ここで不採用に変更された候補セルのセル番号も例えばメインメモリなどの記憶装置に格納しておく。上の例では候補セル(5)の採用フラグがオフにセットされる。これは、図18(c)に示すように、新たに採用となった次候補セルと重なる候補セルを削除する処理である。
【0083】
その後、連続候補生成部95は、全ての格子ブロックから、採用となっていない格子ブロックのインデックスを抽出する(ステップS101)。ステップS101の段階で格子テーブルは図20に示したような状態となっており、採用候補セルの格子ブロックは、(1,1)、(1,2)、(1,4)、(2,1)、(2,2)となり、全体の格子ブロック(1,1)乃至(1,4)及び(2,1)乃至(2,4)から、採用となっていない格子ブロックは、(1,3)、(2,3)及び(2,4)であることが特定される。
【0084】
そして、連続候補生成部95は、採用となっていない格子ブロックがステップS101で抽出できたか判断する(ステップS103)。もし、採用となっていない格子ブロックが存在しない場合には、全ての格子ブロックが候補セルによって埋められているので、元の処理に戻る。
【0085】
一方、採用となっていない格子ブロックが存在する場合には、ステップS101で特定された全ての格子ブロックを擬似誤りセルとして特定し、例えばメインメモリなどの記憶装置に格納する(ステップS105)。そして端子Cを介してステップS87に戻り、擬似誤りセルを、ユーザにより指定された誤りセルとして処理を実施する。なお、ユーザによって指定された誤りセルは二度と採用されないので、ステップS87では必ず除外対象に入れる。さらに、ステップS99で不採用に設定された候補セルについても提示するのは不適切であるから、ステップS87では必ず除外対象に入れる。
【0086】
図20の例では、図18(d)でハッチングが付された部分が擬似誤りセルとして特定される。従って、次のステップS87では、(1,3)、(2,3)及び(2,4)のいずれかを含む不採用の候補セルを特定すると、候補セル(7)、候補セル(8)、候補セル(10)が次候補セルとして特定される。すなわち、図18(e)に示すように候補セルが3種類提示されるようになる。提示の仕方はステップS89で述べたとおりである。
【0087】
このような処理を行うことによって、誤りセルを指定することによって生ずる他の誤りセルを順次修正することができるようになり、ユーザの修正作業が簡便且つ容易になる。さらに、業務効率も改善される。
【0088】
以上表におけるセルの修正について説明したが、本実施の形態は、表を構成する罫線の修正にも適用することができる。具体的には、図21に示すような格子テーブルを用いる。すなわち、採用フラグの列と、罫線番号の列と、座標(始点及び終点)の列と、始点インデックス(格子点の識別子)の列と、終点インデックスの列とが設けられている。このように、格子ブロックのインデックスではなく、始点及び終点の格子点の識別子(インデックス)で特定する。罫線の場合でも、格子ブロックを単位格子点間の罫線であるとして処理すれば、同様の処理で対処できる。
【0089】
また、罫線の場合も、図22(a)に示すように、ユーザが誤り罫線を指定すると、図22(b)に示すように、罫線候補が表示される。図22(b)の例では、全ての候補(候補A乃至C)を一度に表示する例を示している。罫線の場合には、表示スペースに余裕があるので、一度に表示してもあまり問題とならない場合が多いが、1つずつ罫線候補を提示するようにしてもよい。ユーザが例えば罫線候補Bを指定すれば、図22(c)に示すように、罫線が置換されるようになる。
【0090】
以上本発明の実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、画面例は一例にすぎず、様々な形態に変更可能である。すなわち、OKボタンやNGボタンを用いなくとも、所定のキーを押すことによって次候補を表示させるようにしてもよいし、エンターキーで確定されるようにすることも可能である。
【0091】
また、図1に示した機能ブロック図は一例であって、必ずしも実際のプログラムモジュール構成を表すものではない。
【0092】
さらに、帳票設計支援装置100は、図23のようなコンピュータ装置であって、メモリ2501(記憶装置)とCPU2503(処理装置)とハードディスク・ドライブ(HDD)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施の形態における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。必要に応じてCPU2503は、表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ2501に格納され、必要があればHDD2505に格納される。本発明の実施の形態では、上で述べた処理を実施するためのアプリケーション・プログラムはリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【0093】
(付記1)
複数のセルを含む表の画像から複数の候補セルを生成し、当該候補セルの特定の組み合わせを抽出して初期的な表を出力するステップと、
前記初期的な表においてユーザから当該初期的な表に含まれる特定の候補セルの指定を誤りセルの指定として受け付けるステップと、
指定された前記誤りセルの少なくとも一部を置換可能な候補セルを前記候補セルの特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成ステップと、
前記記憶装置に格納された前記候補集合をユーザに提示して、前記候補集合に含まれるいずれかの候補セルの選択を促す提示ステップと、
を含み、コンピュータにより実行される表データ処理方法。
【0094】
(付記2)
前記候補集合に含まれる前記候補セルのそれぞれにつき、当該候補セルと同時に選択されるべき関連候補セルを特定する関連候補セル特定ステップ
を含み、
前記提示ステップが、
前記候補集合に含まれる前記候補セル及び当該候補セルの関連候補セルを提示するステップ
を含む付記1記載の表データ処理方法。
【0095】
(付記3)
ユーザから前記候補集合に含まれるいずれかの候補セルの選択を次候補セルの選択として受け付けるステップと、
選択された前記次候補セルの次に選択されるべき第3の候補セルを特定し、当該第3の候補セルのデータを前記記憶装置に格納する第3候補セル特定ステップと、
前記記憶装置に格納された前記第3の候補セルをユーザに提示するステップと、
を含む付記1記載の表データ処理方法。
【0096】
(付記4)
前記関連候補セル特定ステップが、
前記候補集合に含まれる前記候補セルのそれぞれにつき、当該候補セルと前記誤りセルとで重複しない、前記誤りセルの部分である非重複部分を特定するステップと、
前記候補集合に含まれる前記候補セルのそれぞれにつき、前記非重複部分を含む、前記候補セルの特定の組み合わせ以外の候補セルを、前記関連候補セルとして特定するステップと、
を含む付記2記載の表データ処理方法。
【0097】
(付記5)
前記第3候補セル特定ステップが、
選択された前記次候補セルを採用し前記誤りセルを除外することによって生ずる前記初期的な表における空白を擬似誤りセルとして選択するステップと、
前記擬似誤りセルを前記誤りセルとして前記候補集合生成ステップ以降のステップを実行するステップと、
を含む付記3記載の表データ処理方法。
【0098】
(付記6)
前記表は、前記候補セルの最小単位である格子ブロックに分割されており、
前記複数の候補セルの各々について、当該候補セルを構成する格子ブロックの識別データと、前記表を構成するセルであるか否かを表すデータとが格子データ格納部に格納されており、
前記候補集合生成ステップが、
指定された前記誤りセルを構成する格子ブロックを前記格子データ格納部から特定するステップと、
前記格子データ格納部から、特定された前記格子ブロックを含む候補セルを、前記候補セルの特定の組み合わせ以外から抽出するステップと、
を含む付記1記載の表データ処理方法。
【0099】
(付記7)
前記表は、前記候補セルの最小単位である格子ブロックに分割されており、
前記複数の候補セルの各々について、当該候補セルを構成する格子ブロックの識別データと、前記表を構成するセルであるか否かを表すデータとが格子データ格納部に格納されており、
前記候補集合生成ステップが、
指定された前記誤りセルを構成する格子ブロックを前記格子データ格納部から特定するステップと、
前記格子データ格納部から、特定された前記格子ブロックを含む候補セルを、前記候補セルの特定の組み合わせ以外から前記候補集合に含まれる候補セルとして抽出するステップと、
を含み、
前記関連候補セル特定ステップが、
前記格子データ格納部から特定される前記候補セルを構成する格子ブロックと、前記誤りセルを構成する格子ブロックとを比較することによって、前記候補集合に含まれる候補セルの各々について、当該候補セルと前記誤りセルとで重複せず且つ前記誤りセルに含まれる格子ブロックである非重複格子ブロックを特定するステップと、
前記候補集合に含まれる候補セルの各々について、前記非重複格子ブロックを含む、前記候補セルの特定の組み合わせ以外の候補セルを、前記格子データ格納部から前記関連候補セルとして特定するステップと、
を含む付記2記載の表データ処理方法。
【0100】
(付記8)
前記表は、前記候補セルの最小単位である格子ブロックに分割されており、
前記複数の候補セルの各々について、当該候補セルを構成する格子ブロックの識別データと、前記表を構成するセルであるか否かを表すデータとが格子データ格納部に格納されており、
前記候補集合生成ステップが、
前記格子データ格納部において、指定された前記誤りセルに対して前記表を構成するセルから除外するようにデータを登録するステップと、
指定された前記誤りセルを構成する格子ブロックを前記格子データ格納部から特定するステップと、
特定された前記格子ブロックを含む候補セルを、前記格子データ格納部において前記誤りセルを除き前記表を構成するセルではないとされる候補セルから、前記候補集合に含まれる候補セルとして抽出するステップと、
を含み、
前記第3候補セル特定ステップが、
前記格子データ格納部において、選択された前記次候補セルを前記表を構成するセルとして登録するステップと、
前記格子データ格納部において、選択された前記次候補セルを除き前記表を構成するセルとして登録されている候補セルのうち、前記誤りセルを構成する格子ブロックを含む候補セルを特定し、前記表を構成するセルから除外するようにデータを登録するステップと、
前記格子データ格納部において、前記表を構成するセルとして登録されている候補セルのいずれにも採用されていない格子ブロックを擬似誤りセルとして特定するステップと、
前記擬似誤りセルを前記誤りセルとして前記候補集合生成ステップ以降のステップを実行するステップと、
を含む付記3記載の表データ処理方法。
【0101】
(付記9)
複数の罫線を含む表の画像から複数の候補罫線を生成し、当該候補罫線の特定の組み合わせを抽出して初期的な表を出力するステップと、
前記初期的な表においてユーザから当該初期的な表に含まれる特定の候補罫線の指定を誤り罫線の指定として受け付けるステップと、
指定された前記誤り罫線の少なくとも一部を置換可能な候補罫線を前記候補罫線の特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成ステップと、
前記記憶装置に格納された前記候補集合をユーザに提示して、前記候補集合に含まれるいずれかの候補罫線の選択を促す提示ステップと、
を含み、コンピュータにより実行される表データ処理方法。
【0102】
(付記10)
前記候補集合に含まれる前記候補罫線のそれぞれにつき、当該候補罫線と同時に選択されるべき関連候補罫線を特定するステップ
を含み、
前記提示ステップが、
前記候補集合に含まれる前記候補罫線及び当該候補罫線の関連候補罫線を提示するステップ
を含む付記9記載の表データ処理方法。
【0103】
(付記11)
ユーザから前記候補集合に含まれるいずれかの候補罫線の選択を次候補罫線の選択として受け付けるステップと、
選択された前記次候補罫線の次に選択されるべき第3の候補罫線を特定し、当該第3の候補罫線のデータを前記記憶装置に格納するステップと、
前記記憶装置に格納された前記第3の候補罫線をユーザに提示するステップと、
を含む付記9記載の表データ処理方法。
【0104】
(付記12)
付記1乃至11のいずれか1つ記載の表データ処理方法をコンピュータに実行させるためのプログラム。
【0105】
(付記13)
複数のセルを含む表の画像から複数の候補セルを生成し、当該候補セルの特定の組み合わせを抽出して初期的な表を出力する手段と、
前記初期的な表においてユーザから当該初期的な表に含まれる特定の候補セルの指定を誤りセルの指定として受け付ける手段と、
指定された前記誤りセルの少なくとも一部を置換可能な候補セルを前記候補セルの特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成手段と、
前記記憶装置に格納された前記候補集合をユーザに提示して、前記候補集合に含まれるいずれかの候補セルの選択を促す提示手段と、
を有する表データ処理装置。
【0106】
(付記14)
複数の罫線を含む表の画像から複数の候補罫線を生成し、当該候補罫線の特定の組み合わせを抽出して初期的な表を出力する手段と、
前記初期的な表においてユーザから当該初期的な表に含まれる特定の候補罫線の指定を誤り罫線の指定として受け付ける手段と、
指定された前記誤り罫線の少なくとも一部を置換可能な候補罫線を前記候補罫線の特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成手段と、
前記記憶装置に格納された前記候補集合をユーザに提示して、前記候補集合に含まれるいずれかの候補罫線の選択を促す提示手段と、
を有する表データ処理装置。
【図面の簡単な説明】
【0107】
【図1】本発明の実施の形態における帳票設計支援装置の機能ブロック図である。
【図2】本発明の実施の形態におけるメインの処理フローを示す図である。
【図3】(a)乃至(f)は、メインの処理フローの前処理を説明するための図である。
【図4】格子データ格納部に格納されるデータの一例を示す図である。
【図5】格子テーブルに格納されるデータの一例を示す図である。
【図6】次候補生成部による第1候補セル修正処理の処理フローを示す図である。
【図7】入力画像の一例を示す図である。
【図8】格子ブロック及びインデックスを説明するための図である。
【図9】格子テーブルに格納されるデータの一例を示す図である。
【図10】(a)及び(b)は、第1候補セル修正処理の処理の概要を説明するための図である。
【図11】(a)及び(b)は、第1候補セル修正処理における画面例を示す図である。
【図12】次候補セル特定処理の処理フローを示す図である。
【図13】関連候補生成部による第2候補セル修正処理の処理フローを示す図である。
【図14】(a)及び(b)は、第2候補セル修正処理の処理の概要を説明するための図である。
【図15】関連候補生成部による第2候補セル修正処理の処理フローを示す図である。
【図16】(a)及び(b)は、第2候補セル修正処理における画面例を示す図である。
【図17】連続候補生成部による第3候補セル修正処理の処理フローを示す図である。
【図18】(a)乃至(e)は、連続候補生成部を用いた場合の処理の概要を示す図である。
【図19】連続候補生成部による第3候補セル修正処理の処理フローを示す図である。
【図20】格子テーブルに格納されるデータの他の例を示す図である。
【図21】罫線の場合における格子テーブルの一例を示す図である。
【図22】(a)乃至(c)は、罫線の場合における処理の概要を説明するための図である。
【図23】コンピュータの機能ブロック図である。
【図24】(a)乃至(d)は、従来技術を説明するための図である。
【符号の説明】
【0108】
1 画像入力部 3 画像データ格納部 5 セル認識処理部
7 格子データ格納部 9 候補生成部 11 誤りセル入力部
13 候補データ格納部 15 候補表示部 17 候補選択入力部
19 表認識結果表示部
91 次候補生成部 93 関連候補生成部 95 連続候補生成部
【特許請求の範囲】
【請求項1】
複数のセルを含む表の画像から複数の候補セルを生成し、当該候補セルの特定の組み合わせを抽出して初期的な表を出力するステップと、
前記初期的な表においてユーザから当該初期的な表に含まれる特定の候補セルの指定を誤りセルの指定として受け付けるステップと、
指定された前記誤りセルの少なくとも一部を置換可能な候補セルを前記候補セルの特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成ステップと、
前記記憶装置に格納された前記候補集合をユーザに提示して、前記候補集合に含まれるいずれかの候補セルの選択を促す提示ステップと、
を含み、コンピュータにより実行される表データ処理方法。
【請求項2】
前記候補集合に含まれる前記候補セルのそれぞれにつき、当該候補セルと同時に選択されるべき関連候補セルを特定する関連候補セル特定ステップ
を含み、
前記提示ステップが、
前記候補集合に含まれる前記候補セル及び当該候補セルの関連候補セルを提示するステップ
を含む請求項1記載の表データ処理方法。
【請求項3】
ユーザから前記候補集合に含まれるいずれかの候補セルの選択を次候補セルの選択として受け付けるステップと、
選択された前記次候補セルの次に選択されるべき第3の候補セルを特定し、当該第3の候補セルのデータを前記記憶装置に格納する第3候補セル特定ステップと、
前記記憶装置に格納された前記第3の候補セルをユーザに提示するステップと、
を含む請求項1記載の表データ処理方法。
【請求項4】
請求項1乃至3のいずれか1つ記載の表データ処理方法をコンピュータに実行させるためのプログラム。
【請求項5】
複数のセルを含む表の画像から複数の候補セルを生成し、当該候補セルの特定の組み合わせを抽出して初期的な表を出力する手段と、
前記初期的な表においてユーザから当該初期的な表に含まれる特定の候補セルの指定を誤りセルの指定として受け付ける手段と、
指定された前記誤りセルの少なくとも一部を置換可能な候補セルを前記候補セルの特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成手段と、
前記記憶装置に格納された前記候補集合をユーザに提示して、前記候補集合に含まれるいずれかの候補セルの選択を促す提示手段と、
を有する表データ処理装置。
【請求項1】
複数のセルを含む表の画像から複数の候補セルを生成し、当該候補セルの特定の組み合わせを抽出して初期的な表を出力するステップと、
前記初期的な表においてユーザから当該初期的な表に含まれる特定の候補セルの指定を誤りセルの指定として受け付けるステップと、
指定された前記誤りセルの少なくとも一部を置換可能な候補セルを前記候補セルの特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成ステップと、
前記記憶装置に格納された前記候補集合をユーザに提示して、前記候補集合に含まれるいずれかの候補セルの選択を促す提示ステップと、
を含み、コンピュータにより実行される表データ処理方法。
【請求項2】
前記候補集合に含まれる前記候補セルのそれぞれにつき、当該候補セルと同時に選択されるべき関連候補セルを特定する関連候補セル特定ステップ
を含み、
前記提示ステップが、
前記候補集合に含まれる前記候補セル及び当該候補セルの関連候補セルを提示するステップ
を含む請求項1記載の表データ処理方法。
【請求項3】
ユーザから前記候補集合に含まれるいずれかの候補セルの選択を次候補セルの選択として受け付けるステップと、
選択された前記次候補セルの次に選択されるべき第3の候補セルを特定し、当該第3の候補セルのデータを前記記憶装置に格納する第3候補セル特定ステップと、
前記記憶装置に格納された前記第3の候補セルをユーザに提示するステップと、
を含む請求項1記載の表データ処理方法。
【請求項4】
請求項1乃至3のいずれか1つ記載の表データ処理方法をコンピュータに実行させるためのプログラム。
【請求項5】
複数のセルを含む表の画像から複数の候補セルを生成し、当該候補セルの特定の組み合わせを抽出して初期的な表を出力する手段と、
前記初期的な表においてユーザから当該初期的な表に含まれる特定の候補セルの指定を誤りセルの指定として受け付ける手段と、
指定された前記誤りセルの少なくとも一部を置換可能な候補セルを前記候補セルの特定の組み合わせ以外から選択して候補集合を生成し、当該候補集合のデータを記憶装置に格納する候補集合生成手段と、
前記記憶装置に格納された前記候補集合をユーザに提示して、前記候補集合に含まれるいずれかの候補セルの選択を促す提示手段と、
を有する表データ処理装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【公開番号】特開2008−46812(P2008−46812A)
【公開日】平成20年2月28日(2008.2.28)
【国際特許分類】
【出願番号】特願2006−221118(P2006−221118)
【出願日】平成18年8月14日(2006.8.14)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
【公開日】平成20年2月28日(2008.2.28)
【国際特許分類】
【出願日】平成18年8月14日(2006.8.14)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
[ Back to top ]