JP5233709B2 - Robot simulation image display system - Google Patents
Robot simulation image display system Download PDFInfo
- Publication number
- JP5233709B2 JP5233709B2 JP2009024794A JP2009024794A JP5233709B2 JP 5233709 B2 JP5233709 B2 JP 5233709B2 JP 2009024794 A JP2009024794 A JP 2009024794A JP 2009024794 A JP2009024794 A JP 2009024794A JP 5233709 B2 JP5233709 B2 JP 5233709B2
- Authority
- JP
- Japan
- Prior art keywords
- image
- dimensional
- camera
- robot
- image data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004088 simulation Methods 0.000 title claims description 11
- 238000012545 processing Methods 0.000 claims description 27
- 230000008859 change Effects 0.000 claims description 26
- 239000011159 matrix material Substances 0.000 claims description 22
- 238000000034 method Methods 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000003384 imaging method Methods 0.000 claims description 6
- 238000013500 data storage Methods 0.000 claims description 5
- 239000013598 vector Substances 0.000 description 17
- 230000014509 gene expression Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000007423 decrease Effects 0.000 description 3
- 239000003550 marker Substances 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Landscapes
- Manipulator (AREA)
Description
本発明は、ロボットの3次元画像モデルを表示させて、その動作をシミュレーションするための画像表示システムに関する。 The present invention relates to an image display system for displaying a three-dimensional image model of a robot and simulating its operation.
現在、産業用ロボットの売り込みを行う営業マンは、製品カタログに掲載されているロボットの写真を用いたり、パーソナルコンピュータのディスプレイにロボットの3次元画像モデルを表示させ、ロボットの動作を3次元的な動画像で表示させるようにしている。ところが、3次元画像モデルを表示させる操作は容易ではなく習熟度に個人差があり、人によっては製品説明を十分に行うことができないという問題がある。 Currently, a salesperson who sells industrial robots uses a photograph of the robot listed in the product catalog, or displays a 3D image model of the robot on the display of a personal computer. It is displayed as a moving image. However, the operation of displaying the three-dimensional image model is not easy and there are individual differences in proficiency levels, and there is a problem that some people cannot fully explain the product.
例えば特許文献1には、識別可能な複数個の位置決めパターンが配置されている物体教示指標の画像をカメラにより撮像して得られるデータに基づいて、対応する物品の3次元画像モデルデータをハードディスクやネットワーク上のサーバなどから読み出して、実際の背景画像に重ねて表示させる技術が開示されている。また、特許文献2には、人型のロボットにより物体を把持させて移動させるため、前記物体に2次元コードを貼付し、カメラにより撮像した2次元コードの画像から、2次元コードの位置・姿勢を把握する技術が開示されている。
For example,
しかしながら、産業用ロボットの場合は、実際の動作がどのようになるかを動画で表示させた方が特徴を示し易く、特許文献1のように単に3次元画像モデルを表示させるだけではプレゼンテーションが不十分となってしまう。また、3次元画像モデルの表示形態を変更する、例えばある軸を中心に3次元画像モデルを回転させて表示させるには、やはりパソコンを操作する必要があり、取扱いが簡単になるとは言えない。また、特許文献2に開示されている技術は、人型のロボットにより搬送対象とする物体を把持させることを目的としたもので、3次元画像モデルをどのように表示させるか、という技術との関連性は低い。
However, in the case of an industrial robot, it is easier to show the characteristics by displaying how the actual operation will be as a moving image, and presentation is not possible simply by displaying a 3D image model as in
本発明は上記事情に鑑みてなされたものであり、その目的は、ロボットの3次元画像モデルの動画像を、必要に応じて柔軟な形態で表示できるロボットシミュレーション画像表示システムを提供することにある。 The present invention has been made in view of the above circumstances, and an object thereof is to provide a robot simulation image display system capable of displaying a moving image of a three-dimensional image model of a robot in a flexible form as necessary. .
請求項1記載のロボットシミュレーション画像表示システムによれば、2次元コードにロボットの型番情報と、そのロボットの3次元画像モデルを動作させるデモ用プログラムとを記録しておく。また、前記2次元コードは、データ領域内に存在する4点の位置が特定可能であり、それらの内1点は基準点として他の3点との識別が可能で、且つそれら4点間の位置関係が特定されているものを使用する。
画像表示装置の画像データ処理手段は、カメラが撮像した2次元コードの画像データに含まれている前記4点の位置から、位置・姿勢情報取得手段が、基準点を3次元座標の原点とし、基準点の両隣にある2点の一方に沿う方向をX軸,他方に沿う方向をY軸,XY平面上において前記原点に立つ法線をZ軸として定め、前記姿勢情報に対応する回転行列を求めると、その回転行列を3次元画像モデルのデータに乗算して、X,Y,Zの各軸に3次元画像モデルの対応する3軸を適応させて表示手段に表示させる。
According to the robot simulation image display system of the first aspect, the robot model number information and the demonstration program for operating the three-dimensional image model of the robot are recorded in the two-dimensional code. In addition, the two-dimensional code can specify the positions of four points existing in the data area, and one of them can be distinguished from the other three points as a reference point. Use one with a specified positional relationship.
The image data processing means of the image display device, from the position of the four points included in the image data of the two-dimensional code captured by the camera, the position / posture information acquisition means uses the reference point as the origin of the three-dimensional coordinates, A direction along one of the two points adjacent to the reference point is defined as an X axis, a direction along the other is defined as a Y axis, and a normal line standing at the origin on the XY plane is defined as a Z axis, and a rotation matrix corresponding to the posture information is defined. When obtained, the rotation matrix is multiplied by the data of the three-dimensional image model, and the three axes corresponding to the three-dimensional image model are adapted to the X, Y, and Z axes and displayed on the display means.
そして、カメラにより撮像される2次元コードの位置・姿勢が変化すると、その変化に合わせて表示させる3次元画像モデルの位置・姿勢も変化させ、2次元コードに記録されているデモ用プログラムに従い3次元画像モデルを3次元空間表示で動作させる。
斯様に構成すれば、ロボットの3次元画像モデルは、カメラの視点から見た2次元コードの位置・姿勢のまま立体画像として表示手段に表示され、デモ用プログラムに従って動く様子が動画表示される。そして、カメラの視点が移動すれば、それに伴って3次元画像モデルの表示形態:位置・姿勢も変化するので、例えばロボットの製品説明を行う場合など、顧客に対するデモンストレーションを視覚的に判り易く行うことができる。
When the position / posture of the two-dimensional code picked up by the camera changes, the position / posture of the three-dimensional image model to be displayed is changed in accordance with the change, and 3 according to the demonstration program recorded in the two-dimensional code. A three-dimensional image model is operated in a three-dimensional space display.
If configured in this way, the three-dimensional image model of the robot is displayed on the display means as a three-dimensional image with the position and posture of the two-dimensional code viewed from the viewpoint of the camera, and a moving image is displayed as it moves according to the demonstration program. . And if the camera viewpoint moves, the display form of the 3D image model: the position and orientation will change accordingly. For example, when explaining the product of a robot, the demonstration for the customer should be made visually easy to understand. Can do.
請求項2記載のロボットシミュレーション画像表示システムによれば、画像データ処理手段が備える移動量算出手段は、カメラが初期の撮像位置から移動されたことによる移動量を、当該カメラにより撮像された2次元コードの画像データのサイズ変化より算出する。そして、自動モードが設定されると、請求項1と同様に2次元コードに記録されているデモ用プログラムに従い3次元画像モデルを動作させるが、手動モードが設定されると、2次元コードの位置・姿勢の変化に合わせて3次元画像モデルの位置・姿勢を変化させる処理を禁止すると共に、移動量算出手段により算出されたカメラの移動量に比例(正比例,反比例を含む)させて、3次元画像モデルの手先表示位置を移動させる。
すなわち、デモ用プログラムに従った動画表示だけでなく、カメラを移動させた状態に従ってロボットの手先表示位置を動かすことができるので、ロボットの動作状態をより多様に表示させることができる。
According to the robot simulation image display system of
That is, not only the moving image display according to the demonstration program but also the hand display position of the robot can be moved according to the state in which the camera is moved, so that the operation state of the robot can be displayed more variously.
請求項3記載のロボットシミュレーション画像表示システムによれば、画像データ処理手段が備える変化量検出手段は、カメラにより撮像された2次元コードの画像サイズが変化した場合の変化量を検出し、動作速度可変モードが設定されると、2次元コードの位置・姿勢の変化に合わせて3次元画像モデルの位置・姿勢を変化させる処理を禁止すると共に、2次元コードの画像サイズの変化量に比例させて3次元画像モデルがデモ用プログラムに応じて動作する速度を変化させる。したがって、3次元画像モデルの動画速度をダイナミックに変化させることができる。
According to the robot simulation image display system according to
(第1実施例)
以下、本発明の第1実施例について図1乃至図15を参照して説明する。図1は、ロボットシミュレーション画像表示システムの全体構成を示す。このシステムは、CCD(Charge Coupled Device)やCMOSイメージセンサなどを用いたカメラ1と、このカメラ1によって撮像された画像データが送信されて画像処理を行うパーソナルコンピュータ(パソコン,デコード手段,画像データ記憶手段,画像表示装置,画像データ処理手段,位置・姿勢情報取得手段,モード設定手段,移動量算出手段,変化量算出手段)2とで構成されている。
(First embodiment)
Hereinafter, a first embodiment of the present invention will be described with reference to FIGS. FIG. 1 shows the overall configuration of a robot simulation image display system. This system includes a
例えば複数の産業用ロボットが掲載されているカタログ3には、各ロボットの外観を映した写真と共にQRコード(登録商標,2次元コード)4が掲載されている。このQRコード4には、図2に示すように、各ロボットの型番(例えばVS−6577G,HS−4553G)と、ロボットの3次元画像モデルMをパソコン2のディスプレイ(表示手段)5に表示させた状態で、上記画像モデルを動作させるためのシミュレーション動作プログラムとが情報として記録されている。
For example, in a
上記動作プログラムは、図2(a)に一部を示すように、ロボットアームの手先を、座標点P1,P2,P1,P3,P4…等に順次移動させる命令(move P1など)を列記したものとなっている。パソコン2には、各ロボットに対応する3次元画像モデルの画像データや、画像データを処理して表示させるためのプログラム,QRコード4に記録されている情報データをデコードするためのプログラム等がハードディスク等の記憶装置にインストールされている。
As shown in part in FIG. 2A, the operation program lists instructions (move P1, etc.) for sequentially moving the hand of the robot arm to coordinate points P1, P2, P1, P3, P4. It has become a thing. The
そして、カメラ1が、例えばテーブル上に載置されたカタログ3に印刷されているQRコード4の画像を撮像してパソコン4に送信すると、パソコン2は、QRコード4に記録されているデータをデコードし、ロボットの型番に対応する3次元画像モデルMのデータを読み出してディスプレイ5に表示させると共に、シミュレーションプログラムに応じて上記画像モデルの動作をアニメーションで表示させる。このようにして、例えば営業マンSHが客先に出向いた場合に、ロボットが実際にどのような動きをするのかを、パソコン2のディスプレイ5により顧客CHに対して提示することができる。
またその際に、パソコン2は、カメラ1によって撮像されたQRコード4の画像が、カメラ1の視点から見て3次元的に傾いている状態に応じて、ロボットの画像モデルを実際の背景映像に合成し、図1や図4に示すように、カタログ3平面上のQRコード4の位置に合わせて傾いた状態で表示させる。
When the
At that time, the
次に、パソコン2が上述した画像処理をどのようにして行うかを、図7乃至図15も参照して説明する。図7は、パソコン2において、ユーザが3次元画像モデルをどのような形態で動作させるか、モードの切替え設定を行うための処理を示すフローチャートである。この処理は、ディスプレイ5にモード切替え設定用の画面を表示させ、ユーザが例えばマウスなどのポインティングデバイスを用いることで選択する。
Next, how the
パソコン2は、ユーザによるモード切替えをチェックし(ステップS1)、続くステップS2において、自動モードを選択したか(YES),手動モードを選択したか(NO)を判断する。そして、自動モード,手動モードに応じた動作(それぞれステップS3、S5)を行う。ステップS4では、当該アプリケーションプログラムの終了が選択されたか否かを判断する。ここで「自動モード」とは、ロボットの3次元画像モデルMを、QRコード4に記録されている動作プログラムに応じて動作させるモードであり、「手動モード」は上記動作プログラムを使用せず、画像モデルMを、カメラ1の移動状態に応じて動作させるモードである(詳細については後述する)。
The
図8(a)は、自動モードの処理内容を示すフローチャートである。先ず、2次元コード(ここではQRコード4)のデータをデコードして、ロボットの型番情報Tと動作プログラムSPとを読み取ると(ステップS11)、型番情報Tに対応したロボットの3次元画像データRを記憶装置より読み込む(ステップS12)。
次に、カメラ1により画像モデルMを表示させるため、2次元コードの画像Aを撮像すると(ステップS13)、その画像Aを、図8(b)に示すようにピクセル単位でスキャンする。それにより、カメラ1の焦点(視点)Fを基準とする、画像Aの3次元的な位置・姿勢を求めるために使用する4点:P1〜P4を特定する(ステップS14)。それから、それら4点:P1〜P4を用いて、2次元コードの平面の位置C0と、回転行列Mrとを求める(ステップS15)。
FIG. 8A is a flowchart showing the processing content of the automatic mode. First, when the data of the two-dimensional code (here, QR code 4) is decoded and the robot model number information T and the operation program SP are read (step S11), the robot three-dimensional image data R corresponding to the model number information T is read. Is read from the storage device (step S12).
Next, in order to display the image model M by the
ここで、ステップS14,S15の詳細を、図9及び図12乃至図15を参照して説明する。図12に示すように、上記の4点:P1〜P4とは、画像Aがパソコン4のディスプレイ5の平面(スクリーン平面と称す)に投影された場合に、2次元コードの四角の位置Q1〜Q4がスクリーン平面上の座標として特定される位置である。QRコード4の場合、その四角のうち3個所には位置決めマーカ(切り出しシンボル)が配置されており、それらの角が例えばQ1〜Q3となる。位置決めマーカの角Q1〜Q3を特定できれば残る1つのQ4はそれらに基づいて特定することができる。また、これら4点Q1〜Q3の内、基準となる1点(基準点)が上記「平面の位置C0」に対応するが(第2実施例の図16(a)参照)、この場合、Q1−P1が上記の位置COに対応する。そして、回転行列Mrは、カメラ1によって2次元コードを撮像した場合に、スクリーン上に投影される2次元コードの画像の位置姿勢に対応して求められる。
Here, details of steps S14 and S15 will be described with reference to FIG. 9 and FIGS. As shown in FIG. 12, the above four points: P1 to P4 are the positions Q1 to Q2 of the two-dimensional code when the image A is projected on the plane of the
図9は、ステップS15において、回転行列Mrを決定する処理を示すフローチャートである。また、図13乃至図15は、図9の処理に対応したイメージを示す。先ず、カメラ1の焦点Fと、スクリーン平面上の2点P1,P2を含む平面の法線ベクトルV12を求める(ステップS31)。ここで、スクリーン上の2点を通過する直線の一般式は、スクリーン座標を(xc,yc)とすると、
axc+byc+c=0 …(1)
で表わされる。
FIG. 9 is a flowchart showing the process for determining the rotation matrix Mr in step S15. 13 to 15 show images corresponding to the processing of FIG. First, a normal vector V12 of a plane including the focal point F of the
ax c + by c + c = 0 (1)
It is represented by
また、カメラ座標を(Xc,Yc,Zc)とし、カメラ1内部のパラメータ行列をKとすると、カメラ座標からスクリーン座標への変換式は(2)式となる。
Also, assuming that the camera coordinates are (X c , Y c , Z c ) and the parameter matrix inside the
(2)式を展開した式より変数hを消去し、xc,ycをXc,Yc,Zcで表わす式を求めて(1)式に代入すると、(3)式となる。 When the variable h is deleted from the expression obtained by expanding the expression (2), and the expressions x c , y c are represented by X c , Y c , Z c are obtained and substituted into the expression (1), the expression (3) is obtained.
aP11Xc+bP22Yc+(aP13+bP23+c)Zc=0 …(4)
となる。(4)式で表わされる平面の法線ベクトルは、
(aP11,bP22,aP13+bP23+c) …(5)
である。
aP 11 X c + bP 22 Y c + (aP 13 + bP 23 + c) Z c = 0 ... (4)
It becomes. The normal vector of the plane represented by equation (4) is
(AP 11 , bP 22 , aP 13 + bP 23 + c) (5)
It is.
また、スクリーン上の2点P1(x1,y1),P2(x2,y2)を通る直線の式は、
(x2−x1)(y−y1)=(y2−y1)(x−x1) …(6)
で表わすことができるから、(6)式を展開して(1)式と同様の形にすれば、(1)式における係数a,b,cが以下のように決まる。
a=(y2−y1),b=(x1−x2),c=−ax1−by1 …(7)
したがって、(7)式を(5)に代入すれば、スクリーン平面上の2点P1,P2を含む平面の法線ベクトルV12が求められる。
In addition, the equation of the straight line passing through the two points P1 (x1, y1) and P2 (x2, y2) on the screen is
(X2-x1) (y-y1) = (y2-y1) (x-x1) (6)
Therefore, if the expression (6) is expanded into the same form as the expression (1), the coefficients a, b, and c in the expression (1) are determined as follows.
a = (y2-y1), b = (x1-x2), c = -ax1-by1 (7)
Therefore, if the equation (7) is substituted into (5), the normal vector V12 of the plane including the two points P1 and P2 on the screen plane can be obtained.
続くステップS32では、同様にして、カメラ1の焦点Fと、スクリーン平面上の2点P3,P4を含む平面の法線ベクトルV34を求め、得られた2つの法線ベクトルV12,V34の外積より、2次元コードの点Q1→点Q2の方向ベクトルV3a(X軸方向単位ベクトル)が得られる(ステップS33)。図13は、ステップS31〜S33の処理に対応したイメージを示している。
In the subsequent step S32, the normal vector V34 of the plane including the focal point F of the
続くステップS34〜S36では、ステップS31〜S33と同様にして、カメラ1の焦点Fと、スクリーン平面上の2点P1,P3を含む平面の法線ベクトルV13を求め(ステップS34)、焦点Fと、2点P2,P4を含む平面の法線ベクトルV24を求め(ステップS35)、2つの法線ベクトルV13,V24の外積より、2次元コードの点Q1→点Q3の方向ベクトルV3b(Y軸方向単位ベクトル)を得る(ステップS36)。図14は、ステップS34〜S36の処理に対応したイメージを示している。
In subsequent steps S34 to S36, as in steps S31 to S33, a focal point F of the
更に、ステップS33,S36でそれぞれ得られた方向ベクトルV3a,V3bの外積から、方向ベクトルV3a,V3bの双方に直交する方向ベクトルV3c(Z軸方向単位ベクトル)が得られる(ステップS37)。図15は、この処理に対応したイメージを示している。そして、得られた3つの方向ベクトルV3a,V3b,V3cを正規化して各成分を配置することで、回転行列Mrが得られる(ステップS38)。
回転行列Mrは、カメラ1の視点からQRコード4の画像を捉えた場合に、カタログ3を平面とするQRコード4のX(Q1→Q2),Y(Q1→Q3),Z(Q1に立つXY平面の法線)の各軸が傾いている状態に対応しており、「平面の位置C0」が位置情報,回転行列Mrが姿勢情報となる。
Furthermore, a direction vector V3c (Z-axis direction unit vector) orthogonal to both the direction vectors V3a and V3b is obtained from the outer product of the direction vectors V3a and V3b obtained in steps S33 and S36, respectively (step S37). FIG. 15 shows an image corresponding to this processing. Then, the rotation matrix Mr is obtained by normalizing the obtained three direction vectors V3a, V3b, V3c and arranging the components (step S38).
The rotation matrix Mr stands for X (
再び、図9を参照する。ステップS15において回転行列Mrを求めると、ステップS12で読み込んだロボットの3次元画像データRの原点を、2次元コードの平面の位置C0に移動させると、回転行列Mrを適用(乗算)する(ステップS16,図3参照)。これにより、3次元画像データRは、カメラ1により撮像された2次元コードがスクリーン上に投影された場合の位置姿勢と同じ位置姿勢で表わされる画像データとなる。尚、3次元画像データRの原点はC0に対応するシンボルの角に一致させるか、または図3に示すように、前記シンボルの中心に一致させても良い。
Refer to FIG. 9 again. When the rotation matrix Mr is obtained in step S15, the origin of the 3D image data R of the robot read in step S12 is moved to the position C0 of the plane of the two-dimensional code, and the rotation matrix Mr is applied (multiplied) (step). S16, see FIG. 3). As a result, the three-dimensional image data R becomes image data represented by the same position and orientation as when the two-dimensional code captured by the
次に、ステップS11で読み取った動作プログラムSPを解釈して、プログラムSPに対応したロボットの姿勢を求め、その姿勢を3次元画像データRに適用すると(ステップS17)、3次元画像データRに基づいて、スクリーンに表示させるロボットの3次元画像Bを作成する(ステップS18)。この時、ロボットの画像の背景は透明にする。それから、ステップS13で得られた画像Aにおいて、2次元コードの位置にロボットの3次元画像Bを合成して画像Cを作成すると(ステップS19)、その画像Cをパソコン2のディスプレイ5(スクリーン)に表示させる(ステップS20)。これにより、ロボットの3次元画像モデルM(最終的にディスプレイ5に表示されるロボットの画像)は、スクリーン上で2次元コードの位置姿勢と同じ位置姿勢の3次元画像となり、動作プログラムSPに応じた3Dアニメーションとして表示される。
Next, the motion program SP read in step S11 is interpreted to determine the posture of the robot corresponding to the program SP, and when that posture is applied to the three-dimensional image data R (step S17), based on the three-dimensional image data R. Then, a three-dimensional image B of the robot to be displayed on the screen is created (step S18). At this time, the background of the robot image is made transparent. Then, in the image A obtained in step S13, when an image C is created by synthesizing the robot three-dimensional image B at the position of the two-dimensional code (step S19), the image C is displayed on the display 5 (screen) of the
以降は、ステップS21において、ユーザの設定に応じて上記アニメーション画像の動作スピードを設定する処理を行う(詳細は後述)。そして、自動モードが継続される場合には(ステップS22:NO)ステップS13に戻る。この時点で、カメラ1による2次元コードの撮像位置が図4(b)→(b)に示すように変化すると、それに応じて回転行列Mrが再計算され、3次元画像データRに適用される。したがって、スクリーンに表示される3次元画像モデルMの位置姿勢は、2次元コードの位置姿勢の変化に伴って変化する。
以上の処理により、パソコン2のディスプレイ5には、カタログ3上でQRコード4が配置されているポイント上に3次元画像モデルMが合成された状態の画像が表示され、顧客CHは、カタログ3に写真として掲載されているロボットが、実際には3次元的にどのような構造でどのような動きをするのかを視覚的に把握することができる。
Thereafter, in step S21, processing for setting the operation speed of the animation image is performed according to the user setting (details will be described later). And when automatic mode is continued (step S22: NO), it returns to step S13. At this time, when the imaging position of the two-dimensional code by the
As a result of the above processing, the
図10は、ステップS21の動作スピード設定処理を示すフローチャートである。カメラ1により2次元コードの画像Aが撮像されている状態で、例えばパソコン2のキーボードで「Shift」キーが押されている場合に(ステップS41:YES)スピード設定モード(動作速度可変モード)に移行する。そして、ユーザ(営業マンSHなど)がカメラ1の位置を移動させた後、その時点でカメラ1により2次元コードの画像Dを撮像する(ステップS42)。
この場合のイメージを図5に示す。図5(a)は、最初に2次元コードの画像Aを撮像した位置からカメラ1を寄せて、画像Dのサイズをより大きく写し込んだ場合であり、図5(b)は逆に、最初に画像Aを撮像した位置からカメラ1を引いて、画像Dのサイズをより小さく写し込んだ場合である。
FIG. 10 is a flowchart showing the operation speed setting process in step S21. When the two-dimensional code image A is being captured by the
An image in this case is shown in FIG. FIG. 5A shows a case where the
次のステップS43では、画像A,D間の移動量L(x,y,z)を求める。移動量Lは、2次元コードの重心や特定の位置P等の変化量でx,yを求め、2次元コードの画像サイズの差からzを求めて特定する(ここではzのみ求めても良い)。そして、動作プログラムSPに基づいて動いている3次元画像Mの動作速度Vm(画像の変化速度)に、移動量Lのz分を加えて更新すると(ステップS44)、更新した速度Vmを3次元画像Mの動作に適用させる(ステップS45)。
これにより、図5(a)に示すように画像Dのサイズが大きくなるように変化した場合は(移動量Lが減少する方向)3次元画像Mの動作速度が遅くなり(例えば10%低下)、図5(b)に示すように画像Dのサイズが小さくなるように変化した場合は3次元画像Mの動作速度が速くなる(例えば80%上昇)。
In the next step S43, a movement amount L (x, y, z) between the images A and D is obtained. The movement amount L is specified by obtaining x and y from the amount of change in the center of gravity of the two-dimensional code, the specific position P, etc., and obtaining z from the difference in image size of the two-dimensional code (here, only z may be obtained) ). When the moving speed L is added to the operating speed Vm (image changing speed) of the three-dimensional image M that is moving based on the operating program SP and updated (step S44), the updated speed Vm is three-dimensionally updated. This is applied to the operation of the image M (step S45).
As a result, when the size of the image D changes as shown in FIG. 5A (in the direction in which the movement amount L decreases), the operation speed of the three-dimensional image M becomes slow (for example, a 10% decrease). As shown in FIG. 5B, when the size of the image D changes so as to decrease, the operation speed of the three-dimensional image M increases (for example, increases by 80%).
図11は、図7のステップS5における「手動モード」の処理を示すフローチャートである。また、図6は手動モードの場合の動作イメージを示す。ステップS51〜S56は、自動モードの場合とほぼ同様の処理であるが、ステップS51ではロボットの型番情報Tのみを読み取り、動作プログラムSPは読み取らない。
そして、ユーザは、例えば図6に示すように、画像Aを撮像した位置からカメラ1を移動させて2次元コードの画像Dを撮像し(ステップS57)、スピード設定モードのステップS43と同様にして画像A,D間の移動量Lを求める(ステップS58)。それから、移動量Lに応じて、ロボットの手先を移動させた姿勢Jを3次元データRに適用すると(ステップS59)、適用後の3次元データRから3次元画像Bを作成する(ステップS60)。以降は、ステップS19,S20,S22と同様の処理になる(ステップS61〜S63)。
FIG. 11 is a flowchart showing the “manual mode” process in step S5 of FIG. FIG. 6 shows an operation image in the manual mode. Steps S51 to S56 are almost the same processing as in the automatic mode, but in step S51, only the robot model number information T is read, and the operation program SP is not read.
Then, for example, as shown in FIG. 6, the user moves the
以上のように本実施例によれば、QRコード4にロボットの型番情報Tと、そのロボットの3次元画像モデルMを動作させるデモ用プログラムSPを記録しておき、パソコン2は、カメラ1が撮像したQRコード4の画像データに含まれている4点Q1〜Q4に対応するスクリーン上の4点P1〜P4の位置から、基準点C0(P1,Q1)を3次元座標の原点とし、原点からQ1に沿う方向をX軸,同Q2に沿う方向をY軸,XY平面上で原点に立つ法線をZ軸として定め、QRコード4の3次元空間における姿勢情報である回転行列Mrを取得し、その回転行列Mrを3次元画像モデルMのデータRに乗算して、3次元画像モデルMの対応する3軸を適応させてディスプレイ5に表示させる。
As described above, according to the present embodiment, the model number information T of the robot and the demonstration program SP for operating the three-dimensional image model M of the robot are recorded in the
そして、カメラ1により撮像されるQRコード4の位置・姿勢が変化すると、その変化に合わせて表示させる3次元画像モデルMの位置・姿勢も変化させ、デモ用プログラムSPに従い3次元画像モデルMを3次元空間表示で動作させるようにした。したがって、ロボットの製品説明を行う場合などに、顧客に対するデモンストレーションを視覚的に判り易く行うことができる。例えば営業マンなどに2次元コードが印刷されたカタログを渡せば、その営業マンのパソコン2による3次元画像モデルMの操作能力に関係なく、客先等の出先においてデモンストレーションを容易に行わせることができ、ロボットが具体的にどのような動きをするかを顧客に提示できる。
When the position / posture of the
また、パソコン2は、カメラ1が、初期の撮像位置から移動されたことによる移動量Lを、当該カメラ1により撮像されたQRコード4の画像データのサイズ変化より算出し、自動モードが設定されると、デモ用プログラムSPに従い3次元画像モデルMを動作させ、手動モードが設定されると、QRコード4の位置・姿勢の変化に合わせて3次元画像モデルMの位置・姿勢を変化させる処理を禁止して、算出されたカメラ1の移動量Lに比例させて、3次元画像モデルMの手先表示位置を移動させるようにした。したがって、デモ用プログラムSPに従った動画表示だけでなく、カメラ1を移動させた状態に従ってロボットの手先表示位置を動かすことができ、ロボットの動作状態をより多様に表示させることができる。
Further, the
更に、パソコン2は、カメラ1により撮像されたQRコード4の画像サイズが変化した場合の変化量Lを検出し、スピード設定モードが設定されると、QRコード4の位置・姿勢の変化に合わせて3次元画像モデルMの位置・姿勢を変化させる処理を行わず、QRコード4の画像サイズの変化量Lに比例させて3次元画像モデルMがデモ用プログラムSPに応じて動作する速度を変化させる。したがって、3次元画像モデルの動画速度をダイナミックに変化させることができる。
Further, the
(第2実施例)
図16及び図17は本発明の第2実施例を示す。第2実施例は、2次元コードの一例としてQRコード4を用いたが、その他の2次元コードについても同様に適用できることを示す。本発明が適用できる2次元コードは、図16(a)に示すように、コード領域内において4点C0,CR,CL,CX(第1実施例のQ1〜Q4に対応)を特定できることが必要である。更に、それらのうち1点例えばC0が、その他の点CR,CL,CXと区別して特定できることと、C0を基準として、その他の点CR,CL,CXの配置が相対的に固定であることも必要である。
(Second embodiment)
16 and 17 show a second embodiment of the present invention. In the second embodiment, the
上記の条件を満たす2次元コードとしては、図16(b)〜(f)に示すマイクロQRコード(登録商標),Veri Code(登録商標),Data Matrix(登録商標),CODE49(登録商標),PDF417(登録商標)などがある。図16(b)に示すマイクロQRコードは、切り出しシンボルが1個だけ配置されているが、その四角の位置で上記の4点を特定できる。同じくマトリックス型である、図16(c)に示すVeri Codeは、正方形状の4辺がラインで囲まれているので、その四角の位置で上記の4点を特定できる。
図16(d)に示すData Matrixは、正方形状の2辺をなすL字型のラインを備えているので、それらにより3点を特定でき、残りの1点も前記3点に基づいて特定できる。また、図16(e),(f)に示すスタック型のCODE49,PDF417も、矩形をなす外形の四角の位置で上記の4点を特定できる。
As the two-dimensional code satisfying the above conditions, the micro QR code (registered trademark), Veri Code (registered trademark), Data Matrix (registered trademark), CODE 49 (registered trademark) shown in FIGS. PDF417 (registered trademark) is available. In the micro QR code shown in FIG. 16B, only one cut-out symbol is arranged, but the above four points can be specified at the positions of the squares. The Veri Code shown in FIG. 16C, which is also a matrix type, can specify the above four points at the positions of the squares because the four sides of the square are surrounded by lines.
Since the Data Matrix shown in FIG. 16D has L-shaped lines that form two square sides, three points can be specified by them, and the remaining one point can also be specified based on the three points. . Also, the stack-type CODE 49 and PDF 417 shown in FIGS. 16E and 16F can identify the above four points at the rectangular positions of the outer shape forming a rectangle.
また図17には、そのままでは適用できない2次元コードとして、(a)MaxiCode(登録商標),(b)AztecCode(登録商標)を示している。これらについては、中心に配置されるシンボルにより1点は特定できるが、コード領域の四角の内少なくとも3点にマーカ10を張り付けるようにすれば、本発明を同様に適用できる。尚、マーカ10の面積は、マーカ10によって覆われたデータ領域が、これらのコードが備えている誤り訂正機能によって訂正可能な面積よりも小さく設定する必要がある。
FIG. 17 shows (a) MaxiCode (registered trademark) and (b) AztecCode (registered trademark) as two-dimensional codes that cannot be applied as they are. With respect to these, one point can be specified by the symbol arranged at the center, but the present invention can be similarly applied if the
本発明は上記し又は図面に記載した実施例にのみ限定されるものではなく、以下のような変形又は拡張が可能である。
ロボットの型番や3次元画像モデルMは、パソコン2に内蔵される記憶装置に記憶されるものに限らず、例えばパソコン2に接続されるUSB(Universal Serial Bus)メモリに記憶されているものや、或いはLANやインターネットなどの通信ネットワークを介して通信が可能なハードディスクドライブやサーバ上に記憶されているものを読み出すようにしても良い。
スピード設定モードにおける2次元コードのサイズと動作速度との対応関係は、逆にしても良い。
手動モードやスピード設定モードを実施するか否かは、必要に応じて適宜選択すれば良い。
The present invention is not limited to the embodiments described above or shown in the drawings, and the following modifications or expansions are possible.
The robot model number and the three-dimensional image model M are not limited to those stored in the storage device built in the
The correspondence relationship between the size of the two-dimensional code and the operation speed in the speed setting mode may be reversed.
Whether to execute the manual mode or the speed setting mode may be appropriately selected as necessary.
図面中、1はカメラ、2はパーソナルコンピュータ(デコード手段,画像データ記憶手段,画像表示装置,画像データ処理手段,位置・姿勢情報取得手段,モード設定手段,移動量算出手段,変化量算出手段)、4はQRコード(2次元コード)、5はディスプレイ(表示手段)を示す。
In the drawings, 1 is a camera, 2 is a personal computer (decoding means, image data storage means, image display device, image data processing means, position / attitude information acquisition means, mode setting means, movement amount calculation means, change amount calculation means)
Claims (3)
複数のロボットの型番情報に対応した3次元画像モデルのデータが記憶されている画像データ記憶手段と、
前記カメラにより撮像された画像データが入力されると共に、前記画像データ記憶手段に記憶されている画像データを取得可能である画像表示装置とを備え、
前記画像表示装置は、画像を表示する表示手段と、明暗セルで表わされるデータ領域内において4点の位置が特定可能であると共に、それらの内1点は基準点として他の3点との識別が可能であり、且つそれら4点間の位置関係が特定されている2次元コードの画像データをデコードするデコード手段と、前記表示手段に表示させる画像のデータを画像処理する画像データ処理手段とを備え、
前記画像データ処理手段は、
前記カメラが、ロボットの型番情報及び前記ロボットの3次元画像モデルを動作させるデモ用プログラムが記録されている2次元コードを撮像した場合に、前記2次元コードの画像データに含まれている前記4点の位置から、前記2次元コードの3次元空間における位置・姿勢情報を取得する位置・姿勢情報取得手段を備え、
前記カメラが前記2次元コードを撮像した場合、前記デコード手段がデコードして得られた前記ロボットの型番情報に対応する3次元画像モデルのデータを前記画像データ記憶手段より読み出し、
前記位置・姿勢情報取得手段が、前記基準点を3次元座標の原点とし、前記4点のうち基準点の両隣にある2点の一方に沿う方向をX軸,他方に沿う方向をY軸,XY平面上において前記原点に立つ法線をZ軸として定め、前記姿勢情報に対応する回転行列を求めると、前記回転行列を前記3次元画像モデルのデータに乗算して、前記X,Y,Zの各軸に前記3次元画像モデルの対応する3軸を適応させて前記表示手段に表示させ、
前記カメラにより撮像される前記2次元コードの位置・姿勢が変化すると、その変化に合わせて前記表示手段に表示させる前記3次元画像モデルの位置・姿勢を変化させ、
前記2次元コードに記録されている前記ロボットのデモ用プログラムに従い、前記3次元画像モデルを3次元空間表示で動作させることを特徴とするロボットシミュレーション画像表示システム。 A camera that outputs captured image data;
Image data storage means for storing data of a three-dimensional image model corresponding to the model number information of a plurality of robots;
An image display device capable of acquiring image data captured by the camera and acquiring image data stored in the image data storage unit;
The image display device is capable of specifying the position of four points in the data area represented by the light and dark cells and the display means for displaying the image, and one of them is identified as the other three points as a reference point. Decoding means for decoding image data of a two-dimensional code in which the positional relationship between these four points is specified, and image data processing means for image processing image data to be displayed on the display means Prepared,
The image data processing means includes
When the camera captures a two-dimensional code in which a demonstration program for operating a robot model number information and a three-dimensional image model of the robot is recorded, the 4D included in the image data of the two-dimensional code. Position / posture information acquisition means for acquiring position / posture information in a three-dimensional space of the two-dimensional code from the position of the point,
When the camera images the two-dimensional code, the data of the three-dimensional image model corresponding to the model number information of the robot obtained by decoding by the decoding unit is read from the image data storage unit,
The position / posture information acquisition means uses the reference point as the origin of a three-dimensional coordinate, the direction along one of two points adjacent to the reference point among the four points is an X axis, and the direction along the other is a Y axis, When a normal line standing at the origin on the XY plane is defined as the Z axis and a rotation matrix corresponding to the posture information is obtained, the rotation matrix is multiplied by the data of the three-dimensional image model, and the X, Y, Z Adapting the corresponding three axes of the three-dimensional image model to each of the axes and displaying them on the display means,
When the position / posture of the two-dimensional code imaged by the camera changes, the position / posture of the three-dimensional image model displayed on the display means is changed in accordance with the change,
A robot simulation image display system, wherein the three-dimensional image model is operated in a three-dimensional space display according to the robot demonstration program recorded in the two-dimensional code.
前記画像データ処理手段は、
前記カメラが、初期の撮像位置から移動されたことによる移動量を、当該カメラにより撮像された前記2次元コードの画像データのサイズ変化より算出する移動量算出手段を備え、
前記自動モードが設定されると、前記2次元コードに記録されている前記ロボットのデモ用プログラムに従い前記3次元画像モデルを動作させ、
前記手動モードが設定されると、前記2次元コードの位置・姿勢の変化に合わせて前記表示手段に表示させる前記3次元画像モデルの位置・姿勢を変化させる処理を禁止すると共に、前記移動量算出手段により算出された前記カメラの移動量に比例させて、前記3次元画像モデルの手先表示位置を移動させることを特徴とする請求項1記載のロボットシミュレーション画像表示システム。 It is equipped with mode setting means that allows the user to set either automatic mode or manual mode.
The image data processing means includes
A moving amount calculating means for calculating a moving amount due to the camera being moved from an initial imaging position from a change in size of image data of the two-dimensional code imaged by the camera;
When the automatic mode is set, the 3D image model is operated according to the robot demonstration program recorded in the 2D code,
When the manual mode is set, the process of changing the position / posture of the three-dimensional image model displayed on the display unit in accordance with the change of the position / posture of the two-dimensional code is prohibited, and the movement amount calculation is performed. 2. The robot simulation image display system according to claim 1, wherein the hand display position of the three-dimensional image model is moved in proportion to the movement amount of the camera calculated by the means.
前記画像データ処理手段は、
前記カメラにより撮像された前記2次元コードの画像サイズが変化した場合の変化量を検出する変化量検出手段を備え、
前記動作速度可変モードが設定されると、前記2次元コードの位置・姿勢の変化に合わせて前記表示手段に表示させる前記3次元画像モデルの位置・姿勢を変化させる処理を禁止すると共に、前記2次元コードの画像サイズの変化量に比例させて、前記3次元画像モデルが前記デモ用プログラムに応じて動作する速度を変化させることを特徴とする請求項1又は2記載のロボットシミュレーション画像表示システム。 Comprising a mode setting means capable of setting the operation speed variable mode by the user;
The image data processing means includes
A change amount detecting means for detecting a change amount when the image size of the two-dimensional code imaged by the camera changes;
When the operation speed variable mode is set, the process of changing the position / posture of the three-dimensional image model displayed on the display unit in accordance with the change of the position / posture of the two-dimensional code is prohibited, and the 2 The robot simulation image display system according to claim 1 or 2, wherein a speed at which the three-dimensional image model operates according to the demonstration program is changed in proportion to a change amount of an image size of a dimension code.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009024794A JP5233709B2 (en) | 2009-02-05 | 2009-02-05 | Robot simulation image display system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009024794A JP5233709B2 (en) | 2009-02-05 | 2009-02-05 | Robot simulation image display system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010179403A JP2010179403A (en) | 2010-08-19 |
JP5233709B2 true JP5233709B2 (en) | 2013-07-10 |
Family
ID=42761338
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009024794A Active JP5233709B2 (en) | 2009-02-05 | 2009-02-05 | Robot simulation image display system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5233709B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105027141A (en) * | 2013-01-31 | 2015-11-04 | 富士机械制造株式会社 | Image processing system and aid system |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101427715B1 (en) * | 2012-12-31 | 2014-08-07 | 아주대학교산학협력단 | Apparatus and method for recognizing quick response code |
JP6339609B2 (en) * | 2016-02-23 | 2018-06-06 | ヤフー株式会社 | Image processing apparatus, image processing method, and image processing program |
CN107225561A (en) * | 2017-06-02 | 2017-10-03 | 成都福莫斯智能系统集成服务有限公司 | Robot arm control method based on MR technologies |
JP7032179B2 (en) * | 2018-03-05 | 2022-03-08 | ヤフー株式会社 | Image processing device, image processing method and image processing program |
CN109108942B (en) * | 2018-09-11 | 2021-03-02 | 武汉科技大学 | Mechanical arm motion control method and system based on visual real-time teaching and adaptive DMPS |
CN108994844B (en) * | 2018-09-26 | 2021-09-03 | 广东工业大学 | Calibration method and device for hand-eye relationship of polishing operation arm |
KR20210079435A (en) * | 2019-12-19 | 2021-06-30 | (주)테크윙 | Handler for managing electronic components and method of setting teaching point thereof |
CN114619441B (en) * | 2020-12-10 | 2024-03-26 | 北京极智嘉科技股份有限公司 | Robot and two-dimensional code pose detection method |
WO2023151603A1 (en) * | 2022-02-11 | 2023-08-17 | 北京极智嘉科技股份有限公司 | Cargo box storage method and robot |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4032776B2 (en) * | 2002-03-04 | 2008-01-16 | ソニー株式会社 | Mixed reality display apparatus and method, storage medium, and computer program |
JP2004306182A (en) * | 2003-04-04 | 2004-11-04 | Hitachi Eng Co Ltd | Simulation system of robot using image processing |
JP2007090448A (en) * | 2005-09-27 | 2007-04-12 | Honda Motor Co Ltd | Two-dimensional code detecting device, program for it, and robot control information generating device and robot |
JP4238256B2 (en) * | 2006-06-06 | 2009-03-18 | ファナック株式会社 | Robot simulation device |
JP2007334678A (en) * | 2006-06-15 | 2007-12-27 | Fanuc Ltd | Robot simulation device |
JP2008296330A (en) * | 2007-05-31 | 2008-12-11 | Fanuc Ltd | Robot simulation device |
-
2009
- 2009-02-05 JP JP2009024794A patent/JP5233709B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105027141A (en) * | 2013-01-31 | 2015-11-04 | 富士机械制造株式会社 | Image processing system and aid system |
Also Published As
Publication number | Publication date |
---|---|
JP2010179403A (en) | 2010-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5233709B2 (en) | Robot simulation image display system | |
JP4508049B2 (en) | 360 ° image capturing device | |
JP6394794B2 (en) | Information processing apparatus, information processing method, and information processing program | |
JP2004199496A (en) | Information processor and method, and program | |
CN109910000A (en) | The calibration and operation of the steerable system of view-based access control model | |
US20100188355A1 (en) | Apparatus and method for detecting an object pointed by a user | |
JP5387668B2 (en) | Information processing terminal, information processing method, and program | |
US20120268493A1 (en) | Information processing system for augmented reality | |
WO2018025825A1 (en) | Image capture system | |
JP2005010998A (en) | Information presentation device and method | |
Tammaro et al. | Extending Industrial Digital Twins with Optical Object Tracking. | |
US20110037839A1 (en) | Industrial robot, and methods for determining the position of an industrial robot relative to an object | |
JP4746717B2 (en) | Image generation system, image generation method, computer program, and recording medium on which computer program is recorded | |
JP5446700B2 (en) | Information processing apparatus, information processing method, and program | |
JPH10188040A (en) | Opaque screen type display device | |
KR100908084B1 (en) | Recording medium recording method of 3-dimensional coordinates of subject and program for executing the method in computer | |
JP5330946B2 (en) | 3D image display program, portable device such as a mobile phone having a 3D image display function, and 3D image display method | |
JP6801138B1 (en) | Terminal device, virtual object operation method, and virtual object operation program | |
JP2003150599A (en) | Electronic publication browsing method and device therefor, book for electronic publication browsing, electronic publication browsing program and recording medium program with the program recorded thereon | |
JP2019063953A (en) | Work system, method for controlling work system and program | |
JP2004309947A (en) | Data display device, data display program, and program recording medium | |
JP4540329B2 (en) | Information presentation device | |
Tomizawa et al. | Object posture recognition for remote book browsing robot system | |
JP2021060856A (en) | Image synthesis apparatus, control method thereof, and program | |
CN114072753A (en) | Information processing apparatus, information processing method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120113 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130226 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130311 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5233709 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160405 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |