JP2008112412A - Data processing device, data processing method, and program - Google Patents

Data processing device, data processing method, and program Download PDF

Info

Publication number
JP2008112412A
JP2008112412A JP2006296464A JP2006296464A JP2008112412A JP 2008112412 A JP2008112412 A JP 2008112412A JP 2006296464 A JP2006296464 A JP 2006296464A JP 2006296464 A JP2006296464 A JP 2006296464A JP 2008112412 A JP2008112412 A JP 2008112412A
Authority
JP
Japan
Prior art keywords
point
dimensional
nearest
nearest point
dimensional model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2006296464A
Other languages
Japanese (ja)
Inventor
Gyokuu Ryu
玉宇 劉
Ikoku Go
偉国 呉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2006296464A priority Critical patent/JP2008112412A/en
Publication of JP2008112412A publication Critical patent/JP2008112412A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

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

Abstract

<P>PROBLEM TO BE SOLVED: To increase the speed in searching for the closest point in a surface of a three-dimensional model. <P>SOLUTION: Concerning the three-dimensional model constition parts that constitute a three-dimensional model, the surface of a three-dimensional model consisting of a triangle v<SB>i</SB>c<SB>0</SB>v<SB>i+1</SB>obtained by equally dividing the lower bottom face into six parts, a side surface v<SB>i</SB>v<SB>i+1</SB>v<SB>i+1</SB>'v<SB>i</SB>' and a triangle v<SB>i</SB>'c<SB>0</SB>'v<SB>i+1</SB>' obtained by equally dividing the upper bottom face into six parts is specified as a region the closest point is searched. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、人物等の対象物体の位置及び姿勢を追跡し、3次元モデルを構築するデータ処理装置、データ処理方法、及びプログラムに関する。   The present invention relates to a data processing apparatus, a data processing method, and a program for tracking the position and orientation of a target object such as a person and constructing a three-dimensional model.

従来、人物等の対象物体の表面を、センサ等を用いて計測することにより対象物体の動作を追跡し、対象物体の動作を再現する3次元モデルを構築するデータ処理技術がある。このようなデータ処理技術では、対象物体の動作を完全に再現するために、対象物体の表面形状をセンサの計測位置からの距離で表す距離画像を対象物体に対して複数の方向から取得する。   2. Description of the Related Art Conventionally, there is a data processing technique for building a three-dimensional model that tracks the motion of a target object by measuring the surface of the target object such as a person using a sensor or the like and reproduces the motion of the target object. In such a data processing technique, in order to completely reproduce the operation of the target object, a distance image representing the surface shape of the target object as a distance from the measurement position of the sensor is acquired from a plurality of directions with respect to the target object.

複数の方向から取得された複数の距離画像は、それぞれの測定位置を示す座標系で記述されており、それぞれの相対位置姿勢を求めて座標系を統一する位置合わせ処理が必要となる。   A plurality of distance images acquired from a plurality of directions are described in a coordinate system indicating each measurement position, and an alignment process is required to obtain a relative position and orientation of each and unify the coordinate system.

この距離画像の位置合わせ問題を解決するために、例えば、非特許文献1に示すように、ICP(Iterative Closest Point)アルゴリズムを適用する方法がある。   In order to solve this distance image alignment problem, for example, as shown in Non-Patent Document 1, there is a method of applying an ICP (Iterative Closest Point) algorithm.

ICPアルゴリズムは、反復計算によってデータ間の対応状態の良否を示す対応点間の誤差を最小化する剛体変換パラメータを算出するものである。   The ICP algorithm calculates a rigid body transformation parameter that minimizes an error between corresponding points indicating the quality of the corresponding state between data by iterative calculation.

このようなデータ処理技術にICPアルゴリズムを用いた場合、2つの距離画像中の最近傍点を対応点とし、この対応点間の誤差を最小化するような各距離画像の変換行列を繰り返し算出することによって相対位置を特定していく。   When the ICP algorithm is used for such a data processing technique, the nearest neighbor point in two distance images is used as a corresponding point, and a transformation matrix of each distance image is repeatedly calculated so as to minimize an error between the corresponding points. The relative position is specified by.

P.J Besl, and N.D.McKay;“A method for registration of 3‐D shapes,”IEEE Trans. of PAMI, vol.14,No.2,pp.239‐256(1992)P. J Besl, and N.J. D. McKay; “A method for registration of 3-D shapes,” IEEE Trans. of PAMI, vol. 14, no. 2, pp. 239-256 (1992)

しかしながら、このICPアルゴリズムに基づく処理動作は膨大な時間を要するため、リアルタイムの適用が難しいといった問題があった。ICPアルゴリズムでは、3次元モデル表面上で最近傍点を探索する処理での計算量が多く、この計算処理に要する時間も長くなる。   However, since the processing operation based on the ICP algorithm requires a long time, there is a problem that real-time application is difficult. In the ICP algorithm, the amount of calculation in the process of searching for the nearest point on the surface of the three-dimensional model is large, and the time required for this calculation process also becomes long.

本発明は、このような従来の実情に鑑みて提案されたものであり、最近傍点の探索処理の高速化を可能にするデータ処理装置、データ処理方法、及びプログラムを提供することを目的とする。   The present invention has been proposed in view of such a conventional situation, and an object of the present invention is to provide a data processing device, a data processing method, and a program capable of speeding up the nearest neighbor search process. .

上述した目的を達成するために、本発明に係るデータ処理装置は、多角形の底面を有する構成部位からなる3次元モデルに対象物体の3次元位置を射影するデータ処理装置において、上記対象物体の3次元表面を生成する3次元表面生成手段と、上記構成部位の表面において、上記対象物体の3次元表面における所定の位置を示す3次元ポイントから上記構成部位の表面までの距離が最短となる最近傍点を探索する領域を特定する最近傍点探索領域特定手段と、上記最近傍点探索領域特定手段によって特定された領域を構成する各平面において、それぞれ上記最近傍点を探索する最近傍点探索手段と、上記最近傍点探索手段によって探索された複数の上記最近傍点の内、上記3次元ポイントからの距離が最も短い最近傍点を出力する最近傍点出力手段と、上記最近傍点出力手段より出力された最近傍点から当該最近傍点に対応する上記3次元ポイントまでの距離における誤差関数を最小化する変換行列を算出することにより上記最近傍点と上記3次元ポイントとの相対位置を特定する変換行列算出手段と、上記変換行列算出手段によって特定された上記最近傍点と上記3次元ポイントとの相対位置に基づいて上記3次元ポイントを当該3次元ポイントに対応する最近傍点の位置に射影し、上記3次元モデルを移動させる3次元モデル移動処理手段とを備えることを特徴とする。   In order to achieve the above-described object, a data processing apparatus according to the present invention is a data processing apparatus that projects a three-dimensional position of a target object onto a three-dimensional model composed of components having a polygonal bottom surface. A three-dimensional surface generating means for generating a three-dimensional surface, and the distance from the three-dimensional point indicating a predetermined position on the three-dimensional surface of the target object to the surface of the constituent part is the shortest on the surface of the constituent part. Nearest neighbor point search area specifying means for specifying an area for searching for a neighboring point; nearest neighbor point search means for searching for the nearest neighbor point in each plane constituting the area specified by the nearest neighbor point search area specifying means; The nearest point that outputs the nearest point that has the shortest distance from the three-dimensional point among the plurality of nearest points searched by the neighbor search means And calculating the transformation matrix that minimizes the error function in the distance from the nearest point output from the nearest point output means to the three-dimensional point corresponding to the nearest point, and the nearest point and the three-dimensional A transformation matrix calculating means for specifying a relative position with respect to the point, and the three-dimensional point corresponding to the three-dimensional point based on a relative position between the nearest neighbor point specified by the conversion matrix calculating means and the three-dimensional point. 3D model movement processing means for projecting to the position of the nearest neighbor point and moving the 3D model.

また、上述した目的を達成するために、本発明に係るデータ処理方法は、多角形の底面を有する構成部位からなる3次元モデルに対象物体の3次元位置を射影するデータ処理方法において、上記対象物体の3次元表面を生成する3次元表面生成工程と、上記構成部位の表面において、上記対象物体の3次元表面における所定の位置を示す3次元ポイントから上記構成部位の表面までの距離が最短となる最近傍点を探索する領域を特定する最近傍点探索領域特定工程と、上記最近傍点探索領域特定工程にて特定された領域を構成する各平面において、それぞれ上記最近傍点を探索する最近傍点探索工程と、上記最近傍点探索工程にて探索された複数の上記最近傍点の内、上記3次元ポイントからの距離が最も短い最近傍点を出力する最近傍点出力工程と、上記最近傍点出力工程にて出力された最近傍点から当該最近傍点に対応する上記3次元ポイントまでの距離における誤差関数を最小化する変換行列を算出することにより上記最近傍点と上記3次元ポイントとの相対位置を特定する変換行列算出工程と、上記変換行列算出工程にて特定された上記最近傍点と上記3次元ポイントとの相対位置に基づいて上記3次元ポイントを当該3次元ポイントに対応する最近傍点の位置に射影し、上記3次元モデルを移動させる3次元モデル移動処理工程とを有することを特徴とする。   In order to achieve the above-described object, the data processing method according to the present invention is a data processing method for projecting a three-dimensional position of a target object onto a three-dimensional model composed of components having a polygonal bottom surface. A three-dimensional surface generating step for generating a three-dimensional surface of the object, and a distance from a three-dimensional point indicating a predetermined position on the three-dimensional surface of the target object to the surface of the constituent part on the surface of the constituent part is the shortest A nearest point search region specifying step for specifying a region for searching for the nearest point, and a nearest point search step for searching for the nearest point in each plane constituting the region specified in the nearest point search region specifying step, The nearest neighbor point output that outputs the nearest neighbor point having the shortest distance from the three-dimensional point among the plurality of nearest neighbor points searched in the nearest neighbor point search step. And calculating a transformation matrix that minimizes an error function in the distance from the nearest neighbor point output in the nearest neighbor point output step to the three-dimensional point corresponding to the nearest neighbor point, and the nearest neighbor point and the three-dimensional A transformation matrix calculating step for specifying a relative position with respect to the point, and the three-dimensional point corresponding to the three-dimensional point based on a relative position between the nearest point specified in the transformation matrix calculating step and the three-dimensional point And a three-dimensional model movement processing step of projecting to the position of the nearest point to be moved and moving the three-dimensional model.

また、本発明に係るプログラムは、上述したデータ処理をコンピュータに実行させるものである。   A program according to the present invention causes a computer to execute the data processing described above.

本発明によれば、3次元モデル表面における最近傍点の探索処理の高速化が可能となる。   According to the present invention, it is possible to speed up the process of searching for the nearest point on the surface of the three-dimensional model.

以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。   Hereinafter, specific embodiments to which the present invention is applied will be described in detail with reference to the drawings.

図1は、本発明の一実施形態におけるデータ処理装置1の構成を示すブロック図である。データ処理装置1は、カメラ11R及びカメラ11Lと、3次元表面生成部12と、最近傍点探索領域特定部13と、最近傍点探索部14と、最近傍点出力部15と、変換行列算出部16と、3次元モデル移動処理部17と、記憶部18とを備えて構成される。なお、データ処理装置1の処理動作は、CPU(Central Processing Unit)がROM(Read Only Memory)に記憶されているプログラムをRAM(Random Access Memory)上で実行することにより制御される。   FIG. 1 is a block diagram showing a configuration of a data processing apparatus 1 according to an embodiment of the present invention. The data processing apparatus 1 includes a camera 11R, a camera 11L, a three-dimensional surface generation unit 12, a nearest neighbor point search region specifying unit 13, a nearest neighbor point search unit 14, a nearest neighbor point output unit 15, and a transformation matrix calculation unit 16. A three-dimensional model movement processing unit 17 and a storage unit 18 are provided. The processing operation of the data processing device 1 is controlled by a CPU (Central Processing Unit) executing a program stored in a ROM (Read Only Memory) on a RAM (Random Access Memory).

図2は、データ処理装置1の処理工程の概要を示す図である。データ処理装置1では、対象物体21Aの3次元表面22に基づいて3次元モデル23を移動させる。   FIG. 2 is a diagram showing an outline of processing steps of the data processing apparatus 1. In the data processing apparatus 1, the three-dimensional model 23 is moved based on the three-dimensional surface 22 of the target object 21A.

カメラ11R及びカメラ11Lは、例えば人物等の対象物体21Aをそれぞれ右方向、左方向から撮影し、カメラ11Rとカメラ11Lとの視差に基づく視差画像21を得る。   The camera 11R and the camera 11L, for example, photograph the target object 21A such as a person from the right direction and the left direction, respectively, and obtain a parallax image 21 based on the parallax between the camera 11R and the camera 11L.

3次元表面生成部12は、カメラ11R及びカメラ11Lによって得られた視差画像21に基づいて、対象物体21Aの3次元表面22を表す3次元座標(以下、3次元ポイントという。)を生成し、この3次元ポイントからなる3次元表面データを最近傍点探索領域特定部13に供給する。   The three-dimensional surface generation unit 12 generates three-dimensional coordinates (hereinafter, referred to as a three-dimensional point) representing the three-dimensional surface 22 of the target object 21A based on the parallax images 21 obtained by the cameras 11R and 11L. The three-dimensional surface data composed of the three-dimensional points is supplied to the nearest point search area specifying unit 13.

データ処理装置1では、3次元表面データに基づいて3次元モデル23を移動させる。この3次元モデル23は、形状が多角柱、多角錘、多角錘台等である構成部位(以下、3次元モデル構成部位という。)が複数個組み合わされて構成されるものである。なお、3次元モデル構成部位の形状は、多角柱、多角錘台、多角錘の何れであってもよいが、本実施の形態では、形状が正六角柱である3次元モデル構成部位23Aを例に挙げて説明する。   In the data processing apparatus 1, the three-dimensional model 23 is moved based on the three-dimensional surface data. The three-dimensional model 23 is configured by combining a plurality of constituent parts (hereinafter referred to as three-dimensional model constituent parts) whose shapes are a polygonal column, a polygonal pyramid, a polygonal frustum, and the like. The shape of the three-dimensional model constituent part may be any of a polygonal column, a polygonal frustum, and a polygonal pyramid, but in this embodiment, the shape of the three-dimensional model constituent part 23A having a regular hexagonal column is taken as an example. I will give you a description.

最近傍点探索領域特定部13は、3次元モデル構成部位23Aの表面を所定の領域に分割することにより、3次元モデル構成部位23Aの表面において3次元ポイントから3次元モデル構成部位23Aまでの距離を最小とする点(以下、最近傍点という。)を探索する領域(以下、最近傍点探索領域という。)を特定する。   The nearest neighbor search area specifying unit 13 divides the surface of the three-dimensional model constituent part 23A into predetermined areas, thereby obtaining a distance from the three-dimensional point to the three-dimensional model constituent part 23A on the surface of the three-dimensional model constituent part 23A. An area (hereinafter referred to as the nearest neighbor search area) for searching for the minimum point (hereinafter referred to as the nearest neighbor point) is specified.

記憶部18には、3次元モデル23の位置を示す3次元座標等、3次元モデル23の所定のデータがフレーム単位で記憶されている。最近傍点探索部14は、特定のフレームにおける3次元モデル23の所定のデータを記憶部18から読み出し、最近傍点探索領域を構成する複数の平面において、それぞれ最近傍点の探索処理を行う。   The storage unit 18 stores predetermined data of the three-dimensional model 23 such as three-dimensional coordinates indicating the position of the three-dimensional model 23 in units of frames. The nearest neighbor search unit 14 reads predetermined data of the three-dimensional model 23 in a specific frame from the storage unit 18 and performs a search process of the nearest point on each of a plurality of planes constituting the nearest neighbor search region.

最近傍点出力部15は、3次元ポイントから最近傍点探索部14によって探索された複数の最近傍点までの距離が最小となる最近傍点を出力する。   The nearest neighbor point output unit 15 outputs the nearest point that minimizes the distance from the three-dimensional point to the plurality of nearest points searched by the nearest point search unit 14.

変換行列算出部16は、最近傍点出力部15より出力された最近傍点とこの最近傍点に対応する3次元ポイントとの距離における誤差関数を最小化するような変換行列を算出し、誤差関数が所定の閾値より小さくなるまで繰り返し計算を行い、対象物体21Aと3次元モデル構成部位23Aとの相対位置を特定する。   The transformation matrix calculation unit 16 calculates a transformation matrix that minimizes the error function in the distance between the nearest point output from the nearest point output unit 15 and the three-dimensional point corresponding to the nearest point, and the error function is predetermined. The calculation is repeated until the threshold value becomes smaller than the threshold value, and the relative position between the target object 21A and the three-dimensional model component 23A is specified.

3次元モデル移動処理部17は、変換行列算出部16によって特定された3次元ポイントと最近傍点との相対位置に基づいて3次元ポイントを対応する最近傍点の位置に射影し、フレーム毎に複数の3次元モデル構成部位23Aからなる3次元モデル23を移動させる。   The three-dimensional model movement processing unit 17 projects the three-dimensional point to the position of the nearest neighbor point based on the relative position between the three-dimensional point specified by the transformation matrix calculation unit 16 and the nearest point, and a plurality of the three-dimensional model movement processing unit 17 for each frame. The three-dimensional model 23 composed of the three-dimensional model constituent part 23A is moved.

ここで、データ処理装置1の処理動作について図3のフローチャートを参照しながら詳細に説明する。データ処理装置1では、ICP(Iterative Closest Point)アルゴリズムを適用してカメラ11R及びカメラ11Lによって得られたフレーム単位の視差画像における3次元ポイントから3次元モデル構成部位23Aまでの距離を最小化するような各視差画像の変換行列を算出し、繰り返し計算を行うことによって対象物体21Aと3次元モデル構成部位23Aとの相対位置を算出することにより、3次元モデル23を移動させる。   Here, the processing operation of the data processing apparatus 1 will be described in detail with reference to the flowchart of FIG. The data processing apparatus 1 applies an ICP (Iterative Closest Point) algorithm to minimize the distance from the three-dimensional point to the three-dimensional model component part 23A in the parallax images in frame units obtained by the camera 11R and the camera 11L. A three-dimensional model 23 is moved by calculating a relative position between the target object 21A and the three-dimensional model constituent part 23A by calculating a transformation matrix of each parallax image and repeatedly performing the calculation.

ステップS1において、3次元表面生成部12は、カメラ11R及びカメラ11Lによって得られた視差画像21を用いて対象物体21Aの3次元表面22を表す3次元ポイントからなる3次元表面データを生成し、この3次元表面データを最近傍点探索領域特定部13に供給する。   In step S1, the three-dimensional surface generation unit 12 generates three-dimensional surface data including three-dimensional points representing the three-dimensional surface 22 of the target object 21A using the parallax images 21 obtained by the cameras 11R and 11L. The three-dimensional surface data is supplied to the nearest point search area specifying unit 13.

ステップS2において、最近傍点探索領域特定部13、最近傍点探索部14、及び最近傍点出力部15は、図4のフローチャートに示されるステップS21からステップS29までの処理動作を行うことにより、対象物体21Aの表面における所定の3次元ポイントから3次元モデル構成部位23Aまでの距離が最短となる最近傍点を生成し、この最近傍点を変換行列算出部16に出力する。   In step S2, the nearest neighbor point search area specifying unit 13, the nearest neighbor point searching unit 14, and the nearest point output unit 15 perform the processing operations from step S21 to step S29 shown in the flowchart of FIG. The nearest neighbor point having the shortest distance from the predetermined three-dimensional point on the surface to the three-dimensional model constituent part 23 </ b> A is generated, and this nearest neighbor point is output to the transformation matrix calculation unit 16.

ステップS21において、最近傍点探索領域特定部13は、図5に示すように、3次元ポイントを示すベクトルpと、3次元モデル構成部位23Aの下底面の中心点を示すベクトルcと、3次元モデル構成部位23Aの下底面の法線ベクトルnとを用いて、3次元モデル構成部位23Aにおいて最近傍点の探索処理を行う領域を特定するためのベクトルである単位射影ベクトルnを以下の数式(1)によって算出する。 In step S21, nearest neighbor search area specifying unit 13, as shown in FIG. 5, the vector p indicates the three-dimensional point, the vector c 0 indicating the center point of the bottom surface of a 3D model construction site 23A, three-dimensional A unit projection vector n p that is a vector for specifying a region for searching for the nearest neighbor point in the three-dimensional model component part 23A using the normal vector n c on the lower bottom surface of the model component part 23A is expressed by the following equation. Calculated according to (1).

Figure 2008112412
Figure 2008112412

ステップS22において、最近傍点探索領域特定部13は、図6に示すように、単位射影ベクトルnと角度の開始方向を示す角度開始ベクトルnとによって得られる角度θを以下の数式(2)によって算出する。 In step S22, as shown in FIG. 6, the nearest neighbor point search region specifying unit 13 sets the angle θ obtained by the unit projection vector n p and the angle start vector n v indicating the start direction of the angle to the following formula (2). Calculated by

Figure 2008112412
Figure 2008112412

なお、角度θは、正の値及び負の値の両方をとることが可能であり、以下の数式(3)において、zが0より大きければ正の値を、zが0以下であれば負の値をとる。   The angle θ can take both a positive value and a negative value. In the following formula (3), a positive value is obtained when z is greater than 0, and a negative value is obtained when z is 0 or less. Takes the value of

Figure 2008112412
Figure 2008112412

この図6において、θ(v)は、角度開始ベクトルnと頂点vを表す頂点ベクトルvとによって得られる角度とし、θ(vi+1)は、角度開始ベクトルnと頂点vi+1を表す頂点ベクトルvi+1とによって得られる角度とする。 In FIG. 6, theta (v i) is the angle obtained by the vertex vectors v i representing the angular starting vector n v and the vertex v i, theta (v i + 1), the angle starting vector n v and the vertex v i + 1 And an angle obtained by a vertex vector v i + 1 representing.

ステップS23において、最近傍点探索領域特定部13は、ステップS22にて算出された角度θに基づいて、3次元モデル構成部位23Aの表面において最近傍点の探索処理を行う領域を特定する。すなわち、最近傍点探索領域特定部13は、角度θがθ(v)<θ<θ(vi+1)を満たす場合、図7に示すように、下底面を6等分して得られた三角形vi+1と側面vi+1i+1’v’と上底面を6等分して得られた三角形v’c’vi+1’とからなる3次元モデル表面を3次元モデル構成部位23Aにおいて最近傍点の探索処理を行う領域とする。この3次元モデル表面において最近傍点の探索処理を行うための3次元ポイントが存在可能である領域は、図8で示すように、三角柱vi+1’c’vi+1’を拡大して得られる領域となる。 In step S23, the nearest point search area specifying unit 13 specifies an area for performing the nearest neighbor search process on the surface of the three-dimensional model constituent part 23A based on the angle θ calculated in step S22. That is, when the angle θ satisfies θ (v i ) <θ <θ (v i + 1 ), the nearest neighbor point search region specifying unit 13 obtains a triangle obtained by dividing the lower bottom surface into six equal parts as shown in FIG. A three-dimensional model surface composed of v i c 0 v i + 1 , side face v i v i + 1 v i + 1 'v i ', and triangle v i 'c 0 ' v i + 1 'obtained by dividing the upper base into six equal parts. It is assumed that the nearest neighbor search process is performed in the model component part 23A. Regions 3D points can exist for performing search processing nearest neighbor in the three-dimensional model surface, as shown in Figure 8, a triangular prism v i c 0 v i + 1 v i 'c 0' v i + 1 ' It becomes an area obtained by enlarging.

なお、本実施の形態において、3次元モデル構成部位の形状が例えば図9(A)に示すような正六角錘台、又は図9(B)に示すような正六角錘である場合、最近傍点の探索処理を行うための3次元モデル表面は、それぞれ図10(A)に示すような三角形vj+1と側面vj+1j+1’v’と三角形v’cj+1’とからなる3次元モデル表面、図10(B)に示すような三角形vk+1と側面v’vk+1とからなる3次元モデル表面となる。また、図10(A)、図10(B)に示す3次元モデル表面において最近傍点の探索処理を行うための3次元ポイントが存在可能である領域は、それぞれ図11(A)に示すような三角錐台を拡大した領域、図11(B)に示すような三角錐を拡大した領域となる。 In this embodiment, when the shape of the three-dimensional model component is, for example, a regular hexagonal pyramid as shown in FIG. 9A or a regular hexagonal pyramid as shown in FIG. The three-dimensional model surfaces for performing the search process are triangles v j c a v j + 1 , side surfaces v j v j + 1 v j + 1 'v j ' and triangles v j 'c a v as shown in FIG. j + 1 becomes "3-dimensional model surface consisting a, 10 a triangle as shown in (B) v k c b v k + 1 and the side surface v k c b 'v k + 1 Metropolitan 3-dimensional model surface made. In addition, regions where a 3D point for performing the nearest neighbor search process on the surface of the 3D model shown in FIGS. 10A and 10B can exist are as shown in FIG. 11A. An area in which the triangular pyramid is enlarged is an area in which the triangular pyramid is enlarged as shown in FIG.

ステップS24において、最近傍点探索部14は、3次元モデル構成部位23Aの下底面において最近傍点を探索する。このステップS24において、先ず、最近傍点探索部14は、3次元モデル構成部位23Aを下底面方向から見た際にベクトルpで示される3次元ポイントが下底面を6等分して得られた三角形vi+1の内部に存在するか否かを以下の数式(4)によって判断する。 In step S24, the nearest point search unit 14 searches for the nearest point on the lower bottom surface of the three-dimensional model component 23A. In this step S24, first, the nearest point searching unit 14 obtains a triangle obtained by dividing the lower bottom surface into six equal parts by the three-dimensional point indicated by the vector p when the three-dimensional model constituent part 23A is viewed from the lower bottom surface direction. It is determined by the following formula (4) whether or not it exists inside v i c 0 v i + 1 .

Figure 2008112412
Figure 2008112412

最近傍点探索部14は、この数式(4)において、0<inである場合は、ベクトルpで示される3次元ポイントが三角形vi+1の外部に存在すると判断し、以下の数式(5)及び数式(6)によって算出されるベクトルpで示される点を最近傍点とする。 The nearest neighbor search unit 14 determines that the three-dimensional point indicated by the vector p exists outside the triangle v i c 0 v i + 1 when 0 <in in this equation (4). 5) and equation (6) recently point indicated by the vector p c which is calculated by the neighbor.

Figure 2008112412
Figure 2008112412

そして、最近傍点探索部14は、3次元ポイントからこの最近傍点までの距離を算出し、この距離と最近傍点の3次元座標とを最近傍点出力部15に供給する。   The nearest point searching unit 14 calculates a distance from the three-dimensional point to the nearest point, and supplies the distance and the three-dimensional coordinates of the nearest point to the nearest point output unit 15.

一方、この数式(4)においてin<0である場合、最近傍点探索部14は、ベクトルpで示される3次元ポイントが三角形vi+1の内部に存在すると判断し、以下の数式(7)及び数式(8)によって算出されるベクトルpで示される点を最近傍点とする。なお、このベクトルpで示される最近傍点は、3次元ポイントから3次元モデル構成部位23Aの下底面に下ろした垂線と下底面との交点に位置する。 On the other hand, if it is in <0 In this equation (4), nearest neighbor searching unit 14 determines that the three-dimensional point indicated by the vector p is present inside the triangle v i c 0 v i + 1 , the following equation ( The point indicated by the vector p j calculated by 7) and Equation (8) is set as the nearest point. Note that the nearest point indicated by the vector p j is located at the intersection of the perpendicular line drawn from the three-dimensional point to the lower bottom surface of the three-dimensional model constituent part 23A and the lower bottom surface.

Figure 2008112412
Figure 2008112412

そして、最近傍点探索部14は、3次元ポイントからこの最近傍点までの距離を算出し、この距離と最近傍点の3次元座標とを最近傍点出力部15に供給する。   The nearest point searching unit 14 calculates a distance from the three-dimensional point to the nearest point, and supplies the distance and the three-dimensional coordinates of the nearest point to the nearest point output unit 15.

ステップS25において、最近傍点探索部14は、3次元モデル構成部位23Aの側面において最近傍点を探索する。このステップS25において、先ず、最近傍点探索部14は、3次元モデル構成部位23Aを側面方向から見た際にベクトルpで示される3次元ポイントが側面vi+1i+1’v’の内部に存在するか否かを以下の数式(9)〜数式(12)によって判断する。 In step S25, the nearest point search unit 14 searches for the nearest point on the side surface of the three-dimensional model component 23A. In this step S25, first, the nearest neighbor searching unit 14 finds that the three-dimensional point indicated by the vector p when the three-dimensional model component part 23A is viewed from the side direction is the inside of the side surface v i v i + 1 v i + 1 'v i '. Is determined by the following formulas (9) to (12).

Figure 2008112412
Figure 2008112412

最近傍点探索部14は、0<in,0<in,0<in,0<inの何れである場合は、ベクトルpで示される3次元ポイントが側面vi+1i+1’v’の外部に存在すると判断する。 The nearest neighbor searching unit 14 determines that the three-dimensional point indicated by the vector p is the side face v i v i + 1 v i + 1 ′ when 0 <in 1 , 0 <in 2 , 0 <in 3 , or 0 <in 4. It is determined that it exists outside v i ′.

すなわち、数式(9)において0<inである場合、最近傍点探索部14は、上記数式(6)によって算出されるベクトルpで示される点を最近傍点とする。 That is, if it is 0 <in 1 In Equation (9), nearest neighbor search unit 14, and a point indicated by the vector p c which is calculated by the equation (6) nearest neighbor.

また、数式(10)において0<inである場合、最近傍点探索部14は、以下の数式(13)及び数式(14)によって算出されるベクトルpで示される点を最近傍点とする。 Also, if it is 0 <in 2 in equation (10), nearest neighbor searching unit 14, the points represented by the vector p c calculated by the following equation (13) and Equation (14) recently a neighbor.

Figure 2008112412
Figure 2008112412

また、数式(11)において0<inである場合、最近傍点探索部14は、以下の数式(15)及び数式(16)によって算出されるベクトルpで示される点を最近傍点とする。 Also, if it is 0 <in 3 In Equation (11), nearest neighbor searching unit 14, the points represented by the vector p c calculated by the following equation (15) and Equation (16) recently a neighbor.

Figure 2008112412
Figure 2008112412

また、数式(12)において0<inである場合、最近傍点探索部14は、以下の数式(17)及び数式(18)によって算出されるベクトルpで示される点を最近傍点とする。 Also, if it is 0 <in 4 in Equation (12), nearest neighbor searching unit 14, the points represented by the vector p c calculated by the following equation (17) and Equation (18) recently a neighbor.

Figure 2008112412
Figure 2008112412

一方、in<0且つin<0且つin<0且つin<0である場合、最近傍点探索部14は、ベクトルpで示される3次元ポイントが側面vi+1i+1’v’の内部に存在すると判断し、以下の数式(19)及び数式(20)によって算出されるベクトルpで示される点を最近傍点とする。なお、このベクトルpで示される最近傍点は、3次元ポイントから3次元モデル構成部位23Aの側面に下ろした垂線と側面との交点に位置する。 On the other hand, when in 1 <0 and in 2 <0 and in 3 <0 and in 4 <0, the nearest neighbor search unit 14 determines that the three-dimensional point indicated by the vector p is the side surface v i v i + 1 v i + 1 'v. It is determined that it exists inside i ′, and the point indicated by the vector p j calculated by the following equations (19) and (20) is set as the nearest neighbor point. Note that the nearest point indicated by the vector p j is located at the intersection of the perpendicular line and the side surface, which extends from the three-dimensional point to the side surface of the three-dimensional model constituent part 23A.

Figure 2008112412
Figure 2008112412

そして、最近傍点探索部14は、3次元ポイントからこの最近傍点までの距離を算出し、この距離と最近傍点の3次元座標とを最近傍点出力部15に供給する。   The nearest point searching unit 14 calculates a distance from the three-dimensional point to the nearest point, and supplies the distance and the three-dimensional coordinates of the nearest point to the nearest point output unit 15.

ステップS26において、最近傍点探索部14は、3次元モデル23の形状が正六角錘等の錐体であるか否かを判断する。このステップS26において、3次元モデル23の形状が何れの錐体である場合はステップS28に進み、錐体でない場合はステップS27に進む。   In step S26, the nearest neighbor point search unit 14 determines whether or not the shape of the three-dimensional model 23 is a cone such as a regular hexagonal pyramid. In step S26, if the shape of the three-dimensional model 23 is any cone, the process proceeds to step S28, and if not, the process proceeds to step S27.

3次元モデルの形状が錐体でない場合、ステップS27において、最近傍点探索部14は、3次元モデル構成部位23Aの上底面において最近傍点を探索する。このステップS27において、先ず、最近傍点探索部14は、3次元モデル構成部位23Aを上底面方向から見た際にベクトルpで示される3次元ポイントが上底面を6等分して得られた三角形v’ci+1’の内部に存在するか否かを以下の数式(21)によって判断する。 When the shape of the three-dimensional model is not a cone, in step S27, the nearest point search unit 14 searches for the nearest point on the upper bottom surface of the three-dimensional model component 23A. In this step S27, first, the nearest point searching unit 14 obtains a triangle obtained by dividing the upper bottom surface into six equal parts by the three-dimensional point indicated by the vector p when the three-dimensional model constituent part 23A is viewed from the upper bottom surface direction. It is determined by the following formula (21) whether or not it exists inside v i 'c 0 v i + 1 '.

Figure 2008112412
Figure 2008112412

最近傍点探索部14は、数式(21)において、in<0である場合は、ベクトルpで示される3次元ポイントが三角形v’ci+1’の内部に存在すると判断し、以下の数式(22)及び数式(23)によって算出されるベクトルpで示される点を最近傍点とする。 The nearest neighbor search unit 14 determines that the three-dimensional point indicated by the vector p exists inside the triangle v i 'c 0 v i + 1 ' if in <0 in Equation (21), The point indicated by the vector p j calculated by (22) and Equation (23) is set as the nearest point.

Figure 2008112412
Figure 2008112412

一方、数式(21)において0<inである場合、最近傍点探索部14は、ベクトルpで示される3次元ポイントが三角形v’ci+1’の外部に存在すると判断し、上記数式(13)及び数式(14)によって算出されるベクトルpで示される点を最近傍点とする。 On the other hand, when 0 <in in Equation (21), the nearest neighbor point search unit 14 determines that the three-dimensional point indicated by the vector p exists outside the triangle v i 'c 0 v i + 1 '. 13) and equation (14) recently point indicated by the vector p c which is calculated by the neighbor.

そして、最近傍点探索部14は、3次元ポイントからこの最近傍点までの距離を算出し、この距離と最近傍点の3次元座標とを最近傍点出力部15に供給する。   The nearest point searching unit 14 calculates a distance from the three-dimensional point to the nearest point, and supplies the distance and the three-dimensional coordinates of the nearest point to the nearest point output unit 15.

3次元モデル構成部位23Aの形状が錐体である場合、ステップS28において、最近傍点探索部14は、錐体の頂点を最近傍点とし、3次元ポイントからこの最近傍点までの距離を算出し、この距離と最近傍点の3次元座標とを最近傍点出力部15に供給する。   When the shape of the three-dimensional model component 23A is a cone, in step S28, the nearest neighbor point search unit 14 calculates the distance from the three-dimensional point to the nearest point by setting the vertex of the cone as the nearest point. The distance and the three-dimensional coordinates of the nearest point are supplied to the nearest point output unit 15.

ステップS29において、最近傍点出力部15は、ステップS24、ステップS25、及び、ステップS27又はステップS28で算出された最近傍点の内、3次元ポイントから最近傍点までの距離が最も短い最近傍点を変換行列算出部16に出力する。   In step S29, the nearest neighbor point output unit 15 converts the nearest neighbor point having the shortest distance from the three-dimensional point to the nearest neighbor point among the nearest neighbor points calculated in step S24, step S25, and step S27 or step S28. The result is output to the calculation unit 16.

図3に戻って、ステップS3において、変換行列算出部16は、最近傍点出力部15より出力された最近傍点から対応する3次元ポイントまでの距離における誤差関数を最小化する変換行列を算出する。   Returning to FIG. 3, in step S <b> 3, the transformation matrix calculation unit 16 calculates a transformation matrix that minimizes the error function in the distance from the nearest point output from the nearest point output unit 15 to the corresponding three-dimensional point.

ステップS4において、変換行列算出部16は、最近傍点出力部15より出力された最近傍点から対応する3次元ポイントまでの距離における誤差関数が所定の閾値より小さいか否かを判断する。このステップS4において、誤差関数が所定の閾値より小さい場合はステップS5に進む。一方、このステップS4において、誤差関数が所定の閾値以上である場合はステップS2に戻り、誤差関数が所定の閾値よりも小さくなるまでステップS2〜ステップS4の処理動作を繰り返す。このようなステップS2〜ステップS4の処理動作によって3次元ポイントと最近傍点との相対位置が特定される。   In step S4, the transformation matrix calculation unit 16 determines whether or not the error function in the distance from the nearest point output from the nearest point output unit 15 to the corresponding three-dimensional point is smaller than a predetermined threshold value. In step S4, when the error function is smaller than the predetermined threshold value, the process proceeds to step S5. On the other hand, if the error function is greater than or equal to the predetermined threshold value in step S4, the process returns to step S2, and the processing operations in steps S2 to S4 are repeated until the error function becomes smaller than the predetermined threshold value. The relative position between the three-dimensional point and the nearest point is specified by the processing operations in steps S2 to S4.

ステップS5において、3次元モデル移動処理部17は、変換行列算出部15によって特定された3次元ポイントと最近傍点との相対位置に基づいて3次元ポイントを対応する最近傍点の位置に射影し、フレーム毎に複数の3次元モデル構成部位23Aからなる3次元モデル23を移動させる。   In step S5, the three-dimensional model movement processing unit 17 projects the three-dimensional point to the position of the corresponding nearest point based on the relative position between the three-dimensional point specified by the transformation matrix calculation unit 15 and the nearest point, The 3D model 23 composed of a plurality of 3D model components 23A is moved every time.

以下の表1は、正六角柱の3次元モデル構成部位を円柱に近似する際に3次元モデル構成部位の表面で行われる最近傍点探索処理に要する時間と、正五十角柱の3次元モデル構成部位を円柱に近似する際に3次元モデル構成部位の表面で行われる最近傍点探索処理に要する時間とを、従来より汎用的に行われているOctree Subdivisionによる最近傍点探索処理と、本実施の形態における最近傍点探索処理とで比較した結果を示すものである。   Table 1 below shows the time required for the nearest point search process performed on the surface of the three-dimensional model constituent part when approximating the three-dimensional model constituent part of the regular hexagonal column to a cylinder, and the three-dimensional model constituent part of the regular pentagonal prism The time required for the nearest neighbor search process performed on the surface of the three-dimensional model component when approximating a cylinder to the nearest neighbor search process by the conventional Octtree Subdivision and the present embodiment The result compared with the nearest neighbor search process is shown.

Figure 2008112412
Figure 2008112412

表1からもわかるように、データ処理装置1において、最近傍点探索処理に要する時間は、Octree Subdivisionによる最近傍点探索処理に要する時間に対して、3次元モデル構成部位の形状が正六角柱である場合には約0.062倍、3次元モデル構成部位の形状が正五十角柱である場合には約0.038倍となった。   As can be seen from Table 1, in the data processing apparatus 1, the time required for the nearest neighbor search process is the case where the shape of the three-dimensional model component is a regular hexagonal cylinder with respect to the time required for the nearest neighbor search process by the Octtree Subdivision Was about 0.062 times, and when the shape of the three-dimensional model constituent part was a regular pentagonal prism, it was about 0.038 times.

また、表1からもわかるように、正五十角柱の3次元モデル構成部位を円柱に近似する際に行われる最近傍点探索処理に要する時間は、正六角柱の3次元モデル構成部位を円柱に近似する際に行われる最近傍点探索処理に要する時間に対して、Octree Subdivisionによる最近傍点探索処理では約1.693倍であるが、データ処理装置1における最近傍点探索処理では約1.033倍となった。   In addition, as can be seen from Table 1, the time required for the nearest point search processing performed when approximating a three-dimensional model component of a regular pentagonal column to a cylinder approximates the three-dimensional model component of a regular hexagonal column to a cylinder. The nearest neighbor point search process by the Octtree Subdivision is about 1.693 times the time required for the nearest neighbor point search process to be performed, but the nearest neighbor point search process in the data processing apparatus 1 is about 1.033 times. It was.

すなわち、データ処理装置1による最近傍点探索処理では、従来より汎用的に行われているOctree Subdivisionによる最近傍点探索処理に比べ、大幅に処理時間が短縮した。また、データ処理装置1による最近傍点探索処理では、3次元モデル構成部位の底面の形状が正n角柱(n=3,4,5,・・・・・)である場合に、nの値を大幅に増やしても最近傍点探索処理に要する時間の増加率がOctree Subdivisionによる最近傍点探索処理に要する時間の増加率に比べて小さいままであった。   That is, in the nearest neighbor search process by the data processing device 1, the processing time is significantly shortened as compared with the nearest neighbor search process by the Octtree Subdivision which has been conventionally performed. Further, in the nearest point search process by the data processing device 1, when the shape of the bottom surface of the three-dimensional model component is a regular n prism (n = 3, 4, 5,...), The value of n is set. Even if it is greatly increased, the rate of increase in time required for nearest neighbor search processing remains small compared with the rate of increase in time required for nearest neighbor search by Octree Subdivision.

以上のように、本発明を適用した一実施の形態におけるデータ処理装置1では、対象物体の3次元表面に基づいて3次元モデルを構築する際に行われる最近傍点の探索処理において、3次元モデル表面における最近傍点の探索領域を所定の領域に特定するため、最近傍点の探索処理を従来に比べて高速化することが可能となる。   As described above, in the data processing apparatus 1 according to the embodiment to which the present invention is applied, the three-dimensional model is searched in the nearest point search process performed when the three-dimensional model is constructed based on the three-dimensional surface of the target object. Since the search area for the nearest point on the surface is specified as a predetermined area, it is possible to speed up the search process for the nearest point compared to the conventional technique.

また、データ処理装置1では、複雑な形状の3次元モデルにおいても単純な形状の3次元モデルに比べて最近傍点探索処理における計算量が大幅に増加することはなく、従来に比べて処理の高速化が可能となる。   Further, in the data processing apparatus 1, the calculation amount in the nearest point search process is not significantly increased even in the complicated shape of the three-dimensional model compared to the simple shape of the three-dimensional model, and the processing speed is higher than the conventional one. Can be realized.

また、本発明を適用した一実施の形態におけるデータ処理装置1は、産業上利用される種々の装置に適用することが可能である。例えば、データ処理装置1は、対象物体に装着するマーカーとこれを検出するトラッカーを組み合わせて対象物体の動きを記録するモーションキャプチャ装置に適用することが可能である。また、例えば、データ処理装置1は、X−ray等によって計測された骨の3次元表面を、形状が何れの多角柱である3次元モデルにモデリングする医療装置に適用することが可能である。   In addition, the data processing apparatus 1 according to an embodiment to which the present invention is applied can be applied to various apparatuses used in the industry. For example, the data processing device 1 can be applied to a motion capture device that records a movement of a target object by combining a marker attached to the target object and a tracker that detects the marker. Further, for example, the data processing device 1 can be applied to a medical device that models a three-dimensional surface of a bone measured by X-ray or the like into a three-dimensional model whose shape is any polygonal column.

なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。   It should be noted that the present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the scope of the present invention.

本発明を適用した一実施形態におけるデータ処理装置の構成を示す図である。It is a figure which shows the structure of the data processor in one Embodiment to which this invention is applied. 本発明を適用した一実施形態におけるデータ処理装置の処理工程の概要を示す図である。It is a figure which shows the outline | summary of the process process of the data processor in one Embodiment to which this invention is applied. 本発明を適用した一実施形態におけるデータ処理装置の処理動作を説明するためのフローチャートである。It is a flowchart for demonstrating the processing operation of the data processor in one Embodiment to which this invention is applied. 本発明を適用した一実施形態におけるデータ処理装置の最近傍点探索処理を説明するためのフローチャートである。It is a flowchart for demonstrating the nearest point search process of the data processor in one Embodiment to which this invention is applied. 3次元ポイントから3次元モデル構成部位の下底面へ射影する様子を示す図である。It is a figure which shows a mode that it projects on the lower bottom face of a three-dimensional model structure site | part from a three-dimensional point. 単位射影ベクトルと角度開始ベクトルとにより得られる角度の算出処理を説明するための図である。It is a figure for demonstrating the calculation process of the angle obtained by a unit projection vector and an angle start vector. 最近傍点の存在可能な領域を示す図である。It is a figure which shows the area | region where a nearest neighbor point can exist. 3次元ポイントの存在可能な領域を示す図である。It is a figure which shows the area | region in which a three-dimensional point can exist. 3次元モデル構成部位の形状の例を示す図である。It is a figure which shows the example of the shape of a three-dimensional model structure site | part. 最近傍点の存在可能な領域を示す図である。It is a figure which shows the area | region where a nearest neighbor point can exist. 3次元ポイントの存在可能な領域を示す図である。It is a figure which shows the area | region in which a three-dimensional point can exist.

符号の説明Explanation of symbols

1 データ処理装置、11R,11L カメラ、12 3次元表面生成部、13 最近傍点探索領域特定部、14 最近傍点探索部、15 最近傍点出力部、16 変換行列算出部、17 3次元モデル移動処理部、18 記憶部   DESCRIPTION OF SYMBOLS 1 Data processing apparatus, 11R, 11L camera, 12 3D surface production | generation part, 13 Nearest neighbor search area specific | specification part, 14 Nearest neighbor search part, 15 Nearest neighbor output part, 16 Transformation matrix calculation part, 17 3D model movement process part , 18 Memory unit

Claims (6)

多角形の底面を有する構成部位からなる3次元モデルに対象物体の3次元位置を射影するデータ処理装置において、
上記対象物体の3次元表面を生成する3次元表面生成手段と、
上記構成部位の表面において、上記対象物体の3次元表面における所定の位置を示す3次元ポイントから上記構成部位の表面までの距離が最短となる最近傍点を探索する領域を特定する最近傍点探索領域特定手段と、
上記最近傍点探索領域特定手段によって特定された領域を構成する各平面において、それぞれ上記最近傍点を探索する最近傍点探索手段と、
上記最近傍点探索手段によって探索された複数の上記最近傍点の内、上記3次元ポイントからの距離が最も短い最近傍点を出力する最近傍点出力手段と、
上記最近傍点出力手段より出力された最近傍点から当該最近傍点に対応する上記3次元ポイントまでの距離における誤差関数を最小化する変換行列を算出することにより上記最近傍点と上記3次元ポイントとの相対位置を特定する変換行列算出手段と、
上記変換行列算出手段によって特定された上記最近傍点と上記3次元ポイントとの相対位置に基づいて上記3次元ポイントを当該3次元ポイントに対応する最近傍点の位置に射影し、上記3次元モデルを移動させる3次元モデル移動処理手段と
を備えることを特徴とするデータ処理装置。
In a data processing apparatus for projecting a three-dimensional position of a target object onto a three-dimensional model composed of components having a polygonal bottom surface,
3D surface generation means for generating a 3D surface of the target object;
On the surface of the component part, a nearest neighbor point search region specification that specifies a region for searching for the nearest point having the shortest distance from the three-dimensional point indicating a predetermined position on the three-dimensional surface of the target object to the surface of the component part Means,
In each plane constituting the area specified by the nearest neighbor search area specifying means, nearest neighbor point searching means for searching for the nearest neighbor point, and
A nearest point output means for outputting a nearest point having the shortest distance from the three-dimensional point among the plurality of nearest points searched by the nearest point search means;
By calculating a transformation matrix that minimizes an error function in the distance from the nearest point output from the nearest point output means to the three-dimensional point corresponding to the nearest point, the relative between the nearest point and the three-dimensional point is calculated. Transformation matrix calculation means for specifying a position;
Based on the relative position between the nearest point specified by the transformation matrix calculation means and the three-dimensional point, the three-dimensional point is projected to the position of the nearest point corresponding to the three-dimensional point, and the three-dimensional model is moved. And a three-dimensional model movement processing means.
上記3次元モデルを構成する構成部位の形状は、多角柱、多角錘台、又は多角錘であることを特徴とする請求項1記載のデータ処理装置。   The data processing apparatus according to claim 1, wherein the shape of the constituent parts constituting the three-dimensional model is a polygonal column, a polygonal pyramid, or a polygonal pyramid. 上記最近傍点探索領域特定手段は、上記3次元モデルを構成する構成部位の底面において、上記3次元ポイントを示すベクトルと当該底面の中心点を示すベクトルと当該底面の法線ベクトルとによって算出されるベクトルに基づいて、上記最近傍点を探索する領域を特定することを特徴とする請求項1記載のデータ処理装置。   The nearest-neighbor point search area specifying means is calculated from a vector indicating the three-dimensional point, a vector indicating the center point of the bottom surface, and a normal vector of the bottom surface on the bottom surface of the constituent part constituting the three-dimensional model. 2. The data processing apparatus according to claim 1, wherein a region for searching for the nearest point is specified based on a vector. 上記変換行列算出手段は、上記誤差関数が所定の閾値より小さくなるまで繰り返し計算を行うことにより上記最近傍点と上記3次元ポイントとの相対位置を特定することを特徴とする請求項1記載のデータ処理装置。   2. The data according to claim 1, wherein the transformation matrix calculation means specifies a relative position between the nearest neighbor point and the three-dimensional point by repeatedly calculating until the error function becomes smaller than a predetermined threshold value. Processing equipment. 多角形の底面を有する構成部位からなる3次元モデルに対象物体の3次元位置を射影するデータ処理方法において、
上記対象物体の3次元表面を生成する3次元表面生成工程と、
上記構成部位の表面において、上記対象物体の3次元表面における所定の位置を示す3次元ポイントから上記構成部位の表面までの距離が最短となる最近傍点を探索する領域を特定する最近傍点探索領域特定工程と、
上記最近傍点探索領域特定工程にて特定された領域を構成する各平面において、それぞれ上記最近傍点を探索する最近傍点探索工程と、
上記最近傍点探索工程にて探索された複数の上記最近傍点の内、上記3次元ポイントからの距離が最も短い最近傍点を出力する最近傍点出力工程と、
上記最近傍点出力工程にて出力された最近傍点から当該最近傍点に対応する上記3次元ポイントまでの距離における誤差関数を最小化する変換行列を算出することにより上記最近傍点と上記3次元ポイントとの相対位置を特定する変換行列算出工程と、
上記変換行列算出工程にて特定された上記最近傍点と上記3次元ポイントとの相対位置に基づいて上記3次元ポイントを当該3次元ポイントに対応する最近傍点の位置に射影し、上記3次元モデルを移動させる3次元モデル移動処理工程と
を有することを特徴とするデータ処理方法。
In a data processing method for projecting a three-dimensional position of a target object onto a three-dimensional model composed of components having a polygonal bottom surface,
A three-dimensional surface generation step of generating a three-dimensional surface of the target object;
On the surface of the component part, a nearest neighbor point search region specification that specifies a region for searching for the nearest point having the shortest distance from the three-dimensional point indicating a predetermined position on the three-dimensional surface of the target object to the surface of the component part Process,
In each plane constituting the area specified in the nearest point search area specifying step, the nearest point searching step for searching for the nearest point, respectively,
A nearest point output step of outputting a nearest point having the shortest distance from the three-dimensional point among the plurality of nearest points searched in the nearest point search step;
By calculating a transformation matrix that minimizes an error function in the distance from the nearest point output in the nearest point output step to the three-dimensional point corresponding to the nearest point, the nearest point and the three-dimensional point are calculated. A transformation matrix calculation step for specifying a relative position;
Based on the relative position between the nearest point specified in the transformation matrix calculation step and the three-dimensional point, the three-dimensional point is projected to the position of the nearest point corresponding to the three-dimensional point, and the three-dimensional model is A data processing method comprising: moving a three-dimensional model moving process step.
多角形の底面を有する構成部位からなる3次元モデルに対象物体の3次元位置を射影するデータ処理をコンピュータに実行させるプログラムであって、
上記対象物体の3次元表面を生成する3次元表面生成工程と、
上記構成部位の表面において、上記対象物体の3次元表面における所定の位置を示す3次元ポイントから上記構成部位の表面までの距離が最短となる最近傍点を探索する領域を特定する最近傍点探索領域特定工程と、
上記最近傍点探索領域特定工程にて特定された領域を構成する各平面において、それぞれ上記最近傍点を探索する最近傍点探索工程と、
上記最近傍点探索工程にて探索された複数の上記最近傍点の内、上記3次元ポイントからの距離が最も短い最近傍点を出力する最近傍点出力工程と、
上記最近傍点出力工程にて出力された最近傍点から当該最近傍点に対応する上記3次元ポイントまでの距離における誤差関数を最小化する変換行列を算出することにより上記最近傍点と上記3次元ポイントとの相対位置を特定する変換行列算出工程と、
上記変換行列算出工程にて特定された上記最近傍点と上記3次元ポイントとの相対位置に基づいて上記3次元ポイントを当該3次元ポイントに対応する最近傍点の位置に射影し、上記3次元モデルを移動させる3次元モデル移動処理工程と
を有することを特徴とするプログラム。
A program for causing a computer to execute data processing for projecting a three-dimensional position of a target object onto a three-dimensional model composed of components having a polygonal bottom surface,
A three-dimensional surface generation step of generating a three-dimensional surface of the target object;
On the surface of the component part, a nearest neighbor point search region specification that specifies a region for searching for the nearest point having the shortest distance from the three-dimensional point indicating a predetermined position on the three-dimensional surface of the target object to the surface of the component part Process,
In each plane constituting the area specified in the nearest point search area specifying step, the nearest point searching step for searching for the nearest point, respectively,
A nearest point output step of outputting a nearest point having the shortest distance from the three-dimensional point among the plurality of nearest points searched in the nearest point search step;
By calculating a transformation matrix that minimizes an error function in the distance from the nearest point output in the nearest point output step to the three-dimensional point corresponding to the nearest point, the nearest point and the three-dimensional point are calculated. A transformation matrix calculation step for specifying a relative position;
Based on the relative position between the nearest point specified in the transformation matrix calculation step and the three-dimensional point, the three-dimensional point is projected to the position of the nearest point corresponding to the three-dimensional point, and the three-dimensional model is A program characterized by comprising a three-dimensional model movement processing step for moving.
JP2006296464A 2006-10-31 2006-10-31 Data processing device, data processing method, and program Withdrawn JP2008112412A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006296464A JP2008112412A (en) 2006-10-31 2006-10-31 Data processing device, data processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006296464A JP2008112412A (en) 2006-10-31 2006-10-31 Data processing device, data processing method, and program

Publications (1)

Publication Number Publication Date
JP2008112412A true JP2008112412A (en) 2008-05-15

Family

ID=39444875

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006296464A Withdrawn JP2008112412A (en) 2006-10-31 2006-10-31 Data processing device, data processing method, and program

Country Status (1)

Country Link
JP (1) JP2008112412A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112559308A (en) * 2020-12-11 2021-03-26 广东电力通信科技有限公司 Statistical model-based root alarm analysis method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112559308A (en) * 2020-12-11 2021-03-26 广东电力通信科技有限公司 Statistical model-based root alarm analysis method

Similar Documents

Publication Publication Date Title
JP6323993B2 (en) Information processing apparatus, information processing method, and computer program
JP2020042476A (en) Method and apparatus for acquiring joint position, and method and apparatus for acquiring motion
JP2019534510A5 (en)
US10157478B2 (en) Enabling use of three-dimensional locations of features with two-dimensional images
JP2008123019A (en) Three-dimensional surface creating method
JP2006249618A (en) Virtual try-on device
JP2011192214A (en) Geometric feature extracting device, geometric feature extraction method and program, three-dimensional measuring device and object recognition device
JP2009017480A (en) Camera calibration device and program thereof
US8793108B2 (en) Three-dimensional model determination from two-dimensional sketch with two-dimensional refinement
JP2007257324A (en) Face model creating system
JP6319804B2 (en) Projection image generation apparatus, projection image generation method, and projection image generation program
JP2011215082A (en) Method, apparatus and program for determination of imaging parameter
JP2012185772A (en) Method and program for enhancing accuracy of composited picture quality of free viewpoint picture using non-fixed zoom camera
JP4834524B2 (en) Three-dimensional shape measuring method and apparatus
JP2008112412A (en) Data processing device, data processing method, and program
US11922576B2 (en) System and method for mapping the skin
JP2006059165A (en) Three-dimensional modeling device, geometric pattern, three-dimensional modeling data generating method, three-dimensional modeling program and recording medium
JPH0814860A (en) Model creating device
JP6315542B2 (en) Image generating apparatus and image generating method
JP2010217980A (en) Information processing apparatus and method, and program
JP2004170277A (en) 3-dimensional measurement method, 3-dimensional measurement system, image processing apparatus, and computer program
JP2005063129A (en) Method, device and program for obtaining texture image from time-series image, and recording media for recording this program
JP2002350131A (en) Calibration method for and apparatus of multiocular camera and computer program
JP5991730B2 (en) Measuring device, measuring method and program
JP2013254300A (en) Image processing method

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20100105