JPWO2020100522A1 - Mark detection systems, signal processing circuits, computer programs and methods - Google Patents
Mark detection systems, signal processing circuits, computer programs and methods Download PDFInfo
- Publication number
- JPWO2020100522A1 JPWO2020100522A1 JP2020556733A JP2020556733A JPWO2020100522A1 JP WO2020100522 A1 JPWO2020100522 A1 JP WO2020100522A1 JP 2020556733 A JP2020556733 A JP 2020556733A JP 2020556733 A JP2020556733 A JP 2020556733A JP WO2020100522 A1 JPWO2020100522 A1 JP WO2020100522A1
- Authority
- JP
- Japan
- Prior art keywords
- image
- mark
- database
- signal processing
- acquired
- 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.)
- Pending
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B11/00—Measuring arrangements characterised by the use of optical techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L21/00—Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
- H01L21/67—Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Computer Hardware Design (AREA)
- Mechanical Engineering (AREA)
- Robotics (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Power Engineering (AREA)
- Image Analysis (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Manipulator (AREA)
- Container, Conveyance, Adherence, Positioning, Of Wafer (AREA)
Abstract
【課題】マークの探索を高速化する。【解決手段】マーク検出システム(1000)の撮像装置(300)はマークMが付与された物品を部分的に撮影可能な視野を有する。記憶装置(220)は、マーク位置学習動作によって取得されたデータベース(DB)を記憶する。データベースは、物品の異なる部分を撮像装置によって複数回に分けて撮影して得られた複数の画像のうちの、マークの像を含まない各画像の少なくとも1つの画像特徴量、および、各画像が表す位置とマークの位置との関係を示す位置関係データ、を関係付けている。画像にマークの像が含まれていないとき、信号処理装置は、取得した画像の画像特徴量と記憶装置内の各画像の画像特徴量との比較し、比較結果が一致した場合、データベース内の、一致した画像に関係付けられた位置関係データを利用して撮像装置の位置を変化させ、その後再度撮影された画像からマークの像を検出する。PROBLEM TO BE SOLVED: To speed up a search for a mark. An imaging device (300) of a mark detection system (1000) has a field of view capable of partially photographing an article to which a mark M is attached. The storage device (220) stores the database (DB) acquired by the mark position learning operation. The database contains at least one image feature amount of each image that does not include the mark image, and each image among a plurality of images obtained by photographing different parts of the article in a plurality of times by an imaging device. The positional relationship data indicating the relationship between the represented position and the mark position is associated with each other. When the image does not contain the image of the mark, the signal processing device compares the image feature amount of the acquired image with the image feature amount of each image in the storage device, and if the comparison results match, the signal processing device is in the database. , The position of the imaging device is changed by using the positional relationship data associated with the matched image, and then the image of the mark is detected from the image taken again.
Description
本開示は、マーク検出システム、信号処理回路、コンピュータプログラムおよび方法に関する。 The present disclosure relates to mark detection systems, signal processing circuits, computer programs and methods.
カメラでワークを撮影し、ワークに付与されたアラインメントマーク(以下、単に「マーク」と記述する。)を画像処理によって検出するマーク検出システムが知られている。アライメントマークの位置および向きに基づいて、ワークの位置および/または向きを決定することにより、その後の処理、例えばロボットによるワークの把持および搬出、が可能になる。 A mark detection system is known in which a work is photographed with a camera and an alignment mark (hereinafter, simply referred to as "mark") given to the work is detected by image processing. Determining the position and / or orientation of the work based on the position and orientation of the alignment marks allows for subsequent processing, such as gripping and unloading the work by a robot.
特開2012−138548号公報は、撮影基準位置でマークを検出できなかった場合、撮影基準位置の周辺から順に視野を移動させてマークを検出する技術を開示している。 Japanese Unexamined Patent Publication No. 2012-138548 discloses a technique for detecting a mark by moving the field of view in order from the periphery of the imaging reference position when the mark cannot be detected at the imaging reference position.
ところで、上述した従来の技術は、マークの探索に時間を要していた。 By the way, in the above-mentioned conventional technique, it takes time to search for a mark.
本開示のマーク検出システムは、例示的な実施形態において、撮像装置を用いてマークを検出するマーク検出システムであって、マークが付与された物品を部分的に撮影可能な視野を有する撮像装置と、マーク位置学習動作によって取得されたデータベースを記憶する記憶装置であって、前記データベースは、前記物品の異なる部分を前記撮像装置によって複数回に分けて撮影して得られた複数の画像のうちの、前記マークの像を含まない複数の画像について、各画像の少なくとも1つの画像特徴量、および、各画像が表す位置と前記マークの位置との関係を示す位置関係データ、を関係付けている、記憶装置と、信号処理装置とを備え、マーク検出動作時において、前記信号処理装置は、前記撮像装置で前記物品の一部を撮影させ、前記撮像装置から取得した画像に前記マークの像が含まれていないとき、前記データベースを参照して、取得した前記画像の画像特徴量と前記記憶装置に記憶されている前記各画像の画像特徴量とを比較し、比較結果が一致した場合には、前記データベースから、一致した画像に関係付けられた前記位置関係データを読み出し、読み出した前記位置関係データを利用して、前記撮像装置の視野に前記マークが入るよう、前記撮像装置の位置を変化させるための制御信号を生成して出力し、前記位置を変化させた後に、前記撮像装置を用いて再度撮影された画像から前記マークの像を検出する。 The mark detection system of the present disclosure is a mark detection system that detects a mark by using an image pickup device in an exemplary embodiment, and is an image pickup device having a field of view capable of partially photographing an article to which the mark is given. , A storage device that stores a database acquired by the mark position learning operation, and the database is one of a plurality of images obtained by photographing different parts of the article in a plurality of times by the imaging device. For a plurality of images that do not include the image of the mark, at least one image feature amount of each image and positional relationship data indicating the relationship between the position represented by each image and the position of the mark are related. A storage device and a signal processing device are provided, and at the time of mark detection operation, the signal processing device causes the image pickup device to take a picture of a part of the article, and the image acquired from the image pickup device includes the image of the mark. If not, the image feature amount of the acquired image is compared with the image feature amount of each image stored in the storage device with reference to the database, and if the comparison results match, The positional relationship data associated with the matching image is read from the database, and the read positional relationship data is used to change the position of the imaging device so that the mark is placed in the field of view of the imaging device. After generating and outputting a control signal for this purpose and changing the position, the image of the mark is detected from the image taken again by the imaging device.
本開示の信号処理回路は、例示的な実施形態において、撮像装置を用いて検出するマーク検出システムに用いられる信号処理回路であって、前記マーク検出システムは、マークが付与された物品を部分的に撮影可能な視野を有する撮像装置と、マーク位置学習動作によって取得されたデータベースを記憶する記憶装置であって、前記データベースは、前記物品の異なる部分を前記撮像装置によって複数回に分けて撮影して得られた複数の画像のうちの、前記マークの像を含まない複数の画像について、各画像の少なくとも1つの画像特徴量、および、各画像が表す位置と前記マークの位置との関係を示す位置関係データ、を関係付けている、記憶装置とを備えており、前記信号処理回路は、マーク検出動作時において、前記撮像装置に前記物品の一部を撮影させ、前記撮像装置から取得した画像に前記マークの像が含まれていないとき、前記データベースを参照して、取得した前記画像の画像特徴量と前記記憶装置に記憶されている前記各画像の画像特徴量とを比較し、比較結果が一致した場合には、前記データベースから、一致した画像に関係付けられた前記位置関係データを読み出し、読み出した前記位置関係データを利用して、前記撮像装置の視野に前記マークが入るよう、前記撮像装置の位置を変化させるための制御信号を生成して出力し、前記位置を変化させた後に、前記撮像装置を用いて再度撮影された画像から前記マークの像を検出する。 The signal processing circuit of the present disclosure is a signal processing circuit used in a mark detection system that detects using an image pickup apparatus in an exemplary embodiment, and the mark detection system partially displays a marked article. An image pickup device having a field that can be photographed and a storage device that stores a database acquired by a mark position learning operation. The database captures different parts of the article in a plurality of times by the image pickup device. Among the plurality of images obtained above, for a plurality of images that do not include the image of the mark, at least one image feature amount of each image and the relationship between the position represented by each image and the position of the mark are shown. The signal processing circuit includes a storage device associated with positional relationship data, and the signal processing circuit causes the image pickup device to take a picture of a part of the article at the time of mark detection operation, and an image acquired from the image pickup device. When the image of the mark is not included in, the image feature amount of the acquired image is compared with the image feature amount of each image stored in the storage device with reference to the database, and the comparison result is obtained. If they match, the positional relationship data associated with the matched image is read from the database, and the read positional relationship data is used so that the mark is placed in the field of view of the imaging device. A control signal for changing the position of the image pickup device is generated and output, and after the position is changed, the image of the mark is detected from the image taken again by the image pickup device.
本開示のコンピュータプログラムは、例示的な実施形態において、撮像装置を用いてマークを検出するマーク検出システムに用いられる信号処理回路を動作させるためのコンピュータプログラムであって、前記マーク検出システムは、マークが付与された物品を部分的に撮影可能な視野を有する撮像装置と、マーク位置学習動作によって取得されたデータベースを記憶する記憶装置であって、前記データベースは、前記物品の異なる部分を前記撮像装置によって複数回に分けて撮影して得られた複数の画像のうちの、前記マークの像を含まない複数の画像について、各画像の少なくとも1つの画像特徴量、および、各画像が表す位置と前記マークの位置との関係を示す位置関係データ、を関係付けている、記憶装置とを備えており、マーク検出動作時において、前記コンピュータプログラムは前記信号処理回路に、前記撮像装置を制御して前記物品の一部を撮影させ、前記撮像装置から取得した画像に前記マークの像が含まれていないとき、前記データベースを参照して、取得した前記画像の画像特徴量と前記記憶装置に記憶されている前記各画像の画像特徴量とを比較させ、比較結果が一致した場合には、前記データベースから、一致した画像に関係付けられた前記位置関係データを読み出しさせ、読み出した前記位置関係データを利用して、前記撮像装置の視野に前記マークが入るよう、前記撮像装置の位置を変化させるための制御信号を生成して出力させ、前記位置を変化させた後に、前記撮像装置を用いて再度撮影された画像から前記マークの像を検出させる。 The computer program of the present disclosure is a computer program for operating a signal processing circuit used in a mark detection system that detects a mark by using an image pickup apparatus in an exemplary embodiment, and the mark detection system is a mark. An image pickup device having a field of view capable of partially photographing an article to which the article is attached, and a storage device for storing a database acquired by a mark position learning operation, wherein the database captures different parts of the article with the image pickup device. Of the plurality of images obtained by taking the images in a plurality of times, for a plurality of images that do not include the image of the mark, at least one image feature amount of each image, a position represented by each image, and the above. It is provided with a storage device that associates positional relationship data indicating a relationship with the position of the mark, and during the mark detection operation, the computer program controls the image pickup device to the signal processing circuit. When a part of the article is photographed and the image acquired from the imaging device does not include the image of the mark, the image feature amount of the acquired image and the storage device are stored with reference to the database. The image features of each of the above images are compared, and if the comparison results match, the positional relationship data associated with the matching image is read out from the database, and the read out positional relationship data is used. Then, a control signal for changing the position of the image pickup device is generated and output so that the mark is placed in the field of view of the image pickup device, and after the position is changed, an image is taken again using the image pickup device. The image of the mark is detected from the image.
本開示の方法は、例示的な実施形態において、撮像装置を用いてマークを検出するマーク検出システムを用いて実行される方法であって、前記マーク検出システムは、マークが付与された物品を部分的に撮影可能な視野を有する撮像装置と、マーク位置学習動作によって取得されたデータベースを記憶する記憶装置であって、前記データベースは、前記物品の異なる部分を前記撮像装置によって複数回に分けて撮影して得られた複数の画像のうちの、前記マークの像を含まない複数の画像について、各画像の少なくとも1つの画像特徴量、および、各画像が表す位置と前記マークの位置との関係を示す位置関係データ、を関係付けている、記憶装置と、信号処理装置とを備えており、マーク検出動作時において、前記撮像装置に前記物品の一部を撮影させ、前記信号処理回路に、前記撮像装置から取得した画像に前記マークの像が含まれているか否かを判定させ、前記撮像装置から取得した画像に前記マークの像が含まれていないとき、前記信号処理回路に、前記データベースを参照して、取得した前記画像の画像特徴量と前記記憶装置に記憶されている前記各画像の画像特徴量とを比較させ、比較結果が一致した場合には、前記データベースに、一致した画像に関係付けられた前記位置関係データを読み出しさせ、前記信号処理回路に、前記位置関係データを利用して、前記撮像装置の視野に前記マークが入るよう、前記撮像装置の位置を変化させるための制御信号を生成して出力させ、前記位置を変化させた後に、前記信号処理回路に、前記撮像装置を用いて再度撮影された画像から前記マークの像を検出させる。 In an exemplary embodiment, the method of the present disclosure is a method performed using a mark detection system that detects a mark using an image pickup apparatus, and the mark detection system partially covers an article to which the mark is attached. An image pickup device having a field that can be photographed and a storage device that stores a database acquired by a mark position learning operation. The database captures different parts of the article in a plurality of times by the image pickup device. Among the plurality of images obtained in the above, for a plurality of images that do not include the image of the mark, at least one image feature amount of each image and the relationship between the position represented by each image and the position of the mark are determined. It is provided with a storage device and a signal processing device that associate the positional relationship data to be shown. It is determined whether or not the image acquired from the image pickup apparatus contains the image of the mark, and when the image acquired from the image pickup apparatus does not include the image of the mark, the signal processing circuit is provided with the database. With reference, the acquired image feature amount of the image is compared with the image feature amount of each image stored in the storage device, and if the comparison results match, the matching image is displayed in the database. Control for reading out the associated positional relationship data and changing the position of the imaging device so that the mark is placed in the field of view of the imaging device by using the positional relationship data in the signal processing circuit. After generating and outputting a signal and changing the position, the signal processing circuit is made to detect the image of the mark from the image taken again by the imaging device.
本開示の実施形態によれば、短時間でマークの検索が可能なマーク検出システム、信号処理回路、コンピュータプログラムおよび方法が提供される。 According to the embodiments of the present disclosure, a mark detection system, a signal processing circuit, a computer program and a method capable of searching for a mark in a short time are provided.
以下、添付の図面を参照しながら、例示的な実施形態にかかるマーク検出システムの実施形態を説明する。本明細書では、必要以上に詳細な説明は省略する場合がある。たとえば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。なお、本発明者は、当業者が本開示を十分に理解するために添付図面および以下の説明を提供するのであって、これらによって特許請求の範囲に記載の主題を限定することを意図しない。以下の説明においては、同一または類似する構成要素には、同一の参照符号を付している。 Hereinafter, embodiments of the mark detection system according to the exemplary embodiment will be described with reference to the accompanying drawings. In the present specification, an unnecessarily detailed description may be omitted. For example, detailed explanations of already well-known matters and duplicate explanations for substantially the same configuration may be omitted. This is to avoid unnecessary redundancy of the following description and to facilitate the understanding of those skilled in the art. It should be noted that the inventor of the present invention provides the accompanying drawings and the following description in order for those skilled in the art to fully understand the present disclosure, and intends not to limit the subject matter described in the claims by these. In the following description, the same or similar components are designated by the same reference numerals.
<用語> 「無人搬送車」(AGV)とは、本体に人手または自動で荷物を積み込み、指示された場所まで自動走行し、人手または自動で荷卸しをする無軌道車両を意味する。「無人搬送車」は、無人牽引車および無人フォークリフトを含む。「無人搬送車」は、物品が載置される載置台を有している。載置台は、天板、アームなどの、物品を載置可能な物を広く含み得る。 <Termin> An "automated guided vehicle" (AGV) means an automated guided vehicle that manually or automatically loads luggage into the main body, automatically travels to a designated place, and manually or automatically unloads. "Automated guided vehicles" include automated guided vehicles and unmanned forklifts. The "automated guided vehicle" has a mounting table on which articles are placed. The mounting table can broadly include an object on which an article can be placed, such as a top plate and an arm.
「物品」(object)とは、ワーク、または、ワークの載置台を含む、物体である。「ワーク」は、製品または部品などの各種の物である。ある例では、物品がワークである場合、当該物品はAGVの天板に載せられて搬送され、人手またはピックアップロボットによって運搬車に積み込まれ、搬出される。 An "object" is a work or an object that includes a platform for the work. A "work" is a variety of objects such as products or parts. In one example, when the article is a workpiece, the article is placed on the top plate of the AGV and transported, loaded onto the carrier by a manual or pickup robot, and carried out.
「マーク」とは、カメラなどの撮像装置によって取得可能な画像に基づいて、他から識別することが可能なしるしである。「マーク」は、文字、図形、記号若しくは色彩、またはこれらの結合を含み得る。特定のパターンを有する線図、模様、立体的な形状も、「マーク」に含まれる。位置決めのために利用されるマークを「アライメントマーク」と呼ぶ。位置決めを想定して設けられていなかった特定の形状等の「マーク」が位置決めに利用された場合、当該「マーク」は「アライメントマーク」である。本開示では「マーク」を位置決めのために利用する例を説明する。その場合、「マーク」は「ア
ライメントマーク」と同義である。 The "mark" is a mark that can be identified from others based on an image that can be acquired by an imaging device such as a camera. A "mark" may include letters, graphics, symbols or colors, or a combination thereof. Line diagrams, patterns, and three-dimensional shapes with specific patterns are also included in the "mark". The mark used for positioning is called an "alignment mark". When a "mark" such as a specific shape that is not provided assuming positioning is used for positioning, the "mark" is an "alignment mark". In the present disclosure, an example in which the "mark" is used for positioning will be described. In that case, "mark" is synonymous with "alignment mark".
以下、本開示にかかる例示的なマーク検出システムを説明する。マーク検出システムは、撮像装置を用いて予め定められたマークを検出するために利用される。特に、本実施形態にかかるマーク検出システムは、撮像装置の視野内にマークが存在しない場合にマークの位置に素早く撮像装置を移動させることが可能な処理を行う。 Hereinafter, an exemplary mark detection system according to the present disclosure will be described. The mark detection system is used to detect a predetermined mark using an imaging device. In particular, the mark detection system according to the present embodiment performs a process capable of quickly moving the image pickup device to the position of the mark when the mark does not exist in the field of view of the image pickup device.
図1は、本開示のマーク検出システム1000を模式的に示している。本開示のマーク検出システム1000は、非限定的で例示的な実施形態において、多関節ロボット100と、コントローラ200と、撮像装置300とを有している。マーク検出システム1000は、ワークが載置される載置台に付与されたマーク、または、撮像装置の視野に全体が収まらない大きさを有するワークそのものに付与されたマークを検出する。載置台の一例はAGVの天板であるが、他の例は移動可能な台、固定された台である。
FIG. 1 schematically shows the
例示的な実施形態では、AGV10が天板12にワークWを載せて搬送し、所定の位置で停止する。マークMは、ワークWの載置台に予め付与されている。マーク検出システム1000は、撮像装置300を用いてマークMを検出する。マークMを検出すると、マーク検出システム1000はマークMの位置および向きに基づいて、ワークの位置決め、すなわちワークの位置および/または向きの決定を行う。位置決めの後、マーク検出システム1000は多関節ロボット100を用いてワークWをピックアップし、後の工程に送る。撮像装置300を用いてマークMを検出する処理の具体的な内容は後に詳細に説明する。
In an exemplary embodiment, the
図1に示す多関節ロボット100およびコントローラ200は床に固定されているが、このような設置方法は一例である。他の例は、多関節ロボット100およびコントローラ200が小型化され、AGV10とは異なる他のAGV上に設置されてもよい。
The articulated
さらに他の例は、ワークをAGV10で搬送するのではなく、作業者が手押しする台車で搬送してもよい。作業者が台車を手押しする場合には台車の位置は常に同じ位置に停止するとは限られず、むしろ毎回異なり得る。そのような場合でも、後述する本開示にかかるマーク検出システムを用いれば短時間でマークを検出し、ワークの位置および/または向きの決定、ワークのピックアップが可能になる。 In still another example, the work may be transported by a trolley pushed by an operator instead of being transported by the AGV10. When the operator pushes the dolly by hand, the position of the dolly does not always stop at the same position, but rather may be different each time. Even in such a case, if the mark detection system according to the present disclosure described later is used, the mark can be detected in a short time, the position and / or orientation of the work can be determined, and the work can be picked up.
以下、多関節ロボット100、コントローラ200および撮像装置300を説明する。
Hereinafter, the articulated
多関節ロボット100は、一般に、ロボットアームまたはマニピュレータとも呼ばれる。多関節ロボット100は、関節110A〜110Cと、アーム120Aおよび120Bと、エンドエフェクタ130とを有している。関節110A〜110Cはそれぞれモータを有しており、回転軸の周りにアーム120Aおよび/または120Bを回転させる。エンドエフェクタ130は、多関節ロボット100が作業を行えるようにアーム120Bに取り付けて用いられる機器である。図1に示す例示的なエンドエフェクタ130は2指グリッパ140を有している。2指グリッパ140は2本の指の間隔を調整してワークWを挟み、把持することができる。
The articulated
コントローラ200の例は、コンピュータである。本実施形態では、コントローラ200は、撮像装置300に撮影を行わせ、撮影によって得られた画像信号を取得し、マークを検出する処理を行う。マークを検出すると、コントローラ200は所定の位置決め処理を行ってワークWの位置および/または向きを決定する。その後コントローラ200は、決定した位置および/または向きに基づいて多関節ロボット100および2指グリッパ140を制御して、ワークWをピックアップさせる。なお、コントローラ200が上述の全ての処理を行うことは必須ではない。例えば、多関節ロボット100の制御と、マークを検出する処理とを別個のコンピュータに行わせてもよい。
An example of the
撮像装置300は、撮影した被写体の画像の画像信号を出力する装置である。本実施形態では、画像信号は有線により、コントローラ200に送られる。撮像装置300の典型例は、多数のフォトダイオードが行列状に配列されたCMOSイメージセンサまたはCCDイメージセンサなどのエリアセンサを備える撮像装置である。撮像装置300は、被写体のカラー画像またはモノクローム画像のデータを生成する。撮像装置300として、例えば外観検査用の各種カメラを使用することができる。
The
いま、図1に示すように、ワークWが天板12よりも小さいとする。撮像装置300は、ワークWを部分的に撮影可能な、ワークWよりも相対的に狭い視野を有している。ここでいう「視野」とは、例えば多関節ロボット100が予め定められた姿勢をとり、かつ撮像装置300が被写体に正対して、マークMを撮影するためにマークMの形状等の特徴を取得可能な距離に位置したときの視野をいう。
Now, as shown in FIG. 1, it is assumed that the work W is smaller than the
撮像装置300の視野が狭い理由は以下のとおりである。マークを検出し、ワークの位置および/または向きを決定するために用いられる撮像装置300は、他の工程での高精度な作業に用いられることを想定しており、高倍率のレンズを採用している。そのため、必然的に視野が狭くなる。視野を広げるためには、マーク検出および位置決め用の撮像装置と、高精度作業用の撮像装置を少なくとも2台設け、前者には低倍率のレンズを採用することが考えられる。または、倍率を任意に変更可能なレンズを採用し、マーク検出時には低倍率にすることが考えられる。しかしながら、2台構成または可変倍率のレンズの採用は複雑になり、かつコストの上昇に繋がる。さらに、装置またはレンズの重量が増加するため、エンドエフェクタに搭載可能な重量の制約等によって搭載がそもそも許容されない場合もあり得る。
The reason why the field of view of the
図2は、多関節ロボット100、コントローラ200および撮像装置300の接続関係と、コントローラ200のハードウェア構成例とを示している。コントローラ200は、信号処理装置であるCPU210と、記憶装置であるメモリ220とを有している。
FIG. 2 shows the connection relationship between the articulated
コントローラ200は、図示されない1または複数の通信端子を介して多関節ロボット100および撮像装置300とそれぞれ有線で接続されている。コントローラ200と多関節ロボット100は、当該通信端子を介して信号を送受信する。またコントローラ200と撮像装置300とは、当該通信端子を介して撮影指示信号および撮影によって取得された画像信号を送受信する。なお、通信は無線で行われてもよい。
The
コントローラ200から多関節ロボット100に送信される信号には、多関節ロボット100の1または複数の関節の指定、指定された関節ごとの回転角度の指定、回転速度の指定等が含まれ得る。多関節ロボット100からコントローラ200に送信される信号には、送信された信号の受信確認、動作の完了通知が含まれ得る。
The signal transmitted from the
メモリ220にはコンピュータプログラムが格納されている。コンピュータプログラムは、CPU210が実行する命令の集合である。CPU210がコントローラ200の当該コンピュータプログラムを実行することにより、CPU210は、撮像装置300を用いた撮影処理、および、取得した画像を利用したマークMの検出処理を実行する。撮像装置300から取得した画像にマークMの像が含まれていると判定したときは、CPU210は、検出したマークMを利用した所定の位置決め処理を実行する。位置決め処理の結果に基づき、CPU210は、多関節ロボット100の各関節の各モータの回転、およびワークWのピックアップを行うことができる。
A computer program is stored in the
本実施形態では、マーク検出システム1000の動作はコントローラ200のCPU210によって制御されるが、全ての説明にCPU210を登場させると記載が煩雑になる。そのため、以下では、単に「撮像装置300が所定の領域を撮影する。」などと記載する場合がある。この表現によって実行される動作は、実際にはCPU210が多関節ロボット100の各関節を回転させて撮像装置300の視野が所定の領域に入るように制御すること、CPU210が撮影指示信号(制御信号)を撮像装置300に送信して、撮像装置300に視野内の画像信号を取得させること、を少なくとも含む。さらに、CPU210が撮像装置300から画像信号を取得することも含み得る。
In the present embodiment, the operation of the
メモリ220は、後述する学習を行った後の種々のデータを関係付けたデータベースDBを記憶している。データベースDBでは、学習のために用意された、マークの像を含まない複数の画像について、各画像の少なくとも1つの画像特徴量、および、各画像が表す位置とマークの位置との関係を示す位置関係データ、が関係付けられている。データベースDBのより具体的な内容は後述する。
The
図3は、本開示にかかるマークM、M1〜M3の形状の一例を示している。本例では4個のマークがAGV10の天板12の各辺中央付近に付与されている。各マークは互いに異なるパターンを有しており、検出したパターンの位置および向きにより、検出した位置が決定され得る。図3では、比較的大きなマークを記載しているが、これは記載の便宜のためである。マークはより小さくてもよい。またマークの数、位置、形状(パターン)等は任意である。当業者は、必要とされる範囲で、適宜、数を増減させ、位置およびパターンを変更することができる。
FIG. 3 shows an example of the shapes of the marks M and M1 to M3 according to the present disclosure. In this example, four marks are given near the center of each side of the
記憶装置であるメモリ220は、上述の、マークの数、位置、形状等のデータを保持している。これらのデータを用いることにより、CPU210は、撮像装置300から取得した画像からマークの像を識別することができる。本明細書では、このような、撮影された画像からマークの像を識別するために利用されるデータを、マークの像に関する「特徴データ」と呼ぶ。CPU210は、特徴データを参照して、撮影された画像にマークの像が含まれているか否かを判定する。具体的には、CPU210は、メモリ220内の特徴データを参照して、撮影された画像内に特徴データに一致する特徴を有する画像オブジェクトが存在するか否かを判定する。特徴データに一致する特徴を有する画像オブジェクトが存在する場合には、CPU210は、画像にマークの像が含まれていると判定する。そのような画像オブジェクトが存在しない場合には、CPU210は、画像にマークの像が含まれていないと判定する。特徴データを予め用意しておけば、CPU210は任意のマークを検出することができる。
The
以下、本開示に係るマーク検出システム1000が行うマークの検出動作を説明する。マーク検出システム1000が行うマークの検出動作は、マーク位置学習動作、およびマーク検出動作を含む。マーク位置学習動作は、最初のマーク検出動作に先立って行われる。
Hereinafter, the mark detection operation performed by the
マーク位置学習動作とは、学習用に撮影された複数の画像を利用してマーク検出システム1000が行う学習動作である。学習の対象は、マークが含まれていない画像の画像特徴量と、各画像が表す位置からマークの中心位置までの位置ずれ量(以下「ずれ量」と記述する。)との関係である。本実施形態では、撮像装置300によって、AGV10の天板12の少なくとも一部を視野に入れて複数回に分けて撮影する。その結果得られた複数の画像のうちの、マークの像を含まない複数の画像について、各画像の少なくとも1つの画像特徴量、例えば画像内のエッジに関する画像特徴量、および、マークの像を含まない各画像が表す位置(例えば各画像撮影時の視野の中心位置)からマークの中心位置までのずれ量との関係を学習する。学習結果である、マークが含まれていない画像の画像特徴量およびずれ量を示す位置関係データは関連付けられてデータベースDBとして記憶され、次のマーク検出動作時に利用される。
The mark position learning operation is a learning operation performed by the
マーク検出動作とは、マーク検出システム1000のCPU210が、撮像装置300に撮影させ、撮像装置300から取得した画像を利用して行う、マークを検出する動作である。取得し
た画像がマークの像を含む場合は、そのまま画像からマークを検出すればよい。一方、取得した画像がマークの像を含まない場合、マーク検出システム1000のCPU210は、データベースを参照して、取得した画像が有する画像特徴量と、データベースDBに格納された、学習した画像特徴量とを比較する。比較結果が所定の条件に合致した場合、CPU210は2つの画像特徴量は一致する、と判定する。所定の条件の一例は、両者の一致する程度の大きさが予め定められた閾値未満であるか否か、である。例えば、画像特徴量として、画像内のエッジの位置および範囲を利用する場合を考える。取得した画像が有する画像特徴量と、データベースDBに格納された画像特徴量との差を求め、さらに当該差の二乗和を求める。二乗和の大きさが閾値未満であれば、2つの画像特徴量の差は小さいと言える。すなわち、取得した画像は、学習に用いた画像と同じ領域または重複する領域を含むと言える。画像特徴量は、取得した画像全体から求めてもよいし、取得した画像の一部である部分画像から求めてもよい。 The mark detection operation is an operation in which the
そこでCPU210はデータベースDBをさらに参照して、学習に用いた画像に関連付けられた、マークの中心位置までのずれ量を示す位置関係データを読み出す。当該ずれ量だけ撮像装置300を移動させると、撮像装置300の視野にはマークが入る。そこでCPU210は、読み出した位置関係データを利用して、撮像装置300の視野にマークが入るよう、撮像装置300の位置を変化させる制御信号を生成して出力する。撮像装置300の位置を変化させた後、CPU210は、撮像装置300を用いて再度撮影された画像からマークの像を検出する。これにより、取得した画像がマークの像を含まない場合であっても、CPU210は撮像装置300をマークの位置まで移動させ、マークを検出することができる。撮影範囲を変えながら全ての領域を撮影してマークを検出する方法(総当たりによる検出方法)を採用する必要がないため、マークの位置を迅速に検出することが可能である。
Therefore, the
以下、マーク位置学習動作およびマーク検出動作をそれぞれ説明する。 The mark position learning operation and the mark detection operation will be described below.
<マーク位置学習動作> 図4は、30個の領域に分けた天板12を示している。説明の便宜上、各領域は撮像装置300の視野の大きさに等しいとする。図4では、左上の領域から右方向に順にA1,A2,・・・、A6という番号が振られ、次の行では右方向に順にB1,B2,・・・という番号が振られる。同様の規則で5段目(E列)の最後の領域E6まで番号を付与する。
<Mark position learning operation> FIG. 4 shows the
撮像装置300は、総当たりによる検出方法で、各領域を撮影する。最上段のA行に注目する。領域A4にはマークMが付与されている。撮像装置300による撮影の結果、領域A4を撮影した画像にはマークの像が含まれ、領域A1〜A3、A5およびA6を撮影した画像にはマークの像が含まれない。なお、A行の領域を撮影した画像には、天板12の像に加え、天板12よりも下方にある床等の像も含まれ得る。以下、領域A3およびA4に着目して説明する。
The
図5は、撮像装置300によって撮影された領域A3およびA4の画像GA3およびGA4を示している。図5では、説明の便宜のため画像GA3およびGA4は隣接して配置されている。画像GA4には、マークMの像であるマークの像GMが存在する。一方、画像GA3にはマークの像GMは含まれないが、学習時には隣接する画像GA4にはマークの像GMが存在することは分かっている。そこで本実施形態では、画像GA3が表す位置とマークMの位置との関係を示す位置関係データを取得する。
FIG. 5 shows the images GA3 and GA4 of the regions A3 and A4 captured by the
画像GA3が表す位置とマークMの位置との関係は、画像GA3内の所与の点(例:中心点)を基準とすれば一意に定まる。 The relationship between the position represented by the image GA3 and the position of the mark M is uniquely determined with reference to a given point (example: center point) in the image GA3.
図6は、後述するパターンマッチングのために画像GA3を分割した複数の部分画像の例を示している。図6の例では、画像GA3は各々が同一の形状および面積を有する16個の部分画像に分割されている。 FIG. 6 shows an example of a plurality of partial images in which the image GA3 is divided for pattern matching described later. In the example of FIG. 6, the image GA3 is divided into 16 partial images, each having the same shape and area.
図7は、画像GA3が表す位置とマークMの位置との関係を説明するための図である。説明の便宜上、画像GA3およびマークの像GMの位置を利用して説明する。画像GA3の中心点Cの位置は撮像装置300の視野の中心の位置に対応する。本実施形態では、画像GA3を取得した位置から撮像装置300をどれだけ動かせば、マークMの中心が視野の中心に一致するかを示すずれ量(Δx,Δy)を、コントローラ200のCPU210が予め取得し、メモリ220に記憶しておく。
FIG. 7 is a diagram for explaining the relationship between the position represented by the image GA3 and the position of the mark M. For convenience of explanation, the positions of the image GA3 and the image GM of the mark will be used for explanation. The position of the center point C of the image GA3 corresponds to the position of the center of the field of view of the
図7には、画像GA3撮影時の視野の中心点CからマークMの中心点Oまでの座標軸ごとのずれ量ΔxおよびΔyが示されている。例示したΔxおよびΔyは、それぞれΔx=+30mm、Δy=−7mmである。X軸の符号「+」は図面右方向を示し、Y軸の符号「−」は図面上方を示している。この値はマーク検出システム1000の操作者が測定して入力してもよいし、CPU210が演算して求めてもよい。なお本実施形態では、画像GA3を構成する全ての部分画像1−1,1−2等に、同じずれ量(ΔxおよびΔy)を関係付けている。
FIG. 7 shows the deviation amounts Δx and Δy for each coordinate axis from the center point C of the visual field when the image GA3 is taken to the center point O of the mark M. The illustrated Δx and Δy are Δx = + 30 mm and Δy = −7 mm, respectively. The X-axis symbol "+" indicates the right direction of the drawing, and the Y-axis symbol "-" indicates the upper part of the drawing. This value may be measured and input by the operator of the
このようにして、マークの像GMを含まない画像、例えば図4に示す領域A1,A2,A3等を撮影した画像、ごとに、撮影時の視野の中心位置からマークMの中心位置までのずれ量(Δx,Δy)を取得することができる。マークMが複数存在する場合には、各マークMまでのずれ量Δxyを算出し、その中で最も小さいずれ量を、画像が表す位置とマークの位置との関係を示すデータとして採用し得る。 In this way, the deviation from the center position of the field of view at the time of shooting to the center position of the mark M for each image that does not include the image GM of the mark, for example, the images obtained by capturing the regions A1, A2, A3, etc. shown in FIG. The quantity (Δx, Δy) can be obtained. When a plurality of marks M exist, the amount of deviation Δxy up to each mark M is calculated, and the smallest of them can be adopted as data indicating the relationship between the position represented by the image and the position of the mark.
次に、上述のずれ量に関係付けられる画像特徴量を、図7の部分画像3−1を例示して説明する。 Next, the image feature amount related to the above-mentioned deviation amount will be described by exemplifying the partial image 3-1 of FIG.
図8は、部分画像3−1から画像特徴量を抽出する処理を示している。コントローラ200のCPU210は、部分画像3−1に含まれるエッジを抽出する処理を行い、抽出されたエッジ画像3−1−Eのデータを部分画像3−1の画像特徴量として採用する。CPU210は、当該画像特徴量と、上述した画像が表す位置とマークの位置との関係(ずれ量)を示すデータとを関係付けてメモリ220にデータベースDBとして格納する。本実施形態では、部分画像内のエッジを画像特徴量として採用したが、これは一例に過ぎない。各部分画像に固有の任意の特徴を画像特徴量として採用することができる。
FIG. 8 shows a process of extracting an image feature amount from a partial image 3-1. The
図9は、ずれ量を示すデータと画像特徴量(エッジ画像ファイル)とが対応付けられたデータベースDBの一例を示している。CPU210は、図4に示す領域を撮影した全ての画像(ただしマークの像GMを含む画像を除く。)についてデータベースDBを作成し、メモリ220に格納する。なお、画像毎のデータベースDBを別個のファイルとして設けるのか、各画像のデータベースDBをまとめて1つのファイルに含めるかは任意である。
FIG. 9 shows an example of a database DB in which data indicating a deviation amount and an image feature amount (edge image file) are associated with each other. The
以上の手順によって各画像のデータベースDBを作成することにより、マーク位置学習動作は終了する。 By creating the database DB of each image by the above procedure, the mark position learning operation is completed.
<マーク検出動作> マーク位置学習動作が終了すると、マーク検出システム1000を用いたマークの検出が可能になる。この時点で、図4に示す各領域A1〜E6を撮影して得られた各画像からは画像特徴量が抽出されてデータベースDBに格納されている。
<Mark detection operation> When the mark position learning operation is completed, the mark can be detected using the
マーク検出動作は、図1に示すようにAGV10がワークWを搬送し、マーク検出システム1000の前の所定の位置で停止した後、実行される。撮像装置300はワークWが載置された天板12を撮影する。
The mark detection operation is executed after the
いま、図10に示すように、撮像装置300は最初に領域P1を撮影したとする。撮像装置300が最初に視野に捉えた領域P1は天板12の中心位置を含むとは限らない。
Now, as shown in FIG. 10, it is assumed that the
コントローラ200のCPU210はデータベースDBを参照して、領域P1に含まれる画像特徴量が、学習済みの領域のうちのどの領域の画像特徴量に含まれているかを判定する。具体的にはCPU210は、たとえば領域A1(図4)から順に、最後の領域E6(図4)まで下記の処理を繰り返す。
The
まずCPU210は、領域A1(図4)に含まれる各部分領域の画像特徴量と、領域P1内に設定された複数の部分領域の各々の画像特徴量とを比較する。図11は、学習に用いられた領域A1の画像GA1に含まれる部分領域3−3の画像特徴量と、領域P1の画像GP1内に設定された複数の部分領域252の各々の画像特徴量とを比較する処理の概念を示している。複数の部分領域252は、例えば数画素ずつずらしながら、かつ、他の部分領域と重複しながら設定され得る。本実施形態では、部分領域3−3のサイズと、複数の部分領域252の各々のサイズとは同じである。この動作は、公知のテンプレートマッチングを利用して実行可能である。
First, the
例えばCPU210は、部分領域3−3の画像特徴量と、複数の部分領域252の各々の画像特徴量の2乗誤差の和を求める。得られた2乗誤差の和の大きさは、各部分領域252内の画像がどれだけ部分領域3−3内の画像と近いかを評価するパラメータである。2乗誤差の和が小さいほど、2つの部分領域内の画像は似ていることを意味する。
For example, the
しかしながら図11に示す2枚の画像GA1およびGP1は一見して一致していないことからも理解されるように、画像GA1内の各部分領域が、画像GP1内で一致する程度は低い。CPU210は、2つの画像間で、2乗誤差の和の大きさが予め定められた値T1以下である部分領域の組の数が、同じく予め定められた値T2以上存在しない、と判定する。このような場合、本明細書では、2つの画像の比較結果は一致しない、と表現することがある。逆に、2つの画像間で、2乗誤差の和の大きさが予め定められた値T1以下である部分領域の組の数が、同じく予め定められた値T2以上存在した場合を、2つの画像の比較結果が一致した、と表現する場合がある。
However, as can be understood from the fact that the two images GA1 and GP1 shown in FIG. 11 do not match at first glance, the degree to which each partial region in the image GA1 coincides in the image GP1 is low. The
CPU210は、学習に用いられた領域A2〜E6の各画像の各部分領域と、撮影された画像GP1内の各部分領域との2乗誤差の和の大きさを算出する。以下では、2つの画像の比較結果が一致する例として、学習に用いられた域A3(図4)の画像と画像GP1とに関する処理を例示する。
The
図12は、学習に用いられた領域A3の画像GA3と、撮像装置300が撮影した領域P1の画像GP1とを示している。両者は撮影された環境が異なるため、得られた画像も相違している。図13は、画像GA3に含まれる部分領域2−3の画像特徴量と、画像GP1内に設定された複数の部分領域252の各々の画像特徴量とを比較する処理の概念を示している。上述の例と同様、CPU210は、画像GP1内に設定された部分領域ごとに、画像特徴量間の2乗誤差の和を算出する。
FIG. 12 shows the image GA3 of the region A3 used for learning and the image GP1 of the region P1 taken by the
図14は、学習に用いられた領域A3の画像GA3の各部分領域と、2乗誤差の和が最も小さい関係を有する、領域P1の画像GP1の部分領域との対応関係を矢印によって示している。CPU210は、2つの画像間で、2乗誤差の和の大きさが予め定められた値T1以下である部分領域の組の数が、同じく予め定められた値T2以上存在した場合には、領域A3の画像GA3と領域P1の画像GP1とが一致すると判定する。閾値である値T1およびT2は、画像GA3およびGP1のサイズ、設定する部分領域の数等によって大きく変わり得るため、具体例の列挙は省略する。当業者であれば、条件に応じて適宜設定し得る。
FIG. 14 shows by arrows the correspondence between each partial region of the image GA3 of the region A3 used for learning and the partial region of the image GP1 of the region P1 having the smallest sum of squared errors. .. When the number of sets of subregions in which the magnitude of the sum of the square errors is equal to or less than the predetermined value T1 between the two images exists in the same predetermined value T2 or more, the
以上の処理により、2つの画像GA3とGP1との比較結果が一致した場合、CPU210はデータベースDBを参照して、位置ずれΔxおよびΔyを取得する。そしてCPU210は撮像装置300を位置ずれΔxおよびΔyだけ移動させる。これにより、マークを含まない領域を撮影した画像からでも、迅速かつ確実にマークの位置に撮像装置300を移動させることができる。
When the comparison results of the two images GA3 and GP1 match by the above processing, the
なお、図12では、画像GA3と画像GP1とが概ね一致している例を挙げたが、実際には画像GP1は、画像GA3と
は一致しないことが一般的であると考えられる。すなわち、画像GA3と画像GP1との間にはずれがあると考えられる。そのような場合を想定して、本開示では後に第1の変形例を設けて説明している。 Although FIG. 12 gives an example in which the image GA3 and the image GP1 generally match, it is considered that the image GP1 generally does not match the image GA3. That is, it is considered that there is a gap between the image GA3 and the image GP1. Assuming such a case, the present disclosure will be described later by providing a first modification.
上述した説明を、一連の処理の流れで説明する。 The above description will be described in the flow of a series of processes.
図15は、CPU210によって実行される処理の手順を示すフローチャートである。
FIG. 15 is a flowchart showing a procedure of processing executed by the
ステップS1において、CPU210は撮像装置300を制御して撮像装置300に天板12(載置台)の一部を撮影させる。例えばCPU210は撮像装置300に撮影指示信号(制御信号)を送信する。撮像装置300は制御信号に従い、天板12の一部を撮影し、取得した画像の画像信号をコントローラ200に送信する。
In step S1, the
ステップS2において、CPU210は撮像装置300から画像信号を受信し、撮影された画像を取得する。
In step S2, the
画像にマークの像が含まれていない場合、続くステップS3が行われる。 If the image does not contain an image of the mark, the subsequent step S3 is performed.
ステップS3において、CPU210はデータベースDBを参照して、取得した画像の画像特徴量と、メモリ220に記憶されている各画像の画像特徴量とを比較する。続くステップS4は、比較結果が一致した場合の処理である。
In step S3, the
ステップS4において、CPU210は一致した画像に関係付けられた位置関係データをデータベースDBから読み出す。
In step S4, the
ステップS5において、CPU210は読み出したデータを利用して、撮像装置300の視野にマークが入るよう、撮像装置300の位置を変化させるための制御信号を生成し出力する。出力された制御信号により、 ステップS6において、CPU210は撮像装置300の位置を変化させた後に、撮像装置300を制御して撮像装置300に天板12の一部を撮影させる。
In step S5, the
ステップS7において、CPU210は再度撮影された画像を撮像装置300から受信して、画像からマークの像を検出する。
In step S7, the
本実施形態によれば、マーク位置学習動作により、マークMの像を含む画像以外の各画像を表す位置からマークMの中心位置までのずれ量との関係が学習されている。後のマーク検出動作時に入力された画像と同じ画像が学習された画像の中に含まれていることが分かった場合には、その画像に関係付けられた、マークMの中心位置までのずれ量だけ撮像装置300を移動させることにより、マークMをより迅速かつ確実に検出することが可能になる。
According to the present embodiment, the relationship between the position representing each image other than the image including the image of the mark M and the amount of deviation from the center position of the mark M is learned by the mark position learning operation. If it is found that the same image as the image input during the later mark detection operation is included in the learned image, the amount of deviation to the center position of the mark M associated with the image is included. By moving the
次に、上述した実施形態の変形例を説明する。 Next, a modified example of the above-described embodiment will be described.
第1の変形例はずれ量の更新(再学習)である。 The first modification is the update (re-learning) of the deviation amount.
学習に用いた画像と、撮像装置300によって取得した画像との比較結果が一致した場合、データベースDBから取得した位置ずれΔxおよびΔyを利用して撮像装置300を移動させた。位置ずれΔxおよびΔyは、撮像装置300を移動させた後に再度撮影すると、取得された画像内の所定の位置、例えば視野の中心、にマークMが検出される位置として決定されている。よって、例えば撮像装置300の視野の中心にマークMが検出されるはずである。しかしながら、実際には視野の中心にマークMが検出されることは稀である。その理由は、撮像装置300が再取得した画像の範囲が、学習時に用いられた学習データにおける各画像の範囲と一致することが稀だからである。そのため、通常、移動後の撮像装置300の視野の中心と、マークMの中心点Oとは一致しない。
When the comparison result between the image used for learning and the image acquired by the
図16は、移動後の撮像装置300の視野の中心Cと、マークの像GMの中心点Oとが一致しない例を示している。図16では、両者のずれを、それぞれ2つの差分(−δx)および(−δy)で示している。符号は、視野の中心Cから見たとき、中心点Oの位置が、図示されたX軸およびY軸の負の方向に存在していることを意味している。
FIG. 16 shows an example in which the center C of the field of view of the
コントローラ200のCPU210は、両者のずれを相殺するため、差分(−δx)および(−δy)を取得し、取得した差分(−δx)および(−δy)を用いて、当初の位置ずれΔxおよびΔyを更新する。すなわちCPU210は、取得した差分(−δx)および(−δy)を用いて、データベースDBの各画像が表す位置とマークMの位置との関係を示す位置関係データである位置ずれΔxおよびΔyを更新する。
The
図17は、差分(−δx)および(−δy)を用いて位置ずれΔxおよびΔyを更新した後の、新たな位置ずれΔx’およびΔy’を示している。CPU210は、Δx’=Δx+(−δx)、Δy’=Δy+(−δy)の演算によって、当初の位置ずれΔxおよびΔyを更新する。Δx’およびΔy’を利用して撮像装置300を移動させると、撮像装置300の視野の中心と、マークMの中心点Oとが一致する。CPU210は、当初の画像GA3が得られた位置からマークMに移動するための、画像GA3のデータベースDBのずれ量を更新する。
FIG. 17 shows the new misalignments Δx'and Δy'after updating the misalignments Δx and Δy with the differences (−δx) and (−δy). The
図18は、更新された画像GA3用データベースDBの一例を示している。図9に示す更新前の画像GA3用データベースDBと比較すると、ずれ量の各値が更新されていることが理解される。なお画像特徴量の欄の記載は省略した。 FIG. 18 shows an example of the updated database DB for image GA3. Comparing with the database DB for the image GA3 before the update shown in FIG. 9, it is understood that each value of the deviation amount is updated. The description in the column of image feature amount is omitted.
以上の処理によれば、マーク位置学習動作によって得られていたずれ量が、マーク検出動作の結果に応じて更新される。実際の動作環境に追従してデータベースDBを更新することができるため、以後は迅速にマーク検出動作を実行できる。 According to the above processing, the deviation amount obtained by the mark position learning operation is updated according to the result of the mark detection operation. Since the database DB can be updated according to the actual operating environment, the mark detection operation can be executed quickly thereafter.
なお、第1の変形例では、撮像装置300を移動させた後の撮像装置300の視野内には、マークMが存在しているとした。しかしながら、視野内にマークMが存在しない場合もあり得る。CPU210は、比較結果が一致したデータベースDB内の画像に関係付けられた位置関係データにしたがって撮像装置300の位置を変化させた後に、撮像装置300を用いて再度撮影された画像からマークMの像を検出できるか否かを判定する。そしてCPU210は、マークMの像を検出できなかった場合には、予め定められた順序で、撮像装置300の位置を変化させながら画像を取得し、取得した画像にマークMの像が存在するか否かを判定する。例えばCPU210は、その位置から総当たりによる検出方法でマークMを検出する動作を行ってもよい。より具体的には、CPU210は、予め定められた順序で、撮像装置300の位置を変化させながら画像を取得し、取得した画像にマークMの像が存在するか否かを判定する動作を行って、マークMを検出する動作を行ってもよい。通常は、視野には入らなかったが比較的近接した位置にマークMが存在すると考えられる。よって総当たりによる検出方法を採用しても、CPU210は十分迅速にマークMを検出することができる。そしてマークMを検出できた場合、誤ったずれ量を与えたデータを更新してもよい。更新後のデータは、当初のずれ量に、総当たりによる検出動作で移動した方向および距離を加えて生成される。CPU210は、データベースDBに記憶されている当初のずれ量を、生成した新たなずれ量に更新すればよい。
In the first modification, it is assumed that the mark M is present in the field of view of the
一方、2枚の画像を誤って一致したと判定したことにより、各画像用のデータベースDBは正しいにもかかわらず、ずれ量が大きくなりすぎた場合も考えられる。そのため、撮像装置300を移動させた後の視野内にマークMが存在しない場合には、データベースDBの更新は行わず維持してもよい。
On the other hand, it is conceivable that the amount of deviation becomes too large even though the database DB for each image is correct because it is determined that the two images are erroneously matched. Therefore, if the mark M does not exist in the field of view after the
次に、第2の変形例を説明する。 Next, a second modification will be described.
第2の変形例は、各画像の優先度を示す優先度データの導入である。優先度データはマークMの像を含まない複数の画像について、各画像の画像特徴量に関連付けてデータベースDBに格納される追加的なパラメータである。優先度は、2枚の画像を比較する際に利用される画像特徴量が、両者の一致を判定する上で有用である程度を示す。換言すると、優先度は、データベースDB上で関係付けられた画像特徴量を用いて画像特徴量の比較を行った場合の比較結果の一致のしやすさの程度を示している。以下、図9に示した画像GA3を例に挙げながら、優先度およびそのデータベースDBを説明する。 The second modification is the introduction of priority data indicating the priority of each image. The priority data is an additional parameter stored in the database DB in association with the image feature amount of each image for a plurality of images that do not include the image of the mark M. The priority indicates to some extent that the image feature amount used when comparing two images is useful in determining the agreement between the two images. In other words, the priority indicates the degree of ease of matching of the comparison results when the image feature amounts are compared using the image feature amounts associated on the database DB. Hereinafter, the priority and the database DB thereof will be described with reference to the image GA3 shown in FIG. 9 as an example.
図19は、優先度が導入された画像GA3用データベースDBの例を示している。当該データベースDBには、部分画像ごとの画像特徴量、各画像が表す位置とマークの位置との関係を示すずれ量(位置関係データ)に加え、各部分画像の「優先度」を示す優先度データが関係付けられている。 FIG. 19 shows an example of a database DB for image GA3 in which priority is introduced. In the database DB, in addition to the image feature amount for each partial image, the deviation amount (positional relationship data) indicating the relationship between the position represented by each image and the mark position, the priority indicating the "priority" of each partial image. The data is related.
図7を参照しながら、優先度の意義を説明する。例えば部分画像1−1〜1−4はいずれも全体的に色が濃く、本実施形態の画像特徴量であるエッジが一見して少ない。そのため、これらの部分画像の画像特徴量は、マーク検出動作時に撮像装置300から取得された他の画像の画像特徴量と一致するかどうかを判定する際には有用とは言えないと考えられる。一方、例えば部分画像3−1は、形状および位置に関して特徴的なエッジが複数存在するため、当該部分画像と他の画像の画像特徴量と一致するかどうかを判定する際には有用であると考えられる。優先度は、このような事情を反映したパラメータである。
The significance of the priority will be described with reference to FIG. 7. For example, the partial images 1-1 to 1-4 are all dark in color as a whole, and the edges, which are the image feature amounts of the present embodiment, are seemingly small. Therefore, it is considered that the image feature amounts of these partial images are not useful in determining whether or not they match the image feature amounts of other images acquired from the
優先度を設定すると、画像特徴量が一致すると判定された部分画像が1枚または複数の画像に亘って複数存在すると判定された場合に、どの部分画像のずれ量を利用して撮像装置300を移動させるかを決定する際に特に有用である。具体的には、CPU210は、取得した画像の部分領域の画像特徴量と、メモリ220に記憶されている各画像の部分領域の画像特徴量とを比較する。CPU210は、メモリ220に記憶されている複数の画像について、比較結果が一致したと判定した場合には、当該複数の画像の各々の優先度の大きさに応じて、特定の一枚の画像に関係付けられた位置関係データを読み出す。より具体的には、最も高い優先度が設定された特定の一枚の画像に関係付けられた位置関係データを読み出す。CPU210は、読み出したずれ量を利用して、撮像装置300を移動させる。これにより、より確実にマークが存在する位置に撮像装置300を移動させることができる。なお、上述の処理の説明では、取得した画像の部分領域の画像特徴量を例示したが、取得した画像全体から画像特徴量を求めてもよい。
When the priority is set, when it is determined that there are a plurality of partial images determined to match the image feature amounts over one or a plurality of images, the
優先度は、固定されていてもよいし、更新されてもよい。更新する例を以下に説明する。 The priority may be fixed or updated. An example of updating will be described below.
例えば、CPU210は、部分画像3−1の画像特徴量に一致する画像特徴量が他の画像内に存在すると判定すると、部分画像3−1に関連付けられたずれ量に従って撮像装置300を移動させ位置を変化させる。位置を変化させた後、撮像装置300から新たな画像を取得したCPU210は、当該画像内に実際にマークの像GMが存在するか否かを判定する。新たな画像からマークMの像を検出した場合、部分画像3−1に関連付けられたずれ量は正しかったと言うことができる。つまり、部分画像3−1の画像特徴量は一致判定において有用であったと言うことができる。そこで、新たな画像からマークMの像を検出した場合、CPU210は、部分画像3−1に関連付けられた優先度をより高くなるよう更新する。例えば図19の例では、優先度を1増加させてもよい。実際の動作環境に追従して優先度を更新できるため、CPU210は迅速にマーク検出動作を実行できる。
For example, when the
優先度の初期値は、マーク検出システム1000のユーザが適宜設定してもよいし、最初は一律の値、例えば優先度1、を与えておいてもよい。
The initial value of the priority may be appropriately set by the user of the
上述の説明では部分画像単位で優先度を説明したが、1枚の画像単位で優先度を設定してもよい。例えば図4において、天板12の縁を含まない内部に識別に有用な画像特徴量が無いと言える場合には、画像全体として優先度を設定すれば十分であると考えられる。
In the above description, the priority is described in units of partial images, but the priority may be set in units of one image. For example, in FIG. 4, when it can be said that there is no image feature amount useful for identification inside the
これまで説明した位置ずれのずれ量は、図7に示すようにX軸方向およびY軸方向の差分として表現したが、表現方法は一例である。他の例として、角度と距離を用いる極座標系を採用してもよい。 The amount of misalignment described so far is expressed as a difference between the X-axis direction and the Y-axis direction as shown in FIG. 7, but the expression method is an example. As another example, a polar coordinate system using angles and distances may be adopted.
なお、図1の例では、撮像装置300は、本実施形
態ではエンドエフェクタ130に取り付けられていたが、当該構成は一例である。撮像装置300は他の位置に設けられてもよい。例えば、撮像装置300はAGV10(第1搬送車)とは異なる他のAGV(第2搬送車)上に搭載され得る。マークMが付与された物品が、ワークWを搬送する第1搬送車の載置台すなわち天板である場合、第2搬送車上の撮像装置が第1搬送車の天板を撮影し、マークを検出することができる。さらに、当該第2搬送車が、撮像装置に加えて多関節ロボットを備えていてもよい。つまり当該第2搬送車が、図1に示すような、撮像装置300を有する多関節ロボット100を備えていてもよい。このような第2搬送車を用いると、コントローラ200のCPU210はマークの像を検出し、その検出結果に従って、多関節ロボットを動作させることができる。これにより、任意の位置において、コントローラ200はマークの像の検出結果に従って多関節ロボット100を動作させ、ワークWのピックアップおよび移動等を行うことができる。 In the example of FIG. 1, the
マーク検出システム1000で行われる処理は、上述のとおり、CPU210がメモリ220に格納されたコンピュータプログラムを実行することによって実現される。そのようなコンピュータプログラムは、CPU210に図15に示す処理の手順(方法)を実行させるための命令の集合であり、CD−ROM等の記録媒体に記録されて製品として市場に流通され、または、インターネット等の電気通信回線を通じて伝送され得る。さらに、CPU210およびコンピュータプログラムを格納したメモリ220は、1つの半導体回路にコンピュータプログラムを組み込んだDSP(Digital Signal Processor)等の信号処理回路として実現されてもよい。つまり、そのようなDSPは図2のコントローラ200として機能し得る。
As described above, the processing performed by the
本開示のマーク検出システムは、工場、倉庫、建設現場、物流、病院などで、撮影した画像を利用してマークを検出し、位置決めを行って荷物、部品等のワークを移動および搬送を行う際に好適に利用され得る。 The mark detection system of the present disclosure detects marks using captured images in factories, warehouses, construction sites, logistics, hospitals, etc., positions them, and moves and transports workpieces such as cargo and parts. Can be suitably used for.
10・・・無人搬送車(AGV)、12・・・天板、100・・・多関節ロボット、200・・・コントローラ、210・・・CPU、220・・・メモリ、300・・・撮像装置、1000・・・マーク検出システム、DB・・・データベース、GM・・・マークの像、M・・・マーク、W・・・ワーク 10 ... Unmanned carrier (AGV), 12 ... Top plate, 100 ... Articulated robot, 200 ... Controller, 210 ... CPU, 220 ... Memory, 300 ... Imaging device , 1000 ... mark detection system, DB ... database, GM ... mark image, M ... mark, W ... work
Claims (13)
記マークの像が含まれていないとき、前記信号処理回路に、前記データベースを参照して、取得した前記画像の画像特徴量と前記記憶装置に記憶されている前記各画像の画像特徴量とを比較させ、 比較結果が一致した場合には、前記データベースに、一致した画像に関係付けられた前記位置関係データを読み出しさせ、 前記信号処理回路に、前記位置関係データを利用して、前記撮像装置の視野に前記マークが入るよう、前記撮像装置の位置を変化させるための制御信号を生成して出力させ、 前記位置を変化させた後に、前記信号処理回路に、前記撮像装置を用いて再度撮影された画像から前記マークの像を検出させる、方法。A method executed by using a mark detection system for detecting a mark using an image pickup device, wherein the mark detection system includes an image pickup device having a field of view capable of partially photographing an article to which the mark is given, and a mark. A storage device that stores a database acquired by a position learning operation, wherein the database is one of a plurality of images obtained by photographing different parts of the article in a plurality of times by the imaging device. A storage device that associates at least one image feature amount of each image and positional relationship data indicating the relationship between the position represented by each image and the position of the mark for a plurality of images that do not include the image of the mark. And a signal processing device, and during the mark detection operation, the image pickup device is made to photograph a part of the article, and the signal processing circuit includes an image of the mark in the image acquired from the image pickup device. When the image acquired from the image pickup apparatus does not include the image of the mark, the signal processing circuit refers to the database to obtain the image feature amount of the acquired image. The image feature amount of each image stored in the storage device is compared, and if the comparison results match, the database is made to read out the positional relationship data associated with the matched image, and the above-mentioned Using the positional relationship data, the signal processing circuit generates and outputs a control signal for changing the position of the imaging device so that the mark is placed in the field of view of the imaging device, and changes the position. After that, a method of causing the signal processing circuit to detect an image of the mark from an image taken again by using the imaging device.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018214501 | 2018-11-15 | ||
JP2018214501 | 2018-11-15 | ||
PCT/JP2019/041085 WO2020100522A1 (en) | 2018-11-15 | 2019-10-18 | Mark detection system, signal processing circuit, computer program, and method |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2020100522A1 true JPWO2020100522A1 (en) | 2021-10-21 |
Family
ID=70732029
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020556733A Pending JPWO2020100522A1 (en) | 2018-11-15 | 2019-10-18 | Mark detection systems, signal processing circuits, computer programs and methods |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPWO2020100522A1 (en) |
WO (1) | WO2020100522A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230053430A (en) * | 2021-10-14 | 2023-04-21 | 네이버랩스 주식회사 | Method of pose estimation and robot system using the same method |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09189513A (en) * | 1996-01-10 | 1997-07-22 | Kawasaki Heavy Ind Ltd | Marker gravity center measurement method and device |
JP6829456B2 (en) * | 2016-08-17 | 2021-02-10 | エイチエスティ・ビジョン株式会社 | Image processing device and image processing program |
-
2019
- 2019-10-18 WO PCT/JP2019/041085 patent/WO2020100522A1/en active Application Filing
- 2019-10-18 JP JP2020556733A patent/JPWO2020100522A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2020100522A1 (en) | 2020-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4226623B2 (en) | Work picking device | |
JP7352260B2 (en) | Robot system with automatic object detection mechanism and its operating method | |
JP6687591B2 (en) | Article transport device, robot system, and article transport method | |
JP4257570B2 (en) | Transfer robot teaching device and transfer robot teaching method | |
CN109940662B (en) | Image pickup device provided with vision sensor for picking up workpiece | |
US20200306982A1 (en) | Transfer device and delivery system | |
JP5893695B1 (en) | Article transport system | |
TW201923706A (en) | Method and system for calibrating vision system in environment | |
JP2004090183A (en) | Article position and orientation detecting device and article taking-out device | |
JP2008296330A (en) | Robot simulation device | |
JP2010120141A (en) | Picking device for workpieces loaded in bulk and method for controlling the same | |
US20180161978A1 (en) | Interference region setting apparatus for mobile robot | |
JP2021022364A (en) | Post-detection refinement based on edges and multi-dimensional corners | |
JP2001158507A (en) | Method and device for teaching robot for stoker, and storage medium | |
US10909720B2 (en) | Control device for robot, robot, robot system, and method of confirming abnormality of robot | |
US11964399B2 (en) | Target object recognition device, manipulator, and mobile robot | |
JP2006224291A (en) | Robot system | |
JPWO2020100522A1 (en) | Mark detection systems, signal processing circuits, computer programs and methods | |
JP5263501B2 (en) | Work position recognition apparatus and method for depalletizing | |
JP6958517B2 (en) | Manipulators and mobile robots | |
JP7436170B2 (en) | robot system | |
JP2019016294A (en) | Information processor, information processing method, information processing program, and system | |
JP6735208B2 (en) | Calibration jig, sheet metal carry-in system, and calibration method | |
JP2020035052A (en) | Method of controlling imaging apparatus, imaging apparatus and method of manufacturing component | |
WO2022107350A1 (en) | Mobile manipulator, control method for mobile manipulator, and control program |