KR101551741B1 - Method for Configuring Vertex of Three-dimensional Object Model - Google Patents
Method for Configuring Vertex of Three-dimensional Object Model Download PDFInfo
- Publication number
- KR101551741B1 KR101551741B1 KR1020150049009A KR20150049009A KR101551741B1 KR 101551741 B1 KR101551741 B1 KR 101551741B1 KR 1020150049009 A KR1020150049009 A KR 1020150049009A KR 20150049009 A KR20150049009 A KR 20150049009A KR 101551741 B1 KR101551741 B1 KR 101551741B1
- Authority
- KR
- South Korea
- Prior art keywords
- vertex
- vertices
- information
- index information
- dimensional
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Abstract
Description
본 발명은 3차원 객체 모델의 정점 구성 방법에 관한 것으로, 보다 상세하게는 3차원 객체 데이터의 저작시 중복되는 정점을 최소화한 정점-색인 정보를 이용하여 실시간 처리해야할 데이터를 경량화할 수 있는 3차원 객체 모델의 정점 구성 방법에 관한 것이다.The present invention relates to a method of constructing a vertex of a three-dimensional object model, and more particularly, to a method of constructing a vertex of a three-dimensional object model by using vertex-index information minimizing overlapping vertices when authoring three- And to a method for constructing a vertex of an object model.
대부분의 차량용 및 휴대용 내비게이션 장치는 2차원의 내비게이션 지도에 의존하여 건물 등의 주요 지형지물을 2D로 시각화하지만, 3차원의 차량용 내비게이션 시스템이 출현하고 있다. 이러한 3D 내비게이션 시스템의 대부분은 3차원의 건물 데이터를 시각화하는데 사실적(photorealistic) 렌더링 기술을 사용한다. Most car and portable navigation devices rely on a two-dimensional navigation map to visualize key features, such as buildings, in 2D, but a three-dimensional vehicle navigation system is emerging. Most of these 3D navigation systems use photorealistic rendering techniques to visualize 3D building data.
이러한 사실적 렌더링에 기반한 시각화 기법에서는 정확한 기하학적 모델 및 상세한 사실적 건물 텍스쳐(texture)를 필요로 하고, 렌더링된 3D 건물, 도로 또는 다른 물체의 모습을 실제의 건물, 도로 또는 다른 물체와 가능한 일치시킬 필요가 있다. This visualization technique based on realistic rendering requires accurate geometric models and detailed realistic building textures, and it is necessary to match the rendered 3D buildings, roads or other objects with actual buildings, roads or other objects as closely as possible have.
3차원 메시(Mesh)는 그래픽 기반으로 객체를 3차원으로 표현하기 위해 사용되는 점, 선 면과 같은 데이터의 묶음을 의미한다. 이러한 3차원 메시는 3차원 객체들을 나타내는 각종 어플리케이션에 광범위하게 적용되고 있다. 3차원 메시는 정점과 3개의 정점이 모여서 만들어진 삼각형으로 구성되고, 이 삼각형들이 모여서 하나의 완전한 메시가 완성된다. A three-dimensional mesh (Mesh) refers to a bundle of data, such as a point, a plane, used to represent an object in three dimensions on a graphical basis. These three-dimensional meshes are widely applied to various applications representing three-dimensional objects. The three-dimensional mesh consists of triangles made up of vertices and three vertices, and these triangles are gathered to complete one complete mesh.
실제 생활에서 건물을 3차원으로 표현하기 위해서는 삼각형의 정보들이 연속적으로 연결되어 하나의 복잡한 도형으로 이루어진다. 이때, 3차원 객체가 내부 공간과 외부 공간이 차폐된 형태를 이루는 건물의 경우에, 3개의 정점으로 이루어진 삼각형의 어느 하나 이상의 정점이 다른 삼각형의 정점과 중복되는 특성을 가진다.In real life, in order to express a building in three dimensions, the information of a triangle is connected to one another in a complicated shape. At this time, in the case of a building in which a three-dimensional object is shielded from an inner space and an outer space, at least one vertex of a triangle formed by three vertices overlaps with another vertex of another triangle.
따라서, 3차원 지도상에 건물 등의 객체를 단순히 삼각형으로만 표현하게 되면, 중복되는 정점이 고려되지 않아 전체 정점의 수가 삼각형 수의 3배로 고정된다. Therefore, when a building or other object is simply represented by a triangle on a three-dimensional map, the number of vertices is fixed at three times the number of triangles because no overlapping vertex is considered.
도 1은 3차원 건물 데이터의 정점에 대한 기본적인 데이터 형식을 설명하는 블록도이다.1 is a block diagram illustrating a basic data format for vertices of three-dimensional building data.
도 1을 참고하면, 3차원 건물 데이터에서 하나의 정점은 4바이트(Byte)로 이루어진 부동 소수점 형식으로 x, y, z의 위치 좌표 정보와 u, v의 텍스쳐 좌표 정보를 합쳐서 20바이트로 이루어지고, 색인 정보는 2바이트로 이루어진다. Referring to FIG. 1, one vertex in 3D building data is composed of 20 bytes, which is a floating-point format having 4 bytes (Byte), and includes position coordinate information of x, y and z and texture coordinate information of u and v , And the index information is composed of 2 bytes.
예를 들어, 3차원 건물 데이터가 1만개의 삼각형으로 이루어진 경우에, 삼각형으로 해당 건물 데이터를 표현하려면 전체 정점의 용량이 20바이트(1개의 정점 용량)×3×1만(삼각형의 수), 즉 60만 바이트가 필요하다. For example, when three-dimensional building data consists of 10,000 triangles, in order to represent the building data as a triangle, the capacity of the entire vertex is 20 bytes (one vertex capacity) × 3 × 1 (the number of triangles) That is, 600,000 bytes are required.
선행기술자료로서, 한국공개특허 제10-2009-0097057호에 개시된 메쉬 모델로 구현된 3차원 데이터의 연결정보를 부호화 및 복호화 방법은 다각형에 포함된 꼭지점들의 거리적 특성을 이용하여 데이터의 압축률을 감소시키는 것이다.As a prior art data, a method of encoding and decoding connection information of a 3D data implemented in a mesh model disclosed in Korean Patent Laid-Open No. 10-2009-0097057 uses a distance characteristic of vertices included in a polygon, .
이를 위해, 종래 기술에서는 기하데이터에 포함된 꼭지점(vertex)에 대한 정보에 기초하여 부호화할 다각형의 연결정보에 대한 기준이 되는 제1 및 제2 꼭지점을 포함하는 게이트를 선택하고, 제1 꼭지점의 주변에 위치한 적어도 하나의 점을 후보점으로 설정한 후에 게이트에 포함된 점과 적어도 하나의 후보점 사이의 거리관계에 대한 정보를 획득하며, 이 거리관계에 대한 정보에 기초하여 다각형에 포함된 복수의 점들의 연결정보를 부호화한다. To this end, in the prior art, a gate including first and second vertices serving as a reference for connection information of a polygon to be encoded is selected based on vertex information included in the geometric data, The method comprising the steps of: acquiring information about a distance relation between a point included in a gate and at least one candidate point after setting at least one point around the point as a candidate point; And the connection information of the points of < RTI ID = 0.0 >
즉, 종래 기술은 메쉬 모델로 표현된 3차원 데이터에 포함된 연결정보를 압축 및 부호화하는 것으로서, 일반적인 3차원 압축 알고리즘에 의해 연결 정보와 기하데이터가 별개로 압축된다. 이때, 기하 데이터는 연결 정보의 코딩에 의해 결정되는 코딩 순서에 따라 인접하는 정점들의 위치들 사이에서 높은 상관을 이용하여 압축된다. 즉, 대부분의 기학적 압축 방식들은 정점 위치들의 양자화, 양자화된 위치들의 예측 및 예측 레시듀얼들의 엔트로피 코딩을 따른다. That is, the prior art compresses and encodes the connection information included in the three-dimensional data represented by the mesh model, and the connection information and the geometry data are separately compressed by a general three-dimensional compression algorithm. At this time, the geometric data is compressed using a high correlation between positions of adjacent vertices according to the coding order determined by the coding of the connection information. That is, most geometric compression schemes follow quantization of vertex positions, prediction of quantized positions, and entropy coding of prediction residues.
이와 같이, 종래 기술에서는 다각형을 이루는 꼭지점들의 거리적 특성을 이용하여 데이터를 압축하기 때문에 자동화 또는 작업자의 숙련도에 따라 다각형의 꼭지점들 중 일부가 중복되는 현상이 발생할 수 있고, 그에 따라 3차원 데이터를 압축하기 위한 데이터 용량이 많아지고, 3차원 지도상에서 표현해야 할 3차원 건물의 수가 많아질수록 데이터 전송, 데이터 저장 및 데이터 처리량이 증가되는 문제점이 있다.In this way, according to the prior art, since data is compressed using the distance characteristic of the vertexes constituting the polygon, some of the vertices of the polygon may overlap with each other depending on automation or skill of the operator, There is a problem in that data capacity for compressing increases and data transfer, data storage and data throughput increase as the number of three-dimensional buildings to be expressed on a three-dimensional map increases.
따라서, 3차원 객체 데이터 표현시 다각형의 꼭지점들이 중복되는 현상을 제거하지 않으면, 중복되는 점들의 개수만큼 실시간으로 처리해야 할 데이터 용량이 증가되고, 증가된 데이터 용량만큼 3차원 객체 데이터에 대한 메모량이 증가될 뿐만 아니라 압축 및 복원시 복잡한 계산 과정을 거치거나 많은 데이터 처리량이 요구되어, 3차원 객체 표현에 소요되는 시간이나 데이터가 낭비될 수 있는 문제점이 있다. Therefore, unless the phenomenon that the vertexes of the polygons overlap each other in the representation of the three-dimensional object data is removed, the data capacity to be processed in real time is increased as much as the number of overlapping points, and the amount of memory for the three- There is a problem that time required for three-dimensional object representation and data can be wasted because complex calculation process is required in compression and restoration as well as a large amount of data processing is required.
본 발명은 3차원 객체 데이터의 정점 구성시 중복되는 중점들을 제거하여 정점을 최적화한 정점-색인 정보를 구성하고, 3차원 객체 데이터의 저작시 중복되는 중점들이 제거된 데이터량만큼 기존에 비해 데이터량이 감소될 수 있고, 최소한의 정점으로 3차원 객체 데이터의 외형을 그대로 유지하면서 데이터를 경량화할 수 있는 3차원 객체 모델의 정점 구성 방법을 제공한다. The present invention constitutes vertex-index information which is obtained by optimizing vertices by eliminating overlapping vertexes when constructing vertexes of three-dimensional object data. In addition, And provides a vertex construction method of a three-dimensional object model that can lighten data while retaining the appearance of the three-dimensional object data at the minimum vertex.
실시예들 중에서, 3차원 객체 모델의 정점 구성 방법은, 3차원 지도상에 건물을 포함한 3차원 객체 데이터를 표현하기 위한 3차원 렌더링 처리 장치에 의해 수행되는 3차원 객체 모델의 정점 구성 방법에 있어서, 3차원 지도상에서 존재하는 3차원 객체 데이터를 적어도 하나 이상의 폴리곤으로 모델링하는 단계; 상기 3차원 객체 데이터에 대한 폴리곤들의 분석을 통해 상기 폴리곤의 형상을 구성하는 공간 좌표점을 포함하는 정점(Vertex) 정보 및 상기 정점의 폴리곤 표현에 필요한 순서를 포함하는 색인 정보를 추출하여 정점-색인 정보로 저장하는 단계; 상기 색인 정보를 기반으로 하여 정점들간의 3차원 거리를 계산하고, 상기 3차원 거리가 기준 거리 이하에 해당하는 복수의 정점을 중복 정점으로 판단하는 단계; 및 상기 중복 정점 중 어느 하나의 정점에 대한 색인 정보를 수정한 후 해당 정점을 상기 정점-색인 정보에서 제거하는 단계를 포함하는 것을 특징으로 한다.Among the embodiments, a vertex construction method of a three-dimensional object model includes a vertex construction method of a three-dimensional object model performed by a three-dimensional rendering processor for representing three-dimensional object data including a building on a three-dimensional map Modeling the three-dimensional object data existing on the three-dimensional map into at least one polygon; And extracting index information including vertex information including a spatial coordinate point constituting the shape of the polygon and order necessary for polygon representation of the vertex through analysis of polygons with respect to the 3D object data, Storing information as information; Calculating a three-dimensional distance between the vertices based on the index information, and determining the plurality of vertices corresponding to the three-dimensional distance less than the reference distance as overlapping vertices; And removing the corresponding vertex from the vertex-index information after modifying the index information of any of the vertices of the overlapping vertex.
상기 정점 정보는 정점의 색상 정보, 정점의 법선 정보, 정점의 텍스쳐 정보, 정점의 보조 텍스쳐 정보, 정점의 접선 정보 중 적어도 하나 이상의 정보를 포함하는 특성 정보를 정점별로 삽입하는 것을 특징으로 한다.The vertex information is characterized by inserting characteristic information including at least one of color information of a vertex, normal information of a vertex, texture information of a vertex, auxiliary texture information of a vertex, and tangent information of a vertex.
상기 색인 정보를 기반으로 하여 정점들간의 3차원 거리를 계산하고, 상기 3차원 거리가 기준 거리 이하에 해당하는 복수의 정점을 중복 정점으로 판단하는 단계는, 상기 색인 정보의 색인 순서 또는 상기 정점-색인 정보의 저장 순서에 따라 하나의 정점을 기준점으로 선택하고, 상기 선택한 정점의 다음 순서에 해당하는 정점을 비교점으로 지정하는 것을 특징으로 한다.Wherein the step of calculating the three-dimensional distance between the vertices based on the index information and determining the plurality of vertices having the three-dimensional distance equal to or less than the reference distance as the overlapped vertices comprises: One vertex is selected as a reference point according to a storage order of the index information, and a vertex corresponding to the next order of the selected vertex is designated as a comparison point.
상기 중복 정점에 해당하는 어느 하나의 정점에 대한 색인 정보를 수정한 후 해당 정점을 상기 정점-색인 정보에서 제거하는 단계는, 상기 비교점의 색인 정보를 상기 기준점의 색인 정보로 변경하고, 상기 정점-색인 정보에서 상기 비교점에 해당하는 정점의 정점 정보와 색인 정보를 제거하는 것을 특징으로 한다.Wherein the step of removing the vertex from the vertex-index information after modifying the index information of the vertex corresponding to the overlapped vertex is performed by changing the index information of the comparison point to the index information of the reference point, And the vertex information and the index information corresponding to the comparison point are removed from the index information.
본 발명의 3차원 객체 모델의 정점 구성 방법은, 3차원 객체 데이터의 정점 구성시 중복되는 중점들을 제거하여 정점을 최적화한 정점-색인 정보를 이용하여 3차원 객체 데이터를 최소한의 정점으로 표현할 수 있고, 최소한의 정점으로 3차원 객체 데이터의 외형을 그대로 유지하면서 데이터를 경량화하여 데이터의 네트워크 전송 속도, 저장용량 및 화면 처리 시간을 감소시킬 수 있는 효과가 있다.The method of constructing a vertex of a three-dimensional object model of the present invention can represent three-dimensional object data as a minimum vertex by using vertex-index information that is obtained by removing vertices that are overlapped when constructing vertices of three-dimensional object data , It is possible to reduce the network transmission speed, the storage capacity, and the screen processing time of the data by making the data lightweight while maintaining the appearance of the three-dimensional object data at the minimum vertex.
또한, 본 발명은 중복 정점이 제거된 정점-색인 정보에 의해 빠르게 렌더링할 수 있으며, 3차원 객체 데이터의 저작시 자동화 또는 작업자의 숙련이나 실수에 의해서 낭비되는 정점 관련 데이터들을 최적화함으로써 전반적으로 3차원 객체 데이터를 사용하는 시스템의 부하를 줄일 수 있는 효과가 있다. In addition, the present invention can quickly render vertex-index information from which redundant vertices have been removed, optimize vertex-related data that is wasted by authoring automation of the 3D object data or skill or error of the operator, The load of the system using the object data can be reduced.
도 1은 3차원 건물 데이터의 정점에 대한 기본적인 데이터 형식을 설명하는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 3차원 렌더링 처리 장치를 설명하는 블록도면이다.
도 3은 본 발명의 일 실시예에 따른 3차원 객체 모델의 정점 구성 방법을 설명하는 순서도이다.
도 4는 본 발명의 일 실시예에 따른 3차원 객체 데이터에 대한 폴리곤 모델의 전개 상태를 설명하는 도면이다.
도 5는 도 4의 정점 정보와 색인 정보를 설명하는 도면이다.
도 6은 도 4의 폴리곤의 정점들 중 중복 정점 위치를 확인하는 과정을 설명하는 도면이다.
도 7은 도 6에 의해 확인한 중복 정점에 대한 모든 정점의 목록을 설명하는 도면이다.
도 8은 도 7의 중복 정점에 대한 정점 제거 및 색인 정보 수정 과정을 설명하는 도면이다.
도 9는 본 발명의 일 실시예에 따른 중복 정점의 제거전 정점 리스트와 중복 정점 제거후의 정점 리스트를 비교하는 도면이다.
도 10은 본 발명의 일 실시예에 따른 중복 정점 제거 후의 폴리곤 모델의 전개 상태를 설명하는 도면이다. 1 is a block diagram illustrating a basic data format for vertices of three-dimensional building data.
2 is a block diagram illustrating a 3D rendering processor according to an embodiment of the present invention.
3 is a flowchart illustrating a method of constructing a vertex of a 3D object model according to an embodiment of the present invention.
FIG. 4 is a diagram for explaining an expanded state of a polygon model for three-dimensional object data according to an embodiment of the present invention.
5 is a view for explaining vertex information and index information in FIG.
FIG. 6 is a view for explaining a process of determining the overlapped vertex position among the vertices of the polygon of FIG.
FIG. 7 is a view for explaining a list of all vertices for overlapping vertices identified by FIG. 6. FIG.
FIG. 8 is a diagram for explaining a process of removing vertices and correcting index information for the overlapping vertices of FIG. 7. FIG.
FIG. 9 is a diagram for comparing a list of pre-removal vertices of redundant vertices and a list of vertices after duplicate vertex removal according to an embodiment of the present invention.
10 is a diagram for explaining an expanded state of a polygon model after eliminating overlapping vertexes according to an embodiment of the present invention.
본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The description of the present invention is merely an example for structural or functional explanation, and the scope of the present invention should not be construed as being limited by the embodiments described in the text. That is, the embodiments are to be construed as being variously embodied and having various forms, so that the scope of the present invention should be understood to include equivalents capable of realizing technical ideas. Also, the purpose or effect of the present invention should not be construed as limiting the scope of the present invention, since it does not mean that a specific embodiment should include all or only such effect.
한편, 본 발명에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.Meanwhile, the meaning of the terms described in the present invention should be understood as follows.
"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.The terms "first "," second ", and the like are intended to distinguish one element from another, and the scope of the right should not be limited by these terms. For example, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.
어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.It is to be understood that when an element is referred to as being "connected" to another element, it may be directly connected to the other element, but there may be other elements in between. On the other hand, when an element is referred to as being "directly connected" to another element, it should be understood that there are no other elements in between. On the other hand, other expressions that describe the relationship between components, such as "between" and "between" or "neighboring to" and "directly adjacent to" should be interpreted as well.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.It should be understood that the singular " include "or" have "are to be construed as including a stated feature, number, step, operation, component, It is to be understood that the combination is intended to specify that it does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.
각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.In each step, the identification code (e.g., a, b, c, etc.) is used for convenience of explanation, the identification code does not describe the order of each step, Unless otherwise stated, it may occur differently from the stated order. That is, each step may occur in the same order as described, may be performed substantially concurrently, or may be performed in reverse order.
여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.All terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs, unless otherwise defined. Commonly used predefined terms should be interpreted to be consistent with the meanings in the context of the related art and can not be interpreted as having ideal or overly formal meaning unless explicitly defined in the present invention.
도 2는 본 발명의 일 실시예에 따른 3차원 렌더링 처리 장치를 설명하는 블록도면이다.2 is a block diagram illustrating a 3D rendering processor according to an embodiment of the present invention.
도 2를 참고하면, 3차원 지도상에 건물을 포함한 3차원 객체 데이터를 표현하기 위한 3차원 렌더링 장치(100)는 메시 모델링 모듈(110), 정점 최적화 모듈(120), 렌더링 모듈(130), 제어 모듈(140) 및 저장 모듈(150)을 포함한다.Referring to FIG. 2, a
메시 모델링 모듈(110)은 3차원 지도상에서 존재하는 복수의 3차원 객체 데이터를 추출하고, 각 3차원 객체 데이터별로 삼각형의 폴리곤으로 모델링한다.The
정점 최적화 모듈(120)은 각 폴리곤들의 분석을 통해 폴리곤의 형상을 구성하는 공간 좌표점을 포함하는 정점(Vertex) 정보 및 정점의 폴리곤 표현에 필요한 순서를 포함하는 색인 정보를 추출하여 정점-색인 정보로 저장하고, 각 정점들을 순차적으로 비교하여 중복 정점이 있는지를 확인하여 정점 최적화 과정을 수행한다. The
렌더링 모듈(130)은 정점 최적화 모듈(120)을 통해 정점-색인 정보를 이용하여 복수의 폴리곤을 정렬하고, 정렬된 복수의 폴리곤을 순차적으로 렌더링(Rendering)한다.The
제어 모듈(140)은 3차원 객체 데이터의 정점이 최적화되도록 정점-색인 정보를 재구성하기 위한 메시 모델링 모듈(110), 정점 최적화 모듈(120) 및 렌더링 모듈(130)의 동작을 제어한다. The
저장 모듈(150)은 3차원 객체 데이터, 3차원 객체 데이터별 폴리곤 모델링 정보, 정점 최적화시 필요한 정점-색인 정보 등을 저장한다. The
여기서, 각 모듈(110~150)은 하드웨어 또는 소프트웨어 형태로 설계될 수 있고, 하드웨어와 소프트웨어를 통합하여 설계될 수도 있다. Here, each of the
도 3은 본 발명의 일 실시예에 따른 3차원 객체 모델의 정점 구성 방법을 설명하는 순서도이고, 도 4는 본 발명의 일 실시예에 따른 3차원 객체 데이터에 대한 폴리곤 모델의 전개 상태를 설명하는 도면이고, 도 5는 도 4의 정점 정보와 색인 정보를 설명하는 도면이며, 도 6은 도 4의 폴리곤의 정점들 중 중복 정점 위치를 확인하는 과정을 설명하는 도면이고, 도 7은 도 6에 의해 확인한 중복 정점에 대한 모든 정점의 목록을 설명하는 도면이며, 도 8은 도 7의 중복 정점에 대한 정점 제거 및 색인 정보 수정 과정을 설명하는 도면이고, 도 9는 본 발명의 일 실시예에 따른 중복 정점의 제거전 정점 리스트와 중복 정점 제거후의 정점 리스트를 비교하는 도면이며, 도 10은 본 발명의 일 실시예에 따른 중복 정점 제거 후의 폴리곤 모델의 전개 상태를 설명하는 도면이다. FIG. 3 is a flowchart for explaining a method of constructing a vertex of a 3D object model according to an embodiment of the present invention. FIG. 4 is a view for explaining a developed state of a polygon model for 3D object data according to an embodiment of the present invention FIG. 5 is a view for explaining the vertex information and the index information of FIG. 4, FIG. 6 is a view for explaining a process of identifying the overlapping vertex position among vertices of the polygon of FIG. 4, and FIG. FIG. 8 is a view for explaining a process of removing vertices and correcting index information for the overlapping vertices of FIG. 7, and FIG. 9 is a view for explaining a process of removing vertices and correcting index information according to an embodiment of the present invention. FIG. 10 is a view for explaining an expanded state of a polygon model after elimination of a duplicate vertex according to an embodiment of the present invention. FIG. A.
도 3 내지 도 10을 참고하면, 3차원 객체 모델의 정점 구성 방법은, 3차원 지도상에서 존재하는 모든 3차원 객체 데이터를 추출하고, 각 3차원 객체 데이터를 3차원 형상을 그리기 위해 필요한 적어도 하나 이상의 삼각형 모양의 폴리곤으로 모델링한다.(S1 및 S2) 3 to 10, a vertex construction method of a three-dimensional object model includes extracting all three-dimensional object data existing on a three-dimensional map, extracting each three-dimensional object data from at least one Model with triangular polygons (S1 and S2)
3차원 렌더링 장치(100)는 3차원 객체 데이터에 대한 폴리곤들의 분석을 통해 정점(Vertex) 정보와 색인(Index) 정보를 추출하여 정점-색인 정보로 저장 모듈(150)에 저장한다.(S3 및 S4) The
여기서, 정점은 폴리곤의 형상을 구성하는 정규화된 공간 좌표점이고, 인덱스는 정점을 폴리곤에 그릴 경우에 그리는 순서 리스트가 될 수 있다. 이때, 정점 정보에는 가장 기본적인 위치 좌표 정보가 들어가며, 정점별로 특징 정보를 추가로 넣을 수 있다. 3차원 렌더링 장치(100)는 렌더링시 특징 정보들에 따라 여러 가지 영향을 미치게 된다.Here, the vertex is a normalized spatial coordinate point constituting the shape of the polygon, and the index can be an order list drawn when the vertices are drawn on the polygon. At this time, the most basic position coordinate information is included in the vertex information, and the feature information can be further added to each vertex. The
특징 정보는 정점의 색상 정보, 정점의 노멀(normal) 또는 법선 정보, 정점에 대응되는 텍스쳐(uv) 좌표, 라이트맵 텍스쳐에 주로 사용되는 보조 텍스쳐(uv2) 좌표, 정점의 접선(tangent) 정보를 포함한다. The feature information includes color information of a vertex, normal or normal information of a vertex, texture (uv) coordinates corresponding to a vertex, auxiliary texture (uv2) coordinates mainly used in a light map texture, and tangent information of a vertex .
정점의 노멀 또는 법선 정보는 정점이 속한 면이 향하는 방향을 결정하는데 사용된다. 텍스쳐 좌표는 폴리곤에 텍스쳐가 맵핑되고, 정점의 접선 정보는 정점에 접선 방향을 지정하는 정보로 범프 매칭과 같이 보조 텍스쳐를 사용해 픽셀 단위로 표면에 효과를 줄 때 사용된다.The normal or normal information of a vertex is used to determine the direction in which the vertex belongs. The texture coordinates are the texture maps to the polygons, and the tangential information of the vertices is information that specifies the tangential direction to the vertices. It is used to effect the surface in pixels by using auxiliary textures such as bump matching.
3차원 렌더링 장치(100)는 도 4에 도시된 바와 같이 특정한 3차원 객체 데이터에 대해 폴리곤 모델이 A, B, C, D, E, F의 삼각형으로 전개될 수 있다. As shown in FIG. 4, the
A의 폴리곤의 경우에, 20바이트의 A0, A1, A2의 정점이 존재하고, 각 정점마다 2바이트의 idx0, idx1, idx2의 인덱스가 존재한다. 따라서, 도 5에 도시된 바와 같이, 3차원 객체 데이터에 대한 모든 정점 정보와 인덱스 정보를 적재해보면, 정점 리스트는 20바이트×24개의 정점=480바이트가 필요하고, 인덱스 리스트는 2바이트×24개의 인덱스=48바이트가 필요로 한다. In the case of polygon A, there are 20 bytes of A0, A1, and A2 vertices, and there are 2 bytes of indexes idx0, idx1, and idx2 for each vertex. 5, when vertex information and index information for three-dimensional object data are loaded, the vertex list needs 20 bytes x 24 vertices = 480 bytes, and the index list is composed of 2 bytes x 24 Index = 48 bytes is required.
3차원 렌더링 장치(100)는 도 5에 도시된 바와 같이 3차원 객체 데이터의 모든 폴리곤을 분석하면 중복 정점의 위치를 확인할 수 있다. 즉, A0-B0, B2-C0, C2-D2, D1-E2, E1-F1 및 A2-B1-C1-D0-E0-F2의 정점이 중복됨을 알 수 있다. As shown in FIG. 5, the
즉, 3차원 렌더링 장치(100)는 색인 정보의 색인 순서 또는 정점-색인 정보의 저장 순서에 따라 하나의 정점을 기준점(A0(s, y, z) 정점)으로 선택하고, 다음 순서에 해당하는 정점을 비교점(B0(x', y', z') 정점)으로 선택한다.(S5)That is, the
3차원 렌더링 장치(100)는 도 6에 도시된 바와 같이 기준점과 비교점의 3차원 거리(D1)를 계산하고, 3차원 거리가 기준 거리(Dref) 이하인 경우에 기준점과 비교점, 즉 A정점과 B정점이 동일 위치에 있는 중복 정점(A0=B0)으로 판단한다.(S6, S7, S8) 여기서, 기준 거리는 1㎜로 설정하지만 작업자에 의해 기준 거리는 조정될 수 있다. The
3차원 렌더링 장치(100)는 도 8에 도시된 바와 같이 비교점인 B0 정점의 인덱스 정보(idx3)를 A0 정점의 인덱스 정보(idx0)로 교체하고, B0 정점을 정점-색인 정보에서 제거한다. 따라서, A0 정점은 B0 정점의 정보와 통합되어 P0 정점(A0=B0)으로 갱신된다.(S9)The
이와 같은 방식으로, 3차원 렌더링 장치(100)는 모든 정점에 대한 중복 정점 확인 과정을 수행하고, 중복 정점이 존재하는 경우에 인덱스 정보를 수정하고, 중복 정점 중 어느 하나의 정점을 정점-인덱스 정보에서 제거한다. In this manner, the
마지막 순서인 24번째의 정점까지 중복 정점 확인 과정이 종료되면, 중복 정점이 제거된 정점-색인 정보를 최종 결과로 출력한다. 즉, 도 9 및 도 10에 도시된 바와 같이, 3차원 렌더링 장치(100)는 중복되는 정점들, 즉 A0-B0→P0, B2-C0→P2, C2-D2→P5, D1-E2→P6, E1-F1→P7 및 A2-B1-C1-D0-E0-F2→P3로 각각 교체되어 24개의 정점들이 8개의 정점으로 표현될 수 있고, 3차원 객체 데이터의 정점의 용량이 480바이트에서 160바이트로 최소화될 수 있다. When the duplicate vertex checking process is completed up to the 24th vertex, which is the last order, the vertex-index information from which the duplicate vertex is removed is output as the final result. That is, as shown in FIGS. 9 and 10, the
이와 같이, 본 발명의 일 실시예에 따른 3차원 객체 모델의 정점 구성 방법은 3차원 객체 데이터의 정점 구성시 중복되는 중점들을 제거하여 정점을 최적화한 정점-색인 정보를 이용하여 3차원 객체 데이터를 최소한의 정점으로 표현할 수 있고, 3차원 객체 데이터를 정점-색인 정보에 의해 빠르게 렌더링할 수 있으며, 그로 인해 정점 구성에 필요한 데이터량이 1/3이 감소되어 데이터 전송 시간, 저장 용량 및 화면 처리 시간이 감소될 수 있다.As described above, the method of constructing a vertex of a three-dimensional object model according to an embodiment of the present invention includes vertically-vertex-optimized vertex- It is possible to render the 3-dimensional object data by the vertex-index information quickly, thereby reducing the amount of data required for the vertex construction by 1/3, so that the data transmission time, storage capacity, Can be reduced.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present invention as defined by the following claims It can be understood that
110 : 메시 모델링 모듈 120 : 정점 최적화 모듈
130 : 렌더링 모듈 140 : 제어 모듈
150 : 저장 모듈 110: mesh modeling module 120: vertex optimization module
130: rendering module 140: control module
150: storage module
Claims (4)
3차원 지도상에서 존재하는 3차원 객체 데이터를 적어도 하나 이상의 폴리곤으로 모델링하는 단계;
상기 3차원 객체 데이터에 대한 폴리곤들의 분석을 통해 상기 폴리곤의 형상을 구성하는 공간 좌표점을 포함하는 정점(Vertex) 정보 및 상기 정점의 폴리곤 표현에 필요한 순서를 포함하는 색인 정보를 추출하여 정점-색인 정보로 저장하는 단계;
상기 색인 정보를 기반으로 하여 정점들간의 3차원 거리를 계산하고, 상기 3차원 거리가 기준 거리 이하에 해당하는 복수의 정점을 중복 정점으로 판단하는 단계; 및
상기 중복 정점 중 어느 하나의 정점에 대한 색인 정보를 수정한 후 해당 정점을 상기 정점-색인 정보에서 제거하는 단계를 포함하는 것을 특징으로 하는 3차원 객체 모델의 정점 구성 방법.
A method for constructing a vertex of a three-dimensional object model performed by a three-dimensional rendering processor for representing three-dimensional object data including a building on a three-dimensional map,
Dimensionally modeling three-dimensional object data existing on a three-dimensional map into at least one polygon;
And extracting index information including vertex information including a spatial coordinate point constituting the shape of the polygon and order necessary for polygon representation of the vertex through analysis of polygons with respect to the 3D object data, Storing information as information;
Calculating a three-dimensional distance between the vertices based on the index information, and determining the plurality of vertices corresponding to the three-dimensional distance less than the reference distance as overlapping vertices; And
And removing the vertex from the vertex-index information after modifying the index information of any one of the vertices of the overlapping vertex.
상기 정점 정보는 정점의 색상 정보, 정점의 법선 정보, 정점의 텍스쳐 정보, 정점의 보조 텍스쳐 정보, 정점의 접선 정보 중 적어도 하나 이상의 정보를 포함하는 특성 정보를 정점별로 삽입하는 것을 특징으로 하는 3차원 객체 모델의 정점 구성 방법.
The method according to claim 1,
Wherein the vertex information includes at least one characteristic information including at least one of vertex color information, vertex normal information, vertex texture information, vertex auxiliary texture information, and vertex tangent information. How to construct vertices in an object model.
상기 색인 정보를 기반으로 하여 정점들간의 3차원 거리를 계산하고, 상기 3차원 거리가 기준 거리 이하에 해당하는 복수의 정점을 중복 정점으로 판단하는 단계는,
상기 색인 정보의 색인 순서 또는 상기 정점-색인 정보의 저장 순서에 따라 하나의 정점을 기준점으로 선택하고, 상기 선택한 정점의 다음 순서에 해당하는 정점을 비교점으로 지정하는 것을 특징으로 하는 3차원 객체 모델의 정점 구성 방법.
The method according to claim 1,
Calculating a three-dimensional distance between the vertices based on the index information, and determining the plurality of vertices having the three-dimensional distance equal to or less than the reference distance as the overlapped vertices,
And a vertex corresponding to a next vertex of the selected vertex is designated as a comparison point, wherein the vertex of the selected vertex is selected as a reference point according to the indexing order of the index information or the order of storing the vertex- .
상기 중복 정점에 해당하는 어느 하나의 정점에 대한 색인 정보를 수정한 후 해당 정점을 상기 정점-색인 정보에서 제거하는 단계는,
상기 비교점의 색인 정보를 상기 기준점의 색인 정보로 변경하고, 상기 정점-색인 정보에서 상기 비교점에 해당하는 정점의 정점 정보와 색인 정보를 제거하는 것을 특징으로 하는 3차원 객체 모델의 정점 구성 방법. The method of claim 3,
Wherein the step of removing the vertex from the vertex-index information after modifying the index information of the vertex corresponding to the overlapped vertex,
The vertex information of the vertices corresponding to the comparison point and the index information are removed from the vertex-index information by changing the index information of the comparison point to the index information of the reference point, .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150049009A KR101551741B1 (en) | 2015-04-07 | 2015-04-07 | Method for Configuring Vertex of Three-dimensional Object Model |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150049009A KR101551741B1 (en) | 2015-04-07 | 2015-04-07 | Method for Configuring Vertex of Three-dimensional Object Model |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101551741B1 true KR101551741B1 (en) | 2015-09-10 |
Family
ID=54247811
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150049009A KR101551741B1 (en) | 2015-04-07 | 2015-04-07 | Method for Configuring Vertex of Three-dimensional Object Model |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101551741B1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101919085B1 (en) * | 2017-04-19 | 2018-11-16 | 에스케이텔레콤 주식회사 | Apparatus and method for simplification of 3D mesh data |
CN110490970A (en) * | 2019-08-08 | 2019-11-22 | 广联达科技股份有限公司 | Store the method, apparatus and electronic equipment of three-dimensional geometric information |
CN113847921A (en) * | 2020-06-28 | 2021-12-28 | 蘑菇车联信息科技有限公司 | Method for establishing map object three-dimensional model and electronic equipment |
WO2024079983A1 (en) * | 2022-10-13 | 2024-04-18 | Kddi株式会社 | Mesh decoding device, mesh decoding method, and program |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101165017B1 (en) | 2011-10-31 | 2012-07-13 | (주) 어펙트로닉스 | 3d avatar creating system and method of controlling the same |
KR101507776B1 (en) | 2014-06-18 | 2015-04-07 | (주)이지스 | methof for rendering outline in three dimesion map |
-
2015
- 2015-04-07 KR KR1020150049009A patent/KR101551741B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101165017B1 (en) | 2011-10-31 | 2012-07-13 | (주) 어펙트로닉스 | 3d avatar creating system and method of controlling the same |
KR101507776B1 (en) | 2014-06-18 | 2015-04-07 | (주)이지스 | methof for rendering outline in three dimesion map |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101919085B1 (en) * | 2017-04-19 | 2018-11-16 | 에스케이텔레콤 주식회사 | Apparatus and method for simplification of 3D mesh data |
CN110490970A (en) * | 2019-08-08 | 2019-11-22 | 广联达科技股份有限公司 | Store the method, apparatus and electronic equipment of three-dimensional geometric information |
CN113847921A (en) * | 2020-06-28 | 2021-12-28 | 蘑菇车联信息科技有限公司 | Method for establishing map object three-dimensional model and electronic equipment |
WO2024079983A1 (en) * | 2022-10-13 | 2024-04-18 | Kddi株式会社 | Mesh decoding device, mesh decoding method, and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100233972B1 (en) | Compression of simple geotric models using spanning trees | |
CN109360260B (en) | Cutting and excavating reconstruction method of triangular mesh three-dimensional model | |
US7164420B2 (en) | Ray tracing hierarchy | |
CN115100339B (en) | Image generation method, device, electronic equipment and storage medium | |
CN106548498B (en) | Method and apparatus for processing compressed textures | |
JP4452242B2 (en) | Progressive 3D mesh information encoding / decoding method and apparatus | |
KR101551741B1 (en) | Method for Configuring Vertex of Three-dimensional Object Model | |
CN105608729B (en) | Texture processing method and unit | |
Greß et al. | GPU‐based collision detection for deformable parameterized surfaces | |
CN105283900A (en) | Scheme for compressing vertex shader output parameters | |
US20110267347A1 (en) | Systems and methods for primitive intersection in ray tracing | |
EP2909575A1 (en) | Systems and methods for marking images for three-dimensional image generation | |
US10210618B1 (en) | Object image masking using depth cameras or three-dimensional (3D) models | |
KR101614065B1 (en) | Method and system for reducing 3d modeling data | |
Vaidyanathan et al. | Watertight ray traversal with reduced precision. | |
CN109979013B (en) | Three-dimensional face mapping method and terminal equipment | |
CN117178297A (en) | Micro-grid for structured geometry of computer graphics | |
CN113724401A (en) | Three-dimensional model cutting method and device, computer equipment and storage medium | |
KR101552827B1 (en) | Method Of Dividing Three-dimensional Object Model | |
US6791543B2 (en) | Forming method for structuring polygonal mesh data and apparatus, and storage medium | |
US8207965B2 (en) | Rewritable compression of triangulated data | |
WO2019088865A1 (en) | Method and system for removing hidden surfaces from a three-dimensional scene | |
EP3082109A1 (en) | Three dimensional modeling | |
CN113421335B (en) | Image processing method, image processing apparatus, electronic device, and storage medium | |
CN106663328B (en) | Extension of MPEG/SC3DMC standard for polygonal meshes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20180827 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20190917 Year of fee payment: 5 |