(57)【要約】【課題】より適切な文字認識結果を得る。【解決手段】画像処理装置は、レシートまたは請求書の読み取りにより生成された読取画像を取得する取得部と、第１の文字認識処理を実行する第１文字認識部と、前記第１の文字認識処理よりも文字認識精度が高い第２の文字認識処理を実行する第２文字認識部と、特定文字と、前記第２の文字認識処理の対象とする対象領域の位置とを関連付けた関連情報を予め記憶する記憶部と、前記読取画像に対する前記第１文字認識部による前記第１の文字認識処理の結果から前記特定文字を抽出し、前記抽出した特定文字と前記関連情報とに基づいて前記読取画像内に前記対象領域を特定し、前記特定した対象領域に対して前記第２文字認識部による前記第２の文字認識処理を実行させる制御部と、を備える。【選択図】図２
2019168857.tif 000002
【特許請求の範囲】
【請求項１】
レシートまたは請求書の読み取りにより生成された読取画像を取得する取得部と、
第１の文字認識処理を実行する第１文字認識部と、
前記第１の文字認識処理よりも文字認識精度が高い第２の文字認識処理を実行する第２文字認識部と、
特定文字と、前記第２の文字認識処理の対象とする対象領域の位置とを関連付けた関連情報を予め記憶する記憶部と、
前記読取画像に対する前記第１文字認識部による前記第１の文字認識処理の結果から前記特定文字を抽出し、前記抽出した特定文字と前記関連情報とに基づいて前記読取画像内に前記対象領域を特定し、前記特定した対象領域に対して前記第２文字認識部による前記第２の文字認識処理を実行させる制御部と、を備えることを特徴とする画像処理装置。
【請求項２】
前記関連情報は、前記特定文字に対する前記対象領域の位置関係を、前記対象領域の位置として規定する、ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記制御部は、前記抽出した特定文字に応じて、認識すべき文字種類を前記第２文字認識部に指定し、前記第２文字認識部は、前記指定された文字種類の範囲内で前記対象領域に対する前記第２の文字認識処理を実行する、ことを特徴とする請求項１または請求項２に記載の画像処理装置。
【請求項４】
認識する文字種類が互いに異なる複数の前記第２文字認識部を備え、
前記制御部は、前記抽出した特定文字に応じて複数の前記第２文字認識部の中から第２文字認識部を選択し、前記選択した第２文字認識部に前記対象領域に対する前記第２の文字認識処理を実行させる、ことを特徴とする請求項１または請求項２に記載の画像処理装置。
【請求項５】
前記対象領域に対する前記第２文字認識部による前記第２の文字認識処理の結果として前記対象領域に含まれる処理対象の文字について所定の文字である旨の認識結果が出力され、かつ前記処理対象の文字についての前記認識結果の確からしさを示す確信度が所定のしきい値未満である場合、前記制御部は、認識する文字種類を前記所定の文字と前記所定の文字に類似する所定の類似文字とに制限した文字認識処理を実行する第３文字認識部に、前記処理対象の文字の文字認識処理を実行させる、ことを特徴とする請求項１〜請求項４のいずれかに記載の画像処理装置。
【請求項６】
前記第２文字認識部は、機械学習により作成された文字認識用のモデルを用いて前記第２の文字認識処理を実行することを特徴とする請求項１〜請求項５のいずれかに記載の画像処理装置。
【請求項７】
前記第２文字認識部が認識する文字種類は、前記第１文字認識部が認識する文字種類よりも少ないことを特徴とする請求項１〜請求項６のいずれかに記載の画像処理装置。
【請求項８】
レシートまたは請求書の読み取りにより生成された読取画像を取得する取得工程と、
前記読取画像に対して第１の文字認識処理を行う第１文字認識工程と、
前記第１の文字認識処理の結果から特定文字を抽出する抽出工程と、
前記抽出した特定文字と、記憶部に予め記憶された前記特定文字と第２の文字認識処理の対象とする対象領域の位置とを関連付けた関連情報と、に基づいて前記読取画像内に前記対象領域を特定する対象領域特定工程と、
前記特定した対象領域に対して前記第１の文字認識処理よりも文字認識精度が高い前記第２の文字認識処理を行う第２文字認識工程と、を備えることを特徴とする画像処理方法。
【請求項９】
レシートまたは請求書の読み取りにより生成された読取画像を取得する取得機能と、
前記読取画像に対して第１の文字認識処理を行う第１文字認識機能と、
前記第１の文字認識処理の結果から特定文字を抽出する抽出機能と、
前記抽出した特定文字と、記憶部に予め記憶された前記特定文字と第２の文字認識処理の対象とする対象領域の位置とを関連付けた関連情報と、に基づいて前記読取画像内に前記対象領域を特定する対象領域特定機能と、
前記特定した対象領域に対して前記第１の文字認識処理よりも文字認識精度が高い前記第２の文字認識処理を行う第２文字認識機能と、をコンピューターに実行させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文字認識処理を実行するための画像処理装置、画像処理方法および画像処理プログラムに関する。
【背景技術】
【０００２】
イメージ入力装置を通じて読み取ったレシートの文字画像を文字コードデータに変換し、フォーマット記憶部に記憶されたレシートのレイアウト情報であるフォーマットに基づいて、文字コードデータから、日付、品目、価格、消費税等のデータを抽出するデータ処理装置が開示されている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１１‐２６５４０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来、文献１のようにレシートの読取画像から、例えば日付や金額等の特定の情報の検出を試みる場合に、文字認識結果が適切ではなく、情報を正しく検出できないことがあった。そのため、より適切な文字認識結果を得るための改善が求められていた。
【課題を解決するための手段】
【０００５】
画像処理装置は、レシートまたは請求書の読み取りにより生成された読取画像を取得する取得部と、第１の文字認識処理を実行する第１文字認識部と、前記第１の文字認識処理よりも文字認識精度が高い第２の文字認識処理を実行する第２文字認識部と、特定文字と、前記第２の文字認識処理の対象とする対象領域の位置とを関連付けた関連情報を予め記憶する記憶部と、前記読取画像に対する前記第１文字認識部による前記第１の文字認識処理の結果から前記特定文字を抽出し、前記抽出した特定文字と前記関連情報とに基づいて前記読取画像内に前記対象領域を特定し、前記特定した対象領域に対して前記第２文字認識部による前記第２の文字認識処理を実行させる制御部と、を備える。
【図面の簡単な説明】
【０００６】
【図１】システムの構成を簡易的に示す図。
【図２】画像処理装置が実行する処理を示すフローチャート。
【図３】ステップＳ１１０〜Ｓ１３０の処理の具体例を説明するための図。
【図４】特定文字テーブルの例を示す図。
【図５】第３実施形態にかかる処理を示すフローチャート。
【図６】第３実施形態にかかるシステムの構成を簡易的に示す図。
【発明を実施するための形態】
【０００７】
以下、各図を参照しながら本発明の実施形態を説明する。なお各図は、本実施形態を説明するための例示に過ぎない。
【０００８】
１．システムの概略説明：
図１は、本実施形態にかかるシステム１の構成を簡易的に示している。システム１は、スキャナー１０、通信装置２０、メインサーバー３０、ストレージサーバー４０を含んでいる。メインサーバー３０およびストレージサーバー４０は、インターネット通信網を通じてユーザーにクラウドサービスを提供可能なサーバーである。
【０００９】
スキャナー１０は、原稿を光学的に読み取り、読取結果としての所定のフォーマットの画像データを生成し画像データを外部へ出力可能な読取装置である。スキャナー１０は、スキャナーとしての機能に加え、印刷機能やファクシミリ通信機能等の複数の機能を兼ね備えた複合機であってもよい。スキャナー１０は、通信装置２０と有線または無線により通信可能に接続しており、画像データを通信装置２０へ送信する。
【００１０】
通信装置２０は、例えば、パーソナルコンピューター（ＰＣ）、スマートフォン、タブレット型端末、携帯電話機、或いはそれらと同程度の処理能力を有する情報処理装置によって実現される。通信装置２０は、制御部２１、通信インターフェイス（ＩＦ）２３、表示部２４、操作受付部２５等を備える。制御部２１は、プロセッサーとしてのＣＰＵ２１ａ、ＲＯＭ２１ｂ、ＲＡＭ２１ｃ等を有する一つ又は複数のＩＣや、その他のメモリー等を含んで構成される。
【００１１】
制御部２１では、プロセッサー（ＣＰＵ２１ａ）が、ＲＯＭ２１ｂやＲＯＭ２１ｂ以外のメモリー等に保存されたプログラムに従った演算処理を、ＲＡＭ２１ｃ等をワークエリアとして用いて実行することにより、通信装置２０を制御する。制御部２１はプログラム２２を搭載している。プログラム２２は、スキャナー１０が原稿の読み取りにより生成した画像データをメインサーバー３０へアップロードするためのアプリケーションである。
【００１２】
通信ＩＦ２３は、通信装置２０が公知の通信規格を含む所定の通信プロトコルに準拠して有線又は無線で外部と通信を実行するための一つまたは複数のＩＦの総称である。通信装置２０は、スキャナー１０と接続しているだけでなく、通信ＩＦ２３を介して、ネットワークＮＷに接続する。ネットワークＮＷは、ローカルエリアネットワーク（ＬＡＮ）やインターネット通信網やその他の公衆回線等を含む。
【００１３】
表示部２４は、視覚的情報を表示するための手段であり、例えば、液晶ディスプレイ（ＬＣＤ）や、有機ＥＬディスプレイ等により構成される。表示部２４は、ディスプレイと、ディスプレイを駆動するための駆動回路とを含む構成であってもよい。操作受付部２５は、ユーザーによる操作を受け付けるための手段であり、例えば、物理的なボタンや、タッチパネルや、マウスや、キーボード等によって実現される。むろん、タッチパネルは、表示部２４の一機能として実現されるとしてもよい。表示部２４および操作受付部２５を含めて、通信装置２０の操作パネルと呼ぶことができる。
【００１４】
スキャナー１０と通信装置２０は、図１に例示したように互いに独立した装置であってもよいが、実態としてそれら全体が一つの装置に含まれていてもよい。具体的には、スキャナー１０は、通信装置２０の構成を含むことにより、ネットワークＮＷを介した外部との通信機能を兼ね備えた複合機として実現されてもよい。
【００１５】
メインサーバー３０は、ネットワークＮＷ上でサーバーとして機能する一台あるいは複数台の情報処理装置によって実現される。メインサーバー３０は、制御部３１、通信ＩＦ３３、記憶部３４等を備える。制御部３１は、プロセッサーとしてのＣＰＵ３１ａ、ＲＯＭ３１ｂ、ＲＡＭ３１ｃ等を有する一つ又は複数のＩＣや、その他のメモリー等を含んで構成される。制御部３１では、プロセッサー（ＣＰＵ３１ａ）が、ＲＯＭ３１ｂや記憶部３４等に保存されたプログラムに従った演算処理を、ＲＡＭ３１ｃ等をワークエリアとして用いて実行することにより、メインサーバー３０を制御する。制御部３１はプログラムの一つとしてプログラム３２を搭載している。プログラム３２は、メインサーバー３０の制御部３１が実行する画像処理プログラムに該当する。また、プログラム３２を実行するメインサーバー３０は、画像処理装置の具体例に該当する。なお、プロセッサーとしては、一つのＣＰＵに限られることなく、複数のＣＰＵやＡＳＩＣ等のハードウェア回路により処理を行う構成としてもよいし、ＣＰＵとハードウェア回路とが協働して処理を行うようにしてもよい。
【００１６】
通信ＩＦ３３は、メインサーバー３０が公知の通信規格を含む所定の通信プロトコルに準拠して有線又は無線で外部と通信を実行するための一つまたは複数のＩＦの総称である。記憶部３４は、例えば、ハードディスクドライブや不揮発性のメモリーによって構成される記憶手段であり、本実施形態では、特定文字テーブル３５、ＯＣＲ（Optical Character Recognition）エンジン３６のプログラム、ＤＬ（Deep Learning）エンジン３７のプログラム等を予め記憶している。ＯＣＲエンジン３６やＤＬエンジン３７はソフトウェアの一種である。プログラム３２だけでなくＯＣＲエンジン３６やＤＬエンジン３７を含めて画像処理プログラムと呼んでもよい。
【００１７】
メインサーバー３０は、図１の例では、ストレージサーバー４０と通信可能に接続している。ストレージサーバー４０も、ネットワークＮＷ上でサーバーとして機能する一台あるいは複数台の情報処理装置によって実現される。ストレージサーバー４０は、メインサーバー３０からデータを取得して格納するためのサーバーである。なお、メインサーバー３０とストレージサーバー４０とは、装置として明確に分かれていても分かれていなくてもよく、例えば、共通のサーバーがメインサーバー３０およびストレージサーバー４０として機能する構成であってもよい。図１では示していないが、メインサーバー３０，４０に対して、これらサーバーをオペレーターが操作するために必要な表示部や操作受付部が接続されていてもよい。
【００１８】
メインサーバー３０側の構成である制御部３１、プログラム３２、通信ＩＦ３３等と、通信装置２０側の構成である制御部２１、プログラム２２、通信ＩＦ２３等とを判り易く区別するために、便宜上、第１制御部３１、第１プログラム３２、第１通信ＩＦ３３、第２制御部２１、第２プログラム２２、第２通信ＩＦ２３、等と表現してもよい。
【００１９】
２．文字認識処理：
図２は、メインサーバー３０の制御部３１がプログラム３２に従って実行する画像処理をフローチャートにより示している。当該フローチャートは、スキャナー１０による原稿の読取結果から、特定項目の情報を検出し保存する処理である。また、当該フローチャートの少なくとも一部は、画像処理方法を示していると言える。
【００２０】
システム１において、先ず、スキャナー１０は、ユーザーが任意にセットした原稿を読み取ることにより画像データを生成する。本実施形態では、ユーザーがスキャナー１０に読み取らせる原稿は、店舗等で発行されたレシート等の証憑または請求書であるとする。以下では、ユーザーがスキャナー１０に読み取らせるレシートまたは請求書を、単に原稿とも呼ぶ。スキャナー１０は、原稿の読み取りにより生成した画像データ（以下、読取画像）を通信装置２０へ送信する。通信装置２０の制御部２１は、通信ＩＦ２３を介してスキャナー１０へ原稿の読取開始を指示し、スキャナー１０は、制御部２１からの原稿の読取開始の指示に従って原稿の読み取りを開始するとしてもよい。
【００２１】
通信装置２０においては、プログラム２２を実行する制御部２１は、スキャナー１０から受信した読取画像を、通信ＩＦ２３およびネットワークＮＷを介してメインサーバー３０へアップロードする。
メインサーバー３０においては、制御部３１は、通信装置２０から送信された読取画像を、通信ＩＦ３３を介して取得する（ステップＳ１００）。なお、制御部３１は、通信装置２０から受信した読取画像を、一旦、記憶部３４に保存し、ステップＳ１００では、記憶部３４から読取画像を取得してもよい。ステップＳ１００は、レシートまたは請求書の読み取りにより生成された読取画像を取得する取得工程に該当する。また、ステップＳ１００を実行する点において、通信ＩＦ３３および制御部３１は、読取画像を取得する取得部として機能すると言える。
【００２２】
ステップＳ１１０では、制御部３１は、ＯＣＲエンジン３６を起動させ、ステップＳ１００で取得した読取画像を対象とした文字認識処理をＯＣＲエンジン３６に実行させる。ＯＣＲエンジン３６は、読取画像から認識した文字を文字データ（テキストデータ）に変換する。本明細書では、文字を認識することを、文字を推測するとも言う。制御部３１は、ＯＣＲエンジン３６による文字認識処理の結果を取得する。ＯＣＲエンジン３６による文字認識処理を、第１の文字認識処理と呼ぶ。従って、ステップＳ１１０は、読取画像に対して第１の文字認識処理を行う第１文字認識工程に該当する。また、ＯＣＲエンジン３６を記憶する記憶部３４や、ＯＣＲエンジン３６を用いて文字認識処理を実現するプロセッサー（ＣＰＵ３１ａ）は、第１の文字認識処理を実行する第１文字認識部に該当する。
【００２３】
図３は、主にステップＳ１１０〜Ｓ１３０の処理を具体例を用いて説明するための図である。図３の最上段には、ステップＳ１００で制御部３１が取得した読取画像ＩＭを示している。図３の例では、読取画像ＩＭは、ユーザーが利用した有料駐車場で発行されたレシートをスキャナー１０が読み取ったことにより生成された画像データである。
【００２４】
図３において符号ＩＭｐで示す範囲は、読取画像ＩＭ内の一部領域を示している。
ステップＳ１１０において、ＯＣＲエンジン３６は、読取画像ＩＭに含まれている一文字らしき画像について、当該一文字らしき画像を囲う矩形領域ＣＦを設定する。図３では、紙面の都合上、一部領域ＩＭｐ内の各文字に対して矩形領域ＣＦが設定された状態を示しているが、ＯＣＲエンジン３６は、読取画像ＩＭの一部領域ＩＭｐ以外の領域に含まれている各文字についても矩形領域ＣＦを設定する。
【００２５】
ステップＳ１１０において、ＯＣＲエンジン３６は、矩形領域ＣＦ毎の画像から矩形領域ＣＦ内の文字を所定のアルゴリズムを用いて推測し、推測した文字（変換結果としての文字データ）を、文字認識処理の結果として出力する。図３において、符号ＩＭｐ´で示す文字列は、一部領域ＩＭｐに対するＯＣＲエンジン３６による文字認識処理の結果を示している。ＯＣＲエンジン３６は、入力した画像から漢字、平仮名、片仮名、数字、アルファベット、その他の記号等、多くの種類の文字を推測可能な汎用的なＯＣＲエンジンであるが、その推測の結果は正確性を欠くことがある。図３において、一部領域ＩＭｐ内の文字と、一部領域ＩＭｐに対するＯＣＲエンジン３６による文字認識処理の結果である文字列ＩＭｐ´とを比較すると、ステップＳ１１０では、例えば、漢字の「入」という文字が片仮名の「ス」と認識されている。
【００２６】
ステップＳ１２０では、制御部３１は、読取画像に対するステップＳ１１０の文字認識処理の結果から、予め登録された特定文字を抽出する。特定文字は、特定文字テーブル３５に予め登録されている。ステップＳ１２０は、第１の文字認識処理の結果からレシートまたは請求書に含まれる特定文字を抽出する抽出工程に該当する。
【００２７】
図４は、特定文字テーブル３５の例を示している。特定文字テーブル３５は、特定文字と、特定文字に対応して読み取るべき対象領域の位置とを関連付けた情報テーブルである。さらに、特定文字テーブル３５は、対象領域において認識すべき文字種類を規定している。特定文字テーブル３５は、関連情報の一例である。
【００２８】
特定文字とは、原稿に記載された情報の中で特に正確に検出することが求められる特定項目の情報の、存在を示唆する文字または文字列である。特定項目の情報とは、例えば、原稿の発行元の電話番号（取引相手）、原稿の発行日（取引日）、取引金額、等の内容である。上述したような有料駐車場で発行されたレシートにおいては、取引日時、つまり入庫日時および出庫日時の内容も特定項目の情報に該当する。
【００２９】
図４の例では、特定文字テーブル３５には、電話番号の存在を示唆する特定文字として「電話」、「ＴＥＬ」といった言葉が登録されている。特定文字をキーワードとも呼ぶ。また、特定文字テーブル３５には、取引金額の存在を示唆する特定文字として「合計」、「料金」、「金額」といったキーワードが登録されている。また、特定文字テーブル３５には、入庫日時や出庫日時の存在を示唆する特定文字として「日時」、「出」、「入」、「庫」、「出庫」、「入庫」といったキーワードが登録されている。
【００３０】
例えば、レシートにおいては、特定文字「電話」や「ＴＥＬ」が記載された領域と同一行内の右側に電話番号が記載されていることが多い。また、レシートにおいては、特定文字「合計」や「料金」や「金額」が記載された領域と同一行内の右側または次行内の右側に合計金額が記載されていることが多い。そこで、特定文字テーブル３５には、特定文字（キーワード）に応じて「キーワードと同一行内の右側」や「キーワードと同一行内及び次行内の右側」等といった対象領域の適切な位置が予め規定されている。すなわち、特定文字テーブル３５には、特定文字に対する対象領域の位置関係が規定されている。
【００３１】
特定文字テーブル３５に登録される特定文字や、特定文字に対する対象領域の位置関係は、図４の例に限られない。例えば、請求書や領収書の場合、記入された氏名に対して特定の位置（例えば、次行の左側）に合計金額の数値が記入されていることが多い。そこで、特定文字デーブル３５では、氏名の敬称を表す文字列（一例として「様」等）が特定文字として登録されており、この特定文字に対して、次行の左側となる領域が対象領域として規定されている、としてもよい。また、図４の例では、特定文字テーブル３５では、特定文字に対して行を用いて対象領域の位置関係を規定しているが、例えば、特定文字に対して単に上下左右を対象領域として規定するようにしてもよい。
【００３２】
図３の例によれば、制御部３１は、ステップＳ１２０では、読取画像ＩＭに対するステップＳ１１０の文字認識処理の結果から、特定文字テーブル３５を参照することにより「庫日時」および「出庫日時」という文字列をキーワードＫＷとして抽出することができる。また、読取画像ＩＭと特定文字テーブル３５とを参照すれば判るように、制御部３１は、ステップＳ１２０では、読取画像ＩＭに対するステップＳ１１０の文字認識処理の結果から、「料金」という文字列もキーワードとして抽出する。
【００３３】
ステップＳ１３０では、制御部３１は、ステップＳ１２０で抽出した特定文字と特定文字テーブル３５とに基づいて、読取画像内に、ＤＬエンジン３７を用いた文字認識処理の対象とする対象領域を特定する。ステップＳ１３０は、対象領域特定工程に該当する。図３の例によれば、制御部３１は、ステップＳ１２０では、読取画像ＩＭに対するステップＳ１１０の文字認識処理の結果から、「庫日時」および「出庫日時」という文字列をキーワードＫＷ（特定文字）として抽出した。従って、ステップＳ１３０では、制御部３１は、特定文字テーブル３５を参照して、「庫日時」、「出庫日時」というキーワードＫＷに対応する対象領域が「キーワードと同一行内の右側」であることを認識する。そして、制御部３１は、図３に示すように、読取画像ＩＭ内における、文字列「庫日時」と同一行で且つ文字列「庫日時」の右側の領域を対象領域ＳＡとして特定し、さらに、読取画像ＩＭ内における、文字列「出庫日時」と同一行で且つ文字列「出庫日時」の右側の領域を対象領域ＳＡとして特定する。
【００３４】
ステップＳ１４０では、制御部３１は、ステップＳ１３０で特定した対象領域内から、次のステップＳ１５０の処理対象とする文字を一つ取得する。図３を参照すると、制御部３１は、対象領域ＳＡ内から、ステップＳ１５０の処理対象とする文字を一つ取得する。より具体的には、ステップＳ１４０では、制御部３１は、対象領域ＳＡ内の一文字として、ステップＳ１１０の文字認識処理において読取画像ＩＭ内の各文字に設定した矩形領域ＣＦ単位の画像を取得する。
【００３５】
ステップＳ１５０では、制御部３１は、ＤＬエンジン３７を起動させ、ステップＳ１４０で取得した処理対象の文字（対象領域ＳＡ内のいずれか一つの矩形領域ＣＦの画像）についての文字認識処理をＤＬエンジン３７に実行させる。ＤＬエンジン３７は、処理対象の文字を入力し、文字データ（テキストデータ）に変換して文字認識処理の結果として出力する。制御部３１は、ＤＬエンジン３７による文字認識処理の結果を取得する。
【００３６】
ＤＬエンジン３７も、文字認識処理を実行するためのＯＣＲエンジンの一種であるが、機械学習の一つであるDeep Learning技術により作成された文字認識用のモデルである点で、ステップＳ１１０で用いられるＯＣＲエンジン３６と異なる。ＤＬエンジン３７は、例えば、多層構造のニューラルネットワークに大量の学習用画像を入力することで、学習用画像の特徴を自動的に学習し、入力された画像を分類できるように構築されている。具体的には、ＤＬエンジン３７は、「０」〜「９」の数字および、「年」、「月」、「日」、「時」、「分」の各漢字といった限定された種類の文字について、数万の学習用画像に基づいて学習済みである。従って、ＤＬエンジン３７は、入力された画像が、「０」〜「９」の数字および「年」、「月」、「日」、「時」、「分」の各漢字のいずれであるかを高い精度（少なくともＯＣＲエンジン３６よりも高い正答率）で推測することが可能である。
【００３７】
そのため、ＤＬエンジン３７による文字認識処理を、第１の文字認識処理よりも文字認識精度が高い第２の文字認識処理と呼ぶ。また、ステップＳ１５０は、ステップＳ１３０で特定した対象領域に対して第２の文字認識処理を行う第２文字認識工程に該当する。また、ＤＬエンジン３７を記憶する記憶部３４や、ＤＬエンジン３７を用いて文字認識処理を実現するプロセッサー（ＣＰＵ３１ａ）は、第２の文字認識処理を実行する第２文字認識部に該当する。
【００３８】
上述したように第１の文字認識処理に用いるＯＣＲエンジン３６は、入力した画像から漢字、平仮名、片仮名、数字、アルファベット、その他の記号等、多くの種類の文字を推測可能なＯＣＲエンジンである。ＯＣＲエンジン３６と第２の文字認識処理に用いるＤＬエンジン３７とを比較すると、ＤＬエンジン３７が認識する文字種類（推測可能な文字種類）は、ＯＣＲエンジン３６が認識する文字種類よりも大幅に少ない。漢字、平仮名、片仮名、数字、アルファベット、その他の記号等の多くの種類の文字について、Deep Learning技術を用いて高精度で文字認識を行うモデルを作成することは、開発費用やコンピューターの能力や時間等の制約を鑑みると現実的ではない。従って、認識させる文字種類を大幅に絞ることで、限定された種類の文字についてDeep Learning技術を用いて文字認識精度をＯＣＲエンジン３６よりも高めたＯＣＲエンジンが、ＤＬエンジン３７であると言える。
【００３９】
ステップＳ１５０について更に説明する。ステップＳ１５０では、制御部３１は、ステップＳ１２０で抽出した特定文字と、特定文字テーブル３５とに応じて、ＤＬエンジン３７が認識すべき文字種類をＤＬエンジン３７に指定する。図３の例によれば、制御部３１は、ステップＳ１２０では、読取画像ＩＭに対するステップＳ１１０の文字認識処理の結果から、「庫日時」および「出庫日時」という文字列をキーワードＫＷ（特定文字）として抽出した。従って、ステップＳ１５０では、制御部３１は、特定文字テーブル３５を参照し、「庫日時」、「出庫日時」というキーワードＫＷに対応する文字種類として「０」〜「９」の数字および「年」、「月」、「日」、「時」、「分」の各漢字を、ＤＬエンジン３７に対して指定する。
【００４０】
ＤＬエンジン３７は、上述のように指定された文字種類の範囲内で、対象領域に対する第２の文字認識処理を実行する。つまり、文字種類として「０」〜「９」の数字および「年」、「月」、「日」、「時」、「分」の各漢字が指定された場合は、ＤＬエンジン３７は、入力した処理対象の文字が、「０」〜「９」の数字および「年」、「月」、「日」、「時」、「分」の各漢字のいずれであるかを推測する。仮に、ステップＳ１２０で抽出された特定文字に対応する文字種類として「０」〜「９」の数字が指定された場合は、ＤＬエンジン３７は、入力した処理対象の文字が「０」〜「９」の数字のいずれであるかを推測する。
【００４１】
ＤＬエンジン３７は、文字認識処理の結果として、入力した処理対象の文字（矩形領域ＣＦの画像）から推測した文字（変換結果としての文字データ）を、確信度とともに出力する。確信度とは、処理対象の文字についての文字認識結果の確からしさを示す数値であり、０％以上、１００％以下で表される。つまり、ＤＬエンジン３７は、処理対象の文字について、どのような文字であるかを推測して文字データを出力するだけでなく、その推測の確からしさを過去の学習に基づいて自動的に演算して確信度として出力するように構築されている。
【００４２】
ステップＳ１６０では、制御部３１は、ステップＳ１３０で特定した対象領域内の全ての文字（矩形領域ＣＦ単位の画像）をステップＳ１５０の処理対象としたか否かを判定する。図３では、ステップＳ１３０で特定した対象領域としては、二つの対象領域ＳＡのみ示しているが、特定文字テーブル３５を参照すれば判るように、例えば、読取画像ＩＭ内のキーワード「料金」と同一行で且つキーワード「料金」の右側の領域および、キーワード「料金」の次の行で且つキーワード「料金」の右側の領域も、ステップＳ１３０では対象領域の一つとして特定される。制御部３１は、ステップＳ１３０で特定した対象領域内に、ステップＳ１５０の処理対象としていない文字が残っている場合には（ステップＳ１６０において“Ｎｏ”）、ステップＳ１４０に戻り、ステップＳ１３０で特定した対象領域内の文字であって現時点でステップＳ１５０の処理対象としていない一つの文字を、次のステップＳ１５０の処理対象として取得する。一方、ステップＳ１３０で特定した対象領域内の全ての文字をステップＳ１５０の処理対象とした場合には（ステップＳ１６０において“Ｙｅｓ”）、制御部３１は、ステップＳ１７０へ進む。
【００４３】
ステップＳ１７０では、制御部３１は、ステップＳ１５０による文字認識処理の結果を、ストレージサーバー４０へ保存する。この場合、制御部３１は、ステップＳ１００で取得した読取画像とともに、ステップＳ１５０による文字認識処理の結果を、ストレージサーバー４０へ保存する。この結果、例えば、図３に示した読取画像ＩＭとともに、読取画像ＩＭ内の特定項目（入庫日時および出庫日時）の情報を正確に示す文字データ「２０１７年０８月２９日  １８時４０分」および「２０１７年０８月２９日  ２１時０４分」が、ストレージサーバー４０に保存される。つまり、ストレージサーバー４０に保存する文字データの正確性（原稿に記載された文字との一致率）は、ＤＬエンジン３７を用いた第２の文字認識処理によって担保される。以上により、図２のフローチャートが終了する。
【００４４】
制御部３１は、ステップＳ１７０において、ステップＳ１５０による文字認識処理の結果をストレージサーバー４０へ保存する場合に、文字毎の確信度に応じて保存態様を変更してもよい。制御部３１は、確信度に対するしきい値を予め情報として保有している。例えば、制御部３１は、ＤＬエンジン３７が推測可能な文字種類のうち「０」〜「９」の数字の確信度に対するしきい値として、１００％（あるいは１００％に近い９９％程度）といった第１しきい値を保有している。また、制御部３１は、ＤＬエンジン３７が推測可能な文字種類のうち「年」、「月」、「日」、「時」、「分」の各漢字の確信度に対するしきい値として、例えば、８０％といった第２しきい値を保有している。
【００４５】
上述したステップＳ１５０による文字認識処理の結果である文字データ「２０１７年０８月２９日  １８時４０分」および「２０１７年０８月２９日  ２１時０４分」をストレージサーバー４０へ保存する場合を例にして説明を行う。文字データ「２０１７年０８月２９日  １８時４０分」および「２０１７年０８月２９日  ２１時０４分」は、文字毎の確信度とともにＤＬエンジン３７により出力された情報である。制御部３１は、これら文字データの文字毎の確信度をしきい値と比較する。つまり、ステップＳ１５０による文字認識処理の結果である文字データのうちの数字については、文字毎の確信度を第１しきい値と比較し、漢字については文字毎の確信度を第２しきい値と比較する。
【００４６】
そして、制御部３１は、ステップＳ１５０による文字認識処理の結果である文字データのうち、確信度が比較したしきい値以上である文字についてはストレージサーバー４０へ保存する。一方、確信度が比較したしきい値未満である文字については、制御部３１は、単にストレージサーバー４０へ保存するのではなく、どのような文字であるか不明である旨の情報、例えば、不明な文字であることを示すフラグ（第１フラグ）を付してストレージサーバー４０へ保存する。
【００４７】
仮に、ステップＳ１５０による文字認識処理の結果である文字データ「２０１７年０８月２９日  １８時４０分」のうちの先頭から７番目の文字「８」についての確信度が第１しきい値に満たない９０％である場合、制御部３１は、この７番目の文字「８」については、第１フラグを付してストレージサーバー４０に保存する。ただし、保存結果において、確信度がしきい値以上であるかしきい値未満であるかが文字毎に判ればよい。そのため、制御部３１は、ステップＳ１５０による文字認識処理の結果である文字データのうち、確信度が比較したしきい値以上である文字については、正しい文字であることを示すフラグ（第２フラグ）を付してストレージサーバー４０へ保存するとしてもよい。
【００４８】
ステップＳ１５０による文字認識処理の結果である文字データのうち、ＤＬエンジン３７によっても正確に認識されなかった文字、つまり第１フラグが付されている文字あるいは第２フラグが付されていない文字については、人間の目視によってどのような文字であるかを確定することができる。つまり、ストレージサーバー４０を操作するオペレーターは、ストレージサーバー４０に保存されている読取画像と、読取画像とともに保存されているステップＳ１５０による文字認識処理の結果である文字データとを所定の表示部に表示させる。そして、オペレーターは、表示された文字データのうち第１フラグが付されている文字あるいは第２フラグが付されていない文字について、読取画像を目視しながら、何の文字であるかを確定する文字編集作業を実行すればよい。
【００４９】
むろん、オペレーターによる前記文字編集作業は、メインサーバー３０が受け付ける構成であってもよい。つまり、制御部３１は、ステップＳ１６０で“Ｙｅｓ”の判定をした後、ステップＳ１５０による文字認識処理の結果である文字データの各文字について、確信度としきい値とを比較し、当該比較の結果に応じて上述のフラグを付す処理を行う。そして、制御部３１は、オペレーターの操作に応じて、読取画像と、読取画像に対応するステップＳ１５０による文字認識処理の結果である文字データとを所定の表示部に表示させた上で、オペレーターによる前記文字編集作業を受け付ける。そして、制御部３１は、前記文字編集作業を経た文字データを、読取画像とともにストレージサーバー４０へ保存する（ステップＳ１７０）、としてもよい。
【００５０】
ストレージサーバー４０に読取画像とともに保存された文字データは、ネットワークＮＷを通じて外部へ提供される。ストレージサーバー４０に保存された文字データは、レシートや請求書といった原稿に記載された取引相手、取引日（取引日時）、取引金額、等の内容を示す文字列である。そのため、ストレージサーバー４０に保存された文字データは、例えば、会計処理や税務上の処理を行う会計事務所が操作する端末へ、ネットワークＮＷを介して送信され、会計処理や税務上の処理の用に供される。また、ストレージサーバー４０に保存された文字データは、ネットワークＮＷに接続したプリンターによって印刷されたり、通信装置２０およびスキャナー１０のユーザーの求めに応じて、ネットワークＮＷを通じて通信装置２０へ送信されたりする。
【００５１】
３．まとめ：
このように本実施形態によれば、画像処理装置（メインサーバー３０）は、レシートまたは請求書の読み取りにより生成された読取画像を取得する取得部と、第１の文字認識処理を実行する第１文字認識部と、第１の文字認識処理よりも文字認識精度が高い第２の文字認識処理を実行する第２文字認識部と、特定文字と、第２の文字認識処理の対象とする対象領域の位置とを関連付けた関連情報（特定文字テーブル３５）を予め記憶する記憶部３４と、制御部３１とを備える。そして、制御部３１は、ステップＳ１２０では、読取画像に対する第１文字認識部による第１の文字認識処理の結果から特定文字を抽出し、ステップＳ１３０では、抽出した特定文字と関連情報（特定文字テーブル３５）とに基づいて読取画像内に対象領域を特定し、ステップＳ１５０では、特定した対象領域に対して第２文字認識部による第２の文字認識処理を実行させる。
【００５２】
前記構成によれば、画像処理装置は、読取画像を対象とした第１の文字認識処理の結果から特定文字を抽出し、抽出した特定文字に対応する対象領域に絞って第２の文字認識処理を行う。従って、レシートまたは請求書といった原稿において、特定文字に対応して記載されている文字情報を効率よくかつ高い文字認識精度で検出することができる。
【００５３】
また、本実施形態によれば、関連情報（特定文字テーブル３５）は、特定文字に対する対象領域の位置関係を、対象領域の位置として規定している。つまり、特定文字テーブル３５には、特定文字との相対的な対象領域の位置が規定されているため、制御部３１は、正確かつ容易に読取画像内の対象領域を特定することができる。ただし、特定文字テーブル３５では、特定文字に対応する対象領域の位置は、例えば、読取画像内の所定の原点を基準とした座標情報等で規定されていてもよい。
【００５４】
また、本実施形態によれば、第２文字認識部は、機械学習により作成された文字認識用のモデル（ＤＬエンジン３７）を用いて第２の文字認識処理を実行する。これにより、レシートまたは請求書といった原稿において特定文字に対応して記載されている文字情報に対する文字認識精度を確実に向上させることができる。
【００５５】
また、本実施形態では、第２文字認識部が認識する文字種類は、第１文字認識部が認識する文字種類よりも少ない。つまり、第１の文字認識処理に用いられるＯＣＲエンジン３６と比較して、第２の文字認識処理に用いられるＤＬエンジン３７は、認識する文字種類（推測可能な文字種類）が少ない。汎用的なＯＣＲエンジン３６と比べて文字認識の対象とする文字種類を大幅に絞ることで、 機械学習により文字認識精度を高めたＯＣＲエンジン（ＤＬエンジン３７）が実現されている。
【００５６】
また、本実施形態によれば、制御部３１は、ステップＳ１５０では、読取画像に対する第１の文字認識処理の結果から抽出した特定文字に応じて、認識すべき文字種類を第２文字認識部に指定し、第２文字認識部は、指定された文字種類の範囲内で、ステップＳ１３０で特定された対象領域に対する第２の文字認識処理を実行する。
前記構成によれば、画像処理装置は、読取画像から抽出した特定文字に応じた文字種類の範囲内で、第２の文字認識処理を行う。そのため、第２の文字認識処理を効率良く行うことができる。具体的には、前記抽出した特定文字に応じて、ＤＬエンジン３７を用いた文字認識処理において推測結果として出力すべき文字種類の範囲がより限定されるため、ＤＬエンジン３７を用いた文字認識処理を高速化することができる。
【００５７】
４．他の実施形態：
本発明の実施形態は上述した態様に限定されず、例えば、以下に説明する種々の態様を含む。これまでに説明した実施形態を、便宜上、第１実施形態とも呼ぶ。各実施形態を組み合わせた構成も本明細書の開示範囲に含まれる。
【００５８】
第２実施形態：
メインサーバー３０は、認識する文字種類が互いに異なる複数の第２文字認識部を備えるとしてもよい。つまり、記憶部３４には、認識する文字種類が互いに異なる複数のＤＬエンジン３７が記憶されており、ある一つのＤＬエンジン３７を用いて文字認識処理を実現する場合のプロセッサー（ＣＰＵ３１ａ）が一つの第２文字認識部として機能し、別のＤＬエンジン３７を用いて文字認識処理を実現する場合のプロセッサー（ＣＰＵ３１ａ）が別の第２文字認識部として機能する。
【００５９】
認識する文字種類を「０」〜「９」の数字に限定したＤＬエンジン３７（以下、数字用ＤＬエンジン３７）と、認識する文字種類を「年」、「月」、「日」、「時」、「分」の各漢字に限定したＤＬエンジン３７（以下、漢字用ＤＬエンジン３７）とが記憶部３４に記憶されている場合を想定する。数字用ＤＬエンジン３７は、入力された画像が、「０」〜「９」の数字のいずれであるかを高い精度（少なくともＯＣＲエンジン３６よりも高い正答率）で推測する。漢字用ＤＬエンジン３７は、入力された画像が、「年」、「月」、「日」、「時」、「分」の各漢字のいずれであるかを高い精度（少なくともＯＣＲエンジン３６よりも高い正答率）で推測する。
【００６０】
制御部３１は、ステップＳ１５０では、ステップＳ１２０で抽出した特定文字に応じて複数の第２文字認識部の中から第２文字認識部を選択し、選択した第２文字認識部に、ステップＳ１３０で特定した対象領域に対する第２の文字認識処理を実行させる。つまり、制御部３１は、ステップＳ１２０で抽出した特定文字と特定文字テーブル３５とに応じて、認識すべき文字種類に対応したＤＬエンジン３７を選択する。
【００６１】
制御部３１は、上述の例のように、読取画像ＩＭに対するステップＳ１１０の文字認識処理の結果から「庫日時」および「出庫日時」という文字列をキーワードＫＷ（特定文字）として抽出した場合は、特定文字テーブル３５を参照し、「庫日時」、「出庫日時」というキーワードＫＷに対応する文字種類が「０」〜「９」の数字および「年」、「月」、「日」、「時」、「分」の各漢字であることを把握する。この場合、制御部３１は、数字用ＤＬエンジン３７および漢字用ＤＬエンジン３７の両方を選択し、数字用ＤＬエンジン３７および漢字用ＤＬエンジン３７をステップＳ１５０の文字認識処理に用いる。数字用ＤＬエンジン３７および漢字用ＤＬエンジン３７をステップＳ１５０の文字認識処理に用いる場合、制御部３１は、ステップＳ１４０で取得した処理対象の文字を、例えば、先ず数字用ＤＬエンジン３７に入力させ、数字用ＤＬエンジン３７による文字認識処理の結果（文字データおよび確信度）を取得する。そして、数字用ＤＬエンジン３７が出力した確信度が第１しきい値以上であれば、ステップＳ１６０に進む。一方、数字用ＤＬエンジン３７が出力した確信度が第１しきい値未満である場合に、ステップＳ１４０で取得した処理対象の文字を漢字用ＤＬエンジン３７に入力させ、漢字用ＤＬエンジン３７による文字認識処理の結果（文字データおよび確信度）を取得した上でステップＳ１６０に進めばよい。
【００６２】
また、制御部３１は、読取画像ＩＭに対するステップＳ１１０の文字認識処理の結果から、例えば「電話」という文字列をキーワードとして抽出した場合は、特定文字テーブル３５を参照し、「電話」というキーワードに対応する文字種類が「０」〜「９」の数字であることを把握する。この場合、制御部３１は、数字用ＤＬエンジン３７を選択し、数字用ＤＬエンジン３７をステップＳ１５０の文字認識処理に用いる。
このような第２実施形態によれば、制御部３１は、読取画像から抽出した特定文字に応じて、複数の第２文字認識部の中から、第２の文字認識処理により適した第２文字認識部を選択することで、第２の文字認識処理を効率良く行うことができる。
【００６３】
言うまでもないが、ＤＬエンジン３７が認識する文字種類（推測可能な文字種類）が「０」〜「９」の数字や「年」、「月」、「日」、「時」、「分」の各漢字であるという説明は一例に過ぎない。レシートや請求書に記載される文書の実情に鑑みて、ＤＬエンジン３７は、認識する文字種類に、例えば、漢字の「円」や、円を表す記号「￥」や、ハイフン「‐」等を含むとしてもよい。また、特定文字テーブル３５がキーワードに対応させて規定する文字種類にも「円」、「￥」、「‐」等が含まれていてもよい。
【００６４】
第３実施形態：
第１実施形態または第２実施形態において、メインサーバー３０の制御部３１は、更に、図５に示す処理を実行するとしてもよい。図５は、図２に示したステップＳ１５０の後であって、且つステップＳ１６０の前に制御部３１が実行する処理をフローチャートにより示している。
【００６５】
制御部３１は、ステップＳ１５２では、ステップＳ１５０による文字認識処理の結果が示す確信度が、予め定められたしきい値以上であるか否かを判定し、確信度がしきい値以上であれば“Ｙｅｓ”と判定してステップＳ１６０へ進む。一方、確信度がしきい値未満であれば“Ｎｏ”と判定してステップＳ１５４へ進む。ステップＳ１５２の判定で用いるしきい値は、上述したように、ステップＳ１５０による文字認識処理の結果として出力された文字の種類に応じて異なるしきい値であり、これまでの例に従えば、第１しきい値または第２しきい値である。
【００６６】
ステップＳ１５４では、制御部３１は、ステップＳ１５０による文字認識処理の結果として出力された文字が、予め決められている類似関係文字に該当するか否かを判定する。類似関係文字とは、文字認識処理において識別することが比較的難しい関係にある組み合わせにかかる文字である。一例として、数字の「６」と「８」は文字認識処理において混同されやすい。つまり、本来「６」である文字が「８」と認識されたり、逆に、本来「８」である文字が「６」と認識されたりする。そのため、数字の「６」および「８」は類似関係文字の一種である。制御部３１は、ステップＳ１５０による文字認識処理の結果として出力された文字が、類似関係文字のいずれかに該当する場合は“Ｙｅｓ”と判定してステップＳ１５６へ進み、類似関係文字に該当しない場合は“Ｎｏ”と判定してステップＳ１６０へ進む。
【００６７】
ステップＳ１５６では、制御部３１は、類似関係文字専用のＯＣＲエンジンであるＤＬエンジン３８（図６参照）を起動させ、ステップＳ１４０で取得した処理対象の文字についての文字認識処理をＤＬエンジン３８に実行させる。
図６は、第３実施形態にかかるシステム１の構成を簡易的に示している。図６は、記憶部３４にＤＬエンジン３８のプログラムが記憶されている点で図１に示した構成と異なる。
ＤＬエンジン３８もDeep Learning技術により作成された文字認識用のモデルであり、類似関係文字を識別することに特化した学習により作成されている。例えば、数字の「６」と、数字の「６」との間で類似関係にある数字の「８」とだけを認識するＤＬエンジン３８は、入力された画像が、数字の「６」と「８」のいずれであるかを高い精度（ＤＬエンジン３７よりも高い正答率）で推測することが可能である。ＤＬエンジン３８も、ＤＬエンジン３７と同様に、文字認識処理の結果として文字データと、確信度とを出力する。
【００６８】
例えば、ステップＳ１４０で取得した処理対象の文字について、ステップＳ１５０の文字認識処理を行った結果、数字の「６」の文字データが得られ、かつ確信度が８５％であった場合、制御部３１は、ステップＳ１５２では確信度がしきい値（この場合、第１しきい値）未満であると判定してステップＳ１５４へ進む。そして、数字の「６」は、類似関係文字の一つであるため、制御部３１は、ステップＳ１５４からステップＳ１５６へ進む。ステップＳ１５６では、数字の「６」と、数字の「６」との間で類似関係にある数字の「８」とだけを認識するＤＬエンジン３８を用いて、ステップＳ１４０で取得した処理対象の文字についての文字認識処理を実行する。ステップＳ１５６の結果、制御部３１は、ＤＬエンジン３８による文字認識処理の結果を取得し、ステップＳ１６０へ進む。ステップＳ１４０で取得した処理対象の文字について、ステップＳ１５０およびステップＳ１５６の両方の文字認識処理を行った場合は、制御部３１は、ステップＳ１５６の文字認識処理の結果を優先して採用し、上述のステップＳ１７０の対象とする。ステップＳ１４０で取得した処理対象の文字について、ステップＳ１５０およびステップＳ１５６の文字認識処理のうちステップＳ１５０の文字認識処理のみ行った場合は、むろん、制御部３１は、ステップＳ１５０の文字認識処理の結果を採用して、上述のステップＳ１７０の対象とする。なお、ＤＬエンジン３８も類似関係文字の組み合わせ（例えば、数字の「６」と「８」の組み合わせ、数字の「１」と「７」の組み合わせ）に応じて記憶部３４に複数記憶されており、制御部３１は、ステップＳ１５４で判定した類似関係文字に対応するＤＬエンジン３８を選択してステップＳ１５６の文字認識処理に用いるとしてもよい。
【００６９】
ステップＳ１５２の判定とステップＳ１５４の判定の実行順序は、逆であってもよい。つまり、制御部３１は、ステップＳ１５０の後、ステップＳ１５４の判定をし、ステップＳ１５４で“Ｎｏ”であればステップＳ１６０へ、ステップＳ１５４で“Ｙｅｓ”であればステップＳ１５２へ進み、さらに、ステップＳ１５２で“Ｙｅｓ”であればステップＳ１６０へ、ステップＳ１５２で“Ｎｏ”であればステップＳ１５６へ進む、としてもよい。
【００７０】
このような第３実施形態によれば、ステップＳ１３０で特定した対象領域に対する第２文字認識部による第２の文字認識処理の結果として、対象領域に含まれる処理対象の文字について所定の文字（類似関係文字のうちの一つ）である旨の認識結果が出力され、かつ前記処理対象の文字についての前記認識結果の確からしさを示す確信度が所定のしきい値未満である場合、制御部３１は、認識する文字種類を前記所定の文字と前記所定の文字に類似する所定の類似文字とに制限した文字認識処理を実行する第３文字認識部（ＤＬエンジン３８を用いて文字認識処理を実現する場合のプロセッサー（ＣＰＵ３１ａ））に、前記処理対象の文字の文字認識処理を実行させる。かかる構成によれば、第２の文字認識処理でも正確に認識できなかった（確信度がしきい値未満であった）文字について、類似関係にある組み合わせの文字のいずれの文字であるかを高い精度で推測する第３文字認識部により文字認識処理する。この結果、レシートまたは請求書といった原稿において、特定文字に対応して記載されている文字情報を、高い文字認識精度で検出することができる。
【００７１】
その他の説明：
これまでは、本発明にかかる画像処理装置の具体例として、システム１に含まれるメインサーバー３０を挙げて説明を行った。ただし、画像処理装置の具体例はメインサーバー３０に限定されない。例えば、スキャナー１０から原稿の読取画像を取得する通信装置２０が、自身のリソースを用いて本発明の画像処理装置を実現してもよい。つまり、通信装置２０において、ＲＯＭ２１ｂやＲＯＭ２１ｂ以外のメモリー等の記憶手段に特定文字テーブル３５、ＯＣＲエンジン３６、ＤＬエンジン３７，３８等が記憶されており、制御部２１がプログラム２２に従って、図２〜６により説明した処理を実行する構成であってもよい。この場合、通信装置２０は、ステップＳ１７０（保存処理）における読取画像や文字データの保存先を、自身が有するメモリー等の記憶手段としてもよいし、外部のサーバー（例えば、ストレージサーバー４０）としてもよい。
【００７２】
なお、ＯＣＲエンジン３６やＤＬエンジン３７，３８は、記憶部３４やメモリーに記憶されたソフトウェアではなく、ソフトウェアと協働して機能するハードウェアであってもよい。その場合、ＯＣＲエンジン３６自体を第１文字認識部と呼び、ＤＬエンジン３７自体を第２文字認識部と呼び、ＤＬエンジン３８自体を第３文字認識部と呼ぶことができる。
【００７３】
第２文字認識部は、第１文字認識部よりも高い文字認識精度で文字認識処理を実現するものであればよい。その意味で、第２文字認識部による第２の文字認識処理は、Deep Learning技術により作成されたＤＬエンジンを用いた処理に限定されない。第２文字認識部による第２の文字認識処理は、例えば、Deep Learning以外の機械学習の手法により作成されて、ＯＣＲエンジン３６よりも制限された範囲の文字（例えば、数字等）についての文字認識精度を高めた処理部による文字認識処理であってもよい。
【符号の説明】
【００７４】
１…システム、１０…スキャナー、２０…通信装置、２１…制御部、２１ａ…ＣＰＵ、２１ｂ…ＲＯＭ、２１ｃ…ＲＡＭ、２２…プログラム、２３…通信ＩＦ、３０…メインサーバー、３１…制御部、３１ａ…ＣＰＵ、３１ｂ…ＲＯＭ、３１ｃ…ＲＡＭ、３２…プログラム、３３…通信ＩＦ、３４…記憶部、３５…特定文字テーブル、３６…ＯＣＲエンジン、３７，３８…ＤＬエンジン、４０…ストレージサーバー、ＩＭ…読取画像、ＮＷ…ネットワーク
【図１】
2019168857.tif 000003
【図２】
2019168857.tif 000004
【図３】
2019168857.tif 000005
【図４】
2019168857.tif 000006
【図５】
2019168857.tif 000007
【図６】
2019168857.tif 000008