(57)【要約】インクジェットプリンタなどの汎用のプリンタで印字した２次元コードを含む画像を多値画像として取込み、所定の２値化しきい値で多値画像から２値画像を作成した後、デコードを行う印字検査装置において最適な２値化しきい値が得られる印字検査装置を得ることを目的とする。実際の印字検査を実施する前に、読み取りテストを実施する。その読み取りテストでは、1個以上の検査サンプルに対して、全ての階調についての明るさ値をしきい値として多値画像の２値化を実施して読み取りテストを行い、読み取り可能な明るさ値の範囲（最大値、最小値）を求めた後、最小値と最大値の中央値を実際の印字検査での２次元コード画像の２値化しきい値とする。
2020071188.tif 000002
【特許請求の範囲】
【請求項１】
被印字体に印字された２次元コードを含む印字を読み取る印字検査装置であって、
２次元コードを含む認識対象を多値画像として入力する手段と、
所定の２値化しきい値を用いて前記多値画像の２値化を行って２値画像を出力する画像２値化手段と、
前記２値画像から２次元コードの領域を検出する２次元コード検出手段と、
前記２次元コードをデコードするデコード手段と、
読み取りテストを実施する読み取りテスト手段と、
を有し、
前記読み取りテスト手段は、1個以上の検査サンプルに対して、全ての階調についての明るさ値をしきい値として２値化を実施して読み取りテストを行い、読み取り可能な明るさ値の最大値と最小値を求め、得られた最大値、最小値を表示部に表示させ、最小値と最
大値の中央値を実際の印字検査での２次元コード画像の２値化しきい値に設定することを特徴とする印字検査装置。
【請求項２】
請求項１に記載の印字検査装置であって、読み取りテストを実施する時に、印字読み取り領域内の全画素の明るさ平均値を算出し、、前記算出された明るさ平均値と前記中央値との差を補正値として求め、実際の印字検査では、検査物毎に印字読み取り領域内の全画素の明るさ平均値を算出して、その平均値に補正値を加えた数値を２値化しきい値として多値画像の２値化を行うことを特徴とする印字検査装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印字検査装置に係わり、特にインクジェットプリンタ等で印字された製造年月日、製造番号等の文字や記号、製造履歴管理に必要な情報等が記録された２次元コード（以下、記号や２次元コードも文字に含め、単に「文字」という）を、カメラで読み取り、印字の良否を判別するのに好適な印字検査装置に関する。
【背景技術】
【０００２】
印字検査装置の背景技術として、特開２００９−７００６１号公報（特許文献１）がある。この公報には、「２次元コードのデコードに失敗した場合、固有パターンを構成する黒若しくは白のパターンのうち、一方のパターンを構成するセルが予め定めたパターンを構成するセルと全て一致しかつ他方のパターンの一致度が所定範囲にないとき所定範囲に入るよう二値化パラメータを調整し、再度二値化を行ってその二値画像のデコードを行う。」と記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−７００６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
食品や薬品の包装容器には、製造年月日や賞味期限、製造ロットなどの表示が法律上義務づけられており、それを実現するためにインクジェットプリンタ等の印字装置が利用されている。印字装置は、搬送ライン（包装ラインを含む）に設置され、次々に搬送されてくる包装容器への印字を行う。印字装置による印字が正しく行われているかは、包装容器の印字を読み取る印字検査装置によってなされる。さらに、最近では、上記印字だけではなく、製造履歴管理に必要な様々な情報等を記録するため、多くの情報を記録できる２次元コードの印字を同時に行うことが増加しており、この２次元コードの情報が正しく印字されているかも検査する必要がある。【０００５】
しかし、上記特許文献１に開示された装置では、白と黒の比率のみに着目しており、実際には、画素に対するセルの位置ズレの度合いにより、2値化したときのセルの位置が大きな位置ズレと判断され読み取りができなくなることもある。【０００６】
そこで、本発明は、インクジェットプリンタなどの汎用のプリンタで印字した２次元コードを含む画像を多値画像として取込み、所定の２値化しきい値で多値画像から２値画像を作成した後、デコードを行う印字検査装置において、最適な２値化しきい値が得られる印字検査装置を得ることを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、例えば特許請求の範囲に記載の構成を採用する。 本願は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、被印字体に印字された２次元コードを含む印字を読み取る印字検査装置であって、２次元コードを含む認識対象を多値画像として入力する手段と、所定の２値化しきい値を用いて前記多値画像の２値化を行って２値画像を出力する画像２値化手段と、前記２値画像から２次元コードの領域を検出する２次元コード検出手段と、前記２次元コードをデコードするデコード手段と、読み取りテストを実施する読み取りテスト手段と、を有し、前記読み取りテスト手段は、1個以上の検査サンプルに対して、全ての階調についての明るさ値をしきい値として２値化を実施して読み取りテストを行い、読み取り可能な明るさ値の最大値と最小値を求め、得られた最大値、最小値を表示部に表示させ、最小値と最大値の中央値を実際の印字検査での２次元コード画像の２値化しきい値に設定する構成とする。
【発明の効果】
【０００８】
本発明によれば、所定の２値化しきい値で多値画像から２値画像を作成した後、デコードを行うにあたり、最適な２値化しきい値が得ることができる印字検査装置を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】実施例1における処理部の読み取りテスト工程について、画像取込み以降の処理を説明するフローチャートの例である。
【図２】実施例1における印字検査装置の設置例を示す図である。
【図３】実施例1における印字検査装置のブロック図である。
【図４】実施例１におけるモニタの表示例である。
【図５】実施例１における処理部の印字検査工程について、画像取込み以降の処理を説明するフローチャートの例である。
【図６】従来の印字検査装置における印字検査工程の画像取込み以降の処理を説明するフローチャートの例である。
【図７】実施例２における処理部の読み取りテスト工程について、画像取込み以降の処理を説明するフローチャートの例である。
【図８】実施例２におけるモニタの表示例である。
【図９】実施例２における処理部の印字検査工程について、画像取込み以降の処理を説明するフローチャートの例である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施例を図面を用いて説明する。
【実施例１】
【００１１】
図２は、本実施例で用いる印字検査装置の設置例である。図２において、印字検査装置は、インクジェットプリンタ９等の印字装置によって食品や薬品等の包装容器に印字を行った印字物６に対してカメラ３の印字文字の読み取りに十分な光量の光を照射する照明装置４、光を照射された印字物６の検査対象となる文字列や２次元コード等を含む画像を読取る撮像手段であるカメラ３、読み取った画像を表示したり、検査の条件設定や、検査結果の表示を行うモニタ２、カメラ３で読み取った画像から印字画像を抽出する等の加工を行い、検査対象文字の合否判定を行なう処理部や、照明の光量やタイミング等のコントロールを行う照明コントロール部を搭載している印字検査装置本体１、印字検査装置本体１内の処理部に画像処理等の各種指示を与える外部装置、等からなる。【００１２】
ペットボトル入り飲料や缶詰などの製造工場では、出荷前の製品のボトルや缶の表面に、専用のインクジェットプリンタ９のプリントヘッド１０より液滴１１を吐出させて、消費期限や製造番号、２次元コードなどを印字している。インクジェットプリンタ９により印字が行われた出荷前製品６は、コンベア５等により搬送される。コンベア付近に設置されたセンサ８による出力信号が、印字検査装置本体１内の処理部によって検知されて、カメラ３の撮像タイミングを算出し、カメラ３が検査対象文字を確認できる位置まで搬送されたタイミングで、ＬＥＤ照明等の照明装置４による光の照射を行い、カメラ３で検査対象文字を含む画像を読み取り、印字検査装置本体1内に印字画像が送られる。【００１３】
図３に本実施例の印字検査装置のブロック図の一例を示す。ＲＯＭ１３には印字文字列や２次元コード等の認識処理や印字品質の合否判定のためのプログラムが格納されている。また、ＲＡＭ１３には、検査対象となる文字列の各構成文字の基準文字パターンや、外部装置７から入力された設定データなどが格納されている。処理部１２では、印字検査に関わる各種の処理を行っている。【００１４】
まず、２値化しきい値を決定するために、テスト用検査サンプルを用いて読み取りテストを行う。センサ８の出力信号を印字検査装置本体１内の処理部１２で受け取ると、処理部１２内の撮像タイミング算出部１２１でカメラの撮像タイミングを算出し、処理部１２からの指示により画像入力信号発生部１７からカメラ３へ画像取り込みタイミングを知らせるとともに、処理部１２からの指示により、照明コントロール部１９は、照明装置４の光量をコントロールし、かつ、カメラ３の画像読み取りタイミングに合せて照明装置４の発光タイミングをコントロールする。【００１５】
カメラ３によって読み取られた画像は、各画素がカメラの性能によって決定される階調数のうちの明るさに応じた数値（以下、「明るさ値」という）を有する多値画像データであり、このデータが印字検査装置本体１内の画像入力部１５に入力され、一旦、画像記憶部１６に蓄積される。処理部１２内のフィルタ処理部１２２では、画像記憶部１６に蓄積された撮像画像に対し、２次元コードを認識しやすくするために、細線化・太線化等の画像改善処理を行う。フィルタ処理１２２を行った画像に対し、後述する手順により２値化しきい値設定部１２３で、最適な２値化しきい値を取得する。【００１６】
次に、実際の印字検査が行われる。読み取りテストと同様の手により、センサ８の出力信号受け取って、処理部１２内の撮像タイミング算出部１２４でカメラの撮像タイミングを算出し、カメラ３で撮像を行って多値画像データを得て、この多値画像データに対し、処理部１２内のフィルタ処理部１２５で、画像改善処理を行う。２値化しきい値設定部１２６では、[読み取りテスト工程]で得られた２値化しきい値をもとに、最適な２値化しきい値を設定する。画像２値化処理部１２７では、２値化しきい値設定部１２６で求めた２値化しきい値を使用して２値化処理を行い、多値画像から２値画像を作成する。２次元コード計算部１２８では、得られた２値画像から２次元コードの領域を検出し、２次元コードのデータを読み取り、２次元コードをデコードする。そして、読み取り判定部１２９で合否の判定を行い、判定結果は入出力部１８に送られ、モニタ２に表示され、不合格の場合は外部装置７により不良品として排斥等が実施される。また、以上の一連の処理において、印字画像、検査条件等も、入出力部１８に送られ、モニタ２に表示される。【００１７】
図１は本実施例の印字検査装置の処理部１２の［読み取りテスト工程］について、画像取込み以降の処理のフローチャートの一例を示したものである。図３の説明で記載したように、センサ８の出力信号を印字検査装置本体１内の処理部１２で受け取った後、所定のタイミングでカメラ３によって画像が読取られる。読取られた画像は、ステップＳ１にて、一旦、画像記憶部１６に蓄積される。【００１８】
次に、ステップＳ２にて、処理部１２内のフィルタ処理部１２２で、画像改善処理を行う。ステップＳ３からＳ６は、処理部１２内の２値化しきい値設定部１２３での処理を示している。ステップＳ３では、フィルタ処理を行った後の画像について、全ての階調について、その明るさ値をしきい値として２値化を行い、２次元コードが読取れるか確認する。例えば、２５６階調の画像であれば、２値化しきい値０〜２５５の全てについて、２次元コードの読み取り可否を確認する。２次元コード読み取りができた最小の明るさしきい値をＭＩＮ１、最大の明るさしきい値をＭＡＸ１とする。ステップＳ４では、他に読み取りテストを行う検査サンプルがあるか判断する。検査サンプルは１個でも可能であるが、ばらつきに対する精度を上げるには、２個以上あることが望ましい。２個以上ある場合には、２個目以降の検査サンプルに対しても、ステップＳ１からの処理を実施する。ステップＳ３まで行って得られた最小明るさしきい値ＭＩＮ２、ＭＩＮ３、・・・、最大明るさしきい値ＭＡＸ２、ＭＡＸ３、・・・と、検査サンプル数分の最小明るさしきい値及び最大明るさしきい値が得られる。それぞれについて、平均値をとることで、最小明るさ値ＭＩＮ、最大明るさ値ＭＡＸとする。【００１９】
ステップＳ５では、この最小明るさ値ＭＩＮ、最大明るさ値ＭＡＸを、入出力部１８に送り、モニタ２に表示する。図４に表示例を示す。２次元コード画像表示部Ｐ１は、カメラ３での撮像領域を示す。中央の２次元コード画像を含む白色の領域１００は、読み取り領域である。読み取り領域の設定は、図示しない検査条件設定画面で行い、撮像した画像がこの領域から外れた場合は、印字位置ズレが許容範囲よりも大きい印字物として不良品として判定される。領域１００の中央の２次元コード画像１０１は、例として、ＱＲコード（登録商標）の画像を表示している。「読み取りテスト」ボタンを押すことでステップＳ３が実施され、結果が「読み取りテスト」ボタンの左に表示される。「０」は読み取りテストを行う２値化しきい値の最小値、「２５５」は読み取りテストを行う２値化しきい値の最大値である。これらの数値の間にある長方形は２次元コードの読み取りができた２値化しきい値の範囲を示している。図４では、２値化しきい値「５１」から「１９８」までが２次元コード読み取りができたことを示す。ステップＳ６では、２次元コードの読み取りができた２値化しきい値の最小値ＭＩＮと最大値ＭＡＸから中央値を求め、印字検査を実施するときの２値化しきい値とする。【００２０】
図５は本実施例の印字検査装置に関わる処理部１２の［印字検査工程］について、画像取込み以降の処理のフローチャートの一例を示したものである。図１に示すフローチャートにより、２値化しきい値を決定した後、実際の印字検査を、図５に示すフローチャートにより実施する。センサ８の出力信号を印字検査装置本体１内の処理部１２で受け取った後、所定のタイミングでカメラ３によって画像が読取られる。読取られた画像は、ステップＳ１１にて、一旦、画像記憶部１６に蓄積される。【００２１】
次に、ステップＳ１２にて、処理部１２内のフィルタ処理部１２５で、画像改善処理を行う。ステップＳ１３では、２値化しきい値設定部１２６で、［読み取りテスト］で得た中央値を２値化しきい値に設定する。ステップＳ１４では、ステップＳ１３で設定した２値化しきい値により、画像２値化処理部１２７で、多値画像から２値画像を作成する。２次元コード計算部１２８では、ステップＳ１５からＳ１９を実施する。ステップＳ１５では、２値画像からファインダ（位置検出のためのパターン）の探査を実施する。ステップＳ１７では、ファインダの位置を元に、データを取得するのに必要な情報（Version等）を読み取る。ステップＳ１８では、ステップＳ１７で得られた情報を元に、データの取り込みを実施する。ステップＳ１９では、ステップ１８で取得したデータ（符号化されたデータ）に対してデコードを行って元のデータに復元する。ステップＳ２０では、読み取り判定部１２９で、読取ったデータの合否判定を行う。【００２２】
ここで、図６により、印字検査装置の従来例について述べる。従来例では、処理部１２において、［読み取りテスト工程］はなく、［印字検査工程］が行われる。図５と同様に、ステップＳ１１で画像を取込み、ステップＳ１２でフィルタ処理を行う。次に、ステップＳ１３でデフォルト値として設定した２値化しきい値を使用して、ステップＳ１４で多値画像から２値画像を作成し、ステップＳ１５で２値画像からファインダの探査を実施する。ステップＳ１６で、このファインダ探査ができたどうかを判断し、出来なかった場合は、ステップＳ２１で、２値化しきい値を決めるための乗算乗数を変更する。変更された乗算乗数を用いて、ステップＳ１３で２値化しきい値の再設定、画像２値化、ファインダ探査を行い、ファインダ探査ができるまでステップＳ２１、Ｓ１３、Ｓ１４、Ｓ１５、Ｓ１６を繰り返す。【００２３】
以上のように、本実施例では、［読み取りテスト」により、全ての階調値を２値化しきい値として、多値画像の２値化を行って２次元コードの読み取り可否を確認して、予め最適な２値化しきい値を設定するので、２値化しきい値を再設定して処理を行うことによる処理時間の増加を防止することができる。【００２４】
このように本実施例の印字検査装置は、インクジェットプリンタなどの汎用のプリンタで印字した２次元コードを含む画像を多値画像として取込み、所定の２値化しきい値で多値画像から２値画像を作成した後、デコードを行う印字検査装置であって、繰り返し２値化を実施することで、処理時間が伸びてしまったり、所望の時間内に読み取れずに不良品となってしまうことがなく、最適な２値化しきい値を得ることができる。
【実施例２】
【００２５】
本実施例では、印字物の状態や照明の明るさにばらつきがある等により、撮像した画像の明るさが変動する場合に有効な印字検査装置の一例を図７、図８を用いて説明する。【００２６】
図７は本実施例の印字検査装置の処理部１２の［読み取りテスト工程］について、画像取込み以降の処理のフローチャートの一例を示したものである。図１の場合と同様に、ステップＳ１で画像取込み、ステップＳ２でフィルタ処理、ステップＳ３で読み取り可能な明るさ値の最小値ＭＩＮ１、最大値ＭＡＸ１を求める。【００２７】
次に、ステップＳ３１で２次元コード読み取り領域内の全画素の明るさ平均値ＡＶＥ１を算出する。図１の場合と同様、検査サンプルは１個でも可能であるが、ばらつきに対する精度を上げるには、２個以上あることが望ましい。２個以上ある場合には、２個目以降の検査サンプルに対しても、ステップＳ１からの処理を実施する。ステップＳ３１まで行って得られた最小明るさしきい値ＭＩＮ２、ＭＩＮ３、・・・、最大明るさしきい値ＭＡＸ２、ＭＡＸ３、・・・、読み取り領域内の全画素明るさ平均値ＡＶＥ２、ＡＶＥ３、・・・と、検査サンプル数分の最小明るさしきい値及び最大明るさしきい値、読み取り領域内の全画素明るさ平均値が得られる。それぞれについて、平均値をとることで、最小明るさ値ＭＩＮ、最大明るさ値ＭＡＸ、読み取り領域内の全画素明るさ平均値ＡＶＥとする。【００２８】
ステップＳ５では、この最小明るさ値ＭＩＮ、最大明るさ値ＭＡＸ、読み取り領域内の全画素明るさ平均値ＡＶＥを、入出力部１８に送り、モニタ２に表示する。ステップＳ６では、最大値と最小値の中央値を求め、ステップＳ３２で、補正値＝「中央値」−「読み取り領域内の全画素明るさ平均値」を求める。図８に表示例を示す。本実施例では、２値化方法のボタンは「自動」Ｐ４を選択する。「読み取りテスト」ボタンの左に表示される読み取りテストの結果として、図４の場合と同様に読み取り可能な２値化しきい値範囲の最小値「５１」、最大値「１９８」が表示されるとともに、中央値「１２５」が表示される。また、Ｐ５には、読み取り領域内の全画素明るさ平均値「１３７」が表示される。この表示領域は、２値化しきい値を固定値として特定の数値を決めたい場合には、操作者が数値を入力できるようにしている。そして、補正値として、「−１２」が処理部１２に保存される。【００２９】
図９に示す［印字検査工程］では、図５と同様に、ステップＳ１１で画像取込み、ステップＳ１２でフィルタ処理を行った後、ステップＳ３３で読み取り領域内の全画素の明るさ平均値を算出し、ステップＳ３４で、読取り領域内の全画素の明るさ平均値に、［読み取りテスト工程］で得られた補正値を加えた数値を２値化しきい値とし、ステップＳ１４で、この２値化しきい値を用いて多値画像から２値画像を作成する。【００３０】
以上のように、本実施例によれば、検査物の検査毎に、読み取り領域内の全画素の明るさ平均値を算出して、その平均値に補正値を加えた数値を２値化しきい値として多値画像の２値化を行うことで、画像の明るさに変動がある場合にも、最適な２値化しきい値を設定して２次元コードの読み取りを行うことができる。【００３１】
なお、本発明は、上記した実施例に限定されるものではなく、様々な変形が含まれる。例えば、実施例として、２次元コードの画像はＱＲコード（登録商標）の場合について表示したが、他の２次元コードについても同様の処理が可能である。【００３２】
また、検査サンプルが２個以上の場合に、本実施例では最小２値化しきい値ＭＩＮ、最大２値化しきい値ＭＡＸを、それぞれ、得られた数値の平均値（ＭＩＮ１、ＭＩＮ２、・・・・の平均値をＭＩＮ、ＭＡＸ１、ＭＡＸ２、・・・・の平均値をＭＡＸ）としたが、ばらつきが大きい場合は、例えば、最小２値化しきい値ＭＩＮ１、ＭＩＮ２、・・・・の最大値をＭＩＮ、最大２値化しきい値ＭＡＸ１、ＭＡＸ２、・・・の最小値をＭＡＸとすること等も有効である。【００３３】
また、処理部１２において、［読み取りテスト工程］で行われる各処理部と［印字検査工程］で行われる各処理部は、別の処理部としたが、同じ動作を行う処理部（例えば、撮像タイミング算出部１２１と１２４）は同じものとすることも可能である。
【符号の説明】
【００３４】
１：印字検査装置本体、２：モニタ、３：カメラ、４：照明装置、５：コンベア、６：印字物、７：外部装置、８：センサ、９：インクジェットプリンタ、１０：プリントヘッド、１１：液滴、１２：処理部、１３：ＲＯＭ、１４：ＲＡＭ、１５：画像入力部、１６：画像記憶部、１７：画像入力信号発生部、１８：入出力部、１９：照明コントロール部、１２１：［読み取りテスト工程］における撮像タイミング算出部、１２２：［読み取りテスト工程］におけるフィルタ処理部、１２３：［読み取りテスト工程］における２値化しきい値設定部、１２４：［印字検査工程］における撮像タイミング算出部、１２５：［印字検査工程］におけるフィルタ処理部、１２６：［印字検査工程］における２値化しきい値設定部、１２７：画像２値化処理部、１２８：２次元コード計算部、１２９：読み取り判定部Ｐ１：モニタ画面の２次元コード画像表示部、Ｐ２：「読み取りテスト」開始ボタン表示部、Ｐ３：読み取りテスト結果表示部、Ｐ４：２値化しきい値に自動で補正値を加える設定とする「自動」設定ボタン表示部、Ｐ５：読み取り領域内の全画素明るさ平均値表示及び２値化しきい値入力部１００：モニタ画面の画像表示部内の読み取り領域、１０１：モニタ画面の画像表示部内の２次元コード画像
【図１】
2020071188.tif 000003
【図２】
2020071188.tif 000004
【図３】
2020071188.tif 000005
【図４】
2020071188.tif 000006
【図５】
2020071188.tif 000007
【図６】
2020071188.tif 000008
【図７】
2020071188.tif 000009
【図８】
2020071188.tif 000010
【図９】
2020071188.tif 000011
【国際調査報告】
2020071188.tif 000012
2020071188.tif 000013