[go: up one dir, main page]

JP2002366934A - Method and apparatus for generating three-dimensional shape data and computer program - Google Patents

Method and apparatus for generating three-dimensional shape data and computer program

Info

Publication number
JP2002366934A
JP2002366934A JP2001177582A JP2001177582A JP2002366934A JP 2002366934 A JP2002366934 A JP 2002366934A JP 2001177582 A JP2001177582 A JP 2001177582A JP 2001177582 A JP2001177582 A JP 2001177582A JP 2002366934 A JP2002366934 A JP 2002366934A
Authority
JP
Japan
Prior art keywords
data
volume data
volume
dimensional
attribute value
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.)
Granted
Application number
JP2001177582A
Other languages
Japanese (ja)
Other versions
JP4904638B2 (en
Inventor
Koichi Fujiwara
浩一 藤原
Koji Fujiwara
浩次 藤原
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.)
Minolta Co Ltd
Original Assignee
Minolta Co Ltd
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 Minolta Co Ltd filed Critical Minolta Co Ltd
Priority to JP2001177582A priority Critical patent/JP4904638B2/en
Priority to US10/166,261 priority patent/US6914601B2/en
Publication of JP2002366934A publication Critical patent/JP2002366934A/en
Application granted granted Critical
Publication of JP4904638B2 publication Critical patent/JP4904638B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【課題】凹部領域や低反射率の部分があった場合でも、
できるだけ少ないメモリ容量で且つ少ない演算時間で正
確に3次元形状を復元すること。 【解決手段】物体についての3次元形状データを生成す
る方法であって、物体についての視点の異なる複数の画
像からシルエット法を用いてボリュームデータに変換す
ることによって第1のボリュームデータを生成する第1
のステップ、物体について3次元計測によって得られた
3次元データをボリュームデータに変換することによっ
て第2のボリュームデータを生成する第2のステップ、
第1のボリュームデータと第2のボリュームデータとを
統合して1つのボリュームデータとする第3のステップ
を有してなる。
(57) [Summary] [Problem] Even if there is a concave area or a part with low reflectance,
To accurately restore a three-dimensional shape with as little memory capacity as possible and in a short calculation time. A method of generating three-dimensional shape data of an object, wherein the first volume data is generated by converting a plurality of images of the object from different viewpoints into volume data using a silhouette method. 1
A second step of generating second volume data by converting three-dimensional data obtained by three-dimensional measurement on the object into volume data;
The method includes a third step of integrating the first volume data and the second volume data into one volume data.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、3次元形状データ
の生成方法および装置並びにコンピュータプログラムに
関する。
The present invention relates to a method and an apparatus for generating three-dimensional shape data, and a computer program.

【0002】[0002]

【従来の技術】従来より、物体の3次元形状データを生
成する方法の1つとして、シルエット法(Shape From S
ilhouette )が知られている。
2. Description of the Related Art Conventionally, as one of methods for generating three-dimensional shape data of an object, a silhouette method (Shape From S
Ilhouette) is known.

【0003】シルエット法は、物体を異なる視点から撮
影(または撮像)して得られた複数の画像から、当該物
体の3次元形状を復元する。つまり、シルエット法で
は、物体を複数の視線方法から撮影した画像に基づい
て、それぞれの視線方向から見た物体の形状を反映する
物体存在領域を3次元画像空間内のボクセルの集合とし
て記述する。そして、すべての方向から見た物体存在領
域内のボクセルの集合をその3次元空間内の物体として
求める。
In the silhouette method, a three-dimensional shape of an object is restored from a plurality of images obtained by photographing (or photographing) the object from different viewpoints. That is, in the silhouette method, based on images obtained by photographing the object from a plurality of line-of-sight methods, an object existence region reflecting the shape of the object as viewed from each line-of-sight direction is described as a set of voxels in a three-dimensional image space. Then, a set of voxels in the object existing area viewed from all directions is obtained as an object in the three-dimensional space.

【0004】[0004]

【発明が解決しようとする課題】しかし、シルエット法
では、物体の窪んだ部分または凹んだ部分がシルエット
画像として表れないため、そのような凹部領域の形状を
復元することができない。
However, in the silhouette method, since the depressed portion or the depressed portion of the object does not appear as a silhouette image, the shape of such a depressed region cannot be restored.

【0005】他方、物体の3次元形状を復元する他の方
法として、光切断法などにより非接触で物体を計測する
レンジセンサ(3次元計測装置)を用いる方法がある。
しかし、レンジセンサを用いた場合には、物体の表面の
反射率が極めて低い場合にデータが欠落してしまい、そ
の部分の3次元形状を復元できないという問題点があ
る。
On the other hand, as another method for restoring the three-dimensional shape of an object, there is a method using a range sensor (three-dimensional measuring device) for measuring an object in a non-contact manner by a light cutting method or the like.
However, when the range sensor is used, data is lost when the reflectance of the surface of the object is extremely low, and there is a problem that the three-dimensional shape of that part cannot be restored.

【0006】本発明は、上述の問題に鑑みてなされたも
ので、凹部領域や低反射率の部分があった場合でも、で
きるだけ少ないメモリ容量で且つ少ない演算時間で正確
に3次元形状を復元することを目的とする。
SUMMARY OF THE INVENTION The present invention has been made in view of the above-mentioned problem, and even when there is a concave area or a part having a low reflectance, a three-dimensional shape can be accurately restored with as little memory capacity as possible and in a short calculation time. The purpose is to:

【0007】[0007]

【課題を解決するための手段】本発明の1つの形態によ
る方法では、物体についての3次元形状データを生成す
る方法であって、前記物体についての視点の異なる複数
の画像からシルエット法を用いてボリュームデータに変
換することによって第1のボリュームデータを生成する
第1のステップ、前記物体について3次元計測によって
得られた3次元データをボリュームデータに変換するこ
とによって第2のボリュームデータを生成する第2のス
テップ、前記第1のボリュームデータと第2のボリュー
ムデータとを統合して1つのボリュームデータとする第
3のステップを有してなる。
According to one aspect of the present invention, there is provided a method for generating three-dimensional shape data of an object, the method comprising using a silhouette method from a plurality of images of the object with different viewpoints. A first step of generating first volume data by converting to volume data, and a second step of generating second volume data by converting three-dimensional data obtained by three-dimensional measurement of the object to volume data. And a third step of integrating the first volume data and the second volume data into one volume data.

【0008】好ましくは、第1のステップにおいて、シ
ルエット法を用いてボリュームデータに変換するに際
し、(a) ボリュームを表現する座標系内の離散的な
各座標位置において、前記物体の画像の輪郭と当該画像
の視点とにより定まる視体積の境界までの距離に応じた
値を求めるステップ、(b) 各座標位置について、前
記物体の複数の画像について求めた複数の値に基づいて
物体表面からの距離に応じた値を決定し、各座標位置に
対応付けて保持するステップを実行する。
Preferably, in the first step, when converting into volume data using the silhouette method, (a) at each discrete coordinate position in the coordinate system expressing the volume, the contour of the image of the object is Obtaining a value corresponding to a distance to a boundary of a viewing volume determined by a viewpoint of the image; and (b) for each coordinate position, a distance from an object surface based on a plurality of values obtained for a plurality of images of the object. Is determined, and a step of holding the value in association with each coordinate position is executed.

【0009】また、第2のステップにおいて、3次元デ
ータをボリュームデータに変換するに際し、(a) ボ
リュームを表現する座標系内の離散的な各座標位置にお
いて、前記物体の3次元データで表される物体表面まで
の距離に応じた値を求めるステップ、(b) 求めた値
を各座標位置に対応付けて保持するステップを実行す
る。
In the second step, when the three-dimensional data is converted into volume data, (a) at each discrete coordinate position in the coordinate system expressing the volume, it is represented by the three-dimensional data of the object. (B) obtaining a value corresponding to the distance to the object surface, and (b) storing the obtained value in association with each coordinate position.

【0010】生成されたボリュームデータを逆変換する
ことにより、物体の3次元形状が復元される。本発明に
よると、3次元形状データの生成方法の相違によるそれ
ぞれの欠点を補って欠落のない精度のよい3次元モデル
が生成される。
The three-dimensional shape of the object is restored by inversely transforming the generated volume data. According to the present invention, a high-precision three-dimensional model with no omissions is generated by compensating for each disadvantage caused by the difference in the method of generating three-dimensional shape data.

【0011】[0011]

【発明の実施の形態】図1は本実施形態に係る3次元デ
ータ生成装置1のブロック図である。図1において、3
次元データ生成装置1は、装置本体10、磁気ディスク
装置11、媒体ドライブ装置12、ディスプレイ装置1
3、キーボード14、およびマウス15などからなる。
FIG. 1 is a block diagram of a three-dimensional data generating apparatus 1 according to the present embodiment. In FIG. 1, 3
The dimensional data generation device 1 includes a device main body 10, a magnetic disk device 11, a medium drive device 12, and a display device 1.
3, a keyboard 14, a mouse 15, and the like.

【0012】装置本体10は、CPU、RAM、RO
M、ビデオRAM、入出力ポート、および各種コントロ
ーラなどからなる。RAMおよびROMなどに記憶され
たプログラムをCPUが実行することにより、以下に説
明する種々の機能が実現される。
The apparatus main body 10 includes a CPU, a RAM, and an RO.
M, a video RAM, an input / output port, and various controllers. Various functions described below are realized by the CPU executing programs stored in the RAM, the ROM, and the like.

【0013】磁気ディスク装置11には、OS(Operat
ing System) 、3次元モデルMLを生成するためのモデ
リングプログラムPR、その他のプログラム、入力され
た3次元データ(3次元形状データ)DT、画像(2次
元画像データ)FT、ボリュームデータDV、生成され
た3次元モデルML、その他のデータなどが格納されて
いる。これらのプログラムおよびデータは、適時、装置
本体10のRAMにローディングされる。
The magnetic disk drive 11 has an OS (Operat
Modeling program PR for generating the 3D model ML, other programs, input 3D data (3D shape data) DT, image (2D image data) FT, volume data DV, 3D model ML, other data, and the like. These programs and data are loaded into the RAM of the apparatus body 10 at appropriate times.

【0014】なお、モデリングプログラムPRには、初
期化処理、属性値設定処理、属性値決定処理、境界判定
処理、分割処理、統合処理、逆変換処理、マッピング処
理、およびその他の処理のためのプログラムが含まれ
る。
The modeling program PR includes programs for initialization processing, attribute value setting processing, attribute value determination processing, boundary determination processing, division processing, integration processing, inverse transformation processing, mapping processing, and other processing. Is included.

【0015】媒体ドライブ装置12は、CD−ROM
(CD)、フロッピィディスクFD、光磁気ディスク、
コンパクトフラッシュ(登録商標)などの半導体メモリ
HM、その他の記録媒体にアクセスし、データまたはプ
ログラムの読み書きを行う。記録媒体の種類に応じて適
切なドライブ装置が用いられる。上に述べたモデリング
プログラムPRは、これら記録媒体からインストールす
ることも可能である。3次元データDTおよび画像FT
なども記録媒体を介して入力することが可能である。
The medium drive device 12 is a CD-ROM
(CD), floppy disk FD, magneto-optical disk,
It accesses the semiconductor memory HM such as CompactFlash (registered trademark) and other recording media to read and write data or programs. An appropriate drive device is used depending on the type of the recording medium. The above-described modeling program PR can be installed from these recording media. 3D data DT and image FT
Can be input via a recording medium.

【0016】ディスプレイ装置13の表示面HGには、
上に述べた種々のデータ、3次元データDT、画像F
T、モデリングプログラムPRによる処理過程の画像、
生成された3次元モデルML、その他のデータまたは画
像が表示される。
The display surface HG of the display device 13 includes:
Various data described above, three-dimensional data DT, image F
T, the image of the processing process by the modeling program PR,
The generated three-dimensional model ML and other data or images are displayed.

【0017】キーボード14およびマウス15は、ディ
スプレイ装置13に表示された画像FTおよび3次元デ
ータDTに対して、ユーザが種々の指定を行うために用
いられる他、装置本体10に種々のデータを入力しまた
は指令を与えるために用いられる。
The keyboard 14 and the mouse 15 are used by the user to make various designations for the image FT and the three-dimensional data DT displayed on the display device 13 and input various data to the device body 10. Or to give instructions.

【0018】図示は省略したが、装置本体10には、被
写体である物体を種々の視線で撮影しまたは種々の視点
から撮影して画像FTを入力するためのデジタルカメラ
を接続することが可能である。画像FTから被写体であ
る物体の輪郭を切り出すことにより、シルエット画像F
Sが生成される。シルエット画像FSに基づいて、シル
エット法によって3次元データDTを生成することが可
能である。
Although not shown, the apparatus main body 10 can be connected to a digital camera for photographing an object as an object from various viewpoints or photographing from various viewpoints and inputting an image FT. is there. By extracting the outline of the object from the image FT, the silhouette image F
S is generated. It is possible to generate three-dimensional data DT by the silhouette method based on the silhouette image FS.

【0019】また、視差のある2枚の画像に基づいて3
次元再構成を行い、3次元データDTを生成することも
可能である。また、装置本体10には、物体を撮影して
その3次元データDTを入力するための3次元入力装置
(3次元計測装置)を接続することも可能である。その
ような3次元入力装置は、例えば光切断法によって物体
の3次元データDTを非接触で計測する。また、3次元
入力装置から、3次元データDTではなく、3次元デー
タDTを生成するための元となるデータを出力し、装置
本体10によって3次元データDTを演算によって求め
てもよい。
Further, based on two images having parallax, 3
It is also possible to generate three-dimensional data DT by performing dimensional reconstruction. Further, a three-dimensional input device (three-dimensional measuring device) for photographing an object and inputting three-dimensional data DT thereof can also be connected to the device main body 10. Such a three-dimensional input device measures non-contact three-dimensional data DT of an object by, for example, a light section method. Alternatively, instead of the three-dimensional data DT, data serving as a source for generating the three-dimensional data DT may be output from the three-dimensional input device, and the three-dimensional data DT may be obtained by calculation by the device body 10.

【0020】このようにして得られた3次元データD
T、または3次元データDTを生成する途中のデータ
は、物体の3次元形状を境界表現形式で表現するもので
ある。本実施形態においては、境界表現形式で表現され
た物体の3次元形状を、各ボクセル(Voxel)に多値の属
性値dを持たせたボリュームデータ(Volume Data )D
Vに変換する。ボクセルとは、3次元空間を小さな単位
の格子に分解し、単位格子によって構成される小さな立
方体である。
The three-dimensional data D obtained as described above
T or the data in the process of generating the three-dimensional data DT expresses the three-dimensional shape of the object in a boundary expression format. In the present embodiment, volume data (Volume Data) D in which each voxel (Voxel) has a multi-valued attribute value d is obtained by converting the three-dimensional shape of the object represented in the boundary representation format into a voxel (Voxel).
Convert to V A voxel is a small cube composed of a unit cell by decomposing a three-dimensional space into a small unit cell.

【0021】また、生成方法の異なる複数の3次元形状
から変換された複数のボリュームデータDVを、1つの
ボリュームデータDVに統合することも行われる。最終
的なボリュームデータDVは、再度、境界表現形式の形
状表現に逆変換される。その際に、例えば、公知の零等
値面抽出法などを用いることができる。つまり、隣接す
る頂点(格子点)を結ぶ辺上の零等値面に対応する点を
算出し、それらの点を連結した三角ポリゴンを生成する
ことにより、ポリゴンメッシュに変換することができ
る。
Also, a plurality of volume data DV converted from a plurality of three-dimensional shapes having different generation methods are integrated into one volume data DV. The final volume data DV is again converted back to the shape expression in the boundary expression format. At that time, for example, a known zero isosurface extraction method or the like can be used. That is, a point corresponding to a zero isosurface on a side connecting adjacent vertices (lattice points) is calculated, and a triangular polygon in which those points are connected is generated, whereby the polygon mesh can be converted.

【0022】逆変換によって得られた3次元形状に、テ
クスチャ画像を貼り付けることも行われる。このように
して3次元モデルMLが生成される。3次元データ生成
装置1は、パーソナルコンピュータまたはワークステー
ションなどを用いて構成することが可能である。上に述
べたプログラムおよびデータは、ネットワークNWを介
して受信して取得することも可能である。
A texture image is also pasted on the three-dimensional shape obtained by the inverse transformation. Thus, the three-dimensional model ML is generated. The three-dimensional data generation device 1 can be configured using a personal computer, a workstation, or the like. The programs and data described above can be received and acquired via the network NW.

【0023】図2は3次元データ生成装置1による3次
元モデルMLの生成処理の流れを示すフローチャートで
ある。図2において、適当なサイズのボリューム(ボリ
ュームデータDV)が準備され、初期化が行われる(#
1)。ボリュームとして、例えば、50×50×50ボ
クセル、または100×100×100ボクセル程度の
サイズのものが用いられる。ボリュームは立方体でなく
てもよい。また、座標系におけるボクセルの中心の座標
および姿勢なども設定される。
FIG. 2 is a flowchart showing the flow of the process of generating the three-dimensional model ML by the three-dimensional data generating device 1. In FIG. 2, a volume (volume data DV) of an appropriate size is prepared and initialized (#
1). For example, a volume having a size of about 50 × 50 × 50 voxels or about 100 × 100 × 100 voxels is used. The volume need not be a cube. Also, the coordinates and orientation of the center of the voxel in the coordinate system are set.

【0024】ボリュームは、ボクセルの各頂点に、2種
類の多値のデータを属性値dとして格納することができ
る。つまり、各頂点に対して、2つの属性値ds,dr
を格納する領域が設けられる。これは、ボクセルの各頂
点に多値のデータを属性値として格納することが可能な
ボリュームが2つある、とすることもできる。この場合
に、一方を第1のボリューム、他方を第2のボリューム
と記載することができる。
The volume can store two types of multivalued data as attribute values d at each vertex of the voxel. That is, for each vertex, two attribute values ds, dr
Is provided. This may be that there are two volumes that can store multivalued data as attribute values at each vertex of the voxel. In this case, one can be described as a first volume and the other as a second volume.

【0025】なお、本明細書において、「ボリューム」
のことを「ボリュームデータ」と記載することがある。
その場合には、「ボリュームデータ」は、ボクセルによ
って所定の形状となるように構成され、ボクセルの各頂
点にデータを格納することが可能な3次元領域を意味す
る。
In this specification, "volume"
May be described as “volume data”.
In this case, the “volume data” is a three-dimensional area that is configured to have a predetermined shape by voxels and that can store data at each vertex of the voxel.

【0026】また、ボクセルの頂点は、隣合うボクセル
について共通である。したがって、周縁部にはない頂点
については、8つのボクセルの頂点となる。頂点はボリ
ュームデータの格子点と一致する。したがって、「頂
点」を「格子点」と記載することがある。
The vertices of voxels are common to adjacent voxels. Therefore, the vertices not at the peripheral edge are the vertices of eight voxels. The vertices coincide with the grid points of the volume data. Therefore, the “vertex” may be described as a “lattice point”.

【0027】さて、図2に戻って、シルエット画像を用
いて変換処理が行われ、第1のボリュームデータDVが
生成される(#2)。レンジデータを用いて変換処理が
行われ、第2のボリュームデータDVが生成される(#
3)。なお、レンジデータとは、レンジファインダなど
と呼称される3次元計測装置を用いて、物体を計測して
得られた3次元形状データである。また、視差のある複
数の画像からステレオ法によって再構成された3次元形
状データも、ここにいうレンジデータに含まれる。
Now, returning to FIG. 2, a conversion process is performed using the silhouette image to generate first volume data DV (# 2). The conversion processing is performed using the range data, and the second volume data DV is generated (#
3). Note that the range data is three-dimensional shape data obtained by measuring an object using a three-dimensional measuring device called a range finder or the like. In addition, three-dimensional shape data reconstructed from a plurality of images having parallax by a stereo method is also included in the range data referred to herein.

【0028】これら、第1および第2のボリュームデー
タDVが統合される(#4)。統合されたボリュームデ
ータDVが、境界表現形式の形状表現に逆変換される
(#5)。必要に応じてテクスチャマッピングが行われ
る(#6)。
The first and second volume data DV are integrated (# 4). The integrated volume data DV is inversely converted into a boundary representation format shape representation (# 5). Texture mapping is performed as needed (# 6).

【0029】以下において、ボリュームデータDVへの
変換処理、および複数のボリュームデータDVの統合処
理について、詳しく説明する。まず、変換処理について
説明する。 〔第1の実施形態による変換処理〕図3は3次元データ
生成装置1による変換処理を示すフローチャート、図4
は変換処理の変形例を示すフローチャートである。これ
らのフローチャートで示す変換処理は、レンジデータ、
その他の3次元形状データ、およびシルエット画像を用
いた変換処理に適用される。
In the following, the process of converting to volume data DV and the process of integrating a plurality of volume data DV will be described in detail. First, the conversion process will be described. [Conversion Processing According to First Embodiment] FIG. 3 is a flowchart showing the conversion processing by the three-dimensional data generating apparatus 1, and FIG.
9 is a flowchart showing a modification of the conversion process. The conversion processing shown in these flowcharts includes range data,
It is applied to conversion processing using other three-dimensional shape data and a silhouette image.

【0030】図3において、まず、物体の3次元形状を
表す3次元データDTが準備される。または、3次元デ
ータDTに代えて、3次元データDTの生成の元となる
複数の画像FTが準備される。そして、3次元データD
TとボリュームデータDVとの位置合わせが行われる
(#11)。通常、ボリュームデータDVの中に3次元
データDTが丁度納まるように、それらのサイズおよび
位置が決定される。
In FIG. 3, first, three-dimensional data DT representing a three-dimensional shape of an object is prepared. Alternatively, instead of the three-dimensional data DT, a plurality of images FT from which the three-dimensional data DT is generated are prepared. And three-dimensional data D
T and volume data DV are aligned (# 11). Normally, the size and position of the three-dimensional data DT are determined so that the three-dimensional data DT just fits in the volume data DV.

【0031】ボリュームを構成するボクセルの各頂点に
ついて、それぞれの頂点から3次元形状を表現する境界
まで、つまり物体の表面までの距離に応じた値が求めら
れる(#12)。求められた値は、各頂点の属性値とし
て保持される(#13)。
For each vertex of the voxel constituting the volume, a value corresponding to the distance from each vertex to the boundary expressing the three-dimensional shape, that is, the distance to the surface of the object is obtained (# 12). The obtained value is held as the attribute value of each vertex (# 13).

【0032】このようにして、各ボクセルの頂点、つま
り格子点には、多値の属性値が格納され、多値の属性値
を持った格子点群により構成されるボリュームデータD
Vが生成される。
In this manner, the vertices of each voxel, that is, the grid points, store the multi-valued attribute values, and the volume data D composed of the grid point group having the multi-valued attribute values.
V is generated.

【0033】図4において、物体の表面と交差するボク
セルが抽出される(#22)。このようなボクセルを
「境界ボクセル」と記載することがある。境界ボクセル
について、その頂点から物体の表面までの距離に応じた
値が求められる(#23)。求められた値は、上と同様
に各頂点の属性値として保持される(#24)。
In FIG. 4, voxels crossing the surface of the object are extracted (# 22). Such a voxel may be described as a “boundary voxel”. A value corresponding to the distance from the vertex to the surface of the object is obtained for the boundary voxel (# 23). The obtained value is held as the attribute value of each vertex in the same manner as above (# 24).

【0034】なお、ある頂点が境界ボクセルと他のボク
セルとの共通の頂点である場合に、その頂点は境界ボク
セルの頂点として扱う。 〔第2の実施形態による変換処理〕第2の実施形態に基
づいて、変換処理についてさらに詳しく説明する。な
お、第2および第3の実施形態は、主としてシルエット
画像を用いた変換処理に適用される。
When a certain vertex is a common vertex of a boundary voxel and another voxel, the vertex is treated as a vertex of the boundary voxel. [Conversion Processing According to Second Embodiment] The conversion processing will be described in more detail based on the second embodiment. The second and third embodiments are mainly applied to conversion processing using a silhouette image.

【0035】図5は第2の実施形態の変換処理を示すフ
ローチャート、図6は図5のステップ#34の属性値の
設定処理のサブルーチンを示すフローチャート、図7は
シルエット画像FSをボリュームデータDVに投影した
状態を説明するための図、図8は図7に示すシルエット
画像FSの一部を拡大して示す図、図9はボリュームデ
ータDVを水平面で切断した状態を示す図、図10は境
界ボクセルを拡大して示す図、図11はボリュームデー
タDVを格納したボリュームテーブルTLsの例を示す
図である。
FIG. 5 is a flowchart showing a conversion process according to the second embodiment, FIG. 6 is a flowchart showing a subroutine of an attribute value setting process in step # 34 of FIG. 5, and FIG. 7 shows a process of converting a silhouette image FS into volume data DV. FIG. 8 is a view for explaining a projected state, FIG. 8 is an enlarged view of a part of the silhouette image FS shown in FIG. 7, FIG. 9 is a view showing a state where the volume data DV is cut along a horizontal plane, and FIG. FIG. 11 is an enlarged view of a voxel, and FIG. 11 is a diagram showing an example of a volume table TLs storing volume data DV.

【0036】図5において、まず、設定されたボリュー
ムデータDVについて、すべての格子点TPに初期値を
セットする。これによってボリュームデータDVを初期
化する(#31)。格子点TPの初期値として、例え
ば、物体内部を意味する「プラス無限大」をセットす
る。この場合、「プラス無限大」は本発明における第1
の特定値である。初期化が完了した時点において、図1
0に示すボリュームデータDVはすべて初期値となる。
In FIG. 5, first, for the set volume data DV, initial values are set to all grid points TP. Thus, the volume data DV is initialized (# 31). As an initial value of the lattice point TP, for example, “plus infinity” meaning inside the object is set. In this case, “plus infinity” is the first in the present invention.
Is a specific value of. When initialization is completed, FIG.
All the volume data DV indicated by 0 are initial values.

【0037】次に、1つの画像FTを入力する(#3
2)。その際に、画像FTを撮影したときのカメラパラ
メータも入力する。カメラパラメータとして、焦点距離
などのカメラ内部行列、視点位置などの外部行列が挙げ
られる。これらを含んだ射影行列を入力してもよい。カ
メラパラメータに基づいて、画像FTをボリュームデー
タDVに投影する際の視点位置および投影方向が決定さ
れる。
Next, one image FT is inputted (# 3).
2). At this time, the camera parameters at the time of capturing the image FT are also input. Camera parameters include a camera internal matrix such as a focal length and an external matrix such as a viewpoint position. A projection matrix including these may be input. The viewpoint position and the projection direction when projecting the image FT on the volume data DV are determined based on the camera parameters.

【0038】なお、ステップ#32で画像FTを入力す
ると、画像FTは磁気ディスク装置11に格納される。
磁気ディスク装置11に格納された画像FTは、プログ
ラムによって自動的にRAM上に読み込まれ、以降の処
理が加えられる。しかし、ステップ#32での画像の入
力を、磁気ディスク装置11に格納された画像FTをR
AM上に読み込む、という意味に用いてもよい。その場
合には、予め多数の画像FTを磁気ディスク装置11に
格納しておき、ステップ#32で指定された1つの画像
FTをRAM上に読み込むようにすればよい。また、画
像の入力を、磁気ディスク装置11に格納された多数の
画像FTの中から、処理すべき1つの画像FTを指定す
る、という意味に用いることも可能である。
When the image FT is input in step # 32, the image FT is stored in the magnetic disk device 11.
The image FT stored in the magnetic disk device 11 is automatically read into the RAM by a program, and the subsequent processing is added. However, the input of the image in step # 32 is performed by setting the image FT stored in the magnetic disk device 11 to R
It may be used to mean reading on AM. In that case, a large number of images FT may be stored in the magnetic disk device 11 in advance, and one image FT designated in step # 32 may be read into the RAM. Further, the input of an image can be used to mean that one image FT to be processed is designated from among a large number of images FT stored in the magnetic disk device 11.

【0039】入力された画像FTから、被写体である物
体の輪郭が切り出されることにより、シルエット画像F
Sが生成される(#33)。シルエット画像FSは、輪
郭が分かればよいので、モノクロの画像で充分である。
シルエット画像の生成は、公知の方法によって自動的に
または手動により行うことができる。
The outline of the object, which is the subject, is cut out from the input image FT, so that the silhouette image F
S is generated (# 33). Since the outline of the silhouette image FS only needs to be known, a monochrome image is sufficient.
The generation of the silhouette image can be performed automatically or manually by a known method.

【0040】ボリュームデータDV、つまりボクセルV
Xの各頂点(格子点)TPの属性値が求められ、設定さ
れる(#34)。属性値は、各頂点TPと物体の表面と
の間の符号付き距離として求められる。つまり、例え
ば、図7および図8に示されるように、シルエット画像
FSによる輪郭(遮蔽輪郭)と視点VPとで定まる視体
積VVの境界SFから頂点TPまでの距離Lsを、視体
積VVの内側に向かう方向を+(プラス)として求めた
ものである。詳しくは後述する。
Volume data DV, that is, voxel V
The attribute value of each vertex (grid point) TP of X is obtained and set (# 34). The attribute value is obtained as a signed distance between each vertex TP and the surface of the object. That is, for example, as shown in FIGS. 7 and 8, the distance Ls from the boundary SF of the view volume VV determined by the contour (obstructed contour) by the silhouette image FS and the viewpoint VP to the vertex TP is set to the inside of the view volume VV. The direction toward is determined as + (plus). Details will be described later.

【0041】処理の必要な画像FTが残っている場合
に、次の1つの画像を入力する(#35でイエス、#3
2)。これが、必要なすべての画像FTについての処理
が終了するまで繰り返される(#35)。予定したすべ
ての画像FTについての処理を終えた場合でも、必要に
応じて画像FTを追加してステップ#32〜34の処理
を行うことが可能である。
If there is an image FT that needs to be processed, the next one image is input (Yes in # 35, # 3)
2). This is repeated until the processing for all necessary images FT is completed (# 35). Even when the processing for all the scheduled images FT has been completed, the processing of steps # 32 to # 34 can be performed by adding the image FT as necessary.

【0042】なお、ステップ#32で画像FTを入力す
る代わりに、シルエット画像FSを入力することも可能
である。その場合には、ステップ#33は不要である。
図6において、属性値の設定に際し、まず、ボリューム
を構成する1つの格子点TPに注目する(#41)。注
目している格子点TPの属性値をチェックする(#4
2)。属性値が「マイナス無限大」であれば、ステップ
#45に進む。つまり、属性値が「マイナス無限大」で
あるということは、その格子点TPは物体の外部にある
ことを意味する。物体の外部にある格子点TPは切り取
られるので、それ以上に属性値を求める必要はない。こ
の場合、「マイナス無限大」は、本発明における第2の
特定値である。
It is also possible to input a silhouette image FS instead of inputting the image FT in step # 32. In that case, step # 33 is unnecessary.
In FIG. 6, when setting the attribute value, first, attention is paid to one grid point TP constituting the volume (# 41). Check the attribute value of the grid point TP of interest (# 4
2). If the attribute value is "minus infinity", the process proceeds to step # 45. That is, that the attribute value is “minus infinity” means that the lattice point TP is outside the object. Since the grid points TP outside the object are cut off, there is no need to calculate any more attribute values. In this case, "minus infinity" is the second specific value in the present invention.

【0043】なお、最初の画像を処理する時点では、全
格子点に初期値として「プラス無限大」がセットされて
いるので、すべてステップ#43に進む。2枚目以降の
画像を処理する時点では、以前の画像の処理により、
「プラス無限大」、「マイナス無限大」、または後述の
「符号付き距離ds」のいずれかが属性値としてセット
されており、「マイナス無限大」以外、つまり「プラス
無限大」または「符号付き距離ds」の場合に、ステッ
プ#43に進む。
When the first image is processed, since "plus infinity" is set as an initial value for all the grid points, the process proceeds to step # 43. When processing the second and subsequent images, processing of the previous image
One of “plus infinity”, “minus infinity”, or “signed distance ds” described later is set as an attribute value, and is other than “minus infinity”, that is, “plus infinity” or “signed In the case of "distance ds", the flow proceeds to step # 43.

【0044】属性値が「マイナス無限大」でなければ、
ステップ#43において、符号付き距離dsの算出を行
う。符号付き距離の算出には種々の方法がある。次に第
1から第3までの3つの方法を説明する。 (第1の方法)注目している格子点TPと、その格子点
TPに隣接している格子点(つまり同じボクセルVXに
ついての頂点)とを、それぞれ視点VPに向かって画像
FT上に投影する。投影された点同士を画像FT上でつ
ないだときに、それによってできる辺が輪郭(遮蔽輪
郭)と交差する場合に、符号付き距離を計算する。
If the attribute value is not "minus infinity",
In step # 43, a signed distance ds is calculated. There are various methods for calculating the signed distance. Next, the first to third methods will be described. (First method) A grid point TP of interest and a grid point adjacent to the grid point TP (that is, a vertex of the same voxel VX) are projected onto the image FT toward the viewpoint VP. . When the projected points are connected to each other on the image FT and the side formed thereby intersects the contour (shielding contour), the signed distance is calculated.

【0045】つまり、図7に示すように、あるボクセル
VXが、視体積VVの境界SF上にある場合に、そのボ
クセルVXは境界ボクセルVXsである。境界ボクセル
VXsの頂点TPについて、符号付き距離を計算する。
That is, as shown in FIG. 7, when a certain voxel VX is on the boundary SF of the visual volume VV, the voxel VX is the boundary voxel VXs. A signed distance is calculated for the vertex TP of the boundary voxel VXs.

【0046】図9において、視体積VVの境界SFと交
差するボクセルVXが、境界ボクセルVXsとして中間
濃度で示されている。図10において、境界ボクセルV
Xsの各頂点TPから視体積VVの境界SFまでの距離
を求める。求めた距離、またはそれに対応する数値が、
それぞれの頂点TPの属性値として示されている。
In FIG. 9, the voxel VX that intersects the boundary SF of the visual volume VV is shown as a boundary voxel VXs at an intermediate density. In FIG. 10, the boundary voxel V
The distance from each vertex TP of Xs to the boundary SF of the visual volume VV is obtained. The calculated distance, or the numerical value corresponding to it,
It is shown as the attribute value of each vertex TP.

【0047】距離の単位またはスケールは、適当に設定
してよい。距離の最大値は、ボクセルVXの対角線の長
さである。したがって、対角線の長さを基準として、距
離を正規化してもよい。また、視体積VVの内部にある
頂点TPについては、距離の符号をそのまま正の値と
し、外部にある頂点TPについては、距離にマイナスを
付けて負の値とする。
The unit or scale of the distance may be set appropriately. The maximum value of the distance is the length of the diagonal line of the voxel VX. Therefore, the distance may be normalized based on the length of the diagonal line. Further, for the vertex TP inside the visual volume VV, the sign of the distance is set to a positive value as it is, and for the vertex TP outside, the distance is set to a negative value by adding minus.

【0048】例えば、属性値として8ビットのデータを
用いる場合には、最上位ビットを符号ビットとし、下位
7ビットで距離を示す。これによって、−127〜+1
28の値を表現することができるので、−127を、外
部を示す「マイナス無限大」に対応させ、+128を、
内部を示す「プラス無限大」に対応させ、−126〜+
127を符号付き距離に対応させる。属性値として、1
2ビット、16ビット、その他のビット数のデータを用
いることができる。
For example, when 8-bit data is used as the attribute value, the most significant bit is a sign bit, and the lower 7 bits indicate the distance. Thereby, -127 to +1
Since the value of 28 can be expressed, -127 is made to correspond to "minus infinity" indicating the outside, and +128 is made
Corresponding to "plus infinity" indicating the interior, -126 to +
127 correspond to the signed distance. 1 as the attribute value
Data of 2 bits, 16 bits, and other bits can be used.

【0049】したがって、格子点TPが視体積VVの境
界SF上にある場合には、その属性値は零となる。格子
点TPが視体積VVの内部にいくにしたがって属性値は
大きくなり、外部にいくにしたがって属性値は小さくな
る。
Therefore, when the lattice point TP is on the boundary SF of the visual volume VV, the attribute value is zero. The attribute value increases as the lattice point TP goes inside the viewing volume VV, and the attribute value decreases as it goes outside.

【0050】辺が遮蔽輪郭と交差しない場合には、つま
り境界ボクセルVXsでない場合には、その格子点TP
は視体積VVの内部または外部に存在する。外部にある
場合には、その格子点TPは切り取るべき点であるか
ら、属性値を「マイナス無限大」とする。内部にある場
合には属性値を「プラス無限大」のままとする。 (第2の方法)注目している格子点TPを視点VPに向
かって画像FT上に投影する。投影された点を中心と
し、中心から一定の半径の円の内部の領域に遮蔽輪郭が
あるか否かをチェックする。遮蔽輪郭が存在する場合
に、符号付き距離を計算する。領域内に遮蔽輪郭が存在
しない場合で、格子点TPが視体積VVの外部にある場
合には、属性値を「マイナス無限大」とする。。 (第3の方法)遮蔽輪郭を一定間隔でサンプリングし、
サンプリング点と視点VPとを結ぶ直線を得る。これら
の直線は、遮蔽輪郭を通る視線である。視体積VVの境
界SFに代えて視線を用い、3次元的に符号付き距離を
算出する。つまり、境界ボクセルVXsの頂点TPにつ
いて、頂点TPから視線までの距離を算出する。注目す
る格子点TPが視体積VVの外部にある場合には、属性
値を「マイナス無限大」とする。
If the side does not intersect with the shielding contour, that is, if it is not the boundary voxel VXs, the grid point TP
Exists inside or outside the visual volume VV. If it is outside, the grid point TP is a point to be cut out, and the attribute value is set to “minus infinity”. If it is inside, the attribute value is left as “plus infinity”. (Second method) The grid point TP of interest is projected on the image FT toward the viewpoint VP. It is checked whether or not there is an occluded contour in an area inside a circle having a fixed radius from the center with the projected point as the center. If there is an occluded contour, the signed distance is calculated. If no shielding contour exists in the area and the grid point TP is outside the viewing volume VV, the attribute value is set to “minus infinity”. . (Third method) Sampling contours are sampled at regular intervals,
A straight line connecting the sampling point and the viewpoint VP is obtained. These straight lines are lines of sight passing through the shielding contour. Using the line of sight instead of the boundary SF of the visual volume VV, a signed distance is calculated three-dimensionally. That is, for the vertex TP of the boundary voxel VXs, the distance from the vertex TP to the line of sight is calculated. When the grid point TP of interest is outside the visual volume VV, the attribute value is set to “minus infinity”.

【0051】そして、ステップ#44において、格子点
TPに属性値をセットする。属性値をセットする際に
は、既にセットされている属性値よりも小さい値のみを
セットする。既にセットされている属性値よりも大きい
値が新たに得られている場合には、その新しい属性値は
無視する。
Then, in step # 44, an attribute value is set to the grid point TP. When setting an attribute value, only a value smaller than the already set attribute value is set. If a new value larger than the already set attribute value is obtained, the new attribute value is ignored.

【0052】つまり、属性値として、新たに「マイナス
無限大」が得られたとすると、先にセットされている属
性値が何であれ、属性値は「マイナス無限大」となる。
このようにして物体の外部が切り取られていく。
That is, assuming that "minus infinity" is newly obtained as an attribute value, the attribute value becomes "minus infinity" whatever the attribute value set previously.
In this way, the outside of the object is cut out.

【0053】なお、属性値が新旧とも符号付き距離であ
った場合には、それらの平均値を求めてそれを新たな属
性値dとしてもよい。すべての格子点TPに対して処理
を行ったかどうかをチェックする(#45)。まだ処理
を行っていない格子点TPがある場合は、ステップ#4
1以降を繰り返す。すべての格子点TPについての処理
を終えた場合にはリターンする。これによって、図11
に示すようなボリュームテーブルTLsが完成する。
When the attribute value is a signed distance for both the new and old attributes, an average value thereof may be obtained and used as a new attribute value d. It is checked whether the processing has been performed for all the grid points TP (# 45). If there is a lattice point TP that has not been processed yet, step # 4
Repeat from 1 onwards. When the processing for all the lattice points TP is completed, the process returns. As a result, FIG.
The volume table TLs as shown in FIG.

【0054】第2の実施形態によると、1つの画像FT
ごとに処理が行われるので、画像の処理が終わればその
画像を削除することができ、それだけ使用するメモリ容
量が少なくて済む。 〔第3の実施形態による変換処理〕第2の実施形態の変
換処理では、画像FTを追加していくことにより変換処
理を進行したが、最初に複数枚の画像FTをまとめて入
力し(読み込み)、処理を行うことも可能である。次に
その例を第3の実施形態として示す。
According to the second embodiment, one image FT
Since the processing is performed every time, when the processing of the image is completed, the image can be deleted, and the memory capacity to be used can be reduced accordingly. [Conversion Processing According to Third Embodiment] In the conversion processing according to the second embodiment, the conversion processing is advanced by adding images FT. First, a plurality of images FT are collectively input (read). ), It is also possible to perform processing. Next, an example thereof will be described as a third embodiment.

【0055】図12は第3の実施形態の変換処理を示す
フローチャート、図13は図12のステップ#54の属
性値の設定処理のサブルーチンを示すフローチャートで
ある。
FIG. 12 is a flowchart showing the conversion processing of the third embodiment, and FIG. 13 is a flowchart showing a subroutine of the attribute value setting processing in step # 54 of FIG.

【0056】図12において、ステップ#51は図5の
ステップ#31と同様である。ステップ#52では、物
体について撮影したすべての画像FTを一時に入力す
る。その際に、それぞれの画像FTを撮影したときのカ
メラパラメータを入力する。各画像FTについて、ステ
ップ#33と同様にシルエット画像FSが生成される
(#53)。そして、属性値の設定が行われる(#5
4)。
In FIG. 12, step # 51 is the same as step # 31 in FIG. In step # 52, all the images FT taken of the object are input at one time. At this time, camera parameters at the time of capturing each image FT are input. For each image FT, a silhouette image FS is generated as in step # 33 (# 53). Then, attribute values are set (# 5).
4).

【0057】図13において、属性値の設定に際し、ま
ず、ステップ#41と同様に、1つの格子点TPに注目
する(#61)。注目している格子点TPが、視体積V
Vに対してどのような位置に存在するかをチェックする
(#62)。
In FIG. 13, when setting an attribute value, first, as in step # 41, attention is paid to one grid point TP (# 61). The grid point TP of interest is the viewing volume V
It is checked at what position with respect to V (# 62).

【0058】すなわち、格子点TPが視体積VVの境界
SFの付近に存在する場合には属性値を仮に「BORDER」
とし、視体積VVの内部に存在する場合には属性値を
「INSIDE」とし、被写体の外部に存在する場合には属性
値を「OUTSIDE 」とする。属性値「INSIDE」「OUTSIDE
」は、本発明における第1の特定値および第2の特定
値である。次に2つのチェック方法について説明する。 (第1の方法)注目している格子点TPと隣接している
格子点とを、すべての画像FT上に投影する。投影され
たそれぞれの画像FT上において、投影された2つの点
を各画像FT上でつないだときに、それによってできる
辺が輪郭(遮蔽輪郭)と交差するか否かを判断する。1
つでも交差する画像FTが存在すれば、格子点TPは視
体積VVの境界SF付近に存在すると判断し、属性値を
仮に「BORDER」とする。交差する画像FTがない場合
で、格子点TPの投影点が遮蔽輪郭の外部に存在してい
る画像が1つでもあれば、格子点TPは被写体の外部に
存在すると判断し、属性値を仮に「OUTSIDE 」とする。
それ以外の場合は、格子点TPは被写体の内部に存在す
ると判断し、属性値を仮に「INSIDE」とする。 (第2の方法)注目している格子点TPをすべての画像
FT上に投影する。投影された各点を中心とし、中心か
ら一定の半径の円の内部の領域に遮蔽輪郭があるか否か
をチェックする。遮蔽輪郭を含むと判断された画像が1
つでも存在する場合は、視体積VVの境界SF付近に存
在すると判断する。遮蔽輪郭を含むと判断された画像が
ない場合で、格子点TPの投影点が遮蔽輪郭外に存在し
ている画像が1つでもあれば、被写体の外部に存在する
と判断する。それ以外の場合は、被写体の内部に存在す
ると判断する。
That is, when the lattice point TP is present near the boundary SF of the visual volume VV, the attribute value is temporarily set to “BORDER”.
The attribute value is set to “INSIDE” when it exists inside the visual volume VV, and the attribute value is set to “OUTSIDE” when it exists outside the subject. Attribute value "INSIDE""OUTSIDE
"Are the first specific value and the second specific value in the present invention. Next, two check methods will be described. (First method) A grid point TP of interest and a grid point adjacent thereto are projected on all the images FT. On each projected image FT, when two projected points are connected on each image FT, it is determined whether or not a side formed thereby intersects a contour (shielding contour). 1
If at least one intersecting image FT exists, it is determined that the grid point TP exists near the boundary SF of the visual volume VV, and the attribute value is temporarily set to “BORDER”. If there is no intersecting image FT and there is at least one image in which the projection point of the grid point TP exists outside the shielding contour, it is determined that the grid point TP exists outside the subject, and the attribute value is temporarily set. "OUTSIDE".
In other cases, it is determined that the grid point TP exists inside the subject, and the attribute value is temporarily set to “INSIDE”. (Second method) The grid point TP of interest is projected on all the images FT. With each projected point as the center, it is checked whether or not there is an occluded contour in an area inside a circle having a constant radius from the center. The image determined to include the occlusion outline is 1
If any one exists, it is determined that it exists near the boundary SF of the visual volume VV. When there is no image determined to include the occlusion outline, and if there is at least one image in which the projection point of the grid point TP exists outside the occlusion outline, it is determined that the image exists outside the subject. Otherwise, it is determined that it exists inside the subject.

【0059】このようにして、1つの格子点TPについ
て、全ての画像FTを考慮した上で、仮の属性値を決定
する。仮の属性値が「OUTSIDE 」または「INSIDE」であ
る場合には、属性値を、例えば、それぞれ「マイナス無
限大」または「プラス無限大」とする。仮の属性値が
「BORDER」である場合には、符号付き距離を計算する
(#63)。
In this way, for one grid point TP, provisional attribute values are determined in consideration of all the images FT. If the temporary attribute value is “OUTSIDE” or “INSIDE”, the attribute value is, for example, “minus infinity” or “plus infinity”, respectively. If the provisional attribute value is “BORDER”, a signed distance is calculated (# 63).

【0060】符号付き距離の計算方法は、基本的にはス
テップ#43の説明で述べたと同様である。しかし、こ
こでは、1つの格子点TPについて、すべての画像FT
を同時に考慮して符号付き距離を決定する。
The calculation method of the signed distance is basically the same as that described in the description of step # 43. However, here, for one grid point TP, all the images FT
At the same time to determine the signed distance.

【0061】すなわち、例えば、次のようにして符号付
き距離を計算する。 (第1の方法)注目している格子点TPを、すべての画
像FT上に投影する。投影したすべての画像FTの中か
ら、投影点から遮蔽輪郭までの距離が一番近いものを選
択する。選択された画像FTについて、その遮蔽輪郭上
の点を通る視線を求める。格子点TPからその視線まで
の距離を求める。求めた距離に正負の符号を付けて属性
値とする。 (第2の方法)すべての画像FTについて、遮蔽輪郭を
一定間隔でサンプリングし、ステップ#34での第3の
方法と同様に、遮蔽輪郭を通る視線を用いて3次元的に
符号付き距離を算出する。
That is, for example, the signed distance is calculated as follows. (First method) A grid point TP of interest is projected on all the images FT. From all the projected images FT, the one with the shortest distance from the projection point to the shielding contour is selected. For the selected image FT, a line of sight passing through a point on the shielding contour is determined. The distance from the grid point TP to the line of sight is determined. The obtained distance is assigned an attribute value by adding a plus or minus sign. (Second method) With respect to all the images FT, the shielding contours are sampled at regular intervals, and similarly to the third method in step # 34, the signed distance is three-dimensionally determined using the line of sight passing through the shielding contour. calculate.

【0062】次に、ステップ#64では、ステップ#4
4と同様に格子点TPに属性値をセットする。但し、こ
ここでは、各格子点TPに対して、最終的な属性値がセ
ットされる。
Next, in step # 64, step # 4
An attribute value is set to the grid point TP in the same manner as in step 4. However, here, a final attribute value is set for each grid point TP.

【0063】ステップ#65では、ステップ#45と同
様に、すべての格子点TPに対して処理を行ったかどう
かがチェックされる。第3の実施形態によると、仮の属
性値が「BORDER」である格子点TPのみについて符号付
き距離を計算するので、符号付き距離の計算量が大幅に
低減する。したがって、処理速度が速い。 〔第4の実施形態による変換処理〕次に、第4の実施形
態として、8分木(Octree) 表現を用いた変換処理につ
いて説明する。
In step # 65, similarly to step # 45, it is checked whether the processing has been performed for all the grid points TP. According to the third embodiment, since the signed distance is calculated only for the lattice point TP whose temporary attribute value is “BORDER”, the calculation amount of the signed distance is significantly reduced. Therefore, the processing speed is high. [Conversion Processing According to Fourth Embodiment] Next, a conversion processing using an octree expression will be described as a fourth embodiment.

【0064】図14は第4の実施形態の変換処理を示す
フローチャート、図15は図14のステップ#75の交
差判定処理のサブルーチンを示すフローチャート、図1
6および図17は8分木表現の原理を説明するための図
である。
FIG. 14 is a flowchart showing the conversion processing of the fourth embodiment. FIG. 15 is a flowchart showing a subroutine of the intersection determination processing in step # 75 of FIG.
6 and 17 are diagrams for explaining the principle of octree representation.

【0065】図16および図17に示すように、8分木
表現では、対象とする物体よりも大きい立方体を定義
し、これをルートキューブ(Root-Cube)RCとする。ル
ートキューブを、x,y,zの各方向に沿ってそれぞれ
2等分すると、体積が8分の1の立方体が8つ生成され
る。このような分割を任意のレベルまで再起的に繰り返
すことにより、8分木のデータが生成される。8分木表
現それ自体は公知である。
As shown in FIGS. 16 and 17, in the octree representation, a cube larger than the target object is defined, and this is defined as a root cube (Root-Cube) RC. When the root cube is bisected along each of the x, y, and z directions, eight cubes having a volume of 1/8 are generated. By repeating such division recursively to an arbitrary level, data of an octree is generated. The octree representation is itself known.

【0066】図14において、まず、ルートキューブを
設定する(#71)。ルートキューブの設定に当たって
は、その中心の座標およびサイズを入力する。また、ル
ートキューブのすべての頂点に対して、物体内部を意味
する「CO」を初期値としてセットする。また、ルート
キューブの属性を、遮蔽輪郭と交差していることを表す
「GRAY」とし、レベルを「0」とする。属性が「GRAY」
であるキューブは、本発明における境界キューブに相当
する。
In FIG. 14, first, a root cube is set (# 71). When setting the root cube, input the coordinates and size of the center. Also, “CO” meaning inside the object is set as an initial value for all vertices of the root cube. Also, the attribute of the root cube is set to “GRAY” indicating that it intersects with the shielding contour, and the level is set to “0”. Attribute is "GRAY"
Is equivalent to the boundary cube in the present invention.

【0067】次に、被写体である物体を撮影した画像F
Tについて、必要なすべての画像を入力する(#7
2)。その際に、それぞれの画像FTを撮影したときの
カメラパラメータを入力する。
Next, an image F obtained by photographing an object which is a subject
Input all necessary images for T (# 7)
2). At this time, camera parameters at the time of capturing each image FT are input.

【0068】ステップ#73において、ステップ#33
と同様にシルエット画像FSが生成される。ステップ#
74において、キューブ(ルートキューブ)の分割が行
われる。ここでの分割は、属性が「GRAY」であるキュー
ブのみがついて行われる。分割は、8分割とされる。そ
して、レベルを1つ上げる。
In step # 73, in step # 33
, A silhouette image FS is generated. Step #
At 74, a cube (root cube) is split. The division here is performed only for the cube whose attribute is "GRAY". The division is divided into eight. Then raise the level by one.

【0069】ステップ#75において、キューブの交差
判定が行われる。ここでは、分割されたそれぞれのキュ
ーブを画像FT上に投影し、遮蔽輪郭との交差の有無を
判断する。その判断結果に基づいて、キューブの属性を
決定する。
At step # 75, the intersection of the cubes is determined. Here, each of the divided cubes is projected on the image FT to determine whether or not there is an intersection with the shielding contour. Based on the result of the determination, the attributes of the cube are determined.

【0070】そして、所定のレベルに達するまで、ステ
ップ#74および75の処理を繰り返す(#76)。ま
たは、属性が「GRAY」であるキューブがなくなった場合
には、そこで終了する。その場合には、以降の処理にお
いて、境界上にあるキューブ、または頂点が境界上にあ
るキューブを、属性が「GRAY」であるキューブとして用
いる。
Then, the processes of steps # 74 and # 75 are repeated until the predetermined level is reached (# 76). Or, if there are no more cubes with the attribute "GRAY", the process ends there. In that case, in the subsequent processing, a cube on the boundary or a cube with vertices on the boundary is used as a cube whose attribute is “GRAY”.

【0071】処理が終わると、属性が「GRAY」であるキ
ューブについて、各頂点の属性値を求めて設定する(#
77)。各頂点について属性値を求める方法は、第2の
実施形態において説明した方法を用いることができる。
When the processing is completed, the attribute value of each vertex is obtained and set for the cube whose attribute is “GRAY” (#
77). As a method of obtaining an attribute value for each vertex, the method described in the second embodiment can be used.

【0072】図15において、分割されたキューブのう
ちの1つに注目する(#81)。キューブをすべての画
像FT上に投影し、それぞれにおいて遮蔽輪郭との交差
の有無を判断する(#82)。
In FIG. 15, attention is paid to one of the divided cubes (# 81). The cube is projected on all the images FT, and it is determined whether or not each of the cubes intersects with the shielding contour (# 82).

【0073】その判断の結果、遮蔽輪郭に対して交差す
る画像FTが1つでも存在すれば、そのキューブの属性
を「GRAY」に設定する。すべての画像において、投影し
たキューブが遮蔽輪郭内に存在する場合は、キューブの
属性を、物体内部を表す「WHITE 」に設定する。すべて
の画像において、投影したキューブが遮蔽輪郭外に存在
する場合は、物体外部を表す「BLACK 」に設定する(#
83)。
If it is determined that at least one image FT intersects the occluded contour, the attribute of the cube is set to “GRAY”. In all the images, if the projected cube exists in the occluded contour, the attribute of the cube is set to “WHITE” representing the inside of the object. In all images, if the projected cube exists outside the occluded contour, it is set to “BLACK” representing the outside of the object (#
83).

【0074】ここでの「GRAY」「WHITE 」「BLACK 」
は、それぞれ、上に述べた「BORDER」「INSIDE」「OUTS
IDE 」に対応する。分割された8つのキューブのすべて
についての処理が行われた場合には(#84でイエ
ス)、リターンする。
Here, "GRAY", "WHITE" and "BLACK"
Are "BORDER", "INSIDE", and "OUTS"
IDE ”. When the processing has been performed for all of the eight divided cubes (Yes in # 84), the process returns.

【0075】第4の実施形態においても、属性が「GRA
Y」であるキューブの格子点TPのみについて符号付き
距離を計算するので、符号付き距離の計算量が大幅に低
減し、処理速度が速い。
Also in the fourth embodiment, the attribute is “GRA
Since the signed distance is calculated only for the lattice point TP of the cube “Y”, the calculation amount of the signed distance is greatly reduced, and the processing speed is high.

【0076】このように、第1〜第4の実施形態の変換
処理によると、格子点TPに多値のデータを持たせるこ
とができ、少ない個数のボクセルVXによって高精度の
3次元形状を表現することができる。したがって、少な
いメモリ容量で物体の3次元形状を高精度に表現するこ
とができる。
As described above, according to the conversion processing of the first to fourth embodiments, multi-valued data can be provided at the grid point TP, and a high-precision three-dimensional shape is represented by a small number of voxels VX. can do. Therefore, the three-dimensional shape of the object can be represented with high accuracy with a small memory capacity.

【0077】上に述べた第2〜第4の実施形態の変換処
理は、主としてシルエット画像に適用されるものであ
る。次に、主としてレンジデータに対して適用される変
換処理について詳しく説明する。 〔第5の実施形態による変換処理〕図18は第5の実施
形態の変換処理を示すフローチャート、図19はスペー
スカービングを説明するための図、図20はボリューム
データDVを水平面で切断した状態を示す図、図21は
境界ボクセルを拡大して示す図、図22〜25は最近点
MDを求める方法を説明するための図である。
The conversion processing of the second to fourth embodiments described above is mainly applied to a silhouette image. Next, a conversion process mainly applied to range data will be described in detail. [Conversion Processing According to Fifth Embodiment] FIG. 18 is a flowchart showing the conversion processing of the fifth embodiment, FIG. 19 is a view for explaining space carving, and FIG. 20 shows a state in which the volume data DV is cut along a horizontal plane. FIG. 21 is an enlarged view of a boundary voxel, and FIGS. 22 to 25 are diagrams for explaining a method of obtaining a nearest point MD.

【0078】ここでは、複数のレンジデータDRに対し
て変換処理を行う。このような複数のレンジデータは、
例えば、物体の周囲の異なる位置から物体を複数回に分
けて計測することにより得られる。なお、ボリュームデ
ータDVに対するレンジデータの位置合わせは済んでい
るものとする。
Here, conversion processing is performed on a plurality of range data DR. Such multiple range data is
For example, it can be obtained by measuring the object from different positions around the object in a plurality of times. It is assumed that the positioning of the range data with respect to the volume data DV has been completed.

【0079】図18において、スペースカービング(sp
ace carving ) を行う(#91)。スペースカービング
は、ボリュームデータDVから、物体ではない不要な部
分を切り取る処理である。
In FIG. 18, space carving (sp
ace carving) (# 91). Space carving is a process of cutting out unnecessary portions that are not objects from the volume data DV.

【0080】すなわち、図19に示すように、ボリュー
ムデータDVのボクセルVXのうち、レンジデータDR
の外部にあるボクセルVXについて、その頂点TPの属
性値として「マイナス無限大」をセットする。その際
に、視点VPからレンジデータDRに対して、レンジデ
ータDRを含むような視線を仮想し、その視線の内側に
あって且つレンジデータDRの外側にあるボクセルVX
を、切り取るべきボクセルVXとする。但し、上の実施
形態の場合と同様に、レンジデータDRの近傍にある頂
点TPについては除外する。図19において、白いボク
セルが外部のボクセルVXとして表示されている。
That is, as shown in FIG. 19, of the voxels VX of the volume data DV, the range data DR
Is set to “minus infinity” as the attribute value of the vertex TP of the voxel VX outside of. At this time, a line of sight including the range data DR is imagined from the viewpoint VP to the range data DR, and the voxel VX inside the line of sight and outside the range data DR.
Is the voxel VX to be clipped. However, as in the case of the above embodiment, the vertex TP near the range data DR is excluded. In FIG. 19, white voxels are displayed as external voxels VX.

【0081】1つの格子点TPxに注目する(#9
2)。注目している格子点TPxの属性値をチェックす
る(#93)。属性値が「マイナス無限大」でなけれ
ば、ステップ#94に進む。
Attention is paid to one grid point TPx (# 9)
2). The attribute value of the grid point TPx of interest is checked (# 93). If the attribute value is not "minus infinity", the process proceeds to step # 94.

【0082】その格子点TPxについて、最近点MDを
求める(#94)。i番目のレンジデータDRにおける
最近点MDを最近点riとする。最近点MDの求め方は
次のとおりである。
With respect to the lattice point TPx, the nearest point MD is obtained (# 94). The nearest point MD in the i-th range data DR is set as the nearest point ri. The method of obtaining the nearest point MD is as follows.

【0083】図22に示すように、複数のレンジデータ
DRのそれぞれに対して、格子点TPxから垂線を下ろ
す。1つのレンジデータDRに対して複数の垂線が引け
る場合には、そのうちの最も短い垂線を選択する。垂足
点が最近点MD1,2である。但し、垂線の長さLM
1,2が所定の長さαよりも短いことを条件とする。つ
まり、垂線の長さLM1,2がいずれも所定の長さαよ
りも大きい場合には、最近点MDは存在しないものとす
る。
As shown in FIG. 22, for each of the plurality of range data DR, a perpendicular line is drawn from the grid point TPx. When a plurality of perpendicular lines can be drawn for one range data DR, the shortest perpendicular line is selected. The drop point is the closest point MD1,2. However, the perpendicular length LM
Condition 1 and 2 are shorter than a predetermined length α. That is, when both the lengths LM1 and LM2 of the perpendicular are larger than the predetermined length α, it is assumed that the nearest point MD does not exist.

【0084】最近点MDが存在しない場合には(#95
でノー)、その格子点TPxの属性値を「プラス無限
大」とする(#96)。1つまたは複数の最近点MDが
存在する場合には(#95でイエス)、最近点MDのう
ち、格子点TPxに最も近い最近点MDを最近点rmin
とする(#97)。
If the nearest point MD does not exist (# 95)
No), the attribute value of the grid point TPx is set to “plus infinity” (# 96). If there is one or more nearest points MD (Yes in # 95), the nearest point MD closest to the lattice point TPx among the nearest points MD is referred to as the nearest point rmin.
(# 97).

【0085】なお、ここでは、最近点MDは、レンジデ
ータDRを構成する3次元のポリゴンデータDPの中か
ら選ばれる。つまり、図23および図25において、格
子点TPxに対するレンジデータDR上の最近点MD1
は、レンジデータDRのポリゴンデータDPとして存在
する3次元点と一致する。したがって、最近点MD1の
座標はポリゴンデータDPの座標と一致する。ポリゴン
データDPの座標は既知であるので、最近点MD1の座
標は極めて容易に求められる。しかし、最近点MD1
は、レンジデータDRに対して真に最も近い点とはいえ
ない。したがって、後で符号付き距離を求める際に、法
線となす角の余弦をかけて補正する。
Here, the closest point MD is selected from the three-dimensional polygon data DP constituting the range data DR. That is, in FIGS. 23 and 25, the nearest point MD1 on the range data DR with respect to the grid point TPx
Coincides with a three-dimensional point existing as the polygon data DP of the range data DR. Therefore, the coordinates of the closest point MD1 match the coordinates of the polygon data DP. Since the coordinates of the polygon data DP are known, the coordinates of the nearest point MD1 can be obtained very easily. However, recently MD1
Is not the point that is truly closest to the range data DR. Therefore, when obtaining the signed distance later, the correction is performed by multiplying the cosine of the angle formed by the normal.

【0086】これに対し、図24に示すように、ポリゴ
ンメッシュPM上の任意の点PMTを最近点MDとした
場合には、レンジデータDRに対する真の最近点を得る
ことができる。しかし、この場合に、最近点MD1の座
標は、周辺のポリゴンデータDPの座標から演算により
求める必要があるので、座標を求めるのに時間がかか
る。
On the other hand, as shown in FIG. 24, when an arbitrary point PMT on the polygon mesh PM is set as the nearest point MD, a true nearest point with respect to the range data DR can be obtained. However, in this case, since the coordinates of the nearest point MD1 need to be obtained by calculation from the coordinates of the surrounding polygon data DP, it takes time to obtain the coordinates.

【0087】さて、図18に戻り、ステップ#98にお
いて、格子点TPxからレンジデータDRまでの符号付
き距離を、格子点TPxから1つまたは複数の最近点M
Dまでの距離の加重平均によって求める。符号付き距離
の求め方は次のとおりである。
Returning to FIG. 18, in step # 98, the signed distance from the grid point TPx to the range data DR is calculated by calculating one or more nearest points M from the grid point TPx.
It is determined by a weighted average of the distance to D. The method for obtaining the signed distance is as follows.

【0088】すなわち、最近点MDの中で、最近点rmi
n から一定の距離内にある最近点MDのみを抽出する。
その中には最近点rmin も含める。つまり、最近点rmi
n から一定の距離よりも遠い最近点MDを除外する。抽
出された最近点MDについて、格子点TPxからの距離
を求める。求めたすべての距離を加重平均することによ
り得られる。
That is, in the nearest point MD, the nearest point rmi
Only the closest point MD within a certain distance from n is extracted.
It also includes the nearest point rmin. In other words, the most recent rmi
Exclude the closest point MD that is more than a certain distance from n. The distance from the lattice point TPx is determined for the extracted nearest point MD. It is obtained by a weighted average of all the distances obtained.

【0089】すなわち、格子点TPxの符号付き距離は
dr(x)は、 dr(x)=Σwi ・〔ni ・(ri −TPx)〕/Σwi ……(1) 但し、ri はi番目のレンジデータにおける最近点 ni は最近点ri の法線ベクトル wi は最近点ri の重み
That is, the signed distance of the lattice point TPx is dr (x): dr (x) = Σwi · [ni · (ri−TPx)] / Σwi (1) where ri is the i-th range The nearest point ni in the data is the normal vector of the nearest point ri wi is the weight of the nearest point ri

【0090】[0090]

【数1】 (Equation 1)

【0091】として求められる。すなわち、格子点TP
xと最近点ri との間の距離は、格子点TPxと最近点
ri とを結ぶ線の長さ(つまりそれらの間の距離)に、
その線と最近点ri における法線とのなす角の余弦をか
けた値として求められる。つまり、格子点TPxまでの
最近点MDにおける法線方向の距離として求められる。
距離の符号は、法線方向がマイナスである。求めた距離
について、各最近点ri の信頼性に応じた重み(荷重)
を与えて平均する。これによって符号付き距離が求ま
る。
Is obtained. That is, the lattice point TP
The distance between x and the nearest point ri is given by the length of the line connecting the grid point TPx and the nearest point ri (that is, the distance between them),
It is obtained as a value obtained by multiplying the cosine of the angle between the line and the normal at the nearest point ri. That is, the distance in the normal direction to the lattice point TPx at the closest point MD is obtained.
The sign of the distance is minus in the normal direction. Weight (weight) according to the reliability of each nearest point ri for the obtained distance
And average. This gives the signed distance.

【0092】重みwi は、最近点ri における法線ベク
トルni と、格子点TPxを始点とし最近点ri を終点
とするベクトルとがなす角の余弦である。つまり、その
角が大きいほど、信頼性は小さくなると考えられるの
で、重みwi を小さくする。
The weight wi is the cosine of the angle formed by the normal vector ni at the nearest point ri and the vector starting at the lattice point TPx and ending at the nearest point ri. That is, since it is considered that the larger the angle is, the lower the reliability is, the weight wi is reduced.

【0093】求めた符号付き距離を、その格子点TPx
の属性値として格納する。すべての格子点TPに対して
処理を行ったかどうかがチェックされる(#99)。ま
だ処理を行っていない格子点TPがある場合は、ステッ
プ#92以降を繰り返す。すべての格子点TPについて
の処理を終えた場合には終了する。これによって、レン
ジデータDRに対応した、図11のボリュームテーブル
TLsと同様なボリュームテーブルTLrが完成する。 〔ボリュームデータの統合〕さて、ステップ#2および
3において、シルエット画像FSを用いたボリュームデ
ータDVと、レンジデータDRを用いたボリュームデー
タDVとが生成された。ステップ#4では、これらのボ
リュームデータDVを統合する。ボリュームデータDV
の統合に際しては、各ボリュームデータDVの互いに対
応するボクセルVXの2つの属性値に基づいて、当該ボ
クセルVXの統合された属性値を求める。なお、シルエ
ット画像FSによるボリュームデータDVの属性値を、
シルエット属性値ds、レンジデータDRによるボリュ
ームデータDVの属性値を、レンジ属性値dr、統合さ
れたボリュームデータDVの属性値を統合属性値dtと
記載することがある。
The obtained signed distance is converted to the lattice point TPx
Stored as attribute value of It is checked whether the processing has been performed for all the grid points TP (# 99). If there is a lattice point TP that has not been processed yet, step # 92 and subsequent steps are repeated. When the processing for all the lattice points TP has been completed, the processing ends. Thus, a volume table TLr similar to the volume table TLs of FIG. 11 corresponding to the range data DR is completed. [Integration of Volume Data] In steps # 2 and # 3, volume data DV using the silhouette image FS and volume data DV using the range data DR are generated. In step # 4, these volume data DV are integrated. Volume data DV
In the integration of the voxel VX, the integrated attribute value of the voxel VX is obtained based on the two attribute values of the voxel VX corresponding to each other in each volume data DV. Note that the attribute value of the volume data DV based on the silhouette image FS is
The attribute value of the volume data DV based on the silhouette attribute value ds and the range data DR may be described as a range attribute value dr, and the attribute value of the integrated volume data DV may be described as an integrated attribute value dt.

【0094】図26は格子点TPの属性値と物体の表面
HMとの位置関係を示す図、図27は2つの属性値の統
合方法を示す図である。図26に示すように、物体の表
面HMに対し、属性値の値に応じて、外部(遠)、外部
(近)、内部(近)、内部(遠)の4つに分類する。
FIG. 26 is a diagram showing the positional relationship between the attribute value of the grid point TP and the surface HM of the object, and FIG. 27 is a diagram showing a method of integrating the two attribute values. As shown in FIG. 26, the surface HM of the object is classified into four (outside (far), outside (near), inside (near), and inside (far) according to the value of the attribute value.

【0095】すなわち、属性値が「マイナス無限大」の
場合に外部(遠)、属性値が「プラス無限大」の場合に
内部(遠)、属性値が負であって「マイナス無限大」で
ない場合に外部(近)、属性値が正であって「プラス無
限大」でない場合に内部(近)となる。これは、シルエ
ット画像FSおよびレンジデータDRのいずれによるボ
リュームデータDVに対しても適用される。
In other words, when the attribute value is “minus infinity”, it is outside (far), when the attribute value is “plus infinity”, it is inside (far), and the attribute value is negative and not “minus infinity”. If the attribute value is positive and is not “plus infinity”, it is internal (near). This is applied to the volume data DV using any of the silhouette image FS and the range data DR.

【0096】図27に示すように、シルエット属性値d
sが外部(遠)である場合に、レンジ属性値drの内容
に係わらず、統合属性値dtは外部(遠)を示す「マイ
ナス無限大」である。シルエット属性値dsおよびレン
ジ属性値drが共に内部(遠)である場合に、統合属性
値dtは内部(遠)を示す「プラス無限大」である。シ
ルエット属性値dsが内部(遠)で且つレンジ属性値d
rが外部(遠)である場合には、これは実際にはあり得
ないが、統合属性値dtは外部(遠)を示す「マイナス
無限大」である。
As shown in FIG. 27, the silhouette attribute value d
When s is outside (far), the integrated attribute value dt is “minus infinity” indicating the outside (far) regardless of the contents of the range attribute value dr. When both the silhouette attribute value ds and the range attribute value dr are inside (far), the integrated attribute value dt is “plus infinity” indicating the inside (far). Silhouette attribute value ds is inside (far) and range attribute value d
If r is external (far), this is not really possible, but the integrated attribute value dt is "minus infinity" indicating external (far).

【0097】それ以外で、一方が外部(遠)または内部
(遠)で他方が外部(近)または内部(近)であった場
合には、外部(近)または内部(近)であった方の属性
値が用いられる。両方が外部(近)または内部(近)で
あった場合には、両方の属性値が混合される。混合によ
って、統合属性値dtは次の(3)式により計算され
る。
Otherwise, if one is outside (far) or inside (far) and the other is outside (near) or inside (near), the outside (near) or inside (near) Attribute value is used. If both are external (near) or internal (near), both attribute values are mixed. By the mixing, the integrated attribute value dt is calculated by the following equation (3).

【0098】 dt=wxdr+(1−wx)ds ……(3) 但し、wxは格子点TPxにおけるレンジ属性値drの
重みを表す。つまり、レンジ属性値drの重みwxに応
じた比で、レンジ属性値drとシルエット属性値dsと
が混合される。荷重wxの値は、物体の形状などに応じ
て決定される。このように、重みに応じた適当な比で加
算されることにより、シルエット画像FSによるボリュ
ームデータDVとレンジデータDRによるボリュームデ
ータDVとの境界部分が滑らかに接続される。得られた
統合属性値dtは、その格子点TPの属性値として格納
される。このようにして、すべての格子点TPについて
属性値が求められる。これによって統合処理が完了す
る。
Dt = wxdr + (1-wx) ds (3) where wx represents the weight of the range attribute value dr at the grid point TPx. That is, the range attribute value dr and the silhouette attribute value ds are mixed at a ratio according to the weight wx of the range attribute value dr. The value of the load wx is determined according to the shape of the object and the like. In this way, by adding at an appropriate ratio according to the weight, the boundary between the volume data DV based on the silhouette image FS and the volume data DV based on the range data DR is smoothly connected. The obtained integrated attribute value dt is stored as the attribute value of the grid point TP. In this way, attribute values are obtained for all grid points TP. This completes the integration process.

【0099】このように、シルエット画像FSによるボ
リュームデータDVとレンジデータDRによるボリュー
ムデータDVとを統合することにより、それぞれの欠点
を補って欠落のない精度のよい3次元モデルMLを生成
することができる。
As described above, by integrating the volume data DV based on the silhouette image FS and the volume data DV based on the range data DR, it is possible to generate a highly accurate three-dimensional model ML that compensates for each of the drawbacks and has no loss. it can.

【0100】したがって、物体に凹部領域や低反射率の
部分があった場合でも、できるだけ少ないメモリ容量で
且つ少ない演算時間で、正確に3次元形状を復元するこ
とができる。
Therefore, even when the object has a concave area or a part with a low reflectance, the three-dimensional shape can be accurately restored with a memory capacity as small as possible and in a short calculation time.

【0101】上に述べた実施形態においては、属性値を
ボクセルの頂点にセットしたが、属性値をセットするの
は必ずしもボクセルの頂点である必要はない。例えば、
ボクセルの重心であってもよい。
In the embodiment described above, the attribute value is set at the vertex of the voxel. However, the attribute value need not always be set at the vertex of the voxel. For example,
The center of gravity of the voxel may be used.

【0102】また、境界と交差するボクセルについての
み、頂点と境界との距離値をセットするようにしている
が、全ボクセルについて行ってもよい。但し、実施例の
ように交差するボクセルについてのみ演算する方が、演
算時間が短縮される。物体の内部を正、外部を負として
表現したが、逆であってもよい。
Although the distance value between the vertex and the boundary is set only for the voxel that intersects the boundary, it may be set for all the voxels. However, the operation time is shortened when the operation is performed only on the intersecting voxels as in the embodiment. Although the inside of the object is expressed as positive and the outside is expressed as negative, the opposite may be used.

【0103】第4の実施形態では、キューブを8分割す
る例について説明したが、8分割に限らず、xyzそれ
ぞれの方向に3分割し、つまりキューブを27分割して
もよいし、それ以上に分割してもよい。
In the fourth embodiment, an example in which the cube is divided into eight parts has been described. However, the invention is not limited to eight parts, and the cube may be divided into three parts in each of the xyz directions, that is, the cube may be divided into 27 parts. It may be divided.

【0104】上に述べた実施形態において、3次元デー
タ生成装置1の全体または各部の構成、処理の内容およ
び順序、ボクセルVXの個数、属性値の桁数などは、本
発明の趣旨に沿って適宜変更することができる。
In the embodiment described above, the configuration of the whole or each part of the three-dimensional data generating device 1, the content and order of processing, the number of voxels VX, the number of digits of attribute values, etc. are in line with the gist of the present invention. It can be changed as appropriate.

【0105】[0105]

【発明の効果】本発明によると、凹部領域や低反射率の
部分があった場合でも、できるだけ少ないメモリ容量で
且つ少ない演算時間で正確に3次元形状を復元すること
ができる。
According to the present invention, a three-dimensional shape can be accurately restored with a memory capacity as small as possible and with a small calculation time even when there is a concave area or a part with a low reflectance.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本実施形態に係る3次元データ生成装置のブロ
ック図である。
FIG. 1 is a block diagram of a three-dimensional data generation device according to an embodiment.

【図2】3次元データ生成装置による3次元モデルの生
成処理の流れを示すフローチャートである。
FIG. 2 is a flowchart illustrating a flow of a three-dimensional model generation process performed by the three-dimensional data generation device.

【図3】3次元データ生成装置による変換処理を示すフ
ローチャートである。
FIG. 3 is a flowchart illustrating a conversion process performed by the three-dimensional data generation device.

【図4】変換処理の変形例を示すフローチャートであ
る。
FIG. 4 is a flowchart illustrating a modification of the conversion process.

【図5】第2の実施形態の変換処理を示すフローチャー
トである。
FIG. 5 is a flowchart illustrating a conversion process according to the second embodiment.

【図6】図5のステップ#34の属性値の設定処理のサ
ブルーチンを示すフローチャートである。
FIG. 6 is a flowchart illustrating a subroutine of an attribute value setting process in step # 34 of FIG. 5;

【図7】シルエット画像をボリュームデータに投影した
状態を説明するための図である。
FIG. 7 is a diagram for explaining a state in which a silhouette image is projected on volume data.

【図8】図7に示すシルエット画像の一部を拡大して示
す図である。
8 is an enlarged view showing a part of the silhouette image shown in FIG. 7;

【図9】ボリュームデータを水平面で切断した状態を示
す図である。
FIG. 9 is a diagram showing a state where volume data is cut along a horizontal plane.

【図10】境界ボクセルを拡大して示す図である。FIG. 10 is an enlarged view of a boundary voxel.

【図11】ボリュームデータを格納したボリュームテー
ブルの例を示す図である。
FIG. 11 is a diagram illustrating an example of a volume table storing volume data.

【図12】第3の実施形態の変換処理を示すフローチャ
ートである。
FIG. 12 is a flowchart illustrating a conversion process according to the third embodiment.

【図13】図12のステップ#54の属性値の設定処理
のサブルーチンを示すフローチャートである。
FIG. 13 is a flowchart showing a subroutine of an attribute value setting process in step # 54 of FIG.

【図14】第4の実施形態の変換処理を示すフローチャ
ートである。
FIG. 14 is a flowchart illustrating a conversion process according to the fourth embodiment.

【図15】図14のステップ#75の交差判定処理のサ
ブルーチンを示すフローチャートである。
FIG. 15 is a flowchart showing a subroutine of intersection determination processing in step # 75 of FIG. 14;

【図16】8分木表現の原理を説明するための図であ
る。
FIG. 16 is a diagram for explaining the principle of octree expression.

【図17】8分木表現の原理を説明するための図であ
る。
FIG. 17 is a diagram for explaining the principle of octree expression.

【図18】第5の実施形態の変換処理を示すフローチャ
ートである。
FIG. 18 is a flowchart illustrating a conversion process according to the fifth embodiment.

【図19】スペースカービングを説明するための図であ
る。
FIG. 19 is a diagram for explaining space carving.

【図20】ボリュームデータを水平面で切断した状態を
示す図である。
FIG. 20 is a diagram showing a state where volume data is cut along a horizontal plane.

【図21】境界ボクセルを拡大して示す図である。FIG. 21 is an enlarged view showing a boundary voxel.

【図22】最近点を求める方法を説明するための図であ
る。
FIG. 22 is a diagram for explaining a method for obtaining a nearest point.

【図23】最近点を求める方法を説明するための図であ
る。
FIG. 23 is a diagram for explaining a method for obtaining a nearest point.

【図24】最近点を求める方法を説明するための図であ
る。
FIG. 24 is a diagram for explaining a method for obtaining a nearest point.

【図25】最近点を求める方法を説明するための図であ
る。
FIG. 25 is a diagram for explaining a method for obtaining a nearest point.

【図26】格子点の属性値と物体の表面との位置関係を
示す図である。
FIG. 26 is a diagram illustrating a positional relationship between attribute values of grid points and the surface of an object.

【図27】2つの属性値の統合方法を示す図である。FIG. 27 is a diagram illustrating a method of integrating two attribute values.

【符号の説明】[Explanation of symbols]

1 3次元データ生成装置 10 装置本体(第1の変換手段、第2の変換手段、統
合手段) 11 磁気ディスク装置 DV ボリュームデータ VX ボクセル FT 画像 FS シルエット画像 CD CD−ROM(記録媒体) FD フロッピィディスク(記録媒体) TL ボリュームテーブル(ボリュームデータ) PR モデリングプログラム(コンピュータプログラ
ム)
DESCRIPTION OF SYMBOLS 1 3D data generation apparatus 10 Device main body (1st conversion means, 2nd conversion means, integration means) 11 Magnetic disk drive DV Volume data VX Voxel FT image FS Silhouette image CD CD-ROM (recording medium) FD Floppy disk (Recording medium) TL Volume table (Volume data) PR Modeling program (Computer program)

───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B057 CA13 CA16 CB13 CB16 CE08 CH09 DB03 DC01 DC16 5B080 AA00 AA17 GA22  ──────────────────────────────────────────────────続 き Continued on the front page F term (reference) 5B057 CA13 CA16 CB13 CB16 CE08 CH09 DB03 DC01 DC16 5B080 AA00 AA17 GA22

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】物体についての3次元形状データを生成す
る方法であって、 前記物体についての視点の異なる複数の画像からシルエ
ット法を用いてボリュームデータに変換することによっ
て第1のボリュームデータを生成する第1のステップ、 前記物体について3次元計測によって得られた3次元デ
ータをボリュームデータに変換することによって第2の
ボリュームデータを生成する第2のステップ、 前記第1のボリュームデータと第2のボリュームデータ
とを統合して1つのボリュームデータとする第3のステ
ップ、 を有してなることを特徴とする3次元形状データの生成
方法。
1. A method for generating three-dimensional shape data of an object, wherein the first volume data is generated by converting a plurality of images of the object from different viewpoints into volume data using a silhouette method. A first step of generating the second volume data by converting three-dimensional data obtained by three-dimensional measurement of the object into volume data; and a second step of generating the second volume data and the second volume data. A third step of integrating volume data into one volume data; and a method for generating three-dimensional shape data.
【請求項2】前記ボリュームデータは、ボリュームを表
現する座標系内の離散的な各座標位置において、物体の
表面からの距離に応じた値が保持されたデータである、 請求項1記載の3次元形状データの生成方法。
2. The volume data according to claim 1, wherein at each discrete coordinate position in a coordinate system expressing the volume, a value corresponding to a distance from the surface of the object is held. How to generate dimensional shape data.
【請求項3】第1のステップにおいて、シルエット法を
用いてボリュームデータに変換するに際し、(a) ボ
リュームを表現する座標系内の離散的な各座標位置にお
いて、前記物体の画像の輪郭と当該画像の視点とにより
定まる視体積の境界までの距離に応じた値を求めるステ
ップ、(b) 各座標位置について、前記物体の複数の
画像について求めた複数の値に基づいて物体表面からの
距離に応じた値を決定し、各座標位置に対応付けて保持
するステップ、 を実行する請求項2記載の3次元形状データの生成方
法。
3. In the first step, when converting into volume data using the silhouette method, (a) at each discrete coordinate position in the coordinate system expressing the volume, the outline of the image of the object and the Obtaining a value corresponding to the distance to the boundary of the viewing volume determined by the viewpoint of the image; and (b) calculating, for each coordinate position, a distance from the object surface based on a plurality of values obtained for a plurality of images of the object. 3. The method according to claim 2, further comprising: deciding a value corresponding to the coordinate value and holding the value in association with each coordinate position.
【請求項4】第2のステップにおいて、3次元データを
ボリュームデータに変換するに際し、(a) ボリュー
ムを表現する座標系内の離散的な各座標位置において、
前記物体の3次元データで表される物体表面までの距離
に応じた値を求めるステップ、(b) 求めた値を各座
標位置に対応付けて保持するステップ、 を実行する請求項2記載の3次元形状データの生成方
法。
4. In the second step, when converting three-dimensional data into volume data, (a) at each discrete coordinate position in a coordinate system expressing a volume,
3. The method according to claim 2, further comprising: a step of obtaining a value corresponding to a distance to an object surface represented by the three-dimensional data of the object; and (b) a step of storing the obtained value in association with each coordinate position. How to generate dimensional shape data.
【請求項5】第3のステップにおいて、各座標位置に対
して、前記第1のボリュームデータの値と前記第2のボ
リュームデータの値とを所定の割合で加算する、 請求項2記載の3次元形状データの生成方法。
5. The method according to claim 2, wherein in the third step, a value of the first volume data and a value of the second volume data are added at a predetermined ratio to each coordinate position. How to generate dimensional shape data.
【請求項6】物体についての3次元形状データを生成す
る装置であって、 前記物体についての視点の異なる複数の画像からシルエ
ット法を用いてボリュームデータに変換することによっ
て第1のボリュームデータを生成する第1の変換手段、 前記物体について3次元計測によって得られた3次元デ
ータをボリュームデータに変換することによって第2の
ボリュームデータを生成する第2の変換手段、および、 前記第1のボリュームデータと第2のボリュームデータ
とを統合して1つのボリュームデータとする統合手段、 を有してなることを特徴とする3次元形状データの生成
装置。
6. An apparatus for generating three-dimensional shape data of an object, wherein the first volume data is generated by converting a plurality of images of the object from different viewpoints into volume data using a silhouette method. First converting means for converting the three-dimensional data obtained by three-dimensional measurement of the object into volume data to generate second volume data; and the first volume data. An integrating means for integrating the first volume data with the second volume data to form one volume data.
【請求項7】物体についての3次元形状データを生成す
るためのコンピュータプログラムであって、 前記物体についての視点の異なる複数の画像からシルエ
ット法を用いてボリュームデータに変換することによっ
て第1のボリュームデータを生成する第1のステップ、 前記物体について3次元計測によって得られた3次元デ
ータをボリュームデータに変換することによって第2の
ボリュームデータを生成する第2のステップ、 前記第1のボリュームデータと第2のボリュームデータ
とを統合して1つのボリュームデータとする第3のステ
ップ、 をコンピュータに実行させるためのコンピュータプログ
ラム。
7. A computer program for generating three-dimensional shape data of an object, comprising converting a plurality of images of the object from different viewpoints into volume data by using a silhouette method. A first step of generating data, a second step of generating second volume data by converting three-dimensional data obtained by three-dimensional measurement of the object into volume data, A third step of integrating the second volume data into one volume data, and causing the computer to execute the third step.
【請求項8】請求項7記載のコンピュータプログラムが
記録されたコンピュータ読み取り可能な記録媒体。
8. A computer-readable recording medium on which the computer program according to claim 7 is recorded.
JP2001177582A 2001-06-12 2001-06-12 Method and apparatus for generating three-dimensional shape data and computer program Expired - Fee Related JP4904638B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001177582A JP4904638B2 (en) 2001-06-12 2001-06-12 Method and apparatus for generating three-dimensional shape data and computer program
US10/166,261 US6914601B2 (en) 2001-06-12 2002-06-11 Method, apparatus, and computer program for generating three-dimensional shape data or volume data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001177582A JP4904638B2 (en) 2001-06-12 2001-06-12 Method and apparatus for generating three-dimensional shape data and computer program

Publications (2)

Publication Number Publication Date
JP2002366934A true JP2002366934A (en) 2002-12-20
JP4904638B2 JP4904638B2 (en) 2012-03-28

Family

ID=19018403

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001177582A Expired - Fee Related JP4904638B2 (en) 2001-06-12 2001-06-12 Method and apparatus for generating three-dimensional shape data and computer program

Country Status (1)

Country Link
JP (1) JP4904638B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006048518A (en) * 2004-08-06 2006-02-16 Toshiba Corp Image processing method, image processing program, and image processing computer
US8659593B2 (en) 2007-07-27 2014-02-25 Techno Dream 21 Co., Ltd. Image processing apparatus, method and program
JP2016224674A (en) * 2015-05-29 2016-12-28 株式会社日立製作所 Point cloud data modeling device and point cloud data modeling method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09231370A (en) * 1996-02-21 1997-09-05 Canon Inc Image information input device
JP2001084403A (en) * 1999-09-10 2001-03-30 Minolta Co Ltd Method and device for synthesizing three-dimensional data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09231370A (en) * 1996-02-21 1997-09-05 Canon Inc Image information input device
JP2001084403A (en) * 1999-09-10 2001-03-30 Minolta Co Ltd Method and device for synthesizing three-dimensional data

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006048518A (en) * 2004-08-06 2006-02-16 Toshiba Corp Image processing method, image processing program, and image processing computer
US8659593B2 (en) 2007-07-27 2014-02-25 Techno Dream 21 Co., Ltd. Image processing apparatus, method and program
JP2016224674A (en) * 2015-05-29 2016-12-28 株式会社日立製作所 Point cloud data modeling device and point cloud data modeling method

Also Published As

Publication number Publication date
JP4904638B2 (en) 2012-03-28

Similar Documents

Publication Publication Date Title
CN110458939B (en) Indoor scene modeling method based on visual angle generation
US7940279B2 (en) System and method for rendering of texel imagery
CN104616345B (en) Octree forest compression based three-dimensional voxel access method
US10762704B2 (en) Method for establishing a deformable 3D model of an element, and associated system
CN115984476B (en) A texture-based 3D model clipping method
JP5036179B2 (en) Two-dimensional linear data real-time three-dimensional conversion method and apparatus, two-dimensional linear data real-time three-dimensional image display method and display apparatus
CN113516769A (en) Virtual reality three-dimensional scene loading and rendering method and device and terminal equipment
KR20050086463A (en) System and method for performing domain decomposition for multiresolution surface analysis
KR20010006824A (en) Generation of curved - surface model by reversible rounding operation
JP2000348213A (en) Three-dimensional image generating device, three- dimensional image generating and display device, and method thereof and recording medium
US6914601B2 (en) Method, apparatus, and computer program for generating three-dimensional shape data or volume data
JP2003323640A (en) Method of generating high-accuracy city model using laser scanner data and aerial photograph image, high-accuracy city model generation system, and high-accuracy city model generation program
CN116310753B (en) A vectorized skeleton extraction method and system for outdoor scene point cloud data
JP4229398B2 (en) Three-dimensional modeling program, three-dimensional modeling control program, three-dimensional modeling data transmission program, recording medium, and three-dimensional modeling method
CN115937279B (en) Point cloud density upsampling method, system and medium based on cross-modal data registration
JP3950376B2 (en) Shape model generation method and apparatus from three-dimensional point group, shape model generation program from three-dimensional point group, and recording medium recording the program
CN120339561A (en) A method, system, device and medium for fusion of multiple videos and three-dimensional scenes
JP2002366935A (en) Method and device for generating three-dimensional shape data and computer program
JP4904638B2 (en) Method and apparatus for generating three-dimensional shape data and computer program
CN117974899B (en) Three-dimensional scene display method and system based on digital twinning
CN119693221A (en) A method and device for generating orthophoto based on scene reconstruction
JP4320577B2 (en) Three-dimensional model generation method and apparatus, and computer program
CN119625212A (en) A method, system and storage medium for converting elevation map and water depth map
JPH096941A (en) Three-dimensional topographical data converting device
JP2003123057A (en) Method and apparatus for generating three-dimensional shape model

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20050613

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20050704

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080425

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110112

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110125

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110325

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111226

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150120

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees