KR20200068901A - Method and apparatus for encoding map image based on condition - Google Patents
Method and apparatus for encoding map image based on condition Download PDFInfo
- Publication number
- KR20200068901A KR20200068901A KR1020180155813A KR20180155813A KR20200068901A KR 20200068901 A KR20200068901 A KR 20200068901A KR 1020180155813 A KR1020180155813 A KR 1020180155813A KR 20180155813 A KR20180155813 A KR 20180155813A KR 20200068901 A KR20200068901 A KR 20200068901A
- Authority
- KR
- South Korea
- Prior art keywords
- tile
- level
- tiles
- information
- type
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
본 발명은 조건 기반 지도 이미지 인코딩 방법 및 장치에 관한 것으로, 더욱 상세하게는 지도 상의 도시 모델 또는 조건에 따라 계층적 타일을 생성하여 지도 이미지 중 조건을 만족하는 타일 또는 영역을 인코딩하는 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for encoding a condition-based map image, and more particularly, to a method and apparatus for generating a hierarchical tile according to a city model or condition on a map to encode a tile or region satisfying a condition among map images. It is about.
최근 구글 지도, 네이버 지도 및 V-world 등과 같은 인터넷 기반 지도는 다양한 서비스 및 정보를 연계하여 제공해주는 서비스로 많이 인식 및 활용되고 있다. 이러한 인터넷 기반 지도는 일반적으로 타일(그리드)이라고 부르는 특정 크기의 격자 이미지 또는 영상을 다양한 레벨별로 구축하여 사용자의 요청에 따라 해당 위치의 타일에 대한 정보를 단말로 전달하도록 구현되어 있다.Recently, Internet-based maps such as Google Maps, Naver Maps, and V-world have been widely recognized and utilized as services that link various services and information. Such an Internet-based map is implemented to construct a grid image or video of a specific size, which is generally called a tile (grid), at various levels, and transmit information on a tile at a corresponding location to a terminal according to a user's request.
도시 모델을 제공하는 최근의 제품 및 서비스들도 이와 같은 타일 기반의 데이터 구축을 기반으로 한다. 다만, 도시 모델은 많은 종류의 정보를 포함하고 있으므로, 기존의 타일 기반의 방법에 따라 구체적인 수준(LoD, Level of Detail) 별로 정보를 모두 저장하는 경우, 데이터량이 증가하며 효율성이 낮은 문제점이 존재한다.Recent products and services that provide urban models are also based on building tile-based data. However, since the city model includes many types of information, when all information is stored for each level of detail (LoD) according to the existing tile-based method, there is a problem that the amount of data increases and the efficiency is low. .
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 조건 기반 지도 이미지 인코딩 방법을 제공하는 데 있다.An object of the present invention for solving the above problems is to provide a condition-based map image encoding method.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은 조건 기반 지도 이미지 인코딩 장치를 제공하는 데 있다.Another object of the present invention for solving the above problems is to provide a condition-based map image encoding apparatus.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 인코딩 방법은, 복수의 타일을 각각 분할 대상 타일로 설정하는 단계, 분할 대상 타일을 쿼드 트리에 따라 분할 대상 타일보다 하위 레벨의 복수의 타일로 분할하는 제1 단계, 하위 레벨의 복수의 타일에 대하여 타일의 유형을 기초로 레벨별 타일 정보를 생성하는 제2 단계, 하위 레벨의 복수의 타일 중 타일의 유형이 일부 점유인 적어도 하나의 타일 각각이 분할 중단 조건을 만족할 때까지 적어도 하나의 타일 각각을 분할 대상 타일로 설정하여 제1 단계 및 제2 단계를 반복 수행하는 단계 및 생성된 적어도 하나의 레벨별 타일 정보를 기초로 타일의 유형이 점유 및 일부 점유인 적어도 하나의 타일을 인코딩하는 단계를 포함할 수 있다.The encoding method according to an embodiment of the present invention for achieving the above object comprises: setting a plurality of tiles as tiles to be divided, and dividing tiles to be divided into tiles having a lower level than tiles to be divided according to a quad tree. A first step of dividing, a second step of generating tile information for each level based on a tile type for a plurality of tiles of a lower level, and at least one tile of which a type of a tile is partially occupied among a plurality of tiles of a lower level The type of tile is occupied based on the steps of repeating the first step and the second step by setting each of the at least one tile as a target tile to be divided until the splitting stop condition is satisfied, and the generated tile information for each level. And encoding at least one tile that is partially occupied.
여기서, 레벨별 타일 정보는, 하위 레벨의 복수의 타일 각각에 대한 타일의 유형에 대한 정보 및 하위 레벨의 복수의 타일에 대한 레벨 정보를 포함할 수 있다.Here, the tile information for each level may include information about a type of a tile for each of a plurality of tiles at a lower level and level information for a plurality of tiles at a lower level.
여기서, 분할 중단 조건은, 타일의 유형이 일부 점유인 적어도 하나의 타일이 미리 설정된 최하위 레벨인 경우 및 타일의 유형이 일부 점유인 적어도 하나의 타일이 존재하지 않는 경우 중 적어도 하나를 포함할 수 있다.Here, the partitioning stop condition may include at least one of a case in which at least one tile in which a tile type is partially occupied is a preset lowest level and a case in which at least one tile in which a tile type is partially occupied is not present. .
여기서, 타일의 유형은, 해당 타일이 미리 정해진 영역을 포함하지 않는 비점유, 해당 타일의 일부가 미리 정해진 영역을 포함하는 일부 점유 및 해당 타일 전체가 미리 정해진 영역을 포함하는 점유 중 어느 하나를 포함할 수 있다.Here, the type of the tile includes any one of non-occupancy in which the corresponding tile does not include a predetermined area, partial occupancy in which a part of the tile includes a predetermined area, and occupancy in which the entire tile includes a predetermined area. can do.
여기서, 타일의 유형은, 미리 정해진 영역이 복수인 경우, 해당 타일에 대하여 미리 정해진 영역마다 개별적으로 결정될 수 있다.Here, when a plurality of predetermined areas are used, the type of tiles may be individually determined for each predetermined area for the tile.
여기서, 하위 레벨의 복수의 타일은, 레벨별 최상측 타일 및 최좌측 타일을 기준으로 개별적인 인덱스가 부여될 수 있다.Here, the plurality of tiles of the lower level may be assigned individual indexes based on the topmost tile and the leftmost tile for each level.
여기서, 생성된 적어도 하나의 레벨별 타일 정보를 기초로 타일의 유형이 점유 및 일부 점유인 적어도 하나의 타일을 인코딩하는 단계는, 최상위 레벨의 번호, 최하위 레벨의 번호, 최상위 레벨의 타일 크기, 최상위 레벨의 각 타일에 쿼드 트리로 분할된 하위 타일이 존재하는지 여부, 각 레벨별 노드의 개수 및 각 노드에서의 하위 노드 링크 정보 중 적어도 하나를 포함하는 인코딩 기본 정보와 상기 레벨별 타일 정보를 기초로 타일의 유형이 점유 및 일부 점유인 적어도 하나의 타일을 인코딩하는 단계를 포함할 수 있다.Here, encoding the at least one tile of which the tile type is occupied and partially occupied based on the generated at least one level-specific tile information includes: a number of the highest level, a number of the lowest level, a tile size of the highest level, and a highest level Based on the encoding basic information including at least one of the number of nodes for each level and the link information of the sub-nodes at each node, whether there are sub-tiles divided into quad trees in each tile of the level, and the tile information for each level. And encoding at least one tile in which the type of tile is occupied and partially occupied.
상기 다른 목적을 달성하기 위한 본 발명의 일 실시예에 따른 인코딩 장치는, 프로세서(processor) 및 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 메모리(memory)를 포함하고, 적어도 하나의 명령은, 복수의 타일을 각각 분할 대상 타일로 설정하도록 실행되고, 분할 대상 타일을 쿼드 트리에 따라 분할 대상 타일보다 하위 레벨의 복수의 타일로 분할하는 분할 명령을 수행하도록 실행되고, 하위 레벨의 복수의 타일에 대하여 타일의 유형을 기초로 레벨별 타일 정보를 생성하는 타일 정보 생성 명령을 수행하도록 실행되고, 하위 레벨의 복수의 타일 중 타일의 유형이 일부 점유인 적어도 하나의 타일 각각이 분할 중단 조건을 만족할 때까지 적어도 하나의 타일 각각을 분할 대상 타일로 설정하여 분할 명령 및 타일 정보 생성 명령을 반복 수행하도록 실행되고, 생성된 적어도 하나의 레벨별 타일 정보를 기초로 지도 이미지를 인코딩하도록 실행될 수 있다.An encoding apparatus according to an embodiment of the present invention for achieving the other object includes a processor and a memory in which at least one instruction executed through the processor is stored, and at least one instruction includes a plurality of It is executed to set the tiles of each of the tiles to be divided into tiles, and is executed to perform a dividing command to divide the tiles to be divided into a plurality of tiles at a lower level than the tiles to be divided according to a quad tree, and for a plurality of tiles at a lower level. Executed to perform a tile information generation command for generating tile information for each level based on the type of the tile, and each of at least one tile having a partial occupancy of the tile type among a plurality of tiles at a lower level satisfies a partitioning stop condition. Each of the at least one tile may be set to be a target tile to be divided, and the segmentation command and the tile information generation command may be repeatedly performed, and may be executed to encode the map image based on the generated tile information for each level.
여기서, 레벨별 타일 정보는, 하위 레벨의 복수의 타일 각각에 대한 타일의 유형에 대한 정보 및 하위 레벨의 복수의 타일에 대한 레벨 정보를 포함할 수 있다.Here, the tile information for each level may include information about a type of a tile for each of a plurality of tiles at a lower level and level information for a plurality of tiles at a lower level.
여기서, 분할 중단 조건은, 타일의 유형이 일부 점유인 적어도 하나의 타일이 미리 설정된 최하위 레벨인 경우 및 타일의 유형이 일부 점유인 적어도 하나의 타일이 존재하지 않는 경우 중 적어도 하나를 포함할 수 있다.Here, the partitioning stop condition may include at least one of a case in which at least one tile in which a tile type is partially occupied is a preset lowest level and a case in which at least one tile in which a tile type is partially occupied is not present. .
여기서, 타일의 유형은, 해당 타일이 미리 정해진 영역을 포함하지 않는 비점유, 해당 타일의 일부가 미리 정해진 영역을 포함하는 일부 점유 및 해당 타일 전체가 미리 정해진 영역을 포함하는 점유 중 어느 하나를 포함할 수 있다.Here, the type of the tile includes any one of non-occupancy in which the corresponding tile does not include a predetermined area, partial occupancy in which a part of the tile includes a predetermined area, and occupancy in which the entire tile includes a predetermined area. can do.
여기서, 타일의 유형은, 미리 정해진 영역이 복수인 경우, 해당 타일에 대하여 미리 정해진 영역마다 개별적으로 결정될 수 있다.Here, when a plurality of predetermined areas are used, the type of tiles may be individually determined for each predetermined area for the tile.
여기서, 하위 레벨의 복수의 타일은, 레벨별 최상측 타일 및 최좌측 타일을 기준으로 개별적인 인덱스가 부여될 수 있다.Here, the plurality of tiles of the lower level may be assigned individual indexes based on the topmost tile and the leftmost tile for each level.
여기서, 적어도 하나의 명령은, 최상위 레벨의 번호, 최하위 레벨의 번호, 최상위 레벨의 타일 크기, 최상위 레벨의 각 타일에 쿼드 트리로 분할된 하위 타일이 존재하는지 여부, 각 레벨별 노드의 개수 및 각 노드에서의 하위 노드 링크 정보 중 적어도 하나를 포함하는 인코딩 기본 정보와 상기 레벨별 타일 정보를 기초로 타일의 유형이 점유 및 일부 점유인 적어도 하나의 타일을 인코딩하도록 실행될 수 있다.Here, at least one command includes the number of nodes for each level, the number of the top level number, the number of the lowest level, the tile size of the top level, and whether there are sub-tiles divided into quad trees in each tile of the top level. Based on the encoding basic information including at least one of the lower node link information at the node and the tile information for each level, it may be executed to encode at least one tile having a type of occupancy and some occupancy.
본 발명에 따르면, 복수의 조건을 기초로 도시 영역을 인코딩하여 효율적으로 도시 모델의 가시화 및 편집을 제공할 수 있다.According to the present invention, it is possible to efficiently visualize and edit a city model by encoding a city area based on a plurality of conditions.
본 발명에 따르면, 복수의 조건 하에 중복되거나 불필요한 데이터를 제외하여 인코딩 효율을 높일 수 있다.According to the present invention, encoding efficiency can be increased by excluding redundant or unnecessary data under a plurality of conditions.
도 1은 본 발명의 일 실시예에 조건 기반의 지도 이미지를 나타낸 개념도이다.
도 2는 본 발명의 일 실시예에 따른 레벨별 영역을 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른 제1 조건을 만족하는 레벨별 도시 모델 영역을 나타낸 도면이다.
도 4는 본 발명의 일 실시예에 따른 제1 조건에 따른 레벨별 도시 모델 영역의 타일 정보를 나타낸 개념도이다.
도 5는 본 발명의 일 실시예에 따른 제2 조건을 만족하는 레벨별 편집 가능한 영역을 나타낸 도면이다.
도 6은 본 발명의 일 실시예에 따른 제2 조건에 따른 레벨별 편집 가능한 영역의 타일 정보를 나타낸 개념도이다.
도 7은 본 발명의 일 실시예에 따른 제1 조건 및 제2 조건을 만족하는 영역을 나타낸 도면이다.
도 8은 본 발명의 일 실시예에 따른 제1 조건 및 제2 조건에 따른 영역의 타일 정보를 나타낸 개념도이다.
도 9는 본 발명의 일 실시예에 따른 인코딩 장치의 블록 구성도이다.
도 10은 본 발명의 일 실시예에 따른 인코딩 방법의 순서도이다.1 is a conceptual diagram showing a condition-based map image in an embodiment of the present invention.
2 is a view showing a region for each level according to an embodiment of the present invention.
FIG. 3 is a diagram illustrating a city model area for each level that satisfies a first condition according to an embodiment of the present invention.
4 is a conceptual diagram illustrating tile information of a city model area for each level according to a first condition according to an embodiment of the present invention.
5 is a view showing an editable area for each level that satisfies a second condition according to an embodiment of the present invention.
6 is a conceptual diagram illustrating tile information of an editable area for each level according to a second condition according to an embodiment of the present invention.
7 is a view showing a region that satisfies a first condition and a second condition according to an embodiment of the present invention.
8 is a conceptual diagram illustrating tile information of a region according to a first condition and a second condition according to an embodiment of the present invention.
9 is a block diagram of an encoding device according to an embodiment of the present invention.
10 is a flowchart of an encoding method according to an embodiment of the present invention.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. The present invention can be applied to various changes and can have various embodiments, and specific embodiments will be illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the present invention to specific embodiments, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. In describing each drawing, similar reference numerals are used for similar components.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는 데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. "및/또는"이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. The terms first, second, A, B, etc. can be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from other components. For example, the first component may be referred to as a second component without departing from the scope of the present invention, and similarly, the second component may be referred to as a first component. The term "and/or" includes a combination of a plurality of related described items or any one of a plurality of related described items.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When an element is said to be "connected" to or "connected" to another component, it is understood that other components may be directly connected to or connected to the other component, but may exist in the middle. It should be. On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that no other component exists in the middle.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present application are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, terms such as “include” or “have” are intended to indicate that a feature, number, step, operation, component, part, or combination thereof described in the specification exists, one or more other features. It should be understood that the existence or addition possibilities of fields or numbers, steps, operations, components, parts or combinations thereof are not excluded in advance.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by a person skilled in the art to which the present invention pertains. Terms such as those defined in a commonly used dictionary should be interpreted as having meanings consistent with meanings in the context of related technologies, and should not be interpreted as ideal or excessively formal meanings unless explicitly defined in the present application. Does not.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다. 이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In order to facilitate the overall understanding in describing the present invention, the same reference numerals are used for the same components in the drawings, and duplicate descriptions for the same components are omitted. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 일 실시예에 조건 기반의 지도 이미지를 나타낸 개념도이다.1 is a conceptual diagram showing a condition-based map image in an embodiment of the present invention.
일반적으로 타일을 기반으로 제공되는 특정 공간 정보의 레벨은 20개 이하의 레벨로 구현될 수 있으며, 이들 각 레벨(수준)이 의미하는 바는 구현에 따라 달라질 수 있다. In general, the level of specific spatial information provided based on a tile may be implemented with 20 or less levels, and the meaning of each level (level) may vary depending on the implementation.
본 발명의 설명에서는 레벨 값이 작아질수록 상대적으로 구체적인 지도를 의미할 수 있으나, 구현 방법에 따라 레벨 값이 커질수록 더 구체적인 지도를 의미할 수도 있으므로, 이에 한정되는 것은 아니다.In the description of the present invention, the smaller the level value may mean a relatively specific map, but according to the implementation method, the larger the level value may mean, the more specific map is not limited thereto.
각 레벨에서 하나의 타일이 표현하는 크기는 사전에 정의된 크기에 따라 달라질 수 있으며, 특정 지도 레이어의 레벨 개수 및 특정 레벨에서의 타일이 표현하는 크기는 위성 영상 및 벡터 등과 같은 지도의 종류에 따라서도 달라질 수 있다.The size expressed by one tile in each level may vary according to a predefined size, and the number of levels of a specific map layer and the size expressed by a tile at a specific level may vary depending on the map type, such as satellite images and vectors. Can also be different.
도 1을 참조하면, 하나의 공간 정보 레이어는 복수의 레벨로 구성될 수 있으며, 각 레벨은 복수의 고정 크기 타일로 구성될 수 있다. 여기서, 대상 지역을 구체적으로 표현하는 레벨일 수록 그 레벨을 구성하는 타일의 개수가 기하급수적으로 증가할 수 있다. 하나의 특정 레벨 타일은 상대적으로 구체적인 공간 정보를 가시화하는 4개의 하위 레벨 타일로 표현될 수 있다.Referring to FIG. 1, one spatial information layer may be composed of a plurality of levels, and each level may be composed of a plurality of fixed size tiles. Here, the more specifically the level representing the target area, the number of tiles constituting the level may increase exponentially. One specific level tile may be represented by four lower level tiles that visualize relatively specific spatial information.
레벨별 타일의 구성은 각 레벨별 이미지 타일을 지정 또는 식별하기 위한 식별자(ID)가 부여될 수 있다. 예를 들어, 레벨 1 ~ 14로 구성된 레이어에서 레벨 1이 가로 5개 및 세로 4개(총 20개)의 이미지 타일로 구성된 경우, 레벨 2는 (5x2) x (4x2) = 80개의 타일로 구성될 수 있다. 이러한 계산을 레벨별로 적용하는 경우, 레벨 14는 (5x213) x (4x213) = 1,342,177,280개의 타일로 구성될 수 있다.The configuration of tiles for each level may be assigned an identifier (ID) for designating or identifying an image tile for each level. For example, in a layer composed of
특정 도시 지역에 대한 지형, 건물 및 도로 등의 다양한 형태의 공간정보 및 객체를 포함하는 도시 모델은 일반적으로 매우 큰 데이터량을 가질 수 있다. 따라서, 편집 및 가시화 등의 편의성을 위해 도시 모델은 상술한 바와 같은 타일 체계를 기반으로 제공될 수 있다. 여기서, 주어진 조건을 만족하는 도시 모델의 특정 영역이 구체적으로 어느 지역을 포함하는지를 간결하고 정확하게 표현하는 방법은 도시모델의 효율적 가시화 및 포함되는 공간정보 또는 객체의 편집 등을 위해 매우 중요할 수 있으며, 이는 각 구체화 수준(LoD, Level of Detail)에 따라 도시 모델의 영역에 대한 표현이 포함됨을 요구할 수 있다.Urban models that include various types of spatial information and objects, such as terrain, buildings, and roads for a particular urban area, can generally have very large amounts of data. Therefore, for convenience such as editing and visualization, the city model may be provided based on the tile system as described above. Here, a method of concisely and accurately expressing a specific region of a specific region of a city model that satisfies a given condition may be very important for efficient visualization of the city model and editing of spatial information or objects included therein, This may require that the representation of the area of the urban model is included according to each level of detail (LoD).
도 2는 본 발명의 일 실시예에 따른 레벨별 영역을 나타낸 도면이다.2 is a view showing a region for each level according to an embodiment of the present invention.
본 발명의 일 실시예에 따른 인코딩 장치는 복수의 조건을 기초로 지도 이미지 중 일부 영역을 인코딩할 수 있다. The encoding apparatus according to an embodiment of the present invention may encode some regions of a map image based on a plurality of conditions.
도 2를 참조하여, 설명의 편의를 위해 제1 조건은 해당 영역이 도시 모델 대상 영역인지이며, 제2 조건은 해당 영역이 편집 가능한 영역인지라고 가정한다. 여기서, 영역은 타일을 지칭할 수도 있다. 또한, 도 2의 (a)는 레벨 N에서의 타일이라 가정할 수 있으며, 도 2의 (b)는 도 2의 (a)보다 상대적으로 하위 레벨인 레벨 N+1이라 가정할 수 있고, 도 2의 (c)는 도 2의 (b)보다 상대적으로 하위 레벨인 N+2라 가정할 수 있다. 다시 말해, 도 2의 (b)는 도 2의 (a)보다 구체적이며, 도 2의 (c)는 도 2의 (b)보다 구체적인 지도라고 볼 수 있다. 여기서, N은 1 이상의 임의의 자연수를 의미할 수 있다. Referring to FIG. 2, for convenience of description, it is assumed that the first condition is whether the corresponding region is an urban model target region, and the second condition is whether the corresponding region is an editable region. Here, the area may refer to a tile. Also, FIG. 2(a) may be assumed to be a tile at level N, and FIG. 2(b) may be assumed to be a level N+1, which is a relatively lower level than FIG. 2(a), and 2(c) may be assumed to be N+2, which is a relatively lower level than FIG. 2(b). In other words, Fig. 2(b) is more specific than Fig. 2(a), and Fig. 2(c) can be regarded as a more specific map than Fig. 2(b). Here, N may mean any natural number of 1 or more.
각 타일은 레벨별로 최좌측 및 최상측을 기준으로 인덱스가 부여될 수 있다.Each tile may be indexed based on the leftmost and uppermost sides for each level.
지도에서 제1 조건을 만족하는 타일, 다시 말해, 도시 모델 대상 영역은 레벨에 따라 아래와 같이 나타낼 수 있다.Tiles satisfying the first condition on the map, that is, the target area of the city model may be represented as follows according to the level.
- 도시 모델 대상 영역-City model target area
(a) 레벨 N: (0,0), (0,1), (1,0), (1,1)(a) Level N: (0,0), (0,1), (1,0), (1,1)
(b) 레벨 N+1: (0,0), (0,1), (0,2), (0,3), (1,0), (1,1), (1,2), (1,3), (2,0), (2,1), (2,2), (2,3), (3,0), (3,1), (3,2), (3,3)(b) Level N+1: (0,0), (0,1), (0,2), (0,3), (1,0), (1,1), (1,2), (1,3), (2,0), (2,1), (2,2), (2,3), (3,0), (3,1), (3,2), (3 ,3)
(c) 레벨 N+2: (1,1), (1,2), (1,3), (1,4), (1,5), (1,6), (2,1), (2,2), (2,3), (2,4), (2,5), (2,6), (3,1), (3,2), (3,3), (3,4), (3,5), (3,6), (4,1), (4,2), (4,3), (4,4), (4,5), (4,6), (5,1), (5,2), (5,3), (5,4), (5,5), (6,1), (6,2), (6,3), (6,4), (6,5), (6,6)(c) Level N+2: (1,1), (1,2), (1,3), (1,4), (1,5), (1,6), (2,1), (2,2), (2,3), (2,4), (2,5), (2,6), (3,1), (3,2), (3,3), (3 ,4), (3,5), (3,6), (4,1), (4,2), (4,3), (4,4), (4,5), (4,6 ), (5,1), (5,2), (5,3), (5,4), (5,5), (6,1), (6,2), (6,3), (6,4), (6,5), (6,6)
지도에서 제2 조건을 만족하는 타일, 다시 말해, 편집 가능한 영역은 레벨에 따라 아래와 같이 나타낼 수 있다.Tiles satisfying the second condition on the map, that is, the editable area may be represented as follows according to the level.
- 편집 가능한 영역-Editable area
(a) 레벨 N: (0,0), (1,0), (1,1)(a) Level N: (0,0), (1,0), (1,1)
(b) 레벨 N+1: (1,0), (1,1), (2,0), (2,1), (2,2)(b) Level N+1: (1,0), (1,1), (2,0), (2,1), (2,2)
(c) 레벨 N+2: (3,1), (3,2), (3,3), (4,1), (4,2), (4,3), (4,4), (5,1), (5,2), (5,3), (5,4)(c) Level N+2: (3,1), (3,2), (3,3), (4,1), (4,2), (4,3), (4,4), (5,1), (5,2), (5,3), (5,4)
본 발명의 일 실시예는 상술한 바와 같은 복수의 조건을 기초로 레벨별 타일을 이용하여 한 번에 계층적으로 나타낼 수 있으며, 이를 기초로 지도 이미지 중 조건을 만족하는 영역만을 효과적으로 인코딩할 수 있다. 다시 말해, 기존 방법들은 레벨이 많아질수록 타일의 개수가 기하급수적으로 증가함에 따라 데이터량의 문제로 인해 인코딩에 어려움이 존재하였으나, 본 발명의 일 실시예는 타일의 개수가 기하급수적으로 증가하여도 컴팩트하게 표현하여 효과적으로 인코딩할 수 있다. 이에 대한 상세한 설명은 도 3 내지 8과 함께 후술하겠다.One embodiment of the present invention can be hierarchically represented at a time using tiles for each level based on a plurality of conditions as described above, and based on this, only a region that satisfies the condition can be effectively encoded. . In other words, existing methods have difficulty in encoding due to the problem of the amount of data as the number of tiles increases exponentially as the level increases, but in one embodiment of the present invention, the number of tiles increases exponentially It can also be compactly expressed and encoded effectively. A detailed description thereof will be described later with reference to FIGS. 3 to 8.
도 3은 본 발명의 일 실시예에 따른 제1 조건을 만족하는 레벨별 도시 모델 영역을 나타낸 도면이다.FIG. 3 is a diagram illustrating a city model area for each level that satisfies a first condition according to an embodiment of the present invention.
도 3에서는 설명의 편의를 위해 제1 조건만이 존재하는 경우를 예로 들어 설명하겠다.In FIG. 3, for convenience of description, a case where only the first condition exists will be described as an example.
도 3을 참조하면, 본 발명의 일 실시예에 따른 인코딩 장치는 레벨별로 도시 모델 대상 영역을 포함하는 타일을 판단할 수 있으며, 이를 기초로 레벨별 타일 정보를 생성할 수 있다. 여기서, 제1 조건에 따른 도시 모델 대상 영역을 미리 정해진 영역으로 지칭할 수 있다.Referring to FIG. 3, the encoding apparatus according to an embodiment of the present invention may determine a tile including a city model target area for each level, and generate tile information for each level based on this. Here, the city model target area according to the first condition may be referred to as a predetermined area.
레벨별 타일 정보는 타일 전체가 미리 정해진 영역을 포함하는 경우 타일의 유형을 점유로 보아 Y(Yes)를 나타낼 수 있고, 타일 전체가 미리 정해진 영역을 포함하지 않는 경우 타일의 유형을 비점유로 보아 N(No)를 나타낼 수 있고, 타일의 일부가 미리 정해진 영역을 포함하는 경우 타일의 유형을 일부 점유로 보아 P(Partially yes)로 나타낼 수 있다. 또한, 레벨별 타일 정보는 타일에 대한 레벨 정보를 더 포함할 수 있다.The tile information for each level may indicate Y(Yes) by occupying the type of the tile when the entire tile includes a predetermined area, and when the entire tile does not include the predetermined area, the tile type is regarded as non-occupying N (No) may be represented, and when a part of the tile includes a predetermined area, the type of the tile may be represented as P (Partially yes). Further, the tile information for each level may further include level information for the tile.
도 3과 같이 타일에 도시 모델 영역이 존재하는 경우, 레벨별 타일 정보에 대한 상세한 설명은 도 4와 함께 후술하겠다.When an urban model area exists on a tile as shown in FIG. 3, detailed description of tile information for each level will be described later with reference to FIG. 4.
도 4는 본 발명의 일 실시예에 따른 제1 조건에 따른 레벨별 도시 모델의 타일 정보를 나타낸 개념도이다.4 is a conceptual diagram illustrating tile information of a city model for each level according to a first condition according to an embodiment of the present invention.
도 3의 (a)의 (0, 0), (0, 1), (1, 0) 및 (1, 1) 타일은 서로 동일한 방식에 따라 레벨별 타일 정보를 생성할 수 있으므로, (0, 0) 타일을 예로 들어 설명하겠다.Since (0, 0), (0, 1), (1, 0), and (1, 1) tiles of (a) of FIG. 3 can generate tile information for each level according to the same method, (0, 0) Tiles will be used as an example.
도 4를 참조하면, 도 3의 (a)에서 레벨 N의 (0, 0) 타일은 제1 조건에 따른 도시 모델 영역을 일부 포함하고 있으므로, 쿼드 트리에 따라 하위 레벨의 4개의 타일로 분할될 수 있다. 다시 말해, 레벨 N의 (0, 0) 타일은 도 3의 (b)와 같이, 레벨 N+1의 (0, 0), (0, 1), (1, 0) 및 (1, 1)로 분할될 수 있다.Referring to FIG. 4, in (a) of FIG. 3, the (0, 0) tile of level N includes a part of the city model area according to the first condition, and thus is divided into four tiles of lower level according to the quad tree. Can be. In other words, the (0, 0) tile of level N is (0, 0), (0, 1), (1, 0) and (1, 1) of level N+1, as shown in Fig. 3(b). Can be divided into
여기서, 레벨 N+1의 (0, 0), (0, 1) 및 (1, 0) 타일은 제1 조건에 따른 도시 모델 영역을 일부 포함하고 있고, (1, 1) 타일은 전체가 제1 조건에 따른 모델 영역을 포함하고 있으므로, 레벨 N+1의 (0, 0), (0, 1), (1, 0) 및 (1, 1) 타일은 각각 P, P, P 및 Y로 판단될 수 있다. 이에 따라 레벨 N의 (0, 0) 타일의 타일 정보는 (P, P, P, Y)를 나타낼 수 있다.Here, the (0, 0), (0, 1), and (1, 0) tiles of the level N+1 partially include a city model area according to the first condition, and the (1, 1) tiles are entirely excluded. Since it contains the model region according to the
레벨 N+1의 (0, 0), (0, 1) 및 (1, 0) 타일은 P로 판단되었으므로, 쿼드 트리에 따라 하위 레벨의 4개의 타일로 다시 분할될 수 있으며, (1, 1) 타일은 Y로 판단되었으므로, 추가 분할되지 않을 수 있다. 이는 타일이 Y 또는 N올 판단된 경우, 4개의 하위 레벨의 타일로 분할하여도 모두 동일한 Y 또는 N으로 판단되기 때문이다. 따라서, 본 발명의 일 실시예는 불필요한 분할 및 데이터를 생략함으로써 전체 데이터량을 줄일 수 있다. 도 3에서 레벨 N+1의 (1, 1)에 대한 타일 정보가 (Y, Y, Y, Y)인 점은 이를 설명하기 위해 도시된 것으로, 실제 타일 정보에서는 생략될 수 있다.Since the (0, 0), (0, 1), and (1, 0) tiles of level N+1 were determined to be P, they can be subdivided into 4 tiles of lower levels according to the quad tree, and (1, 1) ) Since the tile is determined to be Y, it may not be further divided. This is because when tiles are determined to be Y or N, even if they are divided into tiles of four lower levels, they are all judged to be the same Y or N. Accordingly, an embodiment of the present invention can reduce the total amount of data by omitting unnecessary partitioning and data. In FIG. 3, the point that the tile information for (1, 1) of level N+1 is (Y, Y, Y, Y) is illustrated to illustrate this, and may be omitted from actual tile information.
레벨 N+1의 (0, 0) 타일은 다시 하위 레벨의 4개의 타일로 분할될 수 있다. 다시 말해, 레벨 N+1의 (0, 0) 타일은 레벨 N+2의 (0, 0), (0, 1), (1, 0) 및 (1, 1) 타일로 분할될 수 있다. 여기서, 레벨 N+2의 (0, 0), (0, 1) 및 (1, 0) 타일은 제1 조건에 따른 도시 모델 영역을 포함하고 있지 않으며, (1, 1) 타일은 제1 조건에 따른 모델 영역을 일부 포함하고 있으므로, 레벨 N+2의 (0, 0), (0, 1), (1, 0) 및 (1, 1) 타일은 각각 N, N, N 및 P로 판단될 수 있다. 이에 따라 레벨 N+1의 (0, 0) 타일의 타일 정보는 (N, N, N, P)를 나타낼 수 있다.The (0, 0) tile of level N+1 may be divided into 4 tiles of lower level again. In other words, the (0, 0) tile of level N+1 may be divided into (0, 0), (0, 1), (1, 0) and (1, 1) tiles of level N+2. Here, the (0, 0), (0, 1), and (1, 0) tiles of the level N+2 do not include the city model area according to the first condition, and the (1, 1) tile is the first condition Since it includes some model areas according to, the (0, 0), (0, 1), (1, 0), and (1, 1) tiles of level N+2 are judged as N, N, N, and P, respectively. Can be. Accordingly, tile information of the (0, 0) tile of level N+1 may indicate (N, N, N, P).
레벨 N+2의 (1, 1) 타일은 P로 판단되었으므로, 쿼드 트리에 따라 하위 레벨의 4개의 타일로 다시 분할될 수 있으며, (0, 0), (0, 1) 및 (1, 0) 타일은 N으로 판단되었으므로, 추가 분할되지 않을 수 있다. 이는 상술한 바와 같이 불필요한 분할 및 데이터를 생략함으로써 전체 데이터량을 줄이기 위한 것이다.Since the (1, 1) tile of level N+2 was judged as P, it can be subdivided into 4 tiles of the lower level according to the quad tree, and (0, 0), (0, 1), and (1, 0) ) Since the tile was determined to be N, it may not be further divided. This is to reduce the total data amount by omitting unnecessary division and data as described above.
다시 말해, 본 발명의 일 실시예는 각 타일이 Y 및 N인 경우, 분할을 수행하지 않을 수 있으며, P인 경우에만 분할을 수행할 수 있다. In other words, in an embodiment of the present invention, when each tile is Y and N, division may not be performed, and division may be performed only in the case of P.
도 5는 본 발명의 일 실시예에 따른 제2 조건을 만족하는 레벨별 편집 가능한 영역을 나타낸 도면이다.5 is a view showing an editable area for each level that satisfies a second condition according to an embodiment of the present invention.
도 5에서는 설명의 편의를 위해 제2 조건만이 존재하는 경우를 예로 들어 설명하겠다.In FIG. 5, for convenience of description, a case in which only the second condition exists will be described as an example.
도 5를 참조하면, 본 발명의 일 실시예에 따른 인코딩 장치는 레벨별로 편집 가능한 영역을 포함하는 타일을 판단할 수 있으며, 이를 기초로 레벨별 타일 정보를 생성할 수 있다. 여기서, 제2 조건에 따른 편집 가능한 영역을 미리 정해진 영역으로 지칭할 수 있다.Referring to FIG. 5, the encoding apparatus according to an embodiment of the present invention may determine a tile including an editable region for each level, and generate tile information for each level based on this. Here, the editable region according to the second condition may be referred to as a predetermined region.
레벨별 타일 정보는 타일 전체가 미리 정해진 영역을 포함하는 경우 타일의 유형을 점유로 보아 Y(Yes)를 나타낼 수 있고, 타일 전체가 미리 정해진 영역을 포함하지 않는 경우 타일의 유형을 비점유로 보아 N(No)를 나타낼 수 있고, 타일의 일부가 미리 정해진 영역을 포함하는 경우 타일의 유형을 일부 점유로 보아 P(Partially yes)로 나타낼 수 있다. 또한, 레벨별 타일 정보는 타일에 대한 레벨 정보를 더 포함할 수 있다.The tile information for each level may indicate Y(Yes) by occupying the type of the tile when the entire tile includes a predetermined area, and when the entire tile does not include the predetermined area, the tile type is regarded as non-occupying N (No) may be represented, and when a part of the tile includes a predetermined area, the type of the tile may be represented as P (Partially yes). Further, the tile information for each level may further include level information for the tile.
도 5와 같이 타일에 편집 가능한 영역이 존재하는 경우, 레벨별 타일 정보에 대한 상세한 설명은 도 6과 함께 후술하겠다.When an editable area exists in a tile as shown in FIG. 5, detailed description of tile information for each level will be described later with reference to FIG. 6.
도 6은 본 발명의 일 실시예에 따른 제2 조건에 따른 레벨별 편집 가능한 영역의 타일 정보를 나타낸 개념도이다.6 is a conceptual diagram illustrating tile information of an editable area for each level according to a second condition according to an embodiment of the present invention.
도 5의 (a)의 (0, 0), (0, 1), (1, 0) 및 (1, 1) 타일은 서로 동일한 방식에 따라 레벨별 타일 정보를 생성할 수 있으므로, (0, 0) 타일을 예로 들어 설명하겠다.The (0, 0), (0, 1), (1, 0), and (1, 1) tiles of FIG. 5(a) can generate tile information for each level according to the same method, so that (0, 0) Tiles will be used as an example.
도 6을 참조하면, 도 5의 (a)에서 레벨 N의 (0, 0) 타일은 제2 조건에 따른 편집 가능한 영역을 일부 포함하고 있으므로, 쿼드 트리에 따라 하위 레벨의 4개의 타일로 분할될 수 있다. 다시 말해, 레벨 N의 (0, 0) 타일은 도 5의 (b)와 같이, 레벨 N+1의 (0, 0), (0, 1), (1, 0) 및 (1, 1)로 분할될 수 있다.Referring to FIG. 6, in (a) of FIG. 5, since the (0, 0) tile of level N includes some editable regions according to the second condition, it can be divided into four tiles of lower levels according to the quad tree. Can be. In other words, the (0, 0) tile of level N is (0, 0), (0, 1), (1, 0) and (1, 1) of level N+1, as shown in FIG. 5 (b). Can be divided into
여기서, 레벨 N+1의 (1, 0) 및 (1, 1) 타일은 제2 조건에 따른 편집 가능한 영역을 일부 포함하고 있고, (0, 0) 및 (0, 1) 타일은 전체가 제2 조건에 따른 편집 가능한 영역을 포함하고 있지 않으므로, 레벨 N+1의 (0, 0), (0, 1), (1, 0) 및 (1, 1) 타일은 각각 N, N, P 및 P로 판단될 수 있다. 이에 따라 레벨 N의 (0, 0) 타일의 타일 정보는 (N, N, P, P)를 나타낼 수 있다.Here, the (1, 0) and (1, 1) tiles of the level N+1 partially include an editable area according to the second condition, and the (0, 0) and (0, 1) tiles are entirely excluded. 2 Since it does not contain the editable region according to the condition, the (0, 0), (0, 1), (1, 0) and (1, 1) tiles of level N+1 are N, N, P and It can be determined as P. Accordingly, tile information of the (0, 0) tile of level N may indicate (N, N, P, P).
레벨 N+1의 (1, 0) 및 (1, 1) 타일은 P로 판단되었으므로, 쿼드 트리에 따라 하위 레벨의 4개의 타일로 다시 분할될 수 있으며, (0, 0) 및 (0, 1) 타일은 N으로 판단되었으므로, 추가 분할되지 않을 수 있다. Since the (1, 0) and (1, 1) tiles of level N+1 were determined to be P, they can be subdivided into 4 tiles of lower levels according to the quad tree, and (0, 0) and (0, 1) ) Since the tile was determined to be N, it may not be further divided.
레벨 N+1의 (1, 0) 타일은 다시 하위 레벨의 4개의 타일로 분할될 수 있다. 다시 말해, 레벨 N+1의 (1, 0) 타일은 레벨 N+2의 (2, 0), (2, 1), (3, 0) 및 (3, 1) 타일로 분할될 수 있다. 여기서, 레벨 N+2의 (2, 0), (2, 1) 및 (3, 0) 타일은 제2 조건에 따른 편집 가능한 영역을 포함하고 있지 않으며, (3, 1) 타일은 제2 조건에 따른 편집 가능한 영역을 일부 포함하고 있으므로, 레벨 N+2의 (2, 0), (2, 1), (3, 0) 및 (3, 1) 타일은 각각 N, N, N 및 P로 판단될 수 있다. 이에 따라 레벨 N+1의 (1, 0) 타일의 타일 정보는 (N, N, N, P)를 나타낼 수 있다.The (1, 0) tile of level N+1 may be divided into 4 tiles of lower level again. In other words, the (1, 0) tile of level N+1 may be divided into (2, 0), (2, 1), (3, 0) and (3, 1) tiles of level N+2. Here, the (2, 0), (2, 1), and (3, 0) tiles of the level N+2 do not include the editable area according to the second condition, and the (3, 1) tile is the second condition (2, 0), (2, 1), (3, 0), and (3, 1) tiles of level N+2, respectively, as N, N, N, and P. Can be judged. Accordingly, tile information of the (1, 0) tile of level N+1 may indicate (N, N, N, P).
레벨 N+2의 (3, 1) 타일은 P로 판단되었으므로, 쿼드 트리에 따라 하위 레벨의 4개의 타일로 다시 분할될 수 있으며, (2, 0), (2, 1) 및 (3, 0) 타일은 N으로 판단되었으므로, 추가 분할되지 않을 수 있다. 이는 상술한 바와 같이 불필요한 분할 및 데이터를 생략함으로써 전체 데이터량을 줄이기 위한 것이다.Since the (3, 1) tile of level N+2 was judged as P, it can be subdivided into 4 tiles of lower level according to the quad tree, and (2, 0), (2, 1), and (3, 0) ) Since the tile was determined to be N, it may not be further divided. This is to reduce the total data amount by omitting unnecessary division and data as described above.
다시 말해, 본 발명의 일 실시예는 각 타일이 Y 및 N인 경우, 분할을 수행하지 않을 수 있으며, P인 경우에만 분할을 수행할 수 있다. In other words, in an embodiment of the present invention, when each tile is Y and N, division may not be performed, and division may be performed only in the case of P.
도 7은 본 발명의 일 실시예에 따른 제1 조건 및 제2 조건을 만족하는 영역을 나타낸 도면이다.7 is a view showing a region that satisfies a first condition and a second condition according to an embodiment of the present invention.
도 7은 도 3 및 도 5에 따른 제1 조건 및 제2 조건이 함께 존재하는 경우를 나타낸 것이다. 본 발명의 일 실시예는 복수의 조건을 기초로 영역에 대한 타일 정보를 나타낼 수도 있다.7 shows a case where the first condition and the second condition according to FIGS. 3 and 5 are present together. One embodiment of the present invention may indicate tile information for an area based on a plurality of conditions.
도 7을 참조하면, 본 발명의 일 실시예에 따른 인코딩 장치는 레벨별로 도시 모델 영역 및 편집 가능한 영역을 포함하는 타일을 각각 판단할 수 있으며, 이를 기초로 레벨별 타일 정보를 생성할 수 있다. 여기서, 제1 조건에 따른 도시 모델 대상 영역 및 제2 조건에 따른 편집 가능한 영역은 복수의 미리 정해진 영역으로 지칭할 수 있다.Referring to FIG. 7, the encoding apparatus according to an embodiment of the present invention may determine tiles each including a city model area and an editable area for each level, and generate tile information for each level based on this. Here, the city model target area according to the first condition and the editable area according to the second condition may be referred to as a plurality of predetermined areas.
레벨별 타일 정보는 타일 전체가 미리 정해진 영역을 포함하는 경우 타일의 유형을 점유로 보아 Y(Yes)를 나타낼 수 있고, 타일 전체가 미리 정해진 영역을 포함하지 않는 경우 타일의 유형을 비점유로 보아 N(No)를 나타낼 수 있고, 타일의 일부가 미리 정해진 영역을 포함하는 경우 타일의 유형을 일부 점유로 보아 P(Partially yes)로 나타낼 수 있다. 또한, 레벨별 타일 정보는 타일에 대한 레벨 정보를 더 포함할 수 있다.The tile information for each level may indicate Y(Yes) by occupying the type of the tile when the entire tile includes a predetermined area, and when the entire tile does not include the predetermined area, the tile type is regarded as non-occupying N (No) may be represented, and when a part of the tile includes a predetermined area, the type of the tile may be represented as P (Partially yes). Further, the tile information for each level may further include level information for the tile.
여기서, 레벨별 타일 정보 및 타일의 유형은 복수의 미리 정해진 영역 각각에 대하여 개별적으로 결정될 수 있다.Here, the tile information for each level and the tile type may be individually determined for each of a plurality of predetermined areas.
복수의 조건 하의 레벨별 타일 정보에 대한 상세한 설명은 도 8과 함께 후술하겠다.Detailed description of tile information for each level under a plurality of conditions will be described later with reference to FIG. 8.
도 8은 본 발명의 일 실시예에 따른 제1 조건 및 제2 조건에 따른 영역의 타일 정보를 나타낸 개념도이다.8 is a conceptual diagram illustrating tile information of a region according to a first condition and a second condition according to an embodiment of the present invention.
도 7의 (a)의 (0, 0), (0, 1), (1, 0) 및 (1, 1) 타일은 서로 동일한 방식에 따라 레벨별 타일 정보를 생성할 수 있으므로, (0, 0) 타일을 예로 들어 설명하겠다.Since (0, 0), (0, 1), (1, 0), and (1, 1) tiles of (a) of FIG. 7 can generate tile information for each level according to the same method, (0, 0) Tiles will be used as an example.
도 8을 참조하면, 도 7의 (a)에서 레벨 N의 (0, 0) 타일은 제1 조건 및 제2 조건에 따른 영역을 일부 포함하고 있으므로, 쿼드 트리에 따라 하위 레벨의 4개의 타일로 분할될 수 있다. 다시 말해, 레벨 N의 (0, 0) 타일은 도 7의 (b)와 같이, 레벨 N+1의 (0, 0), (0, 1), (1, 0) 및 (1, 1) 타일로 분할될 수 있다.Referring to FIG. 8, in (a) of FIG. 7, the (0, 0) tile of level N includes some areas according to the first condition and the second condition, and thus, as four tiles of the lower level according to the quad tree Can be divided. In other words, the (0, 0) tile of level N is (0, 0), (0, 1), (1, 0) and (1, 1) of level N+1, as shown in FIG. 7 (b). Can be divided into tiles.
여기서, 레벨 N+1의 (0, 0) 및 (0, 1) 타일은 제1 조건에 따른 영역을 일부 포함하고 있으며, 제2 조건에 따른 영역은 포함하고 있지 않을 수 있다. 또한, (1, 0) 타일은 제1 조건 및 제2 조건에 따른 영역을 일부 포함하고 있으며, (1, 1) 타일은 제1 조건에 따른 영역을 모두 포함하고 있고, 제2 조건에 따른 영역을 일부 포함하고 있을 수 있다. 이에 따라 레벨 N+1의 (0, 0), (0, 1), (1, 0) 및 (1, 1) 타일은 제1 조건에 대하여 P, P, P 및 Y로, 제2 조건에 대하여 N, N, P 및 P로 판단될 수 있다. 이에 따라 레벨 N의 (0, 0) 타일의 타일 정보는 (P, P, P, Y; N, N, P, P)를 나타낼 수 있다.Here, the (0, 0) and (0, 1) tiles of level N+1 partially include an area according to the first condition, and may not include an area according to the second condition. In addition, the (1, 0) tile includes a region according to the first condition and the second condition, and the (1, 1) tile includes all regions according to the first condition, and the region according to the second condition It may contain some. Accordingly, the (0, 0), (0, 1), (1, 0) and (1, 1) tiles of level N+1 are P, P, P and Y for the first condition, and the second condition For N, N, P and P. Accordingly, tile information of the (0, 0) tile of the level N may indicate (P, P, P, Y; N, N, P, P).
레벨 N+1의 (0, 0) 및 (0, 1) 타일은 제2 조건하에서 N로 판단되었으나, 제1 조건하에서 P로 판단되었으므로, 쿼드 트리에 따라 하위 레벨의 4개의 타일로 다시 분할될 수 있다.The (0, 0) and (0, 1) tiles of level N+1 were determined to be N under the second condition, but were determined to be P under the first condition, and thus, to be divided into four tiles of the lower level according to the quad tree. Can be.
레벨 N+1의 (1, 0) 타일은 제1 조건 및 제2 조건하에서 모두 P로 판단되었으므로, 쿼드 트리에 따라 하위 레벨의 4개의 타일로 다시 분할될 수 있다.The (1, 0) tile of level N+1 was determined to be P under both the first condition and the second condition, and thus can be divided into four tiles of the lower level according to the quad tree.
레벨 N+1의 (1, 1) 타일은 제1 조건하에서 Y로 판단되었으나, 제2 조건하에서 P로 판단되었으므로, 쿼드 트리에 따라 하위 레벨의 4개의 타일로 다시 분할될 수 있다.The (1, 1) tile of level N+1 was determined to be Y under the first condition, but was determined to be P under the second condition, and thus can be divided into four tiles of the lower level according to the quad tree.
다시 말해, 복수의 조건이 존재하는 경우, 각 타일은 적어도 하나의 조건이 P로 판단된 경우, 쿼드 트리에 따라 하위 레벨의 4개의 타일로 다시 분할될 수 있다.In other words, when a plurality of conditions exist, each tile may be divided into four tiles of a lower level according to a quad tree when at least one condition is determined to be P.
이후, 상술한 과정에 따라 적어도 하나의 조건이 P인 타일은 미리 설정된 최하위 레벨까지 계속 분할될 수 있으며, 모든 조건이 Y 또는 N인 타일은 더 이상 분할을 수행하지 않을 수 있다.Thereafter, according to the above-described process, the tile having at least one condition P may continue to be divided up to the lowest level set in advance, and the tile having all the conditions Y or N may no longer perform the division.
본 발명의 설명에서 도 8과 같이 조건에 따라 판단된 특정 레벨의 특정 타일을 하나의 노드로 지칭할 수 있으며, 각 노드는 P로 판단된 정보가 존재하는 경우, 하위 노드로의 링크가 존재할 수 있다. 또한, 각 노드에서의 정보는 조건의 종류에 따라 상호 의존 관계를 가질 수도 있다.In the description of the present invention, a specific tile of a specific level determined according to a condition as illustrated in FIG. 8 may be referred to as one node, and when information determined as P exists in each node, a link to a lower node may exist. have. Also, information at each node may have a mutual dependency relationship according to the type of condition.
본 발명의 일 실시예는 상술한 과정에 따라 불필요한 데이터를 생략하고 조건을 만족하는 타일만을 인코딩하는 경우, 최상위 레벨의 번호, 최하위 레벨의 번호, 최상위 레벨의 타일 크기, 최상위 레벨의 각 타일에 쿼드 트리로 분할된 하위 타일이 존재하는지 여부, 각 레벨별 노드의 개수 및 각 노드에서의 하위 노드 링크 정보 중 적어도 하나를 포함하는 인코딩 기본 정보와 상기 레벨별 타일 정보를 이용할 수 있으며, 이에 따라 인코딩 시 생략으로 인해 발생할 수 있는 디코딩 시 오류를 방지할 수 있다.According to an embodiment of the present invention, when unnecessary data is omitted according to the above-described process and only tiles satisfying the conditions are encoded, the highest level number, the lowest level number, the highest level tile size, and the highest level tile are quads Whether there are sub-tiles divided into a tree, number of nodes for each level, and encoding basic information including at least one of link information for each node in each node and tile information for each level may be used. It is possible to prevent errors in decoding that may occur due to omission.
또한, 본 발명의 일 실시예는 상술한 과정에 따라 쿼드 트리 형태로 데이터가 구축 및 최적화 된 경우, 일부 중복되는 타일 정보를 병합하여 인코딩함으로써 효율을 극대화할 수도 있으나, 이에 한정되는 것은 아니다.In addition, according to an embodiment of the present invention, when data is constructed and optimized in the form of a quad tree according to the above-described process, some overlapping tile information may be merged and encoded to maximize efficiency, but is not limited thereto.
도 9는 본 발명의 일 실시예에 따른 인코딩 장치의 블록 구성도이다.9 is a block diagram of an encoding device according to an embodiment of the present invention.
도 9를 참조하면, 본 발명의 일 실시예에 따른 인코딩 장치(900)는 적어도 하나의 프로세서(910), 메모리(920) 및 저장 장치(930)를 포함할 수 있다.Referring to FIG. 9, an
프로세서(910)는 메모리(920) 및/또는 저장 장치(930)에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(910)는 중앙 처리 장치(CPU, Central Processing Unit), 그래픽 처리 장치(GPU, Graphics Processing Unit) 또는 본 발명에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(920)와 저장 장치(930)는 휘발성 저장 매체 및/또는 비휘발성 저장 매체로 구성될 수 있다. 예를 들어, 메모리(920)는 읽기 전용 메모리(ROM, Read Only Memory) 및/또는 랜덤 액세스 메모리(RAM, Random Access Memory)로 구성될 수 있다.The
메모리(920)는 프로세서(910)를 통해 실행되는 적어도 하나의 명령을 저장하고 있을 수 있다. 적어도 하나의 명령은 복수의 타일을 각각 분할 대상 타일로 설정하는 명령, 분할 대상 타일을 쿼드 트리에 따라 분할 대상 타일보다 하위 레벨의 복수의 타일로 분할하는 분할 명령, 하위 레벨의 복수의 타일에 대하여 타일의 유형을 기초로 레벨별 타일 정보를 생성하는 타일 정보 생성 명령, 하위 레벨의 복수의 타일 중 타일의 유형이 일부 점유인 적어도 하나의 타일 각각이 분할 중단 조건을 만족할 때까지 적어도 하나의 타일 각각을 분할 대상 타일로 설정하여 분할 명령 및 타일 정보 생성 명령을 반복 수행하는 명령 및 생성된 적어도 하나의 레벨별 타일 정보를 기초로 타일의 유형이 점유 및 일부 점유인 적어도 하나의 타일을 인코딩하는 명령을 포함할 수 있다.The
여기서, 적어도 하나의 명령은, 최상위 레벨의 번호, 최하위 레벨의 번호, 최상위 레벨의 타일 크기, 최상위 레벨의 각 타일에 쿼드 트리로 분할된 하위 타일이 존재하는지 여부, 각 레벨별 노드의 개수 및 각 노드에서의 하위 노드 링크 정보 중 적어도 하나를 포함하는 인코딩 기본 정보와 상기 레벨별 타일 정보를 기초로 타일의 유형이 점유 및 일부 점유인 적어도 하나의 타일을 인코딩하는 명령을 더 포함할 수 있다.Here, at least one command includes the number of nodes for each level, the number of the top level number, the number of the lowest level, the tile size of the top level, and whether there are sub-tiles divided into quad trees in each tile of the top level. Based on the encoding basic information including at least one of sub-node link information at the node and the tile information for each level, a command for encoding at least one tile having a type of occupied and partially occupied may be further included.
여기서, 레벨별 타일 정보는, 하위 레벨의 복수의 타일 각각에 대한 타일의 유형에 대한 정보 및 하위 레벨의 복수의 타일에 대한 레벨 정보를 포함할 수 있고, 분할 중단 조건은, 타일의 유형이 일부 점유인 적어도 하나의 타일이 미리 설정된 최하위 레벨인 경우 및 타일의 유형이 일부 점유인 적어도 하나의 타일이 존재하지 않는 경우 중 적어도 하나를 포함할 수 있다.Here, the tile information for each level may include information about a type of a tile for each of a plurality of tiles of a lower level and level information for a plurality of tiles of a lower level, and the partitioning interruption condition may include some types of tiles. It may include at least one of the case where at least one tile occupied is a preset lowest level and the type of tile does not exist at least one tile occupied partially.
여기서, 타일의 유형은, 해당 타일이 미리 정해진 영역을 포함하지 않는 비점유, 해당 타일의 일부가 미리 정해진 영역을 포함하는 일부 점유 및 해당 타일 전체가 미리 정해진 영역을 포함하는 점유 중 어느 하나를 포함할 수 있으며, 타일의 유형은, 미리 정해진 영역이 복수인 경우, 해당 타일에 대하여 미리 정해진 영역마다 개별적으로 결정될 수 있고, 하위 레벨의 복수의 타일은, 레벨별 최상측 타일 및 최좌측 타일을 기준으로 개별적인 인덱스가 부여될 수 있다.Here, the type of the tile includes any one of non-occupancy in which the corresponding tile does not include a predetermined area, partial occupancy in which a part of the tile includes a predetermined area, and occupancy in which the entire tile includes a predetermined area. The tile type may be individually determined for each predetermined region for a corresponding tile when a plurality of predetermined regions are provided, and a plurality of tiles of a lower level are based on the topmost tile and the leftmost tile for each level. Individual indexes can be assigned.
도 10은 본 발명의 일 실시예에 따른 인코딩 방법의 순서도이다.10 is a flowchart of an encoding method according to an embodiment of the present invention.
도 10을 참조하면, 본 발명의 일 실시예에 따른 인코딩 방법은 각 타일별로 동일한 과정을 통해 계층적인 타일 정보를 생성할 수 있으므로, 하나의 타일을 기준으로 설명하겠다.Referring to FIG. 10, since the encoding method according to an embodiment of the present invention can generate hierarchical tile information through the same process for each tile, it will be described based on one tile.
본 발명의 일 실시예는 우선, 하나의 타일을 쿼드 트리에 따라 분할하여 하위 레벨의 4개의 타일을 생성할 수 있다(S1010). 여기서, 각 타일은 최좌측 및 최상측을 기준으로 인덱스가 부여될 수 있다.According to an embodiment of the present invention, first, four tiles of a lower level may be generated by dividing one tile according to a quad tree (S1010 ). Here, each tile may be assigned an index based on the leftmost and uppermost sides.
본 발명의 일 실시예는 생성한 4개의 타일 중 타일의 유형이 일부 점유인 타일이 존재하는 지 판단할 수 있다(S1020). 여기서, 타일의 유형은 해당 타일이 미리 정해진 영역을 포함하지 않는 비점유, 해당 타일의 일부가 미리 정해진 영역을 포함하는 일부 점유 및 해당 타일 전체가 미리 정해진 영역을 포함하는 점유 중 어느 하나로 결정될 수 있다.According to an embodiment of the present invention, it is possible to determine whether there is a tile in which some types of tiles are occupied among the four tiles generated (S1020). Here, the type of the tile may be determined as one of non-occupancy in which the corresponding tile does not include a predetermined area, partial occupancy in which a part of the tile includes a predetermined area, and occupancy in which the entire tile includes a predetermined area. .
본 발명의 일 실시예는 4개의 타일 중 일부 점유인 타일이 존재하지 않는 것으로 판단한 경우, 레벨별 타일 정보를 기초로 타일의 유형이 점유인 타일을 인코딩할 수 있다(S1050). 다시 말해, 4개의 타일의 유형이 모두 점유이거나 비점유인 경우, 분할을 통해 하위 레벨의 타일을 생성하여도 모두 동일한 결과를 가지므로, 추가적인 분할을 수행하지 않을 수 있으며, 이에 따라 불필요한 데이터를 줄일 수 있다. 또한, 레벨별 타일 정보는 레벨별 타일에 대하여 타일의 유형이 점유인 경우 Y로, 비점유인 경우, N으로, 일부 점유인 경우, P로 나타낸 정보를 의미할 수 있다.According to an embodiment of the present invention, when it is determined that some of the four tiles do not exist, a tile having a type of tile may be encoded based on tile information for each level (S1050). In other words, if all four types of tiles are occupied or non-occupied, even if a lower-level tile is generated through partitioning, all of them have the same result, so additional partitioning may not be performed, thereby reducing unnecessary data. have. In addition, tile information for each level may refer to information represented by Y for a tile of each level, Y for non-occupancy, N for non-occupancy, and P for some occupancy.
본 발명의 일 실시예는 4개의 타일 중 일부 점유인 타일이 존재하는 것으로 판단한 경우, 해당 타일을 추출할 수 있으며(S1030), 추출한 타일을 쿼드 트리에 따라 분할하여 하위 레벨의 4개의 타일을 생성할 수 있다(S1040). 여기서, 하위 레벨은 상대적으로 하위인 레벨을 의미할 수 있으며, S1020 내지 S1040 단계가 반복될수록 낮은 레벨이 될 수 있다. 다만, 최하위 레벨은 미리 설정되어 있을 수 있으며, 이에 따라 반복 여부가 제한될 수도 있다.According to an embodiment of the present invention, when it is determined that a tile occupied by some of the 4 tiles exists, the corresponding tile may be extracted (S1030), and the extracted tiles are divided according to a quad tree to generate 4 tiles of a lower level. It can be done (S1040). Here, the lower level may mean a relatively lower level, and may be a lower level as steps S1020 to S1040 are repeated. However, the lowest level may be set in advance, and accordingly, repeatability may be limited.
본 발명의 일 실시예는 S1020 내지 S1040 단계의 반복을 통해 조건을 일부 만족하는 타일이 더 이상 존재하지 않는 경우, 현재까지 분할하여 생성된 레벨별 타일 정보를 기초로 타일의 유형이 점유 및 일부 점유인 타일을 인코딩할 수 있다(S1050). 다만, 본 발명의 일 실시예는 미리 설정된 최하위 레벨로 인해 반복 여부가 제한된 경우, 최하위 레벨까지의 타일 정보를 기초로 지도 이미지를 인코딩할 수도 있다.According to an embodiment of the present invention, when there is no longer a tile that partially satisfies the condition through the repetition of steps S1020 to S1040, the tile type is occupied and partially occupied based on tile information for each level generated by dividing up to now. The in tile may be encoded (S1050). However, according to an embodiment of the present invention, when repetition is limited due to a preset lowest level, a map image may be encoded based on tile information up to the lowest level.
본 발명의 일 실시예는 반복 중단 시기를 결정하기 위해 분할 중단 조건을 설정할 수 있으며, 분할 중단 조건은 상술한 바와 같이 타일의 유형이 일부 점유인 타일이 미리 설정된 최하위 레벨인 경우 및 타일의 유형이 일부 점유인 타일이 존재하지 않는 경우 중 적어도 하나를 포함할 수 있다.In one embodiment of the present invention, a division stop condition may be set to determine when to repeatedly stop, and the division stop condition may include a case where a tile having some occupancy of a tile has a predetermined lowest level and a tile type as described above. It may include at least one of the cases where some occupied tiles do not exist.
본 발명의 실시예에 따른 동작은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 프로그램 또는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산 방식으로 컴퓨터로 읽을 수 있는 프로그램 또는 코드가 저장되고 실행될 수 있다. The operation according to the embodiment of the present invention can be implemented as a computer-readable program or code on a computer-readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data readable by a computer system is stored. The computer-readable recording medium can also be distributed over network coupled computer systems so that the computer readable program or code is stored and executed in a distributed fashion.
또한, 컴퓨터가 읽을 수 있는 기록매체는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다. 프로그램 명령은 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다.In addition, the computer-readable recording medium may include a hardware device specially configured to store and execute program instructions, such as a ROM, a RAM, and a flash memory. Program instructions may include machine language codes such as those produced by a compiler, as well as high-level language codes that can be executed by a computer using an interpreter or the like.
본 발명의 일부 측면들은 장치의 문맥에서 설명되었으나, 그것은 상응하는 방법에 따른 설명 또한 나타낼 수 있고, 여기서 블록 또는 장치는 방법 단계 또는 방법 단계의 특징에 상응한다. 유사하게, 방법의 문맥에서 설명된 측면들은 또한 상응하는 블록 또는 아이템 또는 상응하는 장치의 특징으로 나타낼 수 있다. 방법 단계들의 몇몇 또는 전부는 예를 들어, 마이크로프로세서, 프로그램 가능한 컴퓨터 또는 전자 회로와 같은 하드웨어 장치에 의해(또는 이용하여) 수행될 수 있다. 몇몇의 실시예에서, 가장 중요한 방법 단계들의 하나 이상은 이와 같은 장치에 의해 수행될 수 있다. While some aspects of the invention have been described in the context of an apparatus, it can also represent a description according to a corresponding method, where a block or apparatus corresponds to a method step or a feature of a method step. Similarly, aspects described in the context of a method can also be represented by features of corresponding blocks or items or corresponding devices. Some or all of the method steps may be performed by (or using) a hardware device, such as, for example, a microprocessor, programmable computer, or electronic circuit. In some embodiments, one or more of the most important method steps may be performed by such an apparatus.
실시예들에서, 프로그램 가능한 로직 장치(예를 들어, 필드 프로그래머블 게이트 어레이)가 여기서 설명된 방법들의 기능의 일부 또는 전부를 수행하기 위해 사용될 수 있다. 실시예들에서, 필드 프로그래머블 게이트 어레이는 여기서 설명된 방법들 중 하나를 수행하기 위한 마이크로프로세서와 함께 작동할 수 있다. 일반적으로, 방법들은 어떤 하드웨어 장치에 의해 수행되는 것이 바람직하다.In embodiments, a programmable logic device (eg, field programmable gate array) can be used to perform some or all of the functionality of the methods described herein. In embodiments, the field programmable gate array may work with a microprocessor to perform one of the methods described herein. In general, the methods are preferably performed by some hardware device.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although described above with reference to preferred embodiments of the present invention, those skilled in the art variously modify and change the present invention without departing from the spirit and scope of the present invention as set forth in the claims below. You can understand that you can.
Claims (14)
상기 복수의 타일을 각각 분할 대상 타일로 설정하는 단계;
상기 분할 대상 타일을 쿼드 트리에 따라 상기 분할 대상 타일보다 하위 레벨의 복수의 타일로 분할하는 제1 단계;
상기 하위 레벨의 복수의 타일에 대하여 상기 타일의 유형을 기초로 레벨별 타일 정보를 생성하는 제2 단계;
상기 하위 레벨의 복수의 타일 중 상기 타일의 유형이 일부 점유인 적어도 하나의 타일 각각이 분할 중단 조건을 만족할 때까지 상기 적어도 하나의 타일 각각을 분할 대상 타일로 설정하여 상기 제1 단계 및 상기 제2 단계를 반복 수행하는 단계; 및
상기 생성된 적어도 하나의 레벨별 타일 정보를 기초로 상기 타일의 유형이 점유 및 일부 점유인 적어도 하나의 타일을 인코딩하는 단계를 포함하는, 인코딩 방법.A method of encoding at least one tile extracted based on a type of a tile from a map image including a plurality of tiles,
Setting each of the plurality of tiles as a target tile to be divided;
A first step of dividing the tile to be divided into a plurality of tiles at a lower level than the tile to be divided according to a quad tree;
A second step of generating tile information for each level based on the type of the tile for the plurality of tiles of the lower level;
The first step and the second are set by setting each of the at least one tile as a target tile to be divided until each of at least one tile of which the type of the tile is partially occupied among the plurality of tiles of the lower level satisfies a partitioning stop condition. Repeating the step; And
And encoding at least one tile of which the type of the tile is occupied and partially occupied based on the generated at least one level-specific tile information.
상기 레벨별 타일 정보는,
상기 하위 레벨의 복수의 타일 각각에 대한 상기 타일의 유형에 대한 정보 및 상기 하위 레벨의 복수의 타일에 대한 레벨 정보를 포함하는, 인코딩 방법.The method according to claim 1,
Tile information for each level,
And information on the type of the tile for each of the plurality of tiles in the lower level and level information on the plurality of tiles in the lower level.
상기 분할 중단 조건은,
상기 타일의 유형이 일부 점유인 적어도 하나의 타일이 미리 설정된 최하위 레벨인 경우 및 상기 타일의 유형이 일부 점유인 적어도 하나의 타일이 존재하지 않는 경우 중 적어도 하나를 포함하는, 인코딩 방법.The method according to claim 1,
The condition for stopping the division,
And at least one tile in which the type of the tile is partly occupied is a preset lowest level and at least one in which the type of the tile is partly occupied is not present.
상기 타일의 유형은,
해당 타일이 미리 정해진 영역을 포함하지 않는 비점유, 해당 타일의 일부가 미리 정해진 영역을 포함하는 일부 점유 및 해당 타일 전체가 미리 정해진 영역을 포함하는 점유 중 어느 하나를 포함하는, 인코딩 방법.The method according to claim 1,
The type of tile,
The method of encoding, wherein the tile includes any one of non-occupancy that does not include a predetermined region, a portion of the tile that occupies a predetermined region, and an entire portion of the tile that includes a predetermined region.
상기 타일의 유형은,
상기 미리 정해진 영역이 복수인 경우, 해당 타일에 대하여 상기 미리 정해진 영역마다 개별적으로 결정되는, 인코딩 방법. The method according to claim 4,
The type of tile,
When there are a plurality of the predetermined areas, an encoding method is individually determined for each of the predetermined areas for a corresponding tile.
상기 하위 레벨의 복수의 타일은,
레벨별 최상측 타일 및 최좌측 타일을 기준으로 개별적인 인덱스가 부여된, 인코딩 방법.The method according to claim 1,
The plurality of tiles of the lower level,
Encoding method in which individual indexes are assigned based on the topmost tile and the leftmost tile for each level.
상기 생성된 적어도 하나의 레벨별 타일 정보를 기초로 상기 타일의 유형이 점유 및 일부 점유인 적어도 하나의 타일을 인코딩하는 단계는,
최상위 레벨의 번호, 최하위 레벨의 번호, 최상위 레벨의 타일 크기, 최상위 레벨의 각 타일에 쿼드 트리로 분할된 하위 타일이 존재하는지 여부, 각 레벨별 노드의 개수 및 각 노드에서의 하위 노드 링크 정보 중 적어도 하나를 포함하는 인코딩 기본 정보와 상기 레벨별 타일 정보를 기초로 상기 타일의 유형이 점유 및 일부 점유인 적어도 하나의 타일을 인코딩하는 단계를 포함하는, 인코딩 방법.The method according to claim 1,
Encoding at least one tile of which the type of the tile is occupied and partially occupied based on the generated at least one level-specific tile information,
Among the top level number, the bottom level number, the top level tile size, whether there is a sub-tree divided into quad trees in each top level tile, the number of nodes for each level, and the link information of each sub node in each node And encoding at least one tile of which the type of the tile is occupied and partially occupied based on the encoding basic information including at least one and the tile information for each level.
프로세서(processor); 및
상기 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 메모리(memory)를 포함하고,
상기 적어도 하나의 명령은,
상기 복수의 타일을 각각 분할 대상 타일로 설정하도록 실행되고,
상기 분할 대상 타일을 쿼드 트리에 따라 상기 분할 대상 타일보다 하위 레벨의 복수의 타일로 분할하는 분할 명령이 실행되고,
상기 하위 레벨의 복수의 타일에 대하여 상기 타일의 유형을 기초로 레벨별 타일 정보를 생성하는 타일 정보 생성 명령이 실행되고,
상기 하위 레벨의 복수의 타일 중 상기 타일의 유형이 일부 점유인 적어도 하나의 타일 각각이 분할 중단 조건을 만족할 때까지 상기 적어도 하나의 타일 각각을 분할 대상 타일로 설정하여 분할 명령 및 타일 정보 생성 명령을 반복 수행하도록 실행되고,
상기 생성된 적어도 하나의 레벨별 타일 정보를 기초로 상기 타일의 유형이 점유 및 일부 점유인 적어도 하나의 타일을 인코딩하도록 실행되는, 인코딩 장치.An apparatus for encoding at least one tile extracted based on a type of a tile among map images including a plurality of tiles,
A processor; And
And a memory in which at least one instruction executed through the processor is stored,
The at least one command,
It is executed to set each of the plurality of tiles as tiles to be divided,
A dividing instruction for dividing the dividing target tile into a plurality of tiles of a lower level than the dividing target tile is executed according to a quad tree,
A tile information generation command for generating tile information for each level based on the type of the tile is executed for a plurality of tiles of the lower level,
Each of the at least one tile is set as a target tile to be divided until each of at least one tile of which the type of the tile is partially occupied among the plurality of tiles of the lower level satisfies a partitioning stop command and a command to generate tile information. Run to perform iteratively,
And encoding the at least one tile of which the type of the tile is occupied and partially occupied based on the generated at least one level-specific tile information.
상기 레벨별 타일 정보는,
상기 하위 레벨의 복수의 타일 각각에 대한 상기 타일의 유형에 대한 정보 및 상기 하위 레벨의 복수의 타일에 대한 레벨 정보를 포함하는, 인코딩 장치.The method according to claim 8,
Tile information for each level,
And information on the type of the tile for each of the plurality of tiles in the lower level and level information on the plurality of tiles in the lower level.
상기 분할 중단 조건은,
상기 타일의 유형이 일부 점유인 적어도 하나의 타일이 미리 설정된 최하위 레벨인 경우 및 상기 타일의 유형이 일부 점유인 적어도 하나의 타일이 존재하지 않는 경우 중 적어도 하나를 포함하는, 인코딩 장치.The method according to claim 8,
The condition for stopping the division,
And at least one tile in which the type of the tile is partially occupied is a preset lowest level and at least one tile in which the type of the tile is partially occupied is not present.
상기 타일의 유형은,
해당 타일이 미리 정해진 영역을 포함하지 않는 비점유, 해당 타일의 일부가 미리 정해진 영역을 포함하는 일부 점유 및 해당 타일 전체가 미리 정해진 영역을 포함하는 점유 중 어느 하나를 포함하는, 인코딩 장치.The method according to claim 8,
The type of tile,
The encoding apparatus includes any one of non-occupancy in which the tile does not include a predetermined area, partial occupancy in which a part of the tile includes a predetermined area, and occupancy in which the entire tile includes a predetermined area.
상기 타일의 유형은,
상기 미리 정해진 영역이 복수인 경우, 해당 타일에 대하여 상기 미리 정해진 영역마다 개별적으로 결정되는, 인코딩 장치.The method according to claim 11,
The type of tile,
When the plurality of predetermined areas are determined, an encoding device is individually determined for each of the predetermined areas for a corresponding tile.
상기 하위 레벨의 복수의 타일은,
레벨별 최상측 타일 및 최좌측 타일을 기준으로 개별적인 인덱스가 부여된, 인코딩 장치.The method according to claim 1,
The plurality of tiles of the lower level,
Encoding device with individual indexes based on the topmost and leftmost tiles for each level.
상기 적어도 하나의 명령은,
최상위 레벨의 번호, 최하위 레벨의 번호, 최상위 레벨의 타일 크기, 최상위 레벨의 각 타일에 쿼드 트리로 분할된 하위 타일이 존재하는지 여부, 각 레벨별 노드의 개수 및 각 노드에서의 하위 노드 링크 정보 중 적어도 하나를 포함하는 인코딩 기본 정보와 상기 레벨별 타일 정보를 기초로 상기 타일의 유형이 점유 및 일부 점유인 적어도 하나의 타일을 인코딩하도록 실행되는, 인코딩 장치.The method according to claim 1,
The at least one command,
Among the top level number, the bottom level number, the top level tile size, whether there is a sub-tree divided into quad trees in each top level tile, the number of nodes for each level, and the link information of each sub node in each node And an encoding apparatus, wherein the encoding apparatus is executed to encode at least one tile of which the type of the tile is occupied and partially occupied based on the encoding basic information including at least one and the tile information for each level.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180155813A KR20200068901A (en) | 2018-12-06 | 2018-12-06 | Method and apparatus for encoding map image based on condition |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180155813A KR20200068901A (en) | 2018-12-06 | 2018-12-06 | Method and apparatus for encoding map image based on condition |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20200068901A true KR20200068901A (en) | 2020-06-16 |
Family
ID=71141544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180155813A KR20200068901A (en) | 2018-12-06 | 2018-12-06 | Method and apparatus for encoding map image based on condition |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20200068901A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113760917A (en) * | 2021-09-09 | 2021-12-07 | 武汉大学 | Vector tile storage construction method and system |
-
2018
- 2018-12-06 KR KR1020180155813A patent/KR20200068901A/en unknown
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113760917A (en) * | 2021-09-09 | 2021-12-07 | 武汉大学 | Vector tile storage construction method and system |
CN113760917B (en) * | 2021-09-09 | 2023-09-19 | 武汉大学 | Vector tile storage construction method and system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2654353B2 (en) | How to reconstruct an image into a data model | |
KR100233972B1 (en) | Compression of simple geotric models using spanning trees | |
KR102393665B1 (en) | Graphics processing systems | |
FI3514968T3 (en) | Methods and devices for entropy coding point clouds | |
CN106407408A (en) | A spatial index construction method and device for mass point cloud data | |
JP7425899B2 (en) | Point cloud encoding and decoding method | |
US20210358209A1 (en) | Method and device for determining plurality of layers of bounding boxes, collision detection method and device, and motion control method and device | |
Elf et al. | Branch-and-cut algorithms for combinatorial optimization and their implementation in ABACUS | |
CN114073095A (en) | Plane mode in octree-based point cloud coding | |
US20170116780A1 (en) | Method for rendering terrain | |
US9396249B1 (en) | Methods and systems for encoding parent-child map tile relationships | |
CN114283099A (en) | Method, system and device for processing graph | |
CN103839222A (en) | Grid-to-vector parallel system based on hierarchical boundary topology search model | |
CN111857704A (en) | Code generation method and device for layout relationship | |
US6757883B1 (en) | Estimating free space in IC chips | |
KR20220047809A (en) | Point Cloud Geometry Upsampling | |
JP4924850B2 (en) | Computer program and apparatus | |
KR20200068901A (en) | Method and apparatus for encoding map image based on condition | |
CN109827585B (en) | Method for rapidly filling concave area in grid map | |
KR102455227B1 (en) | Apparatus and method for constructing space information | |
Wang et al. | Orthogonal voronoi diagram and treemap | |
KR101975404B1 (en) | Apparatus and method for generating procedural content | |
CN114329058A (en) | Image gathering method and device and electronic equipment | |
CN114116948A (en) | Geographic vector data space buffer area analysis method, device, equipment and medium | |
EP4071714A1 (en) | Point cloud processing method, encoder, decoder and storage medium |