(57)【要約】【課題】複数の画像から同一の被写体に対応する文字列を探すことができる画像処理装置を提供することにある。【解決手段】実施形態によれば、画像処理装置は、計算部と、判定部とを備える。前記計算部は、第１の画像に写る第１の文字列を構成する各文字と候補文字群中の各候補文字との類似度で構成される第１の類似度群を算出し、第２の画像に写る第２の文字列を構成する各文字と前記候補文字群中の各候補文字との類似度で構成される第２の類似度群を算出し、前記第２の画像に写る第３の文字列を構成する各文字と前記候補文字群中の各候補文字との類似度で構成される第３の類似度群を算出する。前記判定部は、前記第１の類似度群を前記第２の類似度群及び前記第３の類似度群と比較することにより、前記第２の文字列または前記第３の文字列の何れが前記第１の文字列と同一の第１の被写体に対応するのかを判定する。【選択図】図５
2020030857.tif 000002
【特許請求の範囲】
【請求項１】
第１の画像に写る第１の文字列を抽出し、第２の画像に写る第２の文字列及び第３の文字列を抽出する抽出部と、
前記第１の文字列を構成する各文字を１文字単位で切り出し、前記第２の文字列を構成する各文字を１文字単位で切り出し、前記第３の文字列を構成する各文字を１文字単位で切り出す切り出し部と、
前記第１の文字列を構成する各文字と候補文字群中の各候補文字との類似度で構成される第１の類似度群を算出し、前記第２の文字列を構成する各文字と前記候補文字群中の各候補文字との類似度で構成される第２の類似度群を算出し、前記第３の文字列を構成する各文字と前記候補文字群中の各候補文字との類似度で構成される第３の類似度群を算出する計算部と、
前記第１の類似度群を前記第２の類似度群及び前記第３の類似度群と比較することにより、前記第２の文字列または前記第３の文字列の何れが前記第１の文字列と同一の第１の被写体に対応するのかを判定する判定部と、
を備える画像処理装置。
【請求項２】
前記判定部は、前記第１の文字列及び前記第２の文字列において互いに対応する桁毎かつ前記候補文字群中の候補文字毎に前記第１の類似度群に含まれる類似度と前記第２の類似度群に含まれる類似度との差の第１の絶対値群を算出し、前記第１の絶対値群中の全ての絶対値を合算した第１の合算値を算出し、前記第１の文字列及び前記第３の文字列において互いに対応する桁毎かつ前記候補文字群中の候補文字毎に前記第１の類似度群に含まれる類似度と前記第３の類似度群に含まれる類似度との差の第２の絶対値群を算出し、前記第２の絶対値群中の全ての絶対値を合算した第２の合算値を算出し、前記第１の合算値が前記第２の合算値よりも小さい場合、前記第２の文字列が前記第１の文字列と同一の前記第１の被写体に対応すると判定し、前記第２の合算値が前記第１の合算値よりも小さい場合、前記第３の文字列が前記第１の文字列と同一の前記第１の被写体に対応すると判定する、請求項１記載の画像処理装置。
【請求項３】
前記判定部は、前記第１の類似度群のヒストグラムと前記第２の類似度群とのヒストグラムの類似度を算出し、前記第１の類似度群のヒストグラムと前記第３の類似度群のヒストグラムとの類似度を算出し、前記第１の類似度群のヒストグラムが前記第３の類似度群のヒストグラムよりも前記第２の類似度群のヒストグラムに類似している場合、前記第２の文字列が前記第１の文字列と同一の前記第１の被写体に対応すると判定し、前記第１の類似度群のヒストグラムが前記第２の類似度群のヒストグラムよりも前記第３の類似度群のヒストグラムに類似している場合、前記第３の文字列が前記第１の文字列と同一の前記第１の被写体に対応すると判定する、請求項１記載の画像処理装置。
【請求項４】
前記判定部は、前記第１の画像と前記第２の画像との間の移動量に基づいて前記第２の画像において前記第１の被写体が写る位置を予測し、前記第２の文字列が前記位置から所定距離以上離れている場合、前記第２の文字列が前記第１の被写体に対応しないと判断し、前記第３の文字列が前記位置から所定距離以上離れている場合、前記第３の文字列が前記第１の被写体に対応しないと判断する、請求項１記載の画像処理装置。
【請求項５】
第１の画像に写る第１の文字列を抽出することと、
第２の画像に写る第２の文字列及び第３の文字列を抽出することと、
前記第１の文字列を構成する各文字を１文字単位で切り出すことと、
前記第２の文字列を構成する各文字を１文字単位で切り出すことと、
前記第３の文字列を構成する各文字を１文字単位で切り出すことと、
前記第１の文字列を構成する各文字と候補文字群中の各候補文字との類似度で構成される第１の類似度群を算出することと、
前記第２の文字列を構成する各文字と前記候補文字群中の各候補文字との類似度で構成される第２の類似度群を算出することと、
前記第３の文字列を構成する各文字と前記候補文字群中の各候補文字との類似度で構成される第３の類似度群を算出することと、
前記第１の類似度群を前記第２の類似度群及び前記第３の類似度群と比較することにより、前記第２の文字列または前記第３の文字列の何れが前記第１の文字列と同一の第１の被写体に対応するのかを判定すること、
を備える画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、画像処理装置及び画像処理方法に関する。
【背景技術】
【０００２】
一般的に、ＯＣＲ(optical character recognition)処理は、紙面に書かれている文字をスキャナで読み取った文字画像に対して行われる。近年、カメラの高解像度化に伴い、カメラで撮影された文字画像を補正し、補正後の文字画像に対してＯＣＲ処理を行うアプリケーションが出てきている。
【０００３】
異なる位置で撮影された複数の画像における対象物の同一判定は、複数台のカメラの撮影位置及び撮影方向が既知である場合には三角測量で行われる。一方、１つのカメラを不定速で動かしながら対象物を撮影する場合は、カメラの撮影位置及び撮影方向は不定である。そのため、三角測量で無理に計算しようとしても誤差が大きくなり、正しい結果を得られない可能性が高い。そのため、同一対象物の判定としては、特徴点マッチングによる判定手法や対象物に記載された固有のＩＤ(identification) (例えば文字列、バーコード、数列など)に基づく判定手法などがある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−２０６１７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特徴点マッチングによる手法では、対象物が周りの状況に比べて特徴的ではない場合には、特徴点自体を得ることができない。さらに、対象物の特徴点を得るために多量の特徴点を取得しようとすると、誤判定や処理速度の低下に繋がる。
【０００６】
一方、対象物に記載されたＩＤに基づく判定手法では、ＩＤは高解像度で撮影されなければならない。しかしながら、通常のカメラでＩＤを遠くから撮影すると、高解像度でＩＤを撮影できない。高解像度でＩＤを撮影するためには、カメラをより高解像度にしたり、画角を狭くしたりする必要がある。そのため、コストアップや操作性の低下に繋がる。
【０００７】
さらに、カメラで取得された文字画像のＯＣＲ処理では、低解像度の文字画像に対する文字の認識率が極端に下がる。さらに、低解像度の文字画像では、文字の認識率は画像の品質に左右されやすい。画像の品質は、文字画像の撮影タイミング、撮影位置や撮影環境（照明）などのわずかな撮影条件の差により大きく変わる。
【０００８】
本発明の実施形態が解決しようとする課題は、複数の画像から同一の被写体に対応する文字列を探すことができる画像処理装置及び画像処理方法を提供することにある。
【課題を解決するための手段】
【０００９】
実施形態によれば、画像処理装置は、抽出部と、切り出し部と、計算部と、判定部とを備えている。前記抽出部は、第１の画像に写る第１の文字列を抽出し、第２の画像に写る第２の文字列及び第３の文字列を抽出する。前記切り出し部は、前記第１の文字列を構成する各文字を１文字単位で切り出し、前記第２の文字列を構成する各文字を１文字単位で切り出し、前記第３の文字列を構成する各文字を１文字単位で切り出す。前記計算部は、
前記第１の文字列を構成する各文字と候補文字群中の各候補文字との類似度で構成される第１の類似度群を算出し、前記第２の文字列を構成する各文字と前記候補文字群中の各候補文字との類似度で構成される第２の類似度群を算出し、前記第３の文字列を構成する各文字と前記候補文字群中の各候補文字との類似度で構成される第３の類似度群を算出する。前記判定部は、前記第１の類似度群を前記第２の類似度群及び前記第３の類似度群と比較することにより、前記第２の文字列または前記第３の文字列の何れが前記第１の文字列と同一の第１の被写体に対応するのかを判定する。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態に係る一例となる画像処理装置の概略図。
【図２】第１の実施形態に係る一例となる画像処理装置のブロック図。
【図３】第１の実施形態に係る一例となる画像処理装置による処理のフローチャート。
【図４】第１の実施形態に係る一例となる複数の画像を示す図。
【図５】第１の実施形態に係る一例となる複数の類似度マップを示す図。
【発明を実施するための形態】
【００１１】
以下、いくつかの実施の形態について、図面を参照して説明する。
（第１の実施形態）
第１の実施形態について説明する。図１は、第１の実施形態に係る一例となる画像処理装置１０の概略図である。  
画像処理装置１０は、倉庫や店舗の複数の棚に載せられた複数の物品（例えば段ボール箱）の在庫管理や所在地管理等に用いられる。画像処理装置１０は、計算機１１と、移動体１２と、第１の撮影部１３とを備える。画像処理装置１０は、これら全ての要素を必ず備えている必要はない。例えば、画像処理装置１０は、少なくとも計算機１１を備える装置であってもよい。
【００１２】
計算機１１は、後述するようにＯＣＲ処理により画像から文字認識を行う装置である。計算機１１は、例えばＰＣ(Personal Computer)である。なお、文字は、数字、記号、符号またはマーク等の識別コードを含む概念である。文字列は、数字、記号、符号またはマーク等の識別コードを複数桁並べたものである。
【００１３】
移動体１２は、画像処理装置１０を何れの方向にも自律走行可能な台車である。移動体１２は、直線状に並べられた棚２０の延在方向と平行な方向に走行する。移動体１２は、計算機１１及び第１の撮影部１３を搭載する。
【００１４】
第１の撮影部１３は、対象を撮影するカメラである。なお、対象は、被写体ということもある。第１の撮影部１３は、対象を動画像として撮影するカメラであっても、対象を静止画像として撮影するカメラであってもよい。第１の撮影部１３は、異なる方向から同一の対象を撮影するように移動体１２に固定されている。第１の撮影部１３の撮影方向は既知である。対象は、棚２０に載せられた複数の物品に貼られているラベルの文字列である。例えば、物品２１のラベルには、「０００８７２」と記載されている。物品２２のラベルには、「１０３３７１」と記載されている。ラベルに記載されている文字列は、各物品を識別するために各物品に一意に割り当てられているＩＤ(identification)情報である。一般に、あるエリアで管理されている複数の物品に貼られている全てのラベルの文字列は、同一桁かつ予め決められた文字の組み合わせである。図１に示す例では、文字列は、６桁かつ各桁０〜９の組み合わせで構成されている。第１の撮影部１３は、棚２０に載せられた複数の物品に貼られているラベルを順次撮影する。第１の撮影部１３は、取得した画像のデータを計算機１１へ送る。
【００１５】
図２は、第１の実施形態に係る一例となる画像処理装置１０のブロック図である。図２は、主として計算機１１の構成を示す。計算機１１は、処理部１１１と、記憶部１１２と、入力部１１３と、表示部１１４と、第１のインターフェース１１５を備える。
【００１６】
処理部１１１は、計算機１１の中枢部分に相当する。処理部１１１は、オペレーティングシステムやアプリケーションプログラムに従って、計算機１１の各要素を制御する。処理部１１１は、取り込み部１１１１と、抽出部１１１２と、切り出し部１１１３と、計算部１１１４と、推定部１１１５ａ及び決定部１１１５ｂを含む判定部１１１５と、認識部１１１６を備える。これらの要素による処理内容は後述する。
【００１７】
記憶部１１２は、上述のオペレーティングシステムやアプリケーションプログラムを記憶するメモリを含む。さらに、記憶部１１２は、処理部１１１による処理に必要なワークエリアとなるメモリを含む。さらに、記憶部１１２は、処理部１１１による処理に必要なデータを記憶するメモリを含む。  
入力部１１３は、計算機１１に対するコマンドを入力可能なキーボードである。  
表示部１１４は、処理部１１１からの信号に基づいて映像を表示するディスプレイである。表示部１１４は、映像の出力部である。  
第１のインターフェース１１５は、計算機１１と第１の撮影部１３とを接続する。計算機１１は、第１のインターフェース１１５を介して第１の撮影部１３から画像のデータを取り込む。
【００１８】
次に、画像処理装置１０による文字認識の処理について説明する。画像処理装置１０が処理する画像は、例えば第１の撮影部１３が棚２０に載せられた複数の物品に貼られているラベルを遠い位置から撮影した低解像度の画像である。そのため、第１の撮影部１３による画像は、人が見れば文字列を認識できる（読める）が、画像処理装置１０による一般的なＯＣＲ処理では十分に文字認識を行えないものとする。
【００１９】
図３は、第１の実施形態に係る一例となる画像処理装置１０による処理のフローチャートである。
【００２０】
処理部１１１の取り込み部１１１１は、画像を取り込む（Ａｃｔ１０１）。Ａｃｔ１０１では、処理部１１１は、第１の撮影部１３が取得した第１の画像及び第２の画像のデータを第１のインターフェース１１５を介して取り込む。第１の画像及び第２の画像は、第１の撮影部１３が異なる方向から第１の被写体を写した画像である。記憶部１１２は、第１の画像のデータ及び第２の画像のデータを記憶する。第１の画像及び第２の画像には、文字認識の対象となる文字列（以下、第１の被写体という）が写る。なお、第１の画像及び第２の画像には、第１の被写体以外の文字列が写っていてもよい。
【００２１】
処理部１１１の抽出部１１１２は、文字列を抽出する（Ａｃｔ１０２）。Ａｃｔ１０２では、処理部１１１は、第１の画像に写る全ての文字列を抽出する。同様に、処理部１１１は、第２の画像に写る全ての文字列を抽出する。以下では説明の簡略化のため、第１の画像に写る第１の被写体に対応する第１の文字列に対する処理、及び第２の画像に写る第２の文字列及び第３の文字列に対する処理を示す。処理部１１１は、第１の画像に写る第１の文字列を抽出する。同様に、処理部１１１は、第２の画像に写る第２の文字列及び第３の文字列を抽出する。Ａｃｔ１０２における文字列の抽出処理は、ＯＣＲ処理で用いられる任意の手法でよい。
【００２２】
処理部１１１の切り出し部１１１３は、文字を切り出す（Ａｃｔ１０３）。Ａｃｔ１０３では、処理部１１１は、第１の文字列を構成する各文字を１文字単位で切り出す。同様に、処理部１１１は、第２の文字列を構成する各文字を１文字単位で切り出す。同様に、処理部１１１は、第３の文字列を構成する各文字を１文字単位で切り出す。Ａｃｔ１０３における文字の切り出し処理は、ＯＣＲ処理で用いられる任意の手法でよい。
【００２３】
処理部１１１の計算部１１１４は、類似度を計算する（Ａｃｔ１０４）。Ａｃｔ１０４では、処理部１１１は、第１の文字列を構成する各文字と候補文字群中の各候補文字との類似度を算出する。これにより、処理部１１１は、第１の文字列を構成する各文字と候補文字群中の各候補文字との類似度で構成される第１の類似度群を算出する。つまり、処理部１１１は、第１の文字列の各桁において、候補文字の数に対応する数の類似度を算出する。同様に、処理部１１１は、第２の文字列を構成する各文字と候補文字群中の各候補文字との類似度を算出する。これにより、処理部１１１は、第２の文字列を構成する各文字と候補文字群中の各候補文字との類似度で構成される第２の類似度群を計算する。つまり、処理部１１１は、第２の文字列の各桁において、候補文字の数に対応する数の類似度を算出する。同様に、処理部１１１は、第３の文字列を構成する各文字と候補文字群中の各候補文字との類似度を算出する。これにより、処理部１１１は、第３の文字列を構成する各文字と候補文字群中の各候補文字との類似度で構成される第３の類似度群を計算する。つまり、処理部１１１は、第３の文字列の各桁において、候補文字の数に対応する数の類似度を算出する。
【００２４】
上述のＡｃｔ１０４で用いられる候補文字群は、複数の候補文字で構成されている。複数の候補文字は、各物品を識別するための文字列として使用可能な予め決められた複数の文字で構成されている。例えば、複数の候補文字は０〜９の数字である。候補文字群は記憶部１１２に保存されている。候補文字群は、物品が管理されているエリアに応じて異なる可能性がある。そのため、記憶部１１２は、エリア単位で異なる候補文字群のデータを保存していてもよい。
【００２５】
上述のＡｃｔ１０４で算出される類似度は、第１の文字列を構成する各文字、第２の文字列を構成する各文字及び第３の文字列を構成する各文字が各候補文字に一致する可能性（確率）を示す指標である。Ａｃｔ１０４における類似度の算出手法は任意の手法でよい。なお、類似度のレンジは特に限定されない。例えば、類似度のレンジは、０〜１であっても、０〜１００であってもよい。類似度は、上限値に近いほど候補文字に似ていることを示し、下限値に近いほど候補文字に似ていないことを示していても、これらの逆を示していてもよい。例えば、処理部１１１は、候補文字同士の依存関係がないように各類似度を算出するようにすることができる。つまり、第１の文字列の各桁において、第１の類似度群に含まれる各類似度は互いに依存関係がない。第１の文字列の桁単位で類似度を合計した値は１００％に正規化されていない。第２の文字列及び第３の文字列における類似度についても同様である。つまり、第２の文字列の各桁において、第２の類似度群に含まれる各類似度は互いに依存関係がない。同様に、第３の文字列の各桁において、第３の類似度群に含まれる各類似度は互いに依存関係がない。この場合、処理部１１１は、同一桁においてある候補文字の類似度を算出する際に、他の候補文字の類似度の値に影響を受けない。そのため、処理部１１１は候補文字同士が独立した確度の高い類似度を算出することができる。
【００２６】
これとは逆に、処理部１１１は、候補文字同士に依存関係を持たせるように各類似度を算出するようにしてもよい。つまり、第１の文字列の各桁において、第１の類似度群に含まれる各類似度は互いに依存関係がある。第１の文字列の桁単位で類似度を合計した値は１００％に正規化されている。第２の文字列及び第３の文字列における類似度についても同様である。つまり、第２の文字列の各桁において、第２の類似度群に含まれる各類似度は互いに依存関係がある。同様に、第３の文字列の各桁において、第３の類似度群に含まれる各類似度は互いに依存関係がある。このように、第１の類似度群に含まれる各類似度、第２の類似度群に含まれる各類似度及び第３の類似度群に含まれる各類似度は尤度である。この場合、処理部１１１は、第１の文字列を構成する各桁の文字がどの候補文字と一致する可能性が高いのかを算出することができる。同様に、処理部１１１は、第２の文字列を構成する各桁の文字がどの候補文字と一致する可能性が高いのかを算出することができる。同様に、処理部１１１は、第３の文字列を構成する各桁の文字がどの候補文字と一致する可能性が高いのかを算出することができる。
【００２７】
処理部１１１の推定部１１１５ａは、同一の文字列を推定する（Ａｃｔ１０５）。Ａｃｔ１０５では、処理部１１１は、第１と画像と第２の画像の両方に同一の被写体に対応する文字列が存在する可能性が高いと推定する。
【００２８】
処理部１１１の決定部１１１５ｂは、同一の文字列を決定する（Ａｃｔ１０６）。Ａｃｔ１０６では、処理部１１１は、第１の画像に写る各文字列から算出された各類似度群及び第２の画像に写る各文字列から算出された類似度群に基づいて、第１の画像から抽出したどの文字列と第２の画像から抽出したどの文字列が同一の被写体に対応するのかを明らかにすることができる。
【００２９】
以下では、処理部１１１が第１の画像の第１の文字列と同一の被写体である文字列を第２の画像から決定する例について説明する。上記Ａｃｔ１０５及びＡｃｔ１０６では、処理部１１１の判定部１１１５は、第１の類似度群を第２の類似度群及び前記第３の類似度群と比較することにより、第２の文字列または第３の文字列の何れが第１の文字列と同一の第１の被写体に対応するのかを判定する。処理部１１１による各類似度群の比較手法を下記に例示するが、これら以外の手法であってもよい。
【００３０】
処理部１１１による各類似度群の比較手法の一例を説明する。処理部１１１は、第１の文字列及び第２の文字列において互いに対応する桁毎かつ候補文字群中の候補文字毎に第１の類似度群に含まれる類似度と前記第２の類似度群に含まれる類似度との差の第１の絶対値群を算出する。次に、処理部１１１は、第１の絶対値群中の全ての絶対値を合算した第１の合算値を算出する。同様に、処理部１１１は、第１の文字列及び第３の文字列において互いに対応する桁毎かつ候補文字群中の候補文字毎に第１の類似度群に含まれる類似度と第３の類似度群に含まれる類似度との差の第２の絶対値群を算出する。次に、処理部１１１は、第２の絶対値群中の全ての絶対値を合算した第２の合算値を算出する。第１の合算値が前記第２の合算値よりも小さい場合、処理部１１１は、第２の文字列が前記第１の文字列と同一の第１の被写体に対応すると判定する。つまり、処理部１１１は、第３の文字列よりも第２の文字列の方が第１の文字列に類似している、または一致していると判定することができる。一方、第２の合算値が第１の合算値よりも小さい場合、処理部１１１は、第３の文字列が第１の文字列と同一の第１の被写体に対応すると判定する。つまり、処理部１１１は、第２の文字列よりも第３の文字列の方が第１の文字列に類似している、または一致していると判定することができる。以上により、処理部１１１は、第１の画像のどの文字列と第２の画像のどの文字列が同一の被写体に対応しているのかを明らかにすることができる。
【００３１】
処理部１１１による各類似度群の比較手法の別の例を説明する。処理部１１１は、第１の類似度群のヒストグラムと第２の類似度群のヒストグラムの類似度を算出する。同様に、処理部１１１は、第１の類似度群のヒストグラムと第３の類似度群のヒストグラムとの類似度を算出する。処理部１１１は、第１の類似度群のヒストグラムが第３の類似度群のヒストグラムよりも第２の類似度群のヒストグラムに類似している場合、第２の文字列が前記第１の文字列と同一の前記第１の被写体に対応すると判定する。つまり、処理部１１１は、第３の文字列よりも第２の文字列の方が第１の文字列に類似している、または一致している可能性が高いと判定することができる。一方、処理部１１１は、第１の類似度群のヒストグラムが第２の類似度群のヒストグラムよりも第３の類似度群のヒストグラムに類似している場合、第３の文字列が第１の文字列と同一の第１の被写体に対応すると判定する。つまり、処理部１１１は、第２の文字列よりも第３の文字列の方が第１の文字列に類似している、または一致している可能性が高いと判定することができる。処理部１１１は、例えば、Bhattacharyya係数を用いて、ヒストグラム間の類似度を求めることができる。なお、処理部１１１は、他の手法によりヒストグラム間の類似度を求めてもよい。
【００３２】
なお、Ａｃｔ１０５及びＡｃｔ１０６における処理は、Ａｃｔ１０４の後でなくても、Ａｃｔ１０２とＡｃｔ１０３の間またはＡｃｔ１０３とＡｃｔ１０４の間であってもよい。
【００３３】
処理部１１１の認識部１１１６は、文字認識を実行する（Ａｃｔ１０７）。Ａｃｔ１０７では、処理部１１１は、第１の被写体に対応する第１の文字列と、Ａｃｔ１０５及びＡｃｔ１０６において第１の被写体に対応すると判定された第２の画像の中の文字列とを用いて第１の被写体の文字列を認識する。処理部１１１は、同一被写体に対応すると判定された第１の画像に写る文字列及び第２の画像に写る文字列をＯＣＲ処理し、第１の被写体の文字列を認識する。
【００３４】
第１の画像に写る文字列の認識結果と第２の画像に写る文字列の認識結果が異なる場合、処理部１１１は、第１の類似度群の各類似度及び第２の類似度群の各類似度を参照して最終的な第１の被写体の文字列を決定してもよい。
【００３５】
第１の実施形態によれば、画像処理装置１０は、上述の類似度を用いることにより、低解像度の複数の画像から同一の被写体に対応する文字列及びこれが付された商品を探すことができる。
【００３６】
なお、各類似度が上述したように候補文字同士の依存関係を持たせるように算出されている場合、画像処理装置１０による文字列の認識精度はさらに高まる。これは、文字列の各桁において、最も一致する可能性が高い候補文字が抽出されているからである。
【００３７】
次に、上述した画像処理装置１０による文字認識の処理の具体例を図４〜図５を用いて説明する。
【００３８】
図４は、第１の実施形態に係る一例となる画像を示す図である。図４の左図及び右図は、第１の撮影部１３による第１の画像及び第２の画像である。第１の画像及び第２の画像は、異な位置から撮影されている。第１の画像及び第２の画像は、文字認識の対象となる物品２１に貼られているラベルの文字列「０００８７２」（以下、被写体Ａという）及び文字認識の対象となる物品２２に貼られているラベルの文字列「１０３３７１」（以下、被写体Ｂという）が写る。上記Ａｃｔ１０１で説明したように、処理部１１１は、第１の撮影部１３が取得した第１の画像のデータ及び第２の画像のデータを第１のインターフェース１１５を介して取り込む。
【００３９】
Ａｃｔ１０２で説明したように、処理部１１１は、図４で示した第１の画像に写る被写体Ａに対応する文字列ａ１及び被写体Ｂに対応する文字列ｂ１を抽出する。処理部１１１は、第２の画像に写る被写体Ａに対応する文字列ａ２及び被写体Ｂに対応する文字列ｂ２を抽出する。Ａｃｔ１０３で説明したように、処理部１１１は、文字列ａ１及び文字列ｂ１を構成する各文字を１文字単位で切り出す。同様に、処理部１１１は、文字列ａ２及び文字列ｂ２を構成する各文字を１文字単位で切り出す。
【００４０】
図５は、第１の実施形態に係る一例となる複数の類似度マップを示す図である。類似度マップは、上述の第１の類似度群及び第２の類似度群に相当する。図５の左上図は、文字列ａ１に関する類似度マップである。図５の左下図は、文字列ｂ１に関する類似度マップである。図５の右上図は、文字列ａ２に関する類似度マップである。図５の右下図は、文字列ｂ２に関する類似度マップである。Ａｃｔ１０４で説明したように、処理部１１１は、文字列ａ１を構成する各文字と候補文字群中の各候補文字との類似度を算出する。これにより、処理部１１１は、文字列ａ１を構成する各文字と候補文字群中の各候補文字との類似度で構成される類似度マップを算出する。同様に、処理部１１１は、文字列ｂ１に関する類似度マップ、文字列ａ２に関する類似度マップ及び文字列ｂ２に関する類似度マップを算出する。類似度マップの横軸は、文字列の桁を示す。なお、文字列ａ１、文字列ｂ１、文字列ａ２及び文字列ｂ２の何れも６桁である。縦軸は、候補文字を示す。候補文字は、０〜９の１０個である。そのため、各類似度マップは、６０個の類似度で構成されている。
【００４１】
図５に示す各類似度マップは、上述したように各桁において候補文字同士の依存関係がないように各類似度が算出された例である。図５の類似度は、１．０に近いほど候補文字に似ていることを示し、０．０に近いほど候補文字に似ていないことを示す。
【００４２】
図５の各類似度マップの下には、認識結果が示されている。認識結果は、桁毎の類似度の最大値に対応する候補文字を並べた集合である。Ａｃｔ１０５及びＡｃｔ１０６で説明したように、処理部１１１は、文字列ａ１に関する類似度マップを文字列ａ２に関する類似度マップ及び文字列ｂ２に関する類似度マップと比較することにより、文字列ａ２または文字列ｂ２の何れが文字列ａ１と同一の被写体Ａに対応するのかを判定することができる。ここでは、一例として上述の類似度同士の差の絶対値を用いた手法を説明する。処理部１１１は、文字列ａ１に関する類似度マップに含まれる類似度と文字列ａ２に関する類似度マップに含まれる類似度との差の絶対値を対応する項目毎に算出し、全ての絶対値を合算した第１の合算値を算出する。第１の合算値は、|0.9-0.8|+|0.8-0.9|+|0.5-0.4|+|0.0-0.0|+ …+|0.0-0.0|=1.8となる。同様に、処理部１１１は、文字列ａ１に関する類似度マップに含まれる類似度と文字列ｂ２に関する類似度マップに含まれる類似度との差の絶対値を対応する項目毎に算出し、全ての絶対値を合算した第２の合算値を算出する。第２の合算値は、|0.9-0.0|+|0.8-0.7|+|0.5-0.0|+|0.0-0.0|+ …+|0.0-0.0|=7.6となる。第１の合算値は、前記第２の合算値よりも小さい。そのため、処理部１１１は、文字列ａ２が文字列ａ１と同一の被写体Ａに対応すると判定する。つまり、処理部１１１は、文字列ｂ２よりも文字列ａ２の方が文字列ａ１に類似している、または一致していると判定する。
【００４３】
同様に、処理部１１１は、文字列ｂ１に関する類似度マップを文字列ａ２に関する類似度マップ及び文字列ｂ２に関する類似度マップと比較することにより、文字列ｂ２が文字列ｂ１と同一の被写体Ｂに対応するのかを判定することができる。
【００４４】
なお、Ａｃｔ１０１において、画像処理装置１０は、３以上の画像を取り込んでもよい。この場合、画像処理装置１０は、３以上の画像から同一の被写体に対応する文字列を判定する。画像処理装置１０は、同一の被写体に対応すると判定された複数の文字列をＯＣＲ処理し文字列を認識し、最も出現頻度の高い認識結果に基づいてこの被写体の文字列を決定することができる。これにより、画像処理装置１０は、より高い精度で被写体の文字列を認識することができる。
【００４５】
なお、Ａｃｔ１０７において、処理部１１１は、同一被写体に対応すると判定された全ての画像を超解像処理で画質を上げ、その画像をＯＣＲ処理し、この被写体の文字列を決定するようにしてもよい。これにより、画像処理装置１０は、より高い精度で被写体の文字列を認識することができる。
【００４６】
なお、Ａｃｔ１０７において、処理部１１１は、第１の画像と前記第２の画像との間の移動量に基づいて第２の画像において第１の被写体が写る位置を予測し、第２の文字列がこの位置から所定距離以上離れている場合、第２の文字列が第１の被写体に対応しないと判断してもよい。同様に、第３の文字列がこの位置から所定距離以上離れている場合、処理部１１１は、第３の文字列が第１の被写体に対応しないと判断してもよい。第１の画像と第２の画像との間の移動量は、例えば、移動体１２またはこれに搭載されている第１の撮影部１３の移動量に基づいていてもよいし、第１の画像及び第２の画像に写る任意の目印の移動量に基づいていてもよい。また、第２の文字列の形状が第１の文字列の形状と大きく異なっている場合または第２の文字列が付された商品の形状が第１の文字列が付された商品の形状と大きく異なっている場合も、処理部１１１は、第２の文字列は第１の被写体に対応しないと判断してもよい。同様に、第３の文字列の形状が第１の文字列の形状と大きく異なっている場合または第３の文字列が付された商品の形状が第１の文字列が付された商品の形状と大きく異なっている場合も、処理部１１１は、第３の文字列は第１の被写体に対応しないと判断してもよい。これにより、画像処理装置１０は、より高い精度で被写体の文字列を認識することができる。
【００４７】
動作を実行する主体は例えば、ハードウェア、ハードウェアとソフトウェアとの複合体、ソフトウェア、及び実行中のソフトウェアなどといった、コンピュータに係る主体である。動作を実行する主体は例えば、プロセッサ上で実行されるプロセス、プロセッサ、オブジェクト、実行ファイル、スレッド、プログラムおよびコンピュータであるがこれらに限るものではない。例えば、画像処理装置やそこで実行されるアプリケーションが動作を実行する主体であってもよい。プロセスやスレッドに、動作を実行する主体を複数演じさせてもよい。動作を実行する主体が１つの画像処理装置内にあってもよいし、複数の画像処理装置へ分配されたかたちであってもよい。
【００４８】
装置内部に以上説明した機能が予め記録されていてもよいし、同様の機能をネットワークから装置にダウンロードしてもよいし、同様の機能を記録媒体に記憶させたものを装置にインストールしてもよい。記録媒体としては、ディスクＲＯＭやメモリカード等プログラムを記憶でき、かつ装置が読み取り可能な記録媒体であれば、その形態は何れの形態であっても良い。またこのように予めインストールやダウンロードにより得る機能は装置内部のＯＳ（オペレーティング・システム）等と協働してその機能を実現させるものであってもよい。
【００４９】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００５０】
１０…画像処理装置、１１…計算機、１２…移動体、１３…第１の撮影部、２０…棚、２１…物品、２２…物品、１１１…処理部、１１２…記憶部、１１３…入力部、１１４…表示部、１１５…第１のインターフェース、１１１１…取り込み部、１１１２…抽出部、１１１３…切り出し部、１１１４…計算部、１１１５…判定部、１１１５ａ…推定部、１１１５ｂ…決定部、１１１６…認識部。
【図１】
2020030857.tif 000003
【図２】
2020030857.tif 000004
【図３】
2020030857.tif 000005
【図４】
2020030857.tif 000006
【図５】
2020030857.tif 000007
【手続補正書】
【提出日】令和1年11月15日(2019.11.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１の文字列、第２の文字列及び第３の文字列を撮影する撮影部と、
前記第１の文字列を構成する各文字と各候補文字との類似度で構成される第１の類似度群を、前記第２の文字列を構成する各文字と各候補文字との類似度で構成される第２の類似度群及び前記第３の文字列を構成する各文字と各候補文字との類似度で構成される第３の類似度群と比較することにより、前記第２の文字列または前記第３の文字列の何れが前記第１の文字列と同一の被写体に対応するのかを判定する判定部と、
を備える画像処理装置。
【請求項２】
前記撮影部は、前記第１の文字列が写る第１の画像を取得し、前記第２の文字列及び前記第３の文字列が写る第２の画像を取得する、請求項１に記載の画像処理装置。
【請求項３】
前記撮影部は、異なる方向から前記被写体を写した前記第１の画像及び前記第２の画像を取得する、請求項２に記載の画像処理装置。
【請求項４】
前記第１の文字列と、前記判定部で前記被写体に対応すると判定された文字列とを用いて前記被写体の文字列を認識する認識部をさらに備える、請求項１に記載の画像処理装置。
【請求項５】
第１の文字列、第２の文字列及び第３の文字列を撮影することと、
前記第１の文字列を構成する各文字と各候補文字との類似度で構成される第１の類似度群を、前記第２の文字列を構成する各文字と各候補文字との類似度で構成される第２の類似度群及び前記第３の文字列を構成する各文字と各候補文字との類似度で構成される第３の類似度群と比較することにより、前記第２の文字列または前記第３の文字列の何れが前記第１の文字列と同一の被写体に対応するのかを判定することと、
を備える画像処理方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００４９
【補正方法】変更
【補正の内容】
【００４９】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
以下、本願の出願当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
第１の画像に写る第１の文字列を抽出し、第２の画像に写る第２の文字列及び第３の文字列を抽出する抽出部と、
前記第１の文字列を構成する各文字を１文字単位で切り出し、前記第２の文字列を構成する各文字を１文字単位で切り出し、前記第３の文字列を構成する各文字を１文字単位で切り出す切り出し部と、
前記第１の文字列を構成する各文字と候補文字群中の各候補文字との類似度で構成される第１の類似度群を算出し、前記第２の文字列を構成する各文字と前記候補文字群中の各候補文字との類似度で構成される第２の類似度群を算出し、前記第３の文字列を構成する各文字と前記候補文字群中の各候補文字との類似度で構成される第３の類似度群を算出する計算部と、
前記第１の類似度群を前記第２の類似度群及び前記第３の類似度群と比較することにより、前記第２の文字列または前記第３の文字列の何れが前記第１の文字列と同一の第１の被写体に対応するのかを判定する判定部と、
を備える画像処理装置。
［Ｃ２］
前記判定部は、前記第１の文字列及び前記第２の文字列において互いに対応する桁毎かつ前記候補文字群中の候補文字毎に前記第１の類似度群に含まれる類似度と前記第２の類似度群に含まれる類似度との差の第１の絶対値群を算出し、前記第１の絶対値群中の全ての絶対値を合算した第１の合算値を算出し、前記第１の文字列及び前記第３の文字列において互いに対応する桁毎かつ前記候補文字群中の候補文字毎に前記第１の類似度群に含まれる類似度と前記第３の類似度群に含まれる類似度との差の第２の絶対値群を算出し、前記第２の絶対値群中の全ての絶対値を合算した第２の合算値を算出し、前記第１の合算値が前記第２の合算値よりも小さい場合、前記第２の文字列が前記第１の文字列と同一の前記第１の被写体に対応すると判定し、前記第２の合算値が前記第１の合算値よりも小さい場合、前記第３の文字列が前記第１の文字列と同一の前記第１の被写体に対応すると判定する、［Ｃ１］記載の画像処理装置。
［Ｃ３］
前記判定部は、前記第１の類似度群のヒストグラムと前記第２の類似度群とのヒストグラムの類似度を算出し、前記第１の類似度群のヒストグラムと前記第３の類似度群のヒストグラムとの類似度を算出し、前記第１の類似度群のヒストグラムが前記第３の類似度群のヒストグラムよりも前記第２の類似度群のヒストグラムに類似している場合、前記第２の文字列が前記第１の文字列と同一の前記第１の被写体に対応すると判定し、前記第１の類似度群のヒストグラムが前記第２の類似度群のヒストグラムよりも前記第３の類似度群のヒストグラムに類似している場合、前記第３の文字列が前記第１の文字列と同一の前記第１の被写体に対応すると判定する、［Ｃ１］記載の画像処理装置。
［Ｃ４］
前記判定部は、前記第１の画像と前記第２の画像との間の移動量に基づいて前記第２の画像において前記第１の被写体が写る位置を予測し、前記第２の文字列が前記位置から所定距離以上離れている場合、前記第２の文字列が前記第１の被写体に対応しないと判断し、前記第３の文字列が前記位置から所定距離以上離れている場合、前記第３の文字列が前記第１の被写体に対応しないと判断する、［Ｃ１］記載の画像処理装置。
［Ｃ５］
第１の画像に写る第１の文字列を抽出することと、
第２の画像に写る第２の文字列及び第３の文字列を抽出することと、
前記第１の文字列を構成する各文字を１文字単位で切り出すことと、
前記第２の文字列を構成する各文字を１文字単位で切り出すことと、
前記第３の文字列を構成する各文字を１文字単位で切り出すことと、
前記第１の文字列を構成する各文字と候補文字群中の各候補文字との類似度で構成される第１の類似度群を算出することと、
前記第２の文字列を構成する各文字と前記候補文字群中の各候補文字との類似度で構成される第２の類似度群を算出することと、
前記第３の文字列を構成する各文字と前記候補文字群中の各候補文字との類似度で構成される第３の類似度群を算出することと、
前記第１の類似度群を前記第２の類似度群及び前記第３の類似度群と比較することにより、前記第２の文字列または前記第３の文字列の何れが前記第１の文字列と同一の第１の被写体に対応するのかを判定すること、
を備える画像処理方法。