JP6641195B2 - Optimization method, optimization device, program, and image processing device - Google Patents

Optimization method, optimization device, program, and image processing device Download PDF

Info

Publication number
JP6641195B2
JP6641195B2 JP2016044262A JP2016044262A JP6641195B2 JP 6641195 B2 JP6641195 B2 JP 6641195B2 JP 2016044262 A JP2016044262 A JP 2016044262A JP 2016044262 A JP2016044262 A JP 2016044262A JP 6641195 B2 JP6641195 B2 JP 6641195B2
Authority
JP
Japan
Prior art keywords
individuals
individual
evaluation value
image
image processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016044262A
Other languages
Japanese (ja)
Other versions
JP2017162069A (en
Inventor
松村 明
明 松村
古川 至
至 古川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Screen Holdings Co Ltd
Original Assignee
Screen Holdings Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Screen Holdings Co Ltd filed Critical Screen Holdings Co Ltd
Priority to JP2016044262A priority Critical patent/JP6641195B2/en
Publication of JP2017162069A publication Critical patent/JP2017162069A/en
Application granted granted Critical
Publication of JP6641195B2 publication Critical patent/JP6641195B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)

Description

本発明は、遺伝的アルゴリズムまたは遺伝的プログラミングを用いた最適化処理に関する。   The present invention relates to an optimization process using a genetic algorithm or a genetic programming.

デジタル画像を用いて外観検査等を行うシステムの構築は、画像処理に関する知識を有しない者にとっては非常に困難な作業となる。また、画像処理に関して高度な知識を有している者であっても、所望の検出結果を得るための画像処理を取得するには相当の工数が必要となる。そこで、特許文献1では、画像処理の結果として作成される結果画像が目標画像と一致するように、当該画像処理におけるパラメータの値を調整する際に、遺伝的アルゴリズムを用いる手法が開示されている。また、特許文献2では、所望の処理結果を得るための画像処理シーケンスを、遺伝的プログラミングを用いて生成する手法が開示されている。なお、非特許文献1ないし6では、高次元データに対する外れ値検出のアルゴリズムが提案されている。   Building a system for performing visual inspection and the like using digital images is a very difficult task for those who do not have knowledge of image processing. Even a person who has a high level of knowledge about image processing requires considerable man-hours to acquire image processing for obtaining a desired detection result. Therefore, Patent Document 1 discloses a method using a genetic algorithm when adjusting parameter values in the image processing so that a result image created as a result of the image processing matches a target image. . Patent Document 2 discloses a method of generating an image processing sequence for obtaining a desired processing result by using genetic programming. Non-patent Documents 1 to 6 propose algorithms for detecting outliers for high-dimensional data.

特開2008−89574号公報JP 2008-89574 A 特開2009−151371号公報JP 2009-151371 A

Hans-Peter Kriegel、外2名、"Angle-Based Outlier Detection in High-dimensional Data"、[online]、[平成28年2月19日検索]、インターネット<URL:http://www.dbs.ifi.lmu.de/Publikationen/Papers/KDD2008.pdf>Hans-Peter Kriegel, 2 others, "Angle-Based Outlier Detection in High-dimensional Data", [online], [Searched February 19, 2016], Internet <URL: http: //www.dbs.ifi .lmu.de / Publikationen / Papers / KDD2008.pdf> Charu C. Aggarwal、外1名、"Outlier Detection for High Dimensional Data"、[online]、[平成28年2月19日検索]、インターネット<URL:http://charuaggarwal.net/outl.pdf>Charu C. Aggarwal, one outsider, "Outlier Detection for High Dimensional Data", [online], [Searched February 19, 2016], Internet <URL: http://charuaggarwal.net/outl.pdf> Hans-Peter Kriegel、外3名、"Outlier Detection in Axis-Parallel Subspaces of High Dimensional Data"、[online]、[平成28年2月19日検索]、インターネット<URL:http://www.dbs.ifi.lmu.de/Publikationen/Papers/pakdd09_SOD.pdf>Hans-Peter Kriegel, 3 others, "Outlier Detection in Axis-Parallel Subspaces of High Dimensional Data", [online], [Searched February 19, 2016], Internet <URL: http: //www.dbs. ifi.lmu.de/Publikationen/Papers/pakdd09_SOD.pdf> Charles Sutton、外2名、"Feature Bagging: Preventing Weight Undertraining in Structured Discriminative Learning"、[online]、[平成28年2月19日検索]、インターネット<URL:https://people.cs.umass.edu/~mccallum/papers/ir402bags.pdf>Charles Sutton and 2 others, "Feature Bagging: Preventing Weight Undertraining in Structured Discriminative Learning", [online], [Searched February 19, 2016], Internet <URL: https://people.cs.umass.edu /~mccallum/papers/ir402bags.pdf> Fabian Keller、外2名、"HiCS: High Contrast Subspaces for Density-Based Outlier Ranking"、[online]、[平成28年2月19日検索]、インターネット<URL:http://www.ipd.uni-karlsruhe.de/~muellere/publications/ICDE2012.pdf>Fabian Keller, 2 others, "HiCS: High Contrast Subspaces for Density-Based Outlier Ranking", [online], [Search February 19, 2016], Internet <URL: http: //www.ipd.uni- karlsruhe.de/~muellere/publications/ICDE2012.pdf> Hans-Peter Kriegel、外2名、"Outlier Detection in Arbitrarily Oriented Subspaces"、[online]、[平成28年2月19日検索]、インターネット<URL:http://www.dbs.ifi.lmu.de/~zimek/publications/ICDM2012/COP.pdf>Hans-Peter Kriegel, 2 others, "Outlier Detection in Arbitrarily Oriented Subspaces", [online], [Searched February 19, 2016], Internet <URL: http://www.dbs.ifi.lmu.de /~zimek/publications/ICDM2012/COP.pdf>

ところで、遺伝的アルゴリズムまたは遺伝的プログラミングを用いた最適化処理では、次世代の個体を生成する際における突然変異や交叉のランダム性により、探索範囲を広くすることが可能となるが、評価値である適応度が極めて低い不適合な個体も発生しやすい。実際には、各個体が不適合なものであるか否かは、評価値を算出しなければ判らないため、各世代の全ての個体の評価値が算出される。したがって、最適解として推定される個体を取得するまでに、非常に長い演算時間が必要となる。   By the way, in optimization processing using a genetic algorithm or genetic programming, the randomness of mutation and crossover in generating the next generation of individuals enables the search range to be widened, but the evaluation value Unsuitable individuals with very low fitness are also likely to occur. In practice, it is necessary to calculate an evaluation value to determine whether or not each individual is inappropriate. Therefore, evaluation values for all individuals of each generation are calculated. Therefore, a very long calculation time is required until an individual estimated as the optimal solution is obtained.

本発明は上記課題に鑑みなされたものであり、遺伝的アルゴリズムまたは遺伝的プログラミングを用いた最適化処理において、最適解に至るまでの演算時間を短縮することを目的としている。   The present invention has been made in view of the above problems, and has as its object to reduce the operation time required to reach an optimal solution in an optimization process using a genetic algorithm or genetic programming.

請求項1に記載の発明は、遺伝的アルゴリズムまたは遺伝的プログラミングを用いるとともに、コンピュータを利用した最適化方法であって、a)最適化対象の複数通りの条件をそれぞれ表現する複数の個体を記憶する工程と、b)前記最適化対象に応じて定められた評価処理により、前記複数の個体のそれぞれにおける評価値を求める工程と、c)前記複数の個体のうち前記評価値が高い個体が優先的に含まれる選択、並びに、突然変異および交叉を含む遺伝的操作により、新たな複数の個体を生成する工程と、d)前記b)およびc)工程を、終了条件を満たすまで繰り返すことにより、最適解として推定される個体を取得する工程とを備え、前記d)工程が、d1)繰り返されるc)工程にて生成される個体を含む複数の教師個体のそれぞれから取得される特徴ベクトルと、前記複数の教師個体のそれぞれにおける前記評価値に基づくクラスとを用いて学習を行うことにより分類器を構築する工程と、d2)前記d1)工程の後の各c)工程にて生成される新たな複数の個体を前記分類器にて分類することにより、前記各c)工程の次のb)工程において前記評価値が求められる個体を制限する工程とを備える。   The invention according to claim 1 is an optimization method using a computer while using a genetic algorithm or a genetic programming, wherein a) a plurality of individuals expressing a plurality of conditions to be optimized are stored. B) obtaining an evaluation value for each of the plurality of individuals by an evaluation process determined according to the optimization target; and c) giving priority to the individual having the higher evaluation value among the plurality of individuals. Generating a plurality of new individuals by genetic operations including selection and mutation and crossover, and d) repeating the steps b) and c) until a termination condition is satisfied. Obtaining an individual estimated as an optimal solution, wherein the step d) is repeated for d1) the plurality of teacher individuals including the individual generated in the step c). Constructing a classifier by performing learning using the feature vector obtained from each of them and a class based on the evaluation value in each of the plurality of teacher individuals; d2) after the d1) step A step of classifying a plurality of new individuals generated in each step c) by the classifier to limit the individuals for which the evaluation values are obtained in the step b) following the step c). Prepare.

請求項2に記載の発明は、請求項1に記載の最適化方法であって、前記複数の個体が、複数通りの画像処理シーケンスをそれぞれ表現し、前記評価処理において、所定の対象画像に対して各個体が表現する画像処理シーケンスを実行することにより生成される処理済み画像と、前記対象画像から生成されるべき目標画像との一致度が求められる。   The invention according to claim 2 is the optimization method according to claim 1, wherein the plurality of individuals respectively represent a plurality of types of image processing sequences, and in the evaluation process, a predetermined target image is Thus, the degree of coincidence between the processed image generated by executing the image processing sequence represented by each individual and the target image to be generated from the target image is obtained.

請求項3に記載の発明は、請求項2に記載の最適化方法であって、前記各個体が、複数の要素が並ぶ要素配列であり、前記複数の要素が、画像処理シーケンスに含まれる複数の画像処理における複数のパラメータの値を示し、前記特徴ベクトルにおける複数の特徴量が、前記複数のパラメータの値である。   The invention according to claim 3 is the optimization method according to claim 2, wherein each individual is an element array in which a plurality of elements are arranged, and the plurality of elements are included in an image processing sequence. And a plurality of feature values in the feature vector are values of the plurality of parameters.

請求項4に記載の発明は、請求項2または3に記載の最適化方法であって、前記評価処理において、前記対象画像を含む複数の対象画像に対して前記各個体が表現する画像処理シーケンスを実行することにより生成される複数の処理済み画像と、前記複数の対象画像から生成されるべき複数の目標画像との一致度がそれぞれ求められ、前記d2)工程における前記分類器による分類結果が、前記次のb)工程において第1の個数の対象画像から前記評価値が求められるクラスと、前記第1の個数よりも少ない第2の個数の対象画像から前記評価値が求められるクラスと、前記評価値が求められないクラスとを含む。   The invention according to claim 4 is the optimization method according to claim 2 or 3, wherein, in the evaluation processing, an image processing sequence in which each individual expresses a plurality of target images including the target image. Is performed, and the degree of coincidence between the plurality of processed images generated by executing the plurality of target images and the plurality of target images to be generated from the plurality of target images is obtained. The classification result by the classifier in the step d2) is obtained. A class in which the evaluation value is obtained from a first number of target images in the next b) step, a class in which the evaluation value is obtained from a second number of target images smaller than the first number, And a class for which the evaluation value is not determined.

請求項5に記載の発明は、請求項1ないし4のいずれかに記載の最適化方法であって、前記d2)工程および前記各c)工程において、前記評価値が求められるクラスに前記分類器により分類される個体の個数が設定個体数になるまで、新たな個体の生成が繰り返される。   The invention according to claim 5 is the optimization method according to any one of claims 1 to 4, wherein in the d2) step and each of the c) steps, the classifier is assigned to a class in which the evaluation value is obtained. The generation of a new individual is repeated until the number of individuals classified by is equal to the set number of individuals.

請求項6に記載の発明は、請求項1ないし5のいずれかに記載の最適化方法であって、前記d)工程において、所定の条件が満たされる際に、前記d1)工程における分類器の構築が再度行われる。   The invention according to claim 6 is the optimization method according to any one of claims 1 to 5, wherein in step d), when a predetermined condition is satisfied, the classifier in step d1) is The construction is performed again.

請求項7に記載の発明は、遺伝的アルゴリズムまたは遺伝的プログラミングを用いた最適化装置であって、最適化対象の複数通りの条件をそれぞれ表現する複数の個体を記憶する記憶部と、前記最適化対象に応じて定められた評価処理により、前記複数の個体のそれぞれにおける評価値を求める評価値算出部と、前記複数の個体のうち前記評価値が高い個体が優先的に含まれる選択、並びに、突然変異および交叉を含む遺伝的操作により、新たな複数の個体を生成する個体生成部と、前記評価値算出部および前記個体生成部における処理を、終了条件を満たすまで繰り返すことにより、最適解として推定される個体を取得する繰返制御部とを備え、前記繰返制御部が、前記個体生成部にて生成される個体を含む複数の教師個体のそれぞれから取得される特徴ベクトルと、前記複数の教師個体のそれぞれにおける前記評価値に基づくクラスとを用いて学習を行うことにより分類器を構築する分類器構築部と、前記個体生成部にて生成される新たな複数の個体を前記分類器にて分類することにより、前記評価値算出部において前記評価値が求められる個体を制限する分類制御部とを備える。   The invention according to claim 7 is an optimization device using a genetic algorithm or a genetic programming, wherein the storage unit stores a plurality of individuals each expressing a plurality of conditions to be optimized, and By an evaluation process determined according to the object to be converted, an evaluation value calculation unit that obtains an evaluation value in each of the plurality of individuals, a selection in which the high evaluation value of the plurality of individuals is preferentially included, and , An individual generation unit that generates a plurality of new individuals by a genetic operation including mutation and crossover, and processing in the evaluation value calculation unit and the individual generation unit is repeated until an end condition is satisfied, thereby obtaining an optimal solution. A repetition control unit that obtains an individual estimated as, wherein the repetition control unit is configured to execute the repetition control unit from each of the plurality of teacher individuals including the individual generated by the individual generation unit. A classifier constructing unit that constructs a classifier by performing learning using the obtained feature vector and a class based on the evaluation value in each of the plurality of teacher individuals; A classification control unit configured to classify a plurality of new individuals with the classifier and to limit individuals for which the evaluation value is calculated in the evaluation value calculation unit.

請求項8に記載の発明は、請求項7に記載の最適化装置であって、前記複数の個体が、複数通りの画像処理シーケンスをそれぞれ表現し、前記評価処理において、所定の対象画像に対して各個体が表現する画像処理シーケンスを実行することにより生成される処理済み画像と、前記対象画像から生成されるべき目標画像との一致度が求められる。   The invention according to claim 8 is the optimization device according to claim 7, wherein the plurality of individuals respectively represent a plurality of image processing sequences, and in the evaluation processing, a predetermined target image Thus, the degree of coincidence between the processed image generated by executing the image processing sequence represented by each individual and the target image to be generated from the target image is obtained.

請求項9に記載の発明は、請求項8に記載の最適化装置であって、前記各個体が、複数の要素が並ぶ要素配列であり、前記複数の要素が、画像処理シーケンスに含まれる複数の画像処理における複数のパラメータの値を示し、前記特徴ベクトルにおける複数の特徴量が、前記複数のパラメータの値である。   The invention according to claim 9 is the optimization device according to claim 8, wherein each individual is an element array in which a plurality of elements are arranged, and the plurality of elements are included in an image processing sequence. And a plurality of feature values in the feature vector are values of the plurality of parameters.

請求項10に記載の発明は、請求項8または9に記載の最適化装置であって、前記評価処理において、前記対象画像を含む複数の対象画像に対して前記各個体が表現する画像処理シーケンスを実行することにより生成される複数の処理済み画像と、前記複数の対象画像から生成されるべき複数の目標画像との一致度がそれぞれ求められ、前記分類器による分類結果が、前記評価値算出部において第1の個数の対象画像から前記評価値が求められるクラスと、前記第1の個数よりも少ない第2の個数の対象画像から前記評価値が求められるクラスと、前記評価値が求められないクラスとを含む。   The invention according to claim 10 is the optimization device according to claim 8 or 9, wherein, in the evaluation processing, an image processing sequence in which each individual expresses a plurality of target images including the target image. Are performed, and the degrees of coincidence between the plurality of processed images generated by executing the plurality of target images and the plurality of target images to be generated from the plurality of target images are obtained. The classification result by the classifier is the evaluation value calculation. A class in which the evaluation value is obtained from a first number of target images, a class in which the evaluation value is obtained from a second number of target images smaller than the first number, and the evaluation value. Not including classes.

請求項11に記載の発明は、請求項7ないし10のいずれかに記載の最適化装置であって、前記分類器が構築された後、前記個体生成部が、前記評価値が求められるクラスに前記分類器により分類される個体の個数が設定個体数になるまで、新たな個体の生成を繰り返す。   The invention according to claim 11 is the optimization device according to any one of claims 7 to 10, wherein, after the classifier is constructed, the individual generation unit sets the class in which the evaluation value is determined. The generation of a new individual is repeated until the number of individuals classified by the classifier reaches the set number of individuals.

請求項12に記載の発明は、請求項7ないし11のいずれかに記載の最適化装置であって、所定の条件が満たされる際に、前記繰返制御部が、前記分類器構築部に分類器の構築を再度行わせる。   According to a twelfth aspect of the present invention, in the optimization apparatus according to any one of the seventh to eleventh aspects, when a predetermined condition is satisfied, the iterative control unit classifies the classifier into the classifier constructing unit. Rebuild the container again.

請求項13に記載の発明は、遺伝的アルゴリズムまたは遺伝的プログラミングを用いる最適化処理をコンピュータに行わせるプログラムであって、前記プログラムの前記コンピュータによる実行は、前記コンピュータに、a)最適化対象の複数通りの条件をそれぞれ表現する複数の個体を記憶する工程と、b)前記最適化対象に応じて定められた評価処理により、前記複数の個体のそれぞれにおける評価値を求める工程と、c)前記複数の個体のうち前記評価値が高い個体が優先的に含まれる選択、並びに、突然変異および交叉を含む遺伝的操作により、新たな複数の個体を生成する工程と、d)前記b)およびc)工程を、終了条件を満たすまで繰り返すことにより、最適解として推定される個体を取得する工程とを実行させ、前記d)工程が、d1)繰り返されるc)工程にて生成される個体を含む複数の教師個体のそれぞれから取得される特徴ベクトルと、前記複数の教師個体のそれぞれにおける前記評価値に基づくクラスとを用いて学習を行うことにより分類器を構築する工程と、d2)前記d1)工程の後の各c)工程にて生成される新たな複数の個体を前記分類器にて分類することにより、前記各c)工程の次のb)工程において前記評価値が求められる個体を制限する工程とを備える。   The invention according to claim 13 is a program for causing a computer to perform an optimization process using a genetic algorithm or a genetic programming, wherein the execution of the program by the computer causes the computer to: A step of storing a plurality of individuals each expressing a plurality of conditions; b) a step of obtaining an evaluation value for each of the plurality of individuals by an evaluation process determined according to the optimization target; Generating a plurality of new individuals by a selection in which the individuals with the higher evaluation values are preferentially included among the plurality of individuals, and a genetic operation including mutation and crossover; d) the steps b) and c) A) obtaining an individual estimated as an optimal solution by repeating the process until the termination condition is satisfied. Is learned using d1) a feature vector obtained from each of a plurality of teacher individuals including the individual generated in the step c) repeated in the step c), and a class based on the evaluation value in each of the plurality of teacher individuals. And a step d2) of classifying a plurality of new individuals generated in each step c) after the step d1) by the classifier. Limiting the individuals for which the evaluation value is determined in the step b) following the step.

請求項14に記載の発明は、画像処理装置であって、対象物を撮像した撮像画像を記憶する画像記憶部と、画像処理シーケンスを取得する請求項7ないし12のいずれかに記載の最適化装置と、前記撮像画像に対して前記画像処理シーケンスを実行する画像処理部とを備える。   According to a fourteenth aspect of the present invention, there is provided the image processing apparatus, wherein the image storage unit stores a captured image of the target object, and the image processing sequence is acquired. An image processing unit that executes the image processing sequence on the captured image.

本発明によれば、遺伝的アルゴリズムまたは遺伝的プログラミングを用いた最適化処理において、最適解に至るまでの演算時間を短縮することができる。   ADVANTAGE OF THE INVENTION According to this invention, in the optimization processing using a genetic algorithm or a genetic programming, the operation time until it reaches the optimal solution can be shortened.

検査装置の構成を示すブロック図である。FIG. 2 is a block diagram illustrating a configuration of an inspection device. コンピュータの構成を示す図である。FIG. 2 is a diagram illustrating a configuration of a computer. 画像処理取得装置の機能構成を示すブロック図である。FIG. 2 is a block diagram illustrating a functional configuration of the image processing acquisition device. 画像処理シーケンスを説明するための図である。FIG. 4 is a diagram for explaining an image processing sequence. 欠陥領域抽出用の画像処理シーケンスを取得する処理の流れを示す図である。It is a figure which shows the flow of a process which acquires the image processing sequence for defect area extraction. 比較例の処理における一致度の変化を示す図である。FIG. 14 is a diagram illustrating a change in the degree of coincidence in the processing of the comparative example. 遺伝的プログラミングにおける個体を示す図である。It is a figure showing an individual in genetic programming.

図1は、本発明の一の実施の形態に係る検査装置1の構成を示すブロック図である。検査装置1は、様々な対象物の外観を検査する装置である。検査装置1における検査の対象物として、半導体基板やガラス基板、プリント配線基板等の基板が例示される。   FIG. 1 is a block diagram showing a configuration of an inspection apparatus 1 according to one embodiment of the present invention. The inspection device 1 is a device that inspects the appearance of various objects. Examples of an object to be inspected by the inspection apparatus 1 include a substrate such as a semiconductor substrate, a glass substrate, and a printed wiring board.

検査装置1は、撮像部11と、欠陥検出部12と、コンピュータ2とを備える。欠陥検出部12は、画像記憶部13と、画像処理部14とを備える。撮像部11は、対象物を撮像して当該対象物の外観を示す撮像画像を取得する。撮像画像は、欠陥検出部12に入力され、画像記憶部13にて記憶される。画像処理部14では、コンピュータ2により取得された欠陥領域抽出用の画像処理シーケンスが設定されており、撮像画像に対して当該画像処理シーケンスが実行される。これにより、対象物が欠陥を含む場合に、撮像画像中の欠陥領域を示す画像が取得される。すなわち、対象物の欠陥が検出される。画像処理部14による処理では、後述の参照画像が利用されてもよい。検査装置1では、画像処理シーケンスを取得するコンピュータ2と、画像処理シーケンスを実行する欠陥検出部12とにより、画像処理装置が実現される。欠陥検出部12は、コンピュータ2により実現されてもよい。   The inspection device 1 includes an imaging unit 11, a defect detection unit 12, and a computer 2. The defect detection unit 12 includes an image storage unit 13 and an image processing unit 14. The imaging unit 11 captures an image of an object and acquires a captured image showing the appearance of the object. The captured image is input to the defect detection unit 12 and stored in the image storage unit 13. In the image processing unit 14, an image processing sequence for extracting a defective area acquired by the computer 2 is set, and the image processing sequence is executed on a captured image. Thus, when the target object includes a defect, an image indicating a defective area in the captured image is obtained. That is, a defect of the object is detected. In the processing by the image processing unit 14, a reference image described later may be used. In the inspection device 1, an image processing device is realized by the computer 2 that acquires the image processing sequence and the defect detection unit 12 that executes the image processing sequence. The defect detection unit 12 may be realized by the computer 2.

図2はコンピュータ2の構成を示す図である。コンピュータ2は各種演算処理を行うCPU21、基本プログラムを記憶するROM22および各種情報を記憶するRAM23を含む一般的なコンピュータシステムの構成となっている。コンピュータ2は、情報記憶を行う固定ディスク24、画像等の各種情報の表示を行うディスプレイ25、操作者からの入力を受け付けるキーボード26aおよびマウス26b(以下、「入力部26」と総称する。)、光ディスク、磁気ディスク、光磁気ディスク等のコンピュータ読み取り可能な記録媒体91から情報の読み取りを行ったり記録媒体91に情報の書き込みを行う読取/書込装置27、並びに、外部と通信を行う通信部28をさらに含む。   FIG. 2 is a diagram illustrating a configuration of the computer 2. The computer 2 has a general computer system configuration including a CPU 21 for performing various arithmetic processes, a ROM 22 for storing basic programs, and a RAM 23 for storing various information. The computer 2 includes a fixed disk 24 for storing information, a display 25 for displaying various information such as images, a keyboard 26a and a mouse 26b for receiving input from an operator (hereinafter, collectively referred to as an "input unit 26"). A read / write device 27 that reads information from and writes information to a computer-readable recording medium 91 such as an optical disk, a magnetic disk, and a magneto-optical disk, and a communication unit 28 that communicates with the outside. Further included.

コンピュータ2では、事前に読取/書込装置27を介して記録媒体91からプログラム92が読み出されて固定ディスク24に記憶されている。CPU21は、プログラム92に従ってRAM23や固定ディスク24を利用しつつ演算処理を実行する。これにより、後述の画像処理取得装置の機能が実現される。   In the computer 2, the program 92 is read in advance from the recording medium 91 via the read / write device 27 and stored in the fixed disk 24. The CPU 21 executes arithmetic processing according to the program 92 while using the RAM 23 and the fixed disk 24. Thereby, the function of the image processing acquisition device described later is realized.

図3は、コンピュータ2が実現する画像処理取得装置20の機能構成を示すブロック図である。画像処理取得装置20は、演算部31と、記憶部32とを備える。演算部31は、個体生成部311と、個体記憶部312と、評価値算出部313と、繰返制御部314とを備える。繰返制御部314は、分類制御部315と、分類器構築部316とを備える。演算部31の処理の詳細については後述する。なお、演算部31の機能は専用の電気回路により構築されてもよく、部分的に専用の電気回路が利用されてもよい。   FIG. 3 is a block diagram illustrating a functional configuration of the image processing acquisition device 20 realized by the computer 2. The image processing acquisition device 20 includes a calculation unit 31 and a storage unit 32. The calculation unit 31 includes an individual generation unit 311, an individual storage unit 312, an evaluation value calculation unit 313, and a repetition control unit 314. The repetition control unit 314 includes a classification control unit 315 and a classifier construction unit 316. Details of the processing of the arithmetic unit 31 will be described later. The function of the arithmetic unit 31 may be constructed by a dedicated electric circuit, or a dedicated electric circuit may be partially used.

記憶部32は、複数の画像データセット40を記憶する。各画像データセット40は、対象画像データ41と、参照画像データ42と、目標画像データ43とを含む。対象画像データ41は対象画像を示し、参照画像データ42は参照画像を示し、目標画像データ43は目標画像を示す。   The storage unit 32 stores a plurality of image data sets 40. Each image data set 40 includes target image data 41, reference image data 42, and target image data 43. The target image data 41 indicates a target image, the reference image data 42 indicates a reference image, and the target image data 43 indicates a target image.

対象画像は、対象物上の欠陥、および、その周囲を示す画像であり、例えば、撮像部11により取得される。参照画像は、欠陥が存在しない対象物を示す画像である。参照画像は、対象画像と同じ領域を示す。目標画像は、対象画像における欠陥領域のみを示す画像である。目標画像は、例えば、操作者が、対象画像における非欠陥領域を塗りつぶす作業を行うことにより、予め生成されて準備される。もちろん、目標画像は他の手法により生成されてよい。対象画像、参照画像および目標画像は、多階調画像または二値画像のいずれであってもよい(後述の処理済み画像において同様)。複数の画像データセット40は、欠陥の種類や撮像条件等が互いに異なる対象画像を含む。   The target image is an image indicating a defect on the target object and its surroundings, and is acquired by, for example, the imaging unit 11. The reference image is an image indicating an object having no defect. The reference image indicates the same area as the target image. The target image is an image showing only a defective area in the target image. The target image is generated and prepared in advance, for example, by the operator performing an operation of painting a non-defective area in the target image. Of course, the target image may be generated by another method. The target image, the reference image, and the target image may be any of a multi-tone image or a binary image (the same applies to a processed image described later). The plurality of image data sets 40 include target images having different types of defects, different imaging conditions, and the like.

画像処理取得装置20では、選択された複数の画像処理を決められた順序にて画像に対して実行する処理を画像処理シーケンスとして、各対象画像を同じ画像データセット40に含まれる目標画像に近似させる画像処理シーケンスが取得される。すなわち、欠陥領域を抽出対象領域として、欠陥領域抽出用の画像処理シーケンスが取得される。また、当該画像処理シーケンスの取得では、遺伝的アルゴリズムを用いた後述の最適化処理が利用される。画像処理取得装置20は、欠陥領域抽出用の画像処理シーケンスを最適化対象として最適化処理を行う最適化装置である。   In the image processing acquisition device 20, each target image is approximated to a target image included in the same image data set 40 by performing a process of executing a plurality of selected image processes on the images in a predetermined order as an image processing sequence. An image processing sequence to be performed is obtained. That is, an image processing sequence for extracting a defective area is acquired with the defective area as the extraction target area. The acquisition of the image processing sequence uses an optimization process described below using a genetic algorithm. The image processing acquisition device 20 is an optimization device that performs an optimization process with an image processing sequence for defect area extraction as an optimization target.

図4は、画像処理シーケンス5を説明するための図である。画像処理取得装置20では、例えば、図4の下段に示す要素配列6にて画像処理シーケンス5が表現されており、図4の上段は、当該要素配列6が示す画像処理シーケンス5の構造を抽象的に示している。   FIG. 4 is a diagram for explaining the image processing sequence 5. In the image processing acquisition device 20, for example, the image processing sequence 5 is represented by the element array 6 shown in the lower part of FIG. 4, and the upper part of FIG. 4 abstracts the structure of the image processing sequence 5 shown by the element array 6. Is shown.

画像処理シーケンス5は、順次実行される複数の画像処理を含み、図4の上段では、当該複数の画像処理において最初に実行される第1画像処理51aと、2番目に実行される第2画像処理51bとを示している。画像処理シーケンス5では、他の画像処理が含まれてよい。画像処理シーケンス5には、対象画像データ41が入力され、対象画像に対して第1画像処理51aが施される。続いて、第1画像処理51aが施された画像に対して第2画像処理51bが施される。このようにして、画像処理シーケンス5に含まれる複数の画像処理が順次実行され、最後の画像処理の処理結果が処理済み画像データ44として出力される。処理済み画像データ44は処理済み画像を示す。   The image processing sequence 5 includes a plurality of image processes sequentially executed. In the upper part of FIG. 4, a first image process 51a executed first in the plurality of image processes and a second image executed second in the plurality of image processes Processing 51b is shown. The image processing sequence 5 may include other image processing. In the image processing sequence 5, the target image data 41 is input, and the first image processing 51a is performed on the target image. Subsequently, the second image processing 51b is performed on the image on which the first image processing 51a has been performed. In this way, a plurality of image processes included in the image processing sequence 5 are sequentially executed, and the processing result of the last image processing is output as the processed image data 44. The processed image data 44 indicates a processed image.

画像処理シーケンス5を表現する要素配列6は、遺伝的アルゴリズムにおける個体である。図4の下段に示すように、要素配列6では、それぞれが値を収容する複数の要素600が一列に並ぶ。複数の要素600には、例えば昇順の要素番号が付されている。要素配列6は、第1画像処理部61aと、第2画像処理部61bとを含む。第1および第2画像処理部61a,61bは、画像処理シーケンス5における第1および第2画像処理51a,51bにそれぞれ対応する。各画像処理部61a,61bは、少なくとも1つの要素600の集合である。図4の下段では、各画像処理部61a,61bに含まれる要素600を太い破線の矩形にて囲む。第1画像処理部61aの複数の要素600は、第1画像処理51aにおける複数のパラメータの値をそれぞれ示す。第2画像処理部61bの複数の要素600は、第2画像処理51bにおける複数のパラメータの値をそれぞれ示す。各画像処理51a,51bにおけるパラメータは、例えば、当該画像処理に用いられる各種フィルタ(ノイズ除去フィルタ等)のサイズや処理の強弱の度合い、あるいは、二値化処理における閾値等である。   The element array 6 representing the image processing sequence 5 is an individual in the genetic algorithm. As shown in the lower part of FIG. 4, in the element array 6, a plurality of elements 600 each containing a value are arranged in a line. The plurality of elements 600 are assigned, for example, element numbers in ascending order. The element array 6 includes a first image processing unit 61a and a second image processing unit 61b. The first and second image processing units 61a and 61b correspond to the first and second image processing 51a and 51b in the image processing sequence 5, respectively. Each of the image processing units 61a and 61b is a set of at least one element 600. In the lower part of FIG. 4, the element 600 included in each of the image processing units 61a and 61b is surrounded by a thick broken-line rectangle. A plurality of elements 600 of the first image processing unit 61a indicate values of a plurality of parameters in the first image processing 51a. A plurality of elements 600 of the second image processing unit 61b indicate values of a plurality of parameters in the second image processing 51b. The parameters in each of the image processing 51a and 51b are, for example, the size of various filters (such as a noise removal filter) used in the image processing, the strength of the processing, or a threshold in the binarization processing.

対象画像に対する画像処理シーケンスの実行(処理済み画像の取得)では、対象画像のみならず、他の画像が利用されてよい。例えば、一の画像処理が、対象画像と参照画像との差分画像を取得して二値化する処理である場合には、対象画像および参照画像を用いて当該処理が行われる。また、一の画像処理が、一のフィルタ処理を施した対象画像と、他の一のフィルタ処理を施した参照画像との差分画像を取得して二値化する処理である場合には、当該画像処理は、対象画像および参照画像に対する並列した処理を含む。さらに、一の画像処理と他の画像処理とが並列して実行され、両画像処理にて取得される2つの画像を用いて、さらに他の画像処理が行われてもよい。   In executing the image processing sequence for the target image (obtaining the processed image), not only the target image but also other images may be used. For example, when one image process is a process of acquiring a difference image between a target image and a reference image and binarizing the difference image, the process is performed using the target image and the reference image. Further, when one image process is a process of acquiring a difference image between the target image subjected to one filter process and the reference image subjected to another one filter process and binarizing the difference image, The image processing includes parallel processing on the target image and the reference image. Furthermore, one image process and another image process may be performed in parallel, and another image process may be performed using two images acquired by both image processes.

図5は、画像処理取得装置20が、欠陥領域抽出用の画像処理シーケンスを取得する処理の流れを示す図である。画像処理シーケンスの取得では、まず、複数の画像データセット40が準備され、画像処理取得装置20に入力される。複数の画像データセット40は、記憶部32にて記憶される。また、入力部26を介した操作者の入力に基づいて、複数通りの画像処理シーケンスをそれぞれ表現する複数の要素配列6が生成され、個体記憶部312に記憶される(ステップS11)。複数の要素配列6は互いに相違しており、複数通りの条件の画像処理シーケンスを示す。既述のように、要素配列6は、遺伝的アルゴリズムにおける個体であり、以下、「個体6」と呼ぶ。   FIG. 5 is a diagram illustrating a flow of a process in which the image processing acquisition device 20 acquires an image processing sequence for extracting a defective area. In obtaining an image processing sequence, first, a plurality of image data sets 40 are prepared and input to the image processing obtaining device 20. The plurality of image data sets 40 are stored in the storage unit 32. Further, based on the input of the operator via the input unit 26, a plurality of element arrays 6 respectively representing a plurality of types of image processing sequences are generated and stored in the individual storage unit 312 (step S11). The plurality of element arrays 6 are different from each other, and indicate an image processing sequence under a plurality of conditions. As described above, the element array 6 is an individual in the genetic algorithm, and is hereinafter referred to as “individual 6”.

複数の個体6では、要素600の個数は同じである。複数の個体6において、同じ要素番号の要素600は、画像処理シーケンス5の同じ画像処理のパラメータに対応し、当該パラメータの値を示す要素600の値は原則として相違する。当該複数の個体6は、遺伝的アルゴリズムにおける初期世代に属する。以下、ステップS11にて準備される個体6の個数を「設定個体数」という。本処理例では、設定個体数は2以上である。ステップS11では、画像処理シーケンス5の基本構造のみが操作者により決定され、個体生成部311が各要素600の値をランダムに決定することにより、初期世代の複数の個体6が準備されてもよい。なお、各画像処理のパラメータが取り得る値の範囲は予め設定される。   In the plurality of individuals 6, the number of elements 600 is the same. In the plurality of individuals 6, the elements 600 having the same element number correspond to the same image processing parameter of the image processing sequence 5, and the value of the element 600 indicating the value of the parameter differs in principle. The plurality of individuals 6 belong to the initial generation in the genetic algorithm. Hereinafter, the number of individuals 6 prepared in step S11 is referred to as “set number of individuals”. In this processing example, the set number of individuals is two or more. In step S11, only the basic structure of the image processing sequence 5 is determined by the operator, and the individual generation unit 311 randomly determines the value of each element 600, so that a plurality of individuals 6 of the initial generation may be prepared. . The range of values that can be taken by the parameters of each image processing is set in advance.

続いて、評価値算出部313では、予め定められた評価処理により、複数の個体6のそれぞれにおける評価値が求められる(ステップS12)。評価処理では、設定個体数の個体6が示す設定個体数の画像処理シーケンスのそれぞれを対象画像に対して実行することにより、当該対象画像に対して設定個体数の処理済み画像が取得される。そして、各処理済み画像と、当該対象画像から生成されるべき目標画像との一致度を示す値が求められる。一致度を示す値として、例えば、2値の処理済み画像と2値の目標画像との差分画像において、画素の値が0となる領域の面積率等が求められる。処理済み画像と目標画像との一致度を示す値は、様々な手法にて求められてよい。   Subsequently, the evaluation value calculation unit 313 obtains an evaluation value for each of the plurality of individuals 6 by a predetermined evaluation process (step S12). In the evaluation process, by executing each of the image processing sequences of the set number of individuals indicated by the set number of individuals 6 on the target image, processed images of the set number of individuals are acquired for the target image. Then, a value indicating the degree of coincidence between each processed image and a target image to be generated from the target image is obtained. As the value indicating the degree of coincidence, for example, in a difference image between the binary processed image and the binary target image, an area ratio or the like of a region where the pixel value is 0 is obtained. The value indicating the degree of coincidence between the processed image and the target image may be obtained by various methods.

既述のように、画像処理取得装置20では、複数の画像データセット40が準備されており、各個体6が示す画像処理シーケンスにより複数の処理済み画像が取得される。評価値算出部313では、各個体6を用いて取得される複数の処理済み画像における一致度を示す値の代表値が、当該個体6の評価値(適応度)として求められる。各個体6および評価値は、繰返制御部314に出力され、分類器構築部316にて記憶される。ここで、代表値は、複数の値の分布の中央近傍を示す値であり、典型的には平均値や中央値である。   As described above, in the image processing acquisition device 20, a plurality of image data sets 40 are prepared, and a plurality of processed images are acquired by the image processing sequence indicated by each individual 6. In the evaluation value calculation unit 313, a representative value of a value indicating the degree of coincidence in a plurality of processed images acquired using each individual 6 is obtained as an evaluation value (fitness) of the individual 6. Each individual 6 and the evaluation value are output to the repetition control unit 314 and stored in the classifier construction unit 316. Here, the representative value is a value indicating the vicinity of the center of the distribution of a plurality of values, and is typically an average value or a median value.

複数の個体6のそれぞれの評価値が求められると、繰返制御部314では、終了条件が満たされたか否かが確認される(ステップS13)。例えば、現世代(現時点では、初期世代)の複数の個体6における評価値のうち最大の評価値(以下、「世代評価値」という。)が、予め定められた設定値以上である場合や、世代評価値が所定数の世代の間変化しない場合、あるいは、現世代が、予め指定された世代番号である場合等に、終了条件を満たしたと判定される。現時点では、終了条件が満たされていないとものとする。   When the respective evaluation values of the plurality of individuals 6 are obtained, the repetition control unit 314 checks whether the termination condition is satisfied (step S13). For example, when the largest evaluation value (hereinafter, referred to as “generation evaluation value”) among the evaluation values of the plurality of individuals 6 of the current generation (currently, the initial generation) is equal to or greater than a predetermined setting value, When the generation evaluation value does not change for a predetermined number of generations, or when the current generation is a generation number specified in advance, it is determined that the termination condition is satisfied. At this time, it is assumed that the termination condition has not been satisfied.

また、繰返制御部314では、分類器の構築条件が満たされたか否かが確認される(ステップS14)。本処理例では、分類器を構築すべき世代(世代番号)が予め定められており、現世代が当該世代である場合に、分類器の構築条件を満たしたと判定される。現時点では、分類器の構築条件が満たされていないとものとする。   In addition, the repetition control unit 314 checks whether or not the construction condition of the classifier is satisfied (step S14). In this processing example, the generation (generation number) in which the classifier should be constructed is predetermined, and when the current generation is the generation, it is determined that the construction condition of the classifier has been satisfied. At this point, it is assumed that the construction condition of the classifier is not satisfied.

個体生成部311では、現世代と同数の(すなわち、設定個体数の)個体6が、新たな個体6として、現世代の複数の個体6から選択される(ステップS15)。新たな設定個体数の個体6は、現世代の同じ個体6を重複して含んでよい。新たな個体6の選択は、現世代の個体6の評価値に基づいて行われる。例えば、現世代の各個体6の評価値を、現世代の全ての個体6の評価値の和で割った値が、当該個体6の選択確率として求められ、選択確率が高い個体6ほど高い確率にて新たな個体6に含められる(いわゆる、ルーレット選択)。このように、ステップS15における個体6の選択では、現世代の複数の個体6のうち評価値が高い個体6が、新たな個体6に優先的に含められる。   In the individual generation unit 311, the same number of individuals 6 (that is, the set number of individuals) as the current generation are selected as new individuals 6 from the plurality of individuals 6 in the current generation (step S <b> 15). The individuals 6 of the new set number of individuals may include the same individuals 6 of the current generation redundantly. The selection of a new individual 6 is performed based on the evaluation value of the individual 6 of the current generation. For example, a value obtained by dividing the evaluation value of each individual 6 of the current generation by the sum of the evaluation values of all the individuals 6 of the current generation is obtained as the selection probability of the individual 6. Is included in a new individual 6 (so-called roulette selection). As described above, in the selection of the individual 6 in step S15, the individual 6 having the higher evaluation value among the plurality of individuals 6 of the current generation is preferentially included in the new individual 6.

続いて、新たな設定個体数の個体6に対して、遺伝的操作が行われる。具体的には、まず、新たな各個体6の要素600の突然変異が行われる(ステップS16)。例えば、各要素600に対して、予め設定された突然変異確率に従って、実際に突然変異を行うか否かが決定される。既述のように、個体6の各要素600では、当該要素600が取り得る数値範囲が予め設定されており、突然変異を行うことが決定された要素600の値が、その取り得る数値範囲内のいずれか1つの値にランダムに変更される。   Subsequently, a genetic operation is performed on the individuals 6 of the new set number of individuals. Specifically, first, mutation of the element 600 of each new individual 6 is performed (step S16). For example, whether or not to actually mutate each element 600 is determined according to a preset mutation probability. As described above, in each element 600 of the individual 6, the numerical range that the element 600 can take is set in advance, and the value of the element 600 that is determined to be mutated is within the possible numerical range. Is randomly changed to any one of

各個体6の突然変異が完了すると、2つの個体6から新たな2つの個体6を生成する交叉が行われる(ステップS17)。本処理例では、突然変異後の設定個体数の個体6において2つの個体6の複数の組合せ(ペア)が定められている。そして、2つの個体6の各組合せにおいて、交叉範囲がランダムに決定され、当該交叉範囲内の要素600を両個体6間で入れ換える交叉(二点交叉)が行われる。交叉範囲の決定では、交叉範囲がない、すなわち、交叉を行わない場合を含んでよい。交叉では、一点交叉や、一様交叉等が行われてもよい。   When the mutation of each individual 6 is completed, crossover is performed to generate two new individuals 6 from the two individuals 6 (step S17). In this processing example, a plurality of combinations (pairs) of two individuals 6 are determined in the individuals 6 of the set number of individuals after mutation. Then, in each combination of the two individuals 6, the crossover range is determined at random, and a crossover (two-point crossover) is performed in which the elements 600 in the crossover range are exchanged between the two individuals 6. The determination of the crossover range may include a case where there is no crossover range, that is, a case where no crossover is performed. In the crossover, one-point crossover, uniform crossover, or the like may be performed.

以上のようにして、評価値に基づく選択、並びに、突然変異および交叉を含む遺伝的操作により、新たな世代(現時点では、2番目の世代)に含まれる設定個体数の個体6が生成され、個体記憶部312に記憶される。新たな世代の複数の個体6の生成では、直前のステップS12の処理にて取得された評価値のうち最大の評価値の個体6が、そのまま新たな個体6に追加されるエリート保存等が行われてもよい。また、ステップS17における交叉が、ステップS16における突然変異よりも前に行われてもよい。   As described above, by the selection based on the evaluation value and the genetic operation including mutation and crossover, the set number of individuals 6 included in the new generation (currently the second generation) is generated, It is stored in the individual storage unit 312. In the generation of the plurality of individuals 6 of the new generation, elite storage or the like is performed in which the individual 6 having the largest evaluation value among the evaluation values acquired in the process of the immediately preceding step S12 is added to the new individual 6 as it is. May be. Further, the crossover in step S17 may be performed before the mutation in step S16.

新たな世代の複数の個体6が生成されると、ステップS12へと戻って、当該新たな世代の各個体6が示す画像処理シーケンスを複数の対象画像に対して実行することにより、複数の処理済み画像が取得される。そして、複数の処理済み画像と対応する複数の目標画像との一致度を示す値に基づいて、当該個体6の評価値が求められる。なお、分類器が構築されていない状態では、ステップS18はスキップされる。   When the plurality of individuals 6 of the new generation are generated, the process returns to step S12, and the image processing sequence indicated by each individual 6 of the new generation is executed on the plurality of target images, so that a plurality of processes are performed. A completed image is obtained. Then, the evaluation value of the individual 6 is obtained based on the value indicating the degree of coincidence between the plurality of processed images and the corresponding plurality of target images. In a state where no classifier has been constructed, step S18 is skipped.

繰返制御部314では、終了条件が満たされたか否か、および、分類器の構築条件が満たされたか否かが確認される(ステップS13,S14)。終了条件および分類器の構築条件が満たされていない場合、上記と同様に、個体6の選択、突然変異、および、交叉が行われ、次の世代の新たな複数の個体6が生成される(ステップS15〜S17)。そして、当該複数の個体6に対する評価処理により、当該複数の個体6の評価値が算出される(ステップS12)。このようにして、ステップS15〜S17,S12の処理が、終了条件または分類器の構築条件が満たされるまで繰り返される(ステップS13,S14)。   The repetition control unit 314 checks whether the termination condition is satisfied and whether the classifier construction condition is satisfied (steps S13 and S14). When the termination condition and the construction condition of the classifier are not satisfied, the individual 6 is selected, mutated, and crossed over in the same manner as described above, and a new plurality of individuals 6 of the next generation is generated ( Steps S15 to S17). Then, an evaluation value of the plurality of individuals 6 is calculated by the evaluation process on the plurality of individuals 6 (step S12). In this way, the processing of steps S15 to S17 and S12 is repeated until the termination condition or the classifier construction condition is satisfied (steps S13 and S14).

現世代が分類器を構築すべき世代となり、ステップS14にて分類器の構築条件が満たされたことが確認されると、分類器構築部316により分類器317が構築される(ステップS19)。分類器317の構築では、例えば、現世代までの全ての世代における全ての個体6のそれぞれが、教師個体として扱われる。すなわち、複数の教師個体は、繰り返されるステップS15〜S17により生成される複数の個体6を含む。分類器を構築すべき世代は、分類器317の構築に適した個数の個体6が揃う世代と捉えることができる。分類器を構築すべき世代は、各世代の世代評価値における、直前の世代の世代評価値からの増加率が所定の値以下となる世代等であってもよい。   When the current generation is a generation for which a classifier should be constructed, and it is confirmed in step S14 that the construction condition of the classifier is satisfied, the classifier constructing unit 316 constructs the classifier 317 (step S19). In the construction of the classifier 317, for example, all the individuals 6 in all the generations up to the current generation are treated as teacher individuals. That is, the plurality of teacher individuals include the plurality of individuals 6 generated by the repeated steps S15 to S17. The generation for which the classifier is to be constructed can be considered as a generation in which the number of individuals 6 suitable for the construction of the classifier 317 is prepared. The generation for which a classifier is to be constructed may be a generation in which the rate of increase from the generation evaluation value of the immediately preceding generation in the generation evaluation value of each generation is equal to or less than a predetermined value.

既述のように、各個体6の複数の要素600は、当該個体6が表現する画像処理シーケンスに含まれる複数の画像処理における複数のパラメータの値を示す。当該複数のパラメータの値をそれぞれ複数の特徴量として捉えることにより、各教師個体に対して複数の特徴量により規定される特徴ベクトルが取得される。また、各教師個体の評価値が記憶されており、例えば、ある値を判定閾値として、判定閾値以上の評価値を有する教師個体に「採用」のクラス(のラベル)が付与され、判定閾値未満の評価値を有する教師個体に「不採用」のクラスが付与される。すなわち、各教師個体に対して、「採用」のクラスまたは「不採用」のクラスが教示される。判定閾値は、例えば、評価値の降順で並ぶ全教師個体を所定の割合にて「採用」のクラスと「不採用」のクラスに分ける値や、全教師個体における最大の評価値の所定割合に相当する値等として決定される。もちろん、操作者により判定閾値が入力されてもよい。複数の教師個体には、操作者により予め準備された個体が含まれてもよい。   As described above, the plurality of elements 600 of each individual 6 indicate values of a plurality of parameters in a plurality of image processes included in the image processing sequence represented by the individual 6. By capturing the values of the plurality of parameters as a plurality of feature amounts, a feature vector defined by the plurality of feature amounts is obtained for each teacher individual. Also, the evaluation value of each teacher individual is stored. For example, a class of “adopted” (label) is assigned to a teacher individual having an evaluation value equal to or greater than the determination threshold with a certain value as a determination threshold, and Is assigned to the teacher individual having the evaluation value of “rejected”. In other words, the class of “adopted” or the class of “not adopted” is taught to each teacher individual. The determination threshold is, for example, a value that divides all teacher individuals arranged in descending order of evaluation values into a class of “adopted” and a class of “non-adopted” at a predetermined ratio, or a predetermined ratio of the maximum evaluation value in all teacher individuals. It is determined as a corresponding value or the like. Of course, the determination threshold may be input by the operator. The plurality of teacher individuals may include individuals prepared in advance by the operator.

分類器構築部316では、各教師個体の特徴ベクトルが、分類器317に入力される。そして、分類器317により分類されるクラスが、当該教師個体のクラスと同じになるように学習が行われる。このように、複数の教師個体の特徴ベクトルと、複数の教師個体の評価値に基づくクラスとが教師データとして使用され、分類器317が構築される。分類器の構築とは、分類器が含むパラメータに値を付与したり、構造を決定すること等により分類器を生成することを意味する。分類器317を構築する方法(学習アルゴリズム)または機構としては、例えば、線形判別分析、決定木法、ニューラルネットワーク、サポートベクターマシン(SVM)、ロジスティック回帰等が採用可能である。   In the classifier constructing unit 316, the feature vector of each teacher individual is input to the classifier 317. Then, learning is performed so that the class classified by the classifier 317 is the same as the class of the teacher individual. In this way, the classifier 317 is constructed by using the feature vectors of the plurality of teacher individuals and the classes based on the evaluation values of the plurality of teacher individuals as the teacher data. Building a classifier means generating a classifier by assigning values to parameters included in the classifier, determining the structure, or the like. As a method (learning algorithm) or mechanism for constructing the classifier 317, for example, linear discriminant analysis, a decision tree method, a neural network, a support vector machine (SVM), logistic regression, or the like can be adopted.

分類器317の構築後では、ステップS15〜S17において新たな世代の複数の個体6が生成されると、分類制御部315が、新たな世代の各個体6の特徴ベクトルを分類器317に入力することにより、当該個体6が「採用」のクラスまたは「不採用」のクラスのいずれかに分類される(ステップS18)。そして、次のステップS12では、「採用」のクラスに分類された個体6のみを用いて、複数の対象画像から複数の処理済み画像が取得され、当該個体6の評価値が算出される。「採用」のクラスに分類された個体6の評価値は、一定の値以上となることが予測される。「不採用」のクラスに分類された個体6については、処理済み画像は取得されず、評価値は算出されない。   After the classifier 317 is constructed, when a plurality of individuals 6 of a new generation are generated in steps S15 to S17, the classification control unit 315 inputs the feature vector of each individual 6 of the new generation to the classifier 317. Thereby, the individual 6 is classified into either the “adopted” class or the “non-adopted” class (step S18). Then, in the next step S12, a plurality of processed images are obtained from the plurality of target images using only the individual 6 classified into the “adopted” class, and the evaluation value of the individual 6 is calculated. It is predicted that the evaluation value of the individual 6 classified into the “adopted” class will be a certain value or more. For the individual 6 classified into the “not adopted” class, no processed image is obtained, and no evaluation value is calculated.

「採用」のクラスに分類された個体6に対する評価値の算出では、一部の対象画像のみが用いられてもよい。例えば、全ての対象画像を複数の対象画像グループに分割し、1つの対象画像グループに含まれる対象画像から評価値が算出される。評価値の算出に用いられる対象画像グループは、順次変更される、または、ランダムに選択される。各世代において、評価値の算出に用いられる一部の対象画像が全ての対象画像からランダムに抽出されてもよい。   In calculating the evaluation value for the individual 6 classified into the “adopted” class, only a part of the target images may be used. For example, all target images are divided into a plurality of target image groups, and an evaluation value is calculated from target images included in one target image group. The target image group used for calculating the evaluation value is sequentially changed or randomly selected. In each generation, some target images used for calculating the evaluation value may be randomly extracted from all target images.

以上のように、ステップS19が行われた後、ステップS15〜S17が行われる毎に、ステップS18にて新たな世代の複数の個体6を分類器317にて分類することにより、次のステップS12において評価値が求められる個体6が制限(スクリーニング)される。ステップS15〜S18,S12の処理は、終了条件が満たされるまで繰り返される(ステップS13)。このとき、現世代の個体6の評価値に基づいて新たな個体6を選択するステップS15では、評価値が求められない「不採用」のクラスに分類された個体6に対して、例えば、判定閾値よりも十分に低い一定の評価値(評価値の最小値である0を含む。)が付与される。したがって、「不採用」のクラスに分類された個体6は、実質的に淘汰される。   As described above, after the step S19 is performed, every time the steps S15 to S17 are performed, the plurality of individuals 6 of the new generation are classified by the classifier 317 in the step S18, so that the next step S12 is performed. Are restricted (screened) for which the evaluation value is required. The processes of steps S15 to S18 and S12 are repeated until the termination condition is satisfied (step S13). At this time, in step S15 of selecting a new individual 6 based on the evaluation value of the individual 6 of the current generation, for example, a judgment is made on the individual 6 classified into the “non-adopted” class for which an evaluation value is not obtained. A constant evaluation value sufficiently lower than the threshold value (including 0, which is the minimum evaluation value) is given. Therefore, the individuals 6 classified into the “non-adopted” class are substantially eliminated.

分類器317は、更新されてもよい。例えば、分類器の構築条件が、一定世代数毎の分類器の更新を含む場合、分類器317が構築された世代から当該世代数だけ世代が変わる毎に(分類器の構築条件が満たされる毎に)、繰返制御部314の制御により、ステップS19における分類器構築部316による分類器317の構築が再度行われる。分類器317の更新は、最初の分類器317が構築された後、各世代にて行われてもよい。   Classifier 317 may be updated. For example, in the case where the classifier construction condition includes updating of the classifier every fixed number of generations, every time the generation changes by the number of generations from the generation of the classifier 317 (every time the classifier construction condition is satisfied) 2), under the control of the repetition control unit 314, the classifier 317 is constructed again by the classifier construction unit 316 in step S19. Updating of the classifier 317 may be performed in each generation after the first classifier 317 is constructed.

2回目以降の分類器317の構築(更新)に用いられる複数の教師個体は、例えば、現世代までの全ての世代における全ての個体6のうち評価値が実際に算出されたものであり、「不採用」のクラスに分類された個体6は含まれない。分類器317の構築では、直近の所定数の世代における個体6のみが教師個体として用いられてもよく、この場合、教師個体の個数が比較的少なくなり、分類器317の構築に要する時間が短縮される。「不採用」のクラスに分類された個体6に対して「不採用」のクラスを付与しつつ、当該個体6(評価値が算出されない個体6)が教師個体に含められてもよい。分類器の構築条件として、世代評価値が、直前の分類器317の構築の際における世代評価値から、所定の値だけ上昇した場合等が含まれてもよい。   The plurality of teacher individuals used for the construction (update) of the second and subsequent classifiers 317 are, for example, evaluation values actually calculated for all individuals 6 in all generations up to the current generation. Individuals 6 classified into the “not adopted” class are not included. In the construction of the classifier 317, only the individuals 6 in the latest predetermined number of generations may be used as teacher individuals. In this case, the number of teacher individuals is relatively small, and the time required to construct the classifier 317 is reduced. Is done. The individual 6 (individual 6 whose evaluation value is not calculated) may be included in the teacher individual while the class of “non-adoption” is assigned to the individual 6 classified in the class of “non-adoption”. The condition for constructing the classifier may include a case where the generation evaluation value rises by a predetermined value from the generation evaluation value obtained when the immediately preceding classifier 317 was constructed.

このように、必要に応じて分類器317を更新しつつ(ステップS14,S19)、新たな世代の複数の個体6の生成(ステップS15〜S17)、当該複数の個体6の分類(ステップS18)、および、評価値の算出(ステップS12)が、終了条件が満たされるまで繰り返される(ステップS13)。ステップS13にて終了条件が満たされたことが確認されると、例えば直前のステップS12にて評価値が求められた現世代の複数の個体6のうち、評価値が最大である個体6が、欠陥領域抽出用の画像処理シーケンスを示す個体6として決定される。すなわち、遺伝的アルゴリズムを用いた本最適化処理において最適解として推定される個体6が取得される(ステップS20)。欠陥領域抽出用の画像処理シーケンスは、欠陥検出部12の画像処理部14に入力され、検査装置1における対象物の外観の検査に利用される。   As described above, while updating the classifier 317 as necessary (steps S14 and S19), generation of a plurality of individuals 6 of a new generation (steps S15 to S17), classification of the plurality of individuals 6 (step S18) , And the calculation of the evaluation value (step S12) are repeated until the termination condition is satisfied (step S13). When it is confirmed in step S13 that the termination condition is satisfied, for example, among the plurality of individuals 6 of the current generation for which the evaluation value has been obtained in the immediately preceding step S12, It is determined as an individual 6 indicating an image processing sequence for extracting a defective area. That is, the individual 6 estimated as the optimal solution in the main optimization process using the genetic algorithm is obtained (step S20). The image processing sequence for defect area extraction is input to the image processing unit 14 of the defect detection unit 12, and is used for inspection of the appearance of the object in the inspection device 1.

次に、図5の処理において分類器の構築(ステップS14,S19)、および、個体の分類(ステップS18)を省略した比較例の処理について説明する。比較例の処理では、新たな世代の複数の個体の生成(ステップS15〜S17)、および、当該複数の個体の全てに対する評価値の算出(ステップS12)が、終了条件が満たされるまで繰り返される(ステップS13)。   Next, a description will be given of the processing of the comparative example in which the construction of the classifier (steps S14 and S19) and the classification of the individual (step S18) are omitted in the processing of FIG. In the process of the comparative example, generation of a plurality of individuals of a new generation (steps S15 to S17) and calculation of evaluation values for all of the plurality of individuals (step S12) are repeated until the termination condition is satisfied (step S12). Step S13).

図6は、比較例の処理における一致度の変化を示す図である。比較例の処理では、10個の対象画像(画像データセット40)を用いており、図6では、代表的な3個の対象画像に対して求められる一致度(20個の個体による一致度のうち最大の一致度である。図6を参照する説明において、以下同様である。)を符号L1,L2,L3を付す線にて示し、10個の対象画像における一致度の平均を符号L0を付す線にて示す。図6から判るように、初期世代では一致度の向上が急激であるが、世代が上がるに従って一致度の向上は鈍くなる。実際には、数十世代に亘って一致度がほとんど変化しない場合もある。比較例の処理では、このような期間においても、全ての個体の評価値が算出され、対象画像に対して画像処理シーケンスを実行する回数が多くなる。   FIG. 6 is a diagram illustrating a change in the degree of coincidence in the processing of the comparative example. In the processing of the comparative example, ten target images (image data sets 40) are used. In FIG. 6, the matching degree (matching degree of 20 individuals) obtained for three representative target images is shown. In the description with reference to FIG. 6, the same applies to the following.), Lines L1, L2, and L3 are shown, and the average of the degrees of coincidence in the ten target images is represented by a line L0. Shown by the attached line. As can be seen from FIG. 6, the degree of coincidence is sharply improved in the initial generation, but the degree of coincidence is gradually reduced as the generation increases. Actually, the degree of coincidence hardly changes over several tens of generations in some cases. In the processing of the comparative example, even in such a period, the evaluation values of all the individuals are calculated, and the number of times of executing the image processing sequence on the target image increases.

ここで、画像処理シーケンスに含まれる典型的な画像処理は、フィルタを用いた処理であり、当該処理では、対象画像の各画素に対して当該フィルタのサイズ分の積和演算が行われる。仮に、当該フィルタのサイズが3行3列であり、対象画像のサイズが1000行1000列である場合には、(3×3)個の積和演算が(1000×1000)回繰り返される。実際には、画像処理シーケンスには複数の画像処理が含まれるため、一の対象画像に対する一回の画像処理シーケンスの実行に、ある程度の演算時間を要してしまう。仮に、当該演算時間がおよそ1秒であり、一の対象画像に関して進化の停滞から抜け出すまでに30世代を要した場合には、600秒(20[個体]×30[世代]×1[秒])の演算時間が費やされることとなる。複数の対象画像が準備される場合、演算時間はさらに増大する。   Here, typical image processing included in the image processing sequence is processing using a filter. In this processing, a product-sum operation for each pixel of the target image is performed for the size of the filter. If the size of the filter is 3 rows and 3 columns and the size of the target image is 1000 rows and 1000 columns, (3 × 3) product-sum operations are repeated (1000 × 1000) times. Actually, since the image processing sequence includes a plurality of image processes, it takes a certain amount of calculation time to execute one image processing sequence for one target image. If the calculation time is about 1 second and it takes 30 generations to escape from the stagnation of evolution for one target image, 600 seconds (20 [individual] × 30 [generation] × 1 [second] ) Calculation time is wasted. When a plurality of target images are prepared, the calculation time further increases.

一方、図3の画像処理取得装置20では、個体生成部311にて生成される個体6を含む複数の教師個体が準備されると、当該複数の教師個体のそれぞれから取得される特徴ベクトルと、当該複数の教師個体のそれぞれにおける評価値に基づくクラスとを用いて学習を行うことにより分類器317が構築される。そして、分類器317の構築後に、個体生成部311にて生成される新たな複数の個体6を当該分類器317にて分類することにより、評価値算出部313において評価値が求められる個体6が制限(限定)される。   On the other hand, in the image processing acquisition device 20 of FIG. 3, when a plurality of teacher individuals including the individuals 6 generated by the individual generation unit 311 are prepared, a feature vector acquired from each of the plurality of teacher individuals, A classifier 317 is constructed by performing learning using a class based on the evaluation value in each of the plurality of teacher individuals. Then, after constructing the classifier 317, the new plurality of individuals 6 generated by the individual generation unit 311 are classified by the classifier 317, whereby the individual 6 whose evaluation value is obtained by the evaluation value calculation unit 313 is obtained. Limited (limited).

例えば、分類器317において、クラスの分類に利用される値が、特徴ベクトルが示す数百個の特徴量と、これらの特徴量にそれぞれ対応する重み係数との積和演算にて求められる場合、一の個体6の分類では、数百個の積和演算が1回だけ行われる。したがって、分類器317による一の個体6の分類に要する演算時間は、当該個体6に対する評価値の算出(対象画像に対する画像処理シーケンスの実行)に比べて極めて短くなる。また、個体6の分類に要する演算時間は、評価値の算出に用いる対象画像のサイズや、対象画像の個数、あるいは、画像処理シーケンスの複雑さ等には依存しない。   For example, when the value used for class classification in the classifier 317 is obtained by a product-sum operation of hundreds of feature amounts indicated by the feature vectors and weighting factors respectively corresponding to these feature amounts, In the classification of one individual 6, several hundred product-sum operations are performed only once. Therefore, the calculation time required for the classification of one individual 6 by the classifier 317 is extremely shorter than the calculation of the evaluation value for the individual 6 (execution of the image processing sequence for the target image). The calculation time required for classifying the individual 6 does not depend on the size of the target image used for calculating the evaluation value, the number of target images, the complexity of the image processing sequence, or the like.

よって、評価値が求められる個体6を、分類器317を用いた分類により制限する画像処理取得装置20では、画像処理シーケンスの実行回数を少なくして、最適解に至るまでの演算時間を短縮することができる。その結果、好ましい(高精度な)欠陥領域抽出用の画像処理シーケンスを短時間にて効率よく取得することができる。当該画像処理シーケンスを用いる欠陥検出部12では、撮像画像から欠陥領域を精度よく抽出することが可能となる。   Therefore, in the image processing acquisition device 20 that limits the individual 6 for which the evaluation value is obtained by the classification using the classifier 317, the number of executions of the image processing sequence is reduced, and the calculation time until reaching the optimal solution is shortened. be able to. As a result, a preferable (highly accurate) image processing sequence for defect area extraction can be efficiently acquired in a short time. The defect detection unit 12 using the image processing sequence can accurately extract a defective area from a captured image.

また、各個体6が示す画像処理シーケンスにより複数の対象画像から複数の処理済み画像が取得され、当該複数の処理済み画像に基づいて当該個体6の評価値が求められる。これにより、様々な撮像画像に対して欠陥領域を精度よく抽出することが可能な画像処理シーケンスを安定して取得することが可能となる。なお、欠陥領域抽出用の画像処理シーケンスに求められる精度によっては、1つの対象画像のみが用いられてもよい。   Further, a plurality of processed images are obtained from the plurality of target images by the image processing sequence indicated by each individual 6, and an evaluation value of the individual 6 is obtained based on the plurality of processed images. As a result, it is possible to stably acquire an image processing sequence capable of accurately extracting a defective area from various captured images. Note that only one target image may be used depending on the accuracy required for the image processing sequence for defect area extraction.

画像処理取得装置20では、個体生成部311により生成された設定個体数の個体6において、分類器317により「不採用」のクラスに分類された個体6が存在する場合に、「不採用」の個体6に替わる新たな個体6がさらに生成されてもよい。すなわち、個体生成部311による新たな個体6の生成(ステップS15〜S17)、および、分類器317による個体6の分類(ステップS18)が、評価値が求められる「採用」のクラスに分類される個体6の個数が設定個体数になるまで繰り返される。そして、「採用」のクラスに分類される設定個体数の個体6の評価値が、評価値算出部313により算出される(ステップS12)。この場合も、「不採用」のクラスに分類された個体6に対する評価処理が実質的に省略されるため、最適解に至るまでの演算時間を短縮することができる。また、最適化処理における進化の停滞も抑制される。   In the image processing acquisition device 20, when the individuals 6 classified by the classifier 317 into the “non-adopted” class exist among the individuals 6 of the set number of individuals generated by the individual generation unit 311, the “non-adopted” A new individual 6 instead of the individual 6 may be further generated. That is, the generation of a new individual 6 by the individual generation unit 311 (Steps S15 to S17) and the classification of the individual 6 by the classifier 317 (Step S18) are classified into the “adopted” class for which an evaluation value is obtained. The process is repeated until the number of individuals 6 reaches the set number of individuals. Then, the evaluation value of the individual 6 of the set number of individuals classified into the “adopted” class is calculated by the evaluation value calculation unit 313 (step S12). Also in this case, since the evaluation process for the individual 6 classified into the “non-adopted” class is substantially omitted, the calculation time required to reach the optimal solution can be reduced. In addition, stagnation of evolution in the optimization processing is also suppressed.

次に、分類器317が個体6を3個のクラスのいずれかに分類する他の処理例について説明する。当該他の処理例では、ステップS19における分類器の構築において、第1判定閾値以上の評価値を有する教師個体に「良」のクラスが付与され、第1判定閾値未満、かつ、第1判定閾値よりも低い第2判定閾値以上の評価値を有する教師個体に「可」のクラスが付与される。また、第2判定閾値未満の評価値を有する教師個体に「不採用」のクラスが付与される。そして、分類器構築部316では、複数の教師個体の特徴ベクトルと、当該複数の教師個体の評価値に基づくクラスとを用いて学習を行うことにより、分類器317が構築される。   Next, another processing example in which the classifier 317 classifies the individual 6 into one of the three classes will be described. In the other processing example, in the construction of the classifier in step S19, a class of “good” is assigned to a teacher individual having an evaluation value equal to or greater than the first determination threshold, and is less than the first determination threshold, and A class “OK” is assigned to a teacher individual having an evaluation value equal to or higher than the second determination threshold value lower than the second determination threshold. In addition, a class of “not adopted” is assigned to a teacher individual having an evaluation value less than the second determination threshold. Then, the classifier constructing unit 316 constructs a classifier 317 by performing learning using feature vectors of the plurality of teacher individuals and classes based on the evaluation values of the plurality of teacher individuals.

ステップS18では、新たな世代の各個体6が、分類器317により「良」のクラス、「可」のクラス、または、「不採用」のクラスのいずれかに分類される。次のステップS12では、「不採用」のクラスに分類された個体6については、処理済み画像は取得されず、評価値は算出されない。一方、「可」のクラスに分類された個体6については、記憶部32に記憶される複数の対象画像のうち、予め定められた第1の個数の対象画像(例えば、全ての対象画像)を用いて第1の個数の処理済み画像が取得される。そして、これらの処理済み画像における一致度を示す値の代表値が、当該個体6の評価値として算出される。また、「良」のクラスに分類された個体6については、複数の対象画像のうち、第1の個数よりも少ない第2の個数の対象画像(例えば、半分の対象画像)を用いて第2の個数の処理済み画像が取得される。そして、これらの処理済み画像における一致度を示す値の代表値が、当該個体6の評価値として算出される。評価値に基づく新たな世代の個体6の生成(ステップS15〜S17)は、上記と同様である。   In step S18, each individual 6 of the new generation is classified by the classifier 317 into one of the "good" class, the "acceptable" class, and the "non-adopted" class. In the next step S12, no processed image is obtained for the individual 6 classified into the class of "not adopted", and no evaluation value is calculated. On the other hand, for the individuals 6 classified into the class “OK”, a predetermined first number of target images (for example, all target images) among a plurality of target images stored in the storage unit 32 are used. A first number of processed images is obtained. Then, the representative value of the value indicating the degree of coincidence in these processed images is calculated as the evaluation value of the individual 6. In addition, for the individual 6 classified into the “good” class, a second number of target images (for example, half target images) smaller than the first number is used for the second target image among the plurality of target images. Number of processed images are obtained. Then, the representative value of the value indicating the degree of coincidence in these processed images is calculated as the evaluation value of the individual 6. The generation of the new generation individual 6 based on the evaluation value (steps S15 to S17) is the same as described above.

以上のように、上記処理例では、ステップS18における分類器317による分類結果が、次のステップS12において第1の個数の対象画像から評価値が求められる「可」のクラスと、第1の個数よりも少ない第2の個数の対象画像から評価値が求められる「良」のクラスと、評価値が求められない「不採用」のクラスとを含む。このように、高い評価値が見込まれる「良」のクラスの個体6において、評価値の算出に利用する対象画像を少なくすることにより、演算時間をさらに短縮することができる。もちろん、分類器317が、個体6を4以上のクラスのいずれかに分類するものであってもよい。   As described above, in the above-described processing example, the classification result of the classifier 317 in step S18 is obtained by comparing the class of “OK” for which the evaluation value is obtained from the first number of target images in the next step S12 with the first number The class includes a “good” class in which an evaluation value is obtained from a second smaller number of target images and a “non-adopted” class in which an evaluation value is not obtained. As described above, in the individuals 6 in the “good” class where a high evaluation value is expected, the calculation time can be further reduced by reducing the number of target images used for calculating the evaluation value. Of course, the classifier 317 may classify the individual 6 into any of four or more classes.

また、分類器構築部316では、外れ値検出を行う分類器317が構築されてもよい。このような分類器317の構築では、現世代までの全ての世代における全ての個体6のうち、例えば最大の評価値(当該全ての個体6の最大の評価値)の70%以下の評価値を有する個体6のみが教師個体として扱われる。すなわち、教師個体は、評価値が比較的低い個体6である。そして、複数の教師個体から取得される複数の特徴ベクトルを用いて学習を行うことにより、比較的低い評価値の集合に対する外れ値を検出する分類器317が構築される。   Further, the classifier constructing unit 316 may construct a classifier 317 that performs outlier detection. In the construction of such a classifier 317, among all the individuals 6 in all generations up to the current generation, for example, an evaluation value of 70% or less of the maximum evaluation value (the maximum evaluation value of all the individual 6) is set to Only the possessed individual 6 is treated as a teacher individual. That is, the teacher individual is the individual 6 whose evaluation value is relatively low. Then, by performing learning using a plurality of feature vectors obtained from a plurality of teacher individuals, a classifier 317 that detects outliers for a relatively low set of evaluation values is constructed.

高次元データである特徴ベクトルを用いる外れ値検出に利用可能なアルゴリズムとしては、1クラスサポートベクターマシンが例示される。また、Hans-Peter Kriegelらによる"Angle-Based Outlier Detection in High-dimensional Data"に記載の手法、Charu C. Aggarwalらによる"Outlier Detection for High Dimensional Data"に記載の手法、Hans-Peter Kriegelらによる"Outlier Detection in Axis-Parallel Subspaces of High Dimensional Data"に記載の手法、Charles Suttonらによる"Feature Bagging: Preventing Weight Undertraining in Structured Discriminative Learning"に記載の手法、Fabian Kellerらによる"HiCS: High Contrast Subspaces for Density-Based Outlier Ranking"に記載の手法、並びに、Hans-Peter Kriegelらによる"Outlier Detection in Arbitrarily Oriented Subspaces"に記載の手法等も利用可能である(上記非特許文献1ないし6参照)。   As an algorithm that can be used for outlier detection using a feature vector that is high-dimensional data, a one-class support vector machine is exemplified. The method described in "Angle-Based Outlier Detection in High-dimensional Data" by Hans-Peter Kriegel et al., The method described in "Outlier Detection for High Dimensional Data" by Charu C. Aggarwal et al., The method described by Hans-Peter Kriegel et al. The method described in "Outlier Detection in Axis-Parallel Subspaces of High Dimensional Data", the method described in "Feature Bagging: Preventing Weight Undertraining in Structured Discriminative Learning" by Charles Sutton et al. The method described in "HiCS: High Contrast Subspaces for Fabian Keller" The method described in "Density-Based Outlier Ranking" and the method described in "Outlier Detection in Arbitrarily Oriented Subspaces" by Hans-Peter Kriegel et al. Can also be used (see Non-Patent Documents 1 to 6 above).

分類制御部315では、個体生成部311により生成される各個体6の特徴ベクトルが分類器317に入力される。そして、分類器317により特徴ベクトルが外れ値として検出される個体6のみに対して、評価値算出部313による評価値の算出が行われる。既述のように、全ての教師個体の評価値は比較的低いため、分類器317により外れ値として検出される個体6では、高い評価値が得られることが期待される。本処理例では、全ての教師個体には、評価値に基づいて「不採用」のクラスが付与されており、分類器317により外れ値として検出される個体6は、実質的に「採用」のクラスに分類されていると捉えることができる。   In the classification control unit 315, the feature vector of each individual 6 generated by the individual generation unit 311 is input to the classifier 317. Then, the evaluation value is calculated by the evaluation value calculation unit 313 only for the individual 6 whose feature vector is detected as an outlier by the classifier 317. As described above, since the evaluation values of all the teacher individuals are relatively low, the individual 6 detected as an outlier by the classifier 317 is expected to obtain a high evaluation value. In this processing example, a class of “not adopted” is assigned to all the teacher individuals based on the evaluation value, and the individual 6 detected as an outlier by the classifier 317 substantially has the “adopted” class. It can be regarded as being classified into classes.

外れ値検出を行う分類器317を用いる場合も、評価処理を行う個体6の個数を少なくすることができ、最適解に至るまでの演算時間を短縮することができる。また、外れ値検出を行う分類器317も、上記処理例と同様に更新されてよい。この場合、典型的には、分類器317を更新するに従って、更新に利用される教師個体の最大の評価値が大きくなり、より高い評価値となる個体6を外れ値として検出する分類器317が構築される。すなわち、分類器317を更新するに従って、分類器317の性能が向上する。   Even when the classifier 317 that performs outlier detection is used, the number of individuals 6 to be subjected to the evaluation processing can be reduced, and the calculation time required to reach an optimal solution can be reduced. Also, the classifier 317 that performs outlier detection may be updated in the same manner as in the above processing example. In this case, typically, as the classifier 317 is updated, the maximum evaluation value of the teacher individual used for updating increases, and the classifier 317 that detects the individual 6 having a higher evaluation value as an outlier is used. Be built. That is, as the classifier 317 is updated, the performance of the classifier 317 improves.

画像処理取得装置20における最適化処理では、遺伝的プログラミングが利用されてもよい。遺伝的プログラミングでは、画像処理シーケンスを表現する個体は、木構造となる。例えば、図7に示す個体6aは、1つの画像の入力を示す終端ノードI1〜I4と、1つまたは複数の画像が入力されるとともに1つの画像を出力する非終端ノードF1〜F7,F10,F100と、を含む。終端ノードI1〜I4には、一の画像データセット40に含まれる対象画像または参照画像(のデータ)が入力される。   In the optimization processing in the image processing acquisition device 20, genetic programming may be used. In genetic programming, an individual expressing an image processing sequence has a tree structure. For example, the individual 6a illustrated in FIG. 7 includes terminal nodes I1 to I4 indicating input of one image and non-terminal nodes F1 to F7, F10, and F100 that receive one or more images and output one image. And The target image or the reference image (data of) included in one image data set 40 is input to the end nodes I1 to I4.

非終端ノードF1〜F7,F10,F100は、典型的には、画像処理フィルタを示す。1入力の非終端ノードF1〜F7では、入力される1つの画像に対して所定の画像処理(平均値フィルタ処理や、最大値フィルタ処理等)が実行され、処理後の1つの画像が次のノードに出力される。2入力の非終端ノードF10では、2つの非終端ノードF3,F5から入力される2つの画像に対して所定の画像処理(論理和演算や、論理積演算等)が実行され、処理後の1つの画像が次のノードに出力される。3入力の非終端ノード(ルートのノード)F100では、非終端ノードF6,F7および終端ノードI4から入力される3つの画像に対して所定の画像処理が実行され、処理後の1つの画像が処理済み画像として出力される。画像処理取得装置20では、多数の種類の画像処理が準備されており、様々な木構造の各ノードとして任意の画像処理が割り当てられることにより、様々な画像処理シーケンスが表現される。   Non-terminal nodes F1 to F7, F10, and F100 typically represent image processing filters. In one-input non-terminal nodes F1 to F7, predetermined image processing (average value filter processing, maximum value filter processing, or the like) is performed on one input image, and one image after processing is processed by the next node. Is output to In the two-input non-terminal node F10, predetermined image processing (logical addition operation, logical product operation, and the like) is performed on two images input from the two non-terminal nodes F3 and F5, and one image after the processing is performed. Is output to the next node. In the three-input non-terminal node (root node) F100, predetermined image processing is performed on three images input from the non-terminal nodes F6 and F7 and the terminal node I4, and one processed image is processed. Is output as In the image processing acquisition device 20, many types of image processing are prepared, and various image processing sequences are expressed by assigning arbitrary image processing as each node of various tree structures.

図5の最適化処理において、ステップS16の突然変異では、各個体6aの木構造においてノードや部分木の変更または削除がランダムに行われる。ステップS17の交叉では、ペアとなる2つの個体6aのそれぞれにおいて、1つのノードを交叉位置としてランダムに選択し、当該交叉位置よりも末端の部分である部分木を当該2つの木構造にて入れ替えることにより、新たな2つの個体6aが生成される。なお、ステップS15の個体6aの選択およびステップS12の評価値の算出は、遺伝的アルゴリズムの場合と同様である。   In the optimization processing of FIG. 5, in the mutation in step S16, a node or a subtree is changed or deleted at random in the tree structure of each individual 6a. In the crossover in step S17, in each of the two individuals 6a forming a pair, one node is randomly selected as a crossover position, and a subtree that is a terminal part of the crossover position is replaced with the two tree structures. As a result, two new individuals 6a are generated. The selection of the individual 6a in step S15 and the calculation of the evaluation value in step S12 are the same as in the case of the genetic algorithm.

ステップS19の分類器の構築では、各教師個体(木構造)において、3入力のノードの個数、2入力のノードの個数、1入力のノードの個数、各種類の画像処理を示すノードの個数等が特徴量として扱われ、教師個体から特徴ベクトルが取得される。そして、各教師個体の特徴ベクトルと、当該教師個体の評価値に基づくクラスとを用いて学習を行うことにより、分類器317が構築される。ステップS18では、新たな世代の各個体6aから取得される特徴ベクトルを分類器317に入力することにより、当該個体6aがいずれかのクラスに分類される。   In the construction of the classifier in step S19, in each teacher individual (tree structure), the number of nodes of three inputs, the number of nodes of two inputs, the number of nodes of input, the number of nodes indicating each type of image processing, and the like Is treated as a feature amount, and a feature vector is obtained from the teacher individual. Then, the learning is performed using the feature vector of each teacher individual and a class based on the evaluation value of the teacher individual, whereby the classifier 317 is constructed. In step S18, the individual 6a is classified into one of the classes by inputting the feature vector obtained from each individual 6a of the new generation to the classifier 317.

以上のように、評価値が求められる個体6aを、分類器317を用いた分類により制限する手法は、遺伝的プログラミングを用いた最適化処理においても採用することが可能である。この場合も、評価処理の回数を少なくすることができ、最適解に至るまでの演算時間を短縮することができる。   As described above, the method of restricting the individual 6a for which the evaluation value is obtained by the classification using the classifier 317 can be adopted also in the optimization processing using the genetic programming. Also in this case, the number of times of the evaluation processing can be reduced, and the calculation time until reaching the optimum solution can be shortened.

上記検査装置1および画像処理取得装置20では、様々な変形が可能である。   Various modifications are possible in the inspection device 1 and the image processing acquisition device 20.

上記実施の形態では、複数の対象画像に対して共通の分類器317が構築されるが、画像処理取得装置20の設計によっては、複数の対象画像に対して互いに異なる分類器が構築されてもよい。具体的には、各教師個体が表現する画像処理シーケンスを各対象画像に施すことにより取得される処理済み画像と、対応する目標画像との一致度を用いて、当該教師個体の当該対象画像に関するクラスが決定される。分類器構築部316では、各対象画像に対する分類器が、複数の教師個体の特徴ベクトルと、当該複数の教師個体の当該対象画像に関するクラスとを用いた学習により構築される。各個体を分類する際には、例えば、複数の分類器による分類結果の多数決により、当該個体が「採用」のクラスまたは「不採用」のクラスに分類される。   In the above embodiment, a common classifier 317 is constructed for a plurality of target images. However, depending on the design of the image processing acquisition device 20, different classifiers may be constructed for a plurality of target images. Good. Specifically, using the degree of coincidence between the processed image acquired by applying the image processing sequence represented by each teacher individual to each target image and the corresponding target image, The class is determined. In the classifier constructing unit 316, a classifier for each target image is constructed by learning using feature vectors of a plurality of teacher individuals and classes of the plurality of teacher individuals regarding the target image. When classifying each individual, for example, the individual is classified into a class of “adopted” or a class of “non-adopted” by majority decision of classification results by a plurality of classifiers.

検査装置1では、太陽電池パネルのEL(エレクトロ・ルミネッセンス)発光やPL(フォト・ルミネッセンス)発光を撮像して得られる画像や、レーザーテラヘルツエミッション顕微鏡(LTEM)を用いて得られる太陽電池パネルの画像等を用いて、太陽電池パネルの欠陥が検出されてもよい。また、樹脂や金属等により形成される各種部品の画像を用いて、当該部品の欠陥が検出されてもよい。欠陥の検出に用いられる画像は、電子線やX線等により撮像される画像であってもよい。   In the inspection apparatus 1, an image obtained by imaging EL (electroluminescence) emission or PL (photoluminescence) emission of a solar cell panel, or an image of a solar cell panel obtained by using a laser terahertz emission microscope (LTEM) The defect of the solar cell panel may be detected using the method described above. Further, a defect of the component may be detected using images of various components formed of resin, metal, or the like. The image used for detecting a defect may be an image captured by an electron beam, X-ray, or the like.

画像処理取得装置20では、欠陥領域抽出用の画像処理シーケンス以外の画像処理シーケンスが取得されてよい。例えば、血液や培養液等の所定の液中の細胞を撮像した細胞画像を対象画像とし、当該細胞の領域を抽出対象領域として、上記最適化処理により、細胞領域抽出用の画像処理シーケンスが取得されてもよい。また、領域の抽出以外の用途に用いられる画像処理シーケンスが取得されてもよい。   The image processing acquisition device 20 may acquire an image processing sequence other than the image processing sequence for extracting a defective area. For example, an image processing sequence for extracting a cell region is obtained by the above-described optimization process, using a cell image obtained by imaging cells in a predetermined liquid such as blood or a culture solution as a target image and an area of the cell as an extraction target area. May be done. Further, an image processing sequence used for a purpose other than the extraction of the region may be obtained.

遺伝的アルゴリズムまたは遺伝的プログラミングを用いた上記最適化処理は、画像処理シーケンス以外に、各種製品の設計、プロセス条件、文章や音声の解析アルゴリズム等、様々な最適化対象における条件の最適化に利用することが可能である。例えば、レンズの設計を最適化対象とする場合には、個体生成部311により、レンズの曲率半径、厚さ、屈折率等の設計パラメータ群の複数通りの条件をそれぞれ表現する複数の個体が生成され、個体記憶部312にて記憶される。また、評価値算出部313では、各個体が表現するレンズにおける収差の算出等、最適化対象に応じて定められた評価処理により各個体の評価値が求められる。繰返制御部314では、分類器317を構築(または再構築)しつつ、個体生成部311による新たな世代の個体の生成、分類器317による個体の分類、および、評価値算出部313による評価値の算出が、終了条件が満たされるまで繰り返される。以上のように、個体生成部311、個体記憶部312、評価値算出部313および繰返制御部314を主たる構成として実現される最適化装置は、様々な最適化対象における条件の最適化に利用することが可能である。   The above optimization process using a genetic algorithm or genetic programming is used for optimization of conditions in various optimization targets, such as various product designs, process conditions, text and voice analysis algorithms, in addition to image processing sequences. It is possible to For example, when the design of a lens is to be optimized, the individual generation unit 311 generates a plurality of individuals expressing a plurality of conditions of a design parameter group such as a radius of curvature, a thickness, and a refractive index of the lens. And stored in the individual storage unit 312. Further, the evaluation value calculation unit 313 obtains an evaluation value of each individual by an evaluation process determined according to an optimization target, such as calculation of aberration in a lens represented by each individual. While constructing (or reconstructing) the classifier 317, the iterative control unit 314 generates an individual of a new generation by the individual generation unit 311, classifies the individual by the classifier 317, and evaluates by the evaluation value calculation unit 313. The calculation of the value is repeated until the termination condition is satisfied. As described above, the optimizing device realized as the main components of the individual generation unit 311, the individual storage unit 312, the evaluation value calculation unit 313, and the repetition control unit 314 is used for optimizing conditions in various optimization targets. It is possible to

上記実施の形態および各変形例における構成は、相互に矛盾しない限り適宜組み合わされてよい。   The configurations in the above embodiment and each modified example may be appropriately combined as long as they do not conflict with each other.

2 コンピュータ
5 画像処理シーケンス
6,6a 個体
12 欠陥検出部
13 画像記憶部
14 画像処理部
20 画像処理取得装置
41 対象画像データ
43 目標画像データ
44 処理済み画像データ
51a,51b 画像処理
92 プログラム
311 個体生成部
312 個体記憶部
313 評価値算出部
314 繰返制御部
315 分類制御部
316 分類器構築部
317 分類器
600 要素
S11〜S20 ステップ
2 Computer 5 Image processing sequence 6, 6a individual 12 Defect detection unit 13 Image storage unit 14 Image processing unit 20 Image processing acquisition device 41 Target image data 43 Target image data 44 Processed image data 51a, 51b Image processing 92 Program 311 Individual generation Unit 312 individual storage unit 313 evaluation value calculation unit 314 repetition control unit 315 classification control unit 316 classifier construction unit 317 classifier 600 element S11 to S20 step

Claims (14)

遺伝的アルゴリズムまたは遺伝的プログラミングを用いるとともに、コンピュータを利用した最適化方法であって、
a)最適化対象の複数通りの条件をそれぞれ表現する複数の個体を記憶する工程と、
b)前記最適化対象に応じて定められた評価処理により、前記複数の個体のそれぞれにおける評価値を求める工程と、
c)前記複数の個体のうち前記評価値が高い個体が優先的に含まれる選択、並びに、突然変異および交叉を含む遺伝的操作により、新たな複数の個体を生成する工程と、
d)前記b)およびc)工程を、終了条件を満たすまで繰り返すことにより、最適解として推定される個体を取得する工程と、
を備え、
前記d)工程が、
d1)繰り返されるc)工程にて生成される個体を含む複数の教師個体のそれぞれから取得される特徴ベクトルと、前記複数の教師個体のそれぞれにおける前記評価値に基づくクラスとを用いて学習を行うことにより分類器を構築する工程と、
d2)前記d1)工程の後の各c)工程にて生成される新たな複数の個体を前記分類器にて分類することにより、前記各c)工程の次のb)工程において前記評価値が求められる個体を制限する工程と、
を備えることを特徴とする最適化方法。
A computer-based optimization method using a genetic algorithm or genetic programming,
a) storing a plurality of individuals each representing a plurality of conditions to be optimized;
b) obtaining an evaluation value for each of the plurality of individuals by an evaluation process determined according to the optimization target;
c) generating a plurality of new individuals by selection in which the individuals with the higher evaluation values are preferentially included among the plurality of individuals, and a genetic operation including mutation and crossover;
d) obtaining the individual estimated as the optimal solution by repeating the steps b) and c) until the end condition is satisfied;
With
The step d) includes:
d1) Learning is performed using a feature vector obtained from each of a plurality of teacher individuals including the individual generated in step c) and a class based on the evaluation value in each of the plurality of teacher individuals. By constructing a classifier,
d2) By classifying a plurality of new individuals generated in each step c) after the step d1) by the classifier, the evaluation value is obtained in the step b) following the step c). Limiting the required individuals;
An optimization method comprising:
請求項1に記載の最適化方法であって、
前記複数の個体が、複数通りの画像処理シーケンスをそれぞれ表現し、
前記評価処理において、所定の対象画像に対して各個体が表現する画像処理シーケンスを実行することにより生成される処理済み画像と、前記対象画像から生成されるべき目標画像との一致度が求められることを特徴とする最適化方法。
The optimization method according to claim 1, wherein
The plurality of individuals respectively represent a plurality of image processing sequences,
In the evaluation processing, a degree of coincidence between a processed image generated by executing an image processing sequence represented by each individual on a predetermined target image and a target image to be generated from the target image is obtained. An optimization method characterized in that:
請求項2に記載の最適化方法であって、
前記各個体が、複数の要素が並ぶ要素配列であり、
前記複数の要素が、画像処理シーケンスに含まれる複数の画像処理における複数のパラメータの値を示し、
前記特徴ベクトルにおける複数の特徴量が、前記複数のパラメータの値であることを特徴とする最適化方法。
The optimization method according to claim 2, wherein
The individual is an element array in which a plurality of elements are arranged,
The plurality of elements indicate values of a plurality of parameters in a plurality of image processing included in the image processing sequence,
An optimization method, wherein a plurality of feature amounts in the feature vector are values of the plurality of parameters.
請求項2または3に記載の最適化方法であって、
前記評価処理において、前記対象画像を含む複数の対象画像に対して前記各個体が表現する画像処理シーケンスを実行することにより生成される複数の処理済み画像と、前記複数の対象画像から生成されるべき複数の目標画像との一致度がそれぞれ求められ、
前記d2)工程における前記分類器による分類結果が、前記次のb)工程において第1の個数の対象画像から前記評価値が求められるクラスと、前記第1の個数よりも少ない第2の個数の対象画像から前記評価値が求められるクラスと、前記評価値が求められないクラスと、を含むことを特徴とする最適化方法。
The optimization method according to claim 2 or 3, wherein
In the evaluation processing, a plurality of processed images generated by executing an image processing sequence represented by each individual on a plurality of target images including the target image, and a plurality of processed images generated from the plurality of target images The degree of coincidence with multiple target images should be calculated,
The classification result by the classifier in the step d2) is a class in which the evaluation value is obtained from the first number of target images in the next step b), and a second number smaller than the first number. An optimization method comprising: a class in which the evaluation value is obtained from a target image; and a class in which the evaluation value is not obtained from a target image.
請求項1ないし4のいずれかに記載の最適化方法であって、
前記d2)工程および前記各c)工程において、前記評価値が求められるクラスに前記分類器により分類される個体の個数が設定個体数になるまで、新たな個体の生成が繰り返されることを特徴とする最適化方法。
The optimization method according to any one of claims 1 to 4, wherein
In the d2) step and each of the c) steps, generation of a new individual is repeated until the number of individuals classified by the classifier into the class for which the evaluation value is obtained reaches a set individual number. Optimization method to do.
請求項1ないし5のいずれかに記載の最適化方法であって、
前記d)工程において、所定の条件が満たされる際に、前記d1)工程における分類器の構築が再度行われることを特徴とする最適化方法。
The optimization method according to any one of claims 1 to 5,
The optimization method, wherein in the step d), when a predetermined condition is satisfied, the construction of the classifier in the step d1) is performed again.
遺伝的アルゴリズムまたは遺伝的プログラミングを用いた最適化装置であって、
最適化対象の複数通りの条件をそれぞれ表現する複数の個体を記憶する記憶部と、
前記最適化対象に応じて定められた評価処理により、前記複数の個体のそれぞれにおける評価値を求める評価値算出部と、
前記複数の個体のうち前記評価値が高い個体が優先的に含まれる選択、並びに、突然変異および交叉を含む遺伝的操作により、新たな複数の個体を生成する個体生成部と、
前記評価値算出部および前記個体生成部における処理を、終了条件を満たすまで繰り返すことにより、最適解として推定される個体を取得する繰返制御部と、
を備え、
前記繰返制御部が、
前記個体生成部にて生成される個体を含む複数の教師個体のそれぞれから取得される特徴ベクトルと、前記複数の教師個体のそれぞれにおける前記評価値に基づくクラスとを用いて学習を行うことにより分類器を構築する分類器構築部と、
前記個体生成部にて生成される新たな複数の個体を前記分類器にて分類することにより、前記評価値算出部において前記評価値が求められる個体を制限する分類制御部と、
を備えることを特徴とする最適化装置。
An optimization device using a genetic algorithm or genetic programming,
A storage unit that stores a plurality of individuals that respectively represent a plurality of conditions to be optimized,
An evaluation value calculation unit that obtains an evaluation value for each of the plurality of individuals by an evaluation process determined according to the optimization target,
An individual generation unit that generates a new plurality of individuals by a selection in which the evaluation value is higher among the plurality of individuals, and a genetic operation including mutation and crossover,
By repeating the processing in the evaluation value calculation unit and the individual generation unit until an end condition is satisfied, a repetition control unit that obtains an individual estimated as an optimal solution,
With
The repetition control unit,
Classification by performing learning using a feature vector obtained from each of a plurality of teacher individuals including the individual generated by the individual generation unit and a class based on the evaluation value in each of the plurality of teacher individuals. A classifier construction unit for constructing a vessel;
A classification control unit that classifies a plurality of new individuals generated by the individual generation unit with the classifier, thereby restricting individuals whose evaluation values are obtained in the evaluation value calculation unit,
An optimization device comprising:
請求項7に記載の最適化装置であって、
前記複数の個体が、複数通りの画像処理シーケンスをそれぞれ表現し、
前記評価処理において、所定の対象画像に対して各個体が表現する画像処理シーケンスを実行することにより生成される処理済み画像と、前記対象画像から生成されるべき目標画像との一致度が求められることを特徴とする最適化装置。
The optimization device according to claim 7,
The plurality of individuals respectively represent a plurality of image processing sequences,
In the evaluation processing, a degree of coincidence between a processed image generated by executing an image processing sequence represented by each individual on a predetermined target image and a target image to be generated from the target image is obtained. An optimizing device, characterized in that:
請求項8に記載の最適化装置であって、
前記各個体が、複数の要素が並ぶ要素配列であり、
前記複数の要素が、画像処理シーケンスに含まれる複数の画像処理における複数のパラメータの値を示し、
前記特徴ベクトルにおける複数の特徴量が、前記複数のパラメータの値であることを特徴とする最適化装置。
The optimization device according to claim 8,
The individual is an element array in which a plurality of elements are arranged,
The plurality of elements indicate values of a plurality of parameters in a plurality of image processing included in the image processing sequence,
An optimization apparatus, wherein a plurality of feature amounts in the feature vector are values of the plurality of parameters.
請求項8または9に記載の最適化装置であって、
前記評価処理において、前記対象画像を含む複数の対象画像に対して前記各個体が表現する画像処理シーケンスを実行することにより生成される複数の処理済み画像と、前記複数の対象画像から生成されるべき複数の目標画像との一致度がそれぞれ求められ、
前記分類器による分類結果が、前記評価値算出部において第1の個数の対象画像から前記評価値が求められるクラスと、前記第1の個数よりも少ない第2の個数の対象画像から前記評価値が求められるクラスと、前記評価値が求められないクラスと、を含むことを特徴とする最適化装置。
The optimization device according to claim 8 or 9, wherein:
In the evaluation processing, a plurality of processed images generated by executing an image processing sequence represented by each individual on a plurality of target images including the target image, and a plurality of processed images generated from the plurality of target images The degree of coincidence with multiple target images should be calculated,
The classification result by the classifier is a class in which the evaluation value is calculated from a first number of target images in the evaluation value calculation unit, and the evaluation value is calculated from a second number of target images smaller than the first number. And a class for which the evaluation value is not obtained.
請求項7ないし10のいずれかに記載の最適化装置であって、
前記分類器が構築された後、前記個体生成部が、前記評価値が求められるクラスに前記分類器により分類される個体の個数が設定個体数になるまで、新たな個体の生成を繰り返すことを特徴とする最適化装置。
The optimization device according to any one of claims 7 to 10, wherein
After the classifier is constructed, the individual generation unit repeats generation of a new individual until the number of individuals classified by the classifier into the class for which the evaluation value is obtained reaches a set number of individuals. Optimizer to feature.
請求項7ないし11のいずれかに記載の最適化装置であって、
所定の条件が満たされる際に、前記繰返制御部が、前記分類器構築部に分類器の構築を再度行わせることを特徴とする最適化装置。
The optimization device according to any one of claims 7 to 11, wherein
The optimization apparatus, wherein when a predetermined condition is satisfied, the repetition control unit causes the classifier constructing unit to construct a classifier again.
遺伝的アルゴリズムまたは遺伝的プログラミングを用いる最適化処理をコンピュータに行わせるプログラムであって、前記プログラムの前記コンピュータによる実行は、前記コンピュータに、
a)最適化対象の複数通りの条件をそれぞれ表現する複数の個体を記憶する工程と、
b)前記最適化対象に応じて定められた評価処理により、前記複数の個体のそれぞれにおける評価値を求める工程と、
c)前記複数の個体のうち前記評価値が高い個体が優先的に含まれる選択、並びに、突然変異および交叉を含む遺伝的操作により、新たな複数の個体を生成する工程と、
d)前記b)およびc)工程を、終了条件を満たすまで繰り返すことにより、最適解として推定される個体を取得する工程と、
を実行させ、
前記d)工程が、
d1)繰り返されるc)工程にて生成される個体を含む複数の教師個体のそれぞれから取得される特徴ベクトルと、前記複数の教師個体のそれぞれにおける前記評価値に基づくクラスとを用いて学習を行うことにより分類器を構築する工程と、
d2)前記d1)工程の後の各c)工程にて生成される新たな複数の個体を前記分類器にて分類することにより、前記各c)工程の次のb)工程において前記評価値が求められる個体を制限する工程と、
を備えることを特徴とするプログラム。
A program for causing a computer to perform an optimization process using a genetic algorithm or a genetic programming, wherein the execution of the program by the computer causes the computer to:
a) storing a plurality of individuals each representing a plurality of conditions to be optimized;
b) obtaining an evaluation value for each of the plurality of individuals by an evaluation process determined according to the optimization target;
c) generating a plurality of new individuals by selection in which the individuals with the higher evaluation values are preferentially included among the plurality of individuals, and a genetic operation including mutation and crossover;
d) obtaining the individual estimated as the optimal solution by repeating the steps b) and c) until the end condition is satisfied;
And execute
The step d) includes:
d1) Learning is performed using a feature vector obtained from each of a plurality of teacher individuals including the individual generated in step c) and a class based on the evaluation value in each of the plurality of teacher individuals. By constructing a classifier,
d2) By classifying a plurality of new individuals generated in each step c) after the step d1) by the classifier, the evaluation value is obtained in the step b) following the step c). Limiting the required individuals;
A program characterized by comprising:
画像処理装置であって、
対象物を撮像した撮像画像を記憶する画像記憶部と、
画像処理シーケンスを取得する請求項7ないし12のいずれかに記載の最適化装置と、
前記撮像画像に対して前記画像処理シーケンスを実行する画像処理部と、
を備えることを特徴とする画像処理装置。
An image processing device,
An image storage unit that stores a captured image of the target object,
An optimization device according to any one of claims 7 to 12, which acquires an image processing sequence;
An image processing unit that executes the image processing sequence on the captured image,
An image processing apparatus comprising:
JP2016044262A 2016-03-08 2016-03-08 Optimization method, optimization device, program, and image processing device Active JP6641195B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016044262A JP6641195B2 (en) 2016-03-08 2016-03-08 Optimization method, optimization device, program, and image processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016044262A JP6641195B2 (en) 2016-03-08 2016-03-08 Optimization method, optimization device, program, and image processing device

Publications (2)

Publication Number Publication Date
JP2017162069A JP2017162069A (en) 2017-09-14
JP6641195B2 true JP6641195B2 (en) 2020-02-05

Family

ID=59857529

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016044262A Active JP6641195B2 (en) 2016-03-08 2016-03-08 Optimization method, optimization device, program, and image processing device

Country Status (1)

Country Link
JP (1) JP6641195B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7314711B2 (en) * 2018-09-03 2023-07-26 東洋製罐グループホールディングス株式会社 Image processing system and image processing program
JP7206892B2 (en) * 2018-12-20 2023-01-18 富士通株式会社 Image inspection device, learning method for image inspection, and image inspection program
JP7314723B2 (en) * 2019-08-31 2023-07-26 東洋製罐グループホールディングス株式会社 Image processing system and image processing program
JP7185614B2 (en) * 2019-11-18 2022-12-07 株式会社エクスモーション Information processing device and information processing program
JP7327137B2 (en) 2019-12-13 2023-08-16 富士通株式会社 Arithmetic processing device, Arithmetic processing program and Arithmetic processing method
WO2023181131A1 (en) * 2022-03-22 2023-09-28 日本電気株式会社 Solution finding system

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3300584B2 (en) * 1994-11-24 2002-07-08 松下電器産業株式会社 Optimization adjustment method and optimization adjustment device
JP2008009621A (en) * 2006-06-28 2008-01-17 Nippon Signal Co Ltd:The Method for processing genetic algorithm, and method for simulating train operation using the same
JP2008089574A (en) * 2006-09-05 2008-04-17 Dainippon Screen Mfg Co Ltd Image processor, data processor, parameter adjustment method, and program
JP2009151371A (en) * 2007-12-18 2009-07-09 Dainippon Screen Mfg Co Ltd Image processing apparatus, image processing method, and program
JP2015064625A (en) * 2013-09-24 2015-04-09 株式会社Screenホールディングス Image processing apparatus, image processing method, and program

Also Published As

Publication number Publication date
JP2017162069A (en) 2017-09-14

Similar Documents

Publication Publication Date Title
JP6641195B2 (en) Optimization method, optimization device, program, and image processing device
CN107408209B (en) System and method for defect classification in semiconductor processing
US9002101B2 (en) Recognition device, recognition method, and computer program product
CN110914864A (en) Information processing apparatus, information processing program, and information processing method
JP7028322B2 (en) Information processing equipment, information processing methods and information processing programs
JP2015095212A (en) Identifier, identification program, and identification method
JPWO2014104151A1 (en) Image processing apparatus and feature detection method
US11972552B2 (en) Abnormal wafer image classification
JP2017054331A (en) Image sorting method, method for configuring sorter, and image sorting device
US11003989B2 (en) Non-convex optimization by gradient-accelerated simulated annealing
Tcheng et al. Visual recognition software for binary classification and its application to spruce pollen identification
JP2007200246A (en) Method for evaluating image processing algorithm, method, device, and program for generating same algorithm, and recording medium
Costa et al. Genetic adaptation of segmentation parameters
WO2019180868A1 (en) Image generation device, image generation method, and image generation program
Silva et al. Analysis of CNN architectures for human action recognition in video
JP7028317B2 (en) Information processing equipment, information processing methods and information processing programs
EP4396728A1 (en) Methods and systems for deep distilling
JP7206892B2 (en) Image inspection device, learning method for image inspection, and image inspection program
JP2022089430A (en) Image processing system, and image processing program
KR20190078710A (en) Image classfication system and mehtod
US20220058371A1 (en) Classification of cell nuclei
Pereira et al. Handcrafted features vs deep-learned features: Hermite Polynomial Classification of Liver Images
Yoshimura et al. Automatic construction of image inspection algorithm by using image processing network programming
Watchareeruetai et al. Evolution of contours for shape recognition
JP2024084277A (en) Generation method, data processing method, generation device, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181221

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191127

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191227

R150 Certificate of patent or registration of utility model

Ref document number: 6641195

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250