IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電気株式会社の特許一覧

<>
  • 特許-検査装置 図1
  • 特許-検査装置 図2
  • 特許-検査装置 図3
  • 特許-検査装置 図4
  • 特許-検査装置 図5
  • 特許-検査装置 図6
  • 特許-検査装置 図7
  • 特許-検査装置 図8
  • 特許-検査装置 図9
  • 特許-検査装置 図10
  • 特許-検査装置 図11
  • 特許-検査装置 図12
  • 特許-検査装置 図13
  • 特許-検査装置 図14
  • 特許-検査装置 図15
  • 特許-検査装置 図16
  • 特許-検査装置 図17
  • 特許-検査装置 図18
  • 特許-検査装置 図19
  • 特許-検査装置 図20
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-26
(45)【発行日】2024-09-03
(54)【発明の名称】検査装置
(51)【国際特許分類】
   G01N 21/90 20060101AFI20240827BHJP
【FI】
G01N21/90 D
【請求項の数】 3
(21)【出願番号】P 2022550305
(86)(22)【出願日】2020-09-18
(86)【国際出願番号】 JP2020035523
(87)【国際公開番号】W WO2022059185
(87)【国際公開日】2022-03-24
【審査請求日】2023-03-01
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100124811
【弁理士】
【氏名又は名称】馬場 資博
(74)【代理人】
【識別番号】100088959
【弁理士】
【氏名又は名称】境 廣巳
(74)【代理人】
【識別番号】100097157
【弁理士】
【氏名又は名称】桂木 雄二
(74)【代理人】
【識別番号】100187724
【弁理士】
【氏名又は名称】唐鎌 睦
(72)【発明者】
【氏名】井上 恵子
【審査官】蔵田 真彦
(56)【参考文献】
【文献】国際公開第2010/128384(WO,A1)
【文献】特開2018-205199(JP,A)
【文献】特開2013-96922(JP,A)
【文献】特開2020-118458(JP,A)
【文献】特開2008-224562(JP,A)
【文献】特開2005-98832(JP,A)
【文献】米国特許第5864395(US,A)
(58)【調査した分野】(Int.Cl.,DB名)
G01N 21/84-21/958
(57)【特許請求の範囲】
【請求項1】
液体が充填された容器を把持する把持部と、前記把持部が前記容器を把持した状態で当該容器を、第1の軸を中心として少なくとも傾斜させる傾斜部と、第1の軸とは異なる第2の軸を中心として前記容器と撮像装置との相対的な向きを変化させることで、撮像装置による前記容器の撮影箇所を変更する変更部と、を有する検査装置と、
前記検査装置の外部に設置され、前記容器に充填された液体を撮像する撮像装置と、
前記撮像装置が撮像した画像データに基づいて物体を検出し、検出した物体が異物であるか否か判定する判定装置と、
を有し、
前記変更部は、第2の軸を中心として前記容器を回転させることで、第2の軸を中心として前記容器と撮像装置との相対的な向きを変化させ、前記変更部が前記容器を回転させる回転速度と、前記傾斜部が前記容器を傾斜させる回転速度とは、異なっており、
前記変更部は、異物を舞い上がらせないように予め定められた速度で前記容器を回転させるように構成されており、
前記判定装置は、
取得した画像データに基づいて第1の背景モデルを生成し、かつ、前記変更部により容器と撮像装置との相対的な向きを変化させることにより前記容器の撮影箇所を変更して取得した画像データに基づいて第2の背景モデルを生成する背景モデル生成部と、
前記第1の背景モデルに基づいて前記容器内部の沈殿物を検出し、かつ、前記第2の背景モデルに基づいて前記容器内部の沈殿物を検出する検出部と、
を有する
検査システム。
【請求項2】
前記検出部は、前記第2の背景モデルと、前記容器を傾斜させた後に取得した画像データと、に基づいて沈殿物を検出する
請求項1に記載の検査システム。
【請求項3】
前記検出部は、前記第1の背景モデルと、前記容器を傾斜させた後に前記容器の撮影箇所を変更前に戻したうえで取得した画像データと、に基づいて沈殿物を検出する
請求項1または請求項2に記載の検査システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、検査装置、検査方法、記録媒体、検査システム、情報処理装置に関する。
【背景技術】
【0002】
容器に入った液体中の異物を検出するための技術が知られている。
【0003】
異物を検出する際に用いられる技術の一つとして、例えば、特許文献1がある。特許文献1には、回転手段と、制御手段と、検査手段と、を有する検査装置が記載されている。特許文献1によると、制御手段は、被検体である容器の向きを計測し、所定の検査位置での検査時点で予め定めた検査用の向きになるように回転手段を制御する。そして、検査手段は、所定の検査位置に容器が到達したときにその容器の検査を行う。また、特許文献1には、ラベルがはりつけられていない場合などでは、容器の向きは検査精度に悪影響はないものの、ラベルがはりつけられていたりする場合に検査精度に問題が生じるため、向きを制御する旨が開示されている。
【0004】
また、関連する技術として、例えば、特許文献2がある。特許文献2には、検査用ボトルである容器を傾斜させた状態で取得する第1の透過像と、容器を回転させ、その後その回転を停止させた状態で取得する第2の透過像と、に基づいて異物を検出する検査装置が記載されている。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2005―98832号公報
【文献】特開2013-96921号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1には、ラベルがはりつけられていない場合、容器の向きは検査精度に悪影響がないとされている。しかしながら、容器の形状によっては、円柱レンズ(シリンドリカルレンズ)効果により、容器中心付近の像が横方向に拡大される一方で、容器端付近の像が横方向に縮小される、あるいは、容器端付近において虚像が発生する。その結果、容器の端付近に存在する異物を検出できないことがあった。
【0007】
このように、容器内に存在する異物を的確に検出することが出来ないおそれがある、という課題が生じていた。このような問題は、特許文献2に記載のような技術を用いたとしても解決することは出来なかった。
【0008】
そこで、本発明の目的は、容器内に存在する異物を的確に検出することを可能とする検査装置、検査方法、記録媒体、検査システム、情報処理装置を提供することにある。
【課題を解決するための手段】
【0009】
かかる目的を達成するため本開示の一形態である検査装置は、
液体が充填された容器を把持する把持部と、
前記把持部が前記容器を把持した状態で当該容器を、第1の軸を中心として少なくとも傾斜させる傾斜部と、
第1の軸とは異なる第2の軸を中心として、前記容器と撮像装置との相対的な向きを変化させることで、撮像装置による前記容器の撮影箇所を変更する変更部と、
を有する
という構成をとる。
【0010】
また、本開示の他の形態である検査方法は、
情報処理装置が、
第1の軸とは異なる第2の軸を中心として前記容器と撮像装置との相対的な向きを変化させることで、撮像装置による前記容器の撮影箇所を変更した後、第1の軸を中心として前記容器を少なくとも傾斜させ、その後、再度、第2の軸を中心として前記容器と撮像装置との相対的な向きを変化させる
という構成をとる。
【0011】
また、本開示の他の形態である記録媒体は、
情報処理装置に、
第1の軸とは異なる第2の軸を中心として前記容器と撮像装置との相対的な向きを変化させることで、撮像装置による前記容器の撮影箇所を変更した後、第1の軸を中心として前記容器を少なくとも傾斜させ、その後、再度、第2の軸を中心として前記容器と撮像装置との相対的な向きを変化させる
処理を実現するためのプログラムを記録した、コンピュータが読み取り可能な記録媒体である。
【0012】
また、本開示の他の形態である検査システムは、
液体が充填された容器を把持する把持部と、前記把持部が前記容器を把持した状態で当該容器を、第1の軸を中心として少なくとも傾斜させる傾斜部と、第1の軸とは異なる第2の軸を中心として前記容器と撮像装置との相対的な向きを変化させることで、撮像装置による前記容器の撮影箇所を変更する変更部と、を有する検査装置と、
前記検査装置の外部に設置され、前記容器に充填された液体を撮像する撮像装置と、
前記撮像装置が撮像した画像データに基づいて物体を検出し、検出した物体が異物であるか否か判定する判定装置と、
を有する
という構成をとる。
【0013】
また、本開示の他の形態である情報処理装置は、
取得した画像データに基づいて第1の背景モデルを生成し、かつ、容器の撮影箇所を変更して取得した画像データに基づいて第2の背景モデルを生成する背景モデル生成部と、
前記第1の背景モデルに基づいて前記容器内部の沈殿物を検出し、かつ、前記第2の背景モデルに基づいて前記容器内部の沈殿物を検出する検出部と、
を有する
という構成をとる。
【0014】
また、本開示の他の形態である検査方法は、
情報処理装置が、
取得した画像データに基づいて第1の背景モデルを生成し、かつ、容器と撮像装置との相対的な向きを変化させることにより前記容器の撮影箇所を変更して取得した画像データに基づいて第2の背景モデルを生成し、
前記第1の背景モデルに基づいて前記容器内部の沈殿物を検出し、かつ、前記第2の背景モデルに基づいて前記容器内部の沈殿物を検出する
という構成をとる。
【0015】
また、本開示の他の形態である記録媒体は、
情報処理装置に、
取得した画像データに基づいて第1の背景モデルを生成し、かつ、容器と撮像装置との相対的な向きを変化させることにより前記容器の撮影箇所を変更して取得した画像データに基づいて第2の背景モデルを生成し、
前記第1の背景モデルに基づいて前記容器内部の沈殿物を検出し、かつ、前記第2の背景モデルに基づいて前記容器内部の沈殿物を検出する
処理を実現させるためのプログラムを記録した、コンピュータが読み取り可能な記録媒体である。
【発明の効果】
【0016】
上述したような各構成によると、容器内に存在する異物を的確に検出することを可能とすることが可能となる。
【図面の簡単な説明】
【0017】
図1】本開示の第1の実施形態における検査システムの全体の構成例を示す図である。
図2】容器とマーカの位置関係の一例を説明するための図である。
図3】回転軸Aを中心とする容器の動きの一例を説明するための図である。
図4】注目領域を説明するための図である。
図5】回転軸Aの位置を説明するための図である。
図6】回転軸Bを中心とする容器の動きの一例を説明するための図である。
図7】回転角度タイムラインの一例を示す図である。
図8】回転角度タイムラインの他の一例を示す図である。
図9】カメラ位置を説明するための図である。
図10】検出・判定装置の構成例を示すブロック図である。
図11】検査システムの全体的な動作例を示すフローチャートである。
図12】背景モデルを用いた検出を行う際の動作例を示すフローチャートである。
図13】背景モデルを用いない検出を行う際の動作例を示すフローチャートである。
図14】背景モデルを用いない検出を行う際の判定処理の動作例を示すフローチャートである。
図15】本開示の第2の実施形態における検査システムの構成例を示す図である。
図16】検査システムの他の構成例を示す図である。
図17】本開示の第2の実施形態における検査装置の構成例を示す図である。
図18】情報処理装置のハードウェア構成図の一例を示す図である。
図19】情報処理装置の構成例を示すブロック図である。
図20】情報処理装置の構成例を示すブロック図である。
【発明を実施するための形態】
【0018】
[第1の実施形態]
本開示の第1の実施形態について、図1から図14までを参照して説明する。図1は、検査システム100の全体の構成例を示す図である。図2は、容器500とマーカ230の位置関係の一例を説明するための図である。図3は、回転軸Aを中心とする容器500の動きの一例を説明するための図である。図4は、注目領域を説明するための図である。図5は、回転軸Aの位置を説明するための図である。図6は、回転軸Bを中心とする容器500の動きの一例を説明するための図である。図7図8は、回転角度タイムラインの一例を示す図である。図9は、カメラ300の位置を説明するための図である。図10は、検出・判定装置400の構成例を示すブロック図である。図11は、検査システム100の全体的な動作例を示すフローチャートである。図12は、背景モデルを用いた検出を行う際における検出・判定装置400の動作例を示すフローチャートである。図13図14は、背景モデルを用いない検出を行う際における検出・判定装置400の動作例を示すフローチャートである。
【0019】
本開示の第1の実施形態においては、水や薬剤などの液体を充填した容器500内部に混入している物体を検出して、検出した物体のうち髪の毛やガラス片などの異物を判定する検査システム100について説明する。後述するように、検査システム100は、2軸の回転手段を有している。検査システム100は、2軸の回転手段をそれぞれ制御することで、容器500とカメラ300との相対的な向きを変化させることにより容器500の撮影箇所を変更させたり、把持した容器500を傾斜・揺動させたりする。
【0020】
なお、本実施形態においては、図1で示す状態のうち容器500において液体を充填する側を上側、反対側を下側と定義して説明する。図1の場合、容器500の内部に充填された液体は、容器500の下側に溜まっている。
【0021】
また、本実施形態においては、検査装置200が後述するマーカ230を有する場合について説明する。しかしながら、本発明は、検査装置200がマーカ230を有する場合に限らず適用可能である。換言すると、検査装置200はマーカ230を有さなくてもよい。
【0022】
図1は、検査システム100の全体の構成例を示す側面図である。図1を参照すると、検査システム100は、例えば、回転手段としてのモータ240とモータ250とを有する検査装置200と、カメラ300と、検出・判定装置400と、を含んでいる。図1で示すように、カメラ300と検出・判定装置400とは、有線または無線により、互いに通信可能なよう接続されている。また、検出・判定装置400またはカメラ300は、検査装置200が有する回転制御部260と、有線または無線により互いに通信可能なよう接続されている。
【0023】
検査装置200は、液体を充填した容器500を上下方向から挟み込んで把持した状態で、容器500を傾斜・揺動させたり回転させたりする装置である。本実施形態における検査装置200は、カメラ視線方向と並列な軸である回転軸Aを中心に容器500を揺動させるとともに、容器500の中心を鉛直方向に通る軸である回転軸Bを中心に容器500を回転させる。つまり、検査装置200は、2軸の回転手段を有している。後述するように、検査装置200は、回転軸Bを中心に容器500を回転させることで、容器500とカメラ300との相対的な向きを変化させて容器500の撮影箇所を変更する。これにより、回転前においてカメラ300からみて容器500の端にあった部分が回転後においてカメラ300からみて容器500の中心付近に来るなど、容器500の撮影箇所が変わることになる。また、検査装置200は、回転軸Aを中心に容器500を傾斜・揺動させることで容器500内に存在する異物などを舞い上がらせる。
【0024】
図1は、検査装置200の構成例を示している。図1を参照すると、検査装置200は、例えば、上側把持部213と下側把持部214とからなる把持部を含む本体部210と、面照明220と、マーカ230と、モータ240と、モータ250と、回転制御部260と、を有している。
【0025】
本体部210は、回転手段として機能するモータ240の回転に応じて、傾斜・揺動などする。例えば、本体部210は、正面からみて矩形形状を有している。なお、本実施形態においては、本体部210を形成する素材について特に限定しない。本体部210は、例えば、樹脂製や金属製など、任意の素材により形成されていて構わない。また、本体部210の形状も上記例示した以外であっても構わない。
【0026】
図1は、本体部210を側面からみた際の一例を示している。図1を参照すると、本体部210は、例えば、モータ240と連結される平板状部分211と、平板状部分211の上方側端部及び下方側端部からモータ240が位置する側とは反対側に向かって延出する腕部212と、腕部212のうちモータ240が位置する側とは反対側の端部に形成され、容器500を挟み込んで把持する把持部と、から形成されている。
【0027】
把持部は、上方側に形成された腕部212から下方に向かって突出し容器500の上側(液体を充填する側)に当接する上側把持部213と、下方側に形成された腕部212から上方に向かって突出し容器500の下側に当接する下側把持部214とを含んでいる。図1で示すように、上側把持部213が容器500の上側から容器500に当接し、下側把持部214が容器500の下側から容器500に当接することで、把持部は容器500を上下方向から挟み込んで容器500を把持する。
【0028】
また、把持部は、モータ250の回転に応じて、回転軸Bを中心に容器500を回転させることが可能なように、容器500を把持する。例えば、上側把持部213は、モータ250の回転に応じて回転軸Bを中心に回転する回転部を含んでおり、下側把持部214は把持した容器500の回転に応じて回転軸Bを中心に回転する回転部を含んでいる。例えば、上記例示したような構成により、把持部は、モータ250の回転に応じて回転軸Bを中心に容器500を回転させることが可能なように容器500を把持する。なお、回転軸Bを中心にした容器500の回転は、上記例示した構成以外により実現されても構わない。
【0029】
なお、上側把持部213と下側把持部214とは、長さを調整可能なよう構成することが出来る。上側把持部213と下側把持部214の長さを調整可能なよう構成することで、様々な大きさの容器500を把持可能とするとともに、把持部が容器500を把持した際の位置調整(高さ調整)を容易に行うことが可能となる。なお、長さの調整機能は、例えば、上側把持部213や下側把持部214を第1部分と第2部分とから構成し、第1部分と第2部分とをスライド移動可能にするとともに、任意の位置で固定可能とするなど、既知の手段を用いて実現して構わない。
【0030】
面照明220(照明)は、容器500内に充填された液体に対して光を照射する。例えば、面照明220は、正面からみて矩形形状など、本体部210の形状に応じた形状を有している。面照明220は、例示した以外の形状であっても構わない。
【0031】
例えば、面照明220は、容器500や把持部からみてカメラ300が設置される側とは反対側に設置されている。例えば、図1を参照すると、面照明220は、本体部210を構成する平板状部分211のうちモータ240が位置する側とは反対側の面上に設置されている。このような構成によると、面照明220は、容器500越しにカメラ300に対して光を照射する。つまり、面照明220は、容器500越しにカメラ300に対して光を照射するように、本体部210に設置されている、ということが出来る。
【0032】
なお、面照明220は、本体部210の平板状部分211に設置されているため、上側把持部213や下側把持部214を含む本体部210と一体的に構成されている、ということも出来る。そのため、例えば、上側把持部213と下側把持部214に把持された容器500を傾斜させると、容器500の傾斜と同期して面照明220も傾斜する。
【0033】
マーカ230は、カメラ300が撮像した画像データに基づいて回転角度を取得可能とするための仕組みである。マーカ230は、例えば、0.5mm角程度の大きさを有する矩形形状や円形形状の光を透過しないフィルムなどであり、面照明220上の所定個所に設置されている。マーカ230は、任意の情報を含む2次元コードなどであっても構わない。
【0034】
マーカ230は、固定設置されたカメラ300が取得する画像データ中に、容器500を傾斜させた際でも少なくとも1つのマーカ230が映るように、面照明220上の所定個所に設置されている。図2は、マーカ230の設置個所の一例を示している。例えば、図2で例示する場合、マーカ230は、容器500を傾斜させていない状態で、容器500より外側であって容器500の左側側面部近傍の位置と、容器500の外側であって容器500の右側側面部近傍の位置と、の2か所に設定されている。また、図2で例示する場合、マーカ230は、容器500を傾斜させる際の軸である回転軸Aの高さと同程度の高さに設けられている。
【0035】
なお、容器500を傾斜させた際でも少なくとも1つのマーカ230が液体を撮像する画像に映るならば、マーカ230を設置する位置は上記例示した以外であっても構わない。また、マーカ230を設置する数も、1つや3つ以上など任意に定めて構わない。
【0036】
また、マーカ230は、上側把持部213や下側把持部214を含む本体部210と同期して動く箇所であるならば、面照明220以外の箇所に設けられていても構わない。例えば、マーカ230は、本体部210のうち容器500を把持した際に容器500の側面に位置する箇所から容器500の方向に向かって突出する突起部などにより実現されても構わない。マーカ230は、上記例示した以外の方法により実現されても構わない。
【0037】
モータ240は、外部から供給される電力に応じて自身が回転することにより、本体部210を傾斜させて、上側把持部213と下側把持部214に把持された容器500を傾斜・揺動させる、回転手段として機能する。換言すると、モータ240は、第1の軸である回転軸Aを中心として容器500を少なくとも傾斜させる傾斜部として機能する。本実施形態の場合、モータ240は、回転制御部260からの指示に応じて、回転軸Aを中心に容器500を傾斜・揺動させる。例えば、モータ240は、本体部210の平板状部分211と連結しており、モータ240が回転することにより本体部210を傾斜・揺動させることが出来る。
【0038】
図3は、上側把持部213と下側把持部214に把持された容器500を傾斜させる際の様子の一例を示している。図3で示すように、モータ240は、容器500を正面視でみて正転方向(例えば、反時計回りの方向)に傾斜させるとともに、容器500を逆転方向(例えば、時計回りの方向)に傾斜させることが出来る。一例として、例えば、モータ240は、回転軸Aを中心として、容器500が傾斜していない(0度である)状態、容器500が正転方向に90度傾斜している状態、容器500が傾斜していない状態、容器500が逆転方向に90度傾斜している状態、容器500が傾斜していない状態、という順番で容器500の状態が遷移するように、容器500を傾斜・揺動させることが出来る。つまり、モータ240は、正逆切り替えながら、回転軸Aを中心に容器500を揺動させることが出来る。
【0039】
ここで、カメラ300により画像データを撮像する際には、図4で示すような注目領域(液中と瓶底)が容器500を傾斜させた際でもカメラ300の画角内に効率よく収まっていることが望ましい。そのため、回転軸Aは、例えば、図5で示すように、容器500を傾斜させていないときの容器500の中心高さAではなく、容器500を傾斜させていないときの液面高さBや液体中心部高さC(または、液面高さBと液体中心部高さCの間など)に合わせられていることが望ましい。例えば、本実施形態で説明する検査装置200の場合、モータ240と平板状部分211とが連結される個所に応じて、本体部210や把持された容器500などが傾斜する際の中心となる回転軸Aが定まることになる。また、上側把持部213や下側把持部214の長さを調整することで、回転軸Aと容器500や容器500の内部に充填された液体との位置関係を調整することが出来る。従って、モータ240と平板状部分211とが連結される個所や、上側把持部213や下側把持部214の長さは、回転軸Aの位置が望ましい位置になるように、容器500の大きさ、液面高さBや液体中心部高さCなどの液体の量、などに応じて予め定められていたり適宜修正されたりすることが望ましい、ということが出来る。
【0040】
なお、モータ240が容器500を傾斜させる角度は、90度までの間に限定されない。モータ240が容器500を傾斜させる角度は、例えば、容器500の内部に充填された液体の液性や検出したい異物の特性などに応じて適宜定めて構わない。また、容器500を正転方向と逆転方向とに傾斜させる場合、正転方向に傾斜させる角度と逆転方向に傾斜させる角度やそれぞれの方向に傾斜させる際の速度は異なっていて構わない。また、容器500を傾斜させた後、容器500を傾斜させた状態で所定時間静止させてもよい。
【0041】
例えば、本願発明者が実験したところ、容器500に低粘度の液体が半分程度入っている場合において、容器500が傾斜していない状態から速度v1で正転方向にθ1度まで傾斜させ、T1秒静止した後速度v2で逆転方向にθ2度まで傾斜させ(つまり、-θ2度まで傾斜させ)、T2秒静止した後速度v3で容器500が傾斜していない状態に戻す場合、各値を以下のような関係とすると比重や大きさの異なる異物が液中へ浮遊しやすいことが分かった。
・θ1≧θ2(例えば、θ1=110度、θ2=80度)
・v2≧v1>v3(例えば、v3はv2の半分程度)
・T1≧T2(例えば、T1=0.5秒、T2=0.3秒)
【0042】
モータ240は、回転制御部260からの指示に応じて、上記例示したように容器500を傾斜させてもよい。また、モータ240の動作は、上記例示した動作の一部であってもよい。
【0043】
モータ250は、外部から供給される電力に応じて自身が回転することにより、上側把持部213と下側把持部214に把持された容器500を、回転軸Bを中心に回転させる。換言すると、モータ250は、第1の軸とは異なる第2の軸である回転軸Bを中心として容器500を回転させることで、カメラ300による容器500の撮影箇所を変更する変更部として機能する。本実施形態の場合、モータ250は、モータ240と同様に、回転制御部260からの指示に応じて容器500を回転させる。例えば、モータ250は、本体部210の上側把持部213が有する回転部と連結しており、モータ250が回転することにより回転部を回転させることで、回転軸Bを中心に容器500を回転させる。
【0044】
図6は、回転軸Bを中心に容器500を回転させる際の様子の一例を示している。図6で示すように、モータ250は、例えば、容器500を平面視で見た際の正転方向(例えば、反時計回りの方向)に回転させる。一例として、例えば、モータ250は、回転軸Bを中心として、容器500が回転していない(0度である)状態、容器500が正転方向に90度回転している状態、容器500が回転していない(0度である)状態、という順番で容器500の状態が遷移するように、容器500を回転させることが出来る。このように、回転軸Bを中心に容器500を90度回転させると、回転前にカメラ300からみて容器500の端付近であった箇所が、回転後にカメラ300からみて容器500の中心付近に来ることになる。例えば、容器500の大きさが直径4cm程度であった場合、容器の端5~6mm程度において、円柱レンズ効果により異物の検出を行うことが出来ない。上記のように回転させることで、回転前または回転後において異物を検出できない領域に異物が存在する場合でも、回転後または回転前において異物の検出を行うことが可能となる。
【0045】
なお、モータ240が容器500を傾斜・揺動させる速度とモータ250が容器500を回転させる速度とは、例えば、異なっている。例えば、モータ250は、容器500内部に存在する異物を舞い上がらせないように、ゆっくりと(例えば、予め定められた速度で)容器500を回転させる。換言すると、モータ250は、異物を検査する際にモータ250による回転の影響が出ないように、容器500を回転させる。モータ250による回転により異物が舞い上がってしまうと、モータ240による傾斜・揺動以外の要因で異物が舞い上がることとなり、異物や気泡の判別精度などが落ちることが想定される。そのため、モータ250は、ゆっくりと容器500を回転させることで、モータ250による回転が出来る限り検査に影響を与えないようにする。なお、具体的な回転速度は適宜調整して構わない。
【0046】
回転制御部260は、モータ240とモータ250の回転を制御する情報処理装置である。例えば、回転制御部260は、後述する開始終了指示部441からの開始指示に応じて、予め定められた順序でモータ240やモータ250を回転させる回転制御を開始する。つまり、回転制御部260は、開始指示に応じて、予め定められており回転制御部260などが有する記憶装置に格納されている、プログラムに沿った回転制御を行う。また、回転制御部260は、定められた順序の回転制御を最後まで行った際や、開始終了指示部441から終了指示を受信した際などに、回転制御を終了する。
【0047】
図7は、回転制御部260による制御の一例を示している。図7を参照すると、回転制御部260は、回転指示に応じて、所定時間待機する。待機している間に、後述する検出・判定装置400は、第1の背景モデルを生成する(または、生成用の画像データをカメラ300が取得する)。また、所定時間待機した後、回転制御部260は、モータ250を用いて容器500を90度回転させる。そして、モータ250の回転後、回転制御部260は所定時間待機する。待機している間に、検出・判定装置400は、第2の背景モデルを生成する(または、生成用の画像データをカメラ300が取得する)。また、所定時間待機した後、回転制御部260は、モータ240を傾斜・揺動させる。そして、モータ240による傾斜・揺動の後、回転制御部260は所定時間待機する。待機している間に、検出・判定装置400は、生成した第2の背景モデルを用いた検出を行う。また、所定時間待機した後、回転制御部260は、モータ250を用いて容器500を-90度回転させる。これにより、容器500は回転前の状態に戻る。容器500が-90度回転した後、判別装置は、第1の背景モデルを用いた検出を行う。
【0048】
例えば、以上のように、回転制御部260は、予め定められた順序に従って、モータ240やモータ250を回転させる。なお、各タイミングにおける待機時間は、任意に設定してよい。待機時間はそれぞれ同一であってもよいし、異なっていてもよい。また、後述する検出・判定装置400は、各タイミングで背景モデルを生成したり生成した背景モデルを用いた検出を行ったりする。後述するように、検出・判定装置400は、背景モデルを用いた検出の他、背景モデルを用いない検出・判定処理も行う。背景モデルを用いない検出・判定処理は、例えば、後述するように、モータ240による傾斜・揺動の開始とともに始められ、第1の背景モデルを用いた検出の終了後まで続けられる。
【0049】
なお、図7は回転制御部260による制御の一例を示しており、回転制御部260による制御は図7で示す場合に限られない。例えば、図7では、モータ240による傾斜・揺動やモータ250による容器500の回転の直後に背景モデルを用いた検出を開始している。しかしながら、モータ240による傾斜・揺動やモータ250による容器500の回転が終わった後、所定時間経過してから検出・判定装置400による検出を行うように構成しても構わない。また、図7では、モータ250が容器500を90度回転させる際と-90度回転させる際との速度が等しくなっている。しかしながら、モータ250が容器500を90度回転させる際と-90度回転させる際との速度とは異なっていてもよい。例えば、モータ250が容器500を90度回転させる際の速度は、モータ250が容器を-90度回転させる際の速度よりも遅くてもよい。モータ250が容器500を90度回転させる際の速度を遅くすることで、第1の背景モデル生成と第2の背景モデル生成の間に、モータ250による回転により容器500内部の異物などが舞い上がることを抑制することが出来る。
【0050】
また、回転制御部260は、上述した比重や大きさの異なる異物が液中へ浮遊しやすい状態となるように、モータ240を傾斜・揺動させてもよい。例えば、図8は、比重や大きさの異なる異物が液中へ浮遊しやすい状態となるように、モータ240を傾斜・揺動させる際の制御の一例を示している。図8を参照すると、回転制御部260は、回転軸Aを中心に容器500が傾斜していない状態から速度v1で正転方向にθ1度まで容器500を傾斜させ、T1秒静止した後速度v2で逆転方向にθ2度まで容器500を傾斜させ、T2秒静止した後速度v3で容器500が傾斜していない状態に戻るようモータ240を制御する。また、この際、θ1≧θ2(例えば、θ1=110度、θ2=80度)であり、v2≧v1>v3(例えば、v3はv2の半分程度)であり、T1≧T2(例えば、T1=0.5秒、T2=0.3秒)である。一例として、回転制御部260は、図8で示すような制御を行ってもよい。
【0051】
カメラ300は、容器500を撮像することで画像データを取得する撮像装置である。例えば、カメラ300は、上側把持部213や下側把持部214からみて面照明220が位置する側とは反対側の所定位置に予め設置されている。なお、図1で示すように、検査装置200とカメラ300とは、一体的に構成されていない。そのため、本体部210などを傾斜させてもカメラ300は傾斜しない。つまり、本実施形態の場合、カメラ300は、予め設置された位置に固定された状態で、画像データを取得する。
【0052】
例えば、カメラ300は、後述する開始終了指示部441からの開始指示に応じて、150~200fps程度の高フレームレートで画像データを取得する。そして、カメラ300は、取得した画像データを、撮像時刻を示す情報などとともに、検出・判定装置400へ対して送信する。カメラ300は、上記例示した以外のフレームレートで画像データを取得しても構わない。
【0053】
なお、容器500の内部に充填された液体中の異物は、図4で示すような注目領域(つまり、液中または瓶底)に存在する可能性が高い。そのため、カメラ300は、注目領域を効率的に撮像可能なよう設置することが望ましい。例えば、カメラ300の中心を容器500の下端より高い位置とするとともに、被写界深度が保てる範囲内で、出来る限り近くから容器500の底面(瓶底)全域が映るように、カメラ300の設置位置を定めることが望ましい。また、カメラ300は、広角レンズを用いることが望ましい。このようにカメラ300を設置することで、例えば、質量が大きく浮遊しない異物なども逃さず検出することが出来るようになる。
【0054】
また、カメラ300は、容器500の内部に充填された液体全体が映る範囲内で液中と液面が被る領域が極力小さくなるように、設置することが望ましい。例えば、カメラ300は、出来る限り液面の水平方向から撮像するように設置することが望ましい。
【0055】
以上をまとめると、カメラ300の設置位置は、例えば、図9で示すような状態であることが望ましいということが出来る。図9を参照すると、カメラ300の中心の高さが液面以下瓶底よりも高い位置に設置されており、瓶底全域が映っていることが分かる。また、カメラ300の中心高さが液面の高さより下方であって、出来る限り液面の高さと同程度になるようカメラ300が設置されていることが分かる。
【0056】
検出・判定装置400は、カメラ300が撮像・取得した画像データに基づいて、液体を充填した容器500内部に混入している物体を検出して異物を判定する処理などを行う情報処理装置である。例えば、検出・判定装置400は、モータ250による回転前と回転後に背景モデルを生成して、生成した背景モデルを用いた沈殿物の検出を行う。また、検出・判定装置400は、検出した物体を追跡した結果に基づく、背景モデルを用いない異物の判定を行う。なお、本実施形態において、沈殿物とは、液体の中で下部に存在する固体のことをいう。
【0057】
図10は、検出・判定装置400の構成例を示している。図10を参照すると、検出・判定装置400は、主な構成要素として、例えば、画面表示部410と、通信I/F部420と、記憶部430と、演算処理部440と、を有している。なお、検出・判定装置400は、操作者からの入力操作を受け付けるキーボードやマウスなどの操作入力部を有するなど、上記例示した以外の構成を有していてもよい。
【0058】
画面表示部410は、LCD(Liquid Crystal Display、液晶ディスプレイ)などの画面表示装置からなる。画面表示部410は、演算処理部440からの指示に応じて、画像情報431、背景情報432、追跡情報433、判定結果情報434などの記憶部430に格納された各種情報を画面表示することが出来る。
【0059】
通信I/F部420は、データ通信回路からなる。通信I/F部420は、通信回線を介して接続されたカメラ300、回転制御部260、外部装置などとの間でデータ通信を行う。
【0060】
記憶部430は、ハードディスクやメモリなどの記憶装置である。記憶部430は、演算処理部440における各種処理に必要な処理情報やプログラム435を記憶する。プログラム435は、演算処理部440に読み込まれて実行されることにより各種処理部を実現する。プログラム435は、通信I/F部420などのデータ入出力機能を介して外部装置や記録媒体から予め読み込まれ、記憶部430に保存されている。記憶部430で記憶される主な情報としては、例えば、画像情報431、背景情報432、追跡情報433、判定結果情報434などがある。
【0061】
画像情報431は、カメラ300が取得した画像データを含んでいる。画像情報431においては、例えば、画像データと、画像データをカメラ300が取得した日時を示す情報(撮像時刻を示す情報)と、が対応づけられている。
【0062】
背景情報432は、背景モデル生成部443が生成した背景モデルを含んでいる。上述したように、生成される背景モデルには、第1の背景モデルと第2の背景モデルがある。そのため、背景情報432には、第1の背景モデルと、第2の背景モデルと、が含まれている。
【0063】
図7を参照して説明したように、第1の背景モデルは、開始指示の後、モータ250による容器500の回転開始前に取得した画像データに基づいて生成される。また、第2の背景モデルは、モータ250により容器500を90度回転させた後、モータ240による回転を行う前に取得した画像データに基づいて生成される。このような関係にあるため、例えば、第1の背景モデルにおいて容器500の端の部分が第2の背景モデルにおいて容器500の中心付近に来ているなど、第1の背景モデルと第2の背景モデルとでは、容器500の様子が異なることになる。
【0064】
追跡情報433は、追跡部446が追跡を行った結果に応じた情報を含んでいる。例えば、追跡情報433においては、物体ごとに与えられる識別情報と、物体の位置を示す時系列情報と、が対応づけられている。また、物体の位置を示す時系列情報には、例えば、時刻情報と、各時刻における物体の位置を示す座標などの位置情報と、が含まれている。
【0065】
なお、追跡情報433には、例えば、容器500の角度を示す角度情報や検出領域の面積を示す情報など、物体の位置以外の時系列情報が含まれていても構わない。また、物体の位置を示す座標などの位置情報は、各画像データにおけるXY座標を示していても構わないし、各画像データにおけるXY座標を容器500の角度を示す情報に基づいて修正した座標(例えば、容器500が傾いていない場合の位置に修正した座標)を示していても構わない。
【0066】
判定結果情報434は、判定部448が判定した結果を示す情報を含んでいる。例えば、判定結果情報434においては、物体ごとに与えられる識別情報と、判定部448が追跡情報433に基づいて判定した結果を示す情報と、が対応づけられている。つまり、判定結果情報434には、検出した物体が異物、気泡、容器の傷や汚れ、沈殿物などのうちのいずれに該当するかを示す情報が含まれている。
【0067】
演算処理部440は、CPUなどの演算装置とその周辺回路を有する。演算処理部440は、記憶部430からプログラム435を読み込んで実行することにより、上記ハードウェアとプログラム435とを協働させて各種処理部を実現する。演算処理部440で実現される主な処理部としては、例えば、開始終了指示部441、画像取得部442、背景モデル生成部443、沈殿物検出部444、検出部445、追跡部446、角度情報取得部447、判定部448、出力部449などがある。
【0068】
開始終了指示部441は、回転制御部260やカメラ300などに対して開始指示を送信したり終了指示を送信したりする。例えば、開始終了指示部441は、外部装置からの指示や操作入力部を介した入力の受付などに応じて、開始指示を回転制御部260やカメラ300に対して送信する。また、例えば、開始終了指示部441は、外部装置や操作入力部からの指示を受信した際、判定部448が異物など予め定められたものを判定した際、沈殿物検出部444が沈殿物を検出した際などに、終了指示を回転制御部260やカメラ300に対して送信する。
【0069】
なお、開始終了指示部441が開始指示を送信するタイミングや終了指示を送信するタイミングは、上記例示した以外であってもよい。例えば、開始終了指示部441は、カメラ300などにより容器500を検出した際などに開始指示を送信してもよい。
【0070】
画像取得部442は、通信I/F部420を介して、カメラ300から当該カメラ300が取得した画像データなどを取得する。そして、画像取得部442は、取得した画像データを、例えば画像データの取得日時(撮像時刻を示す情報)と対応付けて、画像情報431として記憶部430に格納する。
【0071】
背景モデル生成部443は、画像情報431に含まれる画像データに基づいて、背景モデルを生成する。例えば、背景モデル生成部443は、画像データに基づいて、第1の背景モデルを生成したり第2の背景モデルを生成したりする。
【0072】
具体的には、例えば、背景モデル生成部443は、図7で示すように、開始指示の後、モータ250による容器500の回転開始前に取得した画像データに基づいて、第1の背景モデルを生成する。背景モデル生成部443は、上記画像データの画素値を用いる、画素値に基づく所定の演算を行うなど、既知の方法を用いて第1の背景モデルを生成してよい。また、背景モデル生成部443は、モータ250により容器500を90度回転させた後であってモータ240による回転を行う前に取得した画像データに基づいて、第2の背景モデルを生成する。第1の背景モデルの場合と同様に、背景モデル生成部443は、上記画像データの画素値を用いる、画素値に基づく所定の演算を行うなど、既知の方法を用いて第2の背景モデルを生成してよい。
【0073】
なお、例えば、検出・判定装置400は、回転制御部260がどのような順序で回転制御を行うかを示す情報を有している。そのため、背景モデル生成部443は、上記情報と、画像データを取得した日時を示す情報と、開始指示を送信した時刻などと、を参照することで、画像データがどのタイミングで取得されたものなのか判別することが出来る。背景モデル生成部443は、上記例示した以外の方法を用いて、画像データの取得タイミングを判別してもよい。
【0074】
沈殿物検出部444は、画像情報431と背景情報432とに基づいて、沈殿物を検出する。例えば、沈殿物検出部444は、背景情報432に含まれる背景モデルを用いた差分抽出を行うことで、容器500のうちの所定位置以下に存在する沈殿物を検出する。
【0075】
上述したように、沈殿物検出部444による検出は、所定のタイミングで取得した画像データに基づいて行われる。具体的には、図7で示したように、沈殿物検出部444は、モータ240による傾斜・揺動の後であってモータ250による回転を行う前に取得した画像データと、第2の背景モデルと、の差分を抽出することで、沈殿物を検出する。また、沈殿物検出部444は、モータ250により容器500を-90度回転させた後であって所定時間経過するまでに取得した画像データと、第1の背景モデルと、の差分を抽出することで、沈殿物を検出する。
【0076】
なお、沈殿物検出部444は、背景モデル生成部443の場合と同様に、上述した情報と、画像データを取得した日時を示す情報と、開始指示を送信した時刻などと、を参照することで、画像データがどのタイミングで取得されたものなのか判別することが出来る。また、沈殿物検出部444は、検出した沈殿物にIDなどの識別情報を付与することが出来る。また、沈殿物検出部444は、検出した結果を判定結果情報434として記憶部430に格納してもよい。
【0077】
検出部445は、画像データに基づいて、容器500や容器500内に充填された液体に対応する領域内に存在する物体を検出する。例えば、検出部445は、画像データに対する2値化処理を行って、2値化処理の結果に基づいて物体を検出する。なお、検出部445は、そのほか既知の技術を用いて物体を検出しても構わない。
【0078】
追跡部446は、検出部445が検出した物体の追跡を行う。上述したように、カメラ300は、200fpsなどの高フレームレートで画像データを取得している。そのため、撮像時刻が連続する(撮像時刻が所定値より近い)2つの画像データ間において、同一の物体の位置は極めて近いものと想定される。そこで、追跡部446は、検出部445が検出した物体の位置と、撮像時刻が一つ前(または、所定値内)の画像データにおいて検出部445が検出した物体の位置と、を比較する。そして、追跡部446は、物体間の距離が予め定められた閾値以下である物体が存在する場合、距離が閾値以下である、検出部445が検出した物体と撮像時刻が一つ前の画像データにおいて検出部445が検出した物体とが同一の物体であると判定する。この場合、追跡部446は、検出部445が検出した物体に、同一の物体と判断した物体に対して付与されているIDなどの識別情報を付与する。一方、撮像時刻が一つ前(または、所定値内)の画像データにおいて、検出部445が検出した物体との間の距離が予め定められた閾値以下となる物体が存在しない場合、追跡部446は新規な物体を検出したと判定する。この場合、追跡部446は、検出した物体に対して新たなIDなどの識別情報を付与する。
【0079】
例えば、以上のように、追跡部446は、異なる画像データにおける物体間の距離に基づく追跡を行うことで、検出部445が検出した物体に対して識別情報を与える。また、追跡部446は、検出部445が検出した物体の位置を示す座標を取得する。そして、追跡部446は、識別情報と画像データの撮像時刻を示す時刻情報と座標とを対応付けて、追跡情報433として記憶部430に格納する。なお、追跡部446は、画像データにおけるXY座標を追跡情報433として記憶部430に格納しても構わないし、各画像データにおけるXY座標を角度情報取得部447が取得した容器500の角度を示す情報に基づいて修正した座標(例えば、容器500が傾いていない場合の位置に修正した座標)を追跡情報433として記憶部430に格納しても構わない。
【0080】
角度情報取得部447は、画像データ中のマーカ230の位置に基づいて容器500が傾斜している角度を示す角度情報を取得する。例えば、容器500の傾斜角度と画像データ中のマーカ230の位置とのキャリブレーションが予め行われている。そのため、角度情報取得部447は、画像データ中のマーカ230の位置に基づいて、容器500が傾斜している角度を示す角度情報を取得することが出来る。
【0081】
角度情報取得部447は、角度情報を取得すると、当該取得した角度情報を画像データの撮像時刻を示す時刻情報などとともに記憶部430に格納することが出来る。上述したように、角度情報取得部447は、追跡情報433に含まれる情報の一つとして角度情報を記憶部430に格納しても構わない。
【0082】
判定部448は、追跡情報433に基づいて、検出部445が検出した物体が気泡、異物、容器500の傷や汚れや付着物、のいずれに該当するか判定する。本実施形態の場合、判定部448は、容器500が揺動中の時系列情報に基づく判定と、揺動が終わった後(つまり、容器500が図1で示す状態で停止した後)の時系列情報に基づく判定と、を行うことが出来る。なお、判定部448は、追跡情報433などに含まれる角度情報に基づいて、容器500が揺動中であるか否かを判断することが出来る。
【0083】
例えば、判定部448は、追跡情報433のうち容器500が揺動中の時系列情報に基づいて、検出部445が検出した物体が容器500の傷や汚れ、容器500に付着した付着物であるか否かを判定する。上述したように、マーカ230は、容器500と同期して傾斜する本体部210に設置された面照明220上に設置されている。そのため、容器500の傷や汚れ、充填された液体の外側に位置する付着物などは、マーカ230の動きに連動して動くことになる。例えば、上記連動とは、マーカ230が移動を開始すれば、容器500の傷や汚れ、充填された液体の外側に位置する付着物などが直ちに移動を開始し、マーカ230が移動を停止すれば、容器500の傷や汚れ、充填された液体の外側に位置する付着物などが移動を直ちに停止するように、完全に連動していることを意味する。そこで、判定部448は、容器500が揺動中の時系列情報に基づいて、検出部445が検出した物体のうち、マーカ230の動きと連動して動く物体について、容器500の傷や汚れ、付着物などであると判定する。一方、検出部445が検出した物体のうち、動きがマーカ230の動きと連動していない物体について、判定部448は、容器500の傷や汚れ、付着物などでないと判定する。つまり、判定部448は、マーカ230の動きと連動していない物体について、気泡または異物の可能性があると判定する。
【0084】
また、判定部448は、追跡情報433のうち揺動が終わった後の時系列情報に基づいて、検出部445が検出した物体が気泡または異物のいずれであるかを判定する。なお、判定部448は、検出部445が検出したすべての物体のうち、判定部448が容器の傷、汚れ、付着物である、と判定した物体を除いた物体に対して、上記判定を行うことが出来る。例えば、判定部448は、揺動が停止した後の時系列情報に基づいて、物体が上方へと移動していると判断される場合、当該物体は気泡であると判定する。一方、揺動が停止した後の時系列情報に基づいて、物体が下方へと移動していると判断される場合、判定部448は、当該物体は異物であると判定する。例えば、以上のように、判定部448は、揺動が停止した後の時系列情報が示す物体の移動方向に基づいて、物体が気泡または異物のいずれであるかを判定することが出来る。なお、判定部448は、予め学習されたモデルなどを用いて上記判定を行うなど、上記例示した以外の方法により気泡と異物とを判定しても構わない。
【0085】
例えば、以上のように、判定部448は、物体のうち容器500の傷などを判定した後に、残りの物体が気泡と異物のいずれであるかを判定する。そして、判定部448は、検出部445が検出した各物体の判定結果について、判定結果情報434として記憶部430に格納する。なお、本実施形態においては、判定部448が判定を行うタイミングについては特に限定しない。例えば、判定部448は、容器500の揺動中などにリアルタイムで物体が傷などであるか否か判定するよう構成しても構わないし、揺動中と終わった後の時系列データが揃った後に、上述した一連の処理を行っても構わない。
【0086】
なお、判定部448は、マーカ230の連動判定と、気泡または異物の判定と、を並列に実施するよう構成しても構わない。つまり、判定部448は、揺動が終わる前に、物体が気泡または異物のいずれであるかの判定を開始しても構わない。また、判定部448は、物体の判定を行う際、追跡情報433以外の情報を用いても構わない。例えば、判定部448は、物体の画像特徴、サイズや平均輝度値などを示す情報を併用して、物体の判定を行うことが出来る。物体のサイズや平均輝度値など動き以外の情報も併せて判断することによって、気泡や異物の特徴を総合的に判断できるため、より高い判定精度を得ることが可能になる。
【0087】
また、上述したように、判定部448による判定を行っている間に、モータ250を用いた回転が行われる。そのため、円柱レンズ効果がある場合でも、漏れなく的確に異物などの検出を行うことが出来る。また、モータ250を用いた回転は、異物を検査する際にモータ250による回転の影響が出ないよう、予め定められた速度で行われる。そのため、判定部448は、モータ250による回転の影響を考慮することなく異物の判定を行うことが出来る。
【0088】
出力部449は、画像情報431、背景情報432、追跡情報433、判定結果情報434などのうちの少なくとも一部を出力する。例えば、出力部449は、画像情報431、背景情報432、追跡情報433、判定結果情報434などのうちの少なくとも一部を、画面表示部410上に画面表示したり、通信I/F部420を介して外部装置に対して送信したりすることが出来る。
【0089】
以上が、検出・判定装置400の構成例である。
【0090】
なお、検出・判定装置400は上述した以外の構成を有しても構わない。例えば、検出・判定装置400は、揺動開始の指示の前に、容器500の壁面に固着した異物などを剥離するための回転動作を行うよう検査装置200に対して指示することが出来る。つまり、検出・判定装置400は、回転動作を指示した後に揺動開始の指示を行うよう構成しても構わない。なお、回転制御部260による回転制御により上記回転動作などが行われてもよい。
【0091】
容器500は、ガラス瓶やペットボトルなどの透光性を有する容器である。容器500の内部には、水や薬剤などの液体が充填されている。容器500には傷や汚れなどが付着している可能性がある。また、容器500の内部には、異物が混入している可能性がある。異物としては、例えば、ゴム片、髪の毛、繊維片、煤、ガラスやプラスチック片、などが想定される。
【0092】
以上が、検査システム100が有する検査装置200、カメラ300、検出・判定装置400、容器500の構成例である。続いて、図11から図14までを参照して、検査システム100の動作例について説明する。
【0093】
まず、図11を参照して、検査システム100全体の大まかな動作例について説明する。図11は、検査システム100の動作例を示している。図11を参照すると、開始終了指示部441は、外部装置からの指示や操作入力部を介した入力の受付などに応じて、開始指示を回転制御部260やカメラ300に対して送信する(ステップS101)。これに応じて、カメラ300による画像データの取得や回転制御部260による回転制御が開始される。
【0094】
開始指示の後、各タイミングで検出・判定処理が行われる(ステップS102)。検出・判定処理には、例えば、背景モデル生成部443と沈殿物検出部444とによる背景モデルを用いた検出や、検出部445と追跡部446と判定部448とによる検出・判定処理などが含まれる。なお、ステップS102に含まれる各処理の詳細は後述する。
【0095】
ステップS102の処理中に、判定部448が異物など予め定められたものを判定した際や沈殿物検出部444が沈殿物を検出した際など所定の条件を満たす場合(ステップS103、Yes)、開始終了指示部441は終了指示を回転制御部260やカメラ300に対して送信する(ステップS104)。これにより、回転制御部260による予め定められた順序の回転制御が途中であっても、検査システム100による検査は終了する。
【0096】
また、判定部448が異物など予め定められたものを判定した際や沈殿物検出部444が沈殿物を検出した際など所定の条件を満たさない場合でも(ステップS103、No)、回転制御部260による回転制御が最後まで終了した場合(ステップS105、Yes)、検査システム100による検査は終了する。回転制御部260による回転制御が最後まで終了していない場合(ステップS105、No)、回転制御部260による回転制御やステップS102の処理が続けられる。
【0097】
以上が、検査システム100全体の大まかな動作例である。続いて、図12から図14までを参照して、ステップS102の処理の詳細について説明する。
【0098】
まず、図12を参照して、背景モデル生成部443と沈殿物検出部444とによる背景モデルを用いた検出についてより詳細に説明する。図12を参照すると、背景モデル生成部443は、開始指示の送信の後、モータ250による容器500の回転開始前までに取得した画像データに基づいて、第1の背景モデルを生成する(ステップS201)。
【0099】
また、背景モデル生成部443は、モータ250による容器500の回転の後、モータ240による容器500の傾斜・揺動開始前までに取得した画像データに基づいて、第2の背景モデルを生成する(ステップS202)。
【0100】
沈殿物検出部444は、モータ240による容器500の傾斜・揺動の後、モータ250による容器500の再度の回転開始前までに取得した画像データに基づいて、第2の背景モデルを用いた沈殿物の検出を行う(ステップS203)。例えば、沈殿物検出部444は、画像データと第2の背景モデルとの間の差分抽出を行うことで、容器500の下部に存在する沈殿物を検出する。
【0101】
また、沈殿物検出部444は、モータ250による容器500の再度の回転の後、所定時間経過するまでの間に取得した画像データに基づいて、第1の背景モデルを用いた沈殿物の検出を行う(ステップS204)。
【0102】
以上が、背景モデルを用いた検出を行う際の動作例である。続いて、図13図14を参照して、検出部445と追跡部446と判定部448とによる検出・判定処理の詳細について説明する。
【0103】
まず、図13を参照して、物体を検出、追跡する際の動作例について説明する。図13を参照すると、画像取得部442は、通信I/F部420を介して、カメラ300から当該カメラ300が取得した画像データを取得する(ステップS301)。
【0104】
検出部445は、画像データに基づいて、容器500や容器500内に充填された液体に対応する領域内に存在する物体を検出する(ステップS302)。検出部445は、既知の技術を用いて物体を検出して構わない。
【0105】
追跡部446は、検出部445が検出した物体の追跡を行う(ステップS303)。例えば、追跡部446は、撮像時刻が近い(または連続する)画像データにおける物体間の距離に基づいて、物体を追跡する。
【0106】
画像データ内において検出部445が検出したすべての物体を追跡できていない場合(ステップS304、No)、追跡部446は、追跡していない物体の追跡を行う。一方、画像データ内において検出部445が検出したすべての物体を追跡できた場合(ステップS304、Yes)、追跡部446は、追跡を完了する。
【0107】
また、角度情報取得部447は、画像データ中のマーカ230の位置に基づいて、容器500が傾斜している角度を示す角度情報を取得する(ステップS305)。
【0108】
カメラ300が撮像する一連の画像データをすべて取得した場合(ステップS306、Yes)、処理を終了する。一方、未取得の画像データがある場合(ステップS306、No)、画像取得部442はカメラ300から画像データを取得する(ステップS301)。
【0109】
以上が、物体を検出、追跡する際の検出・判定装置400の動作例である。なお、検出・判定装置400は、カメラ300が撮像する一連の画像データをすべて取得した後に、ステップS302以降の処理を行うなど、上記例示した以外の順番で処理を行っても構わない。続いて、図14を参照して、判定部448の処理例について説明する。
【0110】
図14を参照すると、判定部448は、追跡情報433のうち容器500が揺動中の時系列情報を取得する(ステップS401)。
【0111】
検出部445が検出した物体の中にマーカ230の動きと連動して動く物体がある場合(ステップS402、Yes)、判定部448は、マーカ230の動きと連動して動く物体が容器500の傷や汚れ、付着物などであると判定する(ステップS403)。そして、判定部448は、ステップS407の処理で判定する対象から容器500の傷や汚れ、付着物などであると判定した物体を除外する(ステップS404)。一方、マーカ230の動きと連動して動かない物体がある場合(ステップS402、No)、判定部448は、マーカ230の動きと連動していない物体は、容器500の傷や汚れ、付着物などでないと判定する(ステップS405)。
【0112】
また、判定部448は、追跡情報433のうち容器500が揺動を停止した後の時系列情報を取得する(ステップS406)。そして、判定部448は、追跡情報433のうち揺動が終わった後の時系列情報に基づいて、検出部445が検出した物体が気泡または異物のいずれであるかを判定する(ステップS407)。例えば、判定部448は、揺動が停止した後の時系列情報が示す物体の移動方向に基づいて、物体が気泡または異物のいずれであるかを判定することが出来る。判定部448は、上記例示した以外の方法により判定を行っても構わない。
【0113】
以上が、判定部448の処理例である。なお、本実施形態においては、判定部448が判定を行うタイミングについては特に限定しない。例えば、判定部448は、容器500の揺動中などにリアルタイムで物体が傷などであるか否か判定するよう構成しても構わないし、揺動中と終わった後の時系列データが揃った後に、上述した一連の処理を行っても構わない。
【0114】
このように、検査装置200は、傾斜部として機能するモータ240と、変更部として機能するモータ250とを有している。このような構成によると、検査装置200は、モータ240を用いて容器500を傾斜させることが出来るとともに、モータ250を用いて容器500を回転させることで、カメラ300による容器500の撮影箇所を変更することが出来る。その結果、カメラ300が取得した画像データにおいて、異物の検出が出来ない領域が固定されることを抑制することが出来る。これにより、容器内に存在する異物を的確に検出することが可能となる。
【0115】
なお、本実施形態においては、モータ250を用いて容器500を回転させることで、回転軸Bを中心として容器500とカメラ300との相対的な向きを変化させる場合について説明した。しかしながら、検査システム100は、容器500を回転させる代わりに、回転軸Bを中心としてカメラ300を回転させることで、容器500とカメラ300との相対的な向きを変化させてもよい。なお、カメラ300の回転は、任意の機構を用いて実現してよい。
【0116】
また、本実施形態においては、モータ250が容器500を90度回転させた後、回転前の状態に戻す場合について説明した。しかしながら、モータ250は、本実施形態において説明した以外の回転を行ってもよい。例えば、モータ250は、モータ240の場合と同様に、0度の状態から容器を-90度の状態に回転させるよう構成してもよい。
【0117】
また、本実施形態においては、沈殿物検出部444により沈殿物の検出を行うとした。しかしながら、検出・判定装置400の構成は、本実施形態において例示した場合に限定されない。例えば、沈殿物検出部444による検出結果について、検出部445が検出した物体と同様に、追跡部446による追跡を行うよう構成してもよい。この場合、例えば、判定部448は、追跡部446による追跡の結果物体が移動していないと判定される場合に、沈殿物検出部444が検出した物体が沈殿物であると判定するよう構成してもよい。このように、追跡部446による追跡の結果に基づいて沈殿物の判定を行うよう構成してもよい。
【0118】
また、本実施形態においては、1台の情報処理装置により検出・判定装置400としての機能を実現する場合について説明した。しかしながら、検出・判定装置400としての機能は、ネットワークを介して接続された複数台の情報処理装置により実現されても構わない。例えば、本実施形態においては、検出・判定装置400が検査装置200に対して揺動開始の指示をしたり揺動停止の指示をしたりするよう構成することが出来るとした。しかしながら、検査システム100は、上記指示を行う指示装置を検出・判定装置400と別の装置として有しても構わない。
【0119】
[第2の実施形態]
次に、図15図16を参照して、本発明の第2の実施形態について説明する。図15図16で示すように、本実施形態では、第1の実施形態で説明した検査システム100に含まれる構成のうちの少なくとも一部を、地面などの予め定められた基準面に対して傾斜させる場合について説明する。
【0120】
図15で示す場合、少なくとも本体部210とカメラ300と容器500とが傾斜している。換言すると、検査装置200とカメラ300とが少なくとも傾斜している。
【0121】
ここで、具体的な傾斜角度は、例えば、容器形状や液体特性などに応じて適宜定めることが出来る。具体的には、例えば、20度~30度程度、検査装置200やカメラ300を傾ける。なお、傾斜角が小さすぎると、瓶奥側に落下して動かない可能性が高くなる。つまり、傾斜の効果が見えないことが想定される。一方、傾斜角が大きすぎると、液面領域と液中領域の重複が増えて、液面気泡と沈降物の分離が難しくなる。そのため、上記のように、容器形状や液体特性などに応じて、適切な傾斜角度を設定することが望ましい。
【0122】
このように、検査システム100を傾斜させると、カメラ300の撮影可能領域である瓶の手前半分に沈殿物が集まりやすくなる。その結果、より精度よく沈殿物などを検出することが可能となる。
【0123】
なお、本実施形態においては、検査装置200やカメラ300などを傾斜させるための具体的な構成については特に限定しない。例えば、検査システム100が有する各構成を設置した設置台自体を傾斜させることで検査装置200などを傾斜させるなど、既知の手段を用いて検査装置200などの傾斜を実現して構わない。また、図15で示すように検査装置200やカメラ300などをまとめて傾斜させるのではなく、図16で示すように、容器500のみ(または、容器500とモータ250のみ)を傾斜させてもよい。このように、検査装置200全体が傾斜していなくても、少なくとも容器500が傾斜することで、上述した場合と同様の効果を得ることが出来る。
【0124】
[第3の実施形態]
次に、図17から図20までを参照して、本発明の第3の実施形態について説明する。本発明の第3の実施形態では、検査装置600などの構成の概要について説明する。
【0125】
図17は、検査装置600の構成の一例を示している。図17を参照すると、検査装置600は、把持部610と、傾斜部620と、変更部630と、を有している。
【0126】
把持部610は、液体が充填された容器を把持する。
【0127】
傾斜部620は、把持部610が容器を把持した状態で当該容器を、第1の軸を中心として少なくとも傾斜させる。例えば、傾斜部620は、モータなどであり、把持部610を傾斜させることで、容器を傾斜させる。
【0128】
変更部630は、第1の軸とは異なる第2の軸を中心として、容器と撮像装置との相対的な向きを変化させることで、撮像装置による容器の撮影箇所を変更する。例えば、図17では、モータなどを用いて把持部610が把持する容器を回転させることで、容器と撮像装置との相対的な向きを変化させる。変更部630は、容器の代わりに撮像装置を回転させることで、容器と撮像装置との相対的な向きを変化させてもよい。
【0129】
このように、検査装置600は、傾斜部620と変更部630とを有している。このような構成によると、検査装置600は、傾斜部620を用いて容器を傾斜させることが出来るとともに、変更部630を用いて容器と撮像装置との相対的な向きを変化させることが出来る。その結果、撮像装置が取得した画像データにおいて、異物の検出が出来ない領域が固定されることを抑制することが出来る。これにより、容器内に存在する異物を的確に検出することが可能となる。
【0130】
また、他の形態として、検査装置600の動作を制御する情報処理装置700がある。図18は、検査装置などの情報処理装置700のハードウェア構成例を示している。図18を参照すると、情報処理装置700は、一例として、以下のようなハードウェア構成を有している。
・CPU(Central Processing Unit)701(演算装置)
・ROM(Read Only Memory)702(記憶装置)
・RAM(Random Access Memory)703(記憶装置)
・RAM703にロードされるプログラム群704
・プログラム群704を格納する記憶装置705
・情報処理装置外部の記録媒体710の読み書きを行うドライブ装置706
・情報処理装置外部の通信ネットワーク711と接続する通信インタフェース707
・データの入出力を行う入出力インタフェース708
・各構成要素を接続するバス709
【0131】
また、情報処理装置700は、プログラム群704をCPU701が取得して当該CPU701が実行することで、図19に示す回転制御部721としての機能を実現することが出来る。なお、プログラム群704は、例えば、予め記憶装置705やROM702に格納されており、必要に応じてCPU701がRAM703などにロードして実行する。また、プログラム群704は、通信ネットワーク711を介してCPU701に供給されてもよいし、予め記録媒体710に格納されており、ドライブ装置706が該プログラムを読み出してCPU701に供給してもよい。
【0132】
なお、図18は、情報処理装置700のハードウェア構成例を示している。情報処理装置700のハードウェア構成は上述した場合に限定されない。例えば、情報処理装置700は、ドライブ装置706を有さないなど、上述した構成の一部から構成されてもよい。
【0133】
回転制御部721は、上述した検査装置600が有する傾斜部620や変更部630などの動作を制御する。例えば、回転制御部721は、変更部630による変更を行った後、傾斜部620による傾斜を行い、傾斜部620による傾斜の後、変更部630による再度の変更を行う(例えば、変更部630により容器を変更前の状態に戻す)、という制御を行う。このような構成であっても上述した場合と同様に、容器内に存在する異物を的確に検出することを可能とすることが出来る。
【0134】
なお、上述した情報処理装置700は、当該情報処理装置700に所定のプログラムが組み込まれることで実現できる。具体的に、本発明の他の形態であるプログラムは、情報処理装置700に、第1の軸とは異なる第2の軸を中心として容器と撮像装置との相対的な向きを変化させることで、撮像装置による容器の撮影箇所を変更した後、第1の軸を中心として容器を少なくとも傾斜させ、その後、再度、第2の軸を中心として容器と撮像装置との相対的な向きを変化させる、処理を実現するためのプログラムである。
【0135】
また、上述した情報処理装置700により実行される検査方法は、情報処理装置700が、第1の軸とは異なる第2の軸を中心として容器と撮像装置との相対的な向きを変化させることで、撮像装置による容器の撮影箇所を変更した後、第1の軸を中心として容器を少なくとも傾斜させ、その後、再度、第2の軸を中心として容器と撮像装置との相対的な向きを変化させる、というものである。
【0136】
上述した構成を有する、プログラム(又は記録媒体)、又は、検査方法、の発明であっても、上記場合と同様の作用・効果を有するために、上述した本発明の目的を達成することが出来る。
【0137】
また、他の形態として、判定装置などの情報処理装置800がある。情報処理装置800のハードウェア構成は図18を参照して説明した場合と同様で構わないため、説明を省略する。
【0138】
情報処理装置800は、検査装置600などが把持する容器の画像データを取得する撮像装置が取得した画像データに対する所定の処理を行う。例えば、図20を参照すると、情報処理装置800は、背景モデル生成部821と検出部822とを有している。
【0139】
背景モデル生成部821は、取得した画像データに基づいて第1の背景モデルを生成し、かつ、容器の撮影箇所を変更して取得した画像データに基づいて第2の背景モデルを生成する。また、検出部822は、第1の背景モデルに基づいて容器内部の沈殿物を検出し、かつ、第2の背景モデルに基づいて容器内部の沈殿物を検出する。
【0140】
このような構成を有する情報処理装置800、情報処理装置800が行う検査方法、情報処理装置800に検査方法を実現するためのプログラム、などであっても、上述した場合と同様に、本発明の目的を達成することが出来る。
【0141】
<付記>
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明における検査装置などの概略を説明する。但し、本発明は、以下の構成に限定されない。
【0142】
(付記1)
液体が充填された容器を把持する把持部と、
前記把持部が前記容器を把持した状態で当該容器を、第1の軸を中心として少なくとも傾斜させる傾斜部と、
第1の軸とは異なる第2の軸を中心として、前記容器と撮像装置との相対的な向きを変化させることで、撮像装置による前記容器の撮影箇所を変更する変更部と、
を有する
検査装置。
(付記2)
前記変更部は、第2の軸を中心として前記容器を回転させることで、第2の軸を中心として前記容器と撮像装置との相対的な向きを変化させる
付記1に記載の検査装置。
(付記3)
前記変更部が前記容器を回転させる回転速度と、前記傾斜部が前記容器を傾斜させる回転速度とは、異なっている
付記2に記載の検査装置。
(付記4)
前記変更部が前記容器を回転させる回転速度は、前記傾斜部が前記容器を傾斜させる回転速度よりも遅い
付記2または付記3に記載の検査装置。
(付記5)
前記変更部は、前記容器を回転させることにより前記容器内部の異物を舞い上がらせないように、予め設定された速度で前記容器を回転させる
付記2から付記4までのうちのいずれか1項に記載の検査装置。
(付記6)
第1の軸は、撮像装置の視線方向に応じた軸である
付記1から付記5までのうちのいずれか1項に記載の検査装置。
(付記7)
予め定められた基準面に対して、少なくとも前記容器が傾いている
付記1から付記6までのうちのいずれか1項に記載の検査装置。
(付記8)
前記変更部による変更を行った後、前記傾斜部による傾斜を行い、前記傾斜部による傾斜の後、前記変更部による再度の変更を行う
付記1から付記7までのうちのいずれか1項に記載の検査装置。
(付記9)
情報処理装置が、
第1の軸とは異なる第2の軸を中心として容器と撮像装置との相対的な向きを変化させることで、撮像装置による前記容器の撮影箇所を変更した後、第1の軸を中心として前記容器を少なくとも傾斜させ、その後、再度、第2の軸を中心として前記容器と撮像装置との相対的な向きを変化させる
検査方法。
(付記10)
情報処理装置に、
第1の軸とは異なる第2の軸を中心として容器と撮像装置との相対的な向きを変化させることで、撮像装置による前記容器の撮影箇所を変更した後、第1の軸を中心として前記容器を少なくとも傾斜させ、その後、再度、第2の軸を中心として前記容器と撮像装置との相対的な向きを変化させる
処理を実現するためのプログラムを記録した、コンピュータが読み取り可能な記録媒体。
(付記11)
液体が充填された容器を把持する把持部と、前記把持部が前記容器を把持した状態で当該容器を、第1の軸を中心として少なくとも傾斜させる傾斜部と、第1の軸とは異なる第2の軸を中心として前記容器と撮像装置との相対的な向きを変化させることで、撮像装置による前記容器の撮影箇所を変更する変更部と、を有する検査装置と、
前記検査装置の外部に設置され、前記容器に充填された液体を撮像する撮像装置と、
前記撮像装置が撮像した画像データに基づいて物体を検出し、検出した物体が異物であるか否か判定する判定装置と、
を有する
検査システム。
(付記12)
取得した画像データに基づいて第1の背景モデルを生成し、かつ、容器と撮像装置との相対的な向きを変化させることにより前記容器の撮影箇所を変更して取得した画像データに基づいて第2の背景モデルを生成する背景モデル生成部と、
前記第1の背景モデルに基づいて前記容器内部の沈殿物を検出し、かつ、前記第2の背景モデルに基づいて前記容器内部の沈殿物を検出する検出部と、
を有する
情報処理装置。
(付記13)
前記検出部は、前記第2の背景モデルと、前記容器を傾斜させた後に取得した画像データと、に基づいて沈殿物を検出する
付記12に記載の情報処理装置。
(付記14)
前記検出部は、前記第1の背景モデルと、前記容器を傾斜させた後に前記容器の撮影箇所を変更前に戻したうえで取得した画像データと、に基づいて沈殿物を検出する
付記12または付記13に記載の情報処理装置。
(付記15)
情報処理装置が、
取得した画像データに基づいて第1の背景モデルを生成し、かつ、容器と撮像装置との相対的な向きを変化させることにより前記容器の撮影箇所を変更して取得した画像データに基づいて第2の背景モデルを生成し、
前記第1の背景モデルに基づいて前記容器内部の沈殿物を検出し、かつ、前記第2の背景モデルに基づいて前記容器内部の沈殿物を検出する
検査方法。
(付記16)
情報処理装置に、
取得した画像データに基づいて第1の背景モデルを生成し、かつ、容器と撮像装置との相対的な向きを変化させることにより前記容器の撮影箇所を変更して取得した画像データに基づいて第2の背景モデルを生成し、
前記第1の背景モデルに基づいて前記容器内部の沈殿物を検出し、かつ、前記第2の背景モデルに基づいて前記容器内部の沈殿物を検出する
処理を実現させるためのプログラムを記録した、コンピュータが読み取り可能な記録媒体。
【0143】
なお、上記各実施形態及び付記において記載したプログラムは、記憶装置に記憶されていたり、コンピュータが読み取り可能な記録媒体に記録されていたりする。例えば、記録媒体は、フレキシブルディスク、光ディスク、光磁気ディスク、及び、半導体メモリ等の可搬性を有する媒体である。
【0144】
以上、上記各実施形態を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明の範囲内で当業者が理解しうる様々な変更をすることが出来る。
【符号の説明】
【0145】
100 検査システム
200 検査装置
210 本体部
211 平板状部分
212 腕部
213 上側把持部
214 下側把持部
220 面照明
230 マーカ
240 モータ
250 モータ
260 回転制御部
300 カメラ
400 検出・判定装置
410 画面表示部
420 通信I/F部
430 記憶部
431 画像情報
432 背景情報
433 追跡情報
434 判定結果情報
435 プログラム
440 演算処理部
441 開始終了指示部
442 画像取得部
443 背景モデル生成部
444 沈殿物検出部
445 検出部
446 追跡部
447 角度情報取得部
448 判定部
449 出力部
500 容器
600 検査装置
610 把持部
620 傾斜部
630 変更部
700 情報処理装置
701 CPU
702 ROM
703 RAM
704 プログラム群
705 記憶装置
706 ドライブ装置
707 通信インタフェース
708 入出力インタフェース
709 バス
710 記録媒体
711 通信ネットワーク
721 回転制御部
821 背景モデル生成部
822 検出部

図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20