JP7790914B2 - Information processing method, information processing device, control method, robot system, article manufacturing method, program, and recording medium - Google Patents
Information processing method, information processing device, control method, robot system, article manufacturing method, program, and recording mediumInfo
- Publication number
- JP7790914B2 JP7790914B2 JP2021171312A JP2021171312A JP7790914B2 JP 7790914 B2 JP7790914 B2 JP 7790914B2 JP 2021171312 A JP2021171312 A JP 2021171312A JP 2021171312 A JP2021171312 A JP 2021171312A JP 7790914 B2 JP7790914 B2 JP 7790914B2
- Authority
- JP
- Japan
- Prior art keywords
- image
- linear
- linear member
- information processing
- robot
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Manipulator (AREA)
Description
本発明は、ロボット技術及び画像処理技術に関する。 The present invention relates to robotics technology and image processing technology.
生産ラインにおいて、ハーネスなど線状部材の取り出し又は組み付けといった作業は難工程であり、従来、このような作業は人手により行われることが多かった。そこで、カメラや認識アルゴリズムを用いた機械装置によるこれらの作業の自動化が模索されている。 On production lines, tasks such as removing or assembling wire-like components such as harnesses are difficult processes, and traditionally, such work has often been done manually. Therefore, efforts are being made to automate these tasks using machinery that utilizes cameras and recognition algorithms.
このような作業を自動化するシステムとして、特許文献1には、カメラにより撮像された画像に基づいて線状部材の先端の位置姿勢を計測し、その計測結果を用いてロボットに線状部材の先端を把持させることが開示されている。 Patent Document 1 discloses a system for automating such work, in which the position and orientation of the tip of a linear member are measured based on an image captured by a camera, and the measurement results are used to have a robot grasp the tip of the linear member.
更に、特許文献2には、複数の線状部材が混在し重なり合う場合、ロボットのハンド形状を考慮して、部品とハンドとが干渉せず、かつハンドが2つの線状部材を把持しないように、ハンドに把持させる線状部材を選ぶことも開示されている。 Patent Document 2 also discloses that when multiple linear components are mixed and overlapping, the shape of the robot's hand is taken into consideration to select the linear components to be grasped by the hand so that the part and the hand do not interfere with each other and so that the hand does not grasp two linear components at the same time.
しかしながら、複数の線状部材同士が互いに交差する場合、これら複数の線状部材を撮像した画像において交差状態の判別が困難な場合があり、線状部材が他の線状部材と絡まった状態でロボットに保持されることがあった。 However, when multiple linear components intersect with each other, it can be difficult to determine the intersecting state in an image of these multiple linear components, and linear components may be held by the robot in a state where they are entangled with other linear components.
本発明は、線状部材が他の線状部材と絡まった状態でロボットに保持されるのを抑制することを目的とする。 The present invention aims to prevent linear members from being held by a robot in a state where they are entangled with other linear members.
本開示の第1態様は、処理部が、学習済みモデルを用いて、複数の線状部材を検知可能な濃淡が2値化された画像を取得し、前記画像において線状部材が不連続となっている部分に基づき、互いに交差する少なくとも2つの線状部材の中から上位の線状部材を特定する、ことを特徴とする情報処理方法である。 A first aspect of the present disclosure is an information processing method characterized in that a processing unit uses a trained model to acquire an image in which shades of light and dark are binarized to enable detection of multiple linear members, and identifies a higher-order linear member from among at least two linear members that intersect with each other based on portions in the image where the linear members are discontinuous.
本開示の第2態様は、処理部が、学習済みモデルを用いて、複数の線状部材を検知可能な濃淡が2値化された画像を取得し、前記画像において線状部材が不連続となっている部分に基づき、互いに交差する少なくとも2つの線状部材の中から上位の線状部材を特定する、ことを特徴とする情報処理装置である。 A second aspect of the present disclosure is an information processing device characterized in that a processing unit uses a trained model to acquire an image in which shades of light and dark are binarized to enable detection of multiple linear members, and identifies a higher-ranking linear member from among at least two linear members that intersect with each other based on portions in the image where the linear members are discontinuous.
本開示の第3態様は、ロボットの制御方法であって、学習済みモデルを用いて、複数の線状部材を検知可能な濃淡が2値化された画像を取得し、前記画像において線状部材が不連続となっている部分に基づき、互いに交差する少なくとも2つの線状部材の中から上位の線状部材を特定し、上位の線状部材を前記ロボットに保持させるよう前記ロボットを制御する、ことを特徴とする制御方法である。 A third aspect of the present disclosure is a method for controlling a robot, comprising : using a trained model to obtain an image in which a binary shade is used to detect multiple linear members; identifying a higher-order linear member from among at least two intersecting linear members based on a portion in the image in which the linear members are discontinuous; and controlling the robot to hold the higher-order linear member.
本開示の第4態様は、ロボットと、処理部と、を備えたロボットシステムであって、前記処理部が、学習済みモデルを用いて、複数の線状部材を検知可能な濃淡が2値化された画像を取得し、前記画像において線状部材が不連続となっている部分に基づき、互いに交差する少なくとも2つの線状部材の中から上位の線状部材を特定し、上位の線状部材を前記ロボットに保持させるよう前記ロボットを制御する、ことを特徴とするロボットシステムである。 A fourth aspect of the present disclosure is a robot system including a robot and a processing unit, wherein the processing unit uses a trained model to acquire an image in which shades are binarized to enable detection of multiple linear members, identifies a higher-order linear member from among at least two linear members that intersect with each other based on portions in the image where the linear members are discontinuous, and controls the robot to hold the higher-order linear member.
本発明によれば、線状部材が他の線状部材と絡まった状態でロボットに保持されるのを抑制することができる。 This invention makes it possible to prevent linear members from being held by a robot in a state where they are entangled with other linear members.
以下、本発明を実施するための形態を、図面を参照しながら詳細に説明する。図1は、実施形態に係るロボットシステム10の概略構成を示す説明図である。ロボットシステム10は、ロボット100と、画像処理装置200と、制御装置の一例であるロボットコントローラ300と、撮像部の一例である撮像装置400と、を備える。ロボット100は、産業用ロボットであり、生産ラインに配置され、物品の一例である組立品W20の製造に用いられる。組立品W20は、例えば機器自体又はその機器の部品における最終品又は中間品である。機器は、例えば電子機器、電気機器、光学機器等が挙げられる。 Embodiments of the present invention will be described in detail below with reference to the drawings. FIG. 1 is an explanatory diagram showing the schematic configuration of a robot system 10 according to an embodiment. The robot system 10 includes a robot 100, an image processing device 200, a robot controller 300, which is an example of a control device, and an imaging device 400, which is an example of an imaging unit. The robot 100 is an industrial robot that is placed on a production line and used to manufacture an assembly W20, which is an example of an article. The assembly W20 is, for example, a device itself or a final or intermediate product of a component of that device. Examples of devices include electronic devices, electrical devices, and optical devices.
ロボット100は、マニピュレータである。ロボット100は、不図示の架台に固定される。ロボット100の周囲には、中間品W10が配置される。中間品W10は、複数の線状部材の一例である2つの線状部材W1,W2と、線状部材W1,W2が接続された本体W0と、を有する。線状部材W1は、第1線状部材の一例であり、線状部材W2は、第2線状部材の一例である。各線状部材W1,W2は、可撓性を有する線状の部材であり、例えば信号線や電力線などの電線、光ファイバー、ケーブル、ワイヤハーネスなどが挙げられる。各線状部材W1,W2の先端は、自由端となっており、各線状部材W1,W2の基端は、本体W0に固定された固定端となっている。よって、ロボット100は、各線状部材W1,W2の所定部位を保持して動作することにより、各線状部材W1,W2の先端を任意の位置姿勢に決めることができる。 The robot 100 is a manipulator. The robot 100 is fixed to a stand (not shown). An intermediate product W10 is arranged around the robot 100. The intermediate product W10 has two linear members W1 and W2, which are examples of multiple linear members, and a main body W0 to which the linear members W1 and W2 are connected. The linear member W1 is an example of a first linear member, and the linear member W2 is an example of a second linear member. Each linear member W1 and W2 is a flexible linear member, and examples include electric wires such as signal lines and power lines, optical fibers, cables, and wire harnesses. The tip of each linear member W1 and W2 is a free end, and the base end of each linear member W1 and W2 is a fixed end fixed to the main body W0. Therefore, by holding specific portions of each linear member W1, W2 and operating, the robot 100 can determine the position and orientation of the tip of each linear member W1, W2.
線状部材W1の先端は例えばコネクタA1で構成され、線状部材W2の先端は例えばコネクタA2で構成されている。本体W0は、コネクタA1が組み付けられる組付対象であるコネクタA3と、コネクタA2が組み付けられる組付対象であるコネクタA4と、を有する。ロボット100により、コネクタA1がコネクタA3に組み付けられ、コネクタA2がコネクタA4に組み付けられることで、組立品W20が製造される。 The tip of linear member W1 is, for example, made up of connector A1, and the tip of linear member W2 is, for example, made up of connector A2. Main body W0 has connector A3, which is the assembly object to which connector A1 is to be assembled, and connector A4, which is the assembly object to which connector A2 is to be assembled. Robot 100 assembles connector A1 to connector A3, and connector A2 to connector A4, thereby producing assembly W20.
なお、複数の線状部材が2つの線状部材W1,W2である場合を例に説明するが、これに限定するものではなく、複数の線状部材が3つ以上の線状部材であってもよい。また、各線状部材W1,W2は、各コネクタA1,A2を有するものとして説明するが、コネクタを有していなくてもよい。また、複数の線状部材の色、材質、線径は、同じであってもよいし異なっていてもよい。 Note that while the multiple linear members are explained as two linear members W1 and W2, this is not limiting and the multiple linear members may be three or more linear members. Furthermore, while the multiple linear members W1 and W2 are explained as having connectors A1 and A2, they do not necessarily have to have connectors. Furthermore, the multiple linear members may be the same or different in color, material, and wire diameter.
ロボット100とロボットコントローラ300とは、通信可能に配線で接続される。ロボットコントローラ300と画像処理装置200とは、通信可能に配線で接続される。撮像装置400と画像処理装置200とは、通信可能に有線又は無線で接続される。 The robot 100 and robot controller 300 are connected by wire so that they can communicate with each other. The robot controller 300 and image processing device 200 are connected by wire so that they can communicate with each other. The imaging device 400 and image processing device 200 are connected by wire or wirelessly so that they can communicate with each other.
ロボット100は、ロボットアーム101と、エンドエフェクタの一例、即ち保持機構の一例であるロボットハンド102と、を有する。ロボットアーム101は、例えば垂直多関節のロボットアームである。ロボットハンド102は、ロボットアーム101に支持されている。ロボットハンド102は、ロボットアーム101の所定部位、例えばロボットアーム101の先端部に取り付けられている。ロボットハンド102は、各線状部材W1,W2を保持可能に構成されている。なお、保持機構がロボットハンド102である場合について説明するが、これに限定するものではなく、例えば保持機構が各線状部材W1,W2を吸着することによって各線状部材W1,W2を保持可能な吸着機構であってもよい。本実施形態では、ロボットハンド102は、各線状部材W1,W2を把持可能に構成されている。 The robot 100 has a robot arm 101 and a robot hand 102, which is an example of an end effector, i.e., an example of a holding mechanism. The robot arm 101 is, for example, a vertically articulated robot arm. The robot hand 102 is supported by the robot arm 101. The robot hand 102 is attached to a predetermined portion of the robot arm 101, for example, the tip of the robot arm 101. The robot hand 102 is configured to be able to hold each of the linear members W1 and W2. Note that while the case where the holding mechanism is the robot hand 102 will be described, this is not limiting. For example, the holding mechanism may be a suction mechanism that can hold each of the linear members W1 and W2 by suctioning them. In this embodiment, the robot hand 102 is configured to be able to grasp each of the linear members W1 and W2.
撮像装置400は、第1撮像ユニットの一例であるカメラ401と、第2撮像ユニットの一例であるカメラ402と、を含む、ステレオカメラで構成されている。各カメラ401,402は、被写体を撮像するデジタルカメラであり、撮像によって生成した撮像画像を画像処理装置200に出力する。ここで、画像とは、本実施形態ではデジタルの画像データである。 The imaging device 400 is configured as a stereo camera including a camera 401, which is an example of a first imaging unit, and a camera 402, which is an example of a second imaging unit. Each camera 401, 402 is a digital camera that captures an image of a subject and outputs the captured image generated by the image capture to the image processing device 200. Here, the image refers to digital image data in this embodiment.
撮像装置400は、不図示のフレームに固定されている。各カメラ401,402は、複数の線状部材W1,W2を含む領域を撮像可能な位置に配置されている。換言すると、中間品W10は、複数の線状部材W1,W2が撮像装置400の画角に含まれるようにロボット100の周囲の所定位置に不図示の搬送機構によって搬送される。よって、撮像装置400は、複数の線状部材W1,W2を撮像可能である。 The imaging device 400 is fixed to a frame (not shown). Each camera 401, 402 is positioned so that it can capture an image of an area including multiple linear members W1, W2. In other words, the intermediate product W10 is transported by a transport mechanism (not shown) to a predetermined position around the robot 100 so that the multiple linear members W1, W2 are included in the field of view of the imaging device 400. Therefore, the imaging device 400 can capture images of the multiple linear members W1, W2.
各カメラ401,402は、被写体である複数の線状部材W1,W2を撮像することにより、第1画像の一例として2次元の各画像I11,I12を生成する。各カメラ401,402は、カラー画像を生成するカラーカメラであってもよいが、モノクロ画像を生成するモノクロカメラであってもよい。また、撮像装置400に含まれるカメラの台数が2台である場合について説明するが、1台であってもよいし、3台以上であってもよい。 Each of the cameras 401 and 402 captures an image of a plurality of linear members W1 and W2 as subjects, thereby generating two-dimensional images I11 and I12 as examples of first images. Each of the cameras 401 and 402 may be a color camera that generates a color image, or a monochrome camera that generates a monochrome image. While the imaging device 400 will be described with two cameras, it may also include one camera or three or more cameras.
画像処理装置200は、各カメラ401,402に撮像指令を送って各カメラ401,402に撮像を行わせる。画像処理装置200は、各カメラ401,402によって生成された各画像I11,I12を取得し、取得した各画像I11,I12に画像処理を施す。画像処理装置200は、各画像I11,I12に画像処理を施すことにより、ロボット100の座標系における各線状部材W1,W2の所定部位の位置及び姿勢を計算する。ロボットコントローラ300は、画像処理装置200に計算された各線状部材W1,W2の所定部位の位置及び姿勢に基づいて、ロボット100に線状部材W1,W2の所定部位のいずれかを選択的に保持させる。ロボットコントローラ300は、ロボット100に保持させた線状部材のコネクタが対応するコネクタに組み付けられるようにロボット100の動作を制御する。複数の線状部材W1,W2が順次、本体W0に組み付けられることで、組立品W20が製造される。 The image processing device 200 sends an imaging command to each of the cameras 401 and 402 to cause each of the cameras 401 and 402 to capture an image. The image processing device 200 acquires each of the images I11 and I12 generated by each of the cameras 401 and 402 and performs image processing on each of the acquired images I11 and I12 . By performing image processing on each of the images I11 and I12 , the image processing device 200 calculates the position and orientation of a predetermined portion of each of the linear members W1 and W2 in the coordinate system of the robot 100. The robot controller 300 causes the robot 100 to selectively hold one of the predetermined portions of the linear members W1 and W2 based on the position and orientation of the predetermined portion of each of the linear members W1 and W2 calculated by the image processing device 200. The robot controller 300 controls the operation of the robot 100 so that the connectors of the linear members held by the robot 100 are assembled to the corresponding connectors. A plurality of linear members W1 and W2 are successively assembled to the main body W0 to produce an assembly W20.
画像処理装置200は、本実施形態ではコンピュータで構成されている。図2は、実施形態に係る画像処理装置200の説明図である。画像処理装置200は、本体201と、本体201に接続された表示装置の一例であるディスプレイ202と、本体201に接続された入力装置の一例であるキーボード203及びマウス204と、を有する。 In this embodiment, the image processing device 200 is configured as a computer. Figure 2 is an explanatory diagram of the image processing device 200 according to this embodiment. The image processing device 200 has a main body 201, a display 202 which is an example of a display device connected to the main body 201, and a keyboard 203 and a mouse 204 which are examples of input devices connected to the main body 201.
図1に示すロボットコントローラ300は、本実施形態ではコンピュータで構成されている。ロボットコントローラ300は、ロボット100の動作、即ちロボット100の姿勢を制御することが可能に構成されている。 In this embodiment, the robot controller 300 shown in Figure 1 is configured as a computer. The robot controller 300 is configured to be able to control the movement of the robot 100, i.e., the posture of the robot 100.
図3は、実施形態に係るロボットシステム10におけるコンピュータシステムのブロック図である。画像処理装置200の本体201は、プロセッサの一例であるCPU(Central Processing Unit)251を備える。CPU251は、処理部の一例である。また、本体201は、記憶部として、ROM(Read Only Memory)252、RAM(Random Access Memory)253、及びHDD(Hard Disk Drive)254を備える。また、本体201は、記録ディスクドライブ255、及び入出力インタフェースであるインタフェース256を備える。CPU251、ROM252、RAM253、HDD254、記録ディスクドライブ255、及びインタフェース256は、互いに通信可能にバスで接続されている。 Figure 3 is a block diagram of a computer system in a robot system 10 according to an embodiment. The main body 201 of the image processing device 200 includes a CPU (Central Processing Unit) 251, which is an example of a processor. The CPU 251 is an example of a processing unit. The main body 201 also includes a ROM (Read Only Memory) 252, a RAM (Random Access Memory) 253, and a HDD (Hard Disk Drive) 254 as storage units. The main body 201 also includes a recording disk drive 255 and an interface 256, which is an input/output interface. The CPU 251, ROM 252, RAM 253, HDD 254, recording disk drive 255, and interface 256 are connected via a bus to enable communication with each other.
ROM252には、コンピュータの動作に関する基本プログラムが格納されている。RAM253は、CPU251の演算処理結果等、各種データを一時的に記憶する記憶装置である。HDD254には、CPU251の演算処理結果や外部から取得した各種データ等が記録されると共に、CPU251に、後述する各種処理を実行させるためのプログラム261が記録されている。プログラム261は、CPU251が後述する各種処理を実施可能なアプリケーションソフトウェアである。よって、CPU251は、HDD254に記録されたプログラム261を実行することで、後述する画像処理を実行することが可能となる。記録ディスクドライブ255は、記録ディスク262に記録された各種データやプログラム等を読み出すことができる。 ROM 252 stores basic programs related to the operation of the computer. RAM 253 is a storage device that temporarily stores various data, such as the results of calculations performed by CPU 251. HDD 254 records the results of calculations performed by CPU 251 and various data obtained from external sources, as well as a program 261 that causes CPU 251 to execute various processes, which will be described later. Program 261 is application software that enables CPU 251 to perform various processes, which will be described later. Therefore, by executing program 261 recorded on HDD 254, CPU 251 is able to execute image processing, which will be described later. Recording disk drive 255 can read various data, programs, etc., recorded on recording disk 262.
なお、本実施形態では、コンピュータによって読み取り可能な非一時的な記録媒体がHDD254であり、HDD254にプログラム261が記録されているが、これに限定するものではない。プログラム261は、コンピュータによって読み取り可能な非一時的な記録媒体であれば、いかなる記録媒体に記録されていてもよい。プログラム261をコンピュータに供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、磁気テープ、不揮発性メモリ等を用いることができる。 In this embodiment, the non-transitory computer-readable recording medium is HDD 254, and program 261 is recorded on HDD 254, but this is not limited to this. Program 261 may be recorded on any non-transitory computer-readable recording medium. Examples of recording media that can be used to provide program 261 to a computer include flexible disks, hard disks, optical disks, magneto-optical disks, magnetic tape, and non-volatile memory.
ロボットコントローラ300は、プロセッサの一例であるCPU351を備える。CPU351は、制御部の一例である。また、ロボットコントローラ300は、記憶部として、ROM352、RAM353、及びHDD354を備える。また、ロボットコントローラ300は、記録ディスクドライブ355、及び入出力インタフェースであるインタフェース356を備える。CPU351、ROM352、RAM353、HDD354、記録ディスクドライブ355、及びインタフェース356は、互いに通信可能にバスで接続されている。 The robot controller 300 includes a CPU 351, which is an example of a processor. The CPU 351 is an example of a control unit. The robot controller 300 also includes a ROM 352, a RAM 353, and a HDD 354 as storage units. The robot controller 300 also includes a recording disk drive 355 and an interface 356, which is an input/output interface. The CPU 351, ROM 352, RAM 353, HDD 354, recording disk drive 355, and interface 356 are connected to each other via a bus so that they can communicate with each other.
ROM352には、コンピュータの動作に関する基本プログラムが格納されている。RAM353は、CPU351の演算処理結果等、各種データを一時的に記憶する記憶装置である。HDD354には、CPU351の演算処理結果や外部から取得した各種データ等が記録されると共に、CPU351に、子術する各種処理を実行させるためのプログラム361が記録(格納)されている。プログラム361は、CPU351が後述する各種処理を実施可能なアプリケーションソフトウェアである。よって、CPU351は、HDD354に記録されたプログラム361を実行することで制御処理を実行し、図1のロボット100の動作を制御することが可能となる。記録ディスクドライブ355は、記録ディスク362に記録された各種データやプログラム等を読み出すことができる。 ROM 352 stores basic programs related to the operation of the computer. RAM 353 is a storage device that temporarily stores various data, such as the results of calculations performed by CPU 351. HDD 354 records the results of calculations performed by CPU 351 and various data acquired from external sources, and also records (stores) program 361 for causing CPU 351 to execute various processes. Program 361 is application software that enables CPU 351 to perform various processes described below. Therefore, by executing program 361 recorded on HDD 354, CPU 351 performs control processing and is able to control the operation of robot 100 in Figure 1. Recording disk drive 355 can read various data, programs, etc. recorded on recording disk 362.
なお、本実施形態では、コンピュータによって読み取り可能な非一時的な記録媒体がHDD354であり、HDD354にプログラム361が記録されているが、これに限定するものではない。プログラム361は、コンピュータによって読み取り可能な非一時的な記録媒体であれば、いかなる記録媒体に記録されていてもよい。プログラム361をコンピュータに供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、磁気テープ、不揮発性メモリ等を用いることができる。 In this embodiment, the non-transitory computer-readable recording medium is HDD 354, and program 361 is recorded on HDD 354, but this is not limited to this. Program 361 may be recorded on any non-transitory computer-readable recording medium. Examples of recording media that can be used to provide program 361 to a computer include flexible disks, hard disks, optical disks, magneto-optical disks, magnetic tape, and non-volatile memory.
なお、本実施形態では、画像処理及び制御処理を複数のコンピュータ、即ち複数のCPU251,351で実行するが、これに限定するものではない。画像処理及び制御処理を1つのコンピュータ、即ち1つのCPUで実行するようにしてもよい。この場合、1つのCPUが処理部及び制御部として機能するように構成すればよい。 In this embodiment, image processing and control processing are performed by multiple computers, i.e., multiple CPUs 251, 351, but this is not limited to this. Image processing and control processing may also be performed by a single computer, i.e., a single CPU. In this case, it is sufficient to configure the single CPU to function as both a processing unit and a control unit.
このようなロボットシステム10において、例えば線状部材W1,W2をこの順序で本体W0に組み付ける場合について図4を参照しながら説明する。ロボットコントローラ300は、画像処理装置200に計算された線状部材W1の保持位置を示す3次元座標情報に基づき、ロボットハンド102が保持位置の上方に移動するようにロボットアーム101を制御する。そして、ロボットコントローラ300は、ロボットハンド102に線状部材W1を保持させる。次に、ロボットコントローラ300は、線状部材W1のコネクタA1を本体W0のコネクタA3に組み付けるようロボットアーム101を制御する。ロボットコントローラ300は、コネクタA1をコネクタA3に組み付け完了した後、線状部材W2についても同様の処理動作を繰り返す。これにより、組み付け工程が完了し、組立品W20が製造される。 With reference to Figure 4, a case in which linear members W1 and W2 are assembled in this order to the main body W0 in such a robot system 10 will be described. Based on three-dimensional coordinate information indicating the holding position of linear member W1 calculated by the image processing device 200, the robot controller 300 controls the robot arm 101 to move the robot hand 102 above the holding position. The robot controller 300 then causes the robot hand 102 to hold the linear member W1. Next, the robot controller 300 controls the robot arm 101 to assemble connector A1 of linear member W1 to connector A3 of the main body W0. After completing the assembly of connector A1 to connector A3, the robot controller 300 repeats the same processing operation for linear member W2. This completes the assembly process and produces assembled product W20.
ここで、可撓性を有する線状部材は、柔軟で姿勢が変わりやすい。このため、複数の線状部材のうちの少なくとも2つの線状部材、例えば図5に示すように2つの線状部材W1,W2が、交差してロボット100の周囲に配置されることがある。そして、線状部材W1と線状部材W2とが交差する箇所において線状部材W2が線状部材W1に対して上位に位置していることがある。ここで、上位の線状部材とは、少なくとも2つの線状部材が互いに交差する箇所において、少なくとも2つの線状部材のうち、最も上に位置する線状部材のことである。また、下位の線状部材とは、少なくとも2つの線状部材が互いに交差する箇所において、少なくとも2つの線状部材のうち、最も上に位置する線状部材に対して下に位置する線状部材のことである。図5の例では、組み付けられる前の線状部材W1と線状部材W2とが交差する箇所において、線状部材W2が上位の線状部材であり、線状部材W1が下位の線状部材である。 Here, a flexible linear member is soft and easily changes its posture. For this reason, at least two of the multiple linear members, for example, two linear members W1 and W2 as shown in Figure 5, may be arranged around the robot 100 in an intersecting manner. At the point where linear member W1 and linear member W2 intersect, linear member W2 may be positioned higher than linear member W1. Here, the higher linear member refers to the linear member that is positioned highest among the at least two linear members at the point where the at least two linear members intersect. Furthermore, the lower linear member refers to the linear member that is positioned lower than the linear member that is positioned highest among the at least two linear members at the point where the at least two linear members intersect. In the example of Figure 5, at the point where linear member W1 and linear member W2 intersect before assembly, linear member W2 is the higher linear member and linear member W1 is the lower linear member.
この場合、ロボット100が線状部材W2よりも先に線状部材W1を保持してコネクタA1をコネクタA3に組み付けてしまうと、線状部材W2が線状部材W1に絡まった状態となってしまうことがある。このような状態でロボット100が次に線状部材W2を保持するのは困難であったり、ロボット100が線状部材W2を保持できたとしても、コネクタA2をコネクタA4に組み付けるのが困難であったりすることがある。また、線状部材は、柔軟で姿勢が変わりやすい上に、線状部材自体が小さい(即ち線径が細い)ことがある。そこで、プロジェクターを用いた空間コード化法などで複数の線状部材の交差状態を高精度に3次元計測する方法も考えられるが、この計測方法では計測処理に時間を要してしまい、組立品W20の生産性が低下する。 In this case, if the robot 100 holds the linear member W1 before the linear member W2 and assembles the connector A1 to the connector A3, the linear member W2 may become entangled with the linear member W1. In this state, it may be difficult for the robot 100 to hold the linear member W2 next, or even if the robot 100 can hold the linear member W2, it may be difficult to assemble the connector A2 to the connector A4. Furthermore, linear members are flexible and prone to change position, and the linear members themselves may be small (i.e., have a thin wire diameter). Therefore, a method using a spatial coding method with a projector or other method could be considered to measure the intersection state of multiple linear members in three dimensions with high accuracy, but this measurement method requires a long measurement process, reducing the productivity of the assembly W20.
本実施形態では、画像処理装置200のCPU251は、組付作業の際に線状部材同士が絡まる状況を回避すべく、撮像装置400で撮像された2次元の画像I11,I12のうち少なくとも一方を用いて、線状部材W1,W2の交差状態を判定する。 In this embodiment, the CPU 251 of the image processing device 200 determines the intersection state of the linear members W1 and W2 using at least one of the two-dimensional images I1 1 and I1 2 captured by the imaging device 400 in order to avoid a situation in which the linear members become entangled during assembly work.
図6(a)及び図6(b)は、実施形態に係る処理のフローチャートである。フローチャートには、画像処理方法を含むロボット100の制御方法の各処理が含まれる。図6(a)に示すフローチャートは、事前準備段階を示し、図6(b)に示すフローチャートは、組付作業段階を示す。ここで、CPU251は、プログラム261を実行することにより、以下に示す処理を実施する。また、CPU351は、プログラム361を実行することにより、以下に示す処理を実施する。 Figures 6(a) and 6(b) are flowcharts of processing according to an embodiment. The flowcharts include each process of the robot 100 control method, including the image processing method. The flowchart shown in Figure 6(a) shows the advance preparation stage, and the flowchart shown in Figure 6(b) shows the assembly work stage. Here, CPU 251 executes program 261 to perform the processing described below. Furthermore, CPU 351 executes program 361 to perform the processing described below.
まず、事前準備段階について図6(a)のフローチャートに沿って説明する。図7は、実施形態に係る事前準備段階の説明図である。事前準備段階では、所定モデルの一例として、学習済みモデル260を作成する。 First, the pre-preparation stage will be explained using the flowchart in Figure 6(a). Figure 7 is an explanatory diagram of the pre-preparation stage according to the embodiment. In the pre-preparation stage, a trained model 260 is created as an example of a predetermined model.
なお、この事前準備段階で用意する被写体は、組付作業段階で対象となる中間品W10と同様の構成の中間品とする。即ち、組付作業段階では、中間品W10から組立品W20を製造するが、組付作業段階で製造に用いられる中間品W10と同様の構成であれば、組付作業段階で用いられる中間品W10とは別の中間品を、事前準備段階で用意してもよい。以下、事前準備段階で用いられる中間品は、組付作業段階で用いられる中間品W10と同様の構成であるため、同じ符号を用いて説明する。 The subject prepared in this preliminary preparation stage is an intermediate product with a similar configuration to the intermediate product W10 that will be the target in the assembly stage. In other words, in the assembly stage, an assembled product W20 is manufactured from the intermediate product W10, but an intermediate product other than the intermediate product W10 used in the assembly stage may be prepared in the preliminary preparation stage as long as it has a similar configuration to the intermediate product W10 used in the assembly stage. Below, the intermediate product used in the preliminary preparation stage will be described using the same reference numerals as the intermediate product W10 used in the assembly stage, as it has a similar configuration.
また、事前準備段階における撮像装置400の撮像時間やレンズ絞りなどの露光条件は、組付作業段階と同様に設定にしておくのが好ましい。また、事前準備段階において、撮像装置400が設置される位置や、複数の線状部材W1,W2に照射される照明光などの使用環境も、組付作業段階と同一に設定しておくのが好ましい。なお、事前準備段階では、組付作業段階において使用する撮像装置400を用いる場合について説明するが、これに限定するものではなく、撮像装置400とは異なる撮像装置を用いてもよい。また、この事前準備段階においては、組付作業は行わないため、複数の線状部材W1,W2の周囲にロボット100がなくてもよい。 In addition, it is preferable to set the exposure conditions, such as the imaging time and lens aperture, of the imaging device 400 in the pre-preparation stage to the same as those in the assembly work stage. In addition, it is preferable to set the usage environment, such as the installation position of the imaging device 400 and the illumination light irradiated onto the multiple linear members W1 and W2, in the pre-preparation stage to the same as those in the assembly work stage. Note that, while the pre-preparation stage will be described as using the imaging device 400 that will be used in the assembly work stage, this is not limited to this, and an imaging device different from the imaging device 400 may also be used. Furthermore, since no assembly work is performed in this pre-preparation stage, the robot 100 does not need to be present around the multiple linear members W1 and W2.
ステップS11において、CPU251は、撮像装置400に複数の線状部材W1,W2を撮像させ、撮像装置400から撮像画像である画像I1Aを取得する。このステップS11の処理で取得される画像I1Aは、学習に用いる教師データD1の一部となる。したがって、ステップS11で取得される画像I1Aの数は、多ければ多いほど好ましい。 In step S11, the CPU 251 causes the imaging device 400 to capture images of multiple linear members W1 and W2, and acquires an image I1A, which is an image captured by the imaging device 400. The image I1A acquired in the processing of step S11 becomes part of the training data D1 used for learning. Therefore, the more images I1A acquired in step S11, the better.
ステップS11において、CPU251は、線状部材W1,W2の交差状態を異ならせた幾つかのパターンの線状部材W1,W2を撮像装置400に撮像させて、複数の画像I1Aを取得し、これら画像I1Aを、例えばHDD254等の記憶部に記憶させる。線状部材W1,W2の姿勢を変えるのは、作業者が行ってもよいし、ロボットなどの機構が行ってもよい。 In step S11, the CPU 251 causes the imaging device 400 to capture images of several patterns of linear members W1 and W2 with different intersection states of the linear members W1 and W2, obtains multiple images I1A, and stores these images I1A in a storage unit such as the HDD 254. The posture of the linear members W1 and W2 may be changed by a worker or a mechanism such as a robot.
なお、複数の画像I1Aの中には、線状部材W1,W2同士が交差していない画像も含んでいてもよいし、線状部材W1,W2のいずれか一方が写り込んでいない画像が含んでいてもよい。図8(a)には、複数の画像I1Aのうちの1つの画像I1Aの例を図示している。図8(a)に示す画像I1Aは、濃淡画像である。画像I1Aには、線状部材W1,W2に対応する画像IW1A,IW2Aと、背景に対応する画像IB1Aと、が含まれる。 The multiple images I1A may include images in which the linear members W1 and W2 do not intersect, or images in which neither of the linear members W1 nor W2 is visible. Figure 8(a) shows an example of one of the multiple images I1A. Image I1A shown in Figure 8(a) is a grayscale image. Image I1A includes images IW1A and IW2A corresponding to the linear members W1 and W2, and image IB1A corresponding to the background.
次に、ステップS12において、CPU251は、作業者の指令の下、ステップS11で得られた画像I1Aを元に教師データD1を作成する。本実施形態では、学習処理において、機械学習のアルゴリズムを使用するが、機械学習の中でも特に「教師あり学習」のアルゴリズムを使用する。従ってステップS12では、「教師あり学習」に用いる教師データD1を作成する。教師データD1には、複数の画像I1Aと、複数の画像I1Aと1対1の対応関係にある複数の画像I2Aと、が含まれる。各画像I1Aから各画像I2Aが出力されるように機械学習により学習済みモデル260を作成する。 Next, in step S12, the CPU 251, under the operator's instructions, creates training data D1 based on the image I1A obtained in step S11. In this embodiment, a machine learning algorithm is used in the learning process, and within machine learning, a "supervised learning" algorithm is particularly used. Therefore, in step S12, training data D1 to be used for "supervised learning" is created. The training data D1 includes multiple images I1A and multiple images I2A that have a one-to-one correspondence with the multiple images I1A. A trained model 260 is created by machine learning so that each image I2A is output from each image I1A.
各画像I1Aは、入力画像の一例である。各画像I2Aは、出力画像の一例である。各画像I2Aは、作業者が画像処理装置200を操作することにより、次の手順1~3に従って、対応する画像I1Aに基づいて作成される。 Each image I1A is an example of an input image. Each image I2A is an example of an output image. Each image I2A is created based on the corresponding image I1A by the operator operating the image processing device 200, following steps 1 to 3 below.
手順1:線状部材W1,W2以外(線状部材以外)の背景に相当する画像を単色で塗りつぶした背景画像とする。
手順2:線状部材W1,W2に相当する画像を単色で塗りつぶした線状画像とする。但し、背景画像とは異なる色とする。
手順3:線状部材W1に相当する線状画像と線状部材W2に相当する線状画像との交差部分において、下位の線状部材に相当する線状画像は、不連続とする。また、上位の線状部材に相当する線状画像は、連続とする。線状画像の色と線状画像の色は、背景画像の色と異なっていればよく、互いに同色であってもよいし、互いに異なる色であってもよい。
Step 1: An image corresponding to the background other than the linear members W1 and W2 (other than the linear members) is painted with a single color to create a background image.
Step 2: The images corresponding to the linear members W1 and W2 are filled with a single color to create linear images, which are different from the color of the background image.
Step 3: At the intersection of the linear image corresponding to linear member W1 and the linear image corresponding to linear member W2, the linear image corresponding to the lower linear member is discontinuous. The linear image corresponding to the higher linear member is continuous. The colors of the linear images need only be different from the color of the background image, and may be the same color or different colors.
図8(b)に画像I2Aの一例を示す。図8(b)に示す画像I2Aは、図8(a)に示す画像I1Aに基づいて作成されたものである。画像I2Aにおいて、上位の線状部材に相当する線状画像L1Aと、下位の線状部材に相当する線状画像L2Aとが、交差部分C1Aで一続きとなるか途切れるかに応じて、区別して表現される。ここで、交差部分C1Aにおいて、線状画像L2Aが不連続となる、即ち途切れるとは、線状画像L2Aが線状画像L1Aと接触しないように、線状画像L1Aを挟んで2分割されている状態をいう。このように、交差部分C1Aにおいて、下位の線状部材に対応する線状画像L2Aは、断続的となる。図8(b)に示す画像I2Aにおいて、線状画像L1A,L2Aは、第1色、例えば白色であり、背景画像B1Aは、第1色とは異なる第2色、例えば黒色である。 Figure 8(b) shows an example of image I2A. Image I2A shown in Figure 8(b) was created based on image I1A shown in Figure 8(a). In image I2A, linear image L1A corresponding to the upper linear element and linear image L2A corresponding to the lower linear element are depicted differently depending on whether they are continuous or interrupted at the intersection C1A. Here, when linear image L2A is discontinuous, or interrupted, at intersection C1A, this refers to a state in which linear image L2A is divided into two, sandwiched between linear image L1A, so that linear image L2A does not contact linear image L1A. In this way, linear image L2A corresponding to the lower linear element is intermittent at intersection C1A. In image I2A shown in Figure 8(b), linear images L1A and L2A are a first color, for example, white, and background image B1A is a second color different from the first color, for example, black.
なお、コンピュータが画像I1Aに対して例えば2値化処理などの画像処理を施した場合、その画像処理によって得られる処理画像は、図8(b)に示すような画像I2Aになるとは限らない。例えば、処理画像において、交差する2つの線状画像の間に境界がなく、2つの線状画像が一続きとなることがある。本実施形態では、手順3において、作業者は、画像I1Aから直接、画像I2Aを作成してもよい。また、手順3において、一旦、コンピュータが画像I1Aに対して例えば2値化処理などの画像処理を施し、作業者がその処理画像を修正することで、画像I2Aを作成してもよい。 Note that when a computer performs image processing such as binarization on image I1A, the processed image obtained by that image processing does not necessarily become image I2A as shown in Figure 8(b). For example, in the processed image, there may be no boundary between two intersecting linear images, and the two linear images may become continuous. In this embodiment, in step 3, the operator may create image I2A directly from image I1A. Alternatively, in step 3, the computer may first perform image processing such as binarization on image I1A, and then the operator may modify the processed image to create image I2A.
以上の手順1~3を経ることで、1つの画像I1Aと1つの画像I2Aとのペアが作成される。以上の手順1~3を、全ての画像I1Aに対して実行することで、画像I1Aと画像I2Aとのペアが複数作成される。これら複数のペアで教師データD1が構成されている。 By going through steps 1 to 3 above, a pair of one image I1A and one image I2A is created. By performing steps 1 to 3 above for all images I1A, multiple pairs of images I1A and I2A are created. These multiple pairs make up the training data D1.
次に、ステップS13において、CPU251は、画像I1Aと画像I2Aとを関連付けるように機械学習を行う。このステップS13で用いられる機械学習のアルゴリズムは、例えばPix2Pix(Pixel tо Pixel)である。Pix2Pixは、「教師あり学習」の一種であり、教師データD1に基づいて機械学習をすることにより、入力画像の1ピクセル毎に出力値を推論するアルゴリズムである。良好に学習が進めば、交差部分において上位の線状部材に相当する線状画像は、一続きの単色で塗りつぶされ、交差部分において下位の線状部材に相当する線状画像は、交差部分で途切れた状態で塗りつぶされるように学習される。 Next, in step S13, CPU 251 performs machine learning to associate image I1A with image I2A. The machine learning algorithm used in step S13 is, for example, Pix2Pix (Pixel to Pixel). Pix2Pix is a type of "supervised learning" algorithm that performs machine learning based on training data D1 to infer an output value for each pixel of the input image. If learning progresses smoothly, the linear image corresponding to the upper linear element at the intersection will be filled in with a continuous solid color, and the linear image corresponding to the lower linear element at the intersection will be filled in with a break at the intersection.
このような学習においてPix2Pixが用いられるのは、Pix2Pixが交差状態における線状部材の画像上の濃淡情報から、線状部材が連続なのか不連続なのかを判断するための特徴量を自動で抽出することができるためである。特徴量は、例えば交差部分において下位の線状部材に相当する線状画像に形成される陰影や、交差部分において上位の線状部材に相当する線状画像の色の連続性などである。よって本実施形態では、撮像画像において図8(c)のように交差状態にある2つの線状部材の上下関係が濃淡の特徴として現れない場合は、当該撮像画像を教師データD1から除外しておく。例えば、ドーム照明などで全方位から均一に線状部材に光が当てられ、等しい光量で撮像が行われる場合は、交差部分の近傍で影が形成されず、図8(c)のような状態が発生し得るため、このような撮像により得られる画像は除外される。 Pix2Pix is used in this type of learning because it can automatically extract features from the shading information on images of linear members in an intersection to determine whether the linear members are continuous or discontinuous. Features include, for example, the shadow formed on the linear image corresponding to the lower linear member at the intersection, and the color continuity of the linear image corresponding to the upper linear member at the intersection. Therefore, in this embodiment, if the vertical relationship between two intersecting linear members does not appear as a shading feature in the captured image, as shown in Figure 8(c), the captured image is excluded from the training data D1. For example, if light is irradiated evenly from all directions, such as with dome lighting, and the image is captured with an equal amount of light, no shadows are formed near the intersection, and a situation like that shown in Figure 8(c) may occur, and therefore images obtained by such capture are excluded.
また、機械学習に用いられるアルゴリズムは、Pix2Pixに限定されるものではなく、上述の特徴を抽出する機能を持つものであれば、Pix2Pix以外のアルゴリズムであってもよい。 Furthermore, the algorithm used for machine learning is not limited to Pix2Pix, and any algorithm other than Pix2Pix may be used as long as it has the function of extracting the above-mentioned features.
以上のステップS13の学習により得られた学習済みモデル260は、画像処理装置200の記憶部、例えばHDD254に記憶される。 The trained model 260 obtained by the training in step S13 is stored in a storage unit of the image processing device 200, for example, in the HDD 254.
次に、組付作業段階について図6(b)のフローチャートに沿って説明する。図9は、実施形態に係る組付作業段階の説明図である。なお、ロボット100の近傍には、順次、中間品W10が搬送される。ステップS21において、CPU251は、ロボット100の近傍に搬送された中間品W10の線状部材W1,W2を、撮像装置400に撮像させる。上述したように、この撮像の際の露光時間やレンズ絞りなどの撮像条件や、使用環境は、ステップS11と同じであることが好ましい。 Next, the assembly work stage will be described with reference to the flowchart in Figure 6(b). Figure 9 is an explanatory diagram of the assembly work stage according to the embodiment. Note that the intermediate product W10 is sequentially transported near the robot 100. In step S21, the CPU 251 causes the imaging device 400 to capture images of the linear members W1 and W2 of the intermediate product W10 that have been transported near the robot 100. As described above, it is preferable that the imaging conditions, such as exposure time and lens aperture, and the usage environment during this imaging are the same as those in step S11.
このステップS21の撮像動作により、CPU251は、撮像装置400から図9に示すような画像I1を取得する。画像I1は、第1画像の一例である。画像I1は、濃淡画像である。なお、本実施形態において撮像装置400はステレオカメラであるため、撮像動作により2つの画像I11,I12が得られるが、図9に示す画像I1は、2つの画像I11,I12のうちの一方である。図9に示すように、画像I1には、2つの線状部材W1,W2が写り込んでいる。即ち、画像I1は、線状部材W1,W2に対応する画像IW1,IW2と、背景に対応する画像IB1と、が含まれる。本実施形態では、各線状部材W1,W2においてロボット100に保持させる所定部位の一例である先端が写り込むように撮像される。画像I1において、画像IW1の端点IE1が線状部材W1の先端に相当し、画像IW2の端点IE2が線状部材W2の先端に相当する。 Through the imaging operation of step S21, the CPU 251 acquires an image I1 as shown in FIG. 9 from the imaging device 400. Image I1 is an example of a first image. Image I1 is a grayscale image. In this embodiment, since the imaging device 400 is a stereo camera, two images I11 and I12 are obtained through the imaging operation. Image I1 shown in FIG. 9 is one of the two images I11 and I12. As shown in FIG. 9, two linear members W1 and W2 are captured in image I1. That is, image I1 includes images IW1 and IW2 corresponding to the linear members W1 and W2, and an image IB1 corresponding to the background. In this embodiment, the image is captured so that the tip of each linear member W1 and W2, which is an example of a predetermined portion to be held by the robot 100, is captured. In image I1, end point IE1 of image IW1 corresponds to the tip of linear member W1, and end point IE2 of image IW2 corresponds to the tip of linear member W2.
次に、ステップS22において、CPU251は、ステップS21で撮像された画像I1から線状部材W1,W2の交差状態を推論する。推論には、HDD254に記憶された学習済みモデル260が使用される。即ち、ステップS22において、CPU251は、学習済みモデル260に基づいて画像I1に画像処理を施して画像I2を生成する。換言すると、CPU251は、画像I1を入力画像とし、学習済みモデル260に基づいて画像I1に処理を施すことで、出力画像として画像I2を生成する。画像I2は、第2画像の一例である。 Next, in step S22, the CPU 251 infers the intersection state of the linear members W1 and W2 from the image I1 captured in step S21. For the inference, the trained model 260 stored in the HDD 254 is used. That is, in step S22, the CPU 251 performs image processing on the image I1 based on the trained model 260 to generate an image I2. In other words, the CPU 251 uses the image I1 as an input image and processes the image I1 based on the trained model 260 to generate an image I2 as an output image. Image I2 is an example of a second image.
画像I2には、線状部材W1,W2に対応する線状画像L1,L2が含まれている。図9において、線状画像L1,L2は、第1色、例えば白色であり、背景画像B1は、第1色とは異なる第2色、例えば黒色である。2つの線状画像L1,L2の交差部分において、上位の線状部材に対応する線状画像は一続きの単色の画像となり、下位の線状部材に対応する線状画像は途切れた単色の画像となる。即ち、交差部分において、下位の線状部材に対応する線状画像は、上位の線状部材に対応する線状画像を挟んで断続的となる。 Image I2 includes linear images L1 and L2 corresponding to linear members W1 and W2. In Figure 9, linear images L1 and L2 are a first color, for example, white, and background image B1 is a second color different from the first color, for example, black. At the intersection of two linear images L1 and L2, the linear image corresponding to the higher linear member is a continuous monochromatic image, while the linear image corresponding to the lower linear member is a discontinuous monochromatic image. In other words, at the intersection, the linear image corresponding to the lower linear member is discontinuous, sandwiched between the linear image corresponding to the higher linear member.
図9に示す例において、画像I2には、複数の交差部分C1,C2が含まれている。交差部分C1において、上位の線状部材に対応する第1線状画像は、線状画像L1であり、下位の線状部材に対応する第2線状画像は、線状画像L2である。また、交差部分C2において、上位の線状部材に対応する第1線状画像は、線状画像L2であり、下位の線状部材に対応する第2線状画像は、線状画像L1である。 In the example shown in Figure 9, image I2 includes multiple intersections C1 and C2. In intersection C1, the first linear image corresponding to the higher-level linear member is linear image L1, and the second linear image corresponding to the lower-level linear member is linear image L2. In intersection C2, the first linear image corresponding to the higher-level linear member is linear image L2, and the second linear image corresponding to the lower-level linear member is linear image L1.
以下、画像I2における交差部分C1,C2を検出する方法について説明する。ステップS23~S24において、CPU251は、交差部分の候補となる交差候補を画像I2の中から抽出し、当該交差候補に対して所定演算を行い、所定演算の結果に基づき当該交差候補が交差部分であるかどうかを判定する交差判定処理を実施する。 The method for detecting intersections C1 and C2 in image I2 is described below. In steps S23 and S24, CPU 251 extracts intersection candidates from image I2, performs a predetermined calculation on the intersection candidates, and performs intersection determination processing to determine whether the intersection candidates are intersections based on the results of the calculation.
ステップS23の処理について説明する。まず、CPU251は、画像I2において交差候補を抽出する。以下、図10(a)~図11(b)を用いて交差候補の抽出方法について詳細に説明する。 The processing of step S23 will now be described. First, the CPU 251 extracts intersection candidates in image I2. Below, the method for extracting intersection candidates will be described in detail using Figures 10(a) to 11(b).
まず、図10(a)に示すように、CPU251は、画像I2において、線分画像L11,L12,L21,L22を抽出する。次に、図10(b)に示すように、CPU251は、線分画像L11,L12,L21,L22の各線分画像に対し、それぞれ領域の端点を抽出する。端点の抽出方法は、Harrisnoコーナー検出方法など様々な端点抽出アルゴリズムが知られているが、特に手段は限定しない。このようにして抽出された端点は、図10(b)では端点L11-a,L11-b,L12-a,L21-a,L21-b,L22-aで示されている。次に、CPU251は、それぞれの端点を含む所定の領域を定義し、これを端点領域としてそれぞれの端点に設定する。図10(c)では端点領域T11-a,T11-b,T12-a,T21-a,T21-b,T22-aで示されている。各端点領域は、例えば所定の大きさの矩形領域であり、各端点領域の中心に各端点が存在する。なお、各端点領域の形状は、矩形状に限定するものではなく、種々の形状、例えば円形状であってもよい。 First, as shown in Figure 10(a), CPU 251 extracts line segment images L11, L12, L21, and L22 from image I2. Next, as shown in Figure 10(b), CPU 251 extracts the endpoints of each area for line segment images L11, L12, L21, and L22. Various endpoint extraction algorithms, such as the Harrison corner detection method, are known as methods for extracting endpoints, but no particular method is limited. The endpoints extracted in this manner are shown in Figure 10(b) as endpoints L11-a, L11-b, L12-a, L21-a, L21-b, and L22-a. Next, CPU 251 defines a predetermined area containing each endpoint and sets this as an endpoint area for each endpoint. In Figure 10(c), these are shown as endpoint regions T11-a, T11-b, T12-a, T21-a, T21-b, and T22-a. Each endpoint region is, for example, a rectangular region of a predetermined size, with each endpoint located at the center of the endpoint region. Note that the shape of each endpoint region is not limited to a rectangle, and may be various shapes, such as a circle.
そして、画像I2において少なくとも2つの端点領域が存在する場合、CPU251は、全端点領域の組み合わせにおいて、端点領域内に含まれる線分画像の位置及び向きの位置関係が一定の閾値以内であるか判定する。この判定結果に基づき、一定の閾値以内であれば、その組み合わせの端点領域を含む領域を交差候補として抽出する。 If there are at least two endpoint regions in image I2, CPU 251 determines whether the positional relationship between the positions and orientations of the line segment images contained in the endpoint regions for all combinations of endpoint regions is within a certain threshold. Based on the results of this determination, if the relationship is within the certain threshold, the region containing the endpoint regions of that combination is extracted as an intersection candidate.
以下、2つの線分画像L21,L22を例に具体的に説明する。線分画像L21が第1線分画像の一例、線分画像L22が第2線分画像の一例である。また、線分画像L21の端点L21-bが第1端点の一例、線分画像L22の端点L22-aが第2端点の一例である。端点L21-bを含む端点領域T21-bが第1領域の一例、端点L22-aを含む端点領域T22-aが第2領域の一例である。 The following is a specific explanation using two line segment images L21 and L22 as examples. Line segment image L21 is an example of a first line segment image, and line segment image L22 is an example of a second line segment image. Furthermore, endpoint L21-b of line segment image L21 is an example of a first endpoint, and endpoint L22-a of line segment image L22 is an example of a second endpoint. Endpoint region T21-b, which includes endpoint L21-b, is an example of a first region, and endpoint region T22-a, which includes endpoint L22-a, is an example of a second region.
図11(a)に示すように、CPU251は、端点領域T21-bにおいて線分画像L21に沿う回帰直線LR1と、端点領域T22-aにおいて線分画像L22に沿う回帰直線LR2と、を求める。回帰直線LR1の算出には、線分画像L21において端点領域T21-bに含まれる部分を用いる。回帰直線LR2の算出には、線分画像L22において端点領域T22-aに含まれる部分を用いる。 As shown in FIG. 11(a), the CPU 251 calculates a regression line LR1 that follows the line segment image L21 in the endpoint region T21-b, and a regression line LR2 that follows the line segment image L22 in the endpoint region T22-a. To calculate the regression line LR1, the portion of the line segment image L21 that is included in the endpoint region T21-b is used. To calculate the regression line LR2, the portion of the line segment image L22 that is included in the endpoint region T22-a is used.
CPU251は、回帰直線LR1から線分画像L21の端点L21-bに下した垂線Lp1と、回帰直線LR2から線分画像L22の端点L22-aに下した垂線Lp2との間隔Daを求める。また、CPU251は、回帰直線LR1と回帰直線LR2との交差角度θbを求める。 The CPU 251 calculates the distance Da between the perpendicular line Lp1 drawn from the regression line LR1 to the endpoint L21-b of the line segment image L21 and the perpendicular line Lp2 drawn from the regression line LR2 to the endpoint L22-a of the line segment image L22. The CPU 251 also calculates the intersection angle θb between the regression lines LR1 and LR2.
本実施形態では、CPU251は、所定条件として、間隔Daが閾値THa以下、かつ交差角度θbが閾値THb以下という条件を満たすかどうかを判定する。CPU251は、線分画像L21と線分画像L22との間で所定条件を満たした場合、端点領域T21-bと端点領域T22-aとを包含する領域を、交差候補C11として抽出する。交差候補C11は、例えば端点領域T21-bと端点領域T22-aとを包含する矩形状の最小領域である。なお、交差候補を示す領域の形状は、矩形状に限定するものではなく、種々の形状、例えば円形状であってもよい。 In this embodiment, the CPU 251 determines whether the predetermined conditions are met: the distance Da is equal to or less than the threshold value THa, and the intersection angle θb is equal to or less than the threshold value THb. If the predetermined conditions are met between the line segment images L21 and L22, the CPU 251 extracts the area that includes the endpoint regions T21-b and T22-a as the intersection candidate C11. The intersection candidate C11 is, for example, the smallest rectangular area that includes the endpoint regions T21-b and T22-a. Note that the shape of the area indicating the intersection candidate is not limited to a rectangle, and may be various shapes, such as a circle.
図11(b)では、端点領域T21-b,T22-aの組み合わせを含む領域が所定条件を満たすため、交差候補C11となり、端点領域T11-b,T12-aの組み合わせを含む領域が所定条件を満たすため、交差候補C12となる。よって2つの線分画像の間の途切れた領域を類推することが可能となる。なお、図11(c)において、例えば端点領域T11-aと端点領域T21-aとは所定条件を満たさず、交差候補とはならない。 In Figure 11(b), the area including the combination of endpoint regions T21-b and T22-a satisfies the specified conditions and is therefore an intersection candidate C11, while the area including the combination of endpoint regions T11-b and T12-a satisfies the specified conditions and is therefore an intersection candidate C12. This makes it possible to infer the discontinuous area between the two line segment images. Note that in Figure 11(c), for example, endpoint region T11-a and endpoint region T21-a do not satisfy the specified conditions and are therefore not intersection candidates.
次に、交差候補C11において、CPU251は、線分画像L21と線分画像L22とを所定補間により補間する。所定補間は、直線補間が好ましい。線分画像L21と線分画像L22とを直線補間により補間することで、図11(a)に示す直線状の補間領域R1が求められる。図11(b)に示す交差候補C12においても同様に補間領域が求められる。 Next, for intersection candidate C11, CPU 251 interpolates line segment image L21 and line segment image L22 using a predetermined interpolation method. Linear interpolation is preferably used as the predetermined interpolation method. By linearly interpolating line segment image L21 and line segment image L22, a linear interpolated region R1 shown in Figure 11(a) is obtained. A similar interpolated region is obtained for intersection candidate C12 shown in Figure 11(b).
以上の補間処理により、図12(a)に示すように、交差候補C11に対する補間領域R1と、交差候補C12に対する補間領域R2とが求まる。補間領域R1は、線分画像L21と線分画像L22とをつなぐ画素領域である。補間領域R2は、線分画像L11と線分画像L12とをつなぐ画素領域である。なお、2つの線分画像の間の途切れた領域を類推することが可能な手法であれば、直線補間に限定されるものではない。 Through the above interpolation process, an interpolated region R1 for intersection candidate C11 and an interpolated region R2 for intersection candidate C12 are determined, as shown in Figure 12(a). Interpolated region R1 is a pixel region connecting line segment image L21 and line segment image L22. Interpolated region R2 is a pixel region connecting line segment image L11 and line segment image L12. Note that the method is not limited to linear interpolation, as long as it is possible to infer the discontinuous region between two line segment images.
次に、ステップS24において、CPU251は、交差候補C11において、線分画像L11と、補間領域R1とが重なり合うかどうかを判断する。線分画像L11と補間領域R1とが重なり合う場合、CPU251は、交差候補C11を交差部分C1と判定する。同様に、CPU251は、交差候補C12において、線分画像L22と、補間領域R2とが重なり合うかどうかを判断する。線分画像L22と補間領域R2とが重なり合う場合、CPU251は、交差候補C12を交差部分C2と判定する。なお、線状部材W1,W2の状態によっては、1つの交差部分の場合もあれば、図9に示すように複数の交差部分C1,C2の場合もある。また、交差候補において、1つの線分画像と補間領域とが重なり合わない場合は、当該交差候補は、交差部分ではないと判断される。 Next, in step S24, the CPU 251 determines whether the line segment image L11 and the interpolated region R1 overlap in the intersection candidate C11. If the line segment image L11 and the interpolated region R1 overlap, the CPU 251 determines the intersection candidate C11 to be the intersection portion C1. Similarly, the CPU 251 determines whether the line segment image L22 and the interpolated region R2 overlap in the intersection candidate C12. If the line segment image L22 and the interpolated region R2 overlap, the CPU 251 determines the intersection candidate C12 to be the intersection portion C2. Note that depending on the state of the linear members W1 and W2, there may be one intersection portion, or multiple intersection portions C1 and C2 as shown in Figure 9. Furthermore, if one line segment image and the interpolated region do not overlap in the intersection candidate, the intersection candidate is determined not to be an intersection portion.
図12(b)に示すように、交差部分C1において、一続きとなる線分画像L11は、線状部材W1に対応する線状画像L1であり、補間領域R1で接続される線分画像L21,L22は、線状部材W2に対応する線状画像L2である。CPU251は、交差部分C1において、線状画像L1に対応する線状部材W1を上位の線状部材WUと特定し、線状画像L2に対応する線状部材W2を下位の線状部材WLと特定する。 As shown in Figure 12(b), at the intersection C1, the continuous line segment image L11 is the line image L1 corresponding to the linear member W1, and the line segment images L21 and L22 connected by the interpolated region R1 are the line image L2 corresponding to the linear member W2. At the intersection C1, the CPU 251 identifies the linear member W1 corresponding to the linear image L1 as the upper linear member WU, and identifies the linear member W2 corresponding to the linear image L2 as the lower linear member WL.
次に、ステップS25において、CPU251は、上位の線状部材WUにおいてロボット100に保持させる所定部位の位置、即ち保持位置を求める。本実施形態では、CPU251は、撮像装置400の撮像画像を用いた3次元計測により、保持位置を計算する。図1に示すように、撮像装置400は、互いに間隔をあけて配置された複数のカメラ401,402を有する。カメラ401とカメラ402との間に視差があることにより、被写体である線状部材W1,W2の3次元計測が可能となる。 Next, in step S25, the CPU 251 determines the position of a predetermined part of the upper linear member WU that the robot 100 is to hold, i.e., the holding position. In this embodiment, the CPU 251 calculates the holding position by three-dimensional measurement using images captured by the imaging device 400. As shown in FIG. 1, the imaging device 400 has multiple cameras 401, 402 arranged at intervals. The parallax between camera 401 and camera 402 enables three-dimensional measurement of the linear members W1, W2 that are the subjects.
図13(a)~図13(d)は、実施形態に係る3次元計測の一例の説明図である。上述のステップS21において、CPU251は、カメラ401の撮像動作により生成された図13(a)に示す画像I11と、カメラ402の撮像動作により生成された図13(a)に示す画像I12とを取得する。各画像I11,I12は、濃淡画像である。画像I11には、線状部材W1に対応する画像IW11と、線状部材W2に対応する画像IW21と、が含まれる。画像IW11の端点IE11は、線状部材W1の先端に相当し、画像IW21の端点IE21は、線状部材W2の先端に相当する。画像I12には、線状部材W1に対応する画像IW12と、線状部材W2に対応する画像IW22と、が含まれる。画像IW12の端点IE12は、線状部材W1の先端に相当し、画像IW22の端点IE22は、線状部材W2の先端に相当する。 13A to 13D are explanatory diagrams of an example of three-dimensional measurement according to an embodiment. In step S21 described above, the CPU 251 acquires image I11 shown in FIG. 13A , which is generated by the imaging operation of camera 401, and image I12 shown in FIG. 13A , which is generated by the imaging operation of camera 402. Each of images I11 and I12 is a grayscale image. Image I11 includes image IW11 corresponding to linear member W1 and image IW21 corresponding to linear member W2. End point IE11 of image IW11 corresponds to the tip of linear member W1, and end point IE21 of image IW21 corresponds to the tip of linear member W2. Image I12 includes image IW12 corresponding to linear member W1 and image IW22 corresponding to linear member W2. The end point IE1 2 of the image IW1 2 corresponds to the tip of the linear member W1, and the end point IE2 2 of the image IW2 2 corresponds to the tip of the linear member W2.
そして、上述のステップS22において、CPU251は、学習済みモデル260に基づく推論により、各画像I11,I12から図13(b)に示す各画像I21,I22を生成する。各画像I21,I22は、2値化処理された画像である。画像I21には、線状部材W1、即ち画像IW11と対応する線状画像L11と、線状部材W2、即ち画像IW21に対応する線状画像L21と、が含まれる。画像I22には、線状部材W1、即ち画像IW12に対応する線状画像L12と、線状部材W2、即ち画像IW22と対応する線状画像L22と、が含まれる。そして、上述のステップS23,S24において、CPU251は、交差判定処理を行う。これにより、画像I21において、線状画像L11と線状画像L21との交差部分C11が求まり、画像I22において、線状画像L12と線状画像L22との交差部分C12が求まる。交差部分C11において、線状画像L11が上位の線状部材WUと対応することが特定され、線状画像L21が下位の線状部材WLと対応することが特定される。また、交差部分C12において、線状画像L12が上位の線状部材WUと対応することが特定され、線状画像L22が下位の線状部材WLと対応することが特定される。 Then, in step S22 described above, the CPU 251 generates images I21 and I22 shown in FIG. 13B from images I11 and I12 by inference based on the trained model 260. Images I21 and I22 are binarized images. Image I21 includes a linear image L11 corresponding to linear member W1, i.e., image IW11 , and a linear image L21 corresponding to linear member W2 , i.e., image IW21 . Image I22 includes a linear image L12 corresponding to linear member W1, i.e., image IW12 , and a linear image L22 corresponding to linear member W2, i.e., image IW22 . Then, in steps S23 and S24 described above, the CPU 251 performs intersection determination processing. As a result, in image I2-1 , an intersection C1-1 between linear image L1-1 and linear image L2-1 is determined, and in image I2-2 , an intersection C1-2 between linear image L1-2 and linear image L2-2 is determined. At the intersection C1-1 , it is determined that linear image L1-1 corresponds to the higher linear member WU, and it is determined that linear image L2-1 corresponds to the lower linear member WL. Furthermore, at the intersection C1-2 , it is determined that linear image L1-2 corresponds to the higher linear member WU, and it is determined that linear image L2-2 corresponds to the lower linear member WL.
次に、各画像I21,I22において、上位の線状部材WUに対応する各線状画像L11,L12の端点E11,E12を求める。ここで、ロボット100の周囲において、本体W0が設置される位置と、その本体W0に対する線状部材W1,W2の延びる方向は、予め決まっているものとする。これにより、各画像I21,I22において、各線状部材W1,W2の先端である各コネクタA1,A2に対応する各端点E11,E12が大体どの領域に存在するのか決まる。図13(c)に示すように、CPU251は、各画像I21,I22において、本体W0が存在する位置とは逆の位置から、インターレース状に走査し、上位の線状部材WUに対応する各線状画像L11,L12を探索する。そして、CPU251は、各画像I21,I22において、最初に突き当たる各点を各端点E11,E12として求める。 Next, in each image I21 , I22 , the end points E11 , E12 of each linear image L11 , L12 corresponding to the upper linear member WU are determined. Here, it is assumed that the position where the main body W0 is installed around the robot 100 and the extension direction of the linear members W1, W2 relative to the main body W0 are predetermined. This determines the approximate area in each image I21 , I22 where the end points E11 , E12 corresponding to the connectors A1, A2 at the ends of the linear members W1, W2 are located. As shown in Figure 13(c), the CPU 251 interlaces scans each image I21 , I22 from a position opposite the position where the main body W0 is located to search for each linear image L11 , L12 corresponding to the upper linear member WU. Then, the CPU 251 determines the first points of contact in each of the images I2 1 and I2 2 as the end points E1 1 and E1 2 .
なお、線状部材W1がコネクタを有さない線状部材であっても各端点E11,E12を同様に探索すればよい。また、線状部材においてロボット100に保持させる部位の保持位置は、線状部材の先端から基端に向かって所定長さの分、先端からオフセットさせた位置としてもよい。この場合、図13(d)に示すように、CPU251は、各端点E11,E12を検出した後、各線状画像L11,L12に沿って各端点E11,E12から所定長さオフセットさせた点F11,F12を求める。 Note that even if the linear member W1 is a linear member without a connector, the end points E11 and E12 can be searched for in a similar manner. Furthermore, the holding position of the portion of the linear member that the robot 100 is to hold may be a position offset from the tip by a predetermined length from the tip toward the base end of the linear member. In this case, as shown in FIG. 13( d ), the CPU 251 detects the end points E11 and E12 , and then determines points F11 and F12 that are offset by a predetermined length from the end points E11 and E12 along the linear images L11 and L12 .
以上の処理により求めた各端点E11,E12又は各点F11,F12の各画像I21,I22上の位置に基づき、三角測量の原理により、保持位置の3次元位置を計測することができる。CPU251は、保持位置の情報を、ロボットコントローラ300のCPU351に送信する。ステップS26において、ロボットコントローラ300のCPU351は、受信した保持位置の情報に基づいて、上位の線状部材WUである線状部材W1の所定部位をロボット100に保持させるよう、ロボット100を制御する。そして、CPU351は、線状部材W1のコネクタA1をコネクタA3に組み付けるよう、ロボット100を制御する。これにより、線状部材W1,W2が絡まった状態でロボット100に保持されるのが防止され、組付作業を円滑に行うことができる。 Based on the positions of the endpoints E11 , E12 or the points F11 , F12 on the images I21 , I22 obtained by the above process, the three-dimensional position of the holding position can be measured by the principle of triangulation. The CPU 251 transmits information about the holding position to the CPU 351 of the robot controller 300. In step S26, the CPU 351 of the robot controller 300 controls the robot 100 to hold a predetermined portion of the linear member W1, which is the upper linear member WU, based on the received information about the holding position. The CPU 351 then controls the robot 100 to assemble the connector A1 of the linear member W1 to the connector A3. This prevents the linear members W1, W2 from being held by the robot 100 in an entangled state, allowing for smooth assembly work.
なお、撮像装置400がステレオカメラである場合について説明したが、これに限定されるものでない。例えば撮像装置400が単眼カメラであってもよい。この場合、保持位置の計測は、別の装置を用いて行ってもよい。 Note that while the imaging device 400 has been described as a stereo camera, this is not limiting. For example, the imaging device 400 may be a monocular camera. In this case, the holding position may be measured using a separate device.
上記の例では、線状部材W1,W2の間で交差する箇所が1つの場合について説明したが、線状部材W1,W2の間で交差する箇所が複数ある場合もある。このような場合には、線状部材W1,W2の交差が解消するようにロボット100を動作させてもよい。このような場合の処理について図14(a)~図14(f)を参照しながら説明する。なお、図14(a)~図14(f)には、図1に示す複数のカメラ401,402のうちの一方のカメラから得られる画像I1、又はその画像I1を処理した画像I2のみを図示して説明する。他方のカメラから得られる画像についても、一方のカメラから得られる画像I1と同様の処理を行うため、説明を省略する。 In the above example, a case was described where there is one intersection between linear members W1 and W2, but there may be multiple intersections between linear members W1 and W2. In such cases, robot 100 may be operated to eliminate the intersection between linear members W1 and W2. The processing for such cases will be described with reference to Figures 14(a) to 14(f). Note that Figures 14(a) to 14(f) illustrate and explain only image I1 obtained from one of the multiple cameras 401, 402 shown in Figure 1, or image I2 obtained by processing image I1. The image obtained from the other camera is also processed in the same way as image I1 obtained from one camera, so its description will be omitted.
まず、CPU251は、撮像装置400から図14(a)に示す画像I1を取得する。画像I1において、2つの線状部材W1,W2に対応する2つの画像IW1,IW2は、2回交差するように捻じれた状態となっている。また、画像I1において、画像IW1の端点IE1は、線状部材W1の先端に相当し、画像IW2の端点IE2は、線状部材W2の先端に相当する。 First, the CPU 251 acquires the image I1 shown in FIG. 14(a) from the imaging device 400. In image I1, the two images IW1 and IW2 corresponding to the two linear members W1 and W2 are twisted so that they intersect twice. Also, in image I1, the endpoint IE1 of image IW1 corresponds to the tip of linear member W1, and the endpoint IE2 of image IW2 corresponds to the tip of linear member W2.
CPU251は、学習済みモデル260に基づいて画像I1から図14(b)に示す画像I2を生成し、交差判定処理を行う。これにより、線状部材W1に対応する線状画像L1と、線状部材W2に対応する線状画像L2との間の複数、例えば2つの交差部分C1,C2が検出される。 The CPU 251 generates image I2 shown in FIG. 14(b) from image I1 based on the trained model 260 and performs intersection detection processing. This detects multiple intersections, for example, two intersections C1 and C2, between linear image L1 corresponding to linear member W1 and linear image L2 corresponding to linear member W2.
次に、CPU251は、図14(c)に示すように、交差部分C1,C2のうち、唯一注目する交差部分CCを選択する。捻じれ状態の線状部材W1,W2は、先端から解きほどく必要がある。そのため、CPU251は、画像I2において、本体W0が存在する位置とは逆の位置から、インターレース状に走査することで交差部分を探索し、最初に突き当たる交差部分C1を、注目する交差部分CCとして選択する。なお、インターレース状に走査することによって最初に突き当たる線状画像L1の端点E1から当該線状画像L1を辿って最初に突き当たる交差部分C1を、注目する交差部分CCとしてもよい。 Next, as shown in Figure 14(c), the CPU 251 selects the only intersection CC of the intersections C1 and C2 to be focused on. The twisted linear members W1 and W2 need to be unwound from their tips. Therefore, the CPU 251 searches for an intersection by scanning image I2 in an interlaced manner from the opposite position from where the main body W0 is located, and selects the first intersection C1 encountered as the intersection CC to be focused on. Note that the intersection CC to be focused on may also be determined by tracing the linear image L1 from the endpoint E1 of the linear image L1 that is first encountered by interlaced scanning.
このようにして、注目する交差部分CCが唯一決定されると、当該交差部分CCにおいて、上述した処理で、図14(d)に示すように、上位の線状部材WUと下位の線状部材WLが定義される。このように、CPU251は、線状部材W1,W2のそれぞれの先端から辿って最初に交差する箇所に対して上位の線状部材WUを特定する。なお、交差部分C1において、線状画像L1は、上位の線状部材WUと対応し、線状画像L2は、下位の線状部材WLと対応する。そして、インターレース状に走査することで端点E1が探索され、把持位置が求められる。 Once the unique intersection CC of interest is determined in this way, the above-described process defines the upper linear member WU and the lower linear member WL at that intersection CC, as shown in Figure 14(d). In this way, the CPU 251 identifies the upper linear member WU at the first intersection point by tracing from the tips of the linear members W1 and W2. Note that at the intersection C1, the linear image L1 corresponds to the upper linear member WU, and the linear image L2 corresponds to the lower linear member WL. Then, by scanning interlacedly, the endpoint E1 is searched for, and the grip position is determined.
2つの交差部分C1,C2が存在するため、CPU351は、交差部分C1において上位の線状部材WUである線状部材W1をロボット100に保持させるようロボット100を制御する。その後、CPU351は、上位の線状部材WUが下位の線状部材WLと交差するのが解消されるようにロボット100を制御する。上位の線状部材WUを退避させる位置や場所は、交差部分C1に関わる2次元画像上の線状部材W1,W2の位置関係に基づいて決定する。以上の動作を繰り返すことで、交差部分が1つずつ減っていく。 Because there are two intersections C1 and C2, CPU 351 controls robot 100 to hold linear member W1, which is the upper linear member WU, at intersection C1. CPU 351 then controls robot 100 to eliminate the intersection of the upper linear member WU with the lower linear member WL. The position or location to which the upper linear member WU is retracted is determined based on the positional relationship between linear members W1 and W2 on the two-dimensional image related to intersection C1. By repeating the above operations, the number of intersections is reduced by one.
CPU251は、再度、撮像装置400に線状部材W1,W2を撮像させて、その撮像画像に学習済みモデル260に基づいて画像処理を施し、図14(e)に示すような新たな画像I2を生成する。そして、CPU251は、再度、交差判定処理を行う。図14(e)に示す例では、検出される交差部分が1つの交差部分C2のみである。交差部分C2において、線状画像L2は、上位の線状部材WUと対応し、線状画像L1は、下位の線状部材WLと対応する。そして、図14(f)に示すように、インターレース状に走査することで線状画像L2の端点E2が探索され、把持位置が求められる。その後は、線状部材W2,W1の順に各線状部材W2,W1を本体W0に組み付ければよい。以上の動作により、線状部材W1,W2の絡まりが解消され、円滑に各線状部材W1,W2の組付作業が行われる。 The CPU 251 again causes the imaging device 400 to capture images of the linear members W1 and W2, and performs image processing on the captured image based on the trained model 260 to generate a new image I2 as shown in FIG. 14(e). The CPU 251 then performs the intersection determination process again. In the example shown in FIG. 14(e), only one intersection, C2, is detected. At intersection C2, the linear image L2 corresponds to the upper linear member WU, and the linear image L1 corresponds to the lower linear member WL. Then, as shown in FIG. 14(f), interlaced scanning is performed to search for the endpoint E2 of the linear image L2, and the gripping position is determined. Thereafter, the linear members W2 and W1 can be assembled into the main body W0 in the order of W2, W1. The above operations eliminate tangles between the linear members W1 and W2, facilitating the assembly of the linear members W1 and W2.
以上、本実施形態によれば、線状部材W1,W2を撮像した画像I1により線状部材W1,W2の重なり状態を高精度に判定することができるので、線状部材W1,W2のうち上位の線状部材をロボット100に保持させることができる。即ち、線状部材が他の線状部材と絡まった状態でロボット100に保持されるのが抑制される。例えば、コネクタA2をコネクタA4に組み付け、コネクタA1をコネクタA3に組み付ける際に、図5のような線状部材W1,W2が絡まった状況は回避することができる。よって、組立品W20の生産性が向上する。 As described above, according to this embodiment, the overlapping state of linear members W1 and W2 can be determined with high accuracy using image I1 captured of linear members W1 and W2, allowing the robot 100 to hold the upper linear member of linear members W1 and W2. In other words, this prevents the robot 100 from holding a linear member entangled with other linear members. For example, when assembling connector A2 to connector A4 and connector A1 to connector A3, it is possible to avoid a situation where linear members W1 and W2 become entangled, as shown in Figure 5. This improves the productivity of assembly W20.
また、線状部材W1,W2の交差状態を判定するに当たり、学習済みモデル260を用いて画像I2を生成するようにしたので、撮像装置400に高画素のカメラを適用する必要がない。また、線状部材の保持位置を求めるのに、別途、プロジェクターを用意する必要もなく、細線の厚みを測定するような高精度な3次元計測システムを用意する必要もない。そして、本実施形態では、学習済みモデル260に基づいて生成された画像I2で複数の線状部材W1,W2の交差状態を判定することができるようになるため、簡易かつ軽便な構成で、ロボット100に絡まり無く線状部材を保持させることが可能となる。よって、組立品W20の生産性が向上する。 Furthermore, when determining the intersection state of the linear members W1 and W2, image I2 is generated using the trained model 260, so there is no need to use a high-pixel camera for the imaging device 400. Furthermore, to determine the holding position of the linear member, there is no need to prepare a separate projector, nor is there a need to prepare a highly accurate three-dimensional measurement system that measures the thickness of thin wires. In this embodiment, since the intersection state of multiple linear members W1 and W2 can be determined using image I2 generated based on the trained model 260, it is possible to have the robot 100 hold the linear members without tangling them, with a simple and portable configuration. This improves the productivity of the assembly W20.
なお、本発明は、以上説明した実施形態に限定されるものではなく、本発明の技術的思想内で多くの変形が可能である。また、実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載されたものに限定されない。 The present invention is not limited to the embodiments described above, and many modifications are possible within the technical concept of the present invention. Furthermore, the effects described in the embodiments are merely a list of the most favorable effects resulting from the present invention, and the effects of the present invention are not limited to those described in the embodiments.
上述の実施形態では、教師データD1に用いる画像I2Aが2値化画像である場合について説明したが、これに限定されるものではない。画像I2Aにおいて、複数の線状部材に対応する複数の線状画像の各々を、互いに異なる色にしてもよい。その際、学習済みモデル260に基づいて生成される画像I2において、複数の線状画像は、互いに異なる色とされることになる。 In the above embodiment, we have described a case where image I2A used in training data D1 is a binary image, but this is not limited to this. In image I2A, each of the multiple linear images corresponding to multiple linear components may be a different color. In this case, in image I2 generated based on the trained model 260, the multiple linear images will be a different color.
また、上述の実施形態では、ロボットアーム101が垂直多関節のロボットアームの場合について説明したが、これに限定されるものではない。ロボットアーム101が、例えば、水平多関節のロボットアーム、パラレルリンクのロボットアーム、直交ロボット等、種々のロボットアームであってもよい。またロボットアームの代わりに、制御装置に設けられる記憶装置の情報に基づき、伸縮、屈伸、上下移動、左右移動もしくは旋回の動作またはこれらの複合動作を自動的に行うことができる機械に適用しても構わない。 In addition, in the above embodiment, the robot arm 101 is described as a vertically articulated robot arm, but this is not limited to this. The robot arm 101 may be various robot arms, such as a horizontally articulated robot arm, a parallel link robot arm, or an orthogonal robot. Furthermore, instead of a robot arm, the present invention may be applied to a machine that can automatically perform movements such as extension and contraction, bending and stretching, vertical movement, horizontal movement, or rotation, or a combination of these movements, based on information stored in a storage device provided in the control device.
また、上記の実施形態では、撮像装置400がロボット100以外のフレームに固定される場合について説明したが、これに限定されるものではなく、撮像装置400が例えばロボット100に固定されてもよい。 Furthermore, in the above embodiment, a case was described in which the imaging device 400 was fixed to a frame other than the robot 100, but this is not limited to this, and the imaging device 400 may be fixed to, for example, the robot 100.
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
(Other Examples)
The present invention can also be realized by supplying a program that realizes one or more of the functions of the above-described embodiments to a system or device via a network or a storage medium, and having one or more processors in the computer of the system or device read and execute the program.The present invention can also be realized by a circuit (e.g., an ASIC) that realizes one or more of the functions.
10…ロボットシステム、100…ロボット、200…画像処理装置、251…CPU(処理部)、351…CPU(制御部)、400…撮像装置(撮像部) 10...Robot system, 100...Robot, 200...Image processing device, 251...CPU (processing unit), 351...CPU (control unit), 400...Image capture device (image capture unit)
Claims (22)
学習済みモデルを用いて、複数の線状部材を検知可能な濃淡が2値化された画像を取得し、
前記画像において線状部材が不連続となっている部分に基づき、互いに交差する少なくとも2つの線状部材の中から上位の線状部材を特定する、
ことを特徴とする情報処理方法。 The processing unit
Using the trained model, a binary image with gray levels capable of detecting multiple linear components is obtained,
identifying a higher-ranking linear member from among at least two mutually intersecting linear members based on a portion where the linear members are discontinuous in the image;
1. An information processing method comprising:
ことを特徴とする請求項1に記載の情報処理方法。 A portion where at least two linear members intersect in the image is discontinuous.
2. The information processing method according to claim 1,
前記処理部が、
前記第2線状画像が前記第1線状画像と接触しないように前記第1線状画像を挟んで2分割されている状態となっている場合に前記第2線状画像に対応する線状部材が不連続と判定し、
不連続となっている前記第2線状画像に対応する線状部材を下位の線状部材として特定し、不連続となっていない前記第1線状画像に対応する線状部材を上位の線状部材として特定する、
ことを特徴とする請求項1または2に記載の情報処理方法。 the images include a first linear image corresponding to an upper linear member and a second linear image corresponding to a lower linear member intersecting the upper linear member;
The processing unit
determining that the linear member corresponding to the second linear image is discontinuous when the second linear image is divided into two parts with the first linear image sandwiched between them so as not to come into contact with the first linear image;
Identifying a linear member corresponding to the second linear image that is discontinuous as a lower linear member, and identifying a linear member corresponding to the first linear image that is not discontinuous as a higher linear member.
3. The information processing method according to claim 1, wherein:
前記画像において第1線分画像の第1端点が存在する第1領域と第2線分画像の第2端点が存在する第2領域との間で所定条件を満たせば、前記第1領域及び前記第2領域を包含する領域を交差候補として抽出し、
前記第1線分画像と前記第2線分画像とを所定補間により補間した領域が別の線分画像と重なれば、前記交差候補を交差部分と判定する、
ことを特徴とする請求項1から3のいずれか1項に記載の情報処理方法。 The processing unit
extracting an area including a first area in which a first end point of a first line segment image exists and a second area in which a second end point of a second line segment image exists as an intersection candidate if a predetermined condition is satisfied between the first area and the second area in the image;
If an area obtained by interpolating the first line segment image and the second line segment image using a predetermined interpolation method overlaps with another line segment image, the intersection candidate is determined to be an intersection portion.
4. The information processing method according to claim 1, wherein the first and second inputs are input to the first and second inputs.
ことを特徴とする請求項4に記載の情報処理方法。 The predetermined condition is a condition that a distance between a perpendicular line drawn from a first regression line along the first line segment image to the first endpoint and a perpendicular line drawn from a second regression line along the second line segment image to the second endpoint is within a threshold range, and an intersection angle between the first regression line and the second regression line is within a threshold range.
5. The information processing method according to claim 4.
ことを特徴とする請求項4または5に記載の情報処理方法。 the predetermined interpolation is linear interpolation;
6. The information processing method according to claim 4 or 5.
線状部材のそれぞれの先端が前記画像から検出できるように線状部材を撮像する、
ことを特徴とする請求項1乃至6のいずれか1項に記載の情報処理方法。 Each of the linear members has a free end,
taking an image of the linear members so that the tips of the linear members can be detected from the image;
7. The information processing method according to claim 1, wherein:
前記第1線状部材と前記第2線状部材とが交差する箇所が複数ある場合、前記処理部は、前記第1線状部材及び前記第2線状部材のそれぞれの先端から辿って最初に交差する箇所に対して上位の線状部材を特定する、
ことを特徴とする請求項1乃至7のいずれか1項に記載の情報処理方法。 the at least two linear members include a first linear member and a second linear member that intersect with each other;
When there are a plurality of points where the first linear member and the second linear member intersect, the processing unit traces back from the tip of each of the first linear member and the second linear member to identify a linear member that is higher than the first intersecting point.
8. The information processing method according to claim 1, wherein:
最初に交差する箇所に対して特定した上位の線状部材において最初に検出された端点をロボットに保持させる、
ことを特徴とする請求項8に記載の情報処理方法。 The processing unit
having the robot retain the first detected end point of the identified upper linear member relative to the first intersection;
9. The information processing method according to claim 8.
ことを特徴とする請求項1乃至9のいずれか1項に記載の情報処理方法。 The image is binarized by making the color of the linear members different from the color of the background of the linear members.
10. The information processing method according to claim 1, wherein:
線状部材が撮像された第1画像を取得し、acquiring a first image of the linear member;
前記学習済みモデルを用いて前記第1画像を、線状部材を検出するための前記画像に変換する、converting the first image into the image for detecting linear members using the trained model;
ことを特徴とする請求項1乃至10のいずれか1項に記載の情報処理方法。11. The information processing method according to claim 1.
前記処理部が、The processing unit
前記学習済みモデルを用いて前記第1画像を、線状部材を検出するための前記画像に変換する、converting the first image into the image for detecting linear members using the trained model;
ことを特徴とする請求項11に記載の情報処理方法。12. The information processing method according to claim 11.
ことを特徴とする請求項12に記載の情報処理方法。 The second image used as the training data can be modified by a user.
13. The information processing method according to claim 12 .
上位の線状部材をロボットに保持させるよう前記ロボットを制御した後、上位の線状部材の先端を組付対象に組み付けるよう前記ロボットを制御する、
ことを特徴とする請求項1乃至13のいずれか1項に記載の情報処理方法。 The processing unit
controlling the robot to hold the upper linear member, and then controlling the robot to assemble the tip of the upper linear member to the assembly target;
13. The information processing method according to claim 1 , wherein the first and second inputs are input to the first and second inputs.
上位の線状部材をロボットに保持させるよう前記ロボットを制御した後、上位の線状部材が下位の線状部材と交差するのが解消されるように前記ロボットを制御する、
ことを特徴とする請求項1乃至13のいずれか1項に記載の情報処理方法。 The processing unit
controlling the robot to hold the upper linear member, and then controlling the robot to prevent the upper linear member from crossing the lower linear member;
13. The information processing method according to claim 1 , wherein the first and second inputs are input to the first and second inputs.
ことを特徴とする請求項11乃至13のいずれか1項に記載の情報処理方法。 The first image is acquired by a stereo camera.
13. The information processing method according to claim 12 , wherein the information processing method comprises:
学習済みモデルを用いて、複数の線状部材を検知可能な濃淡が2値化された画像を取得し、
前記画像において線状部材が不連続となっている部分に基づき、互いに交差する少なくとも2つの線状部材の中から上位の線状部材を特定する、
ことを特徴とする情報処理装置。 The processing unit
Using the trained model, a binary image with gray levels capable of detecting multiple linear components is obtained,
identifying a higher-ranking linear member from among at least two mutually intersecting linear members based on a portion where the linear members are discontinuous in the image;
1. An information processing device comprising:
学習済みモデルを用いて、複数の線状部材を検知可能な濃淡が2値化された画像を取得し、
前記画像において線状部材が不連続となっている部分に基づき、互いに交差する少なくとも2つの線状部材の中から上位の線状部材を特定し、
上位の線状部材を前記ロボットに保持させるよう前記ロボットを制御する、
ことを特徴とする制御方法。 A method for controlling a robot, comprising:
Using the trained model, a binary image with gray levels capable of detecting multiple linear components is obtained,
Identifying a higher-ranking linear member from among at least two mutually intersecting linear members based on a portion where the linear members are discontinuous in the image;
controlling the robot to hold the upper linear member;
A control method comprising:
前記処理部が、
学習済みモデルを用いて、複数の線状部材を検知可能な濃淡が2値化された画像を取得し、
前記画像において線状部材が不連続となっている部分に基づき、互いに交差する少なくとも2つの線状部材の中から上位の線状部材を特定し、
上位の線状部材を前記ロボットに保持させるよう前記ロボットを制御する、
ことを特徴とするロボットシステム。 A robot system including a robot and a processing unit,
The processing unit
Using the trained model, a binary image with gray levels capable of detecting multiple linear components is obtained,
Identifying a higher-ranking linear member from among at least two mutually intersecting linear members based on a portion where the linear members are discontinuous in the image;
controlling the robot to hold the upper linear member;
A robot system characterized by:
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021171312A JP7790914B2 (en) | 2021-10-20 | 2021-10-20 | Information processing method, information processing device, control method, robot system, article manufacturing method, program, and recording medium |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021171312A JP7790914B2 (en) | 2021-10-20 | 2021-10-20 | Information processing method, information processing device, control method, robot system, article manufacturing method, program, and recording medium |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2023061438A JP2023061438A (en) | 2023-05-02 |
| JP2023061438A5 JP2023061438A5 (en) | 2025-02-05 |
| JP7790914B2 true JP7790914B2 (en) | 2025-12-23 |
Family
ID=86249662
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2021171312A Active JP7790914B2 (en) | 2021-10-20 | 2021-10-20 | Information processing method, information processing device, control method, robot system, article manufacturing method, program, and recording medium |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7790914B2 (en) |
Citations (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002269539A (en) | 2000-12-01 | 2002-09-20 | Shigehiro Masui | Image processor, image processing method, and computer- readable storage medium with image processing program stored therein, and diagnosis support system using them |
| JP2007207009A (en) | 2006-02-02 | 2007-08-16 | Fujitsu Ltd | Image processing method and image processing apparatus |
| US20150224650A1 (en) | 2014-02-12 | 2015-08-13 | General Electric Company | Vision-guided electromagnetic robotic system |
| JP2015196208A (en) | 2014-03-31 | 2015-11-09 | 本田技研工業株式会社 | Work holding method |
| WO2016158282A1 (en) | 2015-03-31 | 2016-10-06 | 株式会社オートネットワーク技術研究所 | Image acquisition system for wire group processing |
| JP2018014362A (en) | 2016-07-19 | 2018-01-25 | 富士通株式会社 | Manufacturing device for electronic apparatus and cable shape estimation program |
| JP2019207535A (en) | 2018-05-29 | 2019-12-05 | キヤノン株式会社 | Information processing apparatus, information processing method, and program |
| WO2020129176A1 (en) | 2018-12-19 | 2020-06-25 | 株式会社日立国際電気 | Image processing system, image processing method, and image processing program |
| JP2020110881A (en) | 2019-01-15 | 2020-07-27 | 倉敷紡績株式会社 | Tip member position calculation method, tip member gripping method, tip member connecting method, tip member position calculation system, and tip member gripping system |
| JP2020189356A (en) | 2019-05-21 | 2020-11-26 | トヨタ自動車株式会社 | Work-piece identification method |
| JP2021096081A (en) | 2019-12-13 | 2021-06-24 | 倉敷紡績株式会社 | Three-dimensional connector measurement method, connector gripping position calculation method, connector gripping method, connector connection method, and connector |
-
2021
- 2021-10-20 JP JP2021171312A patent/JP7790914B2/en active Active
Patent Citations (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002269539A (en) | 2000-12-01 | 2002-09-20 | Shigehiro Masui | Image processor, image processing method, and computer- readable storage medium with image processing program stored therein, and diagnosis support system using them |
| JP2007207009A (en) | 2006-02-02 | 2007-08-16 | Fujitsu Ltd | Image processing method and image processing apparatus |
| US20150224650A1 (en) | 2014-02-12 | 2015-08-13 | General Electric Company | Vision-guided electromagnetic robotic system |
| JP2015196208A (en) | 2014-03-31 | 2015-11-09 | 本田技研工業株式会社 | Work holding method |
| WO2016158282A1 (en) | 2015-03-31 | 2016-10-06 | 株式会社オートネットワーク技術研究所 | Image acquisition system for wire group processing |
| JP2018014362A (en) | 2016-07-19 | 2018-01-25 | 富士通株式会社 | Manufacturing device for electronic apparatus and cable shape estimation program |
| JP2019207535A (en) | 2018-05-29 | 2019-12-05 | キヤノン株式会社 | Information processing apparatus, information processing method, and program |
| WO2020129176A1 (en) | 2018-12-19 | 2020-06-25 | 株式会社日立国際電気 | Image processing system, image processing method, and image processing program |
| JP2020110881A (en) | 2019-01-15 | 2020-07-27 | 倉敷紡績株式会社 | Tip member position calculation method, tip member gripping method, tip member connecting method, tip member position calculation system, and tip member gripping system |
| JP2020189356A (en) | 2019-05-21 | 2020-11-26 | トヨタ自動車株式会社 | Work-piece identification method |
| JP2021096081A (en) | 2019-12-13 | 2021-06-24 | 倉敷紡績株式会社 | Three-dimensional connector measurement method, connector gripping position calculation method, connector gripping method, connector connection method, and connector |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2023061438A (en) | 2023-05-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN113409384B (en) | Pose estimation method and system of target object and robot | |
| US10179407B2 (en) | Dynamic multi-sensor and multi-robot interface system | |
| US11504853B2 (en) | Robotic system architecture and control processes | |
| US10060857B1 (en) | Robotic feature mapping and motion control | |
| CN106256512B (en) | Robotic device including machine vision | |
| Ponomareva et al. | Grasplook: a vr-based telemanipulation system with r-cnn-driven augmentation of virtual environment | |
| CN111757796B (en) | Front-end moving method of linear object, control device and three-dimensional camera | |
| JP2020024484A (en) | Control system and control device | |
| Caporali et al. | 3D DLO shape detection and grasp planning from multiple 2D views | |
| CN116579532A (en) | System and method for sequencing assembly tasks | |
| JP2018169660A (en) | Object attitude detection apparatus, control apparatus, robot and robot system | |
| Nguyen et al. | Revolutionizing robotized assembly for wire harness: A 3D vision-based method for multiple wire-branch detection | |
| TW202021754A (en) | Automatic positioning method and automatic control apparatus | |
| JP7106571B2 (en) | LINEAR OBJECT GRIP METHOD AND CONTROL DEVICE | |
| JP7790914B2 (en) | Information processing method, information processing device, control method, robot system, article manufacturing method, program, and recording medium | |
| JP6838833B2 (en) | Gripping device, gripping method, and program | |
| Galassi et al. | Cable detection and manipulation for dlo-in-hole assembly tasks | |
| CN116152335A (en) | Apparatus and method for training a machine learning model to generate descriptor images | |
| CN119871404B (en) | Touch servo control method for flexible wire wiring operation | |
| JP6337445B2 (en) | Robot, processing apparatus, and inspection method | |
| JP5868005B2 (en) | Imaging apparatus, imaging condition setting method, program | |
| CN115205371A (en) | Device and method for locating a region of an object from a camera image of the object | |
| JP2025078666A (en) | Robot Control System | |
| CN113297952B (en) | Measuring method and system for rope-driven flexible robot in complex environment | |
| JP7743233B2 (en) | CONTROL DEVICE AND ROBOT CONTROL DEVICE FOR ESTIMATING CONNECTOR FEATURE POINTS, CONNECTOR FEATURE POINT ESTIMATION METHOD, AND SYSTEM |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20241016 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20250124 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20250625 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20250729 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20250925 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20251111 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20251211 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7790914 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |