(57)【要約】【課題】処理装置の処理負荷を大きくすることなく、撮像画像に含まれる文字の領域を精度よく切り出す技術を提供することを目的とする。【解決手段】文字列を含む画像６１について、文字切り出し方向Ｂについて画素値を積算して画素値積算評価値を求める。文字列方向Ａの各画素位置について画素値積算評価値を求めて波形データ６２を生成する。次に、スキャン区間６２１を移動させつつ画素値積算評価値の区間最小値点６３を求める。続いて、区間最小値点６３が連続するブロックに注目し、ブロック最小値点６３１を求める。そして、ブロック最小値点６３１間を直線補間し、全域に亘って基底値６３２を求める。最後に、各画素位置の画素値積算評価値から基底値６３２を減算し、補正波形データ６２ｃを得る。補正波形データ６２ｃと閾値６４を比較し、閾値６４を超える領域を文字領域として抽出する。【選択図】図３
2008097590.tif 000002
【特許請求の範囲】
【請求項１】
画像に含まれる第１の方向に配列された複数の文字からなる文字列から各々の文字を切り出す文字切り出し装置であって、
前記画像の前記第１の方向の各座標位置において、前記第１の方向とは直交する第２の方向に沿って前記画像の各画素の画素値を積算するための積算手段と、
所定の幅を有する区間を、前記画像の前記第１の方向の全体に亘って互いに異なる複数の位置に設定する設定手段と、
前記設定手段で設定した各区間内で、前記積算手段で積算した画素値が最小となる座標位置を第１の点として抽出する第１抽出手段と、
前記第１抽出手段により抽出された第１の点が前記第１の方向に沿って連続する集合ごとに、前記積算手段で積算した画素値の最小となる座標位置を第２の点として抽出する第２抽出手段と、
前記画像の前記第１の方向の各座標位置において、前記第２抽出手段により抽出された第２の点における前記積算手段で積算した画素値の補間から基底値を算出する補間手段と、
前記画像の前記第１の方向の各座標位置において、前記積算手段で積算した画素値から前記基底値を減算することで、補正値を生成する補正手段と、
前記補正値が所定の閾値を超える領域を文字領域として認識する認識手段と、
を備えることを特徴とする文字切り出し装置。
【請求項２】
請求項１に記載の文字切り出し装置において、
前記区間の幅は、切り出す文字の文字幅と略同一の幅で設定されることを特徴とする文
字切り出し装置。
【請求項３】
請求項１に記載の文字切り出し装置において、
前記区間の幅は、切り出す文字の文字幅の１１０％から１２０％の範囲の幅で設定され
ることを特徴とする文字切り出し装置。
【請求項４】
請求項１に記載の文字切り出し装置において、
前記区間の幅は、予め定められた文字列の高さと、予め設定された文字の縦横比に基づいて設定されることを特徴とする文字切り出し装置。
【請求項５】
請求項１ないし請求項４のいずれかに記載の文字切り出し装置において、さらに、
複数の文字からなる文字列を表示するための文字列表示部と、前記認識手段により認識された各文字を矩形のウィンドウを用いて囲む文字領域表示手段と、前記画像の前記第１の方向全体に沿った複数の座標位置の各々における前記積算手段により積算した画素値により形成される波形を表示する波形表示部とを有する表示手段を備え、
前記表示手段は、該表示手段上で文字と波形の相互位置関係を示すために、前記文字列表示部に表示される複数の文字を表示すると共に、前記各々の文字に対応する位置に前記波形の対応する部分が配置されるように波形を表示することを特徴とする文字切り出し装置。
【請求項６】
請求項１ないし請求項４のいずれかに記載の文字切り出し装置において、さらに、
前記区間の幅をユーザ操作に応じて変更する変更手段と、
前記変更手段における変更操作に応答して、前記補正手段で補正された補正値の波形をモニタに表示させる手段と、
を備えることを特徴とする文字切り出し装置。
【請求項７】
請求項１ないし請求項４のいずれかに記載の文字切り出し装置において、さらに、
前記区間の幅をユーザ操作に応じて変更する変更手段と、
前記変更手段における変更操作に応答して、前記補間手段で算出された基底値の波形をモニタに表示させる手段と、
を備えることを特徴とする文字切り出し装置。
【請求項８】
請求項１ないし請求項４のいずれかに記載の文字切り出し装置において、さらに、
複数の文字からなる文字列を表示するための文字列表示部と、前記認識手段により認識された各文字を矩形のウィンドウを用いて囲む文字領域表示手段と、前記画像の前記第１の方向全体に沿った複数の座標位置の各々における前記積算手段により積算した画素値により形成される波形と前記波形に重ねた前記閾値を表示する波形表示部とを有する表示手段を備え、
前記表示手段は、該表示手段上で文字と波形の相互位置関係を示すために、前記文字列表示部に表示される複数の文字を表示すると共に、前記各々の文字に対応する位置に前記波形の対応する部分が配置されるように波形を表示することを特徴とする文字切り出し装置。
【請求項９】
画像に含まれる第１の方向に配列された複数の文字からなる文字列から各々の文字を切り出す文字切り出し装置であって、
前記画像の前記第１の方向の各座標位置において、前記第１の方向とは直交する第２の方向に沿って前記画像の各画素の画素値を積算するための積算手段と、
前記画像の前記第１の方向の座標位置の中から、前記積算手段により積算された画素値が極小となる座標位置を極小点として抽出する第１抽出手段と、
前記第１抽出手段により抽出された各極小点において、前記第１の方向に沿って所定の幅を有し、当該極小点に対応して区間を設定する設定手段と、
前記設定手段で設定された各極小点に対応する各区間内において、当該極小点での前記積算手段により積算された画素値が最小となるときの当該極小点を区間最小点として抽出する抽出手段と、
前記画像の前記第１の方向の各座標位置において、当該座標位置の基底値を当該抽出手段により抽出された区間最小点での前記積算手段により積算された画素値を補間して求める補間手段と、
前記画像の前記第１の方向の各座標位置において、前記積算手段により積算された画素値を前記補間手段により求めた基底値を用いて補正する補正手段と、
前記画像の前記第１の方向の各座標位置において、前記補正手段により補正された前記積算手段により積算された画素値が所定の閾値を超えるかを判定し、前記補正手段により補正された前記積算手段により積算された画素値が所定の閾値を超えると判定された座標位置に対応する前記画像の領域を切り出すべき文字が存在する領域と認識する認識手段とを備えることを特徴とする文字を切り出し装置。
【請求項１０】
請求項９に記載の文字切り出し装置において、
前記文字切り出し装置は、さらに、
前記画像の前記第１の方向の各座標位置において、当該座標位置と当該座標位置の隣接する座標位置における前記積算手段により積算された画素値に基づいて、当該座標位置の前記積算手段により積算された画素値が異常を診断する診断手段を備え、
前記補間手段は、前記診断手段により当該座標位置の前記積算手段により積算された画素値が異常であると判断した時は、当該座標位置の前記積算手段により積算された画素値を補間に用いないことを特徴とする文字を切り出し装置。
【請求項１１】
画像に含まれる第１の方向に配列された複数の文字からなる文字列から各々の文字を切り出す文字切り出し方法であって、
前記画像の前記第１の方向の各座標位置において、前記第１の方向とは直交する第２の方向に沿って前記画像の各画素の画素値を積算するための積算工程と、
所定の幅を有する区間を、前記画像の前記第１の方向の全体に亘って互いに異なる複数の位置に設定する設定工程と、
前記設定工程で設定した各区間内で、前記積算工程で積算した画素値が最小となる座標位置を第１の点として抽出する第１抽出工程と、
前記第１抽出工程により抽出された第１の点が前記第１の方向に沿って連続する集合ごとに、前記積算工程で積算した画素値の最小となる座標位置を第２の点として抽出する第２抽出工程と、
前記画像の前記第１の方向の各座標位置において、前記第２抽出工程により抽出された第２の点における前記積算工程で積算した画素値の補間から基底値を算出する補間工程と、
前記画像の前記第１の方向の各座標位置において、前記積算工程で積算した画素値から前記基底値を減算することで、補正値を生成する補正工程と、
前記補正値が所定の閾値を超える領域を文字領域として認識する認識工程と、
を備えることを特徴とする文字切り出し装置。
【請求項１２】
画像に含まれる第１の方向に配列された複数の文字からなる文字列から各々の文字を切り出すプログラムであって、
コンピュータを、
前記画像の前記第１の方向の各座標位置において、前記第１の方向とは直交する第２の方向に沿って前記画像の各画素の画素値を積算するための積算手段と、
所定の幅を有する区間を、前記画像の前記第１の方向の全体に亘って互いに異なる複数の位置に設定する設定手段と、
前記設定手段で設定した各区間内で、前記積算手段で積算した画素値が最小となる座標位置を第１の点として抽出する第１抽出手段と、
前記第１抽出手段により抽出された第１の点が前記第１の方向に沿って連続する集合ごとに、前記積算手段で積算した画素値の最小となる座標位置を第２の点として抽出する第２抽出手段と、
前記画像の前記第１の方向の各座標位置において、前記第２抽出手段により抽出された第２の点における前記積算手段で積算した画素値の補間から基底値を算出する補間手段と、
前記画像の前記第１の方向の各座標位置において、前記積算手段で積算した画素値から前記基底値を減算することで、補正値を生成する補正手段と、
前記補正値が所定の閾値を超える領域を文字領域として認識する認識手段、
として機能させることを特徴とする文字切り出しプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮影画像から文字領域を切り出す技術に関する。
【背景技術】
【０００２】
商品や製品に印字された文字を撮像し、画像処理装置において文字認識処理を行うこと
で、印刷内容の確認工程を自動化させることができる。この文字認識処理を精度よく行う
ためには、その前工程としての文字の切り出し工程が重要である。
【０００３】
文字の切り出し工程は、撮像画像の中に含まれる文字の領域を決定する工程である。撮
像画像の中に、複数の文字からなる文字列が含まれている場合、この文字列の中から、各
文字の領域を決定する必要がある。
【０００４】
文字列を切り出す方法としては、画像の投影データを利用する方法がある。つまり、撮
像画像の画素値を切り出し方向について積算した波形データを作成し、この波形データを
分析するのである。そして、背景部分に比べて、文字部分の画素積算値が大きいことを利
用し（文字が黒色の場合は、白黒反転させることで、文字部分の画素積算値が大きくなる
ように扱えばよい。）、画素積算値が所定の閾値を超える領域を文字領域として認識する
のである。
【０００５】
【特許文献１】特許第２８７２７６８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
撮像装置により撮像される画像は、レンズの特性により、画像の周辺部分の光量が低下
するという特質がある。このため、撮像画像は、周辺部分が中央部分に比べて暗くなると
いう現象が起こる。あるいは、照明の周辺部分の光量が低下する影響により、明暗のむら
が生じる場合がある。
【０００７】
図７は、文字「Ｔ２５８７８９」が印字された媒体を撮像した画像９０と、その画像９
０から生成された波形データ９１を示す図である。波形データ９１は、画像９０の文字列
方向Ｘに関する各座標位置において、文字の切り出し方向Ｙについて画素値を積算したデ
ータである。説明を分かり易くするために、波形データ９１と文字「Ｔ２５８７８９」を
含む画像９０を、文字列方向Ｘに関して位置関係を合わせて表示している。この図から、
文字部分の画素積算値が背景部分の画素積算値に比べ大きくなっていることが分かる。つまり、文字の色が黒色であるので、白黒反転させた画素値を積算している。そして、この図の例においては、照明の影響により、画像の中央部分が暗くなっている様子を示している。そして、白黒反転させているので、波形データ９１は、全体的に、左右両端部分の積算値が小さくなっている。
【０００８】
このような状態で、たとえば、図に示すような位置に閾値９２を設定し、画素積算値が
閾値９２を超える領域を文字領域として決定すると、精度のよい文字の切り出しが行えな
い。たとえば、「Ｔ」という文字については、文字の中央部分（縦線部分）については、
画素積算値が大きいため、文字領域として認識される。しかし、この「Ｔ」という文字の左右部分（横線のみの部分）については、もともと画素積算値が小さい上に、この領域の光量が低下しているため、波形データ９１が閾値９２を下回り、文字領域として認識されないという現象が起こるのである。
【０００９】
このように、画像の周辺部分の画素積算値が小さいため、文字領域を誤認する可能性が
あり、この問題を解決するためには、一般には、シェーディング補正が行われる。つまり
、画像の中央部分と周辺部分に生じている輝度差を補正する処理を行うのである。しかし
、シェーディング補正を行うことにより、文字の切り出し処理の処理時間が長くなるため
、最善の策とは言えない。
【００１０】
また、文字間隔が狭い場合に、文字領域の認識が難しいという別の問題がある。図７で
示した例であれば、文字「８」と「９」の一部が重なり合うほど接近している。この場合
、文字「８」と「９」の境界領域についても、画素積算値が大きくなるため、図に示した
ような位置に閾値９２を設定すると、文字「８」と「９」の境界領域についても、波形デ
ータ９１が閾値９２を上回ることになり、文字「８９」を１つの文字領域として認識して
しまうことになる。
【００１１】
上記特許文献１は、画像中に探索始点と探索終点を設定し、この始点と終点を結ぶ経路
上で、通過する各画素の画素値を積算し、その積算値が最小となる経路を見つけるように
している。特許文献１の方法によれば、接触している文字などについても、文字領域を抽
出することが可能としているが、経路を選択する処理は、処理時間が長くかかるという問
題がある。また、特許文献１の方法は、探索始点と探索終点およびそれらを結ぶ探索領域
を予め設定する必要がある。つまり、特許文献１の方法は、そもそも、文字境界位置が、
ある程度予測できることが条件となっている。
【００１２】
そこで、本発明は前記問題点に鑑み、処理装置に対する処理負荷を大きくすることなく
、撮像画像に含まれる文字の領域を精度よく切り出す技術を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するため、請求項１記載の発明は、画像に含まれる第１の方向に配列された複数の文字からなる文字列から各々の文字を切り出す文字切り出し装置であって、前記画像の前記第１の方向の各座標位置において、前記第１の方向とは直交する第２の方向に沿って前記画像の各画素の画素値を積算するための積算手段と、所定の幅を有する区間を、前記画像の前記第１の方向の全体に亘って互いに異なる複数の位置に設定する設定手段と、前記設定手段で設定した各区間内で、前記積算手段で積算した画素値が最小となる座標位置を第１の点として抽出する第１抽出手段と、前記第１抽出手段により抽出された第１の点が前記第１の方向に沿って連続する集合ごとに、前記積算手段で積算した画素値の最小となる座標位置を第２の点として抽出する第２抽出手段と、前記画像の前記第１の方向の各座標位置において、前記第２抽出手段により抽出された第２の点における前記積算手段で積算した画素値の補間から基底値を算出する補間手段と、前記画像の前記第１の方向の各座標位置において、前記積算手段で積算した画素値から前記基底値を減算することで、補正値を生成する補正手段と、前記補正値が所定の閾値を超える領域を文字領域として認識する認識手段と、備えることを特徴とする。
【００１４】
請求項２記載の発明は、請求項１に記載の文字切り出し装置において、前記区間の幅は、切り出す文字の文字幅と略同一の幅で設定されることを特徴とする。
【００１５】
請求項３記載の発明は、請求項１に記載の文字切り出し装置において、前記区間の幅は、切り出す文字の文字幅の１１０％から１２０％の範囲の幅で設定されることを特徴とする。
【００１６】
請求項４記載の発明は、請求項１に記載の文字切り出し装置において、前記区間の幅は、予め定められた文字列の高さと、予め設定された文字の縦横比に基づいて設定されることを特徴とする。
【００１７】
請求項５記載の発明は、請求項１ないし請求項４のいずれかに記載の文字切り出し装置において、さらに、  複数の文字からなる文字列を表示するための文字列表示部と、前記認識手段により認識された各文字を矩形のウィンドウを用いて囲む文字領域表示手段と、前記画像の前記第１の方向全体に沿った複数の座標位置の各々における前記積算手段により積算した画素値により形成される波形を表示する波形表示部とを有する表示手段を備え、前記表示手段は、該表示手段上で文字と波形の相互位置関係を示すために、前記文字列表示部に表示される複数の文字を表示すると共に、前記各々の文字に対応する位置に前記波形の対応する部分が配置されるように波形を表示することを特徴とする。
【００１８】
請求項６記載の発明は、請求項１ないし請求項４のいずれかに記載の文字切り出し装置において、さらに、前記区間の幅をユーザ操作に応じて変更する変更手段と、前記変更手段における変更操作に応答して、前記補正手段で補正された補正値の波形をモニタに表示させる手段と、を備えることを特徴とする。
【００１９】
請求項７記載の発明は、請求項１ないし請求項４のいずれかに記載の文字切り出し装置において、さらに、前記区間の幅をユーザ操作に応じて変更する変更手段と、前記変更手段における変更操作に応答して、前記補間手段で算出された基底値の波形をモニタに表示させる手段と、を備えることを特徴とする。
【００２０】
請求項８記載の発明は、請求項１ないし請求項４のいずれかに記載の文字切り出し装置において、さらに、複数の文字からなる文字列を表示するための文字列表示部と、前記認識手段により認識された各文字を矩形のウィンドウを用いて囲む文字領域表示手段と、前記画像の前記第１の方向全体に沿った複数の座標位置の各々における前記積算手段により積算した画素値により形成される波形と前記波形に重ねた前記閾値を表示する波形表示部とを有する表示手段を備え、前記表示手段は、該表示手段上で文字と波形の相互位置関係を示すために、前記文字列表示部に表示される複数の文字を表示すると共に、前記各々の文字に対応する位置に前記波形の対応する部分が配置されるように波形を表示することを特徴とする。
【００２１】
請求項９記載の発明は、画像に含まれる第１の方向に配列された複数の文字からなる文字列から各々の文字を切り出す文字切り出し装置であって、前記画像の前記第１の方向の各座標位置において、前記第１の方向とは直交する第２の方向に沿って前記画像の各画素の画素値を積算するための積算手段と、前記画像の前記第１の方向の座標位置の中から、前記積算手段により積算された画素値が極小となる座標位置を極小点として抽出する第１抽出手段と、前記第１抽出手段により抽出された各極小点において、前記第１の方向に沿って所定の幅を有し、当該極小点に対応して区間を設定する設定手段と、前記設定手段で設定された各極小点に対応する各区間内において、当該極小点での前記積算手段により積算された画素値が最小となるときの当該極小点を区間最小点として抽出する抽出手段と、前記画像の前記第１の方向の各座標位置において、当該座標位置の基底値を当該抽出手段により抽出された区間最小点での前記積算手段により積算された画素値を補間して求める補間手段と、前記画像の前記第１の方向の各座標位置において、前記積算手段により積算された画素値を前記補間手段により求めた基底値を用いて補正する補正手段と、
前記画像の前記第１の方向の各座標位置において、前記補正手段により補正された前記積算手段により積算された画素値が所定の閾値を超えるかを判定し、前記補正手段により補正された前記積算手段により積算された画素値が所定の閾値を超えると判定された座標位置に対応する前記画像の領域を切り出すべき文字が存在する領域と認識する認識手段とを備えることを特徴とする。
【００２２】
請求項１０記載の発明は、請求項９ないし請求項１６のいずれかに記載の文字切り出し装置において、前記文字切り出し装置は、さらに、前記画像の前記第１の方向の各座標位置において、当該座標位置と当該座標位置の隣接する座標位置における前記積算手段により積算された画素値に基づいて、当該座標位置の前記積算手段により積算された画素値が異常を診断する診断手段を備え、前記補間手段は、前記診断手段により当該座標位置の前記積算手段により積算された画素値が異常であると判断した時は、当該座標位置の前記積算手段により積算された画素値を補間に用いないことを特徴とする。
【００２３】
請求項１１記載の発明は、画像に含まれる第１の方向に配列された複数の文字からなる文字列から各々の文字を切り出す文字切り出し方法であって、前記画像の前記第１の方向の各座標位置において、前記第１の方向とは直交する第２の方向に沿って前記画像の各画素の画素値を積算するための積算工程と、所定の幅を有する区間を、前記画像の前記第１の方向の全体に亘って互いに異なる複数の位置に設定する設定工程と、前記設定工程で設定した各区間内で、前記積算工程で積算した画素値が最小となる座標位置を第１の点として抽出する第１抽出工程と、前記第１抽出工程により抽出された第１の点が前記第１の方向に沿って連続する集合ごとに、前記積算工程で積算した画素値の最小となる座標位置を第２の点として抽出する第２抽出工程と、前記画像の前記第１の方向の各座標位置において、前記第２抽出工程により抽出された第２の点における前記積算工程で積算した画素値の補間から基底値を算出する補間工程と、前記画像の前記第１の方向の各座標位置において、前記積算工程で積算した画素値から前記基底値を減算することで、補正値を生成する補正工程と、前記補正値が所定の閾値を超える領域を文字領域として認識する認識工程と、を備えることを特徴とする。
【００２４】
請求項１２記載の発明は、画像に含まれる第１の方向に配列された複数の文字からなる文字列から各々の文字を切り出すプログラムであって、コンピュータを、前記画像の前記第１の方向の各座標位置において、前記第１の方向とは直交する第２の方向に沿って前記画像の各画素の画素値を積算するための積算手段と、所定の幅を有する区間を、前記画像の前記第１の方向の全体に亘って互いに異なる複数の位置に設定する設定手段と、前記設定手段で設定した各区間内で、前記積算手段で積算した画素値が最小となる座標位置を第１の点として抽出する第１抽出手段と、前記第１抽出手段により抽出された第１の点が前記第１の方向に沿って連続する集合ごとに、前記積算手段で積算した画素値の最小となる座標位置を第２の点として抽出する第２抽出手段と、前記画像の前記第１の方向の各座標位置において、前記第２抽出手段により抽出された第２の点における前記積算手段で積算した画素値の補間から基底値を算出する補間手段と、前記画像の前記第１の方向の各座標位置において、前記積算手段で積算した画素値から前記基底値を減算することで、補正値を生成する補正手段と、前記補正値が所定の閾値を超える領域を文字領域として認識する認識手段、として機能させることを特徴とする。
【発明の効果】
【００２５】
本発明の文字切り出し装置は、画素値積算評価値を用いて文字領域を認識するが、この
とき、画素値積算評価値のブロック最小値点間を補間して得た基底値を減算するようにし
ている。これにより、撮像装置のレンズ特性や照明の影響などにより、画像内に明暗のム
ラが生じている場合であっても、その明暗ムラが除去され、精度よく文字位置を切り出す
ことが可能である。
【００２６】
また、文字間隔が非常に接近している場合であっても、文字境界については、その近隣
の文字領域よりは画素値積算評価値が小さいため、基底値を減算することで、文字境界の
評価値を低く抑えることができる。これにより、文字が近接している場合であっても、精
度よく文字領域を切り出すことが可能である。
【発明を実施するための最良の形態】
【００２７】
｛システムの概要｝
以下、図面を参照しつつ本発明の実施の形態について説明する。図１は、本実施の形態
に係る画像処理システムの全体図である。この画像処理システムは、画像処理装置１と、
カメラ２と、モニタ３とから構成されている。カメラ２は、ＣＣＤやＣＭＯＳなどの撮像
センサや光学系ユニットを備えている。モニタ３は、たとえば、液晶表示ディスプレイな
どが用いられる。また、画像処理装置１には、画像処理システムの処理結果に応じて制御
される制御機器４が接続されている。
【００２８】
この画像処理システムは、カメラ２により、媒体８０に印字されている文字８１の画像
を撮像し、画像処理装置１において、カメラ２が撮像した画像を解析する。解析結果や、
処理内容は、適宜、モニタ３に表示される。画像処理装置１において、撮像画像から最終
的に文字認識が行われると、その認識結果に応じて制御機器４が制御されるのである。
【００２９】
文字８１が印字された媒体８０は、たとえば、製品に貼付された媒体である場合や、商
品の包装自体である場合がある。画像処理装置１は、これら製品や商品に印字されている
文字８１を認識することにより、製品、商品の製造工程、搬送工程などの確認作業を行う
のである。
【００３０】
図２は、画像処理装置１の機能ブロックを示す図である。画像処理装置１は、図に示す
ように、画像入力部１１、画像記憶部１２、画像処理部１３、操作部１４、処理結果記憶
部１５、出力部１６を備えている。
【００３１】
カメラ２で撮像された画像は、画像入力部１１より画像処理装置１に入力され、一旦、
画像記憶部１２に蓄積される。画像処理部１３は、画像記憶部１２に蓄積された撮像画像
から、各々の文字の切り出し処理、切り出された文字の各々に対する文字認識処理を実行する。本発明は、この文字の切り出し処理に特徴があり、文字の切り出し処理の詳細につ
いては、後で説明する。文字認識処理については、公知の方法が利用される。文字認識結
果は、処理結果記憶部１５に格納される。そして、出力部１６より、処理結果データが外
部に出力され、たとえば、制御機器４が処理結果データに応じて制御されるのである。
【００３２】
また、画像処理装置１は、操作部１４を備えている。操作部１４は、たとえば、ダイヤ
ルやキーボタンなどから構成される。ユーザは、操作部１４を操作することで、画像処理
装置１に対する各種の指示を与えることができる。たとえば、画像処理の処理パラメータ
の設定などを行うことができる。モニタ３には、処理パラメータの設定画面や、処理結果
などが表示される。ユーザは、モニタ３に表示された画面を参照しつつ、パラメータの設
定や、処理結果の確認などを行う。
【００３３】
｛文字切り出し方法の内容｝
次に、図３を参照しながら、本発明の特徴部である文字の切り出し方法について説明す
る。文字の切り出しとは、撮像画像に含まれる文字認識を行う前工程であって、撮像画像
の中の文字列の中に含まれる１つ１つの文字の領域を抽出する処理である。文字の切り出
し工程として、まず、撮像画像から文字列を含む行の切り出しが行われ、続いて、この文字列から文字列の中に含まれる個々の文字を切り出す処理が行われる。本発明は、文字列
から文字を切り出す処理に特徴があるので、文字列が切り出された後の処理を中心に説明
する。
【００３４】
図３（ａ）は、行の切り出しが行われた画像６１を示す図である。言い換えれば、画像６１は、切り出される文字列を含んでいる。切り出されるべき文字列の全体を囲むための矩形形状のウインドウのサイズは、以下の状況に基づいて、自動的に決定される。矩形形状のウインドウの幅は、切り出し方向における切り出し開始文字の位置と、切り出し終了文字の位置によって決定される。例えば、切り出し方向が、図３（ａ）において左側から右側に向いている場合、その切り出し開始文字の位置は、文字列の中で最も左側に位置する文字「Ｔ」の最も左に位置する部分であり、切り出し終了文字の位置は、文字列の中で最も右側に位置する文字「９」の最も右に位置する部分である。これらの位置情報に基づき、矩形形状のウインドウの幅が決定される。本実施例においては、文字「Ｔ」と文字「９」の位置情報にさらに予め定めた余裕代を与えることで、矩形形状の幅がこれらの文字の位置より更に、外方向に位置するようになっている。なお、切り出し開始文字や切り出し終了文字の位置は、後述する画素積算値により、決定することが好ましい。さらに、矩形形状のウインドウの高さは、切り出されるべき文字列に含まれる全ての文字の中で最も高い文字の部分と最も低い文字の部分の位置によって決定される。つまり、図３（ａ）に示す画像６１は、文字列を含む画像であり、文字高さに沿った縦方向の長さ（高さ）をもつ画像である。図に示すように、この画像６１には、文字列「Ｔ２５８７８９」が含まれている。
【００３５】
ここで、図に示すように、方向Ａ、Ｂを定義する。そして、方向Ａを文字列方向Ａと呼
ぶことにし、方向Ｂを、文字切り出し方向Ｂと呼ぶことにする。方向Ａは、切り出される
べき文字列の配列する方向を示す行の切り出し方向Ａと呼ぶこともできる。図に示すよう
に、方向Ａは、方向Ｂに対して直交している。言い換えれば、文字列が切り出された後、
方向Ｂは、既に決定されている方向Ａに対して直交方向に定義される。つまり、画像６１
は、撮像画像から行の切り出し方向Ａについて切り出された画像であり、この後の工程で
、文字切り出し方向Ｂについて切り出しを行うことで、画像６１から、個々の文字に対応
する文字領域が切り出される。
【００３６】
図３（ｂ）は、画像６１の文字切り出し方向Ｂについて画素値を積算することによって
得られる画素値積算評価値を示す図である。文字列方向Ａの各画素位置（各座標位置）で
方向Ｂに沿った全ての画素値を積算することにより画素値積算評価値を算出し、これらを
波形データ６２として表している。この波形データ６２は、文字領域を評価するためのデ
ータとして用いられる。つまり、背景部分とは異なり、文字が存在する領域では、画素値
積算評価値が大きくなり、文字領域を評価することが可能である。
【００３７】
ただし、文字領域の波形データ６２が大きくなるように表現するために、文字が黒色の
場合には、白黒反転させた上で画素値積算評価値を用いている。つまり、画像６１の各画
素は、その画素値（濃度）が、たとえば０〜２５５の値をとる白黒画像である。背景が黒
色で文字色が白色の場合には、文字部分が高輝度となるため、そのまま画素値を積算した
値を画素値積算評価値とすればよい。逆に、背景が白色で文字色が黒色の場合には、文字
部分が低輝度となるため、画素値０〜２５５を、画素値２５５〜０となるように変換する
のである。そして、白黒反転させた画素値を積算したものを画素値積算評価値として採用
するのである。これにより、文字色が黒、白どちらの場合であっても、文字部分について
は、画素値積算評価値の値が大きくなるように統一的に扱うことができる。
【実施例１】
【００３８】
図３（ｂ）に示すスキャン区間６２１は、区間最小値を決定するために利用される区間
である。波形データ６２に対して、スキャン区間６２１を文字列方向Ａについて移動させ
つつ、スキャン区間６２１が移動する各位置について画素値積算評価値の区間最小値を求
める。そして、その区間最小値に対応している点を区間最小値点６３としてプロットした
のが、図３（ｃ）である。つまり、図３（ｃ）は、波形データ６２の中で、区間最小値点
６３として採用された点の集合を現している。後述するように、スキャン区間６２１は、
文字幅よりも少し広めの幅で設定されている。したがって、区間最小値点６３は、文字と
文字との間の領域を示す点となる。
【００３９】
図３（ｄ）は、区間最小値点６３が連続する区間最小値ブロックの中で、画素値積算評
価値が最小となるブロック最小値点６３１をプロットした図である。つまり、区間最小値
点６３が文字列方向Ａに関して連続する点集合に着目し、その点集合の中で、さらに、画
素値積算評価値が最小となる点をブロック最小値点６３１として明示した図である。
【００４０】
さらに、図３（ｄ）には、ブロック最小値点６３１間を、直線補間し、直線補間された
点を基底点６３２としてプロットしている。つまり、隣り合うブロック最小値点６３１の
間を直線補間することで、文字列方向Ａに関して全域に亘って基底点６３２をプロットし
た図である。このようにして求められた基底点６３２は、シェーディングなど明暗ムラの
影響を取り除いた背景部分（文字と文字との間）の画素値積算評価値を表すものである。
【００４１】
図３（ｅ）は、図３（ｂ）の波形データ６２に、基底点６３２を重ね合わせてプロット
した図である。なお、ブロック最小値点６３１は、基底点６３２に含まれている。
【００４２】
図３（ｆ）は、文字列方向Ａに関して、各画素位置の画素値積算評価値から、各画素位
置の基底値６３２を減算した補正画素値積算評価値を示す図である。文字列方向Ａの各画
素位置の補正画素値積算評価値を表すのが、補正波形データ６２ｃである。このように、
各画素位置の画素値積算評価値から基底値６３２を減算することで、補正画素値積算評価
値は、背景部分に対する画素値の相対的な変位を表現することが可能となる。
【００４３】
以上の処理により、元の波形データ６２が補正され、補正波形データ６２ｃが生成され
る。図３（ｂ）に示すように、元の波形データ６２は、照明の影響により、画像の中央部
分が暗く、左右端に向かうにつれて明るくなっている（白黒反転のため、画素積算値は、
左右端に向かうにつれて低下している）。しかし、波形データ６２から各画素位置におけ
る基底値６３２が減算されることで、画像内における明暗のばらつきが補正され、図３（
ｆ）に示すように、補正波形データ６２ｃは、文字部分の波形を、背景部分に対して相対
的に現したものになるのである。
【００４４】
ここで、図３（ｆ）に示すような位置に閾値６４を設定することにより、文字「Ｔ」に
ついても、正確に文字領域を切り出すことができる。つまり、図７で示した従来の例であ
れば、「Ｔ」の文字の横線のみの部分は、画素値積算評価値が小さいため、文字領域とし
て認識されなかった。しかし、この発明の方法によれば、基底値６３２が減算されること
で、シェーディングの影響が取り除かれ、画素値積算評価値が小さい領域についても、正
確に文字領域を抽出することが可能である。
【００４５】
また、文字「８」と「９」についても、図３（ｆ）に示すように、閾値６４によって、別々の文字として認識可能である。つまり、図７で示した従来の例であれば、文字が接触している部分は、画素値積算評価値が大きくなるため、文字境界として認識されなかった。しかし、本発明の方法によれば、文字が接触している部分については、その周囲の文字部分よりも画素値積算評価値が相対的に小さいため、ブロック最小値点６３１として採用される。ブロック最小値点６３１と採用されることにより、補正波形データ６２ｃ上では、画素値積算評価値が小さくなるように補正され、文字境界として認識可能となっている。
【００４６】
｛処理の流れ｝
次に、図４および図５を参照しながら、文字切り出し処理の流れを説明する。文字の切り出し処理は、上述したように、行の切り出し方向Ａについての切り出しと、文字切り出し方向Ｂについての切り出しとがある。本発明の切り出し方法は、この両方の切り出し方法に適用できる方法であり、図４および図５のフローチャートは、両方の切り出し処理に共通の処理フローである。ただし、行切り出しされた画像から文字切り出し方向Ｂについて文字切り出しする処理を例にとって説明する。また、図４は、文字切り出しの全体処理のフローチャートであり、図５は、図４のフローチャートのうち、極小値点補間データの作成処理を、さらに詳しく説明するフローチャートである。
【００４７】
図４の全体処理フローを参照する。まず、カメラ２が媒体８０に印字された文字８１を
撮像し、画像入力部１１が、撮像画像を入力し、画像記憶部１２に格納する（ステップＳ
１）。
【００４８】
ステップ２以降の処理は、画像処理部１３による処理である。次に、画像処理部１３は
、撮像画像を入力し、行の切り出しを行う（ステップＳ２）。つまり、撮像画像の中で、
文字列が存在する領域を抽出し、行の切り出し方向Ａについて文字列を含む画像の切り出
しを行う。この切り出された画像は、図３（ａ）の画像６１に対応している。
【００４９】
次に、画像処理部１３は、投影データを生成する（ステップＳ３）。つまり、文字列方
向Ａの各画素位置において、画素値積算評価値を演算する。このようにして演算された画
素値積算評価値を示すのが、図３（ｂ）の波形データ６２である。
【００５０】
次に、画像処理部１３は、極小値点補間データの作成を行う（ステップＳ４）。極小値
点とは、背景部分とみなせる点であり、具体的には、図３（ｄ）で説明したブロック最小
値点６３１のことである。また、極小値点補間データとは、画像内の明暗のムラを推定したもので、背景部分とみなせる点の画素値積算評価値から推定したデータであり、具体的には、ブロック最小値点６３１を補間して作成された基底点６３２を示している。
【００５１】
図５は、極小値点補間データ作成処理（ステップＳ４）を、さらに詳しく説明するフロ
ーチャートである。まず、処理に先立って処理の条件設定を行う。条件設定の対象となる処理は、文字列方向Ａに沿って、所定幅を有する区間内における画素値積算評価値の最小値とその最小となる点を抽出するものである。そして、この区間を所定の間隔で移動させ、画像全体に亘って抽出を行うものである。従って、処理の条件として、対象となる区間の幅、初期位置および対象となる区間のシフト量等の移動最小値を求める処理の条件が設定される。具体的には、スキャン区間幅を設定し、区間を開始位置に設定する（ステップＳ４０１）。スキャン区間とは、図３（ｂ）に示すスキャン区間６２１に対応している。まず、このスキャン区間のスキャン区間幅が設定される。このスキャン区間幅は、予め設定された値が用いられる。あるいは、後述するように、ユーザが、操作部１４を操作しながらこの幅を調整可能である。そして、スキャン区間が開始位置に設定される。たとえば、図３（ｂ）に示すように、文字列を含む画像６１の左端部に、つまり、文字列左側の切り出し位置に設定される。
【００５２】
次に、全体のスキャンが終了したかどうかが判定される（ステップＳ４０２）。全体の
スキャンとは、移動最小値を求める図３（ａ）の画像６１を例にすると、スキャン区間６
２１を画像６１の左端部から右端部にかけて全域に亘ってスキャンすることである。
【００５３】
全体のスキャンが終了していない場合、設定されたスキャン区間６２１の中で画素値積
算評価値が最小をとる点を求める（ステップＳ４０３）。画素値積算評価値が最小をとる
点を求めたら、スキャン区間６２１を所定の間隔で次にシフトする（ステップＳ４０４）。ここで、スキャン区間６２１がシフトされる間隔が、画像６１の１画素ずつであれば、精度良くスキャンが実行されるため好ましいが、処理時間の短縮化を優先して、シフトされる間隔を画像６１の１画素よりも大きくしても良い。なお、ユーザが処理精度と処理時間のトレードオフを行えるように、ユーザが操作部１４を操作しながらスキャン区間６２１のシフトされる間隔を調整可能にすることが好ましい。
【００５４】
再び、全体のスキャンが終了したかどうかを判定し、ステップＳ４０３、Ｓ４０４を繰
り返して、全ての区間についてスキャン区間６２１内で画素値積算評価値が最小をとる点
を求める。このようにして求められた点が、図３（ｃ）の区間最小値点６３に対応してい
る。
【００５５】
全体のスキャンが終了すると（ステップＳ４０２でＹＥＳ）、ステップＳ４０２〜Ｓ４
０４で得られた区間最小値点６３の集合から、区間最小値点６３が連続している集合を最小値ブロックとして抽出する。また、抽出された最小値ブロックの数Ｎを求める（ステップＳ４０５）。ここで、隣接する区間最小値点６３の互いの距離が所定の値を超えない場合に、区間最小値点６３が、それに隣接する区間最小点と連続していると定義している。反対に、隣接する区間最小値点６３の互いの距離が所定の値を超える場合に、区間最小値点６３が、それに隣接する区間最小点と連続していないと定義している。従って、区間最小値点６３が連続している集合は、各区間最小値点６３が紐状に配列され、全ての隣接しあう区間最小値点６３間が連続している。なお、隣接する区間最小値６３が連続するかを判断するための所定距離は、スキャン区間６２１がシフトされる間隔と同一かほぼ同等かつやや大きいことが好ましい。例えば、スキャン区間６２１が１画素ずつシフトされる場合には、所定距離は、１画素あるいはシフト間隔とほぼ同等でやや大きい1.2画素程度の距離が設定される。
【００５６】
次に、画像処理部１３は、変数ｎに１をセットする（ステップＳ４０６）。そして、変
数ｎがＮを超えていないかどうかをチェックし（ステップＳ４０７）、超えていない場合
には、ｎ番目の最小値ブロック内で最小値（極小値）を取る点を求める（ステップＳ４０
８）。つまり、ｎ番目の最小値ブロックの中で、画素値積算評価値が最小値をとる点（ブ
ロック最小値点６３１）を求める。
【００５７】
次に、変数ｎを１インクリメントし（ステップＳ４０９）、変数ｎがブロック数Ｎを超
えるまで、ステップＳ４０８の処理を繰り返し行う。これにより、Ｎ個の最小値ブロック
に対して、Ｎ個のブロック最小値点６３１が求められる。
【００５８】
変数ｎがブロック数Ｎを超えると（ステップＳ４０７でＮＯ）、ステップＳ４１０に移
行する。そして、ステップＳ４０７〜Ｓ４０９で得られたブロック最小値点６３１から、
最小値点間を直線補間したデータを作成する（ステップＳ４１０）。この直線補間したデ
ータが、図３（ｄ）、図３（ｅ）における基底値６３２に対応している。
【００５９】
再び、図４の全体フローに戻る。ステップＳ４により、文字列方向Ａの各画素位置にお
ける基底値６３２が求まると、次に、投影データから極小値点補間データを差し引く処理
が行われる（ステップＳ５）。つまり、文字列方向Ａの各画素位置において、波形データ
６２から基底値６３２を減算する処理が行われる。このようにして、生成されるのが、図
３（ｆ）の補正波形データ６２ｃである。
【００６０】
次に、画像処理部１３は、閾値６４を用いて切り出し位置を決定する（ステップＳ６）
。なお、閾値６４は、予め設定されている値を用いればよい。あるいは、後述するように
、ユーザが、操作部１４を操作して、閾値６４の値を設定できるようにすればよい。
【００６１】
そして、画像処理部１３は、設定された閾値６４に従い、文字切り出し位置を出力する
（ステップＳ７）。つまり、補正波形データ６２ｃと閾値６４とを比較し、閾値６４より
も（補正された）画素値積算評価値が大きい領域を文字領域として切り出すのである。文
字領域が切り出されると、以降、画像処理部１３により、文字認識処理が行われる。
【００６２】
なお、区間最小値点６３を求めるために、スキャン区間６２１をシフトさせる、いわゆる移動最小値を求める方法を用いたが、本発明は、これに限らず、互いにオーバラップした複数のスキャン区間６２１を画像６１の全体に亘って一括して設定して求めても良い。
【００６３】
このように、本実施の形態の画像処理システムによれば、撮像画像にシェーディングが
生じている場合、つまり、撮像装置のレンズ特性や照明の影響により、撮像画像の明暗に
ムラがあるような場合であっても、画素値積算評価値を補正することにより、文字切り出
しを精度よく行うことができる。
【００６４】
また、文字間隔が狭く、文字が接触しているような場合であっても、画素値積算評価値
を補正するので、周囲の文字部分よりも画素値積算評価値が比較的小さい文字境界領域を
精度よく検出可能である。
【実施例２】
【００６５】
図８および図９を参照しながら、本発明の第２実施例について説明する。図８は、第１実施例の図３に対応し、図９は、第１実施例の図５に対応する。この第２実施例は、第１実施例に対して極小値点補間データの作成処理が異なるが、他の部分については実質的に同一である（図１、図２、図４、図６）。
【００６６】
図４に示される投影データの計算（ステップＳ３）に対応する処理を、図８（ａ）および図８（ｂ）に示す。図８（ａ）は、行の切り出しが行われた画像６１を示す図である。図８（ｂ）は、画像６１の文字切り出し方向Ｂについて画素値を積算することによって得られる画素値積算評価値を波形データ６２として示す図である。
【００６７】
図４に示される極小値点補間データの作成（ステップＳ４）に対応する処理を、図９および図８（ｃ）〜（ｅ）を参照しながら説明する。
【００６８】
図９は、第２実施例における極小値点候補データの作成処理を示すフローチャートである。極小値点候補データは、いわゆる明暗のムラ等の背景のバラツキを表すものであり、画像６１の背景部分とみなせる位置を特定し、背景部分とみなせる位置における画素積算値に基づいて画像６１全体の背景のバラツキを推定して求められる。
【００６９】
まず、画像６１から背景部分とみなせる位置の候補を抽出するために、画像６１の文字列方向Ａの各座標位置において、画素値積算評価値が極小値となる座標位置を抽出する（ステップＳ４１１）。具体的には、各座標位置における画素値積算評価値と、その座標位置に文字列方向Ａに沿って隣り合う座標位置における画素値積算評価値とを比較し、両隣の座標位置における画素値積算評価値が、その座標位置における画素値積算評価値よりも大きい場合に、その座標位置を画素値積算評価値が極小値となる座標位置であると判断する。図８（ｃ）は、文字列方向Ａに沿った各座標位置における画素値積算評価値を波形データ６２として表現し、その波形データ６２上にステップＳ４１１で抽出された座標位置に対応する点を極小点７３としてプロットした図である。
【００７０】
次に、ステップＳ４１１で抽出された全ての極小点７３について、その極小点７３が背景領域に存在するか、あるいは、文字領域に存在するかを判断し、背景領域に存在すると判断した極小点７３を候補極小点７３１として抽出する。背景領域の判断の詳細を図８（ａ）および図８（ｃ）を参照して説明する。極小点７３は、その近傍区間において最小の画素値積算評価値を持つ点である。その極小点７３が文字領域に存在する場合に、最小値を探すための対象区間を広げると、背景領域も対象区間に含まれる。この場合、画素値積算評価値は、文字領域よりもその文字領域に近接する背景領域のほうが相対的に小さいため、その極小点７３に対応するは画素値積算評価値は対象区間のにおける最小値ではない（図８（ｃ）の図８（ａ）の文字「７」に対応する部分を参照）。一方、その極小点７３が背景領域に存在する場合に、最小値を探すための対象区間をある程度広げても、対象区間は背景領域よりも画素値積算評価値が大きい文字領域が追加されるだけなので、その極小点７３に対応する画素値積算評価値が対象区間における最小値である（図８（ｃ）の図８（ａ）の文字「８」と「９」の間に対応する部分を参照）。
【００７１】
具体的には、まず、画素値積算評価値の最小値を求めるために用いられる対象区間７２１の幅を設定する（ステップＳ４１２）。この対象区間７２１の幅は、所定の値が予め設定された値が用いられる。あるいは、ユーザが、操作部１４を操作しながらこの幅を調整可能である。対象区間７２１の幅は、文字領域の幅を考慮して設定されることが好ましい。つまり、対象区間７２１が画像６１内の文字の幅と実質的に同等又はそれ以上の場合、対象区間７２１に少なくとも一部の背景領域が含まれる。このとき、ステップＳ４１１において抽出された文字領域の極小点７３は、対象区間７２１で画素値積算評価値が最小とならないため、この極小点７３は、文字領域に存在すると認識される。また、各対象区間７２１はそれに対応する極小点７３を含んでおり、例えば、対象区間７２１の中央に極小点７３が存在するようにしても良い。このようにして、対象区間７２１は、極小点７３を中心とする区間として設定され、対象区間７２１の幅は、切り出されるべき文字幅とほぼ同等か、やや大きく（文字幅に対して１１０％〜１２０％程度）設定される。
【００７２】
次に、図８（ｃ）に示すように、ステップＳ４１１で抽出された各極小点７３について、ステップＳ４１２で設定された幅を有し、かつ、その極小点７３を中心とする対象区間７２１を設定し（ステップＳ４１３）、各対象区間７２１において、対象区間７２１の画素値積算評価値の最小値と、その対象区間７２１に対応する極小点７３の画素値積算評価値とを比較し、図８（ｄ）に示すように、極小点７３の画素値積算評価値が対応する対象区間７２１の画素値積算評価値の最小値である場合に、その極小点７３を候補最小点７３１として抽出する（ステップＳ４１４）。
【００７３】
なお、候補最小点７３１の画素値積算評価値は、周辺の座標位置における画素値積算評価値と極端に小さくないか（極端に小さい場合は異常）、あるいは、候補最小点７３１に隣接する座標位置における画素値積算評価値が所定区間内において候補最小点７３１除き最小の値となっているか（隣接座標位置の画素値積算評価値が所定区間内最小であれば正常）等を判断することにより、候補最小点７３１の画素値積算評価値が異常か否かを診断する。異常と判断した候補最小点７３１については、以降の処理に用いないようして、本来、候補最小値として抽出されるべきではない点を候補から排除できることが好ましい。また、異常診断は、投影データの計算（ステップＳ３）の直後に行われても良いし、ステップＳ４１６の直前に行われても良い。
【００７４】
以降の処理は、第１実施例のブロック最小値点６３１を候補最小点７３１に置き換えた処理と実質的に同一である。つまり、図８（ｄ）に示すように、文字列方向Ａの各座標位置において、ステップＳ４１４で得られた候補最小点７３１の画素値積算評価値を補間して、その座標位置における基底値６３２を求める（ステップＳ４１５）。以降、第１実施例と同様に、投影データから極小値点補間データを差し引く処理が行われる（ステップＳ５）。つまり、文字列方向Ａの各画素位置において、波形データ６２から基底値６３２を減算する処理が行われる。このようにして、生成されるのが、図８（ｆ）の補正波形データ６２ｃである。
【００７５】
次に、画像処理部１３は、閾値６４を用いて切り出し位置を決定する（ステップＳ６）
。なお、閾値６４は、予め設定されている値を用いればよい。あるいは、後述するように
、ユーザが、操作部１４を操作して、閾値６４の値を設定できるようにすればよい。
【００７６】
そして、画像処理部１３は、設定された閾値６４に従い、文字切り出し位置を出力する
（ステップＳ７）。つまり、補正波形データ６２ｃと閾値６４とを比較し、閾値６４より
も（補正された）画素値積算評価値が大きい領域を文字領域として切り出すのである。文
字領域が切り出されると、以降、画像処理部１３により、文字認識処理が行われる。
【００７７】
このように、本発明の第２実施例における画像処理システムによれば、撮像画像にシェーディングが生じている場合、つまり、撮像装置のレンズ特性や照明の影響により、撮像画像の明暗にムラがあるような場合であっても、画素値積算評価値を補正することにより、文字切り出しを精度よく行うことができる。
【００７８】
また、文字間隔が狭く、文字が接触しているような場合であっても、画素値積算評価値
を補正するので、周囲の文字部分よりも画素値積算評価値が比較的小さい文字境界領域を
精度よく検出可能である。
【００７９】
｛ユーザインタフェース｝
図６は、上記の文字切り出し処理を実行する際に、モニタ３に表示される設定確認画面
５を示す図である。この設定確認画面５は、画面の右方向に配列された設定部５０１〜５
１１と、画面の中央に配置された画像処理領域５２０と波形表示部５３０とを備えている
。ユーザは、画像処理領域５２０に表示された画像および波形表示部５３０に表示された
波形５３１を参照しながら、操作部１４を操作して、設定部５０１〜５１１の各パラメー
タを変更し、文字の切り出し処理の調整を行うことができるのである。画像処理領域５２
０内の矩形５２１は、行切り出し領域を表している。更に、画像処理領域５２０と波形表示部５３０の設定画面５上における位置は、各々に表示される文字列の中の文字と各文字に対応する波形が画面の上下関係において、前記画像の文字列内の複数の文字が配列する方向、つまり行の切り出し方向において、同じ文字が同じ位置に位置するように位置決めされて、表示されるため、文字領域として画像処理領域５２０内に表示される、矩形形状のウインドウで囲まれた文字と、それに対応する波形表示部５３０内に表示される各文字に対応する波形の関係が容易に認識できるという効果がある。本実施例においては、波形表示部５３０を設定画面５上において上に、画像処理領域５２０を下に設けたが、その位置関係を逆にしても良いことはいうまでもない。
【００８０】
画像処理領域５２０は、処理対象の文字を含む画像を表示する領域である。この図では
、日付（０６．１０．２９）が印字された媒体を撮像した画像が表示されている。そして
、画像処理領域５２０には、切り出された文字領域が矩形５２２で囲まれるようにして表
示されている。図では、それぞれの文字「０」や「６」などが、それぞれ個別の矩形５２
２で囲まれており、文字領域として切り出されている状態を示している。ユーザは、この
表示を見ることで、文字の切り出し状態を確認することができる。
【００８１】
波形表示部５３０には、図では、補正波形データ５３１（図３（ｆ）の補正波形データ
６２ｃに対応）が表示されている。つまり、画素値積算評価値から基底値６３２を減算し
た補正後の波形が表示されている。また、補正波形データ５３１に、重ねるようにして閾
値５３２が表示されている。この表示を見ることで、ユーザは、補正された波形と閾値と
の関係を知ることができ、閾値との関係で、どのような領域が文字領域として抽出される
かを感覚的に知ることができる。
【００８２】
また、波形表示部５３０の下部には、スキャン区間５３３（図３（ｂ）のスキャン区間
６２１に対応）が表示されている。つまり、図３（ｂ）、図３（ｃ）で説明したように、
スキャン区間６２１を移動させつつ、区間最小値点６３を求めたが、スキャン幅と画像や
波形５３１との関係を分かり易くするために、スキャン区間５３３を波形表示部５３０に
表示させているのである。ここで、ユーザは、設定部５０７に設定値を入力することで、
スキャン区間５３３の幅（文字幅上限）を自由に変更することができる。なお、図では、
文字高さに対する比で、スキャン幅を設定するようにしている。文字高さとは、切り出さ
れている行の高さである。このスキャン区間５３３が変更されると、それに応じて、区間
最小値点６３などの位置も変更され、最終的な補正波形も変化する。そこで、波形表示部
５３０は、この変更操作に応答して、修正された補正波形データ５３１をリアルタイムで
表示するのである。これにより、ユーザは、補正波形の様子も見ながらスキャン区間５３
３を変更させることができる。
【００８３】
また、波形表示部５３０には、直線補間された波形を表示するようにしてもよい。つま
り、図３（ｄ）、図３（ｅ）で示した基底値６３２の波形を表示させるようにしてもよい
。この場合にも、ユーザが、スキャン区間５３３を変更する操作に応答して、修正された
基底値６３２の波形を表示するようにすればよい。
【００８４】
また、ユーザは、設定部５０８に設定値を入力することで、閾値５３２（切り出し閾値
）の値を変更することが可能である。この設定部５０８には、ユーザが入力を行わない場合は、デフォルト値として「４０」という値が設定されている。これは、画素値の積算値を０から２５５までに設定し、文字のある部分が数字が多くなるように設定した場合である。従って、ユーザ入力が行われない場合は、画像処理領域５２０上の「４０」の値の位置に閾値５３２が表示される。ユーザにより閾値５３２が変更されると、これによ
り、文字の切り出し位置も変更されるので、画像処理領域５２０に表示されている矩形５
２２の位置や大きさが変化する。このように、ユーザは、閾値５３２を変更しながら、文
字の切り出し位置を確認することが可能である。
【００８５】
なお、スキャン区間５３３は、設定部５０７によりユーザが設定可能であると説明した
が、デフォルト状態では、切り出す文字の文字幅と略同じ幅か、少し広い幅に設定される
ようにしておけばよい。たとえば、切り出す文字の文字幅の１１０％から１２０％程度の
幅にしておけば文字領域を精度よく切り出すことが可能である。これは、区間最小値点６
３を抽出するときに、文字幅より少し広い幅が最適だからである。もし、文字幅よりスキ
ャン区間５３３が狭ければ、文字領域内に区間最小値点６３が求められる可能性があり、
補正により、文字領域の画素値積算評価値が低く抑えられる可能性がある。一方、スキャ
ン幅があまりに広い場合には、図３で示した例であれば、文字「８」と「９」との間の境
界部分で区間最小値点６３が選択されず、文字「８」と「９」を１つの文字として誤認識
する可能性があるからである。
【００８６】
また、デフォルトのスキャン区間５３３を、文字の高さから自動的に決定するようにし
てもよい。上述したように、ステップＳ２において、撮像画像は、行の方向に切り出され
ている。この行の高さを文字の高さとして、それに対して、所定の比率を乗算することで
、スキャン区間５３３の幅を決定するのである。これにより、撮像により文字画像が拡大
、縮小された場合であっても、自動的に、スキャン区間５３３が最適幅に調整される。た
とえば、撮像対象である商品や製品によって文字の縦横比がある程度決まれば、その縦横
比に応じて比率を決めるようにすればよい。この比率については、ユーザが設定可能とす
ればよい。
【００８７】
その他の設定部５０１〜５１１の意味について説明しておく。設定部５０１は、行番号を設定することができる。取得された画像内に複数の文字列が存在する場合、各文字列に対して、画像処理装置によって自動的に対応する行番号が付与される。従って、特定の文字列に対する行番号を用いて、特定の文字列を指定することができる。指定された文字列は、画像処理領域５２０上に表示される。
【００８８】
設定部５０２は、切り出すべき文字の文字数を設定することができる。予め切り出すべき文字の文字数が決まっている場合には、その文字数を設定部５０２に設定する。更に詳細には、切り出すべき文字の文字数は、後述する設定部５０３で決定される読み出し方向、「順方向」、「逆方向」ならびに「文字のサイズ順」の中から選択される一つの読み出し方向と一緒に決定される。この設定によって、文字切り出し精度を控除させることができるとともに、ユーザによって切り出すことを要求された文字のみをその他の切り出し条件も考慮して切り出すことができる。
【００８９】
設定部５０３は、切り出すべき文字の切り出し方向を設定することができる。本実施例においては、設定部５０３は、「順方向」、「逆方向」ならびに「文字のサイズ順(文字のサイズの大きい順)」の一つを選択して、設定できる。「順方向」は図１０における画像処理領域５２０の左側から文字の切り出しを開始することを意味し、「逆方向」は図１０における画像処理領域５２０の右側から文字の切り出しを開始することを意味する。言い換えれば、「順方向」の反対方向であり、「文字のサイズ順(文字のサイズの大きい順)」は、文字列の中の文字の大きさの順番に基づいて文字列から文字を切り出すことを意味している。設定部５０３のもう一つの例としては、この設定部５０３は基本的に文字の切り出し開始の方向を決定することが求められているので、選択されるアイテムとして「順方向」と「逆方向」のみが提供されれば十分である。
【００９０】
設定部５０４は、傾斜補正を行うか否かを選択することができる。文字が例えば、イタリック文字のように文字列の配列方向に傾斜している時、隣接する文字の投影データ（画素値積算評価値）は互いに重なり合う。このため、傾斜している文字を補正する処理を行うか否かが設定される。設定部５０４に「ＯＮ」が設定されると、画像処理装置１は、文字列の文字の傾き角度を検出し、そして自動的に検出された傾き角度に基づいて補正された、非傾斜文字を生成する。そして、文字の切り出し処理は、その補正された文字列に対して実行される。また、この傾き補正が不要な場合、ユーザは「ＯＦＦ」を選択する。
【００９１】
設定部５０５は切り出し方法を設定するものである。詳細には、「投影」と「比率指定」が選択されるべき切り出し方法として提供されている。「投影」を用いる切り出しは、切り出されるべき文字列の文字配列方向における各座標位置（各画素位置）において、文字列の文字配列方向に直交する方向に沿った画素値を積算することによって得られる画素値積算評価値に基づく各文字の切り出しを実行させることができる。一方、「比率指定」を用いる切り出しは、上述した「投影」と同じ機能とともに、切り出し開始の文字の位置と切り出し終了の文字の位置ならびに位置切り出すべき文字と文字との間の間隔のサイズの設定に基づいて切り出しを実行させることができる。このため、「比率指定」が選択された場合は、もう一つのダイアログボックス（図示せず）がモニタ２上に現れ、文字列における最初の文字から最後の文字の間に０から１００までの値の座標値が設定され、この座標値に基づいて上述した設定パラメータを特定させることができる。
【００９２】
設定部５０６は波形膨張回数の数を設定させることができる。この設定は、波形の途切れをなくすためのものである。この設定の機能は、ドットの集合によって形成される文字に有効である。言い換えれば、ドットの集合によって形成される文字は、ドットとドットの間に空間を有しているので、その空間に対応する位置の画素値の積算値は、文字のその他の部分に対応する画素値の積算値より極端に低い。従って、ドットによって形成される文字に対応する波形は非連続的な形状となる場合がある。このような場合、この非連続的な形状の波形は、文字列の少なくとも配置方向(複数の文字が並び配列する方向)に膨張させることによって、連続的な形状の波形へ変更させることができる。さらに、各文字においてドット間の空間のサイズが異なるため、設定部５０６はドットによって形成されたいかなるタイプの文字に対しても適切な膨張率を提供するために波形の膨張回数の数を設定できるようになっている。
【００９３】
設定部５０７は文字幅の上限値を設定することができる。図に示すように、もし幅は、文字の高さに対する比率で設定される。この上限値は、接触している文字等を分離する処理で用いられる。
【００９４】
設定部５１１では、フィッティングを行うか否かを設定することができる。文字の形状に従って矩形形状を有する切り出し領域のフィッティングは、垂直方向（文字の切り出し方向）における文字の位置のシフトする場合に有効である。更に詳細には、本実施例においては、「フィッティング」を選択しない場合、文字列から切り出されるべき各文字を囲む矩形形状の切り出し領域の上側と下側の各々の位置は、文字列から切り出されるべき全ての文字の中で最も高い位置と最も低い位置によって固定される。従って、図１０に示される二つのピリオドのような文字が切り出される場合、図に示すように二つのピリオドの各々に対応する矩形形状の切り出し領域の上部空間には文字が存在しない。切り出し領域内のこの部分的な空間に文字が存在せず、そしてこの部分的な空間に対する情報は文字認識処理において無意味であるので、切り出し領域内のこの偏った文字のレイアウトは、パターンマッチング処理のような文字認識処理に対しては不利益である。このような問題を解決するために、本設定部５１１は非常に有効である。つまり、設定部５１１において「フィッティング」を選択することにより、上述したピリオドのケースにおいても、ピリオドの文字の高さに合わせた矩形形状の切り出し領域を設定できるので、切り出し領域内の無駄な空間を低減できるため、その後の画像処理を効率的に行うことができる。
【００９５】
さらに、設定部５０１から５１１の各設定部は、複数の選択可能な機能から選択されるひとつの条件を選択する際、所望の機能を選択するためにプルダウンメニュー選択方式を用いることが好ましい。
【図面の簡単な説明】
【００９６】
【図１】本実施の形態に係る画像処理システムの全体図である。
【図２】画像処理装置のブロック図である。
【図３】第１実施例の文字切り出し工程の処理手順を示す図である。
【図４】文字切り出し処理の全体フローチャートである。
【図５】第１実施例の極小値点補間データの作成処理フローチャートである。
【図６】文字切り出し処理のユーザインタフェースを示す図である。
【図７】従来の文字切り出し処理による問題点を示す図である。
【図８】第２実施例の文字切り出し工程の処理手順を示す図である。
【図９】第２実施例の極小値点補間データの作成処理フローチャートである。
【符号の説明】
【００９７】
１      画像処理装置
２      カメラ
３      モニタ
１３    画像処理部
６１    （行切り出しされた）画像
６２    波形データ（画素値積算評価値）
６２ｃ  補正波形データ
６３    区間最小値点
６３１  ブロック最小値点
６４    閾値
【図１】
2008097590.tif 000003
【図２】
2008097590.tif 000004
【図４】
2008097590.tif 000005
【図５】
2008097590.tif 000006
【図６】
2008097590.tif 000007
【図９】
2008097590.tif 000008
【図３】
2008097590.tif 000009
【図７】
2008097590.tif 000010
【図８】
2008097590.tif 000011