(57)【要約】【課題】演算対象の複数の文字と、これらの文字を所定の計算式で演算したときの演算結果を示す文字とを含む画像データから、文字や計算式を抽出して表計算形式等のデータに変換する場合に、誤変換を自動的に修正できるデータ変換装置等を提供する。【解決手段】演算対象の複数の文字と、複数の文字を所定の計算式で演算したときの演算結果を示す文字とを含む画像データから、演算対象の複数の文字と計算式と演算結果を示す文字が抽出され、編集可能なデータへ変換される。抽出された演算対象の複数の文字を抽出された計算式で演算したときの演算結果と、抽出された演算結果を示す文字とが比較されることにより、それぞれ抽出された演算対象の各文字、計算式、演算結果を示す文字の少なくとも何れかが誤変換されているか否かが判定され、少なくとも何れかが誤変換されていると判定された場合、適正な文字若しくは計算式に修正される。【選択図】図４
2019204146.tif 000002
【特許請求の範囲】
【請求項１】
演算対象の複数の文字と、前記複数の文字を所定の計算式で演算したときの演算結果を示す文字とを含む画像データを、入力データとして受け付ける受付手段と、
前記受付手段により受け付けた入力データから、前記演算対象の複数の文字と前記計算式と演算結果を示す文字を抽出する抽出手段と、
前記入力データを、前記抽出手段により抽出された演算対象の複数の文字と計算式と演算結果を示す文字を用いた編集可能なデータへ変換する変換手段と、
前記抽出手段より抽出された演算対象の複数の文字を、抽出された計算式で演算したときの演算結果と、抽出された演算結果を示す文字とを比較することにより、抽出された演算対象の各文字、計算式、演算結果を示す文字の少なくとも何れかが誤変換されているか否かを判定する判定手段と、
前記判定手段により少なくとも何れかが誤変換されていると判定された場合、適正な文字若しくは計算式に修正する修正手段と、
を備えたことを特徴とするデータ変換装置。
【請求項２】
前記入力データは計算式を示す文字列を有する表計算形式の画像データであり、
前記抽出手段は、前記入力データにおける前記文字列に基づいて前記計算式を抽出するとともに、前記演算対象の複数の文字と演算結果を示す文字を抽出し、
前記変換手段は、抽出された演算対象の複数の文字と計算式と演算結果を示す文字を用いた表計算型データに変換する請求項１に記載のデータ変換装置。
【請求項３】
前記入力データは演算記号を有する画像データであり、
前記抽出手段は、前記演算記号に基づいて前記計算式を抽出し、演算記号で示される被演算領域及び演算結果領域に基づいて、前記演算対象の複数の文字と演算結果を示す文字を抽出する請求項１に記載のデータ変換装置。
【請求項４】
前記抽出手段による前記文字の抽出は文字認識処理により行われ、前記抽出手段は、文字認識率の最も高い文字を抽出し、
前記判定手段により、抽出された少なくとも何れかの文字が誤変換されていると判定された場合、前記修正手段は、その文字を次に文字認識率の高い文字に修正し、
前記判定手段は、前記文字の修正後に前記計算式による再計算を行うことにより、その文字について再度誤変換されているか否かを判定する請求項１〜３の何れかに記載のデータ変換装置。
【請求項５】
計算式が端数処理を含む場合、前記修正手段は、切り捨てか切り上げかの確認を行った後に端数処理を決定することにより、計算式を修正する請求項１〜４の何れかに記載のデータ変換装置。
【請求項６】
演算対象の複数の文字の一部についての前記抽出手段よる抽出が不可能な場合、前記修正手段は、前記抽出手段より抽出された演算対象の他の文字、計算式、演算結果を示す文字から逆算して、前記一部の文字を適正な文字に修正する請求項１〜４の何れかに記載のデータ変換装置。
【請求項７】
再計算の結果は別シートに記録される請求項４〜６のいずれかに記載のデータ変換装置。
【請求項８】
修正後の文字を識別できる態様で再計算の結果が別シートに記録される請求項７に記載のデータ変換装置。
【請求項９】
請求項１〜８の何れかに記載のデータ変換装置を備えた画像処理装置。
【請求項１０】
演算対象の複数の文字と、前記複数の文字を所定の計算式で演算したときの演算結果を示す文字とを含む画像データを、入力データとして受け付ける受付ステップと、
前記受付ステップにより受け付けた入力データから、前記演算対象の複数の文字と前記計算式と演算結果を示す文字を抽出する抽出ステップと、
前記入力データを、前記抽出ステップにより抽出された演算対象の複数の文字と計算式と演算結果を示す文字を用いた編集可能なデータへ変換する変換ステップと、
前記抽出ステップより抽出された演算対象の複数の文字を、抽出された計算式で演算したときの演算結果と、抽出された演算結果を示す文字とを比較することにより、抽出された演算対象の各文字、計算式、演算結果を示す文字の少なくとも何れかが誤変換されているか否かを判定する判定ステップと、
前記判定ステップにより少なくとも何れかが誤変換されていると判定された場合、適正な文字若しくは計算式に修正する修正ステップと、
をデータ変換装置のコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、演算対象の複数の文字と、これらの複数の文字を所定の計算式で演算したときの演算結果を示す文字とを含む画像データから、前記文字や計算式を抽出可能な、例えば画像処理装置等のデータ変換装置、このデータ変換装置を備えた画像処理装置及びプログラムに関する。
【背景技術】
【０００２】
近年、画像データに対して、例えばＯＣＲ（光学文字認識：optical character reader）やＩＣＲ（インテリジェント文字認識：intelligent character recognition）、あるいはこれらとオブジェクト分離技術を組み合わせた画像解析処理を行うことにより、印刷文字のみならず手書き文字についてもテキストデータ等への高精度な変換を行うことが可能となってきた。それに伴い、変換後のデータをより編集しやすい形式にすることで、利便性の向上が図られてきている。
【０００３】
このような試みの一つに、印刷あるいは手書きされた表を、表計算形式のデータへと変換することが行われている。
【０００４】
具体例を挙げると、図１１に示すように、表の縦方向を列、横方向を行とすると、Ａ列２〜５行目の各マス目（セル）に「１Ｑ」「２Ｑ」「３Ｑ」「４Ｑ」の文字列がそれぞれ記載され、Ａ列６行目のセルに「合計」という文字列が記載され、Ｂ〜Ｄ列１行目の各セルに個人の氏名がそれぞれ記載され、Ｅ列１行目のセルに「合計」という文字列が記載された表についての画像データがあるものとする。また、Ｂ〜Ｄ列２〜５行目の各セルには、個人毎の数値が記載されている。
【０００５】
このような画像データを表計算形式のデータに変換する。具体的には、Ｂ〜Ｄ列６行目の各セルに各個人毎の１Ｑ〜４Ｑの合計値が自動計算されて記入されるように計算式を埋め込み、Ｅ列２〜５行目の各セルに１Ｑ〜４Ｑ毎の合計値が自動計算されて記入されるように計算式を埋め込み、Ｅ列６行目のセルに全部の合計値が自動計算されて記入されるように計算式を埋め込む。従って、例えば破線枠で示すＢ列６行目のセルＢ６のデータとしては、「１８」という数字ではなく、埋め込まれる計算式である"=sum(B2:B5)"に変換される必要がある。
【０００６】
しかしながら現状では、画像解析処理（特にオフライン手書き文字認識処理）の精度はまだまだ不十分であり、以下のような誤変換が発生する場合がある。
【０００７】
例えば、図４の左側の図に示すような手書きの表を読み取って、同図右側の図に示す表計算形式のデータに変換したときに、オリジナルの手書き表における４Ｑの数値「８」を「３」と誤変換したとすると、計算式により計算した合計値は１３となる。つまり、オリジナルの表では合計値が１８であるのに対し、表計算形式のデータに変換したときには、演算対象の数値を誤変換すると計算式による計算結果も誤変換されてしまうことになる。
【０００８】
なお、特許文献１には、項目と数値が記述された表データから集計に使用された計算式を導出してその計算式が埋め込まれた表データを出力する表データ変換方法が提案されており、格子状にマス目(セル)が配列された表データの中の項目名として「合計」「平均」等の特定のキーワードが使用されている場合に、そのキーワードが使用されているセル（キーワード該当セル）と同じ“行”(横方向)または“列”（縦方向）に含まれる数値が登録されているセルを、「合計」のキーワードに対応する集計結果が格納されるセル（集計結果格納セル）に特定し、該集計結果格納セルの数値を、他のセルを参照する計算式に置き換える、もしくは、計算式による計算結果と元々そのセルに登録されていた数値が一致しない場合に、ユーザに計算結果が不一致となる旨を通知して警告することが記載されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１７−１８７９３１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかし、特許文献１に記載された方法では、計算式による計算結果と元々そのセルに登録されていた数値が一致しない場合に、ユーザに計算結果が不一致となる旨を通知して警告が行われるものの、誤変換の修正はユーザーの手作業により行われるものであり、誤変換を自動的に修正することはできなかった。
【００１１】
この発明は、このような技術的背景に鑑みてなされたものであって、演算対象の複数の文字と、これらの複数の文字を所定の計算式で演算したときの演算結果を示す文字とを含む画像データから、文字や計算式を抽出して表計算形式等のデータに変換する場合に、誤変換を自動的に修正することができるデータ変換装置、画像処理装置及びプログラムを低供することを目的とする。
【課題を解決するための手段】
【００１２】
上記目的は、以下の手段によって達成される。
（１）演算対象の複数の文字と、前記複数の文字を所定の計算式で演算したときの演算結果を示す文字とを含む画像データを、入力データとして受け付ける受付手段と、前記受付手段により受け付けた入力データから、前記演算対象の複数の文字と前記計算式と演算結果を示す文字を抽出する抽出手段と、前記入力データを、前記抽出手段により抽出された演算対象の複数の文字と計算式と演算結果を示す文字を用いた編集可能なデータへ変換する変換手段と、前記抽出手段より抽出された演算対象の複数の文字を、抽出された計算式で演算したときの演算結果と、抽出された演算結果を示す文字とを比較することにより、抽出された演算対象の各文字、計算式、演算結果を示す文字の少なくとも何れかが誤変換されているか否かを判定する判定手段と、前記判定手段により少なくとも何れかが誤変換されていると判定された場合、適正な文字若しくは計算式に修正する修正手段と、を備えたことを特徴とするデータ変換装置。
（２）前記入力データは計算式を示す文字列を有する表計算形式の画像データであり、前記抽出手段は、前記入力データにおける前記文字列に基づいて前記計算式を抽出するとともに、前記演算対象の複数の文字と演算結果を示す文字を抽出し、前記変換手段は、抽出された演算対象の複数の文字と計算式と演算結果を示す文字を用いた表計算型データに変換する前項１に記載のデータ変換装置。
（３）前記入力データは演算記号を有する画像データであり、前記抽出手段は、前記演算記号に基づいて前記計算式を抽出し、演算記号で示される被演算領域及び演算結果領域に基づいて、前記演算対象の複数の文字と演算結果を示す文字を抽出する前項１に記載のデータ変換装置。
（４）前記抽出手段による前記文字の抽出は文字認識処理により行われ、前記抽出手段は、文字認識率の最も高い文字を抽出し、前記判定手段により、抽出された少なくとも何れかの文字が誤変換されていると判定された場合、前記修正手段は、その文字を次に文字認識率の高い文字に修正し、前記判定手段は、前記文字の修正後に前記計算式による再計算を行うことにより、その文字について再度誤変換されているか否かを判定する前項１〜３の何れかに記載のデータ変換装置。
（５）計算式が端数処理を含む場合、前記修正手段は、切り捨てか切り上げかの確認を行った後に端数処理を決定することにより、計算式を修正する前項１〜４の何れかに記載のデータ変換装置。
（６）演算対象の複数の文字の一部についての前記抽出手段よる抽出が不可能な場合、前記修正手段は、前記抽出手段より抽出された演算対象の他の文字、計算式、演算結果を示す文字から逆算して、前記一部の文字を適正な文字に修正する前項１〜４の何れかに記載のデータ変換装置。
（７）再計算の結果は別シートに記録される前項４〜６のいずれかに記載のデータ変換装置。
（８）修正後の文字を識別できる態様で再計算の結果が別シートに記録される前項７に記載のデータ変換装置。
（９）前項１〜８の何れかに記載のデータ変換装置を備えた画像処理装置。
（１０）演算対象の複数の文字と、前記複数の文字を所定の計算式で演算したときの演算結果を示す文字とを含む画像データを、入力データとして受け付ける受付ステップと、前記受付ステップにより受け付けた入力データから、前記演算対象の複数の文字と前記計算式と演算結果を示す文字を抽出する抽出ステップと、前記入力データを、前記抽出ステップにより抽出された演算対象の複数の文字と計算式と演算結果を示す文字を用いた編集可能なデータへ変換する変換ステップと、前記抽出ステップより抽出された演算対象の複数の文字を、抽出された計算式で演算したときの演算結果と、抽出された演算結果を示す文字とを比較することにより、抽出された演算対象の各文字、計算式、演算結果を示す文字の少なくとも何れかが誤変換されているか否かを判定する判定ステップと、前記判定ステップにより少なくとも何れかが誤変換されていると判定された場合、適正な文字若しくは計算式に修正する修正ステップと、をデータ変換装置のコンピュータに実行させるためのプログラム。
【発明の効果】
【００１３】
前項（１）に記載の発明によれば、演算対象の複数の文字と、複数の文字を所定の計算式で演算したときの演算結果を示す文字とを含む画像データが、入力データとして受け付けられ、この受け付けた入力データから、演算対象の複数の文字と計算式と演算結果を示す文字が抽出され、編集可能なデータへ変換される。一方、抽出された演算対象の複数の文字を抽出された計算式で演算したときの演算結果と、抽出された演算結果を示す文字とが比較されることにより、それぞれ抽出された演算対象の各文字、計算式、演算結果を示す文字の少なくとも何れかが誤変換されているか否かが判定され、少なくとも何れかが誤変換されていると判定された場合、適正な文字若しくは計算式に修正される。
【００１４】
従って、元の画像データに含まれる文字や計算式から、これらの文字や計算式を抽出して編集可能なデータに変換するときに誤変換が発生しても、誤変換された文字や計算式が自動的に修正されるから、ユーザーが誤変換された文字や計算式を手作業で修正する手間を省くことができる。
【００１５】
前項（２）に記載の発明によれば、計算式を示す文字列を有する表計算形式の画像データにおける前記文字列に基づいて計算式が抽出されるとともに、演算対象の複数の文字と演算結果を示す文字が抽出され、これらの抽出された演算対象の複数の文字と計算式と演算結果を示す文字を用いた表計算型データに変換される。
【００１６】
前項（３）に記載の発明によれば、演算記号を有する画像データの演算記号に基づいて計算式が抽出され、演算記号で示される被演算領域及び演算結果領域に基づいて、演算対象の複数の文字と演算結果を示す文字が抽出される。
【００１７】
前項（４）に記載の発明によれば、文字の抽出は文字認識処理により行われるとともに、文字認識率の最も高い文字が抽出されるが、抽出された少なくとも何れかの文字が適切でないと判定された場合、その文字は次に文字認識率の高い文字に修正される。そして、修正後に計算式による再計算が行われ、その文字について再度誤変換されているか否かが判定されるから、誤変換の発生をより確実に解消できる。
【００１８】
前項（５）に記載の発明によれば、計算式が端数処理を含む場合、切り捨てかまたは切り上げかの確認を行った後に端数処理が決定され計算式が修正されるから、適正な端数処理を有する計算式に修正できる。
【００１９】
前項（６）に記載の発明によれば、演算対象の複数の文字の一部について抽出が不可能な場合、抽出された演算対象の他の文字、計算式、演算結果を示す文字から逆算して、抽出不可能な一部の文字が適正な文字に修正されるから、確実に誤変換を防止することができる。
【００２０】
前項（７）に記載の発明によれば、再計算の結果は別シートに記録されるから、再計算の前後の結果を容易に確認することができる。
【００２１】
前項（８）に記載の発明によれば、修正後の文字を識別できる態様で再計算の結果が別シートに記録されるから、修正後の文字を容易に認識することができる。
【００２２】
前項（９）に記載の発明によれば、元の画像データに含まれる文字や計算式から、これらの文字や計算式を抽出して編集可能なデータに変換するときに誤変換が発生しても、誤変換された文字や計算式を自動的に修正することができる画像処理装置となる。
【００２３】
前項（１０）に記載の発明によれば、元の画像データに含まれる文字や計算式から、これらの文字や計算式を抽出して編集可能なデータに変換するときに誤変換が発生しても、誤変換された文字や計算式を自動的に修正する処理を、データ処理装置のコンピュータに実行させることができる。
【図面の簡単な説明】
【００２４】
【図１】データ処理装置を構成する一例としてのパーソナルコンピュータ等の情報処理装置のブロック図である。
【図２】データ処理装置を構成する他の例としての画像形成装置のブロック図である。
【図３】情報処理装置のＣＰＵ及び画像形成装置のＣＰＵによって実現される、画像データから文字や計算式を抽出して編集可能なデータへ変換する機能の構成を示すブロック図である。
【図４】この発明の一実施形態による誤変換の修正方法を説明するための図である。
【図５】上記の修正方法に用いられる各数値の変換精度を示す表である。
【図６】誤変換修正後の状態を示す図である。
【図７】この発明の他の実施形態による誤変換の修正方法を説明するための図である。
【図８】この発明のさらに他の実施形態による誤変換の修正方法を説明するための図である。
【図９】この発明のさらに他の実施形態による誤変換の修正方法を説明するための図である。
【図１０】第１の実施形態におけるデータ処理装置の誤変換の修正動作を示すフローチャートである。
【図１１】従来の課題を説明するための図である。
【発明を実施するための形態】
【００２５】
以下、この発明の実施形態を図面に基づいて説明する。
【００２６】
この発明の一実施形態に係るデータ処理装置は、図１に示すようなパーソナルコンピュータ（ＰＣと記す）等の情報処理装置１によって構成されていても良いし、図２に示すような印刷装置等の画像形成装置２によって構成されていても良い。
【００２７】
図１は、データ処理装置を構成する情報処理装置１のブロック図である。
【００２８】
情報処理装置１は、制御部１１と、記憶装置１２と、入力インターフェース（入力Ｉ／Ｆ）１３と、出力インターフェース（出力Ｉ／Ｆ）１４等を備えている。
【００２９】
制御部１１はＣＰＵ１１１とＲＡＭ１１２を備えている。
【００３０】
ＣＰＵ１１１は、記憶装置１２等に格納されている動作プログラムに従って動作することにより、情報処理装置１の全体を統括的に制御するものである。特にこの実施形態では、演算対象の複数の文字と、これらの複数の文字を所定の計算式で演算したときの演算結果を示す文字とを含む画像データを入力データとして受け付けるとともに、受け付けた入力データを画像解析処理して文字や計算式を抽出することにより、入力データを、抽出された文字や計算式を用いた編集可能なデータへ変換する等の処理を実行するが、詳細な説明は後述する。
【００３１】
ＲＡＭ１１２は、ＣＰＵ１１１が動作プログラムに従って動作する際の作業領域となるメモリである。
【００３２】
記憶装置１２は例えばハードディスク装置（ＨＤＤ）等からなり、ＣＰＵ１１１の動作プログラム、各種のアプリケーション、その他のデータを記憶する。
【００３３】
入力インターフェース１３は外部装置３から送信される各種のデータを受信する受信手段として機能し、出力インターフェース１４はデータ処理装置１から外部装置３へ各種のデータを送信する送信手段として機能する。
【００３４】
図２は、データ処理装置を構成する画像形成装置２のブロック図である。
【００３５】
画像形成装置２は、制御部２１と、記憶装置２２と、操作パネル２３と、画像入力部２４と、画像印刷部２５と、入力インターフェース（入力Ｉ／Ｆ）２６と、出力インターフェース（出力Ｉ／Ｆ）２７等を備えている。
【００３６】
制御部２１はＣＰＵ２１１とＲＡＭ２１２とＲＯＭ２１３を備えている。
【００３７】
ＣＰＵ２１１は、ＲＯＭ２１３や記憶装置２２等に格納されている動作プログラムに従って動作することにより、画像形成装置２の全体を統括的に制御し、印刷機能等を実行させるものである。さらにこの実施形態では、ＣＰＵ２１１は、演算対象の複数の文字と、これら複数の文字を所定の計算式で演算したときの演算結果を示す文字とを含む画像データを入力データとして受け付けるとともに、受け付けた入力データを画像解析して文字や計算式を抽出することにより、入力データを、抽出された文字や計算式を用いた編集可能なデータへ変換する等の処理を実行するが、詳細な説明は後述する。
【００３８】
ＲＡＭ２１２は、ＣＰＵ２１１が動作プログラムに従って動作する際の作業領域となるメモリであり、ＲＯＭ２１３は、ＣＰＵ２１１の動作プログラム等を格納するメモリである。
【００３９】
記憶装置２２は例えばハードディスク装置（ＨＤＤ）等からなり、各種のアプリケーションやその他のデータを記憶する。
【００４０】
操作パネル２３はユーザーによる画像形成装置２の操作やユーザーへのメッセージの通知等に使用されるものであり、タッチパネルを備えた表示部やスタートキー、ストップキー等を備えている。
【００４１】
画像入力部２４はスキャナ装置を備え、原稿の画像を読み取って画像データに変換するものであり、画像印刷部２５は、画像入力部２４で得られた画像データや、外部装置３から送信されるプリントデータを用紙に印刷するものである。
【００４２】
入力インターフェース２６は外部装置３から送信されるプリントデータやその他のデータを受信する受信手段として機能し、出力インターフェース２７はデータ処理装置１から外部装置３へ各種のデータを送信する送信手段として機能する。
【００４３】
なお外部装置３は情報処理装置１や画像形成装置３以外の他の情報処理装置や他の画像形成装置等である。
【００４４】
図３は、情報処理装置１のＣＰＵ１１１及び画像形成装置２のＣＰＵ２１１によって実現される、画像データから文字や計算式を抽出して編集可能なデータへ変換する機能の構成を示すブロック図である。
【００４５】
ＣＰＵ１１１及びＣＰＵ２１１は、機能的に、画像処理部４１と、項目部／数値部分離部４２と、演算候補セル特定部４３と、演算対象グループ抽出部４４と、変換結果加工部４５を備えている。
【００４６】
画像処理部４１は、入力データとして受け付けた表形式等の画像データＤ１を画像処理し、罫線、文字等のオブジェクトを分離すると共に、ＯＣＲ処理等により文字を抽出し、表データＤ２とする。項目部／数値部分離部４２は、抽出された文字等を基に例えば「合計」「平均」「田中」「１Ｑ」「２Ｑ」といった表の項目部分と、「４」「２」といった数値部分を分離する。
【００４７】
なお、入力データとしての画像データは、外部装置３から情報処理装置１や画像形成装置２に入力されても良いし、画像形成装置２の画像入力部２４で画像を読み取ることにより取得されても良い。
【００４８】
演算候補セル特定部４３は、項目部分に記載された「合計」「平均」等の文字列から、計算式を抽出特定すると共に、文字列が指し示す被演算領域つまり数値が演算されるセル（マス目）と、演算結果領域つまり演算結果が記載されるセルを特定する。演算対象グループ抽出部４４は、各行（横方向）及び各列（縦方向）の複数のセルのうち演算対象グループを構成するセルを抽出する。
【００４９】
変換結果加工部４５は、抽出した項目や数値を各セルに記述し、演算結果を示すセルに抽出した計算式を埋め込んで、編集可能な表計算形式のデータに変換するとともに、演算対象グループのセルに記述した数値を計算式に従って演算する。そして、演算結果と、元の画像データから抽出された演算結果を示す文字（数値）とを比較することで、抽出された演算対象の各文字、計算式、演算結果を示す文字の少なくとも何れかが誤変換されているか否かを判定し、少なくとも何れかが誤変換されていると判定された場合、適正な文字若しくは計算式に修正して、容易に再編集可能な表データＤ３とする。以下に具体例を説明する。
［第１の実施形態］
この例では数字の「８」と「３」が誤変換される場合を示す。
【００５０】
図４左側の図は元の手書きによる表計算形式の画像であり、田中さんについて１Ｑ、２Ｑ、３Ｑ、４Ｑに対応する各数値が４、２、４、８となっており、４Ｑの下のセルの文字列が「合計」となっている。従って、被演算領域のセルの各数値を合計した「１８」が、演算結果領域のセルに記載されている。
【００５１】
図４左側の図に示す画像を画像データとして入力し、文字認識処理を含む画像解析処理により文字、計算式を抽出し、表計算形式のデータに変換した状態を同図の右側の図に示す。Ａ列２〜５行の各セルＡ２〜Ａ５に、抽出されたそれぞれ１Ｑ、２Ｑ、３Ｑ、４Ｑの文字が記載され、Ａ列６行のセルＡ６に、抽出された「合計」の文字が記載され、Ｂ列１行のセルＢ１に抽出された「田中」の文字が記載され、Ｂ列２〜５行の各セルＢ２〜Ｂ５に、抽出された４、２、４、３の各文字が記載されている。文字列「合計」と各数値等との記載から、被演算領域はＢ列２〜５行のセルＢ２〜Ｂ５であり、抽出された計算式が埋め込まれる演算結果を示す領域（演算結果領域）はＢ列６行のセルＢ６となる。
【００５２】
また、計算式としては、被演算領域であるセルＢ２〜Ｂ５の数値を加算する"=sum(B2:B5)"となる。
【００５３】
また、図４の左右の図の比較から理解されるように、元の画像データにおける４Ｑの数値「８」がセルＢ５において「３」と誤変換されている。その結果、計算式による合計値は４+２+４+３＝１３となり、画像解析処理により抽出された元の画像データの合計値１８とは相違する。
【００５４】
そこで、図３に示した変換結果加工部４５は、誤変換があると判定し、文字認識処理を実行するアプリケーションが有する文字認識率である各数値の変換精度を再確認し、次に可能性の高い数値を用いて再計算を行う。
【００５５】
各数値の変換精度の一例を図５の表に示す。同図に示すように、４、２、４、３、１８の各数値が第１候補として高い変換精度を示しており、これらの数値がまず抽出されるが、上述したように誤変換がある場合は、第２候補の中から最も可能性の高いもの、換言すれば最も文字認識率の高い数値を選択する。図５の例ではハッチングを付した８９％の「８」が該当し、最初に抽出されセルＢ５に記載された数値「３」を「８」に修正し、演算結果領域のセルＢ６に埋め込まれた計算式により再計算する。
【００５６】
再計算の結果、図６に示すように、計算式"=sum(B2:B5)"により数式変換した値は１８となり、元の画像の文字列から変換された数値１８と一致する。このため、セルＢ５の数値を修正値「８」に確定する。
【００５７】
このように、元の画像データに含まれる文字や計算式から、これらの文字や計算式を抽出して編集可能なデータに変換するときに誤変換が発生しても、誤変換された文字や計算式が自動的に修正されるから、ユーザーが誤変換された文字や計算式を手作業で修正する必要はなくなり、修正の手間を省くことができる。
［第２の実施形態］
この実施形態は、計算式が「合計」ではなく「平均」を求める式であるために、除算による端数処理が計算式に含まれる場合を示している。
【００５８】
図７の左側の図は元の手書きによる表計算形式の画像であり、田中さんについて１Ｑ、２Ｑ、３Ｑ、４Ｑに対応する数値が４、２、４、８となっており、４Ｑの下のセルの文字列が「平均」となっている。また、被演算領域のセルの各数値を平均して端数を切り捨てた「４」が、演算結果領域のセルに記載されている。
【００５９】
図７の左側の図に示す画像を画像データとして入力し、文字認識処理を含む画像解析処理して文字、計算式を抽出し、表計算形式のデータに変換した状態を同図右側の図に示す。Ａ列２〜５行の各セルＡ２〜Ａ５に、抽出されたそれぞれ１Ｑ、２Ｑ、３Ｑ、４Ｑの文字が記載され、Ａ列６行のセルＡ６に、抽出された「平均」の文字が記載され、Ｂ列１行のセルＢ１に抽出された「田中」の文字が記載され、Ｂ列２〜５行の各セルＢ２〜Ｂ５に、抽出された４、２、４、８の各文字が記載されている。文字列「平均」と各数値等との記載から、被演算領域はＢ列２〜５行のセルＢ２〜Ｂ５であり、抽出された計算式が埋め込まれる演算結果領域はＢ列６行のセルＢ６となる。
【００６０】
また、計算式としては、被演算領域であるセルＢ２〜Ｂ５の数値の平均値を求める"=AVERAGE(Bsum(B2:B5)"であり、この計算式に従って演算した結果は４．５であるが、切り捨てかまたは切り上げかを確認するために四捨五入すると、図７の右側の図に示すように５となる。
【００６１】
一方、画像解析処理により抽出され変換された元の画像データの平均値は４であり、両者が相違する。
【００６２】
そこで、図３に示した変換結果加工部４５は、計算式の端数処理に誤変換があると判定し、計算式における端数処理は四捨五入や切り上げではなく切り捨てと判断し、計算式に反映する。
【００６３】
このように、計算式が端数処理を含む場合、切り捨てかまたは切り上げかの確認を行った後に端数処理が決定され計算式が修正されるから、適正な端数処理を有する計算式に修正できる。
［第３の実施形態］
この実施形態は、変換対象の数値のうち、一部が変換不能な記載状態であっても、他の数値及び表の記載内容から逆算して、変換する場合を示している。
【００６４】
図８の左側の図は元の手書きによる表計算形式の画像であり、田中さんについて１Ｑ、３Ｑ、４Ｑに対応する各数値が４、４、８となっており、４Ｑの下のセルの文字列が「合計」となっているが、２Ｑに対応する数値は不明である。
【００６５】
また、被演算領域のセルの各数値を合計した「１８」が、演算結果領域のセルに記載されている。
【００６６】
図８の左側の図に示す画像を画像データとして入力し、文字認識処理を含む画像解析処理して文字、計算式を抽出し、表計算形式のデータに変換した状態を同図右側の図に示す。Ａ列２〜５行の各セルＡ２〜Ａ５に、抽出されたそれぞれ１Ｑ、２Ｑ、３Ｑ、４Ｑの文字が記載され、Ａ列６行のセルＡ６に、抽出された「合計」の文字が記載され、Ｂ列１行のセルＢ１に抽出された「田中」の文字が記載され、Ｂ列２、４、５行の各セルＢ２、Ｂ４、Ｂ５に、抽出された４、４、８の各文字が記載される。ただし、Ｂ列３行のセルＢ３については、読み取れず変換不能となる。文字列「合計」と各数値等との記載から、被演算領域はセルＢ２〜Ｂ５であり、抽出された計算式が埋め込まれる演算結果領域はＢ列６行のセルＢ６となる。
【００６７】
また、計算式としては、被演算領域であるセルＢ２〜Ｂ５の数値を加算する"=sum(B2:B5)"となるが、Ｂ列３行のセルＢ３の数値が不明であるから計算式による演算を行うことができない。
【００６８】
そこで、図３に示した変換結果加工部４５は、誤変換があると判定し、元の画像データから抽出された演算対象の各数値文字４、４、８と演算結果を示す数値１８を用いて逆算する。つまり、演算結果を示す数値１８から他の数値を減算し（１８−４−４−８＝２）、数値２を求める。
【００６９】
そして、変換結果加工部４５はＢ列３行のセルＢ３の数値として２を当てはめ、計算式により再計算する。再計算の結果、図８に示すように、計算式"=sum(B2:B5)"により数式変換した値は１８となり、元の画像の数値１８と一致する。
【００７０】
このように、演算対象の複数の文字の一部について抽出が不可能な場合、抽出された演算対象の他の文字、計算式、演算結果を示す文字から逆算して、抽出不可能な一部の文字が適正な文字に修正されるから、確実に誤変換を防止することができる。
［第４の実施形態］
この実施形態は、元のデータが表形式ではなく、計算式がそのまま記載されている場合を示すものである。
【００７１】
図９は元の手書きによる画像であり、「２＋４＋８＝１４」が記載されている。この画像を画像データとして入力し、文字認識処理を含む画像解析処理して文字、計算式を抽出する。具体的には、左辺に「＋」「＝」の演算記号に基づいて、左辺を被演算領域と判定し、右辺を演算結果領域と判定する。そして、「＋」の演算記号から左辺の数値を加算する計算式を抽出する。
【００７２】
ここで、左辺の「８」を「３」と誤変換したとすると、抽出した左辺の数値を抽出した計算式により加算すると、合計値は９となり、抽出された演算結果の数値１４と相違する。
【００７３】
そこで、図３に示した変換結果加工部４５は、誤変換があると判定し、第１の実施形態と同様に、文字認識処理を実行するアプリケーションが有する文字認識率である各数値の変換精度（図５参照）を再確認し、次に可能性の高い数値を用いて再計算を行う。
【００７４】
具体的には、第２候補の中から最も可能性の高いもの、換言すれば最も文字認識率の高い数値を選択する。図５の例では「８」が該当し、最初に抽出された「３」に対応する数値「３」を「８」に修正し、抽出された計算式により再計算する。
【００７５】
再計算の結果、計算式により数式変換した値は１４となり、元の画像の文字列から変換された数値１４と一致する。このため、修正値「８」を確定する。
【００７６】
このように、この実施形態によれば、画像データの演算記号に基づいて計算式を抽出でき、演算記号で示される被演算領域及び演算結果領域に基づいて、演算対象の複数の文字と演算結果を示す文字を抽出できる。
【００７７】
図１０は、図４〜図６で説明した第１の実施形態におけるデータ処理装置１、２の誤変換の修正動作を示すフローチャートである。この動作は、データ処理装置１、２のＣＰＵ１１１、２１１が記憶装置１２、２２等に保存された動作プログラムに従って動作することにより実行される。
【００７８】
ステップＳ０１で画像データの入力を受け付けたのち、ステップＳ０２で画像解析処理を実行し、ステップＳ０３で「合計」「平均」「＋」「＝」等の文字（キーワード）を抽出したかどうかを判断する。抽出しなければ（ステップＳ０３でＮＯ）、変換できないので処理を終了する。抽出した場合（ステップＳ０３でＹＥＳ）、ステップＳ０４に進む。
【００７９】
ステップＳ０４では、キーワードの対象となる被演算領域と演算結果を示す演算結果領域を抽出したのち、ステップＳ０５で、演算結果領域を表計算式に変換する。つまり計算式を抽出し、演算結果領域に埋め込む。
【００８０】
次いでステップＳ０６で変数ｎを０にセットし、Ｔに被演算個数＋１をセットする。例えば被演算個数が４個の場合、Ｔ＝５にセットする。
【００８１】
次に、ステップＳ０７で、計算式による演算結果と、元の画像データの演算結果領域に記載されていた文字列の変換結果を比較する。同一であれば（ステップＳ０７で「＝」）、全て適正に変換されたので、処理を終了する。同一でなければ（ステップＳ０７で「≠」）、ステップＳ０８でｎ＝Ｔかどうかを判断する。
【００８２】
ｎ＝Ｔでなければ（ステップＳ０８でＮＯ）、ステップＳ０９で、図５に示す変換精度の一覧の中から、第２候補中のｎ番目に変換精度の高いものを取得して一時差し替えたのち、ステップＳ１０で、差し替えた数値を用いて計算式により再計算を行い、ステップＳ１１に進む。再計算の結果は、ユーザーが容易に確認できるように、変換結果を示すシートとは別のシートに記録されるのが良い。また、修正後の数字を識別できる態様で再計算の結果が記録されるのが望ましい。
【００８３】
ステップＳ１１ではｎをｎ＋１にセットしたのち、ステップＳ０７に戻る。
【００８４】
ステップＳ０７では、再度、計算式による演算結果と文字列の変換結果を比較する。このような処理をステップＳ０８でｎ＝Ｔと判断されるまで行う。ステップＳ０８でｎ＝Ｔと判断されると（ステップＳ０８でＹＥＳ）、適正な変換ができないので、ステップＳ１２で、警告画面を表示することによりユーザーに通知する。
【符号の説明】
【００８５】
１  情報処理装置（データ処理装置）
２  画像形成装置（データ処理装置）
３  外部装置
１１、２１  制御部
１１１、２１１  ＣＰＵ
４１  画像処理部
４２  項目部／数値部分離部
４３  演算候補セル特定部
４４  演算対象グループ抽出部
４５  変換結果加工部
【図１】
2019204146.tif 000003
【図２】
2019204146.tif 000004
【図３】
2019204146.tif 000005
【図４】
2019204146.tif 000006
【図５】
2019204146.tif 000007
【図６】
2019204146.tif 000008
【図７】
2019204146.tif 000009
【図８】
2019204146.tif 000010
【図９】
2019204146.tif 000011
【図１０】
2019204146.tif 000012
【図１１】
2019204146.tif 000013