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

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

▶ キヤノンマーケティングジャパン株式会社の特許一覧 ▶ キヤノン株式会社の特許一覧 ▶ サントリーホールディングス株式会社の特許一覧

特開2023-125640異物検知システム、異物検知システムの制御方法、電子機器、撮影システム、撮影方法、コンピュータプログラム及び記憶媒体
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023125640
(43)【公開日】2023-09-07
(54)【発明の名称】異物検知システム、異物検知システムの制御方法、電子機器、撮影システム、撮影方法、コンピュータプログラム及び記憶媒体
(51)【国際特許分類】
   G01N 21/90 20060101AFI20230831BHJP
   G06V 20/68 20220101ALI20230831BHJP
【FI】
G01N21/90 D
G06V20/68
【審査請求】未請求
【請求項の数】38
【出願形態】OL
(21)【出願番号】P 2022029858
(22)【出願日】2022-02-28
(71)【出願人】
【識別番号】390002761
【氏名又は名称】キヤノンマーケティングジャパン株式会社
(71)【出願人】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(71)【出願人】
【識別番号】309007911
【氏名又は名称】サントリーホールディングス株式会社
(74)【代理人】
【識別番号】100114775
【弁理士】
【氏名又は名称】高岡 亮一
(74)【代理人】
【識別番号】100121511
【弁理士】
【氏名又は名称】小田 直
(74)【代理人】
【識別番号】100208580
【弁理士】
【氏名又は名称】三好 玲奈
(72)【発明者】
【氏名】加藤 美也子
(72)【発明者】
【氏名】向 健児
(72)【発明者】
【氏名】小山 理
(72)【発明者】
【氏名】岸野 浩一
(72)【発明者】
【氏名】正井 賢
(72)【発明者】
【氏名】中原 浩秋
【テーマコード(参考)】
2G051
5L096
【Fターム(参考)】
2G051AA11
2G051AA28
2G051AB01
2G051AB15
2G051BB01
2G051CA04
2G051EA12
2G051EA14
5L096AA06
5L096BA03
5L096CA04
5L096DA02
5L096HA09
5L096HA11
5L096KA04
5L096KA15
(57)【要約】
【課題】高い精度で液体容器内の異物を検出可能な異物検知システム等を実現する。
【解決手段】
異物検知システムにおいて、検知対象画像として、液体が入った容器の特定の部分が重力方向に対して上側となる第1の姿勢と、前記特定の部分が重力方向に対して下側となる第2の姿勢との間で前記容器の姿勢を変化させた際の前記容器を撮影して画像を取得する取得手段と、前記取得手段で取得した前記画像を、学習済みモデルに入力するように制御し、入力した結果として得られた推定結果情報に基づき、異物検知結果を通知するように制御する制御手段と、を有する。
【選択図】 図1

【特許請求の範囲】
【請求項1】
検知対象画像として、液体が入った容器の特定の部分が重力方向に対して上側となる第1の姿勢と、前記特定の部分が重力方向に対して下側となる第2の姿勢との間で前記容器の姿勢を変化させた際の前記容器を撮影して画像を取得する取得手段と、
前記取得手段で取得した前記画像を、学習済みモデルに入力するように制御し、入力した結果として得られた推定結果情報に基づき、異物検知結果を通知するように制御する制御手段と、を有することを特徴とする異物検知システム。
【請求項2】
前記学習済みモデルを用いた推定処理を行う処理手段を更に有し、
前記制御手段は、前記取得手段で取得した前記画像を前記学習済みモデルに入力するように制御することで、前記処理手段に前記推定処理を行わせることを特徴とする請求項1に記載の異物検知システム。
【請求項3】
ネットワークを介して通信可能な第1の装置と第2の装置とを含み、
前記第1の装置は、前記制御手段を有し、
前記第2の装置は、前記処理手段を有し、
前記制御手段は、前記取得手段で取得した前記画像を前記第2の装置に送信するように制御することで、前記学習済みモデルに入力するように制御し、前記第2の装置から受信した前記推定結果情報に基づいて前記通知を行うように制御することを特徴とする請求項2に記載の異物検知システム。
【請求項4】
前記取得手段は、前記容器を照明する照明手段と、前記照明手段で照明された前記容器を撮像する撮像手段と、を有し、
前記取得手段は、前記第1の姿勢と前記第2の姿勢とに前記容器の姿勢を変化させた際に前記容器を前記照明手段で照明し、前記撮像手段で撮像した前記画像を取得することを特徴とする請求項1乃至3のいずれか1項に記載の異物検知システム。
【請求項5】
前記液体が入った複数の前記容器について、前記第1の姿勢と前記第2の姿勢とに変化させた際の前記容器を撮影して取得した複数の前記画像よりなる画像群を教師データとして機械学習を行うことにより、前記容器に異物があるか否かを推定するための前記学習済みモデルを生成する生成手段、を更に有することを特徴とする請求項1に記載の異物検知システム。
【請求項6】
前記生成手段は、前記液体が入った複数の前記容器について、前記第1の姿勢と前記第2の姿勢とに変化させた際の前記容器を撮影して取得した複数の画像よりなる第1の画像群の画像の数を調整し、異物が上から下に落ちる第1のタイプの画像の数よりも、異物が前記液体中で浮遊又は浮上する第2のタイプの画像の数が多い第2の画像群を生成する調整手段を更に有し、
前記生成手段は、前記第2の画像群を前記教師データとして前記機械学習を行うことを特徴とする請求項5に記載の異物検知システム。
【請求項7】
前記調整手段は更に、前記第1のタイプの画像の数よりも、異物の無い画像の数が多くなるように前記画像の数を調整して前記第2の画像群を生成することを特徴とする請求項6に記載の異物検知システム。
【請求項8】
前記調整手段は更に、前記第1のタイプの画像の数よりも、異物の無い画像の数が多く、かつ、異物の無い画像の数よりも前記第2のタイプの画像の数が多くなるように前記画像の数を調整して前記第2の画像群を生成することを特徴とする請求項7に記載の異物検知システム。
【請求項9】
前記生成手段は、前記教師データに含まれる前記画像毎に対応付けられた、異物が有るか否かのいずれかを示すラベルを用いて前記機械学習を行うことを特徴とする請求項5乃至8のいずれか1項に記載の異物検知システム。
【請求項10】
前記特定の部分は封入口であることを特徴とする請求項1乃至9のいずれか1項に記載の異物検知システム。
【請求項11】
前記容器は光透過性を有することを特徴とする請求項1乃至10のいずれか1項に記載の異物検知システム。
【請求項12】
異物検知システムの制御方法であって、
検知対象画像として、液体が入った容器の特定の部分が重力方向に対して上側となる第1の姿勢と、前記特定の部分が重力方向に対して下側となる第2姿勢との間で前記容器の姿勢を変化させた際の前記容器を撮影して画像を取得する取得ステップ、
前記取得ステップで取得した前記画像を、学習済みモデルに入力するように制御し、入力した結果として得られた推定結果情報に基づき、異物検知結果を通知するように制御する制御ステップと、を有することを特徴とする異物検知システムの制御方法。
【請求項13】
請求項1乃至11のいずれか1項に記載された異物検知システムの各手段を有する電子機器。
【請求項14】
コンピュータを、請求項1乃至11のいずれか1項に記載された異物検知システムの各手段として機能させるためのコンピュータプログラム。
【請求項15】
コンピュータを、請求項1乃至11のいずれか1項に記載された異物検知システムの各手段として機能させるためのコンピュータプログラムを格納した、コンピュータが読み取り可能な記憶媒体。
【請求項16】
液体を収容した容器に混入した異物を検出するための撮影を行う撮影システムであって、
前記容器を照明する照明手段と、
前記照明手段により照明された前記容器を、光学系を介して撮影するための撮像手段と、
前記容器と前記容器に収容される前記液体の特性データを取得する取得手段と、
前記光学系の光軸方向について、前記容器の内部の手前から奥までの撮影範囲が前記光学系の被写界深度内となるように、前記取得手段により取得された前記特性データに応じた撮影パラメータを取得する制御手段と、を有することを特徴とする撮影システム。
【請求項17】
前記撮影パラメータを表示する表示手段を有することを特徴とする請求項16に記載の撮影システム。
【請求項18】
前記制御手段は、前記撮影パラメータに基づき前記撮像手段により前記容器を撮影することを特徴とする請求項16又は17に記載の撮影システム。
【請求項19】
前記取得手段は、予め前記特性データを記憶した記憶手段から、前記特性データを取得することを特徴とする請求項16乃至18のいずれか1項に記載の撮影システム。
【請求項20】
前記取得手段は、ユーザーが入力した前記特性データを取得することを特徴とする請求項16乃至19のいずれか1項に記載の撮影システム。
【請求項21】
前記撮影パラメータは、前記容器と前記撮像手段の距離、前記光学系の焦点距離、及び前記光学系の絞り値の少なくとも1つを含むことを特徴とする請求項16乃至20のいずれか1項に記載の撮影システム。
【請求項22】
前記容器は所定の曲率を有することを特徴とする請求項16乃至21のいずれか1項に記載の撮影システム。
【請求項23】
前記照明手段の前記容器の径方向の幅は、前記容器の直径又は奥行寸法よりも大きいことを特徴とする請求項16乃至22のいずれか1項に記載の撮影システム。
【請求項24】
前記照明手段は、拡散板を含み、前記拡散板の前記容器の高さ方向の長さは、前記容器の撮影範囲の長さよりも長いことを特徴とする請求項23に記載の撮影システム。
【請求項25】
前記照明手段の照明光の波長は、赤色から近赤外であることを特徴とする請求項16乃至24のいずれか1項に記載の撮影システム。
【請求項26】
前記照明手段の照明光の波長は、780~2500nmであることを特徴とする請求項25に記載の撮影システム。
【請求項27】
前記特性データは前記容器及び前記容器内の液体の屈折率、前記容器の撮影範囲の長さ、前記容器の奥行寸法、前記容器の曲率に関するデータの少なくとも1つを含むことを特徴とする請求項16乃至26のいずれか1項に記載の撮影システム。
【請求項28】
前記撮影パラメータは、以下の式を満たすことを特徴とする請求項16乃至27のいずれか1項に記載の撮影システム。
【数1】
但し、D1:前記撮像手段から前記容器までの距離、L:前記容器の撮影範囲の長さ、x:センササイズ、f:前記光学系の焦点距離、a:前記異物のサイズ、p:センサピクセルピッチ。
【請求項29】
前記容器が前記光学系の光軸方向について半径rの曲面を有する場合、前記撮影パラメータは、以下の式を満たすことを特徴とする請求項28に記載の撮影システム。
【数2】
但し、n:前記液体の屈折率、δ:前記光学系のボケ許容量(許容錯乱円)、Fno:前記光学系のF値。
【請求項30】
前記容器が前記光学系の光軸方向について2tの奥行寸法を有する角瓶の場合、前記撮影パラメータは、以下の式を満たすことを特徴とする請求項25に記載の撮影システム。
【数3】
但し、n:前記液体の屈折率、δ:前記光学系のボケ許容量(許容錯乱円)、Fno:前記光学系のF値。
【請求項31】
前記異物のサイズaは、更に以下の式を満たすことを特徴とする請求項28乃至30のいずれか1項に記載の撮影システム。
【数4】
【請求項32】
前記制御手段は、前記撮影パラメータに応じて前記距離D1、前記焦点距離f、前記絞りF値Fnoの少なくとも1つを自動で調整することを特徴とする請求項28乃至31のいずれか1項に記載の撮影システム。
【請求項33】
前記制御手段は、前記容器の姿勢を変化させた際の前記容器を前記撮像手段により撮像することを特徴とする請求項16乃至32のいずれか1項に記載の撮影システム。
【請求項34】
前記制御手段は、前記撮像手段により、動画撮影又は所定の撮影間隔での連続した静止画の撮影を行うことを特徴とする請求項16乃至33のいずれか1項に記載の撮影システム。
【請求項35】
前記制御手段は、前記撮像手段により撮影した画像を学習済みモデルに入力するように制御し、入力した結果として得られた推定結果情報に基づき、異物検知結果を通知するように制御することを特徴とする請求項16乃至34のいずれか1項に記載の撮影システム。
【請求項36】
液体を収容した容器に混入した異物を検出するための撮影を行う撮影方法であって、
前記容器を照明する照明ステップと、
前記照明ステップにより照明された前記容器を、光学系を介して撮像するための撮像ステップと、
前記容器と前記容器に収容される前記液体の特性データを取得する取得ステップと、
前記光学系の光軸方向について、前記容器の内部の手前から奥までの撮影範囲が前記光学系の被写界深度内となるように、前記取得ステップにより取得された前記特性データに応じた撮影パラメータを取得する制御ステップと、を有することを特徴とする撮影方法。
【請求項37】
コンピュータを、請求項16乃至35のいずれか1項に記載された撮影システムの各手段として機能させるためのコンピュータプログラム。
【請求項38】
コンピュータを、請求項16乃至35のいずれか1項に記載された撮影システムの各手段として機能させるためのプログラムを格納した、コンピュータが読み取り可能な記憶媒体。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は液体容器内の異物を検知するための異物検知システム、異物検知システムの制御方法、電子機器、撮影システム、撮影方法、コンピュータプログラム及び記憶媒体等に関する。
【背景技術】
【0002】
従来、液体が充填された容器(ボトル)内に異物があるか否かを検査する方法として、液体が充填された容器を撮像した画像に基づいて異物を検出する方法が知られている。
【0003】
特許文献1には、赤外光やCCDセンサ等を用いて、液体が充填された瓶やペットボトル内に金属、布、髪、ごみ等の異物(浮遊異物、沈殿異物)が混入していないか否かを、円錐プリズムによる部分的な拡大機能を用いて検査することが記載されている。
【0004】
又、特許文献2には、飲料液が充填された被検査ボトルを回転台座に載置して回転させる回転機構とボトルを傾斜させる傾斜機構を有する検査装置が記載されている。そして、被検査ボトルを傾斜させたとき、飲料液中に浮遊する重い異物の陰影像を含んだ透過像を取得し、被検査ボトルを回転させ、その後その回転を停止させたとき、飲料液中に浮遊する軽い異物の陰影像を含んだ透過像を取得する。又、重い異物の陰影像及び軽い異物の陰影像を夫々含んだ被検査ボトルの透過像を処理して、飲料液中の異物を検出することが記載されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2004-45364号公報
【特許文献2】特開2013-96921号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1及び特許文献2に開示されている従来の技術では、検出精度が十分ではなく、容器内の異物を検出できない、或いは、非異物を異物と誤検出してしまうことがあった。例えば、容器内に現れる水泡は異物ではないにも関わらず、撮像した画像に写る細かい水泡を異物として誤検出してしまうことがあった。
【0007】
又、特許文献2では、容器を正立中心軸で回転制御し、異物を浮遊させるために、検査対象となる容器形状が円筒形に限定され、円筒形以外のボトル形状に対しては適用が困難であった。
【0008】
そこで本発明は、高い精度で液体容器内の異物を検出可能な異物検知システム等を提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明の1つの側面に係る異物検知システムは、
検知対象画像として、液体が入った容器の特定の部分が重力方向に対して上側となる第1の姿勢と、前記特定の部分が重力方向に対して下側となる第2の姿勢との間で前記容器の姿勢を変化させた際の前記容器を撮影して画像を取得する取得手段と、
前記取得手段で取得した前記画像を、学習済みモデルに入力するように制御し、入力した結果として得られた推定結果情報に基づき、異物検知結果を通知するように制御する制御手段と、を有することを特徴とする。
【発明の効果】
【0010】
本発明によれば、高い精度で液体容器内の異物を検出可能な異物検知システム等を実現できる。
【図面の簡単な説明】
【0011】
図1図1(A)は、異物検知システムにおける学習フェーズの概念図、図1(B)は、異物検知システムにおける推定フェーズの概念図である。
図2】異物検知システムの構成図である。
図3】クライアント端末201、データ収集サーバー211、学習サーバー212、推定サーバー213などの情報処理装置のハードウェア構成の1例を示す図である。
図4】クライアント端末201で行われる学習処理の一部のフローチャートである。
図5】クライアント端末201で行われる学習処理の残りの部分のフローチャートである。
図6図6(A)は、クライアント端末201で実行される推定画像送信処理のフローチャート、図6(B)は、推定サーバー213で実行される推定処理のフローチャートである。
図7】撮像システム例1におけるカメラ202やボトル203の配置例を説明するための図である。
図8】治具筐体204全体を紙面に垂直な軸を中心に時計回りに90°滑らかに回転させた様子を示す図である。
図9】治具筐体204全体を図8の状態から更に時計回りに、例えば約20°~60°ゆっくりと滑らかに回転させた様子を示す図である。
図10図9におけるカメラ202、異物215、216を含むボトル203、LED照明205の部分を抜き出してボトルを下向きにして示した図である。
図11】カメラのセンサ面217上に縮小結像された異物215の像215iについて説明するための図である。
図12】容器が丸瓶の場合の異物の虚像を示す模式図である。
図13】ボトル203が丸瓶の場合の結像関係を説明するための図である。
図14】撮影システム例2におけるボトル203が角瓶の場合の結像関係を説明するための図である。
図15】(A)~(C)は焦点深度とボケ許容量(許容錯乱円)について説明するための図である。
図16】横軸をセンサピクセルの単位で表した許容錯乱円径、縦軸を合焦状態のコントラストを1として正規化して示した図である。
図17】丸瓶のボトル容器の場合の被写界深度、焦点深度、許容錯乱円(ボケ許容量)の関係について説明するための図である。
図18】撮影システム例1において、前方被写界深度が半径r(38mm)以上、後方被写界深度がボトル直径2r(76mm)以上となる部分を明るく表示し、それ以外をグレーで表した表1を示す図である。
図19】撮影システム例3において、レンズのFnoを変化させた場合の、前方被写界深度と後方被写界深度を表した表2を示す図である。
図20】撮影システム例2において、レンズの絞りを変化させた場合の、前方被写界深度と後方被写界深度と合わせた全体の被写界深度と許容錯乱円の関係を表した表3を示す図である。
図21】(A)、(B)は、丸瓶のボトル容器を平行な照明光221で照明する場合において、異物を容器外から観察可能な範囲を説明するための図である。
図22】(A)、(B)は、丸瓶のボトル容器を拡散光で照明した場合において、異物を撮影可能な範囲を示す図である。
図23】(A)、(B)は、撮影システム例1に好適な丸瓶容器を照明するための拡散光照明について説明するための図である。
図24】撮影処理のフローチャートである。
【発明を実施するための形態】
【0012】
以下、図面を参照して本発明の実施形態を説明する。ただし、本発明は以下の実施形態に限定されるものではない。なお、各図において、同一の部材または要素については同一の参照番号を付し、重複する説明は省略または簡略化する。
【0013】
本実施形態では、液体の入った容器(瓶、ペットボトル等、以下、単にボトルと称する)内に、異物が混入しているかどうかを、液体の入ったボトルを撮影することで検査する方法について説明する。本実施形態における液体は、飲料(ワインやウイスキーなどの酒類、果汁飲料などのソフトドリンク類等)、食品(液体調味料やスープ等)、薬品(農薬/アルコール消毒液等)、衛生・美容用品(シャンプー/液体石鹸/化粧水等)など、様々な形態を含む。
【0014】
このような様々な液体入りのボトルについて、ボトル内に異物が入った商品が消費者に供給されないように品質管理することが求められる。自社で製造・封入した液体であれば、製造工程で厳しい品質管理をすることで異物の混入したボトルを限りなく少なくすることができる。しかし、ボトルに液体が封入された状態で輸入される商品に関しては、輸入後、販売する前の工程で異物の混入が無いかを検査することが必要となる。
【0015】
従来、このような検査は熟練した人員による目視での検査が主であったが、熟練した人員の不足、検査対象商品の増加などに対応するため、人間の目視を用いずに装置によってより高い精度で検査できることが望ましい。そこで本実施形態では、高精度でボトル内の異物の有無を検出する装置やシステムについて説明する。
【0016】
<概念図>
図1(A)は、本実施形態に係る異物検知システムにおける学習フェーズの概念図、図1(B)は、本実施形態に係る異物検知システムにおける推定フェーズの概念図である。本実施形態では、異物の入ったボトル、異物の入っていないボトルを夫々撮影した画像を用いて機械学習を行い、機械学習で生成された学習済みモデルを用いて、検査したいボトルの異物の有無を検出する。
【0017】
図1(A)において、異物の入っていないボトル、異物の入っているボトルの画像を含む複数の画像(画像群)である画像セット101を準備する。画像セット101の画像はいずれも、ボトルの封入口が重力方向に対して上側の姿勢から、ボトルを逆さ姿勢、或いは逆さ姿勢から90度未満の角度で傾けた姿勢に変化させた際のボトルを撮影した画像とする。逆さ姿勢から90度未満の角度で傾けた姿勢は、封入口が重力方向に対して水平より下側となる姿勢でもある。
【0018】
本実施形態においては、画像セット101の画像は例えばAVIフォーマットなどの動画ファイルで保存されたものである。動画を用いる理由は、ボトルの封入口を例えば上側とした姿勢から下側の姿勢へと変化させた場合に、異物が有る場合には、主に以下のいずれかのタイプで異物の挙動が観測されるためである。
タイプ(1):重力方向において液体中を上から下に落ちるタイプ
タイプ(2):液体中をランダムに浮遊するタイプ
【0019】
又、画像セット101の各動画ファイルに対応する画像属性102を保存する。画像属性は、各ボトルの各画像ファイルについて、異物有無、異物が有った場合に上述のタイプ(1)とタイプ(2)のいずれのタイプの挙動をする異物であるか(異物の動き)を含む情報である。更に又、異物が有る場合の異物位置(動画の何フレーム目のどの座標に写っているか)を含む情報である。
【0020】
各画像の属性を集計することで、画像セット101に、異物なしの画像、異物ありでタイプ(1)の画像、異物ありでタイプ(2)の画像が夫々A個、B個、C個ある、ということがわかる。ここで1個の画像とは、1つの動画ファイルのことを意味する。
【0021】
次に、画像セット101から、学習モデルに学習させる教師データとなる調整済み画像セット103を生成する(調整処理)。調整済み画像セット103は、精度の良い異物検出を可能とする学習済みモデルを効率的に生成するために、画像の個数を調整した画像群である。調整済み画像セット103は、異物のない画像がA´個、異物があるタイプ(1)の画像をB´個、異物があるタイプ(2)の画像をC´個としたとき、C´>B´の関係を満たすように生成する。
【0022】
このような調整をする理由は、液体中をランダムに浮遊するタイプ(2)の画像は、異物なしで非異物の気泡がある画像と判別が難しいためである。従ってタイプ(2)の画像の個数C´を多くすることで、浮遊する異物と気泡とをより精度よく判別できる学習済みモデルを生成することができる。
【0023】
逆に、液体中を上から下に落ちるタイプ(1)の異物の画像はタイプ(2)に比べると判別が容易であるため、タイプ(1)の画像の数B´はタイプ(2)の画像の数C´に比べて少なくても精度に大きな差異は生じない。逆に、学習モデルに入力する学習データが多くなると処理に要する時間が増加し、学習済みモデルを生成するのに多大な時間を要してしまい非効率である。従ってタイプ(1)の画像の個数B´をタイプ(2)の画像の数C´に比べて少なくする。
【0024】
一方、浮遊する異物と気泡とを精度よく識別するためには、異物なしで気泡のある画像についても、相当の数を学習させたほうが学習済みモデルの精度向上に寄与する。従って、C´>B´の関係に加え、A´>B´の関係を満たすように調整済み画像セット103を生成しても良い。又、C´>A´>B´の関係を満たすように調整済み画像セット103を生成しても良い。
【0025】
調整済み画像セット103を生成する際の調整方法としては以下のような選別と補充がある。
(選別)
画像セット101に含まれる各タイプの画像群のうち、十分な数の画像が含まれているタイプについては、そのタイプの画像群から調整済み画像セット103に含める画像群を抽出(選別)する。即ち、A≧A´、B≧B´、C≧C´の少なくともいずれかとなるような抽出を行う。
【0026】
例えば、B=Cであった場合、画像セット101に含まれるタイプ(1)の画像群から調整済み画像セット103に含める画像として選定する画像の数(割合)は、タイプ(2)について選定する画像の割合よりも少ない。逆に言えば、この場合は、画像セット101に含まれるタイプ(2)の画像群から調整済み画像セット103に含める画像としてピックアップする画像の数は、タイプ(1)についてピックアップする画像の数よりも多い。
【0027】
(補充)
画像セット101にいずれかのタイプについて十分な数の画像が含まれていない場合、不足するタイプの画像を加工して個数を補充する。即ち、A<A´、B<B´、C<C´のうち少なくともいずれかとなるような補充を行う。画像セット101に含まれる、不足するタイプの画像を加工して新たな画像を生成し、その生成された画像を調整済み画像セット103に補充して含める。加工方法としては、画像の拡大、縮小、回転を含むアフィン変換、明るさ、コントラスト、エッジ強度(強調する処理、ぼかす処理)を含む属性変換の少なくとも1つの処理を行うことにより、新たな画像を生成する。
【0028】
更に又、調整済み画像セット103の各画像に対応する教師ラベル104を生成する。教師ラベル104は、各画像に対応する属性(画像属性102)に基づいて生成される。教師ラベル104は、各画像が正解データ(正例データ)であるか不正解データ(負例データ)であるかを示す異物有無(異物が有る、無い、の2値のいずれか)の情報と、異物が有る場合の異物位置の情報(動画の各フレーム画像における異物の位置)とを含む。本実施形態では、例えば、正解データは異物ありのデータ、不正解データは異物なしのデータとする。
このようにして生成した調整済み画像セット103と、教師ラベル104を学習モデル105に入力し、学習を行わせることで、学習済みモデル106が生成される。
【0029】
図1(B)は、異物検知システムにおける推定フェーズの概念図を示しており、検査対象である、異物の有無が不明である液体が入ったボトルの撮影画像110を学習フェーズで生成した学習済みモデル106に入力する。ここで、撮影画像110は、画像セット101に含まれる画像と同様にして封入口を重力方向について下側に変化させた際のボトルを撮影した画像とする。推定フェーズでは学習済みモデル106を用いた推定処理が行われ、出力データとして、異物なし、異物ありのいずれかの結果が出力される。このように、本実施形態では、学習フェーズと推定フェーズにより、検査対象のボトルの異物の有無を検出する。
【0030】
<システム構成>
図2は、本実施形態に係る異物検知システムの構成図であり、図1(A)、(B)で説明した学習フェーズ、及び推定フェーズにおける各処理を実行する。
ローカルネットワーク(LAN)200には、クライアント端末201や撮像装置としてのカメラ202が接続される。治具筐体204に設置された、異物有無のわかっているボトル203をLED照明205で照明し、カメラ202で撮像し画像を取得する。
【0031】
図1(A)で説明した学習フェーズにおいて、カメラ202により取得された画像はクライアント端末201の記憶媒体や、例えばインターネット210を介してアクセス可能なデータ収集サーバー211の記憶媒体に記憶される。そして、前述した画像セット101が生成される。この画像セット101の各画像に対し、クライアント端末201の操作部306をユーザーが操作して属性値を入力することで、クライアント端末201の記録媒体又はデータ収集サーバー211に、前述の画像属性102が生成される。
【0032】
生成された画像属性102は、クライアント端末201又はデータ収集サーバー211のプロセッサ(後述するCPU301)により集計、調整されることで、前述の調整済み画像セット103、教師ラベル104が生成される。生成された調整済み画像セット103と教師ラベル104を、クライアント端末201からインターネット210を介してアクセス可能(通信可能)な学習サーバー212に入力する。学習サーバー212は後述するCPU301或いはGPU304を内蔵し、入力された調整済み画像セット103と教師ラベル104に基づき学習を行い、学習済みモデル105を生成して記憶する。
【0033】
図1(B)で説明した推定フェーズにおいて、異物の有無が不明である液体が入ったボトルをカメラ202で撮影し、その画像はインターネット210を介してアクセス可能な推定サーバー213へ送信される。推定サーバー213のCPU301或いはGPU304が、受信した画像に対して、学習サーバー212に記憶された学習済みモデル105を用いた推定処理を行い、推定結果をクライアント端末201に送信する。クライアント端末では受信した推定結果に応じた表示を行い、推定結果を記録する。
【0034】
尚、本実施形態では、インターネットを介してアクセス可能な学習サーバーで学習を行い、推定サーバーで推定を行う例を説明するが、ローカルで完結するシステム構成に本実施形態を適用することも可能である。
即ち、画像セット101、画像属性102をクライアント端末201の記憶媒体(後述する記録媒体308又は不揮発性メモリ303等)に記憶し、調整済み画像セット103、教師ラベル104の生成をクライアント端末のCPU301の制御によって行う。
【0035】
そして、生成した、調整済み画像セット103、教師ラベル104を、クライアント端末201の記憶媒体に記憶された学習モデル105に入力し、クライアント端末201のCPU301又はGPU304が学習処理を行う。こうして生成された学習済みモデル106をクライアント端末201の記憶媒体に記憶する。
【0036】
推定フェーズでは、異物の有無が不明である液体が入ったボトルの撮影画像110を学習済みモデル106に入力することにより、クライアント端末201のCPU301又はGPU304が推定処理を行う。推定処理の結果を、クライアント端末201のディスプレイ305に表示し、クライアント端末201の記憶媒体に記憶する。即ち、図2に示される角ブロックの機能を例えば1つの電子機器(クライアント端末)が備える構成としても良い。
【0037】
<ハードウェア構成>
図3は、クライアント端末201、データ収集サーバー211、学習サーバー212、推定サーバー213などの情報処理装置のハードウェア構成の1例を示す図である。
クライアント端末201,データ収集サーバー211,学習サーバー212,推定サーバー213は夫々、図3に示すようなハードウェア構成を有する。尚、これらは、例えば、パーソナルコンピュータ(PC)、スマートフォンタブレット端末などの携帯端末、サーバー装置、などとして構成される。
【0038】
図3において、内部バス350に対してCPU301、メモリ302、不揮発性メモリ303、GPU304、ディスプレイ305、操作部306、記録媒体I/F307、外部I/F309、通信I/F130が接続されている。内部バス350に接続される各部は、内部バス350を介して互いにデータのやりとりを行うことができるようにされている。
【0039】
メモリ302は、例えばRAMなどの半導体素子を利用した揮発性のメモリからなる。CPU301は、例えば不揮発性メモリ303に格納されるコンピュータプログラムを実行し、メモリ302をワークメモリとして用いて、情報処理装置の各部を制御する。不揮発性メモリ303には、画像データや音声データ、その他のデータ、CPU301を動作させるための各種コンピュータプログラムなどが格納される。不揮発性メモリ303は例えばハードディスク(HDD)やSSDやROMなどで構成される。
【0040】
GPU(Graphics Processing Unit)304は画像処理部として機能しており、画像描写を行う際に必要となる計算処理を行う半導体チップ(プロセッサー)である。GPU304は、CPU301の制御に基づいて、不揮発性メモリ303や記録媒体308に格納された画像データ、外部I/F309を介して取得した映像信号、通信I/F130を介して取得した画像データ、撮像された画像等に対して画像処理を施す。
【0041】
GPU304が行う画像処理には、A/D変換処理、D/A変換処理、画像データの符号化処理、圧縮処理、伸長処理、デコード処理、拡大/縮小処理(リサイズ)、ノイズ低減処理、色変換処理等が含まれる。尚、GPU304は特定の画像処理を施すための専用の回路ブロックで構成しても良い。又、画像処理の種別によってはGPU304を用いずにCPU301がプログラムに従って画像処理を施すように構成することも可能である。
【0042】
GPU304は、データをより多く並列処理することで効率的な演算を行うことができるので、ディープラーニングのような学習モデルを用いて複数回にわたり学習を行う場合にはGPU304で処理を行うことが望ましい。従って本実施形態では、後述する学習処理にはCPU301に加えてGPU304を用いる。
【0043】
即ち、学習モデルを含む学習プログラムを実行する場合に、CPU301とGPU304が協働して演算を行うことで学習を行う。尚、学習処理はCPU301又はGPU304の一方のみにより行っても良い。又、後述する推定処理においても、学習処理と同様に、推定処理を実行する情報処理装置のGPU304を用いても良いし、CPU301又はGPU304の一方のみにより行っても良い。
【0044】
ディスプレイ305は、CPU301の制御に基づいて、画像やGUI(Graphical User Interface)を構成するGUI画面などを表示するための例えば液晶ディスプレイを含む。CPU301は、コンピュータプログラムに従い表示制御信号を生成し、ディスプレイ305に表示するための映像信号を生成してディスプレイ305に出力するように情報処理装置の各部を制御する。ディスプレイ305は出力された映像信号に基づいて映像を表示する。
【0045】
尚、情報処理装置自体が備える構成としてはディスプレイ305に表示させるための映像信号を出力するためのインターフェースまでとし、ディスプレイ305は外付けのモニタ(テレビなども含む)で構成しても良い。
【0046】
操作部306は、キーボードなどの文字情報入力デバイスや、マウスやタッチパネルといったポインティングデバイス、ボタン、ダイヤル、ジョイスティック、タッチセンサ、タッチパッドなどを含む、ユーザー操作を受け付けるための入力デバイスである。尚、タッチパネルは、ディスプレイ305に重ね合わせて平面的に構成され、接触された位置に応じた座標情報が出力されるように構成されている。
【0047】
記録媒体I/F307は、メモリーカードやCD、DVDといった記録媒体308が着脱可能な構成を有し、CPU301の制御に基づき、装着された記録媒体308からのデータの読み出しや、記録媒体308に対するデータの書き込みを行う。
【0048】
外部I/F309は、外部機器と有線又は無線によって接続し、映像信号や音声信号の入出力を行うためのインターフェースである。通信I/F130は、インターネット210、ローカルネットワーク200などのネット311を介して外部機器と通信して、ファイルやコマンドなどの各種データの送受信を行うためのものである。
【0049】
<学習処理>
図4は、クライアント端末201で行われる学習処理の一部のフローチャートであり、図5は、クライアント端末201で行われる学習処理の残りの部分のフローチャートである。
図4図5のフローチャートにおける各処理は、クライアント端末201における、CPU301が、不揮発性メモリ303に格納されたコンピュータプログラムをメモリ302に展開して実行することにより実現される。
【0050】
ステップS401では、クライアント端末201のCPU301は、メモリ302に保持する変数nを1に初期化する。nは画像セット101の画像のうち何番目の画像までを取得したかを示すカウンタである。画像セット101には全部でN個の画像が含まれているものとする。
【0051】
ステップS402では、クライアント端末201のCPU301は、クライアント端末201又はデータ収集サーバー211に格納された画像セット101のうち、n番目の画像を取得する。
【0052】
ステップS403では、クライアント端末201のCPU301は、取得したn番目の画像についての属性情報を付与するユーザー操作を受けつける。ユーザーはクライアント端末201の操作部306を操作することで、n番目の画像の属性情報を入力することができる。この時、CPU301は、ディスプレイ305において、n番目の画像の動画を再生表示、或いは代表画像(例えば先頭フレーム)を静止画表示する。又は、単にファイル名などの画像識別子を表示するだけでも良い。
【0053】
ユーザーは、動画再生されたn番目の画像を見て、目視で異物の有無、異物の動きのタイプ、異物の写るフレーム番号と座標(異物位置)を特定して、夫々の情報を入力する。或いは、予め異物の有無、異物の動きのタイプがわかっているボトルを撮影した場合には、予めわかっている情報に基づいて情報を入力しても良い。この場合は動画再生せずに情報入力可能である。異物の写るフレームが特定できればよいため、フレーム番号代わりに、動画のタイムスタンプ情報、経過時間の情報であっても良い。
【0054】
例えば異物位置は、所定のフレームの画像を表示した状態でユーザーが異物の位置を入力するようにしても良い。そして、他のフレームで同一の異物が写っているかどうかをCPU301が自動的に判別(追尾処理を行って判別可能)し、判別された情報に基づいて自動入力するようにしても良い。
【0055】
ステップS404では、クライアント端末201のCPU301は、ステップS403で受け付けた操作により、n番目の画像が適正に傾けた状態で撮影された画像ではない旨の入力がされたか否かを判定する。本実施形態において、適正な状態とは、封入口が重力方向の上側を向いた姿勢から、ボトルを逆さ姿勢、或いは逆さ姿勢から90度未満の角度で傾けた姿勢(即ち、封入口が重力方向で下側となる姿勢)に変化させた際のボトルを撮影した画像である。
【0056】
適正でない旨の入力がされたと判定された場合はステップS405に進み、そうでない場合はステップS406に進む。尚、適正に傾けた状態で撮影された画像か否かだけでなく、他の要因で、教師データとして用いるのに適正でない旨の入力を受け付けた場合もステップS405に進むものとする。
【0057】
ステップS405では、クライアント端末201のCPU301は、不揮発性メモリ303に記録した画像属性102(属性情報のリスト)に、n番目の画像を記録することなく、ステップS411に進む。このようにすることで、適正でないn番目の画像を学習用データとしての教師データから除外する。
【0058】
ステップS406では、クライアント端末201のCPU301は、ステップS403でn番目の画像に異物が有る旨の入力がされたか否かを判定する。異物がある旨の入力がされなかった場合、或いは異物が無い旨の入力がされた場合はステップS407に進み、異物が有る旨の入力がされた場合はステップS408に進む。
【0059】
ステップS407では、クライアント端末201のCPU301は、不揮発性メモリ303の画像属性102に、n番目の画像について異物なしの旨を記録する。例えば図1の画像属性102のファイル名:0002.aviの画像ファイルのように、異物が無い旨の情報が記録される。
【0060】
ステップS408では、クライアント端末201のCPU301は、ステップS403でn番目の画像に、上述したタイプ(1)(重力方向において液体中を上から下に落ちるタイプ)の動きをする異物が写った画像である旨の入力がされたか否かを判定する。タイプ(1)である場合はステップS409に進み、そうでない場合にはステップS410に進む。
【0061】
ステップS409では、クライアント端末201のCPU301は、不揮発性メモリ303の画像属性102に、n番目の画像について、異物あり、動きのタイプがタイプ(1)、異物の写るフレームと座標を示す異物位置の情報を記録する。例えば、図1の画像属性102のファイル名:0001.aviの画像ファイルのように、異物有、異物の動きがタイプ(1)、及び異物位置が夫々記録される。
【0062】
液体中の異物の動きは上述のタイプ(1)とタイプ(2)に大別される。従って、異物があり(ステップS406でYes)、タイプ(1)でない場合(ステップS408でNoの場合)は、本実施形態においては、タイプ(2)の異物(液体中をランダムに浮遊するタイプ)が写った画像ということになる。
【0063】
ステップS410では、クライアント端末201のCPU301は、不揮発性メモリ303の画像属性102に、n番目の画像について異物あり、動きのタイプがタイプ(2)、及び異物の写るフレームと座標を示す異物位置の情報を記録する。例えば、図1の画像属性102のファイル名:0003.aviの画像のように、異物有、異物の動きがタイプ(2)、及び異物位置が夫々記録される。
【0064】
ステップS411では、クライアント端末201のCPU301は、n=Nであるか否かを判別する。即ち、画像セット101に含まれる画像をすべて取得したか否かを判定する。n=Nでない場合(まだ取得していない画像がある場合)はステップS412に進んでnを1つインクリメントしてステップS402に進み、次の画像を取得して、ステップS402~ステップS411の処理を繰り返す。n=Nである場合(画像セット101に含まれるすべての画像を取得した場合)は図5のステップS501に進む。
【0065】
こうして、画像属性102が生成される。尚、本実施形態ではクライアント端末201で画像属性102を生成する例を説明した。しかし、他の装置などですでに生成済みの画像属性102を取得できる場合には、クライアント端末201で生成する処理であるステップS401~ステップS412を省略し、ステップS501から処理を開始しても良い。
【0066】
ステップS501では、クライアント端末201のCPU301は、画像属性102に情報が記録された画像(画像セット101に含まれる画像)のうち、異物なしの画像の数Aを集計して取得する。又、異物ありでタイプ(1)の画像の数B、異物ありでタイプ(2)の画像の数Cを夫々集計して取得する。
【0067】
ステップS502では、クライアント端末201のCPU301は、ステップS501で集計された各タイプの画像の数に基づき、教師データとなる画像の総数を調整する調整処理を行う。そして、調整済み画像セット103と、教師ラベル104を生成し、不揮発性メモリ303に記録する。調整処理は、図1(A)の学習フェーズの概念図において説明した通りである。即ち、C´>B´の関係を満たすA´個、B´個、C´個の合計M個の画像よりなる調整済み画像セット103を生成する。
【0068】
このように、ステップS502は、液体が入った複数の容器について、第1の姿勢と第2の姿勢とに変化させた際の容器を撮影して取得した複数の画像よりなる画像セット101の画像の数を調整している。そして、それによって、異物が上から下に落ちる第1のタイプの画像の数よりも、異物が液体中で浮遊又は浮上する第2のタイプの画像の数が多い調整済み画像セット103を生成する調整を行うものとして機能している。
【0069】
尚、ステップS502では、前述のように、第1のタイプの画像の数よりも、異物の無い画像の数が多くなるように画像の数を調整して調整済み画像セット103を生成しても良い。更に、第1のタイプの画像の数よりも、異物の無い画像の数が多く、かつ、異物の無い画像の数よりも第2のタイプの画像の数が多くなるように画像の数を調整して調整済み画像セット103を生成しても良い。
【0070】
ステップS503では、クライアント端末201のCPU301は、メモリ302に保持する変数mを1に初期化する。mは調整済み画像セット103に含まれる画像のうち何番目の画像までを学習モデルに入力したかを示すカウンタである。
【0071】
ステップS504では、クライアント端末201のCPU301は、調整済み画像セット103に含まれる画像のうちm番目の画像と、教師ラベル104のうちm番目の画像の異物有無、異物位置を示す情報(ラベル)を学習モデル105に入力する。具体的には、m番目の画像とラベルを、学習サーバー212に送信する。即ち、教師データに含まれる画像毎に対応付けられた、異物が有るか否かのいずれかを示すラベルを用いて機械学習を行うように制御する。
【0072】
ステップS505では、クライアント端末201のCPU301は、m番目の画像についての学習モデル105を用いた機械学習に関する処理を行う。例えば、学習サーバー212から、m番目の画像とラベルが学習モデル105に正しく入力できたか否かの応答を受信する。
【0073】
尚、ローカルの処理で学習処理を行う場合には、ステップS504ではm番目の画像とラベルを学習サーバー212に送信することなくクライアント端末201に保持した学習モデル105に入力する。そして、ステップS505で、クライアント端末201のCPU301とGPU304を協働させて学習処理を行う。この学習処理は負荷の高い処理であり、ステップS502の調整処理によって教師データとして学習モデル105に入力する画像の数を調整している。即ち、前述の調整済み画像セット103を教師データとして機械学習を行うことによって、無駄な処理を省略し、学習に係る処理時間を短縮することができる。
【0074】
機械学習の具体的なアルゴリズムとしては、最近傍法、ナイーブベイズ法、決定木、サポートベクターマシンなどが挙げられる。又、ニューラルネットワークを利用して、学習するための特徴量、結合重み付け係数を自ら生成する深層学習(ディープラーニング)も挙げられる。適宜、上記アルゴリズムのうち利用できるものを用いて本実施形態に適用することができる。
【0075】
ステップS506では、クライアント端末201のCPU301は、m=Mであるか否かを判定する。m=Mでない場合(調整済み画像セット103に含まれる画像をすべて学習モデル105に入力していない場合)は、ステップS507に進んでmをインクリメントし、ステップS504へ進み次の画像とラベルを学習モデル105に入力する。m=Mである場合(調整済み画像セット103に含まれる画像をすべて学習モデル105に入力した場合)は学習処理を終了する。こうして、学習済みモデル106が生成される。
【0076】
このように、ステップS401~S507において、液体が入った複数の容器を第1の姿勢と第2の姿勢とに変化させた際の容器を撮影して得た複数の画像からなる画像群を教師データとして機械学習を行っている。そして、容器に異物があるか否かを推定するための学習済みモデルを生成するものとして機能している。
【0077】
<推定処理>
図6(A)、(B)は、推定処理のフローチャートであり、図6(A)は、クライアント端末201で実行される推定画像送信処理のフローチャートである。図6(A)のフローチャートにおける処理は、クライアント端末201において、CPU301が、不揮発性メモリ303に記憶されたコンピュータプログラムをメモリ302に展開して実行することで実現する。
【0078】
ステップS601では、クライアント端末201のCPU301は、検査対象となる、異物が入っているか否かが不明のボトルの撮影処理を行う。撮影処理では、ボトルの封入口が重力方向について上側の姿勢から、ボトルを逆さ姿勢、或いは逆さ姿勢から90度未満の角度で傾けた姿勢(即ち、封入口が重力方向について下側となる姿勢)に変化させる。そしてその際のボトルを撮影した画像を取得する。
【0079】
なお、基準とする部分はボトルの封入口に限るものではなく、例えば、底部、首部分などの他の部分としてもよい。すなわち、容器のうち基準とする特定の部分が、重力方向について上側の姿勢から、重力方向について下側となる姿勢に変化させた際のボトルを撮影した画像を取得したものであればよい。このような姿勢変化であれば、タイプ(1)の異物が有った場合に、液体中を上から下に落ちる動きが観測できるようになり、異物なしや、タイプ(2)の異物との判別がしやすくなるためである。
【0080】
即ち、液体が入った容器の特定の部分が重力方向に対して上側となる第1の姿勢と、特定の部分が重力方向に対して下側となる第2の姿勢との間で容器の姿勢を変化させた際の容器を撮影した画像を検知対象画像として取得する。
この画像の状態は学習処理で収集する画像セット101の画像と同様の姿勢状態で撮影された画像である。撮影処理の詳細は図24を用いて後述する。
【0081】
ステップS602では、クライアント端末201のCPU301は、ステップS601の撮影処理で取得した画像(異物の検知対象画像)を、通信I/F310を介して、推定サーバー213に送信する。尚、送信する際に推定処理での精度を上げるために画像に切り出し、回転、色調整などの各種画像処理(加工処理)を施してから送信しても良い。
【0082】
ステップS603では、クライアント端末201のCPU301は、推定サーバー213から推定結果の情報(推定結果情報)を受信したか否かを判定する。ここで受信する推定結果は、後述する図6(B)のS613で送信されるものである。推定結果を受信していない場合は待機し、推定結果を受信した場合はステップS604に進む。
【0083】
ステップS604では、クライアント端末201のCPU301は、ステップS603で受信した推定結果が「異物あり」であるかを判定する。尚、本実施形態では、推定結果は「異物あり」を示す情報か、「異物なし」を示す情報かのいずれかとなる。「異物あり」と判定した場合はステップS606に進み、「異物なし」と判定した場合はステップS605に進む。
【0084】
ステップS605では、クライアント端末201のCPU301は、推定した画像(ステップS601で取得した画像)の推定結果が「異物なし」である旨をディスプレイ305に表示する。
尚、この時、推定結果と共に、推定した画像の識別子となる情報(ファイル名、ファイル番号等)、推定した画像(ステップS601で取得した画像)の動画又は代表画像の静止画、推定した対象のボトルの識別情報のうちの少なくとも1つを表示しても良い。
【0085】
尚、「異物なし」は、検査結果としては「問題なし」(「良好」)を意味するので、オペレーターは特段対応をしなくても問題はない。従って「異物なし」の推定結果に対して特に何も表示しなくても良い。又、不揮発性メモリ303に、推定した画像の識別子或いはボトルの識別情報に関連付けて、「異物なし」であった旨の情報を記録する。但し、この記録処理も省略しても良い。
【0086】
ステップS606では、クライアント端末201のCPU301は、推定した画像(ステップS601で取得した画像)の推定結果が「異物あり」である旨をディスプレイ305に表示する。この時、推定結果と共に、推定した画像の識別子となる情報(ファイル名、ファイル番号等)示、推定した画像(ステップS601で取得した画像)の動画又は代表画像の静止画、推定した対象のボトルの識別情報のうち少なくとも1つを表示しても良い。
【0087】
ここで、ステップS602~S606は、S601で取得した画像を、学習済みモデルに入力するように制御し、入力した結果として得られた推定結果情報に基づき、異物検知結果を通知するように制御している。
【0088】
尚、「異物あり」は、検査結果としては「問題あり」(「不良」)を意味するので、対象のボトルの精密検査或いは出荷対象からの除去などの、何らかの対応が必要となる。従ってオペレーターに確実に通知する必要があるため、「異物なし」よりも目立つように通知することが好ましい。例えば、異物ありを示す表示アイテムを、異物なしを示す表示アイテムよりも大きく表示する、赤などの目立つ色で表示する、点滅表示するなどをすることが望ましい。
【0089】
又、表示だけでなく、外部I/F309に接続されたスピーカー或いは内蔵のスピーカー(不図示)に警告音を発音させても良い。或いは、対象のボトルに対して不図示の駆動部を用いて「異物あり」の推定結果が出たことに対応する識別物(シールなど)を貼付するなどの処理を行っても良い。又、不揮発性メモリ303に、推定した画像の識別子或いはボトルの識別情報に関連付けて、「異物あり」であった旨の情報を記録する。
【0090】
図6(B)は、推定サーバー213で実行される推定処理のフローチャートである。この処理は、推定サーバー213のCPU301が、不揮発性メモリ303に記憶されたコンピュータプログラムをメモリ302に展開して実行することで実現する。
【0091】
ステップS610では、推定サーバー213のCPU301は、クライアント端末201から送信された撮影画像(前出のステップS602で送信される画像)を受信したか否かを判定する。撮影画像を受信したと判定した場合はステップS611に進み、そうでない場合は受信するまで待機する。
【0092】
ステップS611では、推定サーバー213のCPU301は、ステップS610で受信した撮影画像を、学習済みモデル106に入力する。この学習済みモデル106は、図4図5で説明した学習処理によって生成されたものである。尚、撮影画像を学習済みモデル106に入力する前に、推定処理での精度を上げるために画像に切り出し、回転、色調整などの各種画像処理(加工処理)を施してから入力しても良い。
【0093】
ステップS612では、推定サーバー213のCPU301は、学習済みモデル106を用いた推定処理を行い、入力された画像に異物があるか否か(異物があるボトルの画像であるか否か)を推定する。この処理は必要に応じてGPU304と協働して行う。
【0094】
ステップS613では、推定サーバー213のCPU301は、ステップS612での推定処理の結果として、異物あり、異物なし、のいずれかを示す情報をクライアント端末201に送信する。このようにステップS610~S613は、学習済みモデルを用いた推定処理を行う。
【0095】
尚、本実施形態では、検査対象の画像を得るクライアント端末201と推定処理を行う推定サーバー213を別の装置としたシステムを説明したが、同一装置内で実施することも可能である。例えば、学習済みモデル106をクライアント端末201の不揮発性メモリ303に記録していれば、インターネットと通信することなく、クライアント端末201で検査対象となる撮影画像の取得と推定処理の双方を実施することが可能である。
【0096】
その場合は、ステップS602で撮影画像を送信することなく、ステップS611、ステップS612の処理をクライアント端末201側で実行する。そして、推定結果に応じてステップS605又はステップS606の処理を行えば良い。
【0097】
尚、ステップS612の推定処理については、機械学習された学習済みモデル106を用いて処理を実行する例を説明したが、ルックアップテーブル(LUT)等のルールベースの処理を行っても良い。その場合には、例えば、入力データと出力データとの関係を予めLUTとして作成する。そして、この作成したLUTを、推定処理を行う装置の不揮発性メモリ303に格納しておく。推定処理を行う際には、この格納されたLUTを参照して、出力データを取得することができる。
【0098】
<撮影システム例1>
次に、図7図9を用いて、液体を収容した容器に混入した異物を検出するための異物検知システムに適した撮影を行う撮影システムについて説明する。図7は、図1図6で説明した撮像システムにおけるカメラ202やボトル203の配置例を説明するための図である。
【0099】
図7において、撮影に用いるカメラ202は、ボトル203の胴部に正対するように、治具筐体204上に配置される。治具筐体204は、不図示の機構により、ボトル203を容易に着脱可能な構成としている。カメラ202の撮影画像は、クライアント端末201に出力される。ボトル203は光透過性を有し、ボトル203を挟んで、撮像手段としてのカメラ202の反対側の位置には、容器を照明するための照明手段としてのLED照明205が配置されている。
【0100】
そして、カメラ202による撮影時に、ボトル内を照明することによってカメラ202は、LED照明205からの透過光を撮影することができる。ここで、カメラ202とLED照明205は容器を撮影して画像を取得するための取得手段として機能している。尚、カメラ202とボトル203の距離はユーザーにより手動で或いは電動で可変調整できるように構成されている。
【0101】
治具筐体204は、治具台座213に固定され、回転中心214を中心に、治具筐体204全体が回転できる構成となっている。ボトル203内には、液体よりも比重の大きな異物215と、液体よりも比重の小さな異物216が存在する。ボトル203を鉛直方向に沿って正立に静置すると、比重の大きな異物215は、ボトル底部に沈降し、比重の小さな異物216は、ボトル首部に浮上する。その状態でLED照明205を点灯し、撮影を開始する。
【0102】
図8は、治具筐体204全体を紙面に垂直な軸を中心に時計回りに90°滑らかに回転させた様子を示す図である。回転中に気泡が多量に発生しないように、回転、及び停止はゆっくりと(低速で)滑らかに制御される。ボトル203は横向き(水平)に配置されることになるが、この時、比重の大きな異物215は、ボトル底部の近くの胴部の下側に沈降し、比重の小さな異物216は、ボトル肩部付近の上側に浮上する。図8に示す状態で、少しの間静置しても良いし、ゆっくりと滑らかに次の図9の状態に移行しても良い。
【0103】
図9は、治具筐体204全体を図8の状態から更に時計回りに、例えば約20°~60°ゆっくりと滑らかに回転させた様子を示す図である。水平に配置されたボトルが逆さの状態で傾斜すると、ボトル底部の近くの胴部の下側に沈降していた比重の大きな異物215は、カメラから遠い側のボトル胴部の側面付近に沿って沈降する。なお、角度は垂直90度まで傾斜させて倒立状態としても同様の効果が得られる。
【0104】
一方、比重の小さな異物216は、カメラから近い側のボトル胴部の側面付近に沿って浮上する。尚、比重の大小に応じて、概ね異物の移動する傾向について述べたが、0.2~0.3mm以下の極小の異物については、ボトル内部をランダムに浮遊することもある。本撮影システム例では、このように、カメラ202を用いて、ボトル内部を移動する異物を的確に撮影することができる。
【0105】
図10は、図9におけるカメラ202、異物215、216を含むボトル203、LED照明205の部分を抜き出してボトルを下向きにして示した図である。
カメラ202には、光学系としての撮影レンズ218が装着され、LED照明205により透過照明されたボトル内の異物215、216を、光学系を介して撮影する。
【0106】
ボトル内の画像は、撮影レンズ218により、カメラのセンサ面217上に縮小結像される。ここでレンズの前側主平面からボトル中心までの距離をD1、LED照明からボトル中心までの距離をD2とする。又、ボトル内の撮影範囲(例えばボトルの底から首近傍までの透明な部分の範囲)の図面の上下方向の長さをLとする。
【0107】
撮影システム例1では、ボトル内の撮影範囲Lを一括で撮影できるように、撮影レンズ218、及び、カメラのセンサ面217を選択している。
例えば、撮影レンズ218の焦点距離f=25mm、センサの図10中の上下方向のサイズx=14.1mm、ボトル胴部の撮影範囲の長さL=234mmとする。このときに、撮影範囲の長さLを一括で撮影するには、撮影パラメータとしての距離D1は式1を満たすことが望ましく、距離D1=440mmとすれば良いことが分かる。
【0108】
D1=(1+L/x)f・・・(式1)
尚、LED照明には、撮影範囲の長さL全体、及びボトル径2r=76mmを照明可能なように、高さ方向寸法236mm×幅寸法182mmを採用した。照明波長は、ボトルのガラス色や液色によらずに、透過率を高めることができる波長λ=850nmとした。照明の表面は拡散面として、様々な光線角度で異物が照明できるようにした。一方、照明の熱がボトル内に伝わらないように、D2=100mmとした。
【0109】
図11は、カメラのセンサ面217上に縮小結像された異物215の像215iについて説明するための図である。
撮影システム例1のセンサは、長手寸法14.1mm×短手寸法10.35mm、センサピクセル219のピッチp=3.45μm、総画素は1228万画素である。距離D1にある異物は、以下の式2に基づきセンサ面217上に結像される。
倍率-x/L=-1/16.6・・・(式2)
【0110】
異物には、金属片やコルク片などのように、光を透過せず、照明を背景に黒い影として写る異物と、ガラス片やプラスチック片のように、照明光を屈折、又は半透過して写る異物がある。前者はコントラストが高く、比較的容易に検出し得るが、後者はコントラストが低めで、検出が難しい。様々な種類、大きさの異物を実際に撮影したところ、センサ上で、3×3画素を占める大きさならば、ほぼ確実に検出できることが分かった。即ち、異物の大きさa、センサピクセルピッチp、撮影パラメータとしてのレンズの焦点距離fと距離D1、は、次の式3を満たせば良い。
【0111】
【数3】
f=25mm、D1=440mm、p=3.45μmとすれば、a≧0.17mmとなる。
尚、異物のサイズaは式4のように、センサ上で、4×4画素を占める大きさならば、より確実に検出できる。
【0112】
【数4】
上記式4の場合は、a≧0.23mmとなる。
【0113】
先ず、本撮影システム例のボトル203が丸瓶の場合の説明を行う。丸瓶は、ボトル径方向には曲率を有するため、ボトル内の異物に対して、レンズ効果がある。
図12は、容器が丸瓶の場合の異物の虚像を示す模式図であり、図12を用いてボトルのレンズ効果について説明する。
丸瓶は、ボトル径方向について曲率を持つので、シリンドリカルレンズと見なすことができる。レンズ効果は、図10に示す異物215のように、カメラから遠い側のボトル胴部の側面付近を通過する場合において影響が最大となる。
【0114】
異物216のように、カメラから近い側のボトル胴部の側面付近を通過する場合は、レンズ効果は小さく、ボトルの上下方向には、レンズ効果はほとんどない。従って、異物215のように、カメラから遠い方のボトル胴部の側面付近を通過する場合は、図12に示す異物像215iのように、ボトル径方向のみが拡大された像となる。レンズ効果により、異物のボトル径方向は拡大されるので、検知が容易になるのは言うまでもない。
【0115】
図13は、ボトル203が丸瓶の場合の結像関係を説明するための図である。ボトル203のカメラに近い側面220は、曲率1/半径rのシリンドリカルレンズと見なせるので、カメラから遠い側のボトル胴部の側面付近にある異物215は、レンズ効果により、異物215の虚像215’にあるように見える。液体の屈折率をnとすると、シリンドリカルレンズから異物215の虚像215’までの距離と倍率は夫々式5と式6で表される。但し、シリンドリカルレンズの焦点距離をfc、シリンドリカルレンズから異物215までの距離をdとする。
【0116】
【数5】
【数6】
特に、異物215のように、異物がシリンドリカルレンズから、ボトルの直径2rだけ離れていれば、d=2r、fc=r/(n-1)なので、距離は式7、倍率は式8のように表される。
【0117】
【数7】
【数8】
【0118】
n=1.333とすると、式7より、シリンドリカルレンズから異物215までの距離dは3rとなる。又、式8より、倍率はボトル径によらず2となることが分かる。つまり、カメラから遠い側の丸瓶のボトル胴部の側面付近にある液体中の異物215は、ボトル径方向が2倍に拡大されて見える。厳密には、ボトルのガラスの屈折率は、1.5程度で、液体の屈折率より若干高いが、屈折率差は小さいので、界面での屈折、ボトルガラスの厚み等は無視し得る。
【0119】
一方、カメラから近い側のボトル胴部の側面付近にある異物216は、シリンドリカルレンズと近接しているので、レンズ効果は無視できる。尚、いずれの異物においても、ボトルの上下方向(長手方向)には、レンズ効果はほとんどない。
【0120】
次に、カメラのセンサ面217近傍で、夫々の異物がどのように結像されるかを考慮する。カメラから遠い側のボトル胴部の側面付近(ボトル奥側)にある異物215のボトル径方向は、レンズ効果により、異物215の虚像215’にあるように見えるので、式7により、撮影レンズ218から異物215の虚像までの距離は、
D1-r+2r/(2-n)=D1+nr/(2-n)
となり、n=1.333とすると、D1+2rとなる。図示しないが、異物215のボトル高さ方向(長手方向)は、レンズ効果をほとんど受けないので、液体の屈折率分だけ、距離が近づいて見える。
【0121】
即ち、撮影レンズ218から異物215の虚像までの距離は、D1-r+r/n=D1+r(2-n)/nとなり、n=1.333とすると、D1+r/2となる。
一方、カメラから近い側のボトル胴部の側面付近(ボトル手前側)にある異物216は、レンズ効果を無視できるので、撮影レンズ218から異物216までの距離は、D1-rとなる。
【0122】
ボトル中心位置をセンサ面217上に結像するように、撮影レンズ218の合焦位置を調整すると、ボトル奥側に位置する異物215は、センサ面217より撮影レンズ218に近い位置に異物215の像215iとして、結像される。即ち、ボトル径方向の像がより近い位置に結像される。ボトル手前側に位置する異物216は、センサ面217より撮影レンズ218から遠い位置に異物216の像216iとして、結像される。
【0123】
従って、異物215の像215iと異物216の像216iが、ボケ量の小さな焦点深度内に入るように撮影系を最適化してやれば、ボトル内の異物を一括して撮影することができる。尚、焦点深度とは、点像が許容錯乱円までボケて広がる範囲のことであり、詳しくは後述する。
【0124】
<撮影システム例2>
撮影システム例2として、ボトル203が角瓶の場合について説明する。ボトルの胴部側面は平面であるため、この平面をカメラに正対して設置すれば、ボトル内の異物に対して、レンズ効果の影響はほとんどない。
【0125】
図14は、撮影システム例2におけるボトル203が角瓶の場合の結像関係を説明するための図である。ボトル203のカメラに近い面(手前の側面)は、平面と見なせるので、カメラから遠い側のボトル胴部の側面付近にある異物215からの光線はボトル側面で屈折され、異物215の虚像215’にあるように見える。液体の屈折率をnとすると、ボトル側面から異物215の虚像215’までの距離は式9で表される。但し、ボトルの手前の側面から異物215までの距離(奥行寸法)を2tとする。
【0126】
2t/n・・・・・・・(式9)
n=1.333とすると、式9より、ボトル側面から異物215までの距離は1.5tとなる。一方、カメラから近い方のボトル胴部の側面付近にある異物216は、ボトル側面と近接しているので、ボトル側面での屈折の影響は無視できる。
【0127】
次に、カメラのセンサ面217近傍で、夫々の異物がどのように結像されるかを考慮する。カメラから遠い側のボトル胴部の側面付近(ボトル奥側)にある異物215のボトル径方向は、液体による屈折により、異物215の虚像215’にあるように見える。
【0128】
従って、式9により、撮影レンズ218から異物215の虚像215’までの距離は、
D1-t+2t/n=D1+t(2-n)/nとなり、n=1.333とすると、D1+t/2となる。
一方、カメラから近い側のボトル胴部の側面付近(ボトル手前側)にある異物216は、ボトル側面での屈折の影響は無視できるので、撮影レンズ218から異物216までの距離は、D1-tとなる。
【0129】
ボトル中心位置をセンサ面217上に結像するように、撮影レンズ218の合焦位置を調整すると、ボトル奥側に位置する異物215は、センサ面217より撮影レンズ218に近い位置に異物215の像215iとして結像される。即ち、ボトル径方向の像がより近い位置に結像される。ボトル手前側に位置する異物216は、センサ面217より撮影レンズ218から遠い位置に異物216の像216iとして結像される。従って、異物215の像215iと異物216の像216iが、焦点深度内に入るように撮影系を最適化すれば、ボトル内の異物を一括して撮影することができる。
【0130】
次に、図15(A)~(C)は、焦点深度とボケ許容量(許容錯乱円)について説明するための図である。図15(A)は、式4で表すように、センサ面217上で、異物像215iが4×4画素を占める大きさに結像された場合を示す図である。センサピクセル219のピッチはpである。撮影レンズ218は理想的なレンズで、異物を4p四方のピクセル上に結像できるものとする。
【0131】
図15(B)は、同じ異物が光軸方向に位置がずれて、センサ面217上でデフォーカスによるボケが生じた状態を表す図である。合焦の場合には1ピクセルの大きさに結像される異物の一部分が、図15(B)では隣接するピクセルまで広がり、幅3ピクセルとなった状態を示している。図中の破線は、合焦状態(A)の異物像が占めていた範囲であり、図中の斜線の領域はボケた画像の範囲を示している。異物像が占める範囲は、2倍強に広がりコントラストも低下するが、異物の有無を判別することは可能である。
【0132】
図15(C)は、更にデフォーカスによるボケが大きくなり、合焦の場合には1ピクセルの大きさに結像される異物の一部分が、図15(C)では更に隣のピクセルまで広がり、幅5ピクセルとなった場合を示している。異物像が占める範囲は、4倍に広がりコントラストも1/4に低下するが、異物の有無は判別可能である。
【0133】
ガラス片やプラスチック片など、光透過性が高いコントラストの比較的低い異物の場合は、最小錯乱円径(ボケ)が6ピクセルを上回ると検出出来なくなることがあるため、コントラスト強調や輪郭強調などの事前の画像処理を行うことが望ましい。金属片やコルク片などコントラストが比較的高い異物の場合も、最小錯乱円径(ボケ)が7ピクセルを上回ると、同様に検出に失敗する場合がある。従って、最小錯乱円径(ボケ)は7ピクセル以内となるようにし、異物検出に適した被写界深度の範囲内に収めることが望ましい。
【0134】
尚、同じ異物が丸瓶中にあり、丸瓶の側面のレンズ効果により径方向が2倍に拡大され、4×8画素を占める大きさに結像された場合には、ボケに対するコントラストの低下が緩和される。その様子を図16に示す。
【0135】
図16は、横軸をセンサピクセルの単位で表した許容錯乱円径、縦軸を合焦状態のコントラストを1として正規化して示した図である。上述のように、ガラスやプラスチック片など、コントラストの比較的低い異物像215iが4×4画素を占める例えば角瓶の場合では、最小錯乱円径が5ピクセル(コントラスト0.25相当)までは、安定して検知ができる。しかし、最小錯乱円径が6ピクセルでは、コントラストが0.2を下回り、検知に失敗する可能性がある。
【0136】
これに対し、同じ異物でも、例えば丸瓶で異物像215iが4×8画素を占める場合では、最小錯乱円径が7ピクセル(コントラスト0.23相当)までは、安定して検知ができた。しかし、最小錯乱円径が8ピクセルでは、コントラストが0.2を下回り、検知に失敗する可能性がある。
【0137】
異物像がセンサ面217上のボケ量が所定内に収まるような条件を、物体側で定義した評価量が、被写界深度である。即ち、像側で焦点深度内に入るように、物体側での異物の検出範囲、即ちボトル容器内の液体範囲が、被写界深度内に入るように撮影系を最適な条件に設定すれば良い。つまり、カメラから近いボトル側面の手前側の異物216までの距離である前方被写界深度、カメラから遠いボトル側面の奥側の異物215までの距離である後方被写界深度は、夫々式10、式11で表すことができる。
【0138】
【数10】
【数11】
【0139】
但し、δは、ボケ許容量(許容錯乱円)、Fnoは撮影レンズ218のFナンバー(絞りF値)、fは撮影レンズ218の焦点距離、D1は撮影レンズ218とボトル間の距離である。式10、式11から分かる通り、後方被写界深度は前方被写界深度よりも大きくなる。
【0140】
図17は、丸瓶のボトル容器の場合の被写界深度、焦点深度、許容錯乱円(ボケ許容量)の関係について説明するための図である。ボトルが直径2rの丸瓶の場合を考慮すると、ボトルの最もカメラから遠い位置(奥側)にある異物215の径方向は、瓶の側面の曲率により拡大される。従って、異物215は、式7により、ボトル側面の手前側の面より、2r/(2-n)の位置にあるように見える。又、ボトルの中心からは、nr/(2-n)の位置となる。カメラのセンサ面217付近では、異物215の像215iはセンサ面の手前側に結像し、センサ面上では、デフォーカスして径δまでボケる。
【0141】
ボトルの最もカメラから近い位置(手前側)にある異物216は、瓶の側面の曲率の影響を受けないので、ボトルの中心からrの位置にある。カメラのセンサ面217付近では、異物216の像216iはセンサ面の奥側に結像し、センサ面上では、デフォーカスして径δまでボケる。
【0142】
上記のδが、ボケ許容量である許容錯乱円以下であれば良い。ボトル奥側の異物215についてのボケ許容量2は、径方向が式8により、n/(2-n)倍、n=1.333ならば、2倍に拡大されているので、図16で説明したように、最小錯乱円径が7ピクセル以下であれば良い。被写界深度に換算すると、nr/(2-n)、n=1.333ならば、後方被写界深度2rに収まっていれば、ボトル奥側付近に位置する異物215を、ボケ許容量以下で検知できる。
【0143】
一方、ボトル手前側の異物216等についてのボケ許容量1は、瓶の曲率の影響は受けないので、図16で説明したように、最小錯乱円径が5ピクセル以下であれば良い。被写界深度に換算すると、前方被写界深度に収まっていれば、ボトル手前側付近に位置する異物216を、ボケ許容量以下で検知できる。即ち、ボケ許容量2はボケ許容量1の約1.4倍となる。尚、容器が前記光学系の光軸方向について半径rの曲面を有する場合、撮影パラメータとしてのレンズの焦点距離f、距離D1、絞りF値等は、前方被写界深度については、式12を満たせば良く、後方被写界深度については、式13を満たせば良い。
【0144】
【数12】
【数13】
【0145】
例えば、センササイズが1.1インチ(x=14.1mm)、センサピクセルピッチp=3.45μmのカメラと、焦点距離f=25mm、距離D1=440mmのレンズを用いて、撮像範囲を高さ方向寸法235mm×幅寸法172mmとして撮影を行う。ボトルは、ボルドー種のワインで直径2r=76mmであった。
【0146】
レンズのFnoを変化させた場合の、前方被写界深度と後方被写界深度を示し、それらが、所定の許容錯乱円、即ちボケ許容量以下の値で、ボトル内の液体範囲をカバーできれば良い。ボトル手前側に位置する異物215の場合は、半径r(38mm)以上の前方被写界深度で、許容錯乱円5p(17.25μm)以下ならば良い。ボトル奥側に位置する異物216の場合は、ボトル直径2r(76mm)以上の後方被写界深度で、許容錯乱円7p(24.15μm)以下ならば良い。
【0147】
図18は、撮影システム例1において、前方被写界深度が半径r(38mm)以上、後方被写界深度がボトル直径2r(76mm)以上となる部分を明るく表示し、それ以外をグレーで表した表1を示す図である。表1において、絞りを開いて、Fno=2.8で撮影した場合は、表中の被写界深度はいずれも、ボトル内の液体範囲をカバーできない。
【0148】
絞りを、Fno=8で撮影した場合は、許容錯乱円5p(17.25μm)で、前方被写界深度39mmとなり、ボトルの最も手前側に位置する異物まで、ボケ量を許容錯乱円以下に抑えることができる。許容錯乱円7p(24.15μm)で、後方被写界深度69mmとなり、ボトルの最も奥側に位置する異物までは、カバーできない。
【0149】
更に、Fno=9.5で撮影した場合は、許容錯乱円5p(17.25μm)で、前方被写界深度46mm、許容錯乱円7p(24.15μm)で、前方被写界深度85mmとなる。そして、ボトルの最も手前側に位置する異物から最も奥側に位置する異物まで、ボケ量を許容錯乱円以下に抑えることができる。
【0150】
上記撮影システム例では、撮影パラメータとしての絞り値をFno=9.5以上で撮影することにより、ボトルの最も手前側に位置する異物から最も奥側に位置する異物まで、ボケ量を許容錯乱円以下に抑えて撮像することができる。絞りを大きく絞ると、被写界深度は広くなるが、回折によるボケが発生し、微細な異物の検知能力が低下するので、好ましくは、絞りは、Fno=9.5~13程度に設定するのが望ましい。
【0151】
以上、撮影パラメータの最適な設定について述べてきたが、これらが通常のオートフォーカス(AF)カメラでは、困難な理由を述べる。
通常のオートフォーカス(AF)カメラでは、手前の被写体であるボトル表面(例えば、ワインエチケット等のシール、以下シールとする)に合焦してしまう。従って、ボトル内部のどこに現出するか予測不可能な、移動する極めて微細な異物に、選択的に合焦させることは不可能である。
【0152】
又、フォーカス対象となる目標物が無いボトル内部について、フォーカスエリアとすることも出来ない。絞り優先でAFを行うと、ボトル表面(シール)に合焦するが、この時、絞り込まれていれば、ボトル奥行き方向を、前述の後方被写界深度内に設定することが可能である。ピント面がボトル表面になってしまうと、前方被写界深度は、ボトル手前のボトル外となって、異物検知のためには全く使われない。
【0153】
後方被写界深度だけで、ボトル内部の異物を検知するとなると、ボトル内部に絞り込まねばならず、実質的には、回折ボケによる解像度低下や、安価なCMOSセンサを用いた場合の感度低下を考慮すると、微細な異物検知は困難である。本発明の実施例によれば、本実施形態で説明するようにフォーカスは例えば手動で調整する(マニュアルフォーカ/MFでフォーカス調整する)。そのため、合焦位置がボトル表面に取られることなく、ボトル内部を前方被写界深度、および後方被写界深度内にカバーすることができ、予測が難しい動きの微細な異物を効果的に撮像・検知することが可能である。
【0154】
動画撮影時のフレームレートは、30fpsとした。各撮影システムは、動画撮影に限らず、静止画を連続的に撮影するインターバル撮影(タイムラプス撮影)などを用いても良い。動画や連続的な静止画を利用するのは、ボトル容器の傷や汚れなどを異物と誤認しないためであり、ボトル容器の傷や汚れは同じ位置にあるが、異物は容器内を移動するので区別可能である。
【0155】
所定の撮影間隔で連続して撮影したインターバル撮影で得られた静止画(静止画ファイルの画像)より検知する場合、移動速度が所定値よりも速い異物は移動速度が遅い異物よりも撮影インターバル(間隔)が短いインターバル画像で異物検知を行う。それによって異物の動きに応じて適切に異物を捉えることが可能になる。インターバル撮影の撮影間隔はユーザーによって可変に設定可能にすることが望ましい。
【0156】
比重が容器内の液体よりも著しく大きな異物や、比重が容器内の液体よりも小さいがサイズが比較的大きい異物は、容器を傾斜させた場合に、素早く容器内を沈降、又は浮上する。その場合には、少なくとも動画撮影時のフレームレートを20fps以上、好ましくは30fps以上とすると、ある瞬間のフレームと次のフレーム等で時間方向のフレームの差異を比較することにより、確実に異物を検知することができる。フレームの比較は隣接フレームでなくてもよく、数フレームおきでもよい。
【0157】
一方、液体とほぼ同じ比重の異物や、比較的微小な異物は、液体の抵抗の影響が無視できず、液体中をゆっくりと沈降、又は浮上する。このような異物を検知するには、フレームレートを15fps以下、好ましくは10fps以下とすると、ある時点のフレームと次のフレームの差異を比較することにより、異物が一定以上の距離を移動するので、確実に異物を検知することができる。又、動画像の容量を小さく抑えることができるので、後段の画像処理やAI処理の負担を軽くすることができる。
【0158】
尚、素早く容器内を移動する異物と、ゆっくり移動する異物を同時に検知するためには、一定のレートで撮影した画像の一部を抜き出して使用しても良い。例えば、30fpsで撮影した画像で、ある時点のフレーム(N)と次のフレーム(N+1)の差異を比較する。それにより、素早く移動する異物を検知し、ある時点のNフレームと(N+3)フレームの差異を比較することにより、ゆっくり移動する異物を検知しても良い。一般的には、移動の速い異物は第Nフレームと第N+M(M=1,2,…)を比較し、移動の遅い異物は、第Nフレームと第N+L(L>M,Lは整数)を比較し、異物検知を行えば良い。
【0159】
尚、動画像はカメラ202から、クライアント端末201にRAWデータで出力される。クライアント端末201は、空間及び時間方向に圧縮した例えばavi画像ファイル形式で、周知の画像処理や、ルールベースの機械学習やディープラーニングといったAI処理を担当するワークステーション等に出力する。
【0160】
<撮影システム例3>
次に、センササイズが例えばAPS-Cサイズ(x=22.5mm)、センサピクセルピッチp=4.11μmのカメラと、焦点距離f=35mmのレンズを用いる例を説明する。尚、距離D1=440mmで、撮像範囲を高さ方向(長手方向)寸法260mm×幅寸法174mmとして撮影を行うものとする。ボトルは、ボルドータイプのワインで2r=76mmであった。
【0161】
図19は、撮影システム例3において、レンズのFnoを変化させた場合の、前方被写界深度と後方被写界深度を表した表2を示す図である。前方被写界深度と後方被写界深度が、所定の許容錯乱円、即ちボケ許容量以下の値で、ボトル内の液体範囲をカバーできれば良い。
即ち、ボトル手前側に位置する異物215の場合は、半径r(38mm)以上の前方被写界深度で、許容錯乱円5p(20.56μm)以下ならば良い。ボトル奥側に位置する異物216の場合は、ボトル直径2r(76mm)以上の後方被写界深度で、許容錯乱円7p(28.78μm)以下ならば良い。
【0162】
撮影システム例3では、撮影システム例1よりセンササイズが大きいので、被写界深度が狭くなっている様子が分かる。絞りを、Fno=13で撮影した場合は、許容錯乱円5p(20.56μm)で前方被写界深度39mmとなり、ボトルの最も手前側に位置する異物まで、ボケ量を許容錯乱円以下に抑えることができる。しかし、許容錯乱円7p(28.78μm)で後方被写界深度68mmとなり、ボトルの最も奥側に位置する異物までは、カバーできない。
【0163】
更に、Fno=19で撮影した場合は、許容錯乱円5p(20.56μm)で前方被写界深度54mm、許容錯乱円7p(24.15μm)で前方被写界深度89mmとなる。従って、ボトルの最も手前側に位置する異物から最も奥側に位置する異物まで、ボケ量を許容錯乱円以下に抑えることができる。
【0164】
上記のように、撮影システム例3では、撮影パラメータとしての絞り値をFno=19以上で撮影することにより、ボトルの最も手前側に位置する異物から最も奥側に位置する異物まで、ボケ量を許容錯乱円以下に抑えて撮像することができる。但し、これ以上絞りを大きく絞ると、被写界深度は広くなるが、回折によるボケが発生し、微細な異物の検知能力が低下する。撮影システム例1と比較で、最適な撮像条件が限定的であることが分かる。
【0165】
一方、センササイズを小さくすると、被写界深度は広くなるが、異物検知のための分解能を確保するため、センサピクセルピッチpを狭めて、センサ画素数を増やす必要がある。瓶色や液色により、近赤外光(800~2500nm)を使用する必要があるので、センサピッチが3μmを下回る場合は、近赤外光(例えば、850nm近辺)のセンサ感度が不足する。
【0166】
センサ画素数を1000万画素から2000万画素、センサピクセルピッチを3μm以上とする。すると、好適なセンササイズは、1/1.7インチ(x=7.5mm)からAPS-Cサイズ(x=22.5mm)、望ましくは2/3インチ(x=8.8mm)から4/3インチ(x=17.3mm)となる。
【0167】
更に、撮影システム例2のように、ボトルが奥行寸法2tの角瓶の場合を考慮すると、図14に示すように、ボトルの最もカメラから遠い位置(奥側)にある異物215は、式9により、ボトル手前側の面より、2t/nの位置にあるように見える。ボトル中心からは、t(2-n)/nの位置となる。ボトルの、最もカメラから近い位置(手前側)にある異物216は、ボトル中心からは、tの位置にある。カメラのピント位置をボトル中心からt(n-1)/nだけ手前側にずらせば、ピント位置を中心に、異物215、216はt/nに位置することになる。
【0168】
丸瓶の場合と同様にして、カメラのセンサ面217付近では、異物215の像215iはセンサ面の手前側に結像し、センサ面上では、デフォーカスして径δまでボケる。カメラのセンサ面217付近では、異物216の像216iはセンサ面の奥側に結像し、センサ面上では、デフォーカスして径δまでボケる。
【0169】
上記のδが、ボケ許容量である許容錯乱円以下であれば良い。ボトル奥側、及び手前側の異物215、異物216は、図16で説明したように、瓶の曲率の影響は受けないので、最小錯乱円径が5ピクセル以下であれば良い。被写界深度に換算すると、t/n、n=1.333ならば、後方被写界深度3/4tに収まっていれば、異物215、216を、ボケ許容量以下で検知できる。
【0170】
一方、ボトル手前側の異物216は、図16で説明したように、最小錯乱円径が5ピクセル以下であれば良い。即ち、容器が前記光学系の光軸方向について2tの奥行寸法を有する角瓶の場合、撮影パラメータとしてのレンズの焦点距離f、距離D1、絞りF値等は、前方被写界深度及び後方被写界深度が、式14を満たせば良い。
【0171】
【数14】
【0172】
図20は、撮影システム例2において、レンズの絞りを変化させた場合の、前方被写界深度と後方被写界深度と合わせた全体の被写界深度と許容錯乱円の関係を表した表3を示す図である。ここで、センササイズが1.1インチ(x=14.1mm)、センサピクセルピッチp=3.45μmのカメラと、焦点距離f=25mm、距離D1=430mmのレンズを用いて、撮像範囲を高さ方向寸法230mm×幅寸法168mmとして撮影を行った。ボトルは、角瓶のオリーブオイルで2t=66mmであった。
【0173】
図20において、レンズのFnoを変化させた場合の、前方被写界深度と後方被写界深度を示しており、前方被写界深度と後方被写界深度が、所定の許容錯乱円、即ちボケ許容量以下の値で、ボトル内の液体範囲をカバーできれば良い。ボトル内に位置する異物の場合は、ボトル奥行t/n(25mm)以上の前方、及び後方被写界深度で、許容錯乱円5p(17.25μm)以下ならば良い。
【0174】
表3では、前方、及び後方被写界深度がボトル奥行t/n(25mm)以上となる部分を明るく表示し、それ以外の部分をグレーで表示している。
例えば絞りを開いて、Fno=2.8で撮影した場合は、表中の被写界深度はいずれも、ボトル内の液体範囲をカバーできない。絞りを、Fno=5.6で撮影した場合は、許容錯乱円5p(17.25μm)で、前方被写界深度27mm、又、後方被写界深度31mmとなる。従ってボトルの最も手前側に位置する異物から最も奥側に位置する異物まで、ボケ量を許容錯乱円以下に抑えることができる。
【0175】
上記のように、撮影システム例3では、撮影パラメータとしての絞り値をFno=5.6以上として撮影することにより、ボトルの最も手前側に位置する異物から最も奥側に位置する異物まで、ボケ量を許容錯乱円以下に抑えて撮像することができる。絞りを大きく絞ると、被写界深度は広くなるが、回折によるボケが発生し、微細な異物の検知能力が低下するので、絞りは、Fno=5.6~13程度に設定するのが望ましい。
【0176】
尚、容器や容器内の液体の特性データはクライアント端末201内の不揮発性メモリ303又はデータ収集サーバー211等の外部のメモリに予め記憶しておくことが望ましい。上記の容器や容器内の液体の特性データは、撮影範囲の長さL、容器の曲率に関するデータ(半径r又は曲率1/半径r等)、丸瓶か角瓶か、奥行寸法t、容器の屈折率、液体の屈折率n等の少なくとも1つを含む。
【0177】
又、光学系や撮像素子の特性データも例えばカメラ202や、クライアント端末201内の不揮発性メモリ303やデータ収集サーバー211等の外部のメモリに予め記憶しておくことが望ましい。撮像素子の特性データは、例えばレンズのFno、許容錯乱円径、センササイズx、センサピクセルピッチp、焦点距離f等の少なくとも1つを含む。
【0178】
クライアント端末201は上記のような容器や容器内の液体の特性データや撮像素子の特性データを読出すことによって取得する。或いはユーザー入力されたそれらの特性データを取得する。そして、例えば図18図20に示されるようなテーブル或いは式を用いた演算によって撮影パラメータを取得し表示する。
【0179】
その際、光学系の光軸方向について、容器の内部の手前から奥までの撮影範囲が光学系の被写界深度内となるように、取得手段により取得された特性データ等に応じた撮影パラメータを取得する。尚、撮影パラメータは、前記容器と前記撮像手段の距離、前記光学系の焦点距離、及び前記光学系の絞り値の少なくとも1つを含む。
【0180】
上記の撮影システム例では、いずれもボトルの高さ方向の撮影範囲L、半径r、又は奥行寸法tに応じて、撮影パラメータ(カメラとボトルとの距離D1や焦点距離f、絞り値Fno等)をディスプレイに表示し、ユーザーが調整して設定するものとしている。しかし、これらの撮影パラメータを自動で変化させて、撮影条件を満たすようにしても良い。尚、光学系は固定焦点のレンズでも良いし焦点距離を調整可能なズームレンズでも良い。
【0181】
そして、ボトルの高さ方向の撮影範囲L、半径r、又は奥行寸法t等の特性データに応じて、ズームレンズの焦点距離fや絞りF値Fnoを自動で変化させて、撮影条件を満たすようにしても良い。即ち、撮影パラメータに応じて距離D1、焦点距離f、絞りF値Fnoの少なくとも1つを自動で調整しても良い。尚、撮影範囲Lを複数の撮影範囲に分割し、複数のカメラで夫々の分割された撮影範囲を撮影するように構成しても良い。
【0182】
次に、撮影に用いるLED照明205について、説明する。
図21(A)、(B)は、丸瓶のボトル容器を平行な照明光221で照明する場合において、異物を容器外から観察可能な範囲を説明するための図である。図21(A)は、ボトル直径2r=80mmとし、異物がボトルの中心から、外周方向に、10mm、20mm…と移動した場合を示す図である。
【0183】
図21(A)において、光を反射・屈折する異物は、異物からの反射・屈折光を瓶外部より観察できる。又、光を透過しない異物は、照明光を背景としてシルエットとして、瓶外部より観察できる。図21(A)において、前記異物からの反射・屈折光のうち、カメラ202方向へ向かう光束は、異物の位置する半径位置が丸瓶のボトルの中心から26.7mmを超えると、瓶の曲率に起因する全反射により、瓶の外部に到達しなくなる。
【0184】
又、図21(B)は、丸瓶のボトル容器を平行な照明光221で照明する場合の光束の一部が、瓶の曲面で屈折され、瓶の内部を一様に照明できないことを説明するための図である。光を透過しない異物のシルエット(背景照明)は、異物の位置する径が26.7mmを超えると、瓶の曲面で大きく屈折され、カメラ202方向からは観察しにくくなる。
【0185】
図21(B)中においては、平行光で照明された異物が存在しても、瓶の外部から観察し難くなる領域を斜線で、又、異物が照明されない領域をグレイアウトして表している。計算に用いたボトルのガラスの屈折率は1.5で、厳密には液体の屈折率1.333より若干高いが、両者の屈折率差は小さいので、両者の界面での屈折、ボトルの瓶厚などは無視し得るとした。
【0186】
図21(A)、(B)では、異物が平行光で照明された場合を考えたが、様々な角度の光束で照明された場合について説明する。
図22(A)、(B)は、丸瓶のボトル容器を拡散光で照明した場合において、異物を撮影可能な範囲を示す図である。
【0187】
異物がボトル中心から30mmの位置にある場合、異物から出て図面下方向に向かった光線は、臨界角を超えた角度でボトル測面に入射するので、外部には出られない。異物から±27.3°の角度をなして射出した光線は、89.9°の出射角でボトル外側に屈折されて出射する。
【0188】
図中領域Bには、異物から出射した光束はないが、領域A及び領域Cには、光束が存在する。そのうち、領域Cの光束は、カメラ202には到達しないが、領域Aの光束はカメラで捉えることができる。即ち、異物が観察できない死角を狭めるには、様々な光線角度で容器内部を照明すれば良いことが分かる。図22(B)は、そのための構成例を示す図であり、拡散照明光222が、ボトル内部の異物を様々な角度の光束で照明するように配置されている。
【0189】
図中のプロット〇は、異物をカメラ202で撮影可能だった位置、プロット×は撮影不能だった位置である。異物が瓶の、カメラ202から見て奥側の側方(図面の斜め上側)に位置すると、異物からの光線は、瓶の曲面で大きく屈折され、ボトル容器を挟んで照明と反対側に配置されたカメラ202には到達し難くなる。従って、斜線で示すような領域が死角となるが、平行照明の場合の図21(A)、(B)と比較すると、死角となる領域を大幅に減らすことができる。
【0190】
図23(A)、(B)は、撮影システム例1に係る撮影システムに好適な丸瓶容器を照明するための拡散光照明について説明するための図である。
図23(A)は、丸瓶容器内の異物を様々な角度の光束で照明するために、拡散光を照射するLEDパネル照明231を配置した例を示す図である。LEDパネル照明231は2次元状に配置された複数のLEDを有すると共に、複数のLEDの光束出射面に拡散板を配置している。
【0191】
又、ボトル内容物を紫外線、可視光線から保護するために、ボトル容器が着色されている場合が多いので、LEDの発光波長には、780~2500nmの、近赤外光を用いるのが好ましい。さらに、ボトル内容物が赤ワインなどの場合は、可視光の短波長側の透過率が低くなるので、光源の発光波長には600~2500nmの赤色から近赤外光を用いるのが好ましい。ボトル内容物が白ワインなどの場合は、瓶色も内容物も可視光を透過することが多いので、通常の白色照明や、安価な赤色のLED照明を用いることができる。
【0192】
波長可変型のLEDや複数波長の照明を切り替えることにより、ボトル内容物の液色や瓶色の種別に応じて、照明の波長を適宜変えることができる。より効果的に、異物を様々な角度の光束で照明するために、図23(A)に示すように、LEDパネル照明231の拡散板のボトル径方向(図23中の左右方向)の幅を、ボトル直径2r、又は奥行寸法2tよりも大きくすることが望ましい。
【0193】
即ち、拡散板の容器の径方向の幅は、容器の直径又は奥行寸法よりも大きいことが望ましく、拡散板の容器の高さ方向の長さは、容器の撮影範囲の長さよりも長いことが望ましい。
又、図23(B)に示すように、複数のLEDパネル231-1、231-2、231-3を、カメラ202と反対側に、ボトル203を取り囲むように、配置しても良い。尚、撮影システム例においては、照明手段としてのLED照明205はLEDを用いているが、他の光源を用いても良いことは言うまでもない。
【0194】
<撮影処理> 次に、図24は、上述の各撮影システム例のいずれかを用いた撮像シーケンスを示すフローチャートである。この処理は、図6のS601の処理の詳細である。尚、図24における各処理は、クライアント端末201におけるCPU301が、不揮発性メモリ303に記憶されたプログラムをメモリ302に展開して実行することにより実現される。
【0195】
ステップS2401で、クライアント端末201のCPU301は、治具筐体204の図7に示すようなカメラに正対した直立位置(正位置)にボトルがセットされたことを検知する。又、ユーザーによりセットされた容器の種類や液体の名称等を入力する。すると、ステップS2402でクライアント端末201のCPU301は、カメラ202の電源をオンし、ライブビュー状態で画像の表示が開始される。容器の種類は、容器の形状、材質、色等が含まれる。
【0196】
又、予め複数の容器や容器内の液体の特性データが記憶されたデータベースから、ユーザーが入力した容器や液体の名称等に応じた特性データを読出し取得する取得ステップが実行される。この時、光学系や撮像素子の特性データをメモリから読出して取得する取得ステップも実行され、例えば図18図20に示されるようなテーブル或いは式を用いた演算によって撮影パラメータを取得する制御ステップが実行される。そして、撮影パラメータはディスプレイに表示される。
【0197】
そして例えばユーザーが上記の撮影パラメータを調整するか、或いは自動で撮影パラメータを調整したうえで撮影を行う。それにより、光学系の光軸方向について、少なくとも容器の内部の手前から奥までの撮影範囲を光学系の被写界深度内に確実に入れて撮影することができる。
【0198】
ステップS2403でクライアント端末201のCPU301は、治具筐体204が回転開始されボトルが回転開始されたか判別するまで待機する。回転が開始されたことが判別されるとボトルは徐々に上下方向に対して傾斜される。
【0199】
この傾斜動作をトリガとして、ステップS2404でクライアント端末201のCPU301は、自動的に動画モードを開始し、容器を照明する照明ステップが開始され、照明された容器を、光学系を介して撮像するための撮像ステップが開始される。そしてカメラで撮影された動画が例えばカメラ202内の記録媒体(不図示)に記録される。ステップS2405でクライアント端末201のCPU301は、治具筐体204の傾きが所定の角度(例えばボトルの上下が逆さになる略180度)に到達したかを判別し、到達するまで動作を継続させる。
【0200】
ステップS2405で傾きが所定の角度に到達したと判別されると、ステップS2406でクライアント端末201のCPU301は、治具筐体204の回転動作を停止する。ステップS2407でクライアント端末201のCPU301は、ボトルの上下がほぼ逆さになった状態で所定時間が経過したか判別するまで待機する。ステップS2407で所定期間が経過したと判別すると、ステップS2408でクライアント端末201のCPU301は、カメラ202の動画の記録動作を停止する。
【0201】
次いでステップS2409でクライアント端末201のCPU301は、記録媒体に動画ファイルを生成し書き出す。ステップS2410でクライアント端末201のCPU301は、治具筐体204を正位置に復帰する動作を開始すると共に、正位置に復帰したか否かを判別する。ステップS2410で正位置に復帰したと判別された場合には、ステップS2411に進み、クライアント端末201のCPU301は、カメラの電源をオフにする。
【0202】
そしてステップS2412でクライアント端末201のCPU301は、検査対象のボトルが取り外されたことを受け付けて撮影動作のためのフローを終了する。又、それに伴って、ステップS2409で生成されたカメラ202内の記録媒体の動画ファイルを、クライアント端末201を介して無線通信や有線ケーブルによってデータ収集サーバー211に自動的にアップロードする。
【0203】
上述のような実施形態によれば、より高い精度で液体容器(ボトル)内の異物を検出することができる。
又、上述の実施形態では、ボトルの封入口が重力方向に対して上側の第1姿勢から、ボトルを逆さ姿勢、或いは逆さ姿勢から90度未満の角度で傾けた第2の姿勢(即ち、封入口が重力方向に対して下側となる姿勢)に変化させる。そして、その際にボトルを撮影した画像を教師データ(画像セット101)として用いている。それによって、上述したタイプ(1)とタイプ(2)の異物の判別をしやすくし、異物判別の精度を向上させることができる。
【0204】
そして、このような教師データを用いた、機械学習(学習処理)によって学習済みモデルを生成する。このように、ルールベースではなく、機械学習を用いて異物有無の判別を行うため、より精度を向上させることができる。
【0205】
更に、教師データに含める画像として、調整処理によってタイプ(2)の画像の数を十分な数とするように調整する。それによって異物判別の精度をより向上させることができる。更に、調整処理によって、タイプ(1)の画像が多くなりすぎないように調整することで、学習処理にかかる時間の長時間化を抑止し、精度の低下を抑止しつつ学習処理の時間を短縮した効率的な学習を行うことができる。
【0206】
尚、上述の実施形態では、撮影画像を学習済みモデルに入力することで、ステップS612における推定処理の結果として、異物あり、異物なし、のいずれかの情報が出力される例を説明した。しかし、これに加え、画像中における異物の位置を示す情報を出力するようにしても良い。逆に、ステップS612での推定処理の結果として、異物あり/なしいずれかの情報が出力されれば良い。従って、学習フェーズでのステップS604で学習モデルに教師データを入力するステップにおいて、教師ラベルとして異物位置は入力しないように構成しても良い。
【0207】
又、上述の実施形態では、ボトルの封入口が重力方向に対して上側の第1の姿勢から、ボトルを逆さ姿勢、或いは逆さ姿勢から90度未満の角度で傾けた第2の姿勢(即ち、封入口が重力方向に対して下側となる姿勢)に変化させた例を説明した。しかしこれに限定されない。タイプ(1)とタイプ(2)のいずれかのタイプの動きを観測できる状態で撮影ができれば良いため、第2の姿勢から第1の姿勢に変化させた際に撮影した画像を用いて異物検知を行っても良い。
【0208】
即ち、液体が入った容器の特定の部分が重力方向に対して上側となる第1の姿勢と、前記特定の部分が重力方向に対して下側となる第2の姿勢との間で容器の姿勢を変化させた際の容器を撮影して画像を取得するものであれば良い。
【0209】
又、第1の姿勢も、封入口を上にした状態に限るものではなく、要は、タイプ(1)とタイプ(2)のいずれかのタイプの異物の動きを観測できる状態の姿勢変化であれば良い。即ち、容器のうち封入口以外の別の部分に関して、重力方向に対して上側となる姿勢と、重力方向に対して下側となる姿勢の間で姿勢を変化させることによって異物の動きを撮影可能とし、その画像を用いて異物検知を行うものであれば良い。
【0210】
尚、上述の実施形態は、ワイン/ウイスキー等の酒類、ジュース/天然水等のソフトドリンク類、調味料等の飲料・食品、農薬/アルコール消毒液等の薬品、シャンプー/液体石鹸/化粧水等の衛生・美容用品等の液体入りボトルの検査に適用可能である。又、上述したような撮影システムを用いることで、容器形状及び/又は液体種別に応じた好適な撮像条件で撮影した画像を用いることができ、検査精度を向上させることが可能である。
【0211】
尚、ワインに適用する場合には、撮像条件の決定に関係する容器の特性データとして、ボルドー型、ブルゴーニュ型やシャンパン型等のボトルの形状タイプや、ボトル高さ、ボトル径又は奥行寸法、ボトルガラスの厚み等の少なくとも1つを含んでも良い。又、液体種別として、赤ワイン、白ワイン、ロゼ、発泡ワイン(スパークリングワイン)などのワイン種別を特性データとして含めても良い。尚、ワイン種別毎に教師データを分けて学習させても良く、ワインの種別毎に生成した学習済みモデルを用いて推定処理を行うことで、より精度を向上させることができる。
【0212】
このように、上述の実施形態によれば、容器形状その他の特性にかかわらず、より精度高く液体容器内の異物を検出することができる。
尚、上述の各種制御は1つのハードウェアが行っても良いし、複数のハードウェア(例えば、複数のプロセッサーや回路)が処理を分担することで、装置全体の制御を行っても良い。
【0213】
又、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。更に、上述した各実施形態は本発明の一実施形態を示すものにすぎず、各実施形態を適宜組み合わせることも可能である。
【0214】
(他の実施形態)
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムコードを読み出して実行する処理である。
【0215】
この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。コンピュータは、1又は複数のプロセッサー又は回路を有し、コンピュータ実行可能命令を読み出し実行するために、分離した複数のコンピュータ又は分離した複数のプロセッサー又は回路のネットワークを含みうる。
【0216】
プロセッサー又は回路は、中央演算処理装置(CPU)、マイクロプロセッシングユニット(MPU)、グラフィクスプロセッシングユニット(GPU)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートウェイ(FPGA)を含みうる。又、プロセッサー又は回路は、デジタルシグナルプロセッサ(DSP)、データフロープロセッサ(DFP)、又はニューラルプロセッシングユニット(NPU)を含みうる。
【符号の説明】
【0217】
202:カメラ
203:ボトル
204:治具筐体
205:LED照明
213:推定サーバー
214:回転中心
215:異物(比重大)
215i:異物215の像
216:異物(比重小)
216i:異物216の像
217:センサ面
218:撮影レンズ
219:センサピクセル
221:照明光
222:拡散照明光
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24