画像処理方法および画像処理システム
【課題】連続的に移動する検査対象を静止させることなく、光沢を除去して、より精度の高い画像処理を行うことのできる画像処理方法および画像処理システムを提供する。
【解決手段】画像処理装置は、所定位置に配置された撮像部を用いて、当該撮像部に対して一定の相対位置に配置された照明光源で当該撮像部の視野を照明した状態で、予め定められた方向に移動する検査対象を複数回撮像し、撮像部による一連の撮像により取得される複数の画像のうち2つの画像間で検査対象の少なくとも一部を示す領域を順次探索することで、検査対象を基準として、複数の画像を位置合わせし、当該位置合わせされた複数の画像から合成画像を生成する。
【解決手段】画像処理装置は、所定位置に配置された撮像部を用いて、当該撮像部に対して一定の相対位置に配置された照明光源で当該撮像部の視野を照明した状態で、予め定められた方向に移動する検査対象を複数回撮像し、撮像部による一連の撮像により取得される複数の画像のうち2つの画像間で検査対象の少なくとも一部を示す領域を順次探索することで、検査対象を基準として、複数の画像を位置合わせし、当該位置合わせされた複数の画像から合成画像を生成する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、検査対象を撮像した際に生じ得る光沢を除去するための画像処理方法および画像処理システムに関する。
【背景技術】
【0002】
従来から、FA(Factory Automation)分野などにおいては、各種の画像処理技術が利用されている。典型的には、検査対象を撮像して得られた画像データに基づいて、検査対象に印字されている文字を認識したり、検査対象の表面におけるキズの有無などを検査したりする画像処理技術が広く実用化されている。
【0003】
ところで、実際の生産ラインなどにおいては、検査対象を撮像する際の照明環境、検査対象の形状、照明光源と撮像部との位置関係などによって、検査対象の表面に光沢が映り込む場合がある。この光沢は、検査対象の特定領域に入射する光の光量などによって、検査対象を示す画像情報が有意に取得できない領域を意味する。典型的には、検査対象の特定の領域について、入射する光の光量が相対的に大きくなって、いわゆるハレーションもしくはハレーションに近い状態となる場合である。このような場合には、この光沢によって、検査対象上にある文字やキズなどの情報を適切に取得できない。
【0004】
そこで、たとえば、特開2007−170838号公報(特許文献1)には、被外観検査物を照明する照明光源と、該照明光源に照明された被外観検査物を撮像する撮像手段とを備えた外観検査装置において、照明光源による照明条件を変えながら撮像手段により被外観検査物を撮像して得られた複数の画像を保持する画像保持手段と、該画像保持手段により保持された複数の画像を演算処理することにより照明光源の映り込みを除去した画像を生成する画像処理手段とが付設された構成が開示される。より具体的には、レンズの光軸周りに90°単位で4個の領域に分割されている発光ダイオードを用いて、その発光ダイオードを構成する領域のうち、実際に点灯する領域の組合せを変更することで、照明条件が変更される。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2007−170838号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上述のような特開2007−170838号公報(特許文献1)に開示される方法では、照射方向の異なる複数の照明光源を用意する必要があるため、相対的にコストが上昇するという課題があった。同時に、撮像時には検査対象を静止させる必要があるので、検査対象が連続的に搬送されるような生産ラインには、適用することが困難であるという課題もあった。そのため、特開2007−170838号公報(特許文献1)に開示される方法を適用できる生産ラインは限られていた。
【0007】
そこで、本発明は、これらの問題を解決するためになされたものであり、その目的は、連続的に移動する検査対象を静止させることなく、光沢を除去して、より精度の高い画像処理を行うことのできる画像処理方法および画像処理システムを提供することである。
【課題を解決するための手段】
【0008】
本発明のある局面に従う画像処理方法は、予め定められた位置に配置された撮像部を用いて、当該撮像部に対して一定の相対位置に配置された照明光源で当該撮像部の視野を照明した状態で、予め定められた方向に移動する検査対象を複数回撮像するステップと、撮像部による一連の撮像により取得される複数の画像のうち2つの画像間で検査対象の少なくとも一部を示す領域を順次探索することで、検査対象を基準として、複数の画像を位置合わせするステップと、当該位置合わせされた複数の画像について、単位領域毎に、当該単位領域に対応する、位置合わせされた複数の画像におけるそれぞれの領域が有する画像情報から当該単位領域を代表する画像情報を算出することで、合成画像を生成するステップとを含む。
【0009】
好ましくは、画像情報を算出するステップは、位置合わせされた複数の画像におけるそれぞれの領域が有する画像情報として輝度を取得し、取得した輝度についての、最小値、最大値、平均値、中央値のいずれか1つを、単位領域を代表する画像情報として算出する。
【0010】
あるいは好ましくは、合成画像を生成するステップは、単位領域を代表する画像情報を算出するための算出規則を複数に異ならせて、それぞれの算出規則に従って複数種類の合成画像を生成するステップと、当該生成された複数種類の合成画像を表示するステップと、当該複数の算出規則のうち合成画像の生成に使用すべき算出規則の選択を受付けるステップとをさらに含む。
【0011】
あるいは好ましくは、合成画像を生成するステップは、単位領域を代表する画像情報を算出するための算出規則を複数に異ならせて、それぞれの算出規則に対応する複数種類の合成画像を生成するステップと、当該生成された複数種類の合成画像について識別度合いを示す指標を算出するステップと、算出した指標に従って、当該複数の算出規則に合成画像の生成に使用すべき算出規則を選択するステップとをさらに含む。
【0012】
好ましくは、位置合わせするステップは、検査対象の撮像により取得された第1の画像から検査対象を示す第1の領域を抽出し、第1の画像の次に取得された第2の画像内で第1の領域と合致する領域を探索するステップと、第2の画像から、検査対象を示す、第1の領域の大きさとは独立した大きさの第2の領域を抽出し、第2の画像の次に取得された第3の画像内で第2の領域と合致する領域を探索するステップとを含む。
【0013】
好ましくは、位置合わせするステップでは、撮像部により取得される画像のうち、検査対象の全部または一部を含む画像のすべてを対象にして、位置合わせを行う。
【0014】
好ましくは、合成画像を生成するステップでは、撮像部の視野範囲より広い範囲の合成画像を生成する。
【0015】
好ましくは、照明光源は、その長手方向が検査対象の移動方向に対して実質的に直交するように配置される。
【0016】
好ましくは、合成画像を生成するステップは、第1の検査対象について撮像部による一連の撮像により取得された複数の画像を表示するステップと、表示された複数の画像のうち合成画像の生成に使用される画像の選択を受付けるステップと、第2の検査対象について撮像部による一連の撮像により取得された複数の画像のうち、第1の検査対象について選択された画像の撮像タイミングに対応する画像を用いて合成画像を生成するステップとを含む。
【0017】
この発明の別の局面に従う画像処理装置は、予め定められた位置に配置された撮像部と、撮像部に対して一定の相対位置に配置された照明光源と、制御部とを含む。制御部は、撮像部の視野を照明した状態で、予め定められた方向に移動する検査対象を撮像部に複数回撮像させる手段と、撮像部による一連の撮像により取得される複数の画像のうち2つの画像間で検査対象の少なくとも一部を示す領域を順次探索することで、検査対象を基準として、複数の画像を位置合わせする手段と、当該位置合わせされた複数の画像について、単位領域毎に、当該単位領域に対応する、位置合わせされた複数の画像におけるそれぞれの領域が有する画像情報から当該単位領域を代表する画像情報を算出することで、合成画像を生成する手段とを含む。
【発明の効果】
【0018】
本発明によれば、連続的に移動する検査対象を静止させることなく、光沢を除去して、より精度の高い画像処理を行うことができる。
【図面の簡単な説明】
【0019】
【図1】本発明の実施の形態に係る画像処理装置を含む視覚センサシステムの全体構成を示す概略図である。
【図2】本発明の実施の形態に係る画像処理装置の概略構成図である。
【図3】ワークを撮像して得られる画像に映り込む光沢の一例を説明するための模式図である。
【図4】本実施の形態に係る光沢除去合成の処理概要を説明するための模式図である。
【図5】本発明の実施の形態に係る画像処理装置における通常運転モードでの処理手順を示すフローチャートである。
【図6】本実施の形態に係る光沢除去合成の合成設定を行うためのユーザインターフェイス画面の一例を示す図である。
【図7】本発明の実施の形態に係る光沢除去合成において輝度の最小値を選択した場合の処理例を示す図である。
【図8】本発明の実施の形態に係る光沢除去合成において輝度の最小値を選択することでより適切な合成画像が得られる場合の処理例を示す図である。
【図9】本発明の実施の形態に係る光沢除去合成において輝度の最大値を選択することでより適切な合成画像が得られる場合の処理例を示す図である。
【図10】本発明の実施の形態に係る光沢除去合成において輝度の中間値/平均値を選択することでより適切な合成画像が得られる場合の処理例を示す図である。
【図11】本実施の形態に係る光沢除去合成の合成設定を行うための別のユーザインターフェイス画面の一例を示す図である。
【図12】本発明の実施の形態に係る撮像設定の影響を説明するための図である。
【図13】撮像設定のタブが選択された場合に表示される設定画面の一例を示す図である。
【図14】撮像設定のタブが選択された場合に表示される設定画面の別の一例を示す図である。
【図15】撮像設定のタブが選択された場合に表示される設定画面のさらに別の一例を示す図である。
【図16】本発明の実施の形態に係る画像処理装置における設定モードでの処理手順を示すフローチャートである。
【図17】本実施の形態に係る光沢除去合成を用いた処理例を示す図である。
【図18】本実施の形態の変形例1に係るパターンサーチおよび画像の位置合わせ処理を説明するための図である。
【図19】本実施の形態の変形例2に係るパターンサーチおよび画像の位置合わせ処理の変形例を説明するための図である。
【図20】本実施の形態の変形例に係る光沢除去合成の作用効果を説明するための模式図である。
【図21】照明光源の長手方向とワークの移動方向とが一致している場合を示す模式図である。
【図22】照明光源の長手方向とワークの移動方向とが直交している場合を示す模式図である。
【発明を実施するための形態】
【0020】
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【0021】
<A.全体装置構成>
図1は、本発明の実施の形態に係る画像処理装置100を含む視覚センサシステム1の全体構成を示す概略図である。
【0022】
図1を参照して、視覚センサシステム1は、本実施の形態に係る画像処理システムの一適用例であり、生産ラインなどに組込まれて検査対象2(以下「ワーク2」とも称す。)を撮像して得られる画像に基づいて、文字認識やキズ検査といった処理(以下、「計測処理」とも称す。)を実行する。
【0023】
一例として、本実施の形態においては、ワーク2はベルトコンベヤなどの搬送機構6によって所定方向に搬送される。これに対して、撮像部8は、ワーク2に対して固定した位置に配置されている。さらに、撮像部8に対して、一定の相対位置に照明光源9が配置される。この照明光源9は、少なくとも、撮像部8の視野(ワーク2が位置し得る範囲)を照明する。そして、撮像部8が移動するワーク2を複数回撮像する。撮像部8によって得られた複数の画像データは、画像処理装置100へ伝送される。この照明光源9は、周囲の照明環境からの外乱を受けないように、光量、設置数、配置位置などが最適化されることが好ましい。
【0024】
なお、本明細書において「撮像」とは、基本的には、撮像部8が視野内の被写体からの光を受光し、それを示す画像を出力する処理を意味する。但し、撮像部8が視野内の被写体を示す画像を所定周期で繰返し生成している場合には、撮像部8が生成する画像のうち、特定の画像を記憶部に格納する処理を意味する。すなわち、ある観点から見れば、「撮像」とは、ある意図されたタイミングにおいて、撮像部8が視野内の被写体の内容を示す画像を取得して計測処理可能な状態にすることを意味する。
【0025】
ワーク2が撮像部8の視野内に到達したことは、搬送機構6の両端に配置された検出センサ4によって検出される。具体的には、検出センサ4は、同一の光軸上に配置された受光部4aと投光部4bとを含み、投光部4bから放射される光がワーク2で遮蔽されることを受光部4aで検出することによって、ワーク2の到達を検出する。この検出センサ4の検出信号(以下「トリガ信号」とも称す。)は、PLC(Programmable Logic Controller)5へ出力される。
【0026】
PLC5は、検出センサ4などからのトリガ信号を受信するとともに、搬送機構6の制御自体を司る。
【0027】
視覚センサシステム1は、さらに、画像処理装置100と、ディスプレイ102と、マウス104とを含む。画像処理装置100は、PLC5と、撮像部8と、ディスプレイ102と、マウス104とに接続される。後述するように、画像処理装置100は、(1)ワーク2を試験的に移動/撮像するなどして必要な設定値を入力/決定するための設定モードと、(2)一連の画像処理を実行するための通常運転モードとを有する。
【0028】
撮像部8は、一例として、レンズなどの光学系に加えて、CCD(Coupled Charged Device)やCMOS(Complementary Metal Oxide Semiconductor)センサといった、複数の画素に区画された撮像素子を含んで構成される。
【0029】
画像処理装置100は、汎用的なアーキテクチャを有しているコンピュータであり、予めインストールされたプログラムを実行することで、後述するような各種機能を提供する。このような汎用的なコンピュータを利用する場合には、本実施の形態に係る機能を提供するためのアプリケーションに加えて、コンピュータの基本的な機能を提供するためのOS(Operating System)がインストールされていてもよい。この場合には、本実施の形態に係るプログラムは、OSの一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。すなわち、本実施の形態に係るプログラム自体は、上記のようなモジュールを含んでおらず、OSと協働して処理が実行される。本実施の形態に係るプログラムとしては、このような一部のモジュールを含まない形態であってもよい。
【0030】
さらに、本実施の形態に係るプログラムは、他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には、上記のような組合せられる他のプログラムに含まれるモジュールを含んでおらず、当該他のプログラムと協働して処理が実行される。すなわち、本実施の形態に係るプログラムとしては、このような他のプログラムに組込まれた形態であってもよい。なお、プログラムの実行により提供される機能の一部もしくは全部を専用のハードウェア回路として実装してもよい。
【0031】
図2は、本発明の実施の形態に係る画像処理装置100の概略構成図である。図2を参照して、画像処理装置100は、演算処理部であるCPU(Central Processing Unit)110と、記憶部としてのメインメモリ112およびハードディスク114と、カメラインターフェイス116と、入力インターフェイス118と、表示コントローラ120と、PLCインターフェイス122と、通信インターフェイス124と、データリーダ/ライタ126とを含む。これらの各部は、バス128を介して、互いにデータ通信可能に接続される。
【0032】
CPU110は、ハードディスク114に格納されたプログラム(コード)をメインメモリ112に展開して、これらを所定順序で実行することで、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)などの揮発性の記憶装置であり、ハードディスク114から読み出されたプログラムに加えて、撮像部8によって取得された画像データや、画像データの処理結果を示すデータ、およびワークデータなどを保持する。また、ハードディスク114は、不揮発性の磁気記憶装置であり、CPU110で実行されるプログラムに加えて、後述するパターンサーチにおいて基準となる画像データ(以下「モデル画像」とも称す。)を記憶する。さらに、ハードディスク114には、各種設定値などが格納されてもよい。このハードディスク114にインストールされるプログラムは、後述するように、メモリカード106などに格納された状態で流通する。なお、ハードディスク114に加えて、あるいは、ハードディスク114に代えて、フラッシュメモリなどの半導体記憶装置を採用してもよい。
【0033】
カメラインターフェイス116は、CPU110と撮像部8との間のデータ伝送を仲介する。すなわち、カメラインターフェイス116は、ワーク2を撮像して画像データを生成する撮像部8を接続する。より具体的には、カメラインターフェイス116は、1つ以上の撮像部8と接続が可能であり、撮像部8からの複数の画像データを一時的に蓄積するための画像バッファ116aを含む。そして、カメラインターフェイス116は、画像バッファ116aに少なくとも1コマ分の画像データが蓄積されると、その蓄積されたデータをメインメモリ112へ転送する。また、カメラインターフェイス116は、CPU110が発生した内部コマンドに従って、撮像部8に対して撮像指令を与える。
【0034】
入力インターフェイス118は、CPU110とマウス104、キーボード、タッチパネルなどの入力部との間のデータ伝送を仲介する。すなわち、入力インターフェイス118は、ユーザが入力部を操作することで与えられる操作指令を受付ける。
【0035】
表示コントローラ120は、表示装置の典型例であるディスプレイ102と接続され、CPU110における画像処理の結果などをユーザに通知する。すなわち、表示コントローラ120は、ディスプレイ102に接続され、当該ディスプレイ102での表示を制御する。
【0036】
PLCインターフェイス122は、CPU110とPLC5との間のデータ伝送を仲介する。より具体的には、PLCインターフェイス122は、PLC5によって制御される生産ラインの状態に係る情報やワークに係る情報などをCPU110へ伝送する。
【0037】
通信インターフェイス124は、CPU110とコンソール(あるいは、パーソナルコンピュータやサーバ装置)などとの間のデータ伝送を仲介する。通信インターフェイス124は、典型的には、イーサネット(登録商標)やUSB(Universal Serial Bus)などからなる。なお、後述するように、メモリカード106に格納されたプログラムを画像処理装置100にインストールする形態に代えて、通信インターフェイス124を介して、配信サーバなどからダウンロードしたプログラムを画像処理装置100にインストールしてもよい。
【0038】
データリーダ/ライタ126は、CPU110と記録媒体であるメモリカード106との間のデータ伝送を仲介する。すなわち、メモリカード106には、画像処理装置100で実行されるプログラムなどが格納された状態で流通し、データリーダ/ライタ126は、このメモリカード106からプログラムを読み出す。また、データリーダ/ライタ126は、CPU110の内部指令に応答して、撮像部8によって取得された画像データおよび/または画像処理装置100における処理結果などをメモリカード106へ書き込む。なお、メモリカード106は、CF(Compact Flash)、SD(Secure Digital)などの汎用的な半導体記憶デバイスや、フレキシブルディスク(Flexible Disk)などの磁気記憶媒体や、CD−ROM(Compact Disk Read Only Memory)などの光学記憶媒体等からなる。
【0039】
また、画像処理装置100には、必要に応じて、プリンタなどの他の出力装置が接続されてもよい。
【0040】
<B.光沢除去合成>
まず、図3および図4を参照して、本実施の形態に係る光沢除去合成について説明する。図3は、ワーク2を撮像して得られる画像に映り込む光沢の一例を説明するための模式図である。図4は、本実施の形態に係る光沢除去合成の処理概要を説明するための模式図である。
【0041】
図3には、撮像部8を用いてワーク2を上方から撮像した場合(図1参照)に得られる画像の一例を示す。図3(a)には、光沢の映り込みがなく適正に撮像ができている場合の画像の一例を示し、図3(b)および図3(c)には、画像内に光沢202が映り込んでいる一例を示す。
【0042】
図3(a)に示すような画像IMGAが取得できた場合には、検出対象の文字(この場合には、文字「ABC」)を正しく認識および検知することができる。
【0043】
これに対して、図3(b)に示すような画像IMGBには、文字「A」の付近に光沢202(白い帯状の領域)が映り込んでおり、これにより、ワーク2上に文字「A」が印字されていないと誤って判断される可能性がある。
【0044】
また、図3(c)に示すような画像IMGCは、その表面に目的の文字とは異なる文字「ABG」が印字されたワーク2を撮像して得られたものであるが、文字「G」の付近に光沢202(白い帯状の領域)が映り込んでおり、これにより、目的の文字「ABC」がワーク2上に適正に印字されていると誤って判断される可能性がある。
【0045】
すなわち、図3(b)および図3(c)に示すように、光沢が映り込むことで、本来は正常であるワークを異常であると誤って判断したり、本来は異常であるワークを正常であると誤って判断したりする場合がある。本実施の形態に係る画像処理方法(以下、「光沢除去合成」とも称す。)では、このような問題を抑制することを目的とする。
【0046】
なお、本明細書において「光沢」とは、ワークの特定領域に入射する光の光量やワークの表面形状などに起因して、ワーク表面にある撮像すべき情報が正しく取得できない領域を意味する。典型的には、ワークから反射して撮像部8に入射する光が相対的に強すぎて、いわゆるハレーションもしくはハレーションに近い状態となることで生じ得るが、ワークから反射する光が微弱すぎてワーク表面の画像情報を読取れないような場合においても生じ得る。
【0047】
本実施の形態に係る光沢除去合成においては、基本的には、図1に示すように、撮像部8の撮像条件および照明光源9による照明条件を維持したまま、撮像部8に対するワーク2の相対的な位置を異ならせることで複数の画像を取得する。そして、取得された複数の画像を合成することで、映り込む光沢を除去する。すなわち、ワーク2が撮像部8に対して時間的に移動するので、ワーク2において光沢の映り込みが生じる位置は、各撮像の間で異なると考えられる。そのため、ある画像において正しく取得できない画像情報であっても、他の画像においては正しく取得できる可能性が高くなる。
【0048】
一例として、図4に示すように、撮像部8に対してワーク2の相対的な位置を異ならせつつ、撮像部8によりワーク2を3回撮像することで、画像IMG1,IMG2,IMG3が得られたとする。この画像IMG1,IMG2,IMG3の各々についてみると、各画像内において光沢202が映り込んでいる位置は略同一であるが、ワーク2が移動しているため、光沢202が映り込んでいるワーク2を基準とした位置は異なったものとなっている。
【0049】
したがって、これらの3つの画像IMG1,IMG2,IMG3を合成することで、光沢202が映り込むことで欠落した画像情報を復元することができる。
【0050】
このような画像合成を行うために、画像処理装置100は、撮像部8による一連の撮像により取得される複数の画像について、撮像順において連続する2つの画像間でワーク2の少なくとも一部を示す領域を順次探索(トラッキング)する。そして、画像処理装置100は、ワーク2を基準として、複数の画像を位置合わせする。画像処理装置100は、この位置合わせされた複数の画像を用いて光沢除去合成を行うことで、合成画像SIMGを生成する。
【0051】
より具体的には、図4に示すように、第1番目の撮像により得られた画像IMG1から、ワーク2を示すモデル画像211を抽出するとともに、当該モデル画像211に基づいてパターンサーチを行うことで、第2番目の撮像により得られた画像IMG2のうち、モデル画像211と合致する領域を探索する。これにより、ワーク2のある領域(モデル画像として抽出される部分)が第1番目の撮像から第2番目の撮像までの間に、どこに移動したのかを特定することができる。
【0052】
同様に、第2番目の撮像により得られた画像IMG2からワーク2を示すモデル画像212を抽出するとともに、当該モデル画像212に基づいてパターンサーチを行うことで、第3番目の撮像により得られた画像IMG3のうち、モデル画像212と合致する領域を探索する。これにより、ワーク2を示す領域(モデル画像212)が第2番目の撮像から第3番目の撮像までの間に、どこに移動したのかを特定することができる。
【0053】
より多くの画像が撮像された場合には、以上のような処理が繰返し実行される。なお、後述するように、撮像順に連続する2つの画像の間において、モデル画像として抽出する領域の大きさは、互いに独立に決定してもよい。すなわち、各画像において最適なサイズのモデル画像を抽出するようにしてもよい。
【0054】
以上のように、パターンサーチにより、ワーク2の移動量を算出するとともに、このワーク2の移動量に基づいて、3つの画像IMG1,IMG2,IMG3の間を位置合わせする。より具体的には、ワーク2を基準として、3つの画像IMG1,IMG2,IMG3を位置合わせする。すなわち、各画像に表われるワーク2が画像間で実質的に同じ位置となるように位置合わせされる。
【0055】
なお、撮像部8による一連の撮像により取得される複数の画像のうち、必ずしも連続する2つの画像を用いなくともよく、たとえば、所定周期で繰返し撮像されることで得られる一連の画像群のうち、撮像順において所定間隔だけ離れたもの(たとえば、奇数番目のものだけ)を用いて、トラッキングを行ってもよい。
【0056】
続いて、画像処理装置100は、合成画像SIMGを構成する単位領域(典型的には、1画素)毎に、当該単位領域に対応する、上記のように位置合わせされた3つの画像IMG1,IMG2,IMG3におけるそれぞれの領域が有する画像情報から当該単位領域を代表する画像情報を算出する。より具体的には、画像処理装置100は、3つの画像IMG1,IMG2,IMG3が(仮想的に)位置合わせされた状態で、各画像において対応する画素が有する輝度(この例では、全部で3つの輝度の情報が得られる)を取得し、取得した輝度について、所定の算出規則(アルゴリズム)に従って当該画素を代表する輝度を算出する。この算出処理を、画像に含まれる画素の数だけ繰返すことで、合成画像SIMGを生成する。後述するように、典型的なアルゴリズムとしては、最小値、最大値、平均値、中央値のいずれかである。
【0057】
なお、必ずしも1画素単位で代表値を算出する必要はなく、複数画素(たとえば、隣接する4画素)を1つの単位領域として取扱ってもよい。また、合成画像SIMGのある単位領域と完全に対応する各画像の領域に含まれる画素の輝度だけでなく、それぞれの領域に隣接する範囲に含まれる画素の輝度を用いて、合成画像の各単位領域における輝度を算出してもよい。
【0058】
<C.処理手順(通常運転モード)>
以下、図5を参照して、本実施の形態に係る画像処理装置100における通常運転モードでの処理手順について説明する。
【0059】
図5は、本発明の実施の形態に係る画像処理装置100における通常運転モードでの処理手順を示すフローチャートである。なお、図5に示す各ステップは、典型的には、画像処理装置100のCPU110がプログラムを実行することで提供される。
【0060】
図5を参照して、通常運転モードが選択されると、CPU110は、後述する設定モードなどにおいてユーザが設定した設定値を読出す(ステップS100)。続くステップS102において、CPU110は、光沢除去合成の実行タイミングとなったか否かを判断する。典型的には、CPU110は、図1に示す検出センサ4からの信号に基づいて、ワーク2が撮像部8の視野内に到達したか否かを判断する。あるいは、CPU110は、撮像部8により取得される画像の背景が変化したか否かに基づいて、ワーク2が撮像部8の視野内に到達したことを検出する。
【0061】
光沢除去合成の実行タイミングとなったと判断された場合(ステップS102においてYESの場合)には、処理はステップS104へ進む。そうでなければ(ステップS102においてNOの場合)には、ステップS102の処理が繰返される。
【0062】
ステップS104において、CPU110は、カメラインターフェイス116に内部指令を与えることで、撮像部8により撮像されるワーク2の画像を取得する。続くステップS106において、CPU110は、撮像部8の第1番目の撮像により取得された第1番目の画像に対してモデル領域を設定する。さらに続くステップS108において、CPU110は、第1番目の画像のうち設定したモデル領域に含まれる部分をモデル画像として抽出する。なお、このモデル領域は、予め設定されている固定値としてもよいし、取得された画像の内容に応じて動的に設定してもよい。
【0063】
その後、ステップS110において、CPU110は、カメラインターフェイス116に内部指令を与えることで、撮像部8により撮像されるワーク2の画像を取得する。続くステップS112において、CPU110は、撮像部8の第i番目(i≧2)の撮像により取得された第i番目の画像に対して、第(i−1)番目の画像から抽出されたモデル画像に基づいてパターンサーチを行う。ステップS114において、CPU110は、パターンサーチの結果に基づいて、第(i−1)番目の画像を基準とした第i番目の画像の移動量を算出する。
【0064】
ステップS116において、CPU110は、撮像部8の第i番目の撮像により取得された第i番目の画像に対してモデル領域を設定する。続くステップS118において、CPU110は、第i番目の画像のうち設定したモデル領域に含まれる部分をモデル画像として抽出する。
【0065】
ステップS120において、CPU110は、設定値として指定された撮像枚数の撮像が完了したか否かを判断する。指定された撮像枚数の撮像が完了していない場合(ステップS120においてNOの場合)には、CPU110は、ステップS110以下の処理を繰返す。一方、指定された撮像枚数の撮像が完了した場合(ステップS120においてYESの場合)には、処理はステップS122へ進む。すなわち、処理がステップS122に進む時点においては、指定された枚数の画像が撮像により取得されていることになる。
【0066】
ステップS122において、CPU110は、ステップS114において算出した移動量に基づいて、撮像部8の撮像により得られた一連の画像間の位置合わせを行う。続くステップS124において、CPU110は、位置合わせされた一連の画像に対して、光沢除去合成を実行する。さらに続くステップS126において、CPU110は、光沢除去合成により得られた画像や各種の情報を示す合成結果などを出力する。
【0067】
ステップS128において、CPU110は、通常運転モードの終了が指示されたか否かを判断する。通常運転モードの終了が指示されていない場合(ステップS128においてNOの場合)には、ステップS102以下の処理が繰返される。一方、通常運転モードの終了が指示された場合(ステップS128においてYESの場合)には、処理は終了する。
【0068】
<D1.合成設定(その1)>
次に、図5に示すステップS124の光沢除去合成の詳細について説明する。
【0069】
図6は、本実施の形態に係る光沢除去合成の合成設定を行うためのユーザインターフェイス画面の一例を示す図である。
【0070】
本実施の形態に係る画像処理装置100の設定モードにおいては、本明細書において説明する光沢除去合成に関する設定に加えて、他の処理に係る設定をすることができる。一例として、図6に示すように、「カメラ設定」、「HDR設定」、「動き追従設定」、「合成設定」、「ホワイトバランス」、「キャリブレーション」の計6個のタブ411〜416に区切られて、各タブに関する設定値が入力可能となっている。
【0071】
以下の説明では、カメラ設定のタブ411、ホワイトバランスのタブ415、および、キャリブレーションのタブ416において、それぞれ撮像部8についての設定値がすでに入力されているものとする。また、HDR設定のタブ412および動き追従設定のタブ413において設定される項目については、光沢除去合成と直接的には関係しないので、ここでは詳細な説明は行わない。
【0072】
図6は、合成設定のタブ414が選択された場合に表示される設定画面402の一例を示す。この設定画面402は、一連の画像間の位置合わせ(図5に示すステップS122)を行った後、光沢除去合成(図5に示すステップS124)において使用される合成画像を生成するためのアルゴリズムの設定を受付ける。
【0073】
すなわち、合成画像は、位置合わせされた複数の画像から、各座標に対応付けられる画素が有するそれぞれの輝度を取得し、当該座標を代表する値を取得した輝度に基づいて算出することで生成される。このとき、複数の輝度のうちいずれを用いるか、あるいは、どのようなアルゴリズムを用いるか、を設定するためのユーザインターフェイスが設定画面402である。
【0074】
設定画面402は、合成設定の項目として、合成設定430およびモード設定440を含む。合成設定430は、最小値、最大値、平均値、および、中央値を選択するためのラジオボタン431〜434を含む。ユーザは、ラジオボタン431〜434のうちいずれか1つを任意に選択することができる。各ラジオボタンが選択された場合の処理については後述する。
【0075】
また、モード設定440は、輝度に基づいて合成画像を生成する通常モードを選択するためのラジオボタン441と、色相に基づいて合成画像を生成する色相強調モードを選択するためのラジオボタン442とを含む。ユーザは、ラジオボタン441または442のうち一方を選択することができる。
【0076】
設定画面402は、さらに、画像表示エリア421と、全体表示エリア422と、表示制御アイコン群423とを含む。画像表示エリア421には、ラジオボタン431〜434および/またはラジオボタン440,441の選択に応じて選択されるアルゴリズムに従って生成された合成画像が表示される。また、表示制御アイコン群423に対するユーザ操作に応じて、画像表示エリア421に表示される合成画像のサイズが変更可能となっている。全体表示エリア422には、画像表示エリア421での表示サイズとは独立して、合成画像が常に全体表示される。
【0077】
図7は、本発明の実施の形態に係る光沢除去合成において輝度の最小値を選択した場合の処理例を示す図である。
【0078】
合成画像を生成するためのアルゴリズムとしては、一般的には、位置合わせされた一連の画像について、各座標に対応付けられる画素が有するそれぞれの輝度の最小値を選択する方法が考えられる。すなわち、画像に映り込む光沢(白光りするもの)は、相対的に大きな輝度を有するので、このような相対的に大きな輝度を排除することで、光沢除去合成がうまくいくことも多い。
【0079】
すなわち、図6に示す設定画面402において、ラジオボタン431が選択されることで、対応する画素の間で最小値を選択するためのアルゴリズムが有効化される。この場合の処理例を図7に示す。すなわち、図7に示す例では、画像IMG1,IMG2,IMG3に映り込んでいたそれぞれの光沢202が、光沢除去合成によって生成された合成画像SIMGでは、除去されていることがわかる。
【0080】
その一方で、生成された合成画像SIMGにおいては、輝度の最小値を各座標の代表値として決定することで、合成画像SIMGに小さな輝度を有する領域が生じる場合がある。たとえば、図7に示す例では、合成画像SIMG内の両端側が暗くなっているのがわかる。
【0081】
このような場合には、各座標に対応付けられる画素が有するそれぞれの輝度の中間値または平均値を代表値とするアルゴリズムを採用することで、より適切な合成画像SIMGを生成することができる場合もある。但し、この場合は、光沢が有する輝度の影響を受けて、部分的に輝度が高すぎる画素が生じる可能性もある。
【0082】
そこで、本実施の形態に係る画像処理装置100は、複数のアルゴリズムを用意しておき、撮影状況(照明条件や露光時間など)や撮像対象のワークの反射率などに応じて、適切なアルゴリズムをユーザが選択できるようにしている。
【0083】
図8は、本発明の実施の形態に係る光沢除去合成において輝度の最小値を選択することでより適切な合成画像SIMGが得られる場合の処理例を示す図である。
【0084】
図8に示すように、画像IMG1,IMG2,IMG3内に映り込む光沢202が白色である場合(相対的に輝度(あるいは、RGB値の合計)が大きい場合)、かつ、ワーク2が撮像部8に対して移動したときでも被写体の輝度(映り方)が変化しないような場合には、最小値のアルゴリズムを採用することで、より適切な合成画像SIMG−1を生成することができる。
【0085】
一方、このような場合に平均値のアルゴリズムを採用すると、光沢202の影響を受けて、全体的に白っぽい合成画像SIMG−2が生成されてしまう。
【0086】
図9は、本発明の実施の形態に係る光沢除去合成において輝度の最大値を選択することでより適切な合成画像SIMGが得られる場合の処理例を示す図である。
【0087】
図9に示すように、画像IMG1,IMG2,IMG3内に映り込む光沢202が黒色である場合(相対的に輝度(あるいは、RGB値の合計)が小さい場合)、かつ、ワーク2が撮像部8に対して移動したときでも被写体の輝度(映り方)が変化しないような場合には、最大値のアルゴリズムを採用することで、より適切な合成画像SIMGを生成することができる。典型的には、前処理として、撮像部8によって撮像された画像に対してネガ/ポジ(白黒)反転処理がなされるような場合があり、このような場合には、画像IMG1,IMG2,IMG3内に映り込む光沢202が黒色となる。
【0088】
図10は、本発明の実施の形態に係る光沢除去合成において輝度の中間値/平均値を選択することでより適切な合成画像SIMGが得られる場合の処理例を示す図である。
【0089】
図10に示すように、ワーク2が撮像部8に対して移動することで、画像IMG1,IMG2,IMG3内に映り込む光沢202以外の部分の輝度が変化してしまうような場合には、平均値または中央値のアルゴリズムを採用することで、より適切な合成画像SIMG−3を生成することができる。
【0090】
一方、このような場合に最小値のアルゴリズムを採用すると、ワーク2の移動に伴って生じる輝度の変化の影響を受けて、全体的に黒っぽい合成画像SIMG−4が生成されてしまう。
【0091】
なお、上述のアルゴリズム以外にも、たとえば、各座標に対応付けられる画素が有するそれぞれの輝度のうち、所定のしきい値を超えたものだけを有効とした上で、有効な輝度の間での平均値を代表値とするアルゴリズムを採用することもできる。
【0092】
<D2−1.合成設定(その2):手動設定>
上述のように、ユーザが光沢除去合成において使用するアルゴリズムを任意に選択できるようにしてもよいが、よりユーザフレンドリーの観点からは、各アルゴリズムに従って生成された合成画像を比較することで、最適なアルゴリズムを決定できることが好ましい。
【0093】
より具体的には、まず試験的に、目的のワーク2を移動させながら撮像部8により複数回撮像する(以下、「テストラン」と記載する場合もある。)。このとき、撮像部8により撮像される画像に対して、実際の検査処理(文字認識やキズ検査など)の対象とする指定範囲を設定しておくことが好ましい。
【0094】
そして、テストランにより取得された一連の画像に基づいて、上述の光沢除去合成を、複数のアルゴリズムのそれぞれに従って実行する。
【0095】
図11は、本実施の形態に係る光沢除去合成の合成設定を行うための別のユーザインターフェイス画面の一例を示す図である。図11に示す設定画面402においては、画像表示エリア425および全体表示エリア422に、テストランによって取得された一連の画像を各アルゴリズムに従って光沢除去合成をした結果得られた複数の合成画像が一覧表示される。図11に示す例では、最小値、平均値、中央値、および、最大値のそれぞれのアルゴリズムに従って得られた合成画像が表示されている。また、各合成画像上には、指定範囲428の位置を示す枠がオーバレイ表示されている。
【0096】
設定画面402は、画像表示エリア425および全体表示エリア422での複数の合成画像の表示とともに、いずれのアルゴリズムを通常モードにおいて使用するかの設定を受付けるための合成設定430Aを含む。この合成設定430Aは、最小値、最大値、平均値、および、中央値を選択するためのラジオボタン435〜438を含む。ユーザは、4つの合成画像を比較しながら、ラジオボタン435〜438のうちいずれか1つを任意に選択することができる。
【0097】
すなわち、画像処理装置100は、合成画像の単位領域を代表する画像情報を算出するためのアルゴリズム(算出規則)を複数に異ならせて、それぞれのアルゴリズムに従って複数種類の合成画像を生成し、当該生成された複数種類の合成画像を表示し、当該複数のアルゴリズムのうち合成画像の生成に使用すべきアルゴリズムの選択を受付ける。
【0098】
<D2−2.合成設定(その2):自動設定>
上述した合成設定(その2)を自動化してもよい。すなわち、生成された複数種類の合成画像について識別度合いを示す指標を算出し、この算出した指標に従って、いずれのアルゴリズムが最適であるかが判断される。
【0099】
典型的には、ワークの下地の色に対して、その表面に印字された文字の色がより正確に識別されるように、アルゴリズムが決定される。具体的には、各アルゴリズムに従って生成された合成画像に設定された指定範囲428に含まれる画素について、(a)各画素が有する輝度の分散値が最大となる合成画像に対応するアルゴリズム、(b)最大の輝度と最小の輝度の差が最も大きくなる合成画像に対応するアルゴリズム、(c)最大の輝度と最小の輝度の比が最も大きくなる合成画像に対応するアルゴリズム、といった具合に最適なアルゴリズムが決定される。
【0100】
なお、ワークの下地の色に対してその表面に印字された文字の色がより正確に識別されるとは、ユーザの見た目において識別可能であること、および、文字認識やキズ検査処理といった画像処理において識別可能であることのいずれの場合もあり得る。
【0101】
すなわち、画像処理装置100は、単位領域を代表する画像情報を算出するためのアルゴリズム(算出規則)を複数に異ならせて、それぞれのアルゴリズムに対応する複数種類の合成画像を生成し、当該生成された複数種類の合成画像について識別度合いを示す指標を算出し、算出した指標に従って、当該複数のアルゴリズムのうち合成画像の生成に使用すべきアルゴリズムを選択する。
【0102】
<E.撮像設定>
次に、撮像部8の撮像枚数、撮像周期、および、使用枚数を含む撮像設定について説明する。
【0103】
本実施の形態に係る画像処理装置100においては、1回の光沢除去合成において撮像部8によりワーク2を撮像する回数(撮像枚数および撮像周期)、および、撮像により得られた複数の画像のうち実際に合成画像の生成に使用される枚数(使用枚数)を設定することができる。
【0104】
まず、撮像枚数および撮像周期についてみれば、撮像枚数が多いほど光沢を除去できる可能性が高くなり好ましいが、1回の光沢除去合成に要する時間が長くなる。また、撮像周期についてみれば、撮像周期が短すぎると、連続する画像間において近似した位置に光沢が写り込むことで、光沢を十分に除去できない場合がある。一方で、撮像周期が長すぎると、1回の光沢除去合成に要する時間が長くなるとともに、ワーク2が撮像部8の視野内に存在する期間が限られているので、実際に撮像できる枚数も制限される。
【0105】
また、撮像枚数が同じでも、光沢除去合成に使用する画像の選択を適切に行うことで、より確実に光沢を除去できる場合もある。
【0106】
図12は、本発明の実施の形態に係る撮像設定の影響を説明するための図である。図12を参照して、まず、所定の撮像周期でワーク2を繰返し撮像することで、4つの画像IMG1〜IMG4が取得されたとする。これらの画像IMG1〜IMG4の各々においては、光沢202が写り込んでいるものとする。
【0107】
たとえば、上述の光沢除去合成に従って、画像IMG1と画像IMG2とを用いて合成画像SIMG1を生成したとする。このとき、画像IMG1において光沢202が映り込んでいる位置および画像IMG2において光沢202が映り込んでいる位置は、互いに近接しているので、再現すべきワーク2についての画像情報のうち、いずれの画像においても光沢202が移り込んでいた領域が存在する。その結果、合成画像SIMG1においても除去しきれない光沢204が現れてしまう。
【0108】
別の例として、上述の光沢除去合成に従って、画像IMG1と画像IMG4とを用いて合成画像SIMG3を生成したとする。このとき、光沢202が発生する位置の周期性から、画像IMG1において光沢202が写り込んでいる位置と、画像IMG4において光沢202が写り込んでいる位置とは、互いに近接することになる。その結果、合成画像SIMG1の場合と同様に、再現すべきワーク2についての画像情報のうち、いずれの画像においても光沢202が移り込んでいた領域が存在する。その結果、合成画像SIMG3においても除去しきれない光沢204が現れてしまう。
【0109】
これらに対して、画像IMG1と画像IMG3を用いて合成画像SIMG2を生成したとする。このとき、画像IMG1において光沢202が映り込んでいる位置と画像IMG3において光沢202が映り込んでいる位置とは離れているので、再現すべきワーク2についての画像情報は、少なくとも画像IMG1および画像IMG3のいずれか一方に含まれることになる。その結果、光沢202が除去された合成画像SIMG2が生成される。
【0110】
そこで、本実施の形態に従う画像処理装置100は、ユーザがこれらの撮像設定を容易に行うことができるユーザインターフェイスを提供する。
【0111】
[e1.設定画面(その1)]
図13は、撮像設定のタブ412が選択された場合に表示される設定画面406の一例を示す。この設定画面406は、撮像部8によるワークの撮像に関する設定を受付ける。より具体的には、設定画面406は、撮像設定の項目として、選択設定450、撮像枚数設定460、合成設定490、および、ぶれ強度設定480を含む。
【0112】
選択設定450は、画像処理装置100に複数の撮像部8が接続されている場合などのように、画像の入力ソースが複数存在する場合に、どの入力ソースを有効化するかという選択を受付ける。すなわち、選択設定450は、カメラ選択ダイアログ451を含み、ユーザは、表示されるプルダウンメニュー(選択可能な撮像部8がリスト表示される)から、目的の撮像部8を選択する。
【0113】
撮像枚数設定460は、1つのワーク2に対する撮像枚数を受付ける。より具体的には、撮像枚数設定460は、スライドバー461と、変更ボタン462および464とを含む。ユーザは、スライドバー461または変更ボタン462を操作することで、処理をより高速化して撮像できるように、撮像枚数および/または撮像周期を変更することができる(すなわち、より少ない撮像枚数、および/または、より長い撮像周期)。あるいは、ユーザは、スライドバー461または変更ボタン464を操作することで、生成される合成画像がより高精度となるように、撮像枚数および/または撮像周期を変更することができる(すなわち、より多い撮像枚数、および/または、より短い撮像周期)。
【0114】
なお、撮像枚数設定460には、1つのワーク2に対して撮像される回数(撮像枚数、図13に示す例では「10枚」)、および、1回の光沢除去合成に要すると予想される処理時間(予想処理時間、図13に示す例では「300ms」)が表示される。
【0115】
合成設定490は、1つのワーク2に対して複数回の撮像を行うことで得られる複数の画像のうち、光沢除去合成に使用される画像の選択を受付ける。具体的には、合成設定490は、合成開始番号ダイアログ492および合成間隔ダイアログ494を含む。合成開始番号ダイアログ492は、1つのワーク2に対する連続的な撮像によって得られる画像に通し番号を付した場合に、いずれの画像を光沢除去合成に用いる最初の画像とするかについての設定(番号)を受付ける。また、合成間隔ダイアログ494は、一連の画像のうち、光沢除去合成に用いる画像の間隔についての設定を受付ける。図13に示す例では、合成開始番号が「2」であり、合成間隔が「2」であるので、「2番目」、「4番目」、「6番目」、「8番目」、「10番目」の計5枚の画像が光沢除去合成に用いられる。
【0116】
ぶれ強度設定480は、画像間のパターンサーチによる誤差(ぶれ)を吸収するための設定を受付ける。ぶれ強度設定480は、誤差を吸収するためのパラメータが入力されるぶれ強度値ダイアログ481を含む。このぶれ強度値ダイアログ481に設定されるパラメータの一例としては、合成画像を生成する際に、各座標についての代表値を算出する範囲の拡大度合いを示す値が用いられる。たとえば、合成画像に含まれる各座標の輝度を算出する際に、各画像についての対応する座標におけるそれぞれの輝度、および、各座標から強度値ダイアログ481に設定されるパラメータ(画素数)以内の周囲に含まれる画素が有する輝度を抽出し、当該抽出した輝度に基づいて代表値を決定することができる。
【0117】
さらに、設定画面406は、画像表示エリア427を有し、この画像表示エリア427には、ぶれ強度設定480において設定されたぶれ強度に基づいて誤差補正を行った場合に得られた合成画像427Bと、当該誤差補正を行っていない合成画像427Aとが対比して表示される。この表示により、ユーザは、ぶれ強度設定480における設定に応じた誤差補正の度合いを視認しながら、適切なぶれ強度の大きさを設定することができる。
【0118】
[e2.設定画面(その2)]
図13に示す設定画面406においては、スライドバー461を操作することで、「高速処理」側および「高精度処理」側に設定値を変更できるユーザインターフェイスの例を示したが、撮像枚数および撮像周期をそれぞれ独立に設定できるようにしてもよい。
【0119】
図14は、撮像設定のタブ412が選択された場合に表示される設定画面の別の一例を示す。図14を参照して、設定画面407は、図13に示す設定画面406において、撮像枚数設定460に代えて撮像枚数設定460Aを採用したものである。その他については、図13と同様であるので、詳細な説明は繰返さない。
【0120】
撮像枚数設定460Aは、1つのワーク2に対する撮像枚数および撮像周期の設定を受付ける。より具体的には、撮像枚数設定460Aは、撮像枚数ダイアログ467と、撮像周期ダイアログ468とを含む。撮像枚数ダイアログ467は、撮像部8が1つのワーク2に対して撮像する回数である撮像枚数を受付ける。また、撮像周期ダイアログ468は、撮像部8が1つのワーク2に対してある撮像が完了してから次の撮像を開始するまでの時間間隔である撮像周期を受付ける。
【0121】
このようなユーザインターフェイスを利用することで、ユーザは、より高い自由度で、ワーク2を撮像するための撮像設定を行うことができる。
【0122】
[e3.設定画面(その3)]
図13に示す設定画面406においては、合成設定490において、「合成開始番号」および「合成間隔」を設定することで、光沢除去合成に使用する画像を選択できるユーザインターフェイスの例を示したが、ユーザが光沢除去合成に使用する実際の画像を見ながら選択してもよい。
【0123】
図15は、撮像設定のタブ412が選択された場合に表示される設定画面のさらに別の一例を示す。図15を参照して、設定画面408は、図13に示す設定画面406において、合成設定490に代えて撮像タイミング設定470を採用したものである。また、設定画面408は、画像表示エリア429を有し、この画像表示エリア429には、ワークの撮像によって得られた画像の一覧489が表示される。また、画像表示エリア429には、ぶれ強度設定480において設定されたぶれ強度に基づいて誤差補正を行った場合に得られた合成画像429Bと、当該誤差補正を行っていない合成画像429Aとが対比して表示される。その他については、図13と同様であるので、詳細な説明は繰返さない。
【0124】
画像表示エリア429の一覧489には、撮像部8が最小の撮像周期でワークを撮像することで得られる一連の画像が時系列に表示されるとともに、各画像に対応付けて、チェックボックスが表示される。ユーザは、光沢除去合成に使用すべき画像を、対応するチェックボックスをチェックすることで選択する。
【0125】
なお、ワークの種類や照明環境などに依存して、使用すべき画像の選択パターンを変更する必要もあると考えられるので、撮像タイミング設定470において、光沢除去合成に使用される画像の選択パターンを複数設定できるようになっている。すなわち、撮像タイミング設定470は、複数の選択パターンを作成/編集するためのダイアログ471を含む。図15に示す例では、ダイアログ471に、4つの選択パターン(Pattern 0〜Pattern 3)が登録されている。
【0126】
さらに、撮像タイミング設定470は、編集ボタン472を含み、ユーザが編集ボタン472を選択すると、ダイアログ471において指定されている選択パターンの内容を編集できる。編集後、確定ボタン473が選択されることで、変更後の選択パターンの内容が確定する。
【0127】
なお、基本的には、上述のパターンサーチは、探索精度を高めるために、使用される画像の選択とは独立して、1つのワークを撮像して得られる一連の画像のすべてを用いて行われる。そして、位置合わせされた画像のうち、選択された画像が有する画像情報に基づいて、合成画像が生成される。
【0128】
すなわち、画像処理装置100は、テストラン(設定モード)においてワーク2に対する撮像部8による一連の撮像により取得された複数の画像を表示するとともに、表示された複数の画像のうち合成画像の生成に使用される画像の選択を受付ける(設定画面408)。そして、画像処理装置100は、通常モードにおいて、それぞれ搬送されるワーク2について撮像部8による一連の撮像により取得された複数の画像のうち、先にテストランにおいて取得された選択に対応する撮像タイミングに従って、所定数の画像を用いて合成画像を生成する。
【0129】
[e4.撮像設定の自動化]
上述の例では、基本的に、ユーザが手動で撮像設定を行う例を示したが、撮像設定を自動的に決定する処理、あるいは、推奨値を算出してユーザによる撮像設定を支援するようにしてもよい。
【0130】
具体的には、撮像枚数および/または撮像周期については、許容される1ワークあたりの処理時間に基づいて、当該処理時間を超えないように算出するようにしてもよい。あるいは、ワークの移動速度に基づいて、撮像枚数および/または撮像周期を算出するようにしてもよい。
【0131】
また、光沢除去合成に使用する画像については、テストランに取得された一連の画像の間での輝度の変化に基づいて選択するようにしてもよい。すなわち、各画像において、いずれの位置に輝度が高い領域(光沢が写り込んでいると考えられる部分)が生じているかを判断し、その輝度が高い領域が生じている位置が互いに離れている画像を選択する。但し、この場合も、許容される1ワークあたりの処理時間に基づいて、光沢除去合成に使用する画像の枚数を決定することが好ましい。
【0132】
<F.処理手順(設定モード)>
以下、図16を参照して、上述の設定モードにおける処理手順について説明する。
【0133】
図16は、本発明の実施の形態に係る画像処理装置100における設定モードでの処理手順を示すフローチャートである。まず、ユーザは、本実施の形態に係る画像処理装置100を用いて光沢除去合成を実行するために、各種設定を行うものとする。すなわち、ユーザは、設定モードを指定する。
【0134】
CPU110は、設定モードが指定されたか否かを判断する(ステップS200)。設定モードが指定された場合(ステップS200においてYESの場合)には、処理はステップS202へ進む。設定モードが指定されなかった場合(ステップS200においてNOの場合)には、ステップS200の処理が繰返される。
【0135】
ステップS202において、CPU110は、各種設定を受付けるための設定画面を表示する。すなわち、上述の図6に示す設定画面402、図11に示す設定画面404、図13に示す設定画面406、図14に示す設定画面407、図15に示す設定画面408などをユーザ操作に応じて表示する。以下の各ステップにおいて、CPU110は、各種設定を受付ける。
【0136】
具体的には、ステップS204において、CPU110は、光沢除去領域を受付ける。光沢除去領域は、計測処理において着目すべき範囲を意味し、上述の例では、ワーク2の表面の「ABC」の文字が印字された範囲などに相当する。典型的には、ユーザは、設定画面402の画像表示エリア421(図6)において、図示しないユーザインターフェイス画面などを用いて、目的の範囲を指定する。
【0137】
続くステップS206において、CPU110は、合成設定を受付ける。より具体的には、図6に示す設定画面402における、合成設定430および/またはモード設定440において選択されたラジオボタンに対応したアルゴリズムを設定値として受付ける。なお、図11を参照して説明した自動設定がユーザによって選択された場合には、CPU110は、テストランにより得られた画像に対して、複数のアルゴリズムに従ってそれぞれ光沢除去合成を行って複数の合成画像を生成するとともに、各合成画像を評価して、最も適切な合成画像を生成できたアルゴリズムを設定値に決定する。
【0138】
続くステップS208において、CPU110は、光沢除去合成に用いる撮像枚数および使用画像の設定を受付ける。より具体的には、図13に示す設定画面406または図14に示す設定画面407において指定される撮像枚数や、図15に示す設定画面408において指定される使用画像を設定値として受付ける。
【0139】
続くステップS210において、CPU110は、撮像部8の視野におけるワーク2の移動方向や移動速度を受付ける。なお、上述のパターンサーチ処理において述べたように、連続して撮像される画像からワーク(被写体)の移動量(ベクトル量)を算出するので、必ずしもワーク2の移動方向や移動速度を予め設定しておく必要はない。
【0140】
上述したステップS204〜S210の処理によって必要な設定が受付けられると、CPU110は、テストランの開始を待つ(ステップS212)。ユーザは、通常運転モードと同様の動作環境にした上で、計測処理の対象ワークを試験的に撮像(テストラン)する。テストランが開始されると、CPU110は、入力された各種設定に従って、ワーク2を撮像して一連の画像を取得する(ステップS214)とともに、取得された一連の画像に対して光沢除去合成を実行する(ステップS216)。そして、CPU110は、光沢除去合成によって得られた合成画像をディスプレイ102などに表示する(ステップS218)。
【0141】
続くステップS220において、CPU110は、設定モードの完了が指示されたか否かを判断する。すなわち、ユーザは、テストランによって得られた合成画像に基づいて、先に入力した各種設定を見直す必要があるか否か、すなわち、現在の設定値で問題ないか否かを判断する。
【0142】
設定モードの完了が指示された場合(ステップS220においてYESの場合)には、CPU110は、入力された設定値を記憶して、設定モードを終了する。設定モードの完了が指示されなかった場合(ステップS220においてNOの場合)には、CPU110は、入力された設定値を記憶して、ステップS202以下の処理が繰返される。
【0143】
<G.処理例>
図17は、本実施の形態に係る光沢除去合成を用いた処理例を示す図である。この図17に示す処理例では、ワーク2としてペットボトルを用いた。図17(a)〜図17(g)には、ワーク2を順次移動させて撮像して得られたそれぞれの画像を示し、図17(h)には、図17(a)〜図17(g)に示す画像を用いて光沢除去合成することで得られた合成画像を示す。
【0144】
図17(a)〜図17(g)から明らかなように、ワーク2を撮像部8に対して相対移動させることで、取得される画像において、映り込んでいる光沢のワーク2に対する相対位置が異なっていることがわかる。すなわち、図17(a)〜図17(d)に示す画像においては、パッケージの表面に印字されているバーコードの一部が映り込んだ光沢により認識できない状態となっている。これに対して、図17(e)〜図17(g)に示す画像においては、より紙面左側にあるパッケージの内容の一部が光沢により認識できない状態となっており、バーコード自体は認識可能となっている。
【0145】
このような一連の画像(図17(a)〜図17(g))に対して、本実施の形態に係る光沢除去合成を適用することで、ワーク2の表面に印字されたパッケージの内容がより正しく認識可能な合成画像が生成される(図17(h)参照)。
【0146】
<H.視野拡大可能な光沢除去合成>
上述の図4などにおいては、基本的には、撮像部8の視野範囲より狭い範囲の合成画像を生成する光沢除去合成について説明したが、撮像部8の視野範囲より広い範囲の合成画像を生成することも可能である。以下、このような撮像部8の視野範囲より広い範囲の合成画像を生成する場合の処理例について説明する。
【0147】
[h1.光沢除去合成(変形例1)]
図18は、本実施の形態の変形例1に係るパターンサーチおよび画像の位置合わせ処理を説明するための図である。図18(a)〜図18(f)には、一例として、その表面形状が楕円のワークが移動中に連続的に撮像して得られた一連の画像を示す。また、図18(g)には、図18(a)〜図18(f)に示す画像IMG1〜IMG6に基づいて光沢除去合成を行った結果得られた合成画像SIMGの例を示す。なお、図18に示す内容は、上述の図5のフローチャートに示すステップS106〜S118の処理の別形態に相当する。
【0148】
CPU110は、検出センサ4(図1)などによるワークの位置検出や、撮像部8により取得される画像中の背景の変化などに基づいて、光沢除去合成の実行タイミングを認識する。そして、撮像部8により撮像されるワーク2を写した画像を取得する。たとえば、図18(a)に示すような画像IMG1が取得されたものとする。この第1番目に取得された画像IMG1に対して、CPU110は、モデル領域231を設定する。
【0149】
第1番目の撮像から所定時間経過後、CPU110は、図18(b)に示すような第2番目の画像IMG2を取得したものとする。図18に示す例においては、ワークが紙面左側から紙面右側に移動しているものとする。そのため、第2番目に取得された画像IMG2におけるワーク2を写した被写体OBJの位置は、図18(a)に示す画像IMG1における被写体OBJの位置に比較して、より紙面右側に位置している。
【0150】
CPU110は、この第2番目の画像IMG2に対して、直近に取得された第1番目の画像IMG1のモデル領域231で指定される第1番目のモデル画像に基づくパターンサーチを行う。このパターンサーチの結果、画像IMG2のうち領域241が第1番目のモデル画像と合致したとする。
【0151】
このとき、第1番目の画像IMG1におけるモデル領域231と、第2番目の画像IMG2における領域241との相対的な位置ずれ量がワークの移動量として算出される。
【0152】
続いて、この第2番目の画像IMG2に対して、CPU110は、モデル領域232を設定する。このとき、パターンサーチの精度を高めるために、第1番目の画像IMG1に対して設定したモデル領域231の大きさに比較して、第2番目の画像IMG2に対して設定するモデル領域232をより広くしてもよい。
【0153】
より具体的には、第1番目の画像IMG1から第2番目の画像IMG2への間の移動量(ベクトル量)に基づいて、被写体OBJであるワークの移動方向および移動速度を推測し、この推測した移動量に応じて、より広いモデル領域232が設定される。図18(b)に示す例においては、ワークが紙面左側から紙面右側に移動しているので、第2番目の画像IMG2に対して設定されるモデル領域232は、可能な限り画像IMG2の左端を始点として、可能な限り画像IMG2の右側まで拡張されている。図18(b)に示すモデル領域232の拡張幅は、当該モデル領域232として設定された内容が後続の撮像タイミングで取得される画像(この例では、画像IMG3)の視野内に含まれることを条件として、可能な限り広く設定される。すなわち、マージンとして、連続する2回の撮像タイミングの間に移動するワークの移動量を少なくとも確保できるように、モデル領域232が設定される。なお、ワークの移動方向および移動速度が既知である場合には、予め算出した範囲をモデル領域として設定するようにしてもよい。
【0154】
さらに、CPU110は、この第3番目の画像IMG3に対して、直近に取得された第2番目の画像IMG2のモデル領域232で指定される第2番目のモデル画像に基づくパターンサーチを行う。このパターンサーチの結果、画像IMG3のうち領域242が第2番目のモデル画像と合致したとする(図18(c)参照)。以下同様にして、(1)第3番目の画像IMG3に対するモデル領域233の設定(図18(c)参照)、(2)第4番目の画像IMG4に対する第3番目の画像IMG3のモデル領域233で指定される第3番目のモデル画像に基づくパターンサーチ(図18(d)参照)、(3)第4番目の画像IMG4に対するモデル領域234の設定(図18(d)参照)、(4)第5番目の画像IMG5に対する第4番目の画像IMG4のモデル領域234で指定される第4番目のモデル画像に基づくパターンサーチ(図18(e)参照)、(5)第5番目の画像IMG4に対するモデル領域235の設定(図18(e)参照)、(6)第6番目の画像IMG6に対する第5番目の画像IMG5のモデル領域235で指定される第5番目のモデル画像に基づくパターンサーチ(図18(f)参照)の順に処理が実行される。
【0155】
なお、ワークの移動方向および移動速度に基づいて、次回の撮像において、ワークが撮像部8の視野内から外れることが推測されると、モデル領域の大きさが見直される。一例として、図18(e)に示すような、第5番目の画像IMG5に設定されるモデル領域235は、第4番目の画像IMG4に設定されるモデル領域234に比較してより狭い範囲に設定されている。
【0156】
最終的に、各パターンサーチによって得られた画像間の移動量に基づいて、一連の画像についての位置合わせが行われる。そして、上述したような光沢除去合成が実行されることで、図18(g)に示すような合成画像SIMGが生成される。
【0157】
このようなパターンサーチ(画像間の位置合わせ)は、撮像部8により取得される画像のうち、ワーク2の全部または一部を含む画像のすべてを対象にして行われる。すなわち、ワーク2が撮像部8の視野に入ってきてから、ワーク2が視野内から外れるまでの期間に取得された画像が位置合わせの対象となる。
【0158】
図18(g)に示すように、本実施の形態の変形例1に係る光沢除去合成によれば、撮像部8の視野内より広い範囲の画像に対して、有効に光沢除去することができる。すなわち、撮像部8による1回の撮像により取得される範囲に比較して、より広い範囲の画素を複数重ね合わせることで、いずれかの画像に光沢の写り込みがあっても、除去することができる。
【0159】
このように生成される合成画像SIMGは、撮像部8の視野範囲(画像IMG1〜IMG6の大きさ)より広い範囲の画像となる。
【0160】
[h2.光沢除去合成(変形例2)]
上述の変形例1に係る光沢除去合成では、探索精度を高めるために、各モデル領域の大きさを、そのモデル領域に含まれるワーク2を示す画像が後続の撮像により得られる画像内に現れるように、動的に決定する処理例を説明した。これに対して、モデル領域の一部が撮像部8の視野外になってもパターンサーチが可能である場合には、モデル領域をより広い範囲に固定的に設定してもよい。
【0161】
図19は、本実施の形態の変形例2に係るパターンサーチおよび画像の位置合わせ処理の変形例を説明するための図である。図19(a)〜図19(f)には、一例として、その表面形状が楕円のワークが移動中に連続的に撮像して得られた一連の画像を示す。また、図19(g)には、図19(a)〜図19(f)に示す画像IMG1〜IMG6に基づいて光沢除去合成を行った結果得られた合成画像SIMGの例を示す。
【0162】
本変形例においては、光沢除去合成の実行タイミングを認識すると、CPU110は、図19(a)に示すように、取得された画像IMG1に対して、より多くの範囲がカバーされるようにモデル領域251を設定する。続いて、CPU110は、このモデル領域251に含まれるモデル画像に基づいて、第2番目の画像IMG2に対してパターンサーチを行う。
【0163】
上述したように、被写体OBJであるワークは移動しているので、第2番目の画像IMG2に対して、モデル領域251で指定される第1番目のモデル画像に基づくパターンサーチを行った場合には、対応する領域の一部が画像IMG2の範囲外となる。ここで、たとえば、モデル領域を複数の小領域に分割して、各小領域の合致度に基づいて、総合的な合致度を算出するとともに、算出された総合的な合致度を所定のアルゴリズムに従って評価することで、合致する領域を特定することができる。このような公知の技術としては、特開2008−152555号公報などの開示内容を参照されたい。
【0164】
このように、第2番目の画像IMG2のうち、第1番目のモデル画像と合致する領域が特定されると、上述と同様に、第1番目の画像IMG1におけるモデル領域251と、第2番目の画像IMG2における領域261との相対的な位置ずれ量がワークの移動量として算出される。
【0165】
同様にして、第2番目〜第6番目の画像IMG2〜IMG6に対して、それぞれモデル領域252〜256が設定されて、それぞれパターンサーチが行われる(図19(b)〜図19(f)参照)。その結果、第2番目〜第5番目の画像IMG2〜IMG5についての、各画像間のそれぞれの移動量が算出される。
【0166】
最終的に、各パターンサーチによって得られた画像間の移動量に基づいて、一連の画像についての位置合わせが行われる。そして、上述したような光沢除去合成が実行されることで、図19(g)に示すような合成画像SIMGが生成される。
【0167】
[h3.視野拡大可能な光沢除去合成(変形例1および2)の作用効果]
上述のような視野拡大可能な光沢除去合成を適用した場合の作用効果について説明する。
【0168】
図20は、本実施の形態の変形例に係る光沢除去合成の作用効果を説明するための模式図である。図20(a)には、上述の実施の形態に係るにより複数の画像を取得する場合の例を示し、図20(b)には、本実施の形態の変形例に係る方法により複数の画像を取得する場合の例を示す。
【0169】
図20(a)に示すように、撮像部8に対するワーク2の相対的な位置を異ならせたとしても、撮像部8の視野内における特定の領域に光沢202が写り込む。そのため、撮像部により取得された視野に対応する画像のうち、実際に光沢除去処理に使用できる範囲は限られる。たとえば、図20(a)に示すように、ワーク表面に印字された検出対象の文字「ABC」の「C」の文字についてみると、ワーク全体が画像内に収まっている際の可動範囲のみが有効範囲となる。そのため、撮像部の視野全体を光沢除去に使用することができない。
【0170】
これに対して、本実施の形態の変形例に係る光沢除去合成によれば、図20(b)に示すように、撮像部8の視野全体を光沢除去に使用することができる。そのため、写り込んだ光沢202を除去できる確率を高めることができ、それによって、より高い光沢202の除去効果を得ることができる。
【0171】
<I.照明光源設置>
本実施の形態に係る視覚センサシステム1においては、ワーク2に照明光を照射するための照明光源9を含む。このとき、照明光源9の形状(照射パターン)によっては、光沢除去合成では除去しきれない光沢が映り込むことがあるので、撮像部8に対して、照明光源9を適切な位置関係で設置することが好ましい。以下、バー形状の照明光源を一例として、その設置方法について説明する。
【0172】
図21は、照明光源9の長手方向とワーク2の移動方向とが一致している場合を示す模式図である。図22は、照明光源9の長手方向とワーク2の移動方向とが直交している場合を示す模式図である。
【0173】
図21に示すように、照明光源9の長手方向とワーク2の移動方向とが一致している場合には、ワーク2を順次撮像して得られる画像IMG1,IMG2,IMG3を位置合わせしたとしても、光沢202が映り込んでいる紙面横方向における範囲が重なっていることがわかる。そのため、これらの画像IMG1,IMG2,IMG3に基づいて、光沢除去合成をしたとしても、その結果得られる合成画像SIMGには、除去しきれない光沢204が残ってしまう。
【0174】
これに対して、図22に示すように、照明光源9の長手方向とワーク2の移動方向とが実質的に直交している場合には、ワーク2を順次撮像して得られる画像IMG1,IMG2,IMG3に映り込む光沢202の紙面横方向の幅は相対的に狭いことがわかる。そのため、これらの画像IMG1,IMG2,IMG3を位置合わせすることで、画像間で、光沢202が生じている位置を異ならせることができる。その結果、画像IMG1,IMG2,IMG3に基づいて光沢除去合成をすることで、光沢202を除去した合成画像SIMGを生成することができる。
【0175】
<J.作用・効果>
本実施の形態によれば、基本的には、撮像部8の撮像条件および照明光源9による照明条件を維持したまま、移動するワーク2に対して複数回撮像を行う。すなわち、撮像部8に対するワーク2の相対位置が時間的に移動するので、ワーク2において光沢の映り込みが生じる領域は、各画像の間で異なると考えられる。そのため、ある画像において正しく取得できない画像情報であっても、他の画像においては正しく取得できる可能性が高くなる。そして、このように取得された一連の画像を用いて合成画像を生成することで、映り込む光沢の影響を除去する。
【0176】
また、本実施の形態によれば、ベルトコンベア上に載置されて所定方向に移動するワーク2の搬送に影響を与えるようなこともなく、目的の合成画像を生成することができる。すなわち、移動する検査対象を静止させることなく、映り込む光沢を除去することができるとともに、ワークに対する計測処理をより高精度に行うことができる。
【0177】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0178】
1 視覚センサシステム、2 検査対象(ワーク)、4 検出センサ、4a 受光部、4b 投光部、6 搬送機構、8 撮像部、9 照明光源、100 画像処理装置、102 ディスプレイ、104 マウス、106 メモリカード、110 CPU、112 メインメモリ、114 ハードディスク、116 カメラインターフェイス、116a 画像バッファ、118 入力インターフェイス、120 表示コントローラ、122 PLCインターフェイス、124 通信インターフェイス、126 データリーダ/ライタ、128 バス。
【技術分野】
【0001】
本発明は、検査対象を撮像した際に生じ得る光沢を除去するための画像処理方法および画像処理システムに関する。
【背景技術】
【0002】
従来から、FA(Factory Automation)分野などにおいては、各種の画像処理技術が利用されている。典型的には、検査対象を撮像して得られた画像データに基づいて、検査対象に印字されている文字を認識したり、検査対象の表面におけるキズの有無などを検査したりする画像処理技術が広く実用化されている。
【0003】
ところで、実際の生産ラインなどにおいては、検査対象を撮像する際の照明環境、検査対象の形状、照明光源と撮像部との位置関係などによって、検査対象の表面に光沢が映り込む場合がある。この光沢は、検査対象の特定領域に入射する光の光量などによって、検査対象を示す画像情報が有意に取得できない領域を意味する。典型的には、検査対象の特定の領域について、入射する光の光量が相対的に大きくなって、いわゆるハレーションもしくはハレーションに近い状態となる場合である。このような場合には、この光沢によって、検査対象上にある文字やキズなどの情報を適切に取得できない。
【0004】
そこで、たとえば、特開2007−170838号公報(特許文献1)には、被外観検査物を照明する照明光源と、該照明光源に照明された被外観検査物を撮像する撮像手段とを備えた外観検査装置において、照明光源による照明条件を変えながら撮像手段により被外観検査物を撮像して得られた複数の画像を保持する画像保持手段と、該画像保持手段により保持された複数の画像を演算処理することにより照明光源の映り込みを除去した画像を生成する画像処理手段とが付設された構成が開示される。より具体的には、レンズの光軸周りに90°単位で4個の領域に分割されている発光ダイオードを用いて、その発光ダイオードを構成する領域のうち、実際に点灯する領域の組合せを変更することで、照明条件が変更される。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2007−170838号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上述のような特開2007−170838号公報(特許文献1)に開示される方法では、照射方向の異なる複数の照明光源を用意する必要があるため、相対的にコストが上昇するという課題があった。同時に、撮像時には検査対象を静止させる必要があるので、検査対象が連続的に搬送されるような生産ラインには、適用することが困難であるという課題もあった。そのため、特開2007−170838号公報(特許文献1)に開示される方法を適用できる生産ラインは限られていた。
【0007】
そこで、本発明は、これらの問題を解決するためになされたものであり、その目的は、連続的に移動する検査対象を静止させることなく、光沢を除去して、より精度の高い画像処理を行うことのできる画像処理方法および画像処理システムを提供することである。
【課題を解決するための手段】
【0008】
本発明のある局面に従う画像処理方法は、予め定められた位置に配置された撮像部を用いて、当該撮像部に対して一定の相対位置に配置された照明光源で当該撮像部の視野を照明した状態で、予め定められた方向に移動する検査対象を複数回撮像するステップと、撮像部による一連の撮像により取得される複数の画像のうち2つの画像間で検査対象の少なくとも一部を示す領域を順次探索することで、検査対象を基準として、複数の画像を位置合わせするステップと、当該位置合わせされた複数の画像について、単位領域毎に、当該単位領域に対応する、位置合わせされた複数の画像におけるそれぞれの領域が有する画像情報から当該単位領域を代表する画像情報を算出することで、合成画像を生成するステップとを含む。
【0009】
好ましくは、画像情報を算出するステップは、位置合わせされた複数の画像におけるそれぞれの領域が有する画像情報として輝度を取得し、取得した輝度についての、最小値、最大値、平均値、中央値のいずれか1つを、単位領域を代表する画像情報として算出する。
【0010】
あるいは好ましくは、合成画像を生成するステップは、単位領域を代表する画像情報を算出するための算出規則を複数に異ならせて、それぞれの算出規則に従って複数種類の合成画像を生成するステップと、当該生成された複数種類の合成画像を表示するステップと、当該複数の算出規則のうち合成画像の生成に使用すべき算出規則の選択を受付けるステップとをさらに含む。
【0011】
あるいは好ましくは、合成画像を生成するステップは、単位領域を代表する画像情報を算出するための算出規則を複数に異ならせて、それぞれの算出規則に対応する複数種類の合成画像を生成するステップと、当該生成された複数種類の合成画像について識別度合いを示す指標を算出するステップと、算出した指標に従って、当該複数の算出規則に合成画像の生成に使用すべき算出規則を選択するステップとをさらに含む。
【0012】
好ましくは、位置合わせするステップは、検査対象の撮像により取得された第1の画像から検査対象を示す第1の領域を抽出し、第1の画像の次に取得された第2の画像内で第1の領域と合致する領域を探索するステップと、第2の画像から、検査対象を示す、第1の領域の大きさとは独立した大きさの第2の領域を抽出し、第2の画像の次に取得された第3の画像内で第2の領域と合致する領域を探索するステップとを含む。
【0013】
好ましくは、位置合わせするステップでは、撮像部により取得される画像のうち、検査対象の全部または一部を含む画像のすべてを対象にして、位置合わせを行う。
【0014】
好ましくは、合成画像を生成するステップでは、撮像部の視野範囲より広い範囲の合成画像を生成する。
【0015】
好ましくは、照明光源は、その長手方向が検査対象の移動方向に対して実質的に直交するように配置される。
【0016】
好ましくは、合成画像を生成するステップは、第1の検査対象について撮像部による一連の撮像により取得された複数の画像を表示するステップと、表示された複数の画像のうち合成画像の生成に使用される画像の選択を受付けるステップと、第2の検査対象について撮像部による一連の撮像により取得された複数の画像のうち、第1の検査対象について選択された画像の撮像タイミングに対応する画像を用いて合成画像を生成するステップとを含む。
【0017】
この発明の別の局面に従う画像処理装置は、予め定められた位置に配置された撮像部と、撮像部に対して一定の相対位置に配置された照明光源と、制御部とを含む。制御部は、撮像部の視野を照明した状態で、予め定められた方向に移動する検査対象を撮像部に複数回撮像させる手段と、撮像部による一連の撮像により取得される複数の画像のうち2つの画像間で検査対象の少なくとも一部を示す領域を順次探索することで、検査対象を基準として、複数の画像を位置合わせする手段と、当該位置合わせされた複数の画像について、単位領域毎に、当該単位領域に対応する、位置合わせされた複数の画像におけるそれぞれの領域が有する画像情報から当該単位領域を代表する画像情報を算出することで、合成画像を生成する手段とを含む。
【発明の効果】
【0018】
本発明によれば、連続的に移動する検査対象を静止させることなく、光沢を除去して、より精度の高い画像処理を行うことができる。
【図面の簡単な説明】
【0019】
【図1】本発明の実施の形態に係る画像処理装置を含む視覚センサシステムの全体構成を示す概略図である。
【図2】本発明の実施の形態に係る画像処理装置の概略構成図である。
【図3】ワークを撮像して得られる画像に映り込む光沢の一例を説明するための模式図である。
【図4】本実施の形態に係る光沢除去合成の処理概要を説明するための模式図である。
【図5】本発明の実施の形態に係る画像処理装置における通常運転モードでの処理手順を示すフローチャートである。
【図6】本実施の形態に係る光沢除去合成の合成設定を行うためのユーザインターフェイス画面の一例を示す図である。
【図7】本発明の実施の形態に係る光沢除去合成において輝度の最小値を選択した場合の処理例を示す図である。
【図8】本発明の実施の形態に係る光沢除去合成において輝度の最小値を選択することでより適切な合成画像が得られる場合の処理例を示す図である。
【図9】本発明の実施の形態に係る光沢除去合成において輝度の最大値を選択することでより適切な合成画像が得られる場合の処理例を示す図である。
【図10】本発明の実施の形態に係る光沢除去合成において輝度の中間値/平均値を選択することでより適切な合成画像が得られる場合の処理例を示す図である。
【図11】本実施の形態に係る光沢除去合成の合成設定を行うための別のユーザインターフェイス画面の一例を示す図である。
【図12】本発明の実施の形態に係る撮像設定の影響を説明するための図である。
【図13】撮像設定のタブが選択された場合に表示される設定画面の一例を示す図である。
【図14】撮像設定のタブが選択された場合に表示される設定画面の別の一例を示す図である。
【図15】撮像設定のタブが選択された場合に表示される設定画面のさらに別の一例を示す図である。
【図16】本発明の実施の形態に係る画像処理装置における設定モードでの処理手順を示すフローチャートである。
【図17】本実施の形態に係る光沢除去合成を用いた処理例を示す図である。
【図18】本実施の形態の変形例1に係るパターンサーチおよび画像の位置合わせ処理を説明するための図である。
【図19】本実施の形態の変形例2に係るパターンサーチおよび画像の位置合わせ処理の変形例を説明するための図である。
【図20】本実施の形態の変形例に係る光沢除去合成の作用効果を説明するための模式図である。
【図21】照明光源の長手方向とワークの移動方向とが一致している場合を示す模式図である。
【図22】照明光源の長手方向とワークの移動方向とが直交している場合を示す模式図である。
【発明を実施するための形態】
【0020】
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【0021】
<A.全体装置構成>
図1は、本発明の実施の形態に係る画像処理装置100を含む視覚センサシステム1の全体構成を示す概略図である。
【0022】
図1を参照して、視覚センサシステム1は、本実施の形態に係る画像処理システムの一適用例であり、生産ラインなどに組込まれて検査対象2(以下「ワーク2」とも称す。)を撮像して得られる画像に基づいて、文字認識やキズ検査といった処理(以下、「計測処理」とも称す。)を実行する。
【0023】
一例として、本実施の形態においては、ワーク2はベルトコンベヤなどの搬送機構6によって所定方向に搬送される。これに対して、撮像部8は、ワーク2に対して固定した位置に配置されている。さらに、撮像部8に対して、一定の相対位置に照明光源9が配置される。この照明光源9は、少なくとも、撮像部8の視野(ワーク2が位置し得る範囲)を照明する。そして、撮像部8が移動するワーク2を複数回撮像する。撮像部8によって得られた複数の画像データは、画像処理装置100へ伝送される。この照明光源9は、周囲の照明環境からの外乱を受けないように、光量、設置数、配置位置などが最適化されることが好ましい。
【0024】
なお、本明細書において「撮像」とは、基本的には、撮像部8が視野内の被写体からの光を受光し、それを示す画像を出力する処理を意味する。但し、撮像部8が視野内の被写体を示す画像を所定周期で繰返し生成している場合には、撮像部8が生成する画像のうち、特定の画像を記憶部に格納する処理を意味する。すなわち、ある観点から見れば、「撮像」とは、ある意図されたタイミングにおいて、撮像部8が視野内の被写体の内容を示す画像を取得して計測処理可能な状態にすることを意味する。
【0025】
ワーク2が撮像部8の視野内に到達したことは、搬送機構6の両端に配置された検出センサ4によって検出される。具体的には、検出センサ4は、同一の光軸上に配置された受光部4aと投光部4bとを含み、投光部4bから放射される光がワーク2で遮蔽されることを受光部4aで検出することによって、ワーク2の到達を検出する。この検出センサ4の検出信号(以下「トリガ信号」とも称す。)は、PLC(Programmable Logic Controller)5へ出力される。
【0026】
PLC5は、検出センサ4などからのトリガ信号を受信するとともに、搬送機構6の制御自体を司る。
【0027】
視覚センサシステム1は、さらに、画像処理装置100と、ディスプレイ102と、マウス104とを含む。画像処理装置100は、PLC5と、撮像部8と、ディスプレイ102と、マウス104とに接続される。後述するように、画像処理装置100は、(1)ワーク2を試験的に移動/撮像するなどして必要な設定値を入力/決定するための設定モードと、(2)一連の画像処理を実行するための通常運転モードとを有する。
【0028】
撮像部8は、一例として、レンズなどの光学系に加えて、CCD(Coupled Charged Device)やCMOS(Complementary Metal Oxide Semiconductor)センサといった、複数の画素に区画された撮像素子を含んで構成される。
【0029】
画像処理装置100は、汎用的なアーキテクチャを有しているコンピュータであり、予めインストールされたプログラムを実行することで、後述するような各種機能を提供する。このような汎用的なコンピュータを利用する場合には、本実施の形態に係る機能を提供するためのアプリケーションに加えて、コンピュータの基本的な機能を提供するためのOS(Operating System)がインストールされていてもよい。この場合には、本実施の形態に係るプログラムは、OSの一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。すなわち、本実施の形態に係るプログラム自体は、上記のようなモジュールを含んでおらず、OSと協働して処理が実行される。本実施の形態に係るプログラムとしては、このような一部のモジュールを含まない形態であってもよい。
【0030】
さらに、本実施の形態に係るプログラムは、他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には、上記のような組合せられる他のプログラムに含まれるモジュールを含んでおらず、当該他のプログラムと協働して処理が実行される。すなわち、本実施の形態に係るプログラムとしては、このような他のプログラムに組込まれた形態であってもよい。なお、プログラムの実行により提供される機能の一部もしくは全部を専用のハードウェア回路として実装してもよい。
【0031】
図2は、本発明の実施の形態に係る画像処理装置100の概略構成図である。図2を参照して、画像処理装置100は、演算処理部であるCPU(Central Processing Unit)110と、記憶部としてのメインメモリ112およびハードディスク114と、カメラインターフェイス116と、入力インターフェイス118と、表示コントローラ120と、PLCインターフェイス122と、通信インターフェイス124と、データリーダ/ライタ126とを含む。これらの各部は、バス128を介して、互いにデータ通信可能に接続される。
【0032】
CPU110は、ハードディスク114に格納されたプログラム(コード)をメインメモリ112に展開して、これらを所定順序で実行することで、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)などの揮発性の記憶装置であり、ハードディスク114から読み出されたプログラムに加えて、撮像部8によって取得された画像データや、画像データの処理結果を示すデータ、およびワークデータなどを保持する。また、ハードディスク114は、不揮発性の磁気記憶装置であり、CPU110で実行されるプログラムに加えて、後述するパターンサーチにおいて基準となる画像データ(以下「モデル画像」とも称す。)を記憶する。さらに、ハードディスク114には、各種設定値などが格納されてもよい。このハードディスク114にインストールされるプログラムは、後述するように、メモリカード106などに格納された状態で流通する。なお、ハードディスク114に加えて、あるいは、ハードディスク114に代えて、フラッシュメモリなどの半導体記憶装置を採用してもよい。
【0033】
カメラインターフェイス116は、CPU110と撮像部8との間のデータ伝送を仲介する。すなわち、カメラインターフェイス116は、ワーク2を撮像して画像データを生成する撮像部8を接続する。より具体的には、カメラインターフェイス116は、1つ以上の撮像部8と接続が可能であり、撮像部8からの複数の画像データを一時的に蓄積するための画像バッファ116aを含む。そして、カメラインターフェイス116は、画像バッファ116aに少なくとも1コマ分の画像データが蓄積されると、その蓄積されたデータをメインメモリ112へ転送する。また、カメラインターフェイス116は、CPU110が発生した内部コマンドに従って、撮像部8に対して撮像指令を与える。
【0034】
入力インターフェイス118は、CPU110とマウス104、キーボード、タッチパネルなどの入力部との間のデータ伝送を仲介する。すなわち、入力インターフェイス118は、ユーザが入力部を操作することで与えられる操作指令を受付ける。
【0035】
表示コントローラ120は、表示装置の典型例であるディスプレイ102と接続され、CPU110における画像処理の結果などをユーザに通知する。すなわち、表示コントローラ120は、ディスプレイ102に接続され、当該ディスプレイ102での表示を制御する。
【0036】
PLCインターフェイス122は、CPU110とPLC5との間のデータ伝送を仲介する。より具体的には、PLCインターフェイス122は、PLC5によって制御される生産ラインの状態に係る情報やワークに係る情報などをCPU110へ伝送する。
【0037】
通信インターフェイス124は、CPU110とコンソール(あるいは、パーソナルコンピュータやサーバ装置)などとの間のデータ伝送を仲介する。通信インターフェイス124は、典型的には、イーサネット(登録商標)やUSB(Universal Serial Bus)などからなる。なお、後述するように、メモリカード106に格納されたプログラムを画像処理装置100にインストールする形態に代えて、通信インターフェイス124を介して、配信サーバなどからダウンロードしたプログラムを画像処理装置100にインストールしてもよい。
【0038】
データリーダ/ライタ126は、CPU110と記録媒体であるメモリカード106との間のデータ伝送を仲介する。すなわち、メモリカード106には、画像処理装置100で実行されるプログラムなどが格納された状態で流通し、データリーダ/ライタ126は、このメモリカード106からプログラムを読み出す。また、データリーダ/ライタ126は、CPU110の内部指令に応答して、撮像部8によって取得された画像データおよび/または画像処理装置100における処理結果などをメモリカード106へ書き込む。なお、メモリカード106は、CF(Compact Flash)、SD(Secure Digital)などの汎用的な半導体記憶デバイスや、フレキシブルディスク(Flexible Disk)などの磁気記憶媒体や、CD−ROM(Compact Disk Read Only Memory)などの光学記憶媒体等からなる。
【0039】
また、画像処理装置100には、必要に応じて、プリンタなどの他の出力装置が接続されてもよい。
【0040】
<B.光沢除去合成>
まず、図3および図4を参照して、本実施の形態に係る光沢除去合成について説明する。図3は、ワーク2を撮像して得られる画像に映り込む光沢の一例を説明するための模式図である。図4は、本実施の形態に係る光沢除去合成の処理概要を説明するための模式図である。
【0041】
図3には、撮像部8を用いてワーク2を上方から撮像した場合(図1参照)に得られる画像の一例を示す。図3(a)には、光沢の映り込みがなく適正に撮像ができている場合の画像の一例を示し、図3(b)および図3(c)には、画像内に光沢202が映り込んでいる一例を示す。
【0042】
図3(a)に示すような画像IMGAが取得できた場合には、検出対象の文字(この場合には、文字「ABC」)を正しく認識および検知することができる。
【0043】
これに対して、図3(b)に示すような画像IMGBには、文字「A」の付近に光沢202(白い帯状の領域)が映り込んでおり、これにより、ワーク2上に文字「A」が印字されていないと誤って判断される可能性がある。
【0044】
また、図3(c)に示すような画像IMGCは、その表面に目的の文字とは異なる文字「ABG」が印字されたワーク2を撮像して得られたものであるが、文字「G」の付近に光沢202(白い帯状の領域)が映り込んでおり、これにより、目的の文字「ABC」がワーク2上に適正に印字されていると誤って判断される可能性がある。
【0045】
すなわち、図3(b)および図3(c)に示すように、光沢が映り込むことで、本来は正常であるワークを異常であると誤って判断したり、本来は異常であるワークを正常であると誤って判断したりする場合がある。本実施の形態に係る画像処理方法(以下、「光沢除去合成」とも称す。)では、このような問題を抑制することを目的とする。
【0046】
なお、本明細書において「光沢」とは、ワークの特定領域に入射する光の光量やワークの表面形状などに起因して、ワーク表面にある撮像すべき情報が正しく取得できない領域を意味する。典型的には、ワークから反射して撮像部8に入射する光が相対的に強すぎて、いわゆるハレーションもしくはハレーションに近い状態となることで生じ得るが、ワークから反射する光が微弱すぎてワーク表面の画像情報を読取れないような場合においても生じ得る。
【0047】
本実施の形態に係る光沢除去合成においては、基本的には、図1に示すように、撮像部8の撮像条件および照明光源9による照明条件を維持したまま、撮像部8に対するワーク2の相対的な位置を異ならせることで複数の画像を取得する。そして、取得された複数の画像を合成することで、映り込む光沢を除去する。すなわち、ワーク2が撮像部8に対して時間的に移動するので、ワーク2において光沢の映り込みが生じる位置は、各撮像の間で異なると考えられる。そのため、ある画像において正しく取得できない画像情報であっても、他の画像においては正しく取得できる可能性が高くなる。
【0048】
一例として、図4に示すように、撮像部8に対してワーク2の相対的な位置を異ならせつつ、撮像部8によりワーク2を3回撮像することで、画像IMG1,IMG2,IMG3が得られたとする。この画像IMG1,IMG2,IMG3の各々についてみると、各画像内において光沢202が映り込んでいる位置は略同一であるが、ワーク2が移動しているため、光沢202が映り込んでいるワーク2を基準とした位置は異なったものとなっている。
【0049】
したがって、これらの3つの画像IMG1,IMG2,IMG3を合成することで、光沢202が映り込むことで欠落した画像情報を復元することができる。
【0050】
このような画像合成を行うために、画像処理装置100は、撮像部8による一連の撮像により取得される複数の画像について、撮像順において連続する2つの画像間でワーク2の少なくとも一部を示す領域を順次探索(トラッキング)する。そして、画像処理装置100は、ワーク2を基準として、複数の画像を位置合わせする。画像処理装置100は、この位置合わせされた複数の画像を用いて光沢除去合成を行うことで、合成画像SIMGを生成する。
【0051】
より具体的には、図4に示すように、第1番目の撮像により得られた画像IMG1から、ワーク2を示すモデル画像211を抽出するとともに、当該モデル画像211に基づいてパターンサーチを行うことで、第2番目の撮像により得られた画像IMG2のうち、モデル画像211と合致する領域を探索する。これにより、ワーク2のある領域(モデル画像として抽出される部分)が第1番目の撮像から第2番目の撮像までの間に、どこに移動したのかを特定することができる。
【0052】
同様に、第2番目の撮像により得られた画像IMG2からワーク2を示すモデル画像212を抽出するとともに、当該モデル画像212に基づいてパターンサーチを行うことで、第3番目の撮像により得られた画像IMG3のうち、モデル画像212と合致する領域を探索する。これにより、ワーク2を示す領域(モデル画像212)が第2番目の撮像から第3番目の撮像までの間に、どこに移動したのかを特定することができる。
【0053】
より多くの画像が撮像された場合には、以上のような処理が繰返し実行される。なお、後述するように、撮像順に連続する2つの画像の間において、モデル画像として抽出する領域の大きさは、互いに独立に決定してもよい。すなわち、各画像において最適なサイズのモデル画像を抽出するようにしてもよい。
【0054】
以上のように、パターンサーチにより、ワーク2の移動量を算出するとともに、このワーク2の移動量に基づいて、3つの画像IMG1,IMG2,IMG3の間を位置合わせする。より具体的には、ワーク2を基準として、3つの画像IMG1,IMG2,IMG3を位置合わせする。すなわち、各画像に表われるワーク2が画像間で実質的に同じ位置となるように位置合わせされる。
【0055】
なお、撮像部8による一連の撮像により取得される複数の画像のうち、必ずしも連続する2つの画像を用いなくともよく、たとえば、所定周期で繰返し撮像されることで得られる一連の画像群のうち、撮像順において所定間隔だけ離れたもの(たとえば、奇数番目のものだけ)を用いて、トラッキングを行ってもよい。
【0056】
続いて、画像処理装置100は、合成画像SIMGを構成する単位領域(典型的には、1画素)毎に、当該単位領域に対応する、上記のように位置合わせされた3つの画像IMG1,IMG2,IMG3におけるそれぞれの領域が有する画像情報から当該単位領域を代表する画像情報を算出する。より具体的には、画像処理装置100は、3つの画像IMG1,IMG2,IMG3が(仮想的に)位置合わせされた状態で、各画像において対応する画素が有する輝度(この例では、全部で3つの輝度の情報が得られる)を取得し、取得した輝度について、所定の算出規則(アルゴリズム)に従って当該画素を代表する輝度を算出する。この算出処理を、画像に含まれる画素の数だけ繰返すことで、合成画像SIMGを生成する。後述するように、典型的なアルゴリズムとしては、最小値、最大値、平均値、中央値のいずれかである。
【0057】
なお、必ずしも1画素単位で代表値を算出する必要はなく、複数画素(たとえば、隣接する4画素)を1つの単位領域として取扱ってもよい。また、合成画像SIMGのある単位領域と完全に対応する各画像の領域に含まれる画素の輝度だけでなく、それぞれの領域に隣接する範囲に含まれる画素の輝度を用いて、合成画像の各単位領域における輝度を算出してもよい。
【0058】
<C.処理手順(通常運転モード)>
以下、図5を参照して、本実施の形態に係る画像処理装置100における通常運転モードでの処理手順について説明する。
【0059】
図5は、本発明の実施の形態に係る画像処理装置100における通常運転モードでの処理手順を示すフローチャートである。なお、図5に示す各ステップは、典型的には、画像処理装置100のCPU110がプログラムを実行することで提供される。
【0060】
図5を参照して、通常運転モードが選択されると、CPU110は、後述する設定モードなどにおいてユーザが設定した設定値を読出す(ステップS100)。続くステップS102において、CPU110は、光沢除去合成の実行タイミングとなったか否かを判断する。典型的には、CPU110は、図1に示す検出センサ4からの信号に基づいて、ワーク2が撮像部8の視野内に到達したか否かを判断する。あるいは、CPU110は、撮像部8により取得される画像の背景が変化したか否かに基づいて、ワーク2が撮像部8の視野内に到達したことを検出する。
【0061】
光沢除去合成の実行タイミングとなったと判断された場合(ステップS102においてYESの場合)には、処理はステップS104へ進む。そうでなければ(ステップS102においてNOの場合)には、ステップS102の処理が繰返される。
【0062】
ステップS104において、CPU110は、カメラインターフェイス116に内部指令を与えることで、撮像部8により撮像されるワーク2の画像を取得する。続くステップS106において、CPU110は、撮像部8の第1番目の撮像により取得された第1番目の画像に対してモデル領域を設定する。さらに続くステップS108において、CPU110は、第1番目の画像のうち設定したモデル領域に含まれる部分をモデル画像として抽出する。なお、このモデル領域は、予め設定されている固定値としてもよいし、取得された画像の内容に応じて動的に設定してもよい。
【0063】
その後、ステップS110において、CPU110は、カメラインターフェイス116に内部指令を与えることで、撮像部8により撮像されるワーク2の画像を取得する。続くステップS112において、CPU110は、撮像部8の第i番目(i≧2)の撮像により取得された第i番目の画像に対して、第(i−1)番目の画像から抽出されたモデル画像に基づいてパターンサーチを行う。ステップS114において、CPU110は、パターンサーチの結果に基づいて、第(i−1)番目の画像を基準とした第i番目の画像の移動量を算出する。
【0064】
ステップS116において、CPU110は、撮像部8の第i番目の撮像により取得された第i番目の画像に対してモデル領域を設定する。続くステップS118において、CPU110は、第i番目の画像のうち設定したモデル領域に含まれる部分をモデル画像として抽出する。
【0065】
ステップS120において、CPU110は、設定値として指定された撮像枚数の撮像が完了したか否かを判断する。指定された撮像枚数の撮像が完了していない場合(ステップS120においてNOの場合)には、CPU110は、ステップS110以下の処理を繰返す。一方、指定された撮像枚数の撮像が完了した場合(ステップS120においてYESの場合)には、処理はステップS122へ進む。すなわち、処理がステップS122に進む時点においては、指定された枚数の画像が撮像により取得されていることになる。
【0066】
ステップS122において、CPU110は、ステップS114において算出した移動量に基づいて、撮像部8の撮像により得られた一連の画像間の位置合わせを行う。続くステップS124において、CPU110は、位置合わせされた一連の画像に対して、光沢除去合成を実行する。さらに続くステップS126において、CPU110は、光沢除去合成により得られた画像や各種の情報を示す合成結果などを出力する。
【0067】
ステップS128において、CPU110は、通常運転モードの終了が指示されたか否かを判断する。通常運転モードの終了が指示されていない場合(ステップS128においてNOの場合)には、ステップS102以下の処理が繰返される。一方、通常運転モードの終了が指示された場合(ステップS128においてYESの場合)には、処理は終了する。
【0068】
<D1.合成設定(その1)>
次に、図5に示すステップS124の光沢除去合成の詳細について説明する。
【0069】
図6は、本実施の形態に係る光沢除去合成の合成設定を行うためのユーザインターフェイス画面の一例を示す図である。
【0070】
本実施の形態に係る画像処理装置100の設定モードにおいては、本明細書において説明する光沢除去合成に関する設定に加えて、他の処理に係る設定をすることができる。一例として、図6に示すように、「カメラ設定」、「HDR設定」、「動き追従設定」、「合成設定」、「ホワイトバランス」、「キャリブレーション」の計6個のタブ411〜416に区切られて、各タブに関する設定値が入力可能となっている。
【0071】
以下の説明では、カメラ設定のタブ411、ホワイトバランスのタブ415、および、キャリブレーションのタブ416において、それぞれ撮像部8についての設定値がすでに入力されているものとする。また、HDR設定のタブ412および動き追従設定のタブ413において設定される項目については、光沢除去合成と直接的には関係しないので、ここでは詳細な説明は行わない。
【0072】
図6は、合成設定のタブ414が選択された場合に表示される設定画面402の一例を示す。この設定画面402は、一連の画像間の位置合わせ(図5に示すステップS122)を行った後、光沢除去合成(図5に示すステップS124)において使用される合成画像を生成するためのアルゴリズムの設定を受付ける。
【0073】
すなわち、合成画像は、位置合わせされた複数の画像から、各座標に対応付けられる画素が有するそれぞれの輝度を取得し、当該座標を代表する値を取得した輝度に基づいて算出することで生成される。このとき、複数の輝度のうちいずれを用いるか、あるいは、どのようなアルゴリズムを用いるか、を設定するためのユーザインターフェイスが設定画面402である。
【0074】
設定画面402は、合成設定の項目として、合成設定430およびモード設定440を含む。合成設定430は、最小値、最大値、平均値、および、中央値を選択するためのラジオボタン431〜434を含む。ユーザは、ラジオボタン431〜434のうちいずれか1つを任意に選択することができる。各ラジオボタンが選択された場合の処理については後述する。
【0075】
また、モード設定440は、輝度に基づいて合成画像を生成する通常モードを選択するためのラジオボタン441と、色相に基づいて合成画像を生成する色相強調モードを選択するためのラジオボタン442とを含む。ユーザは、ラジオボタン441または442のうち一方を選択することができる。
【0076】
設定画面402は、さらに、画像表示エリア421と、全体表示エリア422と、表示制御アイコン群423とを含む。画像表示エリア421には、ラジオボタン431〜434および/またはラジオボタン440,441の選択に応じて選択されるアルゴリズムに従って生成された合成画像が表示される。また、表示制御アイコン群423に対するユーザ操作に応じて、画像表示エリア421に表示される合成画像のサイズが変更可能となっている。全体表示エリア422には、画像表示エリア421での表示サイズとは独立して、合成画像が常に全体表示される。
【0077】
図7は、本発明の実施の形態に係る光沢除去合成において輝度の最小値を選択した場合の処理例を示す図である。
【0078】
合成画像を生成するためのアルゴリズムとしては、一般的には、位置合わせされた一連の画像について、各座標に対応付けられる画素が有するそれぞれの輝度の最小値を選択する方法が考えられる。すなわち、画像に映り込む光沢(白光りするもの)は、相対的に大きな輝度を有するので、このような相対的に大きな輝度を排除することで、光沢除去合成がうまくいくことも多い。
【0079】
すなわち、図6に示す設定画面402において、ラジオボタン431が選択されることで、対応する画素の間で最小値を選択するためのアルゴリズムが有効化される。この場合の処理例を図7に示す。すなわち、図7に示す例では、画像IMG1,IMG2,IMG3に映り込んでいたそれぞれの光沢202が、光沢除去合成によって生成された合成画像SIMGでは、除去されていることがわかる。
【0080】
その一方で、生成された合成画像SIMGにおいては、輝度の最小値を各座標の代表値として決定することで、合成画像SIMGに小さな輝度を有する領域が生じる場合がある。たとえば、図7に示す例では、合成画像SIMG内の両端側が暗くなっているのがわかる。
【0081】
このような場合には、各座標に対応付けられる画素が有するそれぞれの輝度の中間値または平均値を代表値とするアルゴリズムを採用することで、より適切な合成画像SIMGを生成することができる場合もある。但し、この場合は、光沢が有する輝度の影響を受けて、部分的に輝度が高すぎる画素が生じる可能性もある。
【0082】
そこで、本実施の形態に係る画像処理装置100は、複数のアルゴリズムを用意しておき、撮影状況(照明条件や露光時間など)や撮像対象のワークの反射率などに応じて、適切なアルゴリズムをユーザが選択できるようにしている。
【0083】
図8は、本発明の実施の形態に係る光沢除去合成において輝度の最小値を選択することでより適切な合成画像SIMGが得られる場合の処理例を示す図である。
【0084】
図8に示すように、画像IMG1,IMG2,IMG3内に映り込む光沢202が白色である場合(相対的に輝度(あるいは、RGB値の合計)が大きい場合)、かつ、ワーク2が撮像部8に対して移動したときでも被写体の輝度(映り方)が変化しないような場合には、最小値のアルゴリズムを採用することで、より適切な合成画像SIMG−1を生成することができる。
【0085】
一方、このような場合に平均値のアルゴリズムを採用すると、光沢202の影響を受けて、全体的に白っぽい合成画像SIMG−2が生成されてしまう。
【0086】
図9は、本発明の実施の形態に係る光沢除去合成において輝度の最大値を選択することでより適切な合成画像SIMGが得られる場合の処理例を示す図である。
【0087】
図9に示すように、画像IMG1,IMG2,IMG3内に映り込む光沢202が黒色である場合(相対的に輝度(あるいは、RGB値の合計)が小さい場合)、かつ、ワーク2が撮像部8に対して移動したときでも被写体の輝度(映り方)が変化しないような場合には、最大値のアルゴリズムを採用することで、より適切な合成画像SIMGを生成することができる。典型的には、前処理として、撮像部8によって撮像された画像に対してネガ/ポジ(白黒)反転処理がなされるような場合があり、このような場合には、画像IMG1,IMG2,IMG3内に映り込む光沢202が黒色となる。
【0088】
図10は、本発明の実施の形態に係る光沢除去合成において輝度の中間値/平均値を選択することでより適切な合成画像SIMGが得られる場合の処理例を示す図である。
【0089】
図10に示すように、ワーク2が撮像部8に対して移動することで、画像IMG1,IMG2,IMG3内に映り込む光沢202以外の部分の輝度が変化してしまうような場合には、平均値または中央値のアルゴリズムを採用することで、より適切な合成画像SIMG−3を生成することができる。
【0090】
一方、このような場合に最小値のアルゴリズムを採用すると、ワーク2の移動に伴って生じる輝度の変化の影響を受けて、全体的に黒っぽい合成画像SIMG−4が生成されてしまう。
【0091】
なお、上述のアルゴリズム以外にも、たとえば、各座標に対応付けられる画素が有するそれぞれの輝度のうち、所定のしきい値を超えたものだけを有効とした上で、有効な輝度の間での平均値を代表値とするアルゴリズムを採用することもできる。
【0092】
<D2−1.合成設定(その2):手動設定>
上述のように、ユーザが光沢除去合成において使用するアルゴリズムを任意に選択できるようにしてもよいが、よりユーザフレンドリーの観点からは、各アルゴリズムに従って生成された合成画像を比較することで、最適なアルゴリズムを決定できることが好ましい。
【0093】
より具体的には、まず試験的に、目的のワーク2を移動させながら撮像部8により複数回撮像する(以下、「テストラン」と記載する場合もある。)。このとき、撮像部8により撮像される画像に対して、実際の検査処理(文字認識やキズ検査など)の対象とする指定範囲を設定しておくことが好ましい。
【0094】
そして、テストランにより取得された一連の画像に基づいて、上述の光沢除去合成を、複数のアルゴリズムのそれぞれに従って実行する。
【0095】
図11は、本実施の形態に係る光沢除去合成の合成設定を行うための別のユーザインターフェイス画面の一例を示す図である。図11に示す設定画面402においては、画像表示エリア425および全体表示エリア422に、テストランによって取得された一連の画像を各アルゴリズムに従って光沢除去合成をした結果得られた複数の合成画像が一覧表示される。図11に示す例では、最小値、平均値、中央値、および、最大値のそれぞれのアルゴリズムに従って得られた合成画像が表示されている。また、各合成画像上には、指定範囲428の位置を示す枠がオーバレイ表示されている。
【0096】
設定画面402は、画像表示エリア425および全体表示エリア422での複数の合成画像の表示とともに、いずれのアルゴリズムを通常モードにおいて使用するかの設定を受付けるための合成設定430Aを含む。この合成設定430Aは、最小値、最大値、平均値、および、中央値を選択するためのラジオボタン435〜438を含む。ユーザは、4つの合成画像を比較しながら、ラジオボタン435〜438のうちいずれか1つを任意に選択することができる。
【0097】
すなわち、画像処理装置100は、合成画像の単位領域を代表する画像情報を算出するためのアルゴリズム(算出規則)を複数に異ならせて、それぞれのアルゴリズムに従って複数種類の合成画像を生成し、当該生成された複数種類の合成画像を表示し、当該複数のアルゴリズムのうち合成画像の生成に使用すべきアルゴリズムの選択を受付ける。
【0098】
<D2−2.合成設定(その2):自動設定>
上述した合成設定(その2)を自動化してもよい。すなわち、生成された複数種類の合成画像について識別度合いを示す指標を算出し、この算出した指標に従って、いずれのアルゴリズムが最適であるかが判断される。
【0099】
典型的には、ワークの下地の色に対して、その表面に印字された文字の色がより正確に識別されるように、アルゴリズムが決定される。具体的には、各アルゴリズムに従って生成された合成画像に設定された指定範囲428に含まれる画素について、(a)各画素が有する輝度の分散値が最大となる合成画像に対応するアルゴリズム、(b)最大の輝度と最小の輝度の差が最も大きくなる合成画像に対応するアルゴリズム、(c)最大の輝度と最小の輝度の比が最も大きくなる合成画像に対応するアルゴリズム、といった具合に最適なアルゴリズムが決定される。
【0100】
なお、ワークの下地の色に対してその表面に印字された文字の色がより正確に識別されるとは、ユーザの見た目において識別可能であること、および、文字認識やキズ検査処理といった画像処理において識別可能であることのいずれの場合もあり得る。
【0101】
すなわち、画像処理装置100は、単位領域を代表する画像情報を算出するためのアルゴリズム(算出規則)を複数に異ならせて、それぞれのアルゴリズムに対応する複数種類の合成画像を生成し、当該生成された複数種類の合成画像について識別度合いを示す指標を算出し、算出した指標に従って、当該複数のアルゴリズムのうち合成画像の生成に使用すべきアルゴリズムを選択する。
【0102】
<E.撮像設定>
次に、撮像部8の撮像枚数、撮像周期、および、使用枚数を含む撮像設定について説明する。
【0103】
本実施の形態に係る画像処理装置100においては、1回の光沢除去合成において撮像部8によりワーク2を撮像する回数(撮像枚数および撮像周期)、および、撮像により得られた複数の画像のうち実際に合成画像の生成に使用される枚数(使用枚数)を設定することができる。
【0104】
まず、撮像枚数および撮像周期についてみれば、撮像枚数が多いほど光沢を除去できる可能性が高くなり好ましいが、1回の光沢除去合成に要する時間が長くなる。また、撮像周期についてみれば、撮像周期が短すぎると、連続する画像間において近似した位置に光沢が写り込むことで、光沢を十分に除去できない場合がある。一方で、撮像周期が長すぎると、1回の光沢除去合成に要する時間が長くなるとともに、ワーク2が撮像部8の視野内に存在する期間が限られているので、実際に撮像できる枚数も制限される。
【0105】
また、撮像枚数が同じでも、光沢除去合成に使用する画像の選択を適切に行うことで、より確実に光沢を除去できる場合もある。
【0106】
図12は、本発明の実施の形態に係る撮像設定の影響を説明するための図である。図12を参照して、まず、所定の撮像周期でワーク2を繰返し撮像することで、4つの画像IMG1〜IMG4が取得されたとする。これらの画像IMG1〜IMG4の各々においては、光沢202が写り込んでいるものとする。
【0107】
たとえば、上述の光沢除去合成に従って、画像IMG1と画像IMG2とを用いて合成画像SIMG1を生成したとする。このとき、画像IMG1において光沢202が映り込んでいる位置および画像IMG2において光沢202が映り込んでいる位置は、互いに近接しているので、再現すべきワーク2についての画像情報のうち、いずれの画像においても光沢202が移り込んでいた領域が存在する。その結果、合成画像SIMG1においても除去しきれない光沢204が現れてしまう。
【0108】
別の例として、上述の光沢除去合成に従って、画像IMG1と画像IMG4とを用いて合成画像SIMG3を生成したとする。このとき、光沢202が発生する位置の周期性から、画像IMG1において光沢202が写り込んでいる位置と、画像IMG4において光沢202が写り込んでいる位置とは、互いに近接することになる。その結果、合成画像SIMG1の場合と同様に、再現すべきワーク2についての画像情報のうち、いずれの画像においても光沢202が移り込んでいた領域が存在する。その結果、合成画像SIMG3においても除去しきれない光沢204が現れてしまう。
【0109】
これらに対して、画像IMG1と画像IMG3を用いて合成画像SIMG2を生成したとする。このとき、画像IMG1において光沢202が映り込んでいる位置と画像IMG3において光沢202が映り込んでいる位置とは離れているので、再現すべきワーク2についての画像情報は、少なくとも画像IMG1および画像IMG3のいずれか一方に含まれることになる。その結果、光沢202が除去された合成画像SIMG2が生成される。
【0110】
そこで、本実施の形態に従う画像処理装置100は、ユーザがこれらの撮像設定を容易に行うことができるユーザインターフェイスを提供する。
【0111】
[e1.設定画面(その1)]
図13は、撮像設定のタブ412が選択された場合に表示される設定画面406の一例を示す。この設定画面406は、撮像部8によるワークの撮像に関する設定を受付ける。より具体的には、設定画面406は、撮像設定の項目として、選択設定450、撮像枚数設定460、合成設定490、および、ぶれ強度設定480を含む。
【0112】
選択設定450は、画像処理装置100に複数の撮像部8が接続されている場合などのように、画像の入力ソースが複数存在する場合に、どの入力ソースを有効化するかという選択を受付ける。すなわち、選択設定450は、カメラ選択ダイアログ451を含み、ユーザは、表示されるプルダウンメニュー(選択可能な撮像部8がリスト表示される)から、目的の撮像部8を選択する。
【0113】
撮像枚数設定460は、1つのワーク2に対する撮像枚数を受付ける。より具体的には、撮像枚数設定460は、スライドバー461と、変更ボタン462および464とを含む。ユーザは、スライドバー461または変更ボタン462を操作することで、処理をより高速化して撮像できるように、撮像枚数および/または撮像周期を変更することができる(すなわち、より少ない撮像枚数、および/または、より長い撮像周期)。あるいは、ユーザは、スライドバー461または変更ボタン464を操作することで、生成される合成画像がより高精度となるように、撮像枚数および/または撮像周期を変更することができる(すなわち、より多い撮像枚数、および/または、より短い撮像周期)。
【0114】
なお、撮像枚数設定460には、1つのワーク2に対して撮像される回数(撮像枚数、図13に示す例では「10枚」)、および、1回の光沢除去合成に要すると予想される処理時間(予想処理時間、図13に示す例では「300ms」)が表示される。
【0115】
合成設定490は、1つのワーク2に対して複数回の撮像を行うことで得られる複数の画像のうち、光沢除去合成に使用される画像の選択を受付ける。具体的には、合成設定490は、合成開始番号ダイアログ492および合成間隔ダイアログ494を含む。合成開始番号ダイアログ492は、1つのワーク2に対する連続的な撮像によって得られる画像に通し番号を付した場合に、いずれの画像を光沢除去合成に用いる最初の画像とするかについての設定(番号)を受付ける。また、合成間隔ダイアログ494は、一連の画像のうち、光沢除去合成に用いる画像の間隔についての設定を受付ける。図13に示す例では、合成開始番号が「2」であり、合成間隔が「2」であるので、「2番目」、「4番目」、「6番目」、「8番目」、「10番目」の計5枚の画像が光沢除去合成に用いられる。
【0116】
ぶれ強度設定480は、画像間のパターンサーチによる誤差(ぶれ)を吸収するための設定を受付ける。ぶれ強度設定480は、誤差を吸収するためのパラメータが入力されるぶれ強度値ダイアログ481を含む。このぶれ強度値ダイアログ481に設定されるパラメータの一例としては、合成画像を生成する際に、各座標についての代表値を算出する範囲の拡大度合いを示す値が用いられる。たとえば、合成画像に含まれる各座標の輝度を算出する際に、各画像についての対応する座標におけるそれぞれの輝度、および、各座標から強度値ダイアログ481に設定されるパラメータ(画素数)以内の周囲に含まれる画素が有する輝度を抽出し、当該抽出した輝度に基づいて代表値を決定することができる。
【0117】
さらに、設定画面406は、画像表示エリア427を有し、この画像表示エリア427には、ぶれ強度設定480において設定されたぶれ強度に基づいて誤差補正を行った場合に得られた合成画像427Bと、当該誤差補正を行っていない合成画像427Aとが対比して表示される。この表示により、ユーザは、ぶれ強度設定480における設定に応じた誤差補正の度合いを視認しながら、適切なぶれ強度の大きさを設定することができる。
【0118】
[e2.設定画面(その2)]
図13に示す設定画面406においては、スライドバー461を操作することで、「高速処理」側および「高精度処理」側に設定値を変更できるユーザインターフェイスの例を示したが、撮像枚数および撮像周期をそれぞれ独立に設定できるようにしてもよい。
【0119】
図14は、撮像設定のタブ412が選択された場合に表示される設定画面の別の一例を示す。図14を参照して、設定画面407は、図13に示す設定画面406において、撮像枚数設定460に代えて撮像枚数設定460Aを採用したものである。その他については、図13と同様であるので、詳細な説明は繰返さない。
【0120】
撮像枚数設定460Aは、1つのワーク2に対する撮像枚数および撮像周期の設定を受付ける。より具体的には、撮像枚数設定460Aは、撮像枚数ダイアログ467と、撮像周期ダイアログ468とを含む。撮像枚数ダイアログ467は、撮像部8が1つのワーク2に対して撮像する回数である撮像枚数を受付ける。また、撮像周期ダイアログ468は、撮像部8が1つのワーク2に対してある撮像が完了してから次の撮像を開始するまでの時間間隔である撮像周期を受付ける。
【0121】
このようなユーザインターフェイスを利用することで、ユーザは、より高い自由度で、ワーク2を撮像するための撮像設定を行うことができる。
【0122】
[e3.設定画面(その3)]
図13に示す設定画面406においては、合成設定490において、「合成開始番号」および「合成間隔」を設定することで、光沢除去合成に使用する画像を選択できるユーザインターフェイスの例を示したが、ユーザが光沢除去合成に使用する実際の画像を見ながら選択してもよい。
【0123】
図15は、撮像設定のタブ412が選択された場合に表示される設定画面のさらに別の一例を示す。図15を参照して、設定画面408は、図13に示す設定画面406において、合成設定490に代えて撮像タイミング設定470を採用したものである。また、設定画面408は、画像表示エリア429を有し、この画像表示エリア429には、ワークの撮像によって得られた画像の一覧489が表示される。また、画像表示エリア429には、ぶれ強度設定480において設定されたぶれ強度に基づいて誤差補正を行った場合に得られた合成画像429Bと、当該誤差補正を行っていない合成画像429Aとが対比して表示される。その他については、図13と同様であるので、詳細な説明は繰返さない。
【0124】
画像表示エリア429の一覧489には、撮像部8が最小の撮像周期でワークを撮像することで得られる一連の画像が時系列に表示されるとともに、各画像に対応付けて、チェックボックスが表示される。ユーザは、光沢除去合成に使用すべき画像を、対応するチェックボックスをチェックすることで選択する。
【0125】
なお、ワークの種類や照明環境などに依存して、使用すべき画像の選択パターンを変更する必要もあると考えられるので、撮像タイミング設定470において、光沢除去合成に使用される画像の選択パターンを複数設定できるようになっている。すなわち、撮像タイミング設定470は、複数の選択パターンを作成/編集するためのダイアログ471を含む。図15に示す例では、ダイアログ471に、4つの選択パターン(Pattern 0〜Pattern 3)が登録されている。
【0126】
さらに、撮像タイミング設定470は、編集ボタン472を含み、ユーザが編集ボタン472を選択すると、ダイアログ471において指定されている選択パターンの内容を編集できる。編集後、確定ボタン473が選択されることで、変更後の選択パターンの内容が確定する。
【0127】
なお、基本的には、上述のパターンサーチは、探索精度を高めるために、使用される画像の選択とは独立して、1つのワークを撮像して得られる一連の画像のすべてを用いて行われる。そして、位置合わせされた画像のうち、選択された画像が有する画像情報に基づいて、合成画像が生成される。
【0128】
すなわち、画像処理装置100は、テストラン(設定モード)においてワーク2に対する撮像部8による一連の撮像により取得された複数の画像を表示するとともに、表示された複数の画像のうち合成画像の生成に使用される画像の選択を受付ける(設定画面408)。そして、画像処理装置100は、通常モードにおいて、それぞれ搬送されるワーク2について撮像部8による一連の撮像により取得された複数の画像のうち、先にテストランにおいて取得された選択に対応する撮像タイミングに従って、所定数の画像を用いて合成画像を生成する。
【0129】
[e4.撮像設定の自動化]
上述の例では、基本的に、ユーザが手動で撮像設定を行う例を示したが、撮像設定を自動的に決定する処理、あるいは、推奨値を算出してユーザによる撮像設定を支援するようにしてもよい。
【0130】
具体的には、撮像枚数および/または撮像周期については、許容される1ワークあたりの処理時間に基づいて、当該処理時間を超えないように算出するようにしてもよい。あるいは、ワークの移動速度に基づいて、撮像枚数および/または撮像周期を算出するようにしてもよい。
【0131】
また、光沢除去合成に使用する画像については、テストランに取得された一連の画像の間での輝度の変化に基づいて選択するようにしてもよい。すなわち、各画像において、いずれの位置に輝度が高い領域(光沢が写り込んでいると考えられる部分)が生じているかを判断し、その輝度が高い領域が生じている位置が互いに離れている画像を選択する。但し、この場合も、許容される1ワークあたりの処理時間に基づいて、光沢除去合成に使用する画像の枚数を決定することが好ましい。
【0132】
<F.処理手順(設定モード)>
以下、図16を参照して、上述の設定モードにおける処理手順について説明する。
【0133】
図16は、本発明の実施の形態に係る画像処理装置100における設定モードでの処理手順を示すフローチャートである。まず、ユーザは、本実施の形態に係る画像処理装置100を用いて光沢除去合成を実行するために、各種設定を行うものとする。すなわち、ユーザは、設定モードを指定する。
【0134】
CPU110は、設定モードが指定されたか否かを判断する(ステップS200)。設定モードが指定された場合(ステップS200においてYESの場合)には、処理はステップS202へ進む。設定モードが指定されなかった場合(ステップS200においてNOの場合)には、ステップS200の処理が繰返される。
【0135】
ステップS202において、CPU110は、各種設定を受付けるための設定画面を表示する。すなわち、上述の図6に示す設定画面402、図11に示す設定画面404、図13に示す設定画面406、図14に示す設定画面407、図15に示す設定画面408などをユーザ操作に応じて表示する。以下の各ステップにおいて、CPU110は、各種設定を受付ける。
【0136】
具体的には、ステップS204において、CPU110は、光沢除去領域を受付ける。光沢除去領域は、計測処理において着目すべき範囲を意味し、上述の例では、ワーク2の表面の「ABC」の文字が印字された範囲などに相当する。典型的には、ユーザは、設定画面402の画像表示エリア421(図6)において、図示しないユーザインターフェイス画面などを用いて、目的の範囲を指定する。
【0137】
続くステップS206において、CPU110は、合成設定を受付ける。より具体的には、図6に示す設定画面402における、合成設定430および/またはモード設定440において選択されたラジオボタンに対応したアルゴリズムを設定値として受付ける。なお、図11を参照して説明した自動設定がユーザによって選択された場合には、CPU110は、テストランにより得られた画像に対して、複数のアルゴリズムに従ってそれぞれ光沢除去合成を行って複数の合成画像を生成するとともに、各合成画像を評価して、最も適切な合成画像を生成できたアルゴリズムを設定値に決定する。
【0138】
続くステップS208において、CPU110は、光沢除去合成に用いる撮像枚数および使用画像の設定を受付ける。より具体的には、図13に示す設定画面406または図14に示す設定画面407において指定される撮像枚数や、図15に示す設定画面408において指定される使用画像を設定値として受付ける。
【0139】
続くステップS210において、CPU110は、撮像部8の視野におけるワーク2の移動方向や移動速度を受付ける。なお、上述のパターンサーチ処理において述べたように、連続して撮像される画像からワーク(被写体)の移動量(ベクトル量)を算出するので、必ずしもワーク2の移動方向や移動速度を予め設定しておく必要はない。
【0140】
上述したステップS204〜S210の処理によって必要な設定が受付けられると、CPU110は、テストランの開始を待つ(ステップS212)。ユーザは、通常運転モードと同様の動作環境にした上で、計測処理の対象ワークを試験的に撮像(テストラン)する。テストランが開始されると、CPU110は、入力された各種設定に従って、ワーク2を撮像して一連の画像を取得する(ステップS214)とともに、取得された一連の画像に対して光沢除去合成を実行する(ステップS216)。そして、CPU110は、光沢除去合成によって得られた合成画像をディスプレイ102などに表示する(ステップS218)。
【0141】
続くステップS220において、CPU110は、設定モードの完了が指示されたか否かを判断する。すなわち、ユーザは、テストランによって得られた合成画像に基づいて、先に入力した各種設定を見直す必要があるか否か、すなわち、現在の設定値で問題ないか否かを判断する。
【0142】
設定モードの完了が指示された場合(ステップS220においてYESの場合)には、CPU110は、入力された設定値を記憶して、設定モードを終了する。設定モードの完了が指示されなかった場合(ステップS220においてNOの場合)には、CPU110は、入力された設定値を記憶して、ステップS202以下の処理が繰返される。
【0143】
<G.処理例>
図17は、本実施の形態に係る光沢除去合成を用いた処理例を示す図である。この図17に示す処理例では、ワーク2としてペットボトルを用いた。図17(a)〜図17(g)には、ワーク2を順次移動させて撮像して得られたそれぞれの画像を示し、図17(h)には、図17(a)〜図17(g)に示す画像を用いて光沢除去合成することで得られた合成画像を示す。
【0144】
図17(a)〜図17(g)から明らかなように、ワーク2を撮像部8に対して相対移動させることで、取得される画像において、映り込んでいる光沢のワーク2に対する相対位置が異なっていることがわかる。すなわち、図17(a)〜図17(d)に示す画像においては、パッケージの表面に印字されているバーコードの一部が映り込んだ光沢により認識できない状態となっている。これに対して、図17(e)〜図17(g)に示す画像においては、より紙面左側にあるパッケージの内容の一部が光沢により認識できない状態となっており、バーコード自体は認識可能となっている。
【0145】
このような一連の画像(図17(a)〜図17(g))に対して、本実施の形態に係る光沢除去合成を適用することで、ワーク2の表面に印字されたパッケージの内容がより正しく認識可能な合成画像が生成される(図17(h)参照)。
【0146】
<H.視野拡大可能な光沢除去合成>
上述の図4などにおいては、基本的には、撮像部8の視野範囲より狭い範囲の合成画像を生成する光沢除去合成について説明したが、撮像部8の視野範囲より広い範囲の合成画像を生成することも可能である。以下、このような撮像部8の視野範囲より広い範囲の合成画像を生成する場合の処理例について説明する。
【0147】
[h1.光沢除去合成(変形例1)]
図18は、本実施の形態の変形例1に係るパターンサーチおよび画像の位置合わせ処理を説明するための図である。図18(a)〜図18(f)には、一例として、その表面形状が楕円のワークが移動中に連続的に撮像して得られた一連の画像を示す。また、図18(g)には、図18(a)〜図18(f)に示す画像IMG1〜IMG6に基づいて光沢除去合成を行った結果得られた合成画像SIMGの例を示す。なお、図18に示す内容は、上述の図5のフローチャートに示すステップS106〜S118の処理の別形態に相当する。
【0148】
CPU110は、検出センサ4(図1)などによるワークの位置検出や、撮像部8により取得される画像中の背景の変化などに基づいて、光沢除去合成の実行タイミングを認識する。そして、撮像部8により撮像されるワーク2を写した画像を取得する。たとえば、図18(a)に示すような画像IMG1が取得されたものとする。この第1番目に取得された画像IMG1に対して、CPU110は、モデル領域231を設定する。
【0149】
第1番目の撮像から所定時間経過後、CPU110は、図18(b)に示すような第2番目の画像IMG2を取得したものとする。図18に示す例においては、ワークが紙面左側から紙面右側に移動しているものとする。そのため、第2番目に取得された画像IMG2におけるワーク2を写した被写体OBJの位置は、図18(a)に示す画像IMG1における被写体OBJの位置に比較して、より紙面右側に位置している。
【0150】
CPU110は、この第2番目の画像IMG2に対して、直近に取得された第1番目の画像IMG1のモデル領域231で指定される第1番目のモデル画像に基づくパターンサーチを行う。このパターンサーチの結果、画像IMG2のうち領域241が第1番目のモデル画像と合致したとする。
【0151】
このとき、第1番目の画像IMG1におけるモデル領域231と、第2番目の画像IMG2における領域241との相対的な位置ずれ量がワークの移動量として算出される。
【0152】
続いて、この第2番目の画像IMG2に対して、CPU110は、モデル領域232を設定する。このとき、パターンサーチの精度を高めるために、第1番目の画像IMG1に対して設定したモデル領域231の大きさに比較して、第2番目の画像IMG2に対して設定するモデル領域232をより広くしてもよい。
【0153】
より具体的には、第1番目の画像IMG1から第2番目の画像IMG2への間の移動量(ベクトル量)に基づいて、被写体OBJであるワークの移動方向および移動速度を推測し、この推測した移動量に応じて、より広いモデル領域232が設定される。図18(b)に示す例においては、ワークが紙面左側から紙面右側に移動しているので、第2番目の画像IMG2に対して設定されるモデル領域232は、可能な限り画像IMG2の左端を始点として、可能な限り画像IMG2の右側まで拡張されている。図18(b)に示すモデル領域232の拡張幅は、当該モデル領域232として設定された内容が後続の撮像タイミングで取得される画像(この例では、画像IMG3)の視野内に含まれることを条件として、可能な限り広く設定される。すなわち、マージンとして、連続する2回の撮像タイミングの間に移動するワークの移動量を少なくとも確保できるように、モデル領域232が設定される。なお、ワークの移動方向および移動速度が既知である場合には、予め算出した範囲をモデル領域として設定するようにしてもよい。
【0154】
さらに、CPU110は、この第3番目の画像IMG3に対して、直近に取得された第2番目の画像IMG2のモデル領域232で指定される第2番目のモデル画像に基づくパターンサーチを行う。このパターンサーチの結果、画像IMG3のうち領域242が第2番目のモデル画像と合致したとする(図18(c)参照)。以下同様にして、(1)第3番目の画像IMG3に対するモデル領域233の設定(図18(c)参照)、(2)第4番目の画像IMG4に対する第3番目の画像IMG3のモデル領域233で指定される第3番目のモデル画像に基づくパターンサーチ(図18(d)参照)、(3)第4番目の画像IMG4に対するモデル領域234の設定(図18(d)参照)、(4)第5番目の画像IMG5に対する第4番目の画像IMG4のモデル領域234で指定される第4番目のモデル画像に基づくパターンサーチ(図18(e)参照)、(5)第5番目の画像IMG4に対するモデル領域235の設定(図18(e)参照)、(6)第6番目の画像IMG6に対する第5番目の画像IMG5のモデル領域235で指定される第5番目のモデル画像に基づくパターンサーチ(図18(f)参照)の順に処理が実行される。
【0155】
なお、ワークの移動方向および移動速度に基づいて、次回の撮像において、ワークが撮像部8の視野内から外れることが推測されると、モデル領域の大きさが見直される。一例として、図18(e)に示すような、第5番目の画像IMG5に設定されるモデル領域235は、第4番目の画像IMG4に設定されるモデル領域234に比較してより狭い範囲に設定されている。
【0156】
最終的に、各パターンサーチによって得られた画像間の移動量に基づいて、一連の画像についての位置合わせが行われる。そして、上述したような光沢除去合成が実行されることで、図18(g)に示すような合成画像SIMGが生成される。
【0157】
このようなパターンサーチ(画像間の位置合わせ)は、撮像部8により取得される画像のうち、ワーク2の全部または一部を含む画像のすべてを対象にして行われる。すなわち、ワーク2が撮像部8の視野に入ってきてから、ワーク2が視野内から外れるまでの期間に取得された画像が位置合わせの対象となる。
【0158】
図18(g)に示すように、本実施の形態の変形例1に係る光沢除去合成によれば、撮像部8の視野内より広い範囲の画像に対して、有効に光沢除去することができる。すなわち、撮像部8による1回の撮像により取得される範囲に比較して、より広い範囲の画素を複数重ね合わせることで、いずれかの画像に光沢の写り込みがあっても、除去することができる。
【0159】
このように生成される合成画像SIMGは、撮像部8の視野範囲(画像IMG1〜IMG6の大きさ)より広い範囲の画像となる。
【0160】
[h2.光沢除去合成(変形例2)]
上述の変形例1に係る光沢除去合成では、探索精度を高めるために、各モデル領域の大きさを、そのモデル領域に含まれるワーク2を示す画像が後続の撮像により得られる画像内に現れるように、動的に決定する処理例を説明した。これに対して、モデル領域の一部が撮像部8の視野外になってもパターンサーチが可能である場合には、モデル領域をより広い範囲に固定的に設定してもよい。
【0161】
図19は、本実施の形態の変形例2に係るパターンサーチおよび画像の位置合わせ処理の変形例を説明するための図である。図19(a)〜図19(f)には、一例として、その表面形状が楕円のワークが移動中に連続的に撮像して得られた一連の画像を示す。また、図19(g)には、図19(a)〜図19(f)に示す画像IMG1〜IMG6に基づいて光沢除去合成を行った結果得られた合成画像SIMGの例を示す。
【0162】
本変形例においては、光沢除去合成の実行タイミングを認識すると、CPU110は、図19(a)に示すように、取得された画像IMG1に対して、より多くの範囲がカバーされるようにモデル領域251を設定する。続いて、CPU110は、このモデル領域251に含まれるモデル画像に基づいて、第2番目の画像IMG2に対してパターンサーチを行う。
【0163】
上述したように、被写体OBJであるワークは移動しているので、第2番目の画像IMG2に対して、モデル領域251で指定される第1番目のモデル画像に基づくパターンサーチを行った場合には、対応する領域の一部が画像IMG2の範囲外となる。ここで、たとえば、モデル領域を複数の小領域に分割して、各小領域の合致度に基づいて、総合的な合致度を算出するとともに、算出された総合的な合致度を所定のアルゴリズムに従って評価することで、合致する領域を特定することができる。このような公知の技術としては、特開2008−152555号公報などの開示内容を参照されたい。
【0164】
このように、第2番目の画像IMG2のうち、第1番目のモデル画像と合致する領域が特定されると、上述と同様に、第1番目の画像IMG1におけるモデル領域251と、第2番目の画像IMG2における領域261との相対的な位置ずれ量がワークの移動量として算出される。
【0165】
同様にして、第2番目〜第6番目の画像IMG2〜IMG6に対して、それぞれモデル領域252〜256が設定されて、それぞれパターンサーチが行われる(図19(b)〜図19(f)参照)。その結果、第2番目〜第5番目の画像IMG2〜IMG5についての、各画像間のそれぞれの移動量が算出される。
【0166】
最終的に、各パターンサーチによって得られた画像間の移動量に基づいて、一連の画像についての位置合わせが行われる。そして、上述したような光沢除去合成が実行されることで、図19(g)に示すような合成画像SIMGが生成される。
【0167】
[h3.視野拡大可能な光沢除去合成(変形例1および2)の作用効果]
上述のような視野拡大可能な光沢除去合成を適用した場合の作用効果について説明する。
【0168】
図20は、本実施の形態の変形例に係る光沢除去合成の作用効果を説明するための模式図である。図20(a)には、上述の実施の形態に係るにより複数の画像を取得する場合の例を示し、図20(b)には、本実施の形態の変形例に係る方法により複数の画像を取得する場合の例を示す。
【0169】
図20(a)に示すように、撮像部8に対するワーク2の相対的な位置を異ならせたとしても、撮像部8の視野内における特定の領域に光沢202が写り込む。そのため、撮像部により取得された視野に対応する画像のうち、実際に光沢除去処理に使用できる範囲は限られる。たとえば、図20(a)に示すように、ワーク表面に印字された検出対象の文字「ABC」の「C」の文字についてみると、ワーク全体が画像内に収まっている際の可動範囲のみが有効範囲となる。そのため、撮像部の視野全体を光沢除去に使用することができない。
【0170】
これに対して、本実施の形態の変形例に係る光沢除去合成によれば、図20(b)に示すように、撮像部8の視野全体を光沢除去に使用することができる。そのため、写り込んだ光沢202を除去できる確率を高めることができ、それによって、より高い光沢202の除去効果を得ることができる。
【0171】
<I.照明光源設置>
本実施の形態に係る視覚センサシステム1においては、ワーク2に照明光を照射するための照明光源9を含む。このとき、照明光源9の形状(照射パターン)によっては、光沢除去合成では除去しきれない光沢が映り込むことがあるので、撮像部8に対して、照明光源9を適切な位置関係で設置することが好ましい。以下、バー形状の照明光源を一例として、その設置方法について説明する。
【0172】
図21は、照明光源9の長手方向とワーク2の移動方向とが一致している場合を示す模式図である。図22は、照明光源9の長手方向とワーク2の移動方向とが直交している場合を示す模式図である。
【0173】
図21に示すように、照明光源9の長手方向とワーク2の移動方向とが一致している場合には、ワーク2を順次撮像して得られる画像IMG1,IMG2,IMG3を位置合わせしたとしても、光沢202が映り込んでいる紙面横方向における範囲が重なっていることがわかる。そのため、これらの画像IMG1,IMG2,IMG3に基づいて、光沢除去合成をしたとしても、その結果得られる合成画像SIMGには、除去しきれない光沢204が残ってしまう。
【0174】
これに対して、図22に示すように、照明光源9の長手方向とワーク2の移動方向とが実質的に直交している場合には、ワーク2を順次撮像して得られる画像IMG1,IMG2,IMG3に映り込む光沢202の紙面横方向の幅は相対的に狭いことがわかる。そのため、これらの画像IMG1,IMG2,IMG3を位置合わせすることで、画像間で、光沢202が生じている位置を異ならせることができる。その結果、画像IMG1,IMG2,IMG3に基づいて光沢除去合成をすることで、光沢202を除去した合成画像SIMGを生成することができる。
【0175】
<J.作用・効果>
本実施の形態によれば、基本的には、撮像部8の撮像条件および照明光源9による照明条件を維持したまま、移動するワーク2に対して複数回撮像を行う。すなわち、撮像部8に対するワーク2の相対位置が時間的に移動するので、ワーク2において光沢の映り込みが生じる領域は、各画像の間で異なると考えられる。そのため、ある画像において正しく取得できない画像情報であっても、他の画像においては正しく取得できる可能性が高くなる。そして、このように取得された一連の画像を用いて合成画像を生成することで、映り込む光沢の影響を除去する。
【0176】
また、本実施の形態によれば、ベルトコンベア上に載置されて所定方向に移動するワーク2の搬送に影響を与えるようなこともなく、目的の合成画像を生成することができる。すなわち、移動する検査対象を静止させることなく、映り込む光沢を除去することができるとともに、ワークに対する計測処理をより高精度に行うことができる。
【0177】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0178】
1 視覚センサシステム、2 検査対象(ワーク)、4 検出センサ、4a 受光部、4b 投光部、6 搬送機構、8 撮像部、9 照明光源、100 画像処理装置、102 ディスプレイ、104 マウス、106 メモリカード、110 CPU、112 メインメモリ、114 ハードディスク、116 カメラインターフェイス、116a 画像バッファ、118 入力インターフェイス、120 表示コントローラ、122 PLCインターフェイス、124 通信インターフェイス、126 データリーダ/ライタ、128 バス。
【特許請求の範囲】
【請求項1】
予め定められた位置に配置された撮像部を用いて、当該撮像部に対して一定の相対位置に配置された照明光源で当該撮像部の視野を照明した状態で、予め定められた方向に移動する検査対象を複数回撮像するステップと、
前記撮像部による一連の撮像により取得される複数の画像のうち2つの画像間で前記検査対象の少なくとも一部を示す領域を順次探索することで、前記検査対象を基準として、前記複数の画像を位置合わせするステップと、
当該位置合わせされた複数の画像について、単位領域毎に、当該単位領域に対応する、前記位置合わせされた複数の画像におけるそれぞれの領域が有する画像情報から当該単位領域を代表する画像情報を算出することで、合成画像を生成するステップとを備える、画像処理方法。
【請求項2】
前記画像情報を算出するステップは、前記位置合わせされた複数の画像におけるそれぞれの領域が有する画像情報として輝度を取得し、取得した輝度についての、最小値、最大値、平均値、中央値のいずれか1つを、前記単位領域を代表する画像情報として算出する、請求項1に記載の画像処理方法。
【請求項3】
前記合成画像を生成するステップは、
前記単位領域を代表する画像情報を算出するための算出規則を複数に異ならせて、それぞれの算出規則に従って複数種類の合成画像を生成するステップと、
当該生成された複数種類の合成画像を表示するステップと、
当該複数の算出規則のうち前記合成画像の生成に使用すべき算出規則の選択を受付けるステップとをさらに含む、請求項1または2に記載の画像処理方法。
【請求項4】
前記合成画像を生成するステップは、
前記単位領域を代表する画像情報を算出するための算出規則を複数に異ならせて、それぞれの算出規則に対応する複数種類の合成画像を生成するステップと、
当該生成された複数種類の合成画像について識別度合いを示す指標を算出するステップと、
算出した指標に従って、当該複数の算出規則に前記合成画像の生成に使用すべき算出規則を選択するステップとをさらに含む、請求項1または2に記載の画像処理方法。
【請求項5】
前記位置合わせするステップは、
前記検査対象の撮像により取得された第1の画像から前記検査対象を示す第1の領域を抽出し、前記第1の画像の次に取得された第2の画像内で前記第1の領域と合致する領域を探索するステップと、
前記第2の画像から、前記検査対象を示す、前記第1の領域の大きさとは独立した大きさの第2の領域を抽出し、前記第2の画像の次に取得された第3の画像内で前記第2の領域と合致する領域を探索するステップとを含む、請求項1に記載の画像処理方法。
【請求項6】
前記位置合わせするステップでは、前記撮像部により取得される画像のうち、前記検査対象の全部または一部を含む画像のすべてを対象にして、位置合わせを行う、請求項1に記載の画像処理方法。
【請求項7】
前記合成画像を生成するステップでは、前記撮像部の視野範囲より広い範囲の合成画像を生成する、請求項1に記載の画像処理方法。
【請求項8】
前記照明光源は、その長手方向が前記検査対象の移動方向に対して実質的に直交するように配置される、請求項1に記載の画像処理方法。
【請求項9】
前記合成画像を生成するステップは、
第1の検査対象について前記撮像部による一連の撮像により取得された複数の画像を表示するステップと、
表示された複数の画像のうち前記合成画像の生成に使用される画像の選択を受付けるステップと、
第2の検査対象について前記撮像部による一連の撮像により取得された複数の画像のうち、前記第1の検査対象について選択された画像の撮像タイミングに対応する画像を用いて前記合成画像を生成するステップとを含む、請求項1に記載の画像処理方法。
【請求項10】
予め定められた位置に配置された撮像部と、
前記撮像部に対して一定の相対位置に配置された照明光源と、
制御部とを備え、
前記制御部は、
前記撮像部の視野を照明した状態で、予め定められた方向に移動する検査対象を前記撮像部に複数回撮像させる手段と、
前記撮像部による一連の撮像により取得される複数の画像のうち2つの画像間で前記検査対象の少なくとも一部を示す領域を順次探索することで、前記検査対象を基準として、前記複数の画像を位置合わせする手段と、
当該位置合わせされた複数の画像について、単位領域毎に、当該単位領域に対応する、前記位置合わせされた複数の画像におけるそれぞれの領域が有する画像情報から当該単位領域を代表する画像情報を算出することで、合成画像を生成する手段とを備える、画像処理システム。
【請求項1】
予め定められた位置に配置された撮像部を用いて、当該撮像部に対して一定の相対位置に配置された照明光源で当該撮像部の視野を照明した状態で、予め定められた方向に移動する検査対象を複数回撮像するステップと、
前記撮像部による一連の撮像により取得される複数の画像のうち2つの画像間で前記検査対象の少なくとも一部を示す領域を順次探索することで、前記検査対象を基準として、前記複数の画像を位置合わせするステップと、
当該位置合わせされた複数の画像について、単位領域毎に、当該単位領域に対応する、前記位置合わせされた複数の画像におけるそれぞれの領域が有する画像情報から当該単位領域を代表する画像情報を算出することで、合成画像を生成するステップとを備える、画像処理方法。
【請求項2】
前記画像情報を算出するステップは、前記位置合わせされた複数の画像におけるそれぞれの領域が有する画像情報として輝度を取得し、取得した輝度についての、最小値、最大値、平均値、中央値のいずれか1つを、前記単位領域を代表する画像情報として算出する、請求項1に記載の画像処理方法。
【請求項3】
前記合成画像を生成するステップは、
前記単位領域を代表する画像情報を算出するための算出規則を複数に異ならせて、それぞれの算出規則に従って複数種類の合成画像を生成するステップと、
当該生成された複数種類の合成画像を表示するステップと、
当該複数の算出規則のうち前記合成画像の生成に使用すべき算出規則の選択を受付けるステップとをさらに含む、請求項1または2に記載の画像処理方法。
【請求項4】
前記合成画像を生成するステップは、
前記単位領域を代表する画像情報を算出するための算出規則を複数に異ならせて、それぞれの算出規則に対応する複数種類の合成画像を生成するステップと、
当該生成された複数種類の合成画像について識別度合いを示す指標を算出するステップと、
算出した指標に従って、当該複数の算出規則に前記合成画像の生成に使用すべき算出規則を選択するステップとをさらに含む、請求項1または2に記載の画像処理方法。
【請求項5】
前記位置合わせするステップは、
前記検査対象の撮像により取得された第1の画像から前記検査対象を示す第1の領域を抽出し、前記第1の画像の次に取得された第2の画像内で前記第1の領域と合致する領域を探索するステップと、
前記第2の画像から、前記検査対象を示す、前記第1の領域の大きさとは独立した大きさの第2の領域を抽出し、前記第2の画像の次に取得された第3の画像内で前記第2の領域と合致する領域を探索するステップとを含む、請求項1に記載の画像処理方法。
【請求項6】
前記位置合わせするステップでは、前記撮像部により取得される画像のうち、前記検査対象の全部または一部を含む画像のすべてを対象にして、位置合わせを行う、請求項1に記載の画像処理方法。
【請求項7】
前記合成画像を生成するステップでは、前記撮像部の視野範囲より広い範囲の合成画像を生成する、請求項1に記載の画像処理方法。
【請求項8】
前記照明光源は、その長手方向が前記検査対象の移動方向に対して実質的に直交するように配置される、請求項1に記載の画像処理方法。
【請求項9】
前記合成画像を生成するステップは、
第1の検査対象について前記撮像部による一連の撮像により取得された複数の画像を表示するステップと、
表示された複数の画像のうち前記合成画像の生成に使用される画像の選択を受付けるステップと、
第2の検査対象について前記撮像部による一連の撮像により取得された複数の画像のうち、前記第1の検査対象について選択された画像の撮像タイミングに対応する画像を用いて前記合成画像を生成するステップとを含む、請求項1に記載の画像処理方法。
【請求項10】
予め定められた位置に配置された撮像部と、
前記撮像部に対して一定の相対位置に配置された照明光源と、
制御部とを備え、
前記制御部は、
前記撮像部の視野を照明した状態で、予め定められた方向に移動する検査対象を前記撮像部に複数回撮像させる手段と、
前記撮像部による一連の撮像により取得される複数の画像のうち2つの画像間で前記検査対象の少なくとも一部を示す領域を順次探索することで、前記検査対象を基準として、前記複数の画像を位置合わせする手段と、
当該位置合わせされた複数の画像について、単位領域毎に、当該単位領域に対応する、前記位置合わせされた複数の画像におけるそれぞれの領域が有する画像情報から当該単位領域を代表する画像情報を算出することで、合成画像を生成する手段とを備える、画像処理システム。
【図1】
【図2】
【図5】
【図16】
【図3】
【図4】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図2】
【図5】
【図16】
【図3】
【図4】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【公開番号】特開2011−163766(P2011−163766A)
【公開日】平成23年8月25日(2011.8.25)
【国際特許分類】
【出願番号】特願2010−23010(P2010−23010)
【出願日】平成22年2月4日(2010.2.4)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.COMPACTFLASH
【出願人】(000002945)オムロン株式会社 (3,542)
【Fターム(参考)】
【公開日】平成23年8月25日(2011.8.25)
【国際特許分類】
【出願日】平成22年2月4日(2010.2.4)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.COMPACTFLASH
【出願人】(000002945)オムロン株式会社 (3,542)
【Fターム(参考)】
[ Back to top ]