画像読み取り装置
【課題】
カラーセンサを備えるカメラを用いて高解像度のモノクロ画像を得ることのできる画像読み取り装置を提供する
【解決手段】
カラーセンサを備え、2次元バーコードが印字された領域を含む原稿を撮影して少なくとも3色の画素信号を出力することのできるカラーカメラ1と、前記各画素信号のそれぞれ何れかが属する画素のみの信号を用いて1画素カラー信号を生成するバーコード領域用画像処理部4と、前記各画素信号のそれぞれ何れかが属する画素の信号、および該画素の周囲の画素の信号を用いて1画素カラー信号を生成する非バーコード領域用画像処理部5と、バーコード領域用画像処理部および非バーコード領域用画像処理部の出力を切り換えて出力するセレクタ7を備えた。
カラーセンサを備えるカメラを用いて高解像度のモノクロ画像を得ることのできる画像読み取り装置を提供する
【解決手段】
カラーセンサを備え、2次元バーコードが印字された領域を含む原稿を撮影して少なくとも3色の画素信号を出力することのできるカラーカメラ1と、前記各画素信号のそれぞれ何れかが属する画素のみの信号を用いて1画素カラー信号を生成するバーコード領域用画像処理部4と、前記各画素信号のそれぞれ何れかが属する画素の信号、および該画素の周囲の画素の信号を用いて1画素カラー信号を生成する非バーコード領域用画像処理部5と、バーコード領域用画像処理部および非バーコード領域用画像処理部の出力を切り換えて出力するセレクタ7を備えた。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像読み取り装置に係り、特にカラーカメラを用いて高分解能の画像読み取りを行うことのできる画像読み取り装置に関する。
【背景技術】
【0002】
近年、画像入力装置の高画素化が進んでいる。特にデジタルカメラの高画素化は著しく、CCDセンサの画素数が1千万画素相当のものが製品化されている。現在、1千万画素クラスのデジタルカメラは数十万と高価であるが、さらなる高画素化に伴って安価になり、一般的に使用されるようになると考えられる。1千万画素クラスのデジタルカメラが普及すると撮影する対象が拡大し、今までのように風景や人物に留まらず、ドキュメントを撮影対象とするような使用方法も考えられる。
【0003】
カメラ付き携帯電話では、字句程度の大きさの画像を読取らせて文字認識する装置は既に存在する。また、市販ソフトの中には、デジタルカメラでドキュメントを読取った画像データに対して、デジタルカメラ用の画像補正を半自動で行い、文字認識してテキストや汎用ファイルを生成するものも存在する。
【0004】
例えば、A4サイズの、縦298mm、横210mmの原稿を300dpi(12画素/mm)で読取る場合、画素数は縦は298*12の3576画素、横は210*12の2520画素となり、全画素数は3576画素*2520画素で約900万画素程度必要となる。
【0005】
すなわち、1千万画素相当のデジタルカメラであれば、A4サイズの原稿を300dpiで読取ることが可能である。このように、字句やドキュメントの一部分だけでなくA4サイズの原稿の全てを300dpiの高解像度で読取ること可能であれば、フラットベットスキャナに置き換えることのできるデジタルカメラやカメラ付き携帯電話が出現することになる。また、300dpiの解像度で文字等を読むことができるとOCRアプリケーションに用いるデータとしても充分に使用できる。
【0006】
一方、近年ではバーコードの利用が進んでおり、特にコンビニエンス・ストア等のPOSシステム等に使用されるようになってから急速に各方面に普及した。特に、最近では、より多くの情報を収納し、また、より小さなスペースに印字したい等のニーズに対応するために二次元コードが開発されて、普及が拡大しつつある。
【0007】
バーコードを読み取る入力機器としては、通常、バーコード読取り専用のモノクロセンサを使用する。その理由としては、安価でかつ高解像度が得られ、バーコード認識で高い認識を得ることができるためである。このセンサではカラー画像を取得することはできないがカラー画像を必要としないのであれば問題はない。しかし、今後はカラー画像を取得することもできるようにするため、バーコード読み取りにもカラーセンサを用いることが望ましい。
【0008】
近年では、通常はカラーセンサを用いた普通のカラーカメラとして使用し、付加的にバーコードを読み取るというようなニーズが出始めている。例えば、携帯電話に搭載されているカラーカメラで、バーコードを読み取るような利用法が出現している。
【0009】
カラーセンサを用いたバーコード読取装置としては特許文献1が知られている。この装置では、バーコード読取に際して、該バーコードを何回も読取って加重平均を行うことによりノイズを低減して、認識率を向上している。また、特許文献2には、写真モード及びQRコード(2次元コード)読取モードを選択設定し、設定したモードに応じた処理がなされる情報提供サービス装置が開示されている。また、特許文献3には、1次元コードはラインCCDで処理し、2次元コードはエリアCCDで処理することによりコードリーダの読取り精度を高めることが示されている。
【特許文献1】特開2003−203198号公報
【特許文献2】特開2002−111909号公報
【特許文献3】特開平9−259215号公報
【発明の開示】
【発明が解決しようとする課題】
【0010】
前述のようなカラーセンサを用いた読み取り装置は、使用するカラーセンサの画素数が少なく、また、単板式のカラーセンサであるため解像度が低く、このため認識率が低い。しかしながら、前述のように1つのコードを連続的に何回も読み取ることにより認識率の低下をカバーすることができる。このように現状では、1回の読取りのみで1つの二次元コードを良好に認識できるレベルに達していない。
【0011】
しかしながら、今後は二次元コードの普及に伴い、一度に複数の二次元コードを読む必要性が出現する可能性がある。例えば、A4サイズの大きさの紙に表示された複数の二次元コードを一度に読取ったり、カラー画像や文字と一緒に二次元コードが記載されている読み物を同時に読取って、カラー画像と二次元コードを共に良好に認識するようなニーズが出現する可能性がある。また、カラーのバーコードが普及する可能性もある。いずれにしても、カラーセンサを用いた画像読取りの高解像度化は必須になると思われる。
【0012】
ところで、前述したような、1つのコードを連続的に何回か読み取って加重平均を取ることにより認識率の低下をカバーする方法は、必然的に読取る回数分の読取り時間が必要になる。稀にしかバーコードを読み取らないユーザのみを対象とするのであれば問題はないが、頻繁に利用するユーザの場合は読取り時間は大きな問題となる。また、1次元コードと2次元コードを読むためにラインCCDとエリアCCDの2つのセンサを備えるのはコストがかかる。例えばエリアCCDで1次元コードも2次元コード読めればそれに越したことはない。この場合、エリアセンサを用いた際の解像度向上が課題となる。
【0013】
単板式のカラーカメラでは各画素はRGBのカラーフィルタのいずれか1色に対応している。例えば、1画素の輝度Yは、RGB各画素の輝度情報R,G,Bとすると、Y=0.299*R+0.587*G+0.114*Bの式で求めることができる。
【0014】
しかし、単板センサは、1画素については1色の輝度情報しか有さない。このため、周囲の画素(RGB)の輝度情報を用いることになる。このため、輝度Yに変換する際に平滑化処理が行われてしまうことになる。この結果、画像の分解能あるいは画素間の画像情報の差が小さくなり、認識率が低下する。
【0015】
また、カラー画像を取得する際には1画素につき、RGBの各輝度情報が必要であるが、各画素ともRGBのカラーフィルタのいずれか1色しかないので、他の色の情報は周囲の必要な色のカラーフィルタを有する画素の情報を用いて求めて代用するしかない。つまり、本来の画素位置に対応したRGBのカラー信号ではなく、その画素位置からずれている周囲の異なる色の画素の情報を参照して求めている。このため分解能は劣化してしまう。
【0016】
ところで、現在、普及しているバーコードの色は黒である。色が付いたカラーのバーコードは見かけない。従って、バーコードの色は黒であると限定できると仮定すると、画像の分解能もしくは画素間の画像情報の差を小さくすることなく輝度値に変換できる。
【0017】
例えば、一般的にカメラはホワイトバランス及びグレーバランス処理を行い、無彩色に対して同じ出力が出るように各色の画素、つまり、図13に示すセンサの色配列の場合、Rフィルタの画素、Grフィルタの画素、Gbフィルタの画素、Bフィルタの各画素に対応する出力を調整している。
【0018】
白黒の間のグレー領域は無彩色であるから、それぞれのカラーフィルタの色に関係なく同じ出力になる。つまり、各画素の輝度値が同一(R=G=B)であれば輝度Y=0.299*R+0.587*G+0.114*Bは、Y=R、Y=G、Y=Bとなる。すなわち、各画素の輝度値をその画素の輝度値として考えることができる。
【0019】
すなわち、従来においては、輝度値を生成しようとする1画素の周囲にあるRフィルタの画素、Grフィルタの画素、Gbフィルタの画素、及びBフィルタの画素を用いて前記1画素の輝度値を生成していた。しかし前述のようにモノクロ画像に限れば、輝度値に変換する際、輝度値を生成する画素位置の周囲画素を参照することなく、その画素位置のみの画素情報(輝度情報)を使用してその画素位置に対応した輝度値を求めることができる。
【0020】
すなわち、画像の分解能もしくは画素間の画像情報の差を小さくすることなく輝度値に変換することができ、認識率の低下を抑えることが可能になる。すなわち、グレー領域においてはカラーセンサを使用しても画像の分解能が高く、画素間の画素情報の差を損なうことなくモノクロセンサ並みの画質を実現できることが分かる。
【0021】
なお、このとき、レンズに色収差があるとグレー領域を読取る際、グレー領域の縁に赤色や青色の光が入射することになる。このような場合には、単にRフィルタの画素、Grフィルタの画素、Gbフィルタの画素、及びBフィルタの各画素から1画素の輝度値を生成するのみでは、前記色によって値が変動しノイズになってしまう。色収差の少ないレンズは高価であるため、色収差ある安価なレンズを利用可能にすることは大きなメリットとなる。このためには色収差のある光学系で読取った画像についてノイズを軽減するノイズ除去処理が必要となる。
【0022】
本発明は、これらの知見に基づいてなされたもので、カラーセンサを備えるカメラを用いて高解像度のモノクロ画像を得ることのできる画像読み取り装置を提供するものである。
【課題を解決するための手段】
【0023】
本発明は上記課題を解決するため、次のような手段を採用した。
【0024】
カラーセンサを備え、2次元バーコードが印字された領域を含む原稿を撮影して少なくとも3色の画素信号を出力することのできるカラーカメラと、前記各画素信号のそれぞれ何れかが属する画素のみの信号を用いて1画素カラー信号を生成するバーコード領域用画像処理部と、前記各画素信号のそれぞれ何れかが属する画素の信号、および該画素の周囲の画素の信号を用いて1画素カラー信号を生成する非バーコード領域用画像処理部と、バーコード領域用画像処理部および非バーコード領域用画像処理部の出力を切り換えて出力するセレクタを備えた。
【発明の効果】
【0025】
本発明は、以上の構成を備えるため、カラーセンサを備えるカメラを用いて高解像度のモノクロ画像を得ることのできる画像読み取り装置を提供することができる。
【発明を実施するための最良の形態】
【0026】
以下、最良の実施形態を添付図面を参照しながら説明する。図1は、本発明の実施形態に係る画像読み取り装置を説明する図である。図1において、画像読み取り装置は、カメラヘッド11、カメラヘッドを固定する支柱12、撮像対象を置く原稿台13を備えたカメラ部1、及びカメラ部1で撮像した画像を処理する画像処理部2とで構成されている。カメラヘッド11は単板式のカラーセンサを備えている。また、カメラヘッド11の撮像方向は下向きであり、原稿台13に載置した原稿14を読取ることができる。原稿14はカラー画像領域15あるいはバーコードが印字されたバーコード領域16などが配置されている。
【0027】
画像処理部2は、カメラ部1のカラーセンサで前記原稿を読み取った画像信号を記憶部3に格納する。次いで格納した画像信号を読み出し、バーコード領域判定部6で、前記読み取った部分が、前記原稿を読み取った画像内のバーコード領域であるか否かを判定する。
【0028】
ここでは、予め前記画像内の領域のバーコード領域と判定した結果を判定データとして記憶しておく。そして再度、記憶部3に格納した画像信号をバーコード領域用画像処理部4及び非バーコード領域用画像処理部5により読み出して処理を施す。セレクタ7は、前記判定データに基づいて前記処理を施した2系列の出力信号を選択して1枚の画像信号として出力する。
【0029】
ここでは、予め画像内の領域のうちバーコード領域と判定した判定データを用いて、再度読み直した。しかし、バーコードの領域が既知である場合は、記憶部3に格納した画像信号再度読み出しすることなく、カメラ部1から取得した画像信号を、バーコード領域用画像処理部4及び非バーコード領域用画像処理部5により読み出して処理を施し、セレクタ7は、前記判定データに基づいて前記処理を施した2系列の出力選択して1枚の画像信号として出力するようにしてもよい。
【0030】
また、バーコード領域の判定のために画像を予め読取る際には、画像を間引いて読み出してバーコード領域を判定することもできる。そうすることにより処理時間を短縮することができる。例えば、高解像度化のために「画素ずらし」読取りを行う読み取り装置においては、低解像度で画像を複数回読み取って1枚の高解像度画像を得ているが、例えば、複数回読取る間の1枚の低解像度画像からバーコード領域を判定することができる。この場合は、カラー信号もしくは輝度(グレースケール)信号を生成するに必要な複数毎の画像が揃うまでにバーコード領域であるか否かの判定を終了させることができる。
【0031】
図1において、カメラヘッド11を構成するカラーセンサで読取った画像データはバーコード領域画像処理部4と非バーコード領域画像処理部5とバーコード領域判定部6に入力される。バーコード領域判定部6では画像データ内のバーコード領域を検出し、あるいは予めバーコード領域に対応するデータを設定し記憶しておく。
【0032】
カラー画像を得る際は、カラーセンサから得た1画素分のRのカラーフィルタ画素信号、Gのカラーフィルタ画素信号、およびBのカラーフィルタ画素信号から、1画素R,G,Bのカラー信号に変換する。この際は、後述するようにバーコード領域画像処理部4では処理対象のR,G,Bのカラーフィルタの1色の画像信号から1画素R,G,Bのカラー信号を生成する。この場合、RGBが同位置の画像信号から生成されるので、画素間の信号の差が大きく、画像の分解能が向上する。しかし、カラー画像などでは色の再現が正常でなくなる。
【0033】
非バーコード領域画像処理部5では、後述するように、処理画素に対応したカラーフィルタ画素信号だけでなく、周囲のカラーフィルタ画素信号の情報を参照して、1画素R,G,Bを生成する。このため画像の分解能は劣化するが、正常な色を再現できる。
【0034】
これら2つの出力をバーコード領域判定部6の判定信号により操作されるセレクタ7により切り換えて1枚のカラー画像として出力する。なお、グレー画像を得る際、カラーセンサから得た1画素分のRのカラーフィルタ画素信号、Gのカラーフィルタ画素信号、あるいはBのカラーフィルタ画素信号から輝度信号に変換するが、その際バーコード領域画像処理手段では処理対象のR,G,Bのカラーフィルタのいずれか1色の画像信号から輝度信号を生成する。すなわち同位置の画像信号のみで生成されるので、画素間の信号の差が大きく、画像の分解能が向上している。しかし、読取った画像がカラー画像の場合は、見た目の明暗の再現が正常でなくなる。
【0035】
また、非バーコード領域画像処理部5では処理画素に対応したカラーフィルタ画素信号だけでなく、周囲のカラーフィルタ画素信号の情報を参照して、輝度信号を生成する。そのため、画像の分解能が劣化するが、正常な明暗の再現ができる。この2つの出力をバーコード領域判定部により切り替えて出力して1枚のカラー画像を合成する。
【0036】
このため、カラー画像を取得することができるとともに、グレー領域においてはモノクロセンサ読み取り並みの分解能を持つグレー画像を取得できる。よって、バーコードの認識率もモノクロセンサ並みに向上し、良好なバーコード認識が可能となる。
【0037】
図2は、バーコード領域用画像処理部4の詳細を説明する図である。バーコード領域用画像処理部4は、図1に示す記憶部3から読み出した画像信号を用いて輝度(グレースケール)信号あるいはRGBカラー信号を生成する。いずれの信号を生成するかはユーザーが設定する設定信号aによってセレクタ41で切り換えることとする。
【0038】
グレースケール信号を得る場合は記憶部3から読み出した画像信号を選択し、カラー画像を取得する場合はRGBカラー生成部42の出力を選択する。
【0039】
記憶部3に格納しているカラーセンサの画像信号はRGBのいずれかのカラーフィルタに対応している。ここで、赤のカラーフィルタに対応する画素信号をR、緑のカラーフィルタに対応する画素信号をG、青のカラーフィルタに対応する画素信号をBとする。読取る画像に彩度がなく、グレーの場合は図12(a)のようにRとGとBは同じ出力なる。
【0040】
RとGとBは同じ出力とならない場合は、グレーの画像を読取つてもグレーにならず、例えば図12(b)のようにRがGやBに比べて高いと赤みがかった画像になり、Bが高いと青みがかった画像になる。ここでは、カメラの調整が完了しグレーを読取った際のRGBが一致してバランスがとれてることを前提とする。なお、前記調整処理も含めて考える場合には、グレーのRGBのバランスを調整するグレーバランス処理部を、記憶部3の前段あるいは後段に挿入するとよい。この調整処理は、例えば、前記原稿の読取り前に、予めグレー画像を読取り、RGBの出力特性を求め、求めた出力特性からRGBとも同じ値になる変換式、あるいは変換値をRGBそれぞれ求めて変換テーブルに格納しておき、読み取り時にテーブル変換して出力するとよい。
【0041】
図3は、バーコード領域用画像処理部4の処理を説明する図である。前述のようにグレーのRGBのバランスがとれていれば、バーコード領域用画像処理部4では図3(a)に示すように1画素毎の輝度情報を求める際、Y=R,Y=G,Y=Bとして、1画素を1画素の輝度値に変換する。
【0042】
また、RGBカラー生成部42では、カラーフィルタ色にかかわらず、図3(b)のようにその位置の1画素の画素情報をそのままRGBの情報として変換する。
【0043】
例えば、Rフィルタ画素の画素情報がRであるとすると生成するRGBはR=R,G=R,B=Rとし、Gフィルタ画素の画素情報がGであるとするとR=G,G=G,B=Gとし、Bフィルタ画素の画素情報がBであるとするとR=B,G=B,B=Bとして出力する。
【0044】
このように、グレースケール信号を生成する場合も、RGBのカラー信号を生成する場合も、周囲画素を参照することなく、従って画像の分解能あるいは画素間の画像情報の差を小さくすることなく変換できる。
【0045】
図4は、非バーコード領域用画像処理部5の処理を説明する図である。非バーコード領域用画像処理部5は、グレースケール信号を生成する場合も、RGBのカラー信号を生成する場合も周囲のカラーフィルタの画像信号を参照する。これは一般的な方法であるが、図4を用いて簡単に説明する。
【0046】
非バーコード領域用画像処理部5は、輝度信号に変換する際、Y=0.299*R+0.587*G+0.114*Bから輝度信号を求める。このとき、1画素では1色の情報しかないので、図4(a)のように例えば左上の輝度信号Yを求める場合、左上のRフィルタの画像信号Rと、横のGフィルタの画像信号G1’と、Rフィルタの下のGフィルタの画像信号G2’と、その横のBフィルタの画像信号Bの4画素を使用し1画素の輝度信号を求める。この縦横2*2の画素サイズにはR,G,Bの情報がある。なお、GはG1’とG2’の2画素分あるので2画素の平均値をGとし、このR,G,Bから、Y=0.299*R+0.587*G+0.114*Bの式で輝度値Yを求める。
【0047】
また、RGBカラー信号を取得する際も、図4(b)のように周囲のRGBの情報を含む4画素を用いて1画素RGBに変換する。この変換は、輝度値を求める場合と同様に縦横2*2の画素サイズ内にあるR,G,Bを用いて、例えば、Rは縦横2*2の画素サイズ内にあるRをそのままRとし、Gは縦横2*2の画素サイズ内にG1’G2’の2画素あるのでその平均値をGとし、Bは縦横2*2の画素サイズ内にあるBをそのままBとし生成する。
【0048】
なお、RGBカラー信号を取得する際に使用する画素は4画素以上とすることができる。非バーコード領域用画素生成部5は、グレースケール信号を生成する際もカラー信号を生成する際も、画像の分解能は4画素から生成しているため悪くなるが、明暗や色の再現性には問題はない。
【0049】
図5はバーコードの例を説明する図である。例えば2次元バーコードであるQRコードの場合は図5に示すように切出しシンボル(A,B,C)が3箇所あり、そこに囲まれる領域がQRコードの領域となる。そのため、QRコードの場合はパターンマッチングでこの切出しシンボルを検出すれば、2次元コード領域判定が可能となる。
【0050】
図6は、バーコード領域判定部6の処理を説明する図である。記憶部3から読み出した画像信号について、切出しシンボルをテンプレートとしてパターンマッチング部61で正規化相関を使用してパターンマッチングを行い、切出しシンボルを検出していく。画像1枚分を検出処理した後で、求めた正規化相関値の高いx,yの座標を求めて、切出しシンボルの座標点(x,y)とする。その座標点に囲まれた領域を判定部62でバーコード領域として求める。
【0051】
例えば、図5のように求めた切出しシンボルの座標点A,B,Cを、A(50,10),B(10,10),C(10.50)とした場合、バーコード領域の座標は、X方向が10画素目から50画素目までで、Y方向が10画素目から50画素目までの範囲となる。 そして、例えば、バーコード領域を“1“、非バーコード領域を”0“として、各画素に対応した判定結果をバーコード領域記憶部63に記憶する。ここではバーコードを傾けずに定位置に置いた読取りを想定しているが、回転や歪みのある場合もある。この場合には回転や歪みに対応する処理が必要となる。また、バーコード領域が複数ある場合には、判定部62は前記3つの切出しシンボル毎にグループ分けていく必要がある。この際には、例えば切出しシンボル間の距離情報を求めて、この距離情報を基にグループ分けするとよい。
【0052】
例えば切出しシンボルを図5のようにA,B,Cとした場合、切出しシンボルは正方形であるから、AB:BC:CAは1:1:√2になる。そのためABの距離を1としたときBCが1に近く、CAが√2に近い関係にあるような切出しシンボルを求めてグループ化し、各グループのそれぞれ3つの切出しシンボルに囲まれた範囲をバーコード領域として判定することにより対応できる。
【0053】
また、バーコードはバー及びセルから構成されるため、その領域は画像信号の空間周波数が高い。そのため、空間周波数が高い箇所をバーコード領域と判定してもよい。また、バーコードは黒であり彩度が少ないグレーの領域であるとして、R,G,Bの画像信号の差が少ない領域をバーコード領域と判定してもよい。ただし、このとき白は除くことも考えられる。
【0054】
また、バー領域の形状が既知であれば、その情報を使用して検出することもできる。また、切出しシンボルの種類が複数ある場合は、テンプレートを複数個備えて、マッチングを複数回繰り返して検出することができる。また、まずは大まかにバーコードらしい箇所を見つけて、セルの大きさを検出して、セルの大きさから切出しシンボルの大きさを推測し、テンプレートを絞り込むことも考えられる。
【0055】
前述のように、フォーマットが決まっていてバーコードの領域が予め既知の情報であればこの既知の情報に基づいて領域を判定することができる。例えば、バーコード領域が100ライン目から500ライン目と予め判っていれば、画像信号を必要とせず、画像を読み出すタイミングだけを使用して、現在の画像信号が何ライン目であるかが判る。このため、この情報を用いてバーコード領域を判定することができる。
【0056】
このようにしてバーコード領域と判定した領域については、バーコード領域用画像処理部4の出力を選択し、周囲画素を参照せず、従って画像の分解能あるいは画素間の画像情報の差を小さくせずに前述のように画像変換する。これにより、モノクロセンサ読取り並みの解像度のグレー画像を取得することができる。よって、バーコードの認識率もモノクロセンサ並みに向上し、良好なバーコード認識が可能となる。
【0057】
非バーコード領域と判定した領域については非バーコード領域用画像処理部5の出力を選択し、カラー画像等は明暗や色の再現性を損なうことなく良好なカラー画像を取得できる。つまり、良好なカラー画像の取得と高精細なバーコード画像の取得を両立することが可能になる。
【0058】
ここで、前述のようにレンズに色収差があるとグレー領域の縁に偽色が発生する。輝度値に変換にする際に色が発生するとその部分はノイズとなる可能性がある。従来のように周囲のR信号、G信号、B信号から求める場合には平均化されてノイズは小さいが、本実施形態のようにR信号、G信号、B信号をそのまま輝度値Yとする場合は影響が大きい。このため、画質劣化やバーコード認識の認識率が劣化することが考えられる。
【0059】
図7,8は、形状補正フィルタを説明する図である。この形状補正フィルタは、例えば色収差が数画素に渡ることはないこと、及び前記とは逆に文字あるいは2次元バーコードを構成する点やセルは数画素以上に渡るものであることを前提にセルの形状に対して補正を行うフィルタである。
【0060】
図7に示すように、形状補正フィルタ43はセレクタ41の後段に接続する。形状補正フィルタ43は、前述のように、2次元バーコードを構成する点やセルの大きさあるいは形状を補正するフィルタである。
【0061】
形状補正フィルタ43は、例えば、図8に示すように、1セルの大きさを縦横3画素の四角形であるとする。この場合には、前記ノイズにより角がボケやすく四角形が円あるいは台形等のいびつな形に見えたりする。しかし、もとの形は縦横3画素以下にならないことが分かっていれば、縦横3画素に近づくように補正することが可能となる。
【0062】
このため、形状補正フィルタは、図8に示すように2次元コードのセルを読取った際に、1セルの縦横の画素数より大きなフィルタサイズとし、フィルタ中心に1セルの縦横の中心に対応させたときに1セルの内側に対応する位置にプラスの重みがあり、その外側に対応する位置に負の重み係数を設けている。ここでは1セルを縦横3画素としているのでフィルタサイズは縦横3画素より大きくする必要がある。しかし、あまり大きくてもハード量、あるいはソフト処理量が多くなるため、フィルタサイズは縦横5画素としている。
【0063】
この例の場合は、1セルの大きさに対応した中央の縦横3画素の重みをプラスの重みとした。四角の角はボヤケやすく輝度値として大きくなってしまうので見ていない(重みを0としている)が、重みを付与してもよい。なお、前記四形の角の形状を補正するたには角のボケを補正する必要があるため、ここでは、角の縦横外側に隣接する画素にマイナスの重みを掛けている。重みはどの程度強調するか、また光学系によっても変わるのでここでは1例を示したがこれにこだわる必要はない。また、重みの位置も同様にこだわる必要はない。
【0064】
このように1セルの大きさ及び形状を利用してノイズを除去し形状を補正する形状補正フィルタ43を設けることにより、レンズの色収差によりノイズが発生する場合でも、良好な画質を得ることが可能になり、バーコードの認識率を向上させることができる。
【0065】
図9は、ユーザが設定する切替スイッチによりバーコード領域判定部6からの出力を無効にし、画像処理部の出力をユーザが指示する領域用画像処理部の出力に固定する例を説明する図である。
前述の例では、バーコード領域判定部6によりバーコード領域用画像処理部4と非バーコード領域用画像処理部5の出力を切り替えているが、図9に示すようにユーザが設定する切替スイッチによりバーコード領域判定部6からの出力を切替スイッチ9で無効にし、ユーザが指示する領域用画像処理部の出力に固定することができる。
【0066】
図11は、前記切替えスイッチ9の構成を説明する図である。図において、バーコード領域判定部6の出力信号b、ユーザが設定するユーザ設定スイッチ8から設定信号を信号cおよび信号dとする。信号cが“1”の場合、バーコード領域判定部6の出力信号bがそのまま切替スイッチ9の出力信号eとなる。また、信号cが“0”の場合、バーコード領域判定部6の出力信号bは無効になり、信号dの設定値がそのまま切替スイッチ9の出力信号eとなる。
【0067】
ここでは切替スイッチをハードウエハにより構成したが、ソフトウエア処理で行ってもよい。その場合はGUI画面に、例えばバーコード領域用画像処理部4と非バーコード領域用画像処理部5の出力、バーコード領域判定部6の出力、ユーザ設定スイッチの設定信号等を表示させてユーザーに選択させるとよい。
【0068】
図10は、ユーザ設定スイッチ8の設定信号によりバーコード領域用画像処理部4と非バーコード領域用画像処理部5の出力を切替える例を説明する図である。この例の場合、1枚の画像領域内で切り替わることがないようにしてもよい。この切替処理はハードウエアの処理で実現してもよいし、ソフトウエア処理で実現してもよい。
【0069】
また、以上の説明では、画像処理部2をカメラ部1の外部に配置したが、カメラ部1内に納めることもできる。この場合は、例えばカメラヘッド11に画像処理部2を格納することができる。
【0070】
また、以上ではカラーセンサとして、単板式カラーセンサを用いる例について説明したが、画像をずらす等の処理を施して、本来の位置でR,G,Bの画素信号が得られない三板式のカラーセンサあるいはラインセンサに対しても適用することができる。
【0071】
以上説明したように、本実施形態によれば、カラーセンサを用いたバーコード読取りにおいて、バーコード領域ではモノクロセンサでの読取りと同等の高分解能のバーコード画像取得が可能となり、バーコードの認識率向上に寄与できる。また、カラー画像領域においても良好なカラー画像を取得できる。
【図面の簡単な説明】
【0072】
【図1】本発明の実施形態に係る画像読み取り装置を説明する図である。
【図2】バーコード領域用画像処理部4の詳細を説明する図である。
【図3】バーコード領域用画像処理部4の処理を説明する図である。
【図4】非バーコード領域用画像処理部5の処理を説明する図である。
【図5】バーコードの例を説明する図である。
【図6】バーコード領域判定部6の処理を説明する図である。
【図7】形状補正フィルタを説明する図である。
【図8】形状補正フィルタを説明する図である。
【図9】ユーザが設定する切替スイッチによる切替を説明する図である。
【図10】ユーザ設定スイッチ8の設定信号による切替を説明する図である。
【図11】切替えスイッチ9の構成を説明する図である。
【図12】グレーバランスを説明する図である。
【図13】センサの色配列を説明する図である。
【符号の説明】
【0073】
1 カメラ部
2 画像処理部
3 記憶部
4 バーコード領域用画像処理部
5 非バーコード領域用画像処理部
6 バーコード領域判定部
7 セレクタ
8 ユーザー設定スイッチ
9 切替スイッチ
ll カメラヘッド
12 支柱
13 原稿台
14 原稿
15 カラー画像領域
16 バーコード領域
41 セレクタ
42 RGBカラー生成部
43 形状補正フィルタ
61 パターンマッチング部
62 判定部
63 バーコード領域記憶部
【技術分野】
【0001】
本発明は、画像読み取り装置に係り、特にカラーカメラを用いて高分解能の画像読み取りを行うことのできる画像読み取り装置に関する。
【背景技術】
【0002】
近年、画像入力装置の高画素化が進んでいる。特にデジタルカメラの高画素化は著しく、CCDセンサの画素数が1千万画素相当のものが製品化されている。現在、1千万画素クラスのデジタルカメラは数十万と高価であるが、さらなる高画素化に伴って安価になり、一般的に使用されるようになると考えられる。1千万画素クラスのデジタルカメラが普及すると撮影する対象が拡大し、今までのように風景や人物に留まらず、ドキュメントを撮影対象とするような使用方法も考えられる。
【0003】
カメラ付き携帯電話では、字句程度の大きさの画像を読取らせて文字認識する装置は既に存在する。また、市販ソフトの中には、デジタルカメラでドキュメントを読取った画像データに対して、デジタルカメラ用の画像補正を半自動で行い、文字認識してテキストや汎用ファイルを生成するものも存在する。
【0004】
例えば、A4サイズの、縦298mm、横210mmの原稿を300dpi(12画素/mm)で読取る場合、画素数は縦は298*12の3576画素、横は210*12の2520画素となり、全画素数は3576画素*2520画素で約900万画素程度必要となる。
【0005】
すなわち、1千万画素相当のデジタルカメラであれば、A4サイズの原稿を300dpiで読取ることが可能である。このように、字句やドキュメントの一部分だけでなくA4サイズの原稿の全てを300dpiの高解像度で読取ること可能であれば、フラットベットスキャナに置き換えることのできるデジタルカメラやカメラ付き携帯電話が出現することになる。また、300dpiの解像度で文字等を読むことができるとOCRアプリケーションに用いるデータとしても充分に使用できる。
【0006】
一方、近年ではバーコードの利用が進んでおり、特にコンビニエンス・ストア等のPOSシステム等に使用されるようになってから急速に各方面に普及した。特に、最近では、より多くの情報を収納し、また、より小さなスペースに印字したい等のニーズに対応するために二次元コードが開発されて、普及が拡大しつつある。
【0007】
バーコードを読み取る入力機器としては、通常、バーコード読取り専用のモノクロセンサを使用する。その理由としては、安価でかつ高解像度が得られ、バーコード認識で高い認識を得ることができるためである。このセンサではカラー画像を取得することはできないがカラー画像を必要としないのであれば問題はない。しかし、今後はカラー画像を取得することもできるようにするため、バーコード読み取りにもカラーセンサを用いることが望ましい。
【0008】
近年では、通常はカラーセンサを用いた普通のカラーカメラとして使用し、付加的にバーコードを読み取るというようなニーズが出始めている。例えば、携帯電話に搭載されているカラーカメラで、バーコードを読み取るような利用法が出現している。
【0009】
カラーセンサを用いたバーコード読取装置としては特許文献1が知られている。この装置では、バーコード読取に際して、該バーコードを何回も読取って加重平均を行うことによりノイズを低減して、認識率を向上している。また、特許文献2には、写真モード及びQRコード(2次元コード)読取モードを選択設定し、設定したモードに応じた処理がなされる情報提供サービス装置が開示されている。また、特許文献3には、1次元コードはラインCCDで処理し、2次元コードはエリアCCDで処理することによりコードリーダの読取り精度を高めることが示されている。
【特許文献1】特開2003−203198号公報
【特許文献2】特開2002−111909号公報
【特許文献3】特開平9−259215号公報
【発明の開示】
【発明が解決しようとする課題】
【0010】
前述のようなカラーセンサを用いた読み取り装置は、使用するカラーセンサの画素数が少なく、また、単板式のカラーセンサであるため解像度が低く、このため認識率が低い。しかしながら、前述のように1つのコードを連続的に何回も読み取ることにより認識率の低下をカバーすることができる。このように現状では、1回の読取りのみで1つの二次元コードを良好に認識できるレベルに達していない。
【0011】
しかしながら、今後は二次元コードの普及に伴い、一度に複数の二次元コードを読む必要性が出現する可能性がある。例えば、A4サイズの大きさの紙に表示された複数の二次元コードを一度に読取ったり、カラー画像や文字と一緒に二次元コードが記載されている読み物を同時に読取って、カラー画像と二次元コードを共に良好に認識するようなニーズが出現する可能性がある。また、カラーのバーコードが普及する可能性もある。いずれにしても、カラーセンサを用いた画像読取りの高解像度化は必須になると思われる。
【0012】
ところで、前述したような、1つのコードを連続的に何回か読み取って加重平均を取ることにより認識率の低下をカバーする方法は、必然的に読取る回数分の読取り時間が必要になる。稀にしかバーコードを読み取らないユーザのみを対象とするのであれば問題はないが、頻繁に利用するユーザの場合は読取り時間は大きな問題となる。また、1次元コードと2次元コードを読むためにラインCCDとエリアCCDの2つのセンサを備えるのはコストがかかる。例えばエリアCCDで1次元コードも2次元コード読めればそれに越したことはない。この場合、エリアセンサを用いた際の解像度向上が課題となる。
【0013】
単板式のカラーカメラでは各画素はRGBのカラーフィルタのいずれか1色に対応している。例えば、1画素の輝度Yは、RGB各画素の輝度情報R,G,Bとすると、Y=0.299*R+0.587*G+0.114*Bの式で求めることができる。
【0014】
しかし、単板センサは、1画素については1色の輝度情報しか有さない。このため、周囲の画素(RGB)の輝度情報を用いることになる。このため、輝度Yに変換する際に平滑化処理が行われてしまうことになる。この結果、画像の分解能あるいは画素間の画像情報の差が小さくなり、認識率が低下する。
【0015】
また、カラー画像を取得する際には1画素につき、RGBの各輝度情報が必要であるが、各画素ともRGBのカラーフィルタのいずれか1色しかないので、他の色の情報は周囲の必要な色のカラーフィルタを有する画素の情報を用いて求めて代用するしかない。つまり、本来の画素位置に対応したRGBのカラー信号ではなく、その画素位置からずれている周囲の異なる色の画素の情報を参照して求めている。このため分解能は劣化してしまう。
【0016】
ところで、現在、普及しているバーコードの色は黒である。色が付いたカラーのバーコードは見かけない。従って、バーコードの色は黒であると限定できると仮定すると、画像の分解能もしくは画素間の画像情報の差を小さくすることなく輝度値に変換できる。
【0017】
例えば、一般的にカメラはホワイトバランス及びグレーバランス処理を行い、無彩色に対して同じ出力が出るように各色の画素、つまり、図13に示すセンサの色配列の場合、Rフィルタの画素、Grフィルタの画素、Gbフィルタの画素、Bフィルタの各画素に対応する出力を調整している。
【0018】
白黒の間のグレー領域は無彩色であるから、それぞれのカラーフィルタの色に関係なく同じ出力になる。つまり、各画素の輝度値が同一(R=G=B)であれば輝度Y=0.299*R+0.587*G+0.114*Bは、Y=R、Y=G、Y=Bとなる。すなわち、各画素の輝度値をその画素の輝度値として考えることができる。
【0019】
すなわち、従来においては、輝度値を生成しようとする1画素の周囲にあるRフィルタの画素、Grフィルタの画素、Gbフィルタの画素、及びBフィルタの画素を用いて前記1画素の輝度値を生成していた。しかし前述のようにモノクロ画像に限れば、輝度値に変換する際、輝度値を生成する画素位置の周囲画素を参照することなく、その画素位置のみの画素情報(輝度情報)を使用してその画素位置に対応した輝度値を求めることができる。
【0020】
すなわち、画像の分解能もしくは画素間の画像情報の差を小さくすることなく輝度値に変換することができ、認識率の低下を抑えることが可能になる。すなわち、グレー領域においてはカラーセンサを使用しても画像の分解能が高く、画素間の画素情報の差を損なうことなくモノクロセンサ並みの画質を実現できることが分かる。
【0021】
なお、このとき、レンズに色収差があるとグレー領域を読取る際、グレー領域の縁に赤色や青色の光が入射することになる。このような場合には、単にRフィルタの画素、Grフィルタの画素、Gbフィルタの画素、及びBフィルタの各画素から1画素の輝度値を生成するのみでは、前記色によって値が変動しノイズになってしまう。色収差の少ないレンズは高価であるため、色収差ある安価なレンズを利用可能にすることは大きなメリットとなる。このためには色収差のある光学系で読取った画像についてノイズを軽減するノイズ除去処理が必要となる。
【0022】
本発明は、これらの知見に基づいてなされたもので、カラーセンサを備えるカメラを用いて高解像度のモノクロ画像を得ることのできる画像読み取り装置を提供するものである。
【課題を解決するための手段】
【0023】
本発明は上記課題を解決するため、次のような手段を採用した。
【0024】
カラーセンサを備え、2次元バーコードが印字された領域を含む原稿を撮影して少なくとも3色の画素信号を出力することのできるカラーカメラと、前記各画素信号のそれぞれ何れかが属する画素のみの信号を用いて1画素カラー信号を生成するバーコード領域用画像処理部と、前記各画素信号のそれぞれ何れかが属する画素の信号、および該画素の周囲の画素の信号を用いて1画素カラー信号を生成する非バーコード領域用画像処理部と、バーコード領域用画像処理部および非バーコード領域用画像処理部の出力を切り換えて出力するセレクタを備えた。
【発明の効果】
【0025】
本発明は、以上の構成を備えるため、カラーセンサを備えるカメラを用いて高解像度のモノクロ画像を得ることのできる画像読み取り装置を提供することができる。
【発明を実施するための最良の形態】
【0026】
以下、最良の実施形態を添付図面を参照しながら説明する。図1は、本発明の実施形態に係る画像読み取り装置を説明する図である。図1において、画像読み取り装置は、カメラヘッド11、カメラヘッドを固定する支柱12、撮像対象を置く原稿台13を備えたカメラ部1、及びカメラ部1で撮像した画像を処理する画像処理部2とで構成されている。カメラヘッド11は単板式のカラーセンサを備えている。また、カメラヘッド11の撮像方向は下向きであり、原稿台13に載置した原稿14を読取ることができる。原稿14はカラー画像領域15あるいはバーコードが印字されたバーコード領域16などが配置されている。
【0027】
画像処理部2は、カメラ部1のカラーセンサで前記原稿を読み取った画像信号を記憶部3に格納する。次いで格納した画像信号を読み出し、バーコード領域判定部6で、前記読み取った部分が、前記原稿を読み取った画像内のバーコード領域であるか否かを判定する。
【0028】
ここでは、予め前記画像内の領域のバーコード領域と判定した結果を判定データとして記憶しておく。そして再度、記憶部3に格納した画像信号をバーコード領域用画像処理部4及び非バーコード領域用画像処理部5により読み出して処理を施す。セレクタ7は、前記判定データに基づいて前記処理を施した2系列の出力信号を選択して1枚の画像信号として出力する。
【0029】
ここでは、予め画像内の領域のうちバーコード領域と判定した判定データを用いて、再度読み直した。しかし、バーコードの領域が既知である場合は、記憶部3に格納した画像信号再度読み出しすることなく、カメラ部1から取得した画像信号を、バーコード領域用画像処理部4及び非バーコード領域用画像処理部5により読み出して処理を施し、セレクタ7は、前記判定データに基づいて前記処理を施した2系列の出力選択して1枚の画像信号として出力するようにしてもよい。
【0030】
また、バーコード領域の判定のために画像を予め読取る際には、画像を間引いて読み出してバーコード領域を判定することもできる。そうすることにより処理時間を短縮することができる。例えば、高解像度化のために「画素ずらし」読取りを行う読み取り装置においては、低解像度で画像を複数回読み取って1枚の高解像度画像を得ているが、例えば、複数回読取る間の1枚の低解像度画像からバーコード領域を判定することができる。この場合は、カラー信号もしくは輝度(グレースケール)信号を生成するに必要な複数毎の画像が揃うまでにバーコード領域であるか否かの判定を終了させることができる。
【0031】
図1において、カメラヘッド11を構成するカラーセンサで読取った画像データはバーコード領域画像処理部4と非バーコード領域画像処理部5とバーコード領域判定部6に入力される。バーコード領域判定部6では画像データ内のバーコード領域を検出し、あるいは予めバーコード領域に対応するデータを設定し記憶しておく。
【0032】
カラー画像を得る際は、カラーセンサから得た1画素分のRのカラーフィルタ画素信号、Gのカラーフィルタ画素信号、およびBのカラーフィルタ画素信号から、1画素R,G,Bのカラー信号に変換する。この際は、後述するようにバーコード領域画像処理部4では処理対象のR,G,Bのカラーフィルタの1色の画像信号から1画素R,G,Bのカラー信号を生成する。この場合、RGBが同位置の画像信号から生成されるので、画素間の信号の差が大きく、画像の分解能が向上する。しかし、カラー画像などでは色の再現が正常でなくなる。
【0033】
非バーコード領域画像処理部5では、後述するように、処理画素に対応したカラーフィルタ画素信号だけでなく、周囲のカラーフィルタ画素信号の情報を参照して、1画素R,G,Bを生成する。このため画像の分解能は劣化するが、正常な色を再現できる。
【0034】
これら2つの出力をバーコード領域判定部6の判定信号により操作されるセレクタ7により切り換えて1枚のカラー画像として出力する。なお、グレー画像を得る際、カラーセンサから得た1画素分のRのカラーフィルタ画素信号、Gのカラーフィルタ画素信号、あるいはBのカラーフィルタ画素信号から輝度信号に変換するが、その際バーコード領域画像処理手段では処理対象のR,G,Bのカラーフィルタのいずれか1色の画像信号から輝度信号を生成する。すなわち同位置の画像信号のみで生成されるので、画素間の信号の差が大きく、画像の分解能が向上している。しかし、読取った画像がカラー画像の場合は、見た目の明暗の再現が正常でなくなる。
【0035】
また、非バーコード領域画像処理部5では処理画素に対応したカラーフィルタ画素信号だけでなく、周囲のカラーフィルタ画素信号の情報を参照して、輝度信号を生成する。そのため、画像の分解能が劣化するが、正常な明暗の再現ができる。この2つの出力をバーコード領域判定部により切り替えて出力して1枚のカラー画像を合成する。
【0036】
このため、カラー画像を取得することができるとともに、グレー領域においてはモノクロセンサ読み取り並みの分解能を持つグレー画像を取得できる。よって、バーコードの認識率もモノクロセンサ並みに向上し、良好なバーコード認識が可能となる。
【0037】
図2は、バーコード領域用画像処理部4の詳細を説明する図である。バーコード領域用画像処理部4は、図1に示す記憶部3から読み出した画像信号を用いて輝度(グレースケール)信号あるいはRGBカラー信号を生成する。いずれの信号を生成するかはユーザーが設定する設定信号aによってセレクタ41で切り換えることとする。
【0038】
グレースケール信号を得る場合は記憶部3から読み出した画像信号を選択し、カラー画像を取得する場合はRGBカラー生成部42の出力を選択する。
【0039】
記憶部3に格納しているカラーセンサの画像信号はRGBのいずれかのカラーフィルタに対応している。ここで、赤のカラーフィルタに対応する画素信号をR、緑のカラーフィルタに対応する画素信号をG、青のカラーフィルタに対応する画素信号をBとする。読取る画像に彩度がなく、グレーの場合は図12(a)のようにRとGとBは同じ出力なる。
【0040】
RとGとBは同じ出力とならない場合は、グレーの画像を読取つてもグレーにならず、例えば図12(b)のようにRがGやBに比べて高いと赤みがかった画像になり、Bが高いと青みがかった画像になる。ここでは、カメラの調整が完了しグレーを読取った際のRGBが一致してバランスがとれてることを前提とする。なお、前記調整処理も含めて考える場合には、グレーのRGBのバランスを調整するグレーバランス処理部を、記憶部3の前段あるいは後段に挿入するとよい。この調整処理は、例えば、前記原稿の読取り前に、予めグレー画像を読取り、RGBの出力特性を求め、求めた出力特性からRGBとも同じ値になる変換式、あるいは変換値をRGBそれぞれ求めて変換テーブルに格納しておき、読み取り時にテーブル変換して出力するとよい。
【0041】
図3は、バーコード領域用画像処理部4の処理を説明する図である。前述のようにグレーのRGBのバランスがとれていれば、バーコード領域用画像処理部4では図3(a)に示すように1画素毎の輝度情報を求める際、Y=R,Y=G,Y=Bとして、1画素を1画素の輝度値に変換する。
【0042】
また、RGBカラー生成部42では、カラーフィルタ色にかかわらず、図3(b)のようにその位置の1画素の画素情報をそのままRGBの情報として変換する。
【0043】
例えば、Rフィルタ画素の画素情報がRであるとすると生成するRGBはR=R,G=R,B=Rとし、Gフィルタ画素の画素情報がGであるとするとR=G,G=G,B=Gとし、Bフィルタ画素の画素情報がBであるとするとR=B,G=B,B=Bとして出力する。
【0044】
このように、グレースケール信号を生成する場合も、RGBのカラー信号を生成する場合も、周囲画素を参照することなく、従って画像の分解能あるいは画素間の画像情報の差を小さくすることなく変換できる。
【0045】
図4は、非バーコード領域用画像処理部5の処理を説明する図である。非バーコード領域用画像処理部5は、グレースケール信号を生成する場合も、RGBのカラー信号を生成する場合も周囲のカラーフィルタの画像信号を参照する。これは一般的な方法であるが、図4を用いて簡単に説明する。
【0046】
非バーコード領域用画像処理部5は、輝度信号に変換する際、Y=0.299*R+0.587*G+0.114*Bから輝度信号を求める。このとき、1画素では1色の情報しかないので、図4(a)のように例えば左上の輝度信号Yを求める場合、左上のRフィルタの画像信号Rと、横のGフィルタの画像信号G1’と、Rフィルタの下のGフィルタの画像信号G2’と、その横のBフィルタの画像信号Bの4画素を使用し1画素の輝度信号を求める。この縦横2*2の画素サイズにはR,G,Bの情報がある。なお、GはG1’とG2’の2画素分あるので2画素の平均値をGとし、このR,G,Bから、Y=0.299*R+0.587*G+0.114*Bの式で輝度値Yを求める。
【0047】
また、RGBカラー信号を取得する際も、図4(b)のように周囲のRGBの情報を含む4画素を用いて1画素RGBに変換する。この変換は、輝度値を求める場合と同様に縦横2*2の画素サイズ内にあるR,G,Bを用いて、例えば、Rは縦横2*2の画素サイズ内にあるRをそのままRとし、Gは縦横2*2の画素サイズ内にG1’G2’の2画素あるのでその平均値をGとし、Bは縦横2*2の画素サイズ内にあるBをそのままBとし生成する。
【0048】
なお、RGBカラー信号を取得する際に使用する画素は4画素以上とすることができる。非バーコード領域用画素生成部5は、グレースケール信号を生成する際もカラー信号を生成する際も、画像の分解能は4画素から生成しているため悪くなるが、明暗や色の再現性には問題はない。
【0049】
図5はバーコードの例を説明する図である。例えば2次元バーコードであるQRコードの場合は図5に示すように切出しシンボル(A,B,C)が3箇所あり、そこに囲まれる領域がQRコードの領域となる。そのため、QRコードの場合はパターンマッチングでこの切出しシンボルを検出すれば、2次元コード領域判定が可能となる。
【0050】
図6は、バーコード領域判定部6の処理を説明する図である。記憶部3から読み出した画像信号について、切出しシンボルをテンプレートとしてパターンマッチング部61で正規化相関を使用してパターンマッチングを行い、切出しシンボルを検出していく。画像1枚分を検出処理した後で、求めた正規化相関値の高いx,yの座標を求めて、切出しシンボルの座標点(x,y)とする。その座標点に囲まれた領域を判定部62でバーコード領域として求める。
【0051】
例えば、図5のように求めた切出しシンボルの座標点A,B,Cを、A(50,10),B(10,10),C(10.50)とした場合、バーコード領域の座標は、X方向が10画素目から50画素目までで、Y方向が10画素目から50画素目までの範囲となる。 そして、例えば、バーコード領域を“1“、非バーコード領域を”0“として、各画素に対応した判定結果をバーコード領域記憶部63に記憶する。ここではバーコードを傾けずに定位置に置いた読取りを想定しているが、回転や歪みのある場合もある。この場合には回転や歪みに対応する処理が必要となる。また、バーコード領域が複数ある場合には、判定部62は前記3つの切出しシンボル毎にグループ分けていく必要がある。この際には、例えば切出しシンボル間の距離情報を求めて、この距離情報を基にグループ分けするとよい。
【0052】
例えば切出しシンボルを図5のようにA,B,Cとした場合、切出しシンボルは正方形であるから、AB:BC:CAは1:1:√2になる。そのためABの距離を1としたときBCが1に近く、CAが√2に近い関係にあるような切出しシンボルを求めてグループ化し、各グループのそれぞれ3つの切出しシンボルに囲まれた範囲をバーコード領域として判定することにより対応できる。
【0053】
また、バーコードはバー及びセルから構成されるため、その領域は画像信号の空間周波数が高い。そのため、空間周波数が高い箇所をバーコード領域と判定してもよい。また、バーコードは黒であり彩度が少ないグレーの領域であるとして、R,G,Bの画像信号の差が少ない領域をバーコード領域と判定してもよい。ただし、このとき白は除くことも考えられる。
【0054】
また、バー領域の形状が既知であれば、その情報を使用して検出することもできる。また、切出しシンボルの種類が複数ある場合は、テンプレートを複数個備えて、マッチングを複数回繰り返して検出することができる。また、まずは大まかにバーコードらしい箇所を見つけて、セルの大きさを検出して、セルの大きさから切出しシンボルの大きさを推測し、テンプレートを絞り込むことも考えられる。
【0055】
前述のように、フォーマットが決まっていてバーコードの領域が予め既知の情報であればこの既知の情報に基づいて領域を判定することができる。例えば、バーコード領域が100ライン目から500ライン目と予め判っていれば、画像信号を必要とせず、画像を読み出すタイミングだけを使用して、現在の画像信号が何ライン目であるかが判る。このため、この情報を用いてバーコード領域を判定することができる。
【0056】
このようにしてバーコード領域と判定した領域については、バーコード領域用画像処理部4の出力を選択し、周囲画素を参照せず、従って画像の分解能あるいは画素間の画像情報の差を小さくせずに前述のように画像変換する。これにより、モノクロセンサ読取り並みの解像度のグレー画像を取得することができる。よって、バーコードの認識率もモノクロセンサ並みに向上し、良好なバーコード認識が可能となる。
【0057】
非バーコード領域と判定した領域については非バーコード領域用画像処理部5の出力を選択し、カラー画像等は明暗や色の再現性を損なうことなく良好なカラー画像を取得できる。つまり、良好なカラー画像の取得と高精細なバーコード画像の取得を両立することが可能になる。
【0058】
ここで、前述のようにレンズに色収差があるとグレー領域の縁に偽色が発生する。輝度値に変換にする際に色が発生するとその部分はノイズとなる可能性がある。従来のように周囲のR信号、G信号、B信号から求める場合には平均化されてノイズは小さいが、本実施形態のようにR信号、G信号、B信号をそのまま輝度値Yとする場合は影響が大きい。このため、画質劣化やバーコード認識の認識率が劣化することが考えられる。
【0059】
図7,8は、形状補正フィルタを説明する図である。この形状補正フィルタは、例えば色収差が数画素に渡ることはないこと、及び前記とは逆に文字あるいは2次元バーコードを構成する点やセルは数画素以上に渡るものであることを前提にセルの形状に対して補正を行うフィルタである。
【0060】
図7に示すように、形状補正フィルタ43はセレクタ41の後段に接続する。形状補正フィルタ43は、前述のように、2次元バーコードを構成する点やセルの大きさあるいは形状を補正するフィルタである。
【0061】
形状補正フィルタ43は、例えば、図8に示すように、1セルの大きさを縦横3画素の四角形であるとする。この場合には、前記ノイズにより角がボケやすく四角形が円あるいは台形等のいびつな形に見えたりする。しかし、もとの形は縦横3画素以下にならないことが分かっていれば、縦横3画素に近づくように補正することが可能となる。
【0062】
このため、形状補正フィルタは、図8に示すように2次元コードのセルを読取った際に、1セルの縦横の画素数より大きなフィルタサイズとし、フィルタ中心に1セルの縦横の中心に対応させたときに1セルの内側に対応する位置にプラスの重みがあり、その外側に対応する位置に負の重み係数を設けている。ここでは1セルを縦横3画素としているのでフィルタサイズは縦横3画素より大きくする必要がある。しかし、あまり大きくてもハード量、あるいはソフト処理量が多くなるため、フィルタサイズは縦横5画素としている。
【0063】
この例の場合は、1セルの大きさに対応した中央の縦横3画素の重みをプラスの重みとした。四角の角はボヤケやすく輝度値として大きくなってしまうので見ていない(重みを0としている)が、重みを付与してもよい。なお、前記四形の角の形状を補正するたには角のボケを補正する必要があるため、ここでは、角の縦横外側に隣接する画素にマイナスの重みを掛けている。重みはどの程度強調するか、また光学系によっても変わるのでここでは1例を示したがこれにこだわる必要はない。また、重みの位置も同様にこだわる必要はない。
【0064】
このように1セルの大きさ及び形状を利用してノイズを除去し形状を補正する形状補正フィルタ43を設けることにより、レンズの色収差によりノイズが発生する場合でも、良好な画質を得ることが可能になり、バーコードの認識率を向上させることができる。
【0065】
図9は、ユーザが設定する切替スイッチによりバーコード領域判定部6からの出力を無効にし、画像処理部の出力をユーザが指示する領域用画像処理部の出力に固定する例を説明する図である。
前述の例では、バーコード領域判定部6によりバーコード領域用画像処理部4と非バーコード領域用画像処理部5の出力を切り替えているが、図9に示すようにユーザが設定する切替スイッチによりバーコード領域判定部6からの出力を切替スイッチ9で無効にし、ユーザが指示する領域用画像処理部の出力に固定することができる。
【0066】
図11は、前記切替えスイッチ9の構成を説明する図である。図において、バーコード領域判定部6の出力信号b、ユーザが設定するユーザ設定スイッチ8から設定信号を信号cおよび信号dとする。信号cが“1”の場合、バーコード領域判定部6の出力信号bがそのまま切替スイッチ9の出力信号eとなる。また、信号cが“0”の場合、バーコード領域判定部6の出力信号bは無効になり、信号dの設定値がそのまま切替スイッチ9の出力信号eとなる。
【0067】
ここでは切替スイッチをハードウエハにより構成したが、ソフトウエア処理で行ってもよい。その場合はGUI画面に、例えばバーコード領域用画像処理部4と非バーコード領域用画像処理部5の出力、バーコード領域判定部6の出力、ユーザ設定スイッチの設定信号等を表示させてユーザーに選択させるとよい。
【0068】
図10は、ユーザ設定スイッチ8の設定信号によりバーコード領域用画像処理部4と非バーコード領域用画像処理部5の出力を切替える例を説明する図である。この例の場合、1枚の画像領域内で切り替わることがないようにしてもよい。この切替処理はハードウエアの処理で実現してもよいし、ソフトウエア処理で実現してもよい。
【0069】
また、以上の説明では、画像処理部2をカメラ部1の外部に配置したが、カメラ部1内に納めることもできる。この場合は、例えばカメラヘッド11に画像処理部2を格納することができる。
【0070】
また、以上ではカラーセンサとして、単板式カラーセンサを用いる例について説明したが、画像をずらす等の処理を施して、本来の位置でR,G,Bの画素信号が得られない三板式のカラーセンサあるいはラインセンサに対しても適用することができる。
【0071】
以上説明したように、本実施形態によれば、カラーセンサを用いたバーコード読取りにおいて、バーコード領域ではモノクロセンサでの読取りと同等の高分解能のバーコード画像取得が可能となり、バーコードの認識率向上に寄与できる。また、カラー画像領域においても良好なカラー画像を取得できる。
【図面の簡単な説明】
【0072】
【図1】本発明の実施形態に係る画像読み取り装置を説明する図である。
【図2】バーコード領域用画像処理部4の詳細を説明する図である。
【図3】バーコード領域用画像処理部4の処理を説明する図である。
【図4】非バーコード領域用画像処理部5の処理を説明する図である。
【図5】バーコードの例を説明する図である。
【図6】バーコード領域判定部6の処理を説明する図である。
【図7】形状補正フィルタを説明する図である。
【図8】形状補正フィルタを説明する図である。
【図9】ユーザが設定する切替スイッチによる切替を説明する図である。
【図10】ユーザ設定スイッチ8の設定信号による切替を説明する図である。
【図11】切替えスイッチ9の構成を説明する図である。
【図12】グレーバランスを説明する図である。
【図13】センサの色配列を説明する図である。
【符号の説明】
【0073】
1 カメラ部
2 画像処理部
3 記憶部
4 バーコード領域用画像処理部
5 非バーコード領域用画像処理部
6 バーコード領域判定部
7 セレクタ
8 ユーザー設定スイッチ
9 切替スイッチ
ll カメラヘッド
12 支柱
13 原稿台
14 原稿
15 カラー画像領域
16 バーコード領域
41 セレクタ
42 RGBカラー生成部
43 形状補正フィルタ
61 パターンマッチング部
62 判定部
63 バーコード領域記憶部
【特許請求の範囲】
【請求項1】
カラーセンサを備え、2次元バーコードが印字された領域を含む原稿を撮影して少なくとも3色の画素信号を出力することのできるカラーカメラと、
前記各画素信号のそれぞれ何れかが属する画素のみの信号を用いて1画素カラー信号を生成するバーコード領域用画像処理部と、
前記各画素信号のそれぞれ何れかが属する画素の信号、および該画素の周囲の画素の信号を用いて1画素カラー信号を生成する非バーコード領域用画像処理部と、
バーコード領域用画像処理部および非バーコード領域用画像処理部の出力を切り換えて出力するセレクタを備えたことを特徴とする画像読み取り装置。
【請求項2】
請求項1記載の画像読み取り装置において、
バーコード領域用画像処理部が処理する領域が、バーコードが印字された領域であるか否かを判定するバーコード領域判定部を備え、該判定部の判定出力をもとに前記セレクタを切り換えることを特徴とする画像読み取り装置。
【請求項3】
請求項1記載の画像読み取り装置において、
前記バーコード領域用画像処理部は、その後段に読み取った2次元バーコードの形状を補正する形状補正フィルタを備えたことを特徴とする画像読み取り装置。
【請求項4】
請求項3記載の画像読取り装置において、
前記形状補正フィルタは2次元バーコードのセルを読取つた際に、1セルの縦横の画素数より大きなフィルタサイズとし、フィルタ中心に1セルの縦横の中心に対応させたときに1セルの内側に対応する位置にプラスの重みがあり、その外側に対応する位置に負の重み係数を設けていることを特徴とする画像読取り装置。
【請求項5】
3色のカラーセンサを備え、2次元バーコードが印字された領域を含む原稿を撮影してR,G,Bの何れかの画素信号を出力することのできる単板式のカラーカメラと、
前記R,G,Bの各画素信号のそれぞれ何れかが属する画素のみの信号を用いて1画素カラー信号を生成するバーコード領域用画像処理部と、
前記R,G,Bの各画素信号のそれぞれ何れかが属する画素の信号、および該画素の周囲の画素の信号を用いて1画素カラー信号を生成する非バーコード領域用画像処理部と、
予め2次元バーコードが印字された領域を記憶した記憶部と、
該記憶部の記憶信号に基づいて、前記バーコード領域用画像処理部および非バーコード領域用画像処理部の出力を切り換えて出力するセレクタを備えたことを特徴とする画像読み取り装置。
【請求項6】
請求項1記載の画像読取り装置において、
前記セレクタの切替位置を設定するユーザ設定スイッチを備えたことを特徴とする画像読み取り装置。
【請求項7】
請求項2記載の画像読取り装置において、
前記セレクタの切替位置を設定するユーザ設定スイッチを備え、該ユーザ設定スイッチ設定出力および前記バーコード領域判定部の判定出力何れかを前記セレクタの切替信号とする切替器を備えたことを特徴とする画像読み取り装置。
【請求項1】
カラーセンサを備え、2次元バーコードが印字された領域を含む原稿を撮影して少なくとも3色の画素信号を出力することのできるカラーカメラと、
前記各画素信号のそれぞれ何れかが属する画素のみの信号を用いて1画素カラー信号を生成するバーコード領域用画像処理部と、
前記各画素信号のそれぞれ何れかが属する画素の信号、および該画素の周囲の画素の信号を用いて1画素カラー信号を生成する非バーコード領域用画像処理部と、
バーコード領域用画像処理部および非バーコード領域用画像処理部の出力を切り換えて出力するセレクタを備えたことを特徴とする画像読み取り装置。
【請求項2】
請求項1記載の画像読み取り装置において、
バーコード領域用画像処理部が処理する領域が、バーコードが印字された領域であるか否かを判定するバーコード領域判定部を備え、該判定部の判定出力をもとに前記セレクタを切り換えることを特徴とする画像読み取り装置。
【請求項3】
請求項1記載の画像読み取り装置において、
前記バーコード領域用画像処理部は、その後段に読み取った2次元バーコードの形状を補正する形状補正フィルタを備えたことを特徴とする画像読み取り装置。
【請求項4】
請求項3記載の画像読取り装置において、
前記形状補正フィルタは2次元バーコードのセルを読取つた際に、1セルの縦横の画素数より大きなフィルタサイズとし、フィルタ中心に1セルの縦横の中心に対応させたときに1セルの内側に対応する位置にプラスの重みがあり、その外側に対応する位置に負の重み係数を設けていることを特徴とする画像読取り装置。
【請求項5】
3色のカラーセンサを備え、2次元バーコードが印字された領域を含む原稿を撮影してR,G,Bの何れかの画素信号を出力することのできる単板式のカラーカメラと、
前記R,G,Bの各画素信号のそれぞれ何れかが属する画素のみの信号を用いて1画素カラー信号を生成するバーコード領域用画像処理部と、
前記R,G,Bの各画素信号のそれぞれ何れかが属する画素の信号、および該画素の周囲の画素の信号を用いて1画素カラー信号を生成する非バーコード領域用画像処理部と、
予め2次元バーコードが印字された領域を記憶した記憶部と、
該記憶部の記憶信号に基づいて、前記バーコード領域用画像処理部および非バーコード領域用画像処理部の出力を切り換えて出力するセレクタを備えたことを特徴とする画像読み取り装置。
【請求項6】
請求項1記載の画像読取り装置において、
前記セレクタの切替位置を設定するユーザ設定スイッチを備えたことを特徴とする画像読み取り装置。
【請求項7】
請求項2記載の画像読取り装置において、
前記セレクタの切替位置を設定するユーザ設定スイッチを備え、該ユーザ設定スイッチ設定出力および前記バーコード領域判定部の判定出力何れかを前記セレクタの切替信号とする切替器を備えたことを特徴とする画像読み取り装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2006−350544(P2006−350544A)
【公開日】平成18年12月28日(2006.12.28)
【国際特許分類】
【出願番号】特願2005−173952(P2005−173952)
【出願日】平成17年6月14日(2005.6.14)
【出願人】(504373093)日立オムロンターミナルソリューションズ株式会社 (1,225)
【Fターム(参考)】
【公開日】平成18年12月28日(2006.12.28)
【国際特許分類】
【出願日】平成17年6月14日(2005.6.14)
【出願人】(504373093)日立オムロンターミナルソリューションズ株式会社 (1,225)
【Fターム(参考)】
[ Back to top ]