(57)【要約】【課題】透過照明で撮像された画像のみを用いることで低コスト、省スペースに撮像系を構成し、従来よりも高精度で気泡を判別して容器内の液体の液面を検出可能とする。【解決手段】撮像画像から濃淡画像を得るとともに濃淡画像の画素毎の濃度値を微分することで液面に対応するエッジを検出する。そして、このエッジの連続性が変化する部分の有無を判断し、連続性が変化する部分が無いときは当該エッジを液面として検出する。一方、連続性が変化する部分が有るときは当該部分に含まれる画素の濃度平均値に基づいて気泡の存否を識別し、気泡が存在しなければ前記エッジを液面として検出し、気泡が存在すれば該気泡における鉛直下側の前記エッジを液面として検出する。【選択図】        図１
2006138814.tif 000002
【特許請求の範囲】
【請求項１】
透過照明により透明容器内の液体を撮像した画像に対して画像処理を行うことで液体中に浮遊する異物の有無を検査する異物検査に用いられ、前記撮像画像に対する画像処理によって透明容器内の液体の液面を検出する液面検出方法において、
前記撮像画像から濃淡画像を得るとともに該濃淡画像の画素毎の濃度値を微分することで液面に対応するエッジを検出し、該エッジの連続性が変化する部分の有無を判断し、連続性が変化する部分が無いときは当該エッジを液面として検出するとともに、連続性が変化する部分が有るときは当該部分に含まれる画素の濃度平均値に基づいて気泡の存否を識別し、気泡が存在しなければ前記連続性が変化する部分を液体内に含むエッジを液面として検出し、気泡が存在すれば前記エッジを液面として検出することを特徴とする液面検出方法。
【請求項２】
連続性が変化する前記部分の画素を含み且つ当該エッジが連続する方向と交差する方向に並ぶ複数の画素からなる検出画素列を設定し、該検出画素列を前記エッジに沿って走査しながら当該検出画素列における画素の濃度平均値を所定のしきい値と比較することで気泡の存否を識別することを特徴とする請求項１記載の液面検出方法。
【請求項３】
連続性が変化する前記部分の画素の周囲を隣接して囲む領域を気泡候補領域に設定し、該気泡候補領域内の全ての画素の濃度平均値を所定のしきい値と比較することで当該気泡候補領域内における気泡の存否を識別することを特徴とする請求項２記載の液面検出方法。
【請求項４】
液面に対応する前記エッジがその連続する方向と交差する方向において一対存在し、両エッジ間の幅が所定の基準値以下であり且つその連続性が変化しなければ、液体と接する方の前記エッジを液面として検出することを特徴とする請求項１又は２又は３記載の液面検出方法。
【請求項５】
液面に対応する前記エッジがその連続する方向と交差する方向において一対存在し、両エッジ間の幅方向における中点を前記エッジに沿って検出し、隣り合う中点間における傾きが所定範囲内にあるか、若しくは前記エッジに沿って検出した複数の前記中点間の傾きの差が所定値を超える場合に、液体と接する方の前記エッジを液面として検出することを特徴とする請求項１又は２又は３記載の液面検出方法。
【請求項６】
液面に対応する前記エッジがその連続する方向と交差する方向において一対存在し、両エッジ間の幅が所定の基準値以下であり且つその連続性が変化しないとき、当該幅方向における中点を前記エッジに沿って検出し、該中点を含み且つ該中点から鉛直下方に並ぶ複数の画素からなる探索画素列を設定し、該探索画素列を前記中点に沿って走査することで検出されるエッジを液面とすることを特徴とする請求項１〜５の何れかに記載の液面検出方法。
【請求項７】
液面に対応する前記エッジがその連続する方向と交差する方向において一対存在し、両エッジ間の幅方向における中点を前記エッジに沿って検出し、該中点を含み且つ該中点から鉛直上方及び鉛直下方に並ぶ複数の画素からなる探索画素列を設定し、該探索画素列を前記中点に沿って走査することで検出される前記エッジ間の幅が所定値を超える場合に当該探索画素列を前記検出画素列に設定することを特徴とする請求項１〜５の何れかに記載の液面検出方法。
【請求項８】
液面に対応する前記エッジがその連続する方向と交差する方向において一対存在し、両エッジ間の幅方向における中点を前記エッジに沿って検出し、該中点及びそれと隣り合う中点の間に存在する画素の濃度平均値に基づいて気泡の存否を識別することを特徴とする請求項１記載の液面検出方法。
【請求項９】
前記気泡候補領域内に存在する画素の濃度値を微分することでエッジを検出し、該エッジの内側に存在する全ての画素の濃度平均値を所定のしきい値と比較することで当該気泡候補領域内における気泡の存否を識別することを特徴とする請求項３記載の液面検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、透過照明により透明容器内の液体を撮像した画像に対して画像処理を行うことで液体中に浮遊する異物の有無を検査する異物検査に用いられ、前記撮像画像に対する画像処理によって透明容器内の液体の液面を検出する液面検出方法に関するものである。
【背景技術】
【０００２】
従来、透明容器内の液体中に浮遊する異物の有無を検査する異物検査方法が種々提供されている。かかる異物検査方法においては、液体中に存在する気泡の影響を除外するために様々な手段が講じられている。
【０００３】
特許文献１に記載されている異物検査方法では、容器の側方位置の２つの光源を切り換えて所定の拡散角度の照明光を容器内の液体に向けて投射するとともに、上記照明光の光束の中心に対して直角方向よりある角度ふらせた位置に、４台のカメラをそれぞれ配置し、各カメラにより照明光の入射・反射のない容器側面から容器内の液体を撮像し、その画像から画像処理により異物候補を検出し、それぞれ照明光の切り換えにより各カメラにより照明光の入射・反射のない容器側面から容器内の液体を撮像し、その画像から画像処理により液体中の気泡を検出し、画像上の気泡の存在位置と対応しない位置の画像上の異物候補を異物と判定している。この方法では、複数台のカメラと複数の光源との組み合わせで気泡を判別しているが、信頼性の高い検出を行うためには、照明系や撮像系の構成が大掛かりとなり、光学的調整にも手間取りやすいという欠点がある。
【０００４】
また、特許文献２に記載されている異物検査方法では、加振機により液体の入った透明容器を振動させて透明容器内の液体を揺さぶり、泡、液滴を発生させた後、ｔ０時間後に振動を停止して二次元撮像カメラで撮像するとともに、ｔ１時間経過後に再度撮像して、同じ場所に同じ大きさのものが撮像されていれば、それを液滴あるいは容器肉厚内異物とみなして除外し、異なる場所に撮像されているものを液体中の異物であると判断している。この方法では、ｔ１時間経過後に気泡が消滅していることを前提としているが、必ずしも気泡が消滅しているとは限らず、ｔ１時間経過後にも存在している気泡を異物と誤検出してしまう虞がある。
【０００５】
また、特許文献３に記載されている異物検査方法では、容器内を透過する透過光と、容器を挟んで反対側より照射され、この容器内の浮遊物により反射される反射光との光量を相対的に調節することで気泡を高輝度に表出させ、異物を低輝度に表出させることにより、異物と気泡とを輝度の相違により判別したり、あるいは、容器内の液体に流れを誘発して液体中の異物と気泡に動きを誘発した後、容器内の液体を時間的に連続して複数回撮像し、これら複数の撮像画像を比較することで液体内を下降する浮遊物を検出し、この浮遊物を異物と判断したり、浮遊物の面積又は形状に基づいて異物と気泡を判別したり、浮遊物の座標位置の変化状況又は浮遊物の面積又は形状の変化状況に基づいて異物と気泡を判別している。これらの方法では、反射光を利用するために余分な光源や光学系等とその設置スペースが必要になり、また異物が必ずしも低輝度に表出されるとは限らず、あるいは流動中の気泡の位置や形状によっては十分に高輝度に表出しないことも考えられるし、異物の材質や形状と流動状態によっては必ずしも異物が液体中を下降するとは限らず、誤検出の虞がある。
【０００６】
さらに、特許文献４に記載されている異物検査方法では、照明された容器を複数の画像として捉える撮像ステップと、上記画像を２つの検査単位に区分しながらそれぞれの検査単位内において、上記各画像の同一画素での明るさ情報から比較用検査画像を生成する比較用検査画像生成ステップと、生成された上記２つの比較用検査画像の差分をとることにより異物の有無を判定する異物有無判定ステップとを備え、容器内の複数枚の画像は、比較用検査画像生成部において、撮像順序で奇数番目と偶数番目の２つの検査単位Ａ，Ｂに区分され、それぞれの検査単位Ａ，Ｂ内での各画像の同一画素での明るさ情報から比較用検査画像が生成される。つまり、各検査単位Ａ，Ｂでは、先ず１番目の画像と２番目の画像の間で差分処理を行い、抽出された差分画像と３番目の画像を比較し、最後の画像まで、抽出された差分画像と蓄積された画像の間の差分処理を行っているので、比較用検査画像を生成するまでに非常に多くの処理が必要であり、かなりの処理時間を要するために高速処理が要求される場合に対応できないという問題がある。
【特許文献１】特開平９−３２５１２２号公報
【特許文献２】特開２００１−５９８２２号公報
【特許文献３】特開２００１−１１６７０３号公報
【特許文献４】特開平１１−１２５６０４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ところで、容器内の液体中における異物の有無を検査する場合、容器内における液相と気相の境界面（液面）を検出し、液面よりも鉛直下方の液相（液体）を検査領域とする必要があるが、この検査領域を設定する際、液面に存在する異物を検査領域に入れつつ気泡を検査領域から除外しなければならない。このためには、液面に浮遊物が存在する場合にそれが気泡であるか否かを判別し、気泡であればその浮遊物の下縁を液面とし、気泡でなければその浮遊物の上縁を液面として検出する必要がある。このとき、特許文献１〜４に記載されている従来方法によって気泡と異物の判別を行うと上述のような種々の問題があり、低コスト且つ省スペースに撮像系を構成すると同時に高精度で気泡を判別して液面を検出することは困難であった。
【０００８】
本発明は上記事情に鑑みて為されたものであり、その目的は、透過照明で撮像された画像のみを用いることで低コスト、省スペースに撮像系を構成し、従来よりも高精度で気泡を判別して容器内の液体の液面が検出できる液面検出方法を提供することにある。
【課題を解決するための手段】
【０００９】
請求項１の発明は、上記目的を達成するために、透過照明により透明容器内の液体を撮像した画像に対して画像処理を行うことで液体中に浮遊する異物の有無を検査する異物検査に用いられ、前記撮像画像に対する画像処理によって透明容器内の液体の液面を検出する液面検出方法において、前記撮像画像から濃淡画像を得るとともに該濃淡画像の画素毎の濃度値を微分することで液面に対応するエッジを検出し、該エッジの連続性が変化する部分の有無を判断し、連続性が変化する部分が無いときは当該エッジを液面として検出するとともに、連続性が変化する部分が有るときは当該部分に含まれる画素の濃度平均値に基づいて気泡の存否を識別し、気泡が存在しなければ前記連続性が変化する部分を液体内に含むエッジを液面として検出し、気泡が存在すれば前記エッジを液面として検出することを特徴とする。
【００１０】
請求項２の発明は、請求項１の発明において、連続性が変化する前記部分の画素を含み且つ当該エッジが連続する方向と交差する方向に並ぶ複数の画素からなる検出画素列を設定し、該検出画素列を前記エッジに沿って走査しながら当該検出画素列における画素の濃度平均値を所定のしきい値と比較することで気泡の存否を識別することを特徴とする。
【００１１】
請求項３の発明は、請求項２の発明において、連続性が変化する前記部分の画素の周囲を隣接して囲む領域を気泡候補領域に設定し、該気泡候補領域内の全ての画素の濃度平均値を所定のしきい値と比較することで当該気泡候補領域内における気泡の存否を識別することを特徴とする。
【００１２】
請求項４の発明は、請求項１又は２又は３の発明において、液面に対応する前記エッジがその連続する方向と交差する方向において一対存在し、両エッジ間の幅が所定の基準値以下であり且つその連続性が変化しなければ、液体と接する方の前記エッジを液面として検出することを特徴とする。
【００１３】
請求項５の発明は、請求項１又２又は３の発明において、液面に対応する前記エッジがその連続する方向と交差する方向において一対存在し、両エッジ間の幅方向における中点を前記エッジに沿って検出し、隣り合う中点間における傾きが所定範囲内にあるか、若しくは前記エッジに沿って検出した複数の前記中点間の傾きの差が所定値を超える場合に、液体と接する方の前記エッジを液面として検出することを特徴とする。
【００１４】
請求項６の発明は、請求項１〜５の何れかの発明において、液面に対応する前記エッジがその連続する方向と交差する方向において一対存在し、両エッジ間の幅が所定の基準値以下であり且つその連続性が変化しないとき、当該幅方向における中点を前記エッジに沿って検出し、該中点を含み且つ該中点から鉛直下方に並ぶ複数の画素からなる探索画素列を設定し、該探索画素列を前記中点に沿って走査することで検出されるエッジを液面とすることを特徴とする。
【００１５】
請求項７の発明は、請求項１〜５の何れかの発明において、液面に対応する前記エッジがその連続する方向と交差する方向において一対存在し、両エッジ間の幅方向における中点を前記エッジに沿って検出し、該中点を含み且つ該中点から鉛直上方及び鉛直下方に並ぶ複数の画素からなる探索画素列を設定し、該探索画素列を前記中点に沿って走査することで検出される前記エッジ間の幅が所定値を超える場合に当該探索画素列を前記検出画素列に設定することを特徴とする。
【００１６】
請求項８の発明は、請求項１の発明において、液面に対応する前記エッジがその連続する方向と交差する方向において一対存在し、両エッジ間の幅方向における中点を前記エッジに沿って検出し、該中点及びそれと隣り合う中点の間に存在する画素の濃度平均値に基づいて気泡の存否を識別することを特徴とする。
【００１７】
請求項９の発明は、請求項３の発明において、前記気泡候補領域内に存在する画素の濃度値を微分することでエッジを検出し、該エッジの内側に存在する全ての画素の濃度平均値を所定のしきい値と比較することで当該気泡候補領域内における気泡の存否を識別することを特徴とする。
【発明の効果】
【００１８】
本発明によれば、前記撮像画像から得た濃淡画像の画素毎の濃度値を微分することで液面に対応するエッジを検出し、該エッジの連続性が変化する部分が無いときは当該エッジを液面として検出するとともに、連続性が変化する部分が有るときは当該部分に含まれる画素の濃度平均値に基づいて気泡の存否を識別し、気泡が存在しなければ前記連続性が変化する部分を液体内に含むエッジを液面として検出し、気泡が存在すれば前記エッジを液面として検出しているから、透過照明で撮像された画像のみを用いることで低コスト、省スペースに撮像系を構成し、従来よりも高精度で気泡を判別して容器内の液体の液面が検出できるという効果がある。
【発明を実施するための最良の形態】
【００１９】
（実施形態１）
以下、図面を参照して本発明の実施形態を詳細に説明する。
【００２０】
図２は本発明に係る液面検出方法を実施するための装置であって、透明容器１０内に収容された透明な液体中に異物が存在するか否かを検査する異物検査装置の概略構成を示しており、検査台４の上に載置された透明容器１０を挟んで略正対する位置に透過照明部１と撮像カメラ２とが設置され、撮像カメラ２で撮像された画像（撮像画像）が画像処理装置３に取り込まれる。
【００２１】
この異物検査装置は、図３に示すようにＣＣＤカメラからなる撮像カメラ２と画像処理装置３とで構成されるものであって、撮像カメラ２から出力される画像信号をＡ／Ｄ変換するＡ／Ｄ変換器３１と、Ａ／Ｄ変換された画像データを前処理（特異データの除去等）する前処理回路３２と、前処理された画像データを透明容器１０並びに液体の原画像として記憶する原画像メモリ３３と、原画像メモリ３３に記憶されている画素データに基づいて透明容器１０内の液体の液面を検出し、透明容器１０内において検出した液面よりも鉛直下側の領域を検査領域に設定して検査領域内の異物の有無を判定するマイクロプロセッサ（あるいはマイクロコンピュータ）３４とで画像処理装置３が構成されている。ここで、原画像の各画素に対応した微分絶対値及び微分方向値をマイクロプロセッサ３４で演算する画像処理については従来周知であるが、その要点を改めて説明すると、以下の通りである。
【００２２】
まず、透明容器１０を含む空間領域を撮像して得られた原画像ｆ１は濃淡画像であって、図４に示すように、透明容器１０と液体１１、さらには浮遊物（気泡１２又は異物Ｘ）を含む画像となっている。ここに、各画素は例えば濃度が８ビットで表わされて２５６階調に設定される。この濃淡画像から透明容器１０の輪郭線や液面等のエッジを抽出する処理は、「エッジの部分は濃度変化が大きい部分に対応している」という考え方を基本にしている。したがって、濃度を微分することによってエッジの抽出を行なうのが一般的である。微分処理は、図５に示すように、濃淡画像を３×３画素の局所並列ウィンドウＷに分割して行なう。つまり、注目する画素Ｅと、その画素Ｅの周囲の８画素（８近傍）Ａ〜Ｄ、Ｆ〜Ｉとで局所並列ウィンドウを形成し、局所並列ウィンドウ内の画素Ａ〜Ｉの濃度の縦方向の濃度変化ΔＶと横方向の濃度変化ΔＨとを次式によって求め、
ΔＶ＝（Ａ＋Ｂ＋Ｃ）−（Ｇ＋Ｈ＋Ｉ）
ΔＨ＝（Ａ＋Ｄ＋Ｇ）−（Ｃ＋Ｆ＋Ｉ）
さらに、微分絶対値｜ｅE｜と微分方向値∠ｅEとを次式によって求めるのである。
【００２３】
｜ｅE｜＝（ΔＶ2＋ΔＨ2）1/2
∠ｅE＝tan-1（ΔＶ／ΔＨ）＋π／２
ただし、Ａ〜Ｉは対応する画素の濃度を示している。
【００２４】
上式から明らかなように、微分絶対値｜ｅ｜は、原画像の着目する画素の近傍領域における濃度の変化率を表し、微分方向値∠ｅは、同近傍領域における濃度変化の方向に直交する方向を表している。
【００２５】
以上の演算を原画像ｆ１について行なうことにより、透明容器１０の輪郭や液面、気泡１２や異物Ｘ等が存在しているような濃度変化が大きい部分と、その変化の方向とを抽出することができるのである。ここで、原画像は濃淡画像であって、濃度は通常８ビットで表されるから、各画素における濃度ａは、０≦ａ≦２５５となる。また、微分絶対値ｂは、例えば６ビットで表され、０≦ｂ≦６３となり、微分方向値ｃは、例えば８方向で表され、１≦ｃ≦８となる。なお、以下の説明においては、濃度という用語は白の濃度を表し、濃度値が大きいほど明るいものとする。
【００２６】
ところで、透明容器１０内の液体１１の周縁部分（透明容器１０の内壁と接する部分）が表面張力によって鉛直上方に盛り上がるため、原画像ｆ１における液面は濃度値が大きい液相と気相の境界に、１乃至複数画素の幅で濃度値が小さい帯状の領域として存在することになるから（図４参照）、以下の説明では液面を含む上記帯状領域を「液面部Ｓ」と呼ぶことにする。そして、液面に気泡１２が生じている場合、原画像ｆ１においては、図４に示すように液面部Ｓの中で濃度値が大きい領域（明るい領域）として存在することになる。
【００２７】
次に、本発明の要旨である液体１１の液面を検出する処理について、図１のフローチャートを参照して詳細に説明する。
【００２８】
検査台４に載置された透明容器１０を透過照明部１で照明しながら撮像カメラ２で撮像し、その撮像画像を画像処理装置３に取り込む（ステップ１）。このとき、透明容器１０内の液体１１が運搬等にって揺動していても画像の撮像および取り込みには支障はない。画像処理装置３に取り込まれた撮像画像（原画像ｆ１）に対して、マイクロプロセッサ３４が仮の検査領域Ｍを設定する（ステップ２）。この検査領域Ｍは、図６に示すように少なくとも透明容器１０内の液体１１並びに液面部Ｓが含まれるように、透明容器１０の大きさや液体１１の量、撮像カメラ２の画角等の条件に基づいて予め決定されている。
【００２９】
続いて、マイクロプロセッサ３４は透明容器１０内における液面部Ｓの位置を認識する処理を行う。この認識処理は、微分絶対値が大きいほど濃度変化が大きいことを表わしている点に着目して行なわれる。すなわち、マイクロプロセッサ３４は、原画像メモリ３３から読み出した原画像ｆ１の検査領域Ｍ内において微分絶対値が所定のしきい値以上となる画素を検査領域Ｍ内に設定した探索開始ポイントから開始して鉛直上方に向かって探索し、微分絶対値がしきい値以上となる画素の位置を液面部Ｓの位置と認識するのである（ステップ３）。ここで、１画素ずつ探索すると液体１１中の浮遊物（気泡１２又は異物Ｘ）を液面部Ｓと誤認識してしまう虞があるので、図６（ａ）に示すようにｍ画素×ｎ画素分の大きさを有したライン型の探索ウィンドウＷ２を設定し、微分絶対値がしきい値以上となる連続した画素の集まり（エッジ）を液面部Ｓと判断し（図６（ｂ）参照）、それらの画素の位置を液面部Ｓの位置と認識することが望ましい。なお、探索ウィンドウＷ２の大きさを適当に設定することで、揺動によって液面部Ｓが水平でない場合でも認識することが可能である。
【００３０】
上述のようにして液面部Ｓの位置が認識されれば、次にマイクロプロセッサ３４は、液面部Ｓの位置における浮遊物の有無とその浮遊物が気泡１２であるか否かを判定する処理を行う。この判定処理は、液面部Ｓに相当するエッジの微分方向値が略同じ値となり、浮遊物が存在する箇所（画素）において大きく変化する点に着目して行われる。
【００３１】
すなわち、微分方向値ｃ（＝１〜８）は、図８に示すように微分方向値ｃの値に応じて８近傍のうちで着目画素Ｅを挟んで対向する２つの画素Ａ〜Ｄ，Ｆ〜Ｉの濃度ａの間に一定の関係、つまり微分方向値ｃが示す方向（図８において矢印で示す方向）から時計回りに９０°回転した方向に隣接する画素の濃度が、反時計回りに９０°回転した方向に隣接する画素の濃度よりも常に高くなる（明るくなる）という性質を有している。例えば、図８（ａ）に示すように着目画素Ｅの微分方向値ｃが１であれば、微分方向値ｃが示す方向から時計回りに９０°回転した方向に隣接する画素Ｈの濃度ａHが、反時計回りに９０°回転した方向に隣接する画素Ｂの濃度ａBよりも常に高くなる（ａB＜ａH）。また、同図（ｂ）に示すように着目画素Ｅの微分方向値ｃが２であれば、微分方向値ｃが示す方向から時計回りに９０°回転した方向に隣接する画素Ｉの濃度ａIが、反時計回りに９０°回転した方向に隣接する画素Ａの濃度ａAよりも常に高くなる（ａA＜ａI）。なお、同図（ｃ）〜（ｈ）に示すように微分方向値ｃが３〜８の場合も同様に着目画素Ｅを挟んで対向する２つの画素Ａ〜Ｄ，Ｆ〜Ｉの濃度ａA〜ａD，ａF〜ａI間に上述のような大小関係が成立する。
【００３２】
従って、図７（ａ）に示すように液面部Ｓの位置に浮遊物が無ければ、液面部Ｓの位置では隣接する画素の微分方向値ｃが全て同じ値（液面部Ｓが水平であればｃ＝１、液面部Ｓが水平から傾いていればｃ＝２又はｃ＝８）となるのに対し、液面部Ｓの位置に浮遊物が有れば、同図（ｂ）に示すように液面部Ｓの位置における微分方向値ｃの連続性に変化が生じることになる。なお、図７における丸付き数字の記号は液面部Ｓの位置における画素の微分方向値ｃを示している。
【００３３】
つまり、マイクロプロセッサ３４では、原画像ｆ１における液面部Ｓの位置の画素の微分方向値ｃを求めるとともに、液面部Ｓの位置において微分方向値ｃの連続性が変化する画素の有無を探索し（ステップ４，５）、かかる画素が無ければ、液面部Ｓの下側のエッジ（図７（ａ）において微分方向値ｃ＝１となるエッジ）を液面として検出するとともにこの液面を新たな境界とする検査領域Ｍを設定し（ステップ６）、この検査領域Ｍに対して異物Ｘの検査を行う。
【００３４】
一方、微分方向値ｃの連続性が変化する画素が有れば、マイクロプロセッサ３４は、図９に示すように当該画素を含み且つエッジ（液面）が連続する方向と交差する方向（図９における上下方向）に並ぶ複数の画素からなる検出画素列Ｙを原画像ｆ１に対して設定するとともに検出画素列Ｙを前記エッジに沿って走査し、検出画素列Ｙの各画素に対応する原画像ｆ１の各画素について求めた微分絶対値ｂを所定値と比較し、微分絶対値ｂが所定値以上となる画素のうちで上下方向の両端に相当する画素のアドレスを確保するとともに（ステップ７）、原画像ｆ１に対して当該両端の画素のアドレス間に存在する１乃至複数の画素の濃度平均値を求め、その濃度平均値が所定のしきい値以上であればその浮遊物を気泡と判定し、濃度平均値がしきい値未満であればその浮遊物を気泡と判定しない（ステップ８）。すなわち、浮遊物が気泡１２であれば、図９（ａ）に示すように気泡１２の内部を透過照明部１の光が透過するために濃度平均値が相対的に大きくなり、浮遊物が異物Ｘであれば、同図（ｂ）に示すように透過照明部１の光が異物Ｘで遮られるために濃度平均値が相対的に小さくなるから、上述のように浮遊物の上下方向における幅が最も大きい部分の濃度平均値をしきい値と比較することで当該浮遊物が気泡か否かを判定することができるものである。
【００３５】
そして、浮遊物が気泡であるか否かの判定結果に基づき、マイクロプロセッサ３４は、以下のようにして新たな検査領域Ｍを設定する。つまり、浮遊物が気泡である場合、図１０（ａ）に示すように液面部Ｓの下側のエッジを液面として検出するとともにこの液面（エッジ）を新たな境界とする検査領域Ｍを設定し（ステップ９）、気泡１２が異物Ｘと誤検知されることを防いでいる。一方、浮遊物が気泡でない場合、同図（ｂ）に示すように液面部Ｓの下側のエッジにおいて、微分方向値ｃの連続性が変化する箇所の画素を、当該箇所の両側で微分方向値ｃの連続性が維持されている画素間を結ぶ直線と重なる画素に置き換えたものを液面として検出するとともにこの液面を新たな境界とする検査領域Ｍを設定し（ステップ１０）、液面部Ｓの位置に存在する異物Ｘを検査領域Ｍに含めるようにして、かかる異物Ｘが検査から漏れるのを防いでいる。
【００３６】
上述のように本実施形態によれば、撮像画像から得た濃淡画像の画素毎の濃度値を微分することで液面に対応するエッジを検出し、エッジの連続性が変化する部分が無いときは当該エッジを液面として検出するとともに、連続性が変化する部分が有るときは当該部分に含まれる画素の濃度平均値に基づいて気泡の存否を識別し、気泡が存在しなければ前記連続性が変化する部分を液体内に含むエッジを液面として検出し、気泡が存在すれば前記エッジを液面として検出しているから、透過照明で撮像された画像のみを用いることで低コスト、省スペースに撮像系を構成し、従来よりも高精度で気泡を判別して容器２内の液体の液面が検出できるものである。
【００３７】
ところで、液面部Ｓの位置に存在する浮遊物が気泡か否かを判定するに当たっては、以下のような判定方法を用いても構わない。
【００３８】
この判定方法は、図１１に示すように、微分方向値ｃの連続性が変化する箇所の画素の周囲を隣接して囲む矩形の領域、言い換えると浮遊物の輪郭に外側から接する（外接する）矩形の領域を気泡候補領域Ｑに設定し、この気泡候補領域Ｑ内の全ての画素の濃度平均値を所定のしきい値と比較することで気泡候補領域Ｑ内における気泡１２の存否、すなわち、浮遊物が気泡か否かを判定するというものである。なお、気泡候補領域Ｑとする外接矩形は、検出画素列Ｙを走査して確保された上下方向の両端に相当する画素のアドレスと、微分方向値ｃの連続性変化の開始点および終了点に相当する画素のアドレスとから容易に設定可能である。
【００３９】
あるいは、図１２に示すように、上記外接矩形を１画素ずつ狭めながら矩形の境界上の画素の濃度値を微分して微分絶対値を求め、この微分絶対値が所定値以上となる矩形の輪郭（エッジ）を検出し、気泡の輪郭に内側から接する（内接する）上記矩形の領域を気泡候補領域Ｑに設定し、この気泡候補領域Ｑ内の全ての画素の濃度平均値を所定のしきい値と比較することで気泡候補領域Ｑ内における気泡１２の存否、すなわち、浮遊物が気泡か否かを判定するようにしても構わない。
【００４０】
（実施形態２）
実施形態１の液面検出方法では、液面部Ｓの位置に気泡や異物のような浮遊物が存在するときに液面部Ｓの位置における微分方向値ｃの連続性に変化が生じることを利用して浮遊物の有無を判定しているが、かかる判定方法によると、液面部Ｓの位置全体に気泡が存在するときに微分方向値ｃの連続性にほとんど変化が生じず、気泡の有無を誤判定して適切な検査領域Ｍが設定されない可能性がある。
【００４１】
そこで本実施形態においては、液面部Ｓの位置全体に気泡が存在する場合には液面部Ｓの上下方向の幅が相対的に大きくなり且つ液面部Ｓの位置の一部に浮遊物が存在する場合には上下方向の幅の連続性が変化する点に着目し、液面部Ｓの幅の大きさと連続性に基づいて液面部Ｓの位置における浮遊物の有無判定を行うようにしている。
【００４２】
以下、図１３のフローチャートを参照して本実施形態の液面検出方法を説明する。但し、実施形態１と共通の処理については適宜説明を省略する。
【００４３】
マイクロプロセッサ３４は、実施形態１と同様にして液面部Ｓの位置を認識した後（ステップ１〜３）、液面部Ｓの上下両側のエッジを含み且つエッジが連続する方向と交差する方向に並ぶ複数の画素からなる検出画素列Ｙを原画像ｆ１に対して設定するとともに検出画素列Ｙを前記エッジに沿って走査し、液面部Ｓの上下両側のエッジの幅、例えば、液面部Ｓが水平な場合であれば微分方向値ｃがｃ＝５及びｃ＝１となる画素の上下方向の距離（画素数）を算出する（ステップ４）。そして、マイクロプロセッサ３４では、算出した液面部Ｓの幅を所定の基準値と比較し（ステップ５）、基準値よりも大きければ液面部Ｓの位置全体に気泡が存在すると判断し、液面部Ｓの下側のエッジ（液面部Ｓにおいて微分方向値ｃ＝１となるエッジ）を液面として検出するとともにこの液面を新たな境界とする検査領域Ｍを設定する（ステップ６）。また、液面部Ｓの幅が基準値以下であれば、マイクロプロセッサ３４は液面部Ｓの幅の連続性に変化があるか否かを判断し（ステップ７）、変化がなければステップ６の処理によって検査領域Ｍを設定する。
【００４４】
一方、液面部Ｓの幅の連続性に変化があると判断した場合、マイクロプロセッサ３４は、連続性が変化する箇所において最も幅が大きくなる両端の画素のアドレスを取得した後、原画像ｆ１に対して当該両端の画素のアドレス間に存在する全ての画素の濃度平均値を求め、その濃度平均値が所定のしきい値以上であればその浮遊物を気泡と判定し、濃度平均値がしきい値未満であればその浮遊物を気泡と判定しない（ステップ８）。そして、浮遊物が気泡である場合、マイクロプロセッサ３４は液面部Ｓの下側のエッジを液面として検出するとともにこの液面（エッジ）を新たな境界とする検査領域Ｍを設定し（ステップ９）、反対に浮遊物が気泡でない場合、液面部Ｓの下側のエッジにおいて幅の連続性が変化する箇所の画素を、当該箇所の両側で幅の連続性が維持されている画素間を結ぶ直線と重なる画素に置き換えたものを液面として検出するとともにこの液面を新たな境界とする検査領域Ｍを設定する（ステップ１０）。
【００４５】
このように本実施形態によれば、液面部Ｓの位置全体に気泡が存在するときでも気泡の有無を正確に判定して適切な検査領域Ｍを設定することができる。
【００４６】
（実施形態３）
本実施形態は、液面部Ｓの位置における浮遊物の有無の判定処理に特徴があり、その他の処理については実施形態２と共通である。
【００４７】
本実施形態では、液面部Ｓの位置に浮遊物が無ければ液面部Ｓの幅方向（上下方向）の中点間を結んだ直線の傾きが略一定となり、浮遊物が有れば傾きが変化する点に着目し、上記中点間を結んだ直線の傾きに基づいて浮遊物の有無の判定を行っている。
【００４８】
マイクロプロセッサ３４は、液面部Ｓの上下両側のエッジを含み且つエッジが連続する方向と交差する方向に並ぶ複数の画素からなる検出画素列Ｙを原画像ｆ１に対して設定するとともに検出画素列Ｙを前記エッジに沿って走査し、図１４に示すように液面部Ｓの上下方向における中点Ｈ１，Ｈ２，…を求め、さらに、それぞれ隣り合う中点Ｈ１とＨ２，Ｈ２とＨ３，…を結んだ直線の傾き（以下、説明を簡単にするために「中点の傾き」という）を求める。液面部Ｓの位置に浮遊物が無ければ、これら中点の傾きはほぼ等しくなるはずであるから、中点の傾きのモード値（最頻値）を求めてそれを液面部Ｓの傾きの基準値とし、この基準値との差が所定値を超える中点の傾きが存在すれば浮遊物有りと判定する。そして、浮遊物が存在しない場合、静止しているか又は動いているかといった液面の状態等にかかわらず液面部Ｓの幅が略一定になると考えられるので、液面部Ｓの中点に対して鉛直下方向へのオフセット値Ｊを予め設定しておき、浮遊物が存在しない場合には、図１４に示すように各中点の位置から鉛直下方向にオフセット値Ｊだけ下がった位置にある画素の列（エッジ）を液面として検出するとともにこの液面（エッジ）を新たな境界とする検査領域Ｍを設定すればよい。このような方法で液面を検出して検査領域Ｍを設定すれば、液面部Ｓの微小な形状変化に対応して検査領域Ｍを設定することができる。
【００４９】
一方、浮遊物有りと判定した場合には、実施形態１又は２と同様の処理を行って当該浮遊物が気泡か否かを判定し、浮遊物の種類に応じた検査領域Ｍを設定することができる。。なお、中点の傾きと基準値との差が所定値よりも大きいか否かで浮遊物の有無を判定する代わりに、隣接する区間の中点の傾きの差が所定値よりも大きい場合に浮遊物有りと判定するようにしても構わない。
【００５０】
（実施形態４）
本実施形態は、液面部Ｓの位置に浮遊物が存在しないと判定した場合、液面部Ｓの中点を含み且つ中点と鉛直下方に並ぶ複数の画素からなる探索画素列Ｚ１を原画像ｆ１に対して設定し、この探索画素列Ｚ１を水平方向に走査しながら微分方向値ｃがｃ＝１且つ微分絶対値ｂが所定値以上となる画素を探索することで液面（液面部Ｓの下側のエッジ）を検出する点に特徴がある。
【００５１】
マイクロプロセッサ３４は、実施形態３と同様にして中点の傾きを求めて液面部Ｓの位置における浮遊物の有無を判定し、液面部Ｓの位置に浮遊物が存在しないと判定した場合、図１５に示すように液面部Ｓの中点Ｈ１，Ｈ２，…を含み且つ中点Ｈ１，Ｈ２，…と鉛直下方に並ぶ複数の画素からなる探索画素列Ｚ１を原画像ｆ１に対して設定するとともに、探索画素列Ｚ１を水平方向に走査しながら微分方向値ｃがｃ＝１且つ微分絶対値ｂが所定値以上となる画素を探索する。さらにマイクロプロセッサ３４では、上述のようにして探索した複数の画素の列（エッジ）を液面として検出するとともにこの液面（エッジ）を新たな境界とする検査領域Ｍを設定する。但し、マイクロプロセッサ３４が液面部の位置に浮遊物が存在すると判定した場合、実施形態１又は２と同様の処理を行って浮遊物が気泡か否かの判定を行って検査領域Ｍの設定を行う。
【００５２】
本実施形態によれば、液面（液面部Ｓの下側のエッジ）をより正確に検出することができる。
【００５３】
（実施形態５）
本実施形態は、液面部Ｓの中点を含み且つ中点と鉛直上方及び下方に並ぶ複数の画素からなる探索画素列Ｚ２を原画像ｆ１に対して設定し、この探索画素列Ｚ２を水平方向に走査しながら微分方向値ｃがｃ＝１又はｃ＝５且つ微分絶対値ｂが所定値以上となる画素を探索することで液面部Ｓの幅を求め、この幅に基づいて液面部Ｓの位置における浮遊物の有無を判定する点に特徴がある。
【００５４】
マイクロプロセッサ３４は、実施形態３と同様にして中点の傾きを求めた後、図１６に示すように液面部Ｓの中点Ｈ１，Ｈ２，…を含み且つ中点Ｈ１，Ｈ２，…と鉛直下方に並ぶ複数の画素からなる探索画素列Ｚ２を原画像ｆ１に対して設定するとともに、探索画素列Ｚ２を水平方向に走査しながら微分方向値ｃがｃ＝１又はｃ＝５且つ微分絶対値ｂが所定値以上となる画素を探索して液面部Ｓの幅を求める。そして、マイクロプロセッサ３４は、液面部Ｓの幅が所定値以上となる箇所（画素）があればそこに浮遊物が存在すると判定し、実施形態１又は２と同様の処理を行って浮遊物が気泡１２か否かの判定を行って検査領域Ｍの設定を行う。尚、液面部Ｓの幅が所定値以上となる箇所（画素）がなければ、マイクロプロセッサ３４は実施形態４と同様にして液面部Ｓの下側のエッジを液面として検出し、その液面（エッジ）を新たな境界とする検査領域Ｍを設定する。
【００５５】
（実施形態６）
本実施形態は、気泡の内部が液面部Ｓに比べて明るい点に着目し、液面部Ｓの中点Ｈ１，Ｈ２，…及びそれと隣り合う中点Ｈ１，Ｈ２，…の間に存在する画素の濃度平均値に基づいて液面部Ｓの位置における気泡の存否を識別する点に特徴がある。
【００５６】
マイクロプロセッサ３４は、実施形態３と同様にして中点Ｈ１，Ｈ２，…並びに中点の傾きを求めるとともに隣り合う中点Ｈ１とＨ２、Ｈ２とＨ３、Ｈ３とＨ４、…とそれらを結ぶ区間の画素の濃度平均値をそれぞれ求めて所定のしきい値と比較し、濃度平均値がしきい値よりも大きくなる区間が存在する場合にその区間に気泡が存在すると判定する。そして、液面部Ｓの位置に気泡が存在すると判定した場合、マイクロプロセッサ３４は液面部Ｓの下側のエッジを液面として検出し、その液面を境界とする検査領域Ｍを設定する。
【００５７】
一方、液面部Ｓの位置に気泡が存在しないと判定した場合、マイクロプロセッサ３４は実施形態３と同様に各中点Ｈ１，Ｈ２，…の位置から鉛直下方向にオフセット値Ｊだけ下がった位置にある画素の列（エッジ）を液面として検出するとともにこの液面（エッジ）を新たな境界とする検査領域Ｍを設定する。
【００５８】
尚、液面部Ｓの位置に気泡が存在するか否かを判定するに当たっては、中点Ｈ１とＨ２、Ｈ２とＨ３、Ｈ３とＨ４、…とそれらを結ぶ区間の画素の濃度平均値の差を比較し、その差が所定値以上である場合に気泡が存在すると判定するようにしても構わない。
【００５９】
ところで、実施形態３〜６において中点の傾きに基づいて液面（検査領域Ｍの境界）を設定する際、浮遊物の存在によって傾きの値若しくは液面部Ｓの幅が大きく変化するときには、浮遊物が存在する区間の中点の傾きを無視して浮遊物が存在しない区間の中点の傾きのみに基づいて液面を設定することが望ましい。
【図面の簡単な説明】
【００６０】
【図１】本発明の実施形態１を説明するためのフローチャートである。
【図２】同上における異物検査装置の概略構成図である。
【図３】同上における異物検査装置のブロック図である。
【図４】同上の説明図である。
【図５】同上における局所並列ウィンドウを示す説明図である。
【図６】（ａ）（ｂ）は同上の説明図である。
【図７】（ａ）（ｂ）は同上の説明図である。
【図８】（ａ）〜（ｈ）は同上の説明図である。
【図９】（ａ）（ｂ）は同上の説明図である。
【図１０】（ａ）（ｂ）は同上の説明図である。
【図１１】同上の説明図である。
【図１２】同上の説明図である。
【図１３】本発明の実施形態２を説明するためのフローチャートである。
【図１４】本発明の実施形態３の説明図である。
【図１５】本発明の実施形態４の説明図である。
【図１６】本発明の実施形態５の説明図である。
【符号の説明】
【００６１】
１  透過照明部
２  撮像カメラ
３  画像処理装置
【図１】
2006138814.tif 000003
【図２】
2006138814.tif 000004
【図３】
2006138814.tif 000005
【図４】
2006138814.tif 000006
【図５】
2006138814.tif 000007
【図６】
2006138814.tif 000008
【図７】
2006138814.tif 000009
【図８】
2006138814.tif 000010
【図９】
2006138814.tif 000011
【図１０】
2006138814.tif 000012
【図１１】
2006138814.tif 000013
【図１２】
2006138814.tif 000014
【図１３】
2006138814.tif 000015
【図１４】
2006138814.tif 000016
【図１５】
2006138814.tif 000017
【図１６】
2006138814.tif 000018