(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-19
(45)【発行日】2024-09-30
(54)【発明の名称】処理方法およびそれを利用した処理装置
(51)【国際特許分類】
G06T 7/00 20170101AFI20240920BHJP
G06N 3/0464 20230101ALI20240920BHJP
G06N 3/08 20230101ALI20240920BHJP
【FI】
G06T7/00 350C
G06T7/00 610
G06N3/0464
G06N3/08
(21)【出願番号】P 2022558850
(86)(22)【出願日】2021-06-25
(86)【国際出願番号】 JP2021024226
(87)【国際公開番号】W WO2022091478
(87)【国際公開日】2022-05-05
【審査請求日】2023-04-04
(31)【優先権主張番号】P 2020181068
(32)【優先日】2020-10-29
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】314012076
【氏名又は名称】パナソニックIPマネジメント株式会社
(74)【代理人】
【識別番号】100123102
【氏名又は名称】宗田 悟志
(72)【発明者】
【氏名】家治 真也
【審査官】小池 正彦
(56)【参考文献】
【文献】特開2019-067364(JP,A)
【文献】特開2019-139762(JP,A)
【文献】特開2019-125207(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
G06N 3/0464
G06N 3/08
(57)【特許請求の範囲】
【請求項1】
複数の要素を含む処理対象の画像を入力する入力部と、
前記入力部に入力した前記処理対象の画像に対して前記要素ごとにセグメンテーション
されたセグメンテーション画像を生成する第1処理部と、
前記第1処理部において生成した前記セグメンテーション画像に対してニューラルネッ
トワークの処理を実行することによって、クラス分類を実行する第2処理部と、
前記第2処理部におけるクラス分類の結果を出力する出力部と、
を備え、
前記第1処理部は、前記入力部に入力した前記処理対象の画像に対して、全結合層が除
外され、かつ畳み込み層とプーリング層とを含むニューラルネットワークの処理を実行することによって前記セグメンテーション画像を生成し、
前記第2処理部は、全結合層を含む前記ニューラルネットワークの処理を実行する処理装置。
【請求項2】
複数の要素を含む処理対象の画像を入力する入力部と、
前記入力部に入力した前記処理対象の画像に対して前記要素ごとにセグメンテーション
されたセグメンテーション画像を生成する第1処理部と、
前記第1処理部において生成した前記セグメンテーション画像に対してニューラルネッ
トワークの処理を実行することによって、クラス分類を実行する第2処理部と、
前記第2処理部におけるクラス分類の結果を出力する出力部と、を備え、
前記第1処理部において生成した前記セグメンテーション画像から一部の領域を抽出す
る中間処理部をさらに備え、
前記第2処理部は、前記セグメンテーション画像として、前記中間処理部において抽出
した前記一部の領域に対して前記ニューラルネットワークの処理を実行す
る処理装置。
【請求項3】
複数の要素を含む処理対象の画像を入力する入力部と、
前記入力部に入力した前記処理対象の画像に対して前記要素ごとにセグメンテーション
されたセグメンテーション画像を生成する第1処理部と、
前記第1処理部において生成した前記セグメンテーション画像に対してニューラルネッ
トワークの処理を実行することによって、クラス分類を実行する第2処理部と、
前記第2処理部におけるクラス分類の結果を出力する出力部と、を備え、
前記第1処理部において生成した前記セグメンテーション画像は複数の中間画像を含み、前記複数の中間画像の組合せのうちの少なくとも1つを選択する中間処理部をさらに備え、
前記第2処理部は、前記セグメンテーション画像として、前記中間処理部において選択
した少なくとも1つの前記中間画像に対して前記ニューラルネットワークの処理を実行す
る処理装置。
【請求項4】
複数の要素を含む処理対象の画像を入力する入力部と、
前記入力部に入力した前記処理対象の画像に対して前記要素ごとにセグメンテーション
されたセグメンテーション画像を生成する第1処理部と、
前記第1処理部において生成した前記セグメンテーション画像に対してニューラルネッ
トワークの処理を実行することによって、クラス分類を実行する第2処理部と、
前記第2処理部におけるクラス分類の結果を出力する出力部と、を備え、
前記第1処理部において生成した前記セグメンテーション画像は複数の中間画像を含み、前記複数の中間画像のそれぞれに対する透過率を設定するとともに、前記透過率を使用しながら前記複数の中間画像を合成した合成画像を生成する中間処理部をさらに備え、
前記第2処理部は、前記セグメンテーション画像として、前記中間処理部において生成
した前記合成画像に対して前記ニューラルネットワークの処理を実行す
る処理装置。
【請求項5】
複数の要素を含む処理対象の画像を入力し、
入力した前記処理対象の画像に対して前記要素ごとにセグメンテーションされたセグメ
ンテーション画像を生成し、
生成した前記セグメンテーション画像に対してニューラルネットワークの処理を実行す
ることによって、クラス分類を実行し、
前記クラス分類によるクラス分類結果を出力し、
前記クラス分類の実行では、セグメンテーション画像の一の要素の位置関係を含む特徴を抽出し
前記クラス分類結果は、前記一の要素の位置関係を含む特徴より良品か不良品かである処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、処理技術、特に画像に対する処理を実行する処理方法およびそれを利用した処理装置に関する。
【背景技術】
【0002】
画像認識処理には、例えば、Deep Learningが使用される。Deep Learningは、多層のニューラルネットワークを使った機械学習の方法論として知られ、多層ニューラルネットワークには例えば畳み込みニューラルネットワークが使用される。畳み込みニューラルネットワークは、局所領域の畳み込み(Convolution)とプーリング(Pooling)とを繰り返す多層のニューラルネットワークによって形成される。さらに、畳み込みニューラルネットワークを構成する全結合層を畳み込み層にする完全畳み込みニューラルネットワークの構造が提案されている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
完全畳み込みニューラルネットワークは局所領域の処理の積み重ねである。このような完全畳み込みニューラルネットワークを使用して、部品をはんだ付けした基板の外観検査をする場合、部品を固定するためのはんだであるか、不良品となるはんだホールであるかの区別が困難になる場合がある。これらの区別を可能にするために、基板上の位置関係を利用することが望まれる。
【0005】
本開示はこうした状況に鑑みなされたものであり、その目的は、画像認識処理の処理精度の悪化を抑制する技術を提供することにある。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明のある態様の処理装置は、複数の要素を含む処理対象の画像を入力する入力部と、入力部に入力した処理対象の画像に対して要素ごとにセグメンテーションされたセグメンテーション画像を生成する第1処理部と、第1処理部において生成したセグメンテーション画像に対してニューラルネットワークの処理を実行することによって、クラス分類を実行する第2処理部と、第2処理部におけるクラス分類の結果を出力する出力部と、を備える。
【0007】
本発明の別の態様は、処理方法である。この方法は、複数の要素を含む処理対象の画像を入力し、入力した処理対象の画像に対して要素ごとにセグメンテーションされたセグメンテーション画像を生成し、生成したセグメンテーション画像に対してニューラルネットワークの処理を実行することによって、クラス分類を実行し、クラス分類によるクラス分類結果を出力する。
【0008】
なお、以上の構成要素の任意の組合せ、本開示の表現を方法、装置、システム、コンピュータプログラム、またはコンピュータプログラムを記録した記録媒体などの間で変換したものもまた、本開示の態様として有効である。
【発明の効果】
【0009】
本開示によれば、画像認識処理の処理精度の悪化を抑制できる。
【図面の簡単な説明】
【0010】
【
図1】実施例1に係る処理装置の構成を示す図である。
【
図2】
図1の第1処理部における処理の概要を示す図である。
【
図3】
図3(a)-(d)は、
図1の処理装置における処理の概要を示す図である。
【
図4】
図1の処理装置による処理手順を示すシーケンス図である。
【
図5】
図1の第2処理部による処理手順を示すフローチャートである。
【
図6】
図6(a)-(d)は、実施例2に係る処理装置における処理の概要を示す図である。
【
図7】
図7(a)-(e)は、実施例2に係る処理装置における別の処理の概要を示す図である。
【
図8】
図8(a)-(e)は、実施例3に係る処理装置における処理の概要を示す図である。
【
図9】
図9(a)-(f)は、実施例3に係る処理装置における別の処理の概要を示す図である。
【発明を実施するための形態】
【0011】
(実施例1)
本開示の実施例を具体的に説明する前に、本実施例の概要を説明する。実施例は、製品を撮像した画像に対して画像認識処理を実行することによって、製品の外観検査を実行する処理装置に関する。製品の一例は、部品をはんだ付けした基板であり、外観検査の一例は、基板上のはんだが良品であるか、あるいは不良品であるかの検査である。良品のはんだとは部品を固定するためのはんだであり、不良品のはんだとははんだホールである。
【0012】
外観検査のために、畳み込みニューラルネットワークの使用が有力である。畳み込みニューラルネットワークは、複数のフィルタによる畳み込み処理により特徴を抽出する畳み込み層と、一定領域の反応をまとめるプーリング処理により局所的なデータの不変性を獲得するプーリング層と、Softmax関数等による確率を用いて認識を行う全結合層とを含む。完全畳み込みニューラルネットワークでは、畳み込み層とプーリング層の処理が繰り返され、含まれる物体に対して色塗りによるセグメンテーションがなされた画像(以下、「セグメンテーション画像」という)が出力される。処理対象の画像のサイズが大きくなると、畳み込みニューラルネットワークの処理量が著しく増加するので、完全畳み込みニューラルネットワークを使用する方が好ましい。
【0013】
しかしながら、前述のごとく、完全畳み込みニューラルネットワークは局所領域の処理の積み重ねであるので、はんだを色塗りしたセグメンテーション画像を出力するが、はんだが良品であるか不良品であるかの区別が困難になる場合がある。これらの区別を可能にするために、基板上の位置関係を利用することが望まれる。
【0014】
本実施例に係る処理装置は、処理対象の画像に対して完全畳み込みニューラルネットワークによる処理を実行して、はんだを色塗りしたセグメンテーション画像を生成する。また、処理装置は、セグメンテーション画像に対して畳み込みニューラルネットワークによる処理を実行して、はんだが良品であるかあるいは不良であるかのクラス分類の結果を取得する。畳み込みニューラルネットワークを使用することによって、基板上の位置関係が利用される。また、処理対象の画像に対して畳み込みニューラルネットワークによる処理を実行するのではなく、完全畳み込みニューラルネットワークによりセグメンテーション画像を生成してから畳み込みニューラルネットワークによる処理を実行させるので、処理量の増加が抑制される。
【0015】
図1は、処理装置100の構成を示す。処理装置100は、入力部112、第1処理部114、中間処理部116、第2処理部118、出力部120を含む。本実施例では、(1)構成、(2)学習、(3)クラス分類の順に説明する。
【0016】
(1)構成
ここでは、第1処理部114と第2処理部118の構成を説明する。
図2は、第1処理部114における処理の概要を示す。第1処理部114は、畳み込み層142と総称する第1畳み込み層142a、第2畳み込み層142b、第3畳み込み層142c、第4畳み込み層142d、第5畳み込み層142e、第6畳み込み層142f、プーリング層144と総称する第1プーリング層144a、第2プーリング層144b、第3プーリング層144c、第4プーリング層144d、第5プーリング層144eを含む。このような畳み込み層142、プーリング層144は、各処理を実行するブロックのイメージを示す。入力画像140は、処理対象となる画像である。第1処理部114におけるニューラルネットワークには、全結合層が含まれないので、入力画像140のサイズに対する制限が設けられない。入力画像140は、第1畳み込み層142aに入力される。
【0017】
各畳み込み層142は、直六面体で示される。畳み込み層142の奥行き方向と高さ方向を有する正方形の面の大きさは、畳み込み層142において処理される画像の空間次元の大きさ、つまり画像のサイズを示す。畳み込み層142は、画像に対して、画像のサイズよりも小さいサイズの空間フィルタをずらしながら空間フィルタリングを実行する。空間フィルタリングは公知の技術であるので、ここでは説明を省略するが、この空間フィルタリングが畳み込み処理に相当し、畳み込み処理によって画像の特徴量が抽出される。畳み込み層142においてパディング等が実行されてもよい。さらに、畳み込み層142は、画像に対して、複数の空間フィルタを並列に使用して、複数の空間フィルタリングを並列して実行してもよい。このような複数の空間フィルタの並列使用によって、画像が増加する。畳み込み層142において並列に使用される空間フィルタの数は、チャンネル数と呼ばれ、これは畳み込み層142の左右方向の長さによって示される。
【0018】
各プーリング層144も畳み込み層142と同様に構成される。プーリング層144は、画像内の任意の領域に含まれた複数の画素を1つの画素にまとめることによって、画像のサイズを小さくする。ここで、複数の画素を1つの画素にまとめるために、平均プーリングあるいは最大プーリングが実行される。平均プーリングでは、領域内の複数の画素値の平均値が1つの画素に対して使用され、最大プーリングでは、領域内の複数の画素値のうちの最大値が1つの画素に対して使用される。プーリング処理は、着目領域における代表値あるいは平均値の並進移動に対してロバスト性を強化するためになされる。
【0019】
ここでは、第1畳み込み層142a、第1プーリング層144a、第2畳み込み層142b、第2プーリング層144b、第3畳み込み層142c、第3プーリング層144c、第4畳み込み層142d、第4プーリング層144d、第5畳み込み層142e、第5プーリング層144e、第6畳み込み層142fが順に配置される。つまり、畳み込み処理とプーリング処理とが繰り返し実行される。また、畳み込み処理とプーリング処理とが繰り返されることによって、画像のサイズが順に小さくされ、第6プーリング層144fは、1以上のチャンネル数を有するセグメンテーション画像を出力する。
図1に戻る。
【0020】
第2処理部118は、前述の全結合層を含んだ畳み込みニューラルネットワークの構成を有する。第2処理部118は、畳み込み層とプーリング層とに加えて全結合層を含む。全結合層は、特徴量が抽出されている画像を中間処理部116から受けつける。特徴量が抽出されている画像の一例はセグメンテーション画像である。全結合層は、特徴量に基づいて、複数のクラスへの分類を実行することによって、画像を識別する。全結合層における処理には公知の技術が使用されればよいので、ここでは説明を省略するが、全結合層における分類結果が第2処理部118から出力部120に出力される。
【0021】
(2)学習
第1処理部114は、既知のセグメンテーション画像となる教師データを受けつけるとともに、受けつけた教師データに対応した学習用画像を受けつける。第1処理部114は、受けつけた教師データと、受けつけた学習用画像とをもとに、各畳み込み層142の空間フィルタの係数を学習させる。
【0022】
本実施例において、教師データのサイズは1×1の空間次元を有する。そのため、教師データは、学習用画像に含まれた物体の位置関係を有さず、1つのチャンネルに対する教師データは、セグメンテーション画像に含まれる物体の存在を示すだけである。例えば、「はんだ」のチャンネルの教師データははんだの存在を示すだけである。他のチャンネルについても同様である。つまり、1つのチャンネルに対する教師データは、1つの物体が存在するか否かだけを示せばよく、物体に対して色塗りによるセグメンテーションがなされた画像でなくてよい。
【0023】
一方、学習用画像は、画像認識処理が正確に実行された場合に教師データが出力されるような元の画像であり、そのサイズは教師データが1×1の空間次元となるように定められる。ここで、入力画像140のサイズに対する制限が設けられないので、学習用画像と入力画像140は異なったサイズでもよい。このような教師データと学習用画像を使用する状況下における空間フィルタの係数の学習自体には公知の技術が使用されればよいので、ここでは説明を省略する。
【0024】
第2処理部118は、既知の出力となる教師データと、当該教師データに対応した学習用画像を入力して、全結合層における係数、各畳み込み層の空間フィルタの係数を学習させる。学習用画像は、中間処理部116から入力される画像と同一のサイズを有しており、画像認識処理が正確に実行された場合に教師データが出力されるような元の画像である。このような学習処理には公知の技術が使用されればよい。
【0025】
(3)クラス分類
入力部112は、処理対象の画像を入力する。入力部112に入力される画像が前述の入力画像140に相当する。入力画像140の一例は、部品をはんだ付けした基板の画像であり、これは複数の要素を含む画像である。
図3(a)-(d)は、処理装置100における処理の概要を示す。
図3(a)は、入力画像140を示す。入力画像140には基板200が示されるとともに、基板200の上に、部品202と総称される第1部品202aと第2部品202bが固定用はんだ204により取り付けられる。部品202は、例えば、IC(Integrated Circuit)である。また、基板200の上にははんだホール206も配置される。固定用はんだ204は良品であり、はんだホール206は不良品である。
図3(b)-(d)は後述し、
図1に戻る。
【0026】
学習によって導出された空間フィルタの係数は、第1処理部114の畳み込み層142に設定される。第1処理部114は、入力部112に入力した入力画像140に対して、全結合層が除外され、かつ畳み込み層142とプーリング層144とを含む畳み込みニューラルネットワークの処理を実行することによって、要素ごとにセグメンテーションされたセグメンテーション画像を生成する。
図3(b)は、第1処理部114において生成されるセグメンテーション画像150を示す。ここで、第1処理部114における学習では、はんだ部分のみを抽出するようになされている。その結果、セグメンテーション画像150には、固定用はんだ214とはんだホール216が示される。固定用はんだ214は、固定用はんだ204を第1処理部114により抽出した結果であり、はんだホール216は、はんだホール206を第1処理部114により抽出した結果である。第1処理部114における処理では、固定用はんだ214とはんだホール216が良品であるかあるいは不良品であるかは分類されない。
図3(c)-(d)は後述し、
図1に戻る。
【0027】
中間処理部116は、第1処理部114と第2処理部118との間に配置され、第1処理部114と第2処理部118とのインターフェースとなる。中間処理部116は、第1処理部114からセグメンテーション画像を受けつける。例えば、中間処理部116は、受けつけたセグメンテーション画像をそのまま第2処理部118に出力する。
【0028】
第2処理部118は、中間処理部116から受けつけたセグメンテーション画像に対して、全結合層を含むニューラルネットワークの処理を実行することによって、クラス分類を実行する。
図3(c)は、良品と判定されるクラスの教師データを示し、4つの固定用はんだ214が矩形の頂点の位置に配置される。つまり、4つの固定用はんだ214の位置関係が良品のクラスとして第2処理部118に学習されている。
図3(d)は、不良品と判定されるクラスの教師データを示し、矩形の頂点の位置に配置される4つの固定用はんだ214に加えて、はんだホール216が示される。前述の位置関係の4つの固定用はんだ214とは異なるはんだホール216が存在することが不良品のクラスとして第2処理部118に学習されている。
図1に戻る。第2処理部118は、固定用はんだ214の位置関係、固定用はんだ214とはんだホール216の位置関係により、良品のクラスあるいは不良品のクラスへのクラス分類を実行する。その結果、良品であるかあるいは不良品であるかの検査がなされる。出力部120は、第2処理部118における分類結果を出力する。
【0029】
これまで、中間処理部116は、第1処理部114から受けつけたセグメンテーション画像をそのまま第2処理部118に出力している。しかしながら、中間処理部116は、セグメンテーション画像に対して何らかの処理を実行し、処理を実行したセグメンテーション画像を第2処理部118に出力してもよい。ここでは、固定用はんだ204の近傍にはんだホール206が存在する場合を不良品とする検査を想定する。その場合、入力画像140のうち、固定用はんだ204から離れた部分は、第2処理部118での処理にとって不要な部分である。
【0030】
ユーザは、処理装置100の操作部(図示せず)を操作して、入力画像140のうち検査すべき部分を選択する。検査すべき部分には、4つの固定用はんだ204が含まれる。処理装置100は、入力画像140における座標と、セグメンテーション画像150における座標との対応関係を予め記憶しており、入力画像140のうち検査すべき部分の座標を、セグメンテーション画像150の座標に変換する。
【0031】
中間処理部116は、第1処理部114において生成したセグメンテーション画像150から、変換された座標で示される一部の領域を抽出する。中間処理部116は、セグメンテーション画像150の代わりに、抽出した一部の領域を第2処理部118に出力する。第2処理部118は、セグメンテーション画像として、中間処理部116において抽出した一部の領域に対してニューラルネットワークの処理を実行する。その際、第2処理部118での学習処理において使用される教師データのサイズは、一部の領域のサイズと同一である。
【0032】
本開示における装置、システム、または方法の主体は、コンピュータを備えている。このコンピュータがプログラムを実行することによって、本開示における装置、システム、または方法の主体の機能が実現される。コンピュータは、プログラムにしたがって動作するプロセッサを主なハードウェア構成として備える。プロセッサは、プログラムを実行することによって機能を実現することができれば、その種類は問わない。プロセッサは、半導体集積回路(IC)、またはLSI(Large Scale Integration)を含む1つまたは複数の電子回路で構成される。複数の電子回路は、1つのチップに集積されてもよいし、複数のチップに設けられてもよい。複数のチップは1つの装置に集約されていてもよいし、複数の装置に備えられていてもよい。プログラムは、コンピュータが読み取り可能なROM、光ディスク、ハードディスクドライブなどの非一時的記録媒体に記録される。プログラムは、記録媒体に予め格納されていてもよいし、インターネット等を含む広域通信網を介して記録媒体に供給されてもよい。
【0033】
以上の構成による処理装置100の動作を説明する。
図4は、処理装置100による処理手順を示すシーケンス図である。入力部112は画像を取得し(S10)、画像を第1処理部114に出力する(S12)。第1処理部114は画像に対してセグメンテーションを実行し(S14)、セグメンテーション画像を第2処理部118に出力する(S16)。第2処理部118は、セグメンテーション画像に対してクラス分類処理を実行し(S18)、クラス分類結果を出力部120に出力する(S20)。出力部120はクラス分類結果を出力する(S22)。
【0034】
図5は、第2処理部118による処理手順を示すフローチャートである。第2処理部118は、セグメンテーション画像を取得する(S100)。セグメンテーション画像におけるはんだホール216の位置関係が良品クラスである場合(S102のY)、第2処理部118はセグメンテーション画像を良品クラスに分類する(S104)。セグメンテーション画像におけるはんだホール216の位置関係が良品クラスでない場合(S102のN)、第2処理部118はセグメンテーション画像を不良品クラスに分類する(S106)。
【0035】
本実施例によれば、処理対象の画像からセグメンテーション画像を生成し、セグメンテーション画像に対してニューラルネットワークの処理を実行することによってクラス分類を実行するので、画像認識処理の処理量の増加を抑制しながら、処理精度の悪化を抑制できる。また、処理対象の画像に対して、全結合層が除外された畳み込みニューラルネットワークの処理を実行し、セグメンテーション画像に対して、全結合層を含むニューラルネットワークの処理を実行するので、画像認識処理の処理量の増加を抑制できる。また、処理対象の画像に対して、全結合層が除外された畳み込みニューラルネットワークの処理を実行し、セグメンテーション画像に対して、全結合層を含むニューラルネットワークの処理を実行するので、位置関係を含めた特徴を抽出できる。また、位置関係を含めた特徴が抽出されるので、処理精度の悪化を抑制できる。また、セグメンテーション画像から一部の領域を抽出し、抽出した一部の領域に対してニューラルネットワークの処理を実行するので、画像認識処理の処理量の増加を抑制できる。また、セグメンテーション画像から一部の領域を抽出し、抽出した一部の領域に対してニューラルネットワークの処理を実行するので、処理精度の悪化を抑制できる。
【0036】
本開示の一態様の概要は、次の通りである。本開示のある態様の処理装置(100)は、複数の要素を含む処理対象の画像を入力する入力部(112)と、入力部(112)に入力した処理対象の画像に対して要素ごとにセグメンテーションされたセグメンテーション画像を生成する第1処理部(114)と、第1処理部(114)において生成したセグメンテーション画像に対してニューラルネットワークの処理を実行することによって、クラス分類を実行する第2処理部(118)と、第2処理部におけるクラス分類の結果を出力する出力部(120)と、を備える。
【0037】
第1処理部(114)は、入力部(112)に入力した処理対象の画像に対して、全結合層が除外され、かつ畳み込み層(142)とプーリング層(144)とを含むニューラルネットワークの処理を実行することによってセグメンテーション画像を生成し、第2処理部(118)は、全結合層を含むニューラルネットワークの処理を実行してもよい。
【0038】
第1処理部(114)において生成したセグメンテーション画像から一部の領域を抽出する中間処理部(116)をさらに備えてもよい。第2処理部(118)は、セグメンテーション画像として、中間処理部(116)において抽出した一部の領域に対してニューラルネットワークの処理を実行してもよい。
【0039】
本開示の別の態様は、処理方法である。この方法は、複数の要素を含む処理対象の画像を入力し、入力した処理対象の画像に対して要素ごとにセグメンテーションされたセグメンテーション画像を生成し、生成したセグメンテーション画像に対してニューラルネットワークの処理を実行することによって、クラス分類を実行し、クラス分類によるクラス分類結果を出力する。
【0040】
クラス分類の実行では、セグメンテーション画像の一の要素の位置関係を含む特徴を抽出しクラス分類結果は、一の要素の位置関係を含む特徴より良品か不良品かであってもよい。
【0041】
(実施例2)
次に、実施例2を説明する。実施例2は、実施例1と同様に、処理対象の画像に対して完全畳み込みニューラルネットワークによる処理を実行して、セグメンテーション画像を生成してから、セグメンテーション画像に対して畳み込みニューラルネットワークによる処理を実行する処理装置に関する。実施例2は、実施例1と比較して、第1処理部114と第2処理部118との間に配置される中間処理部116の処理が異なる。実施例2に係る処理装置100は、
図1と同一のタイプである。ここでは、実施例1との差異を中心に説明する。
【0042】
図1の入力部112は入力画像140を入力する。
図6(a)-(d)は、処理装置100における処理の概要を示す。
図6(a)は、入力画像140を示す。入力画像140は
図3(a)と同一である。
図6(b)-(d)は後述し、
図1に戻る。
【0043】
第1処理部114には、前述のごとく、学習が予めなされる。実施例1では、「はんだ」に対する1つのチャンネルだけが含まれていたが、実施例2では、「基板」に対するチャンネル、「部品」に対するチャンネル、「はんだ」に対するチャンネルの3つのチャンネルが含まれる。チャンネルの数は「3」に限定されない。「基板」に対するチャンネルにおける教師データは基板の存在を示すだけであり、「部品」に対するチャンネルにおける教師データは部品の存在を示すだけであり、「はんだ」に対するチャンネルにおける教師データははんだの存在を示すだけである。このような学習がなされた第1処理部114は、入力画像140に対して、全結合層が除外され、かつ畳み込み層142とプーリング層144とを含む畳み込みニューラルネットワークの処理を実行する。
【0044】
第1処理部114は、各チャンネルに対応した中間画像を含むセグメンテーション画像を生成する。
図6(b)は、「基板」に対するチャンネルに対応した基板レイヤ中間画像152を示す。基板レイヤ中間画像152には基板210が示される。基板210は、基板200を第1処理部114により抽出した結果である。
図6(c)は、「部品」に対するチャンネルに対応した部品レイヤ中間画像154を示す。部品レイヤ中間画像154には、部品212と総称される第1部品212a、第2部品212bが示される。第1部品212a、第2部品212bは、第1部品202a、第2部品202bを第1処理部114により抽出した結果である。
図6(d)は、「はんだ」に対するチャンネルに対応したはんだレイヤ中間画像156を示す。はんだレイヤ中間画像156は、
図3(b)と同一であるので、ここでは説明を省略する。基板レイヤ中間画像152、部品レイヤ中間画像154、はんだレイヤ中間画像156は中間画像と総称される。
【0045】
中間処理部116は、複数の中間画像の組合せのうちの少なくとも1つを選択する。例えば、部品レイヤ中間画像154とはんだレイヤ中間画像156とが選択される。中間処理部116は、選択した中間画像を第2処理部118に出力する。第2処理部118は、中間処理部116において選択された中間画像を入力し、選択された中間画像に対してニューラルネットワークの処理を実行する。2つ以上の中間画像が選択された場合、選択された2つ以上の中間画像は、互いに異なったチャンネルに含められて、ニューラルネットワークの処理がなされる。第2処理部118におけるクラス分類は実施例1と同一であればよいので、ここでは説明を省略する。
【0046】
以下では、入力画像140が、部品をはんだ付けした基板の画像でない例を説明する。
図7(a)-(e)は、処理装置100における別の処理の概要を示す。
図7(a)は、入力画像140を示す。入力画像140は、車両から前側方向を撮像した映像に含まれる画像であり、例えば、自動運転において使用される画像である。
図7(b)-(e)は後述し、
図1に戻る。
【0047】
第1処理部114には、前述のごとく、学習が予めなされる。ここでは、「空」に対するチャンネル、「コンクリート箇所」に対するチャンネル、「畑」に対するチャンネル、「白線」に対するチャンネルの4つのチャンネルが含まれる。チャンネルはこれらに限定されない。「空」に対するチャンネルにおける教師データは空の存在を示すだけであり、「コンクリート箇所」に対するチャンネルにおける教師データはコンクリート箇所の存在を示すだけである。また、「畑」に対するチャンネルにおける教師データは畑の存在を示すだけであり、「白線」に対するチャンネルにおける教師データは白線の存在を示すだけである。このような学習がなされた第1処理部114は、入力画像140に対して、全結合層が除外され、かつ畳み込み層142とプーリング層144とを含む畳み込みニューラルネットワークの処理を実行する。
【0048】
第1処理部114は、各チャンネルに対応した中間画像を含むセグメンテーション画像を生成する。
図7(b)は、「空」に対するチャンネルに対応した空レイヤ中間画像160であり、
図7(c)は、「コンクリート箇所」に対するチャンネルに対応したコンクリート箇所レイヤ中間画像162である。
図7(d)は、「畑」に対するチャンネルに対応した畑レイヤ中間画像164であり、
図7(e)は、「白線」に対するチャンネルに対応した白線レイヤ中間画像166である。空レイヤ中間画像160、コンクリート箇所レイヤ中間画像162、畑レイヤ中間画像164、白線レイヤ中間画像166は中間画像と総称される。
【0049】
中間処理部116は、複数の中間画像の組合せのうちの少なくとも1つを選択する。例えば、コンクリート箇所レイヤ中間画像162と白線レイヤ中間画像166とが選択される。中間処理部116は、選択した中間画像を第2処理部118に出力する。第2処理部118は、中間処理部116において選択された中間画像を入力し、選択された中間画像に対してニューラルネットワークの処理を実行する。2つ以上の中間画像が選択された場合、選択された2つ以上の中間画像は、互いに異なったチャンネルに含められて、ニューラルネットワークの処理がなされる。第2処理部118におけるクラス分類として、走行を続行しててもよいか否かが分類される。
【0050】
各要素の「位置関係」と、その結果から出力されるクラス分類は、例えば、今どこにいるかについてのクラス分離であってもよい。例えば、歩道レイヤと木のレイヤと店舗レイヤについて、それぞれが下端がほぼ同じ位置にあって隣接して並んでいる位置関係の場合、クラス分類はアーケード出力とされる。また、白線、ガードレールは検出されるが、信号レイヤがどの位置にもない場合、クラス分類は高速道路とされる。その他のクラス分離の例として、今どこにいるのか、ノイズ落とし(空レイヤの位置に白線が検出されているような場合は誤検出のノイズとして出力)、検出された歩行者の危険度が含まれてもよい。
【0051】
本実施例によれば、複数の中間画像の組合せのうちの少なくとも1つを選択し、選択した少なくとも1つの中間画像に対してニューラルネットワークの処理を実行するので、画像認識処理の処理量の増加を抑制できる。また、複数の中間画像の組合せのうちの少なくとも1つを選択し、選択した少なくとも1つの中間画像に対してニューラルネットワークの処理を実行するので、処理精度の悪化を抑制できる。
【0052】
本開示の一態様の概要は、次の通りである。第1処理部(114)において生成したセグメンテーション画像は複数の中間画像を含み、複数の中間画像の組合せのうちの少なくとも1つを選択する中間処理部(116)をさらに備えてもよい。第2処理部(118)は、セグメンテーション画像として、中間処理部(116)において選択した少なくとも1つの中間画像に対してニューラルネットワークの処理を実行してもよい。
【0053】
(実施例3)
次に、実施例3を説明する。実施例3は、これまでと同様に、処理対象の画像に対して完全畳み込みニューラルネットワークによる処理を実行して、セグメンテーション画像を生成してから、セグメンテーション画像に対して畳み込みニューラルネットワークによる処理を実行する処理装置に関する。実施例3は、実施例2と比較して、第1処理部114と第2処理部118との間に配置される中間処理部116の処理が異なる。実施例3に係る処理装置100は、
図1と同一のタイプである。ここでは、これまでとの差異を中心に説明する。
【0054】
図1の入力部112は入力画像140を入力する。
図8(a)-(e)は、処理装置100における処理の概要を示す。
図8(a)は、入力画像140を示す。入力画像140は
図3(a)、
図6(a)と同一である。
図8(b)-(e)は後述し、
図1に戻る。
【0055】
第1処理部114には、実施例2と同様に学習が予めなされる。学習がなされた第1処理部114は、入力画像140に対して、全結合層が除外され、かつ畳み込み層142とプーリング層144とを含む畳み込みニューラルネットワークの処理を実行する。第1処理部114は、各チャンネルに対応した中間画像を含むセグメンテーション画像を生成する。
図8(b)-(d)は、
図6(b)-(d)と同一である。
【0056】
中間処理部116は、複数の中間画像のそれぞれに対する透過率を設定する。透過率は、重み係数に相当し、予め設定されてる。中間処理部116は、透過率を使用しながら複数の中間画像を合成した合成画像を生成する。
図8(e)は、中間処理部116において生成される合成画像158を示す。合成画像158には、基板210、第1部品212a、第2部品212b、固定用はんだ214、はんだホール216を含む。中間処理部116は、合成画像158を第2処理部118に出力する。第2処理部118は、中間処理部116において生成した合成画像158に対してニューラルネットワークの処理を実行する。第2処理部118におけるクラス分類は実施例1と同一であればよいので、ここでは説明を省略する。
【0057】
以下では、入力画像140が、部品をはんだ付けした基板の画像でない例を説明する。
図9(a)-(f)は、処理装置100における別の処理の概要を示す。
図9(a)は、入力画像140を示す。入力画像140は、人物を撮像した画像である。
図9(b)-(f)は後述し、
図1に戻る。
【0058】
第1処理部114には、前述のごとく、学習が予めなされる。ここでは、「髪」に対するチャンネル、「目」に対するチャンネル、「口」に対するチャンネル、「耳」に対するチャンネルの4つのチャンネルが含まれる。チャンネルはこれらに限定されない。「髪」に対するチャンネルにおける教師データは髪の存在を示すだけであり、「目」に対するチャンネルにおける教師データは目の存在を示すだけである。また、「口」に対するチャンネルにおける教師データは口の存在を示すだけであり、「耳」に対するチャンネルにおける教師データは耳の存在を示すだけである。このような学習がなされた第1処理部114は、入力画像140に対して、全結合層が除外され、かつ畳み込み層142とプーリング層144とを含む畳み込みニューラルネットワークの処理を実行する。
【0059】
第1処理部114は、各チャンネルに対応した中間画像を含むセグメンテーション画像を生成する。
図9(b)は、「髪」に対するチャンネルに対応した髪レイヤ中間画像170であり、
図9(c)は、「目」に対するチャンネルに対応した目レイヤ中間画像172である。
図9(d)は、「口」に対するチャンネルに対応した口レイヤ中間画像174であり、
図9(e)は、「耳」に対するチャンネルに対応した耳レイヤ中間画像176である。髪レイヤ中間画像170、目レイヤ中間画像172、口レイヤ中間画像174、耳レイヤ中間画像176は中間画像と総称される。
【0060】
中間処理部116は、複数の中間画像のそれぞれに対する透過率を設定する。中間処理部116は、透過率を使用しながら複数の中間画像を合成した合成画像を生成する。
図9(f)は、中間処理部116において生成される合成画像178を示す。合成画像178は誇張画像ともいえる。中間処理部116は、合成画像178を第2処理部118に出力する。第2処理部118は、中間処理部116において生成した合成画像178に対してニューラルネットワークの処理を実行する。第2処理部118におけるクラス分類として、人物の判別がなされる。その際、位置関係について、各パーツ(化粧の部分も含む)の左右対称性、各パーツの位置関係が使用されてもよい。また、クラス部類として、人の状態の判断(健康か否か、感情部類、チャンネルとして化粧の構成要素(口紅、チーク、マスカラ、アイシャドウ、眉の形状)を検出した上で、お化粧の美醜判断、人認識)が含まれてもよい。
【0061】
本実施例によれば、透過率を使用しながら複数の中間画像を合成した合成画像に対してニューラルネットワークの処理を実行するので、画像認識処理の処理量の増加を抑制できる。また、透過率を使用しながら複数の中間画像を合成した合成画像に対してニューラルネットワークの処理を実行するので、処理精度の悪化を抑制できる。
【0062】
本開示の一態様の概要は、次の通りである。第1処理部(114)において生成したセグメンテーション画像は複数の中間画像を含み、複数の中間画像のそれぞれに対する透過率を設定するとともに、透過率を使用しながら複数の中間画像を合成した合成画像を生成する中間処理部(116)をさらに備えてもよい。第2処理部(118)は、セグメンテーション画像として、中間処理部(116)において生成した合成画像に対してニューラルネットワークの処理を実行してもよい。
【0063】
以上、本開示を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素あるいは各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本開示の範囲にあることは当業者に理解されるところである。
【0064】
実施例1から3における第1処理部114の構成は、複数の畳み込み層142と複数のプーリング層144とが交互に並んでいる。しかしながらこれに限らず例えば、第1処理部114は、GoogLeNet系、DenseNet系等の構成を有していてもよい。本変形例によれば、構成の自由度を向上できる。
【0065】
本実施例における第1処理部114は、全結合層が除外された畳み込みニューラルネットワーク、つまり完全畳み込みニューラルネットワークが使用される。しかしながらこれに限らず例えば、第1処理部114は、ユーザの操作を受けつけることによって、手動によりセグメンテーション画像を製造してもよい。また、第1処理部114は、ニューラルネットワーク以外の公知の画像処理によりセグメンテーション画像を製造してもよい。本変形例によれば、構成の自由度を向上できる。
【産業上の利用可能性】
【0066】
本開示によれば、画像認識処理の処理精度の悪化を抑制できる。
【符号の説明】
【0067】
100 処理装置、 112 入力部、 114 第1処理部、 116 中間処理部、 118 第2処理部、 120 出力部、 140 入力画像、 142 畳み込み層、 144 プーリング層。