JP2020077397A - Image processing method, image processing unit, production system, article manufacturing method, program, and storage medium - Google Patents

Image processing method, image processing unit, production system, article manufacturing method, program, and storage medium Download PDF

Info

Publication number
JP2020077397A
JP2020077397A JP2019185678A JP2019185678A JP2020077397A JP 2020077397 A JP2020077397 A JP 2020077397A JP 2019185678 A JP2019185678 A JP 2019185678A JP 2019185678 A JP2019185678 A JP 2019185678A JP 2020077397 A JP2020077397 A JP 2020077397A
Authority
JP
Japan
Prior art keywords
matching
matching score
image processing
image
score
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
JP2019185678A
Other languages
Japanese (ja)
Other versions
JP7404017B2 (en
JP2020077397A5 (en
Inventor
洋史 北島
Yoji Kitajima
洋史 北島
慶 渡辺
Kei Watanabe
慶 渡辺
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to US16/661,262 priority Critical patent/US11200632B2/en
Publication of JP2020077397A publication Critical patent/JP2020077397A/en
Publication of JP2020077397A5 publication Critical patent/JP2020077397A5/ja
Application granted granted Critical
Publication of JP7404017B2 publication Critical patent/JP7404017B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)
  • Image Analysis (AREA)

Abstract

To generate a model with few false detection independent of background, noises, the shape of a work-piece, etc. while ensuring the speed in an inspection process of images using pattern matching.SOLUTION: Multiple temporary models are generated using a reference image on which an object of pattern matching is recorded. Pattern matching is performed between each of the multiple temporary models and each of multiple evaluation images on which the object of the pattern matching is recorded to obtain a matching score between each of the multiple temporary models and each of the multiple evaluation images. For each of the multiple temporary models, a first matching score group obtained by collecting first matching scores whose similarity is maximum in each of the evaluation images and a second matching score group obtained by collecting second matching scores whose similarity is smaller than that of the first matching scores are acquired. For each of the multiple temporary models, an evaluation value is calculated from the first matching score group and the second matching score group to determine a matching model.SELECTED DRAWING: Figure 4

Description

本発明は、画像処理方法、画像処理装置、生産システム、および物品の製造方法、特に、パターンマッチングを用いた画像処理を利用する画像処理方法、画像処理装置、生産システム、および物品の製造方法に関する。   The present invention relates to an image processing method, an image processing apparatus, a production system, and an article manufacturing method, and more particularly to an image processing method, an image processing apparatus, a production system, and an article manufacturing method that utilize image processing using pattern matching. ..

画像処理の分野において、検出対象物体の位置を検出する方法として、パターンマッチングがよく知られている。パターンマッチングを行うには、検出対象となる物体の参照情報として、理想状態で検出対象物体を撮像した参照画像が用いられる。この参照画像は、モデル、テンプレートなどと呼ばれることがある。この参照画像から検出対象物体付近の領域のみを切り出し、パターンマッチングに用いるモデルを作成する。   In the field of image processing, pattern matching is well known as a method of detecting the position of a detection target object. In order to perform the pattern matching, a reference image obtained by imaging the detection target object in an ideal state is used as the reference information of the detection target object. This reference image is sometimes called a model, a template, or the like. Only a region near the detection target object is cut out from this reference image, and a model used for pattern matching is created.

実際の物体検出工程では、物体を検出するための被探索画像を撮像し、撮像した画像の各位置でモデルとの類似度を計算していく。この手法は、最も類似度の高かった画像の位置を検出位置とする、即ち、被探索画像の中からモデルと最も類似している位置を検出する方法である。   In the actual object detection step, a search target image for detecting an object is captured, and the degree of similarity with the model is calculated at each position of the captured image. In this method, the position of the image having the highest degree of similarity is set as the detection position, that is, the position most similar to the model is detected from the search target image.

上記の類似度を計算するために、複数の方法が知られており、輝度ベースで類似度を算出する輝度値差分法(SAD)、正規化相関法(NCC)やエッジ特徴ベースで類似度を算出する形状パターンマッチングなどが知られている。   A plurality of methods are known for calculating the above-mentioned similarity, and a brightness value difference method (SAD) for calculating a similarity on a luminance basis, a normalized correlation method (NCC), and a similarity on an edge feature basis are used. Shape pattern matching for calculation and the like are known.

この種のパターンマッチングでは、例えば検出対象物体以外の位置を検出してしまう、誤検出が問題となることがある。例えば、検出物体の位置よりも検出物体以外の位置の方が、類似度が高くなることにより誤検出が発生する。例えば、図1(a)のような画像があり、円環ワーク100の中の小さい丸の画像中の位置を検出するパターンマッチングを行うとする。図1(a)の101、102は、円環ワーク100の背景などに撮影されている他のワークなどの画像である。この場合、図1(b)のようなモデル1012の画像を作成することがある。図1(b)のモデル1012では、テンプレートから円環ワーク100の小さい丸の部分1011の部分だけを切り出した画像でモデル1012を作成している。このようなモデル1012を用いると、図1(a)の円環ワーク100とは別に撮影されている丸の位置(101)を誤検出してしまうことがある。このような誤検出(誤検知)を防止するためには、ユーザは、円環ワーク100の円環部分も含めるよう、モデルの画像を作成しなければならない。   In this type of pattern matching, there may be a problem of erroneous detection, for example, detecting a position other than the detection target object. For example, erroneous detection occurs because the similarity is higher at a position other than the detected object position than at the detected object position. For example, suppose that there is an image as shown in FIG. 1A, and pattern matching is performed to detect the position in the image of the small circle in the circular ring work 100. Reference numerals 101 and 102 in FIG. 1A are images of other works captured in the background of the annular work 100 or the like. In this case, an image of the model 1012 as shown in FIG. 1B may be created. In the model 1012 of FIG. 1B, the model 1012 is created by an image obtained by cutting out only the small circular portion 1011 of the circular workpiece 100 from the template. If such a model 1012 is used, the position (101) of the circle imaged separately from the circular workpiece 100 of FIG. 1A may be erroneously detected. In order to prevent such erroneous detection (erroneous detection), the user has to create a model image so as to include the annular portion of the annular workpiece 100.

上記のように、どのような物体の形状をモデルにするか、テンプレートからどの領域を切り出して用いるか、などによって、誤検出の頻度が変わってくる。そのため、従来では、パターンマッチングのためのモデルを作成する際には、試行錯誤が必要であり、またユーザの経験則に基づく微妙な設定が要求されることもあり、作業には習熟が必要とされる。   As described above, the frequency of erroneous detection varies depending on what kind of object shape is used as a model, which region is cut out from the template, and the like. Therefore, in the past, when creating a model for pattern matching, trial and error were required, and also delicate settings based on the user's empirical rule were sometimes required, so that work required proficiency. To be done.

また、この種のパターンマッチングは、物品の生産ラインにおけるワークや生産機器を撮影した画像に対して実行され、その結果が監視、生産制御などに利用されることがある。このようなシステムにおいて誤検出が発生した場合、不良品が発生したり、生産機器の誤動作による故障などが起きる可能性がある。そのため、誤検出が生じにくく、確実なパターンマッチングを行えるモデルを作成する手法やシステムが望まれている。   Further, this kind of pattern matching may be executed on an image obtained by photographing a work or a production device in a product production line, and the result may be used for monitoring, production control, or the like. If erroneous detection occurs in such a system, a defective product may occur, or a malfunction due to a malfunction of production equipment may occur. Therefore, there is a demand for a method and system for creating a model that is less likely to cause erroneous detection and can perform reliable pattern matching.

この点に鑑み、特許文献1では、撮像した画像に対し、予め用意した複数の異なるモデルの全てでパターンマッチングを実行する方法が提案されている。この場合、複数の検出位置の中でモデルの重なりが大きい位置を検出位置とする。そして、複数のモデルでパターンマッチングを行うことにより、誤検出の確率を下げる方法が記載されている。   In view of this point, Patent Document 1 proposes a method of performing pattern matching on a captured image using all of a plurality of different models prepared in advance. In this case, the position where the model overlaps is the detection position among the plurality of detection positions. Then, a method of reducing the probability of false detection by performing pattern matching with a plurality of models is described.

また、特許文献2では、複数のモデルを作成し、評価用画像にてパターンマッチングを実行し、その際、評価用画像の各位置での類似度(スコア)を記憶しておく。そして、モデル毎のスコア分布を作成し、このスコア分布の分散値を比較することにより、誤検知しづらいモデルを選定する。この特許文献2では、例えば、スコア分布の分散値が最も大きいモデルが誤検知しづらいモデルとして選ばれ、実際の物体検出工程では、選定されたモデルのみでパターンマッチングを実行することにより誤検出を回避する。   Further, in Patent Document 2, a plurality of models are created, pattern matching is performed on the evaluation image, and at that time, the degree of similarity (score) at each position of the evaluation image is stored. Then, a score distribution is created for each model, and the variance values of this score distribution are compared to select a model that is difficult to be erroneously detected. In Patent Document 2, for example, a model having the largest variance value of the score distribution is selected as a model that is hard to be erroneously detected, and in the actual object detection step, erroneous detection is performed by executing pattern matching only with the selected model. To avoid.

特開2008−165394号公報JP, 2008-165394, A 特開2001−148014号公報JP 2001-148014 A

上記の特許文献1の構成によると、実際の画像検査工程で複数のモデルでパターンマッチングを実行するため、モデルの数だけ処理時間が増大する。パターンマッチングは、様々な用途で使用されているが、特に工業用、FA用途では生産のサイクルタイムの短縮が重視されている。このような高速な処理が求められる用途には特許文献1の構成は向いていない可能性がある。   According to the configuration of Patent Document 1 described above, since pattern matching is executed with a plurality of models in the actual image inspection process, the processing time increases by the number of models. Pattern matching is used in various applications, but especially in industrial and FA applications, reduction of production cycle time is emphasized. The configuration of Patent Document 1 may not be suitable for applications requiring such high-speed processing.

また、特許文献2の構成によると、スコア分布の分散値の大小により、モデルを評価する。しかしながら、様々な生産システムで撮影される画像の全てについて、スコア分布の分散値が大きい方が誤検知しづらいモデルとは必ずしも言えない可能性がある。特許文献2の技術では、誤検知の可能性が小さい場合は、スコアが正解位置のみ高くなり、他の位置では低くなることにより分散値が大きくなることを前提としている。また、誤検知の可能性が高い場合は、スコア分布が全体的に高くなることにより分散値が小さくなることを前提としている。しかし、生産システムで撮影される実際の画像では背景やノイズ、ワークの形状等によってスコア分布の形状は大きく異なっており、特許文献2のようなスコア分布の分散値を用いた評価基準は汎用性や一般性を有していない可能性がある。例えば、実際の生産システムで撮影される画像では、複数のピークが出るような誤検出の可能性が高いスコア分布で分散値が大きくなる場合がある、と予想される。   Further, according to the configuration of Patent Document 2, the model is evaluated according to the magnitude of the variance value of the score distribution. However, there is a possibility that it cannot be said that the model in which the variance value of the score distribution is large is hard to be erroneously detected for all the images captured by various production systems. In the technique of Patent Document 2, it is premised that when the possibility of erroneous detection is small, the score becomes high only at the correct position and becomes low at other positions, so that the variance value becomes large. Further, when the possibility of false detection is high, it is assumed that the variance value becomes small due to the overall score distribution becoming high. However, the shape of the score distribution greatly differs depending on the background, noise, the shape of the work, etc. in the actual image captured by the production system, and the evaluation standard using the variance value of the score distribution as in Patent Document 2 is versatile. And may not have generality. For example, in an image captured by an actual production system, it is expected that the variance value may be large in a score distribution in which a plurality of peaks are likely to be erroneously detected.

本発明の課題は、パターンマッチングを利用する画像検査工程の高速性を損なうことなく、背景やノイズ、ワークの形状等に依存せず、誤検出が少ないモデルを生成できるようにすることにある。   An object of the present invention is to make it possible to generate a model that does not depend on the background, noise, the shape of a work, and the like and does not cause a false detection, without impairing the high speed of the image inspection process using pattern matching.

本発明の第一の態様は、パターンマッチングの対象物が記録された参照画像を用いてパターンマッチングのための複数の仮モデルを作成する仮モデル作成工程と、前記複数の仮モデルの各々と、前記パターンマッチングの対象物が記録された複数の評価画像の各々とでパターンマッチングを行い、前記複数の仮モデルの各々と前記複数の評価画像の各々との間のマッチングスコアを求め、前記複数の仮モデルの各々について、各評価画像内において類似度が最大となる第1のマッチングスコアを集合した第1のマッチングスコア群と、前記各評価画像内において類似度が前記第1のマッチングスコアよりも小さな第2のマッチングスコアを集合した第2のマッチングスコア群と、を取得するマッチングスコア取得工程と、
前記複数の仮モデルの各々について、前記第1のマッチングスコア群と前記第2のマッチングスコア群とから評価値を算出する評価工程と、算出された前記評価値に基づいて前記複数の仮モデルの中からマッチングモデルを決定する決定工程と、を備えたことを特徴する画像処理方法である。
A first aspect of the present invention is a temporary model creating step of creating a plurality of temporary models for pattern matching using a reference image in which an object of pattern matching is recorded, and each of the plurality of temporary models, Pattern matching is performed with each of the plurality of evaluation images in which the pattern matching target is recorded, and a matching score between each of the plurality of temporary models and each of the plurality of evaluation images is obtained. For each of the provisional models, a first matching score group in which first matching scores having the maximum similarity in each evaluation image are aggregated, and a similarity in each evaluation image is higher than the first matching score. A second matching score group in which small second matching scores are collected, and a matching score acquisition step of acquiring
For each of the plurality of temporary models, an evaluation step of calculating an evaluation value from the first matching score group and the second matching score group, and of the plurality of temporary models based on the calculated evaluation value. And a determining step of determining a matching model from the inside.

また、本発明の第二の態様は、パターンマッチングの対象物が記録された参照画像を用いてパターンマッチングのための複数の仮モデルを作成する仮モデル作成部と、前記複数の仮モデルの各々と、前記パターンマッチングの対象物が記録された複数の評価画像の各々とでパターンマッチングを行い、前記複数の仮モデルの各々と前記複数の評価画像の各々との間のマッチングスコアを求め、前記複数の仮モデルの各々について、各評価画像内において類似度が最大となる第1のマッチングスコアを集合した第1のマッチングスコア群と、前記各評価画像内において類似度が前記第1のマッチングスコアよりも小さな第2のマッチングスコアを集合した第2のマッチングスコア群と、を取得するマッチングスコア取得部と、前記複数の仮モデルの各々について、前記第1のマッチングスコア群と前記第2のマッチングスコア群とから評価値を算出する評価部と、算出された前記評価値に基づいて前記複数の仮モデルからマッチングモデルを決定する決定部と、を備えたことを特徴する画像処理装置である。   A second aspect of the present invention is a temporary model creation unit that creates a plurality of temporary models for pattern matching using a reference image on which a pattern matching object is recorded, and each of the plurality of temporary models. And, performing pattern matching with each of the plurality of evaluation images in which the pattern matching object is recorded, obtain a matching score between each of the plurality of temporary models and each of the plurality of evaluation images, For each of the plurality of provisional models, a first matching score group in which the first matching score having the maximum similarity in each evaluation image is collected, and the first matching score having the similarity in each evaluation image A second matching score group in which a second matching score smaller than the second matching score is acquired, and for each of the plurality of temporary models, the first matching score group and the second matching score. An image processing apparatus, comprising: an evaluation unit that calculates an evaluation value from a score group; and a determination unit that determines a matching model from the plurality of temporary models based on the calculated evaluation value.

本発明によれば、画像検査工程の高速性を損なうことなく、背景やノイズ、ワークの形状等に依存せず、誤検出が少ないモデルを生成し、該モデルを用いて信頼性の高いパターンマッチングを利用した画像処理を実施することができる。   According to the present invention, a model with less false detection is generated without impairing the high speed of the image inspection process, independent of the background, noise, shape of the work, etc., and highly reliable pattern matching is performed using the model. It is possible to carry out image processing using the.

(a)複数のワークが撮影された画像の一例。(b)パターンマッチング処理に用いるモデルの一例。(A) An example of an image in which a plurality of works are photographed. (B) An example of a model used for pattern matching processing. 実施形態に係る生産システムの概略構成を示した説明図である。It is explanatory drawing which showed the schematic structure of the production system which concerns on embodiment. 実施形態に係る画像処理装置の構成を示したブロック図である。It is a block diagram showing the composition of the image processing device concerning an embodiment. 本発明の実施形態1に係るパターンマッチングモデルの作成処理を示したフローチャート図である。It is a flowchart figure which showed the creation process of the pattern matching model which concerns on Embodiment 1 of this invention. 本発明の実施形態1に係る仮モデル作成処理を示したフローチャート図である。It is a flowchart figure which showed the temporary model creation process which concerns on Embodiment 1 of this invention. 本発明の実施形態1に係るエッジ抽出処理を示した説明図である。It is explanatory drawing which showed the edge extraction process which concerns on Embodiment 1 of this invention. 本発明の実施形態1に係る特徴画像を示した説明図である。It is explanatory drawing which showed the characteristic image which concerns on Embodiment 1 of this invention. 本発明の実施形態1に係る連結エッジの抽出を示した説明図である。It is explanatory drawing which showed extraction of the connection edge which concerns on Embodiment 1 of this invention. (a)連結エッジからなる1つの仮モデルの例。(b)連結エッジの組み合わせからなる他の仮モデルの例。(c)連結エッジの別の組み合わせからなる更に別の仮モデルの例。(A) An example of one temporary model composed of connected edges. (B) An example of another temporary model including a combination of connected edges. (C) Another example of the temporary model including another combination of connected edges. 本発明の実施形態1に係る仮モデルの評価値算出処理を示したフローチャート図である。It is a flowchart figure which showed the evaluation value calculation process of the temporary model which concerns on Embodiment 1 of this invention. 本発明の実施形態1に係る画像処理におけるパターンマッチング処理を示した説明図である。It is explanatory drawing which showed the pattern matching process in the image processing which concerns on Embodiment 1 of this invention. 本発明の実施形態1に係る評価値算出におけるスコアマップを示した説明図である。It is explanatory drawing which showed the score map in the evaluation value calculation which concerns on Embodiment 1 of this invention. 本発明の実施形態1に係る評価値算出における最大検出スコアの位置近傍か否かの判定処理の一例を示した説明図である。It is explanatory drawing which showed an example of the determination process of the vicinity of the position of the maximum detection score in the evaluation value calculation which concerns on Embodiment 1 of this invention. 本発明の実施形態1に係る評価値算出方法を説明する表図である。It is a table figure explaining the evaluation value calculation method which concerns on Embodiment 1 of this invention. 本発明の実施形態1に係る評価値算出方法を説明する表図である。It is a table figure explaining the evaluation value calculation method which concerns on Embodiment 1 of this invention. 本発明の実施形態2に係る仮モデル作成処理を示したフローチャート図である。It is a flowchart figure which showed the temporary model creation process which concerns on Embodiment 2 of this invention.

以下、添付図面を参照して本発明を実施するための形態につき説明する。なお、以下に示す構成はあくまでも一例であり、例えば細部の構成については本発明の趣旨を逸脱しない範囲において当業者が適宜変更することができる。また、本実施形態で取り上げる数値は、参考数値であって、本発明を限定するものではない。   Embodiments for carrying out the present invention will be described below with reference to the accompanying drawings. Note that the configuration shown below is merely an example, and for example, a detailed configuration can be appropriately changed by those skilled in the art without departing from the spirit of the present invention. The numerical values taken in this embodiment are reference numerical values and do not limit the present invention.

<実施形態1>
図2は、本実施形態に係る生産システムの概略構成を示している。図2の生産機器200は、ワークW1(対象物)をワークW2(被組み付け部材)に組付けて、物品Wを製造する。生産機器200は、ロボット401と、撮像装置としてのカメラ500と、カメラ500と有線ないし無線で通信するよう構成された画像処理装置300と、を備えている。また、生産機器200は、ロボット401および画像処理装置300に、ネットワークや制御線で接続されたロボット制御装置400を備えている。
<Embodiment 1>
FIG. 2 shows a schematic configuration of the production system according to this embodiment. The production apparatus 200 of FIG. 2 attaches the work W1 (object) to the work W2 (assembly member) to manufacture the article W. The production device 200 includes a robot 401, a camera 500 as an imaging device, and an image processing device 300 configured to communicate with the camera 500 in a wired or wireless manner. The production apparatus 200 also includes a robot control device 400 connected to the robot 401 and the image processing device 300 by a network or a control line.

ロボット401は、例えば垂直多関節型のロボットアーム402と、エンドエフェクタであるロボットハンド403と、を有している。ロボットアーム402は、複数のリンクが複数の関節で旋回可能に連結された構成を備える。ロボットアーム402の基端(基端リンク、ベース部)が基台Bの上面に固定されている。また、ロボットアーム402の先端(先端リンク)には、ロボットハンド403が取り付けられている。ロボットハンド403は、複数のフィンガを有し、ワーク(対象物)W1を把持、または把持解放することができる。   The robot 401 has, for example, a vertical articulated robot arm 402 and a robot hand 403 which is an end effector. The robot arm 402 has a configuration in which a plurality of links are pivotally connected by a plurality of joints. The base end (base end link, base portion) of the robot arm 402 is fixed to the upper surface of the base B. A robot hand 403 is attached to the tip (tip link) of the robot arm 402. The robot hand 403 has a plurality of fingers and can hold or release the work (target object) W1.

カメラ500は例えばデジタルカメラによって構成される。カメラ500の画像センサは、例えばCCD(Charge Coupled Device)、CMOS(Complementary Metal Oxide Semiconductor)などのイメージセンサによって構成される。   The camera 500 is composed of, for example, a digital camera. The image sensor of the camera 500 is configured by an image sensor such as a CCD (Charge Coupled Device) or a CMOS (Complementary Metal Oxide Semiconductor).

画像処理装置300は、カメラ500の撮像動作(例えば撮像タイミングやシャッタースピード等)を制御し、カメラ500から撮像画像を取得する。また、画像処理装置300は、デジタル画像データに対して画像処理を施し、その結果をロボット制御装置400に出力する。この画像処理として、画像処理装置300は、パターンマッチング処理を行う。   The image processing apparatus 300 controls the image capturing operation of the camera 500 (for example, image capturing timing, shutter speed, etc.) and acquires a captured image from the camera 500. Further, the image processing device 300 performs image processing on the digital image data and outputs the result to the robot control device 400. As this image processing, the image processing apparatus 300 performs pattern matching processing.

図2のように構成された生産ラインでは、パターンマッチングは、ワークW1、W2の全体ないしその一部、ロボットアーム402の特定部位などの実際の位置、ないし姿勢を検出ないし測定するために行われる。そのため、このパターンマッチングには、ワークW1、W2、ロボットアーム402などの特定部位をマッチングするためのモデルが用いられる。画像処理装置300は、その画像処理結果をロボット制御装置400に出力する。この時のロボット制御装置400に対する出力データの形式は任意であるが、例えば、グローバル座標系や撮影画像の座標系における測定対象の特定部位の座標値などが考えられる。カメラ500の配置位置とロボットアーム402が動作する作業空間の位置関係は既知であり、例えば撮影画像の座標系と、ロボットアーム402の作業空間のグローバル座標系の間では座標変換演算が可能であるものとする。このような座標変換演算は、画像処理装置300ないしロボット制御装置400によって適宜行われる。   In the production line configured as shown in FIG. 2, pattern matching is performed to detect or measure the actual position or posture of the work W1 or W2 or a part thereof, a specific portion of the robot arm 402, or the like. .. Therefore, for this pattern matching, a model for matching specific parts such as the works W1 and W2 and the robot arm 402 is used. The image processing device 300 outputs the image processing result to the robot control device 400. The format of the output data to the robot control device 400 at this time is arbitrary, but for example, the coordinate value of a specific part of the measurement target in the global coordinate system or the coordinate system of the captured image can be considered. The positional relationship between the arrangement position of the camera 500 and the work space in which the robot arm 402 operates is known. For example, coordinate conversion calculation can be performed between the coordinate system of the captured image and the global coordinate system of the work space of the robot arm 402. I shall. Such coordinate conversion calculation is appropriately performed by the image processing device 300 or the robot control device 400.

ロボット制御装置400は、画像処理装置300による画像処理の結果に基づき、ロボット401の動作を制御する。例えば、ワークW1、W2を結合する操作では、ロボット制御装置400は画像処理から得られた両ワークの位置関係を参照して、両者が所定の位置関係で結合されるよう、ロボットアーム402、ロボットハンド403の位置、姿勢を制御する。   The robot control device 400 controls the operation of the robot 401 based on the result of the image processing by the image processing device 300. For example, in the operation of connecting the works W1 and W2, the robot controller 400 refers to the positional relationship between the two works obtained from the image processing, and the robot arm 402 and the robot are connected so that the two are connected in a predetermined positional relationship. The position and orientation of the hand 403 are controlled.

図3は、本実施形態の画像処理装置300の構成の一例を示している。図3の画像処理装置300は、画像処理、具体的にはパターンマッチング処理を行うものであり、例えばPC(パーソナルコンピュータ)のようなアーキテクチャを利用して構成することができる。画像処理装置300は、演算部(制御装置)としてのCPU(Central Processing Unit)301を備えている。また、画像処理装置300は、記憶部として、ROM(Read Only Memory)302、RAM(Random Access Memory)303、HDD(Hard Disk Drive)304を備えている。また、画像処理装置300は、記録ディスクドライブ305および各種のインタフェース311〜315を備えている。   FIG. 3 shows an example of the configuration of the image processing apparatus 300 of this embodiment. The image processing apparatus 300 of FIG. 3 performs image processing, specifically, pattern matching processing, and can be configured using an architecture such as a PC (personal computer), for example. The image processing device 300 includes a CPU (Central Processing Unit) 301 as a calculation unit (control device). The image processing apparatus 300 also includes a ROM (Read Only Memory) 302, a RAM (Random Access Memory) 303, and a HDD (Hard Disk Drive) 304 as storage units. The image processing apparatus 300 also includes a recording disk drive 305 and various interfaces 311 to 315.

CPU301には、ROM302、RAM303、HDD304、記録ディスクドライブ305およびインタフェース311〜315が、バス310を介して接続されている。   A ROM 302, a RAM 303, an HDD 304, a recording disk drive 305, and interfaces 311 to 315 are connected to the CPU 301 via a bus 310.

ROM302には、BIOS等の起動プログラムが格納されている。RAM303は、CPU301の演算処理結果等、各種データを一時的に記憶する記憶装置である。HDD304には、プログラム321が格納(記録)されている。そして、CPU301がプログラム321を読み出して実行することにより、後述する画像処理方法の各工程を実行する。記録ディスクドライブ305は、記録ディスク322に記録された各種データやプログラム等を読み出すことができる。記録ディスク322は、各種の磁気ディスクや光ディスクの他、半導体メモリデバイスなどであっても構わない。この記録ディスク322が、本発明の制御手順を記述した画像処理プログラムを格納している場合は、記録ディスク322は、本発明のコンピュータ読み取り可能な記録媒体を構成することになる。   A boot program such as BIOS is stored in the ROM 302. The RAM 303 is a storage device that temporarily stores various data such as the calculation processing result of the CPU 301. A program 321 is stored (recorded) in the HDD 304. Then, the CPU 301 reads out and executes the program 321, thereby executing each step of the image processing method described later. The recording disk drive 305 can read various data, programs, etc. recorded on the recording disk 322. The recording disk 322 may be a semiconductor memory device or the like in addition to various magnetic disks and optical disks. When the recording disk 322 stores the image processing program describing the control procedure of the present invention, the recording disk 322 constitutes the computer-readable recording medium of the present invention.

インタフェース311には、ロボット制御装置400が接続されている。CPU301は、バス310およびインタフェース311を介して画像処理結果をロボット制御装置400に送信する。ロボット制御装置400により制御されるロボットアーム402は、画像処理装置300のパターンマッチングの結果を用いて、ワークW1、W2に対する生産処理を実行する生産機器を構成する。画像処理装置300のパターンマッチングは、例えばワークW1、W2の相対的な位置および姿勢を認識してこれらの組み付けを行うロボットアーム402による生産処理の制御に用いられる。あるいは、画像処理装置300のパターンマッチングは、例えばワークW1、W2の個々、あるいはそれらが一体化されたアセンブリの検査のためなどに行われるものであってもよい。その場合、その検査結果に応じて、ロボットアーム402による生産処理、例えばワークやアセンブリの搬送先の変更などを制御することができる。画像処理装置300のパターンマッチングを用いた画像処理は、物品の生産システム(ライン)において、上記のような生産処理制御に種々の形態で利用することができる。   The robot control device 400 is connected to the interface 311. The CPU 301 transmits the image processing result to the robot controller 400 via the bus 310 and the interface 311. The robot arm 402 controlled by the robot control device 400 constitutes a production device that executes a production process for the works W1 and W2 using the result of the pattern matching of the image processing device 300. The pattern matching of the image processing apparatus 300 is used, for example, to control the production process by the robot arm 402 that recognizes the relative positions and postures of the works W1 and W2 and assembles them. Alternatively, the pattern matching of the image processing apparatus 300 may be performed, for example, for inspecting each of the works W1 and W2 or an assembly in which they are integrated. In that case, the production process by the robot arm 402, for example, the change of the transfer destination of the work or assembly can be controlled according to the inspection result. The image processing using the pattern matching of the image processing apparatus 300 can be used in various forms for the above-mentioned production processing control in an article production system (line).

インタフェース312には、カメラ500が接続されている。CPU301は、バス310およびインタフェース312を介して、トリガ信号等の制御信号をカメラ500に送信する。CPU301は、カメラ500からの画像信号をバス310およびインタフェース312を介して取得する。取得した画像データは、CPU301の制御に基づき、例えばHDD304や外部記憶装置800など記憶装置に格納する。   The camera 500 is connected to the interface 312. The CPU 301 transmits a control signal such as a trigger signal to the camera 500 via the bus 310 and the interface 312. The CPU 301 acquires the image signal from the camera 500 via the bus 310 and the interface 312. The acquired image data is stored in a storage device such as the HDD 304 or the external storage device 800 under the control of the CPU 301.

インタフェース313には、マウスやキーボードなど、作業者が行った操作に応じた指令をCPU301に送信する入力装置600が接続されている。インタフェース314には、画像を表示するディスプレイ等の表示装置700が接続されている。インタフェース315には、USBメモリ等の書き換え可能な不揮発性メモリ、あるいは外付けHDD等の外部記憶装置800が接続される。   The interface 313 is connected with an input device 600, such as a mouse or a keyboard, which transmits a command according to an operation performed by an operator to the CPU 301. A display device 700 such as a display for displaying an image is connected to the interface 314. A rewritable nonvolatile memory such as a USB memory or an external storage device 800 such as an external HDD is connected to the interface 315.

以下、画像処理装置300によるモデル作成、およびパターンマッチングによる画像処理の流れにつき説明する。画像処理装置300のCPU301は、プログラム321をHDD304から読み出して実行することにより、以下の画像処理方法の各工程を実行する。   Hereinafter, the flow of model creation by the image processing apparatus 300 and image processing by pattern matching will be described. The CPU 301 of the image processing apparatus 300 reads the program 321 from the HDD 304 and executes the program 321 to execute each step of the following image processing method.

図4は、モデル作成処理の概要を示している。図4において、作業者ないしこのシステムのユーザであるオペレータは、パターンマッチング用のモデルを作成するための参照画像を用意するために、実際に生産ラインで生産を行なう時と同様の照明条件、位置に検出対象となるワークをセットする。CPU301は、カメラ500にワークの撮像を行わせ、ワークが撮影された参照画像としての画像データをカメラ500から取得する(S100)。   FIG. 4 shows an outline of the model creating process. In FIG. 4, an operator or an operator who is a user of this system prepares a reference image for creating a model for pattern matching, in order to prepare a reference image, the same lighting conditions and positions as when actually performing production on a production line. Set the workpiece to be detected in. The CPU 301 causes the camera 500 to capture an image of the work, and acquires image data as a reference image of the work from the camera 500 (S100).

なお、この参照画像は、既にHDD304や外部記憶装置800等の記憶装置に格納されていてもよく、その場合は、CPU301は、HDD304や外部記憶装置800等の記憶装置から、参照画像のデータを取得することとなる。参照画像は、生産ラインにおける監視処理における実際の撮影と同じ条件で撮影されているものとする。   The reference image may be already stored in a storage device such as the HDD 304 or the external storage device 800. In that case, the CPU 301 retrieves the data of the reference image from the storage device such as the HDD 304 or the external storage device 800. Will be acquired. The reference image is taken under the same conditions as the actual shooting in the monitoring process on the production line.

CPU301は、参照画像を表示装置700に表示させ、オペレータにより指定された、参照物(ワーク)が写り込んだ部分もしくは参照物の特徴的な部分を包含する矩形領域を仮モデル作成領域として設定する(S200)。この仮モデル作成領域を設定する時には、オペレータは、例えば、マウス等の入力装置600を用いたユーザインターフェースを利用することができる。仮モデル作成領域の設定は、ユーザが表示装置700に表示された参照画像内の参照物が写り込んだ画像を包含する領域の左上と右下の2点をクリックするような操作により行う。   The CPU 301 displays the reference image on the display device 700, and sets a rectangular area including a portion in which the reference object (work) is reflected or a characteristic portion of the reference object, which is designated by the operator, as a temporary model creation area. (S200). When setting the temporary model creation area, the operator can use a user interface using an input device 600 such as a mouse. The setting of the temporary model creation area is performed by an operation in which the user clicks two points at the upper left and the lower right of the area including the image in which the reference object is reflected in the reference image displayed on the display device 700.

CPU301は、ステップS200では、仮モデルを作成する領域として、クリックされた2点の位置(矩形領域の左上、右下の角の点)から矩形領域を設定する。設定した仮モデル作成領域の位置、形状は、RAM303もしくはHDD304に記憶させておく。なお、以上では矩形領域での設定方法を説明したが、3点をクリックすることにより円領域を設定したり、クリック点間を結ぶ任意領域を設定したりしても良く、領域の設定は矩形に限定されるものではない。   In step S200, the CPU 301 sets a rectangular area from the positions of the two clicked points (upper left and lower right corner points of the rectangular area) as an area for creating a temporary model. The position and shape of the set temporary model creation area are stored in the RAM 303 or the HDD 304. Although the method of setting in the rectangular area has been described above, a circular area may be set by clicking three points or an arbitrary area connecting the click points may be set. It is not limited to.

次に、仮モデルの作成方法について説明する。図5は仮モデル作成工程(図4:ステップS300)の処理例を詳細に示したものである。この仮モデル作成工程を実行するCPU301は、例えば画像処理装置300において仮モデル作成部としての機能ブロックを構成する。図5のステップS301において、CPU301は、ステップS100で取得した参照画像内のステップS200で設定した領域について、エッジ点が連結した連結エッジを抽出する処理を実施する。以下にこの連結エッジ抽出処理(ステップS301)の詳細につき説明する。   Next, a method of creating a temporary model will be described. FIG. 5 shows a detailed processing example of the temporary model creation process (FIG. 4: step S300). The CPU 301 that executes this temporary model creation step constitutes a functional block as a temporary model creation unit in the image processing apparatus 300, for example. In step S301 of FIG. 5, the CPU 301 performs a process of extracting a connected edge in which edge points are connected in the area set in step S200 in the reference image acquired in step S100. The details of the connection edge extraction processing (step S301) will be described below.

CPU301は、連結エッジ抽出対象の参照画像領域において、画素毎にエッジ強度とエッジ方向を算出する。エッジ強度とは、コントラストの大きさ(輝度の変化の急峻さ)を表し、注目画素に対し隣接する画素のコントラストが大きければエッジ強度も大きくなる。エッジ方向とは、コントラストの方向を表し、注目画素のエッジ強度が最も大きくなる方向(角度)を示す。エッジ強度の算出には、例えばx軸方向(画像の横軸方向)、y軸方向(画像の縦軸方向)のソーベルフィルタを使用する。   The CPU 301 calculates the edge strength and the edge direction for each pixel in the reference image area of the connected edge extraction target. The edge strength represents the magnitude of contrast (the steepness of change in luminance), and the higher the contrast of the pixel adjacent to the target pixel, the higher the edge strength. The edge direction represents the direction of contrast, and indicates the direction (angle) in which the edge strength of the target pixel is maximized. To calculate the edge strength, for example, a Sobel filter in the x-axis direction (horizontal axis direction of the image) and the y-axis direction (vertical axis direction of the image) is used.

図6は、参照画像領域Imに対してエッジ強度とエッジ方向の抽出処理を行う動作を示したものである。この抽出処理では、CPU301は、図6の参照画像領域Im中の注目画素Cで、まずx軸方向のエッジ強度Exとy軸方向のエッジ強度Eyを算出する。このエッジ強度のベクトルは、(Ex,Ey)で表される。   FIG. 6 shows the operation of performing the extraction processing of the edge strength and the edge direction on the reference image area Im. In this extraction processing, the CPU 301 first calculates the edge strength Ex in the x-axis direction and the edge strength Ey in the y-axis direction at the target pixel C in the reference image area Im in FIG. This edge strength vector is represented by (Ex, Ey).

そして、CPU301は、注目画素Cのエッジ強度Eを、例えば下式(1)のように、各軸のエッジ強度Ex,Eyの二乗和の平方根として算出する。   Then, the CPU 301 calculates the edge strength E of the target pixel C as the square root of the sum of squares of the edge strengths Ex and Ey of each axis, for example, as shown in the following expression (1).

Figure 2020077397
Figure 2020077397

また、CPU301は、エッジ方向θを、下式(2)により算出する。   Further, the CPU 301 calculates the edge direction θ by the following formula (2).

Figure 2020077397
Figure 2020077397

そして、CPU301は、上記方法により参照画像領域Imの全画素のエッジ強度とエッジ方向を算出する。さらに、CPU301は、エッジ強度がある一定の閾値以上の画素をエッジ特徴(エッジ点)として抽出し、複数のエッジ点の集合であるエッジ特徴画像を生成する。   Then, the CPU 301 calculates the edge strength and the edge direction of all the pixels in the reference image area Im by the above method. Further, the CPU 301 extracts pixels having an edge strength equal to or greater than a certain threshold as edge features (edge points), and generates an edge feature image that is a set of a plurality of edge points.

図7は、エッジ特徴画像Iの例を示している。図7では、エッジ特徴画像Iにおいて、エッジ強度がある一定の閾値以上のエッジ特徴を示す画素をエッジ点として黒で図示し、エッジ強度が閾値未満の画素を非エッジ点として白で図示している。 FIG. 7 shows an example of the edge feature image I T. In FIG. 7, in the edge feature image I T , pixels showing edge features whose edge strength is equal to or higher than a certain threshold are shown in black as edge points, and pixels whose edge strength is less than the threshold are shown in white as non-edge points. ing.

エッジ特徴画像Iのデータ保持方法としては、例えば以下のように、画像の画素毎に2チャンネルのデータ領域をRAM303などの記憶領域に確保する。そして、例えば図7のようにエッジ点として抽出された画素Cの場合は、1チャンネル目にエッジ強度、2チャンネル目にエッジ方向の情報を格納する。また、非エッジ点であると判断された画素Cには、エッジ特徴を示さないことを表す値(例えば0)を格納する。これらエッジ点を示す画素Cの集合ΣCが、エッジ特徴画像Iである。 As a data holding method of the edge feature image I T , for example, a 2-channel data area is secured in a storage area such as the RAM 303 for each pixel of the image as follows. Then, for example, in the case of the pixel C 1 extracted as an edge point as shown in FIG. 7, the edge strength is stored in the first channel, and the edge direction information is stored in the second channel. In addition, a value (for example, 0) indicating that the edge feature is not displayed is stored in the pixel C 2 that is determined to be the non-edge point. A set ΣC of pixels C 1 indicating these edge points is the edge feature image I T.

なお、エッジ強度のみを記憶したエッジ強度画像、エッジ方向のみを記憶したエッジ方向画像の2つの画像を、1組の特徴画像として用いるようにしてもよい。また、本実施形態では、エッジ強度の算出にソーベルフィルタを使用しているが、キャニーフィルタ等の一般的に知られたエッジ抽出フィルタを使用してもよい。   It should be noted that two images, an edge strength image storing only the edge strength and an edge direction image storing only the edge direction, may be used as one set of feature images. Further, in the present embodiment, the Sobel filter is used for calculating the edge strength, but a commonly known edge extraction filter such as a Canny filter may be used.

次に、エッジ点が連結した連結エッジを抽出し、連結エッジごとにラベリングを行う。前述したエッジ抽出処理によりエッジ点として抽出された画素の隣4方向、もしくは斜めをいれた8方向を探索し、エッジ点である画素同士が隣り合っていれば同じ連結エッジの連結成分として記憶していく。これにより、個々の連結成分が1つのまとまりとしてラベリングされた連結エッジを抽出することができる。図8に例示する画像8000において線で表した部分が抽出された連結エッジだとすると、801〜805の5つの連結エッジが抽出されたことになる。   Next, a connected edge in which the edge points are connected is extracted, and labeling is performed for each connected edge. Four adjacent directions of pixels extracted as edge points by the above-described edge extraction processing or eight oblique directions are searched, and if pixels that are edge points are adjacent to each other, they are stored as connected components of the same connected edge. To go. This makes it possible to extract connected edges in which individual connected components are labeled as a unit. If the portion represented by the line in the image 8000 illustrated in FIG. 8 is the connected edge extracted, five connected edges 801 to 805 are extracted.

そして、図5のS304Aにおいて、連結エッジの1つの組み合わせについて仮モデルを作成する。さらにS302〜S304Bのループを繰り返すことにより、連結エッジの全ての組合せ方法について仮モデルを作成する。つまり、ステップS301で抽出した連結エッジについて、図9(a)〜図9(c)に示すように連結エッジの組合せを変更しながら(S303)、仮モデルを作成する(S304B)。例えば、図9(a)に示す仮モデル901は、5つの連結エッジのうち連結エッジ802を選ぶ組み合わせ方法についての仮モデルである。また、図9(b)に示す仮モデル902は、連結エッジ801と連結エッジ802を選ぶ組み合わせ方法についての仮モデルである。また、図9(c)に示す仮モデル903は、連結エッジ801、連結エッジ803および連結エッジ805を選ぶ組み合わせ方法についての仮モデルである。   Then, in S304A of FIG. 5, a temporary model is created for one combination of connected edges. Further, by repeating the loop of S302 to S304B, temporary models are created for all combinations of connecting edges. That is, for the connected edges extracted in step S301, while changing the combination of connected edges as shown in FIGS. 9A to 9C (S303), a temporary model is created (S304B). For example, the provisional model 901 shown in FIG. 9A is a provisional model regarding a combination method for selecting the connection edge 802 among the five connection edges. Further, the temporary model 902 shown in FIG. 9B is a temporary model regarding a combination method for selecting the connection edge 801 and the connection edge 802. The temporary model 903 shown in FIG. 9C is a temporary model regarding a combination method for selecting the connected edge 801, the connected edge 803, and the connected edge 805.

例えば、図8に示すように5本の連結エッジが抽出された場合は、5本の連結エッジの組み合わせ方法の全てについてパターンマッチング用の仮モデルを作成し、HDD304などに記憶していく。全ての連結エッジの組合せに対する仮モデルを作成したか否かはステップS302で判定され、全ての連結エッジの組合せに対して仮モデルを作成した場合はこの処理を終了する。   For example, when five connected edges are extracted as shown in FIG. 8, a temporary model for pattern matching is created for all the combination methods of the five connected edges and stored in the HDD 304 or the like. It is determined in step S302 whether or not the provisional models have been created for all the combinations of connected edges. If the provisional models have been created for all the combinations of connected edges, this process ends.

5本の連結エッジが抽出された場合、5本全ての連結エッジを選択して仮モデルとすることもできるし、1本の連結エッジのみを選択して仮モデルとすることもできる。5本の連結エッジの場合、連結エッジの組合せ方法の数は例えば下式(3)で算出でき、31通りとなる。つまり、5本の連結エッジが抽出された場合は31通りの仮モデルが作成されることになる。   When five connected edges are extracted, all five connected edges can be selected as a temporary model, or only one connected edge can be selected as a temporary model. In the case of five connected edges, the number of combined methods of the connected edges can be calculated by the following formula (3), for example, and there are 31 ways. That is, when five connected edges are extracted, 31 types of temporary models are created.

Figure 2020077397
Figure 2020077397

次に、上記のようにして作成した複数の仮モデルの各々について評価値を算出する評価値算出工程(図4:S400)を行う。この評価値算出工程(S400)は、図10に示すように、複数の仮モデルの中から1つを選択し、その仮モデルの評価値を算出する処理を全ての仮モデルに対して順に実行することにより行う。なお、この評価値算出工程を実行するCPU301は、例えば画像処理装置300において評価部としての機能ブロックを構成する。   Next, an evaluation value calculation step (FIG. 4: S400) of calculating an evaluation value for each of the plurality of temporary models created as described above is performed. In this evaluation value calculation step (S400), as shown in FIG. 10, one of a plurality of temporary models is selected, and the process of calculating the evaluation value of the temporary model is sequentially executed for all the temporary models. By doing. The CPU 301 that executes this evaluation value calculation step configures a functional block as an evaluation unit in the image processing apparatus 300, for example.

図10のステップS401では、作成した複数の仮モデルの中から一つの仮モデルを選択する。選択した仮モデルと予め用意した複数の評価用画像の中の1枚とで、パターンマッチングを実行する。評価用画像は実際にワーク等の検出対象を撮影した画像であり、実験時に生産機器200と同様の系で撮影した画像もしくは生産中に保存しておいた実画像等を使用する。   In step S401 of FIG. 10, one temporary model is selected from the plurality of created temporary models. Pattern matching is executed using the selected temporary model and one of the plurality of evaluation images prepared in advance. The evaluation image is an image obtained by actually photographing a detection target such as a work, and an image photographed by the same system as the production apparatus 200 at the time of experiment or an actual image stored during production is used.

すなわち、マッチングスコア取得工程として、CPU301は、HDD304に保存されている複数の評価用画像から1枚を読込み、選択した1つの仮モデルを用いてパターンマッチングを実行する(S402)。例えば、パターンマッチングの手法は次のようなものである。最初に、評価画像に対しエッジ抽出を行い、評価画像内に存在するエッジを含んだ評価用エッジ画像Isを作成する。エッジ抽出処理の手法は、前述した参照画像に対するエッジ抽出処理と同様でよい。図11に示すように、現在、選択されている仮モデルと同じ大きさの抽出窓を評価用エッジ画像I内に置いて、評価用エッジ画像Iから仮モデルに対応する大きさの画像Iを抽出する。仮モデルと同じ大きさの抽出窓は、ピクセル単位で位置をずらしながら、次々に画像Iを抽出する。このようにして抽出した画像Iと仮モデルとの類似度を表すマッチングスコアRを下式(4)により求める。なお、以下では、簡略化のため、類似度を表すマッチングスコアを単に「スコア」と記載することがある。 That is, as a matching score acquisition step, the CPU 301 reads one image from the plurality of evaluation images stored in the HDD 304 and executes pattern matching using one selected temporary model (S402). For example, the pattern matching method is as follows. First, the evaluation image is subjected to edge extraction to create an evaluation edge image Is including the edges existing in the evaluation image. The method of the edge extraction processing may be the same as the edge extraction processing for the reference image described above. As shown in FIG. 11, an extraction window having the same size as the currently selected temporary model is placed in the evaluation edge image I S, and an image of a size corresponding to the temporary model is displayed from the evaluation edge image I S. Extract I I. The extraction window having the same size as the temporary model sequentially extracts the images I I while shifting the position in pixel units. A matching score R indicating the degree of similarity between the image I I extracted in this way and the temporary model is obtained by the following equation (4). In the following, for simplification, the matching score representing the similarity may be simply referred to as “score”.

Figure 2020077397
Figure 2020077397

即ち、仮モデルの一つのエッジ画素と抽出した評価用エッジ画像の一つのエッジ画素のエッジ方向差分のコサイン値を求めることにより、エッジ点1点の局所スコアを算出する。この処理を全てのエッジ画素について行うことにより、全エッジ点の局所スコアを算出し、さらにその総和を算出することができる。この局所スコアの総和を仮モデルのエッジ点数で割ることにより、最終的なスコアとして−1から1の範囲に正規化した値を得ることができる。   That is, the local score of one edge point is calculated by obtaining the cosine value of the edge direction difference between one edge pixel of the temporary model and one edge pixel of the extracted evaluation edge image. By performing this processing for all edge pixels, it is possible to calculate the local scores of all edge points and further calculate the sum thereof. By dividing the total sum of the local scores by the edge score of the tentative model, it is possible to obtain a value that is normalized in the range of -1 to 1 as the final score.

上記式4の画像内の位置(i、j)は、図11に(i、j)で示す位置、すなわち評価用エッジ画像から仮モデルに対応する大きさの画像を抽出した評価用エッジ画像内の位置に相当する。全ての平行移動の範囲で抽出窓を移動させ、このマッチングスコアRの計算を行う。スコアは−1から1で表され、1が最も類似性が高く、−1が最も類似性が低いことを示す。   The position (i, j) in the image of Expression 4 above is the position (i, j) in FIG. 11, that is, in the evaluation edge image obtained by extracting the image of the size corresponding to the temporary model from the evaluation edge image. Corresponds to the position of. The extraction window is moved within the entire range of parallel movement, and the matching score R is calculated. The score is represented by -1 to 1, with 1 indicating the highest similarity and -1 indicating the lowest similarity.

なお、仮モデルの評価用のスコアの計算方法は任意であり、上記と異なるスコア計算手法を用いてもよい。例えば、モデルと評価用エッジ画像のx方向エッジ強度、y方向エッジ強度から、下式(5)のようにして、マッチングスコアを算出してもよい。   The method of calculating the score for evaluation of the temporary model is arbitrary, and a score calculation method different from the above may be used. For example, the matching score may be calculated from the x-direction edge strength and the y-direction edge strength of the model and the evaluation edge image as in the following expression (5).

Figure 2020077397
Figure 2020077397

評価用エッジ画像内の全ての探索位置でのスコア計算が完了したら、当該仮モデルを使ったパターンマッチングが終了となる。全ての探索位置でのスコア計算が完了していなければ、次の探索位置(i、j)に抽出窓を進めて、マッチングスコアの計算を続行する。本実施例では簡略化のためモデルの平行移動のみを検出するパターンマッチング方法を説明したが、同様の方法で、モデルの回転やスケール変化等を検出するパターンマッチングも適用可能である。   When the score calculation at all the search positions in the evaluation edge image is completed, the pattern matching using the temporary model ends. If score calculation has not been completed at all search positions, the extraction window is advanced to the next search position (i, j) and calculation of matching scores is continued. In the present embodiment, the pattern matching method for detecting only the parallel movement of the model has been described for simplification, but the pattern matching for detecting the rotation and scale change of the model can be applied by the same method.

前述したパターンマッチングを実行する際に、所定の閾値以上のマッチングスコアが算出された場合、そのマッチングスコアRと位置(i、j)をRAM303に記憶させる。これにより、図12に示すように、ある評価用画像に対するスコアマップが生成される。所定のスコア閾値を−1に設定すれば評価用画像内の全ての位置のスコアを含んだスコアマップが生成されることになる。   When a matching score equal to or higher than a predetermined threshold is calculated when executing the above-described pattern matching, the matching score R and the position (i, j) are stored in the RAM 303. Thereby, as shown in FIG. 12, a score map for a certain evaluation image is generated. If the predetermined score threshold value is set to -1, a score map including scores of all positions in the evaluation image will be generated.

さらに、CPU301は、RAM303に一時的に記憶しておいたスコアマップから最大検出スコア(第1位の検出スコア)と、最大検出スコアが得られた第1の位置から離れた第2の位置で得られた第2位の検出スコアを抽出する(図10:S403)。抽出したこれらのスコアは記憶手段、例えばRAM303などに記憶させる。以下に前記2つのスコアの抽出方法を詳細に示す。   Further, the CPU 301 uses the maximum detection score (first detection score) from the score map temporarily stored in the RAM 303 and the second position apart from the first position where the maximum detection score is obtained. The obtained second detection score is extracted (FIG. 10: S403). These extracted scores are stored in a storage unit such as the RAM 303. The method of extracting the two scores will be described in detail below.

最大検出スコア(第1位の検出スコア)とは、図12に1201で示す山の頂点のように、スコアマップの中で示されるマッチングスコアRの最大値である。即ち、この最大検出スコアは、当該の評価画像で得られた類似度が第1位の値を有する第1のマッチングスコアである。   The maximum detection score (first detection score) is the maximum value of the matching score R shown in the score map, such as the peak of 1201 in FIG. That is, the maximum detection score is the first matching score having the first-ranked degree of similarity obtained in the evaluation image.

また、第1のマッチングスコアが得られた評価画像中の空間的な位置とは異なる評価画像中の位置で得られた第2のマッチングスコアを取得する。この第2のマッチングスコアは、例えば図12に示すように、最大検出スコアが検出された頂点を含む山1201とは別の第2位の高さの山1202の頂点における検出スコアである。最大検出スコアは1番目に大きな極大値であるが、第2のマッチングスコアは2番目に大きな極大値であると言ってもよい。なお、スコアマップに極大値が1つしか表れない場合は、スコアマップ中の最小値を第2のマッチングスコアとする。
マッチングの精度誤差やノイズによる誤差、個体差による誤差等が大きいと、同じ位置におけるマッチングスコアがずれて複数個所に現れるが場合がある。そのような場合には最大検出スコアが検出された山1201の第1の位置からある閾値(所定距離)以上、離間した位置において、最大となるマッチングスコアを第2のマッチングスコアとするのが好ましい。第1の位置と第2の位置との離間距離の閾値は、マッチングの精度誤差やノイズによる誤差、個体差による誤差等に基づく値を算出して予め設定しておいてもよいし、ユーザが任意に設定してもよい。例えば、最大検出スコアが検出された山1201の位置から画像のX、Y方向に10画素以内の位置を最大検出スコア近傍の範囲として定義することができる。この場合は、空間的に10画素を超えて離間した範囲内における最大のスコアを抽出して第2のマッチングスコアとしてもよい。
Further, the second matching score obtained at a position in the evaluation image different from the spatial position in the evaluation image from which the first matching score was obtained is acquired. The second matching score is, for example, as shown in FIG. 12, a detection score at the apex of the mountain 1202 having the second highest height different from the mountain 1201 including the apex at which the maximum detection score is detected. It can be said that the maximum detection score is the first largest local maximum value, but the second matching score is the second largest local maximum value. When only one maximum value appears in the score map, the minimum value in the score map is used as the second matching score.
If the accuracy error of matching, the error due to noise, the error due to individual difference, etc. are large, the matching score at the same position may shift and appear at a plurality of places. In such a case, it is preferable to set the maximum matching score as the second matching score at a position separated by a threshold value (predetermined distance) or more from the first position of the mountain 1201 where the maximum detection score is detected. .. The threshold value of the distance between the first position and the second position may be set in advance by calculating a value based on an error in matching accuracy, an error due to noise, an error due to individual difference, or the like. It may be set arbitrarily. For example, a position within 10 pixels in the X and Y directions of the image from the position of the mountain 1201 where the maximum detection score is detected can be defined as a range near the maximum detection score. In this case, the maximum score within a spatially separated range exceeding 10 pixels may be extracted and used as the second matching score.

所定の距離は、必ずしも最大検出スコアの位置を中心として所定の画素数以上、離間した位置であることを条件としなくてもよい。例えば、図13に示すように、最大検出スコアの位置1301と第2位の位置1302に仮モデルを配置し、その2つの仮モデルの画像範囲の重複する態様によって、近傍を除いた範囲に該当するかを判定してもよい。2つの仮モデルの重なり具合(重複割合)は、例えば仮モデルの面積Mと、2つの仮モデルの重なった部分の面積NとからN/Mで算出する。この重複度(重複範囲)が所定の重複範囲以下(例えば所定の閾値以下)であれば、第2の検出スコアの位置が最大検出スコアの位置から所定の距離以上、離れていると判定する。重複度の所定の閾値を0.5に設定した場合は、最大検出スコアの位置に配置した仮モデルとその他の位置の仮モデルが50%以上重なったら閾値より近いとみなす。また、50%より小さければ最大検出スコア位置から閾値以上、離れているとみなし、その位置で得られたスコアを第2のマッチングスコアとして採用する。   The predetermined distance does not necessarily have to be a position separated by a predetermined number of pixels or more with the position of the maximum detection score as the center. For example, as shown in FIG. 13, a temporary model is arranged at the position 1301 of the maximum detection score and the position 1302 of the second place, and it corresponds to the range excluding the neighborhood due to the overlapping mode of the image ranges of the two temporary models. You may decide whether to do it. The degree of overlap (overlap ratio) of the two temporary models is calculated as N / M from, for example, the area M of the temporary models and the area N of the overlapping portions of the two temporary models. If the degree of overlap (overlap range) is less than or equal to a predetermined overlap range (for example, less than or equal to a predetermined threshold value), it is determined that the position of the second detection score is a predetermined distance or more away from the position of the maximum detection score. When the predetermined threshold of the degree of overlap is set to 0.5, if the temporary model placed at the position of the maximum detection score and the temporary model at other positions overlap by 50% or more, it is regarded as closer than the threshold. If it is smaller than 50%, it is considered that the maximum detection score position is more than a threshold value away, and the score obtained at that position is adopted as the second matching score.

以上のようにして、ある1つの評価画像とある1つの仮モデルから、画像の類似度に相当するマッチングスコアに関して、第1位のマッチングスコアと第2位のマッチングスコアを取得することができる。取得した第1位のマッチングスコアと、第1位のマッチングスコアが得られた位置から離れた位置で得られた第2位のマッチングスコアは、RAM303に記憶させる。このマッチグスコア取得工程を実行するCPU301は、例えば画像処理装置300においてマッチングスコア取得部としての機能ブロックを構成する。   As described above, the matching score of the first place and the matching score of the second place can be acquired from the one evaluation image and the one provisional model with respect to the matching score corresponding to the similarity of the images. The acquired first matching score and the second matching score obtained at a position away from the position where the first matching score is obtained are stored in the RAM 303. The CPU 301 that executes this matching score acquisition step constitutes a functional block as a matching score acquisition unit in the image processing device 300, for example.

そして、CPU301は、用意した全ての評価用画像に対して同様の処理を行ったか確認(S404)しながら、上記のステップS402、S403を実行する。取得した第1位のマッチングスコアの集合である第1のマッチングスコア群と、第2位のマッチングスコアの集合である第2のマッチングスコア群はRAM303に記憶させる。ステップS404で全ての評価用画像の処理を確認すると、次のステップS405に進む。以上のようにして、ある1つの仮モデルについて、複数の評価画像を用いて、第1のマッチングスコア群と第2のマッチングスコア群を取得することができる。   Then, the CPU 301 executes the above steps S402 and S403 while confirming whether the same processing has been performed on all prepared evaluation images (S404). The first matching score group, which is the set of first-ranked matching scores, and the second matching score group, which is the second-ranked matching score set, are stored in the RAM 303. When the processing of all the evaluation images is confirmed in step S404, the process proceeds to the next step S405. As described above, it is possible to acquire the first matching score group and the second matching score group using a plurality of evaluation images for a certain temporary model.

ある1つの仮モデルについて全ての評価用画像に対しての処理が完了すると、当該仮モデルについての第1のマッチングスコア群と第2のマッチングスコア群の表(テーブルデータ)を得ることができる。例えば図14のように、各評価用画像ごとに抽出した第1位と第2位のマッチングスコア群の表(テーブルデータ)がRAM303上に得られる。図14では評価用画像が5枚の場合の例を示している。1401は評価用画像を識別する番号、1402、1403はそれぞれその評価用画像における第1位のマッチングスコア(最大検出スコア)と、その最大検出スコアの位置から所定距離以上、離間した位置における第2位のマッチングスコアの値である。   When the processing for all the evaluation images for a given temporary model is completed, a table (table data) of the first matching score group and the second matching score group for the temporary model can be obtained. For example, as shown in FIG. 14, a table (table data) of the first and second matching score groups extracted for each evaluation image is obtained on the RAM 303. FIG. 14 shows an example in which there are five evaluation images. 1401 is a number for identifying an evaluation image, 1402 and 1403 are respectively the first matching score (maximum detection score) in the evaluation image and the second at a position separated by a predetermined distance or more from the position of the maximum detection score. It is the value of the matching score of the place.

図10のステップS405では、CPU301は、ステップS401で選択した特定の仮モデルについての評価値を以下のようにして算出する。例えば、この仮モデルについての評価値は、ステップS404までの処理で作成した図14のスコアの表(テーブルデータ)に基づき算出する。   In step S405 of FIG. 10, the CPU 301 calculates the evaluation value for the specific temporary model selected in step S401 as follows. For example, the evaluation value of this temporary model is calculated based on the score table (table data) of FIG. 14 created by the processing up to step S404.

図15は、この1つの仮モデルに対する評価値の演算結果を示している。図15において、1501は評価用画像を識別する番号、1502、1503はそれぞれその評価用画像における最大検出スコアと、その最大検出スコアの位置から離間した(近傍以外)の第2位のスコアの値である。また、1504はこれら最大検出スコアと第2位のスコアの差分、1505は各評価用画像の最大検出スコアと第2位のスコアの平均値、最大値、最小値である。   FIG. 15 shows the calculation result of the evaluation value for this one temporary model. In FIG. 15, reference numeral 1501 is a number for identifying the evaluation image, 1502 and 1503 are the maximum detection score in the evaluation image, and the value of the second highest score apart from the position of the maximum detection score (other than the neighborhood). Is. Further, 1504 is the difference between the maximum detection score and the second rank score, and 1505 is the average value, the maximum value, and the minimum value of the maximum detection score and the second rank score of each evaluation image.

本実施形態では、例えば、ある仮モデルに対する評価値として、複数の評価用画像で得られた、最大検出スコアと、最大検出スコアが検出された位置から離間した(近傍以外)の第2位のスコアとの差分の最小値を採用する。例えば、図15に評価値の演算結果を示した仮モデルの例では、3番目の評価用画像で得られた差分(1504)が最も小さく、この仮モデルの評価値は、0.25となる。   In the present embodiment, for example, as the evaluation value for a given temporary model, the maximum detection score obtained from a plurality of evaluation images and the second highest position apart from the position where the maximum detection score is detected (other than the neighborhood) are used. Use the minimum difference from the score. For example, in the example of the temporary model in which the calculation result of the evaluation value is shown in FIG. 15, the difference (1504) obtained in the third evaluation image is the smallest, and the evaluation value of this temporary model is 0.25. ..

なお、仮モデルに対する評価値の演算手法は、他にも考えられる。例えば、評価値の算出方法の一つは、各画像の最大検出スコアの平均値と最大検出スコアが検出された位置の近傍以外の第2のスコアの平均値をそれぞれ算出し、その差分を評価値とする手法である。この手法によると、図15に評価値の演算結果を示した仮モデルの場合は、1505に示されるように、2つの平均値、0.952と0.572の差分である0.38がこの仮モデルの評価値となる。   Note that other methods of calculating the evaluation value for the temporary model can be considered. For example, one of the evaluation value calculation methods is to calculate the average value of the maximum detection scores of each image and the average value of the second scores other than the vicinity of the position where the maximum detection score is detected, and evaluate the difference. It is a method of setting the value. According to this method, in the case of the tentative model in which the calculation result of the evaluation value is shown in FIG. 15, as shown by 1505, the two average values, which is the difference between 0.952 and 0.572, is 0.38. It becomes the evaluation value of the temporary model.

評価値の算出方法の他の一つは、各画像の最大検出スコアの最小値と、最大検出スコアが得られた位置の近傍以外で得られた第2のスコアの最大値をそれぞれ算出し、その差分を評価値とするものである。この手法によると、図15に評価値の演算結果を示した仮モデルの場合は、1505に示されるように、0.87と0.67の差分となるため、0.2がこの仮モデルの評価値となる。仮モデルに対する評価値の演算手法は、上記のいくつかの手法以外の手法を当業者が適宜採用して構わない。例えば、図15の表の値を使用して、適宜、1つの仮モデルに対し1つの評価値を算出する。   Another one of the calculation methods of the evaluation value is to calculate the minimum value of the maximum detection score of each image and the maximum value of the second score obtained outside the vicinity of the position where the maximum detection score is obtained, The difference is used as the evaluation value. According to this method, in the case of the temporary model in which the calculation result of the evaluation value is shown in FIG. 15, there is a difference between 0.87 and 0.67 as indicated by 1505, so 0.2 is the value of this temporary model. It becomes an evaluation value. Those skilled in the art may appropriately adopt a method other than the above-mentioned several methods as the method of calculating the evaluation value for the temporary model. For example, using the values in the table of FIG. 15, one evaluation value is calculated for one temporary model as appropriate.

さらに、CPU301は、図10のステップS401からS405の処理を、用意した全ての仮モデルに対して実行する。そして、全ての仮モデルに対して評価値の算出が完了したと判定(S406)されると、図10に詳細を示した仮モデルの評価値算出処理(図4:S400)が完了する。   Further, the CPU 301 executes the processes of steps S401 to S405 of FIG. 10 for all prepared temporary models. When it is determined that the calculation of the evaluation values has been completed for all the temporary models (S406), the temporary model evaluation value calculation processing (FIG. 4: S400) shown in detail in FIG. 10 is completed.

最後に、CPU301は、ステップS400で作成した各仮モデルの評価値の中から、最大の評価値が得られた仮モデルを選択し、生産時にパターンマッチングとして用いる本モデルとして決定する(図4:S500)。この決定した本モデルは、実際のパターンマッチング時に利用できるよう、記憶手段、例えば、HDD304に記憶させる。なお、この決定工程(図4:S500)を実行するCPU301は、例えば画像処理装置300において決定部としての機能ブロックを構成することになる。   Finally, the CPU 301 selects the temporary model having the maximum evaluation value from the evaluation values of the temporary models created in step S400, and determines the temporary model to be used as pattern matching during production (FIG. 4 :). S500). This determined model is stored in a storage unit, for example, the HDD 304 so that it can be used at the time of actual pattern matching. The CPU 301 that executes this determination step (FIG. 4: S500) constitutes a functional block as a determination unit in the image processing apparatus 300, for example.

以上のようにして、モデルの自動作成処理が終了する。CPU301は、前記ステップにて作成された本モデルとカメラ500で撮影された画像とでパターンマッチングを実行することにより、実際の生産機器200が稼働することになる。このパターンマッチング工程を実行するCPU301は、例えば画像処理装置300においてパターンマッチング部としての機能ブロックを構成する。   As described above, the automatic model creating process is completed. The CPU 301 executes the pattern matching between the model created in the above step and the image captured by the camera 500, so that the actual production device 200 operates. The CPU 301 that executes this pattern matching step constitutes a functional block as a pattern matching unit in the image processing apparatus 300, for example.

以上のように、本実施形態によれば、誤検知の少ないパターンマッチング用のモデルを決定すべく、複数の仮モデルを作成して、評価用画像にてパターンマッチングを実行し、その中で最も評価値の高い仮モデルを本モデル(正式モデル)として採用する。その評価値としては、例えば、評価用画像をパターンマッチングした際の最大検出スコアと、最大検出スコアが検出された位置の近傍以外で検出された第2のマッチングスコアとの差を採用している。つまり、最も誤検出が発生しやすい位置は、図12のスコアマップの例では、山1202のように、マッチングスコアRが最高となる山1201とは別の位置に形成されるピークの位置である。そこで、これを最大検出スコア近傍以外の第2のマッチングスコアとして採用する。この誤検出を生じさせる可能性が高い山1202の第2のマッチングスコアと、検出の正解位置となる山1201で検出された最大検出スコアとの差が大きいマッチングモデルであるほど、誤検出の確率が低下する。   As described above, according to the present embodiment, in order to determine a model for pattern matching with few false detections, a plurality of temporary models are created, pattern matching is performed on the evaluation image, and the most of them is executed. A temporary model with a high evaluation value will be adopted as this model (official model). As the evaluation value, for example, a difference between the maximum detection score when the evaluation image is pattern-matched and the second matching score detected outside the vicinity of the position where the maximum detection score is detected is adopted. .. That is, the position where erroneous detection is most likely to occur is a peak position formed at a position different from the peak 1201 having the highest matching score R, such as the peak 1202 in the example of the score map of FIG. .. Therefore, this is adopted as the second matching score other than the neighborhood of the maximum detection score. The larger the difference between the second matching score of the mountain 1202 that is more likely to cause this false detection and the maximum detection score detected by the mountain 1201 that is the correct position for detection, the larger the matching model, the higher the probability of false detection. Is reduced.

そして、本実施形態によれば、複数の仮モデルの中から、この2つのスコアの差がなるべく大きくなるようなモデルを自動的に選択することができる。また、本実施形態では、モデルの評価、選択は、生産ラインで実際に生産を開始する前に事前に実施しておくことができるため、実際の生産工程における監視時などにおいては、予め選択された一つのモデルでパターンマッチングを実行することができる。即ち、本実施形態では、実際の生産ライン監視のために行う画像処理において多数のマッチングモデルを用いてパターンマッチングを実行する必要がない。そのため、画像処理時間を増大させることがなく、高速に画像処理に基づく監視処理を実行することができる。また、様々な生産工程での背景やノイズ、ワーク形状等の影響によりスコアマップの形状が変形するような場合であっても、前述した2つのスコア差を利用することにより汎用的に適用することが可能となる。本実施形態によれば、処理時間を増大させることなく、様々な生産工程で適用可能な誤検知を防ぐパターンマッチングに使用するモデルの自動作成が可能となる。   Then, according to the present embodiment, it is possible to automatically select, from a plurality of temporary models, a model in which the difference between the two scores is as large as possible. Further, in the present embodiment, the model evaluation and selection can be performed in advance before the actual production is started on the production line, so that it is selected in advance during monitoring in the actual production process. Only one model can perform pattern matching. That is, in the present embodiment, it is not necessary to perform pattern matching using a large number of matching models in image processing performed for actual production line monitoring. Therefore, the monitoring process based on the image processing can be executed at high speed without increasing the image processing time. Further, even when the shape of the score map is deformed due to the influence of background, noise, work shape, etc. in various production processes, it can be applied for general purpose by using the difference between the two scores described above. Is possible. According to the present embodiment, it is possible to automatically create a model used for pattern matching that can be applied in various production processes and that can prevent false detection without increasing the processing time.

<実施形態2>
上記の実施形態1では、形状(エッジ)ベースのパターンマッチングに用いられるモデルの作成手法につき説明した。他の手法によるパターンマッチングのためのモデル作成に関しても、本発明の手法を実施することができる。以下、本実施形態2では輝度ベースのパターンマッチングに用いられるモデルの自動作成につき説明する。
<Embodiment 2>
In the above-described first embodiment, a method of creating a model used for shape (edge) -based pattern matching has been described. The method of the present invention can also be applied to model creation for pattern matching by another method. Hereinafter, in the second embodiment, automatic creation of a model used for brightness-based pattern matching will be described.

本実施形態2の生産装置の概略構成、および画像処理装置の構成は上記の実施形態1の図2、図3に示したものと同様である。
以下、画像処理装置300によるモデル作成と、パターンマッチング実行(画像処理方法)について説明する。画像処理装置300のCPU301は、プログラム321をHDD304から読み出して実行することにより、以下に説明する画像処理方法の各工程を実行する。
The schematic configuration of the production apparatus according to the second exemplary embodiment and the configuration of the image processing apparatus are the same as those shown in FIGS. 2 and 3 of the first exemplary embodiment.
Hereinafter, model creation and pattern matching execution (image processing method) by the image processing apparatus 300 will be described. The CPU 301 of the image processing apparatus 300 reads out the program 321 from the HDD 304 and executes the program 321 to execute each step of the image processing method described below.

モデル作成の全体の流れは、実施形態1の図4と同様である。特に、図4のステップS100、S200は実施形態1と同様であるが、本実施形態では、複数の仮モデルの作成(図4:S300)は、図16のような処理によって行う。   The overall flow of model creation is the same as in FIG. 4 of the first embodiment. In particular, steps S100 and S200 of FIG. 4 are the same as those of the first embodiment, but in the present embodiment, the creation of a plurality of temporary models (FIG. 4: S300) is performed by the process shown in FIG.

図16の仮モデルの作成では、図4のステップS100で取得した参照画像内のステップS200で設定した領域を基準領域として、基準領域の大きさや形状を変更して複数の仮モデルを作成する。図16の処理の全体の流れは、前述の図5の処理の流れと類似しており、まずステップS309にて、ある大きさや形状を有する基準領域について参照画像から部分画像を切り出し、仮モデルを作成し、HDD304に記憶する。その後、ステップS310で、大きさや形状を変更した全ての基準領域のそれぞれに対する仮モデルの作成が完了したかを判定しながら、ステップS311、S312を繰り返し実行する。   In the creation of the temporary model of FIG. 16, the area set in step S200 in the reference image acquired in step S100 of FIG. 4 is used as the reference area, and the size and shape of the reference area are changed to create a plurality of temporary models. The overall flow of the processing of FIG. 16 is similar to the flow of the processing of FIG. 5 described above. First, in step S309, a partial image is cut out from the reference image for the standard region having a certain size and shape, and the temporary model is created. Created and stored in HDD 304. Then, in step S310, steps S311 and S312 are repeatedly executed while determining whether or not the creation of the temporary model has been completed for each of all the reference regions whose sizes and shapes have been changed.

図16のステップS311では、仮モデルの基準領域の定義(大きさや形状)を変更する。ここでは、基準領域が矩形であれば領域の幅、高さを、円形であれば直径の大きさを変更した領域を作成する。また、基準領域の中心を基準位置として、矩形や円形等様々な形状の変更も行うようにしてもよい。ステップS311では、基準領域に対して、上記のように何らかの一つの変更を加えた領域を作成する。   In step S311 of FIG. 16, the definition (size and shape) of the reference area of the temporary model is changed. Here, if the reference area is rectangular, the width and height of the area are changed, and if the reference area is circular, the diameter is changed. Further, various shapes such as a rectangle and a circle may be changed with the center of the reference area as the reference position. In step S311, a region in which some one change is added to the reference region as described above is created.

ステップS312では、参照画像から、ステップS311で作成した領域に対応する部分画像を切り出し、パターンマッチング用の仮モデルとしてHDD304に記憶させる。ステップS310では、基準領域の変更とそれに基づいた仮モデルの作成を実行することによって、所定数の仮モデルを作成したか否かを判定し、このステップが肯定された場合には仮モデル作成処理を終了する。ステップS310が否定された場合には、ステップS311に進み、上記の処理を繰り返す。   In step S312, a partial image corresponding to the area created in step S311 is cut out from the reference image and stored in the HDD 304 as a temporary model for pattern matching. In step S310, it is determined whether or not a predetermined number of temporary models have been created by changing the reference area and creation of a temporary model based on the change, and if this step is affirmed, the temporary model creation processing is performed. To finish. When step S310 is denied, it progresses to step S311 and repeats the said process.

以下では、例えば、基準領域を矩形領域とし、与えられた基準領域の幅と高さを3通りずつ変更した全部で9通りの仮モデルを作成するものとする。   In the following, for example, it is assumed that the reference area is a rectangular area and the width and height of the given reference area are changed by 3 ways, respectively, to create 9 types of temporary models in total.

本実施形態において、仮モデルの評価値算出処理の全体の流れは、上述の図10とほぼ同様である。図10のステップS401では、作成した複数の仮モデルから一つの仮モデルを選択する。続いて、ステップS402で、実施形態1と同様に事前に用意しておいた評価用画像に対して、パターンマッチングを実行する。この処理は、実施形態1とは異なり、以下に示すような輝度ベースのパターンマッチング処理を行う。   In the present embodiment, the overall flow of the evaluation value calculation process of the temporary model is almost the same as in FIG. 10 described above. In step S401 of FIG. 10, one temporary model is selected from the created multiple temporary models. Subsequently, in step S402, pattern matching is performed on the evaluation image prepared in advance as in the first embodiment. This process is different from the first embodiment, and the following brightness-based pattern matching process is performed.

例えば、図11に示すように、仮モデルと同じ大きさの抽出窓を評価用画像内でピクセル単位で範囲をずらしながら、評価用画像から仮モデルに対応する大きさの部分画像を抽出する。そして、抽出した部分画像と仮モデルとのマッチングスコアRを下式(6)により求める。   For example, as shown in FIG. 11, a partial image having a size corresponding to the temporary model is extracted from the evaluation image while shifting the range of the extraction window having the same size as the temporary model in the evaluation image in pixel units. Then, the matching score R between the extracted partial image and the temporary model is calculated by the following equation (6).

Figure 2020077397
Figure 2020077397

上式(6)において、画像内の位置(i、j)とは、評価用画像から仮モデルに対応する大きさの画像を抽出した部分画像内と仮モデル内の位置に相当する。このスコアの値は1が最も類似性が高く、−1が最も低いことを示す。評価用画像内の全ての探索位置でのスコア計算が完了すると、パターンマッチングが終了となる。全て探索位置でのスコア計算が完了していなければ、次の探索位置に(i、j)を進めて、スコア計算を進める。   In the above formula (6), the position (i, j) in the image corresponds to the positions in the partial image and the temporary model in which the image of the size corresponding to the temporary model is extracted from the evaluation image. As for the value of this score, 1 indicates the highest similarity and −1 indicates the lowest similarity. When the score calculation at all the search positions in the evaluation image is completed, the pattern matching ends. If score calculation has not been completed for all search positions, (i, j) is advanced to the next search position, and score calculation is advanced.

このパターンマッチングを実行する際に、所定のスコア閾値以上のスコアが算出された場合、そのマッチングスコアRと位置(i、j)をRAM303に記憶しておく。これにより、実施形態1と同様に図12に示すように、ある評価用画像に対するある仮モデルのスコアマップが生成される。所定のスコア閾値を−1に設定すれば評価用画像内の全ての位置のスコアマップが生成されることになる。   When a score equal to or higher than a predetermined score threshold is calculated when executing this pattern matching, the matching score R and the position (i, j) are stored in the RAM 303. As a result, as in the first embodiment, as shown in FIG. 12, a score map of a temporary model for a certain evaluation image is generated. If the predetermined score threshold is set to -1, score maps of all positions in the evaluation image will be generated.

以上のようにしてスコアマップを生成した後は、実施形態1と同様に図10のステップS403〜S406を実行し、全ての仮モデルに対して評価値を算出することができる。さらに、図4のステップS500のモデル自動設定(複数の仮モデルの中から本モデルを選択)も実施形態1と同様に実施することができる。   After the score map is generated as described above, steps S403 to S406 of FIG. 10 can be executed in the same manner as in the first embodiment to calculate the evaluation value for all the temporary models. Further, the model automatic setting (selecting this model from a plurality of temporary models) in step S500 of FIG. 4 can be performed in the same manner as in the first embodiment.

以上に示したように、パターンマッチングの演算方式が異なる場合、例えば、本実施形態のように輝度ベースのパターンマッチングを行う場合でも、スコア値の計算方式を適宜定めておけば、モデルの自動作成が可能である。当然ながら、以上のようにして作成されたモデルを実際のパターンマッチングを行う場合は、モデル作成時と同じ輝度ベースのパターンマッチングを実行する。図2のような生産ラインでは、CPU301は、前記ステップにて作成された本モデルとカメラ500で撮影された画像とでパターンマッチングを実行することにより、実際の生産機器200が稼働することになる。   As described above, when the pattern matching calculation method is different, for example, even when the brightness-based pattern matching is performed as in the present embodiment, if the score value calculation method is appropriately determined, the model is automatically created. Is possible. As a matter of course, when the model created as described above is actually subjected to pattern matching, the same brightness-based pattern matching as that at the time of model creation is executed. In the production line as shown in FIG. 2, the CPU 301 executes the pattern matching between the model created in the above step and the image captured by the camera 500, so that the actual production device 200 operates. ..

本実施形態によれば、パターンマッチングが輝度ベースで行われる場合でも、スコアマップを用いた演算によって、実際の製造工程における画像処理に利用するマッチングモデルを自動作成することができる。以上では、画像処理に利用されるパターンマッチングが、実施形態1のような形状(連結エッジ)ベースのものである場合、あるいは実施形態2のような輝度ベースのものである場合の例を示した。しかしながら、本発明のスコアマップを用いた演算によるモデル生成技術は、マッチングスコアを算出できるパターンマッチングを行うのであれば、パターンマッチングの処理形態を問わず様々なパターンマッチングのモデル作成に実施可能である。   According to the present embodiment, even when the pattern matching is performed on the basis of the brightness, it is possible to automatically create the matching model used for the image processing in the actual manufacturing process by the calculation using the score map. In the above, an example in which the pattern matching used for image processing is shape-based (connected edge) -based as in the first embodiment or luminance-based as in the second embodiment has been shown. .. However, the model generation technique by calculation using the score map of the present invention can be implemented in various pattern matching model creation regardless of the pattern matching processing mode, as long as pattern matching capable of calculating a matching score is performed. ..

本発明は、上述実施例の1以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステムまたは装置に供給し、システムまたは装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えばASIC)によっても実現可能である。   The present invention also provides a process of supplying a program that implements one or more functions of the above-described embodiment to a system or apparatus via a network or a storage medium, and causing one or more processors in a computer of the system or apparatus to read and execute the program. It is feasible. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.

1012…モデル、200…生産機器、300…画像処理装置、401…ロボット、500…カメラ、400…ロボット制御装置、301…CPU、302…ROM、303…RAM。   Reference numeral 1012 ... Model, 200 ... Production equipment, 300 ... Image processing device, 401 ... Robot, 500 ... Camera, 400 ... Robot control device, 301 ... CPU, 302 ... ROM, 303 ... RAM.

Claims (19)

パターンマッチングの対象物が記録された参照画像を用いてパターンマッチングのための複数の仮モデルを作成する仮モデル作成工程と、
前記複数の仮モデルの各々と、前記パターンマッチングの対象物が記録された複数の評価画像の各々とでパターンマッチングを行い、前記複数の仮モデルの各々と前記複数の評価画像の各々との間のマッチングスコアを求め、前記複数の仮モデルの各々について、各評価画像内において類似度が最大となる第1のマッチングスコアを集合した第1のマッチングスコア群と、前記各評価画像内において類似度が前記第1のマッチングスコアよりも小さな第2のマッチングスコアを集合した第2のマッチングスコア群と、を取得するマッチングスコア取得工程と、
前記複数の仮モデルの各々について、前記第1のマッチングスコア群と前記第2のマッチングスコア群とから評価値を算出する評価工程と、
算出された前記評価値に基づいて前記複数の仮モデルの中からマッチングモデルを決定する決定工程と、
を備えたことを特徴する画像処理方法。
A temporary model creating step of creating a plurality of temporary models for pattern matching using a reference image in which an object of pattern matching is recorded,
Pattern matching is performed between each of the plurality of temporary models and each of the plurality of evaluation images in which the pattern matching target is recorded, and between each of the plurality of temporary models and each of the plurality of evaluation images. A matching score of each of the plurality of temporary models, and a first matching score group in which the first matching score having the maximum similarity in each evaluation image is aggregated, and the similarity in each evaluation image. A second matching score group in which a second matching score smaller than the first matching score is collected, and a matching score acquiring step,
An evaluation step of calculating an evaluation value from the first matching score group and the second matching score group for each of the plurality of temporary models;
A determining step of determining a matching model from the plurality of temporary models based on the calculated evaluation value;
An image processing method comprising:
請求項1に記載の画像処理方法において、前記マッチングスコア取得工程において、前記仮モデルと前記評価画像とのパターンマッチングによって生成されるスコアマップが複数の極大値を有する場合、マッチングスコアが第1位の極大値を前記第1のマッチングスコアとし、マッチングスコアが第2位の極大値を前記第2のマッチングスコアとすることを特徴とする画像処理方法。   The image processing method according to claim 1, wherein in the matching score acquisition step, when the score map generated by the pattern matching between the temporary model and the evaluation image has a plurality of maximum values, the matching score is ranked first. Is set as the first matching score, and the maximum value of the second matching score is set as the second matching score. 請求項1に記載の画像処理方法において、前記マッチングスコア取得工程において、前記仮モデルと前記評価画像とのパターンマッチングによって生成されるスコアマップの極大値が1つの場合、前記極大値を前記第1のマッチングスコアとし、スコアマップ中の最小値を前記第2のマッチングスコアとすることを特徴とする画像処理方法。   The image processing method according to claim 1, wherein, in the matching score acquisition step, when the maximum value of the score map generated by the pattern matching between the temporary model and the evaluation image is one, the maximum value is set to the first value. Image matching method, and the minimum value in the score map is used as the second matching score. 請求項2に記載の画像処理方法において、前記第2のマッチングスコアが得られる第2の位置と、前記第1のマッチングスコアが得られる第1の位置との距離に閾値が設定されている場合、前記第1の位置から前記閾値以上離れた領域においてマッチングスコアが第2位の極大値を前記第2のマッチングスコアとすることを特徴とする画像処理方法。   The image processing method according to claim 2, wherein a threshold is set for the distance between the second position at which the second matching score is obtained and the first position at which the first matching score is obtained. The image processing method is characterized in that the maximum value of the second matching score in the region distant from the first position by the threshold value or more is the second matching score. 請求項1に記載の画像処理方法において、前記マッチングスコア取得工程において、前記第1のマッチングスコアが得られた評価画像中の空間的な第1の位置から、所定の距離以上離れた範囲から得られた最大のマッチングスコアを前記第2のマッチングスコアとする画像処理方法。   The image processing method according to claim 1, wherein, in the matching score acquisition step, the first matching score is obtained from a range apart from a spatial first position in the evaluation image by a predetermined distance or more. An image processing method in which the obtained maximum matching score is used as the second matching score. 請求項1に記載の画像処理方法において、前記マッチングスコア取得工程において、前記第1のマッチングスコアが得られた評価画像中の空間的な第1の位置に仮モデルを配置した時に、前記第1の位置に配置された前記仮モデルとの重複範囲が所定の割合以下となるような位置に前記仮モデルを配置して得られたマッチングスコアの最大値を、前記第2のマッチングスコアとする画像処理方法。   The image processing method according to claim 1, wherein in the matching score acquisition step, when the temporary model is arranged at a spatial first position in the evaluation image from which the first matching score is obtained, An image in which the maximum value of the matching scores obtained by arranging the temporary model at a position such that the overlapping range with the temporary model arranged at the position is less than or equal to a predetermined ratio is the second matching score. Processing method. 請求項1乃至6のいずれか1項に記載の画像処理方法において、前記仮モデル作成工程は、前記参照画像から前記仮モデルを作成するための仮モデル作成領域を指定するユーザの操作を受け付けるユーザインターフェース工程を含む画像処理方法。   The image processing method according to any one of claims 1 to 6, wherein the temporary model creation step is a user who receives an operation of a user who specifies a temporary model creation area for creating the temporary model from the reference image. An image processing method including an interface process. 請求項1乃至7のいずれか1項に記載の画像処理方法において、前記仮モデル作成工程で、前記参照画像からエッジ点が連結した連結エッジを複数抽出し、抽出された複数の前記連結エッジの組合せにより前記複数の仮モデルを作成する画像処理方法。   The image processing method according to claim 1, wherein in the temporary model creating step, a plurality of connected edges in which edge points are connected are extracted from the reference image, and the plurality of extracted connected edges are extracted. An image processing method for creating the plurality of temporary models by combination. 請求項1乃至7のいずれか1項に記載の画像処理方法において、前記仮モデル作成工程で、前記参照画像から抽出した大きさおよび/または形状の異なる複数の領域により、前記複数の仮モデルを作成する画像処理方法。   The image processing method according to any one of claims 1 to 7, wherein in the temporary model creating step, the plurality of temporary models are defined by a plurality of regions having different sizes and / or shapes extracted from the reference image. Image processing method to create. 請求項1乃至9のいずれか1項に記載の画像処理方法において、前記評価工程において、前記第1のマッチングスコア群と前記第2のマッチングスコア群とから、前記第1のマッチングスコアと前記第2のマッチングスコアとの差を前記評価画像ごとに算出し、算出した前記第1のマッチングスコアと前記第2のマッチングスコアとの差の最大値もしくは最小値を前記評価値として算出する画像処理方法。   The image processing method according to claim 1, wherein in the evaluation step, the first matching score and the second matching score group are selected from the first matching score group and the second matching score group. An image processing method of calculating a difference between the second matching score and a second matching score, and calculating a maximum value or a minimum value of a difference between the calculated first matching score and the second matching score as the evaluation value. .. 請求項1乃至9のいずれか1項に記載の画像処理方法において、前記評価工程において、前記第1のマッチングスコア群の平均値と、前記第2のマッチングスコア群の平均値と、の差を前記評価値として算出する画像処理方法。   The image processing method according to claim 1, wherein in the evaluation step, a difference between an average value of the first matching score group and an average value of the second matching score group is calculated. An image processing method for calculating the evaluation value. 請求項1乃至11のいずれか1項に記載の画像処理方法において、前記決定工程で決定されたマッチングモデルを用いてパターンマッチングを実行するパターンマッチング工程を更に含む画像処理方法。   The image processing method according to any one of claims 1 to 11, further comprising a pattern matching step of performing pattern matching using the matching model determined in the determination step. 請求項12に記載の画像処理方法の各工程と、
前記パターンマッチング工程の結果を用いてワークの位置および姿勢を認識する認識工程と、
前記認識工程で得られた情報を用いて、前記ワークを用いて物品を生産する生産制御工程と、
を含む物品の製造方法。
Each step of the image processing method according to claim 12,
A recognition step of recognizing the position and orientation of the work using the result of the pattern matching step;
A production control step of producing an article using the work, using the information obtained in the recognition step;
A method of manufacturing an article including.
請求項12に記載の画像処理方法の各工程と、
前記パターンマッチング工程の結果を用いてワークを検査する検査工程と、
前記検査工程の検査結果に応じて、前記ワークを用いて物品を生産する生産制御工程と、
を含む物品の製造方法。
Each step of the image processing method according to claim 12,
An inspection step of inspecting the work using the result of the pattern matching step,
A production control step of producing an article using the work according to the inspection result of the inspection step;
A method of manufacturing an article including.
請求項1乃至12のいずれか1項に記載の画像処理方法をコンピュータに実行させるプログラム。   A program that causes a computer to execute the image processing method according to claim 1. 請求項15に記載のプログラムを格納したコンピュータ読み取り可能な記録媒体。   A computer-readable recording medium storing the program according to claim 15. パターンマッチングの対象物が記録された参照画像を用いてパターンマッチングのための複数の仮モデルを作成する仮モデル作成部と、
前記複数の仮モデルの各々と、前記パターンマッチングの対象物が記録された複数の評価画像の各々とでパターンマッチングを行い、前記複数の仮モデルの各々と前記複数の評価画像の各々との間のマッチングスコアを求め、
前記複数の仮モデルの各々について、
各評価画像内において類似度が最大となる第1のマッチングスコアを集合した第1のマッチングスコア群と、
前記各評価画像内において類似度が前記第1のマッチングスコアよりも小さな第2のマッチングスコアを集合した第2のマッチングスコア群と、
を取得するマッチングスコア取得部と、
前記複数の仮モデルの各々について、前記第1のマッチングスコア群と前記第2のマッチングスコア群とから評価値を算出する評価部と、
算出された前記評価値に基づいて前記複数の仮モデルからマッチングモデルを決定する決定部と、を備えたことを特徴する画像処理装置。
A temporary model creation unit that creates a plurality of temporary models for pattern matching using a reference image in which an object of pattern matching is recorded,
Pattern matching is performed between each of the plurality of temporary models and each of the plurality of evaluation images in which the pattern matching target is recorded, and between each of the plurality of temporary models and each of the plurality of evaluation images. Find the matching score of
For each of the plurality of temporary models,
A first matching score group in which first matching scores having the highest degree of similarity in each evaluation image are collected,
A second matching score group in which a second matching score whose similarity is smaller than the first matching score in each of the evaluation images is collected;
A matching score acquisition unit that acquires
An evaluation unit that calculates an evaluation value from the first matching score group and the second matching score group for each of the plurality of temporary models,
An image processing apparatus, comprising: a determination unit that determines a matching model from the plurality of temporary models based on the calculated evaluation value.
請求項17に記載の画像処理装置は、前記決定部で決定されたマッチングモデルを用いてパターンマッチングを実行するパターンマッチング部を更に有することを特徴する画像処理装置。   The image processing apparatus according to claim 17, further comprising a pattern matching unit that performs pattern matching using the matching model determined by the determination unit. 請求項18に記載の画像処理装置と、
ワークを撮像した画像に対して行った前記パターンマッチング部によるパターンマッチングの結果を用いて、前記ワークに対する生産処理を実行する生産機器と、
を有する生産システム。
An image processing apparatus according to claim 18,
Using a result of pattern matching by the pattern matching unit performed on an image of a workpiece, a production device that executes a production process for the workpiece,
Production system with.
JP2019185678A 2018-11-09 2019-10-09 Image processing method, image processing device, production system, article manufacturing method, program, and recording medium Active JP7404017B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/661,262 US11200632B2 (en) 2018-11-09 2019-10-23 Image processing method and image processing apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018211413 2018-11-09
JP2018211413 2018-11-09

Publications (3)

Publication Number Publication Date
JP2020077397A true JP2020077397A (en) 2020-05-21
JP2020077397A5 JP2020077397A5 (en) 2022-10-24
JP7404017B2 JP7404017B2 (en) 2023-12-25

Family

ID=70724244

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019185678A Active JP7404017B2 (en) 2018-11-09 2019-10-09 Image processing method, image processing device, production system, article manufacturing method, program, and recording medium

Country Status (1)

Country Link
JP (1) JP7404017B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220083570A (en) 2020-12-11 2022-06-20 주식회사 히타치하이테크 Computer system and processing method of observing device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002032753A (en) * 2000-07-19 2002-01-31 Matsushita Electric Ind Co Ltd Method for recognizing image
JP2009245287A (en) * 2008-03-31 2009-10-22 Fujitsu Ltd Image tracking device, method and program
JP2014021684A (en) * 2012-07-18 2014-02-03 Hitachi High-Technologies Corp Template preparation device of measurement device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002032753A (en) * 2000-07-19 2002-01-31 Matsushita Electric Ind Co Ltd Method for recognizing image
JP2009245287A (en) * 2008-03-31 2009-10-22 Fujitsu Ltd Image tracking device, method and program
JP2014021684A (en) * 2012-07-18 2014-02-03 Hitachi High-Technologies Corp Template preparation device of measurement device

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
GANG WANG ET AL.: ""A template extraction approach for image recognition"", 2012 INTERNATIONAL SYMPOSIUM ON INFORMATION TECHNOLOGIES IN MEDICINE AND EDUCATION, JPN6023033885, 3 August 2012 (2012-08-03), US, pages 932 - 935, XP032228964, ISSN: 0005195206, DOI: 10.1109/ITiME.2012.6291456 *
斉藤 文彦: ""遺伝的アルゴリズムを用いた画素選択テンプレートによる画像マッチング"", 電子情報通信学会論文誌, vol. 84, no. 3, JPN6023033884, 1 March 2001 (2001-03-01), JP, pages 488 - 499, ISSN: 0005195205 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220083570A (en) 2020-12-11 2022-06-20 주식회사 히타치하이테크 Computer system and processing method of observing device

Also Published As

Publication number Publication date
JP7404017B2 (en) 2023-12-25

Similar Documents

Publication Publication Date Title
US10997465B2 (en) Information processing device, information processing method, and storage medium
US9621793B2 (en) Information processing apparatus, method therefor, and measurement apparatus
TWI419081B (en) Method and system for providing augmented reality based on marker tracing, and computer program product thereof
JP5699788B2 (en) Screen area detection method and system
JP5671281B2 (en) Position / orientation measuring apparatus, control method and program for position / orientation measuring apparatus
CN112837371A (en) Object grabbing method and device based on 3D matching and computing equipment
CN110926330B (en) Image processing apparatus, image processing method, and program
US10572762B2 (en) Image processing method for performing pattern matching for detecting a position of a detection target
US9805443B2 (en) Image processing method, image processing apparatus, program, storage medium, production apparatus, and method of producing assembly
JP7070153B2 (en) Visual inspection system, visual inspection result display method, and visual inspection result display program
US20150310617A1 (en) Display control device and display control method
US20180247150A1 (en) Information processing device, information processing method, and article manufacturing method
JP2004213332A (en) Calibration device, calibration method, program for calibration, and calibration mending tool
US20130058526A1 (en) Device for automated detection of feature for calibration and method thereof
JP6483168B2 (en) System and method for efficiently scoring a probe in an image with a vision system
US11590657B2 (en) Image processing device, control method thereof, and program storage medium
JP5262705B2 (en) Motion estimation apparatus and program
US10623629B2 (en) Imaging apparatus and imaging condition setting method and program
JP5976089B2 (en) Position / orientation measuring apparatus, position / orientation measuring method, and program
US20210042576A1 (en) Image processing system
JP7404017B2 (en) Image processing method, image processing device, production system, article manufacturing method, program, and recording medium
CN111199533B (en) Image processing apparatus and method
US11200632B2 (en) Image processing method and image processing apparatus
JP6337530B2 (en) Image processing apparatus, image processing method, and image processing program
CN114902281A (en) Image processing system

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20200206

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20200207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221006

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221006

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230817

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230822

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231020

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231213

R151 Written notification of patent or utility model registration

Ref document number: 7404017

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151