[go: up one dir, main page]

JP7509535B2 - IMAGE PROCESSING APPARATUS, ROBOT SYSTEM, AND IMAGE PROCESSING METHOD - Google Patents

IMAGE PROCESSING APPARATUS, ROBOT SYSTEM, AND IMAGE PROCESSING METHOD Download PDF

Info

Publication number
JP7509535B2
JP7509535B2 JP2019234841A JP2019234841A JP7509535B2 JP 7509535 B2 JP7509535 B2 JP 7509535B2 JP 2019234841 A JP2019234841 A JP 2019234841A JP 2019234841 A JP2019234841 A JP 2019234841A JP 7509535 B2 JP7509535 B2 JP 7509535B2
Authority
JP
Japan
Prior art keywords
image data
projection
projection image
detection target
target portion
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
Application number
JP2019234841A
Other languages
Japanese (ja)
Other versions
JP2021102253A (en
Inventor
潤 和田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Priority to JP2019234841A priority Critical patent/JP7509535B2/en
Publication of JP2021102253A publication Critical patent/JP2021102253A/en
Application granted granted Critical
Publication of JP7509535B2 publication Critical patent/JP7509535B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本発明は、画像処理装置、ロボットシステム、及び画像処理方法に関する。 The present invention relates to an image processing device, a robot system, and an image processing method.

複数の撮像位置で撮像した画像データから、所定の位置にある被写体を抽出する技術が知られている(例えば、特許文献1)。 There is a known technology for extracting a subject at a specific position from image data captured at multiple imaging positions (for example, see Patent Document 1).

特開平08-210847号公報Japanese Patent Application Laid-Open No. 08-210847

従来、産業機械の分野において、様々な部材が存在するワークセルをカメラで撮像した画像データにおいて、作業対象となる検出対象部を正確に検出する技術が求められている。 In the field of industrial machinery, there has been a demand for technology that can accurately detect the target part to be worked on in image data captured by a camera in a work cell containing various parts.

本開示の一態様において、画像処理装置は、予め定めた複数の撮像位置に配置されたカメラによって検出対象部を撮像した画像データを取得する画像取得部と、第1の撮像位置で撮像された第1の画像データと、第2の撮像位置で撮像された第2の画像データとを、検出対象部の位置に設定された投影面に投影させた投影画像データを生成する投影画像生成部と、投影画像生成部が生成した投影画像データにおいて、第1の画像データに写る検出対象部と、第2の画像データに写る検出対象部とが重複して投影された重複投影画像データを検出する重複検出部とを備える。 In one aspect of the present disclosure, the image processing device includes an image acquisition unit that acquires image data of the detection target portion captured by cameras arranged at a plurality of predetermined imaging positions, a projection image generation unit that generates projection image data by projecting the first image data captured at the first imaging position and the second image data captured at the second imaging position onto a projection surface set at the position of the detection target portion, and an overlap detection unit that detects overlapping projection image data in which the detection target portion captured in the first image data and the detection target portion captured in the second image data are projected in an overlapping manner in the projection image data generated by the projection image generation unit.

本開示の他の態様において、画像処理方法は、予め定めた複数の撮像位置に配置されたカメラによって検出対象部を撮像した画像データを取得し、第1の撮像位置で撮像された第1の画像データと、第2の撮像位置で撮像された第2の画像データとを、検出対象部の位置に設定された投影面に投影させた投影画像データを生成し、生成した投影画像データにおいて、第1の画像データに写る検出対象部と、第2の画像データに写る検出対象部とが重複して投影された重複投影画像データを検出する。 In another aspect of the present disclosure, an image processing method acquires image data of a detection target portion captured by cameras arranged at a plurality of predetermined imaging positions, generates projection image data by projecting first image data captured at the first imaging position and second image data captured at the second imaging position onto a projection surface set at the position of the detection target portion, and detects overlapping projection image data in which the detection target portion captured in the first image data and the detection target portion captured in the second image data are projected in an overlapping manner in the generated projection image data.

本開示によれば、仮に、ワークセル内に、検出対象部以外の物体が存在していたとしても、該物体を誤検出してしまうのを防止し、検出対象部を示す重複投影画像データを、確実且つ自動的に検出することができる。 According to the present disclosure, even if an object other than the detection target is present in the work cell, it is possible to prevent erroneous detection of the object and reliably and automatically detect overlapping projection image data showing the detection target.

一実施形態に係る画像処理装置、カメラ、及び位置測定器のブロック図である。FIG. 2 is a block diagram of an image processing device, a camera, and a position measuring device according to an embodiment. 複数のカメラが撮像位置に配置された状態を示している。A state in which multiple cameras are arranged at image capture positions is shown. 図1に示す画像処理装置の動作フローの一例を示すフローチャートである。2 is a flowchart showing an example of an operation flow of the image processing apparatus shown in FIG. 1 . 第1の撮像位置に配置されたカメラが撮像した画像データの画像の一例である。13 is an example of an image of image data captured by a camera placed at a first imaging position. 第2の撮像位置に配置されたカメラが撮像した画像データの画像の一例である。13 is an example of an image of image data captured by a camera placed at a second imaging position. 投影画像データの画像の一例を示す。1 shows an example of an image of the projection image data. 第2の投影画像データの画像の一例を示す。13 shows an example of an image of the second projection image data. 第1の撮像位置に配置されたカメラが撮像した画像データの画像の他の例である。13 is another example of an image of image data captured by the camera placed at the first imaging position. 第2の撮像位置に配置されたカメラが撮像した画像データの画像の他の例である。13 is another example of an image of image data captured by the camera placed at the second imaging position. 第1の撮像位置に配置されたカメラが撮像した画像データの画像のさらに他の例である。13 is yet another example of an image of image data captured by the camera placed at the first imaging position. 第2の撮像位置に配置されたカメラが撮像した画像データの画像のさらに他の例である。13 is yet another example of an image of image data captured by the camera placed at the second imaging position. 投影画像データの画像の一例を示す。1 shows an example of an image of the projection image data. 図12に示す投影画像データで検出された重複投影画像データを示す。13 shows overlapping projection image data detected from the projection image data shown in FIG. 12 . 他の実施形態に係る画像処理装置、カメラ、及び位置測定器のブロック図である。FIG. 11 is a block diagram of an image processing device, a camera, and a position measuring device according to another embodiment. 一実施形態に係るロボットシステムのブロック図である。FIG. 1 is a block diagram of a robot system according to an embodiment. 図15に示すロボットシステムの図である。FIG. 16 is a diagram of the robot system shown in FIG. 15 . 他の実施形態に係るロボットシステムの図である。FIG. 13 is a diagram of a robot system according to another embodiment.

以下、本開示の実施の形態を図面に基づいて詳細に説明する。なお、以下に説明する種々の実施形態において、同様の要素には同じ符号を付し、重複する説明を省略する。まず、図1を参照して、一実施形態に係る画像処理装置10について説明する。画像処理装置10は、プロセッサ14、メモリ16、及びI/Oインターフェース18を有するコンピュータである。 Embodiments of the present disclosure will be described in detail below with reference to the drawings. Note that in the various embodiments described below, similar elements will be given the same reference numerals and duplicated descriptions will be omitted. First, an image processing device 10 according to one embodiment will be described with reference to FIG. 1. The image processing device 10 is a computer having a processor 14, a memory 16, and an I/O interface 18.

プロセッサ14は、CPU又はGPU等を有し、メモリ16及びI/Oインターフェース18とバス20を介して通信可能に接続されている。プロセッサ14は、メモリ16及びI/Oインターフェース18と通信しつつ、後述する画像処理装置10の機能を実行するための演算処理を行う。メモリ16は、ROM又はRAM等を有し、各種データを一時的又は恒久的に記憶する。I/Oインターフェース18は、イーサネット(登録商標)ポート、USBポート、又はHDMI(登録商標)端子等を有し、プロセッサ14の指令の下、外部機器とデータを通信する。 The processor 14 has a CPU or a GPU, etc., and is communicatively connected to the memory 16 and the I/O interface 18 via a bus 20. The processor 14 performs arithmetic processing to execute the functions of the image processing device 10, which will be described later, while communicating with the memory 16 and the I/O interface 18. The memory 16 has a ROM or a RAM, etc., and temporarily or permanently stores various data. The I/O interface 18 has an Ethernet (registered trademark) port, a USB port, an HDMI (registered trademark) terminal, etc., and communicates data with external devices under the command of the processor 14.

本実施形態においては、画像処理装置10のI/Oインターフェース18に、複数のカメラ22及び24と、位置測定器26とが、無線又は有線で通信可能に接続されている。図2に示すように、カメラ22及び24は、同じ構成を有し、光学レンズ28(フォーカスレンズ等)、及び撮像センサ30(CCD、CMOS等)を有する。 In this embodiment, a plurality of cameras 22 and 24 and a position measuring device 26 are connected to the I/O interface 18 of the image processing device 10 so as to be able to communicate wirelessly or via wires. As shown in FIG. 2, the cameras 22 and 24 have the same configuration and include an optical lens 28 (such as a focus lens) and an image sensor 30 (such as a CCD or CMOS).

カメラ22には、カメラ座標系CC1が設定されている。カメラ座標系CC1は、カメラ22が撮像する画像データの各画素の座標を規定する座標系である。カメラ座標系CC1は、そのx-y平面が、カメラ22の視線方向と直交するように、該カメラ22に対して設定されている。カメラ22は、予め定めた第1の撮像位置Pに配置されている。カメラ22は、第1の撮像位置Pに配置された状態でワークWを撮像する。 A camera coordinate system C 1 C1 is set for the camera 22. The camera coordinate system C 1 C1 is a coordinate system that defines the coordinates of each pixel of image data captured by the camera 22. The camera coordinate system C 1 C1 is set for the camera 22 so that its xy plane is perpendicular to the line of sight of the camera 22. The camera 22 is disposed at a predetermined first imaging position P 1. The camera 22 captures an image of the workpiece W while disposed at the first imaging position P 1 .

一方、カメラ24には、カメラ座標系CC2が設定されている。カメラ座標系CC2は、カメラ24が撮像する画像データの各画素の座標を規定する座標系である。カメラ座標系CC2は、そのx-y平面が、カメラ24の視線方向と直交するように、該カメラ24に対して設定されている。 On the other hand, a camera coordinate system C 1 C2 is set for the camera 24. The camera coordinate system C 1 C2 is a coordinate system that defines the coordinates of each pixel of image data captured by the camera 24. The camera coordinate system C 1 C2 is set for the camera 24 so that its xy plane is perpendicular to the line of sight of the camera 24.

カメラ24は、予め定めた第2の撮像位置Pに配置されている。カメラ24は、第2の撮像位置Pに配置された状態でワークWを撮像する。なお、本稿において、「撮像位置」とは、カメラ22、24の3次元空間内の位置と、該カメラ22、24の姿勢(すなわち、視線方向)とを意味することがある。 The camera 24 is disposed at a predetermined second imaging position P2 . The camera 24 images the workpiece W while disposed at the second imaging position P2 . In this document, the term "imaging position" may refer to the positions of the cameras 22 and 24 in three-dimensional space and the attitudes of the cameras 22 and 24 (i.e., the line of sight).

したがって、第1の撮像位置Pは、該第1の撮像位置Pに配置されたカメラ22のカメラ座標系CC1の原点位置及び各軸の方向によって、表すことができる。同様に、第2の撮像位置Pは、該第2の撮像位置Pに配置されたカメラ24のカメラ座標系CC2の原点位置及び各軸の方向によって、表すことができる。 Therefore, the first imaging position P1 can be represented by the origin position and each axis direction of the camera coordinate system C1 of the camera 22 arranged at the first imaging position P1 . Similarly, the second imaging position P2 can be represented by the origin position and each axis direction of the camera coordinate system C2 of the camera 24 arranged at the second imaging position P2 .

以下の説明においては、第1の撮像位置Pは、該第1の撮像位置Pに配置されたカメラ22のカメラ座標系CC1の原点位置及び各軸の方向を示すことがあり、また、第2の撮像位置Pは、該第2の撮像位置Pに配置されたカメラ24のカメラ座標系CC2の原点位置及び各軸の方向を示すことがある。 In the following description, the first imaging position P1 may refer to the origin position and the direction of each axis of the camera coordinate system C_C1 of the camera 22 arranged at the first imaging position P1 , and the second imaging position P2 may refer to the origin position and the direction of each axis of the camera coordinate system C_C2 of the camera 24 arranged at the second imaging position P2 .

ワークWは、ワークセル内の予め定められた位置に設置されている。本実施形態においては、ワークWは、円柱状であって、その頂端に表面W(検出対象部)を有する。本実施形態においては、表面Wは、円形の輪郭(又はエッジ)Eを有する平面である。一方、ワークセルの3次元空間には、基準座標系Cが設定されている。基準座標系Cは、3次元空間内に固定された固定座標系である。 The workpiece W is placed at a predetermined position in the work cell. In this embodiment, the workpiece W is cylindrical and has a surface W S (detection target portion) at its apex. In this embodiment, the surface W S is a plane having a circular contour (or edge) E. Meanwhile, a reference coordinate system C R is set in the three-dimensional space of the work cell. The reference coordinate system C R is a fixed coordinate system fixed within the three-dimensional space.

基準座標系Cは、例えば、ワークセルの3次元空間を規定するワールド座標系、ワークWに対して設定されるワーク座標系、又は、後述するロボットに対して設定されるロボット座標系等である。本実施形態においては、ワークWは、その表面Wが基準座標系Cのx-y平面と略平行となるように、固定されている。一方、ワークWとは別の位置に、表面Wに類似する形状を有する非検出対象部NWが存在している。この非検出対象部NWは、例えば、ワークセル内の物体に形成された模様等である。 The reference coordinate system C R is, for example, a world coordinate system that defines the three-dimensional space of the work cell, a work coordinate system that is set for the workpiece W, or a robot coordinate system that is set for the robot described below. In this embodiment, the workpiece W is fixed so that its surface W S is approximately parallel to the xy plane of the reference coordinate system C R. Meanwhile, a non-detection target portion NW having a shape similar to the surface W S is present at a position separate from the workpiece W. This non-detection target portion NW is, for example, a pattern formed on an object in the work cell.

第1の撮像位置Pと基準座標系Cとの位置関係は、キャリブレーションによって既知とされている。したがって、第1の撮像位置P(すなわち、図2中のカメラ座標系CC1の原点位置及び各軸の方向)は、基準座標系Cの座標及びベクトル(又は関数)として、表される。カメラ座標系CC1の座標と基準座標系Cの座標とは、第1の座標変換データを介して、相互に変換可能となっている。この第1の座標変換データは、例えばヤコビ行列であって、第1の撮像位置Pと基準座標系Cとのキャリブレーションによって取得され得る。 The positional relationship between the first imaging position P1 and the reference coordinate system C R is known by calibration. Therefore, the first imaging position P1 (i.e., the origin position and the directions of each axis of the camera coordinate system C C1 in FIG. 2) is expressed as coordinates and vectors (or functions) of the reference coordinate system C R. The coordinates of the camera coordinate system C C1 and the coordinates of the reference coordinate system C R can be mutually converted via first coordinate conversion data. This first coordinate conversion data is, for example, a Jacobian matrix, and can be acquired by calibration between the first imaging position P1 and the reference coordinate system C R.

同様に、第2の撮像位置Pと基準座標系Cとの位置関係は、キャリブレーションによって既知とされている。したがって、カメラ座標系CC2の座標と基準座標系Cの座標とは、第2の座標変換データを介して、相互に変換可能となっている。この第2の座標変換データは、例えばヤコビ行列であって、第2の撮像位置Pと基準座標系Cとのキャリブレーションによって取得され得る。 Similarly, the positional relationship between the second imaging position P2 and the reference coordinate system C R is known by calibration. Therefore, the coordinates of the camera coordinate system C C2 and the coordinates of the reference coordinate system C R can be mutually converted via second coordinate conversion data. This second coordinate conversion data is, for example, a Jacobian matrix, and can be acquired by calibration between the second imaging position P2 and the reference coordinate system C R.

第1の撮像位置Pに配置されたカメラ22がワークWを撮像すると、ワークWからの光(すなわち、被写体像)Aは、カメラ22の光学レンズ28によって導光されて、撮像センサ30に結像される。また、非検出対象部NWからの光(被写体像)Aも、カメラ22の光学レンズ28によって導光されて、撮像センサ30に結像される。 When the camera 22 arranged at the first imaging position P1 images the workpiece W, light (i.e., subject image) A1 from the workpiece W is guided by the optical lens 28 of the camera 22 and imaged on the imaging sensor 30. In addition, light (subject image) A2 from the non-detection target portion NW is also guided by the optical lens 28 of the camera 22 and imaged on the imaging sensor 30.

撮像センサ30は、受光した被写体像A及びAを光電変換し、画像データIDを生成する。こうして、カメラ22は、ワークWの画像データIDを撮像する。画像データIDの画像の一例を、図4に示す。画像データIDには、非検出対象部NWとともに、表面Wの輪郭Eが見えるようにワークWが写っている。画像データIDの各画素は、カメラ座標系CC1の座標として表される。 The image sensor 30 photoelectrically converts the received subject images A1 and A2 to generate image data ID1 . In this manner, the camera 22 captures the image data ID1 of the workpiece W. An example of an image of the image data ID1 is shown in Fig. 4. The image data ID1 shows the workpiece W such that the contour E of the surface WS is visible along with the non-detection target portion NW. Each pixel of the image data ID1 is represented as a coordinate in the camera coordinate system C C1 .

同様に、第2の撮像位置Pに配置されたカメラ24がワークWを撮像すると、ワークWからの光(被写体像)Aは、カメラ24の光学レンズ28によって導光されて、撮像センサ30に結像される。また、非検出対象部NWからの光(被写体像)Aも、カメラ24の光学レンズ28によって導光されて、撮像センサ30に結像される。 Similarly, when the camera 24 arranged at the second imaging position P2 images the workpiece W, light (subject image) A3 from the workpiece W is guided by the optical lens 28 of the camera 24 and is imaged on the imaging sensor 30. In addition, light (subject image) A4 from the non-detection target portion NW is also guided by the optical lens 28 of the camera 24 and is imaged on the imaging sensor 30.

撮像センサ30は、受光した被写体像A及びAを光電変換し、画像データIDを生成する。こうして、カメラ24は、ワークWの画像データIDを撮像する。画像データIDの画像の一例を、図5に示す。画像データIDには、非検出対象部NWとともに表面Wの輪郭Eが見えるようにワークWが画像データIDとは異なる位置に写っている。画像データIDの各画素は、カメラ座標系CC2の座標として表される。なお、図2中の被写体像A及びAは、ワークWの表面W(具体的には、輪郭E)の光路をそれぞれ示している。 The image sensor 30 photoelectrically converts the received subject images A3 and A4 to generate image data ID2 . In this way, the camera 24 captures the image data ID2 of the workpiece W. An example of an image of the image data ID2 is shown in Fig. 5. In the image data ID2 , the workpiece W is captured at a position different from that of the image data ID1 so that the contour E of the surface WS can be seen together with the non-detection target portion NW. Each pixel of the image data ID2 is expressed as a coordinate in the camera coordinate system C C2 . Note that the subject images A1 and A3 in Fig. 2 each indicate the optical path of the surface WS of the workpiece W (specifically, the contour E).

位置測定器26は、表面Wの位置を測定する。例えば、位置測定器26は、物体へレーザ光を出射するレーザ出射部と、該物体で反射されたレーザ光を受光する受光部(ともに図示せず)とを有し、三角測距方式により、該物体までの距離を測定する。代替的には、位置測定器26は、2つのカメラを有し、該2つのカメラで撮像した画像から物体までの距離を測定してもよい。 The position measuring device 26 measures the position of the surface W S. For example, the position measuring device 26 has a laser emitting unit that emits a laser beam to an object and a light receiving unit that receives the laser beam reflected by the object (both not shown), and measures the distance to the object by a triangulation method. Alternatively, the position measuring device 26 may have two cameras, and measure the distance to the object from images captured by the two cameras.

本実施形態においては、位置測定器26は、カメラ22に一体に設けられている。すなわち、カメラ22及び位置測定器26は、物体を撮像するとともに該物体までの距離を測定する3次元視覚センサを構成する。位置測定器26は、カメラ22とともに第1の撮像位置Pに配置された状態で、第1の撮像位置PからワークWの表面Wまでの距離dを測定する。 In this embodiment, the position measuring device 26 is provided integrally with the camera 22. That is, the camera 22 and the position measuring device 26 constitute a three-dimensional visual sensor that captures an image of an object and measures the distance to the object. The position measuring device 26, while being disposed at the first imaging position P1 together with the camera 22, measures the distance d1 from the first imaging position P1 to the surface WS of the workpiece W.

一方、第1の撮像位置Pと基準座標系Cの原点との距離dは、既知となっている。したがって、既知の距離dと、位置測定器26が測定した距離dとから、表面Wの、基準座標系Cのz軸方向の位置を求めることができる。図2に示す例では、表面Wは、基準座標系Cのz軸座標z=zの位置にある。 On the other hand, the distance d0 between the first imaging position P1 and the origin of the reference coordinate system C R is known. Therefore, the position of the surface W S in the z-axis direction of the reference coordinate system C R can be obtained from the known distance d0 and the distance d1 measured by the position measuring device 26. In the example shown in Fig. 2, the surface W S is located at the z-axis coordinate z = z0 in the reference coordinate system C R.

一例として、プロセッサ14は、位置測定器26が測定した距離dを、I/Oインターフェース18を介して位置測定器26から取得し、予めメモリに記憶した距離dと、取得した距離dとを用いて、表面Wの基準座標系Cのz軸座標zを演算により求める。代替的には、位置測定器26は、演算用のプロセッサをさらに有し、予め取得した既知の距離dと、測定した距離dとを用いて、表面Wの、基準座標系Cのz軸座標zを演算により求めてもよい。 As an example, the processor 14 acquires the distance d1 measured by the position finder 26 from the position finder 26 via the I/O interface 18, and calculates the z-axis coordinate z0 of the reference coordinate system C R of the surface W S using the distance d0 previously stored in the memory and the acquired distance d1 . Alternatively, the position finder 26 may further have a processor for calculation, and calculates the z-axis coordinate z0 of the surface W S in the reference coordinate system C R using the known distance d0 previously acquired and the measured distance d1 .

次に、図3を参照して、画像処理装置10の動作について説明する。図3に示すフローは、プロセッサ14が、オペレータ、上位コントローラ、又はコンピュータプログラムから起動指令を受け付けたときに、開始する。ステップS1において、プロセッサ14は、カメラ22及び24が撮像した画像データID及びIDを取得する。 Next, the operation of the image processing device 10 will be described with reference to Fig. 3. The flow shown in Fig. 3 starts when the processor 14 receives a start command from an operator, a higher-level controller, or a computer program. In step S1, the processor 14 acquires image data ID1 and ID2 captured by the cameras 22 and 24.

具体的には、カメラ22は、第1の撮像位置Pに配置された状態で画像データIDを撮像し、カメラ24は、第2の撮像位置Pに配置された状態で画像データIDを撮像する。カメラ22及び24は、撮像した画像データID及びIDを、I/Oインターフェース18へ送信する。プロセッサ14は、I/Oインターフェース18を通して画像データID及びIDを取得し、メモリ16に記憶する。このように、本実施形態においては、プロセッサ14は、画像データID及びIDを取得する画像取得部32(図1)として機能する。 Specifically, the camera 22 captures image data ID1 while positioned at a first imaging position P1 , and the camera 24 captures image data ID2 while positioned at a second imaging position P2 . The cameras 22 and 24 transmit the captured image data ID1 and ID2 to the I/O interface 18. The processor 14 acquires the image data ID1 and ID2 through the I/O interface 18 and stores them in the memory 16. Thus, in this embodiment, the processor 14 functions as an image acquisition unit 32 ( FIG. 1 ) that acquires the image data ID1 and ID2 .

ステップS2において、プロセッサ14は、検出対象部としての表面Wの位置の情報を受け付ける。一例として、位置測定器26は、表面Wの位置の情報として、測定した距離dをI/Oインターフェース18へ送信する。I/Oインターフェース18は、距離dを受け付け、プロセッサ14は、I/Oインターフェース18を介して距離dを取得する。そして、プロセッサ14は、距離d及びdを用いて、表面Wの基準座標系Cのz軸座標zを求め、メモリ16に記憶する。 In step S2, the processor 14 receives position information of the surface W S as the detection target portion. As an example, the position measuring device 26 transmits the measured distance d 1 to the I/O interface 18 as the position information of the surface W S. The I/O interface 18 receives the distance d 1 , and the processor 14 acquires the distance d 1 via the I/O interface 18. Then, the processor 14 uses the distances d 0 and d 1 to determine the z-axis coordinate z 0 of the surface W S in the reference coordinate system CR , and stores it in the memory 16.

他の例として、位置測定器26は、距離d及びdを用いて、表面Wの基準座標系Cのz軸座標zを求め、表面Wの位置の情報として、表面Wの座標zをI/Oインターフェース18へ送信する。I/Oインターフェース18は、座標zを受け付け、プロセッサ14は、I/Oインターフェース18を介して座標zを取得して、メモリ16に記憶する。このように本実施形態においては、I/Oインターフェース18は、表面Wの位置の情報を受け付ける情報受付部34(図1)として機能する。 As another example, the position measuring device 26 uses the distances d0 and d1 to determine the z-axis coordinate z0 of the surface W S in the reference coordinate system C R , and transmits the coordinate z0 of the surface W S to the I/O interface 18 as information on the position of the surface W S. The I/O interface 18 receives the coordinate z0 , and the processor 14 acquires the coordinate z0 via the I/O interface 18 and stores it in the memory 16. Thus, in this embodiment, the I/O interface 18 functions as an information receiving unit 34 ( FIG. 1 ) that receives information on the position of the surface W S.

ステップS3において、プロセッサ14は、投影画像データPD(図6)を生成する。具体的には、プロセッサ14は、基準座標系Cにおいて、ステップS2で取得した表面Wの位置(すなわち、座標zの位置)に投影面PPを設定する。その結果、図2に示すように、基準座標系Cにおいて投影面PPが設定される。この投影面PPは、基準座標系Cのx-y平面(すなわち、ワークWの表面W)と平行な仮想平面である。 In step S3, the processor 14 generates the projection image data PD (FIG. 6). Specifically, the processor 14 sets a projection plane PP in the reference coordinate system C R at the position of the surface W S acquired in step S2 (i.e., the position of the coordinate z0 ). As a result, the projection plane PP is set in the reference coordinate system C R as shown in FIG. 2. This projection plane PP is a virtual plane parallel to the xy plane of the reference coordinate system C R (i.e., the surface W S of the workpiece W).

次いで、プロセッサ14は、画像データIDから、表面Wの輪郭Eの画像データID1_Eを抽出する。例えば、プロセッサ14は、ワークWの図面データ(2D又は3DCADモデル)を取得し、表面Wの輪郭Eのモデル形状に類似する形状を画像データIDから検索することによって、画像データIDから輪郭Eの画像データID1_Eを抽出してもよい。 Next, the processor 14 extracts image data ID 1_E of the contour E of the surface W S from the image data ID 1. For example, the processor 14 may obtain drawing data (2D or 3D CAD model) of the workpiece W and extract image data ID 1_E of the contour E from the image data ID 1 by searching the image data ID 1 for a shape similar to the model shape of the contour E of the surface W S.

このとき、輪郭Eに類似する形状を有する非検出対象部NWの輪郭の画像データID1_Nも、画像データID1_Eとともに抽出され得る。同様にして、プロセッサ14は、画像データIDから輪郭Eの画像データID2_Eを抽出する。このとき、非検出対象部NWの輪郭の画像データID2_Nも、画像データID2_Eとともに抽出され得る。 At this time, image data ID1_N of the contour of the non-detection target portion NW having a shape similar to the contour E can also be extracted together with the image data ID1_E . Similarly, the processor 14 extracts image data ID2_E of the contour E from the image data ID2 . At this time, image data ID2_N of the contour of the non-detection target portion NW can also be extracted together with the image data ID2_E .

次いで、プロセッサ14は、抽出した画像データID1_E及びID1_Nと、画像データID2_E及びID2_Nとを、設定した投影面PPに投影させる。具体的には、プロセッサ14は、第1の撮像位置Pと基準座標系Cとの位置関係を示す第1の座標変換データを用いて、画像データID1_E及びID1_Nの各画素のカメラ座標系CC1の座標を、基準座標系Cにおけるz軸座標zの位置でのx-y座標に変換する。 Next, the processor 14 projects the extracted image data ID1_E and ID1_N and the image data ID2_E and ID2_N onto the set projection plane PP. Specifically, the processor 14 converts the coordinates of each pixel of the image data ID1_E and ID1_N in the camera coordinate system C1 into x-y coordinates at the position of the z-axis coordinate z0 in the reference coordinate system C1 , using the first coordinate conversion data indicating the positional relationship between the first imaging position P1 and the reference coordinate system C2R .

該x-y座標に変換された各点は、被写体像A及びAを受光した撮像センサ30の各画素から該被写体像A及びAの光路に沿って延びる線と投影面PPとの交点であって、これら交点の基準座標系Cの座標は、投影面PPの位置が既知であれば、第1の座標変換データを用いた座標変換によって求めることができる。こうして、画像データID1_Eを投影面PPに投影させた輪郭投影画像データPE(図6)と、画像データID1_Nを投影面PPに投影させた輪郭投影画像データPNとを、生成することができる。 Each point converted into the xy coordinates is an intersection point between the projection plane PP and a line extending from each pixel of the image sensor 30 that receives the subject images A1 and A2 along the optical path of the subject images A1 and A2 , and the coordinates of these intersection points in the reference coordinate system CR can be obtained by coordinate transformation using the first coordinate transformation data if the position of the projection plane PP is known. In this way, it is possible to generate contour projection image data PE1 (FIG. 6) in which image data ID1_E is projected onto the projection plane PP, and contour projection image data PN1 in which image data ID1_N is projected onto the projection plane PP.

同様にして、プロセッサ14は、第2の撮像位置Pと基準座標系Cとの位置関係を示す第2の座標変換データと、投影面PPの座標zとを用いて、画像データID2_E及びID2_Nを投影面PPに投影させる。その結果、画像データID2_Eを投影面PPに投影させた輪郭投影画像データPEと、画像データID2_Nを投影面PPに投影させた輪郭投影画像データPNとを、生成することができる。 Similarly, the processor 14 projects the image data ID2_E and ID2_N onto the projection plane PP using the second coordinate transformation data indicating the positional relationship between the second imaging position P2 and the reference coordinate system CR and the coordinate z0 of the projection plane PP. As a result, it is possible to generate contour projection image data PE2 by projecting the image data ID2_E onto the projection plane PP , and contour projection image data PN2 by projecting the image data ID2_N onto the projection plane PP.

次いで、プロセッサ14は、投影面PPにおける投影画像データPDの範囲を画定する画像枠Fを設定し、図6に示すような投影画像データPDを生成する。したがって、本実施形態においては、プロセッサ14は、投影画像データPDを生成する投影画像生成部36(図1)として機能する。 Next, the processor 14 sets an image frame F that defines the range of the projection image data PD on the projection surface PP, and generates the projection image data PD as shown in FIG. 6. Therefore, in this embodiment, the processor 14 functions as a projection image generator 36 (FIG. 1) that generates the projection image data PD.

なお、プロセッサ14は、生成した画像枠Fの投影画像データPDを、表示装置に表示させてもよい。また、生成する投影画像データPDの画像枠Fの投影面PP上の位置及びサイズは、オペレータが手動で設定してもよい。この場合において、プロセッサ14は、オペレータから、画像枠Fの縦横サイズを、基準座標系Cのy軸の座標範囲とx軸の座標の範囲の入力として受け付けてもよい。又は、プロセッサ14は、輪郭投影画像データPE、PE、PN、PNを含むように自動で設定してもよい。 The processor 14 may display the projection image data PD of the generated image frame F on a display device. The position and size of the generated projection image data PD on the projection surface PP of the image frame F may be set manually by an operator. In this case, the processor 14 may receive the vertical and horizontal sizes of the image frame F as inputs of the y-axis coordinate range and the x-axis coordinate range of the reference coordinate system CR from the operator. Alternatively, the processor 14 may automatically set the image frame F to include the contour projection image data PE1 , PE2 , PN1 , and PN2 .

投影画像データPDの各画素は、投影座標系Cによって座標化される。投影座標系Cは、その原点が基準座標系Cのz軸座標zの位置に配置され、そのx軸及びy軸が投影面PPと平行となる座標系である。投影座標系Cと基準座標系Cとは、設定される画像枠Fに応じた既知の位置関係となる。なお、本実施形態においては、投影座標系Cのx軸及びy軸が、それぞれ、基準座標系Cのx軸及びy軸と平行となるように、画像枠Fが設定されている。 Each pixel of the projection image data PD is expressed as a coordinate by the projection coordinate system CP . The projection coordinate system CP is a coordinate system whose origin is located at the z-axis coordinate z0 of the reference coordinate system CR , and whose x-axis and y-axis are parallel to the projection surface PP. The projection coordinate system CP and the reference coordinate system CR have a known positional relationship according to the image frame F that is set. In this embodiment, the image frame F is set so that the x-axis and y-axis of the projection coordinate system CP are parallel to the x-axis and y-axis of the reference coordinate system CR , respectively.

投影座標系Cにおけるx軸及びy軸方向のサイズと、基準座標系Cにおけるx軸及びy軸方向のサイズとは、設定された画像枠Fのサイズに応じて互いに対応付けられている(例えば、投影座標系Cのx軸方向の距離「1」は、基準座標系Cのx軸方向の距離「10」に対応する)。 The sizes in the x-axis and y-axis directions in the projection coordinate system C P and the sizes in the x-axis and y-axis directions in the reference coordinate system C R correspond to each other according to the size of the set image frame F (for example, a distance of "1" in the x-axis direction in the projection coordinate system C P corresponds to a distance of "10" in the x-axis direction in the reference coordinate system C R ).

このように、投影座標系Cと基準座標系Cとは、既知の位置関係となっており、投影座標系Cの原点位置及び各軸の方向は、基準座標系Cの座標及びベクトル(又は関数)として、表すことができる。したがって、投影座標系Cの座標と、基準座標系Cの座標とは、第3の座標変換データを介して、相互に変換可能となっている。 In this way, the projected coordinate system C 1 P and the reference coordinate system C 1 R have a known positional relationship, and the origin position and the directions of each axis of the projected coordinate system C 1 P can be expressed as coordinates and vectors (or functions) of the reference coordinate system C 1 R. Therefore, the coordinates of the projected coordinate system C 1 P and the coordinates of the reference coordinate system C 1 R can be mutually converted via the third coordinate conversion data.

ステップS4において、プロセッサ14は、投影画像データPDにおいて、画像データIDに写る画像データID1_Eと、画像データIDに写る画像データID2_Eとが重複して投影された重複投影画像データODを検出する。ここで、カメラ22に入射する表面Wの被写体像Aと、カメラ24に入射する表面Wの被写体像Aとは、表面Wの位置で一致する。 In step S4, the processor 14 detects overlapped projection image data OD in which image data ID 1_E reflected in image data ID 1 and image data ID 2_E reflected in image data ID 2 are projected in an overlapping manner in the projection image data PD. Here, the subject image A1 of the surface WS incident on the camera 22 and the subject image A3 of the surface WS incident on the camera 24 coincide with each other at the position of the surface WS .

換言すれば、カメラ22が撮像した表面Wの輪郭Eの画像データID1_Eを、表面Wの位置に設定した投影面PPへ投影した投影位置と、カメラ24が撮像した表面Wの輪郭Eの画像データID2_Eを、表面Wの位置に設定した投影面PPへ投影した投影位置とは、互いに一致する。この一致した投影位置において、画像データID1_Eと画像データID2_Eとが重複して投影されて、投影画像データPDにおいて重複投影画像データODを形成する。 In other words, the projection position where the image data ID1_E of the contour E of the surface WS captured by the camera 22 is projected onto the projection plane PP set at the position of the surface WS coincides with the projection position where the image data ID2_E of the contour E of the surface WS captured by the camera 24 is projected onto the projection plane PP set at the position of the surface WS . At this coincident projection position, the image data ID1_E and the image data ID2_E are projected in an overlapping manner to form overlapping projection image data OD in the projection image data PD.

その一方で、カメラ22が撮像した非検出対象部NWの輪郭の画像データID1_Nを投影面PPへ投影した投影位置と、カメラ24が撮像した非検出対象部NWの輪郭の画像データID2_Nを投影面PPへ投影した投影位置とは、互いからずれることになる(輪郭投影画像データPN、PN)。プロセッサ14は、重複投影画像データODを投影画像データPDから検出する。 On the other hand, the projection position where the image data ID1_N of the contour of the non-detection target portion NW captured by the camera 22 is projected onto the projection surface PP and the projection position where the image data ID2_N of the contour of the non-detection target portion NW captured by the camera 24 is projected onto the projection surface PP are shifted from each other (contour projection image data PN1 , PN2 ). The processor 14 detects the overlapping projection image data OD from the projection image data PD.

一例として、プロセッサ14は、投影画像データPDの各画素の明るさを、画像データIDから投影された輪郭投影画像データPE又はPNを写している場合は「1」としてカウントする一方、輪郭投影画像データPE及びPNのいずれも写さない場合は「0」としてカウントする。 As an example, the processor 14 counts the brightness of each pixel of the projection image data PD as "1" if it represents the contour projection image data PE1 or PN1 projected from the image data ID1 , and counts it as "0" if it represents neither the contour projection image data PE1 nor PN1 .

また、プロセッサ14は、投影画像データPDの各画素の明るさを、画像データIDから投影された輪郭投影画像データPE又はPNを写している場合は「1」としてカウントする一方、輪郭投影画像データPE及びPNのいずれも写さない場合は「0」としてカウントする。 In addition, the processor 14 counts the brightness of each pixel of the projection image data PD as "1" if it represents the contour projection image data PE2 or PN2 projected from the image data ID2 , and counts it as "0" if it represents neither the contour projection image data PE2 nor PN2 .

そして、プロセッサ14は、投影画像データPDの各画素において、カウントした明るさを加算する。この場合、画像データIDから投影された輪郭投影画像データPE又はPNと、画像データIDから投影された輪郭投影画像データPE又はPNとの双方を写す画素(すなわち、投影画像データPE又はPNと、投影画像データPE又はPNとが重複して投影された画素)の明るさは、「2」となる。 Then, the processor 14 adds up the counted brightness for each pixel of the projection image data PD. In this case, the brightness of a pixel that includes both the contour projection image data PE1 or PN1 projected from the image data ID1 and the contour projection image data PE2 or PN2 projected from the image data ID2 (i.e., a pixel onto which the projection image data PE1 or PN1 and the projection image data PE2 or PN2 are overlappingly projected) becomes " 2 ".

一方、画像データIDから投影された輪郭投影画像データPE又はPNと、画像データIDから投影された輪郭投影画像データPE又はPNとのいずれか一方を写す画素の明るさは「1」となり、輪郭投影画像データPE、PN、PE及びPNのいずれも写していない画素の明るさは「0」となる。 On the other hand, the brightness of a pixel that represents either the contour projection image data PE1 or PN1 projected from image data ID1 , or the contour projection image data PE2 or PN2 projected from image data ID2 , is "1", and the brightness of a pixel that represents none of the contour projection image data PE1 , PN1 , PE2 , or PN2 is "0".

プロセッサ14は、投影画像データPDにおいて明るさが「2」となる画素を抽出し、抽出した画素が写す画像データを、重複投影画像データODとして検出する。このように、本例では、プロセッサ14は、投影画像データPDの画素の明るさに基づいて、重複投影画像データODを検出する。なお、輪郭投影画像データPE、PN、PE、PNを写す又は写さない画素の明るさは、「0」、「1」の2値に限らず、他の如何なる値に設定されてもよい。 The processor 14 extracts pixels with a brightness of "2" in the projection image data PD, and detects the image data represented by the extracted pixels as overlapped projection image data OD. Thus, in this example, the processor 14 detects the overlapped projection image data OD based on the brightness of the pixels in the projection image data PD. Note that the brightness of pixels representing or not representing the contour projection image data PE1 , PN1 , PE2 , PN2 is not limited to the binary values of "0" and "1", and may be set to any other value.

他の例として、プロセッサ14は、投影画像データPDから、各々の輪郭投影画像データPE、PN、PE及びPNの形状を抽出し、輪郭投影画像データPE、PN、PE及びPNの、互いに対応する特徴点(中心点、頂点、エッジ等)を特定する。本実施形態においては、プロセッサ14は、該特徴点として、輪郭投影画像データPEの中心点CE、輪郭投影画像データPEの中心点CE、輪郭投影画像データPNの中心点CN、及び輪郭投影画像データPNの中心点CNを特定する。 As another example, the processor 14 extracts the shape of each of the contour projection image data PE1 , PN1 , PE2 and PN2 from the projection image data PD and identifies corresponding feature points (center points, vertices, edges, etc.) of the contour projection image data PE1 , PN1 , PE2 and PN2 . In this embodiment, the processor 14 identifies the center point CE1 of the contour projection image data PE1 , the center point CE2 of the contour projection image data PE2 , the center point CN1 of the contour projection image data PN1 and the center point CN2 of the contour projection image data PN2 as the feature points.

そして、プロセッサ14は、特定した特徴点(中心点)CE、CE、CN及びCNの投影座標系Cの座標を取得し、複数の輪郭投影画像データPE、PN、PE及びPNのうち、2つの輪郭投影画像データの特徴点の距離dを算出する。プロセッサ14は、距離dが予め定めた閾値dthよりも小さい場合に、該2つの輪郭投影画像データのうちの一方を重複投影画像データODとして検出する。 Then, the processor 14 acquires the coordinates of the identified feature points (center points) CE1 , CE2 , CN1 and CN2 in the projection coordinate system CP , and calculates the distance d between the feature points of two of the plurality of contour projection image data PE1 , PN1 , PE2 and PN2 . If the distance d is smaller than a predetermined threshold dth , the processor 14 detects one of the two contour projection image data as overlapping projection image data OD.

ここで、距離dは、投影画像データPDにおける2つの輪郭投影画像データの位置が一致しているか否かを定量的に示すパラメータであって、図6に示す例では、特徴点CE及びCEの間の距離dが、例えば特徴点CN及びCNの間の距離dよりも、小さくなっている(具体的には、d≒0)。よって、距離dが閾値dthよりも小さい場合は、2つの輪郭投影画像データPE及びPEの位置が一致し、該位置において画像データID1_Eと画像データID2_Eとが重複して投影されていると見做すことができる。 6, the distance dE between the feature points CE1 and CE2 is smaller than the distance dN between the feature points CN1 and CN2 (specifically, dE ≈ 0). Therefore, when the distance d is smaller than the threshold value dth , it can be considered that the positions of the two contour projection image data PE1 and PE2 match, and that the image data ID1_E and the image data ID2_E are projected in an overlapping manner at that position.

図6に示す例では、プロセッサ14は、特徴点CE及びCEの距離dが閾値dthよりも小さいと判定し、輪郭投影画像データPE及びPEの一方を、重複投影画像データODとして検出する。以上のような方法で、プロセッサ14は、重複投影画像データODを検出できる。したがって、本実施形態においては、プロセッサ14は、重複投影画像データODを検出する重複検出部38(図1)として機能する。 In the example shown in Fig. 6, the processor 14 determines that the distance dE between the feature points CE1 and CE2 is smaller than the threshold value dth , and detects one of the contour projection image data PE1 and PE2 as overlapping projection image data OD. In the above-mentioned manner, the processor 14 can detect the overlapping projection image data OD. Therefore, in this embodiment, the processor 14 functions as the overlap detection unit 38 (Fig. 1) that detects the overlapping projection image data OD.

ステップS5において、プロセッサ14は、ステップS4で検出した重複投影画像データODに基づいて、基準座標系Cにおける表面Wの位置データを取得する。具体的には、プロセッサ14は、投影画像データPDを画像処理し、重複投影画像データODの形状を抽出する。このとき、プロセッサ14は、重複投影画像データODの画像の輪郭線を滑らかに接続する画像フィルタ処理を実行し、重複投影画像データODを更新してもよい。 In step S5, the processor 14 obtains position data of the surface WS in the reference coordinate system CR based on the overlapping projection image data OD detected in step S4. Specifically, the processor 14 performs image processing on the projection image data PD to extract the shape of the overlapping projection image data OD. At this time, the processor 14 may execute image filtering processing to smoothly connect the contour lines of the images of the overlapping projection image data OD, and update the overlapping projection image data OD.

そして、プロセッサ14は、重複投影画像データODの投影座標系Cの位置を取得する。例えば、プロセッサ14は、重複投影画像データODの投影座標系Cの位置として、重複投影画像データODの特徴点(中心点CO)を画像処理により特定し、該特徴点COの投影座標系Cにおける座標(x,y)を取得する。なお、この特徴点COは、上述の特徴点CE又はCEに略一致する。 Then, the processor 14 acquires the position of the projection coordinate system CP of the overlapped projection image data OD. For example, the processor 14 identifies a feature point (center point CO) of the overlapped projection image data OD by image processing as the position of the projection coordinate system CP of the overlapped projection image data OD, and acquires the coordinates ( xP , yP ) of the feature point CO in the projection coordinate system CP. Note that this feature point CO substantially coincides with the above-mentioned feature point CE1 or CE2 .

そして、プロセッサ14は、投影座標系Cの座標(x,y)を、投影面PPの座標zと第3の座標変換データとを用いて、基準座標系Cの座標(x,y,z)に変換する。この座標(x,y,z)は、基準座標系Cにおける表面Wの特徴点(中心点)の位置を示す位置データとなる。このように本実施形態においては、プロセッサ14は、重複投影画像データODに基づいて、基準座標系Cにおける表面Wの位置データ:座標(x,y,z)を取得する位置データ取得部40(図1)として機能する。 Then, the processor 14 converts the coordinates ( xP , yP ) in the projection coordinate system CP into coordinates ( xR , yR , z0 ) in the reference coordinate system CR using the coordinate z0 of the projection plane PP and the third coordinate conversion data. These coordinates ( xR , yR , z0 ) become position data indicating the position of the feature point (center point) of the surface WS in the reference coordinate system CR . In this manner, in this embodiment, the processor 14 functions as a position data acquisition unit 40 (FIG. 1) that acquires position data: coordinates ( xR , yR , z0 ) of the surface WS in the reference coordinate system CR based on the overlapping projection image data OD.

以上のように、本実施形態においては、投影画像データPDにおいて重複投影画像データODを自動で検出する。この構成によれば、仮に、ワークセル内に、検出対象部としての表面Wに類似する形状の非検出対象部NWが存在していたとしても、該非検出対象部NWを誤検出してしまうのを防止し、検出対象部としての表面Wを示す重複投影画像データODを、確実且つ自動的に検出することができる。 As described above, in this embodiment, the overlapping projection image data OD is automatically detected in the projection image data PD. With this configuration, even if a non-detection target portion NW having a shape similar to the surface WS as the detection target portion is present in the work cell, the non-detection target portion NW can be prevented from being erroneously detected, and the overlapping projection image data OD showing the surface WS as the detection target portion can be reliably and automatically detected.

また、本実施形態においては、位置測定器26が表面Wの位置を測定し、該位置の情報を情報受付部34が受け付けている。この構成によれば、プロセッサ14は、表面Wの位置を自動で取得することができる。また、本実施形態においては、プロセッサ14は、基準座標系Cにおける表面Wの位置データ:座標(x,y,z)を取得している。この構成によれば、ワークWに対して作業を行うロボットの制御に用いる位置データを自動で取得することができる。なお、ロボットの制御については、後述する。 In this embodiment, the position measuring device 26 measures the position of the surface W S , and the information on this position is received by the information receiving unit 34. With this configuration, the processor 14 can automatically acquire the position of the surface W S. In this embodiment, the processor 14 acquires position data of the surface W S in the reference coordinate system C R : coordinates (x R , y R , z 0 ). With this configuration, position data used to control the robot that performs work on the workpiece W can be automatically acquired. The control of the robot will be described later.

なお、上述のステップS4において、プロセッサ14は、重複投影画像データODを検出したときに、投影画像生成部36として機能して、重複投影画像データODのみが写る第2の投影画像データPD2をさらに生成してもよい。この第2の投影画像データPD2の例を、図7に示す。 In addition, in the above-mentioned step S4, when the processor 14 detects the overlapped projection image data OD, the processor 14 may function as the projection image generating unit 36 and further generate second projection image data PD2 in which only the overlapped projection image data OD is shown. An example of this second projection image data PD2 is shown in FIG. 7.

図7に示すように、第2の投影画像データPD2においては、ステップS4で検出した重複投影画像データODが写る一方、図6の投影画像データPDに写っていた輪郭投影画像データPN及びPNを含む、重複投影画像データOD以外の画像が、視覚的に識別不能となるように単一の明るさで示されている(又は、消去されている)。 As shown in FIG. 7, the second projection image data PD2 contains the overlapping projection image data OD detected in step S4, while images other than the overlapping projection image data OD, including the contour projection image data PN1 and PN2 that were contained in the projection image data PD in FIG. 6, are shown with a single brightness (or are erased) so as to be visually indistinguishable.

例えば、プロセッサ14は、検出した重複投影画像データODを写す画素以外の画素の明るさを、重複投影画像データODを写す画素の明るさ(例えば、「2」)とは異なる単一の明るさ(例えば、「0」)とするように投影画像データPDを修正することによって、図7に示す第2の投影画像データPD2を生成する。 For example, the processor 14 generates the second projection image data PD2 shown in FIG. 7 by modifying the projection image data PD so that the brightness of pixels other than the pixels that represent the detected overlapped projection image data OD is a single brightness (e.g., "0") different from the brightness of the pixels that represent the overlapped projection image data OD (e.g., "2").

代替的には、プロセッサ14は、検出した重複投影画像データODの投影座標系Cの座標を記憶し、該座標を、投影座標系Cが設定された新たな画像データにプロットすることによって、第2の投影画像データPD2を新たな画像データとして生成してもよい。このように生成された第2の投影画像データPD2においては、重複投影画像データODのみが明瞭に写されることになる。 Alternatively, the processor 14 may generate the second projection image data PD2 as new image data by storing the coordinates of the detected overlapped projection image data OD in the projection coordinate system C P and plotting the coordinates on new image data in which the projection coordinate system C P is set. In the second projection image data PD2 generated in this way, only the overlapped projection image data OD is clearly depicted.

そして、プロセッサ14は、ステップS5において、第2の投影画像データPD2を画像処理することにより重複投影画像データODの形状を抽出し、特徴点COを特定して、投影座標系Cにおける特徴点COの座標(x,y)を取得する。この構成によれば、プロセッサ14は、重複投影画像データOD及び特徴点COを抽出する画像処理を、より効果的に実行することができる。 Then, in step S5, the processor 14 performs image processing on the second projection image data PD2 to extract the shape of the overlapping projection image data OD, identifies the feature point CO, and obtains the coordinates ( xP , yP ) of the feature point CO in the projection coordinate system CP . With this configuration, the processor 14 can more effectively execute image processing to extract the overlapping projection image data OD and the feature point CO.

さらに、第2の投影画像データPD2によれば、仮に、カメラ22が撮像した画像データID、又はカメラ24が撮像した画像データIDにノイズ等が写っていたとしても、重複投影画像データOD及びその特徴点COを正確に抽出できる。この効果について、図8及び図9を参照して説明する。 Furthermore, according to the second projection image data PD2, even if noise or the like is present in the image data ID 1 captured by the camera 22 or the image data ID 2 captured by the camera 24, the overlapping projection image data OD and its feature points CO can be accurately extracted. The effect of this will be described with reference to Figs. 8 and 9.

図8及び図9に示す例では、ステップS1で撮像された画像データID及びIDに、ノイズHがそれぞれ写り込んでいる。このようなノイズHは、例えば、撮像時に被写体へ照射される光の方向及び照度や、撮像センサ30の光電変換時に発生する電気的ノイズ、又は、切粉等の異物からの反射光等に起因し得る。 8 and 9, noise H appears in the image data ID1 and ID2 captured in step S1. Such noise H may be due to, for example, the direction and illuminance of light irradiated onto the subject during image capture, electrical noise generated during photoelectric conversion by the image sensor 30, or reflected light from foreign matter such as chips.

このような画像データID及びIDを用いて、プロセッサ14がステップS2~S4を実行し、ステップS4において第2の投影画像データPD2を生成した場合、第2の投影画像データPD2においては、重複投影画像データOD以外の画像が視覚的に消去されるので、ノイズHの画像も視覚的に消去されることになる。したがって、画像データID及びIDにノイズHが写り込んでいたとしても、第2の投影画像データPD2から重複投影画像データOD及びその特徴点COを正確に抽出できる。 When the processor 14 executes steps S2 to S4 using such image data ID1 and ID2 to generate the second projection image data PD2 in step S4, images other than the overlapped projection image data OD are visually erased in the second projection image data PD2, and therefore images of noise H are also visually erased. Therefore, even if noise H is captured in the image data ID1 and ID2 , the overlapped projection image data OD and its feature points CO can be accurately extracted from the second projection image data PD2.

次に、図3、図10~図12を参照して、画像処理装置10の他の機能について説明する。本実施形態においては、ワークWは、略矩形の表面Wを有しており、該表面Wは、上述の実施形態と同様に、基準座標系Cのz軸座標の位置にある。ここで、図10に示すように、ステップS1でカメラ22が撮像した画像データIDにおいて、ワークWの表面Wの一部が写らない場合がある。このような現象は、カメラ22とワークWとの間に障害物がある場合、又は、上述のノイズ等に起因して生じ得る。 Next, other functions of the image processing device 10 will be described with reference to Fig. 3 and Fig. 10 to Fig. 12. In this embodiment, the workpiece W has a substantially rectangular surface W S , and the surface W S is located at the z-axis coordinate 0 in the reference coordinate system C R , as in the above-mentioned embodiment. Here, as shown in Fig. 10, there are cases where a part of the surface W S of the workpiece W is not captured in the image data ID 1 captured by the camera 22 in step S1. This phenomenon can occur when there is an obstacle between the camera 22 and the workpiece W, or due to the above-mentioned noise, etc.

画像データIDにおいては、表面WのエッジEのうち、図10中の実線で示す部分E1の画像データID1_E1が写っている一方、点線で示す部分E2は写っていない。同様に、図11に示すように、ステップS1でカメラ24が撮像した画像データIDにおいては、表面WのエッジEのうち、実線で示す部分E3の画像データID1_E3が写っている一方、点線で示す部分E4は写っていない。 In the image data ID1 , image data ID1_E1 of a portion E1 indicated by a solid line in Fig. 10 of the edge E of the surface WS is captured, but a portion E2 indicated by a dotted line is not captured. Similarly, as shown in Fig. 11, in the image data ID2 captured by the camera 24 in step S1, image data ID1_E3 of a portion E3 indicated by a solid line of the edge E of the surface WS is captured, but a portion E4 indicated by a dotted line is not captured.

このような画像データID及びIDを用いて、図3のフローを実行した場合、ステップS3において、プロセッサ14は、画像データIDに写る画像データID1_E1と、画像データIDに写るID2_E3とを、投影面PPに投影させ、図12に示す投影画像データPDを生成する。図12に示す投影画像データPDにおいては、画像データID1_E1が輪郭投影画像データPEE1として投影され、画像データID2_E3が輪郭投影画像データPEE2として投影される一方、輪郭Eの一部に対応する、点線Gで示す画像データが欠落している。 3 is executed using such image data ID1 and ID2 , in step S3, the processor 14 projects the image data ID1_E1 reflected in the image data ID1 and the image data ID2_E3 reflected in the image data ID2 onto the projection surface PP to generate the projection image data PD shown in Fig. 12. In the projection image data PD shown in Fig. 12, the image data ID1_E1 is projected as contour projection image data PE-E1 and the image data ID2_E3 is projected as contour projection image data PE -E2 , while the image data indicated by the dotted line G which corresponds to a part of the contour E is missing.

ステップS4において、プロセッサ14は、投影画像データPDにおいて、画像データIDに写る画像データID1_E1と、画像データIDに写る画像データID2_E3とが重複して投影された重複投影画像データODを検出する。具体的には、プロセッサ14は、投影画像データPDの各画素の明るさを、輪郭投影画像データPEE1を写している場合は「1」としてカウントする一方、輪郭投影画像データPEE1を写していない場合は「0」としてカウントする。 In step S4, the processor 14 detects overlapped projection image data OD in which image data ID 1_E1 reflected in image data ID 1 and image data ID 2_E3 reflected in image data ID 2 are projected in an overlapping manner in the projection image data PD. Specifically, the processor 14 counts the brightness of each pixel in the projection image data PD as "1" if the contour projection image data PE_E1 is reflected, and as "0" if the contour projection image data PE_E1 is not reflected.

また、プロセッサ14は、投影画像データPDの各画素の明るさを、輪郭投影画像データPEE3を写している場合は「1」としてカウントする一方、輪郭投影画像データPEE3を写していない場合は「0」としてカウントする。そして、プロセッサ14は、投影画像データPDの各画素において、カウントした明るさを加算する。 The processor 14 also counts the brightness of each pixel of the projection image data PD as "1" if the contour projection image data PE- E3 is captured, and as "0" if the contour projection image data PE- E3 is not captured. The processor 14 then adds up the counted brightness for each pixel of the projection image data PD.

この場合、輪郭投影画像データPEE1及びPEE3の双方を写す画素(すなわち、画像データID1_E1及びID2_E3が重複して投影された画素)の明るさは、「2」となる。一方、輪郭投影画像データPEE1及びPEE3のいずれか一方を写す画素の明るさは「1」となり、輪郭投影画像データPEE1及びPEE3のいずれも写していない画素の明るさは「0」となる。 In this case, the brightness of a pixel that represents both the contour projection image data PE -E1 and PE- E3 (i.e., a pixel onto which the image data ID1_E1 and ID2_E3 are overlappingly projected) is "2." On the other hand, the brightness of a pixel that represents either the contour projection image data PE -E1 or PE- E3 is "1," and the brightness of a pixel that represents neither the contour projection image data PE -E1 nor PE- E3 is "0."

そして、プロセッサ14は、投影画像データPDにおいて明るさが「2」となる画素を抽出し、抽出した画素が写す画像データを、重複投影画像データODとして検出する。その結果、図13に示す画像データODが検出される。この画像データODにおいては、輪郭Eの一部に対応する、点線Jで示す画像データが欠落している。 Then, the processor 14 extracts pixels in the projection image data PD that have a brightness of "2" and detects the image data represented by the extracted pixels as overlapping projection image data OD. As a result, the image data OD shown in FIG. 13 is detected. In this image data OD, the image data indicated by the dotted line J, which corresponds to part of the contour E, is missing.

ステップS5において、プロセッサ14は、ステップS4で検出した図13に示す重複投影画像データODに基づいて、基準座標系Cにおける表面Wの位置データを取得する。具体的には、プロセッサ14は、図13に示す投影画像データPDを画像処理し、重複投影画像データODの形状を抽出する。 In step S5, the processor 14 acquires position data of the surface WS in the reference coordinate system CR based on the overlapping projection image data OD shown in Fig. 13 detected in step S4. Specifically, the processor 14 performs image processing on the projection image data PD shown in Fig. 13 to extract the shape of the overlapping projection image data OD.

このとき、プロセッサ14は、ワークWの図面データから輪郭Eのモデル形状を取得し、該モデル形状と重複投影画像データODとを比較して、例えば欠落部分Jに相当する画像データを推定して補完することによって、輪郭Eの全周に対応する重複投影画像データODの形状を抽出してもよい。 At this time, the processor 14 may obtain a model shape of the contour E from the drawing data of the workpiece W, compare the model shape with the overlapping projection image data OD, and extract the shape of the overlapping projection image data OD corresponding to the entire circumference of the contour E, for example, by estimating and completing image data corresponding to the missing portion J.

そして、プロセッサ14は、重複投影画像データODの投影座標系Cにおける位置として、重複投影画像データODの特徴点(中心点、頂点等)を画像処理により特定し、該特徴点の投影座標系Cにおける座標を取得する。そして、プロセッサ14は、投影座標系Cの座標を基準座標系Cの座標に変換し、基準座標系Cにおける表面Wの特徴点の位置を示す位置データとして取得する。 The processor 14 then uses image processing to identify feature points (center points, vertices, etc.) of the overlapped projection image data OD as positions in the projection coordinate system CP of the overlapped projection image data OD, and obtains the coordinates of the feature points in the projection coordinate system CP . The processor 14 then converts the coordinates in the projection coordinate system CP into coordinates in the reference coordinate system CR , and obtains them as position data indicating the positions of the feature points of the surface WS in the reference coordinate system CR .

このように、画像処理装置10によれば、ステップS1でカメラ22又は24が撮像した画像データID又はIDにおいて、ワークWの表面Wの一部が写らなかったとしても、例えばワークWの図面データと、画像データの一部が欠落した重複投影画像データODとの比較に基づいて、重複投影画像データOD及びその特徴点を抽出することができる。 In this way, according to the image processing device 10, even if part of the surface WS of the workpiece W is not captured in the image data ID1 or ID2 captured by the camera 22 or 24 in step S1, the overlapping projection image data OD and its feature points can be extracted, for example, based on a comparison between the drawing data of the workpiece W and the overlapping projection image data OD in which part of the image data is missing.

次に、図14を参照して、画像処理装置10のさらに他の機能について説明する。本実施形態においては、画像処理装置10のI/Oインターフェース18に、上述の位置測定器26が接続されていない一方で、表示装置41及び入力装置42が、有線又は無線で通信可能に接続されている。 Next, referring to FIG. 14, further functions of the image processing device 10 will be described. In this embodiment, the above-mentioned position measuring device 26 is not connected to the I/O interface 18 of the image processing device 10, while the display device 41 and the input device 42 are connected to be able to communicate with each other via wire or wirelessly.

表示装置41は、LCD又は有機ELディスプレイ等を有し、プロセッサ14は、I/Oインターフェース18を介して、表示装置41に画像データを送信し、該表示装置41に画像を表示させる。入力装置42は、キーボード、マウス、又はタッチセンサ等を有し、オペレータが入力した情報を、I/Oインターフェース18を介してプロセッサ14へ送信する。なお、表示装置41及び入力装置42は、画像処理装置10に一体に設けられてもよいし、画像処理装置10とは別体として設けられてもよい。 The display device 41 has an LCD or an organic EL display, and the processor 14 transmits image data to the display device 41 via the I/O interface 18, causing the display device 41 to display an image. The input device 42 has a keyboard, mouse, touch sensor, or the like, and transmits information input by an operator to the processor 14 via the I/O interface 18. The display device 41 and the input device 42 may be provided integrally with the image processing device 10, or may be provided separately from the image processing device 10.

次に、図3を参照して、本実施形態に係る画像処理装置10の動作について説明する。本実施形態の動作は、図1に示す実施形態と、ステップS2において相違する。具体的には、ステップS2において、プロセッサ14は、表面Wの位置の情報を受け付ける。例えば、プロセッサ14は、表面Wの基準座標系Cのz軸座標を入力するための入力画像データを生成し、表示装置41に表示させる。このとき、プロセッサ14は、入力画像とともに、ワークWの既知の公称寸法又は図面データを表示装置41に表示させてもよい。 Next, the operation of the image processing device 10 according to this embodiment will be described with reference to Fig. 3. The operation of this embodiment differs from the embodiment shown in Fig. 1 in step S2. Specifically, in step S2, the processor 14 receives information on the position of the surface W S. For example, the processor 14 generates input image data for inputting the z-axis coordinate of the reference coordinate system C R of the surface W S , and displays it on the display device 41. At this time, the processor 14 may display known nominal dimensions or drawing data of the workpiece W on the display device 41 together with the input image.

オペレータは、ワークWの公称寸法又は図面データ考慮して、表示装置41に表示された入力画像を視認しつつ入力装置42を操作し、表面Wの位置の情報として、表面Wの基準座標系Cのz軸座標z=zを入力する。I/Oインターフェース18は、情報受付部34として機能し、入力装置42に入力された表面Wの位置の情報(座標z)を、該入力装置42から受け付ける。 The operator operates the input device 42 while visually checking the input image displayed on the display device 41, taking into consideration the nominal dimensions or drawing data of the workpiece W, and inputs the z-axis coordinate z = z0 of the reference coordinate system CR of the surface W S as information on the position of the surface W S. The I/O interface 18 functions as an information receiving unit 34, and receives from the input device 42 the information on the position of the surface W S (coordinate z0 ) input to the input device 42.

プロセッサ14は、I/Oインターフェース18を通して、表面Wの位置の情報(座標z)を取得し、メモリ16に記憶する。このように、本実施形態によれば、オペレータは、入力装置42に表面Wの位置の情報(座標z)を任意に入力し、ステップS3で設定する投影面PPの位置を、ワークWの既知の公称寸法又は図面データ等を考慮して、任意に設定できる。 The processor 14 acquires position information (coordinate z0 ) of the surface W S through the I/O interface 18 and stores it in the memory 16. Thus, according to this embodiment, the operator can arbitrarily input position information (coordinate z0 ) of the surface W S to the input device 42 and arbitrarily set the position of the projection plane PP set in step S3 in consideration of the known nominal dimensions or drawing data of the workpiece W, etc.

次に、図15及び図16を参照して、一実施形態に係るロボットシステム50について説明する。ロボットシステム50は、制御装置52、ロボット54、画像処理装置10、カメラ22及び24、位置測定器26、表示装置41、及び入力装置42を備える。制御装置52は、ロボット54、カメラ22及び24、並びに位置測定器26の動作を制御する。 Next, a robot system 50 according to one embodiment will be described with reference to Figures 15 and 16. The robot system 50 includes a control device 52, a robot 54, an image processing device 10, cameras 22 and 24, a position measuring device 26, a display device 41, and an input device 42. The control device 52 controls the operations of the robot 54, the cameras 22 and 24, and the position measuring device 26.

本実施形態においては、ロボット54は、垂直多関節ロボットであって、ロボットベース56、旋回胴58、ロボットアーム60、手首部62、及びエンドエフェクタ64を有する。ロボットベース56は、ワークセルの床に固定されている。旋回胴58は、ロボットベース56に鉛直軸周りに旋回可能に設けられている。 In this embodiment, the robot 54 is a vertical articulated robot and has a robot base 56, a rotating body 58, a robot arm 60, a wrist 62, and an end effector 64. The robot base 56 is fixed to the floor of the work cell. The rotating body 58 is mounted on the robot base 56 so as to be rotatable around a vertical axis.

ロボットアーム60は、旋回胴58に回動可能に取り付けられた下腕部66と、該下腕部66の先端部に回動可能に取り付けられた上腕部68とを有する。手首部62は、上腕部68の先端部に連結され、エンドエフェクタ64を回動可能に支持する。エンドエフェクタ64は、ロボットハンド、切削工具、レーザ加工ヘッド、溶接トーチ、又は塗料塗布器等であって、ワークWに対して所定の作業(ハンドリング、切削加工、レーザ加工、溶接、塗工等)を行う。 The robot arm 60 has a lower arm 66 rotatably attached to the rotating body 58, and an upper arm 68 rotatably attached to the tip of the lower arm 66. The wrist 62 is connected to the tip of the upper arm 68 and rotatably supports an end effector 64. The end effector 64 is a robot hand, a cutting tool, a laser processing head, a welding torch, a paint applicator, or the like, and performs a predetermined operation (handling, cutting, laser processing, welding, coating, etc.) on the workpiece W.

ロボット54の各コンポーネント(ロボットベース56、旋回胴58、ロボットアーム60、手首部62)には、サーボモータが内蔵されている。サーボモータは、プロセッサ14からの指令に応じて、ロボット54の各可動コンポーネント(旋回胴58、ロボットアーム60、手首部62)を動作させ、エンドエフェクタ64を、3次元空間内の任意の位置及び姿勢に配置する。 Each component of the robot 54 (robot base 56, rotating body 58, robot arm 60, wrist 62) has a built-in servo motor. In response to commands from the processor 14, the servo motor operates each movable component of the robot 54 (rotating body 58, robot arm 60, wrist 62) and positions the end effector 64 at any position and orientation within three-dimensional space.

本実施形態においては、画像処理装置10は、制御装置52に実装されている。すなわち、制御装置52は、プロセッサ14、メモリ16、及びI/Oインターフェース18を有するコンピュータであって、プロセッサ14、メモリ16、及びI/Oインターフェース18は、画像処理装置10を構成する。 In this embodiment, the image processing device 10 is implemented in a control device 52. That is, the control device 52 is a computer having a processor 14, a memory 16, and an I/O interface 18, and the processor 14, the memory 16, and the I/O interface 18 constitute the image processing device 10.

プロセッサ14は、ロボット54によってワークWに作業を行う前に、図3に示すフローを実行し、ステップS5で表面Wの位置データ:座標(x,y,z)を取得する。そして、プロセッサ14は、位置データ:座標(x,y,z)に基づいてロボット54を制御し、該ロボット54によってワークW(例えば、表面W)に対して作業を行う。 3 and acquires position data: coordinates ( xR , yR , z0 ) of the surface WS in step S5 before the robot 54 performs work on the workpiece W. The processor 14 then controls the robot 54 based on the position data: coordinates ( xR , yR , z0 ) and causes the robot 54 to perform work on the workpiece W (e.g., the surface WS ).

以上のように、本実施形態においては、撮像位置P及びPでカメラ22及び24が撮像した画像データID及びIDから、ワークWの表面Wの位置データ:座標(x,y,z)を取得し、該位置データ:座標(x,y,z)に基づいてロボット54を制御することによって、ワークWに対する作業を正確に実行することができる。 As described above, in this embodiment, the position data: coordinates (xR, yR, z0) of the surface WS of the workpiece W is obtained from the image data ID1 and ID2 captured by the cameras 22 and 24 at the imaging positions P1 and P2 , and the robot 54 is controlled based on the position data: coordinates ( xR , yR , z0 ), thereby enabling work on the workpiece W to be performed accurately.

なお、ロボットシステム50において、制御装置52と画像処理装置10とを別体として構成することもできる。この場合、制御装置52は、プロセッサ及びメモリを有する1つのコンピュータであって、画像処理装置10に通信可能に接続される。そして、画像処理装置10のプロセッサ14は、ステップS5で位置データ:座標(x,y,z)を取得したときに、該位置データを制御装置52に送信してもよい。 In the robot system 50, the control device 52 and the image processing device 10 can be configured as separate entities. In this case, the control device 52 is a single computer having a processor and memory, and is communicatively connected to the image processing device 10. Then, when the processor 14 of the image processing device 10 acquires the position data: coordinates ( xR , yR , z0 ) in step S5, the processor 14 may transmit the position data to the control device 52.

また、1つのカメラ22を用いて、図3に示すフローを実行することもできる。このような形態を図17に示す。図17に示すロボットシステム50’においては、上述のカメラ24が設けられておらず、位置測定器26が一体に設けられたカメラ22が、ロボット54のエンドエフェクタ64に設置されている。 The flow shown in FIG. 3 can also be executed using a single camera 22. Such a configuration is shown in FIG. 17. In the robot system 50' shown in FIG. 17, the above-mentioned camera 24 is not provided, and a camera 22 with an integrated position measuring device 26 is installed on the end effector 64 of the robot 54.

本実施形態においては、カメラ22は、ロボット54の手先(又は、TCP)に対して、キャリブレーションにより既知の位置関係に配置されている。したがって、制御装置52は、基準座標系Cにおけるカメラ22の位置及び姿勢(すなわち、カメラ座標系CC1の原点位置及び各軸の方向)を認識できるようになっている。 In this embodiment, the camera 22 is disposed in a known positional relationship with respect to the hand (or TCP) of the robot 54 by calibration. Therefore, the control device 52 is capable of recognizing the position and orientation of the camera 22 in the reference coordinate system C R (i.e., the origin position and the directions of each axis of the camera coordinate system C C1 ).

ロボットシステム50’において図3に示すフローを実行する場合、プロセッサ14は、ステップS1において、ロボット54を動作させて、カメラ22を第1の撮像位置Pに配置し、カメラ22によって画像データIDを撮像する。また、プロセッサ14は、ロボット54を動作させて、カメラ22を第2の撮像位置Pに配置し、カメラ22によって画像データIDを撮像する。このように、1つのカメラ22を複数の撮像位置P、Pに配置して撮像した画像データID、IDを用いて、図3に示すフローを実行することができる。 3 in the robot system 50', the processor 14 operates the robot 54 in step S1 to place the camera 22 at a first imaging position P1 and capture image data ID1 with the camera 22. The processor 14 also operates the robot 54 to place the camera 22 at a second imaging position P2 and capture image data ID2 with the camera 22. In this way, the flow shown in FIG. 3 can be executed using the image data ID1 , ID2 captured by placing one camera 22 at multiple imaging positions P1 , P2 .

なお、上述の画像処理装置10から、位置データ取得部40を省略することもできる。例えば、重複検出部38が投影画像データPDにて重複投影画像データODを検出したときに、重複投影画像データODを基に、オペレータが手動で表面Wの位置データ:座標(x,y,z)を求めてもよい。また、画像処理装置10から、メモリ16又はI/Oインターフェース18を省略してもよい。 The position data acquisition unit 40 may be omitted from the above-described image processing device 10. For example, when the overlap detection unit 38 detects overlapped projection image data OD in the projection image data PD, an operator may manually determine the position data: coordinates ( xR , yR , z0 ) of the surface W S based on the overlapped projection image data OD. Also, the memory 16 or the I/O interface 18 may be omitted from the image processing device 10.

また、上述の実施形態においては、検出対象部が表面Wである場合について述べたが、これに限らず、検出対象部は、例えば、物体(ワークW)の側面に形成されるエッジ、凸部、凹部等、如何なる構造のものであってもよい。また、表面Wは、円形に限らず、楕円形、多角形等、如何なる形状であってもよい。また、表面Wは、基準座標系Cのx-y平面に対して傾斜してもよい。この場合において、プロセッサ14は、上述のステップS3において、投影面PPを表面Wと平行に設定してもよい。 In the above embodiment, the detection target portion is the surface W S , but the detection target portion may have any structure, such as an edge, a convex portion, or a concave portion formed on the side of the object (workpiece W). The surface W S is not limited to a circular shape, and may have any shape, such as an ellipse or a polygon. The surface W S may be inclined with respect to the xy plane of the reference coordinate system C R. In this case, the processor 14 may set the projection plane PP to be parallel to the surface W S in the above step S3.

また、第1の撮像位置P及び第2の撮像位置Pは、図2に示す位置に限定されず、如何なる位置であってもよい。また、計n個(nは3以上の正数)のカメラを、それぞれ、第1の撮像位置P、第2の撮像位置P、・・・第nの撮像位置Pに配置させて、画像データID、ID、・・・IDを撮像させ、これら画像データID、ID、・・・IDを用いて、図3に示すフローを実行することもできる。この場合において、プロセッサ14は、ステップS4において、少なくとも2つの(例えば、全ての)画像データIDに写る表面W(検出対象部)が重複された重複投影画像データODを検出する。 In addition, the first imaging position P1 and the second imaging position P1 are not limited to the positions shown in Fig. 2, and may be any positions. In addition, a total of n cameras (n is a positive number of 3 or more) may be arranged at the first imaging position P1 , the second imaging position P2 , ..., the nth imaging position Pn , respectively, to capture image data ID1 , ID2 , ..., IDn , and the flow shown in Fig. 3 may be executed using these image data ID1 , ID2 , ..., IDn . In this case, in step S4, the processor 14 detects overlapped projection image data OD in which the surface Ws (detection target portion) shown in at least two (for example, all) image data IDn is overlapped.

また、上述の実施形態においては、ステップS3において、プロセッサ14が画像枠Fを設定する場合について述べた。しかしながら、プロセッサ14は、投影画像データPDを、画像枠Fで区切ることなく、基準座標系Cにおけるz軸座標zの位置でのx-y座標の点の集合体として生成することができる。以上、実施形態を通じて本開示を説明したが、上述の実施形態は、特許請求の範囲に係る発明を限定するものではない。 Also, in the above embodiment, a case has been described in which the processor 14 sets an image frame F in step S3. However, the processor 14 can generate the projection image data PD as a collection of points of x-y coordinates at the position of the z-axis coordinate z0 in the reference coordinate system C R , without dividing the projection image data PD by the image frame F. Although the present disclosure has been described above through the embodiments, the above-mentioned embodiments do not limit the invention according to the claims.

10 画像処理装置
14 プロセッサ
22,24 カメラ
26 位置測定器
32 画像取得部
34 情報受付部
36 投影画像生成部
38 重複検出部
40 位置データ取得部
50,50’ ロボットシステム
52 制御装置
54 ロボット
REFERENCE SIGNS LIST 10 Image processing device 14 Processor 22, 24 Camera 26 Position measuring device 32 Image acquisition section 34 Information reception section 36 Projection image generation section 38 Overlap detection section 40 Position data acquisition section 50, 50' Robot system 52 Control device 54 Robot

Claims (9)

予め定めた複数の撮像位置に配置されたカメラによって検出対象部を撮像した画像データを取得する画像取得部と、
第1の前記撮像位置で撮像された第1の前記画像データに写る前記検出対象部の第1輪郭と、第2の前記撮像位置で撮像された第2の前記画像データに写る前記検出対象部の第2輪郭とを、前記検出対象部の位置に設定された投影面に投影させた投影画像データを生成する投影画像生成部と、
前記投影画像生成部が生成した前記投影画像データにおいて、前記第1輪郭投影画像データと、前記第2輪郭投影画像データとが重複して投影された重複投影画像データを検出する重複検出部と、を備える、画像処理装置。
an image acquisition unit that acquires image data of a detection target portion captured by cameras arranged at a plurality of predetermined imaging positions;
a projection image generating unit that generates projection image data by projecting a first contour of the detection target portion shown in the first image data captured at the first imaging position and a second contour of the detection target portion shown in the second image data captured at the second imaging position onto a projection surface set at the position of the detection target portion;
An image processing device comprising: an overlap detection unit that detects overlapping projection image data in which the projection image data of the first contour and the projection image data of the second contour are projected in an overlapping manner in the projection image data generated by the projection image generation unit.
予め定めた複数の撮像位置に配置されたカメラによって検出対象部を撮像した画像データを取得する画像取得部と、
第1の前記撮像位置で撮像された第1の前記画像データと、第2の前記撮像位置で撮像された第2の前記画像データとを、前記検出対象部の位置に設定された投影面に投影させた投影画像データを生成する投影画像生成部と、
前記投影画像生成部が生成した前記投影画像データにおいて、前記第1の画像データに写る前記検出対象部と、前記第2の画像データに写る前記検出対象部とが重複して投影された重複投影画像データを検出する重複検出部と、を備え、
前記投影画像生成部は、前記重複検出部が検出した前記重複投影画像データのみが写る第2の投影画像データをさらに生成する、画像処理装置。
an image acquisition unit that acquires image data of a detection target portion captured by cameras arranged at a plurality of predetermined imaging positions;
a projection image generating unit that generates projection image data by projecting the first image data captured at the first imaging position and the second image data captured at the second imaging position onto a projection surface set at the position of the detection target portion;
an overlap detection unit that detects overlapped projection image data in which the detection target portion shown in the first image data and the detection target portion shown in the second image data are projected in an overlapping manner in the projection image data generated by the projection image generation unit,
The projection image generating unit further generates second projection image data in which only the overlapped projection image data detected by the overlap detecting unit is captured.
前記検出対象部の前記位置の情報を受け付ける情報受付部をさらに備え、
前記投影画像生成部は、前記情報受付部が受け付けた前記位置に前記投影面を設定して前記投影画像データを生成する、請求項1又は2に記載の画像処理装置。
an information receiving unit that receives information about the position of the detection target portion,
The image processing device according to claim 1 , wherein the projection image generating unit generates the projection image data by setting the projection plane at the position accepted by the information accepting unit.
前記情報受付部は、
前記情報を入力可能な入力装置から該情報を受け付けるか、又は、
前記検出対象部の前記位置を測定する位置測定器から前記情報を受け付ける、請求項3に記載の画像処理装置。
The information receiving unit is
Receiving the information from an input device capable of inputting the information, or
The image processing apparatus according to claim 3 , wherein the information is received from a position measuring device that measures the position of the detection target portion.
前記検出対象部は、平面であって、
前記投影面は、前記平面と平行に設定される、請求項1~4のいずれか1項に記載の画像処理装置。
The detection target portion is a plane,
5. The image processing device according to claim 1, wherein the projection plane is set parallel to the plane.
各々の前記撮像位置は、基準座標系に対して既知の位置関係となるように定められ、
前記画像処理装置は、前記重複検出部が検出した前記重複投影画像データに基づいて、前記基準座標系における前記検出対象部の位置データを取得する位置データ取得部をさらに備える、請求項1~5のいずれか1項に記載の画像処理装置。
Each of the imaging positions is determined to have a known positional relationship with respect to a reference coordinate system;
The image processing device according to any one of claims 1 to 5, further comprising a position data acquisition unit that acquires position data of the detection target portion in the reference coordinate system based on the overlap projection image data detected by the overlap detection unit.
請求項6に記載の画像処理装置と、
前記カメラと、
前記検出対象部を有するワークに対して作業を行うロボットと、
前記位置データ取得部が取得した前記位置データに基づいて、前記作業を実行させるように前記ロボットを制御する制御装置と、を備える、ロボットシステム。
The image processing device according to claim 6 ;
The camera;
a robot that performs an operation on a workpiece having the detection target portion;
a control device that controls the robot to perform the task based on the position data acquired by the position data acquisition unit.
前記第1の撮像位置で前記第1の画像データを撮像する第1の前記カメラと、
前記第2の撮像位置で前記第2の画像データを撮像する第2の前記カメラと、を備える、請求項7に記載のロボットシステム。
a first camera that captures the first image data at the first imaging position;
The robot system according to claim 7 , further comprising: a second camera configured to capture the second image data at the second imaging position.
予め定めた複数の撮像位置に配置されたカメラによって検出対象部を撮像した画像データを取得し、
第1の前記撮像位置で撮像された第1の前記画像データに写る前記検出対象部の第1輪郭と、第2の前記撮像位置で撮像された第2の前記画像データに写る前記検出対象部の第2輪郭とを、前記検出対象部の位置に設定された投影面に投影させた投影画像データを生成し、
生成した前記投影画像データにおいて、前記第1輪郭投影画像データと、前記第2輪郭投影画像データとが重複して投影された重複投影画像データを検出する、画像処理方法。
acquiring image data of the detection target portion captured by cameras arranged at a plurality of predetermined image capturing positions;
generating projection image data by projecting a first contour of the detection target part shown in the first image data captured at the first imaging position and a second contour of the detection target part shown in the second image data captured at the second imaging position onto a projection plane set at the position of the detection target part;
an image processing method for detecting overlapping projection image data in which the projection image data of the first contour and the projection image data of the second contour are projected in an overlapping manner in the generated projection image data;
JP2019234841A 2019-12-25 2019-12-25 IMAGE PROCESSING APPARATUS, ROBOT SYSTEM, AND IMAGE PROCESSING METHOD Active JP7509535B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019234841A JP7509535B2 (en) 2019-12-25 2019-12-25 IMAGE PROCESSING APPARATUS, ROBOT SYSTEM, AND IMAGE PROCESSING METHOD

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019234841A JP7509535B2 (en) 2019-12-25 2019-12-25 IMAGE PROCESSING APPARATUS, ROBOT SYSTEM, AND IMAGE PROCESSING METHOD

Publications (2)

Publication Number Publication Date
JP2021102253A JP2021102253A (en) 2021-07-15
JP7509535B2 true JP7509535B2 (en) 2024-07-02

Family

ID=76755741

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019234841A Active JP7509535B2 (en) 2019-12-25 2019-12-25 IMAGE PROCESSING APPARATUS, ROBOT SYSTEM, AND IMAGE PROCESSING METHOD

Country Status (1)

Country Link
JP (1) JP7509535B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7349542B1 (en) 2022-08-26 2023-09-22 日鉄エンジニアリング株式会社 Welding robot system, welding method and program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030038875A1 (en) 2001-08-17 2003-02-27 Ivanov Yuri A. Computer vision depth segmentation using virtual surface
JP2010210585A (en) 2009-03-12 2010-09-24 Omron Corp Model display method in three-dimensional visual sensor, and three-dimensional visual sensor
JP2011112401A (en) 2009-11-24 2011-06-09 Omron Corp Calibration method for three-dimensional measurement and three-dimensional visual sensor

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08210847A (en) * 1995-02-06 1996-08-20 Ikegami Tsushinki Co Ltd Image processing method
JPH11333770A (en) * 1998-03-20 1999-12-07 Kobe Steel Ltd Loading position and attitude recognizing device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030038875A1 (en) 2001-08-17 2003-02-27 Ivanov Yuri A. Computer vision depth segmentation using virtual surface
JP2010210585A (en) 2009-03-12 2010-09-24 Omron Corp Model display method in three-dimensional visual sensor, and three-dimensional visual sensor
JP2011112401A (en) 2009-11-24 2011-06-09 Omron Corp Calibration method for three-dimensional measurement and three-dimensional visual sensor

Also Published As

Publication number Publication date
JP2021102253A (en) 2021-07-15

Similar Documents

Publication Publication Date Title
US11565427B2 (en) Robot system
CN112276936B (en) Three-dimensional data generating device and robot control system
JP6465789B2 (en) Program, apparatus and method for calculating internal parameters of depth camera
JP4492654B2 (en) 3D measuring method and 3D measuring apparatus
JP5736622B1 (en) Detection device and operation control of manipulator equipped with the device
US10279473B2 (en) Image processing device, image processing method, and computer program
JP2016099257A (en) Information processing apparatus and information processing method
JP6869159B2 (en) Robot system
CN113015604B (en) Robot control system and robot control method
JP2020047049A (en) Image processing device and image processing method
EP4177837B1 (en) Marker detection apparatus and robot teaching system
US10591289B2 (en) Method for measuring an artefact
US10434650B2 (en) Programming device which generates operation program and method for generating program
JP7509535B2 (en) IMAGE PROCESSING APPARATUS, ROBOT SYSTEM, AND IMAGE PROCESSING METHOD
US12420402B2 (en) Teaching device
JP7063764B2 (en) 3D model creation device
CN115397634B (en) Device, robot system, method, and computer program for obtaining the position of a vision sensor in a control coordinate system of a robot
JP2018146347A (en) Image processing device, image processing method, and computer program
US11698434B2 (en) Machine control device
US11691237B2 (en) Machine control device
JP7509534B2 (en) IMAGE PROCESSING APPARATUS, ROBOT SYSTEM, AND IMAGE PROCESSING METHOD
US20250153362A1 (en) Device for acquiring position of workpiece, control device, robot system, and method
WO2021200743A1 (en) Device for correcting robot teaching position, teaching device, robot system, teaching position correction method, and computer program
CN116867619B (en) Teaching device
TW202422477A (en) Device, robot control device, robot system, and method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221021

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230912

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240109

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240620

R150 Certificate of patent or registration of utility model

Ref document number: 7509535

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150