JP2016514310A - Image processing - Google Patents
Image processing Download PDFInfo
- Publication number
- JP2016514310A JP2016514310A JP2015559552A JP2015559552A JP2016514310A JP 2016514310 A JP2016514310 A JP 2016514310A JP 2015559552 A JP2015559552 A JP 2015559552A JP 2015559552 A JP2015559552 A JP 2015559552A JP 2016514310 A JP2016514310 A JP 2016514310A
- Authority
- JP
- Japan
- Prior art keywords
- cube
- volume
- points
- curved
- current
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/87—Combinations of systems using electromagnetic waves other than radio waves
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S7/00—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
- G01S7/48—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
- G01S7/481—Constructional features, e.g. arrangements of optical elements
- G01S7/4817—Constructional features, e.g. arrangements of optical elements relating to scanning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/56—Particle system, point based geometry or rendering
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Electromagnetism (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
物体の組の点群データから自動的にその物体の組の三次元表示を生成するための方法および装置が記載されている。方法および装置は、物体によって占有された空間を複数のボリュームに分割する。ボリューム内の点がおおよそ表面上に共存していれば、そのようなボリュームは、表面ボリュームとして指定される。おおよそ同一平面上の表面を有する表面ボリュームはより大きな表面ボリュームを形成するために結合される。ボリューム内の点がおおよそ線上に共存していれば、そのようなボリュームは、線ボリュームとして指定される。おおよそ同一直線上の線を有する線ボリュームは、より大きな線ボリュームを形成するために結合される。【選択図】 図1A method and apparatus for automatically generating a three-dimensional representation of a set of objects from point cloud data of the set of objects is described. The method and apparatus divides the space occupied by the object into a plurality of volumes. If a point in the volume approximately coexists on the surface, such a volume is designated as a surface volume. Surface volumes having approximately coplanar surfaces are combined to form a larger surface volume. If the points in the volume coexist roughly on the line, such a volume is designated as a line volume. Line volumes having approximately collinear lines are combined to form a larger line volume. [Selection] Figure 1
Description
本発明は、物体の1組の三次元の点群データから自動的にその物体の1組の三次元表示を生成するための方法および装置に関する。 The present invention relates to a method and apparatus for automatically generating a set of three-dimensional representations of an object from a set of three-dimensional point cloud data.
実在する物体の正確な三次元(3D)コンピュータモデルの生産は、考古学、建築、土木および機械工学、および地理的なマッピングの分野においても、他の多くの領域と同様に非常に有用であることが分かっている。それらのアプリケーションの多くは、スキャナーが、表面の点の三次元の「点群(point cloud)」を生成するために、物体の表面上の
多数の点を測定する。この点の群は、非常に大量のデータを含んでもよく、他の理由だけでなくこのためにも、効率的に最終モデルへの取り込みを操ったり、処理したりすることが難しい。従って、例えば、三次元のコンピュータ支援設計(CAD)モデル形式にするように、点群データをより容易に取り扱える形式に変換することは利益がある。
The production of accurate three-dimensional (3D) computer models of real objects is very useful in the fields of archeology, architecture, civil engineering and mechanical engineering, and geographical mapping, as well as many other areas. I know that. In many of these applications, the scanner measures a large number of points on the surface of the object in order to generate a three-dimensional “point cloud” of the points on the surface. This group of points may contain a very large amount of data, and for other reasons as well as this, it is difficult to efficiently manipulate and process the final model. Therefore, it is beneficial to convert point cloud data into a format that can be more easily handled, for example, in a three-dimensional computer aided design (CAD) model format.
点群データの本質は、それらが、他の画像技術においては存在しない解析の見方があることを意味する。例えば、磁気共鳴画像診断(MRI)およびコンピュータ断層撮影(CAT)スキャンのような医用画像技術は、具体的な体積をスキャンしてスキャンされた体積内の全ての点で定義された連続的な密度値から三次元画像を生成する。しかしながら点群にとっては点の密度は、物体の密度または他の特性の表示というより、スキャナー位置への距離および角度の、およびスキャナー設定への、関数である。加えて、スキャンされた体積の大きな領域は、いかなる特徴も完全に欠けていてもよい。 The essence of point cloud data means that they have an analysis view that does not exist in other imaging technologies. For example, medical imaging techniques such as magnetic resonance imaging (MRI) and computed tomography (CAT) scans scan a specific volume and have a continuous density defined at all points within the scanned volume. Generate a 3D image from the values. For point clouds, however, the density of points is a function of distance and angle to the scanner position, and to scanner settings, rather than an indication of object density or other characteristics. In addition, the scanned high volume area may be completely devoid of any features.
現在のところ点群データは、構造を認識することによってデータを説明し、何が識別されているかの三次元モデル(3D model)を手作業で生成する専門家(または専門家のチーム)から与えられている。そのプロセスはいくつかの欠点がある。それは第1に、完成するために非常に多くの工数を必要とし、コストの増大を引き起こす。第2に、同一の点群を解釈する異なる人々は、異なる三次元モデルを生成することもある。そのようなモデルのユーザは、従って、それらの正確さに頼りすぎることができない。この第2の困難さは、可動スキャナーの使用に起因するノイズの多い点群データの場合に顕在化する。それら(点群データ)がノイズが多いとはいえ、可動スキャナーは、問題となるスキャニング技術の範囲をより大きい領域でスキャンするためには、静止スキャナーよりは好ましい。 Currently, point cloud data is given by an expert (or team of experts) that explains the data by recognizing the structure and manually generates a 3D model of what is being identified (3D model). It has been. The process has several drawbacks. First, it requires a great deal of man-hours to complete and causes an increase in cost. Second, different people interpreting the same point cloud may generate different three-dimensional models. Users of such models can therefore not rely too much on their accuracy. This second difficulty is manifested in the case of noisy point cloud data resulting from the use of a movable scanner. Although they (point cloud data) are noisy, movable scanners are preferred over stationary scanners to scan the range of scanning techniques in question in a larger area.
三次元モデルを自動的に生成することを特許請求している別の装置も開示されているが、これは別の欠点を抱えている。例えば、米国特許公報8,244,026号は、グラウンドスキャンの点群を光検出および測距(ranging)処理する装置(LIDAR)を記載
している。グラウンドフィルタが、グラウンドの上方に延びている特徴を識別できるようにそのグラウンドを除去する。その後で、自動の特徴サーチおよび認識ユニットが、ある特徴に関連付けられている点を認識し、それらをその特徴を表している仮想物体と交換する。このような装置は、グラウンドを基準点として使用するので、別の応用には使用することができない。加えて、その物体のための仮想物体が存在する物体のみが置き換え可能であり、専門家はその結果またはモデルを、手作業で、もっと特異な機能でモニターしなければならないであろう。
Another device has been disclosed that claims to automatically generate a three-dimensional model, but it has other drawbacks. For example, U.S. Pat. No. 8,244,026 describes an apparatus (LIDAR) that performs light detection and ranging processing on a ground scan point cloud. The ground filter removes the ground so that features extending above the ground can be identified. Thereafter, an automatic feature search and recognition unit recognizes points associated with a feature and replaces them with virtual objects representing that feature. Such devices use the ground as a reference point and cannot be used for other applications. In addition, only the object for which there is a virtual object for that object can be replaced, and the expert will have to monitor the result or model manually and with more specific functions.
欧州特許公報第1,691,335号は、2次元プロファイルに沿った点群へ表面を適合させるための装置を記載している。ここでの欠点は、プロファイルが最初に定義されなければならないことであり、手作業でも自動的メカニズムによってもこの発明の一部を形成しないことである。それに反して、本発明は、提供されるべき2次元または別のプロフ
ァイルを必要としない。
European Patent Publication No. 1,691,335 describes an apparatus for fitting a surface to a point cloud along a two-dimensional profile. The disadvantage here is that the profile must first be defined and does not form part of this invention either manually or by an automatic mechanism. In contrast, the present invention does not require a two dimensional or separate profile to be provided.
クリアエッジ3D(ClearEdge 3D)は、点群から自動的に特徴を抽出するソフトウエアを製造する。このソフトウエアは、国際公開公報第2010/042466号に記載された技術を使用しており、ここでは、1または2以上の表面区画が点群から抽出され、物体の1または2以上の主軸が決定されるように用いられる。しかしながら、この方法は、特に可動スキャナーで生成されたデータを解析する場合のように、スキャンされた物体が共通の整列された主軸を有しないときには用いることができない。事実、クリアエッジ3Dは、ユーザに特徴の初版を手作業で定義することを要求し、それらのコピーがその後、自動的に識別される。 ClearEdge 3D manufactures software that automatically extracts features from point clouds. This software uses the technique described in WO 2010/042466, where one or more surface sections are extracted from the point cloud and one or more principal axes of the object are Used to be determined. However, this method cannot be used when the scanned object does not have a common aligned principal axis, particularly when analyzing data generated by a movable scanner. In fact, the clear edge 3D requires the user to manually define the first version of the feature, and those copies are then automatically identified.
特許請求の範囲に記載された本発明の観点は、計算効率、および有用な省力化の解決策を提供するが、これに限定されず、優れた特徴が実在の物体として識別されて、仮想等価物に交換されるシナリオを提供する。加えて、本発明の典型的な実施形態は、可動スキャナーシステムから点群データを変換するのに十分に安定している。 The claimed aspects of the invention provide, but are not limited to, computational efficiency and useful labor-saving solutions, where superior features are identified as real objects and virtually equivalent Provide scenarios that are exchanged for things. In addition, exemplary embodiments of the present invention are sufficiently stable to convert point cloud data from a movable scanner system.
本発明は、3×3の対称行列の固有値及び対応する固有ベクトルの頻繁な計算を要求する。これは、例えばG.H.GolubおよびC.F.van Loanによる、「行列計算(Matrix Computations)」、1983年、ジョンホプキンス大学通信、に記載され
ているように、ヤコビの対角化法を用いて容易に解くことができる。しかしながら、任意の他の有効な固有値および固有ベクトル計算方法でも、それが2または全ての固有値が他と異なっていない場合でも正確に対処できるものであれば、代わりに用いることもできる。
The present invention requires frequent calculation of the eigenvalues of the 3 × 3 symmetric matrix and the corresponding eigenvectors. This is for example described in G.I. H. Golub and C.I. F. It can be easily solved using Jacobian diagonalization, as described by van Loan in “Matrix Computations”, 1983, John Hopkins University News. However, any other valid eigenvalue and eigenvector calculation method can be used instead if it can accurately handle two or all eigenvalues not different from others.
本発明は、添付された特許請求の範囲の記載によって定義される。本発明の典型的な実施形態の他の特徴および利点は、添付図面と併用する以下の説明から明らかになるであろう。 The invention is defined by the appended claims. Other features and advantages of exemplary embodiments of the present invention will become apparent from the following description taken in conjunction with the accompanying drawings.
図1は、本発明の典型的な1実施形態による装置の一般的な準備を示すブロック図である。スキャナー120は、一連のレーザパルスを放射するLIDARスキャニングモジュール102を含む。それらのレーザパルスは、関心物体104の表面の全域でスキャンされ、パルスが表面から反射されてスキャニングモジュールのセンサによって受信される。スキャナー120の処理モジュール106は、レーザパルスの飛行時間から表面上の点までの距離を計算してもよく、この距離データに基づいて点群を生成してもよい。点群データ108は、その後、更なる処理の前に点群データベース110に格納される。更なる処理が必要とされれば、点群データは、コンピュータ112に送られ、そのコンピュータの点群処理モジュールがそのデータを三次元表示(3D representation)118に変換する
方法を実行する。このような方法の1実施例が以下に詳細に述べられる。本方法が完了すれば、三次元表示118は、メモリ114にデータファイルとして記憶されてもよく、および/または見える形で出力されてもよい。
FIG. 1 is a block diagram illustrating the general preparation of an apparatus according to an exemplary embodiment of the present invention. The
このような三次元表示が利用できる種々の応用がある。例えば、車のアセンブリラインのシナリオでは、相互に適合するように設計された種々の部品が、LIDARスキャナーによってスキャンされてもよい。得られた点群は、三次元ベクトルモデルへ変換されることができ、その部品が個別の許容差の範囲内で相互に適合することができるかどうかを決定することができる。本明細書に記載するような自動化技術なしに前述したような従来技術を用いて正確な結果を達成するためには多大な工数を要し、要求される時間軸内では実行可能ではなかった。 There are various applications in which such a three-dimensional display can be used. For example, in a car assembly line scenario, various parts designed to fit together may be scanned by a LIDAR scanner. The resulting point cloud can be converted to a three-dimensional vector model to determine whether the parts can fit each other within individual tolerances. Achieving accurate results using conventional techniques such as those described above without the automated techniques described herein required a significant amount of man-hours and was not feasible within the required time axis.
別の応用例は、道路沿いのガードレールに関する。多くの公共団体が、高速で交通している道路上のガードレールに対して最低の高さを要求する。この要求の順守を保証するために、車に搭載されたスキャナーは、ガードレールのための点群データを生成するために道路の多くの区域でスキャンすることができる。このデータが三次元モデルに変換されることができて、レール高さが決定される。繰り返しになるが、データをベクトル図形モデルに変換するための手作業で行う方法は、長時間を要する。しかしながら、手作業で行う
作業者が異なれば同じ区域のレールに対して異なる高さを決定することがよく起こり得るので、問題はより悪くなる。既得の利益が異なるグループは、意図的にまたはそうでなくても、得られるモデルをモデル決定者(modeller)にとってより好ましい事実であるようなデータに適合するように提供するかもしれない。モデル決定者が十分に高い個別のガードレールを決定したが、それが正しくないとき、結果は悲惨になりうる。従って、以下に記載するような客観的な方法が好ましい。
Another application relates to guardrails along the road. Many public bodies require a minimum height for guardrails on high-speed traffic roads. In order to ensure compliance with this requirement, the onboard scanner can be scanned in many areas of the road to generate point cloud data for the guardrail. This data can be converted into a three-dimensional model to determine the rail height. Again, the manual method for converting data to a vector graphic model takes a long time. However, the problem is exacerbated because different manual workers often determine different heights for rails in the same area. Groups with different vested benefits may provide the resulting model to fit data that is a more favorable fact for the modeller, whether intentionally or not. If the model determiner determines a sufficiently high individual guardrail, but the result is incorrect, the results can be disastrous. Therefore, an objective method as described below is preferable.
点群の点が1または2以上の三次元物体の表面に分布していると仮定する。この明細書に記載されている技術は、点群を物体のCADモデル表示に変換することである。これらは、閉じた平面ポリゴンの端部(物体の平面を表す)を有する線区画、および電力線、電話線のような平坦な平面を有しない物体を表している別の線区画、に接続されたセットから構成されている。(例えばパイプやトンネルのように)円筒のような非平面の表面を構成する物体は、物体の表面の接線方向である十分な数の小さな平面によって表される。本方法によって、どのような三次元物体でも表すことができる。 Assume that the points of the point group are distributed on the surface of one or more three-dimensional objects. The technique described in this specification is to convert a point cloud into a CAD model representation of an object. They were connected to a line segment with the end of a closed planar polygon (representing the plane of the object), and another line segment representing an object that does not have a flat plane such as a power line, telephone line It consists of a set. An object comprising a non-planar surface such as a cylinder (such as a pipe or tunnel) is represented by a sufficient number of small planes that are tangential to the surface of the object. Any three-dimensional object can be represented by this method.
図2は、本方法の主ステップであるM1からM12までを示すフローチャートである。 FIG. 2 is a flowchart showing the main steps M1 to M12 of the method.
<M1>
物体によって占められた空間の位置に三次元格子を重ね合わせるステップ。格子は空間を仕切って、数は多いが有限なキューブ(cubes)のリストにする。コンピュータ記憶空
間を浪費することを避けるために、リストは、いかなる空のキューブをも除外している。目下の実施形態においては、キューブは全て同じ大きさである。各キューブの辺の長さは、その分解能と呼ばれる。(例えば部分的にスキャンされた表面が非常に大きな曲率を有しているなどで)必要であれば、これらのキューブのいくつかをより小さいキューブにサブ分割することができ、それらを更にサブ分割することなどもできる。このような方法で、異なる局部的な分解能を異なる平面で使用することができる。三次元空間の別の区分化は、例えば4面体を用いることもまた可能である。以下においては、用語キューブは、4面体または別の空間充填モザイク加工をも意味すると解釈することができる。
<M1>
Superimposing a three-dimensional lattice on the position of the space occupied by the object. The grid partitions the space into a list of large but finite cubes. To avoid wasting computer storage space, the list excludes any empty cubes. In the current embodiment, the cubes are all the same size. The length of the side of each cube is called its resolution. If necessary (for example, a partially scanned surface has a very large curvature), some of these cubes can be subdivided into smaller cubes, which can be further subdivided You can also do it. In this way, different local resolutions can be used on different planes. Another segmentation of the three-dimensional space can also use, for example, a tetrahedron. In the following, the term cube can be taken to mean tetrahedron or another space-filled mosaic process.
<M2>
空でないキューブのそれぞれを以下のように分類するステップ:一致的なキューブ(キューブ内の全ての点がおおよそ同じ位置に位置している)、同一平面上のキューブ(キューブ内の全ての点がおおよそ1つの平面内に存在している)、もしくは同一直線上のキューブ(キューブ内の全ての点がおおよそ1つの直線に沿って存在している)、または空間充填的なキューブ(局部的には点群は線でも表面でもない)。ステップM2の細部は図3に示されている下記のステップA1からA8で、より詳細に述べられる。
<M2>
Steps to classify each non-empty cube as follows: a matching cube (all points in the cube are located at approximately the same position), a coplanar cube (all points in the cube are approximately Existing in one plane), or a collinear cube (all points in the cube are approximately along one line), or a space-filled cube (locally a point) Groups are neither lines nor surfaces). Details of step M2 will be described in more detail in the following steps A1 to A8 shown in FIG.
<M3>
その平面(それらの点群の点の平面)がおおよそ同一平面上に存在している、隣接する同一平面上のキューブを結合させることにより平面キューブセットを成長させるステップ。各平面キューブセットは、キューブセットの共通平面と呼ばれる単一の数学的平面に関連付けられている。ステップM3の終わりで、全ての同一平面上のキューブは完全に1つの平面キューブセットに属する。各平面キューブセットは、1または2以上の同一平面上のキューブを含む。ステップM3の細部は図4に示されている下記のステップB1からB24で、より詳細に説明される。
<M3>
Growing a planar cube set by joining adjacent coplanar cubes whose planes (the planes of the points of the point cloud) are approximately coplanar. Each planar cube set is associated with a single mathematical plane called the common plane of the cube set. At the end of step M3, all coplanar cubes completely belong to one planar cube set. Each planar cube set includes one or more coplanar cubes. Details of step M3 will be described in more detail in the following steps B1 to B24 shown in FIG.
<M4>
各平面キューブセットを以下のように平坦化するステップ。いかなる同一平面上のキュ
ーブでもその平面キューブセットの共通平面によって交差されていなければ、そのキューブを平面キューブセットから除き、共通平面上にその全ての点を投影する。いかなる投影された点でも、すでに平面キューブセットに属していないキューブ内で存在していれば、平面キューブセットにそのキューブを加える。このことは、ステップM4の終わりで、平面キューブセットはステップM2で同一平面上のキューブ、として分類されなかったキューブをも含んでも良いことを意味する。キューブは、現時点で2以上の平面キューブセットに属してもよい。しかしながら、2以上の平面キューブセットに属するいかなるキューブも、それが属している全ての平面キューブセットの共通平面によって交差される。ステップM4の細部は図5に示されている下記のステップY1からY8で、より詳細に説明される。
<M4>
Flatten each planar cube set as follows: If no coplanar cube is intersected by the common plane of the planar cube set, the cube is removed from the planar cube set and all its points are projected onto the common plane. If any projected point exists in a cube that does not already belong to the planar cube set, add that cube to the planar cube set. This means that at the end of step M4, the planar cube set may also include cubes that were not classified as coplanar cubes in step M2. A cube may currently belong to more than one planar cube set. However, any cube that belongs to more than one planar cube set is intersected by a common plane of all planar cube sets to which it belongs. Details of step M4 will be described in more detail in the following steps Y1 to Y8 shown in FIG.
<M5>
各平面キューブセットが平面境界キューブセットを生成するステップ。これは、平面キューブセットの境界上の全てのキューブで構成される。ステップM5の細部は図6に示されている下記のステップX1からX10で、より詳細に説明される。
<M5>
Each planar cube set generates a planar boundary cube set. This consists of all the cubes on the boundary of the planar cube set. Details of step M5 will be described in more detail in the following steps X1 to X10 shown in FIG.
<M6>
各平面キューブセットの境界ポリゴンが、平面キューブセットの外側の周りに、および平面キューブセットの内側のいかなる穴でもその周りに、平面キューブ境界セットに属しているキューブの端部を用いて順々に追跡されるステップ。ステップM6の細部は、図7に示されている下記のステップZ1からZ21で、より詳細に説明される。
<M6>
The boundary polygons of each planar cube set are in turn around the outside of the planar cube set and around any hole inside the planar cube set, using the end of the cube belonging to the planar cube boundary set. The tracked step. Details of step M6 will be explained in more detail in the following steps Z1 to Z21 shown in FIG.
<M7>
群境界点が各境界ポリゴンの各端部に対して推定されるステップ。群境界点は境界ポリゴンとは異なり、その端部がキューブの表面に沿って存在しており、それぞれの群境界点が、各平面キューブセットの共通平面上に投影された点群の点の凸含(convex hull)に
近接して存在している。群境界点はステップM6で計算されたそれぞれ別個の境界ポリゴンに遭遇する順に格納される。ステップM7の細部は、図8に示されている下記のステップU1からU11で、より詳細に説明される。
<M7>
A group boundary point is estimated for each end of each boundary polygon. Group boundary points are different from boundary polygons, and their ends exist along the surface of the cube, and each group boundary point is a convexity of a point cloud point projected on the common plane of each plane cube set. It exists in close proximity to the convex hull. The group boundary points are stored in the order in which each separate boundary polygon calculated in step M6 is encountered. Details of step M7 will be explained in more detail in the following steps U1 to U11 shown in FIG.
<M8>
いかなる群境界点でも別の平面キューブセットを有する共通平面の交差に十分接近して存在していれば、その群境界点の位置が交差の線上の最も近い点まで動かされるステップ。群境界点が2以上の平面を有する交差に十分接近して存在していれば、その群境界点は交差の最も近い点まで移動されるステップ。ステップM8の細部は、図9に示されている下記のステップV1からV14で、より詳細に説明される。
<M8>
If any group boundary point exists sufficiently close to the intersection of a common plane with another planar cube set, the position of that group boundary point is moved to the closest point on the line of intersection. If the group boundary point exists sufficiently close to an intersection having two or more planes, the group boundary point is moved to the closest point of the intersection. Details of step M8 will be described in more detail in the following steps V1 to V14 shown in FIG.
<M9>
境界ポリゴンの端部が、(それらが)ステップM8の終わりで格納される順に異なる群境界点で構成されるポリラインに変換されるステップ。分離されたポリラインは、各境界ポリゴンに対して作られる。
<M9>
Converting the edges of the boundary polygons into polylines composed of different group boundary points in the order in which they are stored at the end of step M8. Separate polylines are created for each boundary polygon.
<M10>
その線がおおよそ同一直線である隣接する同一直線上のキューブが、線キューブセットを形成するために結合されるステップ。それぞれの線キューブセットは、そのキューブセットの共通線と呼ばれる単一の数学的直線に関連付けられている。ステップM10の終わりに、全ての同一直線上のキューブが、完全に1つの線キューブセットに属する。それぞれの線キューブセットは、1または2以上の同一直線上のキューブを含む。ステップM10の細部は、図10に示されている下記のステップW1からW24で、より詳細に説明される。
<M10>
Adjoining collinear cubes whose lines are approximately collinear are combined to form a line cube set. Each line cube set is associated with a single mathematical line called the common line of that cube set. At the end of step M10, all collinear cubes completely belong to one line cube set. Each line cube set includes one or more collinear cubes. Details of step M10 will be described in more detail in the following steps W1 to W24 shown in FIG.
<M11>
それぞれの線キューブセットを以下のように平坦化するステップ。いかなる同一直線上のキューブでも、その線キューブセットの共通線によって交差されていなければ、そのキューブをその線キューブセットから除き、共通線上にその全ての点を投影する。いかなる投影された点でも、すでに線キューブセットに属していないキューブ内に存在していれば、線キューブセットにそのキューブを加える。このことは、ステップM11の終わりで、線キューブセットはステップM2で同一直線上のキューブ、として分類されなかったキューブをも含んでもよいことを意味する。キューブは2以上の線キューブセットに属してもよい。(事実、キューブは、線キューブセットおよび平面キューブセットに同時に属してもよい。)しかしながら、2以上の線キューブセットに属するいかなるキューブも、それが属している全ての線キューブセットの共通線によって交差される。ステップM11の細部は、図11に示されている下記のステップT1からT8で、より詳細に説明される。
<M11>
Flatten each line cube set as follows: If no collinear cube is intersected by the common line of the line cube set, the cube is removed from the line cube set and all its points are projected onto the common line. If any projected point is in a cube that does not already belong to the line cube set, add that cube to the line cube set. This means that at the end of step M11, the line cube set may also contain cubes that were not classified as collinear cubes in step M2. A cube may belong to more than one line cube set. (In fact, a cube may belong to a line cube set and a planar cube set simultaneously.) However, any cube that belongs to two or more line cube sets intersects with a common line of all the line cube sets to which it belongs. Is done. Details of step M11 will be described in more detail in the following steps T1 to T8 shown in FIG.
<M12>
それぞれの線キューブセットの共通線に沿った1または2以上の線区域の終点が識別されるステップ。ステップM12の細部は、図12に示されている下記のステップS1からS16で、より詳細に説明される。
<M12>
Identifying the end points of one or more line segments along a common line of each line cube set. Details of step M12 will be described in more detail in the following steps S1 to S16 shown in FIG.
すでに述べたように、このプロセスの最終結果は、従って、他の線区域はもちろん完全に定義された境界を有するポリゴンの製作である。個別の要求を満足しているポリゴン境界に隣接するところで、物体の端部の一部として定義されるように識別される更なる処理が行われてもよい。このような方法で十分なデータを有して、ますます多くのポリゴンを結合させることによって、完全な三次元物体を再構築することができる。これが達成されたときに、物体は重要な特徴の数および位置に関するその重要な特徴およびデータとして識別されることができて、その上、別の関連情報を三次元モデルのユーザに提供することができる。点群データから直接的に物体の識別または比較をすることは、たいへん非効率である。例えば、物体の点群が106個に及ぶ点を含んでいれば、2つのそのような物体
を比較することは、1012に及ぶ計算が必要である(それぞれの計算は物体の点群の点の1つと同様な点の数を有する別の物体とを比較する)。それに反して、同じ物体が小さい数のポリゴン(例えば100に及ぶポリゴン)で構成されているモデルによって表されていれば、必要とされる計算は、はるかに少ない(例えば10,000に及ぶ)ので、プロセスは計算的に、はるかに効率的である。街路風景のモデルにおいては、共通の街路調度品がそれらの形状(ポリゴンの組み合わせ)によって識別されてもよい。それらは、当事者によって抽出されることができる街路調度品の位置に関する正確な仮想のモデルまたはデータと交換されることができる。三次元画像を作り出すために平行な写真画像が利用できれば、それらから生じた画像部分は、表面を埋めるようなそれぞれのポリゴンに関連付けられてもよい。
As already mentioned, the end result of this process is therefore the production of polygons with fully defined boundaries as well as other line areas. Further processing may be performed, identified as defined as part of the edge of the object, adjacent to the polygon boundary that satisfies the individual requirements. A full three-dimensional object can be reconstructed by combining more and more polygons with sufficient data in this way. When this is achieved, the object can be identified as its important features and data regarding the number and location of important features, and additionally provide other relevant information to the user of the 3D model. it can. It is very inefficient to identify or compare objects directly from point cloud data. For example, if an object's point cloud contains 10 6 points, comparing two such objects would require 10 12 computations (each computation of an object's point cloud Compare one of the points with another object that has a similar number of points). On the other hand, if the same object is represented by a model consisting of a small number of polygons (eg 100 polygons), much less computation is required (eg 10,000). The process is computationally much more efficient. In a street scene model, common street furniture may be identified by their shape (polygon combination). They can be exchanged with accurate virtual models or data regarding the location of street furniture that can be extracted by the parties. If parallel photographic images are available to create a three-dimensional image, the resulting image portion may be associated with each polygon that fills the surface.
図3は、(ステップM1で作られた)以下のような各キューブを分類するステップA1からA8を示すステップM2のフローチャートである。空のキューブ(キューブは、いかなる点も含んでいない)、一致的なキューブ(キューブの全ての点がおおよそ同じ位置に位置している)、同一平面上のキューブ(キューブの全ての点がおおよそ1つの平面に存在している。)、同一直線上のキューブ(キューブの全ての点がおおよそ1つの直線に沿って存在している。)、または空間充填的なキューブ。全ての場合において、点群の点が、2または3以上のキューブの間で面または頂点に正確に存在していれば、それらのキューブのうちのただ1つが、その点を含んでいると見なされることに留意されたい。 FIG. 3 is a flowchart of step M2 showing steps A1 to A8 for classifying each cube (created in step M1) as follows. An empty cube (the cube does not contain any points), a matching cube (all the points of the cube are located at approximately the same position), a coplanar cube (all the points of the cube are approximately 1) Lies in one plane.), Collinear cube (all the points of the cube are approximately along one straight line), or space-filled cube. In all cases, if a point in a point cloud is exactly on a face or vertex between two or more cubes, only one of those cubes is considered to contain that point. Please note.
数学的な表面および線は厚さがゼロである。点群は、測定誤差、およびまとめてノイズと呼ばれる他のゆらぎを被るので、点群の点それら自身は、それらを示す真の数学的な表
面または線から少し離れて存在してもよい。これを許容するために、ステップA1からA8に記載された計算は、厚さの許容差を利用する。その最適な値は、点群の正確さに依存する。
Mathematical surfaces and lines are zero in thickness. Since point clouds suffer from measurement errors and other fluctuations, collectively referred to as noise, the points of the point cloud themselves may exist a little away from the true mathematical surface or line that represents them. To allow this, the calculations described in steps A1 to A8 make use of thickness tolerances. Its optimal value depends on the accuracy of the point cloud.
分類プロセスは以下である。 The classification process is as follows.
<A1>
空でないキューブのリスト内で最初のキューブを選択するステップ。
<A1>
The step of selecting the first cube in the list of non-empty cubes.
<A2>
ヤコビの方法、または任意の他の有効な方法を用いて、キューブの中に含まれている点群の点の共分散行列の3つの固有値を計算するステップ。いかなる負の固有値もゼロに設定する。キューブ内に正確に1つの点があれば、3つの固有値は全てゼロに設定する。
<A2>
Calculating the three eigenvalues of the covariance matrix of the points of the points contained in the cube using the Jacobi method, or any other valid method. Set any negative eigenvalues to zero. If there is exactly one point in the cube, all three eigenvalues are set to zero.
<A3>
全ての固有値が厚さのしきい値よりも小さければ、キューブを一致的として分類し、ステップA7へ進むステップ。これは、キューブ内の全ての点がおおよそ一致するときに起こる。
<A3>
If all eigenvalues are less than the thickness threshold, classify the cube as consistent and proceed to step A7. This happens when all the points in the cube roughly match.
<A4>
固有値の2つのみが厚さの許容差よりも小さければ、同一直線上のキューブと分類し、ステップA7へ進むステップ。これは、キューブ内の全ての点が同じ数学的な直線におおよそ沿って存在しているときに起こる。
<A4>
If only two of the eigenvalues are smaller than the thickness tolerance, classify as a collinear cube and proceed to step A7. This happens when all points in the cube are approximately along the same mathematical line.
<A5>
固有値の1つのみが厚さの許容差よりも小さければ、同一平面上のキューブと分類し、ステップA7へ進む。これは、キューブの全ての点が同じ数学的な平面内におおよそ存在しているときに起こる。
<A5>
If only one of the eigenvalues is smaller than the thickness tolerance, it is classified as a coplanar cube and the process proceeds to step A7. This occurs when all the points of the cube are approximately in the same mathematical plane.
<A6>
キューブが空間を満たしているように分類する。これは、空ではないキューブが、一致的なキューブ、同一直線上のキューブ、および同一平面上のキューブ、ではないときに起こる。
<A6>
Classify the cube so that it fills the space. This occurs when non-empty cubes are not coincident cubes, collinear cubes, and coplanar cubes.
<A7>
キューブがリストの最後であれば、停止する。
<A7>
If the cube is at the end of the list, stop.
<A8>
リスト内の次のキューブを選びステップA2へ進む。
<A8>
Select the next cube in the list and proceed to step A2.
図4は、以下の詳細ステップB1からB24に示す、共通平面に沿って隣接する同一平
面上のキューブのセットを成長させるステップM3のフローチャートである。このような方法で成長した同一平面上のキューブの各セットは、平面キューブセットと呼ばれる。
FIG. 4 is a flowchart of step M3 for growing a set of adjacent coplanar cubes along a common plane, as shown in the following detailed steps B1 to B24. Each set of coplanar cubes grown in this way is called a planar cube set.
ここでuは、共通平面に垂直である単位長のベクトルであり、累積された共分散行列Vのユニークな最小の固有値に対応する累積された共分散行列Vの固有ベクトルに等しい。 Where u is a vector of unit length perpendicular to the common plane and is equal to the eigenvector of the accumulated covariance matrix V corresponding to the unique minimum eigenvalue of the accumulated covariance matrix V.
本方法のステップB14およびB21で、2つの平面が同一平面上にあるかどうかを決定するために、現在の累積された共通平面を現在の同一平面上のキューブlを通るように適合した平面と比較する。2つのステップにおいて異なる基準が用いられる。 In steps B14 and B21 of the method, a plane adapted to pass the current accumulated common plane through the current coplanar cube l to determine whether the two planes are coplanar; Compare. Different criteria are used in the two steps.
基準BはステップB21で用いられ、次式を要求する。
Criterion B is used in step B21 and requires:
平面成長プロセスの実際のステップは、以下である。 The actual steps of the planar growth process are as follows.
<B1>
ステップM2で識別された同一平面上のキューブの全てを含んでいる、キューブの未使用リストを作るステップ。このリスト内のいかなるキューブも未使用キューブと呼ばれる。
<B1>
Creating an unused list of cubes containing all of the coplanar cubes identified in step M2. Any cube in this list is called an unused cube.
<B2>
未使用リストが空であれば、停止するステップ。
<B2>
Step to stop if the unused list is empty.
<B3>
平面キューブセットと呼ばれるキューブの空のリストを作るステップ。この平面キューブセットは、平面キューブセット内のキューブの共通平面に沿って全ての同一平面上のキューブを含むように成長させられる。最終的に、平面キューブセットがただ1つしかキューブを含まなくても、キューブの未使用リスト内に現在ある全てのキューブは、平面キューブセットへ移す。
<B3>
The step of creating an empty list of cubes called a planar cube set. This planar cube set is grown to include all coplanar cubes along the common plane of the cubes in the planar cube set. Eventually, even if the planar cube set contains only one cube, all cubes currently in the unused list of cubes are moved to the planar cube set.
<B4>
未使用キューブのリスト内の最初のキューブに現在のキューブを設定するステップ。
<B4>
Setting the current cube to the first cube in the list of unused cubes.
<B5>
候補リストと呼ばれるキューブの空のリストを作るステップ。このリストは、平面キューブセットに含まれるための候補と見なされている、未使用の同一平面上のキューブを含むことになる。
<B5>
Creating an empty list of cubes called a candidate list. This list will include unused coplanar cubes that are considered candidates for inclusion in the planar cube set.
<B6>
特殊リストとよばれるキューブの空のリストを作るステップ。このリストは、平面キューブセットに含まれるための候補として最近拒絶されている、未使用の同一平面上のキューブを含むことになる。
<B6>
The step of creating an empty list of cubes called a special list. This list will contain unused coplanar cubes that have recently been rejected as candidates for inclusion in the planar cube set.
<B7>
未使用リストから現在のキューブを平面キューブセットの中に移すステップ。従って、全ての平面キューブセットは少なくとも1つのキューブを含む。
<B7>
The step of moving the current cube from the unused list into the planar cube set. Thus, every planar cube set includes at least one cube.
<B8>
平面キューブセット内の点の総計が現在のキューブ内の点の合計に等しいように設定するステップ。
<B8>
Setting the sum of points in a planar cube set to be equal to the sum of points in the current cube.
<B9>
平面キューブセット内の点の外積の総計が現在のキューブ内の点の外積の合計に等しいように設定するステップ。
<B9>
Setting the total cross product of points in a planar cube set to be equal to the sum of cross products of points in the current cube.
<B10>
未使用リスト内に存在する現在のキューブの全ての隣接するキューブを候補リストに加えるステップ。ここで、キューブは、それ(キューブ)が現在のキューブと面または頂点を共有していれば、現在のキューブに隣接している。
<B10>
Adding all adjacent cubes of the current cube that are in the unused list to the candidate list. Here, a cube is adjacent to the current cube if it shares a face or vertex with the current cube.
<B11>
候補リストが空であれば、ステップB18へ進むステップ。
<B11>
If the candidate list is empty, the process proceeds to step B18.
<B12>
候補リスト内の最初のキューブに現在のキューブを設定するステップ。
<B12>
Setting the current cube to the first cube in the candidate list.
<B13>
現在のキューブを候補リストから除くステップ。
<B13>
The step of removing the current cube from the candidate list.
<B14>
現在のキューブが基準Aを満足しない場合には、その現在のキューブを特殊リストへ加えてステップB11へ進むステップ。
<B14>
If the current cube does not meet criterion A, add the current cube to the special list and proceed to step B11.
<B15>
現在のキューブを未使用リストから平面キューブセットへ移すステップ.
<B15>
Move the current cube from the unused list to the planar cube set.
<B16>
現在のキューブl内の点の合計slを平面キューブセット内の点の累積された総計sに
追加するステップ。
<B16>
Adding the sum s l of the points in the current cube l to the accumulated total s of the points in the planar cube set.
<B17>
現在のキューブl内の点の外積の合計Wlを平面キューブセット内の点の外積の累積さ
れた総計Wに追加してステップB10へ進むステップ。
<B17>
Adding the sum of the outer products W 1 of the points in the
<B18>
特殊リストが空であれば、平面キューブセットのデータを出力してステップB2へ進むステップ。
<B18>
If the special list is empty, output the plane cube set data and proceed to step B2.
<B19>
特殊リスト内の最初のキューブに現在のキューブを設定するステップ。
<B19>
Setting the current cube to the first cube in the special list.
<B20>
特殊リストから現在のキューブを除くステップ。
<B20>
A step that removes the current cube from a special list.
<B21>
現在のキューブが基準Bを満足しなければ、ステップB18へ進むステップ。
<B21>
If the current cube does not satisfy criterion B, proceed to step B18.
<B22>
現在のキューブを未使用リストから平面キューブセットへ移すステップ。
<B22>
The step of moving the current cube from the unused list to a planar cube set.
<B23>
現在のキューブl内の点の合計slを平面キューブセット内の点の累積された総計sに追加するステップ。
<B23>
Adding the sum s l of the points in the current cube l to the accumulated total s of the points in the planar cube set.
<B24>
現在のキューブl内の点の外積の合計Wlを平面キューブセット内の点の外積の累積された総計Wに追加してステップB18へ進むステップ。
<B24>
Adding the sum W 1 of the outer products of the points in the current cube l to the accumulated total W of the outer products of the points in the planar cube set and proceeding to step B18.
図5は、平面キューブセット内の全てのキューブがその共通平面によって交差されることを保証するために平面キューブセット内の各キューブへ適用される、ステップY1からY8に詳細を示すステップM4のフローチャートである。ステップM4の効果は、平面キューブセットを平坦化することである。新しいキューブがステップM3において平面キューブセットに加えられるたびに共通平面が変わるので、ステップM4は必要である。平面キューブセットの成長プロセスにおいて、初期に加えられたキューブが、共通平面が変化した後でその共通平面によって交差されていることを継続している、という保証はない。ステップM4はこれを補償する。ステップY1からY8は平面キューブセット内の全てのキューブに対して別々に適用されるので、もし必要であれば並列に適用することもできる。 FIG. 5 is a flowchart of step M4, shown in detail in steps Y1 to Y8, applied to each cube in the planar cube set to ensure that all cubes in the planar cube set are intersected by their common plane. It is. The effect of step M4 is to flatten the planar cube set. Step M4 is necessary because the common plane changes each time a new cube is added to the plane cube set in step M3. In the growth process of a planar cube set, there is no guarantee that the initially added cube will continue to be intersected by the common plane after the common plane has changed. Step M4 compensates for this. Steps Y1 to Y8 are applied separately to all cubes in the planar cube set, so they can be applied in parallel if necessary.
平面キューブセットが平坦化されるプロセスのステップは以下である。 The process steps in which the planar cube set is planarized are as follows.
<Y1>
キューブが共通平面によって交差されていれば、停止するステップ。
<Y1>
Stop if the cubes are intersected by a common plane.
<Y2>
キューブを平面キューブセットから除くステップ。
<Y2>
The step of removing a cube from a planar cube set.
<Y3>
キューブ内の第1の点群の点に現在の点を設定するステップ。
<Y3>
Setting the current point to a point in the first point cloud in the cube;
<Y4>
<Y4>
<Y5>
投影された点を含むキューブを探し出すステップ。このキューブを投影されたキューブと呼ぶ。この計算の正確な詳細は、キューブが空間に如何に配置されているかによって決まる。1例においては、キューブは、行、列、および層に配置されている。
<Y5>
Finding a cube that contains projected points. This cube is called a projected cube. The exact details of this calculation depend on how the cube is arranged in space. In one example, cubes are arranged in rows, columns, and layers.
<Y6>
<Y6>
<Y7>
現在の点がキューブ内の最後の点群の点であれば、停止するステップ。
<Y7>
Stop if the current point is the last point cloud point in the cube.
<Y8>
キューブ内の次の点群の点に現在の点を設定してステップY4へ進むステップ。
<Y8>
Setting the current point to the next point group point in the cube and proceeding to step Y4.
図6は、ステップX1からX10に詳細を示すステップM5のフローチャートであり、平面キューブセットには属していないが共通平面によって交差されている隣接するキューブを有する平面キューブセットのメンバーを識別するために適用される。識別ざれたキューブは平面境界キューブセットに格納される。ステップM5が適用される段階で、各平面キューブセットは、それらのキューブの全てが共通平面によって交差されているので平坦化されている。 FIG. 6 is a flowchart of step M5, details in steps X1 to X10, to identify members of a planar cube set that have adjacent cubes that do not belong to the planar cube set but are intersected by a common plane. Applied. The identified cubes are stored in a planar boundary cube set. At the stage where step M5 is applied, each planar cube set is flattened because all of those cubes are intersected by a common plane.
<X1>
空の平面境界キューブセットを作るステップ。
<X1>
Steps to create an empty plane boundary cube set.
<X2>
平面キューブセットが空であれば、停止するステップ。
<X2>
Stop if the planar cube set is empty.
<X3>
平面キューブセット内の最初のキューブに現在のキューブを設定するステップ。
<X3>
Setting the current cube to the first cube in a planar cube set.
<X4>
現在のキューブに直交して隣接する18のキューブを含んでいるリストを生成するステップ。ここで、直交して隣接するキューブとは、その現在のキューブと平面または端部を共有するキューブを意味する。現在のキューブとただ1つの頂点のみを共有しているキューブは、直交して隣接するキューブではない、ことに留意されたい。
<X4>
Generating a list containing 18 cubes orthogonal to and adjacent to the current cube; Here, an orthogonally adjacent cube means a cube that shares a plane or end with the current cube. Note that cubes that share only one vertex with the current cube are not orthogonally adjacent cubes.
<X5>
直交して隣接するキューブのリストの最初のキューブにテストキューブを設定するステップ。
<X5>
Setting the test cube to the first cube in the list of cubes that are orthogonally adjacent.
<X6>
テストキューブが平面キューブセットのメンバーであれば、ステップX8へ進むステップ。
<X6>
If the test cube is a member of a planar cube set, proceed to step X8.
<X7>
共通平面がテストキューブと交差していれば、現在のキューブを平面境界キューブセットへ加えてステップX9へ進むステップ。
<X7>
If the common plane intersects the test cube, add the current cube to the plane boundary cube set and proceed to step X9.
<X8>
テストキューブが、隣接して直交するキューブのリスト内の最後のキューブでなければ、リストの次のメンバーにテストキューブを設定してステップX6へ進むステップ。
<X8>
If the test cube is not the last cube in the list of adjacent orthogonal cubes, set the test cube to the next member of the list and proceed to step X6.
<X9>
現在のキューブが平面キューブセットの最後のキューブであれば、停止するステップ。
<X9>
Step to stop if the current cube is the last cube in a planar cube set.
<X10>
平面キューブセット内の次のキューブに現在のキューブを設定してステップX4へ進むステップ。
<X10>
Set the current cube to the next cube in the planar cube set and proceed to step X4.
図7は、それぞれの平面キューブセットの境界ポリゴンを追跡するために適用される
サブステップZ1からZ21に詳細を示すステップM6のフローチャートである。ステップM6が適用される段階で、それぞれの平面キューブセットは、それらのキューブの全てがそれらの共通平面に交差されるように平坦化されている。共通平面に交差しているいかなるキューブ(平面キューブセットに属さないキューブも含む)をも有する共通平面の交差は、キューブの交差ポリゴンと呼ばれる凸型ポリゴンである。共通平面によって交差されているどのような2つのキューブも、それらの交差ポリゴンが少なくとも1つの共通端部を共有していれば、同一平面上に隣接するキューブと言わなければならない。交差ポリゴンを有するキューブがただ1つの頂点のみを共有していれば、同一平面上に隣接してはいないことを注記しておく。例えば、図14では、ポリゴンD0C0P0およびC0B0Q0はポリゴンA0B0C0D0E0の同一平面上に隣接しているが、ポリゴンC0Q0P0は隣接していない。
FIG. 7 is a flowchart of step M6 showing details in sub-steps Z1 to Z21 applied to track the boundary polygon of each planar cube set. At the stage where step M6 is applied, each planar cube set is flattened so that all of those cubes intersect their common plane. A common plane intersection having any cube that intersects the common plane (including cubes that do not belong to a plane cube set) is a convex polygon called a cube intersection polygon. Any two cubes that are intersected by a common plane must be said to be adjacent cubes on the same plane if their intersecting polygons share at least one common end. Note that cubes with intersecting polygons are not adjacent on the same plane if they share only one vertex. For example, in FIG. 14, the polygons D 0 C 0 P 0 and C 0 B 0 Q 0 are adjacent on the same plane as the polygons A 0 B 0 C 0 D 0 E 0 , but the polygon C 0 Q 0 P 0 Are not adjacent.
ポリゴンファン(polygonal fan)は、各ポリゴンが、おそらく最後を除いてリスト内
の次のポリゴンと共通端部を共有している中心の頂点の周りに連続的に配置された、2または3以上の凸状ポリゴン(convex polygons)のリストである。例えば、図14におい
ては、ポリゴンC0D0E0A0B0、C0B0Q0、C0Q0P0、およびC0P0D0は、中央の頂点C0に関して4つのメンバーからなるポリゴンファンを有している。共通端部は、C0B0、C0Q0、およびC0D0である。同様に、図15においては、ポリゴンGHO、GOB
、およびGBFは中央の頂点Gに関して3つのメンバーからなるポリゴンファンを有している。共通端部は、GOおよびGBである。
A polygonal fan is a series of two or more polygons, each of which is placed consecutively around a central vertex that shares a common end with the next polygon in the list, except perhaps at the end. It is a list of convex polygons. For example, in FIG. 14, the polygons C 0 D 0 E 0 A 0 B 0 , C 0 B 0 Q 0 , C 0 Q 0 P 0 , and C 0 P 0 D 0 are four with respect to the central vertex C 0 . Has a polygon fan consisting of members. The common ends are C 0 B 0 , C 0 Q 0 , and C 0 D 0 . Similarly, in FIG. 15, polygons GHO and GOB
, And GBF have a polygon fan consisting of three members with respect to the central vertex G. The common ends are GO and GB.
以下に簡潔に述べれば、平面キューブセットに属しているキューブの交差ポリゴンは、内部ポリゴンと呼ばれ、それ以外は外部ポリゴンと呼ばれる。平面境界キューブセット内の全てのキューブの交差ポリゴンは内部ポリゴンであり、少なくとも1つの外部ポリゴンの同一平面上に隣接するポリゴンである。内部ポリゴンと外部ポリゴンとの間で共有された端部は、外部端部と呼ばれる。それらは、平面キューブセットの境界ポリゴンと呼ばれる1または2以上の近接している(しかし凸状でなくてもよい)ポリゴンを形成する。境界ポリゴンの連続している端部は、そのメンバーが全て内部ポリゴンであるポリゴンファンの連続している端部である。ステップM6によって追跡されるのは、これらの境界ポリゴンである。 Briefly described below, the intersecting polygons of a cube belonging to a planar cube set are called internal polygons, and the rest are called external polygons. The intersecting polygons of all the cubes in the plane boundary cube set are inner polygons, and are polygons adjacent on the same plane of at least one outer polygon. The end shared between the inner polygon and the outer polygon is called the outer end. They form one or more adjacent (but not necessarily convex) polygons called boundary polygons in a planar cube set. The continuous edge of the boundary polygon is the continuous edge of a polygon fan whose members are all internal polygons. It is these boundary polygons that are tracked by step M6.
平面キューブセットは、それが平面キューブセットの中に1または2以上の穴を有しているか、および/または、平面キューブセットのキューブが同じキューブセットの別の部分から切断されている1または2以上の部分を形成しているか、または、共通頂点によってのみ他に接続されていれば、2以上の境界ポリゴンを有することになる。1例が図15に示されている。ここでは、図面を簡単にするために全てのポリゴンが三角形である。陰影付きのポリゴンは、全てが内部ポリゴンである。陰影の付いていないポリゴンは、少なくとも1つの内部ポリゴンの同一平面上に隣接しているポリゴンである外部ポリゴンである。OIK、OKC、およびOBGを除くすべての陰影を付けたポリゴンは、また平面境界キューブセットのメンバーである。図15においては、3つの境界ポリゴン、ABC、DEFGHIJKLMN、およびPQFがある。端部EFおよびFPは、同じ境界ポリゴンの連続する端部ではない。なぜならば、交差ポリゴンEFBおよびPQFはそれらメンバーの全てが内部である1つのポリゴンファンのメンバーではないからである。それに反して、端部HGおよびGFは、ポリゴンGHO、GOB,およびGBFによって形成された3つのメンバーからなるポリゴンファンの連続する端部である。同様に、端部ABおよびBCは、ポリゴンBAE、BEF、BFG、BGO、およびBOCによって形成された5つのメンバーからなるポリゴンファンの連続する端部である。 A planar cube set has one or more holes in the planar cube set and / or a cube of the planar cube set is cut from another part of the same cube set 1 or 2 If the above portions are formed or connected to each other only by a common vertex, it has two or more boundary polygons. An example is shown in FIG. Here, all the polygons are triangles to simplify the drawing. All shaded polygons are internal polygons. The unshaded polygon is an external polygon that is a polygon adjacent on the same plane of at least one internal polygon. All shaded polygons except OIK, OKC, and OBG are also members of the planar boundary cube set. In FIG. 15, there are three boundary polygons, ABC, DEFGHIJKLMN, and PQF. The end portions EF and FP are not continuous ends of the same boundary polygon. This is because the intersecting polygons EFB and PQF are not members of a single polygon fan, all of which are internal. On the contrary, the end portions HG and GF are continuous end portions of a polygon fan composed of three members formed by the polygons GHO, GOB, and GBF. Similarly, end portions AB and BC are continuous end portions of a polygon fan composed of five members formed by polygons BAE, BEF, BFG, BGO, and BOC.
境界ポリゴンの端部は、以下のように追跡される。これはまた、図7を参照されたい。 The edge of the boundary polygon is tracked as follows. This is also referred to FIG.
<Z1>
境界ポリゴンの空のリストを作るステップ。
<Z1>
Creating an empty list of boundary polygons.
<Z2>
平面境界キューブセットが空であれば、停止するステップ。
<Z2>
Stop if the planar bounding cube set is empty.
<Z3>
平面キューブセット内の最初のキューブを現在のキューブとして選択するステップ。
<Z3>
Selecting the first cube in the planar cube set as the current cube.
<Z4>
現在のキューブの交差ポリゴン内の全ての外部端部を未使用としてマークを付けるステップ。
<Z4>
Mark all external edges in the intersecting polygon of the current cube as unused.
<Z5>
現在のキューブが平面境界キューブセット内の最後でなければ、セット内の次のキューブを現在のキューブとして設定してステップZ4へ進むステップ。ステップZ4およびZ5は、平面境界キューブセット内の全てのキューブをループ化していて、それらの交差ポリゴンの全ての外部端部が未使用としてマーク付けされることを保証している。
<Z5>
If the current cube is not the last in the planar bounded cube set, set the next cube in the set as the current cube and proceed to step Z4. Steps Z4 and Z5 loop through all the cubes in the planar bounding cube set, ensuring that all external ends of their intersecting polygons are marked as unused.
<Z6>
新しい空の境界ポリゴンを作るステップ。境界ポリゴンは、共通平面の1つの境界の周りに追跡される順に今から増大させられる外部端部のリストである。
<Z6>
Creating a new empty boundary polygon. A boundary polygon is a list of external edges that are now increased in the order they are tracked around one boundary of a common plane.
<Z7>
平面境界キューブセット内の最初のキューブを現在のキューブとして選択するステップ。
<Z7>
Selecting the first cube in the planar bounded cube set as the current cube.
<Z8>
現在のキューブの交差ポリゴン内のいかなる未使用の外部端部をも現在の端部として選択するステップ。
<Z8>
Selecting any unused external edge in the intersecting polygon of the current cube as the current edge.
<Z9>
現在の端部の2つのノードをAおよびBと名前を付けるステップ。その端部はノードAから始まりノードBで終わるとして処理される。端部の方向の選択はここでは任意である。
<Z9>
Naming the two nodes at the current end as A and B. The end is processed as starting at node A and ending at node B. The selection of the end direction is arbitrary here.
<Z10>
現在の端部を境界ポリゴンへ加えるステップ。また、現在の端部を含むキューブをステップU2およびU7で使用するために格納するステップ。
<Z10>
Adding the current edge to the boundary polygon. Also, storing the cube containing the current end for use in steps U2 and U7.
<Z11>
現在の端部を使用されたとしてマークを付けるステップ。
<Z11>
Marking the current edge as used.
<Z12>
現在のキューブの交差ポリゴン内の次のポリゴンの端部を探し出すステップ。これは、現在のポリゴンのユニークな端部(ABではない)であり、Bをそのノードの1つとして有している。次のポリゴンの端部の別のノードをCとして名前を付ける。図16に示すように、次の端部の位置は、現在の端部のノードであるBノードの位置に依存する。
<Z12>
Finding the end of the next polygon in the intersecting polygon of the current cube. This is the unique end (not AB) of the current polygon, with B as one of its nodes. Name another node at the end of the next polygon as C. As shown in FIG. 16, the position of the next end depends on the position of the B node that is the node at the current end.
<Z13>
次の端部が外部端部であれば、ステップZ18へ進むステップ。
<Z13>
If the next end is an external end, go to step Z18.
<Z14>
現在のキューブのポリゴンの交差が、いかなる未使用外部端部をも残していなければ、平面境界キューブセットから現在のキューブを除くステップ。
<Z14>
Remove the current cube from the planar bounded cube set if the polygon intersection of the current cube does not leave any unused outer edges.
<Z15>
交差ポリゴンが次の端部BCを含んでいるユニークな同一平面上の隣接するキューブに現在のキューブを設定するステップ。
<Z15>
Setting the current cube to a unique coplanar adjacent cube whose intersecting polygon includes the next end BC.
<Z16>
ノードBをそのノードの1つとして有する現在のキューブ内の別の端部に次の端部を設定するステップ。別のノードをCとして名前を付ける。
<Z16>
Setting the next end to another end in the current cube with node B as one of its nodes. Name another node C.
<Z17>
次の端部が外部端部でなければステップ15へ行き、それ以外はステップZ18へ進むステップ。ステップZ15からZ17は、ファンの中央頂点へ接続されている外部端部を有するファンのメンバーを見出すまでポリゴンのファンの全域にループする。例えば、ステップZ15の開始時に図15における端部HGが現在の端部であり、従ってGOが次の端部であると仮定する。ステップZ13は既にテストされており、GOが外部端部ではな
いことを注記する。ステップZ15でGOBに現在の交差ポリゴンを設定する。ステップZ16でGBに次の端部を設定する。ステップZ17では、GBもまた外部端部でないので、ステップZ15へ戻る動作を引き起こす。ステップ15はその時、GBFに現在の交差ポリゴンを設定し、ステップZ16でGFに次の端部を設定する。その時、ついに次の端部GFが外部端部であるので、ステップZ17では、ループから抜け出るアクションを引き起こす。他方、ステップZ15の開始時に現在の端部がGFで次の端部がFBであれば、ステップZ15でFBEに現在の交差ポリゴンを設定し、ステップZ16でFEに次の端部を設定する。このFEは外部端部であるので、ステップZ17で直ちにそのループから抜け出る。最後の例として、ステップZ15の開始時に、現在の端部がABで次の端部がBEであると仮定する。そのとき、ステップZ15では、BEFに現在の交差ポリゴンを設定し、ステップZ16でBFに次の端部を設定する。BFは外部端部ではないので、ステップZ17ではステップZ15へ戻るアクションを引き起こす。ステップZ15からZ17は繰り返され、端部BGおよびBOを順に考慮するが、それらのいずれも外部端部ではないので、その後、ループを抜け出すときは外部端部BCである。
<Z17>
If the next end is not an external end, go to step 15; otherwise go to step Z18. Steps Z15 to Z17 loop over the polygon fan until it finds a fan member having an external end connected to the central vertex of the fan. For example, assume that at the start of step Z15, the end HG in FIG. 15 is the current end and therefore GO is the next end. Note that step Z13 has already been tested and GO is not the external end. In step Z15, the current intersecting polygon is set in GOB. In step Z16, the next end is set to GB. In step Z17, GB is also not an external end, so that the operation returns to step Z15. In
<Z18>
次の端部が境界ポリゴン内の最初の端部と同じでなければ、次の端部に現在の端部を設定してステップ10へ進むステップ。
<Z18>
If the next end is not the same as the first end in the boundary polygon, the current end is set as the next end and the process proceeds to step 10.
<Z19>
現在のキューブのポリゴンの交差が、残されているいかなる未使用端部も有していければ、平面境界キューブセットから現在のキューブを除くステップ。
<Z19>
If the polygon intersection of the current cube has any unused ends left, removing the current cube from the planar boundary cube set.
<Z20>
境界ポリゴンを境界ポリゴンのリストへ加えるステップ。
<Z20>
Adding a boundary polygon to the list of boundary polygons.
<Z21>
平面境界キューブセットが空でなければZ6へ行き、それ以外は停止するステップ。
<Z21>
If the plane bounding cube set is not empty, go to Z6, otherwise stop.
図8は、群境界点の位置を計算するために適用されるステップU1からU11に詳細を示すステップM7のフローチャートである。ステップU1からU11は、ステップM6で計算されたそれぞれ別個の境界ポリゴンに適用される。ステップU4およびU8で必要とされるAおよびBノードは、ステップM6で格納されることができるか、または、それ以外に、境界ポリゴン内の前の端部および次の端部の頂点(vertices)を比較することによってそれらを推定することができることを注記しておく。 FIG. 8 is a flowchart of step M7 showing details in steps U1 to U11 applied to calculate the position of the group boundary point. Steps U1 to U11 are applied to each separate boundary polygon calculated in step M6. The A and B nodes required in steps U4 and U8 can be stored in step M6, or else the previous and next vertex vertices in the boundary polygon Note that they can be estimated by comparing.
<U1>
境界ポリゴン内の最初の端部に現在の端部を設定するステップ。
<U1>
Setting the current edge to the first edge in the boundary polygon.
<U2>
現在の端部が存在しているキューブに現在のキューブを設定するステップ。どのような端部でもそこに位置しているキューブの識別は、境界ポリゴンが追跡されたときにステップZ10で格納されている。そのキューブは、平面キューブセットのメンバーである。
<U2>
Setting the current cube to the cube where the current end exists. The identity of the cube located at any end is stored in step Z10 when the boundary polygon is tracked. The cube is a member of a planar cube set.
<U3>
先端の端部(leading edge)に現在の端部を設定するステップ。
<U3>
Setting the current edge to the leading edge.
<U4>
現在の端部のAノードにPを設定するステップ。
<U4>
Setting P to the A node at the current end;
<U5>
現在の端部が境界ポリゴン内の最後の端部であれば、ステップU8へ進むステップ。
<U5>
If the current end is the last end in the boundary polygon, go to step U8.
<U6>
境界ポリゴンから次の端部を得るステップ。
<U6>
Obtaining the next edge from the boundary polygon.
<U7>
次の端部が現在のキューブに位置していれば、次の端部に現在の端部を設定し、ステップU6へ進むステップ。どのような端部でもそこに位置しているキューブの識別は、境界ポリゴンが追跡されたときにステップZ10で格納されている。ステップU6およびU7は、現在の端部が現在のキューブ内の最後の端部になるまで繰り返される。
<U7>
If the next end is located in the current cube, setting the current end to the next end and proceeding to step U6. The identity of the cube located at any end is stored in step Z10 when the boundary polygon is tracked. Steps U6 and U7 are repeated until the current end is the last end in the current cube.
<U8>
現在の端部のBノードにQを設定する。
<U8>
Set Q to the B-node at the current end.
<U9>
線PQに対して最大の有向距離を有して投影された点群の点に群境界点を設定するステップ。点群の点は、ステップY4の式を用いて平面上に投影される。
ここで、qは線PQのいかなる点でもよく(最も簡単にはPまたはQ)、vはPQに対する垂線であって共通平面に置かれてあり、単位長を有している。−vもまた、これらの条件を満足することを注記する。vおよび−vの正しい選択は、dkがまた、境界ポリゴ
ンの頂点である現在の交差ポリゴンのいかなる頂点に対しても負ではないこと、と、dk
がいかなる他の頂点に対しても正ではないこと、を検査することによってなされる。そのしるし(sign)が識別できるように、dkがゼロではない交差ポリゴンの少なくとも1つ
の頂点が常に存在している。ステップU9の幾何学的形状を図17から図19に示す。これら3つの図の全てにおいて交差ポリゴンは、PCQBAであり、境界ポリゴンの端部はQB、BA、およびAPである。頂点Cのみが境界ポリゴンに置かれていない。法線ベクトルvは、dkが増加する方向に示される。点群は、陰影を付した領域によって表されて
いる。投影された点群の点は、Xでマーク付けされた有向距離を最大化し、KLは、PQに平行であるXを通る線である。
<U9>
Setting a group boundary point at a point of the point group projected with the maximum directional distance to the line PQ. The points of the point group are projected on the plane using the formula of step Y4.
Where q can be any point on the line PQ (most simply P or Q), and v is a normal to PQ, placed in a common plane and having a unit length. Note that -v also satisfies these conditions. The correct choice of v and -v is that d k is also negative for any vertex of the current intersecting polygon that is also the vertex of the boundary polygon, and d k
Is done by checking that is not positive for any other vertex. There is always at least one vertex of the intersecting polygon where d k is not zero, so that the sign can be identified. The geometric shape of step U9 is shown in FIGS. In all three figures, the intersecting polygon is PCQBA, and the end of the boundary polygon is QB, BA, and AP. Only vertex C is not placed on the boundary polygon. The normal vector v is shown in the direction in which d k increases. A point cloud is represented by a shaded area. The points of the projected point cloud maximize the directed distance marked with X, and KL is a line through X that is parallel to PQ.
<U10>
群境界点を通る直線に近接しており、PQに平行である交差ポリゴン内に別の投影された点群の点があれば、ステップU9で計算された群境界点の位置を通る平行線に十分に近接している全ての投影された点群の点の平均に群境界点を設定する。ここで、「十分に近接している」とは、平行線へのその距離が規定された許容差よりも小さい全ての投影された点群の点を意味し、それは小さいゆらぎでなければならず、解像度の1/4または1/10と言える。ステップU10の幾何学的形状は、図19に示しており、ここで、KLは、投影された点群の端部である。点群の点が均等に分散していると仮定すれば、十分にKLに近接しているPCQBA内の点の平均は、ほぼXである。
<U10>
If there is another projected point group point in the intersecting polygon that is close to the straight line passing through the group boundary point and parallel to the PQ, the parallel line passing through the position of the group boundary point calculated in step U9 Set the group boundary point to the average of all projected point cloud points that are close enough. Here, “close enough” means any point in the projected point cloud whose distance to the parallel line is less than the specified tolerance, which must be small fluctuations. It can be said that the resolution is 1/4 or 1/10. The geometric shape of step U10 is shown in FIG. 19, where KL is the end of the projected point cloud. Assuming that the points in the point group are evenly distributed, the average of the points in PCQBA that are sufficiently close to KL is approximately X.
<U11>
現在の端部が境界ポリゴン内の最後の端部でなければ、境界ポリゴン内の次の端部に現在の端部を設定してステップU2へ進み、それ以外は停止するステップ。
<U11>
If the current end is not the last end in the boundary polygon, the current end is set as the next end in the boundary polygon, the process proceeds to step U2, and the rest stops.
図9は、群境界点を共通平面の対の間の線交差に移すように適用されるステップV1からV14に詳細を示すステップM8のフローチャートである。 FIG. 9 is a flowchart of step M8 showing details in steps V1 to V14 applied to move the group boundary point to the line intersection between the pair of common planes.
<V1>
全ての平面キューブセットの共通平面のリストを作るステップ。このリストは、法線ベクトルを含み、共通平面の手段を含む。
<V1>
Creating a list of common planes for all planar cube sets. This list contains normal vectors and includes means for a common plane.
<V2>
共通平面のリストが空であれば停止するステップ。
<V2>
Stop if the common plane list is empty.
<V3>
共通平面のリスト内の最初の共通平面に現在の平面を設定するステップ。
<V3>
Setting the current plane to the first common plane in the common plane list.
<V4>
現在の平面内の最初の群境界点に現在の群境界点を設定するステップ。群境界点は、ステップM8の目的に対していかなる順番にでもリストされることができる。特に、異なる境界ポリゴンに関連付けられている群境界点の間を区別することは必要ではない。
<V4>
Setting the current group boundary point to the first group boundary point in the current plane; Group boundary points can be listed in any order for the purpose of step M8. In particular, it is not necessary to distinguish between group boundary points associated with different boundary polygons.
<V5>
最少の距離を無限大へ設定するステップ。ここで、無限大とは、群境界点といかなる共通平面との距離よりも大きいことが保証されているいかなる正の数をも意味する。無限大に対する適切な値は、10の30乗である。
<V5>
Setting the minimum distance to infinity. Here, infinity means any positive number that is guaranteed to be greater than the distance between the group boundary point and any common plane. A suitable value for infinity is 10 to the 30th power.
<V6>
共通平面のリスト内の最初の共通平面に、隣接する平面を設定するステップ。
<V6>
Setting an adjacent plane to the first common plane in the list of common planes.
<V7>
隣接する共通平面が現在の平面と同じであれば、ステップV11へ進むステップ。
<V7>
If the adjacent common plane is the same as the current plane, proceed to step V11.
<V8>
現在の隣接する平面の法線ベクトルの間の角度が十分に小さければ(1度未満と言えれば)ステップ11へ進むステップ。この検査の目的は、ほぼ平行な平面の交差に対する無意味な計算を防ぐことである。
<V8>
If the angle between the normal vectors of the current adjacent planes is sufficiently small (less than 1 degree), go to step 11. The purpose of this test is to prevent meaningless calculations for the intersection of nearly parallel planes.
<V9>
<V9>
<V10>
現在の群境界点とその投影との間の距離Dが最小距離よりも小さければ、最小距離をD
に設定して、現在の投影された点に最良の投影された点を設定するステップ。
<V10>
If the distance D between the current group boundary point and its projection is less than the minimum distance, the minimum distance is set to D
And set the best projected point to the current projected point.
<V11>
隣接する平面が共通平面のリスト内の最後の平面でなければ、共通平面のリスト内の次の平面に隣接する平面を設定してステップV7へ進むステップ。
<V11>
If the adjacent plane is not the last plane in the common plane list, set a plane adjacent to the next plane in the common plane list and proceed to step V7.
<V12>
最小距離が十分に小さければ、最良の投影された点の位置に現在の群境界点の位置を移動させてステップV13へ進むステップ。ここで、「十分に小さい」とは、小さな揺らぎ、すなわち、解像度の1/4または1/10程度と言える揺らぎを意味する。幾何学的平面を示す図20においては、ABCDは個別の平面キューブセットの共通平面であり、DCFEおよびADEGは、DCおよびADに沿って共通平面ABCDに交差している2つの近傍の平面キューブセットの共通平面である。破線MNおよびKLは、DCおよびADに平行であり、点が交差線に十分に近いと見なされる距離を示している。点P1、P2、P3、およびP4は群境界点の例示的な位置である。P2およびP4からDCまでの距離は、十分に小さいのでそれら(P2およびP4)は、それらの投影をQ2およびQ4上へ移動される。群境界点P1はDCおよびADの双方に十分小さい。しかしながら、それ(P1)はADにより近接しているので、Q1に移動される。これに反してP3は双方の交差に十分に近接していないので、移動されない。
<V12>
If the minimum distance is sufficiently small, move the current group boundary point position to the best projected point position and proceed to step V13. Here, “sufficiently small” means a small fluctuation, that is, a fluctuation that can be said to be about 1/4 or 1/10 of the resolution. In FIG. 20 showing the geometric plane, ABCD is the common plane of the individual plane cube sets, and DCFE and ADEG are the two neighboring plane cube sets that intersect the common plane ABCD along DC and AD. Common plane. Dashed lines MN and KL indicate the distance that is parallel to DC and AD and that the point is considered sufficiently close to the intersection line. Points P 1 , P 2 , P 3 , and P 4 are exemplary positions of group boundary points. The distances from P 2 and P 4 to DC are small enough that they (P 2 and P 4 ) are moved their projections onto Q 2 and Q 4 . The group boundary point P 1 is sufficiently small for both DC and AD. However, it is moved to Q 1 because it (P 1 ) is closer to AD. On the other hand, P 3 is not moved because it is not close enough to both intersections.
<V13>
現在の群境界点が現在の平面に対する群境界点のリスト内の最後の群境界点でなければ、リスト内の次の群境界点に現在の群境界点を設定して、ステップV5へ進むステップ。
<V13>
If the current group boundary point is not the last group boundary point in the list of group boundary points for the current plane, the current group boundary point is set to the next group boundary point in the list, and the process proceeds to step V5 .
<V14>
現在の平面が共通平面のリスト内の最後でなければ、共通平面のリストの次の平面に現在の平面を設定してV3へ進み、それ以外は停止するステップ。
<V14>
If the current plane is not the last in the list of common planes, set the current plane to the next plane in the list of common planes and go to V3, otherwise stop.
図10は、共通直線(共通線と呼ばれる)によって交差されている、隣接する同一直線上のキューブのセットを成長させるステップW1からW24を示すフローチャートである。このような方法で成長した同一直線上のキューブの各セットは、線キューブセットと呼ばれる。
FIG. 10 is a flowchart illustrating steps W1 to W24 for growing a set of adjacent collinear cubes that are intersected by a common line (referred to as a common line). Each set of collinear cubes grown in this way is called a line cube set.
本方法のステップW14およびW21で、2つの直線が同一直線上に存在するかどうかを決定するために、現在の累積された線キューブセットに沿った数学的な直線を現在の同一直線上のキューブlを通るように適合した直線と比較する。この2つのステップにおいては、異なる基準が用いられる。 In steps W14 and W21 of the method, to determine whether two straight lines exist on the same straight line, a mathematical straight line along the current accumulated line cube set is converted to the current straight line cube. Compare with a straight line fitted through l. Different criteria are used in the two steps.
基準Aは、ここではuが共通平面の基準ベクトルではなく、共通線に沿ったベクトルであることを除いては、ステップB14で用いた基準Aと同一である。図13は、この観点から再解釈されてもよい。 The reference A is the same as the reference A used in step B14 except that u is not a common plane reference vector but a vector along a common line. FIG. 13 may be reinterpreted from this point of view.
<W1>
ステップM2で識別された全ての同一直線上のキューブを含むキューブの未使用リストを作るステップ。このリスト内のいかなるキューブも未使用キューブと呼ばれる。
<W1>
Creating an unused list of cubes including all collinear cubes identified in step M2. Any cube in this list is called an unused cube.
<W2>
未使用リストが空であれば、停止するステップ。
<W2>
Step to stop if the unused list is empty.
<W3>
線キューブセットと呼ばれるキューブの空のリストを作るステップ。この線キューブセットは、共通直線によって交差されている全ての同一直線上のキューブを含むように成長させられる。最終的には、線キューブセットがただ1つのキューブを含んでも、キューブの未使用リスト内に現在ある全てのキューブが、線キューブセットに移動される。
<W3>
The step of creating an empty list of cubes called a line cube set. The line cube set is grown to include all collinear cubes that are intersected by a common line. Eventually, all cubes currently in the unused list of cubes are moved to the line cube set even if the line cube set contains only one cube.
<W4>
未使用リスト内の最初のキューブに現在のキューブを設定するステップ。
<W4>
Setting the current cube to the first cube in the unused list.
<W5>
候補リストと呼ばれるキューブの空のリストを作るステップ。このリストは、線キューブセット内に含まれるための候補として見なされている未使用の同一直線上のキューブを含む。
<W5>
Creating an empty list of cubes called a candidate list. This list includes unused collinear cubes that are considered candidates for inclusion in the line cube set.
<W6>
特殊リストと呼ばれるキューブの空のリストを作るステップ。このリストは、線キューブセット内に含まれるための候補として、最近拒絶されている未使用の同一直線上のキューブを含む。
<W6>
The step of creating an empty list of cubes called a special list. This list includes unused collinear cubes that have been recently rejected as candidates for inclusion in the line cube set.
<W7>
現在のキューブを未使用リストから線キューブセットへ移すステップ。従って、全ての線キューブセットは少なくとも1つのキューブを含む。
<W7>
The step of moving the current cube from the unused list to the line cube set. Thus, every line cube set includes at least one cube.
<W8>
線キューブセット内の点の総計が現在のキューブ内の点の合計と等しくなるように設定するステップ。
<W8>
Setting the total of points in a line cube set to be equal to the sum of points in the current cube.
<W9>
線キューブセット内の点の外積の総計が現在のキューブ内の点の外積の合計と等しくなるように設定するステップ。
<W9>
Setting the total cross product of points in a line cube set to be equal to the sum of cross products of points in the current cube.
<W10>
未使用リスト内にある現在のキューブの全ての隣接するキューブを候補リストに加えるステップ。ここで、キューブが現在のキューブと面または頂点を共有していれば、そのキューブは現在のキューブに隣接するキューブである。
<W10>
Adding all adjacent cubes of the current cube in the unused list to the candidate list. Here, if a cube shares a face or vertex with the current cube, the cube is a cube adjacent to the current cube.
<W11>
候補リストが空であれば、ステップW18へ進むステップ。
<W11>
If the candidate list is empty, the process proceeds to step W18.
<W12>
候補リスト内の最初のキューブに現在のキューブを設定するステップ。
<W12>
Setting the current cube to the first cube in the candidate list.
<W13>
現在のキューブを候補リストから除去するステップ。
<W13>
Removing the current cube from the candidate list.
<W14>
現在のキューブが、基準Aを満たさなければ特殊リストに現在のキューブを加えて、ステップW11へ進むステップ。
<W14>
If the current cube does not meet criterion A, add the current cube to the special list and proceed to step W11.
<W15>
現在のキューブを未使用リストから線キューブセットへ移すステップ。
<W15>
The step of moving the current cube from the unused list to the line cube set.
<W16>
現在のキューブl内の点の合計slを線キューブセット内の点の累積された総計sへ追
加するステップ。
<W16>
Adding the sum s l of the points in the current cube l to the accumulated total s of the points in the line cube set.
<W17>
現在のキューブl内の点の外積の合計Wlを線キューブセット内の点の外積の累積され
た総計Wへ追加してステップW10へ進むステップ。
<W17>
Adding the sum W 1 of the outer products of the points in the current cube l to the accumulated total W of the outer products of the points in the line cube set and proceeding to step W10.
<W18>
特殊リストが空であれば、線キューブセットのデータを出力してステップW2へ進むステップ。
<W18>
If the special list is empty, output line cube set data and proceed to step W2.
<W19>
特殊リスト内の最初のキューブに現在のキューブを設定するステップ。
<W19>
Setting the current cube to the first cube in the special list.
<W20>
現在のキューブを特殊リストから除去するステップ。
<W20>
The step of removing the current cube from the special list.
<W21>
現在のキューブが基準Cを満足しない場合は、ステップW18へ進むステップ。
<W21>
If the current cube does not satisfy criterion C, the process proceeds to step W18.
<W22>
現在のキューブを未使用リストから線キューブセットへ移すステップ。
<W22>
The step of moving the current cube from the unused list to the line cube set.
<W23>
現在のキューブl内の点の合計slを線キューブセット内の点の累積された総計sへ追
加するステップ。
<W23>
Adding the sum s l of the points in the current cube l to the accumulated total s of the points in the line cube set.
<W24>
現在のキューブl内の点の外積の合計Wlを線キューブセット内の点の外積の累積され
た総計Wへ追加してステップW18へ進むステップ。
<W24>
Current cross product sum W l step proceeds to step W18 by adding to the accumulated sum W of the cross product of the points in the line cube set of points in the cube l.
図11は、線キューブセット内の全てのキューブがその共通線によって交差されることを保証するために線キューブセット内の各キューブに適用されるステップT1からT8に詳細を示すステップM11のフローチャートである。ステップM11の効果は、線キューブセットを平坦化させることである。ステップM10で新しいキューブが平面キューブセットに追加されるごとに共通平面が変化するので、ステップM11が必要である。線キューブセットの成長プロセスにおいて、初期に加えられたキューブが、それ(共通平面)が変化した後で、共通線に交差されていることを継続している保証はない。ステップM11は、これに対して補償する。ステップT1からT8は、平面キューブセット内の全てのキューブに対して別々に適用されるので、もし必要であれば、並列に適用されることができる。 FIG. 11 is a flowchart of step M11 showing details in steps T1 to T8 applied to each cube in the line cube set to ensure that all cubes in the line cube set are intersected by their common line. is there. The effect of step M11 is to flatten the line cube set. Step M11 is necessary because the common plane changes each time a new cube is added to the plane cube set in step M10. In the growing process of a line cube set, there is no guarantee that the initially added cube will continue to intersect the common line after it (common plane) changes. Step M11 compensates for this. Steps T1 to T8 are applied separately to all cubes in the planar cube set, so they can be applied in parallel if necessary.
線キューブセットが平坦化されるプロセスのステップは、以下である。 The steps of the process by which the line cube set is flattened are as follows.
<T1>
キューブが共通線によって交差されていれば、停止するステップ。(このキューブには
、更なるアクションは必要ではない。)
<T1>
Stop if the cubes are crossed by a common line. (This cube requires no further action.)
<T2>
キューブを線キューブセットから除去するステップ。
<T2>
The step of removing a cube from a line cube set.
<T3>
キューブ内の点群の点へ現在の点を設定するステップ。
<T3>
Setting the current point to a point cloud point in the cube.
<T4>
<T4>
<T5>
投影された点を含んでいるキューブを探し出すステップ。このキューブを投影されたキューブと呼ぶ。投影されたキューブがどのようにして計算されるか、の詳細についてはステップY5を参照されたい。
<T5>
Finding a cube that contains the projected points. This cube is called a projected cube. See step Y5 for details on how the projected cube is calculated.
<T6>
投影されたキューブが、線キューブセットに属していなければ、投影されたキューブを線キューブセットへ加えるステップ。
<T6>
If the projected cube does not belong to a line cube set, adding the projected cube to the line cube set.
<T7>
現在の点がキューブ内の最後の点群の点であれば、停止するステップ。
<T7>
Stop if the current point is the last point cloud point in the cube.
<T8>
キューブ内の次の点群の点に現在の点を設定してステップT4へ進むステップ。
<T8>
Setting the current point to the next point group point in the cube and proceeding to step T4.
図12は、線キューブセット内の共通線の終点を識別するために適用される、ステップS1からS16に詳細を示す、ステップM12のフローチャートである。ステップM12が適用される段階で、それぞれの線キューブセットは、全てのそれらのキューブがそれらの共通線によって交差されているという特性を有している。共通線によって交差されている、いかなるキューブ(線キューブセットのメンバーではないキューブも含んでいる)も、キューブの交点と呼ばれる2つの点(一致的であってもよい)で共通線に一致する。 FIG. 12 is a flowchart of step M12, shown in detail in steps S1 to S16, applied to identify the end point of the common line in the line cube set. At the stage where step M12 is applied, each line cube set has the property that all those cubes are intersected by their common line. Any cube that is intersected by a common line (including cubes that are not members of a line cube set) matches the common line at two points (which may be coincident) called the intersection of the cubes.
共通線によって交差されており、交点を共有するいかなる2つのキューブも、同一直線上の隣接するキューブと呼ばれる。線キューブセットのメンバーがただ1つである2つの同一直線上の隣接するキューブによって共有されている、いかなる交点も線キューブセットの終点と呼ばれる。ステップM12では、線キューブセットが3以上の終点を有する可能性も許容する。 Any two cubes that are intersected by a common line and share an intersection are called collinear adjacent cubes. Any intersection shared by two collinear adjacent cubes that have only one member of the line cube set is called the end point of the line cube set. In step M12, the possibility that the line cube set has three or more end points is also allowed.
ステップM12は、それぞれの線キューブセットに対して別々に適用される。それは、線キューブセットからキューブを、セットが空になるまで、漸進的に除去する。ステップM12は、並列的に適用されることができる。 Step M12 is applied separately to each line cube set. It progressively removes cubes from the line cube set until the set is empty. Step M12 can be applied in parallel.
<S1>
AおよびBのノード対の空のリストを作るステップ。ステップM12の完了で、リスト内の各ノード対は、線キューブセットの共通線に沿った1つの線区画の2つの終点を示すことになる。
<S1>
Creating an empty list of A and B node pairs. Upon completion of step M12, each node pair in the list will indicate two endpoints of a line segment along the common line of the line cube set.
<S2>
線キューブセットが空であれば、停止するステップ。
<S2>
Step to stop if the line cube set is empty.
<S3>
線キューブセット内の最初のキューブへ現在のキューブを設定するステップ。
<S3>
Setting the current cube to the first cube in the line cube set.
<S4>
現在のキューブが線キューブセットの終点を含んでいなければ、線キューブセットから現在のキューブを除去してステップS6へ進むステップ。
<S4>
If the current cube does not include the end point of the line cube set, removing the current cube from the line cube set and proceeding to step S6.
<S5>
線キューブセット内の次のキューブに現在のキューブを設定してステップS4へ進むステップ。ステップS5においては、次のキューブは線キューブセット内に残されている任意のキューブでよい。
<S5>
Setting the current cube as the next cube in the line cube set and proceeding to step S4. In step S5, the next cube may be any cube left in the line cube set.
<S6>
現在のキューブの交点に現在のノード対を設定するステップ。
<S6>
Setting the current node pair at the intersection of the current cube.
<S7>
現在のノード対の双方のノードが線キューブセットの終点であれば、1つのノードにAと名前を付け、別のノードにBと名前を付けてステップS16へ進むステップ。
<S7>
If both nodes of the current node pair are the end points of the line cube set, name one node A and name another node B and proceed to step S16.
<S8>
現在のノード対のユニークな終点をAとして格納するステップ。
<S8>
Storing the unique endpoint of the current node pair as A.
<S9>
次のキューブを、線キューブセットのメンバーである現在のキューブのユニークな隣接するキューブへ設定するステップ。
<S9>
Setting the next cube to be a unique adjacent cube of the current cube that is a member of a line cube set.
<S10>
現在のキューブを前のキューブとして格納するステップ。
<S10>
The step of storing the current cube as the previous cube.
<S11>
現在のキューブを次のキューブへ設定するステップ。
<S11>
The step of setting the current cube to the next cube.
<S12>
現在のキューブを線キューブセットから除去するステップ。
<S12>
Remove the current cube from the line cube set.
<S13>
現在のノード対を現在のキューブの交点に設定するステップ。
<S13>
Setting the current node pair to the current cube intersection.
<S14>
現在のノード対の双方のノードが、終点でなければ、次のキューブを前のノードではない、ユニークな隣接するキューブに設定してステップS10へ進むステップ。
<S14>
If both nodes of the current node pair are not endpoints, set the next cube to a unique adjacent cube that is not the previous node and proceed to step S10.
<S15>
ユニークな終点をBノードとして格納するステップ。
<S15>
Storing the unique end point as a B-node.
<S16>
AおよびBノードが一致的(許容差の範囲内)でなければ、AおよびBノードをノード対のリストに加えるステップ。
<S16>
If A and B nodes are not consistent (within tolerance), add A and B nodes to the list of node pairs.
<S17>
ステップS2へ進むステップ。
<S17>
Step proceeding to step S2.
本発明の上記の個別の実施形態が(4面体または他のモザイク式にされている空間充填形状を意味すると解釈されてもよい)キューブを用いて記載しているとはいえ、当業者は、重なり合ったボリューム、特に、重なり合った球体、もまた用いることができると理解するであろう。そのような実施形態においては、近接しているボリュームは、その中央点が問題となるボリュームの中心点から予め定められた距離内に置かれてあるボリュームとして定義されても良い。 Although the above individual embodiments of the present invention have been described using cubes (which may be construed as meaning tetrahedral or other mosaic-filled space-filling shapes) It will be appreciated that overlapping volumes, particularly overlapping spheres, can also be used. In such an embodiment, a close volume may be defined as a volume whose center point is located within a predetermined distance from the center point of the volume in question.
図21は、建築上のシーンを描くために点群データからベクトル画像への変換の結果を示す。画像内の個別の大きさの測定は、容易に決定することができ、建築家は、ベクトル画像を修正された設計図を製作するために描くことを操作することができる。これにより、建築家が物理的な建物/環境や手書きから作られた三次元モデルを実験室での測定を行うことの問題を避ける。 FIG. 21 shows the result of conversion from point cloud data to a vector image to draw an architectural scene. Individual size measurements in the image can be easily determined and the architect can manipulate the drawing of the vector image to produce a modified blueprint. This avoids the problem of architects taking measurements in the laboratory of 3D models made from physical buildings / environments and handwriting.
当業者は、さまざまな異なる技術がLIDARおよび写真測量法を含む点群データの生成のために用いられてもよいことを高く評価するだろう。これらの技術の種々のバリエーションは、正しい位置データだけではないものを含む種々の点群を生成してもよい。この追加データは、また、記載した方法のなかに組み込まれてもよい。例えば、点群の各点は、色または明度(intensity)の情報を含んでもよい。一度、表面が識別されれば、表面
の着色または明度のマッピングは、モデル上にその表面を最初に識別した点の色または明度を用いて行われてもよい。
Those skilled in the art will appreciate that a variety of different techniques may be used for the generation of point cloud data including LIDAR and photogrammetry. Various variations of these techniques may generate various point clouds, including not only the correct position data. This additional data may also be incorporated into the described method. For example, each point in the point cloud may include color or intensity information. Once the surface is identified, the surface coloration or lightness mapping may be performed using the color or lightness of the point that first identified the surface on the model.
記載された方法は、また三次元モデルの正確さを向上させるために他の画像技術と組み合わせて使用されてもよく、および/または、更なる画像データを用いてそのモデルを覆ってもよい。例えば、スキャナーは、三次元カメラと連動して用いられてもよい。写真のようにリアルな三次元環境が生成されるように、スキャニングおよび三次元写真撮影が同時に行われてもよい。 The described method may also be used in combination with other image techniques to improve the accuracy of the 3D model and / or cover the model with additional image data. For example, the scanner may be used in conjunction with a three-dimensional camera. Scanning and 3D photography may be performed simultaneously so that a realistic 3D environment like a photograph is generated.
本発明の明らかに異なる多くの実施形態を本発明の範囲から離れることなく行うことができるので、本発明が本発明の具体的な実施形態に限定されないのは当然のことである。 It will be appreciated that the present invention is not limited to specific embodiments of the invention, since many distinct embodiments of the present invention can be made without departing from the scope of the invention.
<M1>
物体によって占められた空間の位置に三次元格子を重ね合わせるステップ。格子は空間を仕切って、数は多いが有限なキューブ(cubes)のリストにする。コンピュータ記憶空間を浪費することを避けるために、リストは、いかなる空のキューブをも除外している。目下の実施形態においては、キューブは全て同じ大きさである。各キューブの辺の長さは、その分解能と呼ばれる。(例えば部分的にスキャンされた表面が非常に大きな曲率を有しているなどで)必要であれば、これらのキューブのいくつかをより小さいキューブにサブ分割することができ、それらを更にサブ分割することなどもできる。このような方法で、異なる局部的な分解能を異なる平面で使用することができる。三次元空間の別の区分化は、例えば4面体を用いることもまた可能である。以下においては、用語キューブが用いられているとはいえ、本方法は、4面体または別の空間充填モザイク加工にも等しく適用することが推奨される。
<M1>
Superimposing a three-dimensional lattice on the position of the space occupied by the object. The grid partitions the space into a list of large but finite cubes. To avoid wasting computer storage space, the list excludes any empty cubes. In the current embodiment, the cubes are all the same size. The length of the side of each cube is called its resolution. If necessary (for example, a partially scanned surface has a very large curvature), some of these cubes can be subdivided into smaller cubes, which can be further subdivided You can also do it. In this way, different local resolutions can be used on different planes. Another segmentation of the three-dimensional space can also use, for example, a tetrahedron. In the following, although the term cube is used, it is recommended that the method apply equally to tetrahedron or other space-filled mosaic processing.
本発明の上記の個別の実施形態がキューブ(または、4面体を含む他のモザイク式にされている空間充填形状)を用いて記載しているとはいえ、当業者は、重なり合ったボリューム、特に、重なり合った球体、もまた用いることができると理解するであろう。そのような実施形態においては、近接しているボリュームは、その中央点が問題となるボリュームの中心点から予め定められた距離内に置かれてあるボリュームとして定義されても良い。 The above individual embodiments of the present invention cubes said that described with reference to (or other space-filling shapes are mosaic type containing tetrahedral), those skilled in the art, overlapping volumes, In particular, it will be understood that overlapping spheres can also be used. In such an embodiment, a close volume may be defined as a volume whose center point is located within a predetermined distance from the center point of the volume in question.
Claims (26)
前記物体の1組によって占有される空間を複数のボリュームに分割する手段と、
各ボリューム内の点がおおよそ表面に共存しているかどうか、を決定する手段と、
ここで、そのようなボリュームは表面ボリュームとして指定され、前記点が共存している前記表面は前記表面ボリュームの前記表面として指定される、
表面ボリュームセット内のより大きな表面として識別される同様な表面に沿っておおよそ共存している最初の複数の隣接する表面ボリュームを結合させる手段と、
前記表面ボリュームセットの表面端部ボリュームセットを識別する手段と、
ここで、前記表面端部ボリュームセットは、より大きな表面によって交差される空のボリュームに隣接しているボリュームを前記表面ボリュームセット内に有している、
を備える装置。 An apparatus for converting a set of point cloud data of one or more objects into a set of three-dimensional displays of the objects,
Means for dividing the space occupied by the set of objects into a plurality of volumes;
A means of determining whether the points in each volume roughly coexist on the surface;
Here, such a volume is designated as a surface volume, and the surface on which the points coexist is designated as the surface of the surface volume,
Means for combining the first plurality of adjacent surface volumes that are approximately coexisting along a similar surface identified as a larger surface within the surface volume set;
Means for identifying a surface edge volume set of the surface volume set;
Wherein the surface edge volume set has a volume in the surface volume set adjacent to an empty volume intersected by a larger surface,
A device comprising:
物体の1組の1または2以上の画像をキャプチャーするように構成されたカメラと、
前記画像に画像技法を行うように構成されたプロセッサと、を備えるスキャナーである、請求項2に記載の装置。 The means for generating the point cloud data includes:
A camera configured to capture a set of one or more images of the object;
The apparatus of claim 2, wherein the apparatus comprises a processor configured to perform image techniques on the image.
ここで、端部は前記表面端部ボリュームセット内のボリュームと空のボリュームとの間の境界を有する前記表面ボリュームセットの前記より大きな表面の交差によって定義される、
を備える、請求項1から5のいずれか一項に記載の装置。 Means for estimating a group boundary point for each end of each volume in the surface end volume set;
Where an edge is defined by the intersection of the larger surface of the surface volume set having a boundary between a volume in the surface edge volume set and an empty volume;
The apparatus according to claim 1, comprising:
交差曲線に前記群境界点の前記位置を移動させる手段と、を備える、請求項6に記載の装置。 Means for identifying where a group boundary point is close to the curve formed by the intersection of the larger surfaces;
Means for moving the position of the group boundary point to an intersection curve.
ここで、そのようなボリュームは曲面ボリュームとして識別され、点が共存している前記曲面は前記曲面ボリュームの前記曲面として識別される、
同様な曲面によって曲面ボリュームセット内で交差される最初の複数の隣接する曲線ボリュームを結合させる手段と、
ここで、交差する曲面はより大きな曲面として識別される、
曲線区画を定義する終点を識別する手段と、
を備える、請求項1から7のいずれか一項に記載の装置。 Means for determining whether the points in each volume roughly coexist on the curved surface;
Here, such a volume is identified as a curved volume, and the curved surface in which points coexist is identified as the curved surface of the curved volume.
Means for combining the first plurality of adjacent curvilinear volumes intersected in a curved volume set by similar curved surfaces;
Where intersecting curved surfaces are identified as larger curved surfaces,
Means for identifying an end point defining a curve segment;
The apparatus according to claim 1, comprising:
方法であって、
前記物体の1組によって占有される空間を複数のボリュームに分割し、
各ボリューム内の点がおおよそ表面に共存しているかどうかを決定し、ここで、そのようなボリュームが表面ボリュームとして指定され、前記点が共存している前記表面が前記表面ボリュームの前記表面として指定され、
表面ボリュームセット内のより大きな表面として識別される同様な表面に沿っておおよそ共存している第1の複数の隣接する表面ボリュームを結合させ、
前記表面ボリュームセットの、表面端部ボリュームセットを識別し、ここで、前記表面端部ボリュームセットは、より大きな表面によって交差される空のボリュームに隣接しているボリュームを前記表面ボリュームセット内に有している、方法。 A method of converting a set of point cloud data of one or more objects into a set of three-dimensional displays of the objects,
Dividing the space occupied by the set of objects into a plurality of volumes;
Determine if the points in each volume roughly coexist on the surface, where such volumes are designated as surface volumes, and the surface where the points coexist is designated as the surface of the surface volume And
Combining a plurality of first adjacent surface volumes approximately coexisting along similar surfaces identified as larger surfaces in the surface volume set;
Identify a surface edge volume set of the surface volume set, wherein the surface edge volume set has a volume in the surface volume set adjacent to an empty volume intersected by a larger surface. The way you are.
交差曲線に群境界点の前記位置を移動させる、請求項10に記載の方法。 Identify where the group boundary points are close to the curve formed by the intersection of the larger surfaces,
The method of claim 10, wherein the position of the group boundary point is moved to an intersection curve.
ここで、そのようなボリュームは曲面ボリュームとして識別され、共存している点が前記曲面ボリュームの曲線として識別され、
同様な曲面によって曲面ボリュームセット内で交差されている最初の複数の隣接する曲線ボリュームを曲面ボリュームセットに結合させ、
ここで、交差している曲面がより大きな曲面として識別され、
曲面区画を定義する終点を識別する、請求項10または11に記載の方法。 Decide if the points in each volume roughly coexist on the curved surface,
Here, such a volume is identified as a curved volume, and coexisting points are identified as curves of the curved volume,
Combining the first plurality of adjacent curved volumes intersected in a curved volume set by a similar curved surface into the curved volume set;
Here, the intersecting curved surfaces are identified as larger curved surfaces,
12. A method according to claim 10 or 11, wherein the end points defining the curved section are identified.
に記載の方法。 The method according to any one of claims 9 to 18, wherein the three-dimensional representation is stored as a data file.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GBGB1303540.7A GB201303540D0 (en) | 2013-02-27 | 2013-02-27 | Image processing |
| GB1303540.7 | 2013-02-27 | ||
| PCT/GB2014/000068 WO2014132020A1 (en) | 2013-02-27 | 2014-02-27 | Image processing |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2016514310A true JP2016514310A (en) | 2016-05-19 |
| JP6378215B2 JP6378215B2 (en) | 2018-08-22 |
Family
ID=48092234
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2015559552A Active JP6378215B2 (en) | 2013-02-27 | 2014-02-27 | Image processing |
Country Status (9)
| Country | Link |
|---|---|
| US (1) | US10186080B2 (en) |
| EP (1) | EP2962286B8 (en) |
| JP (1) | JP6378215B2 (en) |
| KR (1) | KR102231665B1 (en) |
| CN (1) | CN105103195B (en) |
| AU (1) | AU2014222457B2 (en) |
| CA (1) | CA2902349C (en) |
| GB (1) | GB201303540D0 (en) |
| WO (1) | WO2014132020A1 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11132806B2 (en) | 2019-03-13 | 2021-09-28 | Fujitsu Limited | Image processing apparatus and image processing method |
Families Citing this family (29)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6468756B2 (en) * | 2014-08-25 | 2019-02-13 | 株式会社ミツトヨ | 3D model generation method, 3D model generation system, and 3D model generation program |
| CN105469447A (en) * | 2014-09-11 | 2016-04-06 | 富泰华工业(深圳)有限公司 | Point-cloud boundary right-angle side repairing system and method |
| US9772405B2 (en) * | 2014-10-06 | 2017-09-26 | The Boeing Company | Backfilling clouds of 3D coordinates |
| KR102434406B1 (en) * | 2016-01-05 | 2022-08-22 | 한국전자통신연구원 | Augmented Reality device based on recognition spacial structure and method thereof |
| EP3483650B1 (en) * | 2016-07-07 | 2021-06-30 | NGK Insulators, Ltd. | Optical scanning element |
| KR102526754B1 (en) * | 2016-07-13 | 2023-04-27 | 삼성전자주식회사 | Apparatus and Method of processing 3D image |
| KR102529120B1 (en) * | 2016-07-15 | 2023-05-08 | 삼성전자주식회사 | Method and device for acquiring image and recordimg medium thereof |
| EP4283252A1 (en) | 2016-11-29 | 2023-11-29 | Blackmore Sensors & Analytics, LLC | Method and system for classification of an object in a point cloud data set |
| CN110140063B (en) | 2016-11-30 | 2023-10-13 | 布莱克莫尔传感器和分析有限责任公司 | Method and system for adaptive scanning using optical ranging system |
| KR102380943B1 (en) | 2016-11-30 | 2022-03-30 | 블랙모어 센서스 앤드 애널리틱스, 엘엘씨 | Method and system for automatic real-time adaptive scanning with optical ranging systems |
| KR102477195B1 (en) | 2016-11-30 | 2022-12-12 | 블랙모어 센서스 앤드 애널리틱스, 엘엘씨 | Method and system for doppler detection and doppler correction of optical chirped range detection |
| US10422880B2 (en) | 2017-02-03 | 2019-09-24 | Blackmore Sensors and Analytics Inc. | Method and system for doppler detection and doppler correction of optical phase-encoded range detection |
| US10482619B2 (en) * | 2017-07-27 | 2019-11-19 | AI Incorporated | Method and apparatus for combining data to construct a floor plan |
| US11348269B1 (en) * | 2017-07-27 | 2022-05-31 | AI Incorporated | Method and apparatus for combining data to construct a floor plan |
| US10339669B2 (en) * | 2017-08-22 | 2019-07-02 | Here Global B.V. | Method, apparatus, and system for a vertex-based evaluation of polygon similarity |
| KR102405872B1 (en) | 2018-04-23 | 2022-06-03 | 블랙모어 센서스 앤드 애널리틱스, 엘엘씨 | Method and system for controlling autonomous vehicle using coherent range doppler optical sensors |
| CN109003330B (en) * | 2018-07-02 | 2022-02-11 | 南京师范大学 | Three-dimensional stratum modeling method based on bedrock boundary constraint |
| US11822010B2 (en) | 2019-01-04 | 2023-11-21 | Blackmore Sensors & Analytics, Llc | LIDAR system |
| US11250594B2 (en) * | 2019-01-09 | 2022-02-15 | Tencent America LLC | Method and apparatus for geometry smoothing by local geometry projection |
| TWI709062B (en) * | 2019-09-20 | 2020-11-01 | 財團法人資訊工業策進會 | Virtuality reality overlapping method and system |
| EP4072135B1 (en) * | 2019-12-02 | 2025-02-19 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Attribute information prediction method, encoder, decoder and storage medium |
| CN113297340B (en) * | 2020-02-23 | 2023-12-19 | 北京初速度科技有限公司 | Vectorization method and device for point cloud map and method and device for converting vector map into point cloud map |
| CN111429589B (en) * | 2020-03-11 | 2023-09-19 | 上海嘉奥信息科技发展有限公司 | Method and system for three-dimensional space division based on two-dimensional view |
| WO2021253429A1 (en) * | 2020-06-19 | 2021-12-23 | 深圳市大疆创新科技有限公司 | Data processing method and apparatus, and laser radar and storage medium |
| KR102513220B1 (en) * | 2021-06-04 | 2023-03-24 | 주식회사 지에프티 | Adjacent camera recognition system and method between multiple cameras for 3D image |
| GB202108778D0 (en) | 2021-06-18 | 2021-08-04 | Pointfuse Ltd | Pointcloud processing, especially for use with building intelligence modelling (BIM) |
| US11544419B1 (en) | 2021-07-26 | 2023-01-03 | Pointlab, Inc. | Subsampling method for converting 3D scan data of an object for marine, civil, and architectural works into smaller densities for processing without CAD processing |
| US12130363B2 (en) | 2022-02-03 | 2024-10-29 | Aurora Operations, Inc. | LIDAR system |
| CN115035163B (en) * | 2022-07-04 | 2025-02-11 | 上海易同科技股份有限公司 | Target tracking method, device, equipment and storage medium based on Bluetooth positioning |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20090060345A1 (en) * | 2007-08-30 | 2009-03-05 | Leica Geosystems Ag | Rapid, spatial-data viewing and manipulating including data partition and indexing |
| EP2385496A1 (en) * | 2010-05-07 | 2011-11-09 | Honeywell International Inc. | Extraction of 2D surfaces from a 3D point cloud |
Family Cites Families (29)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5623790A (en) * | 1987-08-24 | 1997-04-29 | Lalvani; Haresh | Building systems with non-regular polyhedra based on subdivisions of zonohedra |
| JP3805120B2 (en) * | 1999-01-29 | 2006-08-02 | 株式会社リコー | Volume model generation system, volume model generation method, and computer-readable recording medium |
| US7149677B2 (en) * | 2000-10-30 | 2006-12-12 | Translation Technologies, Inc. | Geometric model comparator and method |
| US6943789B2 (en) | 2001-03-16 | 2005-09-13 | Mitsubishi Electric Research Labs, Inc | Conversion of adaptively sampled distance fields to triangles |
| US6627206B2 (en) * | 2001-07-25 | 2003-09-30 | Greg A. Lloyd | Method and apparatus for treating obesity and for delivering time-released medicaments |
| US6931367B2 (en) * | 2001-11-29 | 2005-08-16 | Faurecia Exhaust Systems, Inc. | Optimal rib design method for exhaust components |
| US20050168460A1 (en) * | 2002-04-04 | 2005-08-04 | Anshuman Razdan | Three-dimensional digital library system |
| WO2004077377A1 (en) * | 2003-02-27 | 2004-09-10 | Shaopeng Yang | Road traffic control method and traffic facilities |
| US7451704B1 (en) * | 2003-03-20 | 2008-11-18 | The United States Of America As Represented By The Secretary Of The Army | Multifunctional explosive fragmentation airburst munition |
| US7728833B2 (en) | 2004-08-18 | 2010-06-01 | Sarnoff Corporation | Method for generating a three-dimensional model of a roof structure |
| US7860299B2 (en) | 2005-02-10 | 2010-12-28 | Trimble Ab | Methods and apparatus for image processing |
| JP2006323608A (en) | 2005-05-18 | 2006-11-30 | Kozo Keikaku Engineering Inc | Apparatus and method for creating model of group of three-dimensional structure and system for creating three-dimensional model |
| CN1928921A (en) * | 2006-09-22 | 2007-03-14 | 东南大学 | Automatic searching method for characteristic points cloud band in three-dimensional scanning system |
| US7805463B2 (en) * | 2007-05-08 | 2010-09-28 | Laser-Scan, Inc. | Three-dimensional topology building method and system |
| US8019150B2 (en) * | 2007-10-11 | 2011-09-13 | Kwe International, Inc. | Color quantization based on desired upper bound for relative quantization step |
| US7912879B2 (en) * | 2007-12-04 | 2011-03-22 | TeleAtlas North America Inc | Method for applying clothoid curve values to roadways in a geographic data information system |
| GB2456301A (en) | 2008-01-08 | 2009-07-15 | Gmj Design Ltd | Surface Representation from a Point Cloud |
| CA2649916A1 (en) | 2008-01-09 | 2009-07-09 | Tiltan Systems Engineering Ltd. | Apparatus and method for automatic airborne lidar data processing and mapping using data obtained thereby |
| EP2124196B1 (en) | 2008-05-20 | 2011-08-03 | Oticon A/S | Apparatus and method for representing a scanned surface |
| WO2010042466A1 (en) | 2008-10-06 | 2010-04-15 | Kevin Scott Williams | Apparatus and method for classifying point cloud data based on principal axes |
| US8775063B2 (en) * | 2009-01-26 | 2014-07-08 | GM Global Technology Operations LLC | System and method of lane path estimation using sensor fusion |
| US8386288B2 (en) * | 2009-01-27 | 2013-02-26 | Direct Response Medicine, Llc | Workflow management system and method with workflow package exchange between drop-box application programs |
| US8290305B2 (en) | 2009-02-13 | 2012-10-16 | Harris Corporation | Registration of 3D point cloud data to 2D electro-optical image data |
| US8330673B2 (en) * | 2009-04-02 | 2012-12-11 | GM Global Technology Operations LLC | Scan loop optimization of vector projection display |
| US8581162B2 (en) * | 2009-12-08 | 2013-11-12 | Mitutoyo Corporation | Weighting surface fit points based on focus peak uncertainty |
| US9024970B2 (en) * | 2011-12-30 | 2015-05-05 | Here Global B.V. | Path side image on map overlay |
| CN102914501B (en) * | 2012-07-26 | 2015-01-14 | 南京大学 | Method for calculating extinction coefficients of three-dimensional forest canopy by using laser-point cloud |
| CN102902864B (en) | 2012-10-17 | 2015-01-21 | 山东理工大学 | Fast solution to approximate minimum volume bounding box of three-dimensional object |
| US9766712B2 (en) * | 2016-01-14 | 2017-09-19 | Google Inc. | Systems and methods for orienting a user in a map display |
-
2013
- 2013-02-27 GB GBGB1303540.7A patent/GB201303540D0/en not_active Ceased
-
2014
- 2014-02-27 KR KR1020157024440A patent/KR102231665B1/en active Active
- 2014-02-27 US US14/769,074 patent/US10186080B2/en active Active
- 2014-02-27 CN CN201480011022.6A patent/CN105103195B/en active Active
- 2014-02-27 AU AU2014222457A patent/AU2014222457B2/en active Active
- 2014-02-27 EP EP14716619.3A patent/EP2962286B8/en active Active
- 2014-02-27 WO PCT/GB2014/000068 patent/WO2014132020A1/en active Application Filing
- 2014-02-27 CA CA2902349A patent/CA2902349C/en active Active
- 2014-02-27 JP JP2015559552A patent/JP6378215B2/en active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20090060345A1 (en) * | 2007-08-30 | 2009-03-05 | Leica Geosystems Ag | Rapid, spatial-data viewing and manipulating including data partition and indexing |
| EP2385496A1 (en) * | 2010-05-07 | 2011-11-09 | Honeywell International Inc. | Extraction of 2D surfaces from a 3D point cloud |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11132806B2 (en) | 2019-03-13 | 2021-09-28 | Fujitsu Limited | Image processing apparatus and image processing method |
Also Published As
| Publication number | Publication date |
|---|---|
| CA2902349C (en) | 2021-09-21 |
| EP2962286A1 (en) | 2016-01-06 |
| GB201303540D0 (en) | 2013-04-10 |
| AU2014222457A1 (en) | 2015-09-03 |
| EP2962286B8 (en) | 2023-08-30 |
| KR102231665B1 (en) | 2021-03-24 |
| WO2014132020A4 (en) | 2014-10-16 |
| CN105103195A (en) | 2015-11-25 |
| WO2014132020A1 (en) | 2014-09-04 |
| JP6378215B2 (en) | 2018-08-22 |
| US10186080B2 (en) | 2019-01-22 |
| US20160012638A1 (en) | 2016-01-14 |
| CA2902349A1 (en) | 2014-09-04 |
| CN105103195B (en) | 2019-06-07 |
| EP2962286B1 (en) | 2023-06-28 |
| AU2014222457B2 (en) | 2019-09-19 |
| KR20150122676A (en) | 2015-11-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6378215B2 (en) | Image processing | |
| CN107862738B (en) | A method for indoor structured 3D reconstruction based on mobile laser measurement point cloud | |
| CN109682381B (en) | Omnidirectional vision based large-view-field scene perception method, system, medium and equipment | |
| CN102136155B (en) | Object elevation vectorization method and system based on three dimensional laser scanning | |
| US20240153123A1 (en) | Isogeometric Analysis Method Based on a Geometric Reconstruction Model | |
| JP6323993B2 (en) | Information processing apparatus, information processing method, and computer program | |
| CN105359163A (en) | Method for fitting primitive shapes to a set of 3D points | |
| CN104616345A (en) | Octree forest compression based three-dimensional voxel access method | |
| Beder et al. | Direct solutions for computing cylinders from minimal sets of 3D points | |
| JP2016217941A (en) | Three-dimensional evaluation device, three-dimensional data measurement system and three-dimensional measurement method | |
| CN110567441B (en) | Particle filter-based positioning method, positioning device, mapping and positioning method | |
| CN113916130A (en) | Building position measuring method based on least square method | |
| Oliveira et al. | Scene representations for autonomous driving: an approach based on polygonal primitives | |
| JP4568845B2 (en) | Change area recognition device | |
| Tian et al. | Lidar super-resolution based on segmentation and geometric analysis | |
| Rieck et al. | Unwrapping highly-detailed 3d meshes of rotationally symmetric man-made objects | |
| JP2017045148A (en) | Area division processing device, method and program | |
| JP3966419B2 (en) | Change area recognition apparatus and change recognition system | |
| Jarząbek-Rychard et al. | Automatic enrichment of indoor 3D models using a deep learning approach based on single images with unknown camera poses | |
| Ning et al. | Primitive shape extraction for objects in point cloud | |
| Cupec et al. | Fast 2.5 D Mesh Segmentation to Approximately Convex Surfaces. | |
| Wallbaum et al. | Towards real-time Scan-versus-BIM: Methods applications and challenges | |
| Krahnstoever et al. | Computing curvature-adaptive surface triangulations of three-dimensional image data | |
| Alboul et al. | A system for reconstruction from point clouds in 3D: Simplification and mesh representation | |
| Dou et al. | Research on Image Processing and Vectorization Storage Based on Garage Electronic Maps |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151109 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170224 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171212 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20180308 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20180511 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180612 |
|
| 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: 20180703 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180726 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6378215 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |