(57)【要約】【課題】影により生じた任意方向の濃度勾配による文字認識への影響を抑制すること。【解決手段】二値化の対象となる画像Ｐ０を記憶する記憶部１１と、画像Ｐ０中の影領域ＲＳのうち文字を含まない第１の領域に設定された複数の第１の画素列Ｒ１１、Ｒ１２の輝度に基づいて影領域ＲＳの輝度勾配を計算し、当該輝度勾配を打ち消すように影領域ＲＳのうち文字を含む第２の領域ＲＣの輝度を補正し、補正後の第２の領域ＲＣの輝度分布に基づいて画像Ｐ０の二値化に用いる閾値Ｔｈを決定する演算部１２と、を有する、情報処理装置１０が提供される。【選択図】図１
2015166951.tif 000002
【特許請求の範囲】
【請求項１】
二値化の対象となる画像を記憶する記憶部と、
前記画像中の影領域のうち文字を含まない第１の領域に設定された複数の第１の画素列の輝度に基づいて前記影領域の輝度勾配を計算し、当該輝度勾配を打ち消すように前記影領域のうち文字を含む第２の領域の輝度を補正し、補正後の前記第２の領域の輝度分布に基づいて前記画像の二値化に用いる閾値を決定する演算部と、
を有する、情報処理装置。
【請求項２】
前記第２の領域内に設定された第２の画素列を挟み込むように２つの前記第１の画素列が設定されており、
前記演算部は、２つの前記第１の画素列のそれぞれと前記第２の画素列との間の距離に基づく重み値を用いて、一方の前記第１の画素列の輝度と他方の前記第１の画素列の輝度との重み付き平均を計算し、当該重み付き平均を用いて前記第２の領域の輝度を補正する
請求項１に記載の情報処理装置。
【請求項３】
第１の方向に沿って１つの前記第１の画素列が設定され、前記第１の方向と直交する第２の方向に沿って１つの前記第１の画素列が設定されており、
前記演算部は、前記第１の方向に沿って設定された前記第１の画素列に含まれる画素の輝度と前記第２の方向に沿って設定された前記第１の画素列に含まれる画素の輝度とに基づく補正値を用いて前記第２の領域の輝度を補正する
請求項１に記載の情報処理装置。
【請求項４】
第１の方向に沿って１つの前記第１の画素列が設定され、前記第１の方向と直交する第２の方向に沿って２つの前記第１の画素列が設定されており、
前記演算部は、前記第２の方向に沿って設定された２つの前記第１の画素列の間で計算される輝度差に基づいて前記第１の方向に関する前記影領域の輝度勾配が前記第２の方向に沿って変化する度合いを計算し、当該度合いと前記第１の画素列に含まれる画素の輝度とに基づく補正値を用いて前記第２の領域の輝度を補正する
請求項１に記載の情報処理装置。
【請求項５】
前記第２の領域内に設定された第２の画素列を挟み込むように第１の方向に沿って２つの前記第１の画素列が設定されており、前記第１の方向と直交する第２の方向に沿って１つの前記第１の画素列が設定されており、
前記演算部は、
前記第１の方向に沿って設定された短い方の前記第１の画素列の画素数と、前記第２の方向に沿って設定された前記第１の画素列の画素数とを比較し、
前記第１の方向に沿って設定された短い方の前記第１の画素列の画素数が、前記第２の方向に沿って設定された前記第１の画素列の画素数より大きい場合、前記第１の方向に沿って設定された２つの前記第１の画素列に基づいて前記第２の領域の輝度を補正し、
前記第１の方向に沿って設定された短い方の前記第１の画素列の画素数が、前記第２の方向に沿って設定された前記第１の画素列の画素数より小さい場合、前記第１の方向に沿って設定された前記第１の画素列の１つと、前記第２の方向に沿って設定された前記第１の画素列とに基づいて前記第２の領域の輝度を補正する
請求項１に記載の情報処理装置。
【請求項６】
二値化の対象となる画像を記憶する記憶部から前記画像を取得可能なコンピュータが、
前記画像中の影領域のうち文字を含まない第１の領域に設定された複数の第１の画素列の輝度に基づいて前記影領域の輝度勾配を計算し、当該輝度勾配を打ち消すように前記影領域のうち文字を含む第２の領域の輝度を補正し、補正後の前記第２の領域の輝度分布に基づいて前記画像の二値化に用いる閾値を決定する
二値化用閾値の決定方法。
【請求項７】
二値化の対象となる画像を記憶する記憶部から前記画像を取得可能なコンピュータに、
前記画像中の影領域のうち文字を含まない第１の領域に設定された複数の第１の画素列の輝度に基づいて前記影領域の輝度勾配を計算し、当該輝度勾配を打ち消すように前記影領域のうち文字を含む第２の領域の輝度を補正し、補正後の前記第２の領域の輝度分布に基づいて前記画像の二値化に用いる閾値を決定する
処理を実行させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、二値化用閾値の決定方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、様々な場面で入力画像から文字を自動認識する文字認識技術が利用されている。例えば、車両のナンバープレートから車番を読み取る車番認識システムや、カメラで撮像したランドマークの画像から文字を認識し、認識した文字に応じて情報を提供する情報提供システムなどに文字認識技術が利用されている。文字認識の方法としては、例えば、認識対象として設定した文字を表す辞書画像と入力画像とを画素単位で比較して類似度を計算し、最も類似度が高い辞書画像を認識結果とする方法がある。
【０００３】
辞書画像と入力画像とを比較する際、入力画像から文字を含む領域が切り出され、切り出された領域を二値化した二値化画像が辞書画像との比較に利用される。二値化画像の生成には、輝度の高い背景部と輝度の低い文字部とを判定する閾値が用いられる。つまり、閾値より輝度の高い画素を白に変換し、閾値より輝度の低い画素を黒に変換することで二値化画像が生成される。なお、背景部の輝度が文字部の輝度よりも低い場合には白と黒とを反転した二値化画像が生成される。
【０００４】
背景部と文字部との明暗差が画像内で一定の場合、二値化に用いる閾値を最大輝度と最小輝度との中間に設定すれば、上記の方法により背景部と文字部とが正しく分離した二値化画像が得られる。一方、影の影響で生じた濃度勾配が文字に重なっている場合、最大輝度と最小輝度との中間に閾値を設定すると、背景部と文字部とを正しく分離した二値化画像が得られない可能性がある。このような事情に鑑み、垂直方向の濃度勾配を考慮した閾値を用いて画像を二値化する技術が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平８−６３５４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記の技術は、文字を含まない領域内で垂直方向に配置された画素列（以下、垂直ライン）の各画素値をオフセットに設定し、文字を含む領域内で水平方向に配置された画素列（以下、水平ライン）の各画素値とオフセットとの差を利用して閾値を決定している。この技術によれば、垂直ライン上の輝度勾配を考慮した閾値が決定される。しかし、影による濃度勾配が任意の方向に拡がりを持つ場合、上記の技術を適用しても文字部と背景部とを正しく分離した二値化画像が得られず、文字認識に失敗する可能性がある。
【０００７】
そこで、１つの側面によれば、本発明の目的は、影により生じた任意方向の濃度勾配による文字認識への影響を抑制することが可能な情報処理装置、二値化用閾値の決定方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００８】
本開示の１つの側面によれば、二値化の対象となる画像を記憶する記憶部と、画像中の影領域のうち文字を含まない第１の領域に設定された複数の第１の画素列の輝度に基づいて影領域の輝度勾配を計算し、当該輝度勾配を打ち消すように影領域のうち文字を含む第２の領域の輝度を補正し、補正後の第２の領域の輝度分布に基づいて画像の二値化に用いる閾値を決定する演算部と、を有する、情報処理装置が提供される。
【０００９】
また、本開示の他の１つの側面によれば、二値化の対象となる画像を記憶する記憶部から画像を取得可能なコンピュータが、画像中の影領域のうち文字を含まない第１の領域に設定された複数の第１の画素列の輝度に基づいて影領域の輝度勾配を計算し、当該輝度勾配を打ち消すように影領域のうち文字を含む第２の領域の輝度を補正し、補正後の第２の領域の輝度分布に基づいて画像の二値化に用いる閾値を決定する二値化用閾値の決定方法が提供される。
【００１０】
また、本開示の他の１つの側面によれば、二値化の対象となる画像を記憶する記憶部から画像を取得可能なコンピュータに、画像中の影領域のうち文字を含まない第１の領域に設定された複数の第１の画素列の輝度に基づいて影領域の輝度勾配を計算し、当該輝度勾配を打ち消すように影領域のうち文字を含む第２の領域の輝度を補正し、補正後の第２の領域の輝度分布に基づいて画像の二値化に用いる閾値を決定する処理を実行させる、プログラムが提供される。
【発明の効果】
【００１１】
以上説明したように本発明によれば、影により生じた任意方向の濃度勾配による文字認識への影響を抑制することが可能になる。
【図面の簡単な説明】
【００１２】
【図１】第１実施形態に係る情報処理装置の一例を示した図である。
【図２】第２実施形態に係る車番認識システムの一例を示した図である。
【図３】ナンバープレートの文字認識について説明するための第１の図である。
【図４】ナンバープレートの文字認識について説明するための第２の図である。
【図５】影による文字認識への影響について説明するための図である。
【図６】第２実施形態に係る輝度勾配の打ち消しについて説明するための第１の図である。
【図７】第２実施形態に係る輝度勾配の打ち消しについて説明するための第２の図である。
【図８】第２実施形態に係る輝度勾配の打ち消しについて説明するための第３の図である。
【図９】第２実施形態に係る画像処理装置が有する機能を実現可能なハードウェアの一例を示した図である。
【図１０】第２実施形態に係る画像処理装置が有する機能の一例を示したブロック図である。
【図１１】第２実施形態に係る座標データベースの一例を示した図である。
【図１２】第２実施形態に係る辞書データベースの一例を示した図である。
【図１３】第２実施形態に係るクロージング処理／影領域の特定について説明するための図である。
【図１４】第２実施形態に係るオフセットの計算＃１について説明するための図である。
【図１５】第２実施形態に係るオフセットの計算＃２について説明するための図である。
【図１６】第２実施形態に係るオフセットの計算＃３について説明するための図である。
【図１７】第２実施形態に係るオフセットの計算＃４について説明するための図である。
【図１８】第２実施形態に係る閾値の決定について説明するための図である。
【図１９】第２実施形態に係る文字認識に関する全体的な処理について説明するためのフロー図である。
【図２０】第２実施形態に係るオフセットの計算＃１に関する処理について説明するためのフロー図である。
【図２１】第２実施形態に係るオフセットの計算＃２に関する処理について説明するためのフロー図である。
【図２２】第２実施形態に係るオフセットの計算＃３に関する処理について説明するためのフロー図である。
【図２３】第２実施形態に係るオフセットの計算＃４に関する処理について説明するための第１のフロー図である。
【図２４】第２実施形態に係るオフセットの計算＃４に関する処理について説明するための第２のフロー図である。
【図２５】第２実施形態に係るオフセットの計算＃４に関する処理について説明するための第３のフロー図である。
【発明を実施するための形態】
【００１３】
以下に添付図面を参照しながら、本発明の実施形態について説明する。なお、本明細書及び図面において実質的に同一の機能を有する要素については、同一の符号を付することにより重複説明を省略する場合がある。
【００１４】
＜１．第１実施形態＞
図１を参照しながら、第１実施形態について説明する。図１は、第１実施形態に係る情報処理装置の一例を示した図である。なお、図１に例示した情報処理装置１０は、第１実施形態に係る情報処理装置の一例である。
【００１５】
図１に示すように、情報処理装置１０は、記憶部１１、及び演算部１２を有する。
記憶部１１は、ＲＡＭ（Random Access Memory）などの揮発性記憶装置、或いは、ＨＤＤ（Hard Disk Drive）やフラッシュメモリなどの不揮発性記憶装置である。また、演算部１２は、ＣＰＵ（Central Processing Unit）やＤＳＰ（Digital Signal Processor）などのプロセッサである。但し、演算部１２は、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field Programmable Gate Array）などの電子回路であってもよい。演算部１２は、例えば、記憶部１１又は他のメモリに記憶されたプログラムを実行する。
【００１６】
記憶部１１は、二値化の対象となる画像Ｐ０を記憶する。画像Ｐ０は、文字を含む被写体ＴＧの撮像画像である。なお、画像Ｐ０のうち、文字を含まない領域を第１の領域、文字を含む領域を第２の領域ＲＣと呼ぶことにする。つまり、第１の領域は、画像Ｐ０のうち第２の領域ＲＣ以外の領域である。なお、第２の領域ＲＣは、予め画像Ｐ０内に位置が設定されているか、或いは、文字の位置などから検出可能である。また、文字の位置は、エッジ検出の結果などに基づいて推定することができる。
【００１７】
演算部１２は、画像Ｐ０中の影領域ＲＳのうち文字を含まない第１の領域に設定された複数の第１の画素列Ｒ１１、Ｒ１２の輝度に基づいて影領域ＲＳの輝度勾配を計算する。影領域ＲＳは、被写体ＴＧを撮像する際に生じた影の影響により濃度が増大した領域である。影領域ＲＳは、例えば、クロージング処理などを用いて検出することができる。
【００１８】
クロージング処理とは、画像Ｐ０をｍ×ｍ画素のブロックに分け、ブロック内の最大輝度でブロック内の全画素の輝度を置き換える膨張処理と、ブロック内の最小輝度でブロック内の全画素の輝度を置き換える収縮処理とを繰り返し実行する処理である。但し、ｍは２以上の数である。クロージング処理により文字の線は消え、ある程度の大きさを持つ濃度の高い連続した領域だけが得られる。クロージング処理により得られた濃度の高い領域のエッジを検出することで、影領域ＲＳを特定することができる。
【００１９】
第１の画素列Ｒ１１、Ｒ１２は、第１の領域のうち、上記の影領域ＲＳに含まれる画素列である。図１の例（（Ａ）を参照）では、第１の画素列Ｒ１１が第２の領域ＲＣの上側に設定され、第１の画素列Ｒ１２が第２の領域ＲＣの下側に設定されている。また、第１の画素列Ｒ１１、Ｒ１２は、第１の領域と第２の領域ＲＣとの境界に接する位置に配置されている。なお、以下では簡単のために図１の例に沿って説明を進めるが、第１の画素列Ｒ１１、Ｒ１２の設定方法はこの例に限定されない。
【００２０】
演算部１２は、例えば、図１の（Ｂ）に示すように、第１の画素列Ｒ１１、Ｒ１２の各画素が有する輝度を利用して影領域ＲＳの輝度勾配を計算する。例えば、演算部１２は、第２の領域ＲＣと影領域ＲＳとが重なる領域内の画素列（以下、第２の画素列Ｒ２ｎ）に注目し、第２の画素列Ｒ２ｎの位置における影領域ＲＳの輝度勾配を計算する。影領域ＲＳの輝度勾配は、影の影響により生じた濃度勾配であり、被写体ＴＧに文字を含まないと仮定した場合に得られる輝度勾配である。
【００２１】
第２の画素列Ｒ２ｎの位置における影領域ＲＳの輝度勾配は、図１の（Ｂ）に示すように、第１の画素列Ｒ１１、Ｒ１２のそれぞれと第２の画素列Ｒ２ｎとの距離ｄ１、ｄ２に基づいて第１の画素列Ｒ１１、Ｒ１２の画素が有する輝度から計算される。例えば、第１の画素列Ｒ１１、Ｒ１２上の画素Ｐｘ１、Ｐｘ２がそれぞれ有する輝度を距離ｄ１、ｄ２に基づいて按分した値を第２の画素列Ｒ２ｎの位置における輝度の推定値とする。つまり、推定値の集合が第２の画素列Ｒ２ｎにおける影領域ＲＳの輝度勾配となる。
【００２２】
図１の（Ｂ）に示すように、第２の画素列Ｒ２ｎの位置における影領域ＲＳの輝度勾配を示す輝度の分布はグラフＧＳ（Ｒ２ｎ）により表現される。一方、第２の画素列Ｒ２ｎの位置における輝度の分布は、図１の（Ａ）に示すように、グラフＧ（Ｒ２ｎ）により表現される。影領域ＲＳの輝度勾配があるため、ある輝度を閾値に設定してグラフＧ（Ｒ２ｎ）に基づく輝度の閾値判定を行うと、文字部が背景部の輝度と判定されたり、背景部が文字部の輝度と判定されたりする可能性がある。
【００２３】
そこで、演算部１２は、計算した影領域ＲＳの輝度勾配を打ち消すように影領域ＲＳのうち文字を含む第２の領域ＲＣの輝度を補正する。つまり、演算部１２は、図１の（Ａ）に示したグラフＧ（Ｒ２ｎ）から図１の（Ｂ）に示したグラフＧＳ（Ｒ２ｎ）を減算する処理に相当する補正処理を実行する。この補正処理を実行すると、第２の画素列Ｒ２ｎの位置における輝度の分布は、図１の（Ｃ）に示したグラフＧＭ（Ｒ２ｎ）のように補正される。演算部１２は、影領域ＲＳが重なる第２の領域ＲＣ内の各画素列（Ｒ２１、…、Ｒ２Ｎ）について上記の補正を実行する。
【００２４】
そして、演算部１２は、補正後の第２の領域ＲＣの輝度分布に基づいて画像Ｐ０の二値化に用いる閾値Ｔｈを決定する。上記の補正により影領域ＲＳの輝度勾配が抑制されているため、補正後の第２の領域ＲＣの輝度分布を示すヒストグラムは、図１の（Ｄ）に示すように、文字部と背景部とが分離されたものとなる。そのため、演算部１２は、文字部の山と背景部の山との間に位置する輝度を閾値Ｔｈに決定する。例えば、文字部のピークと背景部のピークとの中間に位置する輝度が閾値Ｔｈに決定される。
【００２５】
上記のように、文字を含まない第１の領域の画素列から影領域ＲＳの輝度勾配を推定し、その推定値を利用して第２の領域ＲＣの輝度を補正することで、影の濃度勾配による影響を抑制することができる。上記の方法では、第１の領域に含まれる複数の画素列を用いて影領域ＲＳの輝度勾配を推定しているため、影の濃度勾配の方向によらず、その影響を抑制することができる。
【００２６】
影の濃度勾配による影響が抑制されることで文字部と背景部とを分離する好適な閾値を決定することが可能になる。さらに、決定した閾値に基づく閾値判定により、影領域ＲＳの輝度勾配を抑制した画像Ｐ０から二値化画像を生成することで、正しく文字部の形状を表した二値化画像が得られる。その結果、文字認識の精度向上に寄与する。
【００２７】
以上、第１実施形態について説明した。
＜２．第２実施形態＞
次に、第２実施形態について説明する。
【００２８】
［２−１．システム］
以下、第２実施形態に係る技術を適用可能なシステムの例について説明する。
（車番認識システムについて）
図２を参照しながら、第２実施形態に係る技術を適用可能なシステムの一例として、車番認識システムについて説明する。なお、図２は、第２実施形態に係る車番認識システムの一例を示した図である。
【００２９】
図２に示すように、車番認識システムは、被写体５１を撮影する撮像装置５２、及び撮像装置５２が撮影した画像の処理を実行する画像処理装置１００を含む。撮像装置５２は、例えば、自動車やバイクなどの被写体５１に設置されたナンバープレートを含む領域ＮＲを撮影する。領域ＮＲの画像（以下、入力画像）は、画像処理装置１００に入力される。画像処理装置１００は、入力画像からナンバープレートに含まれる文字、数字、記号など（以下、単に文字と称する。）を認識する。
【００３０】
文字認識の精度は、画像に含まれる文字の鮮明度に依存する。例えば、図２に示すように、被写体５１の一部ＬＲ（例えば、バイクのテールランプなど）の影が領域ＮＲにかかる場合、入力画像に含まれる文字が影の影響で不鮮明になる。また、光を透過する部材の影は、入力画像に濃度勾配を発生させる。影に起因する濃度勾配の方向は、光源と領域ＮＲとの位置関係や影を作る部材の材質及び形状などにより変化する。画像処理装置１００は、このような影の影響を抑制して文字認識の精度を向上させる。
【００３１】
（ナンバープレートの文字認識について）
ここで、図３及び図４を参照しながら、ナンバープレートの文字認識について説明する。なお、図３は、ナンバープレートの文字認識について説明するための第１の図である。また、図４は、ナンバープレートの文字認識について説明するための第２の図である。
【００３２】
文字認識の処理は、例えば、図３に示すような処理の流れに沿って実行される。図３に示すように、車番認識システムでは、画像が入力されると（Ｓ１１）、入力された画像（入力画像）から、ナンバープレートに含まれる文字の配置を示すフォーマットが決定される（Ｓ１２）。
【００３３】
例えば、ナンバープレートには、図４に示すように、市区町村コード（Ｒ１、Ｒ７）、用途コード（Ｒ２）、一連番号（Ｒ３、Ｒ４、Ｒ５、Ｒ６）、自賠責ステッカーなどが配置されている。また、領域Ｒ１、Ｒ２、…、Ｒ７の配置は、車種毎に設定されたフォーマットにより予め決められている。そのため、入力画像から文字又はネジ部の存在位置を検出し、検出した存在位置の組み合わせからフォーマットを決定することができる。例えば、入力画像のエッジ検出を行い、エッジが存在する位置の組み合わせからフォーマットを決定することができる。
【００３４】
Ｓ１２でフォーマットが決定された後、文字を含む領域（以下、文字領域）が切り出され（Ｓ１３）、切り出された文字領域の画像が二値化される（Ｓ１４）。画像の二値化とは、設定された閾値を用いて画素毎に輝度の閾値判定を行い、その判定結果に応じて画素値を二値（黒又は白）のいずれかに設定して二値化画像を生成する処理である。二値化に用いる閾値は、例えば、入力画像の輝度分布を示すヒストグラムを用いて設定される。
【００３５】
影がない場合、図４に示すように、領域Ｒ１、Ｒ２、…、Ｒ７に含まれる文字部の濃度と、背景部の濃度との違いがはっきりと区別できる。そのため、入力画像の輝度分布をヒストグラムで表現すると、ヒストグラムにおける文字部の山と背景部の山とが明確に分離される。そのため、文字部の山と背景部の山とを分ける輝度をはっきりと特定することができる。この場合、特定した輝度を閾値として画像の二値化を行えば、文字部の形状がくっきりと浮き出た二値化画像が得られる。
【００３６】
Ｓ１４で画像が二値化された後、二値化画像を用いて認識処理が実行され（Ｓ１５）、認識結果が出力される（Ｓ１６）。認識処理は、認識対象の文字を表した複数の辞書画像と二値化画像とを照合して、最も類似度の高い辞書画像を特定し、特定した辞書画像の文字を認識結果とする処理である。Ｓ１６の処理が完了すると、図３に示した一連の処理は終了する。図４に例示したケースのように影がない場合、図３に示した処理の流れに沿って正しい文字が認識される。
【００３７】
（影による文字認識への影響について）
ここで、図５を参照しながら、影による文字認識への影響について説明する。なお、図５は、影による文字認識への影響について説明するための図である。
【００３８】
被写体５１の一部ＬＲにより影が生じた場合、図５に示すように、影の影響による濃淡を含む領域（影領域ＲＳ）が入力画像に現れる。影領域ＲＳが文字部に重なると、入力画像のヒストグラムには、図５に示すように、文字部、背景部の他、文字部に重ならない影領域ＲＳの部分（影部）、及び文字部と影領域ＲＳとが重なる部分（影部＋文字部）に相当する山が現れる。
【００３９】
上記のように、４つの山が混在したヒストグラムから二値化に用いる好適な閾値を決定することは容易でない。そこで、画像処理装置１００は、文字領域と影領域ＲＳとが重なる領域に注目し、影領域ＲＳの影響を考慮した閾値を決定する。つまり、画像処理装置１００は、文字領域と影領域ＲＳとが重なる領域に対し、「影部＋文字部」の山と「影部」の山とを分ける閾値を適用する。この閾値を用いれば、影領域ＲＳが重なる文字領域において文字の形状がくっきりと浮き出た二値化画像が得られる。
【００４０】
但し、影の濃度勾配により影領域ＲＳに輝度勾配が生じている場合には、文字領域と影領域ＲＳとが重なる領域に注目しても好適な閾値が得られない可能性がある。そこで、第２実施形態に係る画像処理装置１００は、文字領域と影領域ＲＳとが重なる領域について、影の濃度勾配に起因する影領域ＲＳの輝度勾配を打ち消して好適な閾値を決定する。なお、以下では「打ち消す」という表現を用いるが、完全に輝度勾配の影響が除去される場合だけでなく、輝度勾配の影響が低減される場合を意味することもある。つまり、当該表現には、輝度勾配の一部又は全部が相殺される場合を含む。
【００４１】
（輝度勾配の打ち消しについて）
ここで、図６〜図８を参照しながら、第２実施形態に係る輝度勾配の打ち消しについて説明する。なお、図６は、第２実施形態に係る輝度勾配の打ち消しについて説明するための第１の図である。また、図７は、第２実施形態に係る輝度勾配の打ち消しについて説明するための第２の図である。また、図８は、第２実施形態に係る輝度勾配の打ち消しについて説明するための第３の図である。
【００４２】
影の濃度が一定の場合、文字領域と影領域ＲＳとが重なっている領域内の画素列Ｘ１ｎは、図６に示した輝度グラフＧ１ｎのような輝度分布を有する。輝度グラフＧ１ｎの中で符号ｃ１、ｃ２、ｃ３、ｃ４を付した部分は、文字が影領域ＲＳに重なっている分だけ他の部分に比べて輝度が低下している。この例では影領域ＲＳの輝度及び文字部の輝度が一定であるため、符号ｃ１、ｃ２、ｃ３、ｃ４を付した部分の輝度と、他の部分の輝度とがはっきりと分かれている。そのため、ある輝度に設定された閾値を利用することで文字部と背景部とを明確に区別することができる。
【００４３】
一方、影に濃度勾配がある場合、文字領域と影領域ＲＳとが重なっている領域内の画素列Ｘ１ｎは、図７に示した輝度グラフＧ１ｎのような輝度分布を有する。輝度グラフＧ１ｎの中で符号ｃ１、ｃ２、ｃ３、ｃ４を付した部分は、文字が影領域ＲＳに重なっている分だけ他の部分に比べて輝度が低下している。しかし、影領域ＲＳに輝度勾配が存在するため、文字部及び背景部の輝度が一定せず、ある輝度に設定された閾値を利用して文字部と背景部とを区別しようとしても、正しく文字部と背景部とを判定されない場合がある。
【００４４】
図７の例では、文字部である符号ｃ１、ｃ４を付した部分が背景部と判定される。また、符号ｃ１、ｃ４を付した部分が文字部と判定されるように閾値を変更すると、背景部の一部が文字部と判定される。そこで、画像処理装置１００は、図８に示すように、文字領域外に設定した画素列Ｘ２１、Ｘ２２を利用して文字領域内の画素列Ｘ１ｎの背景輝度を推定し、推定した背景輝度の勾配を打ち消すように画素列Ｘ１ｎの輝度を変換する。なお、背景輝度は、文字を含まない影領域ＲＳの輝度である。
【００４５】
上記の変換は、画素列Ｘ１ｎの輝度グラフＧ１ｎから、推定した背景輝度のグラフ（背景輝度グラフＧＳ）を差し引く処理に相当する。この変換により、画素列Ｘ１ｎの輝度グラフＧ１ｎは、図６に例示した輝度グラフＧ１ｎと同様の形状に補正される。その結果、ある輝度に設定された閾値を用いて文字部と背景部とを正しく分離することが可能になる。なお、画素列Ｘ１ｎの背景輝度を推定する際に用いる画素列Ｘ２１、Ｘ２２の設定は図８の例に限定されない。また、背景輝度の推定に関する処理や、変換に関する処理の内容については後段において説明する。
【００４６】
（その他のシステムについて）
ところで、第２実施形態に係る技術は、上記の車番認識システムの他、例えば、ランドマーク認識システムやＯＣＲ（Optical Character Recognition）システムなど、画像から文字を認識する様々なシステムに適用することができる。
【００４７】
ランドマーク認識システムは、街中や観光地にある看板などをスマートフォンのカメラ機能などで撮像し、撮像画像から認識した文字列に基づいて地域や施設などのランドマークに関する情報を提供するシステムである。第２実施形態に係る技術をランドマーク認識システムに適用すると、看板などの文字が影にかかっているような状況においても文字認識がより精度良く行われるため、正しい情報を提供できる可能性が高まる。
【００４８】
ＯＣＲシステムは、スキャナなどの光学機器で読み取った文字列の画像から個々の文字を認識してテキストデータに変換するシステムである。第２実施形態に係る技術をＯＣＲシステムに適用すると、本などの原稿を読み取る際にスキャナのガラス面と紙面との間に隙間が生じて文字に影がかかる場合や、ガラス面の汚れが影となって濃度勾配が生じる場合でも文字認識を精度良く行うことができるようになる。
【００４９】
以上、第２実施形態に係る技術を適用可能なシステムの例について説明した。以下では、上記の車番認識システムを例に説明を進めるが、第２実施形態に係る技術の適用範囲はこれに限定されない。画像から文字認識を行う任意のシステムに対して第２実施形態に係る技術を適用することが可能である。
【００５０】
［２−２．ハードウェア］
次に、図９を参照しながら、画像処理装置１００が有する機能を実現可能なハードウェアについて説明する。なお、図９は、第２実施形態に係る画像処理装置が有する機能を実現可能なハードウェアの一例を示した図である。
【００５１】
画像処理装置１００が有する機能は、例えば、図９に示すハードウェア資源を用いて実現することが可能である。つまり、画像処理装置１００が有する機能は、コンピュータプログラムを用いて図９に示すハードウェアを制御することにより実現可能である。
【００５２】
図９に示すように、このハードウェアは、主に、ＣＰＵ９０２と、ＲＯＭ（Read Only Memory）９０４と、ＲＡＭ９０６と、ホストバス９０８と、ブリッジ９１０とを有する。さらに、このハードウェアは、外部バス９１２と、インターフェース９１４と、入力部９１６と、出力部９１８と、記憶部９２０と、ドライブ９２２と、接続ポート９２４と、通信部９２６とを有する。
【００５３】
ＣＰＵ９０２は、例えば、演算処理装置又は制御装置として機能し、ＲＯＭ９０４、ＲＡＭ９０６、記憶部９２０、又はリムーバブル記録媒体９２８に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。ＲＯＭ９０４は、ＣＰＵ９０２に読み込まれるプログラムや演算に用いるデータなどを格納する記憶装置の一例である。ＲＡＭ９０６には、例えば、ＣＰＵ９０２に読み込まれるプログラムや、そのプログラムを実行する際に変化する各種パラメータなどが一時的又は永続的に格納される。
【００５４】
これらの要素は、例えば、高速なデータ伝送が可能なホストバス９０８を介して相互に接続される。一方、ホストバス９０８は、例えば、ブリッジ９１０を介して比較的データ伝送速度が低速な外部バス９１２に接続される。また、入力部９１６としては、例えば、マウス、キーボード、タッチパネル、タッチパッド、ボタン、スイッチ、及びレバーなどが用いられる。さらに、入力部９１６としては、赤外線やその他の電波を利用して制御信号を送信することが可能なリモートコントローラが用いられることもある。
【００５５】
出力部９１８としては、例えば、ＣＲＴ（Cathode Ray Tube）、ＬＣＤ（Liquid Crystal Display）、ＰＤＰ（Plasma Display Panel）、又はＥＬＤ（Electro-Luminescence Display）などのディスプレイ装置が用いられる。また、出力部９１８として、スピーカやヘッドホンなどのオーディオ出力装置、又はプリンタなどが用いられることもある。つまり、出力部９１８は、情報を視覚的又は聴覚的に出力することが可能な装置である。
【００５６】
記憶部９２０は、各種のデータを格納するための装置である。記憶部９２０としては、例えば、ＨＤＤなどの磁気記憶デバイスが用いられる。また、記憶部９２０として、ＳＳＤ（Solid State Drive）やＲＡＭディスクなどの半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイスなどが用いられてもよい。
【００５７】
ドライブ９２２は、着脱可能な記録媒体であるリムーバブル記録媒体９２８に記録された情報を読み出し、又はリムーバブル記録媒体９２８に情報を書き込む装置である。リムーバブル記録媒体９２８としては、例えば、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどが用いられる。
【００５８】
接続ポート９２４は、例えば、ＵＳＢ（Universal Serial Bus）ポート、ＩＥＥＥ１３９４ポート、ＳＣＳＩ（Small Computer System Interface）、ＲＳ−２３２Ｃポート、又は光オーディオ端子など、外部接続機器９３０を接続するためのポートである。外部接続機器９３０としては、例えば、プリンタなどが用いられる。
【００５９】
通信部９２６は、ネットワーク９３２に接続するための通信デバイスである。通信部９２６としては、例えば、有線又は無線ＬＡＮ（Local Area Network）用の通信回路、ＷＵＳＢ（Wireless USB）用の通信回路、光通信用の通信回路やルータ、ＡＤＳＬ（Asymmetric Digital Subscriber Line）用の通信回路やルータ、携帯電話ネットワーク用の通信回路などが用いられる。通信部９２６に接続されるネットワーク９３２は、有線又は無線により接続されたネットワークであり、例えば、インターネット、ＬＡＮ、放送網、衛星通信回線などを含む。
【００６０】
以上、画像処理装置１００が有する機能を実現可能なハードウェアについて説明した。
［２−３．画像処理装置の機能］
次に、画像処理装置１００の機能について説明する。
【００６１】
（機能ブロック）
まず、図１０〜図１２を参照しながら、画像処理装置１００の機能について説明する。なお、図１０は、第２実施形態に係る画像処理装置が有する機能の一例を示したブロック図である。また、図１１は、第２実施形態に係る座標データベースの一例を示した図である。また、図１２は、第２実施形態に係る辞書データベースの一例を示した図である。
【００６２】
図１０に示すように、画像処理装置１００は、記憶部１０１、画像取得部１０２、フォーマット決定部１０３、クロージング処理部１０４、及び影領域特定部１０５を有する。さらに、画像処理装置１００は、二値化処理部１０６、及び認識処理部１０７を有する。
【００６３】
なお、画像取得部１０２、フォーマット決定部１０３、クロージング処理部１０４、影領域特定部１０５、二値化処理部１０６、及び認識処理部１０７の機能は、上述したＣＰＵ９０２などを用いて実現できる。また、記憶部１０１の機能は、上述したＲＡＭ９０６や記憶部９２０などを用いて実現できる。
【００６４】
記憶部１０１は、座標データベース１０１ａ、及び辞書データベース１０１ｂを有する。座標データベース１０１ａは、フォーマットに関する情報（以下、フォーマット情報）を含む。例えば、座標データベース１０１ａは、図１１に示すように、領域の種類を示す情報と座標の情報とを対応付けるフォーマット情報を含む。
【００６５】
領域の種類には、例えば、ナンバープレートの全体（プレート全体）、文字領域、文字領域以外の領域、及び背景領域が含まれる。また、文字領域以外の領域に含まれるネジ部や自賠責ステッカーなども領域の種類に含まれる。また、図１１の例では、文字領域に含まれる市区町村コード＃１、市区町村コード＃２、一連番号１桁目、一連番号２桁目、一連番号３桁目、一連番号４桁目、用途コードなどが領域の種類として設定されている。
【００６６】
座標の情報は、領域を矩形で規定した場合に左上に位置する座標と右下に位置する座標とで表現されている。例えば、プレート全体を規定する矩形の左上が原点（０，０）に定められ、右下が（３４４，２００）に定められている。また、市区町村コード＃１の領域は、左上が（７３，１９）に定められ、右下が（２７１，５７）に定められている。他の領域についても同様に座標の情報が定められている。なお、図１１に例示したフォーマット情報は一例であり、車種などに応じて異なるフォーマット情報が用意され、座標データベース１０１ａに格納されている。
【００６７】
辞書データベース１０１ｂは、文字の認識処理に利用する辞書画像を管理するデータベースである。例えば、図１２に示すように、辞書データベース１０１ｂには、文字毎に文字コードと辞書画像とが対応付けて格納される。辞書画像は、文字を表した画像であり、認識処理の中で二値化画像と照合される画像である。
【００６８】
再び図１０を参照する。画像取得部１０２は、撮像装置５２から画像を取得する。画像取得部１０２により取得された画像は、フォーマット決定部１０３、クロージング処理部１０４、及び二値化処理部１０６に入力される。
【００６９】
フォーマット決定部１０３は、記憶部１０１が有する座標データベース１０１ａを参照し、入力された画像に対応するフォーマットを決定する。例えば、フォーマット決定部１０３は、入力された画像のエッジ検出を実行し、エッジの位置から文字の存在位置を推定する。さらに、フォーマット決定部１０３は、推定した文字の存在位置の組み合わせや配置関係に適合するフォーマットを決定する。フォーマット決定部１０３により決定されたフォーマットのフォーマット情報は、二値化処理部１０６に入力される。
【００７０】
クロージング処理部１０４は、入力された画像にクロージング処理を施す。クロージング処理部１０４によりクロージング処理が施された画像は、影領域特定部１０５に入力される。影領域特定部１０５は、クロージング処理が施された画像から影領域を特定する。影領域特定部１０５により特定された影領域の情報は二値化処理部１０６に入力される。なお、クロージング処理及び影領域の特定については後述する。
【００７１】
上記のように、二値化処理部１０６には、画像、フォーマット情報、及び影領域の情報が入力される。二値化処理部１０６は、フォーマット情報及び影領域の情報に基づき、入力された画像を二値化して二値化画像を生成する。二値化処理部１０６により生成された二値化画像は、認識処理部１０７に入力される。認識処理部１０７は、記憶部１０１が有する辞書データベース１０１ｂを参照し、入力された二値化画像に最も類似する辞書画像を特定する。そして、認識処理部１０７は、特定した辞書画像に対応する文字を認識結果として出力する。
【００７２】
ここで、二値化処理部１０６の機能について、さらに説明する。
二値化処理部１０６は、輝度変換部１６１、閾値決定部１６２、及び二値化画像生成部１６３を含む。
【００７３】
輝度変換部１６１は、フォーマット情報及び影領域の情報に基づいて、文字領域と影領域とが重なる領域（以下、対象領域）を特定する。また、輝度変換部１６１は、特定した対象領域における影領域の輝度勾配を推定する。そして、輝度変換部１６１は、推定した影領域の輝度勾配が打ち消されるように対象領域に含まれる各画素の輝度を変換する。なお、変換の方法については後述する。輝度変換部１６１により画素の輝度が変換された画像は、閾値決定部１６２及び二値化画像生成部１６３に入力される。
【００７４】
閾値決定部１６２は、入力された画像の輝度分布から輝度のヒストグラムを生成する。このとき、閾値決定部１６２は、対象領域のヒストグラムと、対象領域を除く文字領域のヒストグラムとを生成する。そして、閾値決定部１６２は、対象領域のヒストグラムから文字部と背景部とを分離する対象領域用の閾値を決定する。また、閾値決定部１６２は、対象領域を除く文字領域のヒストグラムから、その領域用に文字部と背景部とを分離する閾値を決定する。閾値決定部１６２により決定された閾値の情報は、二値化画像生成部１６３に入力される。
【００７５】
二値化画像生成部１６３は、閾値決定部１６２から入力された閾値と、輝度変換部１６１から入力された画像の輝度とを比較し、輝度が閾値より大きい画素の画素値を第１の値に設定し、輝度が閾値より小さい画素の画素値を第２の値に設定する。つまり、二値化画像生成部１６３は、閾値判定により、輝度変換部１６１により入力された画像から第１及び第２の値の画素値で表現された二値化画像を生成する。二値化画像生成部１６３により生成された二値化画像は、認識処理部１０７に入力される。
【００７６】
（クロージング処理／影領域の特定）
ここで、図１３を参照しながら、第２実施形態に係るクロージング処理／影領域の特定について説明する。なお、図１３は、第２実施形態に係るクロージング処理／影領域の特定について説明するための図である。ここで説明するクロージング処理は、主にクロージング処理部１０４により実行される。また、影領域の特定に関する処理は、主に影領域特定部１０５により実行される。
【００７７】
クロージング処理とは、画像をｍ×ｍ画素のブロックに分け、ブロック内の最大輝度でブロック内の全画素の輝度を置き換える膨張処理と、ブロック内の最小輝度でブロック内の全画素の輝度を置き換える収縮処理とを繰り返し実行する処理である。但し、ｍは２以上の数である。図１３に示すように、クロージング処理を実行すると、文字などの細い線は元画像から消え、ある程度の大きさを有する濃度の高い連続した領域（ドメイン）だけが残る。
【００７８】
図１３の例では１回の膨張処理及び収縮処理により文字部が消えているが、ｍの設定によっては１回の膨張処理及び収縮処理で文字部が消えない場合がある。このような場合には、文字部が消えるまで膨張処理と収縮処理とが交互に複数回繰り返し実行される。クロージング処理により文字部が消えた後、影領域特定部１０５によりエッジ検出が行われ、エッジで囲まれた領域が影領域として特定される。
【００７９】
以上、クロージング処理／影領域の特定について説明した。
（輝度の変換）
次に、対象領域の各画素が有する画素値から影領域の輝度勾配を打ち消す処理（上述した輝度の変換に相当する処理）について、さらに説明する。輝度勾配を打ち消す処理は、対象領域の画素がある位置で輝度勾配により生じている輝度の変化を推定し、推定した変化を補正する補正量（以下、オフセット）を計算して当該画素の輝度から減算する処理である。
【００８０】
第２実施形態では、輝度勾配の方向が不定であっても輝度勾配を打ち消すことが可能なオフセットの計算方法を提案する。以下、４通りの計算例を示すが、第２実施形態の技術的範囲はこれらの例に限定されない。また、影領域と文字領域との重なり方に応じて４通りの計算例に係る計算方法を使い分けてもよい。このように以下で説明するオフセットの計算例を組み合わせる方法についても当然に第２実施形態の技術的範囲に属する。
【００８１】
（オフセットの計算＃１：２本の水平ラインを利用する方法）
まず、図１４を参照しながら、第２実施形態に係るオフセットの計算＃１について説明する。なお、図１４は、第２実施形態に係るオフセットの計算＃１について説明するための図である。ここで説明するオフセットの計算＃１に関する処理は、主に二値化処理部１０６に含まれる輝度変換部１６１により実行される。
【００８２】
文字領域ＲＣと影領域ＲＳとが重なった領域に設定される対象領域ＲＴに注目する。対象領域ＲＴは、文字領域ＲＣと影領域ＲＳとが重なった領域を四辺形（図１４の例では台形）で近似した領域である。オフセットの計算＃１は、対象領域ＲＴの上下に位置する２つの参照画素列Ｘ１１、Ｘ１２を用いてオフセットを計算する方法に関する。なお、説明の都合上、図面の上方向を「上」、下方向を「下」と表現する。
【００８３】
参照画素列Ｘ１１、Ｘ１２は、影領域ＲＳのうち文字領域ＲＣ以外の領域に設定される。図１４の例では、参照画素列Ｘ１１が文字領域ＲＣの上側境界（対象領域ＲＴの上底）に接する位置に設定され、参照画素列Ｘ１２が文字領域ＲＣの下側境界（対象領域ＲＴの下底）に接する位置に設定されている。また、参照画素列Ｘ１１の長さは対象領域ＲＴの上底と同じ長さに設定され、参照画素列Ｘ１２の長さは対象領域ＲＴの下底と同じ長さに設定されている。
【００８４】
また、参照画素列Ｘ１１に含まれる画素の輝度をａ1，…，ａk、参照画素列Ｘ１２に含まれる画素の輝度をｃ1，…，ｃmと表現する。ここで、対象領域ＲＴに含まれる１つの画素列（以下、対象画素列）に注目する。また、対象画素列の位置におけるオフセットをｂ1，…，ｂlと表現する。また、参照画素列Ｘ１１と対象画素列との間の距離をｄabと表現し、参照画素列Ｘ１２と対象画素列との間の距離をｄbcと表現する。
【００８５】
図１４に示すように、輝度変換部１６１は、参照画素列Ｘ１１に含まれる画素の輝度ａ1，…，ａkに基づき、参照画素列Ｘ１１を対象画素列と同じ長さに調整した場合の各画素が有する輝度ａx1，…，ａxlを計算する。例えば、輝度変換部１６１は、下記の式（１）に基づいて輝度ａx1，…，ａxlを計算する。但し、ｊ＝１，２，…，ｌ、及びｋ＞ｌである。なお、ｋ＝ｌの場合、輝度変換部１６１はａxj＝ａjとする。
【００８６】
【数１】
2015166951.tif 000003
【００８７】
また、輝度変換部１６１は、参照画素列Ｘ１２に含まれる画素の輝度ｃ1，…，ｃmに基づき、参照画素列Ｘ１２を対象画素列と同じ長さに調整した場合の各画素が有する輝度ｃx1，…，ｃxlを計算する。例えば、輝度変換部１６１は、下記の式（２）に基づいて輝度ｃx1，…，ｃxlを計算する。但し、ｊ＝１，２，…，ｌ、及びｍ＜ｌである。なお、ｍ＝ｌの場合、輝度変換部１６１はｃxj＝ｃjとする。
【００８８】
【数２】
2015166951.tif 000004
【００８９】
輝度ａx1，…，ａxl及びｃx1，…，ｃxlを計算した輝度変換部１６１は、距離ｄab、ｄbcの比に基づいて輝度ａx1，…，ａxl及びｃx1，…，ｃxlの重み付け平均を計算する。そして、輝度変換部１６１は、計算した平均を対象画素列の位置におけるオフセットｂ1，…，ｂlとする。例えば、輝度変換部１６１は、下記の式（３）に基づいてオフセットｂ1，…，ｂlを計算する。但し、ｊ＝１，２，…，ｌである。
【００９０】
【数３】
2015166951.tif 000005
【００９１】
同様にして、輝度変換部１６１は、対象領域ＲＴに含まれる他の対象画素列を選択し、選択した対象画素列の位置におけるオフセットを計算する。計算したオフセットの集合は、対象領域ＲＴにおける影領域ＲＳの輝度勾配を表す。そのため、元画像の対象領域ＲＴに含まれる画素の画素値からオフセットを減算することにより、対象領域ＲＴに含まれる影領域ＲＳの輝度勾配を打ち消すことができる。
【００９２】
（オフセットの計算＃２：水平・垂直ラインを利用する方法）
次に、図１５を参照しながら、第２実施形態に係るオフセットの計算＃２について説明する。なお、図１５は、第２実施形態に係るオフセットの計算＃２について説明するための図である。ここで説明するオフセットの計算＃２に関する処理は、主に二値化処理部１０６に含まれる輝度変換部１６１により実行される。
【００９３】
文字領域ＲＣと影領域ＲＳとが重なった領域に設定される対象領域ＲＴに注目する。対象領域ＲＴは、文字領域ＲＣと影領域ＲＳとが重なった領域を四辺形（図１５の例では台形）で近似した領域である。オフセットの計算＃２は、対象領域ＲＴの上側に位置する参照画素列Ｘ１１及び対象領域ＲＴの右側に位置する参照画素列Ｘ１３を用いてオフセットを計算する方法に関する。なお、説明の都合上、図面の上方向を「上」、下方向を「下」、右方向を「右」、左方向を「左」と表現する。
【００９４】
参照画素列Ｘ１１、Ｘ１３は、影領域ＲＳのうち文字領域ＲＣ以外の領域に設定される。図１５の例では、参照画素列Ｘ１１が文字領域ＲＣの上側境界（対象領域ＲＴの上底）に接する位置に設定されている。また、参照画素列Ｘ１１の長さは対象領域ＲＴの上底と同じ長さに設定されている。
【００９５】
一方、参照画素列Ｘ１３は参照画素列Ｘ１１と直交する方向に沿って配置されている。図１５の例では、参照画素列Ｘ１３が対象領域ＲＴ（及び文字領域ＲＣ）の右側面に沿って配置されている。また、参照画素列Ｘ１３の長さは対象領域ＲＴの高さと同じに設定されている。また、参照画素列Ｘ１１に含まれる画素の輝度をａ1，…，ａk、参照画素列Ｘ１３に含まれる画素の輝度をｑ1，…，ｑsと表現する。
【００９６】
ここで、対象領域ＲＴに含まれる１つの画素列（以下、対象画素列）に注目する。また、対象画素列の位置におけるオフセットをｂ1，…，ｂlと表現する。図１５に示すように、輝度変換部１６１は、参照画素列Ｘ１１に含まれる画素の輝度ａ1，…，ａkに基づき、参照画素列Ｘ１１を対象画素列と同じ長さに調整した場合の各画素が有する輝度ａx1，…，ａxlを計算する。輝度ａx1，…，ａxlの計算方法は、オフセットの計算＃１の場合と同じである。
【００９７】
輝度変換部１６１は、対象画素列に対応する参照画素列Ｘ１３の画素を特定する。図１５の例では、対象画素列と同じ高さにある画素が特定される。特定された画素の輝度がｑjである場合、輝度変換部１６１は、輝度ｑj及び輝度ａx1，…，ａxlに基づいてオフセットｂ1，…，ｂlを計算する。例えば、輝度変換部１６１は、輝度ｑjと輝度ａx1，…，ａxlそれぞれとの積を計算し、下記の式（４）に示すように、計算した積を輝度ｑ1で割った値をオフセットｂ1，…，ｂlとする。但し、ｊ＝１，２，…，ｌである。
【００９８】
【数４】
2015166951.tif 000006
【００９９】
同様にして、輝度変換部１６１は、対象領域ＲＴに含まれる他の対象画素列を選択し、選択した対象画素列の位置におけるオフセットを計算する。計算したオフセットの集合は、対象領域ＲＴにおける影領域ＲＳの輝度勾配を表す。そのため、元画像の対象領域ＲＴに含まれる画素の画素値からオフセットを減算することにより、対象領域ＲＴに含まれる影領域ＲＳの輝度勾配を打ち消すことができる。
【０１００】
（オフセットの計算＃３：２本の垂直ラインを利用する方法）
次に、図１６を参照しながら、第２実施形態に係るオフセットの計算＃３について説明する。なお、図１６は、第２実施形態に係るオフセットの計算＃３について説明するための図である。ここで説明するオフセットの計算＃３に関する処理は、主に二値化処理部１０６に含まれる輝度変換部１６１により実行される。
【０１０１】
文字領域ＲＣと影領域ＲＳとが重なった領域に設定される対象領域ＲＴに注目する。対象領域ＲＴは、文字領域ＲＣと影領域ＲＳとが重なった領域を四辺形（図１６の例では台形）で近似した領域である。オフセットの計算＃３は、対象領域ＲＴの上側に位置する参照画素列Ｘ１１、及び対象領域ＲＴの右側に位置する２つの参照画素列Ｘ１４、Ｘ１５を用いてオフセットを計算する方法に関する。なお、説明の都合上、図面の上方向を「上」、下方向を「下」、右方向を「右」、左方向を「左」と表現する。
【０１０２】
参照画素列Ｘ１１、Ｘ１４、Ｘ１５は、影領域ＲＳのうち文字領域ＲＣ以外の領域に設定される。図１６の例では、参照画素列Ｘ１１が文字領域ＲＣの上側境界（対象領域ＲＴの上底）に接する位置に設定されている。また、参照画素列Ｘ１１の長さは対象領域ＲＴの上底と同じ長さに設定されている。
【０１０３】
一方、参照画素列Ｘ１４、Ｘ１５は参照画素列Ｘ１１と直交する方向に沿って配置されている。図１６の例では、参照画素列Ｘ１４が対象領域ＲＴ（及び文字領域ＲＣ）の右側面に沿って配置され、さらに右側に参照画素列Ｘ１５が配置されている。また、参照画素列Ｘ１４、Ｘ１５の長さは対象領域ＲＴの高さと同じに設定されている。また、参照画素列Ｘ１１に含まれる画素の輝度をａ1，…，ａk、参照画素列Ｘ１４に含まれる画素の輝度をｅ1，…，ｅt、参照画素列Ｘ１５に含まれる画素の輝度をｆ1，…，ｆtと表現する。
【０１０４】
ここで、対象領域ＲＴに含まれる１つの画素列（以下、対象画素列）に注目する。また、対象画素列の位置におけるオフセットをｂ1，…，ｂlと表現する。図１６に示すように、輝度変換部１６１は、参照画素列Ｘ１１に含まれる画素の輝度ａ1，…，ａkに基づき、参照画素列Ｘ１１を対象画素列と同じ長さに調整した場合の各画素が有する輝度ａx1，…，ａxlを計算する。輝度ａx1，…，ａxlの計算方法は、オフセットの計算＃１の場合と同じである。
【０１０５】
輝度変換部１６１は、参照画素列Ｘ１４、Ｘ１５を用いて輝度勾配の上下方向における変化量を計算する。輝度変換部１６１は、参照画素列Ｘ１１に対応する位置にある参照画素列Ｘ１４、Ｘ１５の画素を特定し、特定した画素の輝度ａe、ａfを参照する。また、輝度変換部１６１は、対応画素列に対応する位置にある参照画素列Ｘ１４、Ｘ１５の画素を特定し、特定した画素の輝度ｅb、ｆbを参照する。
【０１０６】
そして、輝度変換部１６１は、下記の式（５）に基づいて輝度勾配の上下方向における変化量Ｇを計算する。参照画素列Ｘ１１に対応する位置における輝度勾配は、参照画素列Ｘ１４、Ｘ１５間の距離をΔとして「（ａe−ａf）／Δ」と表現できる。一方、対象画素列に対応する位置における輝度勾配は、参照画素列Ｘ１４、Ｘ１５間の距離をΔとして「（ｅb−ｆb）／Δ」と表現できる。変化量Ｇは、これらの輝度勾配の比に相当する。
【０１０７】
【数５】
2015166951.tif 000007
【０１０８】
また、輝度変換部１６１は、対象画素列のうち輝度を変換する画素と、参照画素列Ｘ１５との間の距離に基づき、輝度ａx1，…，ａxl及び変化量Ｇからオフセットｂ1，…，ｂlを計算する。例えば、輝度変換部１６１は、下記の式（６）に基づいてオフセットｂ1，…，ｂlを計算する。但し、ｊ＝１，２，…，ｌである。
【０１０９】
ｂj＝ａxj＋（ａj−ａf）・Ｇ
…（６）
同様にして、輝度変換部１６１は、対象領域ＲＴに含まれる他の対象画素列を選択し、選択した対象画素列の位置におけるオフセットを計算する。計算したオフセットの集合は、対象領域ＲＴにおける影領域ＲＳの輝度勾配を表す。そのため、元画像の対象領域ＲＴに含まれる画素の画素値からオフセットを減算することにより、対象領域ＲＴに含まれる影領域ＲＳの輝度勾配を打ち消すことができる。
【０１１０】
（オフセットの計算＃４：オフセット値を選択する方法）
次に、図１７を参照しながら、第２実施形態に係るオフセットの計算＃４について説明する。図１７は、第２実施形態に係るオフセットの計算＃４について説明するための図である。ここで説明するオフセットの計算＃４に関する処理は、主に二値化処理部１０６に含まれる輝度変換部１６１により実行される。
【０１１１】
文字領域ＲＣと影領域ＲＳとが重なった領域に設定される対象領域ＲＴに注目する。対象領域ＲＴは、文字領域ＲＣと影領域ＲＳとが重なった領域を四辺形（図１７の例では台形）で近似した領域である。オフセットの計算＃４は、対象領域ＲＴの上下に位置する２つの参照画素列Ｘ１１、Ｘ１２、対象領域ＲＴの右側に位置する参照画素列Ｘ１３を用いてオフセットを計算する方法に関する。なお、説明の都合上、図面の上方向を「上」、下方向を「下」、右方向を「右」、左方向を「左」と表現する。
【０１１２】
参照画素列Ｘ１１、Ｘ１２、Ｘ１３は、影領域ＲＳのうち文字領域ＲＣ以外の領域に設定される。図１７の例では、参照画素列Ｘ１１が文字領域ＲＣの上側境界（対象領域ＲＴの上底）に接する位置に設定され、参照画素列Ｘ１２が文字領域ＲＣの下側境界（対象領域ＲＴの下底）に接する位置に設定されている。また、参照画素列Ｘ１１の長さは対象領域ＲＴの上底と同じ長さに設定され、参照画素列Ｘ１２の長さは対象領域ＲＴの下底と同じ長さに設定されている。
【０１１３】
一方、参照画素列Ｘ１３は参照画素列Ｘ１１と直交する方向に沿って配置されている。図１７の例では、参照画素列Ｘ１３が対象領域ＲＴ（及び文字領域ＲＣ）の右側面に沿って配置されている。また、参照画素列Ｘ１３の長さは対象領域ＲＴの高さと同じに設定されている。また、参照画素列Ｘ１１に含まれる画素の輝度をａ1，…，ａk、参照画素列Ｘ１２に含まれる画素の輝度をｃ1，…，ｃm、参照画素列Ｘ１３に含まれる画素の輝度をｑ1，…，ｑsと表現する。
【０１１４】
ここで、対象領域ＲＴに含まれる１つの画素列（以下、対象画素列）に注目する。また、対象画素列の位置におけるオフセットをｂ1，…，ｂlと表現する。図１７に示すように、輝度変換部１６１は、参照画素列Ｘ１１に含まれる画素の輝度ａ1，…，ａkに基づき、参照画素列Ｘ１１を対象画素列と同じ長さに調整した場合の各画素が有する輝度ａx1，…，ａxlを計算する。輝度ａx1，…，ａxlの計算方法は、オフセットの計算＃１の場合と同じである。
【０１１５】
輝度変換部１６１は、参照画素列Ｘ１２の画素数｜Ｘ１２｜と、参照画素列Ｘ１３の画素数｜Ｘ１３｜とを比較する。｜Ｘ１２｜＜｜Ｘ１３｜である場合、輝度変換部１６１は、オフセットの計算＃２と同じ方法でオフセットｂ1，…，ｂlを計算する。一方、｜Ｘ１２｜＞｜Ｘ１３｜である場合、輝度変換部１６１は、オフセットの計算＃１と同じ方法でオフセットｂ1，…，ｂlを計算する。なお、｜Ｘ１２｜＝｜Ｘ１３｜である場合、輝度変換部１６１は、予め設定されたオフセットの計算＃１、＃２のいずれかの方法でオフセットｂ1，…，ｂlを計算する。
【０１１６】
同様にして、輝度変換部１６１は、対象領域ＲＴに含まれる他の対象画素列を選択し、選択した対象画素列の位置におけるオフセットを計算する。計算したオフセットの集合は、対象領域ＲＴにおける影領域ＲＳの輝度勾配を表す。そのため、元画像の対象領域ＲＴに含まれる画素の画素値からオフセットを減算することにより、対象領域ＲＴに含まれる影領域ＲＳの輝度勾配を打ち消すことができる。
【０１１７】
（閾値の決定）
次に、図１８を参照しながら、第２実施形態に係る閾値の決定について説明する。なお、図１８は、第２実施形態に係る閾値の決定について説明するための図である。ここで説明する閾値の決定に関する処理は、主に二値化処理部１０６に含まれる閾値決定部１６２により実行される。
【０１１８】
図１８に示すように、閾値決定部１６２は、元画像からオフセットを減算した変換後の画像について、輝度分布を示すヒストグラムを生成する。オフセットの減算により元画像に含まれていた影領域ＲＳの輝度勾配は抑制され、文字部の山と背景部の山とが分離したヒストグラムが得られる。閾値決定部１６２は、文字部と背景部とを分離する輝度を特定し、特定した輝度を閾値に設定する。図１８の例では、元画像の対象領域について閾値を計算する方法が示されているが、対象領域以外の文字領域についても閾値が計算される。これらの閾値を利用することで、文字部がくっきりと浮き出た二値化画像を生成することができる。
【０１１９】
（変形例）
これまでは説明の都合上、画面の上下左右を基準に参照画素列を対象領域ＲＴの上側、下側、右側に配置する例を前提に説明を進めてきたが、参照画素列は画面の上下左右を基準に配置されていなくてもよい。また、矩形の文字領域を意識して説明を進めてきたが、文字領域の形状は矩形に限定されない。また、背景部の輝度が高く、文字部及び影部の輝度が低いことを前提に説明してきたが、背景部の輝度が低く、文字部及び影部の輝度が高い場合にも濃度の高低を逆にして考えれば上記の技術を同様に適用可能である。このような変形についても当然に第２実施形態の技術的範囲に属する。
【０１２０】
以上、画像処理装置１００の機能について説明した。
［２−４．処理の流れ］
次に、画像処理装置１００が実行する処理のうち、文字認識に関する処理の流れについて説明する。
【０１２１】
（文字認識に関する全体的な処理について）
まず、図１９を参照しながら、文字認識に関する全体的な処理の流れについて説明する。なお、図１９は、第２実施形態に係る文字認識に関する全体的な処理について説明するためのフロー図である。
【０１２２】
図１９に示すように、画像処理装置１００は、画像取得部１０２の機能により、文字認識の対象となる画像を取得する（Ｓ１０１）。次いで、画像処理装置１００は、フォーマット決定部１０３の機能により、取得した画像に適合するフォーマットを決定する（Ｓ１０２）。次いで、画像処理装置１００は、クロージング処理部１０４の機能により、Ｓ１０１で取得した画像にクロージング処理を施す（Ｓ１０３）。次いで、画像処理装置１００は、影領域特定部１０５の機能により、Ｓ１０３でクロージング処理を施した画像から影領域を特定する（Ｓ１０４）。
【０１２３】
次いで、画像処理装置１００は、Ｓ１０４の処理で影領域が特定されたか否かを判定する（Ｓ１０５）。影領域が特定された場合、処理はＳ１０６へと進む。一方、影領域が特定されなかった場合、処理はＳ１０７へと進む。
【０１２４】
処理がＳ１０６へと進んだ場合、画像処理装置１００は、二値化処理部１０６の機能により、影領域と文字領域とが重なる対象領域のオフセットを計算する（Ｓ１０６）。Ｓ１０６の処理で、画像処理装置１００は、二値化処理部１０６の機能により、計算したオフセットを用いて画像に含まれる影領域の輝度勾配を抑制する。つまり、画像処理装置１００は、二値化処理部１０６の機能により、対象領域に含まれる画素の輝度からオフセットを減算する。Ｓ１０６の処理が完了すると、処理はＳ１０７へと進む。
【０１２５】
処理がＳ１０７へと進んだ場合、画像処理装置１００は、二値化処理部１０６の機能により閾値を決定し、決定した閾値を用いて二値化画像を生成する（Ｓ１０７）。次いで、画像処理装置１００は、認識処理部１０７の機能により、辞書画像と二値化画像とを照合して認識処理を実行する（Ｓ１０８）。Ｓ１０８の処理で、画像処理装置１００は、認識処理部１０７の機能により、二値化画像と最も類似度が高い辞書画像を特定し、特定した辞書画像に対応する文字を認識結果として出力する。Ｓ１０８の処理が完了すると、図１９に示した一連の処理は終了する。
【０１２６】
（オフセットの計算＃１に関する処理について）
ここで、図２０を参照しながら、オフセットの計算＃１に関する処理の流れについて、さらに説明する。なお、図２０は、第２実施形態に係るオフセットの計算＃１に関する処理について説明するためのフロー図である。なお、図２０に示した処理は、主に二値化処理部１０６に含まれる輝度変換部１６１により実行される。また、図２０に示した一連の処理は、Ｓ１０６の処理におけるオフセットの計算に対応する。
【０１２７】
図２０に示すように、輝度変換部１６１は、文字領域のうち影が重なる部分を特定する（Ｓ１１１）。次いで、輝度変換部１６１は、特定した部分を台形近似して対象領域を設定する（Ｓ１１２）。次いで、輝度変換部１６１は、文字領域外に、対象領域を上下に挟む２つの参照画素列Ｘ１１、Ｘ１２を設定する（Ｓ１１３）。
【０１２８】
次いで、輝度変換部１６１は、対象領域から対象画素列を選択する（Ｓ１１４）。次いで、輝度変換部１６１は、参照画素列Ｘ１１、Ｘ１２をそれぞれ補正して対象画素列と同じ長さの補正画素列を生成する（Ｓ１１５）。ここで言う補正画素列は、例えば、図１４に例示した輝度ａx1，…，ａxlを有する画素列、及び輝度ｃx1，…，ｃxlを有する画素列に相当する。
【０１２９】
次いで、輝度変換部１６１は、２つの補正画素列に基づいて対象画素列の位置におけるオフセットを計算する（Ｓ１１６）。次いで、輝度変換部１６１は、対象画素列を全て選択したか否かを判定する（Ｓ１１７）。つまり、輝度変換部１６１は、対象領域内の画素を対象画素列として全て選択し終えたか否かを判定する。対象画素列を全て選択した場合、図２０に示した一連の処理は終了する。一方、選択していない対象画素列がある場合、処理はＳ１１４へと進む。
【０１３０】
（オフセットの計算＃２に関する処理について）
ここで、図２１を参照しながら、オフセットの計算＃２に関する処理の流れについて、さらに説明する。なお、図２１は、第２実施形態に係るオフセットの計算＃２に関する処理について説明するためのフロー図である。なお、図２１に示した処理は、主に二値化処理部１０６に含まれる輝度変換部１６１により実行される。また、図２１に示した一連の処理は、Ｓ１０６の処理におけるオフセットの計算に対応する。
【０１３１】
図２１に示すように、輝度変換部１６１は、文字領域のうち影が重なる部分を特定する（Ｓ１２１）。次いで、輝度変換部１６１は、特定した部分を台形近似して対象領域を設定する（Ｓ１２２）。次いで、輝度変換部１６１は、文字領域外に、対象領域の上又は下に位置する１つの参照画素列Ｘ１１を設定する（Ｓ１２３）。次いで、輝度変換部１６１は、文字領域外に、対象領域の右又は左に位置する１つの参照画素列Ｘ１３を設定する（Ｓ１２４）。
【０１３２】
次いで、輝度変換部１６１は、対象領域から対象画素列を選択する（Ｓ１２５）。次いで、輝度変換部１６１は、参照画素列Ｘ１１を補正して対象画素列と同じ長さの補正画素列を生成する（Ｓ１２６）。ここで言う補正画素列は、例えば、図１５に例示した輝度ａx1，…，ａxlを有する画素列に相当する。次いで、輝度変換部１６１は、参照画素列Ｘ１３及び補正画素列に基づいて対象画素列の位置におけるオフセットを計算する（Ｓ１２７）。
【０１３３】
次いで、輝度変換部１６１は、対象画素列を全て選択したか否かを判定する（Ｓ１２８）。つまり、輝度変換部１６１は、対象領域内の画素を対象画素列として全て選択し終えたか否かを判定する。対象画素列を全て選択した場合、図２１に示した一連の処理は終了する。一方、選択していない対象画素列がある場合、処理はＳ１２５へと進む。
【０１３４】
（オフセットの計算＃３に関する処理について）
ここで、図２２を参照しながら、オフセットの計算＃３に関する処理の流れについて、さらに説明する。なお、図２２は、第２実施形態に係るオフセットの計算＃３に関する処理について説明するためのフロー図である。なお、図２２に示した処理は、主に二値化処理部１０６に含まれる輝度変換部１６１により実行される。また、図２２に示した一連の処理は、Ｓ１０６の処理におけるオフセットの計算に対応する。
【０１３５】
図２２に示すように、輝度変換部１６１は、文字領域のうち影が重なる部分を特定する（Ｓ１３１）。次いで、輝度変換部１６１は、特定した部分を台形近似して対象領域を設定する（Ｓ１３２）。次いで、輝度変換部１６１は、文字領域外に、対象領域の上又は下に位置する１つの参照画素列Ｘ１１を設定する（Ｓ１３３）。次いで、輝度変換部１６１は、文字領域外に、参照画素列Ｘ１１と直交する２つの参照画素列Ｘ１４、Ｘ１５を設定する（Ｓ１３４）。
【０１３６】
次いで、輝度変換部１６１は、対象領域から対象画素列を選択する（Ｓ１３５）。次いで、輝度変換部１６１は、参照画素列Ｘ１１を補正して対象画素列と同じ長さの補正画素列を生成する（Ｓ１３６）。ここで言う補正画素列は、例えば、図１６に例示した輝度ａx1，…，ａxlを有する画素列に相当する。次いで、輝度変換部１６１は、参照画素列Ｘ１４、Ｘ１５の輝度差から輝度勾配の変化量を計算する（Ｓ１３７）。
【０１３７】
次いで、輝度変換部１６１は、輝度勾配の変化量及び補正画素列に基づいて対象画素列の位置におけるオフセットを計算する（Ｓ１３８）。次いで、輝度変換部１６１は、対象画素列を全て選択したか否かを判定する（Ｓ１３９）。つまり、輝度変換部１６１は、対象領域内の画素を対象画素列として全て選択し終えたか否かを判定する。対象画素列を全て選択した場合、図２２に示した一連の処理は終了する。一方、選択していない対象画素列がある場合、処理はＳ１３５へと進む。
【０１３８】
（オフセットの計算＃４に関する処理について）
ここで、図２３〜図２５を参照しながら、オフセットの計算＃４に関する処理の流れについて、さらに説明する。なお、図２３は、第２実施形態に係るオフセットの計算＃４に関する処理について説明するための第１のフロー図である。また、図２４は、第２実施形態に係るオフセットの計算＃４に関する処理について説明するための第２のフロー図である。
【０１３９】
図２５は、第２実施形態に係るオフセットの計算＃４に関する処理について説明するための第３のフロー図である。なお、図２３〜図２５に示した処理は、主に二値化処理部１０６に含まれる輝度変換部１６１により実行される。また、図２３〜図２５に示した一連の処理は、Ｓ１０６の処理におけるオフセットの計算に対応する。
【０１４０】
図２３に示すように、輝度変換部１６１は、文字領域のうち影が重なる部分を特定する（Ｓ１４１）。次いで、輝度変換部１６１は、特定した部分を台形近似して対象領域を設定する（Ｓ１４２）。次いで、輝度変換部１６１は、文字領域外に、対象領域を上下に挟む２つの参照画素列Ｘ１１、Ｘ１２を設定する（Ｓ１４３）。
【０１４１】
次いで、輝度変換部１６１は、文字領域外に、対象領域の右又は左に位置する１つの参照画素列Ｘ１３を設定する（Ｓ１４４）。次いで、輝度変換部１６１は、参照画素列Ｘ１１、Ｘ１２のうち短い方の長さＬ１を計算する（Ｓ１４５）。次いで、輝度変換部１６１は、参照画素列Ｘ１３の長さＬ２を計算する（Ｓ１４６）。次いで、輝度変換部１６１は、Ｌ１＞Ｌ２であるか否かを判定する（Ｓ１４７）。Ｌ１＞Ｌ２である場合、処理は図２４のＳ１４８へと進む。一方、Ｌ１＞Ｌ２でない場合、処理は図２５のＳ１５２へと進む。
【０１４２】
処理が図２４のＳ１４８へと進んだ場合、輝度変換部１６１は、対象領域から対象画素列を選択する（Ｓ１４８）。次いで、輝度変換部１６１は、参照画素列Ｘ１１、Ｘ１２をそれぞれ補正して対象画素列と同じ長さの補正画素列を生成する（Ｓ１４９）。ここで言う補正画素列は、例えば、図１４に例示した輝度ａx1，…，ａxlを有する画素列、及び輝度ｃx1，…，ｃxlを有する画素列に相当する。
【０１４３】
次いで、輝度変換部１６１は、２つの補正画素列に基づいて対象画素列の位置におけるオフセットを計算する（Ｓ１５０）。次いで、輝度変換部１６１は、対象画素列を全て選択したか否かを判定する（Ｓ１５１）。つまり、輝度変換部１６１は、対象領域内の画素を対象画素列として全て選択し終えたか否かを判定する。対象画素列を全て選択した場合、図２３〜図２５に示した一連の処理は終了する。一方、選択していない対象画素列がある場合、処理はＳ１４８へと進む。
【０１４４】
また、処理が図２５のＳ１５２へと進んだ場合、輝度変換部１６１は、対象領域から対象画素列を選択する（Ｓ１５２）。次いで、輝度変換部１６１は、参照画素列Ｘ１１を補正して対象画素列と同じ長さの補正画素列を生成する（Ｓ１５３）。ここで言う補正画素列は、例えば、図１５に例示した輝度ａx1，…，ａxlを有する画素列に相当する。次いで、輝度変換部１６１は、参照画素列Ｘ１３及び補正画素列に基づいて対象画素列の位置におけるオフセットを計算する（Ｓ１５４）。
【０１４５】
次いで、輝度変換部１６１は、対象画素列を全て選択したか否かを判定する（Ｓ１５５）。つまり、輝度変換部１６１は、対象領域内の画素を対象画素列として全て選択し終えたか否かを判定する。対象画素列を全て選択した場合、図２３〜図２５に示した一連の処理は終了する。一方、選択していない対象画素列がある場合、処理はＳ１５２へと進む。
【０１４６】
以上、文字認識に関する処理の流れについて説明した。
以上、第２実施形態について説明した。
＜３．付記＞
以上説明した実施形態に関し、さらに以下の付記を開示する。
【０１４７】
（付記１）  二値化の対象となる画像を記憶する記憶部と、
前記画像中の影領域のうち文字を含まない第１の領域に設定された複数の第１の画素列の輝度に基づいて前記影領域の輝度勾配を計算し、当該輝度勾配を打ち消すように前記影領域のうち文字を含む第２の領域の輝度を補正し、補正後の前記第２の領域の輝度分布に基づいて前記画像の二値化に用いる閾値を決定する演算部と、
を有する、情報処理装置。
【０１４８】
（付記２）  前記第２の領域内に設定された第２の画素列を挟み込むように２つの前記第１の画素列が設定されており、
前記演算部は、２つの前記第１の画素列のそれぞれと前記第２の画素列との間の距離に基づく重み値を用いて、一方の前記第１の画素列の輝度と他方の前記第１の画素列の輝度との重み付き平均を計算し、当該重み付き平均を用いて前記第２の領域の輝度を補正する
付記１に記載の情報処理装置。
【０１４９】
（付記３）  第１の方向に沿って１つの前記第１の画素列が設定され、前記第１の方向と直交する第２の方向に沿って１つの前記第１の画素列が設定されており、
前記演算部は、前記第１の方向に沿って設定された前記第１の画素列に含まれる画素の輝度と前記第２の方向に沿って設定された前記第１の画素列に含まれる画素の輝度とに基づく補正値を用いて前記第２の領域の輝度を補正する
付記１に記載の情報処理装置。
【０１５０】
（付記４）  第１の方向に沿って１つの前記第１の画素列が設定され、前記第１の方向と直交する第２の方向に沿って２つの前記第１の画素列が設定されており、
前記演算部は、前記第２の方向に沿って設定された２つの前記第１の画素列の間で計算される輝度差に基づいて前記第１の方向に関する前記影領域の輝度勾配が前記第２の方向に沿って変化する度合いを計算し、当該度合いと前記第１の画素列に含まれる画素の輝度とに基づく補正値を用いて前記第２の領域の輝度を補正する
付記１に記載の情報処理装置。
【０１５１】
（付記５）  前記第２の領域内に設定された第２の画素列を挟み込むように第１の方向に沿って２つの前記第１の画素列が設定されており、前記第１の方向と直交する第２の方向に沿って１つの前記第１の画素列が設定されており、
前記演算部は、
前記第１の方向に沿って設定された短い方の前記第１の画素列の画素数と、前記第２の方向に沿って設定された前記第１の画素列の画素数とを比較し、
前記第１の方向に沿って設定された短い方の前記第１の画素列の画素数が、前記第２の方向に沿って設定された前記第１の画素列の画素数より大きい場合、前記第１の方向に沿って設定された２つの前記第１の画素列に基づいて前記第２の領域の輝度を補正し、
前記第１の方向に沿って設定された短い方の前記第１の画素列の画素数が、前記第２の方向に沿って設定された前記第１の画素列の画素数より小さい場合、前記第１の方向に沿って設定された前記第１の画素列の１つと、前記第２の方向に沿って設定された前記第１の画素列とに基づいて前記第２の領域の輝度を補正する
付記１に記載の情報処理装置。
【０１５２】
（付記６）  二値化の対象となる画像を記憶する記憶部から前記画像を取得可能なコンピュータが、
前記画像中の影領域のうち文字を含まない第１の領域に設定された複数の第１の画素列の輝度に基づいて前記影領域の輝度勾配を計算し、当該輝度勾配を打ち消すように前記影領域のうち文字を含む第２の領域の輝度を補正し、補正後の前記第２の領域の輝度分布に基づいて前記画像の二値化に用いる閾値を決定する
二値化用閾値の決定方法。
【０１５３】
（付記７）  二値化の対象となる画像を記憶する記憶部から前記画像を取得可能なコンピュータに、
前記画像中の影領域のうち文字を含まない第１の領域に設定された複数の第１の画素列の輝度に基づいて前記影領域の輝度勾配を計算し、当該輝度勾配を打ち消すように前記影領域のうち文字を含む第２の領域の輝度を補正し、補正後の前記第２の領域の輝度分布に基づいて前記画像の二値化に用いる閾値を決定する
処理を実行させる、プログラム。
【０１５４】
（付記８）  前記演算部は、
前記第１の方向に沿って設定された短い方の前記第１の画素列の画素数が、前記第２の方向に沿って設定された前記第１の画素列の画素数より大きい場合、
前記第１の方向に沿って設定された２つの前記第１の画素列のそれぞれと前記第２の画素列との間の距離に基づく重み値を用いて、一方の当該第１の画素列の輝度と他方の当該第１の画素列の輝度との重み付き平均を計算し、当該重み付き平均を用いて前記第２の領域の輝度を補正し、
前記第１の方向に沿って設定された短い方の前記第１の画素列の画素数が、前記第２の方向に沿って設定された前記第１の画素列の画素数より小さい場合、
前記第１の方向に沿って設定された一方の前記第１の画素列に含まれる画素の輝度と前記第２の方向に沿って設定された前記第１の画素列に含まれる画素の輝度とに基づく補正値を用いて前記第２の領域の輝度を補正する
付記５に記載の情報処理装置。
【０１５５】
（付記９）  前記演算部は、前記影領域を四辺形で近似する
付記１〜５、８のいずれかに記載の情報処理装置。
（付記１０）  前記演算部は、前記第２の領域に含まれる画素の輝度から前記輝度勾配を表す補正値を減算することで前記第２の領域の輝度を補正する
付記１〜５、８、９のいずれかに記載の情報処理装置。
【０１５６】
（付記１１）  前記記憶部は、文字認識に用いる文字画像を記憶し、
前記演算部は、前記閾値を利用した二値化処理により前記画像から二値化画像を生成し、当該二値化画像と前記文字画像とを照合して前記画像に含まれる文字を認識する
付記１〜５、８〜１０のいずれかに記載の情報処理装置。
【０１５７】
（付記１２）  前記第２の領域内に設定された第２の画素列を挟み込むように２つの前記第１の画素列が設定されており、
２つの前記第１の画素列のそれぞれと前記第２の画素列との間の距離に基づく重み値を用いて、一方の前記第１の画素列の輝度と他方の前記第１の画素列の輝度との重み付き平均が計算され、当該重み付き平均を用いて前記第２の領域の輝度が補正される
付記６に記載の二値化用閾値の決定方法。
【０１５８】
（付記１３）  第１の方向に沿って１つの前記第１の画素列が設定され、前記第１の方向と直交する第２の方向に沿って１つの前記第１の画素列が設定されており、
前記第１の方向に沿って設定された前記第１の画素列に含まれる画素の輝度と前記第２の方向に沿って設定された前記第１の画素列に含まれる画素の輝度とに基づく補正値を用いて前記第２の領域の輝度が補正される
付記６に記載の二値化用閾値の決定方法。
【０１５９】
（付記１４）  第１の方向に沿って１つの前記第１の画素列が設定され、前記第１の方向と直交する第２の方向に沿って２つの前記第１の画素列が設定されており、
前記第２の方向に沿って設定された２つの前記第１の画素列の間で計算される輝度差に基づいて前記第１の方向に関する前記影領域の輝度勾配が前記第２の方向に沿って変化する度合いが計算され、当該度合いと前記第１の画素列に含まれる画素の輝度とに基づく補正値を用いて前記第２の領域の輝度が補正される
付記６に記載の二値化用閾値の決定方法。
【０１６０】
（付記１５）  前記第２の領域内に設定された第２の画素列を挟み込むように第１の方向に沿って２つの前記第１の画素列が設定されており、前記第１の方向と直交する第２の方向に沿って１つの前記第１の画素列が設定されており、
前記第１の方向に沿って設定された短い方の前記第１の画素列の画素数と、前記第２の方向に沿って設定された前記第１の画素列の画素数とが比較され、
前記第１の方向に沿って設定された短い方の前記第１の画素列の画素数が、前記第２の方向に沿って設定された前記第１の画素列の画素数より大きい場合、前記第１の方向に沿って設定された２つの前記第１の画素列に基づいて前記第２の領域の輝度が補正され、
前記第１の方向に沿って設定された短い方の前記第１の画素列の画素数が、前記第２の方向に沿って設定された前記第１の画素列の画素数より小さい場合、前記第１の方向に沿って設定された前記第１の画素列の１つと、前記第２の方向に沿って設定された前記第１の画素列とに基づいて前記第２の領域の輝度が補正される
付記６に記載の二値化用閾値の決定方法。
【０１６１】
（付記１６）  二値化の対象となる画像を記憶する記憶部から前記画像を取得可能なコンピュータに、
前記画像中の影領域のうち文字を含まない第１の領域に設定された複数の第１の画素列の輝度に基づいて前記影領域の輝度勾配を計算し、当該輝度勾配を打ち消すように前記影領域のうち文字を含む第２の領域の輝度を補正し、補正後の前記第２の領域の輝度分布に基づいて前記画像の二値化に用いる閾値を決定する
処理を実行させるプログラムが格納された、コンピュータにより読み取り可能な記録媒体。
【符号の説明】
【０１６２】
１０  情報処理装置
１１  記憶部
１２  演算部
Ｐ０  画像
ＲＳ  影領域
Ｒ１１、Ｒ１２  第１の画素列
ＲＣ  第２の領域
Ｔｈ  閾値
Ｒ２ｎ  第２の画素列
ｄ１、ｄ２  距離
Ｇ、ＧＳ、ＧＭ  グラフ
ＴＧ  被写体
【図１】
2015166951.tif 000008
【図２】
2015166951.tif 000009
【図３】
2015166951.tif 000010
【図４】
2015166951.tif 000011
【図５】
2015166951.tif 000012
【図６】
2015166951.tif 000013
【図７】
2015166951.tif 000014
【図８】
2015166951.tif 000015
【図９】
2015166951.tif 000016
【図１０】
2015166951.tif 000017
【図１１】
2015166951.tif 000018
【図１２】
2015166951.tif 000019
【図１３】
2015166951.tif 000020
【図１４】
2015166951.tif 000021
【図１５】
2015166951.tif 000022
【図１６】
2015166951.tif 000023
【図１７】
2015166951.tif 000024
【図１８】
2015166951.tif 000025
【図１９】
2015166951.tif 000026
【図２０】
2015166951.tif 000027
【図２１】
2015166951.tif 000028
【図２２】
2015166951.tif 000029
【図２３】
2015166951.tif 000030
【図２４】
2015166951.tif 000031
【図２５】
2015166951.tif 000032