KR20030016477A - Remeshing optimizing method and apparatus for polyhedral surface - Google Patents

Remeshing optimizing method and apparatus for polyhedral surface Download PDF

Info

Publication number
KR20030016477A
KR20030016477A KR1020010050054A KR20010050054A KR20030016477A KR 20030016477 A KR20030016477 A KR 20030016477A KR 1020010050054 A KR1020010050054 A KR 1020010050054A KR 20010050054 A KR20010050054 A KR 20010050054A KR 20030016477 A KR20030016477 A KR 20030016477A
Authority
KR
South Korea
Prior art keywords
mesh
projection
vertices
original
optimization
Prior art date
Application number
KR1020010050054A
Other languages
Korean (ko)
Other versions
KR100414058B1 (en
Inventor
김재민
강문구
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR10-2001-0050054A priority Critical patent/KR100414058B1/en
Publication of KR20030016477A publication Critical patent/KR20030016477A/en
Application granted granted Critical
Publication of KR100414058B1 publication Critical patent/KR100414058B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • G06T17/205Re-meshing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2008Assembling, disassembling

Abstract

PURPOSE: A method and a system for optimizing remeshing of the surface of a three-dimensional polygon are provided to reduce distance error to preserve the original shape of mesh and improve regularity quality of the mesh. CONSTITUTION: The original mesh is simplified. The simplified mesh is subdivided to be refined. The subdivided mesh is optimized to deform the mesh into the original mesh shape. The subdivision step is repeated until the mesh deformed into the original shape satisfies a predetermined condition. The predetermined condition is Hausdorff distance. The simplification is carried out in such a manner that a procedure including a step of calculating the positions of all vertexes, a step of selecting the effective pair for all vertexes, a step of calculating the position of a new vertex for the selected effective pair, and a step of aligning the effective pair with heap at the calculated position to reduce edges is repeated.

Description

3차원 다각형 표면의 리메슁 최적화 방법 및 장치{REMESHING OPTIMIZING METHOD AND APPARATUS FOR POLYHEDRAL SURFACE}Remechanism Optimization Method and Apparatus for 3D Polygonal Surfaces {REMESHING OPTIMIZING METHOD AND APPARATUS FOR POLYHEDRAL SURFACE}

본 발명은 다각형 표면의 리메슁(remeshing)에 관한 것으로 특히, 컴퓨터 그래픽스(computer graphics) 및 기하학적인 도형의 모델링(geometric modeling) 분야에 있어서 3차원 다각형 표면의 리메슁 최적화 방법 및 장치에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to remeshing of polygonal surfaces, and more particularly, to methods and apparatus for remeshing 3D polygonal surfaces in the field of computer graphics and geometric modeling of geometric figures.

현재 3차원상의 물체를 표현하기 위한 방법으로 다각형을 많이 사용하고 있다. 이는 어떠한 물체라도 다각형 표면으로 근사화(approximation)시켜 표현이 가능하기 때문이다.Currently, polygons are used a lot to express 3D objects. This is because any object can be expressed by approximating a polygonal surface.

특히, 물체를 삼각형(trinagle)으로 표현하는 것이 빠르고 효과적이기 때문에 현재 컴퓨터 그래픽스와 도형 모델링 기술에서는 삼각형의 메쉬(triangle mesh)가 3차원 물체의 형태를 표시하는 표준적인 방법이 되고 있다.In particular, triangular meshes have become the standard way of representing the shape of three-dimensional objects in computer graphics and figure modeling techniques, because it is fast and effective to represent objects in triangles.

그런데, 경우에 따라 대상 물체는 수 백만개의 삼각형으로 표현될 수 있다. 이러한 경우 현재까지의 기술로는 실시간 처리(animation, rendering)가 불가능하고 또한, 파일 저장이나 전송 등에도 많은 부담이 따른다.However, in some cases, the object may be represented by millions of triangles. In this case, real-time processing (animation, rendering) is not possible with the current technology, and a lot of burden is placed on file storage or transmission.

이러한 문제를 해결하기 위해 원래 모델의 모양을 최대한 유지하면서 보다 적은 숫자의 삼각형으로 모델을 표현하는 단순화(simplification) 방법과 다중 해상도 표현(multiresolution representation) 방법이 제안되었다. 특히, 다중 해상도 표현 방법에 웨이블릿(wavelet) 변환을 적용하여 좋은 결과를 얻을 수 있었다.To solve this problem, a simplification method and a multiresolution representation method of expressing the model with fewer triangles while maintaining the shape of the original model to the maximum have been proposed. In particular, wavelet transform was applied to the multi-resolution representation to obtain good results.

그러나, 다중 해상도 표현 방법에 웨이블릿 변환을 적용함에 있어서 세분화연결성(subdivision connectivity)을 가진 메쉬로 제한되는 단점이 있었다.However, there is a disadvantage in that the wavelet transform is applied to a multi-resolution representation method to be limited to a mesh having subdivision connectivity.

이러한 단점을 개선하기 위해 원래 메쉬의 포인트(point)들을 단순화된 메쉬로 맵핑(mapping)하여 불규칙적인 메쉬(irregular mesh)를 리메슁하는 매개화 변수(parameterization)를 이용한 리메슁 방법이 제안되었다.In order to remedy this drawback, a remeshing method using parameterization that remaps an irregular mesh by mapping points of the original mesh to a simplified mesh has been proposed.

그런데, 매개화 변수(parameterization)를 이용한 리메슁 방법은 메쉬가 충분히 부드럽지 않거나 복잡하면 맵핑시 일대일 대응이 이루어지지 않거나 잘못된 점으로 맵핑될 수 있는 문제점이 있었다.However, the remeshing method using parameterization has a problem in that when the mesh is not soft enough or complicated, one-to-one correspondence cannot be made at the time of mapping or mapped to the wrong point.

이러한 문제점을 해소하기 위해 로컬 하모닉 맵(local harmonic map), 등각의 맵(conformal map) 또는, 쉬링크 랩핑(shrink wrapping)을 이용하는 리메슁 방법이 제시되었다.In order to solve this problem, a remeshing method using a local harmonic map, a conformal map, or shrink wrapping has been proposed.

그러나, 로컬 하모닉 맵 및 등각의 맵 방법은 매개화 변수(parameterization)를 이용한 리메슁 방법으로 구현이 어렵거나 리메슁된 메쉬가 전체적으로 부드러움을 갖지 못하는 단점이 있다. 특히, 쉬링크 랩핑을 이용하는 리메슁 방법은 임의의 꼭지점이 '6'이 아닌 값을 가질 수 있는 genus-zero triangle mesh에만 적용되며 아울러 base domain mesh가 원래 메쉬와 상당히 유사해야만 하는 제한이 있다.However, the local harmonic map and the conformal map method are difficult to implement in the remeasurement method using parameterization or the remeshed mesh does not have the overall softness. In particular, the remeshing method using shrink wrapping applies only to a genus-zero triangle mesh where any vertex can have a value other than '6' and also has a limitation that the base domain mesh must be quite similar to the original mesh.

본 발명은 종래의 문제점을 개선하기 위하여 리메슁된 메쉬가 전체적으로 부드러움을 갖고 일반적인 연결성(topology)과 경계선(boundary)을 갖는 메쉬는 물론 복합적이지 않은 표면(non-manifold surface)에 대해서도 적용가능하며 원래 메쉬와의 Hausdorff 거리(distance)를 기준 이내로 보장해 줄 수 있도록 리메슁을 최적화하도록 창안한 3차원 다각형 표면의 리메슁 최적화 방법 및 장치를 제공함을 목적으로 한다.The present invention is applicable to non-manifold surfaces as well as to meshes where the remeshed mesh has overall softness and general connectivity and boundaries to improve conventional problems. An object of the present invention is to provide a method and apparatus for remeshing a 3D polygonal surface, which is designed to optimize remeshing to ensure a Hausdorff distance to a mesh within a standard.

도1은 본 발명의 실시예를 위한 리메슁 최적화 장치의 블럭도.1 is a block diagram of a remodeling optimization apparatus for an embodiment of the present invention.

도2는 도1에서 단순화 처리부의 상세 블럭도.FIG. 2 is a detailed block diagram of the simplified processing unit in FIG. 1; FIG.

도3은 에지 축소방법을 나타낸 도면.3 is a view showing an edge reduction method.

도4는 2차원으로 근사화된 에지 축소를 나타낸 도면.4 illustrates edge reduction approximated in two dimensions.

도5는 표면 유선화의 알고리즘을 나타낸 도면.5 illustrates an algorithm of surface streamlining.

도6은 본 발명의 실시예에서 리메슁 과정을 보인 예시도.Figure 6 is an exemplary view showing a remetering process in an embodiment of the present invention.

도7은 토끼 모델에서의 B-to-B 투영을 보인 예시도.7 shows an example of B-to-B projection in a rabbit model.

도8는 도7에 있는 타원부분을 확대 표시한 예시도.8 is an enlarged view of an ellipse portion shown in FIG.

도9는 마네킹(mannequin)을 모델로 한 최적화 리메슁 과정을 보인 예시도.Figure 9 is an exemplary view showing an optimization remodeling process modeled on a mannequin.

도10은 말을 모델로 한 최적화 리메슁 과정을 보인 예시도.10 is an exemplary view showing an optimization remodeling process using a horse model.

도11은 본 발명과 기존 방법에서 토끼를 모델로 한 리메슁 결과를 보인 예시도.Figure 11 is an exemplary view showing the results of the remeet modeled on the rabbit in the present invention and the existing method.

도12는 QEM의 결과와 GORA(globally optimized remeshing algorithm)(ICP) 방법을 적용한 베이스 도메인의 평균 제곱 거리 에러를 비교한 도표.12 is a chart comparing the mean squared distance error of the base domain to which the results of QEM and the globally optimized remeshing algorithm (GORA) method are applied.

도13은 MAPS와 GORA(ICP) 방법에서 거리 에러(distance error)를 나타낸 도표.Fig. 13 is a diagram showing distance errors in the MAPS and GORA (ICP) methods.

도14는 정규적 품질(Regularity quality)을 나타낸 도표.14 is a chart showing regularity quality.

도15는 메쉬 해상도(mesh resolution)를 나타낸 도표.15 is a chart showing mesh resolution.

도16은 콤팩트니스의 히스토그램을 보인 예시도.16 shows an histogram of compactness.

도17은 에지 길이 히스토그램을 보인 예시도.Figure 17 is an exemplary diagram showing an edge length histogram.

* 도면의 주요 부분에 대한 부호 설명 *Explanation of symbols on the main parts of the drawings

100 : 단순화 처리부110~130 : 단순화 회로100: simplified processing unit 110 to 130: simplified circuit

200 : 세분화 처리부210 : 중간점 세분화 회로200: segmentation processing unit 210: intermediate point segmentation circuit

220 : 평탄화 필터300 : 최적화 처리부220: planarization filter 300: optimization processing unit

400 : 기준메쉬 입력부400: reference mesh input unit

본 발명은 상기의 목적을 달성하기 위하여 원래의 메쉬를 단순화시키는 과정과, 상기에서 단순화된 메쉬를 세분화(subdivision)하여 리파인(refine)시키는 과정과, 상기에서 세분화된 메쉬를 원래 메쉬의 모양으로 변형(deformation)하는 최적화 과정과, 상기에서 원래 메쉬의 형태로 변형된 메쉬가 미리 설정된 조건을 만족할 때까지 상기 세분화 과정부터 반복 실행하여 세분화 연결성(subdivision connectivity)을 갖는 최적화된 새로운 메쉬를 얻도록 함을 특징으로 한다.The present invention is to simplify the original mesh to achieve the above object, subdivision and refine the refined mesh (simplified) in the above, and to transform the subdivided mesh in the shape of the original mesh (deformation) optimization process, and repeating the above-mentioned subdivision process until the mesh deformed in the form of the original mesh satisfies a predetermined condition so as to obtain an optimized new mesh having subdivision connectivity. It features.

상기 단순화 과정은 모든 정점의 위치를 계산하는 단계와, 모든 정점에 대해 유효쌍을 선택하는 단계와, 상기에서 선택된 유효쌍에 대해 새로운 위치를 계산하여 해당 유효쌍을 힙(heap)에 정렬시키는 단계를 반복하여 에지를 감축시키는 것을 특징으로 한다.The simplification process includes calculating positions of all vertices, selecting valid pairs for all vertices, and calculating new positions for the selected valid pairs to align the valid pairs on the heap. Repeating to reduce the edges.

상기 세분화 과정은 중간점에 대해 베이스 메쉬를 세분화하는 단계와, 상기에서 세분화된 메쉬를 표면 유선화 방법을 적용하여 평탄화하는 단계로 이루어짐을 특징으로 한다.The segmentation process is characterized in that it comprises the step of subdividing the base mesh with respect to the midpoint, and the step of flattening the subdivided mesh by the surface streamline method.

상기 표면 유선화 방법은 모든 정점에 대해 이웃하는 정점들로부터 오차를 계산하는 단계와, 각 정점에 대해 오차의 임의의 배수만큼의 값을 합하는 단계와, 상기 오차값에 임의의 상수값을 곱하여 각 정점에 더하는 단계로 이루어짐을 특징으로 한다.The surface streamlining method includes the steps of calculating an error from neighboring vertices for all vertices, adding a value by any multiple of the error for each vertex, multiplying the error value by a random constant value, and It is characterized by consisting of steps that add to the vertex.

상기 최적화 과정은 원래의 메쉬에서 변형될 메쉬로 일정하게 분포되는 점을(으로) 투영(projection)하는 방법을 정의하는 단계와, 상기에서 정의된 투영 정보를 이용하여 에너지 함수(energy function)을 최소화하는 정점(vertex)의 위치를 반복적으로 구하여 메쉬를 변형시키는 단계를 수행하여 두 메쉬 사이의 거리를 최소화하기 위한 GORA(ICP) 알고리즘을 이용하는 것을 특징으로 한다.The optimization process includes defining a method of projecting a point uniformly distributed from an original mesh to a mesh to be deformed, and minimizing an energy function by using the projection information defined above. It is characterized by using a GORA (ICP) algorithm to minimize the distance between the two meshes by performing a step of deforming the mesh by repeatedly obtaining the position of the vertex (vertex).

상기 최적화 과정은 원래 메쉬의 형태와 경계(boundary)의 유지 및 단순화를 최적화하기 위해 ICP(Iterated Closest Point) 방법을 베이스 영역에 우선 적용하는 것을 특징으로 한다.The optimization process is characterized by first applying the Iterated Closed Point (ICP) method to the base region in order to optimize the maintenance and simplification of the shape and boundary of the original mesh.

이하, 본 발명을 도면에 의거 설명하면 다음과 같다.Hereinafter, the present invention will be described based on the drawings.

도1은 본 발명의 실시 예를 위한 리메슁 장치의 블럭도로서 이에 도시한 바와 같이, 입력 메쉬의 형태를 단순화하는 단순화 처리부(100)와, 단순화된 베이스 메쉬를 세분화하여 평탄화 처리하는 세분화 처리부(200)와, 상기 단순화 처리부(100)에서의 베이스 메쉬로부터 상기 세분화 처리부(200)에서의 출력인 세분화된 메쉬() 상으로의 투영을 실행하여 상기 세분화된 메쉬의 정점 위치를 조정함에 의해 두 메쉬간의 거리를 최소화하는 최적화 처리부(300)와, 원래 메쉬 및 상기 단순화 처리부(100)에서 순차적으로 단순화 처리된 베이스 메쉬를 기준 메쉬()로 하여 상기 최적화 처리부(300)로 입력시키는 기준 메쉬 입력부(400)를 구비하여 구성한다.1 is a block diagram of a remeshing apparatus for an embodiment of the present invention, as shown in FIG. 200 and the subdivided mesh that is the output from the subdividing processing unit 200 from the base mesh in the simplified processing unit 100 ( Optimization processing unit 300 for minimizing the distance between the two meshes by adjusting the vertex position of the subdivided mesh by performing projection onto the; and the base mesh sequentially simplified by the original mesh and the simplified processing unit 100. To the base mesh ( It is configured to include a reference mesh input unit 400 to be input to the optimization processing unit 300 as).

상기 단순화 처리부(100)는 도2의 블럭도에 도시한 바와 같이, 원래의 메쉬를 1차 단순화 처리하여 기준메쉬 입력부(400)로 입력시키는 단순화 회로(110)와, 이 메쉬 단순화 회로(110)에서의 메쉬를 2차 단순화 처리하여 상기 기준메쉬 입력부(400)로 입력시키는 단순화 회로(120)와, 이 메쉬 단순화 회로(120)에서의 메쉬를 3차 단순화 처리하여 최적화 처리부(300)로 입력시키는 단순화 회로(130)를 구비하여 구성한다.As shown in the block diagram of FIG. 2, the simplification processing unit 100 includes a simplification circuit 110 for firstly inputting the original mesh to the reference mesh input unit 400 and the mesh simplification circuit 110. Second simplification process of the mesh in the input to the reference mesh input unit 400, the simplified circuit 120 and the mesh in this mesh simplification circuit 120 to the third process to simplify the input to the optimization processor 300 A simplified circuit 130 is provided.

상기 세분화 처리부(200)는 최적화 처리부(300)에서 출력되는 성긴 베이스 메쉬(coarse base mesh)를 입력으로 중간점에 대하여 세분화하는 중간점 세분화 회로(210)와, 상기 세분화된 메쉬를 평탄화하여 상기 최적화 처리부(300)로 입력시키는 평탄화 필터(220)를 구비하여 구성한다.The refinement processing unit 200 is an intermediate point refinement circuit 210 for subdividing the intermediate point with a coarse base mesh output from the optimization processing unit 300, and the optimization by flattening the fine mesh. The flattening filter 220 which inputs to the process part 300 is comprised.

상기 평탄화 필터(220)는 메쉬 유선화 필터로 구성한다.The flattening filter 220 is configured as a mesh streamlined filter.

이와같이 구성한 본 발명의 실시예에 대한 동작 및 작용 효과를 상세히 설명하면 다음과 같다.When described in detail the operation and effect of the embodiment of the present invention configured as described above.

본 발명의 실시 예는 단순화 처리부(100)가 원래 메쉬를 단순화하여 세분된 연결성(subdivision connectivity)을 갖는 새로운 메쉬를 얻는 과정과, 세분화 처리부(200)가 상기 단순화 처리부(100)에서 단순화된 메쉬를 세분화(subdivision)하여 리파인(refine)시키는 과정과, 최적화 처리부(300)가 상기 세분화 처리부(200)에서 세분화된 메쉬를 원래 메쉬의 모양으로 변형(deformation)하는 과정을 구비하여 상기 최적화 처리부(300)에서 변형된 메쉬가 미리 설정된 조건을 만족할 때까지 상기 과정을 반복 실행하는 동작을 수행하게 된다.According to an embodiment of the present invention, a process of obtaining a new mesh having subdivision connectivity by simplifying the original mesh by the simplification processing unit 100, and by using the simplification processing unit 100, the simplification processing unit 100 Subdivision and refinement, and the optimization processing unit 300 includes a process of deforming the subdivided mesh in the shape of the original mesh by the refinement processing unit 200 to form the original mesh. The process is repeated until the deformed mesh satisfies a preset condition.

이러한 본 발명의 실시 예에서의 동작을 각 과정별로 설명하면 다음과 같다.If the operation in the embodiment of the present invention will be described for each process as follows.

1. 임의의 대상 물체를 표현하는 다각형 표면의 단순화(polygonal surface simplification) 과정을 도3 및 도5를 참조하여 설명하기로 한다.1. A process of simplification of a polygonal surface representing an arbitrary object will be described with reference to FIGS. 3 and 5.

본 발명의 실시 예에서의 단순화 과정은 원래 모델의 모양을 최대한 유지하면서 보다 적은 숫자의 다각형으로 모델을 표현하도록 원래의 모델에 대해 반복적인 에지 감축(iterative edge contraction)을 실행한다. 이는 단순화 처리부(100)에서 실행된다.The simplification process in the embodiment of the present invention performs iterative edge contraction on the original model to represent the model with fewer polygons while maintaining the shape of the original model as much as possible. This is executed in the simplified processing unit 100.

상기 단순화 처리부(100)는 대상 물체를 표현하는 원래의 메쉬를 다수개의 단순화 회로(110~130)를 순차적으로 통해 단순화하고 그 최종적으로 단순화된 메쉬를 최적화 처리부(300)로 입력시킨다.The simplification processor 100 sequentially simplifies the original mesh representing the target object through a plurality of simplification circuits 110 to 130, and finally inputs the simplified mesh to the optimization processor 300.

그리고, 기준메쉬 입력부(400)는 상기 단순화 회로(110~130)에 입력되는 메쉬를 기준 메쉬()로 하여 상기 최적화 처리부(300)에 입력시키게 된다.And, the reference mesh input unit 400 is a reference mesh (a mesh input to the simplified circuits 110 to 130) ) To be input to the optimization processing unit 300.

상기 단순화 처리부(100)에서 메쉬를 단순화할 때 에지를 제거하게 되는데, 임의의 에지를 제거할 때 그 에지의 양 끝점이 새로운 정점으로 치환된다. 보통 경계선 에지의 경우에는 하나의 페이스가 제거되고 경계선 에지가 아닌 경우에는 2개의 페이스가 제거된다.When the mesh is simplified in the simplification processing unit 100, an edge is removed. When an arbitrary edge is removed, both endpoints of the edge are replaced with a new vertex. Usually one face is removed for the borderline edge and two faces are removed for the borderline edge.

단순화 과정에서 원래 모델의 모양을 최대한 유지시키기 위해 어떤 에지를 먼저 제거할 것인가에 대한 선택기준과 새로운 정점의 위치를 결정하는 조건에 따라 여러 가지 방법으로 세분될 수 있다.The simplification process can be subdivided in several ways, depending on the selection criteria for which edges are removed first and the conditions for determining the position of the new vertices in order to maintain the shape of the original model as much as possible.

본 발명의 실시예에서는 기하학(geometry)이나 위상 기하학(topology)에 대한 제약이 적고 비교적 실행속도가 빠르며 좋은 결과를 얻을 수 있는 Garland가 제안한 QEM(Quadric Error Metrices)를 이용한 반복적인 에지 붕괴(collapse) 방법을 예로 들어 설명하기로 한다.In an embodiment of the present invention, iterative edge collapse using QEM (Quadric Error Metrics) proposed by Garland, which has less constraints on geometry or topology, is relatively fast in execution, and obtains good results. The method will be described as an example.

즉, 단순화 처리부(100)는 QEM(Quadric Error Metrices)를 이용한 반복적 에지 감축(edge contraction)을 실행하여 표면 단순화를 달성하는 과정을 도3을 참조하여 설명하면 다음과 같다.That is, the simplification processing unit 100 describes a process of achieving surface simplification by executing iterative edge contraction using quadrature error metrics (QEM) with reference to FIG. 3.

(1) 초기의 모든 정점들에 대해 Q 행렬들(matrices)을 계산한다.(1) Compute Q matrices for all initial vertices.

(2) 축소시키기 위한 모든 에지 또는 정점의 유효 쌍(valid pair)(v1,v2)을 선택한다.(2) Select a valid pair (v 1 , v 2 ) of all edges or vertices to be reduced.

(3) 각각의 유효 쌍(v1,v2)에 대한 새로운 정점 위치()를 계산한다. 이때, 새로운 정점의 에러(는 이 쌍의 값(cost)이 된다.(3) a new vertex position for each valid pair (v 1 , v 2 ) Calculate At this time, the new vertex error ( Is the cost of this pair.

(4) 위에서 구한 값에 따라 모든 쌍들을 힙(heap)에 정렬시킨다. 이때, 가장 적은 값을 가진 쌍이 힙(heap)의 꼭대기에 위치하게 된다.(4) Sort all pairs on the heap according to the values obtained above. At this time, the pair with the smallest value is placed on top of the heap.

(5) 힙에서 가장 작은 코스트를 가진 쌍(v1,v2)을 반복적으로 계산한다. 이때, 유효 쌍(v1,v2)을 축소(contraction)시키고 정점(v1)을 포함하는 다른 모든 쌍들의 값을 업데이트(update)시킨다.(5) Iteratively calculate the pair with the smallest cost (v 1 , v 2 ) in the heap. At this time, the valid pairs v 1 and v 2 are contracted and the values of all other pairs including the vertex v 1 are updated.

도3은 정점(v1,v2)의 쌍이 한점()으로 축소되는 에지 축소 방법을 나타낸 도면으로서 이때, 에지를 축소시키기 위해 유효 쌍(v1+v2)의 값과 새로운 정점()의 위치를 계산하기 위해 QEM을 이용한다.3 shows one pair of vertices (v 1 , v 2 ) The figure shows an edge reduction method that is reduced to), where the value of the effective pair (v 1 + v 2 ) and the new vertex ( Use QEM to calculate the position of.

그런데, QEM(Quadric Error Matrix)을 이용한 반복적인 에지 감축(collapse) 방법은 메쉬의 기하학(geometry)이나 위상 기하학(topology)에 대한 제약이 적고 비교적 실행 속도가 빠르며 좋은 품질을 얻을 수 있지만, 경계선에서 때때로 스파이크(spike)가 발생하고 그 경계선 주변에서 정점의 각도(degree)가 커지는 문제가 있다.By the way, iterative edge reduction method using quadrature error matrix (QEM) has less constraints on mesh geometry or topology and is relatively fast to execute and can get good quality. Sometimes spikes occur and the vertex's angle grows around its boundaries.

즉, 2차 곡면 에러(quadric error ; EQ)가 발생할 수 있다.That is, quadratic error (E Q ) may occur.

아래에 2차 곡면 에러(quadric error ; EQ)를 정의하고 유도하는 과정을 기재하였다.Below, the process of defining and deriving quadratic error (E Q ) is described.

메쉬(mesh)상의 각 정점에는 몇 개의 면(face)이 인접하게 된다. 예로, 정규적인 메쉬인 경우 각 정점에는 6개의 메쉬가 인접해 있다.Several vertices are adjacent to each vertex on the mesh. For example, in a regular mesh, six vertices are adjacent to each vertex.

이때, 각 정점에서 근사화된 에러는 인접해 있는 면까지의 거리 제곱의 합으로 정의할 수 있다.In this case, an error approximated at each vertex may be defined as a sum of squares of distances to adjacent surfaces.

인접 면은 도4에 도시한 바와 같이, nTv+d=0을 만족하는 평면(plane)에 속한다. 여기서, n=[a b c]T는 평면의 단위 노멀 벡터(normal vector)이고, d는 평면에서 정의되는 상수이다.The adjacent face belongs to a plane that satisfies n T v + d = 0, as shown in FIG. Where n = [abc] T is the unit normal vector of the plane and d is a constant defined in the plane.

도 4는 2차원으로 근사화된 에지 축소를 나타낸 도면이다.4 illustrates edge reduction approximated in two dimensions.

임의의 정점(v=[x,y,z]T)에서 평면까지의 거리의 제곱을 아래의 [수학식 1]과 같이 정의할 수 있다.The square of the distance from any vertex (v = [x, y, z] T ) to the plane can be defined as shown in Equation 1 below.

이때, 2차 곡면(Quadric) 함수(Q)를 (A,b,c)=(nnT,dn,d2)으로 정의하면 정점(v)에서의 2차 곡면 함수(Q(v))는 Q(v)=vTAv+2bTv+c가 된다.If the quadratic surface function Q is defined as (A, b, c) = (nn T , dn, d 2 ), then the quadratic surface function Q (v) at the vertex v is Q (v) = v T Av + 2b T v + c.

또한, 임의의 정점(v)에서 2차 곡면 에러(EQ)는 아래의 [수학식 2]와 같이 2차 곡면 함수(Qi)의 합으로 정의된다.Further, the quadratic surface error E Q at any vertex v is defined as the sum of the quadratic surface function Q i as shown in Equation 2 below.

따라서, 상기 [수학식 2]에 의해 새로운 정점()의 위치를 다음과 같이 계산할 수 있다.Therefore, the new vertex (Equation 2) We can calculate the position of) as

함수(Q())는 2차식(quadratic)이기 때문에 거리 에러(distance error)의 최소값을 갖는 정점()의 위치는 아래의 [수학식 3]을 만족하는 지점이 된다.Function (Q ( )) Is quadratic, so the vertex with the minimum value of distance error ( ) Is the point that satisfies Equation 3 below.

이때,가 되고,을 풀면 최적의 정점 위치=-A-1b를 구할 수 있다.At this time, Become, Solve for optimal vertex position = -A -1 b can be found.

요약하면, 2차의 에러 매트릭스를 이용하여 에지를 축소시키기 위해 유효 쌍(v1+v2)의 값을 상기 [수학식 2]에 의해 구한다. 이로부터 새로운 정점의 위치는=-A-1b 가 되며, 새로운 정점()의 근사화된 거리 에러는 Q(v1)과 Q(v2)의 합으로 정의된다.In summary, the value of the effective pair (v 1 + v 2 ) is obtained by Equation 2 above to reduce the edge using a second order error matrix. From this the new vertex position is = -A -1 b, and the new vertex ( The approximate distance error of) is defined as the sum of Q (v 1 ) and Q (v 2 ).

띠라서, 새로운 정점의 위치를 경계선 에지상의 QEM을 최소로 하는 점으로 제한하여 스파이크를 방지하고 정점이 가질 수 있는 각도(degree)를 제한한다.Therefore, limiting the position of the new vertex to the point that minimizes the QEM on the boundary edge prevents spikes and limits the degree that the vertex can have.

2. 베이스 메쉬에 대한 세분화(subdivision) 과정을 도5를 참조하여 설명하기로 한다.2. A subdivision process for the base mesh will be described with reference to FIG.

세분화 과정은 단순화 과정에서 원래의 메쉬에 대해 베이스 메쉬가 생성되면 그 베이스 도메인에 연속적인 세분화를 적용하여 세분화된 연결성(subdivision connectivity)을 갖는 메쉬를 얻는 과정으로, 이는 세분화 처리부(200)에서 이루어진다.The segmentation process is a process of obtaining a mesh having subdivision connectivity by applying successive segmentation to the base domain when the base mesh is generated for the original mesh in the simplification process, which is performed by the segmentation processor 200.

상기 세분화 처리부(200)는 중간점 세분화 회로(210)가 최적화 처리부(300)에서 출력되는 성긴 베이스 메쉬(coarse base mesh)를 입력으로 중간점에 대하여 세분화하고 평탄화 필터(320)가 상기 세분화된 메쉬를 평탄화하여 상기 최적화 처리부(300)로 입력시키게 된다.The refinement processing unit 200 divides the intermediate point refinement circuit 210 into a coarse base mesh output from the optimization processing unit 300 with respect to the intermediate point, and the flattening filter 320 refines the refined mesh. Is flattened and input to the optimization processor 300.

상기 평탄화 필터(320)는 메쉬 체적을 축소시킴이 없이 세분화된 메쉬를 평탄하게 만든다.The flattening filter 320 flattens the subdivided mesh without reducing the mesh volume.

즉, 세분화 과정에서는 반복적인 세분화를 적용하고 그때의 세분화된 메쉬를 평탄(smooth)하게 만들어 주는 루프 세분화(Loop subdivision) 방법을 사용한다.In other words, the segmentation process uses a loop subdivision method that applies iterative segmentation and smooths the segmented mesh at that time.

그런데, 루프 세분화 방법을 적용하는 경우 리메슁 결과는 임시 정점들에서 불충분한 품질을 가질 수 있다.However, when applying the loop segmentation method, the remeasurement result may have insufficient quality at the temporary vertices.

즉, 루프 세분화 방법은 성긴 메쉬의 체적을 축소시키며 그러한 체적 축소는 최적화 처리 과정을 어렵게 만들 수 있다.That is, the loop segmentation method reduces the volume of the sparse mesh and such volume reduction can make the optimization process difficult.

따라서, 본 발명의 실시예에서는 메쉬를 중간점을 가지고 세분화한 후 표면 유선화(fairing) 필터링을 수행하여 정규의 정점들에서 만큼 임시 정점들에서도 평탄화와 소형화를 개선되도록 한다.Therefore, in the embodiment of the present invention, the mesh is segmented with the intermediate point and then surface fairing filtering is performed to improve the flattening and miniaturization in the temporary vertices as much as the normal vertices.

즉, 상기 평탄화 필터(220)는 표면 유선화(surface fairing) 과정을 수행하여 중간점 세분화 회로(210)에서 세분화된 메쉬의 평탄화 정도(smoothness)를 증가시키게 된다.In other words, the planarization filter 220 performs a surface fairing process to increase the smoothness of the mesh subdivided in the midpoint segmentation circuit 210.

표면 유선화(surface fairing) 방법의 일례로는 Taubin이 제시한 방법이 있다.An example of the surface fairing method is the method proposed by Taubin.

Taubin의 방법은 일반적인 위상(topology)을 갖는 삼각 메쉬의 유선화에 신호 처리적인 접근을 시도한 것으로, 메쉬에 일반적인 주파수(frequency)를 정의하기 위해 라플라시안(Laplacian)의 이산적 근사(discrete approximation)를 이용하고 이의 고유 벡터(eigen vector)를 주파수로 정의하였다.Taubin's method attempts a signal-processing approach to wireline triangular meshes with a common topology, using Laplacian's discrete approximation to define the common frequencies in the mesh. And its eigen vector was defined as frequency.

이산적 표면 신호(discrete surface signal)의 이산적 라플라시안(descrete Laplacian)을 정의하면 아래의 [수학식 4]와 같다.Defining discrete Laplacian of discrete surface signal is expressed by Equation 4 below.

여기서, 가중치(weight) wij는 음이 아닌 값으로,=1이 된다.Here, the weight w ij is a non-negative value, = 1.

본 발명의 실시예에서 표면 유선화 과정은 3단계로 이루어진다.In the embodiment of the present invention, the surface streamlining process consists of three steps.

1단계 : 모든 정점들에 대해 도5(a)에 도시된 바와 같이 그 이웃하는 정점들로부터 근사치(△x)를 계산한다.Step 1: For all vertices, an approximation DELTA x is calculated from the neighboring vertices as shown in Fig. 5 (a).

2단계 : 메쉬를 평탄화(smoothing)하는 동안 축소(shrinkage)가 발생하는 것을 방지하기 위하여 각 정점에 대해 근사치(△x)의 λ배 만큼을 더해준다. 여기서, λ는 0과 1사이의 값을 갖는다.Step 2: Add λ times of the approximation Δx to each vertex to prevent shrinkage during smoothing of the mesh. Here, lambda has a value between 0 and 1.

3단계 : 각 정점에 대해 λ대신 μ를 곱한 값을 더해준다. 여기서, μ는 음수로서 -λ보다 작은 값을 갖는다.Step 3: For each vertex, add μ multiplied by λ instead of λ. Where μ is a negative number and has a value less than -λ.

상기 과정은 메쉬가 충분히 평탄(smooth)하게 될 때까지 반복한다.The process is repeated until the mesh is smooth enough.

이러한 표면 유선화 방법은 구현된 회로의 메모리가 정점의 숫자에 비례하고 수행 시간이 매우 빨라 효과적이다.This surface wired method is effective because the memory of the implemented circuit is proportional to the number of vertices and the execution time is very fast.

3. 세분화된 메쉬를 기준메쉬의 형태에 가깝게 최적화하는 최적화 과정을 설명하기로 한다.3. The optimization process to optimize the refined mesh close to the shape of the reference mesh will be described.

세분화 처리부(200)에서 세분화된 메쉬는 어떤 거리 에러를 가질 수 있고 또한, 충분히 평탄화되지 않을 수 있다.The refined mesh in the refinement processing unit 200 may have a certain distance error and may not be sufficiently flattened.

최적화 과정은 세분화 처리부(200)에서 세분화된 메쉬를 기준 메쉬의 형태에 가깝게 최적화하는 과정으로, 최적화 처리부(300)에 의해 수행되어진다.The optimization process is a process of optimizing the subdivided mesh close to the shape of the reference mesh in the refinement processing unit 200, and is performed by the optimization processing unit 300.

최적화 처리부(300)는 초기에 단순화 처리부(100)의 단순화 회로(130)에서의 베이스 메쉬를 기준메쉬 입력부(400)에서의 기준 메쉬()로 투영하여 그 기준 메쉬의 형태에 가깝게 변형하여 세분화 처리부(200)로 입력시키고 이 후, 세분화 처리부(200)에서의 베이스 메쉬를 상기 기준 메쉬 입력부(400)에서의 기준 메쉬()로 투영하여 그 기준 메쉬의 형태에 가깝게 변형하는 동작을 반복적으로 수행하게 된다.The optimization processor 300 initially sets the base mesh in the simplified circuit 130 of the simplified processor 100 in the reference mesh input unit 400. ) Is projected to the shape of the reference mesh and deformed to the refinement processing unit 200. Then, the base mesh in the refinement processing unit 200 is converted into a reference mesh () in the reference mesh input unit 400. ) And repeatedly deform to approximate the shape of the reference mesh.

상기 기준메쉬 입력부(400)는 단순화 처리부(100)의 단순화 회로(120),(110)에서의 베이스 메쉬, 상기 단순화 회로(100)로 입력되는 원래의 메쉬를 순차적으로 기준 메쉬()로 설정하여 최적화 처리부(300)로 입력시키게 된다.The reference mesh input unit 400 sequentially converts the base mesh of the simplified circuits 120 and 110 of the simplified processor 100 and the original mesh input to the simplified circuit 100 into a reference mesh ( ) To be input to the optimization processor 300.

따라서, 최적화 처리부(300)는 상기의 최적화 과정를 반복함에 의해 원래의 메쉬에 가깝게 변형된 메쉬를 복원시키게 된다.Therefore, the optimization processor 300 restores the mesh deformed close to the original mesh by repeating the above optimization process.

이러한 최적화 과정은 도6의 예시도에 도시하였다.This optimization process is shown in the example of FIG.

이러한 최적화 과정은 전체적인(global) 에너지 함수를 최소화하는 것에 의해 메쉬 형태와 평탄화를 개선한다.This optimization process improves mesh shape and planarization by minimizing the global energy function.

다시 말해서, 에너지 함수의 최소화는 방정식을 최소화하기 위한 세분화된 메쉬()의 모든 정점 위치를 계산하는 것으로, 이는 conjugate gradient 방법을사용하여 최소 제곱법 문제(least square problem)를 해결한다.In other words, minimization of the energy function is a refined mesh to minimize the equations. Compute the position of all vertices in the c-squared, which solves the least square problem using the conjugate gradient method.

즉, 세분화된 메쉬의 정점 위치(position)(V)에 대해 에너지 함수 E(K,V)를 최소화할 때 선형 최소 제곱법 문제(linear least square problem)를 Conjugate Gradient method를 사용하여 해결한다.That is, the linear least square problem is solved using the Conjugate Gradient method when minimizing the energy function E (K, V) for the position (V) of the subdivided mesh.

이는 원래 메쉬에서 다른 메쉬로의 투영 정보를 이용하여 에너지 함수를 최소화하는 정점의 위치를 반복적으로 구하는 것으로, ICP(Iterated Closest Points 방법이라 한다.It uses the projection information from the original mesh to another mesh to repeatedly find the positions of the vertices that minimize the energy function. This is called the Iterated Closest Points method.

이때, 기준 메쉬() 상의 점들을 세분화된 메쉬() 상의 가장 근접한 점들에 반복적으로 투영(projection)하는 방법은 세분화된 메쉬()의 정점들에 대하여 에너지 함수의 그레디언트(gradient)를 계산하고 이로부터 모든 정점의 위치들을 조정한다.At this time, the reference mesh ( Meshes on points Iterative projection to the nearest points on the) Calculate the gradient of the energy function for the vertices of) and adjust the positions of all vertices from it.

즉, 각 해상도 레벨 내에서 세분화된 메쉬()의 형태를 기준 메쉬()의 형태에 가능한 가깝게 최적화시킬 때 두 메쉬간의 거리를 계산하기 위하여 기준 메쉬() 상의 점들의 집합은 세분화된 메쉬() 상으로 투영시킨다.That is, a mesh subdivided within each resolution level ( Shape of the reference mesh ( In order to calculate the distance between two meshes as close as possible to the shape of the The set of points on) is a refined mesh ( ) Onto the image.

만일, 임의의 점들이 세분화된 메쉬() 상의 임의의 점으로 투영되지 않을 때 세분화된 메쉬()의 면 상의 4 점들은 기준 메쉬() 상의 가장 근접한 점들로 투영된다.If arbitrary points are subdivided into a mesh ( Subdivided mesh when not projected to any point on 4 points on the face of the ) Is projected to the nearest points on

이때, 가장 근접한 점들은 4 점들의 일치하는 점들이라고 가정하면 기준 메쉬() 상의 4개의 가장 근접한 점들과 이웃하는 영역에 있는 점의 집합()의임의의 점들은 세분화된 메쉬() 상의 4 점의 이웃 영역으로 재투영된다.In this case, assuming that the nearest points are coincident points of four points, the reference mesh ( The set of points in the neighboring area with the four nearest points on Any point is a refined mesh ( ) Is reprojected to the neighboring area of 4 points.

그리고, 세분화된 메쉬()가 거칠(coarse) 때 세분화된 메쉬()로부터 입력 메쉬를 상세하게 묘사할 수 없기 때문에 단순화된 입력 메쉬를 기준 메쉬()로 사용하는 다중 레벨 투영을 적용한다.And, a fine mesh Granular mesh () when coarse Since we cannot describe the input mesh in detail from Apply multilevel projection, used with.

즉, 거친 베이스 메쉬는 입력 메쉬를 단순화하는 것에 의해 생성되기 때문에 베이스 메쉬의 형태는 세밀한 입력 메쉬의 형태보다 단순화된 입력 메쉬의 형태에 가깝다.In other words, since the coarse base mesh is generated by simplifying the input mesh, the shape of the base mesh is closer to that of the simplified input mesh than the fine input mesh.

따라서, 단순화된 입력 메쉬로부터 베이스 메쉬로의 투영은 세밀한 입력 메쉬로부터 베이스 메쉬로의 투영보다 더 신뢰할 수 있다.Thus, the projection from the simplified input mesh to the base mesh is more reliable than the projection from the fine input mesh to the base mesh.

그런데, 입력 메쉬가 매우 복잡할 때 입력 메쉬 상의 점에 대해 세분화된 메쉬 상의 가장 근접한 점은 일치되는 점이 아닐 수 있다.However, when the input mesh is very complicated, the closest point on the subdivided mesh with respect to the point on the input mesh may not be coincident.

이 경우, 에너지 함수가 스프링 에너지 표현을 포함하더라도 전체적인 에너지 함수의 최소화는 불충분한 실행 즉, face flip, 불충분한 평탄화 및 큰 거리 에러를 야기시킬 수 있다. 즉, 잘못된 투영은 최적화된 메쉬가 나쁜 기하학적인 도형 특성 즉, face flip 과 나쁜 평탄화를 가지게 할 수 있다.In this case, even if the energy function includes a spring energy representation, minimizing the overall energy function can result in insufficient performance, namely face flip, insufficient planarization, and large distance error. In other words, the wrong projection can cause the optimized mesh to have bad geometric figure properties, namely face flip and bad planarization.

따라서, face flip을 방지하고 결과적으로 표면의 간결화(compactness)를 위하여 새로운 투영 방법을 사용하기로 한다.Therefore, we will use a new projection method to prevent face flipping and consequently the compactness of the surface.

일반적으로 메쉬는 경계선을 가질 수 있다.In general, a mesh may have a boundary line.

이러한 경계선을 잘 보존하는 것은 메쉬의 전체적인 모양을 보존하는데 매우중요한 요소이다.Preserving these boundaries is very important to preserve the overall shape of the mesh.

메쉬의 전체적인 모양을 보존하기 위해 F-to-F(Face to Face) 투영과 B-to-B(Boundary to Boundary) 투영을 각각 정의한다.To preserve the overall shape of the mesh, we define F-to-F (Face to Face) projections and B-to-B (Boundary to Boundary) projections, respectively.

먼저, F-to-F 투영은 기준 메쉬상의 표면에서 면적에 따라 일정하게 분포되는 점을 선택하고 그 선택된 점을 세분화된 메쉬의 표면 상으로 투영시키는 것이다.First, F-to-F projection is to select points that are uniformly distributed according to area on the surface on the reference mesh and project the selected points onto the surface of the subdivided mesh.

이때, 투영된 점이 임의의 정점에 가까울수록 그에 해당하는 무게중심 좌표 벡터에 비례해서 정점의 기울기(gradient)에 영향을 주게 된다.In this case, the closer the projected point is to a certain vertex, the more it affects the gradient of the vertex in proportion to the corresponding gravity center coordinate vector.

즉, 하나의 면 내로 투영되는 하나의 점이 면의 3 정점중 하나에 근접하게 될 때 정점에서 에너지 함수의 그레디언트(gradient)는 투영점에 의해 좌우된다.That is, the gradient of the energy function at a vertex is governed by the projection point when a point projected into one face approaches one of the three vertices of the face.

만일, 임의의 점이 하나의 면 상으로 투영되지 않을 경우 그레디언트는 면에 대한 정보를 포함하지 않고 있어 면은 간략화가 불충분하게 될 수 있고 면 주위이 영역도 평탄화가 불충분하게 될 수 있으므로 세분화된 메쉬 상의 임의의 점들을 선택하고 이를 기준 메쉬 상으로 투영하게 된다.If an arbitrary point is not projected onto one face, the gradient does not contain information about the face, so that the face may not be simplified, and the area around the face may also have insufficient planarization. Select the points of and project them onto the reference mesh.

F-to-F 투영은 시간이 오래 걸리는 작업이므로 공간 분할 방법을 이용하여 투영 시간을 단축한다.Since F-to-F projection is a time-consuming task, the projection time is reduced by using the spatial division method.

추가의 속도향상을 위해 각 단계마다의 결합의 긴밀성(coherence)을 이용할 수 있다. 즉, 임의의 레벨에서 투영은 이전 레벨에서의 투영 위치 근처로 수행된다는 점을 이용하면 수행시간을 크게 단축시킬 수 있다.Coherence of coupling at each step can be used for further speedup. That is, the use of the fact that projection at any level is performed near the projection position at the previous level can greatly shorten the execution time.

B-to-B 투영은 경계선 모양을 유지하기 위해 정의된 방법으로, 경계 에지들상의 모든 점들이 오직 다른 메쉬의 경계 에지들로 투영되므로 다른 메쉬의 형태에 가능한 더 가깝게 하나의 메쉬의 형태를 만드는 방법이다.B-to-B projection is a defined way to maintain the boundary shape, making all the points on the boundary edges project only to the boundary edges of the other mesh, making the shape of one mesh as close as possible to the shape of the other mesh. Way.

B-to-B 투영의 예는 도7에 도시하였다.An example of B-to-B projection is shown in FIG.

도7은 토끼 모델(bunny model)(920 faces)의 B-to-B 투영 예시도로서, 붉은 색 점은 원래의 메쉬상에 있는 경계선을 나타내고 검은색점은 투영된 점을 표시한다. 도8는 도7에서 타원부분을 확대 표시한 것이다.FIG. 7 is an exemplary B-to-B projection of a bunny model 920 faces, with red dots representing boundaries on the original mesh and black dots representing projected points. FIG. 8 is an enlarged view of an ellipse portion in FIG. 7.

즉, F-to-F 투영은 임의의 면에서 면으로의 투영이고 B-to-B 투영은 에지에서 에지로의 투영이라고 정의할 수 있다.In other words, F-to-F projection can be defined as projection from plane to plane and B-to-B projection from edge to edge projection.

그런데, 최적화된 메쉬의 형태는 어떤 점들이 투영되었는지에 따라 크게 좌우되는데 만일, 경계가 복잡한 형태일 경우 오직 face-to-face 투영만을 사용하는 변형은 경계의 복잡한 형태를 유지하기가 어렵다.However, the shape of the optimized mesh depends largely on which points are projected. If the boundary is a complicated shape, the deformation using only the face-to-face projection is difficult to maintain the complex shape of the boundary.

따라서, 본 발명의 실시예에서는 F-to-F 투영과 B-to-B 투영을 함께 수행하도록 구현하며 이때 B-to-B 투영이 F-to-F 투영보다 큰 가중치를 갖도록 한다.Therefore, in the embodiment of the present invention, the F-to-F projection and the B-to-B projection are implemented together, whereby the B-to-B projection has a greater weight than the F-to-F projection.

또한, 본 발명의 실시예에서 F-to-F 투영과 B-to-B 투영은 각각 따로 수행하도록 구현할 수 있다.Further, in the embodiment of the present invention, the F-to-F projection and the B-to-B projection may be implemented to be performed separately.

전체적인 에너지 함수에 있어서, B-to-B 투영은 F-to-F 투영보다 더 큰 가중치를 가지도록 한다.In terms of the overall energy function, the B-to-B projections have a greater weight than the F-to-F projections.

한편, 상기의 최적화 과정을 수학식을 이용하여 설명하면 다음과 같다.Meanwhile, the above-described optimization process will be described using mathematical equations.

전체적인 에너지 함수는 각 세분화 메쉬로부터 입력 메쉬로의 거리와, 스프링 에너지 함수의 2가지로 표현된다.The overall energy function is expressed in two ways: the distance from each subdivision mesh to the input mesh, and the spring energy function.

그리고, 유사 함수(similar function)는 비성형의 파인트(unorganized pints)로부터 최적화된 메쉬의 생성을 위해 사용된다.And a similar function is used for the generation of optimized meshes from unorganized pints.

상기 최적화 처리부(300)는 세분화된 메쉬를 원래의 형태에 최대한 가깝게 변형시키기 위하여 세분화된 메쉬() 의 정점 위치를 조정하는 것에 의해 두 메쉬간의 거리를 최소화하게 된다.The optimization processor 300 may be configured to refine the refined mesh to be as close as possible to its original shape. By adjusting the position of the vertices, the distance between the two meshes is minimized.

이를 위해 에너지 함수(energy function)을 아래의 [수학식 5]와 같이 정의하고 이 에너지 함수를 최소화하는 변형된 메쉬를 찾는다.To do this, define an energy function as shown in Equation 5 below, and find a deformed mesh that minimizes this energy function.

그리고, 두 메쉬사이의 거리 에너지(distance energy)를 측정하기 위해 임의의 메쉬상에서 다른 메쉬로 면적에 따라 일정하게 분포되는 투영(projection)을 이용하며 이때, 투영 속도를 향상시키기 위해 공간 분할 데이터 구조를 사용한다.In order to measure the distance energy between the two meshes, a projection which is uniformly distributed according to the area from one mesh to another mesh is used. In this case, a spatial segmentation data structure is used to improve the projection speed. use.

두 메쉬 사이에 거리 제곱의 합을 아래의 [수학식 6]과 같이 거리 에너지로 표현할 수 있다.The sum of the squared distances between the two meshes may be expressed as distance energy as shown in Equation 6 below.

상기 pl은 원래 메쉬상의 한점이고, 상기 pc는 다른 메쉬 상으로 투영되는 점이다.P 1 is a point on the original mesh and p c is the point projected onto another mesh.

이때, pc가 면(face) 상의 한점이라면 기준 메쉬() 상의 점() 에 대하여 세분화된 메쉬() 상의 가장 근접한 점()이 면() 상에 위치할 때 그 근접한 점()은 아래의 [수학식 7]과 같이 나타낼 수 있다.At this time, if p c is a point on the face, the reference mesh ( ) Points on Mesh refined to Nearest point on ) When you are on the ) Can be expressed as Equation 7 below.

상기 vi,vj,vk는 각각 면(face)의 세 정점을 나타내고, 상기,,는 무게중심 좌표 벡터(barycentric coordinate vector)를 나타낸다.V i , v j , and v k represent three vertices of a face, respectively, , , Denotes a barycentric coordinate vector.

여기서,,,는 '0'~'1'의 값으로이다.here, , , Is a value between '0' and '1' to be.

그런데, 입력 메쉬가 매우 복잡할 때 입력 메쉬 상의 점에 대해 세분화된 메쉬 상의 가장 근접한 점은 일치되는 점이 아닐 수 있다.However, when the input mesh is very complicated, the closest point on the subdivided mesh with respect to the point on the input mesh may not be coincident.

이 경우, 전체적인 에너지 함수의 최소화는 불충분한 실행 즉, face flip, 불충분한 평탄화 및 큰 거리 에러를 야기시킬 수 있다. 즉, 잘못된 투영은 최적화된 메쉬가 나쁜 기하학적인 도형 특성 즉, face flip 과 나쁜 평탄화를 가지게 할 수 있다.In this case, minimization of the overall energy function can lead to insufficient performance, namely face flip, insufficient planarization and large distance error. In other words, the wrong projection can cause the optimized mesh to have bad geometric figure properties, namely face flip and bad planarization.

따라서, face flip을 방지하고 결과적으로 표면의 간결화(compactness)를 위하여 스프링 에너지 함수를 사용한다.Thus, the spring energy function is used to prevent face flipping and consequently to the compactness of the surface.

에너지 함수가 최소값을 갖도록 하는 스프링 에너지 함수(spring energy function)는 아래의 [수학식 8]과 같이 정의한다.The spring energy function that makes the energy function have a minimum value is defined as in Equation 8 below.

상기,은 세분화된 메쉬() 상의 에지()의 두 끝 정점들이다.remind , Silver granular mesh ( On edge () Are the two end vertices of

이때, k값으로 에지 길이나 표면 영역 등을 고려할 수 있지만, 단순히 '1'로 해석하는 것은 계산량이 줄이고 좋은 결과를 얻을 수 있다.At this time, edge length, surface area, etc. can be considered as k value, but simply interpreting as '1' can reduce the amount of calculation and can obtain good results.

따라서, 상기 [수학식 8]을 최소화하면 각 정점을 이웃 정점들과 끌어 당기도록 만들어 메쉬는 전체적으로 평탄화와 소형화된다.Therefore, minimizing Equation 8 causes each vertex to be drawn with neighboring vertices, thereby making the mesh flat and miniaturized as a whole.

즉, 세분화된 메쉬()를 원래의 메쉬에 최대한 가깝게 변형시키기 위한 에너지 함수는 아래의 [수학식 9]와 같이 나타낼 수 있다.That is, a refined mesh ( ) Can be expressed as shown in Equation 9 below.

상기는 원래 메쉬상의 한점이고, 상기는 다른 메쉬 상에 대응되는 점이며, 상기는 각 세분화된 메쉬 상의 점()을 투영하기 위한 가중치 인자이고, 상기 λ은 사용자가 임의로 정할 수 있는 스프링 상수이다.remind Is a point on the original mesh, Is the point corresponding to the other mesh, and Is the point on each subdivided mesh ( ) Is a weighting factor for projecting), and λ is a spring constant that can be arbitrarily determined by the user.

또한, 본 발명의 실시예에 대한 동작을 도면을 참조하여 설명하기로 한다.In addition, the operation of the embodiment of the present invention will be described with reference to the drawings.

우선, 본 발명의 전체적인 과정을 도6의 예시도를 참조하여 설명하면, 좌측 컬럼의 하단부터 우측 컬럼의 상단까지 시계 방향으로 표시된 메쉬가 단순화 처리부(100)에서 순차적으로 만들어 지는 메쉬이고 우측 컬럼의 상단부터 그 우측 컬럼의 하단까지 표시된 메쉬가 세분화 처리부(200)에 의해 만들어지는 메쉬이며 각 행의 좌,우측 컬럼간의 투영 과정이 최적화 처리부(300)에서 이루어진다.First, the overall process of the present invention will be described with reference to the exemplary diagram of FIG. 6. The meshes displayed in the clockwise direction from the bottom of the left column to the top of the right column are meshes that are sequentially created in the simplified processing unit 100 and the right column. The mesh displayed from the upper end to the lower end of the right column is a mesh made by the segmentation processing unit 200 and the projection process between the left and right columns of each row is performed by the optimization processing unit 300.

그리고, 본 발명의 실시예에서의 효용성을 입증하기 위해 다양한 모델에 대해 리메슁 과정 및 결과를 도9 및 도10을 참조하여 설명하기로 한다.And, in order to prove the effectiveness in the embodiment of the present invention will be described with reference to Figure 9 and Figure 10 for the remodeling process and results for various models.

도9는 마네킹을 모델로 하여 리메슁 과정과 결과를 도시한 것으로, 도9(a)는 원래의 메쉬(orginal mesh) M(25327 faces), 도9(b)는 Base mesh (4faces), 도9(c)는 Remesh MJ(J=1;16faces), 도9(d)는 Remesh MJ(J=2;64faces), 도9(e)는 Remesh MJ(J=3; 256faces), 도9(f)는 Remesh MJ(J=4; 1024faces), 도9(g)는 Remesh MJ(J=8; 262144faces)이다.FIG. 9 illustrates the remeshing process and results using a mannequin as a model. FIG. 9 (a) shows an original mesh M (25327 faces), FIG. 9 (b) shows a base mesh (4faces), and FIG. 9 (c) is Remesh M J (J = 1; 16 faces), FIG. 9 (d) is Remesh M J (J = 2; 64 faces), FIG. 9 (e) is Remesh M J (J = 3; 256 faces), Fig. 9 (f) shows Remesh M J (J = 4; 1024 faces), and Fig. 9 (g) shows Remesh M J (J = 8; 262144faces).

먼저, 리메슁을 하기 위해 도9(a)의 원래의 메쉬를 단순화 시켜 도9(b)의 베이스 도메인을 만든다.First, the base domain of FIG. 9 (b) is made by simplifying the original mesh of FIG.

이 후, 도9(b)의 베이스 도메인 메쉬를 세분화한 후 ICP 알고리즘을 이용해 도9(c)와 같이 원래의 메쉬에 최대한 가깝게 변형시킨다.Subsequently, the base domain mesh of FIG. 9 (b) is subdivided and then transformed as close as possible to the original mesh as shown in FIG. 9 (c) using an ICP algorithm.

이 후, 주어진 조건(Hausdorff distance)을 만족할 때까지 세분화와 변형을 반복하여 순차적으로 도9(d)~도9(f)와 같은 베이스 메쉬로 순차적으로 변형시킨다.Subsequently, the segmentation and deformation are repeated until the given condition (Hausdorff distance) is satisfied, and the strain is sequentially transformed into the base mesh as shown in FIGS. 9 (d) to 9 (f).

따라서, 상기 과정을 반복함에 의해 최종적으로 도9(g)와 같은 리메슁 결과를 얻을 수 있다. 도9(g)는 Hausdorff distance를 5x10-4로 정했을 때 GORA(ICP) 방법을 8번 적용한 결과를 도시한 것이다.Thus, by repeating the above process, it is possible to finally obtain a remeasurement result as shown in FIG. 9 (g). 9 (g) shows the result of applying the GORA (ICP) method eight times when the Hausdorff distance is set to 5 × 10 −4 .

그리고, 도10은 말(horse)을 모델로 한 리메슁 과정과 그 결과를 나타낸 것으로, 도10(a)는 orginal mesh M(96966 faces), 도10(b)는 base mesh (200 faces), 도10(c)는 Remesh MJ(J=2; 3200faces), 도10(d)는 Remesh MJ(J=3; 12800faces), 도10(e)는 Remesh MJ(J=2; 3200faces)이다.And, Figure 10 shows a remodeling process based on the horse (horse) and the results, Figure 10 (a) is an orginal mesh M (96966 faces), Figure 10 (b) is a base mesh (200 faces), Fig. 10 (c) shows Remesh M J (J = 2; 3200 faces), Fig. 10 (d) shows Remesh M J (J = 3; 12800 faces), and Fig. 10 (e) shows Remesh M J (J = 2; 3200 faces). to be.

또한, 본 발명의 결과를 기존의 방법과 비교하였다.In addition, the results of the present invention were compared with existing methods.

도11은 토끼(Bunny)를 모델로 하여 각각의 방법(MAPS, shrink wrapping, GORA)을 이용한 리메슁 결과를 나타낸 도면으로, 도11(a)는 original bunny model, 도11(b)는 using MAPS, 도11(c)는 using shrink wrapping, 도11(d)는 using GORA이다.FIG. 11 is a diagram illustrating remeasurement results using each method (MAPS, shrink wrapping, GORA) using a rabbit as a model. FIG. 11 (a) is an original bunny model and FIG. 11 (b) is a using MAPS. 11 (c) is using shrink wrapping, and FIG. 11 (d) is using GORA.

따라서, 본 발명의 실시예의 결과를 기존에 제안된 매개 변수를 이용한 리메슁(MAPS)의 결과와 비교하면 메쉬 전 부분에 걸쳐 평탄화(smooth)되었음을 확인할 수 있다.Therefore, when comparing the results of the embodiment of the present invention with the results of remechanization (MAPS) using the previously proposed parameters, it can be confirmed that the smoothing (smooth) over the entire portion of the mesh.

일반적으로 리메슁된 메쉬의 품질을 측정하기란 매우 어렵다. 이것은 절대적인 기준이 있는 것이 아니라 주어진 상황에 따라 기준이 달라질 수 있기 때문이다.In general, it is very difficult to measure the quality of a remeshed mesh. This is not because there is an absolute standard, but because the criteria may vary depending on the given situation.

일반적으로 많이 쓰이고 있는 메쉬의 질을 측정하기 위한 기준으로 다음과 같은 것들이 있다.In general, the following are the criteria for measuring the quality of a commonly used mesh.

첫째, 가장 중요한 요소는 원래 물체의 모양을 최대한 유지하는 것이다. 즉, 리메슁된 메쉬는 원래 메쉬의 모양과 최대한 비슷해야 한다.First, the most important factor is to maintain the shape of the original object as much as possible. In other words, the remeshed mesh should be as close as possible to the shape of the original mesh.

여기에는 경계선(boundary) 모양의 유지도 함께 포함된다.This includes maintaining a boundary shape.

이를 위해 보통 Hausdorff distance나 평균 제곱거리 에러(average squareddistance error)를 많이 이용한다.For this purpose, Hausdorff distance or average squared distance error is usually used.

둘째, 메쉬의 모양이 비슷하다면 정점의 숫자가 적을수록 좋다. 이것은 데이터의 저장이나 랜더링등, 기타 처리시간이 감소함을 의미하기 때문이다.Second, if the mesh looks similar, fewer vertices are better. This means that other processing time, such as data storage and rendering, is reduced.

셋째, 일반적인 메쉬에서 정점들간의 거리가 정규적(regular)일수록 좋다고 할 수 있는데, 이것은 메쉬의 전체적인 해상도가 증가함을 의미한다.Third, the more regular the distance between vertices in a general mesh, the better, which means that the overall resolution of the mesh increases.

따라서, 본 발명에서 리메슁된 메쉬의 품질을 알아 보기 위해 Hausdorff distance, 평균 제곱거리 에러, 트라이앵글 콤팩트니스, 메쉬 해상도, 에지 길이 스프레드를 측정하여 비교하였다.Therefore, in order to determine the quality of the mesh remeshed in the present invention, Hausdorff distance, mean square distance error, triangle compactness, mesh resolution, edge length spread were measured and compared.

그 비교 결과는 도12~도17에 도시하였다.The comparison result is shown in FIGS. 12-17.

본 발명의 리메슁 결과를 Lee와 Kobelt가 제안한 방법의 결과와 비교해보면 다음과 같다.The results of the remeeting of the present invention are compared with those of the method proposed by Lee and Kobelt.

먼저, 도12는 QEM 결과와 GORA 방법을 적용한 베이스 도메인의 평균 제곱 거리 에러를 비교한 표로서, GORA 방법을 적용하였을 때 에러가 작음을 알 수 있다. 이때, 모든 메쉬에 대해 크기에 상관없이 일정한 처리를 위해 단일 입방체(unit cube)에 맞게 변환한 후 단순화 및 리메슁을 적용하였다.First, FIG. 12 is a table comparing the QEM result and the mean square distance error of the base domain to which the GORA method is applied. It can be seen that the error is small when the GORA method is applied. At this time, all meshes were converted into unit cubes for uniform processing regardless of size, and then simplified and remechanized were applied.

그리고, 리메슁의 정확도를 비교하기 위해 원래의 메쉬와 리메슁된 메쉬 사이의 거리 에러를 측정하고, 그 결과를 도13의 도표에 도시하였다.And, in order to compare the accuracy of the remeshing, the distance error between the original mesh and the remeshed mesh was measured, and the result is shown in the diagram of FIG.

도13의 도표에 도시한 바와 같이, 본 발명의 방법(GORA)에 따른 결과가 Hausdorff 거리(Hausdorff distance)와 평균 제곱 거리(Average squared distance)에서 모두 작음을 알 수 있다. 즉, 본 발명에서 제안한 리메슁 방법이 MAPS의 방법보다 원래의 모양을 잘 유지한다고 말할 수 있다.As shown in the diagram of FIG. 13, it can be seen that the results according to the method GORA of the present invention are both small at the Hausdorff distance and the average squared distance. In other words, it can be said that the remeshing method proposed in the present invention maintains the original shape better than the method of MAPS.

여기서, Kobelt의 리메슁결과는 위상(topology)이 원래의 모델과 다르기 때문에 거리 에러 비교에서는 제외시켰다.Here, Kobelt's remeasurement results are excluded from the distance error comparison because the topology is different from the original model.

다음으로 리메슁된 토끼 모델의 정규적 품질(regularity quality)를 측정하기 위해 모든 페이스들에 대해 콤팩트니스의 평균과 분산을 비교하였다. 이 결과는 도14의 표 및 도16의 예시도에 도시한 바와 같다.Next, the mean and variance of the compactness were compared for all faces in order to measure the regularity quality of the remodeled rabbit model. This result is as shown in the table of FIG. 14 and the exemplary view of FIG.

도16은 본 발명과 기존 방법에 따른 콤팩트니스의 히스토그램을 도시한 것이다.Figure 16 shows a histogram of compactness in accordance with the present invention and the existing method.

따라서, 본 발명에서 제안한 GORA 방법이 전체적인 콤팩트니스가 가장 높게 나옴을 알 수 있다. 이는 각 페이스의 정규적 품질이 다른 방법에 비해 좋음을 의미하는 것이다.Therefore, it can be seen that the overall compactness of the GORA method proposed in the present invention is the highest. This means that the regular quality of each face is better than the other methods.

마지막으로 리메슁된 토끼 모델의 메쉬 해상도(resolution)와 에지 길이 스프레드(edge length spread)를 측정하였다. 이 결과는 도15에 도시한 바와 같다.Finally, the mesh resolution and edge length spread of the remeshed rabbit model were measured. This result is as shown in FIG.

여기서, Shrink Wrapping 방법의 결과 메쉬는 페이스 숫자가 달라 절대적인 비교를 할 수 없지만, MAPS 방법과 비교하면 본 발명에서 제안한 방법의 결과가 도15의 표와 도17의 히스토그램에 도시된 바와 같이 해상도가 높고 에지 길이 폭(sprea)이 좁다는 것을 알 수 있다.Here, the resultant mesh of the Shrink Wrapping method cannot be compared with each other due to different face numbers, but compared with the MAPS method, the result of the proposed method has high resolution as shown in the table of FIG. 15 and the histogram of FIG. It can be seen that the edge length width is narrow.

도 17은 에지 길이 히스토그램(edge length histogram)을 나타낸 것이다.17 shows an edge length histogram.

상기에서 상세히 설명한 바와 같이 본 발명은 원래의 메쉬를 단순화 시켜 베이스 도메인을 얻고 이 베이스 도메인을 세분화한 후 원래의 메쉬에 최대한 가깝게 변형시키도록 함으로써 기존에 제시된 방법보다 투영 에러를 작아지도록 하는 효과가 있다.As described in detail above, the present invention has the effect of reducing the projection error than the conventional method by simplifying the original mesh to obtain the base domain, and then subdividing the base domain to make it as close as possible to the original mesh. .

즉, 본 발명은 거리 에러(distance error)가 작아 원래 메쉬의 모양을 잘 보존하며 메쉬 해상도가 기존의 방법에 비해 높으로 전체적인 메쉬의 정규적 품질이 향상시킬 수 있는 효과가 있다.That is, the present invention preserves the shape of the original mesh well because the distance error is small and the mesh resolution is higher than that of the conventional method, thereby improving the regular quality of the overall mesh.

이와같은 본 발명은 웨이블렛(wavelets)을 이용한 메쉬 압축이나 다른 다중해상도 표현(multiresolution representation) 등에 효과적으로 적용할 수 있다.The present invention can be effectively applied to mesh compression using wavelets or other multiresolution representations.

Claims (25)

원래의 메쉬를 단순화시키는 과정과, 상기 단순화 과정에서 단순화된 메쉬를 세분화(subdivision)하여 리파인(refine)시키는 세분화 과정과, 상기에서 세분화된 메쉬를 최적화하여 원래 메쉬의 모양으로 변형(deformation)시키는 최적화 과정과, 상기에서 원래 메쉬의 형태로 변형된 메쉬가 미리 설정된 조건을 만족할 때까지 상기 세분화 과정부터 반복 실행하는 과정으로 이루어짐을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.A process of simplifying the original mesh, a process of subdivisioning and refining the simplified mesh in the process of simplification, and an optimization of optimizing the subdivided mesh to the shape of the original mesh And repeating the subdividing process until the mesh deformed in the form of the original mesh satisfies a predetermined condition. 제1항에 있어서, 미리 설정된 조건은 Hausdorff distance임을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.The method of claim 1, wherein the preset condition is a Hausdorff distance. 제 1항에 있어서, 단순화 과정은 모든 정점의 위치를 계산하는 단계와, 모든 정점에 대해 유효쌍을 선택하는 단계와, 상기에서 선택된 유효쌍에 대해 새로운 정점(vertex)의 위치를 계산하는 단계와, 상기에서 계산된 위치에 해당 유효쌍을 힙(heap)에 정렬시켜 에지를 감축시키는 단계를 반복 수행하는 QEM(Quadric Error Matrix)을 이용한 반복적인 에지 축소 과정을 적용하는 것을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.The method of claim 1, wherein the simplification process includes calculating positions of all vertices, selecting valid pairs for all vertices, calculating positions of new vertices for the selected valid pairs, and 3D polygon, characterized in that iterative edge reduction process using a QEM (Quadric Error Matrix) that repeats the step of reducing the edge by aligning the effective pair in the heap at the calculated position How to optimize remeshing of surfaces. 제1항에 있어서, 상기 원래 메쉬의 모양에 최대한 가깝게 변형시키는 과정은두 메쉬 사이의 거리들을 최소화하기 위해 원래의 메쉬에서 변형될 메쉬로 일정하게 분포되는 투영(projection)을 정의하고, 정의된 프로젝션 정보를 이용하여 에너지 함수(energy function)을 최소화하는 정점(vertex)의 위치를 반복적으로 구하여, 정의된 프로젝션 거리를 최소화시키는 메쉬의 변형을 찾는 과정의 수순을 포함하는 ICP 알고리즘을 이용하는 것을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.The method of claim 1, wherein the process of deforming as close as possible to the shape of the original mesh defines a projection that is uniformly distributed from the original mesh to the mesh to be deformed to minimize the distances between the two meshes and defines a defined projection. Iteratively using the information to find the position of the vertices (vertex) to minimize the function, characterized in that using the ICP algorithm including the procedure of finding the deformation of the mesh to minimize the defined projection distance How to optimize remeshing three-dimensional polygonal surfaces. 제1항에 있어서, 세분화 과정은 세분화된 연결성(subdivision connectivity)을 갖도록 중간점에 대하여 베이스 메쉬를 세분화하는 단계와, 이 세분화된 메쉬를 평탄화하는 단계로 이루어짐을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.2. The method of claim 1, wherein the segmentation process comprises subdividing the base mesh with respect to the midpoint to have subdivision connectivity and flattening the subdivision mesh. Mesh optimization method. 제5항에 있어서, 평탄화 단계는 표면 유선화 방법을 적용하는 것을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.6. The method of claim 5, wherein the planarization step applies a surface streamlining method. 제5항 또는 제6항에 있어서, 평탄화 단계는 모든 정점에 대해 이웃하는 정점들로부터 오차를 계산하는 제1 단계와, 각 정점에 대해 오차의 임의의 배수값만큼을 합하는 제2 단계와, 상기 오차값에 임의의 상수값을 곱하여 각 정점에 더하는 제3 단계로 이루어짐을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.7. The method of claim 5 or 6, wherein the planarization step comprises a first step of calculating an error from neighboring vertices for all vertices, a second step of summing up any multiple of the error for each vertex, and And a third step of multiplying the error value by an arbitrary constant value and adding it to each vertex. 제1항에 있어서, 최적화 과정은 원래의 메쉬에서 변형될 메쉬로 일정하게 분포되는 점으로의 투영(projection)을 정의하는 제1 단계와, 상기에서의 투영 정보를 이용하여 에너지 함수(energy function)을 최소화하는 정점(vertex)의 위치를 반복적으로 구하는 제2 단계와, 상기에서 구한 정점의 위치를 참조하여 두 메쉬간의 거리를 최소화하는 제3 단계로 이루어짐을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.The method of claim 1, wherein the optimization process comprises a first step of defining a projection from the original mesh to a point that is uniformly distributed from the mesh to be deformed, and using the projection information above to produce an energy function. A second step of recursively obtaining positions of vertices to minimize the number of vertices; and a third step of minimizing the distance between two meshes by referring to the positions of the vertices obtained above. Optimization method. 제8항에 있어서, 제1 단계의 투영은 기준 메쉬 상에 동일하게 분포된 점을 선택하고 세분화된 메쉬 상의 점을 투영하는 Face-to-Face 투영임을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.10. The method of claim 8, wherein the first step of projection is a face-to-face projection that selects points distributed equally on the reference mesh and projects the points on the subdivided mesh. Way. 제8항에 있어서, 제1 단계의 투영은 기준 메쉬 상에 동일하게 분포된 점을 선택하고 세분화된 메쉬 상의 점을 투영하는 Face-to-Face 투영과, 경계 에지 상의 모든 점들을 다른 메쉬 상의 경계 에지로 투영하는 B-to-B 투영을 함께 사용하는 것을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.10. The method of claim 8, wherein the first step of projection comprises a Face-to-Face projection that selects points distributed equally on the reference mesh and projects the points on the subdivided mesh, and a boundary on all other points on the boundary edge. A method of remeshing 3D polygonal surfaces characterized by using a B-to-B projection projected to an edge. 제10항에 있어서, B-to-B 투영의 가중치를 F-to-F 투영의 가중치보다 높게 설정하는 것을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.11. The method of claim 10, wherein the weight of the B-to-B projection is set higher than the weight of the F-to-F projection. 제9항 또는 제10항에 있어서, F-to-F 투영의 속도를 향상시키도록 공간 분할데이터 구조를 사용하는 것을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.11. The method of claim 9 or 10, wherein the spatial segmentation data structure is used to improve the speed of the F-to-F projection. 제8항에 있어서, 제2 단계는 원래 메쉬의 형태 및 경계(boundary), 단순화된 메쉬를 최적화하도록 ICP(Iterated Closest Point) 방법을 베이스 영역에 우선 적용하는 것을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.9. The method of claim 8, wherein the second step first applies an Iterated Closest Point (ICP) method to the base area to optimize the shape, boundary, and simplified mesh of the original mesh. Mesh optimization method. 제8항에 있어서, 제3 단계는 아래의 수학식과 같이 거리 에너지와 스프링 에너지 함수의 합으로 표현된 에너지 함수를 최소화하는 것을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.9. The method of claim 8, wherein the third step minimizes an energy function expressed as a sum of distance energy and spring energy function as in the following equation. 제14항에 있어서, 거리 에너지는 아래의 수학식과 같이 두 메쉬 사이의 거리의 제곱의 합으로 표현되는 것을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.15. The method of claim 14, wherein the distance energy is expressed as the sum of the squares of the distances between the two meshes, as shown below. 상기 pl은 원래 메쉬상의 한점이고, 상기 pc는 다른 메쉬 상으로 투영되는 점이다.P 1 is a point on the original mesh and p c is the point projected onto another mesh. 제14항에 있어서, 스프링 에너지 함수(spring energy function)는 아래의 수학식과 같이 정의하여 에너지 함수가 최소값을 갖도록 함을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.15. The method of claim 14, wherein the spring energy function is defined as in the following equation so that the energy function has a minimum value. 상기,은 세분화된 메쉬() 상의 에지()의 두 끝 정점들이다.remind , Silver granular mesh ( On edge () Are the two end vertices of 제16항에 있어서, k값은 '1'로 설정함을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.17. The method of claim 16, wherein the value of k is set to '1'. 제14항에 있어서, 에너지 함수는 기준 메쉬() 상의 점() 에 대하여 세분화된 메쉬() 상의 가장 근접한 점()이 면() 상에 위치한다고 가정하여 아래의 수학식과 같이 변형하는 것을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.The method of claim 14 wherein the energy function is a reference mesh ( ) Points on Mesh refined to Nearest point on ) A method of remeshing a 3D polygonal surface, characterized in that it is deformed as follows. 상기는 원래 메쉬상의 한점이고, 상기는 다른 메쉬 상에 대응되는 점이며, 상기는 각 세분화된 메쉬 상의 점()을 투영하기 위한 가중치 인자이고, 상기 λ은 사용자가 임의로 정할 수 있는 스프링 상수이다.remind Is a point on the original mesh, Is the point corresponding to the other mesh, and Is the point on each subdivided mesh ( ) Is a weighting factor for projecting), and λ is a spring constant that can be arbitrarily determined by the user. 여기서,로서, 상기 vi,vj,vk는 각각 면(face)의 세 정점을 나타내고, 상기,,는 무게중심 좌표 벡터(barycentric coordinate vector)를 나타낸다.here, Where v i , v j , v k represent the three vertices of the face, respectively, , , Denotes a barycentric coordinate vector. 제18항에 있어서, 무게중심 좌표 벡터(,,)는 '0'~'1'의 값으로을 만족하는 것을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 방법.19. The method of claim 18 wherein the center of gravity coordinate vector ( , , ) Is a value between '0' and '1' Remethod optimization method of a three-dimensional polygonal surface, characterized in that satisfying the. 입력 메쉬의 형태를 단순화하는 단순화 처리 수단과, 단순화된 베이스 메쉬를 세분화하여 평탄화 처리하는 세분화 처리 수단과, 상기 단순화 처리 수단에서의 베이스 메쉬로부터 상기 세분화 처리 수단에서의 세분화된 메쉬() 상으로의 투영을 실행하여 상기 세분화된 메쉬의 정점 위치를 조정함에 의해 두 메쉬간의 거리를 최소화하는 최적화 처리 수단과, 원래 메쉬 및 상기 단순화 처리 수단에서 순차적으로 단순화 처리된 베이스 메쉬를 기준 메쉬()로 하여 상기 최적화 처리 수단으로 입력시키는 기준 메쉬 입력 수단을 구비하여 구성함을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 장치.Simplified processing means for simplifying the shape of the input mesh, subdividing processing means for subdividing and flattening the simplified base mesh, and a subdivided mesh in the subdividing processing means from the base mesh in the simplified processing means ( Optimization processing means for minimizing the distance between the two meshes by performing projection onto the refined mesh and adjusting the vertex positions of the subdivided mesh, and a base mesh sequentially processed by the original mesh and the simplified processing means. And a reference mesh input means for inputting the input to the optimization processing means. 제20항에 있어서, 단순화 처리 수단은 원래의 메쉬를 1차 단순화 처리하여 기준메쉬 입력 수단으로 입력시키는 제1 단순화 회로와, 이 제1 단순화 회로에서의 메쉬를 2차 단순화 처리하여 상기 기준메쉬 입력 수단으로 입력시키는 제2 단순화회로와, 이 제2 단순화 회로에서의 메쉬를 3차 단순화 처리하여 최적화 처리 수단으로 입력시키는 제3 단순화 회로를 구비하여 구성함을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 장치.21. The method of claim 20, wherein the simplification processing means comprises: a first simplification circuit for firstly simplifying the original mesh and inputting the reference mesh to the reference mesh input means, and secondly simplifying the mesh in the first simplification circuit to input the reference mesh. A second simplification circuit for inputting by means, and a third simplification circuit for inputting the mesh in the second simplification circuit to the optimization processing means by third order simplification. Optimization device. 제20항에 있어서, 세분화 처리 수단은 최적화 처리 수단에서 출력되는 성긴 베이스 메쉬(coarse base mesh)를 입력으로 중간점에 대하여 세분화하는 중간점 세분화 회로와, 상기 세분화된 메쉬를 평탄화하여 상기 최적화 처리 수단으로 입력시키는 평탄화 필터를 구비하여 구성함을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 장치.21. The method according to claim 20, wherein the refinement processing means comprises: a midpoint refinement circuit for subdividing a coarse base mesh output from the optimization processing means with respect to an intermediate point, and the optimized meshing means by flattening the fine mesh. And a flattening filter to be inputted to the three-dimensional polygonal surface remodeling optimization device. 제22항에 있어서, 평탄화 필터는 메쉬 유선화 필터로 구성함을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 장치.23. The apparatus of claim 22, wherein the flattening filter comprises a mesh streamlined filter. 제20항에 있어서, 최적화 처리 수단은 기준 메쉬() 상의 점() 에 대하여 세분화된 메쉬() 상의 가장 근접한 점()이 면() 상에 위치한다고 가정할 때 아래의 수학식과 같은 에너지 함수를 최소화하도록 구성함을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 장치.The method of claim 20, wherein the optimization processing means comprises a reference mesh ( ) Points on Mesh refined to Nearest point on ) And a minimizing energy function as shown in the following equation. 상기는 원래 메쉬상의 한점이고, 상기는 다른 메쉬 상에 대응되는 점이며, 상기는 각 세분화된 메쉬 상의 점()을 투영하기 위한 가중치 인자이고, 상기 λ은 사용자가 임의로 정할 수 있는 스프링 상수이다.remind Is a point on the original mesh, Is the point corresponding to the other mesh, and Is the point on each subdivided mesh ( ) Is a weighting factor for projecting), and λ is a spring constant that can be arbitrarily determined by the user. 여기서,로서, 상기 vi,vj,vk는 각각 면(face)의 세 정점을 나타내고, 상기,,는 무게중심 좌표 벡터(barycentric coordinate vector)를 나타낸다.here, Where v i , v j , v k represent the three vertices of the face, respectively, , , Denotes a barycentric coordinate vector. 제24항에 있어서, 무게중심 좌표 벡터(,,)는 '0'~'1'의 값으로임을 특징으로 하는 3차원 다각형 표면의 리메슁 최적화 장치.The method of claim 24, wherein the center of gravity coordinate vector ( , , ) Is a value between '0' and '1' Remeshing optimization device for a three-dimensional polygonal surface characterized in that.
KR10-2001-0050054A 2001-08-20 2001-08-20 Remeshing optimizing method and apparatus for polyhedral surface KR100414058B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0050054A KR100414058B1 (en) 2001-08-20 2001-08-20 Remeshing optimizing method and apparatus for polyhedral surface

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0050054A KR100414058B1 (en) 2001-08-20 2001-08-20 Remeshing optimizing method and apparatus for polyhedral surface

Publications (2)

Publication Number Publication Date
KR20030016477A true KR20030016477A (en) 2003-03-03
KR100414058B1 KR100414058B1 (en) 2004-01-07

Family

ID=27719860

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0050054A KR100414058B1 (en) 2001-08-20 2001-08-20 Remeshing optimizing method and apparatus for polyhedral surface

Country Status (1)

Country Link
KR (1) KR100414058B1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100551132B1 (en) * 2003-07-28 2006-02-13 학교법인연세대학교 method for filtering of triangle strip in rendering system of view-dependency Level Of Detail based
KR100695156B1 (en) * 2005-02-03 2007-03-14 삼성전자주식회사 Method for converting graphics image of objects and apparatus therefor
KR101067826B1 (en) * 2009-10-27 2011-09-27 이화여자대학교 산학협력단 Method for computation of Hausdorff distance for polygonal models
CN104123696A (en) * 2014-07-07 2014-10-29 北京理工大学 Focus and context visualization method based on multiresolution
US9749609B2 (en) 2011-03-17 2017-08-29 Samsung Electronics Co., Ltd. Method and apparatus for encoding a 3D mesh
KR101942370B1 (en) * 2017-10-19 2019-01-25 인천대학교 산학협력단 Graphic processing apparatus and method for supporting enhancement of mesh quality based on movement order assignment of free vertices
KR101944932B1 (en) * 2017-08-03 2019-02-01 인천대학교 산학협력단 Graphic processing apparatus and method for improving mesh quality
CN117593485A (en) * 2024-01-16 2024-02-23 山东大学 Three-dimensional model simplifying method and system based on Haoskov distance perception

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2589026B1 (en) * 2010-06-30 2018-05-30 Thomson Licensing Method and apparatus for detecting repetitive structures in 3d mesh models

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995006291A1 (en) * 1993-08-27 1995-03-02 Apple Computer, Inc. System and method for generating smooth low degree polynomial spline surfaces over irregular meshes
US5963209A (en) * 1996-01-11 1999-10-05 Microsoft Corporation Encoding and progressive transmission of progressive meshes
US6285372B1 (en) * 1998-05-08 2001-09-04 Lawrence C. Cowsar Multiresolution adaptive parameterization of surfaces
JP2000113210A (en) * 1998-10-02 2000-04-21 Nippon Telegr & Teleph Corp <Ntt> Method for simplifying three-dimensional geometrical data, and recording medium recorded with program therefor

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100551132B1 (en) * 2003-07-28 2006-02-13 학교법인연세대학교 method for filtering of triangle strip in rendering system of view-dependency Level Of Detail based
KR100695156B1 (en) * 2005-02-03 2007-03-14 삼성전자주식회사 Method for converting graphics image of objects and apparatus therefor
KR101067826B1 (en) * 2009-10-27 2011-09-27 이화여자대학교 산학협력단 Method for computation of Hausdorff distance for polygonal models
US9749609B2 (en) 2011-03-17 2017-08-29 Samsung Electronics Co., Ltd. Method and apparatus for encoding a 3D mesh
CN104123696A (en) * 2014-07-07 2014-10-29 北京理工大学 Focus and context visualization method based on multiresolution
KR101944932B1 (en) * 2017-08-03 2019-02-01 인천대학교 산학협력단 Graphic processing apparatus and method for improving mesh quality
KR101942370B1 (en) * 2017-10-19 2019-01-25 인천대학교 산학협력단 Graphic processing apparatus and method for supporting enhancement of mesh quality based on movement order assignment of free vertices
CN117593485A (en) * 2024-01-16 2024-02-23 山东大学 Three-dimensional model simplifying method and system based on Haoskov distance perception

Also Published As

Publication number Publication date
KR100414058B1 (en) 2004-01-07

Similar Documents

Publication Publication Date Title
Bischoff et al. Automatic restoration of polygon models
Pauly Point primitives for interactive modeling and processing of 3D geometry
Sander et al. Signal-specialized parameterization
Soler et al. Hierarchical pattern mapping
US6483518B1 (en) Representing a color gamut with a hierarchical distance field
EP1074946B1 (en) Detail-directed hierarchical distance fields for object modelling
Cohen-Steiner et al. Variational shape approximation
US6603484B1 (en) Sculpting objects using detail-directed hierarchical distance fields
US7425954B2 (en) Systems and methods for providing signal-specialized parametrization
US7310097B2 (en) Method, apparatus and computer program product enabling a dynamic global parameterization of triangle meshes over polygonal domain meshes
US20030020710A1 (en) Method and apparatus for providing sharp features on multiresolution subdivision surfaces
US6603473B1 (en) Detail data pertaining to the shape of an object surface and related methods and systems
KR20050086463A (en) System and method for performing domain decomposition for multiresolution surface analysis
US7257250B2 (en) System, method, and program product for extracting a multiresolution quadrilateral-based subdivision surface representation from an arbitrary two-manifold polygon mesh
Park et al. Constructing NURBS surface model from scattered and unorganized range data
KR100414058B1 (en) Remeshing optimizing method and apparatus for polyhedral surface
US7023435B1 (en) Object surface representation and related methods and systems
Hormann et al. Quadrilateral Remeshing.
Pfeifer A subdivision algorithm for smooth 3D terrain models
WO2002080110A1 (en) Image processing method for fitness estimation of a 3d mesh model mapped onto a 3d surface of an object
US20010030646A1 (en) System and method for multi-resolution fairing of non-manifold models
Söderkvist Introductory overview of surface reconstruction methods
Lee Automatic metric 3D surface mesh generation using subdivision surface geometrical model. Part 1: Construction of underlying geometrical model
Knopf et al. Interpolating scattered data using 2D self-organizing feature maps
Lin et al. Consistent parametrization by quinary subdivision for remeshing and mesh metamorphosis

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20080926

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee