JP5273091B2 - 3D shape measuring apparatus and 3D shape measuring method - Google Patents
3D shape measuring apparatus and 3D shape measuring method Download PDFInfo
- Publication number
- JP5273091B2 JP5273091B2 JP2010111699A JP2010111699A JP5273091B2 JP 5273091 B2 JP5273091 B2 JP 5273091B2 JP 2010111699 A JP2010111699 A JP 2010111699A JP 2010111699 A JP2010111699 A JP 2010111699A JP 5273091 B2 JP5273091 B2 JP 5273091B2
- Authority
- JP
- Japan
- Prior art keywords
- stage
- dimensional
- camera
- coordinate
- fixed point
- 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.)
- Expired - Fee Related
Links
Images
Abstract
Description
本発明は、測定対象物を回転するステージに載置し、ステージを回転させながら3次元形状を測定することで測定対象物の全方向における3次元形状を取得可能な3次元形状測定装置及び3次元形状測定方法に関する。 The present invention provides a three-dimensional shape measuring apparatus capable of acquiring a three-dimensional shape in all directions of a measuring object by placing the measuring object on a rotating stage and measuring the three-dimensional shape while rotating the stage. The present invention relates to a dimension shape measuring method.
測定対象物に3次元カメラから光を照射して3次元形状を測定する方法には様々な方法があるが、測定可能な箇所は測定対象物に光が照射される箇所のみである。測定対象物の全方向における3次元形状を測定するためには、3次元カメラ又は測定対象物を移動させて測定対象物を様々な方向から測定する必要があり、その方法にも様々な方法がある。その方法の一つとして、例えば下記特許文献1に示されているように、回転するステージに測定対象物を載置し、ステージを回転させながら3次元形状を測定する方法がある。
There are various methods for measuring the three-dimensional shape by irradiating the measurement object with light from the three-dimensional camera, but the measurable part is only the part where the measurement object is irradiated with light. In order to measure the three-dimensional shape in all directions of the measurement object, it is necessary to move the three-dimensional camera or the measurement object to measure the measurement object from various directions, and there are various methods. is there. As one of the methods, there is a method of placing a measurement object on a rotating stage and measuring a three-dimensional shape while rotating the stage as disclosed in
この方法においては、ステージから見ると、3次元カメラが回転していることになるため、予め設定したステージの回転角度ごとに座標系が異なっており、各回転角度ごとの3次元データを、設定した回転角度における座標系(基準座標系)の3次元データに変換するための座標変換係数を各回転角度ごとに取得して記憶しておき、各回転角度で取得した3次元データをこの座標変換係数で変換して全ての3次元データを1つの座標系におけるデータとしている。そして、下記特許文献1に示される方法では、定点を有する基準物体をステージに載置して各回転角度ごとに基準物体の3次元形状を測定し、3つ以上の定点座標を取得することで前記座標変換係数を計算している。この特許文献1に示された方法は、回転軸がステージの平面の法線方向の1つしかなく、上部や下部が複雑な構造をしている測定対象物については全方向における3次元形状が測定できないことがある。
In this method, since the three-dimensional camera is rotated when viewed from the stage, the coordinate system is different for each preset stage rotation angle, and three-dimensional data for each rotation angle is set. A coordinate conversion coefficient for conversion into the three-dimensional data of the coordinate system (reference coordinate system) at the rotation angle obtained is acquired and stored for each rotation angle, and the three-dimensional data acquired at each rotation angle is converted to this coordinate. All three-dimensional data is converted into data in one coordinate system by conversion with coefficients. And in the method shown in the following
これに対し、下記特許文献2に示された3次元形状測定では、第1回転ステージ上に同第1回転ステージとは回転軸の異なる第2回転ステージを載置し、第2回転ステージ上に測定対象物を載置して、第1及び第2回転ステージを回転させながら、すなわち異なる2つの回転軸周りに測定対象物を回転させて、測定対象物の3次元形状を測定している。これにより、複雑な構造の測定対象物でも全方向における3次元形状を測定可能としている。この特許文献2に示された方法においても、3次元データの座標変換は必要であり、座標変換係数は各回転軸の各回転角度ごとに取得する必要がある。この特許文献2に示された方法では、各回転軸の基準座標系における位置を検出することで、各回転軸の各回転角度ごとの座標変換係数を取得している。また、この方法においても、特許文献1に示されているように、定点を有する基準物体を各回転軸の各回転角度ごとに3次元形状を測定し、3つ以上の定点座標を取得することで各回転軸の各回転角度ごとの座標変換係数を計算することもできる。
On the other hand, in the three-dimensional shape measurement shown in Patent Document 2 below, a second rotary stage having a rotation axis different from that of the first rotary stage is placed on the first rotary stage, and the second rotary stage is placed on the second rotary stage. The measurement object is placed and the three-dimensional shape of the measurement object is measured while rotating the first and second rotating stages, that is, rotating the measurement object around two different rotation axes. Thereby, it is possible to measure a three-dimensional shape in all directions even with a measurement object having a complicated structure. Also in the method disclosed in Patent Document 2, coordinate conversion of three-dimensional data is necessary, and a coordinate conversion coefficient needs to be acquired for each rotation angle of each rotation axis. In the method disclosed in Patent Document 2, a coordinate conversion coefficient for each rotation angle of each rotation axis is obtained by detecting the position of each rotation axis in the reference coordinate system. Also in this method, as shown in
ステージの各回転角度ごとの座標変換係数は、ステージに対する3次元カメラの位置が変化しなければ一定であるので、一度算出すればよい。しかし、頻繁にステージに対する3次元カメラの位置を変化させるような場合は、その都度ステージの各回転角度ごとの座標変換係数を取得する必要があり、測定の効率が悪くなる。そして、特許文献2に示されているように、ステージに2つの回転軸が設けられている場合は、測定の効率がさらに悪くなる。 The coordinate conversion coefficient for each rotation angle of the stage is constant if the position of the three-dimensional camera with respect to the stage does not change. However, when the position of the three-dimensional camera with respect to the stage is frequently changed, it is necessary to acquire a coordinate conversion coefficient for each rotation angle of the stage each time, and the measurement efficiency is deteriorated. As shown in Patent Document 2, when the stage is provided with two rotating shafts, the measurement efficiency is further deteriorated.
本発明は、上記問題に対処するためになされたもので、その目的は、ステージ上に測定対象物を載置してステージを回転させながら測定対象物の3次元形状を測定するとともに、3次元カメラの位置をステージに対して変化させても、効率よく測定対象物の3次元形状を測定できるようにした3次元形状測定装置を提供することにある。なお、下記本発明の各構成要件の記載においては、本発明の理解を容易にするために、実施形態の対応箇所の符号を括弧内に記載しているが、本発明の各構成要件は、実施形態の符号によって示された対応箇所の構成に限定解釈されるべきものではない。 The present invention has been made in order to cope with the above-described problem, and its purpose is to measure the three-dimensional shape of the measurement object while placing the measurement object on the stage and rotating the stage. An object of the present invention is to provide a three-dimensional shape measuring apparatus capable of efficiently measuring a three-dimensional shape of a measurement object even if the position of the camera is changed with respect to the stage. In addition, in the description of each constituent element of the present invention below, in order to facilitate understanding of the present invention, reference numerals of corresponding portions of the embodiment are described in parentheses, but each constituent element of the present invention is The present invention should not be construed as being limited to the configurations of the corresponding portions indicated by the reference numerals of the embodiments.
上記目的を達成するために、本発明の特徴は、2つ以上の回転軸周りに回転可能であって座標変換係数を計算するための定点又はベクトルを定義可能なステージ(10)と、ステージ上に載置した物体の3次元形状を測定する3次元カメラ(20)と、3次元カメラで測定した3次元形状を表す3次元データを処理する処理装置(30,40)とからなり、処理装置に、第1のカメラ位置に配置した3次元カメラの測定により取得したステージの定点又はベクトルを用いて、ステージを基準位置から回転させた状態で3次元カメラにより測定した3次元形状を表す3次元データを、ステージが基準位置にある状態で3次元カメラにより測定した3次元形状を表す基準座標系の3次元データに変換するための回転座標変換係数を前記2つ以上の回転軸のそれぞれに対して複数の回転角度ごとに取得して記憶しておく回転座標変換係数取得手段(図4A及び図4Bの座標変換係数設定プログラム)と、ステージを基準位置から回転させた状態で3次元カメラにより測定した測定対象物の3次元形状を表す3次元データを、回転座標変換係数を用いて、基準座標系の3次元データに変換する回転座標変換手段(図8のステップS402〜S412,S418〜S422)とを設けて、ステージを回転させることによって異なる視点から測定した測定対象物の3次元データを、基準座標系の3次元データに合成する3次元形状測定装置において、処理装置に、さらに、第1のカメラ位置に配置した3次元カメラの測定により取得したステージの定点の座標又はベクトルの成分を記憶しておく定点・ベクトル記憶手段(図4AのステップS106)と、第1のカメラ位置と異なる第2のカメラ位置に配置した3次元カメラの測定により取得したステージの定点の座標又はベクトルの成分と、定点・ベクトル記憶手段によって記憶されているステージの定点の座標又はベクトルの成分とを用いて、第2のカメラ位置で3次元カメラにより測定した3次元形状を表す3次元データを、第1のカメラ位置で3次元カメラにより測定した3次元形状を表す3次元データに座標変換するためのカメラ座標変換係数を取得するカメラ座標変換係数取得手段(図7のステップS310〜S314)と、第2のカメラ位置で3次元カメラにより測定した測定対象物の3次元形状を表す3次元データを、カメラ座標変換係数を用いて、第1のカメラ位置で3次元カメラにより測定した測定対象物の3次元形状を表す3次元データに変換するカメラ座標変換手段(図8のステップS416)とを設けたことにある。 To achieve the above object, the present invention is characterized in that a stage (10) that can be rotated around two or more rotation axes and that can define a fixed point or vector for calculating a coordinate transformation coefficient, A three-dimensional camera (20) for measuring the three-dimensional shape of the object placed on the computer, and processing devices (30, 40) for processing three-dimensional data representing the three-dimensional shape measured by the three-dimensional camera. 3D representing the 3D shape measured by the 3D camera with the stage rotated from the reference position using the fixed point or vector of the stage acquired by the measurement of the 3D camera arranged at the first camera position. Two or more rotational coordinate conversion coefficients for converting data into three-dimensional data of a reference coordinate system representing a three-dimensional shape measured by a three-dimensional camera with the stage at the reference position . Rotation coordinate conversion coefficient acquisition means (coordinate conversion coefficient setting program shown in FIGS. 4A and 4B) that is acquired and stored for each of a plurality of rotation angles for each rotation axis, and the stage is rotated from the reference position Rotational coordinate conversion means for converting the three-dimensional data representing the three-dimensional shape of the measurement object measured by the three-dimensional camera into three-dimensional data in the reference coordinate system using the rotational coordinate conversion coefficient (steps S402 to S402 in FIG. 8). A three-dimensional shape measuring apparatus that combines the three-dimensional data of the measurement object measured from different viewpoints by rotating the stage with the three-dimensional data of the reference coordinate system, provided with S412, S418 to S422) Furthermore, the coordinates of the fixed point of the stage or the vector component obtained by the measurement of the three-dimensional camera arranged at the first camera position is stored. The point or vector storage means (step S106 in FIG. 4A), the coordinates of the fixed point of the stage or the vector component obtained by the measurement of the three-dimensional camera arranged at the second camera position different from the first camera position, The three-dimensional data representing the three-dimensional shape measured by the three-dimensional camera at the second camera position using the coordinates of the fixed point of the stage or the vector component stored by the vector storage means is obtained at the first camera position. Camera coordinate conversion coefficient acquisition means (steps S310 to S314 in FIG. 7) for acquiring a camera coordinate conversion coefficient for converting the coordinates into three-dimensional data representing the three-dimensional shape measured by the three-dimensional camera, and the second camera position. The three-dimensional data representing the three-dimensional shape of the measurement object measured by the three-dimensional camera is converted into the first camera position using the camera coordinate conversion coefficient. Camera coordinate conversion means for converting the three-dimensional data representing a three-dimensional shape of the measurement object measured by the three-dimensional camera and a (step S416 in FIG. 8) in the provision.
この場合、定点・ベクトル記憶手段は、回転座標変換係数取得手段による回転座標変換係数の取得に連動してステージの定点の座標又はベクトルの成分を記憶するとよい。 In this case, the fixed point / vector storage means may store the coordinates or vector components of the fixed point of the stage in conjunction with the acquisition of the rotation coordinate conversion coefficient by the rotation coordinate conversion coefficient acquisition means.
上記のように構成した本発明においては、カメラ座標変換手段が、第2のカメラ位置で3次元カメラにより測定した測定対象物の3次元形状を表す3次元データを、カメラ座標変換係数取得手段により取得されたカメラ座標変換係数を用いて、第1のカメラ位置で3次元カメラにより測定した測定対象物の3次元形状を表す3次元データに変換する。そして、このカメラ座標変換手段によって変換された3次元データを、回転座標変換係数を用いた回転座標変換手段により基準座標系の3次元データに変換すれば、第2のカメラ位置でステージを回転させながら測定して測定対象物の3次元データを基準座標系の3次元データに変換できる。したがって、ステージに対する3次元カメラの位置を変化させても、ステージに定義した定点の座標又はベクトルの成分を取得するための測定を1回行うのみで、回転角度ごとの座標変換係数を得た場合と同様に3次元形状測定が可能であり、測定の効率が良好に保たれる。また、ステージが2つ以上の回転軸周りに回転可能である場合でも、ステージに定義した定点の座標又はベクトルの成分を取得するための測定を1回行えばよいので、各回転軸ごとに各回転角度ごとの座標変換係数を取得する必要がなくなる分、さらに効率的である。 In the present invention configured as described above, the camera coordinate conversion unit converts the three-dimensional data representing the three-dimensional shape of the measurement object measured by the three-dimensional camera at the second camera position by the camera coordinate conversion coefficient acquisition unit. Using the acquired camera coordinate conversion coefficient, it is converted into three-dimensional data representing the three-dimensional shape of the measurement object measured by the three-dimensional camera at the first camera position. Then, if the three-dimensional data converted by the camera coordinate conversion means is converted into the three-dimensional data of the reference coordinate system by the rotation coordinate conversion means using the rotation coordinate conversion coefficient, the stage is rotated at the second camera position. The three-dimensional data of the measurement object can be converted into the three-dimensional data of the reference coordinate system. Therefore, even if the position of the three-dimensional camera with respect to the stage is changed, the coordinate conversion coefficient for each rotation angle is obtained by performing only one measurement to obtain the coordinates of the fixed point or vector component defined on the stage. 3D shape measurement is possible in the same manner as above, and the measurement efficiency is kept good. Even when the stage is rotatable around two or more rotation axes, the measurement for obtaining the fixed point coordinates or vector components defined on the stage may be performed once. This is more efficient because there is no need to acquire a coordinate conversion coefficient for each rotation angle.
また、本発明の他の特徴は、ステージに定義される定点又はベクトルは、ステージに対して一定の位置に定点又は一定の方向にベクトルを定義可能な物体をステージに装着することで得られることにある。これによれば、例えばステージに装着孔又はネジ孔などを作成し、ステージに定義した定点の座標又はベクトルの成分を取得するための測定を行うときだけ、ステージに定点又はベクトルを定義可能な物体を取り付ければよいので、ステージに測定対象物を載置する際に邪魔にならない。 Another feature of the present invention is that a fixed point or vector defined on the stage can be obtained by mounting an object capable of defining a fixed point or a vector in a fixed direction on the stage at a fixed position with respect to the stage. It is in. According to this, for example, an object that can define a fixed point or vector on the stage only when a mounting hole or screw hole is created on the stage and measurement is performed to acquire the coordinates of the fixed point or vector component defined on the stage. So that it does not get in the way when placing the measurement object on the stage.
また、本発明の他の特徴は、ステージに定義される定点又はベクトルは、ステージの形状における頂点又は平面の法線ベクトルであることにある。これによれば、ステージに定義される定点座標又はベクトルの成分を取得する際、ステージをそのまま測定すればよいので、さらに効率がよい。 Another feature of the present invention is that the fixed point or vector defined in the stage is a vertex or plane normal vector in the shape of the stage. According to this, when acquiring the fixed point coordinates or vector components defined in the stage, it is only necessary to measure the stage as it is, so that the efficiency is further improved.
また、本発明の他の特徴は、ステージに定義される定点又はベクトルは、ステージに描かれた模様から定まる点又は直線部分であることにある。これによっても、ステージに定義される定点座標又はベクトルの成分を取得する際、ステージをそのまま測定すればよいので効率がよい。 Another feature of the present invention is that the fixed point or vector defined on the stage is a point or a straight line portion determined from a pattern drawn on the stage. Also by this, when acquiring the fixed point coordinates or vector components defined in the stage, it is only necessary to measure the stage as it is, which is efficient.
さらに、本発明の実施にあたっては、本発明は、3次元形状測定装置の発明に限定されることなく、3次元形状測定方法の発明としても実施し得るものである。 Furthermore, in carrying out the present invention, the present invention is not limited to the invention of the three-dimensional shape measuring apparatus, and can also be carried out as an invention of a three-dimensional shape measuring method.
a.ハード構成
以下、本発明の一実施形態について図面を用いて説明する。図1は、本発明の一実施形態に係る3次元形状測定システムの全体概略図である。3次元形状測定システムは、ステージ10に載置された測定対象物OBの3次元形状を測定する3次元カメラ20を有する。
a. Hardware Configuration Hereinafter, an embodiment of the present invention will be described with reference to the drawings. FIG. 1 is an overall schematic diagram of a three-dimensional shape measurement system according to an embodiment of the present invention. The three-dimensional shape measurement system includes a three-
ステージ10は、円盤状に形成されて、測定対象物OBを載置するための平らな上面を有する。ステージ10の上面の外周近傍の3箇所には、真球をセットするための3つ穴10a,10b,10cが設けられている。測定対象物OBを測定するときは、これらの穴10a,10b,10cには何もセットされないが、後述する座標変換係数を取得するための測定の際には、これらの穴10a,10b,10cには径の異なる真球11a,11b,11cがセットされる。真球11a,11b,11cには円柱状の棒が取り付けられており、円柱状の棒を穴10a,10b,10cに差し込むことにより、真球11a,11b,11cがステージ10の上面上にセットされる。図2は、この棒付きの真球11a(11b,11c)を穴10a(10b,10c)に差し込む様子を断面方向から見た図である。穴10a,10b,10cの径はそれぞれ少量ずつ異なっており、また真球11a,11b,11cに付けられた棒の径も穴10a,10b,10cに合うようにそれぞれ少量ずつ異なっている。したがって、ステージ10の定まった位置に定まった径の真球11a,11b,11cがセットされるようになっている。なお、穴10a,10b,10c及び真球11a,11b,11cに設けた棒にはネジが切られていて、真球11a,11b,11cに設けた棒が穴10a,10b,10cにねじ込まれてセットされるようにしてもよい。
The
ステージ10は、プレート12,13,14,15からなるステージ支持装置により支持され、このステージ支持装置にはモータ16,17,18が組み付けられている。プレート12はプレート13を回転軸A周りに回転可能に支持しており、モータ16は、その回転により、プレート13,14,15及びステージ10を一体的に回転軸A周りに基準位置(回転角度0度)から所定範囲だけ正負に回転させる。プレート14はプレート15を回転軸B周りに回転可能に支持しており、モータ17は、その回転により、プレート15及びステージ10を一体的に回転軸B周りに基準位置(回転角度0度)から所定範囲だけ正負に回転させる。プレート15はモータ18を固定支持しており、モータ18は、その回転により、ステージ10を回転軸C周りに基準位置(回転角度0)から正負に自由な角度だけ回転させる。モータ16,17,18内には回転角センサが内蔵されており、回転角センサはステージ10の各回転軸A,B,C周りの回転角を出力する。なお、回転軸A,B,Cは互いに直交している。
The
3次元カメラ20は、移動可能な支持装置21に、変位可能かつ回転可能に組み付けられて固定されている。そして、3次元カメラ20は、測定対象物OB及び真球11a,11b,11cの3次元表面形状を測定して、測定結果を表す3次元データを出力する。この3次元カメラ20としては、測定対象物OB及び真球11a,11b,11cの3次元表面形状を測定するとともに同測定した3次元表面形状を表す3次元データを出力するものであれば、いかなる3次元カメラをも利用できる。本実施形態においては、レーザ光を用いて3角測量法に従って物体の3次元表面形状を測定するものを簡単に紹介しておく。
The three-
この3次元カメラ20においては、レーザ光源から物体に向けて出射されるレーザ光の進行方向にほぼ垂直な仮想平面を想定するとともに、同仮想平面上にて互いに直交するX軸方向およびY軸方向に沿って分割した多数の微小エリアを想定する。そして、3次元カメラ20は、前記多数の微小エリアにレーザ光を順次照射し、物体からの散乱光によって前記微小エリアが規定する物体表面までの距離をZ軸方向距離として順次検出して、物体の表面を微小エリアずつに分割した各分割エリア位置を表すX,Y,Z座標に関する情報を得て、3次元カメラ20に面した物体表面の形状を測定するものである。
In this three-
したがって、この3次元カメラは、出射レーザ光の向きをX軸方向に変化させるX軸方向走査器と、出射レーザ光の向きをY軸方向に変化させるY軸方向走査器と、物体表面にて反射された反射レーザ光を受光して物体表面までの距離を検出する距離検出器とを備えている。X軸方向走査器およびY軸方向走査器としては、レーザ光源からの出射レーザ光の光路をX軸方向およびY軸方向に独立に変化させ得る機構であればよく、例えばレーザ光源自体をX軸方向およびY軸方向の軸線回りに電動モータによって回転させたり、出射レーザ光の光路に設けられてその方向を変更するガルバノミラーをX軸方向およびY軸方向の軸線回りに電動モータによって回転させる機構を利用できる。距離検出器としては、前記出射レーザ光の光路に追従して回転し、物体表面にて反射(散乱)された反射レーザ光(散乱光)を集光する結像レンズおよび同集光したレーザ光を受光するCCDなどの複数の受光素子を一列に配置させたラインセンサからなり、ラインセンサによる反射レーザ光の受光位置によって物体表面までの距離を検出する機構を利用できる。 Therefore, this three-dimensional camera has an X-axis direction scanner that changes the direction of outgoing laser light in the X-axis direction, a Y-axis direction scanner that changes the direction of outgoing laser light in the Y-axis direction, and an object surface. A distance detector that receives the reflected laser beam and detects the distance to the object surface. The X-axis direction scanner and the Y-axis direction scanner may be any mechanism that can change the optical path of the laser beam emitted from the laser light source independently in the X-axis direction and the Y-axis direction. Rotating around the axis in the direction and the Y-axis direction by an electric motor, or rotating the galvanometer mirror provided in the optical path of the emitted laser light and changing the direction around the axes in the X-axis direction and the Y-axis direction by the electric motor Can be used. As the distance detector, an imaging lens that rotates following the optical path of the emitted laser light and collects the reflected laser light (scattered light) reflected (scattered) on the object surface and the condensed laser light It is possible to use a mechanism that includes a line sensor in which a plurality of light receiving elements such as CCDs that receive light are arranged in a line, and that detects the distance to the object surface by the light receiving position of the reflected laser light by the line sensor.
したがって、このような3次元カメラ20は、物体の表面を微小エリアずつに分割した各分割エリア位置を表すX,Y,Z座標に関する情報として、X軸方向走査器による出射レーザ光の基準方向に対するX軸方向への傾きθx、Y軸方向走査器による出射レーザ光の基準方向に対するY軸方向への傾きθy、および距離検出器による物体表面までの距離Lzとを、前記仮想したX軸方向およびY軸方向に沿って分割した多数の微小エリアごとに検出する。より具体的には、X軸およびY軸方向への傾きθx,θyは、電動モータの基準位置からの回転角である。また、物体表面までの距離Lzは、ラインセンサにおける反射レーザ光の受光位置である。そして、これら傾きθx,θy及び距離Lzは、X,Y,Z座標値に変換されて出力される。なお、X,Y,Z座標値への変換は、3次元カメラ20からの出力を受けるコントローラ30及びデータ処理装置40で行われるようにしたり、3次元カメラ20とコントローラ30及びデータ処理装置40との間に変換器を設けて行われるようにしてもよい。
Therefore, such a three-
この3次元カメラ20には、コントローラ30およびデータ処理装置40が接続されている。コントローラ30は、CPU、ROM、RAM、及びハードディスクなどの大容量の不揮発性メモリを有するコンピュータ装置によって構成され、キーボードからなる入力装置31からの指示に従って、3次元カメラ20、モータ16,17,18及びデータ処理装置40の作動を制御する。具体的には、コントローラ30は、作業者による入力装置からの入力又は内蔵するプログラムの実行により、3次元カメラ20に測定を指令し、ステージ10を回転するモータ16,17,18を指定した角度だけ回転させる。また、モータ16,17,18からは内蔵の回転角センサからステージ10の各回転軸A,B,C周りの回転角が入力されているとともに、データ処理装置40に回転角度データを出力する。さらに、コントローラ30は、プログラム処理により、座標変換係数を計算する。
A
データ処理装置40も、CPU、ROM、RAM、及びハードディスクなどの大容量の不揮発性メモリを有するコンピュータ装置によって構成され、コントローラ30からの指令により、3次元カメラ20からの3次元データの座標変換を含む処理を実行して3次元画像データを作成し、この3次元画像データを用いて表示装置41に3次元画像を表示する。また、データ処理装置40は、座標変換係数、定点座標などの測定対象物OBの3次元形状の計算に必要なデータをRAM,不揮発性メモリなどに記憶する。
The
b.座標変換係数の設定
このように構成された3次元形状測定システムにおいて、作業者は、初回のみ各回転軸A,B,C周りにおける回転角度ごとの座標変換係数を取得し、取得した座標変換係数をデータ処理装置40に供給するための作業を行う。
b. Setting of Coordinate Conversion Coefficient In the three-dimensional shape measurement system configured as described above, the operator acquires the coordinate conversion coefficient for each rotation angle around each rotation axis A, B, C only for the first time, and acquires the acquired coordinate conversion coefficient. To supply the data to the
まず、作業者は、図3に示すように、ステージ10の外周近傍の3つの穴10a,10b,10cに、棒付き真球11a,11b,11cを組み付ける。これらの真球11a,11b,11cの半径はそれぞれ異なる。真球11a,11b,11cの半径を異ならせる理由は、3次元カメラ20による3次元形状測定によって取得された3次元データから、指定した真球11a,11b,11cの3次元データを抽出するのを容易にするためである。また、作業者は、3次元カメラ20を支持装置21に支持させて、3次元カメラ20に真球11a,11b,11cの3次元形状を測定させる。
First, as shown in FIG. 3, the operator assembles the rod-attached
次に、作業者は、入力装置31を操作して、コントローラ30に図4A及び図4Bの座標変換係数設定プログラムを実行させる。この座標変換係数設定プログラムの実行は図4AのステップS100にて開始され、コントローラ30は、ステップS102にて、ステージ10の回転軸A,B,C周りの回転角度が基準回転角度(すなわち0度)になるように、モータ16,17,18を回転制御する。以下、この状態をステージ10の基準位置といい、このステージ10が基準位置にある状態で図1及び図3に示す位置にある3次元カメラ20で取得した3次元データを基準座標系による3次元データという。次に、コントローラ30は、ステップS104にて検出対象物体の特徴の入力処理を実行する。この入力処理においては、表示装置31に検出対象物体の特徴を入力するように表示して、作業者に検出対象物体の特徴の入力を促す。本実施形態の場合には、真球11a,11b,11cが球であること、及び真球11a,11b,11cの半径の入力を促す。作業者が入力装置31を操作して前記特徴を入力すると、コントローラ30はこの特徴を一時記憶して、ステップS106の基準定点座標取得ルーチンを実行する。この基準定点座標取得ルーチンは、基準位置にあるステージ10上に設定した3つの定点の座標を取得する処理であり、本実施形態では前記ステージ10に組み付けた真球11a,11b,11cの中心点のX,Y,Z座標値を取得する処理である。なお、これらのX,Y,Z座標値は、基準座標系による座標値である。
Next, the operator operates the
この基準定点座標取得ルーチンの詳細は図5に示されており、コントローラ30は、この基準定点座標取得ルーチンの実行をステップS200にて開始する。この基準定点座標取得ルーチンの実行開始後、コントローラ30は、ステップS202にて、3次元カメラ20にステージ10上の真球11a,11b,11cを含む3次元形状の測定を指示し、その後に、3次元カメラ20から測定結果である3次元データを入力して一時的に記憶する。次に、コントローラ30は、ステップS204にて、前記入力した全ての3次元データの中から、真球11a,11b,11cごとに、各真球11a、11b、11cの表面の3次元形状を表す3次元データをそれぞれ抽出する。この種の3次元データの抽出技術は従来から知られた技術(例えば、特開2004−333371号公報、特開2005−249402号公報参照)であるが、簡単に説明しておく。
The details of this reference fixed point coordinate acquisition routine are shown in FIG. 5, and the
<3次元データの抽出>
前記入力された検出対象物体の特徴(球体及び半径)を表すデータを用いて、単位ブロックおよび探索ブロックのサイズ設定処理を実行する。単位ブロックは、検出対象物体の存在位置を特定するために探索ブロックを移動させる最小のブロックであり、例えば立方体に形成されている。また、この単位ブロックのサイズは、検出対象物体の一部が存在することを確認可能である程度に小さく設定される。探索ブロックは、検出対象物体をその内部に包含する位置を特定するために利用されるもので、本実施形態では立方体に形成されている。この探索ブロックのサイズは、検出対象物体の全てを包含できるとともに、なるべく小さく設定される。ただし、この検出対象物体を包含できるとは、検出対象物体の一部でも含む単位ブロックの全てを含むことを意味する。
<Extraction of 3D data>
Using the data representing the characteristics (sphere and radius) of the input detection target object, unit block and search block size setting processing is executed. The unit block is the minimum block for moving the search block in order to specify the position where the detection target object exists, and is formed in a cube, for example. The size of the unit block is set to be small to some extent so that it can be confirmed that a part of the detection target object exists. The search block is used to specify a position where the detection target object is included, and is formed in a cube in this embodiment. The size of this search block can be set to be as small as possible while including all of the detection target objects. However, being able to include this detection target object means including all of the unit blocks including even a part of the detection target object.
次に、探索領域のブロック化処理を実行する。この探索領域のブロック化処理は、測定対象領域内で検出対象物体の含まれる可能性のある領域を単位ブロックで分割する処理である。基本的には、測定対象空間内のうち3次元データが存在する空間を単位ブロックで立体的に分割する。分割は、X,Y,Z座標の各座標軸に沿って単位ブロックを並べていく方法で行う。そして、前記分割した各単位ブロックごとに3次元データが所定個数以上あるかを調べて、3次元データが所定個数以上ある単位ブロックを抽出する。次に、検出対象物体を含む可能性のある探索ブロック位置の検出処理を行う。この探索ブロック位置の検出においては、前記単位ブロックに分割した領域にて、前記設定した探索ブロックを単位ブロックを単位として、X軸、Y軸およびZ軸方向に順次移動させる。そして、各移動ごとに、移動後の探索ブロック内に含まれるとともに前記抽出された単位ブロックの個数を計算する。前記単位ブロックの数が所定の範囲内であれば、該当する探索ブロック位置であるとして、同位置が検出される。なお、検出対象物体は球体であるので、3次元カメラ20と対向する側に位置して3次元データが得られる箇所と、3次元カメラ20と対向しない側に位置して3次元データが得られない箇所の割合は、ほぼ同じであるので、球体の半径が特定されれば、探索ブロック内に含まれる単位ブロックの数は設定される。これにより、検出対象物体より半径の小さな球体を、単位ブロックの数が所定範囲外であるとして、除外することができる。
Next, search area blocking processing is executed. This search area blocking process is a process of dividing an area that may contain the detection target object in the measurement target area into unit blocks. Basically, a space where three-dimensional data exists in the measurement target space is three-dimensionally divided into unit blocks. The division is performed by a method of arranging unit blocks along the coordinate axes of the X, Y, and Z coordinates. Then, it is checked whether or not there is a predetermined number of three-dimensional data for each of the divided unit blocks, and unit blocks having a predetermined number of three-dimensional data are extracted. Next, detection processing of a search block position that may include the detection target object is performed. In detection of the search block position, the set search block is sequentially moved in the X-axis, Y-axis, and Z-axis directions with the unit block as a unit in the region divided into the unit blocks. For each movement, the number of unit blocks extracted and included in the search block after movement is calculated. If the number of unit blocks is within a predetermined range, the same position is detected as the corresponding search block position. Since the detection target object is a sphere, a position where the 3D data is obtained by being located on the side facing the
次に、前記検出した位置の探索ブロック内に含まれる3次元データが、検出対象物体の形状である球体に合致するか否かを判定し、合致すると判定したとき探索ブロック内の3次元データを抽出する。具体的には、該当する探索ブロック内の全ての3次元データ(X,Y,Z座標値)を、球体を表す式である下記数1の左辺のx,y,zにそれぞれ代入し、最小2乗法を用いて未知数a,b,c,dを計算する。この場合、a,b,cは、3次元データにより表された球体中心のX,Y,Z座標値をそれぞれ表し、dは球体の半径を表す。次に、前記該当する探索ブロック内の各3次元データ(X,Y,Z座標値)ごとに、同3次元データ(X,Y,Z座標値)と前記計算した値a,b,cを下記数1に代入して、各3次元データごとに値d(球体中心からの距離)を計算する。そして、前記計算した値d(球の半径)と前記特徴として入力した半径との差が所定の判別値以内であり、かつ各3次元データの球体中心からの距離の偏差が所定の判別値以内であれば、前記探索ブロック内の3次元データは合致するとして、同3次元データを抽出する。一方、前記差または偏差が所定の判別値以内でなければ、前記探索ブロック内の3次元データは合致しないとして、同3次元データを抽出しない。これにより、真球11a,11b,11cごとに、真球11a,11b,11cに関する3次元データがそれぞれ抽出される。
Next, it is determined whether or not the three-dimensional data included in the search block at the detected position matches a sphere that is the shape of the detection target object. Extract. Specifically, all the three-dimensional data (X, Y, Z coordinate values) in the corresponding search block are respectively substituted into x, y, z on the left side of the
(数1)
(x−a) 2+(y−b) 2+(z−c)2−d2=0
(Equation 1)
(x−a) 2 + (y−b) 2 + (z−c) 2 −d 2 = 0
ここで、ふたたび、図5の基準定点座標取得ルーチンの説明に戻る。前記ステップS204の処理後、コントローラ30は、ステップS206にて、真球11a,11b,11cごとに真球11a,11b,11cの中心座標、すなわちステージ10上に設けた3つの定点のX,Y,Z座標値を計算する。具体的には、真球11a,11b,11cごとに、前記ステップS204の処理によって抽出した各真球11a,11b,11cに関する3次元データ(X,Y,Z座標値)を前記球体を表す式である下記数1のx,y,zにそれぞれ代入するとともに、値dとして前記ステップS104で入力した半径を採用して、最小2乗法を用いて未知数a,b,cをそれぞれ計算する。そして、前記真球11a,11b,11cごとに計算した未知数a,b,cが、それぞれ真球11a,11b,11cの中心座標すなわち3つ定点のX,Y,Z座標値(Xa0,Ya0,Za0),(Xb0,Yb0,Zb0),(Xc0,Yc0,Zc0)である。
Here, the description returns to the reference fixed point coordinate acquisition routine of FIG. After the process of step S204, the
前記ステップS206の処理後、コントローラ30は、ステップS208にて、ハードディスクなどの不揮発性メモリに、前記3つ定点のX,Y,Z座標値(Xa0,Ya0,Za0),(Xb0,Yb0,Zb0),(Xc0,Yc0,Zc0)を、ステージ10が基準位置にあるときの3つの定点の座標すなわち基準定点座標(基準座標系における定点の座標)として記憶しておく。そして、コントローラ30は、ステップS210にて基準定点座標取得ルーチンの実行を終了して、図4AのステップS108に戻る。
After the process of step S206, in step S208, the
コントローラ30は、ステップS108にて、変数nを「0」に初期設定して、ステップS110〜S116からなる循環処理を実行する。変数nは、ステージ10の回転角度を、前記循環処理ごとに所定角度Q(例えば、1度)ずつ順次変化させるための変数である。ステップS110〜S116からなる循環処理においては、コントローラ30は、ステップS110にて変数nに「1」を加算し、ステップS112にてステージ10の回転軸A周りの回転角度n・Qが予め決められた上限角度Amaxよりも大きいかを判定する。回転角度n・Qが上限角度Amaxよりも大きくなければ、コントローラ30は、ステップS112にて「No」と判定して、ステップS114にて、モータ16を制御して、ステージ10を回転軸A周りの正方向に回転させて、ステージ10の回転軸A周りの回転角度をn・Q度に設定する。そして、コントローラ30は、ステップS116にて座標変換係数取得ルーチンを実行する。
In step S108, the
この座標変換係数取得ルーチンは図6に詳細に示されており、コントローラ30は、ステップS250にて座標変換係数取得ルーチンの実行を開始する。この座標変換係数取得ルーチンの実行開始後、コントローラ30は、上述した図5のステップS202〜206と同様なステップS252〜S256の処理を実行して、真球11a,11b,11cの中心座標すなわち3つ定点のX,Y,Z座標値(Xa1,Ya1,Za1),(Xb1,Yb1,Zb1),(Xc1,Yc1,Zc1)を計算する。ただし、この場合、ステージ10は回転軸A周りに基準位置からn・Q度だけ回転した位置にあり、この計算された3つ定点のX,Y,Z座標値(Xa1,Ya1,Za1),(Xb1,Yb1,Zb1),(Xc1,Yc1,Zc1)は、前記ステージ10が基準位置にある状態で3次元カメラ20によって測定した3次元データを用いて計算した3つの定点のX,Y,Z座標値(Xa0,Ya0,Za0),(Xb0,Yb0,Zb0),(Xc0,Yc0,Zc0)とは異なる。
This coordinate conversion coefficient acquisition routine is shown in detail in FIG. 6, and the
前記ステップS252〜S256の処理後、コントローラ30は、ステップS258にて、ステージ10を回転軸A周りに基準位置からn・Q度だけ回転した状態で3次元カメラ20によって測定した3次元データの座標値を、ステージ10が基準位置にある状態で3次元カメラ20によって測定した3次元データの座標値(基準座標系の座標値)に変換するための座標変換係数を計算する。この座標変換係数の計算は、前記計算したステージ10を回転軸A周りに基準位置からn・Q度だけ回転させた状態における3つの定点のX,Y,Z座標値(Xa1,Ya1,Za1),(Xb1,Yb1,Zb1),(Xc1,Yc1,Zc1)を、ステージ10が基準位置にある状態における3つの定点のX,Y,Z座標値(Xa0,Ya0,Za0),(Xb0,Yb0,Zb0),(Xc0,Yc0,Zc0)に変換させるための座標変換係数を計算することを意味するもので、両X,Y,Z座標値(Xa1,Ya1,Za1),(Xb1,Yb1,Zb1),(Xc1,Yc1,Zc1),(Xa0,Ya0,Za0),(Xb0,Yb0,Zb0),(Xc0,Yc0,Zc0)を用いて行われる。また、この種の座標変換係数の計算は従来から知られている技術(例えば、特開2005−352630号公報、特開2005−249402号公報参照)であるが、簡単に説明しておく。
After the processing of steps S252 to S256, the
<座標変換係数の計算>
まず、ステージ10を回転軸A周りに基準位置からn・Q度だけ回転させた状態において得た3次元データは第1座標系の3次元データであり、基準座標系を第2座標系であると仮定する。したがって、第1座標系の座標軸をX軸、Y軸およびZ軸回りにそれぞれ所望の角度だけ回転させるとともに、同第1座標系の原点をX軸方向、Y軸方向およびZ軸方向にそれぞれa,b,cだけ移動させれば、第2座標系の座標軸と同じになるはずである。そこで、第1座標系における一点の座標値を(x’,y’,z’)とし、第2座標系における同一点の座標値を(x,y,z)とすると、下記数2が成立するとともに、同数2中の行列Mは下記数3によって表される。そして、前記座標変換係数の計算は、前記数2および数3中の行列値g11,g12,g13,g21,g22,g23,g31,g32,g33および行列値a,b,cを計算することを意味する。
<Calculation of coordinate transformation coefficient>
First, the three-dimensional data obtained in a state where the
ここで、第1座標系における3つの定点のX,Y,Z座標値(Xa1,Ya1,Za1),(Xb1,Yb1,Zb1),(Xc1,Yc1,Zc1)及び第2座標系の3つの定点のX,Y,Z座標値(Xa0,Ya0,Za0),(Xb0,Yb0,Zb0),(Xc0,Yc0,Zc0)を前記数2に代入すれば、下記数4〜6の関係が成立する。 Here, X, Y, Z coordinate values (Xa1, Ya1, Za1), (Xb1, Yb1, Zb1), (Xc1, Yc1, Zc1) of the three fixed points in the first coordinate system and three of the second coordinate system. Substituting the X, Y, Z coordinate values (Xa0, Ya0, Za0), (Xb0, Yb0, Zb0), (Xc0, Yc0, Zc0) of the fixed points into the above equation 2, the following equations 4-6 are established. To do.
前記数4を変形すると、下記数7の連立方程式が成立する。 When Equation 4 is transformed, the following simultaneous equations of Equation 7 are established.
また、前記3つの定点を含む平面の法線ベクトルの第1座標系における成分を(α’,β’,γ’)とし、第2座標系における同平面の法線ベクトルを(α,β,γ)とすると、2つの法線ベクトルの大きさが同じであれば一般的には次の数8が成立する。なお、同数8中の行列Mは、前記数3によって表される。 Further, the component in the first coordinate system of the normal vector of the plane including the three fixed points is (α ′, β ′, γ ′), and the normal vector of the same plane in the second coordinate system is (α, β, If γ), the following equation 8 is generally established if the two normal vectors have the same magnitude. The matrix M in the equation 8 is expressed by the equation 3.
第2座標系および第1座標系におけるすべての定点を含む平面の法線ベクトルを、真球11bの中心(第2定点)から真球11aの中心(第1定点)に向かうベクトルと、真球11cの中心(定点)から真球11bの中心(第2定点)に向かうベクトルとの外積により成立するベクトルとすると、第2座標系における法線ベクトル及び第1座標系における法線ベクトルは下記数9によって表される。
A normal vector of a plane including all fixed points in the second coordinate system and the first coordinate system, a vector directed from the center of the
前記数9を前記数8に当てはめると、下記数10が成立する。
When the formula 9 is applied to the formula 8, the following
前記数10の1番目の式を前記数7に加えれば、下記数11の連立方程式となる。
If the first equation of the
この数11の連立方程式を解くことにより、行列値g11,g12,g13を計算することができる。また、前記数5および数6に関しても、前記数7の連立方程式のように変形し、数10の2番目の式または3番目の式を加えれば、数11の連立方程式と同様の連立方程式ができるので、これを解くことで、行列値g21,g22,g23および行列値g31,g32,g33を計算できる。そして、これらの計算した行列値を前記数4〜6に代入すれば、行列値a,b,cを計算できる。これにより、第1座標系すなわちステージ10が回転軸A周りに基準位置からn・Q度だけ回転した状態の3次元データの座標系の座標値(x’,y’,z’)を、第2座標系すなわち基準座標系における座標値(x,y,z)に変換するための座標変換係数が計算される。
By solving the simultaneous equations of Equation 11, matrix values g 11 , g 12 , and g 13 can be calculated. Also, with respect to the equations (5) and (6), if the equation is modified like the simultaneous equations of the equation (7) and the second or third equation of the equation (10) is added, the simultaneous equations similar to the simultaneous equations of the equation (11) are obtained. Since it is possible to solve this, matrix values g 21 , g 22 , g 23 and matrix values g 31 , g 32 , g 33 can be calculated. Then, by substituting these calculated matrix values into the equations 4 to 6, matrix values a, b, and c can be calculated. As a result, the coordinate values (x ′, y ′, z ′) of the first coordinate system, that is, the coordinate system of the three-dimensional data in a state where the
ここで、ふたたび、図6の座標変換係数取得ルーチンの説明に戻る。前記ステップS258による座標変換係数である行列値g11,g12,g13,g21,g22,g23,g31,g32,g33及び行列値a,b,cの計算後、コントローラ30は、ステップS260にて、前記計算した座標変換係数を、回転軸A周りの回転角度がn・Q度であることと共に、ハードディスクなどの不揮発性メモリに記憶する。そして、コントローラ30は、ステップS262にて座標変換係数取得ルーチンの実行を終了して、図4AのステップS110に戻る。
Here, the description returns to the coordinate conversion coefficient acquisition routine of FIG. After calculating the matrix values g 11 , g 12 , g 13 , g 21 , g 22 , g 23 , g 31 , g 32 , g 33 and the matrix values a, b, c and the matrix values in step S258, the controller In step S260, 30 stores the calculated coordinate conversion coefficient in a non-volatile memory such as a hard disk, together with the rotation angle about the rotation axis A being n · Q degrees. And the
コントローラ30は、ステップS110にて変数nに「1」を加算し、ステージ10の回転軸A周りの回転角度n・Qが予め決められた上限角度Amaxよりも大きくならない限り、ステップS112にて「No」と判定して前述したステップS114,S116の処理を実行する。これにより、ステージ10を回転軸A周りの正方向にQ度ずつ回転させながら、前述した座標変換係数を計算して不揮発性メモリに記憶していく。その結果、不揮発性メモリには、ステージ10を基準位置からほぼ上限角度Amaxまで回転軸A周りにQ度ずつ正方向に回転させた状態における座標変換係数がステージ10の回転角度n・Q度にそれぞれ対応させて記憶される。本実施形態では、Q度を1度に設定したので、1度ごとの座標変換係数が不揮発性メモリに記憶されることになる。なお、このQ度を1度以外の値に設定すれば、1度以外の予め決めたQ度ごとの座標変換係数が不揮発性メモリに記憶される。この点に関しては、後述する他の座標変換係数についても同様である。そして、回転軸A周りのステージ10の回転角度n・Qが上限角度Amaxより大きくなると、コントローラ30は、ステップS112にて「Yes」と判定して、ステップS118に進む。
The
コントローラ30は、ステップS118にて、変数nを「0」に初期設定して、ステップS120〜S126からなる循環処理を実行する。このステップS120〜S126からなる循環処理は、ステップS122,S124の処理が前述したステップS112,S114の処理と若干異なる以外、前述したステップS110〜S116からなる処理と同じである。ステップS122においては、ステージ10の回転軸A周りの回転角度−n・Qが予め決められた下限角度−Amaxよりも小さいかが判定される。ステップS124においては、モータ16が制御されて、ステージ10が回転軸A周りの負方向に回転されて、ステージ10の回転軸A周りの回転角度が−n・Q度に設定される。その結果、このステップS120〜S126の循環処理により、ステージ10の回転軸A周りの回転角度が基準位置(0度)からほぼ下限角度−Amaxまでにわたって、Q度ごとに、3次元カメラ20による3次元データを基準座標系の3次元データに変換するための座標変換係数が計算されて、ステージ10の回転軸A周りの回転角度−n・Qに対応させて不揮発性メモリに記憶される。そして、回転軸A周りのステージ10の回転角度−n・Qが下限角度−Amaxより小さくなると、コントローラ30は、ステップS122にて「Yes」と判定して、ステップS128に進む。
In step S118, the
コントローラ30は、ステップS128にて、ステージ10の回転軸A周りの回転角度が基準回転角度(すなわち0度)になるように、モータ16を回転制御する。この場合、ステージ10の回転軸B及び回転軸C周りの回転角度は前述したステップS102の処理によって基準回転角度(すなわち0度)に既に設定されているので、ステージ10は基準位置に戻されることになる。次に、コントローラ30は、ステップS130にて変数nを「0」に初期設定して、ステップS132〜S148からなる処理を実行する。このステップS132〜S148からなる処理は、ステップS134,S136,S144,S146の処理が前述したステップS112,S114,S122,S124の処理と若干異なる以外、前述したステップS110〜S126からなる処理と同じである。
In step S128, the
ステップS134においては、ステージ10の回転軸B周りの回転角度n・Qが予め決められた上限角度Bmaxよりも大きいかが判定される。ステップS136においては、モータ17が制御されて、ステージ10が回転軸B周りの正方向に回転されて、ステージ10の回転軸B周りの回転角度がn・Q度に設定される。ステップS144においては、ステージ10の回転軸B周りの回転角度−n・Qが予め決められた下限角度−Bmaxよりも小さいかが判定される。ステップS146においては、モータ16が制御されて、ステージ10が回転軸B周りの負方向に回転されて、ステージ10の回転軸B周りの回転角度が−n・Q度に設定される。その結果、このステップS132〜S148の処理により、ステージ10の回転軸B周りの回転角度がほぼ下限角度−Bmaxからほぼ上限角度Bmaxまでにわたって、Q度ごとに、3次元カメラ20による3次元データを基準座標系の3次元データに変換するための座標変換係数が計算されて、ステージ10の回転軸B周りの回転角度n・Q,−n・Qに対応させて不揮発性メモリに記憶される。そして、回転軸B周りのステージ10の回転角度−n・Qが下限角度−Bmaxより小さくなると、コントローラ30は、ステップS144にて「Yes」と判定して、図4BのステップS150に進む。
In step S134, it is determined whether the rotation angle n · Q around the rotation axis B of the
コントローラ30は、ステップS150にて、ステージ10の回転軸B周りの回転角度が基準回転角度(すなわち0度)になるように、モータ17を回転制御する。この場合、ステージ10の回転軸A及び回転軸C周りの回転角度は前述したステップS128,S102の処理によって基準回転角度(すなわち0度)に既に設定されているので、ステージ10は基準位置に戻されることになる。次に、コントローラ30は、ステップS150にて変数nを「0」に初期設定して、ステップS154〜S160からなる循環処理を実行する。このステップS154〜S160からなる循環処理は、ステップS156,S158の処理が前述したステップS112,S114(又はステップS134,S136)の処理と若干異なる以外、前述したステップS110〜S116(又はステップS132〜S138)からなる循環処理と同じである。
In step S150, the
ステップS156においては、ステージ10の回転軸C周りの回転角度n・Qが予め決められた所定角度360度よりも大きいかが判定される。ステップS158においては、モータ18が制御されて、ステージ10が回転軸C周りの正方向に回転されて、ステージ10の回転軸C周りの回転角度がn・Q度に設定される。その結果、このステップS154〜S160からなる循環処理により、ステージ10の回転軸C周りの回転角度が基準角度(0度)からほぼ360度までにわたって、Q度ごとに、3次元カメラ20による3次元データを基準座標系の3次元データに変換するための座標変換係数が計算されて、ステージ10の回転軸C周りの回転角度n・Qに対応させて不揮発性メモリに記憶される。そして、回転軸C周りのステージ10の回転角度n・Qが所定角度360度より大きくなると、コントローラ30は、ステップS156にて「Yes」と判定して、ステップS162に進む。ステップS162においては、前記ステップS116,S126,S138,S148,S160の座標変換係数取得ルーチンの処理により記憶した回転軸A,B,Cに関する各座標変換係数(行列値g11,g12,g13,g21,g22,g23,g31,g32,g33及び行列値a,b,c)をデータ処理装置40に出力する。前記ステップS162の処理後、コントローラ30はステップS164にて座標変換係数設定プログラムの実行を終了する。
In step S156, it is determined whether the rotation angle n · Q around the rotation axis C of the
前記データ処理装置40に出力された回転軸A,B,Cに関する各座標変換係数は、図示しないプログラム処理により、データ処理装置40のハードディスクなどの不揮発性メモリに記憶される。ここで、データ処理装置40に記憶された回転軸A,B,Cに関する座標変換係数について整理しておく。回転軸Aに関する座標変換係数は、ステージ10を回転軸A周りに下限角度−Amaxから上限角度Amaxまで微小な所定角度Q(例えば、1度)ずつ回転させてステージ10上の物体を3次元カメラ20で測定したとき、各回転位置ごとの3次元カメラ20による測定結果である3次元データを、ステージ10の回転軸A周りの回転角度が基準角度(例えば、0度)にある状態(ステージ10が基準位置にある状態)で3次元カメラ20によって測定したステージ10上の物体の3次元データに変換するための行列値g11,g12,g13,g21,g22,g23,g31,g32,g33からなる行列M及び行列値a,b,cである。ここで、回転軸B、C周りの回転に関する座標変換係数と区別するために、以降、この回転軸A周りの回転に関する座標変換係数に関し、前記行列Mを行列MAとするとともに、前記行列値a,b,cを行列値aA,bA,cAとする。
The coordinate transformation coefficients related to the rotation axes A, B, and C output to the
また、回転軸Bに関する座標変換係数は、ステージ10を回転軸B周りに下限角度−Bmaxから上限角度Bmaxまで微小な所定角度Q(例えば、1度)ずつ回転させてステージ10上の物体を3次元カメラ20で測定したとき、各回転位置ごとの3次元カメラ20による測定結果である3次元データを、ステージ10の回転軸B周りの回転角度が基準角度(例えば、0度)にある状態(ステージ10が基準位置にある状態)で3次元カメラ20によって測定したステージ10上の物体の3次元データに変換するための行列値g11,g12,g13,g21,g22,g23,g31,g32,g33からなる行列M及び行列値a,b,cである。ここで、回転軸A、C周りの回転に関する座標変換係数と区別するために、以降、この回転軸B周りの回転に関する座標変換係数に関し、前記行列Mを行列MBとするとともに、前記行列値a,b,cを行列値aB,bB,cBとする。
Further, the coordinate conversion coefficient for the rotation axis B is 3 by rotating the
また、回転軸Cに関する座標変換係数は、ステージ10を回転軸C周りに0度から360度まで微小な所定角度Q(例えば、1度)ずつ回転させてステージ10上の物体を3次元カメラ20で測定したとき、各回転位置ごとの3次元カメラ20による測定結果である3次元データを、ステージ10の回転軸C周りの回転角度が基準角度(例えば、0度)にある状態(ステージ10が基準位置にある状態)で3次元カメラ20によって測定したステージ10上の物体の3次元データに変換するための行列値g11,g12,g13,g21,g22,g23,g31,g32,g33からなる行列M及び行列値a,b,cである。ここで、回転軸A、B周りの回転に関する座標変換係数と区別するために、以降、この回転軸C周りの回転に関する座標変換係数に関し、前記行列Mを行列MCとするとともに、前記行列値a,b,cを行列値aC,bC,cCとする。
Further, the coordinate conversion coefficient regarding the rotation axis C is determined by rotating the
c.測定対象物の測定
次に、測定対象物OBを3次元カメラ20で測定する動作について説明する。この場合、作業者は入力装置31を操作して測定対象物OBを測定することをコントローラ30に入力する。コントローラ30は、図7のステップS300にて対象物測定プログラムの実行を開始する。この測定対象物OBを測定することはデータ処理装置40に供給され、データ処理装置40は、ステップS400にて画像データ生成プログラムの実行を開始する。まず、図1に示すように、測定対象物OBをステージ10上に載置固定する。はじめに、3次元カメラ20を前述した座標変換係数設定プログラムの実行時の位置に固定して、3次元カメラ20を用いて測定対象物OBの3次元形状を測定する場合について説明する。
c. Measurement of Measurement Object Next, an operation for measuring the measurement object OB with the three-
作業者は、入力装置31を操作して、ステージ10の回転軸A,B,C周りの回転位置を指示すると、コントローラ30は、図示しないプログラムの実行により、モータ16,17,18を駆動制御して、作業者によって指示された回転位置までステージ10を回転軸A,B,C周りに回転させる。そして、作業者は、入力装置31を操作して、コントローラ30に測定対象物OBの測定開始を指示する。前記測定開始の指示により、コントローラ30は、図7のステップS302にて「Yes」と判定し、ステップS304にて測定開始の指示があったことをデータ処理装置40に知らせる。次に、コントローラ30は、ステップS306にて、モータ16,17,18に内蔵されている回転角センサから、ステージ10の各回転軸A,B,C周りの回転角度をそれぞれ入力して、データ処理装置40に出力する。次に、コントローラ30は、ステップS308にて、3次元カメラ20に測定開始を指示して、後述するステップS310以降の処理を実行する。この測定開始の指示により、3次元カメラ20は、ステージ10上の測定対象物OBの3次元形状の測定を開始し、測定した3次元形状を表す3次元データを順次出力する。
When the operator operates the
一方、データ処理装置40は、前記コントローラ30によるステップS304の対象物測定開始の指示の入力に応答して、図8のステップS402にて「Yes」と判定し、ステップS404にてコントローラ30からのステージ10の回転軸A,B,C周りの回転角度の入力を待つ。そして、前記ステップS306の処理によりコントローラ30から回転角度が入力されると、コントローラ30は、ステップS406にて、前記コントローラ30から出力された回転角度を入力してRAM又は不揮発性メモリに記憶する。次に、データ処理装置40は、ステップS408にて、3次元カメラ20からの3次元データの入力開始を待つ。そして、前記3次元カメラ20から3次元データが供給され始めると、データ処理装置40は、ステップS410にて3次元カメラ20から順次出力される測定対象物OBに関する3次元データを順次入力してRAM又は不揮発性メモリに記憶する。このステップS410の処理は、3次元カメラ20からの3次元データの入力が終了するまで実行され続ける。3次元カメラ20からの3次元データの入力が終了すると、データ処理装置40は、ステップS412にて「Yes」と判定して、ステップS414以降に進む。この段階では、3次元カメラ20によって取得された全ての3次元データがRAM又は不揮発性メモリに記憶されている。
On the other hand, in response to the input of the object measurement start instruction in step S304 by the
ステップS414においては、カメラ移動フラグCMFが“1”であるか否かが判定される。このカメラ移動フラグCMFは、“0”により、回転軸A,B,C周りの回転に関する座標変換係数の取得時と同じ位置に3次元カメラ20を固定したまま測定対象物OBの3次元データを取得する状態を表し、“1”により前記位置から3次元カメラ20を移動して測定対象物OBの3次元データを取得する状態を表しており、初期においては“0”に設定されている。今、3次元カメラ20はステージ10の回転軸A,B,C周りの回転に対する座標変換係数を取得した状態に固定されているので、カメラ移動フラグは“0”であり、コントローラ30は、ステップS414にて「No」と判定してステップS418以降の処理を行う。
In step S414, it is determined whether or not the camera movement flag CMF is “1”. When the camera movement flag CMF is “0”, the three-dimensional data of the measurement object OB is obtained while the three-
ステップS418においては、データ処理装置40は、前記ステップS410の処理によって3次元カメラ20から入力して記憶しておいた3次元データを、ステージ10の回転軸A周りの回転角度が基準角度(例えば、0度)にある状態(ステージ10が基準位置にある状態)で3次元カメラ20によって取得したステージ10上の物体の3次元データに変換する。この場合、ステージ10を回転軸A周りに下限角度−Amaxから上限角度Amaxまで回転させて取得して不揮発性メモリに記憶しておいた、微小な所定角度Qごとの座標変換係数(行列MAの行列値g及び行列値aA,bA,cA)の中から、前記コントローラ30から入力して一時的に記憶した回転軸A周りの回転角度に対応した座標変換係数(行列MAの行列値g及び行列値aA,bA,cA)を選択する。なお、前記行列値g及び以降の説明における行列値gは、前述した行列値g11,g12,g13,g21,g22,g23,g31,g32,g33を簡単に記述したものである。そして、前記3次元カメラ20から入力されて一時的に記憶した3次元データを、前記選択した座標変換係数(行列MAの行列値g及び行列値aA,bA,cA)を用いて下記数12の演算の実行により座標変換する。なお、下記数12中の座標値(X,Y,Z)は3次元カメラ20によって実際に取得された3次元データであり、座標値(XA,YA,ZA)は、ステージ10の回転軸A周りの回転角度が基準角度にある状態で3次元カメラ20によって測定したステージ10上の物体の3次元データである。
In step S418, the
この場合、ステージ10の回転機構が、座標変換係数を取得した際の回転角度Qの間隔で回転角度が変化する機構であれば、前記記憶した座標変換係数をそのまま使用すればよい。しかし、ステージ10の回転角度が連続して変化する機構であれば、補間演算により変換された座標値を計算する。この補間においては、前記入力した回転角度を挟む(n−1)・Q度及びn・Q度に対応した2組の座標変換係数を読み出して、2組の座標変換係数を用いて2組の座標値(XA1,YA1,ZA1),(XA2,YA2,ZA2)を計算した後に、前記入力した回転角度の(n−1)・Q度及びn・Q度に対する差に応じた補間演算により最終の座標値(XA,YA,ZA)を算出するとよい。また、前記(n−1)・Q度及びn・Q度に対応した2組の座標変換係数を、前記入力した回転角度の(n−1)・Q度及びn・Q度に対する差に応じて補間演算して一つの座標変換係数を計算し、この補間演算によって計算した座標変換係数を用いた前記数12の演算の実行により最終の座標値(XA,YA,ZA)を算出してもよい。なお、前記入力した回転角度が基準回転角度であれば、すなわちステージ10を基準位置から回転軸A周りに回転していない場合には、前記ステップS418の座標変換処理を行わない。
In this case, if the rotation mechanism of the
前記ステップS418の処理後、データ処理装置40は、ステップS420にて、前記座標変換された3次元データを、ステージ10の回転軸B周りの回転角度が基準角度(例えば、0度)にある状態(ステージ10が基準位置にある状態)で3次元カメラ20によって取得したステージ10上の物体の3次元データに変換する。この場合、ステージ10を回転軸B周りに下限角度−Bmaxから上限角度Bmaxまで回転させて取得して不揮発性メモリに記憶しておいた、微小な所定角度Qごとの座標変換係数(行列MBの行列値g及び行列値aB,bB,cB)の中から、前記コントローラ30から入力して一時的に記憶した回転軸B周りの回転角度に対応した座標変換係数(行列MBの行列値g及び行列値aB,bB,cB)を選択する。そして、前記ステップS410の処理によって座標変換した座標値(XA,YA,ZA)を、前記選択した座標変換係数(行列MBの行列値g及び行列値aB,bB,cB)を用いて下記数13の演算の実行により座標変換する。なお、下記数13中の座標値(XB,YB,ZB)は、ステージ10の回転軸B周りの回転角度が基準角度にある状態で3次元カメラ20によって測定したステージ10上の物体の3次元データである。
After the process of step S418, the
この場合も、前記コントローラ30から入力した回転軸B周りの回転角度が連続していてn・Q度ごとの角度の間の角度がある場合には、前記ステップS418の場合と同様に、補間演算により変換された座標値を計算する。また、前記入力した回転角度が基準回転角度であれば、すなわちステージ10を基準位置から回転軸B周りに回転していない場合には、前記ステップS420の座標変換処理を行わない。
Also in this case, when the rotation angle around the rotation axis B input from the
前記ステップS420の処理後、データ処理装置40は、ステップS422にて、前記座標変換された3次元データを、ステージ10の回転軸C周りの回転角度が基準角度(例えば、0度)にある状態(ステージ10が基準位置にある状態)で3次元カメラ20によって取得したステージ10上の物体の3次元データに変換する。この場合、ステージ10を回転軸C周りに0度から360度まで回転させて取得して不揮発性メモリに記憶しておいた、微小な所定角度Qごとの座標変換係数(行列MCの行列値g及び行列値aC,bC,cC)の中から、前記コントローラ30から入力して一時的に記憶した回転軸C周りの回転角度に対応した座標変換係数(行列MCの行列値g及び行列値aC,bC,cC)を選択する。そして、前記ステップS420の処理によって座標変換した座標値(XB,YB,ZB)を、前記選択した座標変換係数(行列MC及び行列値aC,bC,cC)を用いて下記数14の演算の実行により座標変換する。なお、下記数14中の座標値(XC,YC,ZC)は、ステージ10の回転軸C周りの回転角度が基準角度にある状態で3次元カメラ20によって測定したステージ10上の物体の3次元データである。
After the process of step S420, the
この場合も、前記コントローラ30から入力した回転軸C周りの回転角度が連続していてn・Q度ごとの角度の間の角度がある場合には、前記ステップS418,S420の場合と同様に、補間演算により変換された座標値を計算する。また、前記入力した回転角度が基準回転角度であれば、すなわちステージ10を基準位置から回転軸C周りに回転していない場合には、前記ステップS422の座標変換処理を行わない。
Also in this case, when the rotation angle around the rotation axis C input from the
このようなステップS418、S420,S422の処理により、回転軸A周り、回転軸B周り及び回転軸C周りの順に座標変換を行う理由は、図1に示すように、ステージ10の回転軸Aは残り2つの回転軸B,Cによらず固定されており、回転軸Bは回転軸A周りの回転角度が固定されれば固定され、回転軸Cは残り2つの回転軸A,B周りの回転角度が固定されれば固定されるためである。前記ステップS422の処理後、データ処理装置40は、ステップS424にて、前記ステップS418、S420,S422の処理によって座標変換した1組の3次元データを不揮発性メモリに記憶する。これにより、不揮発性メモリには、ステージ10を回転軸A,B,C周りに所望の角度だけ回転して3次元カメラ20によって取得した3次元データ、すなわち所望の座標系の3次元データを、ステージ10の基準位置に対応した基準座標系の3次元データに変換した1組の3次元データが記憶されることになる。
The reason why the coordinate transformation is performed in the order of the rotation axis A, the rotation axis B, and the rotation axis C by the processing in steps S418, S420, and S422 is that the rotation axis A of the
前記ステップS424の処理後、データ処理装置40は、ステップS426にてカメラ座標の座標変換係数をコントローラ30から入力したかを判定する。前記カメラ座標の座標変換係数の入力に関しては詳しく後述するとして、この段階では、前記カメラ座標の座標変換係数の入力はないものとする。したがって、データ処理装置40は、ステップS426にて「No」と判定して、ステップS432に進む。ステップS432においては、データ処理装置は3次元画像データの生成の指示があったかを判定する。前記3次元画像データの生成の指示がなければ、データ処理装置40は、ステップS432にて「No」と判定して、ステップS402に戻る。そして、新たな測定対象物OBの測定指示があるまで、データ処理装置40はステップS402にて「No」判定して、ステップS426に進む。したがって、新たな測定対象物OBの測定指示、カメラ座標の座標変換係数の入力、及び3次元画像データの生成の指示がなければ、データ処理装置40は、ステップS402,S426,S432にてそれぞれ「No」と判定して、ステップS402,S426,S432からなる循環処理を実行し続ける。
After the process of step S424, the
一方、このような状態で、作業者が、入力装置31をふたたび操作して、ステージ10の回転軸A,B,C周りの回転位置を新たに指示すると、コントローラ30は、前述のように、モータ16,17,18を駆動制御して、作業者によって指示された回転位置までステージ10を回転軸A,B,C周りに回転させる。その後、作業者は、入力装置31を操作することにより、ステージ10上の測定対象物OBの3次元データの取得を指示すると、コントローラ30は、ステップS302にて「Yes」と判定して、前述したステップS304〜S308の処理を実行する。一方、データ処理装置40は、前記コントローラ30のステップS304の処理による対象物の測定指示に応答して、ステップS402にて「Yes」と判定して、前述したステップS404〜S424からなる処理を実行する。これにより、不揮発性メモリには、ステージ10を回転軸A,B,C周りに前記とは異なる所望の角度だけ回転して3次元カメラ20によって取得した3次元データを、ステージ10の基準位置に対応した座標系の3次元データに変換した新たな1組の3次元データが記憶される。そして、作業者は、必要に応じて、ステージ10を回転軸A,B,C周りに必要な回数だけ回転させて、測定対象物OBを3次元カメラ20に測定させることにより、前記回数に対応した組数の3次元データを不揮発性メモリに記憶させることができる。
On the other hand, when the operator operates the
一方、3次元カメラ20を移動させる場合、例えば図9に破線で示す位置にあったカメラ20を実線で示す位置に移動する場合には、カメラ20の移動の前又は後に、前述のように真球11a,11b,11cをステージ10上にセットする。なお、このカメラ20の移動とは、カメラ20を支持装置21に固定したまま支持装置21のみを移動させる場合、支持装置21を固定した状態でカメラ20のみを回転又は変位させる場合、及び支持装置21を移動するとともにカメラ20も回転又は変位させる場合を含む。また、この場合、3次元カメラ20の移動後の測定対象物OBの測定の際に、測定対象物OBのステージ10に対する位置を3次元カメラ20の移動前の測定対象物OBのステージ10に対する位置に合わせる必要があるために、測定対象物OBをステージ10上から除去しなくても、真球11a,11b,11cの測定が可能であれば、測定対象物OBをステージ10上に残しておくことが好ましい。測定対象物OBをステージ10上から除去する場合には、測定対象物OBのステージ10に対する設置位置を再現できるように印などをステージ10上に付しておくとよい。前記3次元カメラ20の移動及び真球11a,11b,11cのセット後、作業者は、入力装置31を操作してカメラ20を移動したことをコントローラ30に入力する。
On the other hand, when the three-
このカメラ20の移動の入力に応答して、コントローラ30は、図7の対象物測定プログラムのステップS310で「Yes」と判定して、前記図4AのステップS102と同様なステップS312の処理により、モータ16,17,18の回転を制御して、ステージ10の回転軸A,B,C周りの回転角度が基準回転角度(すなわち0度)になるように、すなわちステージ10を基準位置に設定する。前記ステップS312の処理後、コントローラ30は、ステップS314にて前述した図6の座標変換係数取得ルーチンを実行する。この座標変換係数取得ルーチンのステップS252〜S256の処理により、新たにセットした真球11a,11b,11cの中心座標すなわち3つ定点のX,Y,Z座標値(Xa1,Ya1,Za1),(Xb1,Yb1,Zb1),(Xc1,Yc1,Zc1)を計算する。そして、ステップS258の処理により、新たな3つ定点のX,Y,Z座標値(Xa1,Ya1,Za1),(Xb1,Yb1,Zb1),(Xc1,Yc1,Zc1)と、前記図4AのステップS106(図5のステップS208)の処理によってRAM又は不揮発性メモリに記憶されていて、ステージ10が基準位置にある状態における3つの定点のX,Y,Z座標値(Xa0,Ya0,Za0),(Xb0,Yb0,Zb0),(Xc0,Yc0,Zc0)とを用いて、座標変換係数が計算される。
In response to the input of the movement of the
この場合、移動後の3次元カメラ20によって測定した3次元データの座標値を、回転軸A,B,C周りの回転角度に関する座標変換係数を取得した位置に配置した3次元カメラ20によって測定した3次元データの座標値(基準座標系の座標値)に変換するための座標変換係数が計算される。すなわち、図9に示すように、3次元カメラ20を破線で示す位置(図1及び図3と同一位置)に配置した基準座標系を座標系Sとし、3次元カメラ20を実線で示す位置に配置した座標系を座標系Mとすると、座標系Mの3次元データを座標系Sの3次元データに変換するための座標変換係数が計算される。ここで、前述した回転軸A,B、C周りの回転角度に関する座標変換係数と区別するために、以降、この3次元カメラ20の移動に関する座標変換係数については、前記行列Mを行列MSとするとともに、前記行列値a,b,cを行列値aS,bS,cSとする。そして、前記ステップS258の処理後、ステップS260にて、計算された行列MSの行列値g及び行列値aS,bS,cSは不揮発性メモリに記憶され、ステップS262にて座標変換係数取得ルーチンの実行が終了される。
In this case, the coordinate value of the three-dimensional data measured by the three-
ふたたび図7の対象物測定プログラムの説明に戻ると、前記ステップS314の処理後、コントローラ30は、ステップS316にて、前記計算して不揮発性メモリに記憶した行列MSの行列値g及び行列値aS,bS,cSからなるカメラ座標系の座標変換係数をデータ処理装置40に出力する。
Returning to the description of the object measurement program in FIG. 7 again, after the process of step S314, the
このカメラ座標系の座標変換係数の出力に応答して、データ処理装置40は、ステップS426にて「Yes」すなわちカメラ座標の座標変換係数の入力ありと判定して、ステップS428,S430の処理を実行する。ステップS428においては、コントローラ30から出力された行列MSの行列値g及び行列値aS,bS,cSからなるカメラ座標系の座標変換係数を不揮発性メモリに記憶する。ステップS430においては、カメラ移動フラグCMFを“1”に設定する。
In response to the output of the coordinate conversion coefficient of the camera coordinate system, the
この状態で、作業者は、ステージ10上の真球11a,11b,11cを取り外す。そして、前記真球11a,11b,11cのステージ10への取り付け時に、測定対象物OBをステージ10から取り外した場合には、測定対象物OBを、3次元カメラ20の移動前の測定対象物OBと同じステージ10上の位置に設置する。そして、作業者は、入力装置31を操作することにより、ステージ10上の測定対象物OBの3次元データの取得を指示すると、コントローラ30は、ステップS302にて「Yes」と判定して、前述したステップS304〜S308の処理を実行する。なお、前記測定対象物OBの3次元データの取得の指示の前に、入力装置31の操作により、前述のように、ステージ10の回転軸A,B,C周りの回転位置を変更してもよい。一方、データ処理装置40は、前記コントローラ30のステップS304の処理による測定対象物OBの測定指示に応答して、ステップS402にて「Yes」と判定して、前述したステップS404〜S412の処理により、ステージ10を回転軸A,B,C周りの回転角度及び3次元カメラ20によって新たに取得した3次元データを不揮発性メモリに記憶する。
In this state, the operator removes the
前記ステップS412に処理後、コントローラ30は、ステップS414にてカメラ移動フラグCMFが“1”であるか否かを判定する。この場合、前述したステップS430の処理によってカメラ移動フラグCMFは“1”に設定されているので、コントローラ30は、ステップS414にて「Yes」と判定して、前記新たに取得した3次元データを座標変換する。この座標変換においては、前記新たに取得した3次元データが、前記不揮発性メモリに記憶した行列MSの行列値g及び行列値aS,bS,cSを用いて、下記数15の演算の実行により座標変換される。なお、下記数15中の座標値(XM,YM,ZM)は、3次元カメラ20が図9の実線位置にある座標系Mの3次元データである。また、下記数15中の座標値(XS,YS,ZS)は、3次元カメラ20が図9の破線位置にある座標系Sの3次元データである。
After the processing in step S412, the
前記ステップS416の処理後、コントローラ30は、前述したステップS418〜S422の処理により、座標系Mの3次元データを座標系Sに変換した3次元データが、座標系Sにおけるステージ10の基準位置に対応した基準座標系の1組の3次元データに変換される。そして、ステップS424の処理により、この1組の変換された3次元データが不揮発性メモリに記憶される。
After the process of step S416, the
また、このような状態で、作業者が、入力装置31をふたたび操作して、ステージ10の回転軸A,B,C周りの回転位置を新たに指示すると、コントローラ30は、前述のように、モータ16,17,18を駆動制御して、作業者によって指示された回転位置までステージ10を回転軸A,B,C周りに回転させる。その後、作業者は、入力装置31を操作することにより、ステージ10上の測定対象物OBの3次元データの取得を指示すると、コントローラ30は、ステップS302にて「Yes」と判定して、前述したステップS304〜S308の処理を実行する。一方、データ処理装置40は、前記コントローラ30のステップS304の処理による測定対象物OBの測定指示に応答して、ステップS402にて「Yes」と判定して、前述したステップS404〜S424からなる処理を実行する。これにより、不揮発性メモリには、3次元カメラ20の移動後におけるステージ10を回転軸A,B,C周りに前記とは異なる所望の角度だけ回転して3次元カメラ20によって取得した3次元データを、基準座標系の3次元データに変換した新たな1組の3次元データが記憶される。そして、作業者は、この場合も、必要に応じて、ステージ10を回転軸A,B,C周りに必要な回数だけ回転させて、測定対象物OBを3次元カメラ20に測定させることにより、前記回数に対応した組数の3次元データを不揮発性メモリに記憶させることができる。
In this state, when the operator operates the
さらに、3次元カメラ20を移動させて、測定対象物OBを3次元測定する必要がある場合には、前述のように、真球11a,11b,11cをステージ10上にセットして、図7のステップS310〜S316及び図8のステップS426〜S430の処理により、3次元カメラ20の移動に伴うカメラ座標系の座標変換係数を取得する。そして、図7のステップS302〜S308及び図8のステップS402〜S424の処理により、測定対象物OBを3次元カメラ20で測定して、測定により得た3次元データを基準座標系における3次元データに座標変換して、基準座標系に座標変換された3次元データが不揮発性メモリに新たに記憶される。この場合も、ステージ10を回転軸A,B,C周りに回転させて、基準座標系の3次元データを得る。このような処理の結果、3次元カメラ20の複数の位置ごとに、ステージ10を回転軸A,B,C周りに回転させながら取得した測定対象物OBに関する複数組の3次元データが不揮発性メモリに記憶されることになる。そして、不揮発性メモリに記憶されている複数組の3次元データは、全て基準座標系におけるデータに変換されている。
Further, when it is necessary to move the three-
このように、3次元カメラ20の複数の位置ごとに、ステージ10を回転軸A,B,C周りに回転させながら測定対象物OBの3次元データを取得した後、作業者は、入力装置31を操作して測定対象物OBの3次元画像を確認するために測定終了を指示する。この測定終了の指示に応答して、コントローラ30は、図7の対象物測定プログラムのステップS318にて「Yes」と判定して、ステップS320にてデータ処理装置40に3次元画像データの生成を指示して、ステップS322にて対象物測定プログラムの実行を終了する。
Thus, after acquiring the three-dimensional data of the measurement object OB while rotating the
この3次元画像データの生成指示に応答して、データ処理装置40は、ステップS432にて「Yes」と判定して、ステップS434〜438の処理を実行する。ステップS434においては、前記不揮発性メモリに記憶されている複数組の測定対象物OBの3次元データを合成する。この合成においては、基準座標系の複数組の3次元データが1組の3次元データに集合させられる。ステップS436においては、合成した3次元データに基づいて測定対象物OBの3次元形状を表す3次元画像データが生成され、生成された3次元画像データが不揮発性メモリに記憶される。ステップS438においては、前記不揮発性メモリに記憶されている3次元画像データが表示装置41に供給される。表示装置41は、この供給された3次元画像データを用いて、測定対象物OBの3次元画像を表示する。
In response to the instruction to generate the three-dimensional image data, the
上記のように動作する実施形態においては、図7のステップS310〜S314の処理により、図4AのステップS106の処理により記憶されたステージ10の定点の座標を用いて、座標系Mの3次元カメラ20による3次元データを、座標系S(基準座標系)の3次元カメラ20による3次元データに座標変換するための座標変換係数が取得される。そして、図8のステップS416の処理により、座標系Mの3次元カメラ20による3次元データは、前記座標変換係数を用いて、座標系Sの3次元カメラ20による3次元データに変換される。そして、この座標系Sに変換された3次元データは、図8のステップS418〜S422の処理により、ステージ10の基準位置に対応した基準座標系の3次元データに変換される。したがって、ステージ10に対する3次元カメラ20の位置を変化させても、ステージ10に定義した定点の座標を取得するための測定を1回行うのみで回転角度ごとの座標変換係数を得ることができ、測定の効率が良好に保たれる。
In the embodiment operating as described above, the three-dimensional camera of the coordinate system M is obtained by using the coordinates of the fixed point of the
また、ステージ10に定義される定点は、ステージ10に対して一定の位置に定点を定義可能な真球11a,11b,11cをステージ10の穴10a,10b,10cに装着することで得られる。したがって、ステージ10に定義した定点の座標を取得するための測定を行うときだけ、ステージ10に真球11a,11b,11cを取り付ければよいので、ステージ10に測定対象物OBを載置するのに邪魔にならない。
Further, the fixed points defined in the
以上、本発明の一実施形態について説明したが、本発明の実施にあたっては、上記実施形態に限定されるものではなく、本発明の目的を逸脱しない限りにおいて種々の変形も可能である。 Although one embodiment of the present invention has been described above, the present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the object of the present invention.
上記実施形態では、図4AのステップS116,S126,S138,S148、図4BのステップS160及び図7のステップS314の処理により、ステージ10の回転に関する座標変換係数及び3次元カメラ20の移動に関する座標変換係数の取得において、3つの定点(すなわち、3つの真球11a,11b,11cの中心座標)を用いて座標変換係数(行列MAの行列値g及び行列値aA,bA,cA、行列MBの行列値g及び行列値aB,bB,cB、行列MCの行列値g及び行列値aC,bC,cC、並びに行列MSの行列値g及び行列値aS,bS,cS)を計算するようにした。しかし、これに代え、2つ以上の定点と1つ以上のベクトルとを定義し、又は1つ以上の定点と2つ以上のベクトルとを定義して、座標変換係数を計算してもよい。第1座標系の座標値を第2座標系の座標に変換するための座標変換係数を計算するためには、定点に関しては、第1座標系の定点座標値が座標値(x’,y’,z’)であり、第2座標系の定点座標値が座標値(x,y,z)であれば、これらの座標値を前記数2,3と同様な数16に代入する。また、ベクトルに関しては、第1座標系のベクトルの成分が(α’,β’,γ’)であり、第2座標系のベクトルの成分が(α,β,γ)であれば、これらのベクトル成分を前記数8と同様な数17に代入する。
In the above-described embodiment, the coordinate conversion coefficient relating to the rotation of the
なお、第1座標系のベクトルと第2座標系のベクトルの大きさが同じ場合には、前記数17の演算の適用のままでよいが、第1座標系のベクトルと第2座標系のベクトルの大きさが異なる場合には、下記数18の演算の実行により係数Kを計算する。そして、この計算した係数Kを第2座標系のベクトルにかけて前記数17に代入する。このような数16及び数17への代入により、2つ以上の定点と1つ以上のベクトルとを定義した場合には、3つの行列値gからなる数16に関する2つ以上の連立方程式と数17に関する1つ以上の連立方程式が用意されることになる。また、1つ以上の定点と2つ以上のベクトルとを定義した場合には、3つの行列値gからなる数16に関する1つ以上の連立方程式と数17に関する2つ以上の連立方程式が用意されることになる。いずれの場合も、3つの行列値gからなる3つ以上の連立方程式が用意され、この連立方程式を解くことにより座標変換係数(g11,g12,g13,g21,g22,g23,g31,g32,g33,a,b,c)が計算される。
If the vector of the first coordinate system and the vector of the second coordinate system are the same, the calculation of
次に、2つ以上の定点と1つ以上のベクトルとの定義、及び1つ以上の定点と2つ以上のベクトルとの定義に関する具体的方法について説明する。2つ以上の定点と1つ以上のベクトルとを定義する場合には、例えば、図10(A)に示すように、ステージ10上にセットした2つの真球11a,11bの中心座標を2つの定点として定義するとともに、ステージ10の上面の法線ベクトルを1つのベクトルとして定義すればよい。
Next, a specific method regarding the definition of two or more fixed points and one or more vectors and the definition of one or more fixed points and two or more vectors will be described. When defining two or more fixed points and one or more vectors, for example, as shown in FIG. 10 (A), two
また、1つ以上の定点と2つ以上のベクトルを定義する場合には、例えば、図10(B)に示すように、ステージ10上にセットした1つの真球11aの中心座標を1つの定点として定義するとともに、ステージ10上に作成した直線状の模様10eの方向によって規定されるベクトルと、ステージ10の上面の法線ベクトルとを2つのベクトルとして定義すればよい。また、図10(C)に示すように、ステージ10上に作成した直線状の交差する2つの模様10f,10gの方向によって2つのベクトルを定義するとともに、2つの直線状の模様10f,10gの交点によって定点を定義するようにしてもよい。また、図10(D)に示すように、ステージ10の上面の法線ベクトルと、ステージに作成した直線状の模様10hの方向とによって2つベクトルを定義するとともに、模様10hと模様10iとの交点で定点を定義するようにしてもよい。また、図10(E)及び図10(F)に示すように、ステージ10を、上面に加えて少なくとも1つの平らな側面及び頂点(角部)を有するように構成し、前記上面の法線ベクトルと側面の法線ベクトルとを2つのベクトルとして定義するとともに、頂点を定点として定義するようにしてもよい。
Further, when defining one or more fixed points and two or more vectors, for example, as shown in FIG. 10B, the central coordinates of one
前述した直線状の模様10e〜10iを利用する場合、模様10e〜10iの反射率とステージ10上面の他の部位の反射率とを異ならせておいて、3次元カメラ20による3次元形状の測定の際に反射光量も同時に測定するようにすれば、模様10e〜10iに関する3次元データの抽出を行うことができる。また、ステージ10の上面と側面の法線ベクトルを利用する場合には、ステージ10の上面と側面とで反射率を異ならせておいて、3次元カメラ20による3次元形状の測定の際に反射光量も同時に測定するようにすれば、ステージ10の上面と側面に関する3次元データをそれぞれ別々に抽出することができる。そして、これらの測定によって得られた3次元データから定点座標及び法線ベクトルの成分を計算する方法は、従来から知られている技術(例えば、特開2005−249402号公報、特開2005−352630号公報、特開2008−164493号公報参照)を利用できる。このように、ステージ10の形状における頂点、上面及び側面の法線ベクトル、ステージ10に描かれた模様から定まる点又は直線部分を利用することにより、ステージ10に定義される定点又はベクトルの成分を取得する際、ステージ10をそのまま測定すればよいので、効率がよい。
When the
また、上記図4AのステップS116,S126,S138,S148、図4BのステップS160及び図7のステップS314の処理による座標変換係数の取得において、図4Aの基準定点座標取得ルーチンの処理より、ステージ10が基準位置にある状態の定点の座標を記憶しておいて、この記憶しておいた定点の座標を利用している。したがって、前記変形例のように、座標変換に定点及びベクトルを利用する場合には、図4Aの基準定点座標取得ルーチンにて、定点の座標を記憶しておくのに代えて、前記座標変換係数の取得において利用される、ステージ10が基準位置にある状態の定点の座標及びベクトルの成分を取得してRAM又は不揮発性メモリに記憶しておくようにする。
Further, in the acquisition of coordinate transformation coefficients by the processing of steps S116, S126, S138, S148 of FIG. 4A, step S160 of FIG. 4B, and step S314 of FIG. 7,
定点やベクトルを定義する方法は、図10に示す例以外にも種々な形態が考えられる。例えば、物体を用いて定点を定義するときは、3次元データから定点座標を計算するデータ処理が最も容易であるために、真球を使用することが好ましい。しかし、定点を定義できればよいので、円柱、円錐、角錐、直方体などの形状の物体を用いてもよいし、模様であれば、円、多角形といった模様でもよい。 Various methods other than the example shown in FIG. 10 can be considered as a method for defining fixed points and vectors. For example, when a fixed point is defined using an object, it is preferable to use a true sphere because data processing for calculating fixed point coordinates from three-dimensional data is the easiest. However, as long as a fixed point can be defined, an object having a shape such as a cylinder, a cone, a pyramid, or a rectangular parallelepiped may be used, and a pattern such as a circle or a polygon may be used.
また、上記実施形態では、各回転軸における各回転角度ごとに3次元形状測定を行い、定点座標を取得して各回転角度ごとに座標変換係数を取得した。しかし、これに代えて、図11に示すように、1つの定点を定義して3つ回転軸A,B,C周りに、ステージ10をそれぞれ回転させながら3つ以上の回転角度でそれぞれ定点座標を取得し、これらの定点座標で定まる平面と定点座標で定まる円の中心座標とから回転軸A,B,Cの位置をそれぞれ計算し、理論的に、この回転軸A,B,Cの位置から各回転角度ごとの座標変換係数を回転角度の関数として取得してもよい。この場合も、定点の定義のためには、種々の形状の物体や模様を用いることができるが、図11に示すように、ステージ10にセットした真球11aを用いるとよい。
Moreover, in the said embodiment, three-dimensional shape measurement was performed for every rotation angle in each rotating shaft, the fixed point coordinate was acquired, and the coordinate conversion coefficient was acquired for every rotation angle. However, instead of this, as shown in FIG. 11, one fixed point is defined and fixed point coordinates are respectively set at three or more rotation angles while rotating the
各回転軸A,B,Cにおける各回転角度ごとの座標変換係数は、ステージ10の基準位置における基準座標系(カメラ座標系)の座標軸をそれぞれの座標軸周りに回転させて、回転軸に座標軸の1つが垂直に交差するとともに座標軸の1つが回転軸に平行となる座標軸を想定し、この座標軸が回転軸周りに回転することを想定すれば、回転軸周りの回転角度の関数として計算することができる。具体的には、各回転軸A,B,Cごとに以下の順に計算を行い、座標変換係数を求めればよい。
The coordinate conversion coefficient for each rotation angle on each of the rotation axes A, B, and C is obtained by rotating the coordinate axes of the reference coordinate system (camera coordinate system) at the reference position of the
(1)回転軸に垂直で基準座標系(カメラ座標系)の原点Oを含む平面Hを計算する。
(2)各座標軸と平面Hとのなす角度を計算し、平面Hとのなす角度が最も小さい座標軸aに垂直で原点Oを含む平面Iと平面Hから形成される直線のベクトルJを計算し、このベクトルJと座標軸a以外の2つの座標軸とがなす角度をそれぞれ計算し、小さい方の角度分、座標軸aを回転させて他の1つの座標軸である座標軸bを平面H内にする座標変換係数M1を計算する。座標変換係数M1及び後述する座標変換係数M2,M3は、上記数3に示すように、3×3の行列である。
(3)座標軸bを、平面Hと座標軸aがなす角度分、回転させて座標軸aを平面H内にする座標変換係数M2を計算する。
(1) A plane H perpendicular to the rotation axis and including the origin O of the reference coordinate system (camera coordinate system) is calculated.
(2) The angle formed between each coordinate axis and the plane H is calculated, and a straight line vector J formed from the plane I and the plane H including the origin O and perpendicular to the coordinate axis a having the smallest angle with the plane H is calculated. Then, the angle between the vector J and two coordinate axes other than the coordinate axis a is calculated, and the coordinate axis b, which is another coordinate axis, is rotated within the plane H by rotating the coordinate axis a by the smaller angle. The coefficient M1 is calculated. The coordinate conversion coefficient M1 and coordinate conversion coefficients M2 and M3, which will be described later, are 3 × 3 matrices as shown in Equation 3 above.
(3) The coordinate transformation coefficient M2 is calculated by rotating the coordinate axis b by an angle formed by the plane H and the coordinate axis a to bring the coordinate axis a into the plane H.
(4)平面Hと回転軸の交点Kを計算し、原点Oから交点Kに向かうベクトルとベクトルJのなす角度を計算し、この角度分、座標軸a,b以外の座標軸cを回転させ、座標軸aの方向を原点Oから交点K方向にする座標変換係数M3を計算する。
(5)前記(4)でできた座標軸を回転軸周りに回転角度θだけ回転させるときの座標変換係数M(θ),T(θ)を計算する。この場合は、原点移動があるので座標変換係数は3×3の行列であるM(θ)と、3×1の行列(ベクトル成分)であるT(θ)である。座標変換係数M(θ),T(θ)とも、回転角度θの関数として計算することができる。
(6)前記(5)で回転させた座標軸を前記(2)、(3)、(4)で行った回転とは逆の回転を行う座標変換係数M3-1,M2-1,M1-1を計算する。
(4) The intersection point K between the plane H and the rotation axis is calculated, the angle between the vector J from the origin O toward the intersection point K and the vector J is calculated, the coordinate axis c other than the coordinate axes a and b is rotated by this angle, and the coordinate axis A coordinate conversion coefficient M3 for calculating the direction of a from the origin O to the intersection K direction is calculated.
(5) Coordinate conversion coefficients M (θ) and T (θ) are calculated when the coordinate axis formed in (4) is rotated about the rotation axis by the rotation angle θ. In this case, since the origin is moved, the coordinate conversion coefficients are M (θ) which is a 3 × 3 matrix and T (θ) which is a 3 × 1 matrix (vector component). Both the coordinate conversion coefficients M (θ) and T (θ) can be calculated as a function of the rotation angle θ.
(6) Coordinate transformation coefficients M3 −1 , M2 −1 , M1 −1 for rotating the coordinate axes rotated in the above (5) opposite to the rotations performed in the above (2), (3), (4) Calculate
(7)前記(2)〜(6)の順に回転を行うときの座標変換係数Mt(θ)=M1-1・M2-1・M3-1・M(θ)・M3・M2・M1と座標変換係数Tt(θ)=M1-1・M2-1・M3-1・T(θ)を計算する。
(8)前記(7)で求めた座標変換係数Mt(θ),Tt(θ)はステージ10の基準位置における基準座標系(カメラ座標系)の座標軸を回転軸周りに回転角度θだけ回転させたときの座標変換係数である。回転角度θだけ回転させた後の座標軸をステージ10の基準位置における基準座標系(カメラ座標系)の座標軸にするための座標変換係数は、座標変換係数Mt(θ)の逆行列であるMt(θ)-1と−Mt(θ)-1・Tt(θ)である。
(7) Coordinate conversion coefficient Mt (θ) = M1 −1 · M2 −1 · M3 −1 · M (θ) · M3 · M2 · M1 and coordinates when rotating in the order of (2) to (6) Conversion coefficient Tt (θ) = M1 −1 · M2 −1 · M3 −1 · T (θ) is calculated.
(8) The coordinate transformation coefficients Mt (θ) and Tt (θ) obtained in the above (7) rotate the coordinate axis of the reference coordinate system (camera coordinate system) at the reference position of the
なお、この種の技術も従来から知られた技術(特表2000−509505号公報、特開2008−32449号公報参照)である。 This type of technology is also a conventionally known technology (see Japanese translations of PCT publication No. 2000-509505 and Japanese Patent Application Laid-Open No. 2008-32449).
また、上記実施形態ではステージ10は回転軸Aが固定されており、回転軸Bは回転軸Aの回転角度が固定されると固定され、回転軸Cは回転軸A,Bが固定されると固定されるようになっているが、座標変換を固定された回転軸による座標変換から行えば、前記回転軸A,B,Cの関係は任意でよい。また、上記実施形態では回転軸は3つであったが、座標変換を固定された回転軸による座標変換から行っていけば、回転軸は2つであってもよいし、4つ以上であってもよい。
In the embodiment, the
また、上記実施形態では、座標系Mの3次元データを座標系S(基準座標系)の3次元データに座標変換する座標変換係数を得るときに、ステージ10の回転軸A,B,Cの回転角度を基準角度(0度)にして真球11a,11b,11cの3次元形状を測定して定点座標を取得したが、回転軸A,B,Cが任意の回転角度であっても座標変換係数を得ることは可能である。この場合、図4A及び図4Bの座標変換係数設定プログラムの実行によって不揮発性メモリに記憶されていてステージ10の回転軸A,B,C周りの回転角度における座標変換係数を用いて、座標系S(基準座標系)による定点座標を逆の座標変換により現在の回転角度による座標系による定点座標に変換し、この定点座標と3次元形状測定して取得した定点座標とを用いて座標系Mの3次元データを座標系S(基準座標系)の3次元データに座標変換する座標変換係数を取得すればよい。
Further, in the above embodiment, when obtaining a coordinate conversion coefficient for converting the three-dimensional data of the coordinate system M into the three-dimensional data of the coordinate system S (reference coordinate system), the rotation axes A, B, and C of the
さらに、上記実施形態では、3次元カメラ20はレーザ光を照射して測定を行うものであったが、測定対象物OBの3次元形状を測定できるものであればどのような方式のものであってもよい。例えば、格子模様を投影して測定する方式のもの、超音波を使用して測定する方式のもの、プローブを接触させて測定する方式のものでもよい。
Furthermore, in the above-described embodiment, the three-
10…ステージ、11a,11b,11c…真球、16,17,18…モータ、20…3次元カメラ、30…コントローラ、31…入力装置、40…データ処理装置、41…表示装置、OB…測定対象物
DESCRIPTION OF
Claims (10)
前記ステージ上に載置した物体の3次元形状を測定する3次元カメラと、
前記3次元カメラで測定した3次元形状を表す3次元データを処理する処理装置とからなり、
前記処理装置に、
第1のカメラ位置に配置した前記3次元カメラの測定により取得した前記ステージの定点又はベクトルを用いて、前記ステージを基準位置から回転させた状態で前記3次元カメラにより測定した3次元形状を表す3次元データを、前記ステージが基準位置にある状態で前記3次元カメラにより測定した3次元形状を表す基準座標系の3次元データに変換するための回転座標変換係数を前記2つ以上の回転軸のそれぞれに対して複数の回転角度ごとに取得して記憶しておく回転座標変換係数取得手段と、
前記ステージを基準位置から回転させた状態で前記3次元カメラにより測定した測定対象物の3次元形状を表す3次元データを、前記回転座標変換係数を用いて、前記基準座標系の3次元データに変換する回転座標変換手段とを設けて、
前記ステージを回転させることによって異なる視点から測定した測定対象物の3次元データを、前記基準座標系の3次元データに合成する3次元形状測定装置において、
前記処理装置に、さらに
前記第1のカメラ位置に配置した前記3次元カメラの測定により取得した前記ステージの定点の座標又はベクトルの成分を記憶しておく定点・ベクトル記憶手段と、
前記第1のカメラ位置と異なる第2のカメラ位置に配置した前記3次元カメラの測定により取得した前記ステージの定点の座標又はベクトルの成分と、前記定点・ベクトル記憶手段によって記憶されているステージの定点の座標又はベクトルの成分とを用いて、前記第2のカメラ位置で前記3次元カメラにより測定した3次元形状を表す3次元データを、前記第1のカメラ位置で前記3次元カメラにより測定した3次元形状を表す3次元データに座標変換するためのカメラ座標変換係数を取得するカメラ座標変換係数取得手段と、
前記第2のカメラ位置で前記3次元カメラにより測定した測定対象物の3次元形状を表す3次元データを、前記カメラ座標変換係数を用いて、前記第1のカメラ位置で前記3次元カメラにより測定した測定対象物の3次元形状を表す3次元データに変換するカメラ座標変換手段とを設けたことを特徴とする3次元形状測定装置。 A stage that can be rotated about two or more rotation axes and that can define a fixed point or vector for calculating a coordinate transformation coefficient;
A three-dimensional camera for measuring a three-dimensional shape of an object placed on the stage;
A processing device for processing three-dimensional data representing a three-dimensional shape measured by the three-dimensional camera,
In the processing device,
A fixed point or vector of the stage acquired by measurement of the three-dimensional camera arranged at the first camera position is used to represent a three-dimensional shape measured by the three-dimensional camera with the stage rotated from a reference position. The two or more rotation axes represent a rotation coordinate conversion coefficient for converting three-dimensional data into three-dimensional data of a reference coordinate system representing a three-dimensional shape measured by the three-dimensional camera in a state where the stage is at a reference position. Rotating coordinate conversion coefficient acquisition means for acquiring and storing for each of a plurality of rotation angles for each of,
The three-dimensional data representing the three-dimensional shape of the measurement object measured by the three-dimensional camera with the stage rotated from the reference position is converted into the three-dimensional data of the reference coordinate system using the rotation coordinate conversion coefficient. A rotating coordinate conversion means for converting,
In the three-dimensional shape measuring apparatus that combines the three-dimensional data of the measurement object measured from different viewpoints by rotating the stage with the three-dimensional data of the reference coordinate system,
A fixed point / vector storage means for storing the fixed point coordinates or vector components of the stage acquired by the measurement of the three-dimensional camera arranged at the first camera position in the processing device;
The fixed point coordinates or vector components of the stage acquired by measurement of the three-dimensional camera arranged at a second camera position different from the first camera position, and the stage stored in the fixed point / vector storage means Three-dimensional data representing a three-dimensional shape measured by the three-dimensional camera at the second camera position is measured by the three-dimensional camera at the first camera position using a fixed point coordinate or a vector component. Camera coordinate conversion coefficient acquisition means for acquiring a camera coordinate conversion coefficient for converting coordinates into three-dimensional data representing a three-dimensional shape;
Three-dimensional data representing a three-dimensional shape of a measurement object measured by the three-dimensional camera at the second camera position is measured by the three-dimensional camera at the first camera position using the camera coordinate conversion coefficient. A three-dimensional shape measuring apparatus, comprising: camera coordinate conversion means for converting into three-dimensional data representing the three-dimensional shape of the measured object.
第1のカメラ位置に配置した前記3次元カメラの測定により取得した前記ステージの定点又はベクトルを用いて、前記ステージを基準位置から回転させた状態で前記3次元カメラにより測定した3次元形状を表す3次元データを、前記ステージが基準位置にある状態で前記3次元カメラにより測定した3次元形状を表す基準座標系の3次元データに変換するための回転座標変換係数を前記2つ以上の回転軸のそれぞれに対して複数の回転角度ごとに取得して記憶しておき、
前記ステージを基準位置から回転させた状態で前記3次元カメラにより測定した測定対象物の3次元形状を表す3次元データを、前記回転座標変換係数を用いて、前記基準座標系の3次元データに変換して、前記ステージを回転させることによって異なる視点から測定した測定対象物の3次元データを、前記基準座標系の3次元データに合成する3次元形状測定方法において、
前記第1のカメラ位置に配置した前記3次元カメラの測定により取得した前記ステージの定点の座標又はベクトルの成分を記憶しておき、
前記第1のカメラ位置と異なる第2のカメラ位置に配置した前記3次元カメラの測定により取得した前記ステージの定点の座標又はベクトルの成分と、前記記憶しておいたステージの定点の座標又はベクトルの成分とを用いて、前記第2のカメラ位置で前記3次元カメラにより測定した3次元形状を表す3次元データを、前記第1のカメラ位置で前記3次元カメラにより測定した3次元形状を表す3次元データに座標変換するためのカメラ座標変換係数を取得し、
前記第2のカメラ位置で前記3次元カメラにより測定した測定対象物の3次元形状を表す3次元データを、前記カメラ座標変換係数を用いて、前記第1のカメラ位置で前記3次元カメラにより測定した測定対象物の3次元形状を表す3次元データに変換するようにしたことを特徴とする3次元形状測定方法。 A stage capable of rotating around two or more rotation axes and capable of defining a fixed point or a vector for calculating a coordinate transformation coefficient; a three-dimensional camera for measuring a three-dimensional shape of an object placed on the stage; Applied to a three-dimensional shape measuring apparatus comprising:
A fixed point or vector of the stage acquired by measurement of the three-dimensional camera arranged at the first camera position is used to represent a three-dimensional shape measured by the three-dimensional camera with the stage rotated from a reference position. The two or more rotation axes represent a rotation coordinate conversion coefficient for converting three-dimensional data into three-dimensional data of a reference coordinate system representing a three-dimensional shape measured by the three-dimensional camera in a state where the stage is at a reference position. Are acquired and stored for each of a plurality of rotation angles,
The three-dimensional data representing the three-dimensional shape of the measurement object measured by the three-dimensional camera with the stage rotated from the reference position is converted into the three-dimensional data of the reference coordinate system using the rotation coordinate conversion coefficient. In the three-dimensional shape measurement method of combining the three-dimensional data of the measurement object measured from different viewpoints by converting and rotating the stage, with the three-dimensional data of the reference coordinate system,
Store the coordinates or vector components of the fixed point of the stage acquired by the measurement of the three-dimensional camera arranged at the first camera position,
The fixed point coordinates or vector components of the stage acquired by the measurement of the three-dimensional camera arranged at a second camera position different from the first camera position, and the stored fixed point coordinates or vector of the stage And the three-dimensional data representing the three-dimensional shape measured by the three-dimensional camera at the second camera position, and the three-dimensional shape measured by the three-dimensional camera at the first camera position. Obtain the camera coordinate conversion coefficient for coordinate conversion to 3D data,
Three-dimensional data representing a three-dimensional shape of a measurement object measured by the three-dimensional camera at the second camera position is measured by the three-dimensional camera at the first camera position using the camera coordinate conversion coefficient. A three-dimensional shape measuring method, wherein the three-dimensional data representing the three-dimensional shape of the measured object is converted.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010111699A JP5273091B2 (en) | 2010-05-14 | 2010-05-14 | 3D shape measuring apparatus and 3D shape measuring method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010111699A JP5273091B2 (en) | 2010-05-14 | 2010-05-14 | 3D shape measuring apparatus and 3D shape measuring method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011242139A JP2011242139A (en) | 2011-12-01 |
JP5273091B2 true JP5273091B2 (en) | 2013-08-28 |
Family
ID=45408968
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010111699A Expired - Fee Related JP5273091B2 (en) | 2010-05-14 | 2010-05-14 | 3D shape measuring apparatus and 3D shape measuring method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5273091B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105758343B (en) * | 2016-03-15 | 2018-06-26 | 哈尔滨工业大学 | The device and method of C axis centre of gyration calibration based on double standard balls |
CN105698679B (en) * | 2016-03-15 | 2018-06-29 | 哈尔滨工业大学 | Suitable for the non-contact in level detecting apparatus and method of ultra-precision machine tool processing part |
KR102398750B1 (en) * | 2017-08-25 | 2022-05-16 | 트라이큐빅스 인크. | Automatic photograph system of item using 3d space and method thereof |
KR102173190B1 (en) * | 2019-07-29 | 2020-11-02 | 주식회사 디오에프연구소 | 3d scanning apparatus and method |
CN115420196B (en) * | 2022-08-30 | 2023-11-14 | 天津大学 | General object three-dimensional measurement method and device |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3530972B2 (en) * | 1995-11-28 | 2004-05-24 | 独立行政法人産業技術総合研究所 | Shape measuring device |
DE19618140A1 (en) * | 1996-05-06 | 1997-11-13 | Fraunhofer Ges Forschung | 3D measuring arrangement for whole body detection and measurement of a corresponding measuring arrangement |
JPH1196374A (en) * | 1997-07-23 | 1999-04-09 | Sanyo Electric Co Ltd | Three-dimensional modeling device, three-dimensional modeling method and medium recorded with three-dimensional modeling program |
JP2001101410A (en) * | 1999-09-28 | 2001-04-13 | Suzuki Motor Corp | Transformation matrix data generating method, correction jig and three-dimensional measuring system |
JP2001108421A (en) * | 1999-10-13 | 2001-04-20 | Sanyo Electric Co Ltd | Method and apparatus for three-dimensional modeling, and medium recording three-dimensional modeling program |
JP3944091B2 (en) * | 2003-02-06 | 2007-07-11 | パルステック工業株式会社 | 3D image data generation method |
JP2005189204A (en) * | 2003-12-26 | 2005-07-14 | Fuji Xerox Co Ltd | Three-dimensional shape measuring instrument and method |
JP4291178B2 (en) * | 2004-03-01 | 2009-07-08 | パルステック工業株式会社 | 3D shape measuring system, measuring method, and 3D shape measuring stage device |
-
2010
- 2010-05-14 JP JP2010111699A patent/JP5273091B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2011242139A (en) | 2011-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5273091B2 (en) | 3D shape measuring apparatus and 3D shape measuring method | |
JP2004257927A (en) | Three-dimensional profile measuring system and method for measuring the same | |
JP2011038902A (en) | Method and program for identifying machine error | |
JP3944091B2 (en) | 3D image data generation method | |
EP2138803B1 (en) | Jig for measuring an object shape and method for measuring a three-dimensional shape | |
JP2009026300A (en) | Method and device for controlling and monitoring position of holding element | |
JP4291178B2 (en) | 3D shape measuring system, measuring method, and 3D shape measuring stage device | |
JP5059700B2 (en) | DUT shape measuring jig and three-dimensional shape measuring method | |
JP4863006B2 (en) | 3D shape measurement method | |
JP4423811B2 (en) | Three-dimensional shape measurement system and three-dimensional shape measurement method | |
JP5059699B2 (en) | DUT shape measuring jig and three-dimensional shape measuring method | |
Qian et al. | Computational approach for optimal sensor setup | |
JP6489220B2 (en) | Surface shape measuring device and surface shape measuring program | |
JP7401682B2 (en) | robot system | |
JP2010060420A (en) | Surface shape and/or film thickness measuring method and its system | |
JP6300120B2 (en) | Control data generation method and control data generation apparatus | |
JP7052564B2 (en) | Visual sensor system, control method and program | |
JP4443523B2 (en) | Coordinate conversion function acquisition method and coordinate conversion function acquisition program | |
JP5175916B2 (en) | Parts search system | |
JP2012145550A (en) | Inter-target absolute distance measurement method of tracking laser interference measuring apparatus and tracking laser interference measuring apparatus | |
JP5310310B2 (en) | Ultra-precision shape measurement method | |
Ikura et al. | Polynomial-fitting based calibration for an active 3D sensing system using dynamic light section method | |
JP2004333371A (en) | Three-dimensional data extraction method and three-dimensional data extraction device | |
JP2015132920A (en) | Generation method, processing apparatus, and program | |
JP2009139200A (en) | Method and apparatus for measuring position variation of rotation center line |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120119 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130130 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130205 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130218 |
|
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: 20130416 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130429 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5273091 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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 |
|
LAPS | Cancellation because of no payment of annual fees |