KR20200088186A - 계층적 입체 격자를 이용한 공간 표현 방법, 공간 표현 디바이스 및 공간정보 생성 장치 - Google Patents

계층적 입체 격자를 이용한 공간 표현 방법, 공간 표현 디바이스 및 공간정보 생성 장치 Download PDF

Info

Publication number
KR20200088186A
KR20200088186A KR1020190004892A KR20190004892A KR20200088186A KR 20200088186 A KR20200088186 A KR 20200088186A KR 1020190004892 A KR1020190004892 A KR 1020190004892A KR 20190004892 A KR20190004892 A KR 20190004892A KR 20200088186 A KR20200088186 A KR 20200088186A
Authority
KR
South Korea
Prior art keywords
grid
information
level
octree
spatial
Prior art date
Application number
KR1020190004892A
Other languages
English (en)
Inventor
유재준
장인성
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020190004892A priority Critical patent/KR20200088186A/ko
Publication of KR20200088186A publication Critical patent/KR20200088186A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Remote Sensing (AREA)
  • Processing Or Creating Images (AREA)

Abstract

공간정보 생성 장치와 연동하는 디바이스가 복수의 레벨을 포함하는 계층적 구조로 구성된 공간을 표현하는 방법이 개시된다. 본 발명의 일 실시예에 따른 공간 정보 표현 방법은, 상기 공간정보 생성 장치로부터 상기 공간의 각 레벨에 속하는 적어도 하나의 입체 격자가 데이터를 포함하는 유형에 따라 결정되는 점유 정보를 인코딩된 형태로 수신하는 단계; 상기 인코딩된 점유 정보를 디코딩하여 각 레벨별 격자의 점유 정보에 따라 공간의 계층적 구조를 파악하는 단계; 및 파악된 공간의 계층적 구조에 기초하여 공간을 가시화하는 단계를 포함할 수 있다.

Description

계층적 입체 격자를 이용한 공간 표현 방법, 공간 표현 디바이스 및 공간정보 생성 장치{APPARATUS AND METHOD FOR PRESENTING SPACE USING HIERARCHICHAL 3D GRID, APPARATUS FOR GENERATING INFORMATION ON SPACE}
본 발명은 계층적 입체 격자를 이용한 공간 표현 방법, 공간 표현 디바이스 및 공간정보 생성 장치에 관한 것으로, 더욱 상세하게는 복수의 레벨을 포함하는 계층적 입체 격자를 이용하여 공간을 표현하는 방법, 공간표현 디바이스 및 공간정보 생성 장치에 관한 것이다.
최근 구글맵, 네이버맵, V-월드 등과 같은 인터넷 지도가 다양한 서비스 및 정보를 연계 제공해주는 기반 시스템으로 널리 인식되어 활용되고 있다. 이러한 인터넷 지도는 일반적으로 타일이라고 부르는 특정 크기의 격자(그리드 셀)를 다양한 레벨(또는 수준) 또는 구체화 수준(LoD; Level of Detail) 별로 구축하여 정보를 유지, 관리, 제공함으로써 많은 양의 정보를 효율적으로 전달할 수 있도록 한다.
설계 및 구현에 따라 달라지기는 하지만, 일반적으로 특정 지도 레이어에 대한 레벨은 20개 이하의 레벨로 구현되며, 이들 각 레벨(수준)이 의미하는 바는 구현에 따라 달라진다. 각 레벨에서 하나의 이미지 타일이 표현하는 크기는 사전에 정의된 크기에 따라 달라지게 되며, 특정 지도 레이어의 레벨 개수 및 특정 레벨에서의 이미지 타일이 표현하는 크기는 지도의 종류(예를 들어, 위성영상, 벡터 등)에 따라서도 달라질 수 있다.
공간과 직간접적으로 관련되는 다양한 형태의 서비스들이 활발히 개발 및 제공되고 있고, 그 서비스들의 복잡도가 점차 증가하고 있음에 따라 상기 2D 기반의 공간은 점차 3D 및 그 이상의 차원을 가지는 공간에 대한 정보의 구축 및 제공의 수요가 증가하고 있다.
이러한 수요의 대표적인 예는 도시 모델의 제공이라 할 수 있다. 스마트시티와 같이 도시공간을 대상으로 구축 및 제공되는 서비스들이 확대되고 있음에 따라 도시공간 전체에 대한 정보의 구축 및 가시화 등을 위한 수요가 늘어나고 있으며, 이는 기본적으로 3D 공간을 대상으로 한다.
구체적인 바는 응용의 목적에 따라 달라질 수 있으나, 일반적으로 격자(그리드)를 기반으로 3D 공간에 대한 정보를 구축 및 제공하는 것은 다양한 구체화 수준(LoD, Level of Detail, 또는 레벨(level))에 대해 고려된다.
위와 같이 3D 공간 객체에 의해 점유되는 입체 격자(그리드)를 기술함에 있어 현재의 제시된 대부분의 기술은 각 구체화 수준(레벨)만을 고려하여 인코딩하는 방법을 사용한다. 하지만, 인코딩의 대상인 입체 격자(그리드)의 개수가 매우 많아지는 경우 기존의 인코딩 방법을 사용하는 경우 표현이 효율적이지 못하거나 심지어 불가능할 수도 있으며, 표현이 가능하다 하더라도 검색 등에 있어 매우 비효율적인 연산을 초래할 수 있다는 문제가 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 복수의 레벨을 포함하는 계층적 입체 격자를 이용하여 공간을 표현하는 방법을 제공하는 데 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은 상기 공간 표현 방법을 이용하는 공간 표현 디바이스를 제공하는 데 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 또 다른 목적은 상기 공간 표현 방법을 이용하는 공간정보 생성 장치를 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 공간 표현 방법은, 공간정보 생성 장치와 연동하는 디바이스가 복수의 레벨을 포함하는 계층적 구조로 구성된 공간을 표현하는 방법으로서, 상기 공간정보 생성 장치로부터, 상기 공간의 각 레벨에 속하는 적어도 하나의 입체 격자가 데이터를 포함하는 유형에 따라 결정되는 점유 정보를 인코딩된 형태로 수신하는 단계; 상기 인코딩된 점유 정보를 디코딩하여 각 레벨별 격자의 점유 정보에 따라 공간의 계층적 구조를 파악하는 단계를 포함할 수 있다.
여기서, 상기 입체 격자는 직사각 또는 큐브 형태의 입체 격자일 수 있다. 또한, 점유 정보는, 해당 격자 전체가 데이터로 점유된 완점점유 상태, 해당 격자가 데이터에 의해 전혀 점유되지 않은 비점유 상태, 또는 해당 격자의 일부가 데이터에 의해 점유된 부분점유 상태를 포함할 수 있다.
상기 점유 정보는 상기 복수의 레벨 간의 관계를 포함하는 옥트리(Octree) 형태로 표현될 수 있다. 상기 옥트리는, 부분점유 상태 또는 완전점유 상태의 점유 정보를 갖는 격자에 대한 노드 정보를 포함하고, 상기 비점유인 상태의 점유 정보를 갖는 격자에 대한 노드 정보는 포함하지 않도록 구성될 수 있다. 또한, 옥트리는 완점점유 상태의 점유 정보를 갖는 격자에 대한 노드는 하부 노드를 포함하지 않도록 구성될 수 있다.
또한 상기 점유 정보는, 상기 옥트리의 최상위 레벨의 번호, 최하위 레벨의 번호, 최상위 레벨의 크기, 최상위 레벨의 각 격자에 대해 옥트리가 존재하는지 여부, 상기 옥트리의 각 레벨에 속하는 노드의 개수, 및 상기 옥트리의 각 레벨에 속하는 노드에 대한 점유 정보 중 적어도 하나를 포함할 수 있다.
상기 공간 표현 방법은, 공간 가시화에 필요한 데이터를 판단하고 상기 공간정보 생성 장치로 요청하는 단계; 및 상기 공간정보 생성 장치로부터 데이터를 수신하여 가시화 대상 공간을 표현하는 단계를 더 포함할 수 있다.
상기 다른 목적을 달성하기 위한 본 발명의 일 실시예에 따른 공간 표현 디바이스는, 공간정보 생성 장치와 연동하여, 복수의 레벨을 포함하는 계층적 구조로 구성된 공간을 표현하는 디바이스로서, 프로세서; 및 상기 프로세서를 통해 실행되는 적어도 하나의 명령을 저장하는 메모리를 포함하고, 상기 적어도 하나의 명령은, 상기 공간정보 생성 장치로부터, 상기 공간의 각 레벨에 속하는 적어도 하나의 입체 격자가 데이터를 포함하는 유형에 따라 결정되는 점유 정보를 인코딩된 형태로 수신하도록 하는 명령; 상기 인코딩된 점유 정보를 디코딩하여 각 레벨별 점유 정보에 따라 공간의 계층적 구조를 파악하도록 하는 명령를 포함할 수 있다.
여기서, 상기 입체 격자는 직사각 또는 큐브 형태의 입체 격자일 수 있다. 또한, 점유 정보는, 해당 격자 전체가 데이터로 점유된 완점점유 상태, 해당 격자가 데이터에 의해 전혀 점유되지 않은 비점유 상태, 또는 해당 격자의 일부가 데이터에 의해 점유된 부분점유 상태를 포함할 수 있다.
상기 점유 정보는 상기 복수의 레벨 간의 관계를 포함하는 옥트리(Octree) 형태로 표현될 수 있다. 상기 옥트리는, 부분점유 상태 또는 완전점유 상태의 점유 정보를 갖는 격자에 대한 노드 정보를 포함하고, 상기 비점유인 상태의 점유 정보를 갖는 격자에 대한 노드 정보는 포함하지 않도록 구성될 수 있다. 또한, 옥트리는 완점점유 상태의 점유 정보를 갖는 격자에 대한 노드는 하부 노드를 포함하지 않도록 구성될 수 있다.
또한 상기 점유 정보는, 상기 옥트리의 최상위 레벨의 번호, 최하위 레벨의 번호, 최상위 레벨의 크기, 최상위 레벨의 각 격자에 대해 옥트리가 존재하는지 여부, 상기 옥트리의 각 레벨에 속하는 노드의 개수, 및 상기 옥트리의 각 레벨에 속하는 노드에 대한 점유 정보 중 적어도 하나를 포함할 수 있다.
상기 적어도 하나의 명령은, 공간 가시화에 필요한 데이터를 판단하고 상기 공간정보 생성 장치로 요청하도록 하는 명령; 및 상기 공간정보 생성 장치로부터 데이터를 수신하여 가시화 대상 공간을 표현하도록 하는 명령을 더 포함할 수 있다.
상기 또 다른 목적을 달성하기 위한 본 발명의 일 실시예에 따른 공간정보 생성 장치는, 프로세서; 및 상기 프로세서를 통해 실행되는 적어도 하나의 명령을 저장하는 메모리를 포함하고, 상기 적어도 하나의 명령은, 복수의 레벨을 포함하는 계층적 구조로 구성된 공간의 각 레벨에 속하는 적어도 하나의 입체 격자가 데이터를 포함하는 유형에 따라 각 격자에 대한 점유 정보를 결정하도록 하는 명령; 및 상기 점유 정보를 옥트리 형태로 구조화하도록 하는 명령을 포함할 수 있다.
여기서, 상기 입체 격자는 직사각 또는 큐브 형태의 입체 격자일 수 있다. 또한, 점유 정보는, 해당 격자 전체가 데이터로 점유된 완점점유 상태, 해당 격자가 데이터에 의해 전혀 점유되지 않은 비점유 상태, 또는 해당 격자의 일부가 데이터에 의해 점유된 부분점유 상태를 포함할 수 있다.
상기 점유 정보는 상기 복수의 레벨 간의 관계를 포함하는 옥트리(Octree) 형태로 표현될 수 있다. 상기 옥트리는, 부분점유 상태 또는 완전점유 상태의 점유 정보를 갖는 격자에 대한 노드 정보를 포함하고, 상기 비점유인 상태의 점유 정보를 갖는 격자에 대한 노드 정보는 포함하지 않도록 구성될 수 있다. 또한, 옥트리는 완점점유 상태의 점유 정보를 갖는 격자에 대한 노드는 하부 노드를 포함하지 않도록 구성될 수 있다.
또한 상기 점유 정보는, 상기 옥트리의 최상위 레벨의 번호, 최하위 레벨의 번호, 최상위 레벨의 크기, 최상위 레벨의 각 격자에 대해 옥트리가 존재하는지 여부, 상기 옥트리의 각 레벨에 속하는 노드의 개수, 및 상기 옥트리의 각 레벨에 속하는 노드에 대한 점유 정보 중 적어도 하나를 포함할 수 있다.
상기와 같은 본 발명의 실시예들에 따르면, 대상 공간을 표현함에 있어 다양한 수준(LoD, Level of Detail)을 고려하여 입체 격자(그리드)를 기반으로 한 옥트리 형태의 인덱스를 구축하고, 이를 효율적으로 표현 및 인코딩할 수 있다.
그에 따라, 건물 등 3D 공간 객체가 존재하는 대상 공간의 부분들을 효과적으로 제공 및 인코딩할 수 있다.
이를 통해 도시 모델 등과 같이 대상 공간에 대한 다양한 형태의 표현 및 분석이 가능하다.
도 1은 타일 기반 멀티플 레벨을 갖는 지도 이미지의 구성예이다.
도 2은 본 발명이 적용되는 격자 기반 멀티플 레벨을 갖는 공간의 구성예이다.
도 3은 3D 공간객체에 의해 점유되는 입체 격자의 일 예를 도시한다.
도 4는 공간 정보를 옥트리 기반의 계층적 구조로 표현한 도면이다.
도 5는 본 발명에 따라 공간 정보를 옥트리 기반의 계층적 구조로 표현한 도면이다.
도 6은 본 발명의 일 실시예에 따른 공간 표현 시스템의 구성도이다.
도 7은 본 발명의 일 실시예에 따른 공간 표현 디바이스의 블록 구성도이다.
도 8은 본 발명의 일 실시예에 따라 공간정보 생성 장치 및 디바이스에서 수행되는 공간정보 생성 방법 및 공간 표현 방법의 동작 흐름도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는 데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. "및/또는"이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 타일 기반 멀티플 레벨을 갖는 지도 이미지의 구성예이다.
도 1을 참조하면, 하나의 지도 레이어가 여러 개의 레벨(N, N+1, N+2 )로 구성되고, 각 레벨은 다수의 타일을 포함하여 구성된 예가 도시되어 있다.
도 1에 도시된 바와 같은 웹 기반 지도의 구성에 있어, 더 구체적으로 대상 지역을 표현하는 레벨일수록 그 레벨을 구성하는 타일의 개수가 기하급수적으로 증가함을 확인할 수 있다. 일반적으로 특정 레벨의 한 이미지 타일은 해당 레벨보다 더 구체적으로 지도를 가시화하는 하위 레벨에서 4개의 타일로 표현된다.
이러한 레벨 별 타일의 구성은 각 레벨 별 이미지 타일을 지정(식별)하기 위한 식별자(ID)의 부여방법과도 관련된다. 예를 들어, 레벨 1 내지 14로 구성된 레이어에서, 레벨 1이 가로 5개, 세로 4개, 총 20개의 이미지 타일로 구성되어 있는 경우, 레벨 2는 (5 * 2) * (4 * 2) = 80 개의 타일로 구성된다. 이러한 계산을 레벨 별로 적용하면, 레벨 14에는 (5 * 2 ^ 13) * (4 * 2 ^ 13) = 1,342,177,280 개의 타일이 존재하게 된다.
이처럼 하위 레벨로 갈수록 레벨을 구성하는 타일의 개수가 기하급수적으로 늘어나게 됨에 따라, 지도를 가시화하는 디바이스 또는 단말에서 각 레벨 별 지도 타일 관련 데이터를 모두 저장할 수 없는 경우가 발생한다. 따라서, 단말은 필요에 따라 가시화하고자 하는 이미지 부분에 대한 지도 타일을 서버로 요청하여 수신하고 이를 가시화한다. 이러한 구조에서 성능상의 이유로 인해 단말에서 서버로 전달되는 이미지 타일의 전송요청 횟수를 줄이기 위해 단말에서 최근에 사용된 이미지 타일을 캐싱(caching) 또는 버퍼링(buffering)하기도 한다.
한편, 단말에서 가시화하고자 하는 지도의 유형은 매우 다양할 수 있다. 위성이나 항공기에서 촬영된 영상이 될 수도 있으며, 벡터 형태의 유형이 될 수도 있다. 이는 다양한 응용의 목적에 따라 여러 의미를 가지는 지도 레이어가 만들어 질 수 있기 때문이다. 일부 레이어의 경우, 전세계 또는 우리나라 전체에 대한 데이터를 포함하는 것이 아니라, 일부 지역에 대해서만 데이터를 포함하게 될 수도 있다.
이러한 멀티플 레벨을 갖는 지도 이미지를 3D공간에서 표현하기 위해 평면의 표현이 아닌 입체 격자를 기반으로 한 공간 표현이 사용될 수 있다.
도 2은 본 발명이 적용되는 격자 기반 멀티플 레벨을 갖는 지도 공간의 구성예이다.
도 2는 표현하고자 하는 대상 공간을 나타내는 입체 격자(그리드)가 분할되면서 구체화 수준이 높아지는 예를 보인다. 도 2의 최상단에 위치하는 레벨 또는 구체화 수준을 N이라고 할 때, 아래 쪽으로 이동하면서, 레벨 N보다 구체화된 하위 레벨인 레벨 N+1, 그 보다 더 하위 레벨인 레벨 N+2를 도시하고 있다.
즉, 제1 입체 격자(20)는 레벨 N 상의 입체 격자를, 제2 입체 격자(21)는 레벨 N+1 상의 입체 격자를, 제3 입체 격자(22)는 레벨 N+2 상의 입체 격자를 나타낸다. 이 때, 각 수준들을 구성하는 입체격자는 (x, y, z) 형태의 좌표 값에 해당되는 식별자를 가지며, 여기서 x, y, z 는 3D 공간을 구성하는 각 축을 나타낸다.
도 2를 참조하면, 구체화 레벨(LoD)이 증가할수록 그 레벨을 구성하는 입체 격자의 수는 기하 급수적으로 증가한다. 하나의 입체 격자(그리드)가 보다 구체적인, 즉 그 하위 레벨에서 8개의 입체 격자(그리드)로 분할되는 경우, 예를 들어, 레벨 1이 1개의 입체 격자(그리드)로 구성된다고 하면, 레벨 15에는 8 ^ 13 = 549,755,813,888 개의 입체 격자(그리드)가 존재하게 된다. 이는 매우 방대한 양으로써, 그 방대한 양으로 인해 각 격자에 대한 정보를 일일이 기술하는 것은 거의 불가능하다.
많은 응용에서, 입체 격자로 구성되는 이러한 대상 공간에서 어떠한 영역이 3D 객체 등에 의해 점유되고 있는지 표현하는 것은 매우 중요하다. 예를 들어, 3D 공간으로 구축된 도시 모델을 다른 곳으로 제공하여 활용하고자 하는 경우, 도시 모델의 정보를 효율적으로 제공하는 방법 중의 하나는 대상 도시 모델 공간을 입체 격자(그리드) 형태로 나눈 후, 상황에 따라 요청되는 부분을 전달하는 것이다. 물론, 각 입체 격자(그리드)에 대한 정보를 개별적으로 전송할 수 있도록 하더라도, 전체 도시모델 공간에 대한 정보의 저장은 전체 입체 격자(그리드) 구성에 대해 정보를 포함할 필요가 있다.
도2의 입체 구성 예를 이용하여, 대상 공간에 존재하는 3D 공간 객체가 존재하는 입체 격자(그리드) 영역, 즉, 3D 공간 객체에 의해 점유되는 입체 격자(그리드) 영역을 도시하면 도 3과 같이 나타낼 수 있다.
도 3은 3D 공간 객체에 의해 점유되는 입체 격자의 일 예를 도시한다.
3D 공간 객체(30)를 표현함에 있어, 객체가 표현 공간 상에서 위치하는 지점은 어떠한 공간 상의 적어도 하나의 특정 입체 격자(29)에 대응할 수 있다. 대응 입체 격자는 해당 격자가 위치하는 레벨에 따라 다르게 표현될 수 있다.
본 발명에 따라 대상 공간에 대한 점유 정보를 계층적으로 인코딩하는 방법은 대상공간을 각 구체화 수준(LoD, Level of Detail)을 구성하는 입체 격자(그리드)들로 구성하고, 이들을 옥트리를 이용하여 계층적으로 구성한 후, 각 수준의 입체 격자들에 대한 점유 정보를 컴팩트하게 인코딩한다. 이렇게 인코딩된 정보는 도시모델 등과 같이 특정 대상 공간 중, 공간 객체들이 존재하는 영역(입체격자, 그리드)을 효율적으로 표현할 수 있도록 한다.
본 발명에 따르면 특정 레벨 또는 구체화 수준에서 하나의 입체 격자(그리그)에 대한 점유 정보는 아래의 3가지 값 중 하나로 표현될 수 있다.
완전 점유(Fully Occupied; F): 해당 입체 격자(그리드) 전체가 데이터에 의해 점유되어 있는 경우
부분 점유(Partially Occupied; P): 해당 입체 격자(그리드)의 일부만 데이터에 의해 점유되어 있는 경우
비점유(Not Occupied, N): 해당 입체 격자(그리드)가 데이터에 의해 전혀 점유되어 있지 않는 경우
상기와 같이 표현되는 점유 유무에 대한 입체 격자(그리드)의 정보는 각 수준(또는 레벨)별로 구축되며, 각 수준(또는 레벨)별로 구축되는 정보는 옥트리를 이용하여 구조화된다. 이렇게 구축되는 옥트리를 이용하면, 각 수준(레벨)별 입체 격자(그리드)들의 정보는 상하위 수준(레벨)의 관계에 따라 보다 컴팩트하게 표시될 수도 있다.
즉, 다수의 구체화 수준에서의 각 입체 격자(그리드)의 점유 정보를 한꺼번에 표현할 수 있다. 예를 들어, 상위 수준(레벨)의 특정 입체 격자(그리드)에 대한 점유 유무가 완전 점유이면, 해당 입체 격자(그리드)의 하위 수준(레벨)의 입체 격자(그리드)들의 점유 정보도 완전 점유일 것이므로, 이를 이용하여 하위 수준(레벨) 입체 격자(그리드)들에 대한 점유 정보는 상위 수준(레벨)의 입체 격자(그리드)의 점유 정보를 이용하여 표현될 수 있다. 그러므로, 이러한 경우 하위 수준(또는 레벨) 입체 격자(또는 그리드)의 점유 정보는 별도로 표현하지 않아도 된다.
여기서, 상하위 구체화 수준을 구성하는 입체 격자(그리드) 번호 사이에는 예를 들어, 아래와 같은 관계가 성립한다. 표현하고자 하는 공간 영역이 옥트리 구조이고 상위 구체화 수준의 어떤 입체 격자(그리드)의 번호(좌표)가 (x, y, z)이라고 하면, 이와 같은 영역에 포함되는 하위 구체화 수준의 입체 격자(그리드)들은 다음과 같은 8개의 번호(또는 좌표)를 가질 수 있다.
(2x, 2y, 2z), (2x, 2y, 2z+1), (2x, 2y+1, 2z), (2x, 2y+1, 2z+1),
(2x+1, 2y, 2z), (2x+1, 2y, 2z+1), (2x+1, 2y+1, 2z), (2x+1, 2y+1, 2z+1)
이러한 관계를 이용하면, 어떤 상위 또는 하위 구체화 수준의 입체 격자(그리드)가 주어졌을 때, 이의 상위 또는 하위 구체화 수준의 입체 격자(그리드)들을 쉽게 파악할 수 있다.
도 4는 공간 정보를 옥트리 기반의 계층적 구조로 표현한 도면이다.
도 4의 최상단에 위치하는 레벨 또는 구체화 수준을 N이라고 할 때, 아래 쪽으로 이동하면서, 레벨 N보다 구체화된 하위 레벨인 레벨 N+1, 그 보다 더 하위 레벨인 레벨 N+2을 도시하고 있다.
각 레벨에서 공간 정보는 해당 격자의 번호(또는 좌표) 및 점유 정보를 포함할 수 있다. 또한, 각 격자는 자신의 하위 레벨 격자들에 대한 정보를 포함할 수 있다. 이 때, 각 수준들을 구성하는 입체격자는 (x, y, z) 형태의 좌표 값에 해당되는 식별자를 가지며, 여기서 x, y, z 는 3D 공간을 구성하는 각 축을 나타낼 수 있다.
도 4에 도시된 옥트리 구조에 따르면 원칙적으로 해당 레벨에서의 각 격자는 자신이 하위 레벨에 속하는 모든 격자와 연결되어 관련 정보를 저장한다.
하지만 본 발명에서는 이러한 옥트리 구조의 정보 또는 의미의 손실 없이 보다 축약된 형태로 공간 정보를 표현할 수 있다. 이는 아래와 같은 이유에 기인한다.
우선, 본 발명에 따른 옥트리 노드는 일부 점유 또는 부분 점유상태를 가지는 입체 격자(그리드)들에 대해서만 구축된다. 즉, 점유되지 않은 입체 격자(그리드)는 본 발명에 따른 옥트리로 구조 내에 구축하지 않는다.
어떤 입체 격자(또는 그리드)에 포함되는 정보가 없다면, 즉, 점유 정보가 비점유(N)이면, 그 하위의 입체 격자(그리드)들도 점유 정보가 비점유 상태이기 때문에, 상위 레벨에 대한 점유 정보가 비점유라면 그 아래 하위 레벨에 대한 점유 정보 또한 모두 비점유임을 쉽게 유추할 수 있기 때문이다. 즉, 본 발명에 따른 실시예에서는 상위 입체 격자(그리드)로부터 추정될 수 있는 하위 입체 격자(그리드)에 대한 정보는 생략하고 옥트리 구조 내에 구축하지 않는다.
다음으로, 어떤 입체 격자(그리드)의 점유 정보가 완전 점유(Fully Occupied; F)이면, 해당 입체 격자(그리드)의 하위 레벨에 대한 입체 격자(그리드)들의 점유상태도 모두 완전 점유(F)일 것이 예상된다. 이와 같은 이유로, 상위 레벨의 어떠한 입체 격자가 완전 점유 상태일 때, 해당 입체 격자의 하위 입체 격자(그리드)들에 대한 정보는 생략하고 본 발명에 따른 옥트리 구조 내에 구축하지 않는다.
이러한 조건을 반영하여, 도 4에 도시된 옥트리(Octree) 구조의 예에서 생략 가능한 정보들을 제거하고 정리하면 도 5와 같이 나타낼 수 있다.
도 5는 본 발명에 따라 공간 정보를 옥트리 기반의 계층적 구조로 표현한 도면이다.
도 4의 옥트리 대비 도 5의 옥트리 구조는 훨씬 간략한 구조로 표현됨에도 불구하고 표현할 수 있는 정보는 도 4의 옥트리와 동일하다. 즉, 도 5의 옥트리 구조에서 정보 손실은 존재하지 않는다.
도 5를 참조하면, 최하위 레벨이 아닌 중간 레벨에서 어떤 노드는 부분 점유 상태 또는 완전 점유 상태를 가진다. 여기에서, 부분 점유 노드는 그 아래 레벨에 하나 이상의 차일드 노드를 가지지만 완전 점유 노드는 그 아래 레벨에 차일드 노드를 가지지 않는다.
또한, 트리 구조의 특징상 최하위 레벨은 차일드 노드를 가지지 않는다. 가장 아래 레벨 노드는 중간 레벨의 노드와 같이 부분 점유 상태 또는 완전 점유 상태를 가진다.
도 5와 같이 특정 대상 공간에 대한 각 구체화 수준(LoD) 또는 레벨(level)에 대한 각 입체 격자(그리드)의 점유 정보가 옥트리 형태로 구축되면, 대상 공간이 점유되어 있음을 표현하기 위해 다양한 서비스에서 활용될 수 있다.
즉, 본 발명에 따른 옥트리는 다양한 목적을 위해 인코딩되어 활용될 수 있으며, 이때 인코딩되는 정보는 다음의 정보를 포함하는 것이 바람직하다.
1) 시작 구체화 수준 또는 레벨 (최상위 레벨)의 번호(또는 좌표), 가장 아래(최하위) 구체화 수준 또는 레벨의 번호
2) 시작 구체화 수준 또는 레벨 (최상위 레벨)의 크기 및 시작 구체화 수준 또는 레벨(최상위 레벨)의 각 입체 격자(그리드)들에 옥트리가 존재하는지의 여부
3) 구축된 옥트리의 각 레벨에서의 노드의 개수
4) 구축된 옥트리의 각 레벨에 존재하는 노드의 점유 정보 값 (F, P, N)
여기서, 각 구체화 수준 또는 레벨에 존재하는 노드(입체 격자(그리드))에 대한 점유 정보 값의 경우, 가장 아래 레벨이 아닌 중간 레벨의 노드에 대해서는 노드의 존재여부만을 표시하면 되므로 노드당 1bit를 할당하여 표현할 수 있다. 또한, 가장 아래 레벨의 경우 노드의 점유 유형까지 같이 표현해야 하므로 노드당 2bit를 이용하여 저장된다.
이러한 옥트리 기반의 입체 격자(그리드) 점유 정보의 계층적 인코딩에 의한 방법을 이용하는 경우, 인코딩되는 정보의 크기는 비점유(N) 또는 완전 점유(F) 정보를 가지는 입체 격자(그리드) 개수 및 분포에 따라 달라질 수 있다. 즉, 상술한 실시예들에 따른 본 발명의 인코딩 방법을 이용하는 경우, 최소한의 정보를 이용하여 옥트리를 효율적으로 표현(인코딩) 및 재구성할 수 있게 된다.
이렇게 전달된 인코딩 결과는 인코딩 결과를 수신한 측에서는, 각 구체화 수준(LoD, Level of Detail)에 저장되어 있는 점유 정보를 읽어 들여, 그 값에 따라 하위 레벨의 노드를 생성하고 이를 연결시킴으로써 옥트리를 복원할 수 있다.
본 발명에 따른 공간 내에서 공간 점유 정보의 표현 및 인코딩 방법을 이용하는 경우, 정보가 존재하는 공간 영역을 컴팩트하게 표현 및 전달할 수 있다. 또한, 이를 이용하는 서비스의 구성 및 구현에 따라 필요한 곳에서만 연산이 일어나게 하여 시스템 최적화를 가능하도록 한다.
앞서 설명된 실시예들은, 입체 격자(그리드)들을 기반으로 다수의 구체화 수준(LoD, Level of Detail) 또는 레벨로 구성되는 대상 공간에 대해 각 입체 격자(그리드)의 점유 정보를 컴팩트하게 표현 및 유지하기 위한 하나의 실시예에 불과하다.
도 6은 본 발명의 일 실시예에 따른 공간 표현 시스템의 구성도이다.
본 발명의 일 실시예에 따른 공간 표현 시스템은, 공간 표현 디바이스 (500) 및 공간 표현 디바이스(500)와 네트워크를 통해 연동하는 공간정보 생성 장치(600)를 포함할 수 있다. 도 6에서는 디바이스와 공간정보 생성 장치가 통상적으로 네트워크로 연결되는 경우를 예시적으로 도시하였으나, 디바이스와 서버가 직접 연결되는 경우 또한 본 발명의 실시예에서 배제하지 않는다.
본 발명의 일 실시예에 따른 공간정보 생성 장치(600)는 특정 공간의 각 레벨을 구성하는 격자들이 어느 정도의 데이터를 포함하는지에 대한 정보를 매우 컴팩트한 형태로 표현하고 파일로 저장하여 단말로 전달한다. 공간 표현 디바이스(500)는 이를 복원하여 참조함으로써 해당 공간에 대한 정보를 획득하거나 해당 공간을 가시화할 수 있다.
좀더 구체적으로, 공간정보 생성 장치(600)는 복수의 레벨을 포함하는 계층적 구조로 구성된 공간의 각 레벨에 속하는 적어도 하나의 입체 격자가 데이터를 포함하는 유형에 따라 각 격자에 대한 점유 정보를 결정하고, 상기 점유 정보를 옥트리 형태로 구조화하여 제공할 수 있다. 이를 위해, 공간정보 생성 장치(600)는 프로세서; 및 상기 프로세서를 통해 실행되는 적어도 하나의 명령을 저장하는 메모리를 포함할 수 있다.
상기 적어도 하나의 명령은, 복수의 레벨을 포함하는 계층적 구조로 구성된 공간의 각 레벨에 속하는 적어도 하나의 입체 격자가 데이터를 포함하는 유형에 따라 각 격자에 대한 점유 정보를 결정하도록 하는 명령; 및 상기 점유 정보를 옥트리 형태로 구조화하도록 하는 명령을 포함할 수 있다.
여기서, 격자는 직사각 또는 큐브 형태의 입체 격자일 수 있다. 또한, 점유 정보는, 해당 격자 전체가 데이터로 점유된 완점점유 상태, 해당 격자가 데이터에 의해 전혀 점유되지 않은 비점유 상태, 또는 해당 격자의 일부가 데이터에 의해 점유된 부분점유 상태를 포함할 수 있다.
또한, 공간 표현 디바이스는 상기 공간정보 생성 장치로부터 수신한 각 레벨별 격자의 점유 정보에 따라 공간의 계층적 구조를 파악할 수 있다.
공간정보 생성 장치(600)는 웹 서버(Web Server) 또는 네트워크 서버일 수 있다. 웹 서버는 일반적으로 인터넷과 같은 개방형 컴퓨터 네트워크를 통하여 불특정 다수의 클라이언트, 또는 다른 서버와 연결될 수 있다. 이 경우, 본 발명의 일 실시예에 따른 공간 표현 디바이스는 웹 서버와 연동하는 클라이언트일 수 있다. 공간정보 생성 장치(600)는 웹 클라이언트 또는 다른 웹 서버의 작업수행 요청을 접수하여 그에 대한 작업 결과를 도출하여 제공하는 컴퓨터 시스템 및 그를 위하여 설치되어 있는 컴퓨터 소프트웨어(웹 서버 프로그램)를 포함한다.
본 발명에 따른 공간 표현 디바이스는, 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 무선 통신 단말기(Wireless Communication Terminal), 스마트폰(Smart Phone), TV 응용 서버와 서비스 서버 등 서버 단말기일 수 있으며, 각종 기기 또 등과 같은 사용자 단말기이거나 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 부호화하거나 복호화하거나 부호화 또는 복호화를 위해 화면간 또는 화면내 예측하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미할 수 있다.
본 발명의 일 실시예에 따른 공간 표현 디바이스(500) 및 공간정보 생성 장치(600)는 네트워크를 통해 관련된 다양한 정보를 송수신하게 되며, 여기서, 네트워크는 다양한 형태의 통신 방식을 이용해 공간 표현 디바이스(500) 및 공간정보 생성 장치(600) 간 통신을 제공한다. 예를 들어, 통신 방식은 WLAN(Wireless LAN), WPAN(wireless personal area network), 와이파이(Wi-Fi), 와이브로(Wibro), 와이맥스(Wimax), HSDPA(High SpeedDownlink Packet Access), 이동통신망(4G/5G) 등의 무선 통신 방식 또는 이더넷(Ethernet), xDSL(ADSL, VDSL), HFC(Hybrid FiberCoaxial Cable), FTTC(Fiber to The Curb), FTTH(Fiber To The Home) 등의 유선 통신 방식을 포함할 수 있다.
도 7은 본 발명의 일 실시예에 따른 공간 표현 디바이스의 블록 구성도이다.
본 발명이 일 실시예에 따른 공간 표현 디바이스는 공간정보 생성 장치와 연동하여, 복수의 레벨을 포함하는 계층적 구조로 구성된 공간을 표현할 수 있으며, 프로세서(510) 및 프로세서를 통해 실행되는 적어도 하나의 명령을 저장하는 메모리(520)를 포함할 수 있다.
본 발명에 따른 공간 표현 디바이스는, 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 무선 통신 단말기(Wireless Communication Terminal), 스마트폰(Smart Phone), TV 응용 서버와 서비스 서버 등 서버 단말기일 수 있으며, 각종 기기 또 등과 같은 사용자 단말기이거나 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 부호화하거나 복호화하거나 부호화 또는 복호화를 위해 화면간 또는 화면내 예측하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미할 수 있다.
여기서, 적어도 하나의 명령은, 상기 프로세서로 하여금, 공간정보 생성 장치로부터, 공간의 각 레벨에 속하는 적어도 하나의 입체 격자가 데이터를 포함하는 유형에 따라 결정되는 점유 정보를 인코딩된 형태로 수신하도록 하는 명령; 상기 인코딩된 점유 정보를 디코딩하여 각 레벨별 점유 정보에 따라 공간의 계층적 구조를 파악하도록 하는 명령; 및 파악된 공간의 계층적 구조에 기초하여 공간을 가시화하도록 하는 명령를 포함할 수 있다.
여기서, 상기 격자는 직사각 또는 큐브 형태의 입체 격자일 수 있다. 또한, 점유 정보는, 해당 격자 전체가 데이터로 점유된 완점점유 상태, 해당 격자가 데이터에 의해 전혀 점유되지 않은 비점유 상태, 또는 해당 격자의 일부가 데이터에 의해 점유된 부분점유 상태를 포함할 수 있다.
상기 점유 정보는 상기 복수의 레벨 간의 관계를 포함하는 옥트리(Octree) 형태로 표현될 수 있다. 상기 옥트리는, 부분점유 상태 또는 완전점유 상태의 점유 정보를 갖는 격자에 대한 노드 정보를 포함하고, 상기 비점유인 상태의 점유 정보를 갖는 격자에 대한 노드 정보는 포함하지 않도록 구성될 수 있다. 또한, 옥트리는 완점점유 상태의 점유 정보를 갖는 격자에 대한 노드는 하부 노드를 포함하지 않도록 구성될 수 있다.
또한 상기 점유 정보는, 상기 옥트리의 최상위 레벨의 번호, 최하위 레벨의 번호, 최상위 레벨의 크기, 최상위 레벨의 각 격자에 대해 옥트리가 존재하는지 여부, 상기 옥트리의 각 레벨에 속하는 노드의 개수, 및 상기 옥트리의 각 레벨에 속하는 노드에 대한 점유 정보 중 적어도 하나를 포함할 수 있다.
상기 파악된 공간의 계층적 구조에 기초하여 공간을 가시화하도록 하는 명령은, 공간 가시화에 필요한 데이터를 판단하고 상기 공간정보 생성 장치로 요청하도록 하는 명령; 및 상기 공간정보 생성 장치로부터 데이터를 수신하여 가시화 대상 공간을 표현하도록 하는 명령을 포함할 수 있다.
스토리지(530)는 공간정보 생성 장치로부터 수신한 적어도 하나의 격자의 점유 정보, 프로세서(510)에 의해 최근에 사용된 공간 격자 관련 데이터 등을 저장할 수 있다.
통신 모듈(540)은 공간정보 생성 장치(600)와의 통신을 위한 모듈로, 공간 표현 디바이스의 통신 모듈에 의해 제공되는 통신 방식은 WLAN(Wireless LAN), WPAN(wireless personal area network), 와이파이(Wi-Fi), 와이브로(Wibro), 와이맥스(Wimax), HSDPA(High SpeedDownlink Packet Access), 이동통신망(4G/5G) 등의 무선 통신 방식 또는 이더넷(Ethernet), xDSL(ADSL, VDSL), HFC(Hybrid FiberCoaxial Cable), FTTC(Fiber to The Curb), FTTH(Fiber To The Home) 등의 유선 통신 방식을 포함할 수 있다.
도 8은 본 발명의 일 실시예에 따라 공간정보 생성 장치 및 디바이스에서 수행되는 공간정보 생성 방법 및 공간 표현 방법의 동작 흐름도이다.
도 8에 도시된 서버는 공간정보 생성 장치와 동일한 기능을 수행하는 장치로 이해될 수 있다. 공간정보 생성 장치는 우선, 복수의 레벨을 포함하는 계층적 구조로 구성된 공간의 각 레벨에 속하는 적어도 하나의 격자가 데이터를 포함하는 유형에 따라 결정되는 각 격자의 점유 유형을 파악하고(S810), 각 격자의 점유 유형에 따른 점유 정보를 도출한다(S811).
여기서, 격자는 직사각 또는 큐브 형태의 입체 격자일 수 있다. 또한, 점유 정보는, 해당 격자 전체가 데이터로 점유된 완점점유 상태, 해당 격자가 데이터에 의해 전혀 점유되지 않은 비점유 상태, 또는 해당 격자의 일부가 데이터에 의해 점유된 부분점유 상태를 포함할 수 있다.
공간정보 생성 장치는 점유 정보를 옥트리 형태로 생성하고(S812), 생성된 격자별 점유 정보를 인코딩한다(S813). 이때 옥트리는, 부분점유 상태 또는 완전점유 상태의 점유 정보를 갖는 격자에 대한 노드 정보를 포함하고, 상기 비점유인 상태의 점유 정보를 갖는 격자에 대한 노드 정보는 포함하지 않도록 구성될 수 있다.
공간정보 생성 장치는 인코딩된 데이터를 수신 측 디바이스(또는 단말)로 전송할 수 있다(S814). 인코딩된 데이터의 전송은 수신 측 디바이스의 요청에 의해 이루어질 수 있다.
인코딩된 데이터를 수신한 디바이스는 이를 디코딩하여(S820), 각 레벨에 저장된 점유 정보를 분석한다(S821). 디바이스는 점유 정보에 따라 최상위 레벨부터 최하위 레벨까지 노드를 생성하고(S822), 상위 레벨 노드 및 하위 레벨 노드를 연결하여 옥트리를 복원한다(S823).
디바이스가 특정 공간을 가시화하거나 디스플레이할 필요가 있는 경우, 옥트리에 기초하여 공간 가시화에 필요한 데이터를 파악하고(S824), 공간 표현에 필요한 데이터를 공간정보 생성 장치로 요청한다(S825). 이후, 공간정보 생성 장치로부터 필요한 데이터를 수신한(S830) 디바이스는 수신한 데이터를 이용해 가시화 대상이 되는 공간을 표현한다(S840).
한편, 디바이스가 특정 공간 정보를 검색하기 위해 해당 공간의 공간 정보를 필요로 한 경우에는 앞서 설명한 공간 가시화를 위한 단계들은 생략될 수 있다.
이상 실시예들을 통해 살펴본 바와 같이 본 발명은, 대상 공간을 다양한 수준(LoD, Level of Detail)을 고려하여 입체 격자(그리드)를 기반으로 옥트리 형태의 인덱스를 구축하고, 이를 효율적으로 표현 및 인코딩함으로써, 건물 등 3D 공간 객체가 존재하는 대상 공간의 부분들을 효과적으로 제공할 수 있다.
본 발명의 실시예에 따른 방법의 동작은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 프로그램 또는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산 방식으로 컴퓨터로 읽을 수 있는 프로그램 또는 코드가 저장되고 실행될 수 있다.
또한, 컴퓨터가 읽을 수 있는 기록매체는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다. 프로그램 명령은 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
본 발명의 일부 측면들은 장치의 문맥에서 설명되었으나, 그것은 상응하는 방법에 따른 설명 또한 나타낼 수 있고, 여기서 블록 또는 장치는 방법 단계 또는 방법 단계의 특징에 상응한다. 유사하게, 방법의 문맥에서 설명된 측면들은 또한 상응하는 블록 또는 아이템 또는 상응하는 장치의 특징으로 나타낼 수 있다. 방법 단계들의 몇몇 또는 전부는 예를 들어, 마이크로프로세서, 프로그램 가능한 컴퓨터 또는 전자 회로와 같은 하드웨어 장치에 의해(또는 이용하여) 수행될 수 있다. 몇몇의 실시예에서, 가장 중요한 방법 단계들의 하나 이상은 이와 같은 장치에 의해 수행될 수 있다.
실시예들에서, 프로그램 가능한 로직 장치(예를 들어, 필드 프로그머블 게이트 어레이)가 여기서 설명된 방법들의 기능의 일부 또는 전부를 수행하기 위해 사용될 수 있다. 실시예들에서, 필드 프로그머블 게이트 어레이는 여기서 설명된 방법들 중 하나를 수행하기 위한 마이크로프로세서와 함께 작동할 수 있다. 일반적으로, 방법들은 어떤 하드웨어 장치에 의해 수행되는 것이 바람직하다.
이상 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
20: N 레벨 입체 격자 21: N+1 레벨 입체 격자
22: N+2 레벨 입체 격자
500: 공간 표현 디바이스 510: 프로세서
520: 메모리 530: 스토리지
540: 통신 모듈 600: 공간정보 생성 장치

Claims (20)

  1. 공간정보 생성 장치와 연동하는 디바이스가 복수의 레벨을 포함하는 계층적 구조로 구성된 공간을 표현하는 방법으로서,
    상기 공간정보 생성 장치로부터, 상기 공간의 각 레벨에 속하는 적어도 하나의 입체 격자가 데이터를 포함하는 유형에 따라 결정되는 점유 정보를 인코딩된 형태로 수신하는 단계; 및
    상기 인코딩된 점유 정보를 디코딩하여 각 레벨별 격자의 점유 정보에 따라 상기 공간의 계층적 구조를 파악하는 단계를 포함하는, 공간 표현 방법.
  2. 청구항 1에 있어서,
    파악된 공간의 계층적 구조에 기초하여 공간을 가시화하는 단계를 더 포함하는, 공간 표현 방법.
  3. 청구항 1에 있어서,
    상기 점유 정보는,
    해당 격자 전체가 데이터로 점유된 완점점유 상태, 해당 격자가 데이터에 의해 전혀 점유되지 않은 비점유 상태, 또는 해당 격자의 일부가 데이터에 의해 점유된 부분점유 상태를 포함하는, 공간 표현 방법.
  4. 청구항 1에 있어서,
    상기 점유 정보는 상기 복수의 레벨 간의 관계를 포함하는 옥트리(Octree) 형태로 표현되는, 공간 표현 방법.
  5. 청구항 4에 있어서,
    상기 옥트리는,
    부분점유 상태 또는 완전점유 상태의 점유 정보를 갖는 격자에 대한 노드 정보를 포함하고,
    상기 비점유인 상태의 점유 정보를 갖는 격자에 대한 노드 정보는 포함하지 않도록 구성된, 공간 표현 방법.
  6. 청구항 4에 있어서,
    상기 옥트리는,
    완점점유 상태의 점유 정보를 갖는 격자에 대한 노드는 하부 노드를 포함하지 않도록 구성된, 공간 표현 방법.
  7. 청구항 4에 있어서,
    상기 점유 정보는,
    상기 옥트리의 최상위 레벨의 번호, 최하위 레벨의 번호, 최상위 레벨의 크기, 최상위 레벨의 각 격자에 대해 옥트리가 존재하는지 여부, 상기 옥트리의 각 레벨에 속하는 노드의 개수, 및 상기 옥트리의 각 레벨에 속하는 노드에 대한 점유 정보 중 적어도 하나를 포함하는, 공간 표현 방법.
  8. 청구항 2에 있어서,
    상기 파악된 공간의 계층적 구조에 기초하여 공간을 가시화하는 단계는,
    공간 가시화에 필요한 데이터를 판단하고 상기 공간정보 생성 장치로 요청하는 단계; 및
    상기 공간정보 생성 장치로부터 데이터를 수신하여 가시화 대상 공간을 표현하는 단계를 포함하는, 공간 표현 방법.
  9. 공간정보 생성 장치와 연동하여, 복수의 레벨을 포함하는 계층적 구조로 구성된 공간을 표현하는 디바이스에 있어서,
    프로세서; 및
    상기 프로세서를 통해 실행되는 적어도 하나의 명령을 저장하는 메모리를 포함하고,
    상기 적어도 하나의 명령은,
    상기 공간정보 생성 장치로부터, 상기 공간의 각 레벨에 속하는 적어도 하나의 입체 격자가 데이터를 포함하는 유형에 따라 결정되는 점유 정보를 인코딩된 형태로 수신하도록 하는 명령; 및
    상기 인코딩된 점유 정보를 디코딩하여 각 레벨별 점유 정보에 따라 공간의 계층적 구조를 파악하도록 하는 명령을 포함하는, 공간 표현 디바이스.
  10. 청구항 9에 있어서,
    상기 점유 정보는,
    해당 격자 전체가 데이터로 점유된 완점점유 상태, 해당 격자가 데이터에 의해 전혀 점유되지 않은 비점유 상태, 또는 해당 격자의 일부가 데이터에 의해 점유된 부분점유 상태를 포함하는, 공간 표현 디바이스.
  11. 청구항 9에 있어서,
    상기 점유 정보는 상기 복수의 레벨 간의 관계를 포함하는 옥트리(Octree) 형태로 표현되는, 공간 표현 디바이스.
  12. 청구항 11에 있어서,
    상기 옥트리는,
    부분점유 상태 또는 완전점유 상태의 점유 정보를 갖는 격자에 대한 노드 정보를 포함하고, 상기 비점유인 상태의 점유 정보를 갖는 격자에 대한 노드 정보는 포함하지 않도록 구성된, 공간 표현 디바이스.
  13. 청구항 11에 있어서,
    상기 옥트리는,
    완점점유 상태의 점유 정보를 갖는 격자에 대한 노드는 하부 노드를 포함하지 않도록 구성된, 공간 표현 디바이스.
  14. 청구항 11에 있어서,
    상기 점유 정보는,
    상기 옥트리의 최상위 레벨의 번호, 최하위 레벨의 번호, 최상위 레벨의 크기, 최상위 레벨의 각 격자에 대해 옥트리가 존재하는지 여부, 상기 옥트리의 각 레벨에 속하는 노드의 개수, 및 상기 옥트리의 각 레벨에 속하는 노드에 대한 점유 정보 중 적어도 하나를 포함하는, 공간 표현 디바이스.
  15. 청구항 9에 있어서,
    상기 적어도 하나의 명령은,
    공간 가시화에 필요한 데이터를 판단하고 상기 공간정보 생성 장치로 요청하도록 하는 명령; 및
    상기 공간정보 생성 장치로부터 데이터를 수신하여 가시화 대상 공간을 표현하도록 하는 명령을 더 포함하는, 공간 표현 디바이스.
  16. 프로세서; 및
    상기 프로세서를 통해 실행되는 적어도 하나의 명령을 저장하는 메모리를 포함하고,
    상기 적어도 하나의 명령은,
    복수의 레벨을 포함하는 계층적 구조로 구성된 공간의 각 레벨에 속하는 적어도 하나의 입체 격자가 데이터를 포함하는 유형에 따라 각 격자에 대한 점유 정보를 결정하도록 하는 명령; 및
    상기 점유 정보를 옥트리 형태로 구조화하도록 하는 명령을 포함하는, 공간 정보 생성 장치.
  17. 청구항 16에 있어서,
    상기 입체 격자는 직사각 또는 큐브 형태인, 공간 정보 생성 장치.
  18. 청구항 16에 있어서,
    상기 점유 정보는,
    해당 격자 전체가 데이터로 점유된 완점점유 상태, 해당 격자가 데이터에 의해 전혀 점유되지 않은 비점유 상태, 또는 해당 격자의 일부가 데이터에 의해 점유된 부분점유 상태를 포함하는, 공간 정보 생성 장치.
  19. 청구항 16에 있어서,
    상기 옥트리는,
    부분점유 상태 또는 완전점유 상태의 점유 정보를 갖는 격자에 대한 노드 정보를 포함하고, 상기 비점유인 상태의 점유 정보를 갖는 격자에 대한 노드 정보는 포함하지 않도록 구성된, 공간 정보 생성 장치.
  20. 청구항 16에 있어서,
    상기 옥트리는,
    완점점유 상태의 점유 정보를 갖는 격자에 대한 노드는 하부 노드를 포함하지 않도록 구성된, 공간 정보 생성 장치.
KR1020190004892A 2019-01-14 2019-01-14 계층적 입체 격자를 이용한 공간 표현 방법, 공간 표현 디바이스 및 공간정보 생성 장치 KR20200088186A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190004892A KR20200088186A (ko) 2019-01-14 2019-01-14 계층적 입체 격자를 이용한 공간 표현 방법, 공간 표현 디바이스 및 공간정보 생성 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190004892A KR20200088186A (ko) 2019-01-14 2019-01-14 계층적 입체 격자를 이용한 공간 표현 방법, 공간 표현 디바이스 및 공간정보 생성 장치

Publications (1)

Publication Number Publication Date
KR20200088186A true KR20200088186A (ko) 2020-07-22

Family

ID=71893027

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190004892A KR20200088186A (ko) 2019-01-14 2019-01-14 계층적 입체 격자를 이용한 공간 표현 방법, 공간 표현 디바이스 및 공간정보 생성 장치

Country Status (1)

Country Link
KR (1) KR20200088186A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102492696B1 (ko) * 2021-10-06 2023-01-31 주식회사 플럭시티 그리드 기반의 공간 속성 부여를 통한 가시화 디지털 트윈 에너지 관리 장치 및 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102492696B1 (ko) * 2021-10-06 2023-01-31 주식회사 플럭시티 그리드 기반의 공간 속성 부여를 통한 가시화 디지털 트윈 에너지 관리 장치 및 방법

Similar Documents

Publication Publication Date Title
US20210248785A1 (en) Predictive tree coding for point cloud coding
US9547728B2 (en) Graph traversal operator and extensible framework inside a column store
EP2425602B1 (en) Position tracking in a virtual world
US11580671B2 (en) Hash-based attribute prediction for point cloud coding
Ilkhechi et al. Network-aware virtual machine placement in cloud data centers with multiple traffic-intensive components
US11816869B2 (en) Updates on context modeling of occupancy coding for point cloud coding
JP7467630B2 (ja) 点群コーディングのための方法、コンピュータプログラム、システム、および非一時的コンピュータ読み取り可能媒体
US11334567B2 (en) Efficient SQL-based graph random walk
JP7368623B2 (ja) 点群処理の方法、コンピュータシステム、プログラム及びコンピュータ可読記憶媒体
US20240013445A1 (en) Coding of multiple-component attributes for point cloud coding
US10785491B2 (en) Method of visualizing image based on hierarchical presentation of image tile information, device and system using the method
KR102441902B1 (ko) 시계열 3차원 시각화 데이터 생성 방법 및 장치
AU2021257883B2 (en) Context modeling of occupancy coding for pointcloud coding
KR20200088186A (ko) 계층적 입체 격자를 이용한 공간 표현 방법, 공간 표현 디바이스 및 공간정보 생성 장치
Chen et al. Progressive visualization of complex 3D models over the internet
CN109076110B (zh) 图像发送方法、装置及存储介质
KR102455227B1 (ko) 공간 정보 구성 방법 및 장치
CN114641804A (zh) 基于预测树的点云几何编码
RU2784416C1 (ru) Кодирование многокомпонентных атрибутов для кодирования облака точек
WO2023127052A1 (ja) 復号装置、符号化装置、復号プログラム、符号化プログラム、復号方法および符号化方法
KR20240062772A (ko) 대규모 그래프 알고리즘 연산을 위한 그래프 맵리듀스 시스템에서의 부호화 분산 컴퓨팅 기법 및 컴퓨터 장치
CN109857743A (zh) 对称正则多维索引平台的构建方法及装置查询方法及系统
Liu et al. An Extension of Virtual Globe to Build On‐Demand Geospatial Data Sharing Capability Using P eer‐to‐P eer Technology