[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2011022797A - Image processing apparatus, method and program - Google Patents

Image processing apparatus, method and program Download PDF

Info

Publication number
JP2011022797A
JP2011022797A JP2009167277A JP2009167277A JP2011022797A JP 2011022797 A JP2011022797 A JP 2011022797A JP 2009167277 A JP2009167277 A JP 2009167277A JP 2009167277 A JP2009167277 A JP 2009167277A JP 2011022797 A JP2011022797 A JP 2011022797A
Authority
JP
Japan
Prior art keywords
image
filter
inspection
data
defective
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.)
Granted
Application number
JP2009167277A
Other languages
Japanese (ja)
Other versions
JP5471105B2 (en
Inventor
Yuji Kunigome
祐司 國米
Hideki Sasaki
秀貴 佐々木
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.)
Nikon Corp
Original Assignee
Nikon Corp
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 Nikon Corp filed Critical Nikon Corp
Priority to JP2009167277A priority Critical patent/JP5471105B2/en
Publication of JP2011022797A publication Critical patent/JP2011022797A/en
Application granted granted Critical
Publication of JP5471105B2 publication Critical patent/JP5471105B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To relearn an image filter by genetic processing according to results of a secondary inspection so as not to perform error measurement from a captured image of a target. <P>SOLUTION: An image processing apparatus for updating an inspecting image filter for converting the captured image obtained by imaging an inspection target into inspection data includes: a conversion unit for converting the captured image into the inspection data by the inspecting image filter; and an updating part which, when the inspection target determined as an inferior product based on the inspection data is determined as a superior product by a secondary inspection, updates the inspecting image filter so that the captured image of the inspection target is converted into the inspection data determined as the superior product. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、画像処理装置、画像処理方法、および画像処理プログラムに関する。   The present invention relates to an image processing apparatus, an image processing method, and an image processing program.

遺伝的アルゴリズムまたは遺伝的プログラミングといった進化的計算を用いたフィルタまたは変換器の生成方法が知られている(非特許文献1参照)。このような進化的計算を用いたフィルタまたは変換器の生成方法によれば、それぞれの事例に対して最適であって解析的に得ることが困難な複雑な構造のフィルタまたは変換器を、より少ない労力と時間で設計することができる。   A method for generating a filter or a converter using evolutionary computation such as a genetic algorithm or genetic programming is known (see Non-Patent Document 1). According to the method of generating a filter or a converter using such evolutionary computation, fewer filters or converters having a complicated structure that are optimal for each case and difficult to obtain analytically are obtained. It can be designed with effort and time.

前薗正宜 他2名、「遺伝的アルゴリズムによる画像フィルタ設計の研究」、[online]、コンピュータ利用教育協議会、[2008年3月20日検索]、インターネット<URL:http://www.ciec.or.jp/event/2003/papers/pdf/E00086.pdf>Masayoshi Maebuchi and two others, “Study on Image Filter Design Using Genetic Algorithm” [online], Computer Utilization Education Council, [March 20, 2008 search], Internet <URL: http: //www.ciec. or.jp/event/2003/papers/pdf/E00086.pdf>

ところで、画像フィルタを製品等の検査に用いる場合、検査対象物が検査において適正に判断されるように、進化的計算を用いて画像フィルタを生成する。しかしながら、当該画像フィルタを用いた検査において不良品と判断された検査対象物が、二次検査等によって良品と認められることもありうる。   By the way, when an image filter is used for inspection of a product or the like, the image filter is generated using evolutionary calculation so that an inspection object is properly determined in the inspection. However, an inspection object that is determined to be defective in the inspection using the image filter may be recognized as a non-defective product by a secondary inspection or the like.

そこで本発明は、上記の課題を解決することのできる画像処理装置、画像処理方法、および画像処理プログラムを提供することを目的とする。この目的は特許請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。   SUMMARY An advantage of some aspects of the invention is that it provides an image processing apparatus, an image processing method, and an image processing program capable of solving the above-described problems. This object is achieved by a combination of features described in the independent claims. The dependent claims define further advantageous specific examples of the present invention.

上記課題を解決するために、本発明の第1の態様においては、検査対象物を撮像した撮像画像を検査用データに変換する検査用画像フィルタを更新する画像処理装置であって、検査用画像フィルタにより撮像画像を検査用データに変換する変換部と、検査用データに基づいて不良品と判断された検査対象物が、二次検査により良品と判断された場合に、当該検査対象物の撮像画像を良品と判断される検査用データに変換させるように検査用画像フィルタを更新する更新部と、を備える画像処理装置、並びに当該画像処理装置に関する画像処理方法、および画像処理プログラムを提供する。   In order to solve the above-described problem, in the first aspect of the present invention, an image processing apparatus that updates an inspection image filter that converts a captured image obtained by imaging an inspection object into inspection data, the inspection image A conversion unit that converts a captured image into inspection data using a filter, and an image of the inspection object when the inspection object determined to be defective based on the inspection data is determined to be non-defective by the secondary inspection An image processing apparatus including an update unit that updates an inspection image filter so as to convert an image into inspection data determined to be non-defective, and an image processing method and an image processing program related to the image processing apparatus are provided.

なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。   The above summary of the invention does not enumerate all necessary features of the present invention. In addition, a sub-combination of these feature groups can also be an invention.

本実施形態に係る画像処理装置10の構成を示す。1 shows a configuration of an image processing apparatus 10 according to the present embodiment. 本実施形態に係るフィルタ部品22を直列に組み合わせた画像フィルタ20の一例を示す。An example of the image filter 20 which combined the filter component 22 which concerns on this embodiment in series is shown. 本実施形態に係るフィルタ部品22を木構造に組み合わせた画像フィルタ20の一例を示す。An example of the image filter 20 in which the filter component 22 according to the present embodiment is combined in a tree structure is shown. 本実施形態に係るフィルタ部品22を直列に組み合わせた画像フィルタ20に対して行われる遺伝的な操作の一例を示す。An example of a genetic operation performed on the image filter 20 in which the filter components 22 according to the present embodiment are combined in series is shown. 本実施形態に係るフィルタ部品22を木構造に組み合わせた画像フィルタ20に対して行われる交叉操作の一例を示す。An example of the crossover operation performed on the image filter 20 in which the filter component 22 according to the present embodiment is combined in a tree structure is shown. 本実施形態に係るフィルタ部品22を木構造に組み合わせた画像フィルタ20に対して行われる突然変異操作の一例を示す。An example of a mutation operation performed on the image filter 20 in which the filter component 22 according to the present embodiment is combined in a tree structure is shown. 本実施形態に係る画像フィルタ20の適合度を表わすパラメータの一例である類似度の算出方法の一例を示す。An example of a similarity calculation method, which is an example of a parameter representing the degree of matching of the image filter 20 according to the present embodiment, is shown. 本実施形態に係る画像処理装置10の動作フローの一例を示す。An example of the operation | movement flow of the image processing apparatus 10 which concerns on this embodiment is shown. 図8のステップS101における検査用画像フィルタ20を生成するまでの処理フローの一例を示す。An example of a processing flow until the inspection image filter 20 is generated in step S101 in FIG. 図8のステップS105における検査用画像フィルタ20を更新するまでの処理フローの一例を示す。An example of a processing flow until the inspection image filter 20 in step S105 of FIG. 8 is updated is shown. 本実施形態に係るコンピュータ1900のハードウェア構成の一例を示す。2 shows an exemplary hardware configuration of a computer 1900 according to the present embodiment.

以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。   Hereinafter, the present invention will be described through embodiments of the invention, but the following embodiments do not limit the invention according to the claims. In addition, not all the combinations of features described in the embodiments are essential for the solving means of the invention.

図1は、本実施形態に係る画像処理装置10の構成を示す。画像処理装置10は、少なくとも1つの画像フィルタ20を含む画像フィルタ群を進化的計算に基づいて複数世代にわたり進化させる。ここで、画像処理装置10は、検査対象物の二次検査の結果に応じて、画像フィルタ20を再学習させる。本実施形態において、各画像フィルタ20は、入力画像を処理して処理結果を出力画像または出力データとして出力する複数のフィルタ部品を含み、より具体的には、これらの入出力間を組み合わせたものである。そして、画像処理装置10は、撮像画像を検査用データに変換するのに適した検査用画像フィルタ20を生成する。画像処理装置10は、一例として、コンピュータにより実現される。   FIG. 1 shows a configuration of an image processing apparatus 10 according to the present embodiment. The image processing apparatus 10 evolves an image filter group including at least one image filter 20 over a plurality of generations based on evolutionary computation. Here, the image processing apparatus 10 causes the image filter 20 to be relearned according to the result of the secondary inspection of the inspection object. In the present embodiment, each image filter 20 includes a plurality of filter components that process an input image and output a processing result as an output image or output data, and more specifically, a combination of these inputs and outputs. It is. Then, the image processing apparatus 10 generates an inspection image filter 20 suitable for converting the captured image into inspection data. The image processing apparatus 10 is realized by a computer as an example.

画像処理装置10は、フィルタ格納部34と、生成部50と、撮像画像格納部37と、変換部39と、検査用データ格納部47と、更新指示部53と、更新部48とを備える。フィルタ格納部34は、互いに異なる構成の1又は複数の画像フィルタ20を含む画像フィルタ群を格納する。   The image processing apparatus 10 includes a filter storage unit 34, a generation unit 50, a captured image storage unit 37, a conversion unit 39, an inspection data storage unit 47, an update instruction unit 53, and an update unit 48. The filter storage unit 34 stores an image filter group including one or a plurality of image filters 20 having different configurations.

生成部50は、学習用入力画像を学習用出力データに変換するのに適応させた検査用の画像フィルタ20を生成する。生成部50は、一例として、フィルタ格納部34に格納されたフィルタ群から遺伝的処理により検査用画像フィルタ20を生成する。生成部50は、学習用入力画像格納部36と、学習用変換部38と、学習用出力データ格納部40と、学習用目標データ格納部42と、算出部44と、第1フィルタ選択部501と、第1フィルタ生成部505とを有する。   The generation unit 50 generates the inspection image filter 20 adapted to convert the learning input image into learning output data. For example, the generation unit 50 generates the test image filter 20 from the filter group stored in the filter storage unit 34 by genetic processing. The generation unit 50 includes a learning input image storage unit 36, a learning conversion unit 38, a learning output data storage unit 40, a learning target data storage unit 42, a calculation unit 44, and a first filter selection unit 501. And a first filter generation unit 505.

学習用入力画像格納部36は、画像フィルタ20の変換対象である1又は複数の学習用入力画像を格納する。学習用入力画像は、一例として、ユーザによって予め生成された画像または準備された画像である。   The learning input image storage unit 36 stores one or a plurality of learning input images to be converted by the image filter 20. As an example, the learning input image is an image generated in advance or prepared by the user.

学習用変換部38は、フィルタ格納部34に格納された1又は複数の画像フィルタ20を順次に取得する。学習用変換部38は、取得したそれぞれの画像フィルタ20により、学習用入力画像格納部36に格納された学習用入力画像を変換させて、学習用出力データのそれぞれを生成する。   The learning conversion unit 38 sequentially acquires one or a plurality of image filters 20 stored in the filter storage unit 34. The learning conversion unit 38 converts the learning input image stored in the learning input image storage unit 36 by each acquired image filter 20 to generate each of the learning output data.

学習用出力データ格納部40は、学習用変換部38によって生成された学習用出力データを格納する。学習用出力データ格納部40は、一例として、学習用出力データのそれぞれを、変換した画像フィルタ20に対応付けて格納する。   The learning output data storage unit 40 stores the learning output data generated by the learning conversion unit 38. As an example, the learning output data storage unit 40 stores each of the learning output data in association with the converted image filter 20.

学習用目標データ格納部42は、学習用入力画像を変換して生成される学習用出力データの目標となる学習用目標データを格納する。学習用目標データは、一例として、ユーザにより予め生成されたデータまたは準備されたデータであってよい。なお、学習用出力データおよび学習用目標データは、データに代えて画像であってよい。   The learning target data storage unit 42 stores learning target data that is the target of the learning output data generated by converting the learning input image. As an example, the learning target data may be data generated in advance or prepared by a user. Note that the learning output data and the learning target data may be images instead of data.

算出部44は、フィルタ格納部34に格納された1又は複数の画像フィルタ20のそれぞれについて、当該画像フィルタ20の学習用出力データと学習用目標データとの差分を重み画像または重みデータにより重み付けして適合度(以下、第1適合度と示す)を算出する。ここで、適合度は、入力画像または入力データを目標画像または目標データへと変換するのに適しているかどうかを表す指標値であり、値が高いほど、入力画像または入力データを目標画像または目標データへと変換するのに適していることを表す。第1適合度は、進化的計算により検査用画像フィルタを生成する処理において算出され、学習用入力画像を学習用目標データへと変換するのに適しているかを表す。また、重み画像または重みデータは、学習用出力データと学習用目標データとの比較におけるデータ領域毎の重みを表わす画像またはデータを表わす。   The calculation unit 44 weights the difference between the learning output data of the image filter 20 and the learning target data for each of the one or plural image filters 20 stored in the filter storage unit 34 by the weighted image or the weight data. To calculate the fitness (hereinafter referred to as the first fitness). Here, the fitness is an index value indicating whether or not the input image or input data is suitable for conversion into the target image or target data, and the higher the value, the more the input image or input data is converted to the target image or target data. Indicates that it is suitable for conversion to data. The first fitness is calculated in the process of generating the inspection image filter by evolutionary calculation, and represents whether it is suitable for converting the learning input image into the learning target data. The weight image or the weight data represents an image or data representing the weight for each data area in the comparison between the learning output data and the learning target data.

第1フィルタ選択部501は、フィルタ群に含まれる複数の画像フィルタ20のうち、学習用入力画像から学習用出力データへの変換に対する第1適合度がより高い画像フィルタ20を、検査用画像フィルタ20として選択する。この場合において、第1フィルタ選択部501は、算出部44によって算出した第1適合度がより高い画像フィルタ20を優先的に選択する。より具体的には、第1フィルタ選択部501は、生物の自然淘汰をモデル化した手法により、残存させる少なくとも1つの画像フィルタ20を選択する。第1フィルタ選択部501は、一例として、フィルタ格納部34に格納された複数の画像フィルタ20のそれぞれの第1適合度に基づき、エリート選択およびルーレット選択といった遺伝的計算により少なくとも1つの画像フィルタ20を選択する。また、第1フィルタ選択部501は、選択されなかった画像フィルタ20を、例えばフィルタ格納部34から削除することにより淘汰してもよい。   The first filter selection unit 501 selects an image filter 20 having a higher first fitness for conversion from the learning input image to the learning output data among the plurality of image filters 20 included in the filter group. Select as 20. In this case, the first filter selection unit 501 preferentially selects the image filter 20 having a higher first fitness calculated by the calculation unit 44. More specifically, the first filter selection unit 501 selects at least one image filter 20 to remain by using a technique that models natural selection of living things. For example, the first filter selection unit 501 uses at least one image filter 20 by genetic calculation such as elite selection and roulette selection based on the first fitness of each of the plurality of image filters 20 stored in the filter storage unit 34. Select. In addition, the first filter selection unit 501 may hesitate by deleting the image filter 20 that has not been selected from the filter storage unit 34, for example.

第1フィルタ生成部505は、複数のフィルタ部品を組み合わせた少なくとも1つの画像フィルタ20を含むフィルタ群から、遺伝的処理により新たな画像フィルタ20を生成してフィルタ群に加える。第1フィルタ生成部505は、一例として、第1フィルタ選択部501により選択されてフィルタ格納部34から取得した少なくとも1つの画像フィルタ20に対して、交叉および突然変異等の遺伝的な操作をして、新たな画像フィルタ20を生成する。第1フィルタ生成部505により生成された新たな画像フィルタ20を含むフィルタ群は、次の世代の処理において学習用変換部38にフィードバックされる。これにより、生成部50は、複数世代に渡って遺伝的処理を繰り返して、最終的に生成した検査用画像フィルタ20をフィルタ格納部34に格納する。   The first filter generation unit 505 generates a new image filter 20 by genetic processing from a filter group including at least one image filter 20 in which a plurality of filter components are combined, and adds the image filter 20 to the filter group. For example, the first filter generation unit 505 performs genetic operations such as crossover and mutation on at least one image filter 20 selected by the first filter selection unit 501 and acquired from the filter storage unit 34. Thus, a new image filter 20 is generated. The filter group including the new image filter 20 generated by the first filter generation unit 505 is fed back to the learning conversion unit 38 in the next generation process. As a result, the generation unit 50 repeats the genetic processing for a plurality of generations, and stores the finally generated test image filter 20 in the filter storage unit 34.

撮像画像格納部37は、画像フィルタ20の変換対象である1又は複数の撮像画像を格納する。撮像画像格納部37は、一例として、順次製造される製品又は部品等の検査対象物を検査するために順次撮像した検査対象物の撮像画像を格納する。   The captured image storage unit 37 stores one or a plurality of captured images to be converted by the image filter 20. As an example, the captured image storage unit 37 stores captured images of inspection objects sequentially captured in order to inspect inspection objects such as products or parts that are sequentially manufactured.

変換部39は、生成部50によって生成された検査用画像フィルタ20により撮像画像を検査用データに変換する。より具体的には、変換部39は、生成部50により生成されてフィルタ格納部34に格納された検査用画像フィルタ20を取得する。そして、変換部39は、取得した検査用画像フィルタ20により、撮像画像格納部37に格納された撮像画像を変換させて、検査用データを生成する。検査用データ格納部47は、変換部39によって生成された検査用データを格納する。   The conversion unit 39 converts the captured image into inspection data using the inspection image filter 20 generated by the generation unit 50. More specifically, the conversion unit 39 acquires the inspection image filter 20 generated by the generation unit 50 and stored in the filter storage unit 34. Then, the conversion unit 39 converts the captured image stored in the captured image storage unit 37 using the acquired inspection image filter 20 to generate inspection data. The inspection data storage unit 47 stores the inspection data generated by the conversion unit 39.

更新指示部53は、検査用データに基づいて不良品と判断された検査対象物が、二次検査により良品と判断された場合、検査対象物の撮像画像を良品と判断される検査用データに変換すべく検査用画像フィルタ20の更新を更新部48に指示する。   When the inspection object determined to be defective based on the inspection data is determined to be non-defective by the secondary inspection, the update instruction unit 53 converts the captured image of the inspection target to inspection data determined to be non-defective. The update unit 48 is instructed to update the inspection image filter 20 for conversion.

更新部48は、更新指示部53から指示を受けて当該検査対象物の撮像画像、即ち検査用データに基づいて不良品と判断され、かつ二次検査により良品と判断された検査対象物の撮像画像を良品と判断される検査用データに変換させるように検査用画像フィルタ20を更新する。   The update unit 48 receives an instruction from the update instruction unit 53 and images an inspection object that is determined to be defective based on the captured image of the inspection object, that is, the inspection data, and is determined to be non-defective by the secondary inspection. The inspection image filter 20 is updated so that the image is converted into inspection data determined to be non-defective.

更新部48は、学習用変換部38と、検査用データ格納部41と、算出部44と、良品画像格納部45と、第2フィルタ選択部481と、第2フィルタ生成部485とを有する。本実施形態において、更新部48は、生成部50が有している学習用変換部38および算出部44を共有する。   The update unit 48 includes a learning conversion unit 38, an inspection data storage unit 41, a calculation unit 44, a non-defective image storage unit 45, a second filter selection unit 481, and a second filter generation unit 485. In the present embodiment, the update unit 48 shares the learning conversion unit 38 and the calculation unit 44 that the generation unit 50 has.

学習用変換部38は、検査用画像フィルタ20を含むフィルタ群をフィルタ格納部34から取得し、取得した1又は複数の画像フィルタ20により撮像画像を変換させて検査用データのそれぞれを生成する。   The learning conversion unit 38 acquires a filter group including the inspection image filter 20 from the filter storage unit 34, converts the captured image by the acquired one or a plurality of image filters 20, and generates each of the inspection data.

更新部48内の検査用データ格納部41は、学習用変換部38によって生成された検査用データのそれぞれを格納する。検査用データ格納部41は、一例として、生成された検査用データのそれぞれを変換した画像フィルタ20に対応付けて格納する。   The inspection data storage unit 41 in the update unit 48 stores each of the inspection data generated by the learning conversion unit 38. As an example, the inspection data storage unit 41 stores each of the generated inspection data in association with the converted image filter 20.

良品画像格納部45は、検査用データの目標となる良品画像を格納する。良品画像は、一例として、良品である検査対象物のサンプルを撮像して生成した画像などであってよく、検査用データ格納部47内の検査用データから検出対象となる傷等の不良箇所を消し去った検査用データであってもよい。これに代えて、良品画像は、全面的に不良箇所がない旨を示す均一画像であってもよい。   The non-defective image storage unit 45 stores a non-defective image that is the target of the inspection data. As an example, the non-defective image may be an image generated by imaging a sample of a non-defective inspection target, and a defective portion such as a scratch to be detected from the inspection data in the inspection data storage unit 47 may be detected. It may be inspection data that has been erased. Instead of this, the non-defective image may be a uniform image indicating that there is no defective portion on the entire surface.

算出部44は、フィルタ格納部34に格納された1又は複数の画像フィルタ20のそれぞれについて、当該画像フィルタ20の検査用データと良品画像との差分を重み画像または重みデータにより重み付けして適合度(以下、第2適合度と示す)を算出する。ここで、第2適合度は、更新部48による検査用画像フィルタ20の更新処理において算出され、撮像画像を良品画像へと変換するのに適しているかを表す。また、重み画像または重みデータは、検査用データと良品画像との比較におけるデータ領域毎の重みを表わす画像またはデータを表わす。   For each of one or a plurality of image filters 20 stored in the filter storage unit 34, the calculation unit 44 weights the difference between the inspection data of the image filter 20 and the non-defective image with a weighted image or weight data, and the degree of fitness. (Hereinafter referred to as the second matching degree) is calculated. Here, the second matching degree is calculated in the updating process of the inspection image filter 20 by the updating unit 48 and represents whether it is suitable for converting the captured image into a non-defective image. The weight image or weight data represents an image or data representing the weight for each data area in the comparison between the inspection data and the non-defective image.

第2フィルタ選択部481は、フィルタ群に含まれる複数の画像フィルタ20のうち、検査対象物の撮像画像から良品と判断される検査用データへの変換に対する第2適合度がより高い画像フィルタ20を、検査用画像フィルタ20として優先的に選択する。より具体的には、第2フィルタ選択部481は、生物の自然淘汰をモデル化した手法により、残存させる少なくとも1つの画像フィルタ20を選択する。第2フィルタ選択部481は、一例として、フィルタ格納部34に格納された複数の画像フィルタ20のそれぞれの第2適合度に基づき、エリート選択およびルーレット選択といった遺伝的計算により少なくとも1つの画像フィルタ20を選択する。また、第2フィルタ選択部481は、選択されなかった画像フィルタ20を、例えばフィルタ格納部34から削除することにより淘汰してもよい。   The second filter selection unit 481 has a higher second conformity with respect to the conversion from the captured image of the inspection object to the inspection data determined to be non-defective among the plurality of image filters 20 included in the filter group. Are preferentially selected as the inspection image filter 20. More specifically, the second filter selection unit 481 selects at least one image filter 20 to remain by using a technique that models natural selection of living things. For example, the second filter selection unit 481 uses at least one image filter 20 by genetic calculation such as elite selection and roulette selection based on the second fitness of each of the plurality of image filters 20 stored in the filter storage unit 34. Select. The second filter selection unit 481 may hesitate by deleting the image filter 20 that has not been selected from the filter storage unit 34, for example.

第2フィルタ生成部485は、検査用画像フィルタ20を含むフィルタ群から、遺伝的処理により新たな画像フィルタ20を生成してフィルタ群に加える。ここで、第2フィルタ生成部485は、第2フィルタ選択部481により選択された少なくとも1つの画像フィルタ20に対して、交叉および突然変異等の遺伝的な操作をして、新たな画像フィルタ20を生成する。第2フィルタ生成部485により生成された新たな画像フィルタ20を含むフィルタ群は、次の世代の処理において学習用変換部38にフィードバックされる。これにより、更新部48は、二次検査にて良品と判断された検査対象物について、撮像画像から良品と判断される検査用データに変換する検査用画像フィルタ20を、複数世代に渡って遺伝的処理を繰り返して生成できる。そして、更新部48により更新された画像フィルタ20は、変換部39へと提供される。   The second filter generation unit 485 generates a new image filter 20 from the filter group including the test image filter 20 by genetic processing and adds the image filter 20 to the filter group. Here, the second filter generation unit 485 performs a genetic operation such as crossover and mutation on the at least one image filter 20 selected by the second filter selection unit 481 to generate a new image filter 20. Is generated. The filter group including the new image filter 20 generated by the second filter generation unit 485 is fed back to the learning conversion unit 38 in the next generation process. Thereby, the update unit 48 inherits the inspection image filter 20 for converting the captured image into the inspection data determined to be non-defective for the inspection target determined to be non-defective in the secondary inspection over a plurality of generations. Can be generated by repeating the process. Then, the image filter 20 updated by the update unit 48 is provided to the conversion unit 39.

このような画像処理装置10は、学習用変換部38による学習用の変換処理および算出部44による適合度の算出処理を利用した、生成部50による新たな画像フィルタ20の生成処理および更新部48による画像フィルタ20の更新処理を、複数回(例えば複数世代)繰り返す。これにより、画像処理装置10は、二次検査にて良品と判断された検査対象物の撮像画像から欠陥を検出しない検査データへ変換するのに適した検査用画像フィルタ20を、進化的計算を用いて生成することができる。   Such an image processing apparatus 10 uses the learning conversion process by the learning conversion unit 38 and the fitness calculation process by the calculation unit 44 to generate and update the new image filter 20 by the generation unit 50. The updating process of the image filter 20 is repeated a plurality of times (for example, a plurality of generations). As a result, the image processing apparatus 10 performs evolutionary calculation on the inspection image filter 20 suitable for converting the captured image of the inspection object determined to be non-defective in the secondary inspection into inspection data that does not detect a defect. Can be used.

図2は、本実施形態に係るフィルタ部品22を直列に組み合わせた画像フィルタ20の一例を示す。図3は、本実施形態に係るフィルタ部品22を木構造に組み合わせた画像フィルタ20の一例を示す。   FIG. 2 shows an example of the image filter 20 in which the filter components 22 according to the present embodiment are combined in series. FIG. 3 shows an example of the image filter 20 in which the filter component 22 according to the present embodiment is combined in a tree structure.

画像フィルタ20は、図2に示されるような、複数のフィルタ部品22を直列に組み合わせた構成であってよい。また、画像フィルタ20は、図3に示されるような、複数のフィルタ部品22を木構造に組み合わせた構成であってもよい。また、画像フィルタ20は、1つの入力端に対して、複数の出力端を有する構成であってもよい。また、画像フィルタ20は、複数の入力端および複数の出力端を有する構成であってもよい。   The image filter 20 may have a configuration in which a plurality of filter components 22 are combined in series as shown in FIG. The image filter 20 may have a configuration in which a plurality of filter components 22 are combined in a tree structure as shown in FIG. Further, the image filter 20 may have a plurality of output ends with respect to one input end. The image filter 20 may have a configuration having a plurality of input ends and a plurality of output ends.

画像フィルタ20は、受け取った学習用入力画像に対してフィルタ演算処理を施して、出力画像を出力する。画像フィルタ20は、一例として、画像データに対して演算を施すプログラムとする。また、画像フィルタ20は、画像データに対して施すべき演算内容を表わす演算式であってもよい。   The image filter 20 performs a filter calculation process on the received learning input image and outputs an output image. As an example, the image filter 20 is a program that performs an operation on image data. In addition, the image filter 20 may be an arithmetic expression that represents the content of calculation to be performed on the image data.

フィルタ部品22が木構造に組み合わされた構成の画像フィルタ20は、木構造の末端(最下位)のフィルタ部品22のそれぞれに、同一の学習用入力画像が与えられ、木構造の最上位のフィルタ部品22から出力画像を出力する。これに代えて、このような画像フィルタ20は、複数の末端のフィルタ部品22のそれぞれに互いに異なる学習用入力画像が与えられてもよい。   In the image filter 20 having the structure in which the filter parts 22 are combined in a tree structure, the same learning input image is given to each of the end (lowest) filter parts 22 of the tree structure. An output image is output from the component 22. Instead of this, such an image filter 20 may be provided with different learning input images for each of the plurality of terminal filter components 22.

複数のフィルタ部品22のそれぞれは、前段に配置されたフィルタ部品22から出力された画像データを受け取り、受け取った画像データに演算を施して後段に配置されたフィルタ部品22に与える。複数のフィルタ部品22のそれぞれは、プログラムモジュールおよび演算式等であってよく、受け取った画像データに対して2値化演算、ヒストグラム演算、平滑化演算、エッジ検出演算、モルフォロジ演算、及び/または周波数空間での演算(例えば、ローパスフィルタリング演算およびハイパスフィルタリング演算)等の単項演算を施してもよい。   Each of the plurality of filter components 22 receives the image data output from the filter component 22 arranged in the previous stage, performs an operation on the received image data, and gives it to the filter component 22 arranged in the subsequent stage. Each of the plurality of filter components 22 may be a program module, an arithmetic expression, or the like, and performs binarization operation, histogram operation, smoothing operation, edge detection operation, morphology operation, and / or frequency on received image data. Unary operations such as space operations (for example, low-pass filtering operations and high-pass filtering operations) may be performed.

また、複数のフィルタ部品22のそれぞれは、受け取った画像データに対して平均演算、差分演算及び/またはファジー演算(例えば論理和演算、論理積演算、代数和、代数積、限界和、限界積、激烈和および激烈積等)等の二項演算を施してもよい。   In addition, each of the plurality of filter components 22 performs an average operation, a difference operation, and / or a fuzzy operation (for example, logical sum operation, logical product operation, algebraic sum, algebraic product, limit sum, limit product, Binomial operations such as intense sum and intense product) may be performed.

本実施形態において、生成部50は、入力画像を出力画像または出力データにそれぞれ変換する複数のフィルタ部品22を組み合わせて、学習用入力画像を学習用出力データにより近いデータに変換する図示したような検査用画像フィルタ20を生成する。   In the present embodiment, the generation unit 50 combines a plurality of filter components 22 that respectively convert an input image into an output image or output data, and converts the learning input image into data closer to the learning output data as illustrated. The inspection image filter 20 is generated.

図4は、本実施形態に係るフィルタ部品22を直列に組み合わせた画像フィルタ20に対して行われる遺伝的な操作の一例を示す。図5は、本実施形態に係るフィルタ部品22を木構造に組み合わせた画像フィルタ20に対して行われる交叉操作の一例を示す。図6は、本実施形態に係るフィルタ部品22を木構造に組み合わせた画像フィルタ20に対して行われる突然変異操作の一例を示す。   FIG. 4 shows an example of a genetic operation performed on the image filter 20 in which the filter components 22 according to this embodiment are combined in series. FIG. 5 shows an example of a crossover operation performed on the image filter 20 in which the filter component 22 according to this embodiment is combined in a tree structure. FIG. 6 shows an example of a mutation operation performed on the image filter 20 in which the filter component 22 according to this embodiment is combined in a tree structure.

第1フィルタ生成部505および第2フィルタ生成部485は、一例として、2個またはそれ以上の画像フィルタ20に対して、遺伝的な操作の一例である交叉操作を行って新たな2個またはそれ以上の画像フィルタ20を生成する。第1フィルタ生成部505および第2フィルタ生成部485は、一例として、図4および図5に示されるように、既に生成された少なくとも1つの一の画像フィルタ20Aの一部のフィルタ部品群24Aを、既に生成された他の画像フィルタ20Bの少なくとも一部のフィルタ部品群24Bと置換して、新たな画像フィルタ20Eおよび20Fを生成する。なお、フィルタ部品群24は、1又は複数のフィルタ部品22を組み合わせた部材であってもよい。   As an example, the first filter generation unit 505 and the second filter generation unit 485 perform a crossover operation, which is an example of a genetic operation, on two or more image filters 20 to generate two or more new ones. The above image filter 20 is generated. As an example, the first filter generation unit 505 and the second filter generation unit 485, as shown in FIG. 4 and FIG. 5, select a part of the filter component group 24A of at least one image filter 20A that has already been generated. Then, by replacing at least a part of the filter component group 24B of the other image filter 20B that has already been generated, new image filters 20E and 20F are generated. The filter component group 24 may be a member in which one or a plurality of filter components 22 are combined.

また、第1フィルタ生成部505および第2フィルタ生成部485は、一例として、一の画像フィルタ20に対して、遺伝的な操作の一例である突然変異操作を行って新たな一の画像フィルタ20を生成する。第1フィルタ生成部505および第2フィルタ生成部485は、一例として、図4および図6に示されるように、既に生成された一の画像フィルタ20Cの一部のフィルタ部品群24Cを、ランダムに選択された他のフィルタ部品群24Gに置換して、新たな画像フィルタ20Gを生成する。   In addition, as an example, the first filter generation unit 505 and the second filter generation unit 485 perform a mutation operation, which is an example of a genetic operation, on one image filter 20 to create a new one image filter 20. Is generated. As an example, the first filter generation unit 505 and the second filter generation unit 485 randomly select a part of the filter component group 24C of one image filter 20C that has already been generated, as shown in FIGS. A new image filter 20G is generated by replacing the other selected filter component group 24G.

また、第1フィルタ生成部505および第2フィルタ生成部485は、現世代の画像フィルタ20をそのまま次世代の画像フィルタ20として残してもよい。第1フィルタ生成部505および第2フィルタ生成部485は、一例として、図4に示されるように、画像フィルタ20Dのフィルタ部品22の構成をそのまま含む次世代の画像フィルタ20Hを生成する。   The first filter generation unit 505 and the second filter generation unit 485 may leave the current generation image filter 20 as it is as the next generation image filter 20. As an example, the first filter generation unit 505 and the second filter generation unit 485 generate a next-generation image filter 20H that directly includes the configuration of the filter component 22 of the image filter 20D, as shown in FIG.

第1フィルタ選択部501および第2フィルタ選択部481は、1又は複数の画像フィルタ20に対して生物の自然淘汰をモデル化した手法により1又は複数の画像フィルタ20を選択する。第1フィルタ選択部501は、複数の画像フィルタ20の中の第1適合度がより高い画像フィルタ20を優先的に選択してもよい。また第2フィルタ選択部481は、複数の画像フィルタ20の中の第2適合度がより高い画像フィルタ20を優先的に選択してもよい。   The first filter selection unit 501 and the second filter selection unit 481 select one or a plurality of image filters 20 by a technique in which a natural selection of a living thing is modeled for one or a plurality of image filters 20. The first filter selection unit 501 may preferentially select the image filter 20 having a higher first conformity among the plurality of image filters 20. Further, the second filter selection unit 481 may preferentially select the image filter 20 having a higher second matching degree among the plurality of image filters 20.

第1フィルタ選択部501および第2フィルタ選択部481は、一例として、複数の画像フィルタ20のそれぞれの適合度に基づき、エリート選択およびルーレット選択といった手法に応じて、画像フィルタ20を選択してよい。そして、第1フィルタ選択部501および第2フィルタ選択部481は、選択された画像フィルタ20をフィルタ格納部34内に保存し、選択されなかった画像フィルタ20をフィルタ格納部34内から削除する。   As an example, the first filter selection unit 501 and the second filter selection unit 481 may select the image filter 20 according to a technique such as elite selection and roulette selection based on the degree of fitness of each of the plurality of image filters 20. . Then, the first filter selection unit 501 and the second filter selection unit 481 store the selected image filter 20 in the filter storage unit 34 and delete the unselected image filter 20 from the filter storage unit 34.

図7は、本実施形態に係る画像フィルタ20の適合度を表わすパラメータの一例である類似度の算出方法の一例を示す。本実施形態において、算出部44は、当該画像フィルタ20により学習用入力画像または撮像画像を変換させることにより生成された学習用出力データまたは検査用データと、学習用目標データまたは良品画像がどれだけ類似しているかを表わす類似度を算出する。この類似度は、値がより大きいほど、当該出力画像を生成した画像フィルタ20がより適切であることを示す評価値または指標として用いられる。   FIG. 7 shows an example of a method for calculating similarity, which is an example of a parameter representing the degree of matching of the image filter 20 according to the present embodiment. In the present embodiment, the calculation unit 44 determines how much of the learning output data or inspection data generated by converting the learning input image or captured image by the image filter 20 and the learning target data or non-defective image. A similarity indicating whether they are similar is calculated. This similarity is used as an evaluation value or index indicating that the larger the value is, the more appropriate the image filter 20 that generated the output image is.

算出部44は、学習用出力データまたは検査用データの各領域の値と、学習用目標データまたは良品画像の対応する各領域の値とを比較した比較値を算出し、領域毎の比較値に対して重みデータにより指定される重みを乗じる。そして、算出部44は、重みが乗じられた領域毎の比較値を全領域について平均または合計した値を算出し、算出した値を学習用出力データまたは検査用データの類似度として出力する。   The calculation unit 44 calculates a comparison value by comparing the value of each region of the learning output data or the inspection data with the value of each region corresponding to the learning target data or the non-defective product image, and sets the comparison value for each region. The weight specified by the weight data is multiplied. Then, the calculation unit 44 calculates a value obtained by averaging or summing the comparison values for each region multiplied by the weight for all regions, and outputs the calculated value as the similarity of the learning output data or the inspection data.

算出部44は、一例として、出力画像のピクセル毎の輝度値と、目標画像の対応するピクセルの輝度値との差分または比率を算出する。そして、算出部44は、一例として、算出したピクセル毎の差分または比率のそれぞれに、重みデータにより指定される対応する重みを乗じ、重みが乗じられたピクセル毎の差分または比率を合計または平均して、類似度を算出する。   For example, the calculation unit 44 calculates the difference or ratio between the luminance value for each pixel of the output image and the luminance value of the corresponding pixel of the target image. Then, as an example, the calculation unit 44 multiplies each calculated difference or ratio for each pixel by the corresponding weight specified by the weight data, and sums or averages the difference or ratio for each pixel multiplied by the weight. Thus, the similarity is calculated.

例えば、重みデータが重み画像により表わされている場合、算出部44は、下記式(1)に示される演算をして、類似度を算出する。なお、この場合において、出力画像、目標画像および重み画像のサイズは、同一とされる。   For example, when the weight data is represented by a weight image, the calculation unit 44 calculates the similarity by performing an operation represented by the following formula (1). In this case, the sizes of the output image, the target image, and the weight image are the same.

Figure 2011022797
Figure 2011022797

式(1)において、fは、類似度を表わす。Ymaxは、輝度の最大値を表わす。また、xは、画像の水平方向のピクセル位置を示す変数である。yは、画像の垂直方向のピクセル位置を示す変数である。xmaxは、画像の水平方向のピクセル数を示す定数である。ymaxは、画像の垂直方向のピクセル数を示す定数である。 In the formula (1), f represents the similarity. Y max represents the maximum luminance value. X is a variable indicating the pixel position in the horizontal direction of the image. y is a variable indicating the pixel position in the vertical direction of the image. xmax is a constant indicating the number of pixels in the horizontal direction of the image. ymax is a constant indicating the number of pixels in the vertical direction of the image.

weight(x,y)は、重み画像における(x,y)位置のピクセルの輝度値を表わす。Itarget(x,y)は、検査用画像における(x,y)位置のピクセルの輝度値を表わす。Ifilter(x,y)は、出力画像における(x,y)位置のピクセルの輝度値を表わす。 I weight (x, y) represents the luminance value of the pixel at the (x, y) position in the weighted image. I target (x, y) represents the luminance value of the pixel at the (x, y) position in the inspection image. I filter (x, y) represents the luminance value of the pixel at the (x, y) position in the output image.

すなわち、式(1)の中カッコ内の分子部分に示されるように、算出部44は、目標画像の輝度値から出力画像の輝度値の差の絶対値に対して、重み画像の輝度値を乗じた重み付き差分値を、画面内の全てのピクセル毎に算出し、算出した重み付き差分値を全ピクセルについて合計した合計重み付け差分値を算出する。さらに、式(1)の中カッコ内の分母部分に示されるように、算出部44は、重み画像の輝度値を全ピクセルについて合計した合計重みを算出する。   That is, as indicated by the numerator part in the curly braces of Expression (1), the calculation unit 44 calculates the luminance value of the weighted image with respect to the absolute value of the difference between the luminance value of the target image and the luminance value of the output image. The multiplied weighted difference value is calculated for every pixel in the screen, and a total weighted difference value is calculated by adding the calculated weighted difference values for all pixels. Further, as indicated by the denominator part in the curly braces of Expression (1), the calculation unit 44 calculates a total weight obtained by adding the luminance values of the weighted image for all pixels.

さらに、算出部44は、合計重み付け差分値を合計重みで除算した除算値(式(1)の中カッコ内)に、輝度値の最大値の逆数(1/Ymax)を乗じて正規化値(式(1)の2番目の項)を算出する。そして、算出部44は、1から、正規化値を減じた値を、類似度fとして算出する。このようにして、算出部44は、出力画像と目標画像との差分を領域毎に重み付けして類似度を算出することができる。なお、算出部44は、類似度に加え、処理部品の数の少なさ、処理負荷の低さ、および並列度の大きさ等に応じて、適合度の評価を高めてもよい。   Further, the calculation unit 44 multiplies the division value (in the curly braces of the equation (1)) obtained by dividing the total weighted difference value by the total weight by the reciprocal (1 / Ymax) of the maximum value of the luminance value (normalized value). The second term of the formula (1) is calculated. Then, the calculation unit 44 calculates a value obtained by subtracting the normalized value from 1 as the similarity f. In this way, the calculation unit 44 can calculate the similarity by weighting the difference between the output image and the target image for each region. In addition to the similarity, the calculation unit 44 may increase the evaluation of the fitness according to the small number of processing components, the low processing load, the degree of parallelism, and the like.

図8は、本実施形態に係る画像処理装置10の処理フローの一例を示す。画像処理装置10は、ステップS101〜ステップS105の各処理を実行する。なお、画像処理装置10は、一例として、与えられた学習用入力画像を学習用出力データに変換する画像フィルタ20を生成するための初期の画像フィルタ20として、ランダムに生成したまたは既に生成した画像フィルタ20を、予めフィルタ格納部34に格納しておく。   FIG. 8 shows an example of the processing flow of the image processing apparatus 10 according to the present embodiment. The image processing apparatus 10 performs each process of step S101 to step S105. As an example, the image processing apparatus 10 uses, as an example, an image that is randomly generated or has already been generated as an initial image filter 20 for generating an image filter 20 that converts a given input image for learning into output data for learning. The filter 20 is stored in the filter storage unit 34 in advance.

まず、生成部50は、検査用画像フィルタ20を生成する(S101)。ここで、生成部50は、一例として、複数世代に渡って遺伝的処理を繰り返して、最終的に1の検査用画像フィルタ20を生成する。   First, the generation unit 50 generates the inspection image filter 20 (S101). Here, as an example, the generation unit 50 repeats genetic processing for a plurality of generations, and finally generates one image filter for examination 20.

続いて、変換部39は、生成部50によって生成された検査用画像フィルタ20により撮像画像を変換して検査用データを生成する(S103)。そして、変換部39は、生成した検査用データを検査用データ格納部47に格納する。外部の選別装置又は検査者等は、検査用データに基づいて、検査対象物の一次検査をする。一次検査において不良を検出した場合、外部の選別装置又は検査者は、検査対象物を詳細調査用して二次検査を実施する。ここで、一次、二次とは、検査の相対的な順番を示すものであり、最初の検査、2番目の検査に限定したものではない。   Subsequently, the conversion unit 39 converts the captured image using the inspection image filter 20 generated by the generation unit 50 to generate inspection data (S103). Then, the conversion unit 39 stores the generated inspection data in the inspection data storage unit 47. An external sorting device or an inspector performs a primary inspection of the inspection object based on the inspection data. When a defect is detected in the primary inspection, an external sorting device or an inspector performs a secondary inspection using a detailed investigation of the inspection object. Here, primary and secondary indicate the relative order of inspections, and are not limited to the first inspection and the second inspection.

続いて、ステップS103において検査用画像フィルタ20によって変換した検査用データから一次検査にて不良品(NG)と判断された検査対象物が、二次検査にて良品(OK)と判断された場合(S104:Yes)、更新部48は、撮像画像を良品と判断される検査用データに変換するように検査用画像フィルタ20を更新する(S105)。また、一次検査にて良品と判断され、または一次検査および二次検査とも不良品と判断された場合(S104:No)、画像処理装置10は、検査に適した検査用画像フィルタ20であると判断して、更新部48によるステップS105の更新処理を実施しない。そして、次の検査対象物の検査をする場合(S106:No)、画像処理装置10は、ステップS103の変換処理に戻る。また、検査を終了する場合(S106:Yes)、画像処理装置10は、当該フローを終了する。   Subsequently, when the inspection object determined to be defective (NG) in the primary inspection from the inspection data converted by the inspection image filter 20 in step S103 is determined to be non-defective (OK) in the secondary inspection. (S104: Yes), the update unit 48 updates the inspection image filter 20 so as to convert the captured image into inspection data determined to be non-defective (S105). Further, when it is determined that the product is a non-defective product in the primary inspection, or both the primary inspection and the secondary inspection are determined to be defective (S104: No), the image processing apparatus 10 is an inspection image filter 20 suitable for inspection. Judgment and the update process of step S105 by the update part 48 are not implemented. When the next inspection object is to be inspected (S106: No), the image processing apparatus 10 returns to the conversion process in step S103. If the inspection is to be ended (S106: Yes), the image processing apparatus 10 ends the flow.

このようにして、画像処理装置10は、撮像画像を適正な検査結果が得られる検査用データに変換する検査用画像フィルタ20を、進化的計算を用いて生成することができる。   In this way, the image processing apparatus 10 can generate the inspection image filter 20 that converts the captured image into inspection data from which an appropriate inspection result is obtained using evolutionary calculation.

なお、変換部39は、検査用画像フィルタ20により撮像画像を検査用画像に変換してもよい。この場合、更新部48は、一例として、検査対象物の撮像画像を良品と判断される検査用画像に変換させるように検査用画像フィルタ20を更新する。ここで、更新部48は、ステップS105の処理において、良品と判断される検査用画像として、不良と判断すべき箇所を含まない均一画像を用いてもよい。つまり、更新部48は、良品と判断される検査用画像として、黒色等の全面同色の画像を用いてもよい。   Note that the conversion unit 39 may convert the captured image into an inspection image by the inspection image filter 20. In this case, for example, the update unit 48 updates the inspection image filter 20 so as to convert the captured image of the inspection object into an inspection image that is determined to be non-defective. Here, the update unit 48 may use a uniform image that does not include a portion that should be determined to be defective as the inspection image that is determined to be non-defective in the process of step S105. That is, the update unit 48 may use an image of the same color on the entire surface, such as black, as the inspection image that is determined to be non-defective.

図9は、図8のステップS101における検査用画像フィルタ20を生成するまでの処理フローの一例を示す。画像処理装置10は、図8に示されるステップS101において、ステップS203〜ステップS213の各処理を、複数回(例えば複数世代)繰返して実行する(S201、S215)。   FIG. 9 shows an example of a processing flow until the inspection image filter 20 is generated in step S101 of FIG. In step S101 shown in FIG. 8, the image processing apparatus 10 repeatedly executes the processes in steps S203 to S213 a plurality of times (for example, a plurality of generations) (S201 and S215).

まず、学習用変換部38は、前世代から残存した少なくとも1つの画像フィルタ20にそれぞれにより、学習用入力画像を変換して学習用出力データを生成する(S203)。なお、生成部50は、一例として、学習用入力画像を学習用出力データに変換する画像フィルタ20を生成するための初期の画像フィルタ20として、ランダムに生成した画像フィルタ20を、または既に生成した画像フィルタ20を、予めフィルタ格納部34に格納しておく。続いて、算出部44は、フィルタ格納部34に格納された複数の画像フィルタ20のそれぞれにより生成された複数の学習用出力データのそれぞれ毎に、以下のステップS207の処理を実行する(S205、S209)。   First, the learning conversion unit 38 converts the learning input image to each of the at least one image filter 20 remaining from the previous generation, and generates learning output data (S203). As an example, the generation unit 50 has generated the randomly generated image filter 20 or has already generated the initial image filter 20 for generating the image filter 20 that converts the learning input image into the learning output data. The image filter 20 is stored in the filter storage unit 34 in advance. Subsequently, the calculation unit 44 executes the processing of the following step S207 for each of the plurality of learning output data generated by each of the plurality of image filters 20 stored in the filter storage unit 34 (S205, S209).

算出部44は、当該学習用出力データと学習用目標データとを比較をして、当該学習用出力データと学習用目標データとの類似度から第1適合度を算出する(S207)。算出部44は、複数の学習用出力データのすべてについて処理を終えると、処理をステップS211に進める(S209)。   The calculation unit 44 compares the learning output data with the learning target data, and calculates the first matching degree from the similarity between the learning output data and the learning target data (S207). When the calculation unit 44 finishes the process for all of the plurality of learning output data, the process proceeds to step S211 (S209).

続いて、第1フィルタ選択部501は、ステップS211にて算出したそれぞれの第1適合度に基づき、複数の画像フィルタ20のうち少なくとも1つを選択する(S211)。第1フィルタ選択部501は、一例として、複数の画像フィルタ20のうち、第1適合度がより高い画像フィルタ20を優先的に選択する。また、第1フィルタ選択部501は、第1適合度が基準適合度より高い画像フィルタ20を選択してよい。また、第1フィルタ選択部501は、第1適合度が上位から予め定められた範囲の画像フィルタ20を選択してもよい。そして、第1フィルタ選択部501は、選択されなかった画像フィルタ20を、例えばフィルタ格納部34から削除して淘汰する。   Subsequently, the first filter selection unit 501 selects at least one of the plurality of image filters 20 based on the respective first matching degrees calculated in step S211 (S211). As an example, the first filter selection unit 501 preferentially selects an image filter 20 having a higher first matching degree from among the plurality of image filters 20. Further, the first filter selection unit 501 may select the image filter 20 having a first matching degree higher than the reference matching degree. Further, the first filter selection unit 501 may select the image filter 20 in a range in which the first matching degree is predetermined from the top. Then, the first filter selection unit 501 deletes the image filter 20 that has not been selected from the filter storage unit 34, for example.

第1フィルタ生成部505は、一例として、少なくとも1つの画像フィルタ20を含むフィルタ群をフィルタ格納部34から取得して、前世代から残存した複数の画像フィルタ20に対して交叉操作および突然変異操作等の遺伝的な操作を行って、少なくとも一部のフィルタ部品22を他のフィルタ部品22に置換した新たな複数の画像フィルタ20を生成する(S213)。そして、第1フィルタ生成部505は、一例として、生成した新たな画像フィルタ20をフィルタ格納部34に格納する。ここで、第1フィルタ生成部505は、新たな画像フィルタ20を含むフィルタ群を次世代の処理に向けて、学習用変換部38にフィードバックする。   For example, the first filter generation unit 505 acquires a filter group including at least one image filter 20 from the filter storage unit 34, and performs a crossover operation and a mutation operation on the plurality of image filters 20 remaining from the previous generation. A plurality of new image filters 20 in which at least some of the filter components 22 are replaced with other filter components 22 are generated by performing a genetic operation such as (S213). The first filter generation unit 505 stores the generated new image filter 20 in the filter storage unit 34 as an example. Here, the first filter generation unit 505 feeds back the filter group including the new image filter 20 to the learning conversion unit 38 for the next-generation processing.

画像処理装置10は、以上の処理を複数の世代(例えば数十世代または数百世代以上)繰り返して実行して、最後の世代(例えば第N世代、Nは2以上の自然数)、または第1適合度の増加が収束するまで処理を実行した後に、当該フローを抜ける(S215)。このようにして、画像処理装置10は、学習用入力画像を学習用目標データへ変換するのに適した検査用画像フィルタ20を、進化的計算を用いて生成することができる。   The image processing apparatus 10 repeatedly executes the above processing for a plurality of generations (for example, several tens of generations or several hundreds of generations), and the last generation (for example, the Nth generation, N is a natural number of 2 or more), or the first After the process is executed until the increase in fitness converges, the flow is exited (S215). In this manner, the image processing apparatus 10 can generate the inspection image filter 20 suitable for converting the learning input image into the learning target data using the evolutionary calculation.

次に、検査用データに基づいて不良品と判断され、かつ二次検査にて良品と判断された検査対象物について、当該検査対象物の撮像画像を良品と判断される検査用データに変換する検査用画像フィルタ20を、進化的計算を用いて生成するフローを図10を用いて説明する。図10は、図8のステップS105における検査用画像フィルタ20を更新するまでの処理フローの一例を示す。画像処理装置10は、図8に示されるステップS105において、以下の処理を実行する。まず、画像処理装置10は、検査用データに基づいて不良品と判断された検査対象物が、二次検査の結果により良品と判断された場合、検査用画像フィルタ20の更新を更新部48へと指示する(S300)。画像処理装置10は、ステップS303〜ステップS313の各処理を、複数回(例えば複数世代)繰返して実行する(S301、S315)。   Next, for an inspection object that is determined to be defective based on the inspection data and is determined to be non-defective in the secondary inspection, the captured image of the inspection object is converted into inspection data that is determined to be non-defective. A flow of generating the inspection image filter 20 using evolutionary calculation will be described with reference to FIG. FIG. 10 shows an example of a processing flow until the inspection image filter 20 in step S105 of FIG. 8 is updated. The image processing apparatus 10 executes the following process in step S105 shown in FIG. First, the image processing apparatus 10 updates the inspection image filter 20 to the update unit 48 when the inspection object determined to be defective based on the inspection data is determined to be a non-defective product based on the result of the secondary inspection. (S300). The image processing apparatus 10 repeatedly executes each process of step S303 to step S313 a plurality of times (for example, a plurality of generations) (S301, S315).

まず、学習用変換部38は、検査用画像フィルタ20を含むフィルタ群をフィルタ格納部34から取得して、取得した画像フィルタ20のそれぞれにより撮像画像を変換して検査用データを生成する(ステップS303)。続いて、算出部44は、複数の画像フィルタ20のそれぞれにより生成された複数の検査用データのそれぞれ毎に、以下のステップS307の処理を実行する(S305、S309)。   First, the learning conversion unit 38 acquires a filter group including the inspection image filter 20 from the filter storage unit 34, converts the captured image by each of the acquired image filters 20, and generates inspection data (step). S303). Subsequently, the calculation unit 44 performs the following processing in step S307 for each of the plurality of pieces of inspection data generated by each of the plurality of image filters 20 (S305 and S309).

算出部44は、検査用データと良品画像とを比較をして、検査用データと良品画像との類似度から第2適合度を算出する(S307)。算出部44は、1又は複数の検査用データのすべてについて処理を終えると、処理をステップS311に進める(S309)。   The calculation unit 44 compares the inspection data and the non-defective image, and calculates the second matching degree from the similarity between the inspection data and the non-defective image (S307). When the calculation unit 44 finishes the process for all of the one or more inspection data, the calculation unit 44 advances the process to step S311 (S309).

続いて、第2フィルタ選択部481は、ステップS311にて算出したそれぞれの第2適合度に基づき、複数の画像フィルタ20のうち少なくとも1つを選択する(S311)。第2フィルタ選択部481は、一例として、1又は複数の画像フィルタ20のうち、第2適合度がより高い画像フィルタ20を優先的に選択する。第2フィルタ選択部481は、一例として、第2適合度が基準適合度より高い画像フィルタ20を選択する。また、第2フィルタ選択部481は、第2適合度が上位から予め定められた範囲の画像フィルタ20を選択してもよい。   Subsequently, the second filter selection unit 481 selects at least one of the plurality of image filters 20 based on the respective second matching degrees calculated in step S311 (S311). For example, the second filter selection unit 481 preferentially selects an image filter 20 having a higher second matching degree from one or a plurality of image filters 20. For example, the second filter selection unit 481 selects the image filter 20 having the second matching degree higher than the reference matching degree. Further, the second filter selection unit 481 may select the image filter 20 in a range in which the second matching degree is predetermined from the top.

また、第2フィルタ選択部481は、フィルタ群に含まれる複数の画像フィルタ20の中から、生成部50による画像フィルタ20の生成処理で算出した第1適合度、および第2適合度に基づいて、検査用画像フィルタ20を選択してもよい。この場合、更新部48は、ステップS303の処理において、学習用入力画像格納部36に格納された学習用入力画像を学習用変換部38により変換させて学習用出力データを出力させ、ステップS307の処理において、学習用出力データと学習用目標データとの類似度から第1適合度を算出部44により算出してよい。   In addition, the second filter selection unit 481 is based on the first fitness level and the second fitness level calculated by the generation process of the image filter 20 by the generation unit 50 from among the plurality of image filters 20 included in the filter group. The inspection image filter 20 may be selected. In this case, in the process of step S303, the update unit 48 converts the learning input image stored in the learning input image storage unit 36 by the learning conversion unit 38 to output learning output data. In the processing, the first matching degree may be calculated by the calculation unit 44 from the similarity between the learning output data and the learning target data.

第2フィルタ選択部481は、一例として、第1適合度と第2適合度との合計値又は平均値がより高い画像フィルタ20を優先的に選択する。これに代えて、第2フィルタ選択部481は、第1及び第2適合度を予め定められた比率により重み付けして加算した結果がより高い画像フィルタ20を優先してもよい。そして、第2フィルタ選択部481は、一例として、選択されなかった画像フィルタ20を、例えばフィルタ格納部34から削除して淘汰する。   For example, the second filter selection unit 481 preferentially selects the image filter 20 having a higher total value or average value of the first fitness and the second fitness. Instead, the second filter selection unit 481 may prioritize the image filter 20 having a higher result obtained by weighting and adding the first and second matching degrees according to a predetermined ratio. Then, as an example, the second filter selection unit 481 deletes the unselected image filter 20 from the filter storage unit 34, for example.

第2フィルタ生成部485は、一例として、第2フィルタ選択部481が選択した少なくとも1つの検査用画像フィルタ20を含むフィルタ群をフィルタ格納部34から取得して、前世代から残存した1又は複数の画像フィルタ20に対して交叉操作および突然変異操作等の遺伝的な操作を行って、少なくとも一部のフィルタ部品22を他のフィルタ部品22に置換した新たな1又は複数の画像フィルタ20を生成する(S313)。そして、第2フィルタ生成部485は、一例として、生成した新たな画像フィルタ20をフィルタ格納部34に格納する。ここで、第2フィルタ生成部485は、新たな画像フィルタ20を含むフィルタ群を次世代の処理に向けて、学習用変換部38にフィードバックする。   For example, the second filter generation unit 485 acquires, from the filter storage unit 34, a filter group including at least one inspection image filter 20 selected by the second filter selection unit 481, and one or more remaining from the previous generation. A new one or a plurality of image filters 20 in which at least a part of the filter parts 22 are replaced with other filter parts 22 are generated by performing a genetic operation such as a crossover operation and a mutation operation on the image filter 20 (S313). Then, as an example, the second filter generation unit 485 stores the generated new image filter 20 in the filter storage unit 34. Here, the second filter generation unit 485 feeds back the filter group including the new image filter 20 to the learning conversion unit 38 for the next-generation processing.

画像処理装置10は、以上の処理を複数の世代(例えば数十世代または数百世代以上)繰り返して実行して、最後の世代(例えば第N世代、Nは2以上の自然数)、第2適合度の増加が収束する、または、第1及び第2適合度に基づいた値(例えば合計値)の増加が収束するまで処理を実行した後に、当該フローを抜ける(S315)。このようにして、画像処理装置10は、検査データに基づいて不良品と判断され、かつ二次検査にて良品と判断された検査対象物について、当該検査対象物の撮像画像を良品と判断される検査用データに変換する検査用画像フィルタ20を、進化的計算を用いて生成することができる。   The image processing apparatus 10 repeatedly executes the above processing for a plurality of generations (for example, tens of generations or hundreds of generations or more), and performs the last generation (for example, the Nth generation, where N is a natural number of 2 or more), the second adaptation After the process is executed until the increase in the degree converges or the increase in the value (for example, the total value) based on the first and second matching degrees converges, the process is exited (S315). In this manner, the image processing apparatus 10 determines that the captured image of the inspection object is a non-defective product for the inspection object that is determined to be defective based on the inspection data and is determined to be non-defective in the secondary inspection. The inspection image filter 20 to be converted into inspection data can be generated using evolutionary computation.

図11は、本実施形態に係るコンピュータ1900のハードウェア構成の一例を示す。本実施形態に係るコンピュータ1900は、ホスト・コントローラ2082により相互に接続されるCPU2000、RAM2020、グラフィック・コントローラ2075、及び表示装置2080を有するCPU周辺部と、入出力コントローラ2084によりホスト・コントローラ2082に接続される通信インターフェイス2030、ハードディスク・ドライブ2040、及びDVDドライブ2060を有する入出力部と、入出力コントローラ2084に接続されるROM2010、フレキシブルディスク・ドライブ2050、及び入出力チップ2070を有するレガシー入出力部とを備える。   FIG. 11 shows an example of a hardware configuration of a computer 1900 according to this embodiment. A computer 1900 according to this embodiment is connected to a CPU peripheral unit including a CPU 2000, a RAM 2020, a graphic controller 2075, and a display device 2080 that are connected to each other by a host controller 2082, and to the host controller 2082 by an input / output controller 2084. An input / output unit having a communication interface 2030, a hard disk drive 2040, and a DVD drive 2060, and a legacy input / output unit having a ROM 2010, a flexible disk drive 2050, and an input / output chip 2070 connected to the input / output controller 2084 Is provided.

ホスト・コントローラ2082は、RAM2020と、高い転送レートでRAM2020をアクセスするCPU2000及びグラフィック・コントローラ2075とを接続する。CPU2000は、ROM2010及びRAM2020に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ2075は、CPU2000等がRAM2020内に設けたフレーム・バッファ上に生成する画像データを取得し、表示装置2080上に表示させる。これに代えて、グラフィック・コントローラ2075は、CPU2000等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。   The host controller 2082 connects the RAM 2020 to the CPU 2000 and the graphic controller 2075 that access the RAM 2020 at a high transfer rate. The CPU 2000 operates based on programs stored in the ROM 2010 and the RAM 2020 and controls each unit. The graphic controller 2075 acquires image data generated by the CPU 2000 or the like on a frame buffer provided in the RAM 2020 and displays it on the display device 2080. Instead of this, the graphic controller 2075 may include a frame buffer for storing image data generated by the CPU 2000 or the like.

入出力コントローラ2084は、ホスト・コントローラ2082と、比較的高速な入出力装置である通信インターフェイス2030、ハードディスク・ドライブ2040、DVDドライブ2060を接続する。通信インターフェイス2030は、ネットワークを介して他の装置と通信する。ハードディスク・ドライブ2040は、コンピュータ1900内のCPU2000が使用するプログラム及びデータを格納する。DVDドライブ2060は、DVD2095からプログラム又はデータを読み取り、RAM2020を介してハードディスク・ドライブ2040に提供する。   The input / output controller 2084 connects the host controller 2082 to the communication interface 2030, the hard disk drive 2040, and the DVD drive 2060, which are relatively high-speed input / output devices. The communication interface 2030 communicates with other devices via a network. The hard disk drive 2040 stores programs and data used by the CPU 2000 in the computer 1900. The DVD drive 2060 reads a program or data from the DVD 2095 and provides it to the hard disk drive 2040 via the RAM 2020.

また、入出力コントローラ2084には、ROM2010と、フレキシブルディスク・ドライブ2050、及び入出力チップ2070の比較的低速な入出力装置とが接続される。ROM2010は、コンピュータ1900が起動時に実行するブート・プログラム、及び/又は、コンピュータ1900のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ2050は、フレキシブルディスク2090からプログラム又はデータを読み取り、RAM2020を介してハードディスク・ドライブ2040に提供する。入出力チップ2070は、フレキシブルディスク・ドライブ2050を入出力コントローラ2084へと接続すると共に、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を入出力コントローラ2084へと接続する。   The input / output controller 2084 is connected to the ROM 2010, the flexible disk drive 2050, and the relatively low-speed input / output device of the input / output chip 2070. The ROM 2010 stores a boot program that the computer 1900 executes at startup and / or a program that depends on the hardware of the computer 1900. The flexible disk drive 2050 reads a program or data from the flexible disk 2090 and provides it to the hard disk drive 2040 via the RAM 2020. The input / output chip 2070 connects the flexible disk drive 2050 to the input / output controller 2084 and inputs / outputs various input / output devices via, for example, a parallel port, a serial port, a keyboard port, a mouse port, and the like. Connect to controller 2084.

RAM2020を介してハードディスク・ドライブ2040に提供されるプログラムは、フレキシブルディスク2090、DVD2095、又はICカード等の記録媒体に格納されて利用者によって提供される。プログラムは、記録媒体から読み出され、RAM2020を介してコンピュータ1900内のハードディスク・ドライブ2040にインストールされ、CPU2000において実行される。   A program provided to the hard disk drive 2040 via the RAM 2020 is stored in a recording medium such as the flexible disk 2090, the DVD 2095, or an IC card and provided by the user. The program is read from the recording medium, installed in the hard disk drive 2040 in the computer 1900 via the RAM 2020, and executed by the CPU 2000.

コンピュータ1900にインストールされ、コンピュータ1900を画像処理装置10として機能させるプログラムは、生成モジュールと、変換モジュールと、更新指示モジュールと、更新モジュールとを備える。これらのプログラム又はモジュールは、CPU2000等に働きかけて、コンピュータ1900を、生成部50と、変換部39と、更新指示部53と、更新部48としてそれぞれ機能させる。   A program that is installed in the computer 1900 and causes the computer 1900 to function as the image processing apparatus 10 includes a generation module, a conversion module, an update instruction module, and an update module. These programs or modules work on the CPU 2000 or the like to cause the computer 1900 to function as the generation unit 50, the conversion unit 39, the update instruction unit 53, and the update unit 48, respectively.

これらのプログラムに記述された情報処理は、コンピュータ1900に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段である生成部50と、変換部39と、更新指示部53と、更新部48として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータ1900の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の画像処理装置10が構築される。   The information processing described in these programs is read into the computer 1900, whereby the generation unit 50, the conversion unit 39, and the update unit, which are specific means in which the software and the various hardware resources described above cooperate. It functions as an instruction unit 53 and an update unit 48. And the specific image processing apparatus 10 according to the intended use is constructed | assembled by implement | achieving the calculation or processing of the information according to the intended use of the computer 1900 in this embodiment by these concrete means.

一例として、コンピュータ1900と外部の装置等との間で通信を行う場合には、CPU2000は、RAM2020上にロードされた通信プログラムを実行し、通信プログラムに記述された処理内容に基づいて、通信インターフェイス2030に対して通信処理を指示する。通信インターフェイス2030は、CPU2000の制御を受けて、RAM2020、ハードディスク・ドライブ2040、フレキシブルディスク2090、又はDVD2095等の記憶装置上に設けた送信バッファ領域等に記憶された送信データを読み出してネットワークへと送信し、もしくは、ネットワークから受信した受信データを記憶装置上に設けた受信バッファ領域等へと書き込む。このように、通信インターフェイス2030は、DMA(ダイレクト・メモリ・アクセス)方式により記憶装置との間で送受信データを転送してもよく、これに代えて、CPU2000が転送元の記憶装置又は通信インターフェイス2030からデータを読み出し、転送先の2030又は記憶装置へとデータを書き込むことにより送受信データを転送してもよい。   As an example, when communication is performed between the computer 1900 and an external device or the like, the CPU 2000 executes a communication program loaded on the RAM 2020 and executes a communication interface based on the processing content described in the communication program. A communication process is instructed to 2030. Under the control of the CPU 2000, the communication interface 2030 reads transmission data stored in a transmission buffer area or the like provided on a storage device such as the RAM 2020, the hard disk drive 2040, the flexible disk 2090, or the DVD 2095, and transmits it to the network. Alternatively, the reception data received from the network is written into a reception buffer area or the like provided on the storage device. As described above, the communication interface 2030 may transfer transmission / reception data to / from the storage device by a DMA (direct memory access) method. Instead, the CPU 2000 transfers the storage device or the communication interface 2030 as a transfer source. The transmission / reception data may be transferred by reading the data from the data and writing the data to the transfer destination 2030 or the storage device.

また、CPU2000は、ハードディスク・ドライブ2040、DVDドライブ2060(DVD2095)、フレキシブルディスク・ドライブ2050(フレキシブルディスク2090)等の外部記憶装置に格納されたファイルまたはデータベース等の中から、全部または必要な部分をDMA転送等によりRAM2020へと読み込ませ、RAM2020上のデータに対して各種の処理を行う。そして、CPU2000は、処理を終えたデータを、DMA転送等により外部記憶装置へと書き戻す。このような処理において、RAM2020は、外部記憶装置の内容を一時的に保持するものとみなせるから、本実施形態においてはRAM2020および外部記憶装置等をメモリ、記憶部、または記憶装置等と総称する。本実施形態における各種のプログラム、データ、テーブル、データベース等の各種の情報は、このような記憶装置上に格納されて、情報処理の対象となる。なお、CPU2000は、RAM2020の一部をキャッシュメモリに保持し、キャッシュメモリ上で読み書きを行うこともできる。このような形態においても、キャッシュメモリはRAM2020の機能の一部を担うから、本実施形態においては、区別して示す場合を除き、キャッシュメモリもRAM2020、メモリ、及び/又は記憶装置に含まれるものとする。   In addition, the CPU 2000 reads all or necessary portions from files or databases stored in an external storage device such as the hard disk drive 2040, the DVD drive 2060 (DVD 2095), and the flexible disk drive 2050 (flexible disk 2090). The data is read into the RAM 2020 by DMA transfer or the like, and various processes are performed on the data on the RAM 2020. Then, CPU 2000 writes the processed data back to the external storage device by DMA transfer or the like. In such processing, since the RAM 2020 can be regarded as temporarily holding the contents of the external storage device, in the present embodiment, the RAM 2020 and the external storage device are collectively referred to as a memory, a storage unit, or a storage device. Various types of information such as various programs, data, tables, and databases in the present embodiment are stored on such a storage device and are subjected to information processing. Note that the CPU 2000 can also hold a part of the RAM 2020 in the cache memory and perform reading and writing on the cache memory. Even in such a form, the cache memory bears a part of the function of the RAM 2020. Therefore, in the present embodiment, the cache memory is also included in the RAM 2020, the memory, and / or the storage device unless otherwise indicated. To do.

また、CPU2000は、RAM2020から読み出したデータに対して、プログラムの命令列により指定された、本実施形態中に記載した各種の演算、情報の加工、条件判断、情報の検索・置換等を含む各種の処理を行い、RAM2020へと書き戻す。例えば、CPU2000は、条件判断を行う場合においては、本実施形態において示した各種の変数が、他の変数または定数と比較して、大きい、小さい、以上、以下、等しい等の条件を満たすかどうかを判断し、条件が成立した場合(又は不成立であった場合)に、異なる命令列へと分岐し、またはサブルーチンを呼び出す。   In addition, the CPU 2000 performs various operations, such as various operations, information processing, condition determination, information search / replacement, etc., described in the present embodiment, specified for the data read from the RAM 2020 by the instruction sequence of the program. Is written back to the RAM 2020. For example, when performing the condition determination, the CPU 2000 determines whether or not the various variables shown in the present embodiment satisfy the conditions such as large, small, above, below, equal, etc., compared to other variables or constants. If the condition is satisfied (or not satisfied), the program branches to a different instruction sequence or calls a subroutine.

また、CPU2000は、記憶装置内のファイルまたはデータベース等に格納された情報を検索することができる。例えば、第1属性の属性値に対し第2属性の属性値がそれぞれ対応付けられた複数のエントリが記憶装置に格納されている場合において、CPU2000は、記憶装置に格納されている複数のエントリの中から第1属性の属性値が指定された条件と一致するエントリを検索し、そのエントリに格納されている第2属性の属性値を読み出すことにより、所定の条件を満たす第1属性に対応付けられた第2属性の属性値を得ることができる。   Further, the CPU 2000 can search for information stored in a file or database in the storage device. For example, in the case where a plurality of entries in which the attribute value of the second attribute is associated with the attribute value of the first attribute are stored in the storage device, the CPU 2000 displays the plurality of entries stored in the storage device. The entry that matches the condition in which the attribute value of the first attribute is specified is retrieved, and the attribute value of the second attribute that is stored in the entry is read, thereby associating with the first attribute that satisfies the predetermined condition The attribute value of the specified second attribute can be obtained.

以上に示したプログラム又はモジュールは、外部の記録媒体に格納されてもよい。記録媒体としては、フレキシブルディスク2090、DVD2095の他に、DVD又はCD等の光学記録媒体、MO等の光磁気記録媒体、テープ媒体、ICカード等の半導体メモリ等を用いることができる。また、専用通信ネットワーク又はインターネットに接続されたサーバシステムに設けたハードディスク又はRAM等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムをコンピュータ1900に提供してもよい。   The program or module shown above may be stored in an external recording medium. As the recording medium, in addition to the flexible disk 2090 and the DVD 2095, an optical recording medium such as DVD or CD, a magneto-optical recording medium such as MO, a tape medium, a semiconductor memory such as an IC card, and the like can be used. Further, a storage device such as a hard disk or RAM provided in a server system connected to a dedicated communication network or the Internet may be used as a recording medium, and the program may be provided to the computer 1900 via the network.

なお、本実施形態において、画像処理装置10は、2以上の複数の検査用画像フィルタ20を生成して使用してもよい。この場合、画像処理装置10は、検査対象物の角度を変えて撮像した複数の撮像画像を、それぞれに対応する検査用画像フィルタ20によって変換して、検査用データのそれぞれを生成する。そして、画像処理装置10は、生成した複数の検査用データのそれぞれについて、一次検査を実施してもよい。   In the present embodiment, the image processing apparatus 10 may generate and use two or more inspection image filters 20. In this case, the image processing apparatus 10 converts each of the plurality of captured images captured by changing the angle of the inspection object by using the corresponding inspection image filter 20 to generate each of the inspection data. Then, the image processing apparatus 10 may perform a primary inspection for each of the generated plurality of inspection data.

以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。   As mentioned above, although this invention was demonstrated using embodiment, the technical scope of this invention is not limited to the range as described in the said embodiment. It will be apparent to those skilled in the art that various modifications or improvements can be added to the above-described embodiment. It is apparent from the scope of the claims that the embodiments added with such changes or improvements can be included in the technical scope of the present invention.

特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。   The order of execution of each process such as operations, procedures, steps, and stages in the apparatus, system, program, and method shown in the claims, the description, and the drawings is particularly “before” or “prior to”. It should be noted that the output can be realized in any order unless the output of the previous process is used in the subsequent process. Regarding the operation flow in the claims, the description, and the drawings, even if it is described using “first”, “next”, etc. for convenience, it means that it is essential to carry out in this order. It is not a thing.

10 画像処理装置、20 画像フィルタ、22 フィルタ部品、24 フィルタ部品群、34 フィルタ格納部、36 学習用入力画像格納部、37 撮像画像格納部、38 学習用変換部、39 変換部、40 学習用出力データ格納部、41 検査用データ格納部、42 学習用目標データ格納部、44 算出部、45 良品画像格納部、47 検査用データ格納部、48 更新部、50 生成部、53 更新指示部、481 第2フィルタ選択部、485 第2フィルタ生成部、501 第1フィルタ選択部、505 第1フィルタ生成部、1900 コンピュータ、2000 CPU、2010 ROM、2020 RAM、2030 通信インターフェイス、2040 ハードディスク・ドライブ、2050 フレキシブルディスク・ドライブ、2060 DVDドライブ、2070 入出力チップ、2075 グラフィック・コントローラ、2080 表示装置、2082 ホスト・コントローラ、2084 入出力コントローラ、2090 フレキシブルディスク、2095 DVD DESCRIPTION OF SYMBOLS 10 Image processing apparatus, 20 Image filter, 22 Filter component, 24 Filter component group, 34 Filter storage part, 36 Learning input image storage part, 37 Captured image storage part, 38 Learning conversion part, 39 Conversion part, 40 For learning Output data storage unit 41 Inspection data storage unit 42 Learning target data storage unit 44 Calculation unit 45 Non-defective image storage unit 47 Inspection data storage unit 48 Update unit 50 Generation unit 53 Update instruction unit 481 Second filter selection unit, 485 Second filter generation unit, 501 First filter selection unit, 505 First filter generation unit, 1900 Computer, 2000 CPU, 2010 ROM, 2020 RAM, 2030 Communication interface, 2040 Hard disk drive, 2050 Flexible disk drive, 20 60 DVD drive, 2070 input / output chip, 2075 graphic controller, 2080 display device, 2082 host controller, 2084 input / output controller, 2090 flexible disk, 2095 DVD

Claims (10)

検査対象物を撮像した撮像画像を検査用データに変換する検査用画像フィルタを更新する画像処理装置であって、
前記検査用画像フィルタにより前記撮像画像を前記検査用データに変換する変換部と、
前記検査用データに基づいて不良品と判断された前記検査対象物が、二次検査により良品と判断された場合に、当該検査対象物の前記撮像画像を良品と判断される検査用データに変換させるように前記検査用画像フィルタを更新する更新部と、
を備える画像処理装置。
An image processing apparatus that updates an inspection image filter that converts a captured image obtained by imaging an inspection object into inspection data,
A conversion unit that converts the captured image into the inspection data by the inspection image filter;
When the inspection object determined to be defective based on the inspection data is determined to be non-defective by secondary inspection, the captured image of the inspection object is converted to inspection data determined to be non-defective An update unit for updating the inspection image filter so that
An image processing apparatus comprising:
学習用入力画像を学習用出力データに変換するのに適応させた前記検査用画像フィルタを生成する生成部を備える
請求項1に記載の画像処理装置。
The image processing apparatus according to claim 1, further comprising: a generation unit configured to generate the inspection image filter adapted to convert the learning input image into learning output data.
前記生成部は、入力画像を出力画像または出力データにそれぞれ変換する複数のフィルタ部品を組み合わせて、前記学習用入力画像を前記学習用出力データにより近いデータに変換する前記検査用画像フィルタを生成する
請求項2に記載の画像処理装置。
The generation unit generates the inspection image filter that converts the learning input image into data closer to the learning output data by combining a plurality of filter components that respectively convert the input image into an output image or output data. The image processing apparatus according to claim 2.
前記生成部は、
前記複数のフィルタ部品を組み合わせた少なくとも1つの画像フィルタを含むフィルタ群から、遺伝的処理により新たな画像フィルタを生成して前記フィルタ群に加える第1フィルタ生成部と、
前記フィルタ群に含まれる複数の画像フィルタのうち、前記学習用入力画像から前記学習用出力データへの変換に対する第1適合度がより高い画像フィルタを、前記検査用画像フィルタとして選択する第1フィルタ選択部と、
を有する請求項3に記載の画像処理装置。
The generator is
A first filter generation unit that generates a new image filter by genetic processing from a filter group including at least one image filter obtained by combining the plurality of filter components, and adds the filter to the filter group;
A first filter that selects, as the inspection image filter, an image filter having a higher first fitness for conversion from the learning input image to the learning output data among a plurality of image filters included in the filter group. A selection section;
The image processing apparatus according to claim 3.
前記更新部は、
前記検査用画像フィルタを含む前記フィルタ群から、遺伝的処理により新たな画像フィルタを生成して前記フィルタ群に加える第2フィルタ生成部と、
前記フィルタ群に含まれる複数の画像フィルタのうち、前記検査用データに基づいて不良品と判断され、かつ前記二次検査により良品と判断された前記検査対象物の前記撮像画像から良品と判断される検査用データへの変換に対する第2適合度がより高い画像フィルタを、前記検査用画像フィルタとして優先的に選択する第2フィルタ選択部と、
を有する請求項4に記載の画像処理装置。
The update unit
A second filter generation unit that generates a new image filter by genetic processing from the filter group including the inspection image filter and adds the filter to the filter group;
Out of the plurality of image filters included in the filter group, it is determined as a defective product based on the inspection data, and is determined as a non-defective product from the captured image of the inspection object determined as a non-defective product by the secondary inspection. A second filter selection unit that preferentially selects an image filter having a higher second conformity with respect to conversion to inspection data as the inspection image filter;
The image processing apparatus according to claim 4, comprising:
前記第2フィルタ選択部は、前記フィルタ群に含まれる前記複数の画像フィルタの中から、前記第1適合度および前記第2適合度に基づいて、前記検査用画像フィルタを選択する
請求項5に記載の画像処理装置。
The second filter selection unit selects the inspection image filter from the plurality of image filters included in the filter group based on the first matching degree and the second matching degree. The image processing apparatus described.
前記変換部は、前記検査用画像フィルタにより前記撮像画像を検査用画像に変換し、
前記更新部は、前記検査用画像に基づいて不良品と判断された前記検査対象物が、前記二次検査により良品と判断された場合に、当該検査対象物の前記撮像画像を良品と判断される検査用画像に変換させるように前記検査用画像フィルタを更新する
請求項1から6のいずれかに記載の画像処理装置。
The conversion unit converts the captured image into an inspection image by the inspection image filter,
The update unit determines that the captured image of the inspection object is a non-defective product when the inspection object determined to be defective based on the inspection image is determined to be a non-defective product by the secondary inspection. The image processing apparatus according to claim 1, wherein the inspection image filter is updated so as to be converted into an inspection image.
前記更新部は、前記良品と判断される検査用画像として、不良と判断すべき箇所を含まない均一画像を用いる
請求項7に記載の画像処理装置。
The image processing apparatus according to claim 7, wherein the update unit uses a uniform image that does not include a portion that should be determined to be defective as the inspection image that is determined to be non-defective.
検査対象物を撮像した撮像画像を検査用データに変換する検査用画像フィルタを更新する画像処理方法であって、
前記検査用画像フィルタにより前記撮像画像を前記検査用データに変換する変換ステップと、
前記検査用データに基づいて不良品と判断された前記検査対象物が、二次検査により良品と判断された場合に、当該検査対象物の前記撮像画像を良品と判断される検査用データに変換させるように前記検査用画像フィルタを更新する更新ステップと、
を備える画像処理方法。
An image processing method for updating an inspection image filter for converting a captured image obtained by imaging an inspection object into inspection data,
A conversion step of converting the captured image into the inspection data by the inspection image filter;
When the inspection object determined to be defective based on the inspection data is determined to be non-defective by secondary inspection, the captured image of the inspection object is converted to inspection data determined to be non-defective An updating step of updating the inspection image filter so that
An image processing method comprising:
検査対象物を撮像した撮像画像を検査用データに変換する検査用画像フィルタを更新する画像処理装置としてコンピュータを機能させる画像処理プログラムであって、
検査対象物を撮像した撮像画像を検査用データに変換する検査用画像フィルタを更新する画像処理装置であって、
前記検査用画像フィルタにより前記撮像画像を前記検査用データに変換する変換部と、
前記検査用データに基づいて不良品と判断された前記検査対象物が、二次検査により良品と判断された場合に、当該検査対象物の前記撮像画像を良品と判断される検査用データに変換させるように前記検査用画像フィルタを更新する更新部と、
を備える画像処理装置として機能させる画像処理プログラム。
An image processing program that causes a computer to function as an image processing apparatus that updates an inspection image filter that converts a captured image obtained by imaging an inspection object into inspection data,
An image processing apparatus that updates an inspection image filter that converts a captured image obtained by imaging an inspection object into inspection data,
A conversion unit that converts the captured image into the inspection data by the inspection image filter;
When the inspection object determined to be defective based on the inspection data is determined to be non-defective by secondary inspection, the captured image of the inspection object is converted to inspection data determined to be non-defective An update unit for updating the inspection image filter so that
An image processing program that functions as an image processing apparatus.
JP2009167277A 2009-07-15 2009-07-15 Image processing apparatus, image processing method, and image processing program Expired - Fee Related JP5471105B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009167277A JP5471105B2 (en) 2009-07-15 2009-07-15 Image processing apparatus, image processing method, and image processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009167277A JP5471105B2 (en) 2009-07-15 2009-07-15 Image processing apparatus, image processing method, and image processing program

Publications (2)

Publication Number Publication Date
JP2011022797A true JP2011022797A (en) 2011-02-03
JP5471105B2 JP5471105B2 (en) 2014-04-16

Family

ID=43632818

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009167277A Expired - Fee Related JP5471105B2 (en) 2009-07-15 2009-07-15 Image processing apparatus, image processing method, and image processing program

Country Status (1)

Country Link
JP (1) JP5471105B2 (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10318937A (en) * 1997-05-22 1998-12-04 Dainippon Screen Mfg Co Ltd Optical irregularity inspection device and method
JP2000357255A (en) * 1999-06-14 2000-12-26 Oki Electric Ind Co Ltd Method for optimizing nn synapse combined load
JP2002366929A (en) * 2001-06-11 2002-12-20 Printing Bureau Ministry Of Finance Method and device for extracting failure and defect of printed matter
JP2004038885A (en) * 2002-07-08 2004-02-05 Adoin Kenkyusho:Kk Image feature learning type defect detection method, defect detection device and defect detection program
JP2005092466A (en) * 2003-09-16 2005-04-07 Toshiba Corp Diagnostic process supporting method and its program
JP2005127823A (en) * 2003-10-23 2005-05-19 Dainippon Printing Co Ltd Method and apparatus for measuring nonuniformity in optical characteristics, and method and apparatus for determining quality of product by utilizing same
JP2008015824A (en) * 2006-07-06 2008-01-24 Sharp Corp Filter line generation device, filter line generation method, program for making computer function as filter line generation device, and storage medium

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10318937A (en) * 1997-05-22 1998-12-04 Dainippon Screen Mfg Co Ltd Optical irregularity inspection device and method
JP2000357255A (en) * 1999-06-14 2000-12-26 Oki Electric Ind Co Ltd Method for optimizing nn synapse combined load
JP2002366929A (en) * 2001-06-11 2002-12-20 Printing Bureau Ministry Of Finance Method and device for extracting failure and defect of printed matter
JP2004038885A (en) * 2002-07-08 2004-02-05 Adoin Kenkyusho:Kk Image feature learning type defect detection method, defect detection device and defect detection program
JP2005092466A (en) * 2003-09-16 2005-04-07 Toshiba Corp Diagnostic process supporting method and its program
JP2005127823A (en) * 2003-10-23 2005-05-19 Dainippon Printing Co Ltd Method and apparatus for measuring nonuniformity in optical characteristics, and method and apparatus for determining quality of product by utilizing same
JP2008015824A (en) * 2006-07-06 2008-01-24 Sharp Corp Filter line generation device, filter line generation method, program for making computer function as filter line generation device, and storage medium

Also Published As

Publication number Publication date
JP5471105B2 (en) 2014-04-16

Similar Documents

Publication Publication Date Title
US8761496B2 (en) Image processing apparatus for calculating a degree of similarity between images, method of image processing, processing apparatus for calculating a degree of approximation between data sets, method of processing, computer program product, and computer readable medium
WO2023217290A1 (en) Genophenotypic prediction based on graph neural network
US20210110215A1 (en) Information processing device, information processing method, and computer-readable recording medium recording information processing program
CN111275660A (en) Defect detection method and device for flat panel display
US11847446B2 (en) Predictive build quality assessment
Vaviya et al. Identification of artificially ripened fruits using machine learning
US20200293570A1 (en) Information processing method, information processing apparatus, and non-transitory computer-readable storage medium for storing information processing program
CN112052840A (en) Picture screening method, system, equipment and storage medium
de la Rosa et al. A deep residual neural network for semiconductor defect classification in imbalanced scanning electron microscope datasets
JP2011014051A (en) Generating device, generating method, and generation program
JP5304401B2 (en) Genetic processing apparatus, genetic processing method and program
JP5326881B2 (en) Image processing apparatus, image processing method, and image processing program
JP5471105B2 (en) Image processing apparatus, image processing method, and image processing program
JP5181825B2 (en) Image processing apparatus, image processing method, and program
JP5396977B2 (en) Data processing apparatus, data processing method and program
JP5417967B2 (en) Genetic processing apparatus, genetic processing method and program
JP5359622B2 (en) Genetic processing apparatus, genetic processing method, and genetic processing program
JP5417972B2 (en) Genetic processing apparatus, genetic processing method, and genetic processing program
JP5444822B2 (en) Genetic processing apparatus, genetic processing method and program
JP5359531B2 (en) Genetic processing apparatus, genetic processing method and program
JP5326776B2 (en) Image processing apparatus, image processing method, and image processing program
JP2004527172A (en) Scalable system and method for optimizing a random system of algorithms for image quality
JP2010244364A (en) Genetic processing apparatus, genetic processing method and program
JP5359479B2 (en) Genetic processing apparatus, genetic processing method and program
JP5365328B2 (en) Genetic processing apparatus, genetic processing method, and genetic processing program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120628

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130426

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130507

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130625

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: 20140107

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140120

R150 Certificate of patent or registration of utility model

Ref document number: 5471105

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees