WO2021177159A1 - 機械学習装置 - Google Patents

機械学習装置 Download PDF

Info

Publication number
WO2021177159A1
WO2021177159A1 PCT/JP2021/007318 JP2021007318W WO2021177159A1 WO 2021177159 A1 WO2021177159 A1 WO 2021177159A1 JP 2021007318 W JP2021007318 W JP 2021007318W WO 2021177159 A1 WO2021177159 A1 WO 2021177159A1
Authority
WO
WIPO (PCT)
Prior art keywords
learning
unit
machine learning
command
image
Prior art date
Application number
PCT/JP2021/007318
Other languages
English (en)
French (fr)
Inventor
勇太 並木
Original Assignee
ファナック株式会社
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 ファナック株式会社 filed Critical ファナック株式会社
Priority to DE112021001435.8T priority Critical patent/DE112021001435T5/de
Priority to US17/905,319 priority patent/US20230311308A1/en
Priority to CN202180018401.8A priority patent/CN115243842A/zh
Priority to JP2022505172A priority patent/JP7420917B2/ja
Publication of WO2021177159A1 publication Critical patent/WO2021177159A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/021Optical sensing devices
    • B25J19/023Optical sensing devices including video camera means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39271Ann artificial neural network, ffw-nn, feedforward neural network
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40607Fixed camera to observe workspace, object, workpiece, global
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40613Camera, laser scanner on end effector, hand eye manipulator, local

Definitions

  • the present invention relates to a machine learning device.
  • Annotation for images is usually done by the user. However, it takes time for the user to label all the teacher data. In addition, if learning is performed after all the teacher data has been collected, it takes time to start up the system using machine learning. Therefore, in a machine learning device for robots, it has been required to efficiently perform machine learning.
  • the machine learning device is a machine learning device for a robot that uses a visual sensor, and in the robot program for the robot, a vision execution command, a result acquisition command, an annotation command, and a learning command are used.
  • a vision execution command from the robot program and the program setting unit that sets the A result acquisition unit that acquires a detection result or a determination result of the object by executing the result acquisition command from the robot program, and the object by executing the annotation command from the robot program.
  • the new It is equipped with a learning unit that performs machine learning using various learning data.
  • the machine learning device is a machine learning device for a robot that uses a visual sensor, and is at least one of a vision execution command, a result acquisition command, an annotation command, and a learning command in the robot program for the robot.
  • the vision execution unit and the robot program that capture the object by the visual sensor and detect or determine the object from the captured image by executing the robot program and the program setting unit that sets the data.
  • the result acquisition unit that acquires the detection result or the determination result of the object, and by executing the robot program, the captured image is based on the detection result or the determination result of the image of the object. It is provided with an additional annotation unit that assigns a label to the robot and acquires new learning data, and a learning unit that performs machine learning using the new learning data by executing the robot program.
  • FIG. 1 is a diagram showing a configuration of a robot system 100.
  • the robot system 100 includes a robot control device 1, a visual sensor control device 2, a robot 3, an arm 4, and a visual sensor 5.
  • a hand or tool is attached to the tip of the arm 4 of the robot 3.
  • the robot 3 performs work such as handling or processing of the object W under the control of the robot control device 1.
  • a visual sensor 5 is attached to the tip of the arm 4 of the robot 3. The visual sensor 5 does not have to be attached to the robot 3, and may be fixedly installed at a predetermined position, for example.
  • the visual sensor 5 images the object W under the control of the visual sensor control device 2.
  • a two-dimensional camera having an imaging element composed of a CCD (Charge Coupled Device) image sensor and an optical system including a lens may be used, and a stereo camera or the like capable of three-dimensional measurement is used. You may.
  • CCD Charge Coupled Device
  • the robot control device 1 executes a robot program for the robot 3 and controls the operation of the robot 3. At that time, the robot control device 1 corrects the operation of the robot 3 so that the robot 3 performs a predetermined work with respect to the position of the object W detected by the visual sensor control device 2.
  • FIG. 2 is a diagram showing the configuration of the robot control device 1.
  • the robot control device 1 includes a machine learning device 10.
  • the robot control device 1 has a general configuration for controlling the robot 3, but is omitted for simplification of description.
  • the machine learning device 10 is a device for performing machine learning for the robot 3.
  • the machine learning device 10 includes a control unit 11 and a storage unit 12.
  • the control unit 11 is a processor such as a CPU (Central Processing Unit), and realizes various functions by executing a program stored in the storage unit 12.
  • CPU Central Processing Unit
  • the control unit 11 includes a teaching unit 111, an object detection unit 112, an annotation unit 113, an image processing unit 114, a learning unit 115, a program setting unit 116, a vision execution unit 117, and a result acquisition unit 118. , And an additional annotation unit 119.
  • the storage unit 12 stores a ROM (Read Only Memory) for storing an OS (Operating System), an application program, etc., a RAM (Random Access Memory), a hard disk drive for storing various other information, an SSD (Solid State Drive), or the like. It is a device.
  • the storage unit 12 stores various information such as, for example, a robot program.
  • FIG. 3 is a flowchart showing a processing flow of the machine learning device 10.
  • the teaching unit 111 teaches a model pattern representing the characteristics of the image of the object W.
  • FIG. 4 is a flowchart showing a process of teaching a model pattern.
  • FIG. 5 is a diagram showing an example of teaching a model pattern.
  • step S101 the object W to be taught as a model pattern is arranged in the field of view of the visual sensor 5, and the image G of the object W is captured. It is desirable that the positional relationship between the visual sensor 5 and the object W is the same as when the object W is detected.
  • step S102 the teaching unit 111 designates a region including the object W in the captured image G as a rectangular or circular model pattern designation region R.
  • step S103 the teaching unit 111 extracts edge points as feature points within the range of the model pattern designation area, and obtains physical quantities such as the position of the edge points, the posture (direction of the luminance gradient), and the magnitude of the luminance gradient. Further, the teaching unit 111 defines a model pattern coordinate system in the designated area, and changes the position and orientation of the edge point from the value expressed in the image coordinate system S to the value expressed in the model pattern coordinate system. Convert.
  • step S104 the physical quantity of the extracted edge points is stored in the storage unit 12 as feature points constituting the model pattern.
  • edge points are used as feature points, but feature points such as well-known SIFT may be used.
  • the object detection unit 112 detects the image of the object W from one or more input images including the object W by using the model pattern. Specifically, first, one or more input images including an image of the object W are prepared. Then, the object detection unit 112 detects the image of the object W from each of one or more input images including the object W by using the model pattern.
  • step S3 the annotation unit 113 assigns a label (annotation) to the detection result based on the user's determination of the detection result of the object W.
  • the detection result of the object W in step S2 is displayed on a display device or the like connected to the robot control device 1.
  • the user visually confirms the detection result and assigns a label such as OK or NG to the detection result.
  • FIG. 6 is a diagram showing an example of assigning a label to the detection result.
  • the annotation unit 113 assigns an NG label to the two images G and an OK label to the six images G.
  • the user gives an NG label when the detection result is erroneous detection or defective. Further, the user may give an OK label when the detection result is equal to or more than a predetermined threshold value, and may give an NG label when the detection result is less than the predetermined threshold value. Further, the label automatically given by the machine learning device 10 may be modified by the user. In the above description, the label uses a classification having two classes, OK and NG, but a classification having three or more classes may be used.
  • step S4 the image processing unit 114 associates the image and the label based on the input image, and uses the image and the label based on the input image as the training data.
  • the image processing unit 114 extracts a partial image including the object W from the input image, associates the partial image with the label, and uses the partial image and the label as training data.
  • the image processing unit 114 extracts (cuts out) a partial image of a predetermined region at the position and orientation detected from the input image.
  • FIG. 7 is a diagram showing an example of extracting a partial image. In the example of FIG. 7, the image processing unit 114 extracts partial images G11, G12, G13 and G14 from the image G1. Then, the image processing unit 114 associates the extracted partial image with the label given in step S3, and uses the partial image and the label as learning data.
  • step S5 the learning unit 115 performs machine learning using the learning data. Specifically, the learning unit 115 performs machine learning using a learning data set which is a set of learning data.
  • FIG. 8 is a flowchart showing the machine learning process.
  • SVM Small Vector Machine
  • a neural network can be used as the learning model.
  • step S201 the image processing unit 114 extracts (cuts out) a partial image including the object W from the input image, associates the partial image with the label, and uses the partial image and the label as training data.
  • step S202 the learning unit 115 inputs each pixel value of the partial image into the learning model and calculates the degree of coincidence (score).
  • the degree of coincidence is a value from 0 to 1.
  • step S203 the learning unit 115 calculates an error from the calculated degree of agreement (score), assuming that the label of the detection result is 1.0 if the answer is correct and 0.0 if the label is incorrect.
  • step S204 the learning unit 115 feeds back the error in the learning model and updates the parameters of the learning model. Then, the learning unit 115 repeats such a process as many times as the number of detection results (N) used for learning.
  • the program setting unit 116 sets a vision execution command, a result acquisition command, an annotation command, and a learning command in the robot program for the robot 3.
  • the program setting unit 116 may set at least one of a vision execution command, a result acquisition command, an annotation command, and a learning command in the robot program.
  • the vision execution command (VISION_FIND) images the object W by the visual sensor 5, and detects or determines the object W from the captured image.
  • the result acquisition command (VISION_GET_RESULT) acquires the detection result or the determination result of the object W.
  • the annotation command (VISION_ANNOTATE) assigns a label to the captured image based on the detection result or the determination result of the image of the object W.
  • the learning instruction (VISION_LEARNING) is machine-learned using the learning data.
  • the machine learning device 10 can call each instruction from the robot program.
  • step S7 the vision execution unit 117 captures the object W by the visual sensor 5 by executing the vision execution command from the robot program, and detects or determines the object W from the captured image.
  • the detection of the object W indicates that the position and posture of the object W are detected and the detection result is obtained, and the determination of the object W is OK / NG by inspecting the object W. Or, it indicates that a judgment result such as a type is obtained.
  • step S8 the result acquisition unit 118 acquires the detection result or the determination result of the object W by executing the result acquisition command from the robot program.
  • step S9 the additional annotation unit 119 assigns a label to the captured image based on the detection result or the determination result of the image of the object W by executing the annotation command from the robot program, and new learning data. To get. Since the annotation command can be executed from the robot program in this way, the machine learning device 10 can perform the optimum annotation for the robot system 100 using the robot 3.
  • step S10 the learning unit 115 performs machine learning using the new learning data acquired in step S9 by executing a learning command from the robot program.
  • the robot program including the above-mentioned vision execution instruction, result acquisition instruction, annotation instruction, and learning instruction is as follows, for example.
  • the description in parentheses indicates each operation of the robot program.
  • MOVE_TO PX move to position X
  • VISION_FIND executes the vision program VP1
  • VISION_GET_RESULT "VP1”
  • DATA [1] obtaining the judgment result from the vision program VP1) IF DATA [1].
  • CONFIDENCE ⁇ 30 when the certainty of the judgment result is lower than 30
  • VISION_ANNOTATE DATA [1], DATA [1] .LABEL
  • ENDIF VISION_LEARNING execute learning
  • the above exemplary robot program uses certainty. By learning the learning data with low certainty, the accuracy of the learning model can be further improved.
  • the certainty is calculated based on the loss function.
  • a known method can be used to calculate the certainty.
  • the annotation command may change the label according to the success or failure of gripping by the robot 3 based on the detection result of the image of the object W.
  • the robot program executes the following processing, for example. (1) Move the robot 3 to the position X. (2) Execute the vision execution command and detect the object. (3) Execute the result acquisition command and acquire the detection result. (4) The arm 4 of the robot 3 is moved to the detection position. (5) The object W is gripped by the arm 4. (6) It is determined whether or not the grip is successful. (7) If the grip is successful, the annotation command assigns a label of 1 (successful grip). (8) When gripping fails, the annotation command assigns a label of 0 (grasping failure). (9) The processes of (2) to (8) are repeated. (10) Execute the learning instruction. By executing such a process, the machine learning device 10 can obtain a learning model according to the success or failure of gripping the object by using the image and the detection result.
  • the object W may be inspected using another device (for example, a highly accurate inspection device).
  • the annotation command may give a label to the inspection result of the object W using another device.
  • the robot program executes the following processing, for example. (1) Move the robot 3 to the position X. (2) Execute the vision execution command and detect the object. (3) Execute the result acquisition command and acquire the detection result. (4) Judgment (inspection) is performed in another device. The judgment result is checked by the user. (5) Execute the annotation command and put the judgment result by another device into the learning data. (6) Execute the learning instruction. By executing such a process, the machine learning device 10 can obtain a learning model for determining the object W from the image.
  • the machine learning device 10 can perform the determination only by the learning model without using the determination result by another device after the learning.
  • the annotation instruction may give a label to the detection result when the score of the detection result of the object W is less than a predetermined threshold value.
  • the robot program executes the following processing, for example. (1) Move the robot 3 to the position X. (2) Execute the vision execution command and detect the object. (3) Execute the result acquisition command and acquire the detection result. (4) It is determined whether or not the score of the detection result is less than a predetermined threshold value. (5) When the score of the detection result is less than a predetermined threshold value, the detection position is included in the learning data in the annotation command. (6) Execute the learning instruction. By executing such a process, the machine learning device 10 can obtain a learning model that returns the position of the object W from the image.
  • the machine learning device 10 for the robot 3 using the visual sensor 5 has a vision execution command, a result acquisition command, and an annotation command in the robot program for the robot 3.
  • the vision execution command from the program setting unit 116 that sets the learning command and the robot program
  • the object W is imaged by the visual sensor 5, and the object W is detected or detected from the captured image.
  • a new annotation unit 119 that assigns a label to the captured image and acquires new learning data based on the detection result or determination result of the image of the object W, and a new learning command by executing a learning command from the robot program. It is provided with a learning unit 115 for machine learning using various learning data.
  • the machine learning device 10 can perform annotation and learning while operating the robot by the robot program, so that machine learning can be performed efficiently. Therefore, by using the machine learning device 10, the robot system 100 can be started up at an early stage.
  • the annotation command may change the label according to the success or failure of gripping by the robot 3 based on the detection result of the image of the object W.
  • the machine learning device 10 can obtain a learning model according to the success or failure of gripping the object by using the image and the detection result. Therefore, the machine learning device 10 can grip from a work having a high probability of being gripped by the robot 3.
  • the object W may be determined using another device, and the annotation command may give a label to the determination result of the object W using another device.
  • the machine learning device 10 can obtain a learning model for determining the object W from the image. Then, the machine learning device 10 can perform the determination only by the learning model without using the determination result by another device after the learning.
  • the annotation command assigns the label to the detection result when the score of the detection result of the object W is less than a predetermined threshold value.
  • the machine learning device 10 uses the teaching unit 111 for teaching a model pattern representing the characteristics of the image of the object W and the model pattern to obtain an image of the object W from one or more input images including the object W.
  • An image based on the input image and an image based on the input image and a label are associated with the object detection unit 112 to be detected, the annotation unit 113 that assigns a label to the detection result based on the detection result of the object W, and the image and the label based on the input image.
  • It further includes an image processing unit 114 that uses labels as training data, and a learning unit 115 that performs machine learning using the training data. As a result, the machine learning device 10 can perform appropriate learning.
  • one machine learning device 10 may be a machine learning system in which a plurality of machine learning devices 10 exist.
  • the learning model stored by any of the machine learning devices 10 may be shared with other machine learning devices 10. If the learning model is shared by a plurality of machine learning devices 10, each machine learning device 10 can perform learning in a distributed manner, so that the machine learning system can improve the learning efficiency. It becomes.
  • the present invention is not limited to the above-described embodiments. Further, the effects described in the present embodiment merely list the most preferable effects arising from the present invention, and the effects according to the present invention are not limited to those described in the present embodiment.
  • Robot control device 2
  • Visual sensor control device 3 Robot 4 Arm 5
  • Visual sensor 10
  • Machine learning device 11
  • Control unit 12 Storage unit 111
  • Teaching unit 112 Object detection unit 113
  • Annotation unit 114
  • Image processing unit 115
  • Learning unit 116
  • Program setting unit 117 Vision Execution part 118 Result acquisition part 119 Additional annotation part

Abstract

効率良く機械学習を行うことができる機械学習装置を提供する。機械学習装置は、ロボットプログラムからビジョン実行命令を実行することによって、視覚センサにより対象物Wを撮像し、撮像された撮像画像から対象物Wを検出又は判定する、ビジョン実行部と、ロボットプログラムから結果取得命令を実行することによって、対象物Wの検出結果又は判定結果を取得する結果取得部と、ロボットプログラムからアノテーション命令を実行することによって、対象物Wの画像の検出結果又は判定結果に基づいて、撮像画像に対してラベルを付与し、新たな学習データを取得する追加アノテーション部と、ロボットプログラムから学習命令を実行することによって、新たな学習データを用いて機械学習する学習部と、を備える。

Description

機械学習装置
 本発明は、機械学習装置に関する。
 従来より、ロボットシステムにおいて、画像から対象物の検出や検査を行う手法として、学習器を利用した機械学習が用いられている(例えば、特許文献1参照)。機械学習を用いるロボットシステムにおいて、学習の前段階として、画像に不良個所があるかどうか、検出位置が正しいかどうか等のラベルを画像データに関連付けるアノテーションと呼ばれる作業を行う必要がある。アノテーションは、画像を1つずつユーザが確認し、画像内の対象物に不良個所があるかどうかをユーザによって判断する。
特開2018-151843号公報
 画像に対するアノテーションは、通常、ユーザによって行われる。しかし、ユーザによって全ての教師データに対してラベルを付与するのは時間がかかる。また、全ての教師データが集まってから学習すると、機械学習を用いたシステムを立ち上げるまでに時間がかかる。そのため、ロボットのための機械学習装置において、効率良く機械学習を行うことが求められていた。
 本開示に係る機械学習装置は、視覚センサを用いるロボットのための機械学習装置であって、前記ロボットのためのロボットプログラムにおいて、ビジョン実行命令と、結果取得命令と、アノテーション命令と、学習命令と、を設定するプログラム設定部と、前記ロボットプログラムから前記ビジョン実行命令を実行することによって、前記視覚センサにより対象物を撮像し、撮像された撮像画像から前記対象物を検出又は判定する、ビジョン実行部と、前記ロボットプログラムから前記結果取得命令を実行することによって、前記対象物の検出結果又は判定結果を取得する結果取得部と、前記ロボットプログラムから前記アノテーション命令を実行することによって、前記対象物の画像の検出結果又は判定結果に基づいて、前記撮像画像に対してラベルを付与し、新たな学習データを取得する追加アノテーション部と、前記ロボットプログラムから前記学習命令を実行することによって、前記新たな学習データを用いて機械学習する学習部と、を備える。
 本開示に係る機械学習装置は、視覚センサを用いるロボットのための機械学習装置であって、前記ロボットのためのロボットプログラムにおいて、ビジョン実行命令、結果取得命令、アノテーション命令及び学習命令の少なくとも1つを設定するプログラム設定部と、前記ロボットプログラムを実行することによって、前記視覚センサにより対象物を撮像し、撮像された撮像画像から前記対象物を検出又は判定する、ビジョン実行部と、前記ロボットプログラムを実行することによって、前記対象物の検出結果又は判定結果を取得する結果取得部と、前記ロボットプログラムを実行することによって、前記対象物の画像の検出結果又は判定結果に基づいて、前記撮像画像に対してラベルを付与し、新たな学習データを取得する追加アノテーション部と、前記ロボットプログラムを実行することによって、前記新たな学習データを用いて機械学習する学習部と、を備える。
 本発明によれば、効率良く機械学習を行うことができる。
ロボットシステムの構成を示す図である。 ロボット制御装置の構成を示す図である。 機械学習装置の処理の流れを示すフローチャートである。 モデルパターンを教示する処理を示すフローチャートである。 モデルパターンを教示する例を示す図である。 検出結果にラベルを付与する例を示す図である。 部分画像を抽出する例を示す図である。 機械学習の処理を示すフローチャートである。
 以下、本発明の実施形態の一例について説明する。
 図1は、ロボットシステム100の構成を示す図である。図1に示すように、ロボットシステム100は、ロボット制御装置1と、視覚センサ制御装置2と、ロボット3と、アーム4と、視覚センサ5と、を備える。
 ロボット3のアーム4の先端部には、ハンド又はツールが取り付けられている。ロボット3は、ロボット制御装置1の制御により、対象物Wのハンドリング又は加工等の作業を行う。また、ロボット3のアーム4の先端部には、視覚センサ5が取り付けられている。なお、視覚センサ5は、ロボット3に取り付けられていなくてもよく、例えば、所定の位置に固定して設置されてもよい。
 視覚センサ5は、視覚センサ制御装置2の制御により、対象物Wを撮像する。視覚センサ5は、CCD(Charge Coupled Device)イメージセンサで構成される撮像素子と、レンズを含む光学系とを有する二次元カメラが用いられてもよく、三次元計測ができるステレオカメラ等が用いられてもよい。
 ロボット制御装置1は、ロボット3のためのロボットプログラムを実行し、ロボット3の動作を制御する。その際、ロボット制御装置1は、視覚センサ制御装置2によって検出された対象物Wの位置に対してロボット3が所定の作業を行うように、ロボット3の動作を補正する。
 図2は、ロボット制御装置1の構成を示す図である。ロボット制御装置1は、機械学習装置10を備える。なお、ロボット制御装置1は、ロボット3を制御するための一般的な構成を有するが、説明の簡素化のために省略する。機械学習装置10は、ロボット3のために機械学習を行うための装置である。機械学習装置10は、制御部11と、記憶部12と、を備える。
 制御部11は、CPU(Central Processing Unit)等のプロセッサであり、記憶部12に記憶されたプログラムを実行することによって各種機能を実現する。
 制御部11は、教示部111と、対象物検出部112と、アノテーション部113と、画像処理部114と、学習部115と、プログラム設定部116と、ビジョン実行部117と、結果取得部118と、追加アノテーション部119と、を備える。
 記憶部12は、OS(Operating System)やアプリケーションプログラム等を格納するROM(Read Only Memory)、RAM(Random Access Memory)、その他の各種情報を格納するハードディスクドライブやSSD(Solid State Drive)等の記憶装置である。記憶部12は、例えば、ロボットプログラム等の各種情報を記憶する。
 図3は、機械学習装置10の処理の流れを示すフローチャートである。
 ステップS1において、教示部111は、対象物Wの画像の特徴を表すモデルパターンを教示する。図4は、モデルパターンを教示する処理を示すフローチャートである。図5は、モデルパターンを教示する例を示す図である。
 ステップS101において、モデルパターンとして教示したい対象物Wは、視覚センサ5の視野内に配置され、対象物Wの画像Gが撮像される。視覚センサ5と対象物Wとの位置関係は、対象物Wを検出するときと同じになるようにして行うことが望ましい。
 ステップS102において、教示部111は、撮像された画像Gにおいて対象物Wを含む領域を矩形や円形のモデルパターン指定領域Rとして指定する。
 ステップS103において、教示部111は、モデルパターン指定領域の範囲内でエッジ点を特徴点として抽出し、エッジ点の位置、姿勢(輝度勾配の方向)、輝度勾配の大きさ等の物理量を求める。また、教示部111は、指定された領域内にモデルパターン座標系を定義し、エッジ点の位置や姿勢を、画像座標系Sで表現された値から、モデルパターン座標系で表現された値に変換する。
 ステップS104において、抽出されたエッジ点の物理量は、モデルパターンを構成する特徴点として記憶部12に記憶される。なお、本実施形態では、特徴点としてエッジ点を用いたが、例えば周知のSIFTのような特徴点を使用してもよい。
 図3に戻り、ステップS2において、対象物検出部112は、モデルパターンを用いて、対象物Wを含む1以上の入力画像から対象物Wの画像を検出する。具体的には、先ず、対象物Wの画像を含む1以上の入力画像を用意する。そして、対象物検出部112は、モデルパターンを用いて、対象物Wを含む1以上の入力画像の各々から対象物Wの画像を検出する。
 ステップS3において、アノテーション部113は、ユーザによる対象物Wの検出結果の判断に基づいて、検出結果に対してラベル(アノテーション)を付与する。
 具体的には、ステップS2における対象物Wの検出結果は、ロボット制御装置1に接続された表示装置等に表示される。ユーザは、検出結果を目視によって確認し、検出結果にOK、NG等のラベルを付与する。図6は、検出結果にラベルを付与する例を示す図である。図6の例では、アノテーション部113は、2つの画像GにNGのラベルを付与し、6つの画像GにOKのラベルを付与する。
 例えば、ユーザは、検出結果が誤検出や不良である場合、NGのラベルを付与する。また、ユーザは、検出結果が所定の閾値以上の場合、OKのラベルを付与し、検出結果が所定の閾値未満の場合、NGのラベルを付与してもよい。また、機械学習装置10によって自動で付与されたラベルは、ユーザにより修正されてもよい。なお、上述した説明では、ラベルは、OK及びNGの2つのクラスを有する分類を用いたが、3以上のクラスを有する分類を用いてもよい。
 ステップS4において、画像処理部114は、入力画像に基づく画像及びラベルを関連付けて、入力画像に基づく画像及びラベルを学習データとする。例えば、画像処理部114は、入力画像から対象物Wを含む部分画像を抽出し、部分画像及びラベルを関連付けて、部分画像及びラベルを学習データとする。
 具体的には、画像処理部114は、入力画像から検出した位置及び姿勢において、予め定められた領域の部分画像を抽出する(切り抜く)。図7は、部分画像を抽出する例を示す図である。図7の例では、画像処理部114は、画像G1から部分画像G11、G12、G13及びG14を抽出する。そして、画像処理部114は、抽出した部分画像と、ステップS3において付与したラベルとを関連付けて、部分画像及びラベルを学習データとする。
 ステップS5において、学習部115は、学習データを用いて機械学習を行う。具体的には、学習部115は、学習データの集合である学習データセットを用いて機械学習を行う。図8は、機械学習の処理を示すフローチャートである。なお、学習モデルは、SVM(Support Vector Machine)やニューラルネットワークを使うことができる。
 ステップS201において、画像処理部114は、入力画像から対象物Wを含む部分画像の抽出(切り抜き)を行い、部分画像及びラベルを関連付けて、部分画像及びラベルを学習データとする。
 ステップS202において、学習部115は、学習モデルに部分画像の各画素値を入力し、一致度(スコア)を計算する。ここで、一致度は、0から1までの値とする。
 ステップS203において、学習部115は、検出結果のラベルが正解であれば1.0、不正解であれば0.0として、計算した一致度(スコア)との誤差を計算する。
 ステップS204において、学習部115は、学習モデルにおいて誤差をフィードバックし、学習モデルのパラメータを更新する。そして、学習部115は、このような処理を、学習に使用する検出結果の個数(N個)と同じ回数繰り返す。
 図3に戻り、ステップS6において、プログラム設定部116は、ロボット3のためのロボットプログラムにおいて、ビジョン実行命令と、結果取得命令と、アノテーション命令と、学習命令と、を設定する。なお、プログラム設定部116は、ロボットプログラムにおいて、ビジョン実行命令、結果取得命令、アノテーション命令及び学習命令の少なくとも1つを設定してもよい。
 ここで、ビジョン実行命令(VISION_FIND)は、視覚センサ5により対象物Wを撮像し、撮像された撮像画像から対象物Wを検出又は判定する。結果取得命令(VISION_GET_RESULT)は、対象物Wの検出結果又は判定結果を取得する。アノテーション命令(VISION_ANNOTATE)は、対象物Wの画像の検出結果又は判定結果に基づいて、撮像画像に対してラベルを付与する。学習命令(VISION_LEARNING)は、学習データを用いて機械学習する。
 このようにロボットプログラムにおいて、機械学習のための各命令を設定することにより、機械学習装置10は、ロボットプログラムから各命令を呼び出すことができる。
 ステップS7において、ビジョン実行部117は、ロボットプログラムからビジョン実行命令を実行することによって、視覚センサ5により対象物Wを撮像し、撮像された撮像画像から対象物Wを検出又は判定する。なお、本実施形態では、対象物Wの検出は、対象物Wの位置及び姿勢を検出し、検出結果を得ることを示し、対象物Wの判定は、対象物Wを検査し、OK/NGや、種類等の判定結果を得ることを示す。
 ステップS8において、結果取得部118は、ロボットプログラムから結果取得命令を実行することによって、対象物Wの検出結果又は判定結果を取得する。
 ステップS9において、追加アノテーション部119は、ロボットプログラムからアノテーション命令を実行することによって、対象物Wの画像の検出結果又は判定結果に基づいて、撮像画像に対してラベルを付与し、新たな学習データを取得する。このようにロボットプログラムからアノテーション命令を実行することができるため、機械学習装置10は、ロボット3を用いるロボットシステム100にとって最適なアノテーションを行うことができる。
 ステップS10において、学習部115は、ロボットプログラムから学習命令を実行することによって、ステップS9において取得された新たな学習データを用いて機械学習する。
 上述したビジョン実行命令、結果取得命令、アノテーション命令及び学習命令を含むロボットプログラムは、例えば以下のようになる。なお、括弧内の説明は、ロボットプログラムの各動作を示す。
MOVE_TO PX        (位置Xに移動)
VISION_FIND “VP1” (ビジョンプログラムVP1を実行)
VISION_GET_RESULT “VP1” DATA[1] (ビジョンプログラムVP1から判定結果を取得)
IF DATA[1].CONFIDENCE < 30 (判定結果の確信度が30よりも低い場合)
  VISION_ANNOTATE(DATA[1], DATA[1].LABEL) (判定結果として学習データを追加)
ENDIF
VISION_LEARNING           (学習を実行)
 なお、上記の例示的なロボットプログラムは、確信度を用いる。確信度が低い学習データを学習することによって、学習モデルの精度をより向上させることができる。なお、確信度は、損失(loss)関数に基づいて算出される。確信度の算出は、既知の手法を用いることができる。
 また、アノテーション命令は、対象物Wの画像の検出結果に基づいて、ロボット3による把持の成否に応じてラベルを変更してもよい。この場合、ロボットプログラムは、例えば、以下のような処理を実行する。
(1) ロボット3を位置Xに移動する。
(2) ビジョン実行命令を実行し、対象物を検出する。
(3) 結果取得命令を実行し、検出結果を取得する。
(4) ロボット3のアーム4を検出位置へ移動する。
(5) アーム4により対象物Wを把持させる。
(6) 把持が成功したか否かを判定する。
(7) 把持が成功した場合、アノテーション命令は、1(把持成功)のラベルを付与する。
(8) 把持が失敗した場合、アノテーション命令は、0(把持失敗)のラベルを付与する。
(9) (2)~(8)の処理を繰り返す。
(10) 学習命令を実行する。
 このような処理を実行することにより、機械学習装置10は、画像及び検出結果を用いて、対象物の把持の成否に応じた学習モデルを得ることができる。
 また、対象物Wは、別の装置(例えば、精度の高い検査装置)を用いて検査されてもよい。そして、アノテーション命令は、別の装置を用いた対象物Wの検査結果に対してラベルを付与してもよい。この場合、ロボットプログラムは、例えば、以下のような処理を実行する。
(1) ロボット3を位置Xに移動する。
(2) ビジョン実行命令を実行し、対象物を検出する。
(3) 結果取得命令を実行し、検出結果を取得する。
(4) 別の装置において判定(検査)を行う。ユーザによって判定結果をチェックする。
(5) アノテーション命令を実行し、別の装置による判定結果を学習データに入れる。
(6) 学習命令を実行する。
 このような処理を実行することにより、機械学習装置10は、画像から対象物Wを判定する学習モデルを得ることができる。そして、機械学習装置10は、学習後に別の装置による判定結果を用いずに、学習モデルのみで判定を行うことができる。
 
 また、アノテーション命令は、対象物Wの検出結果のスコアが所定の閾値未満の場合、検出結果に対してラベルを付与してもよい。この場合、ロボットプログラムは、例えば、以下のような処理を実行する。
(1) ロボット3を位置Xに移動する。
(2) ビジョン実行命令を実行し、対象物を検出する。
(3) 結果取得命令を実行し、検出結果を取得する。
(4) 検出結果のスコアが所定の閾値未満か否かを判定する。
(5) 検出結果のスコアが所定の閾値未満の場合、アノテーション命令において、検出位置を学習データに入れる。
(6) 学習命令を実行する。
 このような処理を実行することにより、機械学習装置10は、画像から対象物Wの位置を返す学習モデルを得ることができる。
 以上説明したように、本実施形態によれば、視覚センサ5を用いるロボット3のための機械学習装置10は、ロボット3のためのロボットプログラムにおいて、ビジョン実行命令と、結果取得命令と、アノテーション命令と、学習命令と、を設定するプログラム設定部116と、ロボットプログラムからビジョン実行命令を実行することによって、視覚センサ5により対象物Wを撮像し、撮像された撮像画像から対象物Wを検出又は判定する、ビジョン実行部117と、ロボットプログラムから結果取得命令を実行することによって、対象物Wの検出結果又は判定結果を取得する結果取得部118と、ロボットプログラムからアノテーション命令を実行することによって、対象物Wの画像の検出結果又は判定結果に基づいて、撮像画像に対してラベルを付与し、新たな学習データを取得する追加アノテーション部119と、ロボットプログラムから学習命令を実行することによって、新たな学習データを用いて機械学習する学習部115と、を備える。
 これにより、機械学習装置10は、ロボットプログラムによってロボットを動作させながら、アノテーション及び学習を行うことができるため、効率良く機械学習を行うことができる。したがって、機械学習装置10を用いることにより、ロボットシステム100を早期に立ち上げることができる。
 また、アノテーション命令は、対象物Wの画像の検出結果に基づいて、ロボット3による把持の成否に応じてラベルを変更してもよい。このような処理を実行することにより、機械学習装置10は、画像及び検出結果を用いて、対象物の把持の成否に応じた学習モデルを得ることができる。したがって、機械学習装置10は、ロボット3にとって把持できる確率が高いワークから把持することができる。
 また、対象物Wは、別の装置を用いて判定され、アノテーション命令は、別の装置を用いた対象物Wの判定結果に対してラベルを付与してもよい。このような処理を実行することにより、機械学習装置10は、画像から対象物Wを判定する学習モデルを得ることができる。そして、機械学習装置10は、学習後に別の装置による判定結果を用いずに、学習モデルのみで判定を行うことができる。
 また、アノテーション命令は、対象物Wの検出結果のスコアが所定の閾値未満の場合、検出結果に対して前記ラベルを付与する。このような処理を実行することにより、機械学習装置10は、画像から対象物Wの位置を返す学習モデルを得ることができる。したがって、機械学習装置10は、このような学習モデルを用いて効率良く機械学習を行うことができる。
 また、機械学習装置10は、対象物Wの画像の特徴を表すモデルパターンを教示する教示部111と、モデルパターンを用いて、対象物Wを含む1以上の入力画像から対象物Wの画像を検出する対象物検出部112と、対象物Wの検出結果に基づいて、検出結果に対してラベルを付与するアノテーション部113と、入力画像に基づく画像及びラベルを関連付けて、入力画像に基づく画像及びラベルを学習データとする画像処理部114と、学習データを用いて機械学習を行う学習部115と、を更に備える。これにより、機械学習装置10は、適切な学習を行うことができる。
 なお、上述した実施形態では、1台の機械学習装置10の場合について説明したが、機械学習装置10が複数台存在する機械学習システムであってもよい。機械学習装置10が複数台存在する場合には、何れかの機械学習装置10が記憶した学習モデルを、他の機械学習装置10との間で共有するようにしてもよい。学習モデルを複数の機械学習装置10で共有するようにすれば、各機械学習装置10において分散して学習を行うことが可能となるので、機械学習システムは、学習の効率を向上させることが可能となる。
 以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、本実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本実施形態に記載されたものに限定されるものではない。
 1 ロボット制御装置
 2 視覚センサ制御装置
 3 ロボット
 4 アーム
 5 視覚センサ
 10 機械学習装置
 11 制御部
 12 記憶部
 111 教示部
 112 対象物検出部
 113 アノテーション部
 114 画像処理部
 115 学習部
 116 プログラム設定部
 117 ビジョン実行部
 118 結果取得部
 119 追加アノテーション部

Claims (7)

  1.  視覚センサを用いるロボットのための機械学習装置であって、
     前記ロボットのためのロボットプログラムにおいて、ビジョン実行命令と、結果取得命令と、アノテーション命令と、学習命令と、を設定するプログラム設定部と、
     前記ロボットプログラムから前記ビジョン実行命令を実行することによって、前記視覚センサにより対象物を撮像し、撮像された撮像画像から前記対象物を検出又は判定する、ビジョン実行部と、
     前記ロボットプログラムから前記結果取得命令を実行することによって、前記対象物の検出結果又は判定結果を取得する結果取得部と、
     前記ロボットプログラムから前記アノテーション命令を実行することによって、前記対象物の画像の検出結果又は判定結果に基づいて、前記撮像画像に対してラベルを付与し、新たな学習データを取得する追加アノテーション部と、
     前記ロボットプログラムから前記学習命令を実行することによって、前記新たな学習データを用いて機械学習する学習部と、
    を備える機械学習装置。
  2.  前記アノテーション命令は、前記対象物の画像の検出結果に基づいて、前記ロボットによる把持の成否に応じて前記ラベルを変更する、請求項1に記載の機械学習装置。
  3.  前記対象物は、別の装置を用いて判定され、前記アノテーション命令は、前記別の装置を用いた前記対象物の判定結果に対して前記ラベルを付与する、請求項1に記載の機械学習装置。
  4.  前記アノテーション命令は、前記対象物の検出結果のスコアが所定の閾値未満の場合、前記検出結果に対して前記ラベルを付与する、請求項1に記載の機械学習装置。
  5.  前記対象物の画像の特徴を表すモデルパターンを教示する教示部と、
     前記モデルパターンを用いて、前記対象物を含む1以上の入力画像から前記対象物の画像を検出する対象物検出部と、
     前記対象物の検出結果に基づいて、前記検出結果に対してラベルを付与するアノテーション部と、
     前記入力画像に基づく画像及び前記ラベルを関連付けて、前記入力画像に基づく画像及び前記ラベルを学習データとする画像処理部と、
    を更に備える請求項1から4のいずれか一項に記載の機械学習装置。
  6.  請求項1から4のいずれか一項に記載の機械学習装置を複数含む機械学習システムであって、
     複数の前記機械学習装置のそれぞれが備える機械学習部において学習モデルを共有し、複数の前記機械学習装置のそれぞれが備える前記機械学習部は、共有する前記学習モデルに対して学習を行う、機械学習システム。
  7.  視覚センサを用いるロボットのための機械学習装置であって、
     前記ロボットのためのロボットプログラムにおいて、ビジョン実行命令、結果取得命令、アノテーション命令及び学習命令の少なくとも1つを設定するプログラム設定部と、
     前記ロボットプログラムを実行することによって、前記視覚センサにより対象物を撮像し、撮像された撮像画像から前記対象物を検出又は判定する、ビジョン実行部と、
     前記ロボットプログラムを実行することによって、前記対象物の検出結果又は判定結果を取得する結果取得部と、
     前記ロボットプログラムを実行することによって、前記対象物の画像の検出結果又は判定結果に基づいて、前記撮像画像に対してラベルを付与し、新たな学習データを取得する追加アノテーション部と、
     前記ロボットプログラムを実行することによって、前記新たな学習データを用いて機械学習する学習部と、
    を備える機械学習装置。
PCT/JP2021/007318 2020-03-05 2021-02-26 機械学習装置 WO2021177159A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE112021001435.8T DE112021001435T5 (de) 2020-03-05 2021-02-26 Maschinen-Lern-Vorrichtung
US17/905,319 US20230311308A1 (en) 2020-03-05 2021-02-26 Machine-learning device
CN202180018401.8A CN115243842A (zh) 2020-03-05 2021-02-26 机器学习装置
JP2022505172A JP7420917B2 (ja) 2020-03-05 2021-02-26 機械学習装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020-037524 2020-03-05
JP2020037524 2020-03-05

Publications (1)

Publication Number Publication Date
WO2021177159A1 true WO2021177159A1 (ja) 2021-09-10

Family

ID=77613056

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/007318 WO2021177159A1 (ja) 2020-03-05 2021-02-26 機械学習装置

Country Status (5)

Country Link
US (1) US20230311308A1 (ja)
JP (1) JP7420917B2 (ja)
CN (1) CN115243842A (ja)
DE (1) DE112021001435T5 (ja)
WO (1) WO2021177159A1 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018202550A (ja) * 2017-06-05 2018-12-27 株式会社日立製作所 機械学習装置、機械学習方法、および機械学習プログラム
JP2019048365A (ja) * 2017-09-12 2019-03-28 ファナック株式会社 機械学習装置、ロボットシステム及び機械学習方法
JP2019508273A (ja) * 2016-03-03 2019-03-28 グーグル エルエルシー ロボットの把持のための深層機械学習方法および装置
JP2019058960A (ja) * 2017-09-25 2019-04-18 ファナック株式会社 ロボットシステム及びワーク取り出し方法
JP2019060780A (ja) * 2017-09-27 2019-04-18 ファナック株式会社 検査装置及び検査システム
JP2019159819A (ja) * 2018-03-13 2019-09-19 オムロン株式会社 アノテーション方法、アノテーション装置、アノテーションプログラム及び識別システム
JP2019185422A (ja) * 2018-04-11 2019-10-24 株式会社Ye Digital 故障予知方法、故障予知装置および故障予知プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6542824B2 (ja) 2017-03-13 2019-07-10 ファナック株式会社 入力画像から検出した対象物の像の尤度を計算する画像処理装置および画像処理方法
CN108955525B (zh) 2018-07-26 2024-04-09 广东工业大学 透视投影式机器学习图像数据标注系统及方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019508273A (ja) * 2016-03-03 2019-03-28 グーグル エルエルシー ロボットの把持のための深層機械学習方法および装置
JP2018202550A (ja) * 2017-06-05 2018-12-27 株式会社日立製作所 機械学習装置、機械学習方法、および機械学習プログラム
JP2019048365A (ja) * 2017-09-12 2019-03-28 ファナック株式会社 機械学習装置、ロボットシステム及び機械学習方法
JP2019058960A (ja) * 2017-09-25 2019-04-18 ファナック株式会社 ロボットシステム及びワーク取り出し方法
JP2019060780A (ja) * 2017-09-27 2019-04-18 ファナック株式会社 検査装置及び検査システム
JP2019159819A (ja) * 2018-03-13 2019-09-19 オムロン株式会社 アノテーション方法、アノテーション装置、アノテーションプログラム及び識別システム
JP2019185422A (ja) * 2018-04-11 2019-10-24 株式会社Ye Digital 故障予知方法、故障予知装置および故障予知プログラム

Also Published As

Publication number Publication date
US20230311308A1 (en) 2023-10-05
CN115243842A (zh) 2022-10-25
JPWO2021177159A1 (ja) 2021-09-10
JP7420917B2 (ja) 2024-01-23
DE112021001435T5 (de) 2023-01-12

Similar Documents

Publication Publication Date Title
JP2019063984A5 (ja) 情報処理装置及び情報処理方法
US9044858B2 (en) Target object gripping apparatus, method for controlling the same and storage medium
US10430650B2 (en) Image processing system
US20120113268A1 (en) Image generation apparatus, image generation method and storage medium
JP7191569B2 (ja) 把持装置
JP2015009314A (ja) 干渉判定装置、干渉判定方法、コンピュータプログラム
JP7377627B2 (ja) 物体検出装置、物体把持システム、物体検出方法及び物体検出プログラム
JPH06175715A (ja) 視覚センサ座標系設定治具及び設定方法
EA038279B1 (ru) Способ и система захвата объекта с помощью роботизированного устройства
US10960550B2 (en) Identification code reading apparatus and machine learning device
JP2018126862A (ja) 干渉判定装置、干渉判定方法、コンピュータプログラム
JP2018169660A (ja) オブジェクト姿勢検出装置、制御装置、ロボットおよびロボットシステム
US20210042576A1 (en) Image processing system
WO2021177159A1 (ja) 機械学習装置
JP7051751B2 (ja) 学習装置、学習方法、学習モデル、検出装置及び把持システム
JP6561757B2 (ja) 画像処理装置、ロボット、及びマーカー
JP2015157343A (ja) ロボット、ロボットシステム、制御装置、および制御方法
JP2015169515A (ja) 姿勢推定システム、プログラムおよび姿勢推定方法
WO2019093299A1 (ja) 位置情報取得装置およびそれを備えたロボット制御装置
JP2006007390A (ja) 撮像装置、撮像方法、撮像プログラム、撮像プログラムを記録したコンピュータ読取可能な記録媒体
JP2021061014A (ja) 学習装置、学習方法、学習モデル、検出装置及び把持システム
CN112184819A (zh) 机器人的引导方法、装置、计算机设备和存储介质
WO2021235311A1 (ja) 機械学習装置及び機械学習システム
WO2022239477A1 (ja) 情報処理装置、システム、方法及びプログラム
US20230415349A1 (en) Method for controlling a robot for manipulating, in particular picking up, an object

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21763961

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022505172

Country of ref document: JP

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 21763961

Country of ref document: EP

Kind code of ref document: A1