JP2014161937A - Posture detection device, position detection device, robot, robot system, posture detection method and program - Google Patents

Posture detection device, position detection device, robot, robot system, posture detection method and program Download PDF

Info

Publication number
JP2014161937A
JP2014161937A JP2013033542A JP2013033542A JP2014161937A JP 2014161937 A JP2014161937 A JP 2014161937A JP 2013033542 A JP2013033542 A JP 2013033542A JP 2013033542 A JP2013033542 A JP 2013033542A JP 2014161937 A JP2014161937 A JP 2014161937A
Authority
JP
Japan
Prior art keywords
posture
difference
imaging device
dissimilarity
image
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.)
Withdrawn
Application number
JP2013033542A
Other languages
Japanese (ja)
Other versions
JP2014161937A5 (en
Inventor
Takashi Minamimoto
高志 南本
Koichi Hashimoto
浩一 橋本
Shingo Kagami
慎吾 鏡
Kazuhiro Kosuge
一弘 小菅
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2013033542A priority Critical patent/JP2014161937A/en
Publication of JP2014161937A publication Critical patent/JP2014161937A/en
Publication of JP2014161937A5 publication Critical patent/JP2014161937A5/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Image Processing (AREA)
  • Image Analysis (AREA)
  • Manipulator (AREA)

Abstract

PROBLEM TO BE SOLVED: To facilitate posture estimation of an object while keeping accuracy of the posture estimation of the object.SOLUTION: A posture detection device includes: a first difference degree calculation unit 151 for calculating first difference degrees indicating degrees of the differences between an image obtained by imaging an object by a first imaging device, and a model image of the object, for each posture of the object in the model image; a posture acquisition unit 152 for, on the basis of conversion rules, acquiring multiple postures of the object in second virtual space corresponding to multiple postures of the object in first virtual space; a second difference degree calculation unit 153 for calculating second difference degrees indicating degrees of the differences between an image obtained by imaging the object by a second imaging device, and the model image of the object, for each posture of the object in the model image; and a posture estimation unit 154 for, on the basis of the multiple first difference degrees and the multiple second difference degrees, estimating the posture of the object in a coordinate system of the first imaging device.

Description

本発明は、姿勢検出装置、位置検出装置、ロボット、ロボットシステム、姿勢検出方法及びプログラムに関する。   The present invention relates to a posture detection device, a position detection device, a robot, a robot system, a posture detection method, and a program.

従来よりカメラで撮影した画像から対象物の位置及び姿勢を検出して、予め決められた位置及び姿勢に制御するロボットの技術が開示されている。従来技術において、カメラ座標におけるカメラの光軸方向の位置検出については、画像中の対象物の大きさからその位置を検出するが、位置の変化に対して対象物の大きさの変化の度合いが小さく、検出の精度が低いという問題があった。更に、対象物の姿勢変化によっては画像中の対象物が小さくなり、姿勢の検出精度が低くなるという問題があった。   2. Description of the Related Art Conventionally, there has been disclosed a robot technology that detects the position and orientation of an object from an image captured by a camera and controls the object to a predetermined position and orientation. In the prior art, for the position detection of the camera in the optical axis direction in the camera coordinates, the position is detected from the size of the object in the image, but the degree of change in the size of the object with respect to the change in position is There was a problem that it was small and detection accuracy was low. Furthermore, there is a problem in that the object in the image becomes smaller depending on the posture change of the object, and the posture detection accuracy is lowered.

この問題に対して、従来からステレオカメラを用いて、それぞれのカメラ座標におけるカメラの光軸と直交する平面上の位置を検出して、三角測量の原理を用いてカメラの光軸方向の位置を高精度に検出する技術が開示されている(例えば、特許文献1参照)。その技術では、更にそれぞれのカメラ座標において検出した姿勢を利用することで、姿勢の検出精度が低下することを防ぐことが開示されている。   To solve this problem, a conventional stereo camera is used to detect the position on the plane perpendicular to the optical axis of the camera at each camera coordinate, and the position of the camera in the optical axis direction is determined using the principle of triangulation. A technique for detecting with high accuracy is disclosed (for example, see Patent Document 1). The technology discloses that the posture detection accuracy is further prevented by using the posture detected at each camera coordinate.

特表2004−508954号公報JP-T-2004-508954

しかしながら、上記位置及び姿勢の検出精度を上げるためにはステレオカメラを構成するカメラ同士の相対的な位置及び姿勢を高精度に推定する必要があり、それぞれの座標の対応する点の数を増やす必要があり、煩雑で時間のかかる作業となってしまう。一方、上記対応点の数を減らして時間の短縮を図ると高精度な位置及び姿勢の検出が出来ないという問題がある。   However, in order to increase the detection accuracy of the position and orientation, it is necessary to estimate the relative position and orientation of the cameras constituting the stereo camera with high accuracy, and it is necessary to increase the number of corresponding points of each coordinate. This is complicated and time consuming. On the other hand, if the number of corresponding points is reduced to shorten the time, there is a problem that the position and orientation cannot be detected with high accuracy.

そこで本発明の一態様は、上記問題に鑑みてなされたものであり、対象物の姿勢の推定精度を保ちつつ対象物の姿勢推定処理を簡便にすることを可能とする姿勢検出装置、位置検出装置、ロボット、ロボットシステム、姿勢検出方法及びプログラムを提供することを課題とする。   Accordingly, one aspect of the present invention has been made in view of the above problems, and a posture detection device and position detection that can simplify the posture estimation processing of an object while maintaining the estimation accuracy of the posture of the object. It is an object to provide an apparatus, a robot, a robot system, a posture detection method, and a program.

(1)本発明の一態様は、第1の撮像装置が対象物を撮像して得た第1の撮像画像と、前記第1の撮像装置が撮像した空間に対応する第1の仮想空間における前記対象物のモデル画像との相違度を示す第1の相違度を、前記第1の仮想空間における対象物の複数の異なる姿勢毎に算出する第1の相違度算出部と、前記第1の撮像装置とは異なる位置に配置された第2の撮像装置が対象物を撮像して得た第2の撮像画像と、前記第2の撮像装置が撮像した空間に対応する第2の仮想空間における前記対象物のモデル画像との相違度を示す第2の相違度を、前記第2の仮想空間における対象物の複数の姿勢毎に算出する第2の相違度算出部と、前記第1の相違度算出部が算出した複数の第1の相違度と、前記第2の相違度算出部が算出した複数の第2の相違度とに基づいて前記第1の撮像座標系における前記対象物の姿勢を推定する姿勢推定部と、を備える姿勢検出装置である。
これにより、姿勢検出装置は、複数の異なる視点から得られた相違度それぞれに基づいて対象物の姿勢を推定できるので、姿勢の推定精度を向上させることができる。
(1) According to one aspect of the present invention, a first captured image obtained by capturing an image of an object by the first imaging device and a first virtual space corresponding to the space captured by the first imaging device. A first dissimilarity calculating unit that calculates a first dissimilarity indicating a dissimilarity between the object and the model image for each of a plurality of different postures of the object in the first virtual space; In a second virtual image corresponding to a second captured image obtained by imaging a target by a second imaging device arranged at a position different from the imaging device, and a space imaged by the second imaging device A second dissimilarity calculating unit that calculates a second dissimilarity indicating a dissimilarity with the model image of the object for each of a plurality of postures of the object in the second virtual space; and the first dissimilarity A plurality of first differences calculated by the degree calculator and a plurality of differences calculated by the second difference calculator And posture estimation unit that estimates a posture of said object in said first imaging coordinate system based on the second difference degree is a posture detection device comprising a.
Thereby, since the attitude | position detection apparatus can estimate the attitude | position of a target object based on each difference obtained from the several different viewpoint, it can improve the estimation precision of an attitude | position.

(2)本発明の一態様は、上述の姿勢検出装置であって、前記姿勢推定部は、前記第1の相違度算出部が算出した複数の第1の相違度と、前記第2の相違度算出部が算出した複数の第2の相違度のそれぞれに重み係数を乗じ、乗じることで得た値を基に前記第1の撮像座標系における前記対象物の姿前記対象物の姿勢を推定する。これにより、姿勢検出装置は、第1の撮像装置と第2の撮像装置のうち対象物の視認性がより悪い方の撮像装置の撮像画像から得られた相違度を軽視するように重み係数を乗じることで、対象物の姿勢を推定する際に視認性がより悪い方の撮像装置の撮像画像から得られた相違度が含む誤差が対象物の姿勢推定に与える影響を小さくすることができるので、姿勢の推定精度を向上させることができる。   (2) One aspect of the present invention is the posture detection device described above, wherein the posture estimation unit includes the plurality of first differences calculated by the first difference calculation unit and the second differences. The degree of the object in the first imaging coordinate system is estimated based on a value obtained by multiplying each of the plurality of second dissimilarities calculated by the degree calculating unit by a weighting factor and multiplying the weight coefficient. To do. Accordingly, the posture detection device sets the weighting coefficient so as to neglect the degree of difference obtained from the captured image of the imaging device with the worse visibility of the target object between the first imaging device and the second imaging device. By multiplying, it is possible to reduce the influence of the difference included in the captured image of the imaging device with the worse visibility when estimating the posture of the object on the posture estimation of the object. , Posture estimation accuracy can be improved.

(3)本発明の一態様は、上述の姿勢検出装置であって、前記第1の撮像装置が前記第2の撮像装置よりも前記対象物の視認性が良い場合、前記姿勢推定部は、前記対象物が目標の位置から予め決められた位置範囲にあるとき、前記第1の相違度に乗じる重み係数を前記第2の相違度に乗じる重み係数より大きくする。
これにより、姿勢推定部は、対象物が目標の位置から予め決められた位置範囲にあるとき、視認性がより悪い第2の撮像装置の撮像画像から得られた第2の相違度に係る重みが相対的に小さくなるので、第2の相違度が含む誤差が対象物の姿勢推定に与える影響を小さくすることができる。その結果、姿勢推定部は、対象物の姿勢推定の精度を向上させることができる。また、撮像装置同士の相対的な位置関係を算出する必要がないので、簡便に対象物の姿勢を推定することができる。
(3) One aspect of the present invention is the posture detection device described above, and when the first imaging device has better visibility of the object than the second imaging device, the posture estimation unit includes: When the object is in a predetermined position range from the target position, the weighting coefficient by which the first difference is multiplied is made larger than the weighting coefficient by which the second difference is multiplied.
Accordingly, the posture estimation unit weights the second degree of difference obtained from the captured image of the second imaging device with poorer visibility when the object is in a predetermined position range from the target position. Therefore, the influence of the error included in the second difference degree on the posture estimation of the object can be reduced. As a result, the posture estimation unit can improve the accuracy of posture estimation of the object. In addition, since it is not necessary to calculate the relative positional relationship between the imaging devices, it is possible to easily estimate the posture of the object.

(4)また、本発明の一態様は、上述の姿勢検出装置であって、前記第1の撮像装置が前記第2の撮像装置よりも前記対象物の視認性が良い場合、前記姿勢推定部は、前記対象物が目標の位置から予め決められた位置範囲にあるとき、前記第2の相違度に乗じる重み係数が予め決められた範囲に収まるよう、前記対象物の移動開始時刻から前記対象物が目標の位置から予め決められた位置範囲に到達する時刻まで、前記第2の相違度に乗じる重み係数を変化させる。
これにより、対象物が目標の位置から予め決められた位置範囲にあるとき、視認性がより悪い第2の撮像装置の撮像画像から得られた第2の相違度に係る重みを予め決められた範囲に収まるようすることで、第2の相違度が含む誤差が対象物の姿勢推定に与える影響をより小さくすることができる。その結果、姿勢推定部は、対象物の姿勢推定の精度を向上させることができる。
(4) Moreover, one aspect of the present invention is the posture detection device described above, and when the first imaging device has better visibility of the object than the second imaging device, the posture estimation unit When the object is in a predetermined position range from the target position, the object is moved from the movement start time of the object so that a weighting factor to be multiplied by the second difference is within the predetermined range. The weighting factor by which the second difference is multiplied is changed until the time when the object reaches the predetermined position range from the target position.
Thereby, when the target object is in a predetermined position range from the target position, the weight related to the second difference obtained from the captured image of the second imaging device with poor visibility is determined in advance. By making it fall within the range, it is possible to further reduce the influence of the error included in the second dissimilarity on the posture estimation of the object. As a result, the posture estimation unit can improve the accuracy of posture estimation of the object.

(5)また、本発明の一態様は、上述の姿勢検出装置であって、前記第1の撮像装置が前記第2の撮像装置よりも前記対象物の視認性が良い場合、前記姿勢推定部は、前記対象物の移動開始時刻から前記対象物が目標の位置から予め決められた位置範囲に到達する時刻までの期間で、前記第2の相違度に乗じる重み係数を時間の経過とともに小さくする。
これにより、時間が経過するに連れて、視認性がより悪い第2の撮像装置の撮像画像から得られた第2の相違度に係る重みが小さくなるので、第2の相違度が含む誤差が対象物の姿勢推定に与える影響を小さくすることができる。その結果、姿勢推定部は、対象物の姿勢推定の精度を向上させることができる。
(5) Moreover, one aspect of the present invention is the posture detection device described above, and when the first imaging device has better visibility of the object than the second imaging device, the posture estimation unit Is a period from the movement start time of the target object to the time when the target object reaches a predetermined position range from the target position, and the weight coefficient to be multiplied by the second difference is reduced with the passage of time. .
As a result, as the time elapses, the weight related to the second difference obtained from the captured image of the second imaging device with poorer visibility becomes smaller, so that the error included in the second difference becomes smaller. The influence on the posture estimation of the object can be reduced. As a result, the posture estimation unit can improve the accuracy of posture estimation of the object.

(6)また、本発明の一態様は、上述の姿勢検出装置であって、前記第1の撮像装置が前記第2の撮像装置よりも前記対象物の視認性が良く、前記対象物の位置が移動する場合、前記姿勢推定部は、前記対象物の単位時間あたりの移動量が小さくなるに従って前記第2の相違度に乗じる重み係数を小さくする。
ここで、対象物の単位時間あたりの移動量は、対象物を動かし始めたときが最も大きく、その後、時間の経過とともに徐々に小さくなるものである。このため、時間が経過するに連れて、第2の相違度に係る重みが小さくなるので、第2の相違度が含む誤差が対象物の姿勢推定に与える影響を小さくすることができる。その結果、姿勢推定部は、対象物の姿勢推定の精度を向上させることができる。
(6) One embodiment of the present invention is the posture detection device described above, in which the first imaging device has better visibility of the object than the second imaging device, and the position of the object. When the pose moves, the posture estimation unit decreases the weight coefficient by which the second difference is multiplied as the amount of movement of the object per unit time decreases.
Here, the movement amount of the object per unit time is the largest when the object starts to move, and then gradually decreases with the passage of time. For this reason, as the time elapses, the weight related to the second dissimilarity decreases, so that the influence of the error included in the second dissimilarity on the posture estimation of the object can be reduced. As a result, the posture estimation unit can improve the accuracy of posture estimation of the object.

(7)また、本発明の一態様は、上述の姿勢検出装置であって、前記第1の撮像装置が前記第2の撮像装置よりも前記対象物の視認性が良い場合、前記姿勢推定部は、前記第2の相違度に乗じる重み係数を、前記対象物が目標の位置に近づくに従って小さくする。
これにより、対象物が目標の位置に近づくに従って、第2の相違度に係る重みが小さくなるので、第2の相違度が含む誤差が対象物の姿勢推定に与える影響を小さくすることができる。その結果、姿勢推定部は、対象物の姿勢推定の精度を向上させることができる。
(7) According to another aspect of the present invention, in the posture detection device described above, when the first imaging device has better visibility of the object than the second imaging device, the posture estimation unit Decreases the weighting factor by which the second difference is multiplied as the object approaches the target position.
Thereby, as the object approaches the target position, the weight related to the second dissimilarity decreases, so that the influence of the error included in the second dissimilarity on the posture estimation of the object can be reduced. As a result, the posture estimation unit can improve the accuracy of posture estimation of the object.

(8)また、本発明の一態様は、上述の姿勢検出装置であって、前記姿勢推定部は、前記第1の相違度に乗じる重み係数と、前記第2の相違度に乗じる重み係数を、前記第1の撮像画像と前記第2の撮像画像のそれぞれに混入している雑音成分に応じて変化させる。これにより、姿勢推定部は、雑音成分が多い画像に対する重み係数を相対的に小さくすることができ、雑音成分が多い画像に対応する相違度の姿勢推定への寄与を相対的に小さくすることができるので、対象物の姿勢推定の精度を向上させることができる。   (8) Moreover, 1 aspect of this invention is the above-mentioned attitude | position detection apparatus, Comprising: The said attitude | position estimation part calculates the weighting coefficient by which the said 1st difference is multiplied, and the weighting coefficient by which the said 2nd difference is multiplied. , And changing according to a noise component mixed in each of the first captured image and the second captured image. As a result, the posture estimation unit can relatively reduce the weighting factor for an image with a large amount of noise components, and can relatively reduce the contribution of the dissimilarity corresponding to an image with a large amount of noise components to posture estimation. Therefore, the accuracy of posture estimation of the object can be improved.

(9)また、本発明の一態様は、上述の姿勢検出装置であって、前記姿勢推定部は、前記第1の相違度に乗じる重み係数と、前記第2の相違度とに乗じる重み係数を、前記第1の撮像画像と前記第2の撮像画像のそれぞれに混入している正規化ランダムノイズの分散の逆数とする。これにより、正規化ランダムノイズの分散が大きいほどノイズが多いが、正規化ランダムノイズの分散が大きいほど重み係数が小さくなるので、ノイズが多いほど重み係数が小さくなる。その結果、ノイズが多い画像に対する重み係数を相対的に小さくすることができ、ノイズが多い画像に対応する相違度の姿勢推定への寄与を相対的に小さくすることができるので、対象物の姿勢推定の精度を向上させることができる。   (9) Moreover, one aspect of the present invention is the posture detection apparatus described above, wherein the posture estimation unit multiplies the weight coefficient by which the first difference is multiplied and the weight coefficient by which the second difference is multiplied. Is the reciprocal of the variance of the normalized random noise mixed in each of the first captured image and the second captured image. As a result, the greater the variance of the normalized random noise, the more noise, but the greater the variance of the normalized random noise, the smaller the weighting factor. Therefore, the greater the noise, the smaller the weighting factor. As a result, the weighting factor for a noisy image can be made relatively small, and the contribution of the dissimilarity corresponding to the noisy image to the posture estimation can be made relatively small. The accuracy of estimation can be improved.

(10)また、本発明の一態様は、上述の姿勢検出装置であって、前記姿勢推定部は、前記第1の撮像装置で撮像した異なるフレーム間の画像の相違度を前記第1の撮像画像に混入している正規化ランダムノイズの分散として算出し、前記第2の撮像装置で撮像した異なるフレーム間の画像の相違度を前記第2の撮像画像に混入する正規化ランダムノイズの分散として算出する。これにより、フレーム間の画像の相違度を算出することで、異なるフレーム間に含まれるノイズ量の差を算出することができ、この異なるフレーム間に含まれるノイズ量の差で、正規化ランダムノイズの分散を近似することができる。これにより、フレーム間の画像の相違度が大きいほど正規化ランダムノイズの分散が大きくなり、重み係数が小さくなる。その結果、ノイズが多い画像に対する重み係数を相対的に小さくすることができ、ノイズが多い画像に対応する相違度の姿勢推定への寄与を相対的に小さくすることができるので、対象物の姿勢推定の精度を向上させることができる。   (10) Moreover, one aspect of the present invention is the posture detection device described above, wherein the posture estimation unit calculates a difference between images captured by the first imaging device between different frames. Calculated as the variance of normalized random noise mixed in the image, and the difference in the image between different frames captured by the second imaging device as the variance of normalized random noise mixed in the second captured image calculate. Thus, by calculating the image dissimilarity between the frames, it is possible to calculate the difference in the amount of noise included between the different frames. Can be approximated. Thereby, the larger the image dissimilarity between frames, the larger the variance of the normalized random noise and the smaller the weighting factor. As a result, the weighting factor for a noisy image can be made relatively small, and the contribution of the dissimilarity corresponding to the noisy image to the posture estimation can be made relatively small. The accuracy of estimation can be improved.

(11)また、本発明の一態様は、上述の姿勢検出装置であって、前記第1の撮像装置を基準とする第1の撮像座標系で前記対象物の姿勢を表したときの座標を第2の撮像装置を基準とする第2の撮像座標系で前記対象物の姿勢を表したときの座標へ変換する変換規則に基づいて、前記第1の仮想空間における前記対象物の複数の異なる姿勢に対応する第2の仮想空間における前記対象物の複数の姿勢をそれぞれ取得する姿勢取得部を更に備え、前記第2の相違度算出部は、前記第1の撮像装置とは異なる位置に配置された第2の撮像装置が対象物を撮像して得た第2の撮像画像と、前記第2の撮像装置が撮像した空間に対応する第2の仮想空間における前記対象物のモデル画像との相違度を示す第2の相違度を、前記姿勢取得部が算出した前記第2の仮想空間における対象物の複数の姿勢毎に算出する。これにより、対象物を第1の仮想空間と第2の仮想空間とで異なる視点から見たモデル画像について、それぞれ相違度を算出することができる。これにより、姿勢検出に向いた撮像装置が撮像した撮像画像から検出された姿勢に重きを置いて姿勢を推定できるので、対象物の姿勢推定の精度を向上させることができる。   (11) Moreover, one aspect of the present invention is the posture detection device described above, in which coordinates when the posture of the object is expressed in a first imaging coordinate system with the first imaging device as a reference are expressed. A plurality of different objects in the first virtual space based on a conversion rule for converting to coordinates when the posture of the object is expressed in a second imaging coordinate system based on the second imaging device. A posture acquisition unit that acquires each of a plurality of postures of the object in the second virtual space corresponding to the posture is further provided, and the second difference calculation unit is arranged at a position different from that of the first imaging device. A second captured image obtained by capturing the target object by the second image capturing apparatus and a model image of the target object in the second virtual space corresponding to the space captured by the second image capturing apparatus. The posture acquisition unit calculates a second degree of difference indicating the degree of difference. Calculated for each of the plurality of orientation of the target object in serial the second virtual space. As a result, the degree of difference can be calculated for each model image of the object viewed from different viewpoints in the first virtual space and the second virtual space. As a result, since the posture can be estimated by placing importance on the posture detected from the captured image captured by the imaging device suitable for posture detection, the accuracy of the posture estimation of the target can be improved.

(12)また、本発明の一態様は、上述の姿勢検出装置であって、前記第1の相違度算出部は、前記第1の撮像装置が対象物を撮像することで得られた第1の撮像画像と、前記第1の仮想空間における前記対象物のモデル画像との相違度を示す第3の相違度を、前記第1の仮想空間における前記対象物の複数の異なる位置毎に算出し、前記第2の相違度算出部は、前記第2の撮像装置が対象物を撮像することで得られた第2の撮像画像と、前記第2の仮想空間における前記対象物のモデル画像との相違度を示す第4の相違度を、前記第2の仮想空間における前記対象物の複数の異なる位置毎に算出し、複数の前記第3の相違度と複数の前記第4の相違度に基づいて、前記第1の撮像座標系における前記対象物の位置を推定する位置推定部と、を備える。
これにより、第1の撮像画像を用いて算出された第3の相違度と第2の撮像画像を用いて算出された第4の相違度から位置を推定するので、一つの撮像装置で撮像した画像から位置を推定するよりも位置の推定精度を向上させることができる。
(12) One embodiment of the present invention is the posture detection device described above, wherein the first difference calculation unit is a first obtained by the first imaging device imaging an object. A third dissimilarity indicating the dissimilarity between the captured image and the model image of the object in the first virtual space is calculated for each of a plurality of different positions of the object in the first virtual space. The second dissimilarity calculation unit includes a second captured image obtained by the second imaging device capturing an object and a model image of the object in the second virtual space. A fourth dissimilarity indicating a dissimilarity is calculated for each of a plurality of different positions of the object in the second virtual space, and is based on the plurality of third dissimilarities and the plurality of fourth dissimilarities. A position estimation unit that estimates the position of the object in the first imaging coordinate system; Provided.
As a result, the position is estimated from the third difference calculated using the first captured image and the fourth difference calculated using the second captured image. The position estimation accuracy can be improved compared to the position estimation from the image.

(13)また、本発明の一態様は、上述の姿勢検出装置であって、前記位置推定部は、前記第1の相違度算出部が算出した複数の第3の相違度を参照して、前記第1の撮像座標系における撮像装置の光軸と直行する第1の平面の位置を推定し、前記第2の相違度算出部が算出した複数の第4の相違度を参照して、前記第2の撮像座標系における撮像装置の光軸と直行する第2の平面の位置を推定する平面位置推定部と、前記第1の平面の位置と前記第2の平面の位置とを参照して、前記第1の撮像座標系における前記対象物の奥行きを算出する奥行き算出部と、を備える。
これにより、第1の撮像画像を用いて算出された第3の相違度と第2の撮像画像を用いて算出された第3の相違度から、奥行きを算出するので、奥行きの推定精度を向上させることができる。また、平面位置推定部で推定された第1の平面の位置と、第2の平面の位置とを参照して第1の撮像装置の光軸方向の位置を算出するため、第1の撮像装置の光軸方向の位置の推定精度を向上させることができる。
(13) Moreover, one aspect of the present invention is the posture detection device described above, wherein the position estimation unit refers to a plurality of third differences calculated by the first difference calculation unit, Estimating the position of the first plane orthogonal to the optical axis of the imaging device in the first imaging coordinate system, and referring to the plurality of fourth differences calculated by the second difference calculator; With reference to the plane position estimation unit that estimates the position of the second plane orthogonal to the optical axis of the imaging apparatus in the second imaging coordinate system, the position of the first plane, and the position of the second plane And a depth calculation unit that calculates the depth of the object in the first imaging coordinate system.
Thereby, since the depth is calculated from the third difference calculated using the first captured image and the third difference calculated using the second captured image, the depth estimation accuracy is improved. Can be made. Further, the first imaging device is used to calculate the position of the first imaging device in the optical axis direction with reference to the position of the first plane and the position of the second plane estimated by the plane position estimation unit. The estimation accuracy of the position in the optical axis direction can be improved.

(14)また、本発明の一態様は、上述の姿勢検出装置であって、前記位置推定部は、複数の前記第3の相違度と複数の前記第4の相違度に基づいて、前記第1の撮像座標系における前記対象物の奥行きを推定する。これにより、第1の撮像画像を用いて算出された第3の相違度と第2の撮像画像を用いて算出された第4の相違度から奥行きを推定するので、一つの撮像装置で撮像した画像から奥行きを推定するよりも奥行きの推定精度を向上させることができる。   (14) One aspect of the present invention is the posture detection device described above, in which the position estimation unit is configured to perform the first estimation based on the plurality of third differences and the plurality of fourth differences. The depth of the object in one imaging coordinate system is estimated. As a result, the depth is estimated from the third difference calculated using the first captured image and the fourth difference calculated using the second captured image. It is possible to improve the accuracy of estimating the depth than estimating the depth from the image.

(15)また、本発明の一態様は、上述の姿勢検出装置であって、前記姿勢推定部が推定した対象物の姿勢とそれ以前に推定した前記対象物の姿勢との差を参照して、推定が収束したか否か判定する判定部と、を備え、前記判定部が収束していないと判定した場合、前記第1の相違度算出部は、前記対象物のモデル画像の姿勢を予め決められたように変更した後のモデル画像と前記第1の撮像画像とに基づいて前記複数の第1の相違度を算出し、前記第2の相違度算出部は、前記対象物のモデル画像の姿勢を予め決められたように変更した後のモデル画像と前記第2の撮像画像とに基づいて前記複数の第2の相違度を算出し、前記姿勢推定部は、前記第1の相違度算出部が算出した複数の第1の相違度と、前記第2の相違度算出部が算出した複数の第2の相違度とに基づいて、前記対象物の姿勢を推定し、前記判定部は、前記姿勢推定部が推定した前記対象物の姿勢を用いて判定を再び行う。
これにより、姿勢推定部は、対象物の姿勢とそれ以前に推定した対象物の姿勢との差が小さくなるまで、対象物の姿勢を更新するので、対象物の姿勢推定の精度を向上させることができる。
(15) Moreover, one aspect of the present invention is the posture detection apparatus described above, with reference to a difference between the posture of the object estimated by the posture estimation unit and the posture of the object estimated before that. A determination unit that determines whether or not the estimation has converged, and when the determination unit determines that the estimation has not converged, the first difference calculation unit determines the orientation of the model image of the object in advance The plurality of first dissimilarities are calculated based on the model image after being changed as determined and the first captured image, and the second dissimilarity calculating unit is configured to calculate the model image of the object. The plurality of second dissimilarities are calculated based on the model image after the pose is changed as determined in advance and the second captured image, and the posture estimating unit is configured to calculate the first dissimilarity. The plurality of first differences calculated by the calculation unit and the second difference calculation unit calculated by the calculation unit Based on the second difference degree number, and estimating the pose of the object, the determining unit again performs the determination using the attitude of the object in which the posture estimating unit has estimated.
As a result, the posture estimation unit updates the posture of the object until the difference between the posture of the target object and the posture of the target object previously estimated becomes small, so that the accuracy of the posture estimation of the target object is improved. Can do.

(16)また、本発明の一態様は、上述の姿勢検出装置であって、前記対象物が目標の位置から予め決められた範囲にある際に、該対象物の位置または姿勢が変化する前後で前記第1の撮像装置が撮像して得た二つの画像間の変化量は、該対象物の位置または姿勢が変化する前後で前記第2の撮像装置が撮像して得た二つの画像間の変化量より大きい。
これにより、第1の撮像装置は、対象物が目標の位置から予め決められた範囲にある際に対象物の視認性が良く、かつ対象物が目標の位置から予め決められた範囲にある際に第1の相違度が姿勢の検出に貢献する割合が相対的に大きくなるので、対象物が目標の位置から予め決められた範囲にある際の対象物の姿勢精度を向上させることができる。
(16) One embodiment of the present invention is the posture detection apparatus described above, wherein the position or posture of the target object changes before and after the target object is within a predetermined range from the target position. The amount of change between the two images acquired by the first imaging device is the difference between the two images acquired by the second imaging device before and after the position or orientation of the object changes. Greater than the amount of change.
Thereby, the first imaging device has good visibility of the object when the object is in a predetermined range from the target position, and when the object is in the predetermined range from the target position. In addition, since the ratio that the first difference contributes to the detection of the posture is relatively large, the posture accuracy of the target when the target is in a predetermined range from the target position can be improved.

(17)また、本発明の一態様は、上述の姿勢検出装置であって、前記対象物が目標の位置及び姿勢にあるときの該対象物を前記第1の撮像装置で撮影した第1のゴール画像と前記第2の撮像装置で撮影した第2のゴール画像とを取得するゴール画像取得部と、前記第1のゴール画像を撮影した空間を再現する第1の仮想空間において存在する対象物のモデルの位置及び姿勢から、予め決められた軸周りまたは軸方向に予め決められたように前記モデルを移動させて撮影した画像と、前記第1のゴール画像との相違度を示す第5の相違度を算出し、前記第2のゴール画像を撮影した空間を再現する第2の仮想空間において存在する対象物のモデルの位置及び姿勢から、予め決められた軸周りまたは軸方向に予め決められたように前記モデルを移動させて撮影した画像と、第2のゴール画像との相違度を示す第6の相違度を算出し、前記第5の相違度を算出した際の移動方向への前記第5の相違度の勾配と、前記第6の相違度を算出した際の移動方向への前記第6の相違度の勾配とを比較することで、姿勢推定の基準となる撮像装置を決定し、該決定した撮像装置を新たに前記第1の撮像装置とする位置決め基準撮像装置決定部と、を備える。
これにより、目標の位置及び姿勢付近において、決定された姿勢推定の基準となる撮像装置が撮影した画像から導出される相違度が姿勢推定に貢献する割合が大きくなる。その際、目標の位置及び姿勢付近において、別の撮像装置を基準としたときよりも相違度の変化が大きくなることで、対象物を目標の位置及び姿勢により早く到達させることができる。
(17) Further, one aspect of the present invention is the posture detection device described above, wherein the first imaging device captures the target when the target is at a target position and posture. A goal image acquisition unit that acquires a goal image and a second goal image captured by the second imaging device, and an object that exists in a first virtual space that reproduces the space where the first goal image is captured A fifth image indicating a degree of difference between the first goal image and an image captured by moving the model as determined in advance around or in a predetermined axis from the position and orientation of the model The degree of difference is calculated and predetermined around the axis or in the axial direction based on the position and orientation of the model of the object existing in the second virtual space that reproduces the space where the second goal image was captured. The model as A sixth dissimilarity indicating a dissimilarity between the image taken by moving and the second goal image is calculated, and the fifth dissimilarity in the moving direction when the fifth dissimilarity is calculated is calculated. By comparing the gradient and the gradient of the sixth dissimilarity in the moving direction when the sixth dissimilarity is calculated, an imaging device serving as a reference for posture estimation is determined, and the determined imaging device And a positioning reference imaging device determination unit that newly sets the first imaging device as the first imaging device.
As a result, in the vicinity of the target position and posture, the ratio that the degree of difference derived from the image captured by the imaging device serving as a reference for the determined posture estimation contributes to the posture estimation increases. At that time, the change in the dissimilarity becomes larger in the vicinity of the target position and posture than when another imaging device is used as a reference, so that the target can be reached earlier in the target position and posture.

(18)また、本発明の一態様は、上述の姿勢検出装置であって、前記対象物が複数ある場合、前記第1の相違度算出部は、前記第1の仮想空間において位置姿勢推定の対象となる対象物以外の対象物全ての画像領域を特定し、該特定した画像領域を演算対象から除いて第1の相違度を算出し、前記第2の相違度算出部は、前記第2の仮想空間において位置姿勢推定の対象となる対象物以外の対象物全ての画像領域を特定し、該特定した画像領域を演算対象から除いて第2の相違度を算出する。これにより、対象物が複数あったとしても、姿勢推定の対象となる対象物以外の対象物の画像領域が相違度に貢献しないようにすることで、姿勢推定の対象となる対象物の画像領域だけから相違度を算出することができる。その結果、複数の対象物それぞれについて姿勢を推定することができる。   (18) Further, according to one aspect of the present invention, in the posture detection device described above, when there are a plurality of the objects, the first difference calculation unit performs position and posture estimation in the first virtual space. The image areas of all objects other than the target object are specified, the specified image area is excluded from the calculation target, the first difference is calculated, and the second difference calculation unit is In this virtual space, the image areas of all the objects other than the object to be subjected to position / orientation estimation are specified, and the specified image area is excluded from the calculation target, and the second difference is calculated. Thus, even if there are a plurality of objects, the image area of the object other than the object that is the object of posture estimation does not contribute to the degree of difference, so that the image area of the object that is the object of posture estimation The degree of difference can be calculated only from the above. As a result, the posture can be estimated for each of the plurality of objects.

(19)また、本発明の一態様は、上述の姿勢検出装置であって、前記推定された対象物の位置及び姿勢と前記対象物が目標の位置にある場合の位置及び姿勢とに基づいて、現在の時刻から予め決められた時間経過した後のロボット座標系における位置及び姿勢の変化量を決定する目標位置姿勢決定部と、ロボットを制御する時間間隔毎に、前記目標位置姿勢決定部が決定した変化量のうち最新の変化量に基づいて、前記時間間隔後のロボットの位置及び姿勢を決定し、該決定した位置及び姿勢になるようロボットを制御するロボット制御部と、を更に備え、前記ロボット制御部は、前記予め決められた時間のうち、自装置が第1の撮像画像及び第2の撮像画像から前記変化量を決定するまでの最短時間に基づいて決められた時間まではロボットが加速及び減速で移動するように前記ロボットの位置及び姿勢を決定し、その後の時間はロボットが等速で移動するように前記ロボットの位置及び姿勢を決定する。
これにより、第1の撮像画像及び第2の撮像画像から前記変化量を決定するまでの時間に揺らぎがあっても、第1の撮像画像及び第2の撮像画像の撮像開始から前記変化量を決定するまでの一連の画像処理が終了した時点では、常にロボットが等速で移動することになる。それにより、ロボット制御部はその等速で移動しているときの速度を初速としてロボットの加速制御または減速制御を始めることができる。そのため、ロボット制御部は、画像処理が終わると同時に、その画像処理で得られた変化量を用いてロボットを制御できるので、対象物を目標の位置及び目標の姿勢にするまでの時間を短縮することができる。
(19) One aspect of the present invention is the posture detection apparatus described above, based on the estimated position and posture of the object and the position and posture when the object is at the target position. A target position / posture determination unit that determines the amount of change in position and posture in the robot coordinate system after a predetermined time has elapsed from the current time, and the target position / posture determination unit for each time interval for controlling the robot. A robot controller that determines the position and posture of the robot after the time interval based on the latest amount of change among the determined amounts of change, and controls the robot to be the determined position and posture; and The robot control unit performs a robot until the time determined based on the shortest time from which the own apparatus determines the amount of change from the first captured image and the second captured image within the predetermined time. DOO determines the position and orientation of the robot for movement acceleration and deceleration, the subsequent time to determine the position and orientation of the robot to move the robot at a constant speed.
Thereby, even if there is a fluctuation in the time until the change amount is determined from the first captured image and the second captured image, the change amount is reduced from the start of imaging of the first captured image and the second captured image. When a series of image processing until the determination is completed, the robot always moves at a constant speed. Thereby, the robot controller can start acceleration control or deceleration control of the robot with the speed when moving at the constant speed as the initial speed. Therefore, the robot control unit can control the robot using the amount of change obtained by the image processing at the same time as the image processing is completed, so the time until the object is set to the target position and target posture is shortened. be able to.

(20)また、本発明の一態様は、第1の撮像装置が撮像した空間に対応する第1の仮想空間における対象物の複数の異なる姿勢毎に第1の相違度を算出する第1の相違度算出部と、前記第1の撮像装置とは異なる位置に配置された第2の撮像装置が撮像した空間に対応する第2の仮想空間における対象物の複数の姿勢毎に第2の相違度を算出する第2の相違度算出部と、前記複数の第1の相違度と前記複数の第2の相違度とを参照して前記第1の撮像装置を基準とする第1の撮像座標系における前記対象物の姿勢を推定する姿勢推定部と、を備える姿勢検出装置である。
これにより、姿勢検出装置は、複数の異なる視点から得られた相違度それぞれに基づいて対象物の姿勢を推定できるので、姿勢の推定精度を向上させることができる。
(20) Further, according to one aspect of the present invention, the first difference degree is calculated for each of a plurality of different postures of the object in the first virtual space corresponding to the space captured by the first imaging device. The second difference for each of the plurality of postures of the object in the second virtual space corresponding to the space imaged by the second imaging device arranged at a different position from the first imaging device. A first imaging coordinate based on the first imaging device with reference to a second degree-of-difference calculation unit that calculates a degree, and the plurality of first differences and the plurality of second differences And a posture estimation unit that estimates the posture of the object in the system.
Thereby, since the attitude | position detection apparatus can estimate the attitude | position of a target object based on each difference obtained from the several different viewpoint, it can improve the estimation precision of an attitude | position.

(21)また、本発明の一態様は、第1の撮像装置が対象物を撮像することで得られた第1の撮像画像と、第1の仮想空間における前記対象物のモデル画像との相違度を示す第1の相違度を、前記第1の仮想空間における前記対象物の複数の異なる位置毎に算出する第3の相違度算出部と、第2の撮像装置が対象物を撮像することで得られた第2の撮像画像と、第2の仮想空間における前記対象物のモデル画像との相違度を示す第1の相違度を、前記第2の仮想空間における前記対象物の複数の異なる位置毎に算出する第2の相違度算出部と、前記第1の相違度算出部が算出した複数の第1の相違度と、前記第2の相違度算出部が算出した複数の第2の相違度とに基づいて第1の撮像座標系における前記対象物の位置を推定する位置推定部と、を備える位置検出装置である。
これにより、位置検出装置は、複数の異なる視点から得られた相違度それぞれに基づいて対象物の位置を推定できるので、位置の推定精度を向上させることができる。
(21) Further, according to one embodiment of the present invention, a difference between a first captured image obtained by the first imaging device capturing an image of the target object and a model image of the target object in the first virtual space. A third dissimilarity calculating unit that calculates a first dissimilarity indicating a degree for each of a plurality of different positions of the object in the first virtual space, and the second imaging device images the object. The first difference indicating the difference between the second captured image obtained in step S3 and the model image of the object in the second virtual space is a plurality of different objects of the object in the second virtual space. A second dissimilarity calculator calculated for each position; a plurality of first dissimilarities calculated by the first dissimilarity calculator; and a plurality of second dissimilarities calculated by the second dissimilarity calculator. A position estimation unit that estimates the position of the object in the first imaging coordinate system based on the degree of difference; A position detecting device comprising a.
Thereby, since the position detection apparatus can estimate the position of the object based on each of the degrees of difference obtained from a plurality of different viewpoints, the position estimation accuracy can be improved.

(22)また、本発明の一態様は、第1の撮像装置が対象物を撮像して得た第1の撮像画像と、前記第1の撮像装置が撮像した空間に対応する第1の仮想空間における前記対象物のモデル画像との相違度を示す第1の相違度を、前記第1の仮想空間における対象物の複数の異なる姿勢毎に算出する第1の相違度算出部と、前記第1の撮像装置とは異なる位置に配置された第2の撮像装置が対象物を撮像して得た第2の撮像画像と、前記第2の撮像装置が撮像した空間に対応する第2の仮想空間における前記対象物のモデル画像との相違度を示す第2の相違度を、前記第2の仮想空間における対象物の複数の姿勢毎に算出する第2の相違度算出部と、前記第1の相違度算出部が算出した複数の第1の相違度と、前記第2の相違度算出部が算出した複数の第2の相違度とに基づいて前記第1の撮像座標系における前記対象物の姿勢を推定する姿勢推定部と、を備えるロボットである。
これにより、複数の異なる視点から得られた相違度それぞれに基づいて対象物の姿勢を推定できるので、姿勢の推定精度を向上させることができる。
(22) Further, according to one embodiment of the present invention, a first virtual image corresponding to a first captured image obtained by imaging a target by the first imaging device and a space captured by the first imaging device. A first dissimilarity calculating unit that calculates a first dissimilarity indicating a dissimilarity with a model image of the object in space for each of a plurality of different postures of the object in the first virtual space; And a second virtual image corresponding to a space captured by the second imaging device and a second captured image obtained by imaging the object by the second imaging device arranged at a different position from the first imaging device. A second dissimilarity calculating unit that calculates a second dissimilarity indicating a dissimilarity with the model image of the object in space for each of a plurality of postures of the object in the second virtual space; The plurality of first difference degrees calculated by the difference degree calculation unit and the second difference degree calculation unit calculate A robot and a posture estimation unit that estimates a posture of said object in said first imaging coordinate system based on a plurality of second difference degree.
Thereby, since the posture of the object can be estimated based on the degrees of difference obtained from a plurality of different viewpoints, the accuracy of posture estimation can be improved.

(23)また、本発明の一態様は、可動部を有するロボットと、第1の撮像装置が対象物を撮像して得た第1の撮像画像と、前記第1の撮像装置が撮像した空間に対応する第1の仮想空間における前記対象物のモデル画像との相違度を示す第1の相違度を、前記第1の仮想空間における対象物の複数の異なる姿勢毎に算出する第1の相違度算出部と、前記第1の撮像装置とは異なる位置に配置された第2の撮像装置が対象物を撮像して得た第2の撮像画像と、前記第2の撮像装置が撮像した空間に対応する第2の仮想空間における前記対象物のモデル画像との相違度を示す第2の相違度を、前記第2の仮想空間における対象物の複数の姿勢毎に算出する第2の相違度算出部と、前記第1の相違度算出部が算出した複数の第1の相違度と、前記第2の相違度算出部が算出した複数の第2の相違度とに基づいて前記第1の撮像座標系における前記対象物の姿勢を推定する姿勢推定部と、を備えるロボットシステムである。
これにより、複数の異なる視点から得られた相違度それぞれに基づいて対象物の姿勢を推定できるので、姿勢の推定精度を向上させることができる。
(23) Further, according to one embodiment of the present invention, a robot having a movable part, a first captured image obtained by imaging a target by the first imaging device, and a space captured by the first imaging device. A first difference that calculates a first degree of difference indicating a degree of difference from the model image of the object in the first virtual space corresponding to each of a plurality of different postures of the object in the first virtual space. A second captured image obtained by imaging the object by the second imaging device arranged at a position different from the degree calculating unit and the first imaging device, and a space captured by the second imaging device 2nd difference which calculates the 2nd difference which shows the difference with the model image of the above-mentioned object in the 2nd virtual space corresponding to each for a plurality of postures of the object in the above-mentioned 2nd virtual space A plurality of first differences calculated by the calculation unit and the first difference calculation unit; And posture estimation unit that estimates a posture of said object in said first imaging coordinate system based on a plurality of second difference degree of dissimilarity calculating unit 2 has been calculated, a robotic system comprising a.
Thereby, since the posture of the object can be estimated based on the degrees of difference obtained from a plurality of different viewpoints, the accuracy of posture estimation can be improved.

(24)また、本発明の一態様は、第1の相違度算出部が、第1の撮像装置が対象物を撮像して得た第1の撮像画像と、前記第1の撮像装置が撮像した空間に対応する第1の仮想空間における前記対象物のモデル画像との相違度を示す第1の相違度を、前記第1の仮想空間における対象物の複数の異なる姿勢毎に算出する手順と、第2の相違度算出部が、前記第1の撮像装置とは異なる位置に配置された第2の撮像装置が対象物を撮像して得た第2の撮像画像と、前記第2の撮像装置が撮像した空間に対応する第2の仮想空間における前記対象物のモデル画像との相違度を示す第2の相違度を、前記第2の仮想空間における対象物の複数の姿勢毎に算出する手順と、姿勢推定部が、前記第1の相違度算出部が算出した複数の第1の相違度と、前記第2の相違度算出部が算出した複数の第2の相違度とに基づいて前記第1の撮像座標系における前記対象物の姿勢を推定する手順と、を有する姿勢検出方法である。
これにより、複数の異なる視点から得られた相違度それぞれに基づいて対象物の姿勢を推定できるので、姿勢の推定精度を向上させることができる。
(24) In addition, according to one aspect of the present invention, the first dissimilarity calculating unit captures a first captured image obtained by the first imaging device capturing an image of an object, and the first imaging device captures an image. Calculating a first dissimilarity indicating a dissimilarity with the model image of the object in the first virtual space corresponding to the space for each of a plurality of different postures of the object in the first virtual space; A second captured image obtained by the second imaging device having a second dissimilarity calculating unit imaging a target by a second imaging device arranged at a position different from the first imaging device; and the second imaging A second dissimilarity indicating a dissimilarity with the model image of the object in the second virtual space corresponding to the space imaged by the device is calculated for each of a plurality of postures of the object in the second virtual space. A plurality of first dissimilarities calculated by the first dissimilarity calculating unit by the procedure and the posture estimating unit; A step of serial second difference calculation unit estimates the posture of the object in the first image acquisition coordinate system based on a plurality of second difference degree calculated, a position detection method having.
Thereby, since the posture of the object can be estimated based on the degrees of difference obtained from a plurality of different viewpoints, the accuracy of posture estimation can be improved.

(25)また、本発明の一態様は、コンピューターに、第1の撮像装置が対象物を撮像して得た第1の撮像画像と、前記第1の撮像装置が撮像した空間に対応する第1の仮想空間における前記対象物のモデル画像との相違度を示す第1の相違度を、前記第1の仮想空間における対象物の複数の異なる姿勢毎に算出する第1の相違度算出ステップと、前記第1の撮像装置とは異なる位置に配置された第2の撮像装置が対象物を撮像して得た第2の撮像画像と、前記第2の撮像装置が撮像した空間に対応する第2の仮想空間における前記対象物のモデル画像との相違度を示す第2の相違度を、前記姿勢取得ステップで算出された前記第2の仮想空間における対象物の複数の姿勢毎に算出する第2の相違度算出ステップと、前記第1の相違度算出ステップで算出された複数の第1の相違度と、前記第2の相違度算出ステップで算出された複数の第2の相違度とに基づいて前記第1の撮像座標系における前記対象物の姿勢を推定する姿勢推定ステップと、を実行させるためのプログラムである。
このプログラムを実行することで、複数の異なる視点から得られた相違度それぞれに基づいて対象物の姿勢を推定できるので、姿勢の推定精度を向上させることができる。
(25) In addition, according to one embodiment of the present invention, a computer may include a first captured image obtained by imaging a target by the first imaging device, and a first space corresponding to the space captured by the first imaging device. A first dissimilarity calculating step for calculating a first dissimilarity indicating a dissimilarity with the model image of the object in one virtual space for each of a plurality of different postures of the object in the first virtual space; , A second captured image obtained by imaging a target object by a second imaging device arranged at a position different from that of the first imaging device, and a second corresponding to a space captured by the second imaging device. A second degree of difference indicating a degree of difference from the model image of the object in the second virtual space for each of a plurality of postures of the object in the second virtual space calculated in the posture acquisition step. 2 difference degree calculation steps and the first difference degree calculation step. Of the object in the first imaging coordinate system based on the plurality of first dissimilarities calculated in step 2 and the plurality of second dissimilarities calculated in the second dissimilarity calculating step. And a posture estimation step for estimating a posture.
By executing this program, the posture of the object can be estimated based on the degrees of difference obtained from a plurality of different viewpoints, so that the posture estimation accuracy can be improved.

第1の実施形態におけるロボットの構成を示す概略ブロック図である。It is a schematic block diagram which shows the structure of the robot in 1st Embodiment. 対象物の位置及び姿勢を検出する際に用いる座標を説明するための図である。It is a figure for demonstrating the coordinate used when detecting the position and attitude | position of a target object. 第1のカメラ及び第2のカメラで撮影した画像の一例を示す図である。It is a figure which shows an example of the image image | photographed with the 1st camera and the 2nd camera. 第1の実施形態における制御装置の構成を示す概略ブロック図である。It is a schematic block diagram which shows the structure of the control apparatus in 1st Embodiment. 第1の実施形態における位置姿勢検出部の構成を示す概略ブロック図である。It is a schematic block diagram which shows the structure of the position and orientation detection part in 1st Embodiment. 第1の実施形態における制御装置の処理全体の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of the whole process of the control apparatus in 1st Embodiment. 図4のステップS105及びS106で用いる対象物104の位置及び姿勢の検出処理の一例を示すフローチャートである。5 is a flowchart illustrating an example of a position and orientation detection process of an object 104 used in steps S105 and S106 of FIG. 図7の続きのフローチャートである。FIG. 8 is a flowchart continued from FIG. 7. 図8の続きのフローチャートである。FIG. 9 is a flowchart continued from FIG. 8. FIG. 第1のカメラの重みwと第2のカメラの重みwの時間的変化の一例である。The weight w A of the first camera which is an example of a temporal change of the weight w B of the second camera. 第2の実施形態における制御装置の構成を示す概略ブロック図である。It is a schematic block diagram which shows the structure of the control apparatus in 2nd Embodiment. 第2の実施形態における制御装置の処理全体の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of the whole process of the control apparatus in 2nd Embodiment. 第3の実施形態における制御装置の構成を示す概略ブロック図である。It is a schematic block diagram which shows the structure of the control apparatus in 3rd Embodiment. ロボット座標系におけるロボット本体の手先位置のx座標の時間変化の一例である。It is an example of the time change of the x coordinate of the hand position of the robot main body in a robot coordinate system. 第3の実施形態における制御装置の処理全体の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of the whole process of the control apparatus in 3rd Embodiment. 第3の実施形態におけるロボット制御部の処理の一例を示すフローチャートである。It is a flowchart which shows an example of the process of the robot control part in 3rd Embodiment. マスク画像について説明するための図である。It is a figure for demonstrating a mask image.

<第1の実施形態>
以下、本発明の実施形態について、図面を参照して詳細に説明する。
第1の実施形態におけるロボット1は、一例として、ステレオカメラを用いて、位置及び姿勢推定の対象となる対象物の位置及び姿勢の推定を行う。そして、ロボット1は、一例として、各カメラで撮影した画像と、対象物のCG(Computer Graphics)モデルを撮影した画像との相違度の加重平均を用いて対象物の位置及び姿勢を検出する。そして、ロボット1は、一例として、ビジュアルサーボを用いて対象物を所定の位置及び姿勢に制御する。
<First Embodiment>
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
As an example, the robot 1 according to the first embodiment uses a stereo camera to estimate the position and orientation of an object that is a target for position and orientation estimation. Then, as an example, the robot 1 detects the position and orientation of the object using a weighted average of the degrees of difference between an image captured by each camera and an image captured from a CG (Computer Graphics) model of the object. As an example, the robot 1 controls the target to a predetermined position and posture using visual servo.

図1は、第1の実施形態におけるロボットの構成を示す概略ブロック図である。ロボット1は、制御装置(姿勢検出装置)101、ロボット本体102、グリッパ103、第1のカメラ(第1の撮像装置)105、及び第2のカメラ(第2の撮像装置)106を備える。ロボット本体102は、一例として垂直多関節型ロボットである。第1のカメラ105、第2のカメラ106は、ステレオカメラを構成する。同図は、グリッパ103で対象物104をつかんでいる際のロボット1である。同図において、ロボットの手先の位置(以下、ロボット手先位置ともいう)P1の一例が示されている。   FIG. 1 is a schematic block diagram showing the configuration of the robot in the first embodiment. The robot 1 includes a control device (attitude detection device) 101, a robot body 102, a gripper 103, a first camera (first imaging device) 105, and a second camera (second imaging device) 106. The robot body 102 is a vertical articulated robot as an example. The first camera 105 and the second camera 106 constitute a stereo camera. The figure shows the robot 1 when the gripper 103 is holding the object 104. In the drawing, an example of the position of the robot hand (hereinafter also referred to as a robot hand position) P1 is shown.

同図において、Σはロボットの座標であり、Σにおける後述する第1のカメラ105の座標の姿勢を示す回転行列をR(ハット)RAとする。ここで、R(ハット)は、Rの上に記号^が付されたものである。
制御装置101は、ロボット本体102を制御する。
In the figure, sigma R are the coordinates of the robot, the rotation matrix indicating the orientation of the coordinates of the first camera 105 to be described later in sigma R and R (hat) RA. Here, R (hat) is obtained by adding the symbol ^ on R.
The control device 101 controls the robot body 102.

ロボット本体102は、制御装置101の制御に従って、グリッパ103で対象物104をつかむ。そして、ロボット本体102は、対象物104が目標となる位置及び姿勢をとるように、グリッパ103の位置(ロボット手先位置ともいう)及び姿勢をグリッパ103の目標位置及び目標姿勢に変更する。
ロボット本体102は一例として6個の関節を含む。なお、ロボット本体102の関節は5個以下でも7個以上であってもよい。本実施形態では、一例として、制御装置101は、対象物104を目標の位置及び姿勢をとるようにロボット本体102を制御することで、対象物104を搬送する例について説明する。なお、対象物104の組み立て作業なども同様の処理で行わせることが可能である。
The robot body 102 grasps the object 104 with the gripper 103 according to the control of the control device 101. Then, the robot body 102 changes the position (also referred to as the robot hand position) and posture of the gripper 103 to the target position and target posture of the gripper 103 so that the target object 104 takes a target position and posture.
The robot body 102 includes six joints as an example. The robot body 102 may have 5 or less joints or 7 or more joints. In the present embodiment, as an example, a description will be given of an example in which the control apparatus 101 conveys the object 104 by controlling the robot body 102 so that the object 104 takes a target position and posture. The assembly work of the object 104 can be performed by the same process.

本実施形態では、ステレオカメラの配置として並行ステレオのようにそれぞれのカメラの座標軸の向きを一致させるように配置するよりも、互いが補完し合う関係になるように、互いのカメラ座標の軸の向きが一致しないように配置する(互いに違う方向から対象物104を撮影するように配置する)とよい。   In this embodiment, rather than arranging the stereo cameras in such a way that the orientations of the coordinate axes of the respective cameras coincide with each other as in the case of parallel stereo, the axes of the respective camera coordinates are arranged so as to complement each other. It is good to arrange so that the directions do not match (arrange so that the object 104 is photographed from different directions).

図2は、対象物104の位置及び姿勢を検出する際に用いる座標を説明するための図である。同図において、Σは第1のカメラ105を基準とする座標(以下、第1のカメラ座標ともいう)、Σは第2のカメラ106を基準とする座標(以下、第2のカメラ座標ともいう)であり、T(アロー)BA及びR(ハット)BAはそれぞれ第2のカメラ座標Σにおける第1のカメラ座標Σの位置を示す位置ベクトル、第2のカメラ座標Σにおける第1のカメラ座標Σの姿勢を示す回転行列である。ここで、T(アロー)は、Tの上に記号→が付されたものである。T(アロー)及びR(ハット)は、それぞれ第1のカメラ座標Σにおける対象物104の位置を示す位置ベクトル、第1のカメラ座標Σにおける対象物104の姿勢を示す回転行列である。T(アロー)及びR(ハット)は、それぞれΣにおける対象物104の位置を示す位置ベクトル、Σにおける対象物104の姿勢を示す回転行列である。 FIG. 2 is a diagram for explaining coordinates used when detecting the position and orientation of the object 104. In the figure, Σ A is a coordinate based on the first camera 105 (hereinafter also referred to as a first camera coordinate), and Σ B is a coordinate based on the second camera 106 (hereinafter referred to as a second camera coordinate). and is also referred to), the at T (arrow) BA and R (hat) BA is the position vector indicating the position of the first camera coordinate sigma a in the second camera coordinate sigma B respectively, the second camera coordinate sigma B is a rotation matrix indicating the orientation of the first camera coordinate sigma a. Here, T (arrow) is obtained by adding a symbol → to T. T (Arrow) A and R (hat) A is the position vector indicating the position of the object 104 in the first camera coordinate sigma A respectively, at a rotation matrix indicating the orientation of the object 104 in the first camera coordinate sigma A is there. T (Arrow) B and R (hat) B is the position vector indicating the position of the object 104 in the sigma B respectively, a rotation matrix indicating the orientation of the object 104 in the sigma B.

図3は、第1のカメラ105及び第2のカメラ106で撮影した画像の一例を示す図である。同図において、第1のカメラ105で撮影した画像G301と、第2のカメラ106で撮影した画像G302が示されている。第1のカメラ105で撮影した画像G301の座標は該画像G301の左上隅を原点として横軸をu、縦軸をvとする。第2のカメラ106で撮影した画像G302の座標は該画像G302の左上隅を原点として横軸をu、縦軸をuとする。尚、第1のカメラ105で撮影した画像301及び第2のカメラ106で撮影した画像302中の実線で描かれた直方体は現在の対象物104の画像領域を示している。 FIG. 3 is a diagram illustrating an example of images taken by the first camera 105 and the second camera 106. In the figure, an image G301 photographed by the first camera 105 and an image G302 photographed by the second camera 106 are shown. The coordinates of the image G301 photographed by the first camera 105 are u A on the horizontal axis and v A on the vertical axis with the upper left corner of the image G301 as the origin. Coordinates of the image G302 taken by the second camera 106 u B the horizontal axis at the upper left corner of the image G302 as the origin, the longitudinal axis and u B. Note that a rectangular parallelepiped drawn with a solid line in the image 301 photographed by the first camera 105 and the image 302 photographed by the second camera 106 represents the image area of the current object 104.

図4は、第1の実施形態における制御装置101の構成を示す概略ブロック図である。制御装置101は、入力部110、処理部120、及び記憶部190を備える。
入力部110は、ユーザからの入力(例えば、設定項目に関する事項)を受け付け、受け付けた入力を示す入力情報を処理部120に出力する。
記憶部190には、処理部120が読み出して実行するための各種のプログラムが記憶されている。
FIG. 4 is a schematic block diagram illustrating the configuration of the control device 101 according to the first embodiment. The control device 101 includes an input unit 110, a processing unit 120, and a storage unit 190.
The input unit 110 receives input from the user (for example, items related to setting items), and outputs input information indicating the received input to the processing unit 120.
The storage unit 190 stores various programs for the processing unit 120 to read and execute.

処理部120は、入力部110から入力された入力情報を記憶部190に記憶させる。処理部120は、記憶部190に記憶されているプログラムを読み出して実行する。処理部120は、変換規則決定部130と、ゴール画像取得部140と、現在画像取得部145と、位置姿勢検出部150と、ロボット制御部160と、第1判定部170とを備える。   The processing unit 120 stores the input information input from the input unit 110 in the storage unit 190. The processing unit 120 reads and executes a program stored in the storage unit 190. The processing unit 120 includes a conversion rule determination unit 130, a goal image acquisition unit 140, a current image acquisition unit 145, a position and orientation detection unit 150, a robot control unit 160, and a first determination unit 170.

変換規則決定部130は、第1のカメラ105を基準とする第1の撮像座標系で対象物の姿勢を表したときの座標を第2のカメラ106を基準とする第2の撮像座標系で対象物104の姿勢を表したときの座標へ変換する(例えば、回転行列)を決定する。変換規則決定部130は、決定した変換規則を示す変換規則情報を位置姿勢検出部150に出力する。   The conversion rule determination unit 130 uses the second imaging coordinate system with the second camera 106 as a coordinate when the posture of the object is represented in the first imaging coordinate system with the first camera 105 as a reference. A conversion (for example, a rotation matrix) to the coordinates when the posture of the object 104 is expressed is determined. The conversion rule determination unit 130 outputs conversion rule information indicating the determined conversion rule to the position / orientation detection unit 150.

本実施形態では、一例として、対象物104が目標の位置から予め決められた範囲にある際の対象物104の視認性は、第2のカメラ106より第1のカメラ105の方が良いものとする。ここで、視認性とは、対象物104の位置または姿勢が変化した際の画像の変化量である。視認性が良いカメラは、対象物104の位置または姿勢が微小に変化した場合であっても、その変化の前後における画像間の変化量が大きい。これにより、視認性が良いカメラは、対象物104の位置または姿勢の微小変化を、より画像の違いとして捉えることができる。上述したことから、本実施形態では、一例として、対象物104が目標の位置から予め決められた範囲にある際に、該対象物104の位置または姿勢が変化する前後で第1のカメラ105が撮像して得た二つの画像間の変化量は、該対象物104の位置または姿勢が変化する前後で第2のカメラ106が撮像して得た二つの画像間の変化量より大きい。   In the present embodiment, as an example, the visibility of the object 104 when the object 104 is in a predetermined range from the target position is better for the first camera 105 than for the second camera 106. To do. Here, visibility is the amount of change in the image when the position or orientation of the object 104 changes. A camera with good visibility has a large amount of change between images before and after the change even if the position or orientation of the object 104 changes minutely. Thereby, a camera with good visibility can capture a minute change in the position or orientation of the object 104 as a difference in images. From the above, in the present embodiment, as an example, when the object 104 is within a predetermined range from the target position, the first camera 105 is moved before and after the position or posture of the object 104 changes. The amount of change between the two images obtained by imaging is larger than the amount of change between the two images obtained by the second camera 106 before and after the position or orientation of the object 104 changes.

ゴール画像取得部140は、対象物104が目標の位置及び姿勢にあるときに、第1のカメラ105が撮影した画像(以下、ゴール画像ともいう)を生成する。ゴール画像取得部140は、生成したゴール画像を示すゴール画像情報を位置姿勢検出部150へ出力する。
現在画像取得部145は、第1のカメラ105に現在の対象物104を撮像させ、撮像して得られた第1の画像を取得する。また、現在画像取得部145は、第2のカメラ106に現在の対象物104を撮像させ、撮像して得られた第2の画像を取得する。現在画像取得部145は、取得した第1の画像を示す第1画像情報と第2の画像を示す第2画像情報を位置姿勢検出部150へ出力する。
The goal image acquisition unit 140 generates an image (hereinafter also referred to as a goal image) captured by the first camera 105 when the object 104 is in the target position and posture. The goal image acquisition unit 140 outputs goal image information indicating the generated goal image to the position / orientation detection unit 150.
The current image acquisition unit 145 causes the first camera 105 to image the current object 104 and acquires a first image obtained by imaging. In addition, the current image acquisition unit 145 causes the second camera 106 to image the current object 104 and acquires a second image obtained by imaging. The current image acquisition unit 145 outputs the acquired first image information indicating the first image and second image information indicating the second image to the position and orientation detection unit 150.

位置姿勢検出部150は、変換規則決定部130が決定した変換規則とゴール画像取得部140が生成したゴール画像を参照して、対象物104が目標の位置及び姿勢にあるとき(ゴール状態)の対象物104の位置を示す位置ベクトルT(アロー) 及び姿勢R(ハット) を検出する。
また、位置姿勢検出部150は、変換規則決定部130が決定した変換規則と現在画像取得部145から入力された第1画像情報と第2画像情報を参照して、現在の対象物104の位置を示す位置ベクトルT(アロー) 及び姿勢R(ハット) を検出する。位置姿勢検出部150は、検出したゴール状態の対象物104の位置を示す位置ベクトルT(アロー) 及び姿勢R(ハット) を示す情報と、現在の対象物104の位置を示す位置ベクトルT(アロー) 及び姿勢R(ハット) を示す情報をロボット制御部160に出力する。
The position / orientation detection unit 150 refers to the conversion rule determined by the conversion rule determination unit 130 and the goal image generated by the goal image acquisition unit 140 when the target object 104 is at the target position and orientation (goal state). A position vector T (arrow) g A and a posture R (hat) g A indicating the position of the object 104 are detected.
Further, the position / orientation detection unit 150 refers to the conversion rule determined by the conversion rule determination unit 130, the first image information and the second image information input from the current image acquisition unit 145, and the current position of the object 104. A position vector T (arrow) c A and an attitude R (hat) c A are detected. The position / orientation detection unit 150 includes information indicating a position vector T (arrow) g A and an attitude R (hat) g A indicating the position of the detected target object 104 in the goal state, and a position indicating the current position of the object 104. Information indicating the vector T (arrow) c A and the posture R (hat) c A is output to the robot controller 160.

ロボット制御部160は、位置姿勢検出部150から入力されたゴール状態の対象物104の位置を示す位置ベクトルT(アロー) と現在の対象物104の位置を示す位置ベクトルT(アロー) とを参照して、グリッパ103を並進方向に移動させる。また、ロボット制御部160は、ゴール状態の対象物104の姿勢R(ハット) と現在の対象物104の姿勢R(ハット) とを参照して、グリッパ103を回転方向に移動させる。 The robot control unit 160 receives a position vector T (arrow) g A indicating the position of the target object 104 in the goal state input from the position and orientation detection unit 150 and a position vector T (arrow) indicating the current position of the target object c. Referring to A , the gripper 103 is moved in the translation direction. Further, the robot controller 160 refers to the posture R (hat) g A of the target object 104 in the goal state and the posture R (hat) c A of the current target object 104 to move the gripper 103 in the rotation direction. .

第1判定部170は、現在の対象物104の位置が、ゴール状態の対象物104の位置に到達したか否か、及び現在の対象物104の姿勢が、ゴール状態の対象物104の姿勢に到達したか否か判定する。
第1判定部170は、現在の対象物104の位置が、ゴール状態の対象物104の位置に到達し、かつ現在の対象物104の姿勢が、ゴール状態の対象物104の姿勢に到達した場合、対象物104がゴール状態に到達したと判定する。一方、それ以外の場合、第1判定部170は、ゴール状態に到達していないと判定し、第1のカメラ座標における現在の対象物104の位置を示す位置ベクトルT(アロー) 及び姿勢を示す回転行列R(ハット) を位置姿勢検出部150に検出させ、処理を続行させる。
The first determination unit 170 determines whether the current position of the target object 104 has reached the position of the target object 104 in the goal state, and the current posture of the target object 104 is set to the posture of the target object 104 in the goal state. It is determined whether it has been reached.
The first determination unit 170 determines that the current position of the target object 104 has reached the position of the target object 104 in the goal state, and the current posture of the target object 104 has reached the position of the target object 104 in the goal state It is determined that the object 104 has reached the goal state. On the other hand, in other cases, the first determination unit 170 determines that the goal state has not been reached, and the position vector T (arrow) c A and the posture indicating the current position of the object 104 in the first camera coordinates. The position / orientation detection unit 150 detects a rotation matrix R (hat) c A indicating, and the process is continued.

図5は、第1の実施形態における位置姿勢検出部150の構成を示す概略ブロック図である。位置姿勢検出部150は、第1の相違度算出部151、姿勢取得部152、第2の相違度算出部153、姿勢推定部154、位置推定部156及び第2判定部159を備える。位置推定部156は、平面位置推定部157及び奥行き更新部158を備える。まず、位置姿勢検出部150が備える各部の処理概要について説明した後に、後述するフローチャートを用いて各部の詳細な処理について説明する。   FIG. 5 is a schematic block diagram illustrating a configuration of the position / orientation detection unit 150 according to the first embodiment. The position / orientation detection unit 150 includes a first dissimilarity calculation unit 151, an attitude acquisition unit 152, a second dissimilarity calculation unit 153, an attitude estimation unit 154, a position estimation unit 156, and a second determination unit 159. The position estimation unit 156 includes a plane position estimation unit 157 and a depth update unit 158. First, after describing an outline of processing of each unit included in the position and orientation detection unit 150, detailed processing of each unit will be described using a flowchart described later.

第1の相違度算出部151は、第1のカメラ105が姿勢推定の対象となる対象物104を撮像して得た第1の撮像画像と、第1のカメラ105が撮像した空間に対応する第1の仮想空間における対象物104のモデル画像との相違度を示す第1の相違度を、第1の仮想空間における対象物の複数の異なる姿勢毎に算出する。本実施系形態では一例として、モデル画像はコンピューターグラフィック画像(CG画像)である。第1の相違度算出部151は、算出した複数の第1の相違度を示す情報を姿勢取得部152と姿勢推定部154へ出力する。ここで、ある軸方向またはある軸周りの相違度の変化量が大きいほど、視認性が高い。   The first dissimilarity calculation unit 151 corresponds to a first captured image obtained by the first camera 105 capturing an image of the object 104 to be posture estimated and a space captured by the first camera 105. A first dissimilarity indicating a dissimilarity with the model image of the object 104 in the first virtual space is calculated for each of a plurality of different postures of the object in the first virtual space. In the present embodiment, as an example, the model image is a computer graphic image (CG image). The first dissimilarity calculation unit 151 outputs information indicating the plurality of calculated first dissimilarities to the posture acquisition unit 152 and the posture estimation unit 154. Here, the greater the amount of change in the degree of difference in a certain axial direction or around a certain axis, the higher the visibility.

姿勢取得部152は、変換規則決定部130が決定した変換規則に基づいて、第1の仮想空間における対象物104の複数の異なる姿勢に対応する第2の仮想空間における対象物104の複数の姿勢をそれぞれ取得する。姿勢取得部152は、算出した複数の姿勢を示す情報を第2の相違度算出部153へ出力する。   The posture acquisition unit 152, based on the conversion rule determined by the conversion rule determination unit 130, a plurality of postures of the object 104 in the second virtual space corresponding to a plurality of different postures of the object 104 in the first virtual space. Get each. The posture acquisition unit 152 outputs information indicating the calculated plurality of postures to the second difference calculation unit 153.

第2の相違度算出部153は、第2のカメラ106が対象物104を撮像して得た第2の撮像画像と、第2のカメラ106が撮像した空間に対応する第2の仮想空間における対象物104のモデル画像との相違度を示す第2の相違度を、姿勢取得部152が算出した第2の仮想空間における対象物104の複数の姿勢毎に算出する。第2の相違度算出部153は、算出した複数の第2の相違度を示す情報を姿勢推定部154へ出力する。   The second dissimilarity calculation unit 153 includes a second captured image obtained by the second camera 106 capturing an image of the object 104 and a second virtual space corresponding to the space captured by the second camera 106. A second dissimilarity indicating a dissimilarity between the target object 104 and the model image is calculated for each of a plurality of postures of the target object 104 in the second virtual space calculated by the posture acquisition unit 152. The second dissimilarity calculation unit 153 outputs information indicating the calculated plurality of second dissimilarities to the posture estimation unit 154.

姿勢推定部154は、第1の相違度算出部151が算出した複数の第1の相違度と、第2の相違度算出部153が算出した複数の第2の相違度とを参照して、対象物104の姿勢を推定する。また、姿勢推定部154は、第1のカメラ105が第2のカメラ106よりも対象物104の視認性が良い場合に、対象物104が目標の位置から予め決められた位置範囲にあるとき(例えば、対象物104が目標の位置にあるとき)に、対象物104の姿勢の推定における第1の相違度に係る重みを第2の相違度に係る重みより大きくする。ここで視認性が良いとは、対象物104の位置または姿勢が変化した際の画像の変化量が大きいことを示し、第1のカメラ105が第2のカメラ106よりも対象物104の視認性が良い場合とは、対象物104の位置または姿勢が変化した際の第1画像の変化量が第2画像の変化量よりも大きいことを意味する。ここで、対象物104が目標の位置から予め決められた位置範囲にあるときには、対象物104が完全に停止しない状態も含まれる。姿勢推定部154は、推定した対象物104の姿勢を示す情報を第2判定部159へ出力する。
第1の相違度算出部151は、第1のカメラ105が対象物を撮像することで得られた第1の撮像画像と、第1の仮想空間における対象物104のモデル画像との相違度を示す第3の相違度を、第1の仮想空間における対象物104の複数の異なる位置毎に算出する。そして、第1の相違度算出部151は、算出した複数の第4の相違度を示す情報を平面位置推定部157と奥行き更新部158へ出力する。
The posture estimation unit 154 refers to the plurality of first differences calculated by the first difference calculation unit 151 and the plurality of second differences calculated by the second difference calculation unit 153. The posture of the object 104 is estimated. In addition, when the first camera 105 has better visibility of the object 104 than the second camera 106, the posture estimation unit 154 is in a position range determined in advance from the target position ( For example, when the object 104 is at the target position), the weight related to the first dissimilarity in the estimation of the posture of the object 104 is made larger than the weight related to the second dissimilarity. Here, “good visibility” means that the amount of change in the image when the position or orientation of the object 104 changes is large, and the first camera 105 is more visible than the second camera 106. The case where is good means that the amount of change of the first image when the position or orientation of the object 104 changes is larger than the amount of change of the second image. Here, when the object 104 is within a predetermined position range from the target position, a state in which the object 104 does not stop completely is also included. The posture estimation unit 154 outputs information indicating the estimated posture of the target object 104 to the second determination unit 159.
The first dissimilarity calculation unit 151 calculates the dissimilarity between the first captured image obtained by the first camera 105 capturing an image of the object and the model image of the object 104 in the first virtual space. The third degree of difference shown is calculated for each of a plurality of different positions of the object 104 in the first virtual space. Then, the first dissimilarity calculation unit 151 outputs information indicating the calculated fourth dissimilarities to the plane position estimation unit 157 and the depth update unit 158.

第2の相違度算出部153は、第2のカメラ106が対象物を撮像することで得られた第2の撮像画像と、第2の仮想空間における対象物104のモデル画像との相違度を示す第4の相違度を、第2の仮想空間における対象物104の複数の異なる位置毎に算出する。そして、第2の相違度算出部153は、算出した複数の第4の相違度を示す情報を奥行き更新部158へ出力する。   The second degree-of-difference calculation unit 153 calculates the degree of difference between the second captured image obtained by the second camera 106 capturing an object and the model image of the object 104 in the second virtual space. The fourth degree of difference shown is calculated for each of a plurality of different positions of the object 104 in the second virtual space. Then, the second dissimilarity calculation unit 153 outputs information indicating the calculated fourth dissimilarities to the depth update unit 158.

平面位置推定部157は、第1の相違度算出部151が算出した複数の第3の相違度を参照して、第1の撮像座標系における対象物104の水平位置及び垂直位置を更新する。平面位置推定部157は、例えば、更新後の水平位置及び垂直位置を示す情報を奥行き更新部158へ出力する。   The planar position estimation unit 157 refers to the plurality of third differences calculated by the first difference calculation unit 151 and updates the horizontal position and the vertical position of the object 104 in the first imaging coordinate system. The plane position estimation unit 157 outputs information indicating the updated horizontal position and vertical position to the depth update unit 158, for example.

奥行き更新部158は、第1の相違度算出部151が算出した複数の第3の相違度と、第2の相違度算出部153が算出した複数の第4の相違度と、平面位置推定部157から入力された更新後の水平位置及び垂直位置とを参照して、第1の撮像座標系における対象物104の奥行きを更新する。奥行き更新部158は、更新後の奥行きを示す情報と平面位置推定部157から入力された更新後の水平位置及び垂直位置を示す情報を第2判定部159へ出力する。   The depth update unit 158 includes a plurality of third differences calculated by the first difference calculation unit 151, a plurality of fourth differences calculated by the second difference calculation unit 153, and a plane position estimation unit. With reference to the updated horizontal position and vertical position input from 157, the depth of the object 104 in the first imaging coordinate system is updated. The depth update unit 158 outputs information indicating the updated depth and information indicating the updated horizontal position and vertical position input from the plane position estimation unit 157 to the second determination unit 159.

第2判定部159は、姿勢推定部154が推定した対象物の姿勢とそれ以前に推定した対象物104の姿勢との差を参照して、推定が収束したか否か判定する。更に、第2判定部159は、奥行き更新部158から入力された更新後の水平位置及び垂直位置とそれ以前に推定した対象物104の水平位置及び垂直位置とのそれぞれの差も参照して、推定が収束したか否か判定する。更に、第2判定部159は、奥行き更新部158から入力された更新後の奥行きとそれ以前に推定した奥行きとのそれぞれの差も参照して、推定が収束したか否か判定する。   The second determination unit 159 refers to the difference between the posture of the target object estimated by the posture estimation unit 154 and the posture of the target object 104 estimated before that to determine whether the estimation has converged. Further, the second determination unit 159 also refers to the respective differences between the updated horizontal position and vertical position input from the depth update unit 158 and the horizontal position and vertical position of the object 104 estimated before that, It is determined whether the estimation has converged. Further, the second determination unit 159 determines whether or not the estimation has converged with reference to each difference between the updated depth input from the depth update unit 158 and the depth estimated before that.

第2判定部159が収束していないと判定した場合、各部は以下の処理を実行する。第1の相違度算出部151は、対象物104のモデル画像の姿勢を予め決められたように変更した後のモデル画像と第1の撮像画像とに基づいて、複数の第1の相違度を算出する。更に、第2の相違度算出部153は、対象物104のモデル画像の姿勢を予め決められたように変更した後のモデル画像と第2の撮像画像とに基づいて、複数の第2の相違度を算出する。そして、姿勢推定部154は、第1の相違度算出部151が算出した複数の第1の相違度と、第2の相違度算出部153が算出した複数の第2の相違度とに基づいて、対象物104の姿勢を更新する。第2判定部159は、姿勢推定部154が更新した対象物104の姿勢を用いて判定を再び行う。これらの処理の詳細は後述するフローチャートで説明する。   When the second determination unit 159 determines that it has not converged, each unit executes the following processing. The first dissimilarity calculation unit 151 calculates a plurality of first dissimilarities based on the model image and the first captured image after changing the posture of the model image of the object 104 as determined in advance. calculate. Furthermore, the second dissimilarity calculation unit 153 generates a plurality of second differences based on the model image and the second captured image after changing the posture of the model image of the object 104 as determined in advance. Calculate the degree. Then, the posture estimation unit 154 is based on the plurality of first differences calculated by the first difference calculation unit 151 and the plurality of second differences calculated by the second difference calculation unit 153. The posture of the object 104 is updated. The second determination unit 159 performs determination again using the posture of the object 104 updated by the posture estimation unit 154. Details of these processes will be described with reference to flowcharts described later.

一方、第2判定部159が収束したと判定した場合で、推定対象がゴール状態の対象物104の位置を示す位置ベクトルT(アロー) 及び姿勢を示す回転行列R(ハット) の場合、第2判定部159は、姿勢推定部154が推定した対象物104の姿勢をゴール状態の対象物104の姿勢を示す回転行列R(ハット) として、ロボット制御部160へ出力する。また、平面位置推定部157が出力した更新後の水平位置及び垂直位置と奥行き更新部158が出力した更新後の奥行きとをあわせて、ゴール状態の対象物104の位置T(アロー) として、ロボット制御部160へ出力する。 On the other hand, when it is determined that the second determination unit 159 has converged, the position vector T (arrow) g A indicating the position of the target object 104 in the goal state and the rotation matrix R (hat) g A indicating the posture In this case, the second determination unit 159 outputs the posture of the target object 104 estimated by the posture estimation unit 154 to the robot control unit 160 as a rotation matrix R (hat) g A indicating the posture of the target object 104 in the goal state. Further, the updated horizontal position and vertical position output from the plane position estimation unit 157 and the updated depth output from the depth update unit 158 are combined as a position T (arrow) g A of the target object 104 in the goal state. And output to the robot controller 160.

第2判定部159が収束したと判定した場合で、推定対象が現在の対象物104の位置T(アロー) 及び姿勢を示す回転行列R(ハット) の場合、第2判定部159は、姿勢推定部154が推定した対象物104の姿勢を現在の対象物104の姿勢を示す回転行列R(ハット) として、ロボット制御部160へ出力する。また、平面位置推定部157が出力した更新後の水平位置及び垂直位置と奥行き更新部158が出力した更新後の奥行きとをあわせて、現在の対象物104の位置T(アロー) として、ロボット制御部160へ出力する。 When it is determined that the second determination unit 159 has converged and the estimation target is the position T (arrow) c A of the current object 104 and the rotation matrix R (hat) c A indicating the posture, the second determination unit 159 Outputs the posture of the target object 104 estimated by the posture estimation unit 154 to the robot control unit 160 as a rotation matrix R (hat) c A indicating the current posture of the target object 104. Further, the updated horizontal position and vertical position output by the plane position estimation unit 157 and the updated depth output by the depth update unit 158 are combined as the current position T (arrow) c A of the target object 104. Output to the robot controller 160.

続いて、図6は、第1の実施形態における制御装置101の処理全体の流れの一例を示すフローチャートである。
(ステップS101)まず、処理部120は、ロボット座標Σにおける第1のカメラ座標Σの姿勢を示す回転行列R(ハット)RAを推定する。具体的には、例えば、検出が容易なマーカーをグリッパ103で把持させて、ロボット座標Σの各軸方向に移動させ、処理部120は、後述する対象物104の位置検出処理と同じ処理を用いて、第1のカメラ座標Σにおけるマーカーの位置を検出する。処理部120は、検出したマーカーの位置を用いてロボット座標Σにおける第1のカメラ座標Σの姿勢を示す回転行列R(ハット)RAを推定する。
Next, FIG. 6 is a flowchart illustrating an example of the overall processing flow of the control apparatus 101 according to the first embodiment.
(Step S101) First, the processing unit 120 estimates the rotation matrix R (hat) RA indicating the posture of the first camera coordinate sigma A in the robot coordinate sigma R. Specifically, for example, an easy to detect markers by gripping by the gripper 103, is moved in the axial direction of the robot coordinate sigma R, processing unit 120, the same processing as the position detection processing of the object 104 to be described later using, for detecting the position of the marker in the first camera coordinate sigma a. Processing unit 120 estimates the rotation matrix R (hat) RA indicating the posture of the first camera coordinate sigma A in the robot coordinate sigma R using the detected position of the marker.

(ステップS102)次に、変換規則決定部130は、第2のカメラ座標Σにおける第1のカメラ座標Σの原点の位置を示す位置ベクトルT(アロー)BAを推定する。また、変換規則決定部130は、第2のカメラ座標Σにおける第1のカメラ座標Σの姿勢を示す回転行列R(ハット)BAを推定する。具体的には、例えば、変換規則決定部130は、既知の模様が描かれた対象物104を第1のカメラ105及び第2のカメラ106で撮影させ、撮像で得た二つの画像から、後述する図7〜9で示される位置及び姿勢の検出処理で位置ベクトルT(アロー)BAと回転行列R(ハット)BAを推定してもよい。 (Step S102) Next, the conversion rule determination unit 130 estimates the position vector T (arrow) BA indicating the position of the origin of the first camera coordinate sigma A in the second camera coordinate sigma B. The conversion rule determination unit 130 estimates the rotation matrix R (hat) BA indicating the posture of the first camera coordinate sigma A in the second camera coordinate sigma B. Specifically, for example, the conversion rule determination unit 130 causes the first camera 105 and the second camera 106 to photograph the object 104 on which a known pattern is drawn, and uses two images obtained by the imaging to be described later. The position vector T (arrow) BA and the rotation matrix R (hat) BA may be estimated by the position and orientation detection processing shown in FIGS.

(ステップS103)次に、ゴール画像取得部140は、対象物104が目標の位置及び姿勢にあるときの第1のカメラ105が撮像する画像を生成する。具体的には、本実施形態では、一例として対象物104の搬送作業を想定しているので、ゴール画像取得部140は、一例として、搬送先における位置及び姿勢に対象物104があるときの第1のカメラ105が撮像する画像を生成してもよい。この際、ゴール画像取得部140は、実際に実空間上で対象物104を移動させた後に当該画像を取得してもよいし、仮想空間上で対象物104のCGモデルを移動させた後に当該画像を取得してもよい。
なお、組み立て作業であれば組み立て後の位置及び姿勢に対象物104があるときの第1のカメラ105における画像を生成してもよい。
(Step S103) Next, the goal image acquisition unit 140 generates an image captured by the first camera 105 when the object 104 is at the target position and posture. Specifically, in this embodiment, since the conveyance work of the target object 104 is assumed as an example, the goal image acquisition unit 140 is, for example, the first operation when the target object 104 is in the position and orientation at the transfer destination. An image captured by one camera 105 may be generated. At this time, the goal image acquisition unit 140 may acquire the image after actually moving the object 104 in the real space, or after moving the CG model of the object 104 in the virtual space. An image may be acquired.
Note that in the case of assembly work, an image in the first camera 105 when the object 104 is in the position and posture after assembly may be generated.

同図において、ステップS101及びS102はキャリブレーション作業であり少なくとも1回実施されれば良い。また、ステップS103は教示処理であり、処理内容が変わるのに応じて少なくとも1回実施されれば良い。次に説明するステップS104〜S108は毎回実行される処理である。   In the figure, steps S101 and S102 are calibration operations and may be performed at least once. Step S103 is a teaching process, and it may be performed at least once according to the change of the processing content. Steps S104 to S108 to be described next are processes executed every time.

(ステップS104)次に、ロボット制御部160は、対象物104を第1のカメラ105及び第2のカメラ106の視野内に移動させる。
(ステップS105)次に、位置姿勢検出部150は、後述する検出方式を用いて、ステップS103で作成した画像から第1のカメラ座標における対象物104の目標の位置(ゴール位置ともいう)を示す位置ベクトルT(アロー) 及び目標の姿勢(ゴール姿勢ともいう)を示す回転行列R(ハット) を検出する。
なお、ステップS103において、ゴール画像取得部140が仮想空間上で対象物104のCGモデルを移動させてゴール画像を取得した場合、仮想空間における位置及び姿勢は既知であるため、位置姿勢検出部150はそれらを目標の位置及び姿勢として設定してもよい。
(Step S <b> 104) Next, the robot control unit 160 moves the object 104 within the field of view of the first camera 105 and the second camera 106.
(Step S105) Next, the position / orientation detection unit 150 indicates a target position (also referred to as a goal position) of the object 104 in the first camera coordinates from the image created in step S103 using a detection method described later. A position vector T (arrow) g A and a rotation matrix R (hat) g A indicating a target posture (also referred to as goal posture) are detected.
In step S103, when the goal image acquisition unit 140 acquires the goal image by moving the CG model of the object 104 in the virtual space, the position and orientation detection unit 150 is known because the position and orientation in the virtual space are known. May set them as the target position and orientation.

(ステップS106)次に、第1のカメラ105及び第2のカメラ106を用いて、現在の第1のカメラ座標における対象物104の位置を示す位置ベクトルT(アロー) 及び姿勢を示す回転行列R(ハット) を検出する。この処理方式は後に詳述する。
(ステップS107)次に、ロボット制御部160は、ステップS101で取得したロボット座標Σにおける第1のカメラ座標Σの姿勢を示す回転行列R(ハット)RAを用いて、ロボットの手先についての並進方向の移動量及び回転方向の移動量を算出する。そして、ロボット制御部160は、ロボットの手先を算出した並進方向の移動量だけ並進方向へ移動させ、算出した回転方向の移動量Δθ(アロー)だけ回転方向へ移動させる。例えば、ロボット制御部160は、並進方向の移動量ΔT(アロー)及び回転方向の移動量Δθ(アロー)を次の式(1)に従って算出する。但し、ロボット制御部160は、例えば回転方向の移動量Δθ(アロー)の各要素Δθ、Δθ、Δθを、後述する式(5)を用いて算出する。
(Step S106) Next, using the first camera 105 and the second camera 106, a position vector T (arrow) c A indicating the position of the object 104 in the current first camera coordinates and rotation indicating the posture The matrix R (hat) c A is detected. This processing method will be described in detail later.
(Step S107) Next, the robot control unit 160 uses the rotation matrix R (hat) RA indicating the posture of the first camera coordinate sigma A in the robot coordinate sigma R obtained in step S101, for the hand of the robot The movement amount in the translation direction and the movement amount in the rotation direction are calculated. Then, the robot control unit 160 moves the hand of the robot in the translation direction by the calculated translation amount, and moves it in the rotation direction by the calculated rotation amount Δθ (arrow) R. For example, the robot control unit 160 calculates the translation amount ΔT (arrow) R in the translation direction and the movement amount Δθ (arrow) R in the rotation direction according to the following equation (1). However, the robot control unit 160 calculates, for example, each element Δθ x , Δθ y , Δθ z of the movement amount Δθ (arrow) R in the rotation direction by using Expression (5) described later.

Figure 2014161937
Figure 2014161937

ここで、θ(アロー) 及びθ(アロー) は、それぞれ推定によって得られた角度θ(アロー) 及びθ(アロー) の回転行列R(ハット)(θ(アロー) )及びR(ハット)(θ(アロー) )を、それぞれR(ハット) =R(ハット)RAR(ハット)(θ(アロー) )及びR(ハット) =R(ハット)RAR(ハット)(θ(アロー) )に従って、ロボット座標に変換し、後述する式(5)を用いて算出された角度である。
(ステップS108)次に、第1判定部170は、ステップS107でロボット制御部160が算出した並進方向の移動量ΔT(アロー)及び回転方向の移動量Δθ(アロー)が予め決められた値より小さいか否かを判定する。一方、予め決められた値より小さい場合(YES)、第1判定部170は対象物104がステップS103で作成した画像における対象物104の位置及び姿勢に到達したと判断してその処理を終了する。予め決められた値以上の場合(NO)、第1判定部170は目標の位置及び姿勢に到達していないと判断し、ステップS106に処理を戻す。以上で、本フローチャートの説明を終了する。
Here, θ (arrow) c R and θ (arrow) g R are rotation matrix R (hat) A (θ (arrow) of angles θ (arrow) g A and θ (arrow) c A obtained by estimation, respectively. ) C A ) and R (hat) A (θ (arrow) g A ), R (hat) c R = R (hat) RAR (hat) A (θ (arrow) c A ) and R (hat) ) according to g R = R (hat) RA R (hat) a (theta (Arrow) g a), and converted to the robot coordinate, an angle calculated by using the equation (5) described later.
(Step S108) Next, the first determination unit 170 determines in advance the movement amount ΔT (arrow) R in the translation direction and the movement amount Δθ (arrow) R in the rotation direction calculated by the robot control unit 160 in step S107. It is determined whether it is smaller than the value. On the other hand, if it is smaller than the predetermined value (YES), the first determination unit 170 determines that the object 104 has reached the position and orientation of the object 104 in the image created in step S103, and ends the process. . When the value is equal to or greater than the predetermined value (NO), the first determination unit 170 determines that the target position and posture have not been reached, and returns the process to step S106. Above, description of this flowchart is complete | finished.

図7は、図4のステップS102、S105及びS106で用いる対象物104の位置及び姿勢の検出処理の一例を示すフローチャートである。図8は、図7の続きのフローチャートである。図9は、図8の続きのフローチャートである。
(ステップS201)まず、位置姿勢検出部150は、第1のカメラ座標及び第2のカメラ座標における対象物104の初期検出位置を示す位置ベクトルT(アロー)[x]、T(アロー)[x]を設定する。搬送作業の処理フローが予め決められている場合、例えば、入力部110がユーザからの初期検出位置の入力を受け付ける。そして、例えば、位置姿勢検出部150が、入力部110が受け付けた初期検出位置が示す位置に上述の位置ベクトルを設定する。
FIG. 7 is a flowchart illustrating an example of the position and orientation detection processing of the object 104 used in steps S102, S105, and S106 of FIG. FIG. 8 is a flowchart subsequent to FIG. FIG. 9 is a flowchart subsequent to FIG.
(Step S201) First, the position / orientation detection unit 150 includes a position vector T (arrow) A [x A y A z A ] indicating an initial detection position of the object 104 in the first camera coordinates and the second camera coordinates, T (Arrow) B [x B y B z B ] is set. When the processing flow of the transfer work is determined in advance, for example, the input unit 110 receives an input of the initial detection position from the user. For example, the position / orientation detection unit 150 sets the above-described position vector at the position indicated by the initial detection position received by the input unit 110.

(ステップS202)次に、姿勢取得部152は、第1のカメラ座標における対象物104の初期検出姿勢を示す回転行列R(ハット)を各軸方向の回転角度から算出する。具体的には、例えば、姿勢取得部152は、対象物104の姿勢の表現としてxyzオイラー角表現を用いて、回転行列R(ハット)を次の式(2)に従って算出する。 (Step S202) Next, the posture acquisition unit 152 calculates a rotation matrix R (hat) A indicating the initial detection posture of the object 104 at the first camera coordinates from the rotation angle in each axial direction. Specifically, for example, the posture acquisition unit 152 calculates the rotation matrix R (hat) A according to the following equation (2) using the xyz Euler angle representation as the posture representation of the object 104.

Figure 2014161937
Figure 2014161937

(ステップS203)次に、姿勢取得部152は、例えば、第1のカメラ座標における対象物104の検出姿勢R(ハット)から第2のカメラ座標における姿勢を示す回転行列R(ハット)(=R(ハット)BAR(ハット))を次の式(3)に従って算出する。 (Step S203) Next, the attitude acquisition unit 152, for example, a rotation matrix R (hat) B (hat) indicating the attitude at the second camera coordinates from the detected attitude R (hat) A of the object 104 at the first camera coordinates. = R (Hat) BA R (Hat) A ) is calculated according to the following equation (3).

Figure 2014161937
Figure 2014161937

(ステップS204)次に、第1の相違度算出部151は、例えば、第1のカメラ105で撮影した空間を再現する第1の仮想空間において、対象物104のCGモデルを位置T(アロー)及び姿勢R(ハット)から各軸正方向にΔ微小移動させて撮影した画像と、第1のカメラ105で撮影した画像との相違度E+xA 、E+yA 、E+zA 、E+θxA 、E+θyA 、E+θzA を算出する。ここで、相違度E+θxA 、E+θyA 、E+θzA は第1の相違度で、相違度E+xA 、E+yA 、E+zA は第3の相違度である。相違度の一例として、Sum of Squared Difference(SSD)を採用すると、第1の相違度算出部151は、各相違度を次の式(4)に従って算出する。 (Step S204) Next, the first dissimilarity calculation unit 151 positions the CG model of the object 104 at a position T (arrow) in the first virtual space that reproduces the space photographed by the first camera 105, for example. an image captured by moving Δ minute each axis positive direction from a and the attitude R (hat) a, dissimilarity E + xA a of the image taken by the first camera 105, E + yA a, E + zA a, E + ΘxA A , E + θyA A , and E + θzA A are calculated. Here, the dissimilarities E + θxA A , E + θyA A , and E + θzA A are the first dissimilarities, and the dissimilarities E + xA A , E + yA A , and E + zA A are the third dissimilarities. When Sum of Squared Difference (SSD) is adopted as an example of the degree of difference, the first degree-of-difference calculation unit 151 calculates each degree of difference according to the following equation (4).

Figure 2014161937
Figure 2014161937

ここで、Wは画像の横方向の画素数、Hは画像の縦方向の画素数、I(u,v)は片方の画像の座標(u,v)における階調、J(u,v)はもう一方の画像の座標(u,v)における階調である。
(ステップS205)次に、第1の相違度算出部151は、第1のカメラ105で撮影した空間を再現する第1の仮想空間において、対象物104のCGモデルを位置T(アロー)及び姿勢R(ハット)から各軸負方向にΔ微小移動させて撮影した画像と、第1のカメラ105で撮影した画像との相違度E−xA 、E−yA 、E−zA 、E−θxA 、E−θyA 、E−θzA を算出する。ここで、相違度E−θxA 、E−θyA 、E−θzA は第1の相違度で、相違度E−xA 、E−yA 、E−zA は第3の相違度である。
Here, W is the number of pixels in the horizontal direction of the image, H is the number of pixels in the vertical direction of the image, I (u, v) is the gradation at the coordinates (u, v) of one image, J (u, v) Is the gradation at the coordinates (u, v) of the other image.
(Step S205) Next, the first dissimilarity calculation unit 151 positions the CG model of the object 104 at the position T (arrow) A and the first virtual space that reproduces the space photographed by the first camera 105. Degree of difference E −xA A , E −yA A , E −zA A , between the image captured by Δ minute movement in each axis negative direction from the posture R (hat) A and the image captured by the first camera 105 E −θxA A , E −θyA A , and E −θzA A are calculated. Here, the dissimilarities E −θxA A , E −θyA A , and E −θzA A are the first dissimilarities, and the dissimilarities E −xA A , E −yA A , and E −zA A are the third dissimilarities. is there.

(ステップS206)次に、第2の相違度算出部153は、例えば、第2のカメラ106で撮影した空間を再現する第2の仮想空間において、対象物104のCGモデルを位置T(アロー)から各軸正方向にΔ微小移動させる。また、第2の相違度算出部153は、例えば、ステップS204における姿勢R(ハット)の微小移動量を第2のカメラ座標における微小移動量へ式(3)に従って変換する。そして、第2の相違度算出部153は、例えば、変換後の微小移動量に従って上記CGモデルを各軸方向に微小移動させて撮影した画像と、第2のカメラ106で撮影した画像との相違度E+xB 、E+yB 、E+zB 、E+θxB 、E+θyB 、E+θzB を算出する。ここで、相違度E+θxB 、E+θyB 、E+θzB は第2の相違度で、相違度E+xB 、E+yB 、E+zB は第4の相違度である。また、第2の相違度算出部153は、例えば各軸方向の回転角度を次の式(5)に従って算出する。 (Step S206) Next, the second dissimilarity calculation unit 153, for example, positions the CG model of the object 104 at the position T (arrow) in the second virtual space that reproduces the space photographed by the second camera 106. Δ is slightly moved in the positive direction of each axis from B. In addition, the second dissimilarity calculation unit 153 converts, for example, the minute movement amount of the posture R (hat) B in step S204 into the minute movement amount in the second camera coordinates according to Expression (3). Then, the second difference degree calculation unit 153, for example, a difference between an image photographed by minutely moving the CG model in each axial direction according to the converted minute movement amount and an image photographed by the second camera 106. degrees E + xB B, calculates E + yB B, E + zB a, E + θxB B, E + θyB B, the E + θzB B. Here, the dissimilarity E + θxB B, E + θyB B, E + θzB B in the second difference degree dissimilarity E + xB B, E + yB B, the E + zB A is a fourth difference degree. Further, the second dissimilarity calculation unit 153 calculates, for example, the rotation angle in each axial direction according to the following equation (5).

Figure 2014161937
Figure 2014161937

ここで、[R(ハット)]ijは回転行列R(ハット)のi行j列成分を表す。
(ステップS207)次に、第2の相違度算出部153は、例えば、第2のカメラ106で撮影した空間を再現する第2の仮想空間において、対象物104のCGモデルを位置T(アロー)から各軸負方向にΔ微小移動させる。また、第2の相違度算出部153は、例えば、S205における姿勢R(ハット)の微小移動を第2のカメラ座標における微小移動量へ変換する。そして、第2の相違度算出部153は、例えば、変換後の微小移動量に従って上記CGモデルを各軸方向に微小移動させて撮影した画像と、第2のカメラ106で撮影した画像との相違度E−xB 、E−yB 、E−zB 、E−θxB 、E−θyB 、E−θzB を算出する。ここで、相違度E−θxB 、E−θyB 、E−θzB は第2の相違度で、相違度E−xB 、E−yB 、E−zB は第4の相違度である。
Here, [R (hat)] ij represents an i-row j-column component of the rotation matrix R (hat).
(Step S207) Next, the second dissimilarity calculation unit 153 positions the CG model of the object 104 at a position T (arrow) in the second virtual space that reproduces the space photographed by the second camera 106, for example. Δ is slightly moved from B in the negative direction of each axis. Also, the second dissimilarity calculation unit 153 converts, for example, the minute movement of the posture R (hat) A in S205 into the minute movement amount in the second camera coordinates. Then, the second difference degree calculation unit 153, for example, a difference between an image photographed by minutely moving the CG model in each axial direction according to the converted minute movement amount and an image photographed by the second camera 106. degrees E -xB B, calculates E -yB B, E -zB a, E -θxB B, E -θyB B, the E -θzB B. Here, the dissimilarities E −θxB B , E −θyB B , and E −θzB B are the second dissimilarities, and the dissimilarities E −xB B , E −yB B , and E −zB A are the fourth dissimilarities. is there.

(ステップS208)次に、平面位置推定部157は、例えば、第1のカメラ105において、対象物104がT(アロー)にあるときのx及びy方向それぞれの相違度の勾配を、次の式(6)に従って算出する。 (Step S208) Next, the planar position estimating section 157, for example, in a first camera 105, the x A and y A directional gradients for each dissimilarity when the object 104 is in the T (arrow) A, It calculates according to following Formula (6).

Figure 2014161937
Figure 2014161937

(ステップS209)次に、平面位置推定部157は、例えば、第1のカメラ105における対象物104のx、及びy軸方向の検出位置を次の式(7)に従って更新する。ここで式(7)は、最急降下法による更新処理を表す。 (Step S209) Next, the plane position estimation unit 157 updates the detected positions of the object 104 in the first camera 105 in the x A and y A axis directions, for example, according to the following equation (7). Here, Expression (7) represents the update process by the steepest descent method.

Figure 2014161937
Figure 2014161937

ここで、Cは定数であって適宜設定される。
(ステップS210)次に、平面位置推定部157は、例えば、第2のカメラ106において、対象物104がT(アロー)にあるときのx及びy軸方向それぞれの相違度の勾配を次の式(8)に従って算出する。
Here, C is a constant and is set as appropriate.
(Step S210) Next, the planar position estimating section 157, for example, in the second camera 106, the x B and y B-axis gradient of the respective dissimilarity when the object 104 is in the T (Arrow) B It calculates according to following Formula (8).

Figure 2014161937
Figure 2014161937

(ステップS211)次に、平面位置推定部157は、例えば、第2のカメラ106における対象物104のx及びy軸方向の検出位置を次の式(9)に従って更新する。ここで式(9)は、最急降下法による更新処理を表している。 (Step S211) Next, the planar position estimating section 157, for example, to update the detection position of the x B and y B-axis direction of the object 104 in the second camera 106 according to the following equation (9). Here, Expression (9) represents the update process by the steepest descent method.

Figure 2014161937
Figure 2014161937

ここで、Cは定数であって適宜設定される。なお、x軸方向の検出位置を更新する際には、定数Cは例えば、次の式(10)で表されてもよい。 Here, C is a constant and is set as appropriate. Incidentally, when updating the detection position of the x A-axis direction is constant C, for example, it may be represented by the following equation (10).

Figure 2014161937
Figure 2014161937

ここで、Δは対象物をx軸方向に微小移動させた場合の距離である。この場合、定数Cにx軸方向の相違度Eの勾配を乗じた値は、次の式(11)から−Δ〜Δの範囲に収まる。 Here, delta is the distance in the case where is minutely moving the object in x A-axis direction. In this case, the value obtained by multiplying the constant C by the gradient of the dissimilarity E in the x-axis direction falls within the range of −Δ to Δ from the following equation (11).

Figure 2014161937
Figure 2014161937

これにより、更新量が−Δ〜Δの範囲であるので、平面位置推定部157は、水平位置を更新する際に、更新とともに水平位置が振動するのを低減することができる。   Thereby, since the update amount is in the range of −Δ to Δ, the plane position estimation unit 157 can reduce the vibration of the horizontal position along with the update when the horizontal position is updated.

(ステップS212)次に、奥行き更新部158は、第1のカメラ105における対象物104のz軸方向の検出位置zを、三角測量を利用して例えば次の式(12)に従って算出する。 (Step S212) Next, the depth update unit 158, a detection position z A of z A-axis direction of the object 104 in the first camera 105 is calculated according using triangulation example, the following equation (12) .

Figure 2014161937
Figure 2014161937

上述した処理をまとめると、以下の通りである。平面位置推定部157は、第1の相違度算出部が算出した複数の第3の相違度を参照して、前記第1の撮像座標系におけるカメラの光軸と直行する第1の平面の位置(x,y)を推定する。平面位置推定部157は、第2の相違度算出部が算出した複数の第4の相違度を参照して、前記第2の撮像座標系におけるカメラの光軸と直行する第2の平面の位置(x,y)を推定する。奥行き更新部158は、平面位置推定部157が推定した第1の平面の位置(x,y)と第21の平面の位置(x,y)とを参照して、第1の撮像座標系における対象物の奥行きzを算出する。
なお、奥行き更新部158は、第2のカメラ106における対象物104のz軸方向の検出位置zを次の式(13)に従って、算出してもよい。
The processing described above is summarized as follows. The plane position estimation unit 157 refers to the plurality of third differences calculated by the first difference calculation unit, and the position of the first plane orthogonal to the optical axis of the camera in the first imaging coordinate system Estimate (x A , y A ). The plane position estimation unit 157 refers to the plurality of fourth differences calculated by the second difference calculation unit, and the position of the second plane orthogonal to the optical axis of the camera in the second imaging coordinate system Estimate (x B , y B ). The depth updating unit 158 refers to the first plane position (x A , y A ) and the 21st plane position (x B , y B ) estimated by the plane position estimation unit 157, The depth z A of the object in the imaging coordinate system is calculated.
The depth updating unit 158 may calculate the detection position z B in the z B- axis direction of the object 104 in the second camera 106 according to the following equation (13).

Figure 2014161937
Figure 2014161937

そして、奥行き更新部158は、更新結果とステップS209の算出結果であるx、yとを合わせて第1のカメラ105における検出位置をT(アロー)=[xと設定する。ここで、本ステップS212では3次元復元によって得られた3次元位置のうちz軸方向のみを検出位置に反映させている。これは、3次元復元を行う際に第2のカメラ座標Σにおける第2のカメラ座標Σの姿勢を示す回転行列R(ハット)BAを用いているが、回転行列R(ハット)BAは誤差を含んでいる可能性が高い。そのため、その誤差を加味しても精度の向上が見込まれるz軸方向のみ第1のカメラ105における検出位置T(アロー)に反映させることで、検出精度の低下を防ぐことができる。 Then, the depth update unit 158 combines the update result and x A and y A which are the calculation results of step S209 to determine the detection position in the first camera 105 as T (arrow) A = [x A y A z A ]. Set to T. Here, the only z A-axis direction is reflected at the detection position of the three-dimensional position obtained by restoring this step in S212 3D. This uses a rotation matrix R (hat) BA indicating the attitude of the second camera coordinate Σ A in the second camera coordinate Σ B when performing the three-dimensional reconstruction, but the rotation matrix R (hat) BA is There is a high possibility that it contains errors. Therefore, by reflecting the detection position T (arrow) A in that also improve the accuracy by considering the error is expected z A-axis direction only the first camera 105, it is possible to prevent a decrease in detection accuracy.

(ステップS213)次に、奥行き更新部158は、ステップS212で設定した第1のカメラ105における対象物104のz軸方向の検出位置zを第2のカメラ座標に変換する。奥行き更新部158は、z軸方向の検出位置zを変換後の値で更新する。そして、奥行き更新部158は、更新結果とステップS211の算出結果であるxとyと合わせて第2のカメラ106における検出位置をT(アロー)=[xと設定する。 (Step S213) Next, the depth update unit 158 converts the z A-axis direction of the detection positions z A of the object 104 in the first camera 105 set in step S212 to the second camera coordinate. Depth update unit 158 updates the value of the converted detected positions z B of z B-axis direction. Then, the depth updating unit 158 determines the detection position in the second camera 106 by combining the update result and the calculation result x B and y B in step S211 with T (arrow) B = [x B y B z B ] T And set.

(ステップS214)次に、姿勢推定部154は、例えば、ステップS204〜S207で算出された対象物104のCGモデルの姿勢を微小移動させた時の各軸方向の相違度の加重平均をそれぞれ評価関数E+θxA ´、E―θxA ´、E+θyA ´、E―θyA ´、E+θzA ´、E―θzA ´、として、次の式(14)〜式(16)に従って算出する。 (Step S214) Next, the posture estimation unit 154 evaluates, for example, the weighted average of the dissimilarities in the respective axis directions when the posture of the CG model of the object 104 calculated in steps S204 to S207 is slightly moved. function E + θxA a ', E -θxA a', E + θyA a ', E -θyA a', E + θzA a ', E -θzA a' as, is calculated according to the following equation (14) to (16) .

Figure 2014161937
Figure 2014161937

Figure 2014161937
Figure 2014161937

Figure 2014161937
Figure 2014161937

ここで、加重平均における第1のカメラ105の重みw、第2のカメラ106の重みwを例えば次の式(17)及び式(18)のように定める。 Here, the weight w A of the first camera 105 in the weighted average, determine the weights w B of the second camera 106 for example as in the following Expression (17) and (18).

Figure 2014161937
Figure 2014161937

Figure 2014161937
Figure 2014161937

ここで、Dは定数であって適宜設定される。式(17)及び式(18)のように重みを設定することにより、例えば第1のカメラ105と第2のカメラ106とを比較して、第1のカメラ105の方が対象物104の視認性が良く、相違度が小さい場合、式(17)より加重平均における第1のカメラ105の重みwの方が第2のカメラ106の重みwより大きくなる。 Here, D is a constant and is appropriately set. By setting the weights as in Expression (17) and Expression (18), for example, the first camera 105 is compared with the second camera 106, and the first camera 105 is more visually recognizing the object 104. When the difference is small and the degree of dissimilarity is small, the weight w A of the first camera 105 in the weighted average is larger than the weight w B of the second camera 106 in Expression (17).

一方、第2のカメラ106の方が対象物104の視認性が良く、相違度が小さい場合、式(18)より加重平均における第2のカメラ106の重みwの方が第1のカメラ105の重みwより大きくなる。これにより、視認性の良い方のカメラで撮影された画像に基づく相違度の評価関数に占める割合が高くなるため、対象物104の姿勢が変化してもその姿勢の変化が評価関数の変化として反映されるためロバストに姿勢を検出できる。 On the other hand, when the second camera 106 has better visibility of the object 104 and the dissimilarity is smaller, the weight w B of the second camera 106 in the weighted average is higher than the first camera 105 from the equation (18). It is greater than the weight w a. As a result, since the ratio of the degree of difference based on the image captured by the camera with the better visibility to the evaluation function increases, even if the posture of the object 104 changes, the change in the posture becomes a change in the evaluation function. Since it is reflected, the posture can be detected robustly.

また、ステップS214において、対象物104が目標の位置及び姿勢にあるときの第1のカメラ105における画像を生成する際に、第1のカメラ105を対象物104の視認性が良い位置及び姿勢に設定してあることを想定する。その場合、式(17)より目標の位置及び姿勢付近での対象物104の姿勢検出では、第1のカメラ105により撮像された画像に基づく相違度の評価関数に占める割合が高くなる。先述したように、ステップS202において推定した第2のカメラ座標Σにおける第1のカメラ座標Σの姿勢を示す回転行列R(ハット)BAは誤差を含んでいる可能性が高い。しかしながら、上述のように設定することで、対象物104が目標の位置及び姿勢付近にあるときの対象物104の姿勢検出では、第1のカメラ105により撮像された画像に基づく相違度が評価関数に占める割合が高くなる。そのため、回転行列R(ハット)BAが含む誤差の影響を排除されて、高精度な姿勢検出ができる。 In step S214, when the image of the first camera 105 when the object 104 is at the target position and orientation is generated, the first camera 105 is brought into a position and orientation with good visibility of the object 104. Assume that it is set. In this case, in the posture detection of the object 104 near the target position and posture, the proportion of the difference degree in the evaluation function based on the image captured by the first camera 105 is high according to the equation (17). As previously described, the rotation matrix R (hat) BA indicating the posture of the first camera coordinate sigma A in the second camera coordinate sigma B estimated in step S202 it is likely to contain errors. However, by setting as described above, in the posture detection of the target object 104 when the target object 104 is in the vicinity of the target position and posture, the degree of difference based on the image captured by the first camera 105 is an evaluation function. The percentage of Therefore, the influence of the error included in the rotation matrix R (hat) BA is eliminated, and the posture can be detected with high accuracy.

なお、姿勢推定部154の処理は、上記の例に限ったものではない。姿勢推定部154は、第1の相違度が小さくなるほど、第1の相違度が姿勢の推定に貢献する割合を大きくしてもよい。同様に、姿勢推定部154は、第2の相違度が小さくなるほど、第2の相違度が姿勢の推定に貢献する割合を大きくしてもよい。   Note that the processing of the posture estimation unit 154 is not limited to the above example. The posture estimation unit 154 may increase the rate at which the first difference degree contributes to posture estimation as the first difference degree decreases. Similarly, the posture estimation unit 154 may increase the rate at which the second dissimilarity contributes to posture estimation as the second dissimilarity decreases.

次に、姿勢推定部154は、各軸方向の勾配を次の式(19)に従って算出する。   Next, the posture estimation unit 154 calculates the gradient in each axial direction according to the following equation (19).

Figure 2014161937
Figure 2014161937

(ステップS215)次に、姿勢推定部154は、例えば、第1のカメラ105における対象物104の姿勢を次の式(20)に従って更新する。ここで、式(20)は、最急降下法による更新処理を表す。   (Step S215) Next, the posture estimation unit 154 updates the posture of the object 104 in the first camera 105, for example, according to the following equation (20). Here, Formula (20) represents the update process by the steepest descent method.

Figure 2014161937
Figure 2014161937

ここで、Cは定数であって適宜設定される。
(ステップS216)第2判定部159は収束判定を行う。具体的には、例えば、第2判定部159は、ステップS209、S212及びS215で算出した第1のカメラ105における対象物104の位置及び姿勢について、前回の値との差が予め決められた値より小さいか否か判定する。第2判定部159は前回の値との差が予め決められた値より小さい場合(YES)、収束したと判断して処理を終了する。一方、第2判定部159は前回の値との差が予め決められた値以上の場合(NO)、収束していないと判断して処理をステップS203に戻す。
Here, C is a constant and is set as appropriate.
(Step S216) The second determination unit 159 performs convergence determination. Specifically, for example, the second determination unit 159 determines the difference between the position and orientation of the object 104 in the first camera 105 calculated in steps S209, S212, and S215 from the previous value. It is determined whether it is smaller. If the difference from the previous value is smaller than the predetermined value (YES), the second determination unit 159 determines that it has converged and ends the process. On the other hand, if the difference from the previous value is greater than or equal to a predetermined value (NO), the second determination unit 159 determines that it has not converged and returns the process to step S203.

以上が、対象物104の位置及び姿勢の検出処理の説明である。なお、本検出方式は図6におけるステップS102、S105及びS106で用いられるが、ステップS106ではステップS216の収束判定は行わず、検出を継続させる。   The above is the description of the position and orientation detection processing of the object 104. This detection method is used in steps S102, S105, and S106 in FIG. 6, but in step S106, the convergence determination in step S216 is not performed, and the detection is continued.

以上、本実施形態における制御装置101において、変換規則決定部130は、姿勢推定の対象となる対象物が目標の位置にある際に対象物104の視認性が良い第1のカメラ105とは異なる位置に配置された第2のカメラ106を基準とする第2のカメラ座標における、第1のカメラ105を基準とする第1のカメラ座標の姿勢を示す回転行列を推定する。そして、姿勢推定部154は、対象物104が目標の位置から予め決められた範囲にある際(例えば、対象物104が目標の位置に移動完了した際)に、第1の相違度が対象物104の姿勢の推定に貢献する割合を第2の相違度が対象物104の姿勢の推定に貢献する割合よりも高くする。そして、姿勢推定部154は、第1の相違度算出部151が算出した複数の第1の相違度と、第2の相違度算出部153が算出した複数の第2の相違度とを参照して、対象物104の姿勢を推定する。   As described above, in the control device 101 according to the present embodiment, the conversion rule determination unit 130 is different from the first camera 105 having good visibility of the target object 104 when the target object for posture estimation is at the target position. A rotation matrix indicating the orientation of the first camera coordinates relative to the first camera 105 in the second camera coordinates relative to the second camera 106 arranged at the position is estimated. Then, when the target 104 is in a predetermined range from the target position (for example, when the target 104 has finished moving to the target position), the posture estimation unit 154 determines that the first degree of difference is the target. The ratio that contributes to the estimation of the posture of the object 104 is set higher than the ratio that the second dissimilarity contributes to the estimation of the posture of the object 104. Then, the posture estimation unit 154 refers to the plurality of first differences calculated by the first difference calculation unit 151 and the plurality of second differences calculated by the second difference calculation unit 153. Thus, the posture of the object 104 is estimated.

これにより、姿勢推定部154は、対象物104が目標の位置から予め決められた範囲にある際に、変換規則が含む誤差の影響を受ける第2の相違度が姿勢の検出に貢献する割合が相対的に小さくなるので、変換規則が含む誤差が対象物の姿勢推定に与える影響を小さくすることができる。
その結果、姿勢推定部154は、対象物の姿勢推定の精度を向上させることができる。
また、第1のカメラ105は、対象物104が目標の位置にある際に対象物104の視認性が良く、かつ対象物104が目標の位置から予め決められた範囲にある際に第1の相違度が姿勢の検出に貢献する割合が相対的に大きくなるので、対象物104が目標の位置から予め決められた範囲にある際の対象物の姿勢精度を向上させることができる。
Thereby, the posture estimation unit 154 has a ratio in which the second degree of difference affected by the error included in the conversion rule contributes to posture detection when the object 104 is within a predetermined range from the target position. Since it becomes relatively small, it is possible to reduce the influence of the error included in the conversion rule on the posture estimation of the object.
As a result, the posture estimation unit 154 can improve the accuracy of posture estimation of the target object.
In addition, the first camera 105 has good visibility of the object 104 when the object 104 is at the target position, and the first camera 105 when the object 104 is in a predetermined range from the target position. Since the ratio that the degree of difference contributes to posture detection is relatively large, the posture accuracy of the target object when the target object 104 is in a predetermined range from the target position can be improved.

また、背景技術で説明した従来のステレオカメラを用いた姿勢の推定では、カメラ同士の相対的な位置関係を、何度もキャリブレーションして算出する必要があるため、煩雑で時間のかかる作業となるという問題があった。本実施形態における制御装置101は、カメラ同士の相対的な位置関係を算出する処理が必要ないので、簡便に対象物の姿勢を推定することができる。   In addition, posture estimation using the conventional stereo camera described in the background art requires calculation by calculating the relative positional relationship between the cameras many times. There was a problem of becoming. Since the control apparatus 101 in this embodiment does not require a process of calculating the relative positional relationship between the cameras, the control apparatus 101 can easily estimate the posture of the object.

また、背景技術で説明したステレオカメラを用いた従来技術において、カメラで撮影した画像から対象物の位置及び姿勢を検出する際に用いる手法は、対象物の形状や表面の状態などに応じて適宜選択する必要があり、多様な対象物に対して適用することが出来ないという問題もあった。   In addition, in the conventional technology using the stereo camera described in the background art, a technique used when detecting the position and orientation of an object from an image photographed by the camera is appropriately selected according to the shape of the object, the state of the surface, and the like. There is also a problem that it is necessary to select and cannot be applied to various objects.

それに対し、本実施形態の制御装置101は、各カメラで検出した対象物104の位置から3次元復元により、第1のカメラ105における対象物104の第1のカメラ105の光軸方向の位置zを算出する。ここで仮に第1のカメラ105の光軸方向の相違度からその光軸方向の位置を推定した場合には、第1のカメラ105の光軸方向の相違度の変化が小さいために、その光軸方向の位置の推定誤差は変換規則が含む誤差よりも大きくなってしまう。それに対して、本実施形態の制御装置101は、平面位置推定部157で推定された第1の平面の位置と、平面位置推定部157で推定された第2の平面の位置とを参照して第1のカメラ105の光軸方向の位置の推定を算出するため、その光軸方向の位置の推定精度を向上させることが出来る。 On the other hand, the control device 101 according to the present embodiment performs the three-dimensional reconstruction from the position of the target object 104 detected by each camera, and thereby the position z of the target object 104 in the first camera 105 in the optical axis direction of the first camera 105. A is calculated. Here, if the position in the optical axis direction of the first camera 105 is estimated from the degree of difference in the optical axis direction of the first camera 105, the change in the degree of difference in the optical axis direction of the first camera 105 is small. The estimation error of the axial position is larger than the error included in the conversion rule. On the other hand, the control apparatus 101 according to the present embodiment refers to the position of the first plane estimated by the plane position estimation unit 157 and the position of the second plane estimated by the plane position estimation unit 157. Since the estimation of the position of the first camera 105 in the optical axis direction is calculated, the estimation accuracy of the position in the optical axis direction can be improved.

なお、姿勢推定部154は、対象物104が目標の位置から予め決められた位置範囲にあるとき、第2の相違度に係る重み(例えば、第2のカメラ106の重みw)が予め決められた範囲に収まるよう、対象物104の移動開始時刻から、対象物104が目標の位置から予め決められた位置範囲に到達する時刻まで、第2の相違度に乗じる重み係数を変化させてもよい。具体的には、例えば、姿勢推定部154は、第2の相違度に係る重みが対象物104が目標の位置から予め決められた位置範囲にあるときに0になるよう、対象物104の移動開始時刻から、対象物104が目標の位置から予め決められた位置範囲に到達する時刻まで、第2の相違度に係る重みを変化させてもよい。具体的には、例えば、姿勢推定部154は、図10に示すように、第1のカメラ105の重みwと第2のカメラ106の重みwを時間的に変化させてもよい。図10は、第1のカメラ105の重みwと第2のカメラ106の重みwの時間変化の一例である。縦軸は重みwで、横軸は経過時間である。同図において、第1のカメラ105の重みwは、時間によらず一定で1である。それに対し、第2のカメラ106の重みwは、経過時間0(すなわちロボット手先位置の移動開始時)で1であるが、時間の経過とともに小さくなっている。そして、目標の位置及び姿勢に到達時に、第1のカメラ105の重みwが1のままであるのに対し、第2のカメラ106の重みwが0になっている。このように、姿勢推定部154は、対象物104の移動開始時刻から対象物104が目標の位置から予め決められた位置範囲に到達する時刻までの期間で、第2の相違度に乗じる重み係数を時間の経過とともに小さくしてもよい。 The posture estimation unit 154 determines a weight related to the second dissimilarity (for example, the weight w B of the second camera 106) when the object 104 is within a predetermined position range from the target position. Even if the weighting factor by which the second difference is multiplied is changed from the movement start time of the target object 104 to the time when the target object 104 reaches the predetermined position range from the target position so as to fall within the determined range. Good. Specifically, for example, the posture estimation unit 154 moves the object 104 so that the weight related to the second dissimilarity becomes 0 when the object 104 is in a predetermined position range from the target position. The weight related to the second difference may be changed from the start time to the time when the target object 104 reaches a predetermined position range from the target position. Specifically, for example, the posture estimating unit 154, as shown in FIG. 10, the weight w B the weight w A and the second camera 106 of the first camera 105 may be temporally varied. Figure 10 is an example of time change of the weight w B the weight w A and the second camera 106 of the first camera 105. The vertical axis is the weight w, and the horizontal axis is the elapsed time. In the figure, the weight w A of the first camera 105 is constant and 1 regardless of time. On the other hand, the weight w B of the second camera 106 is 1 at the elapsed time 0 (that is, at the start of movement of the robot hand position), but decreases with the passage of time. When the target position and posture are reached, the weight w A of the first camera 105 remains 1, whereas the weight w B of the second camera 106 is zero. In this way, the posture estimation unit 154 is a weighting factor that multiplies the second degree of difference in a period from the movement start time of the object 104 to the time when the object 104 reaches a predetermined position range from the target position. May be reduced over time.

これにより、対象物に関する作業が終了するときに、回転行列R(ハット)BAが含む誤差の影響を受ける第2の相違度に係る重みを0または0に近づけることができるので、回転行列R(ハット)BAが含む誤差が対象物104の姿勢推定に与える影響をより小さくすることができる。その結果、姿勢推定部154は、高精度に対象物の姿勢を推定することができる。 As a result, when the work related to the object is completed, the weight related to the second dissimilarity affected by the error included in the rotation matrix R (hat) BA can be brought close to 0 or 0, so that the rotation matrix R ( (Hat) The influence of the error included in the BA on the posture estimation of the object 104 can be further reduced. As a result, the posture estimation unit 154 can estimate the posture of the object with high accuracy.

また、姿勢推定部154は、図10に示すように第2の相違度に係る重み(例えば、第2のカメラ106の重みw)を、時間の経過とともに小さくしてもよい。これにより、時間が経過するに連れて(例えば、対象物104が目標位置に近づくに連れて)、回転行列R(ハット)BAが含む誤差の影響を受ける第2の相違度が姿勢の検出に貢献する割合が小さくなるので、回転行列R(ハット)BAが含む誤差が対象物104の姿勢推定に与える影響を小さくすることができる。その結果、姿勢推定部154は、高精度に対象物104の姿勢を推定することができる。 In addition, the posture estimation unit 154 may decrease the weight related to the second degree of difference (for example, the weight w B of the second camera 106) as time passes, as illustrated in FIG. As a result, as time elapses (for example, as the object 104 approaches the target position), the second degree of difference affected by the error included in the rotation matrix R (hat) BA is used for posture detection. Since the contribution ratio is small, the influence of the error included in the rotation matrix R (hat) BA on the posture estimation of the object 104 can be reduced. As a result, the posture estimation unit 154 can estimate the posture of the object 104 with high accuracy.

また、姿勢推定部154は、第1のカメラ105が第2のカメラ106よりも対象物104の視認性が良く、対象物104の位置が移動する場合、対象物104の単位時間あたりの移動量が小さくなるに従って第2の相違度に係る重み(例えば、第2のカメラ106の重みw)を小さくしてもよい。ここで、対象物104の単位時間あたりの移動量は対象物104を動かし始めたときが最も大きく、その後、時間の経過とともに徐々に小さくなるものである。このため、時間が経過するに連れて(例えば、対象物104が目標位置に近づくに連れて)、回転行列R(ハット)BAが含む誤差の影響を受ける第2の相違度が姿勢の検出に貢献する割合が小さくなるので、回転行列R(ハット)BAが含む誤差が対象物104の姿勢推定に与える影響を小さくすることができる。その結果、姿勢推定部154は、高精度に対象物の姿勢を推定することができる。 In addition, when the first camera 105 has better visibility of the object 104 than the second camera 106 and the position of the object 104 moves, the posture estimation unit 154 moves the object 104 per unit time. The weight related to the second dissimilarity (for example, the weight w B of the second camera 106) may be decreased as becomes smaller. Here, the amount of movement of the object 104 per unit time is the largest when the object 104 starts to move, and then gradually decreases with the passage of time. Therefore, as time elapses (for example, as the object 104 approaches the target position), the second difference degree affected by the error included in the rotation matrix R (hat) BA is used for posture detection. Since the contribution ratio is small, the influence of the error included in the rotation matrix R (hat) BA on the posture estimation of the object 104 can be reduced. As a result, the posture estimation unit 154 can estimate the posture of the object with high accuracy.

また、第1のカメラ105が第2のカメラ106よりも対象物104の視認性が良い場合、姿勢推定部154は、図10に示すように第2の相違度に係る重み(例えば、第2のカメラ106の重みw)を、対象物が目標の位置に近づくに従って小さくしてもよい。これにより、対象物に関する作業が終了に近づくに連れて、回転行列R(ハット)BAが含む誤差の影響を受ける第2の相違度が姿勢の検出に貢献する割合が小さくなるので、回転行列R(ハット)BAが含む誤差が対象物104の姿勢推定に与える影響を小さくすることができる。その結果、姿勢推定部154は、高精度に対象物の姿勢を推定することができる。 Further, when the first camera 105 has better visibility of the object 104 than the second camera 106, the posture estimation unit 154, as shown in FIG. The weight w B ) of the camera 106 may be reduced as the object approaches the target position. As a result, as the work on the object approaches, the ratio of the second dissimilarity influenced by the error included in the rotation matrix R (hat) BA contributes to the detection of the posture becomes smaller. (Hat) The influence of the error included in the BA on the posture estimation of the object 104 can be reduced. As a result, the posture estimation unit 154 can estimate the posture of the object with high accuracy.

<第2の実施形態>
続いて、第2の実施形態について説明する。第2の実施形態のロボット1bは、目標の位置付近の評価関数の勾配が急になる方の評価関数が導出された画像を撮像したカメラを、位置及び姿勢を決める際の基準となるカメラに設定する。第2の実施形態のロボット1bの構成は、第1の実施形態のロボット1に対して、制御装置101が制御装置(姿勢検出装置)101bに変更になったものである。
<Second Embodiment>
Next, the second embodiment will be described. In the robot 1b of the second embodiment, a camera that captures an image from which an evaluation function having a steeper gradient of the evaluation function near the target position is derived is used as a reference camera for determining the position and orientation. Set. The configuration of the robot 1b of the second embodiment is such that the control device 101 is changed to a control device (attitude detection device) 101b with respect to the robot 1 of the first embodiment.

図11は、第2の実施形態における制御装置101bの構成を示す概略ブロック図である。同図において、図4と共通する要素には同一の符号を付し、その具体的な説明を省略する。図11の制御装置101bの構成は、図4の制御装置101の構成に対して、処理部120が処理部120bに変更されたものになっている。図11の処理部120bの構成は、図4の処理部120の構成に対して、位置決め基準カメラ決定部180が追加され、ゴール画像取得部140がゴール画像取得部140bに、位置姿勢検出部150が位置姿勢検出部150bに変更されたものになっている。   FIG. 11 is a schematic block diagram illustrating a configuration of the control device 101b in the second embodiment. In this figure, elements common to those in FIG. 4 are denoted by the same reference numerals, and detailed description thereof is omitted. The configuration of the control device 101b in FIG. 11 is a configuration in which the processing unit 120 is changed to a processing unit 120b with respect to the configuration of the control device 101 in FIG. In the configuration of the processing unit 120b in FIG. 11, a positioning reference camera determination unit 180 is added to the configuration of the processing unit 120 in FIG. 4, the goal image acquisition unit 140 is added to the goal image acquisition unit 140b, and the position and orientation detection unit 150. Is changed to the position / orientation detection unit 150b.

ゴール画像取得部140bは、第1の実施形態におけるゴール画像取得部140と同様の機能を有するが、以下の点で異なる。ゴール画像取得部140bは、対象物104が目標の位置及び姿勢にあるときに、第1のカメラ105が対象物104を撮影した画像(以下、第1のゴール画像ともいう)を示す情報と第2のカメラ106が対象物104を撮影した画像(以下、第2のゴール画像ともいう)を示す情報とを位置決め基準カメラ決定部180へ出力する。   The goal image acquisition unit 140b has the same function as the goal image acquisition unit 140 in the first embodiment, but differs in the following points. The goal image acquisition unit 140b includes information indicating an image (hereinafter also referred to as a first goal image) taken by the first camera 105 when the object 104 is in the target position and orientation, and the first image. Information indicating an image (hereinafter also referred to as a second goal image) obtained by photographing the object 104 by the second camera 106 is output to the positioning reference camera determination unit 180.

位置決め基準カメラ決定部180は、例えば、第1のゴール画像を撮影した空間を再現する第1の仮想空間において存在する対象物104のCGモデルの位置及び姿勢から、予め決められた精度が要求される軸周りに正の角度方向に上記CGモデルΔ微小移動させて撮影した画像と、第1のゴール画像との相違度E を算出する。
また、位置決め基準カメラ決定部180は、例えば、第1のゴール画像を撮影した空間を再現する第1の仮想空間において存在する対象物104のCGモデルの位置及び姿勢から、予め決められた精度が要求される軸周りに負の角度方向に上記CGモデルΔ微小移動させて撮影した画像と、第1のゴール画像との相違度E を算出する。
The positioning reference camera determination unit 180 is required to have a predetermined accuracy based on the position and orientation of the CG model of the object 104 existing in the first virtual space that reproduces the space in which the first goal image is captured, for example. The degree of difference E A + between the image taken by moving the CG model Δ slightly in the positive angular direction around the axis and the first goal image is calculated.
In addition, the positioning reference camera determination unit 180 has a predetermined accuracy based on the position and orientation of the CG model of the object 104 existing in the first virtual space that reproduces the space where the first goal image is captured, for example. The degree of difference E A between the image taken by moving the CG model Δ slightly in the negative angular direction around the required axis and the first goal image is calculated.

また、位置決め基準カメラ決定部180は、例えば、第2のゴール画像を撮影した空間を再現する第2の仮想空間において存在する対象物104のCGモデルの位置及び姿勢から、予め決められた精度が要求される軸周りに正の角度方向に上記CGモデルΔ微小移動させて撮影した画像と、第2のゴール画像との相違度E を算出する。
また、位置決め基準カメラ決定部180は、例えば、第2のゴール画像を撮影した空間を再現する第2の仮想空間において存在する対象物104のCGモデルの位置及び姿勢から、予め決められた精度が要求される軸周りに負の角度方向に上記CGモデルをΔ微小移動させて撮影した画像と、第2のゴール画像との相違度E を算出する。
In addition, the positioning reference camera determination unit 180 has a predetermined accuracy based on the position and orientation of the CG model of the object 104 existing in the second virtual space that reproduces the space where the second goal image is captured, for example. The degree of difference E B + between the image captured by moving the CG model Δ slightly in the positive angular direction around the required axis and the second goal image is calculated.
In addition, the positioning reference camera determination unit 180 has a predetermined accuracy based on the position and orientation of the CG model of the object 104 existing in the second virtual space that reproduces the space where the second goal image is captured, for example. The degree of difference E B between the image taken by moving the CG model by Δ minutely around the required axis in the negative angle direction and the second goal image is calculated.

そして、位置決め基準カメラ決定部180は、例えば、相違度E と相違度E の勾配G(=(E −E )/2Δ)を算出する。また、位置決め基準カメラ決定部180は、例えば、相違度E と相違度E の勾配G(=(E −E )/2Δ)を算出する。そして、位置決め基準カメラ決定部180は、例えば勾配Gと勾配Gのうち、勾配が急な方を導出するのに用いたカメラを位置及び姿勢を決める際の基準となるカメラに設定する。
そして、位置決め基準カメラ決定部180は、設定した基準となるカメラを示す基準カメラ情報を位置姿勢検出部150bへ出力する。
The positioning reference camera determining unit 180, for example, degree-of-difference E A + and dissimilarity E A - gradient G A (= (E A + -E A -) / 2Δ) is calculated. The positioning reference camera determining unit 180, for example, degree-of-difference E B + and dissimilarity E B - gradient G B (= (E B + -E B -) / 2Δ) is calculated. The positioning reference camera determining unit 180, for example, of the gradient G A and gradient G B, it is set in the camera as a reference in determining the position and orientation of the camera used to slope to derive a better steep.
Then, the positioning reference camera determination unit 180 outputs reference camera information indicating the set reference camera to the position / orientation detection unit 150b.

位置姿勢検出部150bは、第1の実施形態における位置姿勢検出部150と同様の機能を有するが、以下の点で異なる。位置姿勢検出部150bは、基準カメラ情報が示す基準となるカメラが第1のカメラ105の場合、第1の実施形態と同様の処理を行う。位置姿勢検出部150bは、基準カメラ情報が示す基準となるカメラが第2のカメラ106の場合、第1の実施形態における第1のカメラ105と第2のカメラ106とを入れ替えた処理を行う。   The position / orientation detection unit 150b has the same function as the position / orientation detection unit 150 in the first embodiment, but differs in the following points. The position / orientation detection unit 150b performs the same process as in the first embodiment when the reference camera indicated by the reference camera information is the first camera 105. When the reference camera indicated by the reference camera information is the second camera 106, the position / orientation detection unit 150b performs a process of replacing the first camera 105 and the second camera 106 in the first embodiment.

図12は、第2の実施形態における制御装置101の処理全体の流れの一例を示すフローチャートである。
(ステップS301)まず、変換規則決定部130は、第2のカメラ座標Σにおける第1のカメラ座標Σの原点の位置を示す位置ベクトルT(アロー)BAを取得する。変換規則決定部130は、取得した位置ベクトルT(アロー)BAにマイナスを乗じたベクトルを、第1のカメラ座標Σにおける第2のカメラ座標Σの原点の位置を示す位置ベクトルT(アロー)ABとして算出する。
また、変換規則決定部130は、第2のカメラ座標Σにおける第1のカメラ座標Σの姿勢を示す回転行列R(ハット)BAを取得する。変換規則決定部130は、取得した回転行列R(ハット)BAの逆行列を、第1のカメラ座標Σにおける第2のカメラ座標Σの姿勢を示す回転行列R(ハット)ABとして算出する。
また、変換規則決定部130は、ロボット座標Σにおける第1のカメラ座標Σの姿勢を示す回転行列R(ハット)RAを取得する。そして、変換規則決定部130は、取得した回転行列R(ハット)RAを左から算出した回転行列R(ハット)ABに乗じることで、ロボット座標Σにおける第2のカメラ座標Σの姿勢を示す回転行列R(ハット)RBを算出する。
(ステップS302)次に、ゴール画像取得部140bは、対象物104が目標の位置及び姿勢にあるときに第1のカメラ105から撮像される第1のゴール画像と第2のカメラ106から撮像される第2のゴール画像を取得する。
(ステップS303)次に、位置決め基準カメラ決定部180は、どちらのカメラを基準に位置決めするか決定する。
(ステップS304)次に、位置姿勢検出部150bは、位置決め基準カメラ決定部180による決定が、第1のカメラ105を基準に位置決めする決定であるか否か判定する。
位置姿勢検出部150bは、第1のカメラ105を基準に位置決めする決定の場合(YES)、ステップS305に移行し、処理部120bはステップS305〜S309の処理を実行する。一方、位置姿勢検出部150bは、第2のカメラ106を基準に位置決めする決定の場合(NO)、ステップS310に移行し、処理部120bはステップS310〜S314の処理を実行する。
FIG. 12 is a flowchart illustrating an example of the overall processing flow of the control apparatus 101 according to the second embodiment.
(Step S301) First, the conversion rule determination unit 130 obtains a position vector T (arrow) BA indicating the position of the origin of the first camera coordinate sigma A in the second camera coordinate sigma B. The conversion rule determining unit 130 uses a vector obtained by multiplying the acquired position vector T (arrow) BA by a minus value as a position vector T (arrow) indicating the position of the origin of the second camera coordinate Σ B in the first camera coordinate Σ A. ) Calculated as AB .
The conversion rule determination unit 130 obtains the rotation matrix R (hat) BA indicating the posture of the first camera coordinate sigma A in the second camera coordinate sigma B. The conversion rule determining unit 130 calculates the inverse matrix of the acquired rotation matrix R (hat) BA as a rotation matrix R (hat) AB indicating the attitude of the second camera coordinates Σ B in the first camera coordinates Σ A. .
The conversion rule determination unit 130 obtains the rotation matrix R (hat) RA indicating the posture of the first camera coordinate sigma A in the robot coordinate sigma R. Then, the conversion rule determining unit 130 multiplies the obtained rotation matrix R (hat) RA by the rotation matrix R (hat) AB calculated from the left to obtain the posture of the second camera coordinate Σ B in the robot coordinate Σ R. A rotation matrix R (hat) RB shown is calculated.
(Step S302) Next, the goal image acquisition unit 140b captures the first goal image captured from the first camera 105 and the second camera 106 when the object 104 is at the target position and orientation. The second goal image is acquired.
(Step S303) Next, the positioning reference camera determination unit 180 determines which camera is used as a reference for positioning.
(Step S304) Next, the position / orientation detection unit 150b determines whether or not the determination by the positioning reference camera determination unit 180 is a determination to position the first camera 105 as a reference.
If the position / orientation detection unit 150b determines to position the first camera 105 as a reference (YES), the process proceeds to step S305, and the processing unit 120b executes the processes of steps S305 to S309. On the other hand, if the position / orientation detection unit 150b determines to position the second camera 106 as a reference (NO), the process proceeds to step S310, and the processing unit 120b executes the processes of steps S310 to S314.

(ステップS305)ロボット制御部160は、対象物104を第1のカメラ105及び第2のカメラ106の視野内に移動させる。
(ステップS306)次に、位置姿勢検出部150bは、ステップS301で取得した第1のゴール画像から第1のカメラ座標における対象物104の位置を示す位置ベクトルT(アロー) 及び姿勢を示す回転行列R(ハット) を検出する。
(Step S <b> 305) The robot control unit 160 moves the object 104 within the field of view of the first camera 105 and the second camera 106.
(Step S306) Next, the position / orientation detection unit 150b indicates a position vector T (arrow) g A indicating the position of the object 104 in the first camera coordinates from the first goal image acquired in step S301, and the attitude. A rotation matrix R (hat) g A is detected.

(ステップS307)次に、位置姿勢検出部150bは、第1のカメラ105及び第2のカメラ106を用いて、現在の第1のカメラ座標における対象物104の位置を示す位置ベクトルT(アロー) 及び姿勢を示す回転行列R(ハット) を検出する。
(ステップS308)次に、ロボット制御部160は、ステップS304で取得したロボット座標Σにおける第1のカメラ座標Σの姿勢を示す回転行列R(ハット)RAを用いて、ロボットの手先についての並進方向の移動量及び回転方向の移動量を算出する。そして、ロボット制御部160は、ロボットの手先を算出した並進方向の移動量ΔT(アロー)だけ並進方向へ移動させ、算出した回転方向の移動量Δθ(アロー)だけ回転方向へ移動させる。
(Step S307) Next, the position / orientation detection unit 150b uses the first camera 105 and the second camera 106, and a position vector T (arrow) indicating the position of the object 104 in the current first camera coordinates. c A and a rotation matrix R (hat) indicating a posture c A are detected.
(Step S308) Next, the robot control unit 160 uses the rotation matrix R (hat) RA indicating the posture of the first camera coordinate sigma A in the robot coordinate sigma R obtained in step S304, for the hand of the robot The movement amount in the translation direction and the movement amount in the rotation direction are calculated. Then, the robot controller 160 moves the hand of the robot in the translation direction by the calculated translational movement amount ΔT (arrow) R, and moves it in the rotational direction by the calculated rotational movement amount Δθ (arrow) R.

(ステップS309)次に、第1判定部170は、ステップS309でロボット制御部160が算出した並進方向の移動量ΔT(アロー)及び回転方向の移動量Δθ(アロー)が予め決められた値より小さいか否かを判定する。予め決められた値より小さい場合(YES)、第1判定部170は対象物104がステップS301で作成した第1のゴール画像における対象物104の位置及び姿勢に到達したと判断してその処理を終了する。予め決められた値以上の場合(NO)、第1判定部170は目標の位置及び姿勢に到達していないと判断し、ステップS307に処理を戻す。なお、ロボット制御部160は、例えば回転方向の移動量Δθ(アロー)の各要素Δθ、Δθ、Δθを、式(5)を用いて算出する。 (Step S309) Next, the first determination unit 170 determines in advance the movement amount ΔT (arrow) R in the translation direction and the movement amount Δθ (arrow) R in the rotation direction calculated by the robot control unit 160 in step S309. It is determined whether it is smaller than the value. If it is smaller than the predetermined value (YES), the first determination unit 170 determines that the object 104 has reached the position and orientation of the object 104 in the first goal image created in step S301, and performs the processing. finish. If the value is equal to or greater than a predetermined value (NO), the first determination unit 170 determines that the target position and posture have not been reached, and returns the process to step S307. Note that the robot control unit 160 calculates, for example, each element Δθ x , Δθ y , Δθ z of the movement amount Δθ (arrow) R in the rotation direction using Expression (5).

(ステップS310)次に、ロボット制御部160は、対象物104を第1のカメラ105及び第2のカメラ106の視野内に移動させる。
(ステップS311)次に、位置姿勢検出部150bは、ステップS301で取得した第2のゴール画像から第2のカメラ座標における対象物104の位置を示す位置ベクトルT(アロー) 及び姿勢を示す回転行列R(ハット) を検出する。
(Step S <b> 310) Next, the robot control unit 160 moves the object 104 within the field of view of the first camera 105 and the second camera 106.
(Step S311) Next, the position / orientation detection unit 150b indicates a position vector T (arrow) g B indicating the position of the object 104 in the second camera coordinates from the second goal image acquired in step S301, and the attitude. A rotation matrix R (hat) g B is detected.

(ステップS312)次に、位置姿勢検出部150bは、第1のカメラ105及び第2のカメラ106を用いて、現在の第2のカメラ座標における対象物104の位置を示す位置ベクトルT(アロー) 及び姿勢を示す回転行列R(ハット) を検出する。
(ステップS313)次に、ロボット制御部160は、ステップS311で取得したロボット座標Σにおける第2のカメラ座標Σの姿勢を示す回転行列R(ハット)RBを用いて、ロボットの手先についての並進方向の移動量及び回転方向の移動量を算出する。そして、ロボット制御部160は、ロボットの手先を算出した並進方向の移動量ΔT(アロー)だけ並進方向へ移動させ、算出した回転方向の移動量Δθ(アロー)だけ回転方向へ移動させる。
(Step S312) Next, the position / orientation detection unit 150b uses the first camera 105 and the second camera 106, and a position vector T (arrow) indicating the position of the object 104 in the current second camera coordinates. c B and a rotation matrix R (hat) indicating the posture c B are detected.
(Step S313) Next, the robot control unit 160 uses the rotation matrix R (hat) RB indicating the posture of the second camera coordinate sigma B in the robot coordinate sigma R obtained in step S311, for the hand of the robot The movement amount in the translation direction and the movement amount in the rotation direction are calculated. Then, the robot controller 160 moves the hand of the robot in the translation direction by the calculated translational movement amount ΔT (arrow) R, and moves it in the rotational direction by the calculated rotational movement amount Δθ (arrow) R.

(ステップS314)次に、第1判定部170は、ステップS315でロボット制御部160が算出した並進方向の移動量ΔT(アロー)及び回転方向の移動量Δθ(アロー)が予め決められた値より小さいか否かを判定する。予め決められた値より小さい場合(YES)、第1判定部170は対象物104がステップS301で作成した第2のゴール画像における対象物104の位置及び姿勢に到達したと判断してその処理を終了する。予め決められた値以上の場合(NO)、第1判定部170は目標の位置及び姿勢に到達していないと判断し、ステップS312に処理を戻す。以上で、本フローチャートの説明を終了する。なお、ロボット制御部160は、例えば回転方向の移動量Δθ(アロー)の各要素Δθ、Δθ、Δθを、式(5)を用いて算出する。 (Step S314) Next, the first determination unit 170 determines in advance the movement amount ΔT (arrow) R in the translation direction and the movement amount Δθ (arrow) R in the rotation direction calculated by the robot control unit 160 in step S315. It is determined whether it is smaller than the value. If it is smaller than the predetermined value (YES), the first determination unit 170 determines that the object 104 has reached the position and orientation of the object 104 in the second goal image created in step S301, and performs the processing. finish. When the value is equal to or greater than a predetermined value (NO), the first determination unit 170 determines that the target position and posture have not been reached, and returns the process to step S312. Above, description of this flowchart is complete | finished. Note that the robot control unit 160 calculates, for example, each element Δθ x , Δθ y , Δθ z of the movement amount Δθ (arrow) R in the rotation direction using Expression (5).

以上、第2の実施形態における制御装置101において、位置決め基準カメラ決定部180は、勾配Gと勾配Gを算出し、勾配Gと勾配Gのうち、勾配が急な方を導出するのに用いたカメラを位置及び姿勢を決める際の基準となるカメラに設定する。
これにより、第1の実施形態における効果に加えて、以下の効果を奏する。目標の位置及び姿勢付近において、設定された基準となるカメラが撮影した画像から導出される相違度が評価関数に貢献する割合が大きくなる。その際、目標の位置及び姿勢付近において、別のカメラを基準としたときよりも相違度の変化が大きくなるので、評価関数の変化も大きくなり、更新される対象物104の位置及び姿勢の変化量が大きくなるので、対象物104を目標の位置及び姿勢により早く到達させることができる。
Above, the control device 101 in the second embodiment, the positioning reference camera determining unit 180 calculates the gradient G A and gradient G B, of the gradient G A and gradient G B, gradient derives towards steep The camera used for this is set as a reference camera for determining the position and orientation.
Thereby, in addition to the effect in 1st Embodiment, there exist the following effects. In the vicinity of the target position and orientation, the ratio at which the degree of difference derived from the image captured by the set reference camera contributes to the evaluation function increases. At that time, since the change in the dissimilarity becomes larger near the target position and posture than when another camera is used as a reference, the change in the evaluation function also becomes larger, and the change in the position and posture of the object 104 to be updated. Since the amount increases, the object 104 can be made to reach the target position and posture earlier.

なお、位置決め基準カメラ決定部180は、相違度を算出する際に、対象物104のCGモデルの位置及び姿勢から、予め決められた精度が要求される軸周りに正または負の角度方向にΔ微小移動させて撮影したが、これに限ったものではない。位置決め基準カメラ決定部180は、予め決められた精度が要求される軸方向について正または負の方向にΔ微小移動させて撮影してもよい。
また、ユーザがロボット1bの作業内容に応じて、Δ微小移動させるのをどの軸周り、またはどの軸方向にするのかを入力部110に入力し、入力部110がその入力を受け付け、処理部120bが入力部110が受け付けたもので設定できるようにしてもよい。
When calculating the degree of difference, the positioning reference camera determination unit 180 calculates Δ from the position and orientation of the CG model of the object 104 in a positive or negative angular direction around an axis that requires a predetermined accuracy. Although it was taken with a small amount of movement, it is not limited to this. The positioning reference camera determining unit 180 may perform shooting by moving Δ slightly in the positive or negative direction with respect to the axial direction requiring a predetermined accuracy.
Further, according to the work content of the robot 1b, the input unit 110 inputs which axis or which axis the Δ minute movement is to be performed, the input unit 110 receives the input, and the processing unit 120b. May be set by the one received by the input unit 110.

このことから、位置決め基準カメラ決定部180は、第1のゴール画像を撮影した空間を再現する第1の仮想空間において存在する対象物104のCGモデルの位置及び姿勢から、予め決められた精度が要求される軸周りまたは軸方向に予め決められたように上記CGモデルを移動させて撮影した画像と、第1のゴール画像との相違度を示す第5の相違度を算出する。
位置決め基準カメラ決定部180は、第2のゴール画像を撮影した空間を再現する第2の仮想空間において存在する対象物104のCGモデルの位置及び姿勢から、予め決められた精度が要求される軸周りまたは軸方向に予め決められたように上記CGモデルを移動させて撮影した画像と、第2のゴール画像との相違度を示す第6の相違度を算出する。
また、位置決め基準カメラ決定部180は、第5の相違度を算出した際の移動方向における第5の相違度の勾配と、第6の相違度を算出した際の移動方向における第6の相違度の勾配とを比較することで、姿勢推定の基準となるカメラを決定する。その際、位置決め基準カメラ決定部180は、決定した基準となるカメラを新たに第1のカメラとしてもよい。
Therefore, the positioning reference camera determination unit 180 has a predetermined accuracy based on the position and orientation of the CG model of the object 104 existing in the first virtual space that reproduces the space in which the first goal image is captured. A fifth dissimilarity indicating a dissimilarity between the first goal image and an image captured by moving the CG model as determined in advance around or in the required axis is calculated.
The positioning reference camera determination unit 180 is an axis that requires a predetermined accuracy from the position and orientation of the CG model of the object 104 existing in the second virtual space that reproduces the space in which the second goal image is captured. A sixth dissimilarity indicating the dissimilarity between the image captured by moving the CG model as determined in advance around or in the axial direction and the second goal image is calculated.
In addition, the positioning reference camera determination unit 180 has a gradient of the fifth difference in the movement direction when the fifth difference is calculated, and a sixth difference in the movement direction when the sixth difference is calculated. By comparing with the gradient, a camera serving as a reference for posture estimation is determined. At that time, the positioning reference camera determination unit 180 may newly set the determined reference camera as the first camera.

<第3の実施形態>
続いて、第3の実施形態について説明する。予め決められた時間後までにロボット本体102の位置及び姿勢を変化させる量を自装置が第1の撮像画像及び第2の撮像画像から決定する処理にかかる時間には揺らぎがある。そのため、その揺らぎを考慮して、自装置が第1の撮像画像及び第2の撮像画像の撮像を開始してからロボット本体102の位置及び姿勢の変化量を決定するまでの一連の処理にかかる最大の時間(例えば、15ミリ秒)まで待ってから、制御装置がロボット本体102の制御を開始した場合、対象物104が目標の位置及び姿勢に到達するまでにかかる時間が長くなってしまうという問題がある。そこで、本実施形態では、対象物104が目標の位置及び姿勢に到達するまでにかかる時間をより短くすることを本実施形態の課題とする。
<Third Embodiment>
Subsequently, a third embodiment will be described. There is fluctuation in the time required for the process of determining the amount of change in the position and posture of the robot body 102 from the first captured image and the second captured image before a predetermined time. Therefore, in consideration of the fluctuation, a series of processes from when the apparatus starts capturing the first captured image and the second captured image to determining the amount of change in the position and orientation of the robot main body 102 are involved. When the control device starts to control the robot body 102 after waiting for the maximum time (for example, 15 milliseconds), it takes a long time for the object 104 to reach the target position and posture. There's a problem. Therefore, in the present embodiment, it is an object of the present embodiment to shorten the time required for the object 104 to reach the target position and posture.

本実施形態では一例として、自装置が第1の撮像画像及び第2の撮像画像の撮像を開始してからロボット本体102の位置及び姿勢の変化量を決定するまでの一連の処理にかかる平均時間(以下、画像処理平均時間ともいう)が10ミリ秒であり、その一連の処理にかかる時間(以下、画像処理時間ともいう)の揺らぎが±5ミリ秒であるものとして説明する。また、本実施形態では一例として、ロボットの位置及び姿勢制御が1ミリ秒毎に行われるものとして説明する。   In this embodiment, as an example, an average time required for a series of processes from when the apparatus starts capturing the first captured image and the second captured image to determining the amount of change in the position and orientation of the robot body 102 In the following description, it is assumed that the average time for image processing (hereinafter also referred to as image processing time) is 10 milliseconds, and the time required for the series of processing (hereinafter also referred to as image processing time) is ± 5 milliseconds. In the present embodiment, as an example, it is assumed that the position and orientation control of the robot is performed every 1 millisecond.

図13は、第3の実施形態における制御装置101cの構成を示す概略ブロック図である。同図において、図4と共通する要素には同一の符号を付し、その具体的な説明を省略する。図13の制御装置101cの構成は、図4の制御装置101の構成に対して、処理部120が処理部120cに変更されたものになっている。図13の処理部120cの構成は、図4の処理部120の構成に対して、目標位置姿勢決定部200が追加され、ロボット制御部160がロボット制御部160cに変更されたものになっている。   FIG. 13 is a schematic block diagram illustrating the configuration of the control device 101c according to the third embodiment. In this figure, elements common to those in FIG. 4 are denoted by the same reference numerals, and detailed description thereof is omitted. The configuration of the control device 101c in FIG. 13 is different from the configuration of the control device 101 in FIG. 4 in that the processing unit 120 is changed to a processing unit 120c. The configuration of the processing unit 120c in FIG. 13 is obtained by adding a target position / posture determination unit 200 to the configuration of the processing unit 120 in FIG. 4 and changing the robot control unit 160 to a robot control unit 160c. .

目標位置姿勢決定部200は、位置姿勢検出部150により推定された対象物の位置及び姿勢と対象物が目標の位置にある場合の位置及び姿勢とに基づいて、現在の時刻から予め決められた時間(例えば、10ミリ秒)経過した後のロボット座標系における位置及び姿勢の変化量を決定する。ここで、予め決められた時間は例えば、第1の撮像画像及び第2の撮像画像を撮像開始してから上記変化量を決定するまでの平均時間である。   The target position / posture determination unit 200 is determined in advance from the current time based on the position and posture of the object estimated by the position / posture detection unit 150 and the position and posture when the target is at the target position. The amount of change in position and orientation in the robot coordinate system after elapse of time (for example, 10 milliseconds) is determined. Here, the predetermined time is, for example, an average time from the start of capturing the first captured image and the second captured image to the determination of the change amount.

具体的には例えば、目標位置姿勢決定部200は、並進方向の移動量ΔT(アロー)と、回転方向の移動量Δθ(アロー)を第1の実施形態と同様の処理で決定する。目標位置姿勢決定部200は、並進方向の移動量ΔT(アロー)と、回転方向の移動量Δθ(アロー)を決定する毎に、並進方向の移動量ΔT(アロー)と、回転方向の移動量Δθ(アロー)をロボット制御部160cと第1判定部170へ出力する。 Specifically, for example, the target position / posture determination unit 200 determines a translation amount of movement ΔT (arrow) R and a rotation amount of movement Δθ (arrow) R by the same processing as in the first embodiment. Target position posture determination unit 200, a movement amount [Delta] T (arrow) R translational direction, each time determining the amount of movement [Delta] [theta] (arrow) R rotation direction, the movement amount [Delta] T (arrow) R translational direction, the direction of rotation Movement amount Δθ (arrow) R is output to the robot controller 160 c and the first determination unit 170.

ロボット制御部160cは、ロボット本体102を制御する時間間隔(例えば、1ミリ秒)毎に、目標姿勢決定部が決定した変化量のうち最新の変化量に基づいて、上記時間間隔(例えば、1ミリ秒)後のロボット本体102の位置及び姿勢を決定し、該決定した位置及び姿勢になるようロボット本体102を制御する。その際、ロボット制御部160cは、上記予め決められた時間(ここでは一例として、10ミリ秒)のうち、自装置が第1の撮像画像及び第2の撮像画像から上記変化量を決定するまでの最短時間に基づいて決められた時間まではロボットが加速及び減速で移動するようにロボット本体102の位置及び姿勢を決定し、その後の時間はロボット本体102が等速で移動するようにロボット本体102の位置及び姿勢を決定する。   The robot control unit 160c, based on the latest change amount among the change amounts determined by the target posture determination unit, for each time interval (for example, 1 millisecond) for controlling the robot body 102, The position and posture of the robot body 102 after (milliseconds) are determined, and the robot body 102 is controlled so as to be the determined position and posture. At that time, the robot control unit 160c determines that the change amount is determined from the first captured image and the second captured image within the predetermined time (here, 10 milliseconds as an example). The position and posture of the robot body 102 are determined so that the robot moves with acceleration and deceleration until a time determined based on the shortest time, and the robot body 102 so that the robot body 102 moves at a constant speed during the subsequent time. The position and orientation of 102 are determined.

ここで、本実施形態では、自装置が第1の撮像画像及び第2の撮像画像から上記変化量を決定するまでの最短時間に基づいて決められた時間は一例として、自装置が第1の撮像画像及び第2の撮像画像から上記変化量を決定するまでの最短時間に、第1の撮像画像及び第2の撮像画像を撮像する時間を加算した時間である。第1の撮像画像及び第2の撮像画像の撮像時間は一定であることから、自装置が第1の撮像画像及び第2の撮像画像から上記変化量を決定するまでの最短時間に基づいて決められた時間は一例として、第1の撮像画像及び第2の撮像画像を撮像開始してから上記変化量を決定するまでの最短時間である。   Here, in this embodiment, the time determined based on the shortest time until the apparatus determines the change amount from the first captured image and the second captured image is an example. This is the time obtained by adding the time to capture the first captured image and the second captured image to the shortest time from the captured image and the second captured image until the change amount is determined. Since the imaging time of the first captured image and the second captured image is constant, it is determined based on the shortest time until the device determines the amount of change from the first captured image and the second captured image. As an example, the obtained time is the shortest time from the start of capturing the first captured image and the second captured image until the change amount is determined.

図14を用いて、ロボット制御部160cによるロボット本体102の位置及び姿勢の制御処理の一例について説明する。図14は、ロボット座標系におけるロボット本体102の手先位置のx座標の時間変化の一例である。同図には、期間T1においてロボット本体102の手先のx座標に沿って加速しながら移動し、期間T2においてロボット本体102の手先のx座標に沿って等速で移動し、期間T3においてロボット本体102の手先のx座標に沿って減速しながら移動し、期間T4においてロボット本体102の手先のx座標に沿って加速しながら移動することが示されている。また、10ミリ秒後に2番目の並進方向の移動量ΔT(アロー)と回転方向の移動量Δθ(アロー)が決定されて、15ミリ秒後に、3番目の並進方向の移動量ΔT(アロー)と回転方向の移動量Δθ(アロー)が決定されていることが示されている。 An example of the processing for controlling the position and orientation of the robot main body 102 by the robot control unit 160c will be described with reference to FIG. FIG. 14 is an example of the time change of the x coordinate of the hand position of the robot body 102 in the robot coordinate system. In the figure, the robot body moves while accelerating along the x coordinate of the hand of the robot body 102 in the period T1, moves at a constant speed along the x coordinate of the hand of the robot body 102 in the period T2, and moves to the robot body in the period T3. It is shown that the robot moves while decelerating along the x-coordinate of the hand of 102, and moves while accelerating along the x-coordinate of the hand of the robot body 102 in the period T4. Further, after 10 milliseconds, the second translational movement amount ΔT (arrow) R and the rotational movement amount Δθ (arrow) R are determined, and after 15 milliseconds, the third translational movement amount ΔT ( (Arrow) R and the movement amount Δθ (arrow) R in the rotation direction are determined.

図14の例では、期間T1と期間T2では、ロボット制御部160cは、最初に決定された並進方向の移動量ΔT(アロー)と回転方向の移動量Δθ(アロー)を用いて、1ミリ秒後のロボット本体102の手先位置のx座標を決定する。これにより、期間T1と期間T2におけるx座標が1ミリ秒毎に得られる。ロボット制御部160cは、決定した1ミリ秒後の手先位置のx座標に、ロボット本体102の手先を1ミリ秒かけて移動させる。ロボット制御部160cは、1ミリ秒経過する毎に、x座標の決定とロボット本体102の手先の移動処理を繰り返す。これにより、ボット制御部160cは、前半の5ミリ秒である期間T1では、ロボット本体102の手先位置がx座標に沿って加速しながら移動させ、後半の5ミリ秒である期間T2では、ロボット本体102の手先位置がx座標に沿って等速で移動させることができる。 In the example of FIG. 14, in the period T1 and the period T2, the robot control unit 160c uses the translation amount ΔT (arrow) R in the translation direction and the movement amount Δθ (arrow) R in the rotation direction, which are determined first, as 1 The x coordinate of the hand position of the robot body 102 after milliseconds is determined. Thereby, the x coordinate in the period T1 and the period T2 is obtained every 1 millisecond. The robot control unit 160c moves the hand of the robot main body 102 to the x coordinate of the determined hand position after 1 millisecond over 1 millisecond. The robot control unit 160c repeats the determination of the x coordinate and the movement process of the hand of the robot body 102 every time 1 millisecond elapses. Accordingly, the bot control unit 160c moves the hand position of the robot body 102 while accelerating along the x coordinate in the first half of the period T1, and in the second half of the period T2, the robot The hand position of the main body 102 can be moved at a constant speed along the x coordinate.

時刻10ミリ秒で、ロボット制御部160cは、目標位置姿勢決定部200から2番目の並進方向の移動量ΔT(アロー)と回転方向の移動量Δθ(アロー)が入力されるので、その2番目の並進方向の移動量ΔT(アロー)と回転方向の移動量Δθ(アロー)を用いて、1ミリ秒後のロボット本体102の手先位置のx座標を決定する。これにより、期間T3におけるx座標が1ミリ秒毎に得られる。ロボット制御部160cは、決定した1ミリ秒後の手先位置のx座標に、ロボット本体102の手先を1ミリ秒かけて移動させる。ロボット制御部160cは、1ミリ秒経過する毎に、x座標の決定とロボット本体102の手先の移動処理を繰り返す。これにより、ロボット制御部160cは、期間T3で、ロボット本体102の手先位置がx座標に沿って減速しながら移動させることができる。 At time 10 milliseconds, the robot controller 160c receives the second translation amount ΔT (arrow) R and the rotational amount Δθ (arrow) R from the target position / posture determination unit 200. Using the second translational movement amount ΔT (arrow) R and the rotational movement amount Δθ (arrow) R , the x coordinate of the hand position of the robot body 102 after 1 millisecond is determined. Thereby, the x coordinate in the period T3 is obtained every 1 millisecond. The robot control unit 160c moves the hand of the robot main body 102 to the x coordinate of the determined hand position after 1 millisecond over 1 millisecond. The robot control unit 160c repeats the determination of the x coordinate and the movement process of the hand of the robot body 102 every time 1 millisecond elapses. Thereby, the robot control unit 160c can move the hand position of the robot body 102 while decelerating along the x-coordinate in the period T3.

時刻15ミリ秒で、ロボット制御部160cは、目標位置姿勢決定部200から3番目の並進方向の移動量ΔT(アロー)と回転方向の移動量Δθ(アロー)が入力されるので、その3番目の並進方向の移動量ΔT(アロー)と回転方向の移動量Δθ(アロー)を用いて、1ミリ秒後のロボット本体102の手先位置のx座標を決定する。これにより、期間T4におけるx座標が1ミリ秒毎に得られる。ロボット制御部160cは、決定した1ミリ秒後の手先位置のx座標に、ロボット本体102の手先を1ミリ秒かけて移動させる。ロボット制御部160cは、1ミリ秒経過する毎に、x座標の決定とロボット本体102の手先の移動処理を繰り返す。これにより、ロボット制御部160cは、期間T4で、ロボット本体102の手先位置がx座標に沿って加速しながら移動させることができる。 At time 15 milliseconds, the robot controller 160c receives the third translational movement amount ΔT (arrow) R and the rotational movement amount Δθ (arrow) R from the target position and orientation determination unit 200. Using the third movement amount ΔT (arrow) R in the translation direction and the movement amount Δθ (arrow) R in the rotation direction, the x coordinate of the hand position of the robot body 102 after 1 millisecond is determined. Thereby, the x coordinate in the period T4 is obtained every 1 millisecond. The robot control unit 160c moves the hand of the robot main body 102 to the x coordinate of the determined hand position after 1 millisecond over 1 millisecond. The robot control unit 160c repeats the determination of the x coordinate and the movement process of the hand of the robot body 102 every time 1 millisecond elapses. Thereby, the robot control unit 160c can move the position of the hand of the robot body 102 while accelerating along the x coordinate in the period T4.

続いて、ロボット本体102の手先位置のx座標の決定処理の詳細について説明する。ロボット制御部160cは、次の式(21)に従ってロボット本体102の手先位置のx座標を決定する。   Next, details of the x coordinate determination process of the hand position of the robot body 102 will be described. The robot control unit 160c determines the x coordinate of the hand position of the robot body 102 according to the following equation (21).

Figure 2014161937
Figure 2014161937

ここで、tは時刻で、Tは画像処理平均時間で、vはロボット本体102の手先位置のx座標に沿った速度で、vは、画像処理平均時間Tにおけるロボット本体102の手先位置のx座標に沿った初速で、xは画像処理平均時間Tにおけるx座標の初期位置である。
ここで、vは次の式(22)で表される。
Here, t is the time, T is the average image processing time, v 1 is the velocity along the x coordinate of the hand position of the robot body 102, and v 0 is the hand position of the robot body 102 at the image processing average time T. in initial velocity along the x coordinate, x 0 is the initial position of the x coordinate in the image processing average time T.
Here, v 1 is expressed by the following equation (22).

Figure 2014161937
Figure 2014161937

Δxは、並進方向の移動量ΔT(アロー)のx座標成分で、nは正の整数(ここでは、一例として1)で、ΔTはロボット制御周期(本実施形態では一例として1ミリ秒)ある。
ロボット制御部160cは、ロボット本体102の手先位置のy座標、z座標、回転角度θx、θy、θzについても同様の処理で決定する。
Δx is the x-coordinate component of the translation amount ΔT (arrow) R in the translation direction, n is a positive integer (here, 1 as an example), and ΔT is a robot control cycle (in this embodiment, 1 millisecond as an example) is there.
The robot control unit 160c determines the y-coordinate, z-coordinate, and rotation angles θx, θy, and θz of the hand position of the robot body 102 by the same process.

図15は、第3の実施形態における制御装置101cの処理全体の流れの一例を示すフローチャートである。ステップS401〜S406は図6のステップS101〜S106と同じであるので、その説明を省略する。また、ステップS409は、図6のステップS108と同じであるので、その説明を省略する。
(ステップS407)次に、目標位置姿勢決定部200は、ステップS101で取得したロボット座標Σにおける第1のカメラ座標Σの姿勢を示す回転行列R(ハット)RAを用いて、ロボットの手先の並進方向の移動量ΔT(アロー)及び回転方向の移動量Δθ(アロー)を決定する。ロボット制御部160cは、決定した並進方向の移動量ΔT(アロー)及び回転方向の移動量Δθ(アロー)を第1判定部170及びロボット制御部160cへ出力する。
FIG. 15 is a flowchart illustrating an example of the overall processing flow of the control apparatus 101c according to the third embodiment. Steps S401 to S406 are the same as steps S101 to S106 in FIG. Also, step S409 is the same as step S108 in FIG.
(Step S407) Next, the target position posture determination unit 200 uses the rotation matrix R (hat) RA indicating the posture of the first camera coordinate sigma A in the robot coordinate sigma R obtained in step S101, the hand of the robot A translation amount ΔT (arrow) R in the translation direction and a movement amount Δθ (arrow) R in the rotation direction are determined. The robot control unit 160c outputs the determined translation amount ΔT (arrow) R in the translation direction and rotation amount Δθ (arrow) R in the rotation direction to the first determination unit 170 and the robot control unit 160c.

図16は、第3の実施形態におけるロボット制御部160cの処理の一例を示すフローチャートである。
(ステップS501)ロボット制御部160cは、目標位置姿勢決定部200により新たに並進方向の移動量ΔT(アロー)及び回転方向の移動量Δθ(アロー)を決定されたか否か判定する。新たに決定された場合(YES)、ステップS502の処理に進む。新たに決定されていない場合(NO)、ステップS503の処理に進む。
(ステップS502)ロボット制御部160cは、新たな並進方向の移動量ΔT(アロー)及び回転方向の移動量Δθ(アロー)を用いて、1ミリ秒後のロボット手先位置及びロボット手先の姿勢(以下、ロボット手先姿勢ともいう)を決定する。
(ステップS503)ロボット制御部160cは、これまでの並進方向の移動量ΔT(アロー)及び回転方向の移動量Δθ(アロー)を用いて、1ミリ秒後のロボット手先位置及びロボット手先の姿勢を決定する。
(ステップS504)次に、ロボット制御部160cは、ロボットの手先が決定された1ミリ秒後のロボット手先位置及びロボット手先姿勢になるようロボットの手先を移動させる。
(ステップS505)次に、ロボット制御部160cは、第1判定部170が最新の並進方向の移動量ΔT(アロー)及び回転方向の移動量Δθ(アロー)が予め決められた値より小さいと判定したか否か判定する。予め決められた値より小さいと判定した場合(YES)、ロボット制御部160cはその処理を終了する。予め決められた値より小さいと判定していない場合(NO)、ロボット制御部160cはステップS501の処理に戻る。以上で、本フローチャートの処理を終了する。
FIG. 16 is a flowchart illustrating an example of processing of the robot control unit 160c in the third embodiment.
(Step S501) The robot control unit 160c determines whether or not the translational movement amount ΔT (arrow) R and the rotational movement amount Δθ (arrow) R are newly determined by the target position and orientation determination unit 200. If it is newly determined (YES), the process proceeds to step S502. If it has not been newly determined (NO), the process proceeds to step S503.
(Step S502) The robot control unit 160c uses the new translational movement amount ΔT (arrow) R and the rotational movement amount Δθ (arrow) R to determine the robot hand position and the robot hand position after 1 millisecond. (Hereinafter also referred to as robot hand posture) is determined.
(Step S503) The robot controller 160c uses the translation amount ΔT (arrow) R in the translational direction and the movement amount Δθ (arrow) R in the rotational direction so far to determine the robot hand position and the robot hand position after 1 millisecond. Determine posture.
(Step S504) Next, the robot control unit 160c moves the robot hand so that the robot hand position and the robot hand posture become 1 ms after the robot hand is determined.
(Step S505) Next, in the robot controller 160c, the first determination unit 170 determines that the latest translational movement amount ΔT (arrow) R and rotational movement amount Δθ (arrow) R are smaller than predetermined values. Is determined. If it is determined that the value is smaller than the predetermined value (YES), the robot control unit 160c ends the process. If it is not determined that the value is smaller than the predetermined value (NO), the robot control unit 160c returns to the process of step S501. Above, the process of this flowchart is complete | finished.

以上、第3の実施形態では、ロボット制御部160cは、並進方向の移動量ΔT(アロー)及び回転方向の移動量Δθ(アロー)が更新される毎に、更新された並進方向の移動量ΔT(アロー)及び回転方向の移動量Δθ(アロー)を用いて、ロボット制御周期間隔でロボット手先位置およびロボット手先姿勢を決定する。そして、ロボット制御部160cは、そのロボット制御周期で、決定したロボット手先位置およびロボット手先姿勢なるようロボット本体102を制御する。その際、ロボット制御部160cは、予め決められた画像処理平均時間(一例として10ミリ秒)のうち、画像処理にかかる最短時間(一例として5ミリ秒)まではロボットの手先が加速及び減速で移動するようにロボット手先位置及びロボット手先姿勢を決定し、その後の時間(一例として5〜10ミリ秒)はロボットの手先が等速で移動するようにロボット手先位置及びロボット手先姿勢を決定する。これにより、画像処理時間に±5ミリ秒の揺らぎがあって、画像処理にかかる時間が5ミリ秒から10ミリ秒の間で変化しても、その間はロボットの手先が等速で移動するので、その等速で移動しているときの速度を初速としてロボットの加速制御または減速制御を始めることができる。これにより、ロボット制御部160cは、画像処理が終わると同時に、その画像処理で得られた並進方向の移動量ΔT(アロー)及び回転方向の移動量Δθ(アロー)を用いてロボットを制御できるので、第1の実施形態の効果に加えて、対象物104を目標の位置及び目標の姿勢にするまでの時間を短縮することができる。 As described above, in the third embodiment, the robot controller 160c updates the translational movement every time the translational movement amount ΔT (arrow) R and the rotational movement amount Δθ (arrow) R are updated. Using the amount ΔT (arrow) R and the amount of movement Δθ (arrow) R in the rotation direction, the robot hand position and the robot hand posture are determined at the robot control cycle interval. Then, the robot control unit 160c controls the robot main body 102 so that the determined robot hand position and robot hand position are obtained in the robot control cycle. At that time, the robot control unit 160c accelerates and decelerates the robot's hand until the shortest time required for image processing (for example, 5 milliseconds) out of the predetermined average image processing time (for example, 10 milliseconds). The robot hand position and the robot hand posture are determined so as to move, and the robot hand position and the robot hand posture are determined so that the robot hand moves at a constant speed during the subsequent time (for example, 5 to 10 milliseconds). As a result, even if the image processing time fluctuates by ± 5 milliseconds and the time required for image processing varies between 5 milliseconds and 10 milliseconds, the robot's hand moves at a constant speed during that time. The acceleration control or deceleration control of the robot can be started with the initial speed as the speed when moving at the constant speed. As a result, the robot control unit 160c controls the robot using the translational movement amount ΔT (arrow) R and the rotational movement amount Δθ (arrow) R obtained by the image processing upon completion of the image processing. Therefore, in addition to the effect of the first embodiment, it is possible to shorten the time until the object 104 is set to the target position and the target posture.

なお、各実施形態において、姿勢推定部154は、第1の相違度に乗じる重み係数と、第2の相違度に乗じる重み係数を、第1の撮像画像と第2の撮像画像のそれぞれに混入している雑音成分に応じて変化させてもよい。ここで、雑音成分とは、撮像装置のイメージセンサーが光電変換する処理以降に混入する雑音信号に由良する雑音成分である。雑音成分は、例えば撮像装置のイメージセンサーが光電変換する際に、光電変換後の画像信号に混入するランダムな雑音信号に由来する雑音成分である。具体的には、例えば、姿勢推定部154は、第1の相違度に乗じる重み係数と、第2の相違度とに乗じる重み係数を、第1の撮像画像と第2の撮像画像のそれぞれに混入している正規化ランダムノイズの分散の逆数としてもよい。その際、姿勢推定部154は、例えば第1のカメラ105及び第2のカメラ106それぞれのカメラの異なるフレーム間の画像の相違度であるフレーム間相違度を、第1の撮像画像と第2の撮像画像のそれぞれに混入している正規化ランダムノイズの分散の代用として算出してもよい。より好ましくは、姿勢推定部154は、それぞれのカメラの1フレーム前の画像と現在のフレームの画像との相違度を、第1の撮像画像と第2の撮像画像のそれぞれに混入する正規化ランダムノイズの分散の代用として算出してもよい。これは、分散がフレーム間相違度に比例するからである。ここで、フレーム間相違度は、例えば1フレーム前の画像の画素値と現在のフレームの画像においてその画素値に対応する画素の画素値との差分の絶対値を全ての画素間で計算し、計算して得られた値を総和した値である。   Note that in each embodiment, the posture estimation unit 154 mixes a weighting factor by which the first difference is multiplied and a weighting factor by which the second difference is multiplied into each of the first captured image and the second captured image. The noise component may be changed according to the noise component. Here, the noise component is a noise component resulting from a noise signal mixed after the process of photoelectric conversion by the image sensor of the imaging apparatus. The noise component is, for example, a noise component derived from a random noise signal mixed in an image signal after photoelectric conversion when the image sensor of the imaging apparatus performs photoelectric conversion. Specifically, for example, the posture estimation unit 154 applies a weighting factor to be multiplied by the first difference degree and a weighting factor to be multiplied by the second difference degree to each of the first captured image and the second captured image. It is good also as the reciprocal of dispersion | distribution of the normalization random noise which is mixed. At that time, the posture estimation unit 154 determines, for example, an inter-frame dissimilarity, which is an image dissimilarity between different frames of the first camera 105 and the second camera 106, from the first captured image and the second captured image. You may calculate as a substitute of dispersion | distribution of the normalization random noise mixed in each of the captured image. More preferably, the posture estimation unit 154 mixes the degree of difference between the image of the previous frame of each camera and the image of the current frame in each of the first captured image and the second captured image. It may be calculated as a substitute for noise dispersion. This is because the variance is proportional to the difference between frames. Here, the difference between frames is calculated, for example, by calculating the absolute value of the difference between the pixel value of the image one frame before and the pixel value of the pixel corresponding to the pixel value in the current frame image, This is the sum of the values obtained by calculation.

なお、各実施形態において、対象物が複数ある場合、以下のようにしてもよい。第1の相違度算出部151は、第1の仮想空間において位置姿勢推定の対象となる対象物以外の対象物全ての画像領域を特定し、該特定した画像領域を演算対象から除いて第1の相違度を算出してもよい。また、第2の相違度算出部153は、第2の仮想空間において位置姿勢推定の対象となる対象物以外の対象物全ての画像領域を特定し、該特定した画像領域を演算対象から除いて第2の相違度を算出してもよい。   In addition, in each embodiment, when there are a plurality of objects, the following may be performed. The first dissimilarity calculation unit 151 identifies the image areas of all objects other than the object that is the target of position / orientation estimation in the first virtual space, and removes the identified image area from the calculation target to perform the first operation. The degree of difference may be calculated. In addition, the second dissimilarity calculation unit 153 identifies the image areas of all the objects other than the object that is the position and orientation estimation target in the second virtual space, and excludes the identified image area from the calculation target. A second degree of difference may be calculated.

具体的には例えば、第1の相違度算出部151及び第2の相違度算出部153は以下の処理を行ってもよい。第1の相違度算出部151及び第2の相違度算出部153は例えば、それぞれ第1及び第2の仮想空間のそれぞれに、位置姿勢推定の対象となる対象物以外の対象物全てを各軸の正方向及び負方向に微小移動させた画像を全て配置した場合に、対象物毎に画像領域の和集合を抽出し、該和集合を全てマスクしたマスク画像を取得する。そして、第1の相違度算出部151及び第2の相違度算出部153は例えば、取得したマスク画像を用いて、位置姿勢推定の対象となる対象物以外の対象物を除去して、それぞれ相違度を算出する。   Specifically, for example, the first difference calculation unit 151 and the second difference calculation unit 153 may perform the following processing. For example, the first dissimilarity calculation unit 151 and the second dissimilarity calculation unit 153 each include all the objects other than the target object for position and orientation estimation in each of the first and second virtual spaces. When all the images slightly moved in the positive and negative directions are arranged, a union of image areas is extracted for each object, and a mask image in which all the unions are masked is acquired. The first dissimilarity calculation unit 151 and the second dissimilarity calculation unit 153, for example, use the acquired mask image to remove objects other than the object that is the target of position and orientation estimation, and are different from each other. Calculate the degree.

簡単のために、CG画像が平面画像である場合を一例として上述した処理を説明する。図17は、マスク画像について説明するための図である。同図において、第1の仮想空間において、第1対象物と第2対象物を共に現在の位置から上にΔ微小移動したCG画像G131−1、共に現在の位置から下にΔ微小移動したCG画像G131−2、共に現在の位置から右にΔ微小移動したCG画像G131−3、及び共に現在の位置から左にΔ微小移動したCG画像G131−4の例が示されている。CG画像G131−1において、第1対象物の画像領域R132−1、第2対象物の画像領域R133−1が示されている。ここで、簡単のために、他のCG画像G131−2〜4における第1対象物の画像領域R132−2〜4、第2対象物の画像領域R133−2〜4は図示されていない。マスク画像G134において、上述したCG画像G131−1〜4における第2対象物の画像領域R133−1〜4の和集合である画像領域である第2対象物のマスク領域R135が示されている。また、マスク画像G135において、上述したCG画像G131−1〜4における第1対象物の画像領域R132−1〜4の和集合である画像領域である第1対象物のマスク領域R137が示されている。   For the sake of simplicity, the above-described processing will be described by taking as an example the case where the CG image is a planar image. FIG. 17 is a diagram for explaining the mask image. In the figure, in the first virtual space, a CG image G131-1 in which both the first object and the second object are moved by Δ minute from the current position, and CG that has both moved Δ by minute from the current position. An example of an image G131-2, a CG image G131-3 that is Δ-moved to the right from the current position, and a CG image G131-4 that is Δ-moved to the left from the current position are shown. In the CG image G131-1, an image area R132-1 of the first object and an image area R133-1 of the second object are shown. Here, for the sake of simplicity, the image areas R132-2 to R132-2 and the image areas R133-2 to R133-2 of the first object in the other CG images G131-2 to G131-2 are not shown. In the mask image G134, a mask area R135 of the second object which is an union of the image areas R133-1 to R4 of the second object in the CG images G131-1 to G13-4 described above is shown. In the mask image G135, a mask area R137 of the first object that is an union of the image areas R132-1 to R4 of the first object in the CG images G131-1 to G13-4 described above is shown. Yes.

同図の例の場合、第1の相違度算出部151は例えば図17のマスク画像G134を取得する。そして、第1の相違度算出部151は例えばマスク画像G134の領域を除いて、第1の対象物に関する第1の相違度を算出する。第1の相違度算出部151は例えば図17のマスク画像G136を取得する。そして、第1の相違度算出部151は例えばマスク画像G136の領域を除いて、第2の対象物に関する第1の相違度を算出する。
同様に、第2の相違度算出部153は例えば図17のマスク画像G134を取得する。そして、第2の相違度算出部153は例えばマスク画像G134の領域を除いて、第1の対象物に関する第2の相違度を算出する。第2の相違度算出部153は例えば図16のマスク画像G136を取得する。そして、第2の相違度算出部153はマスク画像G136の領域を除いて、第2の対象物に関する第2の相違度を算出する。
In the case of the example in the figure, the first difference calculation unit 151 acquires, for example, the mask image G134 in FIG. Then, the first dissimilarity calculation unit 151 calculates the first dissimilarity regarding the first object, for example, excluding the region of the mask image G134. The first difference calculation unit 151 acquires, for example, the mask image G136 of FIG. Then, the first dissimilarity calculation unit 151 calculates the first dissimilarity regarding the second object, for example, excluding the region of the mask image G136.
Similarly, the second difference calculation unit 153 acquires, for example, the mask image G134 of FIG. And the 2nd dissimilarity calculation part 153 calculates the 2nd dissimilarity regarding a 1st target object except the field of mask image G134, for example. For example, the second dissimilarity calculation unit 153 acquires the mask image G136 of FIG. Then, the second dissimilarity calculation unit 153 calculates the second dissimilarity regarding the second object, excluding the region of the mask image G136.

なお、各実施形態において、位置推定部156の奥行き更新部158は、第1のカメラ105における対象物104のz軸方向の検出位置zを、三角測量を利用して算出したが、これに限ったものではない。位置推定部156は、第1の相違度算出部が算出した複数の第3の相違度と、第2の相違度算出部が算出した複数の第4の相違度とに基づいて第1の撮像座標系における対象物の奥行きを推定してもよい。 In each embodiment, the depth update unit 158 of the position estimation unit 156 calculates the detection position z A in the z A axis direction of the object 104 in the first camera 105 using triangulation. It is not limited to. The position estimation unit 156 performs the first imaging based on the plurality of third differences calculated by the first difference calculation unit and the plurality of fourth differences calculated by the second difference calculation unit. You may estimate the depth of the target object in a coordinate system.

なお、複数の装置を備えるシステムが、各実施形態の制御装置(101または101b)の各処理を、それらの複数の装置で分散して処理してもよい。
また、各実施形態の制御装置(101または101b)の各処理を実行するためのプログラムをコンピューター読み取り可能な記録媒体に記録して、当該記録媒体に記録されたプログラムをコンピューターシステムに読み込ませ、実行することにより、制御装置(101または101b)に係る上述した種々の処理を行ってもよい。
Note that a system including a plurality of devices may process each process of the control device (101 or 101b) of each embodiment in a distributed manner by the plurality of devices.
Also, a program for executing each process of the control device (101 or 101b) of each embodiment is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read into a computer system and executed. By doing so, you may perform the various processes mentioned above which concern on a control apparatus (101 or 101b).

なお、ここでいう「コンピューターシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。また、「コンピューターシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、CD−ROM等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。   Here, the “computer system” may include an OS and hardware such as peripheral devices. Further, the “computer system” includes a homepage providing environment (or display environment) if the WWW system is used. The “computer-readable recording medium” means a flexible disk, a magneto-optical disk, a ROM, a writable nonvolatile memory such as a flash memory, a portable medium such as a CD-ROM, a hard disk built in a computer system, etc. This is a storage device.

さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピューターシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピューターシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。   Further, the “computer-readable recording medium” means a volatile memory (for example, DRAM (Dynamic) in a computer system that becomes a server or a client when a program is transmitted via a network such as the Internet or a communication line such as a telephone line. Random Access Memory)) that holds a program for a certain period of time is also included. The program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium. Here, the “transmission medium” for transmitting the program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line. The program may be for realizing a part of the functions described above. Furthermore, what can implement | achieve the function mentioned above in combination with the program already recorded on the computer system, what is called a difference file (difference program) may be sufficient.

以上、本発明の実施形態について図面を参照して詳述したが、具体的な構成はこの実施形態に限られるものではない。各実施形態における各構成及びそれらの組み合わせ等は一例であり、本発明の趣旨から逸脱しない範囲内で、構成の付加、省略、置換、およびその他の変更が可能である。また、本発明は実施形態によって限定されることはなく、特許請求の範囲によってのみ限定される。   As mentioned above, although embodiment of this invention was explained in full detail with reference to drawings, a specific structure is not restricted to this embodiment. Each configuration in each embodiment, a combination thereof, and the like are examples, and the addition, omission, replacement, and other changes of the configuration can be made without departing from the spirit of the present invention. Further, the present invention is not limited by the embodiments, and is limited only by the scope of the claims.

101、101b 制御装置(姿勢検出装置)
102 ロボット本体
103 グリッパ
104 対象物
105 第1のカメラ(第1の撮像装置)
106 第2のカメラ(第2の撮像装置)
110 入力部
120 処理部120、120b
130 変換規則決定部
140、140b ゴール画像取得部
145 現在画像取得部
150、150b 位置姿勢検出部
151 第1の相違度算出部
152 姿勢取得部
153 第2の相違度算出部
154 姿勢推定部
156 位置推定部
157 平面位置推定部
158 奥行き更新部
159 第2判定部
160、160c ロボット制御部
170 第1判定部
180 位置決め基準カメラ決定部
190 記憶部
200 目標位置姿勢決定部
101, 101b Control device (attitude detection device)
DESCRIPTION OF SYMBOLS 102 Robot main body 103 Gripper 104 Target object 105 1st camera (1st imaging device)
106 Second camera (second imaging device)
110 Input unit 120 Processing unit 120, 120b
130 Conversion Rule Determination Unit 140, 140b Goal Image Acquisition Unit 145 Current Image Acquisition Unit 150, 150b Position / Orientation Detection Unit 151 First Dissimilarity Calculation Unit 152 Posture Acquisition Unit 153 Second Dissimilarity Calculation Unit 154 Posture Estimation Unit 156 Position Estimator 157 Plane position estimator 158 Depth updater 159 Second determination unit 160, 160c Robot controller 170 First determination unit 180 Positioning reference camera determination unit 190 Storage unit 200 Target position / posture determination unit

Claims (25)

第1の撮像装置が対象物を撮像して得た第1の撮像画像と、前記第1の撮像装置が撮像した空間に対応する第1の仮想空間における前記対象物のモデル画像との相違度を示す第1の相違度を、前記第1の仮想空間における対象物の複数の異なる姿勢毎に算出する第1の相違度算出部と、
前記第1の撮像装置とは異なる位置に配置された第2の撮像装置が対象物を撮像して得た第2の撮像画像と、前記第2の撮像装置が撮像した空間に対応する第2の仮想空間における前記対象物のモデル画像との相違度を示す第2の相違度を、前記第2の仮想空間における対象物の複数の姿勢毎に算出する第2の相違度算出部と、
前記第1の相違度算出部が算出した複数の第1の相違度と、前記第2の相違度算出部が算出した複数の第2の相違度とに基づいて前記第1の撮像座標系における前記対象物の姿勢を推定する姿勢推定部と、
を備える姿勢検出装置。
The degree of difference between the first captured image obtained by imaging the object by the first imaging device and the model image of the object in the first virtual space corresponding to the space imaged by the first imaging device A first dissimilarity calculating unit that calculates a first dissimilarity for each of a plurality of different postures of the object in the first virtual space;
A second captured image obtained by imaging a target object by a second imaging device arranged at a position different from that of the first imaging device, and a second corresponding to a space captured by the second imaging device. A second dissimilarity calculating unit that calculates a second dissimilarity indicating a dissimilarity with the model image of the object in the virtual space for each of a plurality of postures of the object in the second virtual space;
In the first imaging coordinate system based on the plurality of first differences calculated by the first difference calculation unit and the plurality of second differences calculated by the second difference calculation unit. A posture estimation unit for estimating the posture of the object;
An attitude detection device comprising:
前記姿勢推定部は、前記第1の相違度算出部が算出した複数の第1の相違度と、前記第2の相違度算出部が算出した複数の第2の相違度のそれぞれに重み係数を乗じ、乗じることで得た値を基に前記第1の撮像座標系における前記対象物の姿勢を推定する請求項1に記載の姿勢検出装置。   The posture estimation unit assigns a weight coefficient to each of the plurality of first differences calculated by the first difference calculation unit and the plurality of second differences calculated by the second difference calculation unit. The posture detection device according to claim 1, wherein the posture of the object in the first imaging coordinate system is estimated based on a value obtained by multiplication. 前記第1の撮像装置が前記第2の撮像装置よりも前記対象物の視認性が良い場合、
前記姿勢推定部は、前記対象物が目標の位置から予め決められた位置範囲にあるとき、前記第1の相違度に乗じる重み係数を前記第2の相違度に乗じる重み係数より大きくする請求項2に記載の姿勢検出装置。
When the first imaging device has better visibility of the object than the second imaging device,
The posture estimation unit, when the object is in a predetermined position range from a target position, makes a weighting factor by which the first difference is multiplied larger than a weighting factor by which the second difference is multiplied. The posture detection apparatus according to 2.
前記第1の撮像装置が前記第2の撮像装置よりも前記対象物の視認性が良い場合、
前記姿勢推定部は、前記対象物が目標の位置から予め決められた位置範囲にあるとき、前記第2の相違度に乗じる重み係数が予め決められた範囲に収まるよう、前記対象物の移動開始時刻から前記対象物が目標の位置から予め決められた位置範囲に到達する時刻まで、前記第2の相違度に乗じる重み係数を変化させる請求項2または3に記載の姿勢検出装置。
When the first imaging device has better visibility of the object than the second imaging device,
The posture estimation unit starts moving the object so that a weighting factor by which the second difference is multiplied falls within a predetermined range when the object is in a predetermined position range from a target position. The posture detection device according to claim 2 or 3, wherein a weighting factor by which the second difference is multiplied is changed from time to time when the object reaches a predetermined position range from a target position.
前記第1の撮像装置が前記第2の撮像装置よりも前記対象物の視認性が良い場合、
前記姿勢推定部は、前記対象物の移動開始時刻から前記対象物が目標の位置から予め決められた位置範囲に到達する時刻までの期間で、前記第2の相違度に乗じる重み係数を時間の経過とともに小さくする請求項1または2に記載の姿勢検出装置。
When the first imaging device has better visibility of the object than the second imaging device,
The posture estimation unit is configured to calculate a weighting factor for multiplying the second dissimilarity by a period of time from a movement start time of the object to a time when the object reaches a predetermined position range from a target position. The posture detection device according to claim 1, wherein the posture detection device is made smaller as time passes.
前記第1の撮像装置が前記第2の撮像装置よりも前記対象物の視認性が良く、前記対象物の位置が移動する場合、
前記姿勢推定部は、前記対象物の単位時間あたりの移動量が小さくなるに従って前記第2の相違度に乗じる重み係数を小さくする請求項1から3のいずれか一項に記載の姿勢検出装置。
When the first imaging device has better visibility of the object than the second imaging device and the position of the object moves,
The posture detection apparatus according to any one of claims 1 to 3, wherein the posture estimation unit decreases a weighting factor by which the second difference is multiplied as the movement amount of the target object per unit time decreases.
前記第1の撮像装置が前記第2の撮像装置よりも前記対象物の視認性が良い場合、
前記姿勢推定部は、前記第2の相違度に乗じる重み係数を、前記対象物が目標の位置に近づくに従って小さくする請求項1から4のいずれか一項に記載の姿勢検出装置。
When the first imaging device has better visibility of the object than the second imaging device,
The posture detection apparatus according to any one of claims 1 to 4, wherein the posture estimation unit decreases a weighting factor to be multiplied by the second degree of difference as the object approaches a target position.
前記姿勢推定部は、前記第1の相違度に乗じる重み係数と、前記第2の相違度に乗じる重み係数を、前記第1の撮像画像と前記第2の撮像画像のそれぞれに混入している雑音成分に応じて変化させる請求項3に記載の姿勢検出装置。   The posture estimation unit mixes a weighting factor to be multiplied by the first difference degree and a weighting factor to be multiplied by the second difference degree into each of the first captured image and the second captured image. The attitude detection apparatus according to claim 3, wherein the attitude detection apparatus is changed according to a noise component. 前記姿勢推定部は、前記第1の相違度に乗じる重み係数と、前記第2の相違度とに乗じる重み係数を、前記第1の撮像画像と前記第2の撮像画像のそれぞれに混入している正規化ランダムノイズの分散の逆数とする請求項8に記載の姿勢検出装置。   The posture estimation unit mixes a weighting factor to be multiplied by the first degree of difference and a weighting factor to be multiplied by the second degree of difference into each of the first captured image and the second captured image. The posture detection device according to claim 8, wherein the posture detection device is an inverse of the variance of the normalized random noise. 前記姿勢推定部は、前記第1の撮像装置で撮像した異なるフレーム間の画像の相違度を前記第1の撮像画像に混入している正規化ランダムノイズの分散として算出し、前記第2の撮像装置で撮像した異なるフレーム間の画像の相違度を前記第2の撮像画像に混入する正規化ランダムノイズの分散として算出する請求項9に記載の姿勢検出装置。   The posture estimation unit calculates the degree of difference between images captured by the first imaging device between different frames as a variance of normalized random noise mixed in the first captured image, and the second imaging The posture detection apparatus according to claim 9, wherein the degree of difference between images captured by the apparatus between different frames is calculated as a variance of normalized random noise mixed in the second captured image. 前記第1の撮像装置を基準とする第1の撮像座標系で前記対象物の姿勢を表したときの座標を第2の撮像装置を基準とする第2の撮像座標系で前記対象物の姿勢を表したときの座標へ変換する変換規則に基づいて、前記第1の仮想空間における前記対象物の複数の異なる姿勢に対応する第2の仮想空間における前記対象物の複数の姿勢をそれぞれ取得する姿勢取得部を更に備え、
前記第2の相違度算出部は、前記第1の撮像装置とは異なる位置に配置された第2の撮像装置が対象物を撮像して得た第2の撮像画像と、前記第2の撮像装置が撮像した空間に対応する第2の仮想空間における前記対象物のモデル画像との相違度を示す第2の相違度を、前記姿勢取得部が取得した前記第2の仮想空間における対象物の複数の姿勢毎に算出する請求項1から10のいずれか一項に記載の姿勢検出装置。
The coordinates when the posture of the object is expressed in the first imaging coordinate system with the first imaging device as a reference are the coordinates of the object in the second imaging coordinate system with the second imaging device as a reference. The plurality of postures of the object in the second virtual space corresponding to the plurality of different postures of the object in the first virtual space are acquired based on the conversion rule for converting the coordinates to A posture acquisition unit;
The second dissimilarity calculation unit includes a second captured image obtained by capturing an image of an object by a second image capturing device arranged at a position different from the first image capturing device, and the second image capturing. The second dissimilarity indicating the dissimilarity with the model image of the object in the second virtual space corresponding to the space imaged by the device is obtained by the object in the second virtual space acquired by the posture acquisition unit. The posture detection device according to claim 1, wherein the posture detection device calculates the posture for each of a plurality of postures.
前記第1の相違度算出部は、前記第1の撮像装置が対象物を撮像することで得られた第1の撮像画像と、前記第1の仮想空間における前記対象物のモデル画像との相違度を示す第3の相違度を、前記第1の仮想空間における前記対象物の複数の異なる位置毎に算出し、
前記第2の相違度算出部は、前記第2の撮像装置が対象物を撮像することで得られた第2の撮像画像と、前記第2の仮想空間における前記対象物のモデル画像との相違度を示す第4の相違度を、前記第2の仮想空間における前記対象物の複数の異なる位置毎に算出し、
複数の前記第3の相違度と複数の前記第4の相違度に基づいて、前記第1の撮像座標系における前記対象物の位置を推定する位置推定部と、
を備える請求項1から11のいずれか一項に記載の姿勢検出装置。
The first dissimilarity calculator calculates a difference between a first captured image obtained by the first imaging device capturing an object and a model image of the object in the first virtual space. Calculating a third dissimilarity indicating a degree for each of a plurality of different positions of the object in the first virtual space;
The second degree-of-difference calculation unit is configured such that a difference between a second captured image obtained by the second imaging device capturing an object and a model image of the object in the second virtual space Calculating a fourth dissimilarity indicating a degree for each of a plurality of different positions of the object in the second virtual space;
A position estimation unit that estimates a position of the object in the first imaging coordinate system based on the plurality of third dissimilarities and the plurality of fourth dissimilarities;
The posture detection device according to claim 1, comprising:
前記位置推定部は、
前記第1の相違度算出部が算出した複数の第3の相違度を参照して、前記第1の撮像座標系における撮像装置の光軸と直行する第1の平面の位置を推定し、前記第2の相違度算出部が算出した複数の第4の相違度を参照して、前記第2の撮像座標系における撮像装置の光軸と直行する第2の平面の位置を推定する平面位置推定部と、
前記第1の平面の位置と前記第2の平面の位置とを参照して、前記第1の撮像座標系における前記対象物の奥行きを算出する奥行き算出部と、
を備える請求項12に記載の姿勢検出装置。
The position estimation unit
With reference to a plurality of third dissimilarities calculated by the first dissimilarity calculating unit, a position of a first plane orthogonal to the optical axis of the imaging device in the first imaging coordinate system is estimated, Plane position estimation for estimating the position of the second plane orthogonal to the optical axis of the imaging device in the second imaging coordinate system with reference to the plurality of fourth differences calculated by the second difference calculation unit And
A depth calculator that calculates the depth of the object in the first imaging coordinate system with reference to the position of the first plane and the position of the second plane;
The posture detection device according to claim 12.
前記位置推定部は、複数の前記第3の相違度と複数の前記第4の相違度に基づいて、前記第1の撮像座標系における前記対象物の奥行きを推定する請求項1から11のいずれか一項に記載の姿勢検出装置。   The position estimation unit estimates the depth of the object in the first imaging coordinate system based on the plurality of third dissimilarities and the plurality of fourth dissimilarities. The attitude detection device according to claim 1. 前記姿勢推定部が推定した対象物の姿勢とそれ以前に推定した前記対象物の姿勢との差を参照して、推定が収束したか否か判定する判定部と、
を備え、
前記判定部が収束していないと判定した場合、前記第1の相違度算出部は、前記対象物のモデル画像の姿勢を予め決められたように変更した後のモデル画像と前記第1の撮像画像とに基づいて前記複数の第1の相違度を算出し、前記第2の相違度算出部は、前記対象物のモデル画像の姿勢を予め決められたように変更した後のモデル画像と前記第2の撮像画像とに基づいて前記複数の第2の相違度を算出し、
前記姿勢推定部は、前記第1の相違度算出部が算出した複数の第1の相違度と、前記第2の相違度算出部が算出した複数の第2の相違度とに基づいて、前記対象物の姿勢を推定し、
前記判定部は、前記姿勢推定部が推定した前記対象物の姿勢を用いて判定を再び行う請求項1から14のいずれか一項に記載の姿勢検出装置。
A determination unit that determines whether or not the estimation has converged with reference to a difference between the posture of the object estimated by the posture estimation unit and the posture of the object estimated before;
With
When it is determined that the determination unit has not converged, the first dissimilarity calculation unit changes the posture of the model image of the object as previously determined and the first imaging The plurality of first dissimilarities are calculated based on the image, and the second dissimilarity calculator calculates the model image after changing the posture of the model image of the object as determined in advance, and Calculating the plurality of second differences based on the second captured image;
The posture estimation unit is configured based on the plurality of first differences calculated by the first difference calculation unit and the plurality of second differences calculated by the second difference calculation unit. Estimate the posture of the object,
The posture detection device according to claim 1, wherein the determination unit performs the determination again using the posture of the object estimated by the posture estimation unit.
前記対象物が目標の位置から予め決められた範囲にある際に、該対象物の位置または姿勢が変化する前後で前記第1の撮像装置が撮像して得た二つの画像間の変化量は、該対象物の位置または姿勢が変化する前後で前記第2の撮像装置が撮像して得た二つの画像間の変化量より大きい請求項1から14のいずれか一項に記載の姿勢検出装置。   When the object is within a predetermined range from the target position, the amount of change between the two images obtained by the first imaging device before and after the position or orientation of the object is changed is The posture detection device according to any one of claims 1 to 14, wherein the posture detection device is larger than a change amount between two images obtained by the second imaging device before and after the position or posture of the object changes. . 前記対象物が目標の位置及び姿勢にあるときの該対象物を前記第1の撮像装置で撮影した第1のゴール画像と前記第2の撮像装置で撮影した第2のゴール画像とを取得するゴール画像取得部と、
前記第1のゴール画像を撮影した空間を再現する第1の仮想空間において存在する対象物のモデルの位置及び姿勢から、予め決められた軸周りまたは軸方向に予め決められたように前記モデルを移動させて撮影した画像と、前記第1のゴール画像との相違度を示す第5の相違度を算出し、
前記第2のゴール画像を撮影した空間を再現する第2の仮想空間において存在する対象物のモデルの位置及び姿勢から、予め決められた軸周りまたは軸方向に予め決められたように前記モデルを移動させて撮影した画像と、第2のゴール画像との相違度を示す第6の相違度を算出し、
前記第5の相違度を算出した際の移動方向への前記第5の相違度の勾配と、前記第6の相違度を算出した際の移動方向への前記第6の相違度の勾配とを比較することで、姿勢推定の基準となる撮像装置を決定し、該決定した撮像装置を新たに前記第1の撮像装置とする位置決め基準撮像装置決定部と、
を備える請求項1から15のいずれか一項に記載の姿勢検出装置。
When the object is at a target position and orientation, a first goal image obtained by photographing the object with the first imaging device and a second goal image obtained by photographing with the second imaging device are acquired. A goal image acquisition unit;
From the position and orientation of the model of the object existing in the first virtual space that reproduces the space in which the first goal image was captured, the model is determined in advance around a predetermined axis or in an axial direction. Calculating a fifth dissimilarity indicating a dissimilarity between the image taken by moving and the first goal image;
From the position and orientation of the model of the object existing in the second virtual space that reproduces the space in which the second goal image was photographed, the model is determined in advance around a predetermined axis or in an axial direction. Calculating a sixth dissimilarity indicating a dissimilarity between the image taken by moving and the second goal image;
The gradient of the fifth difference in the movement direction when the fifth difference is calculated and the gradient of the sixth difference in the movement direction when the sixth difference is calculated By comparing, an imaging device serving as a reference for posture estimation is determined, and a positioning reference imaging device determination unit that newly sets the determined imaging device as the first imaging device;
The posture detection device according to any one of claims 1 to 15.
前記対象物が複数ある場合、前記第1の相違度算出部は、前記第1の仮想空間において位置姿勢推定の対象となる対象物以外の対象物全ての画像領域を特定し、該特定した画像領域を演算対象から除いて第1の相違度を算出し、
前記第2の相違度算出部は、前記第2の仮想空間において位置姿勢推定の対象となる対象物以外の対象物全ての画像領域を特定し、該特定した画像領域を演算対象から除いて第2の相違度を算出する請求項1から16のいずれか一項に記載の姿勢検出装置。
When there are a plurality of the objects, the first dissimilarity calculation unit identifies an image region of all objects other than the object to be a position and orientation estimation target in the first virtual space, and the identified image Calculating the first difference by excluding the region from the calculation target;
The second dissimilarity calculation unit specifies image regions of all objects other than the target object for position and orientation estimation in the second virtual space, and removes the specified image region from the calculation target. The posture detection apparatus according to claim 1, wherein the degree of difference between the two is calculated.
前記推定された対象物の位置及び姿勢と前記対象物が目標の位置にある場合の位置及び姿勢とに基づいて、現在の時刻から予め決められた時間経過した後のロボット座標系における位置及び姿勢の変化量を決定する目標位置姿勢決定部と、
ロボットを制御する時間間隔毎に、前記目標位置姿勢決定部が決定した変化量のうち最新の変化量に基づいて、前記時間間隔後のロボットの位置及び姿勢を決定し、該決定した位置及び姿勢になるようロボットを制御するロボット制御部と、
を更に備え、
前記ロボット制御部は、前記予め決められた時間のうち、自装置が第1の撮像画像及び第2の撮像画像から前記変化量を決定するまでの最短時間に基づいて決められた時間まではロボットが加速及び減速で移動するように前記ロボットの位置及び姿勢を決定し、その後の時間はロボットが等速で移動するように前記ロボットの位置及び姿勢を決定する請求項12から14に記載の姿勢検出装置。
Based on the estimated position and orientation of the object and the position and orientation when the object is at the target position, the position and orientation in the robot coordinate system after a predetermined time has elapsed from the current time A target position and orientation determination unit that determines the amount of change in
For each time interval for controlling the robot, the position and posture of the robot after the time interval are determined based on the latest change amount among the change amounts determined by the target position and posture determination unit, and the determined position and posture A robot controller that controls the robot to become
Further comprising
The robot control unit performs the robot until the time determined based on the shortest time until the apparatus determines the amount of change from the first captured image and the second captured image among the predetermined time. 15. The posture according to claim 12, wherein the position and posture of the robot are determined so that the robot moves with acceleration and deceleration, and then the position and posture of the robot are determined so that the robot moves at a constant speed. Detection device.
第1の撮像装置が撮像した空間に対応する第1の仮想空間における対象物の複数の異なる姿勢毎に第1の相違度を算出する第1の相違度算出部と、
前記第1の撮像装置とは異なる位置に配置された第2の撮像装置が撮像した空間に対応する第2の仮想空間における対象物の複数の姿勢毎に第2の相違度を算出する第2の相違度算出部と、
前記複数の第1の相違度と前記複数の第2の相違度とに基づいて前記第1の撮像装置を基準とする第1の撮像座標系における前記対象物の姿勢を推定する姿勢推定部と、
を備える姿勢検出装置。
A first dissimilarity calculating unit that calculates a first dissimilarity for each of a plurality of different postures of an object in a first virtual space corresponding to a space imaged by the first imaging device;
A second difference is calculated for each of a plurality of postures of the object in the second virtual space corresponding to the space imaged by the second imaging device arranged at a position different from the first imaging device. The difference calculation unit of
A posture estimation unit that estimates a posture of the object in a first imaging coordinate system based on the first imaging device based on the plurality of first differences and the plurality of second differences. ,
An attitude detection device comprising:
第1の撮像装置が対象物を撮像することで得られた第1の撮像画像と、第1の仮想空間における前記対象物のモデル画像との相違度を示す第1の相違度を、前記第1の仮想空間における前記対象物の複数の異なる位置毎に算出する第3の相違度算出部と、
第2の撮像装置が対象物を撮像することで得られた第2の撮像画像と、第2の仮想空間における前記対象物のモデル画像との相違度を示す第1の相違度を、前記第2の仮想空間における前記対象物の複数の異なる位置毎に算出する第2の相違度算出部と、
前記第1の相違度算出部が算出した複数の第1の相違度と、前記第2の相違度算出部が算出した複数の第2の相違度とに基づいて第1の撮像座標系における前記対象物の位置を推定する位置推定部と、
を備える位置検出装置。
The first difference indicating the difference between the first captured image obtained by the first imaging device capturing the object and the model image of the object in the first virtual space is the first difference. A third dissimilarity calculator for calculating each of a plurality of different positions of the object in one virtual space;
The first difference indicating the difference between the second captured image obtained by the second imaging device capturing the object and the model image of the object in the second virtual space is the first difference. A second dissimilarity calculator for calculating each of a plurality of different positions of the object in two virtual spaces;
Based on the plurality of first differences calculated by the first difference calculation unit and the plurality of second differences calculated by the second difference calculation unit, the first imaging coordinate system in the first imaging coordinate system A position estimator for estimating the position of the object;
A position detection device comprising:
第1の撮像装置が対象物を撮像して得た第1の撮像画像と、前記第1の撮像装置が撮像した空間に対応する第1の仮想空間における前記対象物のモデル画像との相違度を示す第1の相違度を、前記第1の仮想空間における対象物の複数の異なる姿勢毎に算出する第1の相違度算出部と、
前記第1の撮像装置とは異なる位置に配置された第2の撮像装置が対象物を撮像して得た第2の撮像画像と、前記第2の撮像装置が撮像した空間に対応する第2の仮想空間における前記対象物のモデル画像との相違度を示す第2の相違度を、前記第2の仮想空間における対象物の複数の姿勢毎に算出する第2の相違度算出部と、
前記第1の相違度算出部が算出した複数の第1の相違度と、前記第2の相違度算出部が算出した複数の第2の相違度とに基づいて前記第1の撮像装置座標系における前記対象物の姿勢を推定する姿勢推定部と、
を備えるロボット。
The degree of difference between the first captured image obtained by imaging the object by the first imaging device and the model image of the object in the first virtual space corresponding to the space imaged by the first imaging device A first dissimilarity calculating unit that calculates a first dissimilarity for each of a plurality of different postures of the object in the first virtual space;
A second captured image obtained by imaging a target object by a second imaging device arranged at a position different from that of the first imaging device, and a second corresponding to a space captured by the second imaging device. A second dissimilarity calculating unit that calculates a second dissimilarity indicating a dissimilarity with the model image of the object in the virtual space for each of a plurality of postures of the object in the second virtual space;
The first imaging device coordinate system based on the plurality of first differences calculated by the first difference calculation unit and the plurality of second differences calculated by the second difference calculation unit. A posture estimation unit for estimating the posture of the object in
Robot equipped with.
可動部を有するロボットと、
第1の撮像装置が対象物を撮像して得た第1の撮像画像と、前記第1の撮像装置が撮像した空間に対応する第1の仮想空間における前記対象物のモデル画像との相違度を示す第1の相違度を、前記第1の仮想空間における対象物の複数の異なる姿勢毎に算出する第1の相違度算出部と、
前記第1の撮像装置とは異なる位置に配置された第2の撮像装置が対象物を撮像して得た第2の撮像画像と、前記第2の撮像装置が撮像した空間に対応する第2の仮想空間における前記対象物のモデル画像との相違度を示す第2の相違度を、前記第2の仮想空間における対象物の複数の姿勢毎に算出する第2の相違度算出部と、
前記第1の相違度算出部が算出した複数の第1の相違度と、前記第2の相違度算出部が算出した複数の第2の相違度とに基づいて前記第1の撮像装置座標系における前記対象物の姿勢を推定する姿勢推定部と、
を備えるロボットシステム。
A robot having moving parts;
The degree of difference between the first captured image obtained by imaging the object by the first imaging device and the model image of the object in the first virtual space corresponding to the space imaged by the first imaging device A first dissimilarity calculating unit that calculates a first dissimilarity for each of a plurality of different postures of the object in the first virtual space;
A second captured image obtained by imaging a target object by a second imaging device arranged at a position different from that of the first imaging device, and a second corresponding to a space captured by the second imaging device. A second dissimilarity calculating unit that calculates a second dissimilarity indicating a dissimilarity with the model image of the object in the virtual space for each of a plurality of postures of the object in the second virtual space;
The first imaging device coordinate system based on the plurality of first differences calculated by the first difference calculation unit and the plurality of second differences calculated by the second difference calculation unit. A posture estimation unit for estimating the posture of the object in
A robot system comprising:
第1の相違度算出部が、第1の撮像装置が対象物を撮像して得た第1の撮像画像と、前記第1の撮像装置が撮像した空間に対応する第1の仮想空間における前記対象物のモデル画像との相違度を示す第1の相違度を、前記第1の仮想空間における対象物の複数の異なる姿勢毎に算出する手順と、
第2の相違度算出部が、前記第1の撮像装置とは異なる位置に配置された第2の撮像装置が対象物を撮像して得た第2の撮像画像と、前記第2の撮像装置が撮像した空間に対応する第2の仮想空間における前記対象物のモデル画像との相違度を示す第2の相違度を、前記第2の仮想空間における対象物の複数の姿勢毎に算出する手順と、
姿勢推定部が、前記第1の相違度算出部が算出した複数の第1の相違度と、前記第2の相違度算出部が算出した複数の第2の相違度とに基づいて前記第1の撮像座標系における前記対象物の姿勢を推定する手順と、
を有する姿勢検出方法。
The first dissimilarity calculation unit includes a first captured image obtained by imaging a target by the first imaging device, and the first virtual space corresponding to the space imaged by the first imaging device. A procedure for calculating a first degree of difference indicating a degree of difference from the model image of the object for each of a plurality of different postures of the object in the first virtual space;
A second captured image obtained by imaging a target by a second imaging device arranged at a position different from that of the first imaging device, and the second imaging device; Calculating a second dissimilarity indicating a dissimilarity with the model image of the object in the second virtual space corresponding to the space imaged for each of a plurality of postures of the object in the second virtual space When,
Based on the plurality of first differences calculated by the first difference calculation unit and the plurality of second differences calculated by the second difference calculation unit by the posture estimation unit. A procedure for estimating the posture of the object in the imaging coordinate system of
A posture detection method comprising:
コンピューターに、
第1の撮像装置が対象物を撮像して得た第1の撮像画像と、前記第1の撮像装置が撮像した空間に対応する第1の仮想空間における前記対象物のモデル画像との相違度を示す第1の相違度を、前記第1の仮想空間における対象物の複数の異なる姿勢毎に算出する第1の相違度算出ステップと、
前記第1の撮像装置とは異なる位置に配置された第2の撮像装置が対象物を撮像して得た第2の撮像画像と、前記第2の撮像装置が撮像した空間に対応する第2の仮想空間における前記対象物のモデル画像との相違度を示す第2の相違度を、前記第2の仮想空間における対象物の複数の姿勢毎に算出する第2の相違度算出ステップと、
前記第1の相違度算出ステップで算出された複数の第1の相違度と、前記第2の相違度算出ステップで算出された複数の第2の相違度とに基づいて前記第1の撮像座標系における前記対象物の姿勢を推定する姿勢推定ステップと、
を実行させるためのプログラム。
On the computer,
The degree of difference between the first captured image obtained by imaging the object by the first imaging device and the model image of the object in the first virtual space corresponding to the space imaged by the first imaging device A first dissimilarity calculating step for calculating a first dissimilarity for each of a plurality of different postures of the object in the first virtual space;
A second captured image obtained by imaging a target object by a second imaging device arranged at a position different from that of the first imaging device, and a second corresponding to a space captured by the second imaging device. A second dissimilarity calculating step of calculating a second dissimilarity indicating a dissimilarity with the model image of the object in the virtual space for each of a plurality of postures of the object in the second virtual space;
The first imaging coordinates based on the plurality of first dissimilarities calculated in the first dissimilarity calculating step and the plurality of second dissimilarities calculated in the second dissimilarity calculating step A posture estimation step for estimating a posture of the object in the system;
A program for running
JP2013033542A 2013-02-22 2013-02-22 Posture detection device, position detection device, robot, robot system, posture detection method and program Withdrawn JP2014161937A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013033542A JP2014161937A (en) 2013-02-22 2013-02-22 Posture detection device, position detection device, robot, robot system, posture detection method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013033542A JP2014161937A (en) 2013-02-22 2013-02-22 Posture detection device, position detection device, robot, robot system, posture detection method and program

Publications (2)

Publication Number Publication Date
JP2014161937A true JP2014161937A (en) 2014-09-08
JP2014161937A5 JP2014161937A5 (en) 2016-04-07

Family

ID=51613067

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013033542A Withdrawn JP2014161937A (en) 2013-02-22 2013-02-22 Posture detection device, position detection device, robot, robot system, posture detection method and program

Country Status (1)

Country Link
JP (1) JP2014161937A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018027580A (en) * 2016-08-17 2018-02-22 ファナック株式会社 Robot control device
CN112276935A (en) * 2019-07-22 2021-01-29 发那科株式会社 Position and orientation determination device, position and orientation determination method, and position and orientation determination program
CN117809255A (en) * 2024-01-09 2024-04-02 广东工程宝科技有限公司 Repair reporting method and repair reporting system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08136220A (en) * 1994-11-14 1996-05-31 Mazda Motor Corp Method and device for detecting position of article
WO2000057129A1 (en) * 1999-03-19 2000-09-28 Matsushita Electric Works, Ltd. Three-dimensional object recognition method and pin picking system using the method
JP2004090183A (en) * 2002-09-02 2004-03-25 Fanuc Ltd Article position and orientation detecting device and article taking-out device
JP2010146303A (en) * 2008-12-18 2010-07-01 Fuji Electric Holdings Co Ltd Three-dimensional object attitude/position detecting device, method, and program
JP2012216180A (en) * 2011-03-30 2012-11-08 Advanced Telecommunication Research Institute International Estimation device of visual line direction, method for estimating visual line direction, and program for causing computer to execute method for estimating visual line direction

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08136220A (en) * 1994-11-14 1996-05-31 Mazda Motor Corp Method and device for detecting position of article
WO2000057129A1 (en) * 1999-03-19 2000-09-28 Matsushita Electric Works, Ltd. Three-dimensional object recognition method and pin picking system using the method
JP2004090183A (en) * 2002-09-02 2004-03-25 Fanuc Ltd Article position and orientation detecting device and article taking-out device
JP2010146303A (en) * 2008-12-18 2010-07-01 Fuji Electric Holdings Co Ltd Three-dimensional object attitude/position detecting device, method, and program
JP2012216180A (en) * 2011-03-30 2012-11-08 Advanced Telecommunication Research Institute International Estimation device of visual line direction, method for estimating visual line direction, and program for causing computer to execute method for estimating visual line direction

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018027580A (en) * 2016-08-17 2018-02-22 ファナック株式会社 Robot control device
US10507583B2 (en) 2016-08-17 2019-12-17 Fanuc Corporation Robot control device
DE102017118276B4 (en) * 2016-08-17 2020-10-08 Fanuc Corporation Robot control device
CN112276935A (en) * 2019-07-22 2021-01-29 发那科株式会社 Position and orientation determination device, position and orientation determination method, and position and orientation determination program
CN117809255A (en) * 2024-01-09 2024-04-02 广东工程宝科技有限公司 Repair reporting method and repair reporting system

Similar Documents

Publication Publication Date Title
US11704833B2 (en) Monocular vision tracking method, apparatus and non-transitory computer-readable storage medium
CN107255476B (en) Indoor positioning method and device based on inertial data and visual features
JP6734940B2 (en) Three-dimensional measuring device
CN107747941B (en) Binocular vision positioning method, device and system
CN106446815B (en) A kind of simultaneous localization and mapping method
US20200096317A1 (en) Three-dimensional measurement apparatus, processing method, and non-transitory computer-readable storage medium
JP6198230B2 (en) Head posture tracking using depth camera
JP2021000678A (en) Control system and control method
KR20150088636A (en) Apparatus and method for estimating position
CN105678809A (en) Handheld automatic follow shot device and target tracking method thereof
JP6317618B2 (en) Information processing apparatus and method, measuring apparatus, and working apparatus
JP6626338B2 (en) Information processing apparatus, control method for information processing apparatus, and program
US9914222B2 (en) Information processing apparatus, control method thereof, and computer readable storage medium that calculate an accuracy of correspondence between a model feature and a measurement data feature and collate, based on the accuracy, a geometric model and an object in an image
CN110120098A (en) Scene size estimation and augmented reality control method, device and electronic equipment
JP2014161937A (en) Posture detection device, position detection device, robot, robot system, posture detection method and program
CN107092348A (en) A kind of vision positioning mark layout method in immersive VR roaming system
JP2018173882A (en) Information processing device, method, and program
JP2005241323A (en) Imaging system and calibration method
WO2010089938A1 (en) Rotation estimation device, rotation estimation method, and storage medium
JP2012221042A (en) Camera pause estimation device, camera pause estimation method and camera pause estimation program
WO2021251171A1 (en) Information processing device, information processing method, and program
JP2014161937A5 (en) Robot, robot system, posture detection method and program
JP4631606B2 (en) Image depth distribution estimation method, apparatus, and program
Gemeiner et al. Real-time slam with a high-speed cmos camera
JP2015118441A (en) Data processing apparatus, data processing method and data processing program

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160217

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161220

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20170202