KR102593795B1 - 공간 속성 정보를 3d 정보와 결합하는 방법 및 장치 - Google Patents

공간 속성 정보를 3d 정보와 결합하는 방법 및 장치 Download PDF

Info

Publication number
KR102593795B1
KR102593795B1 KR1020220149535A KR20220149535A KR102593795B1 KR 102593795 B1 KR102593795 B1 KR 102593795B1 KR 1020220149535 A KR1020220149535 A KR 1020220149535A KR 20220149535 A KR20220149535 A KR 20220149535A KR 102593795 B1 KR102593795 B1 KR 102593795B1
Authority
KR
South Korea
Prior art keywords
area
shell
semantic
information
shells
Prior art date
Application number
KR1020220149535A
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 KR1020230140903A priority Critical patent/KR20240046099A/ko
Application granted granted Critical
Publication of KR102593795B1 publication Critical patent/KR102593795B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20221Image fusion; Image merging

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Architecture (AREA)
  • Processing Or Creating Images (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)

Abstract

공간 속성 정보를 3D 정보와 결합하는 방법으로서, 복수의 쉘의 집합인 그리드 영역에 대해 3D 객체가 점유하는 쉘을 판별하여 상기 그리드 영역에 점유 영역을 설정하는 단계, 상기 점유 영역에 기초하여 상기 복수의 쉘 각각에 하나 이상의 공간 속성을 부여함으로써 상기 그리드 영역에 복수의 의미 영역을 생성하는 단계 및 상기 복수의 의미 영역에 기초하여 공간 속성 맵을 생성하는 단계를 포함할 수 있다.

Description

공간 속성 정보를 3D 정보와 결합하는 방법 및 장치{METHOD AND APPARATUS FOR COMBINING SPATIAL PROPERTY INFORMATION WITH 3D INFORMATION}
본 발명은 공간 속성 정보를 3D 정보와 결합하는 방법 및 장치에 관한 것으로, 보다 상세하게는 2D에 적용되는 공간 속성 정보를 3D 정보와 결합하는 방법으로 데이터 처리를 백그라운드에서 수행하게 하여 대중적인 환경에서도 수월한 3D 정보 처리를 가능하도록 하는 기술에 관한 것이다.
최근 다양한 산업분야에서는 생산성, 경제성, 안정성을 향상시키고자 디지털트윈 기술이 주목받고 있다. 디지털트윈이란 물리적인 사물과 동일하게 컴퓨터에 표현되는 가상 모델로, 실제 제품을 만들기 전 모의 시험을 통해 발생할 수 있는 문제점을 파악하고 이를 해결하기 위해 활용되고 있다.
한편, 3D 디지털트윈을 구현하기 위한 다양한 방법들이 등장하고 있으나, 이는 데이터의 방대함과 3D 특성상 데이터 대비 활용 리소스가 커지므로 일반 기능을 대중적인 환경에서 구동하기 쉽지 않다.
이에 본 발명에서는 데이터 처리를 백그라운드에서 수행하게 함으로써 리소스 대비 3D 정보의 활용을 극대화하는, 공간 속성 정보를 3D 정보와 결합하는 방법을 제시하고자 한다.
본 개시의 목적은 공간 속성 정보를 3D 정보와 결합하는 방법 및 장치를 제공하는 데 있다. 본 개시가 해결하고자 하는 과제는 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 본 발명의 기재로부터 당해 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있고, 본 개시의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 개시가 해결하고자 하는 과제 및 장점들은 특허 청구범위에 나타난 수단 및 그 조합에 의해 실현될 수 있음을 알 수 있을 것이다.
전술한 기술적 과제를 해결하기 위한 수단으로서, 본 개시의 제1 측면은, 복수의 쉘의 집합인 그리드 영역에 대해 3D 객체가 점유하는 쉘을 판별하여 상기 그리드 영역에 점유 영역을 설정하는 단계; 상기 점유 영역에 기초하여 상기 복수의 쉘 각각에 하나 이상의 공간 속성을 부여함으로써 상기 그리드 영역에 복수의 의미 영역을 생성하는 단계; 및 상기 복수의 의미 영역에 기초하여 공간 속성 맵을 생성하는 단계;를 포함하는 방법을 제공할 수 있다.
본 개시의 제2 측면은, 적어도 하나의 프로그램이 저장된 메모리; 및 상기 적어도 하나의 프로그램을 실행함으로써 동작하는 프로세서;를 포함하되, 상기 프로세서는, 복수의 쉘의 집합인 그리드 영역에 대해 3D 객체가 점유하는 쉘을 판별하여 상기 그리드 영역에 점유 영역을 설정하고, 상기 점유 영역에 기초하여 상기 복수의 쉘 각각에 하나 이상의 공간 속성을 부여함으로써 상기 그리드 영역에 복수의 의미 영역을 생성하고, 상기 복수의 의미 영역에 기초하여 공간 속성 맵을 생성하는, 장치를 제공할 수 있다.
본 개시의 제 3 측면은, 제 1 측면의 방법을 컴퓨터에서 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공할 수 있다.
이 외에도, 본 발명을 구현하기 위한 다른 방법, 다른 장치 및 상기 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체가 더 제공될 수 있다.
전술한 것 외의 다른 측면, 특징, 이점이 이하의 도면, 특허 청구범위 및 발명의 상세한 설명으로부터 명확해질 것이다.
전술한 본 개시의 과제 해결 수단에 의하면, 리소스 대비 3D 정보의 활용을 극대화하여, 대중적인 환경에서도 수월한 3D 정보 처리를 가능하게 하는 방법 및 장치를 제공할 수 있다.
실시예들에 의한 효과가 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 본 발명의 기재로부터 당해 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 일 실시예에 관한 그리드의 기본 형태를 구현한 평면도이다.
도 2는 일 실시예에 관한 그리드 내 쉘들의 연결관계를 정의하는 방법을 설명하기 위한 예시도이다.
도 3은 일 실시예에 관한 그리드 영역에 점유 영역을 설정하는 방법을 설명하기 위한 예시도이다.
도 4는 일 실시예에 관한 복수의 의미 영역을 생성하는 예시도이다.
도 5 및 도 6은 일 실시예에 관한 확산 영역의 예시도이다.
도 7은 일 실시예에 관한 복수의 의미 영역의 예시도이다.
도 8a 및 도 8b는 일 실시예에 관한 가중치를 활용하는 방법을 설명하기 위한 예시도이다.
도 9는 일 실시예에 관한 공간 속성 정보를 3D 정보와 결합하는 방법의 흐름도이다.
도 10은 본 발명의 일 실시예에 관한 공간 속성 정보를 3D 정보와 결합하는 장치의 블록도이다.
본 발명을 설명함에 있어 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략할 수 있으며, 다르게 정의되지 않는 한 본 명세서에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다.
본 명세서에의 "일 실시예에 따른", "일 실시예에 관한" 또는 "일 실시예의 구현에 따라" 등의 어구는 반드시 모두 동일한 실시 예를 가리키는 것은 아니다.
실시예들은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 일부 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나 이는 실시예들을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 실시예들의 사상 및 기술범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 명세서에서 사용한 용어들은 단지 실시예들의 설명을 위해 사용된 것으로, 실시예들을 한정하려는 의도가 아니다.
실시예들에서 사용되는 용어는 본 실시예들에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 실시예들이 속하는 기술 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 부분에서 상세히 그 의미를 기재할 것이다. 따라서 실시예들에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 실시예들 전반에 걸친 내용을 토대로 정의되어야 한다.
본 개시의 일부 실시예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들의 일부 또는 전부는, 특정 기능들을 실행하는 다양한 개수의 하드웨어 및/또는 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 개시의 기능 블록들은 하나 이상의 마이크로프로세서들에 의해 구현되거나, 소정의 기능을 위한 회로 구성들에 의해 구현될 수 있다.
또한, 예를 들어, 본 개시의 기능 블록들은 다양한 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능 블록들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 개시는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다.
"데이터베이스", "요소", "수단" 및 "구성"등과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 또한, 명세서에 기재된 "-부", "-모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
또한, 도면에 도시된 구성 요소들 간의 연결 선 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것일 뿐이다. 실제 장치에서는 대체 가능하거나 추가된 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들에 의해 구성 요소들 간의 연결이 나타내어질 수 있다.
또한, 본 명세서에서 사용되는 '제 1' 또는 '제 2' 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용할 수 있지만, 구성 요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다.
또한, 도면 상의 일부 구성 요소는 그 크기나 비율 등이 다소 과장되어 도시 되었을 수 있다. 또한, 어떤 도면 상에 도시된 구성 요소가 다른 도면 상에는 도시 되지 않을 수 있다.
명세서 전체에서 '실시예'는 본 개시에서 발명을 용이하게 설명하기 위한 임의의 구분으로서, 실시예 각각이 서로 배타적일 필요는 없다. 예를 들어, 일 실시예에 개시된 구성들은 다른 실시예에 적용 및/또는 구현될 수 있으며, 본 개시의 범위를 벗어나지 않는 한도에서 변경되어 적용 및/또는 구현될 수 있다.
또한, 본 개시에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 실시예들을 제한하고자 하는 것은 아니다. 본 개시에서 단수형은 특별히 언급하지 않는 한 복수형도 포함한다.
아래에서는 첨부한 도면을 참고하여 본 개시의 실시예들에 대하여 해당 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시의 실시예들은 여러 가지 상이한 형태로 구현될 수 있으며, 본 개시에서 설명하는 실시예에 한정되지 않는다.
이하에서는 이를 기반으로 도면을 참조하여 본 발명을 상세히 설명한다.
도 1은 일 실시예에 관한 그리드의 기본 형태를 구현한 평면도이다.
도 1을 참조하면, 그리드(100)는 2D 구조의 일반 격자 구조로 형성될 수 있다. 각 격자의 크기는 정사각형으로 지정될 수 있으며, 각 격자의 단위는 편의상 쉘(110)로 지칭될 수 있다.
그리드(100)의 모든 쉘(110)들은 일정한 간격의 크기를 갖도록 설정될 수 있다. 쉘의 크기가 일정하지 않은 경우에 영역 단위로 쉘(110)을 사용하거나 쉘(110)을 기준으로 데이터를 검색하게 되는데, 이 때 쉘(110) 검색 시의 알고리즘 변화 등으로 인하여 고려할 사항들이 많아질 수 있다. 따라서, 쉘(110)들이 일정한 간격의 크기를 갖도록 설정함에 따라 영역 계산 및 쉘 기준 데이터 검색 시의 알고리즘도 단순화할 수 있다. 구체적으로, 일정 영역의 쉘(110)을 검색하기 위하여 각각의 쉘(110)의 정보를 검색하지 않고도 그리드(100)의 전체 크기와 비교할 수 있다. 그러나, 필요에 따라 그리드(100)의 쉘(110)들은 서로 다른 크기를 갖도록 설정될 수도 있다.
그리드(100)를 이루는 열(column)과 행(row)의 모임으로 이루어지는 전체 영역은 정사각형을 유지할 필요가 없다. 필요에 따라 가로의 길이나 세로의 길이가 길어질 수 있다. 즉, 3D 객체의 크기에 따라 열의 개수 또는 행의 개수가 증가할 수 있다.
그리드(100)에 관한 개념은 GIS(Geographic Information System) 분야의 타일링에 관한 개념과 유사할 수 있으나, GIS의 타일링에서 타일을 구성하는 방식은 좌표를 기준으로 나누는데 반해 본 발명의 일 실시예에 따른 그리드(100)의 쉘(110)은 일정한 간격의 크기를 가짐으로써 더 단순한 구성 방식을 가진다는 점에 차이가 있다. 단, GIS 타일링 데이터는 LOD(Linked Open Data)를 감안하여 생성되는데, 본 그리드(100) 방식에 대해서도 넓은 영역을 커버하기 위해 LOD 방식이 고려될 수 있다.
그리드(100)를 생성시의 규격 설정과 관련하여, 쉘(110)을 구성할 쉘의 가로 및 세로 단위 길이 값은 동일할 수 있다. 또한, 그리드(100)의 최대 행 길이 및 최대 열 길이가 미리 설정될 수 있으며, 또는 최대 행 카운트 수 및 최대 열 카운트 수가 미리 설정될 수 있다. 이 때, 최대 행/열 길이는 쉘(110)의 단위 길이와 최대 행/열 카운트 수의 곱으로 설정될 수 있으며 최대 행/열 길이에 따라 그리드(100)의 전체 크기 및 쉘(110) 개수가 결정될 수 있다.
도 2는 일 실시예에 관한 그리드 내 쉘들의 연결관계를 정의하는 방법을 설명하기 위한 예시도이다.
도 2를 참조하면, 그리드(200) 내 쉘들의 연결관계가 설명될 수 있다. 그리드(200)를 구성하는 쉘들에 있어서 각 쉘을 구성하는 면들은 서로 연결되어 있다고 정의될 수 있다. 쉘의 중심점을 통해 노드(210) 및 링크(220)를 구성하는 경우 쉘의 중심점이 노드(210) 포인트로 지정될 수 있고, 인접 쉘이 존재하여 노드(210) 포인트들을 서로 연결할 수 있는 경우 노드(210) 포인트 간의 연결관계인 링크(220)가 생성될 수 있다. 그러나, 노드(210) 포인트는 쉘의 중심점에 제한되는 것은 아니다.
한편, 쉘들의 연결관계와 관련하여 각 쉘은 고유의 키(key value)를 가질 수 있으며 각 키에는 해당 쉘의 속성이 지정될 수 있다. 쉘의 속성을 통해 공간 연결을 위한 단순 연결관계 뿐만 아니라, 백그라운드 단에서 영역 범위, 확산, 근접 영향, 경로 등이 디지털트윈화 될 수 있다.
쉘의 키 값을 통해 저장되는 주요 정보로는 쉘 인덱스, 쉘의 그리드(200) 상 위치(행 번호, 열 번호), 쉘의 그리드(200) 내 영역 상 좌표, 연결 정보 및 노드(210)와 링크(220)에 관한 정보가 포함될 수 있다.
쉘 인덱스는 그리드(200) 내 쉘들의 위치와 관련하여 순서에 따라 별도로 설정되는 값이다. 쉘 인덱스는 3D 객체에 매칭되는 쉘의 정보를 매칭하기 위한 쉘의 키 값으로 활용될 수 있어 쉘의 키 값만으로 대응되는 3D 객체의 검색을 가능하게 하고 해당 영역의 레이어에 대한 포함 정보를 저장할 수 있다는 점, 그리드(200) 내 영역을 지정할 경우 대표 정보 검색을 위하여 활용될 수 있다는 점 및 백그라운드에서 쉘 만으로 관련 공간 정보를 추출하기 위한 기준 값이 될 수 있다는 점에서 중요하다. 쉘 인덱스를 이용하여 그리드(200)를 표현하는 방법에 관하여는 후술하기로 한다.
연결 정보는, 전술한 바와 같이 각 쉘을 구성하는 면들이 서로 연결되어 있다고 정의될 때, 인접 쉘과의 연결 정보를 의미할 수 있다. 예를 들어, 4방향(230) 연결 정보의 경우 상, 하, 좌, 우에 인접한 쉘의 쉘 인덱스(또는 쉘의 키 값)이 저장될 수 있으며, 8방향(240) 연결 정보의 경우 상, 하, 좌, 우 및 4개의 대각선 방향으로 인접한 쉘의 쉘 인덱스(또는 쉘의 키 값)이 저장될 수 있다.
또한, 연결 정보는, 그리드(200)가 아닌 영역과 그리드(200)인 영역을 구분하여 전체 그리드(200)에서 최 외곽의 4면에 해당하는 쉘들은 4방향(230) 인접 쉘 중 일부에 대한 연결 정보만을 가지고, 최 외곽의 4면이 아닌 그리드(200) 영역의 쉘들은 전부 4방향(230) 또는 8방향(240)의 쉘들에 대한 연결 정보를 가진다고 정의될 수 있다.
노드(210)와 링크(220)에 관한 정보는 검색량을 줄이기 위해 쉘 속성에 저장될 수 있으나, 노드(210)의 속성 정보가 별도로 저장될 수도 있다. 상기 연결 정보가 노드(210)와 링크(220) 정보에 응용될 수 있으며 그리드(200) 내 노드(210)와 링크(220)를 검색할 때 가중치를 고려한 검색이 필요한 경우 노드(210)의 속성값을 통해 판단될 수 있다.
가중치는 각 쉘 또는 노드(210)와 링크(220)에 적용되어 다양하게 활용될 수 있다. 예를 들어, 길 찾기를 위한 열림, 닫힘, 링크(220)의 양방향, 단방향, 이동 가능, 이동 불가능, 혹은 영역별 레벨 평가를 위한 수치, 영역 대비 POI 그룹화를 지정할 수 있는 영역 구분 기준 정보 등이 활용될 수 있다. 가중치는 입력 가중치가 다르게 입력됨에 따라 기 설정된 값일 수 있으나 가변적으로 설정되는 값일 수도 있다.
도 3은 일 실시예에 관한 그리드 영역에 점유 영역을 설정하는 방법을 설명하기 위한 예시도이다.
도 3을 참조하면, 일 실시예에 관한 공간 속성 정보를 3D 정보와 결합하는 장치(이하, '장치'라 함)는 그리드 영역(300)에 대해 3D 객체(320)가 점유하는 쉘을 판별하여 그리드 영역(300)에 점유 영역(330)을 설정할 수 있다.
그리드 영역(300)은 2D 상의 영역이므로 3D 객체(320)가 점유하는 쉘들의 집합인 점유 영역(300)을 그리드 영역(300)에 설정함으로써 해당 점유 영역(330)에 3D 객체(320)에 관한 정보를 매칭시키는 등 공간 속성 맵을 작성하는 데에 활용할 수 있다.
일 실시예에서, 장치는 3D 객체(320)의 외형 경계를 획득할 수 있다. 예를 들어, 장치는 3D 객체(320)의 바닥을 구성하는 폴리곤을 추출하고, 폴리곤의 최 외곽 라인들을 3D 객체(320)의 외형 경계로 추출할 수 있다. 폴리곤이란 컴퓨터 그래픽에서 입체 도형을 구성하는 최소 단위의 다각형을 의미하며, 삼각형 형태를 기본으로 할 수 있다. 바닥이란 건물 모델의 가장 낮은 높이값을 갖는 좌표들의 집합을 의미하며, 복층을 가지는 건물 모델의 경우 속성값의 층 정보에 해당 층의 높이에 해당하는 높이값을 갖는 좌표들의 집합을 의미할 수 있다. 일 실시예에서, 장치는 복층을 가지는 3D 객체(320)의 외형 경계도 3D 객체(320)의 가장 낮은 높이값을 갖는 좌표 또는 바닥 좌표 등 그리드 영역(300)에 접한 영역의 폴리곤을 추출하여 획득할 수 있다. 다른 예를 들어, 장치는 외형 경계 정보를 포함하는 3D 객체(320) 정보를 수신하여, 3D 객체(320)의 외형 경계를 획득할 수 있다. 그러나, 장치가 3D 객체(320)의 외형 경계를 획득하는 방법은 이에 제한되지 않는다.
일 실시예에서, 장치는 그리드 영역(300) 내 하나 이상의 쉘 중에서 3D 객체(320)의 외형 경계의 폐영역을 포함하는 쉘의 집합을 점유 영역(330)으로 설정할 수 있다.
3D 객체(320)의 외형 경계의 폐영역을 포함하는 쉘을 정의하는 방법은 다양할 수 있다. 일 실시예에서, 3D 객체(320)의 외형 경계의 폐영역을 쉘 내부에 일부라도 포함하고 있는 쉘을 3D 객체의(320) 외형 경계의 폐영역을 포함하는 쉘로 정의하는 경우, 점유 영역(330)은 도 3에 도시된 330 영역과 같다. 다른 실시예에서, 3D 객체(320)의 외형 경계의 폐영역을 쉘 내부 전부에 포함하고 있는 쉘을 3D 객체(320)의 외형 경계의 폐영역을 포함하는 쉘로 정의하는 경우, 점유 영역(340)은 도 3에 도시된 340 영역과 같다. 또 다른 실시예에서, 3D 객체(320)의 외형 경계의 폐영역을 쉘 내부 소정의 비율(예를 들어, 쉘 면적의 50%) 이상 포함하고 있는 쉘을 3D 객체(320)의 외형 경계의 폐영역을 포함하고 있는 쉘로 정의하는 경우, 점유 영역(미도시)은 도 3에 도시되지 않은 다른 형태가 될 수 있다.
일 실시예에서, 장치는 그리드 영역(300) 내 하나 이상의 쉘 중에서 3D 객체(320)가 점유하지 않는 쉘 영역을 판별하여 그리드 영역(300) 상에 하나 이상의 비점유 영역(미도시)을 설정할 수 있다. 비점유 영역(미도시)을 별도로 설정함에 따라 단순한 그리드 영역(300)의 영역 구분뿐만 아니라 길 찾기, 대피 경로 예측 등 다양한 분야에서 3D 객체(320)가 점유하지 않는 영역을 활용할 수 있다. 즉, 비점유 영역(미도시) 자체가 소정의 의미를 갖는 단위 의미 영역이 될 수 있다.
일 실시예에서, 점유 영역(330)이 영역 330과 같이 설정된 경우, 그리드 영역(300) 내 3D 객체(320)가 점유하지 않는 쉘 영역은 그리드 영역(300)과 점유 영역(330)의 여집합에 대한 교집합에 해당하는 영역(미도시)이 되며, 해당 쉘 영역이 비점유 영역(미도시)에 해당할 수 있다.
도 4는 일 실시예에 관한 복수의 의미 영역을 생성하는 예시도이다.
의미 영역이란, 영역의 특성에 따라 그리드 영역(400)을 하나 이상의 쉘의 집합으로 구분한 것을 의미한다. 이 때, 그리드 영역(400) 내 임의의 쉘은 2 이상의 의미 영역 모두에 포함될 수 있고 또한 그리드 영역(400) 내 임의의 쉘은 어떤 의미 영역에도 포함되지 않을 수 있다.
일 실시예에서, 장치는 3D 객체(410)의 점유 영역(420), 비점유 영역 및 층 정보 중 어느 하나에 기초하여 복수의 의미 영역을 생성할 수 있다. 예를 들어, 3D 객체(410)가 단일 층의 건물 객체인 경우, 점유 영역(420) 내의 복수의 쉘은 3D 객체(410)가 점유하고 있다는 특성에 따라 하나의 의미 영역에 포함될 수 있으나, 3D 객체(430)가 복층 건물 객체인 경우, 점유 영역(440) 내의 복수의 쉘 각각은, 3D 객체(430)의 각 층이 점유하고 있는 그리드 영역에 따라 복수의 의미 영역에 포함될 수 있다. 구체적으로, 점유 영역(440) 내의 특정 쉘(미도시)이 3D 객체(430)의 1층 및 2층에 의해 점유되는 경우 해당 쉘(미도시)은 3D 객체(430)의 1층에 관한 제1 의미 영역 및 3D 객체(430)의 2층에 관한 제2 의미 영역에 모두 포함될 수 있다.
일 실시예에서, 장치는 3D 객체(410, 430)와 그리드 영역(400)이 다중으로 매칭되는 경우 하나의 쉘(411)이 2 이상의 의미 영역에 포함되도록 복수의 의미 영역을 생성할 수 있다. 예를 들어, 3D 객체(410)가 건물이고 건물 외벽에 CCTV(미도시)가 설치된 경우 3D 객체(410)가 점유하고 있는 점유 영역(420)의 특정 쉘(411)은 CCTV가 점유하고 있는 영역에도 해당할 수 있으므로, 장치는 해당 쉘(411)이 2 이상의 의미 영역에 포함되도록 복수의 의미 영역(예컨대, 건물 영역(410) 및 CCTV 영역(411))을 생성할 수 있다.
다른 예를 들어, 3D 객체(410, 430)에 대한 비점유 영역(미도시)의 쉘은, 그리드 영역(400) 내 어떠한 3D 객체(410, 430)로부터 점유되고 있지 않다는 특성에 따라 비점유 영역 자체로 하나의 의미 영역을 가질 수 있으나, 어떤 의미 영역에도 포함되지 않을 수 있다.
일 실시예에서, 장치는 3D 객체(410, 430)의 점유 영역(420, 440) 및 비점유 영역(미도시)에 기초하여 복수의 의미 영역을 생성할 수 있다. 예를 들어, 3D 객체(410, 430)가 각각 건물 객체 및 대형 조형물 객체인 경우 점유 영역(420, 440)은 통행할 수 없는 영역이므로, 장치는 점유 영역(420, 440)을 이동 불가능 영역, 비점유 영역(미도시)을 이동 가능 영역으로 구분할 수 있다. 또한, 장치는 이동 가능 영역 및 이동 불가능 영역을 별개의 의미 영역으로 생성할 수 있다. 구체적으로, 장치는 3D 객체(410, 430)의 특성에 따라 점유 영역(420, 440) 및 비점유 영역에 이동 (불)가능 여부를 포함하는 공간 속성을 부여함으로써 복수의 의미 영역을 생성할 수 있다.
공간 속성은 그리드 내의 특정 영역이 갖는 특성을 반영하는 것으로서 예를 들어 해당 영역에 포함되는 쉘들의 쉘 인덱스, 영역의 고유 번호, 해당 영역의 최외곽 쉘 정보, 그리드를 점유하는 3D 객체 정보(파일이름, 모델링 내 레이어 정보 등), 공간 구분을 위한 속성(영역 이름, 영역의 특성), 가중치, 인접 쉘과의 연결관계 등을 포함할 수 있다. 이 때, 영역의 특성이란 공간 의미 부여를 위한 특성으로서 3D 객체가 건축물일 경우 층 바닥, 벽 등이 포함될 수 있고, 건축물 외부의 영역은 도로, 보도 등이 포함될 수 있다.
도 4를 참조하면, 그리드 영역(400)의 복수의 쉘 각각은 고유의 쉘 인덱스를 가질 수 있다. 예를 들어, 그리드 영역(400)의 첫 번째 행 첫 번째 열의 쉘(401)은 (0_0)을 쉘 인덱스로 가질 수 있으며, 첫 번째 행 두 번째 열의 쉘은 (0_1)을 쉘 인덱스로 가질 수 있다.
일 실시예에서, 장치는 복수의 의미 영역에 의미 영역에 포함되는 쉘의 쉘 인덱스 중 어느 하나를 복수의 의미 영역 각각의 고유번호로 부여할 수 있다. 또는, 장치는 각각의 의미 영역에 포함될 쉘의 쉘 인덱스 중 어느 하나를 고유번호로 하는 복수의 의미 영역을 생성할 수 있다.
예를 들어, 점유 영역(420, 440) 자체가 의미 영역이 되는 경우, 의미 영역(440)에 포함되는 쉘은 좌측 상단부터 차례대로 (6_6), (6_7), (6_8), (7_5), (7_6), (7_7), (7_8), (7_9), (8_5), (8_6), (8_7), (8_8)을 쉘 인덱스로 가지는데, 장치는 상기 고유번호 중 어느 하나를 의미 영역(440)의 고유번호로 부여할 수 있다.
일 실시예에서, 장치는 의미 영역(440)에 포함되는 쉘의 쉘 인덱스 중 가장 낮은 번호의 쉘 인덱스를 의미 영역(440)의 고유번호로 부여할 수 있다. 예를 들어, 의미 영역이 단일 쉘로 이루어진 경우, 장치는 해당 쉘의 쉘 인덱스를 의미 영역의 고유번호로 부여할 수 있다. 다른 예들 들어, 의미 영역(440)이 복수의 쉘로 이루어진 경우, 장치는 의미 영역(440)의 가장 낮은 행에 속하는 쉘 중 가장 낮은 열에 속하는 쉘의 쉘 인덱스(6_6)를 의미 영역(440)의 고유번호로 부여할 수 있다. 또는, 장치는 의미 영역(440)의 가장 낮은 열에 속하는 쉘 중 가장 낮은 행에 속하는 쉘의 쉘 인덱스(7_5)를 의미 영역(440)의 고유번호로 부여할 수 있다. 위 실시예에 의하면, 의미 영역(420)의 고유번호는 가장 낮은 번호의 쉘 인덱스인 (1_1)이 될 수 있다.
장치가 의미 영역(420, 440)의 고유번호를 동일한 기준에 따라 부여함으로써 그리드 영역(400)에서 의미 영역(420, 440)을 고유번호로 검색하는 알고리즘을 사용할 수 있으며 검색을 단순화할 수 있는 효과가 있다.
일 실시예에서, 장치는 복수의 쉘 각각에 대하여, 인접하는 쉘의 쉘 인덱스를 포함하는 공간 속성을 부여함으로써 복수의 의미 영역을 생성할 수 있다.
예를 들어, 장치는 점유 영역(420)의 최 외곽의 14개의 쉘 (1_1), (1_2), (1_3), (1_4), (1_5), (2_1), (2_5), (3_1), (3_5), (4_1), (4_2), (4_3), (4_4), (4_5)에 대하여, 인접하는 두 개의 쉘의 쉘 인덱스를 포함하는 공간 속성을 부여할 수 있다. 구체적으로, 쉘 (1_1)의 인접하는 두 개의 쉘의 쉘 인덱스(2_1), (1_2)가 공간 속성으로써 포함될 수 있다. 장치는 점유 영역(420)에 위 공간 속성을 부여하여 의미 영역을 생성할 수 있다.
마찬가지로, 예를 들어, 장치는 점유 영역(420)의 최 외곽이 아닌 쉘 (2_2), (2_3), (2_4), (3_2), (3_3), (3_4)에 대하여, 인접하는 네 개의 쉘의 쉘 인덱스를 포함하는 공간 속성을 부여할 수 있다. 구체적으로, 쉘 (2_2)의 인접하는 네 개의 쉘의 쉘 인덱스 (1_2), (2_1), (2_3), (3_2)가 공간 속성으로써 포함될 수 있다. 장치는 점유 영역(420)에 위 공간 속성을 부여하여 의미 영역을 생성할 수 있다.
상술한 실시예는 공간 속성이 4방향 연결정보를 갖는 경우의 실시예이며, 공간 속성이 8방향 연결정보를 갖는 경우 인접하는 쉘의 개수가 달라질 수 있다.
도 5 및 도 6은 일 실시예에 관한 확산 영역의 예시도이다.
도 5를 참조하면, 복수의 의미 영역은 확산 영역을 포함할 수 있다.
'확산'은 흩어져 멀리 퍼진다는 의미로 확산 영역이란 특정 점유 영역(또는 의미 영역)과 인접한 소정의 영역을 의미할 수 있다. 즉, 특정 점유 영역(또는 의미 영역)의 특성에 따라 해당 점유 영역으로부터 흩어져 멀리 퍼진 소정의 영역을 의미할 수 있다. 이하, 점유 영역으로부터 확산 영역이 결정되는 것으로 서술하나, 확산 영역은 의미 영역으로부터 결정되는 것일 수 있다.
일 실시예에서, 장치는 점유 영역(500)에 대하여 인접한 소정의 영역(510)을 점유 영역(500)에 대응하는 확산 영역(510)으로 설정할 수 있다. 이 때, 장치는 점유 영역(500)의 특성에 따라 소정의 영역을 결정할 수 있다.
예를 들어, 점유 영역(500)이 CCTV의 점유 영역인 경우 장치는 CCTV의 촬영 범위를 상기 소정의 영역, 즉 확산 영역(510)으로 설정할 수 있다. 다른 예를 들어, 점유 영역(500)이 방역소독기의 점유 영역인 경우 장치는 방역소독기의 분사 범위를 상기 확산 영역(510)으로 설정할 수 있다. 이와 같이, 점유 영역(500)의 특성에 따라 점유 영역과 인접한 소정의 영역을 확산 영역(510)으로 설정할 수 있다.
상술한 도 5에서는 점유 영역으로부터 단일 방향으로의 확산을 도시하였으나, 장치가 확산 영역을 설정하는 방법은 이에 제한되지 않고, 여러 방향으로의 확산 영역을 설정할 수 있다.
도 6을 참조하면, 장치가 3D 객체의 점유 영역(600)의 일정 반경 내로 확산 영역(630)을 설정하는 예시도를 나타낸다.
도 5의 실시예와 마찬가지로, 장치는 점유 영역(600)의 특성에 기초하여 확산 영역(610)을 설정할 수 있다. 예를 들어, 점유 영역(600)이 스프링클러(Sprinkler)의 점유 영역인 경우 장치는 스프링클러 헤드의 축심을 중심으로 살수 범위(620)에 해당하는 소정의 영역을 확산 영역(610)으로 설정할 수 있다.
일 실시예에서, 장치는 점유 영역(600) 및 확산 영역(610)에 기초하여 안전 영역 및 위험 영역을 설정할 수 있다. 상술한 실시예들에서, 점유 영역(600)이 CCTV의 점유 영역인 경우, 확산 영역(610)을 치안 안전 영역, 확산 영역(610)에 포함되지 않은 영역을 치안 위험 영역으로 설정할 수 있고, 점유 영역(600)이 방역소독기의 점유 영역인 경우, 확산 영역(610)을 방역 안전 영역, 확산 영역(610)에 포함되지 않은 영역을 방역 위험 영역으로 설정할 수 있으며, 점유 영역(600)이 스프링클러의 점유 영역인 경우, 확산 영역(610)을 급수 안전 영역, 확산 영역(610)에 포함되지 않은 영역을 급수 위험 영역으로 설정할 수 있다. 이와 같이 점유 영역(600) 및 확산 영역(610)의 특성에 기초하여 안전 영역 및 위험 영역을 구분하고 복수의 의미 영역을 생성함으로써 점유 영역 또는 점유 영역에 대응하는 3D 객체의 특성에 따라 다양한 분야에 활용될 수 있다.
도 7은 일 실시예에 관한 복수의 의미 영역의 예시도이다.
도 7을 참조하면, 도 4 내지 도 6을 통하여 설명한 일 실시예들에 따라 장치가 복수의 의미 영역(710, 720, 730, 740)을 생성한 것을 나타낸다.
일 실시예에서, 3D 객체가 벽인 경우 벽의 점유 영역에 기초하여 생성된 제1 의미 영역(710)은 이동 불가능 영역이라는 공간 속성을 포함할 수 있다. 동시에, 벽의 비점유 영역에 포함되는 쉘들의 집합에 대하여 이동 가능 영역이라는 공간 속성을 포함하는 별개의 의미 영역(미도시)이 생성될 수 있다. 또한, 제1 의미 영역(710)으로 둘러싸인 폐영역이 존재하는 경우 해당 폐영역에 포함되는 쉘들의 집합에 대하여 실내라는 공간 속성을 포함하는 별개의 의미 영역(740)이 생성될 수 있으며, 제1 의미 영역(710) 외부의 영역에 포함되는 쉘들의 집합에 대하여 실외라는 공간 속성을 포함하는 별개의 의미 영역(미도시)이 생성될 수 있다.
다른 실시예에서, 3D 객체가 CCTV인 경우 CCTV의 점유 영역 및 CCTV의 확산 영역의 합집합인 제2 의미 영역(720)은 안전 영역이라는 공간 속성을 포함할 수 있다. 반대로, 제2 의미 영역(720)에 속하지 않은 쉘들의 집합에 대하여 위험 영역이라는 공간 속성을 포함하는 별개의 의미 영역(730)이 생성될 수 있다.
한편, 장치가 복수의 의미 영역(710, 720, 730, 740)을 생성하는 것은, 3D 객체의 특성 등에 의하여 공간 속성이 자동으로 결정되어 의미 영역이 생성되는 것일 수 있으나, 장치가 수신한 별도의 입력에 기초하여 그리드 영역 상의 의미 영역이 생성되는 것일 수 있다. 예를 들어, 3D 객체인 CCTV의 점유 영역 및 CCTV의 확산 영역의 합집합에 포함되지 않는 쉘이라도, 수신한 별도의 입력으로부터 안전 영역이라는 공간 속성을 포함하는 별개의 의미 영역(미도시)이 생성될 수 있다.
일 실시예에서, 장치는 3D 객체의 특성에 기초하여 가중치를 결정할 수 있다. 가중치는 그리드의 공간 속성 정보를 활용하는 분야에 따라 종류가 다양할 수 있다. 예를 들어, 길 찾기 또는 대피 경로 예측 등에 활용되는 이동 가중치, 대피 경로 예측 및 안전 경로 추천 등에 활용되는 안전 가중치 등이 포함될 수 있으나 이에 제한되는 것은 아니다. 또한, 가중치는 의미 영역 단위로 결정될 수도 있으나 의미 영역에 포함되는 쉘들에 각각 부여되도록 결정될 수도 있다.
일 실시예에서, 장치는 이동 가능 영역에 속한 쉘이 이동 불가능 영역에 속한 쉘보다 높은 이동 가중치를 가지도록 가중치를 결정할 수 있다. 또는, 장치는 확산 영역에 속한 쉘이 확산 영역에 속하지 않은 쉘보다 더 높은 이동 가중치를 가지도록 가중치를 결정할 수 있다.
한편, 장치는 하나의 의미 영역에 포함되는 쉘들에 같은 가중치를 부여하지 않고 하나의 의미 영역에 포함되는 쉘이라도 서로 다른 가중치를 부여할 수 있다. 예를 들어, 3D 객체가 CCTV인 경우 안전 영역(720)에 포함되는 쉘들 중 3D 객체에서 가까운 쉘 일수록 더 높은 안전 가중치를 부여할 수 있다. 또는, 3D 객체가 벽인 경우 이동 가능 영역(미도시)에 포함되는 쉘들 중 3D 객체에서 먼 쉘 일수록 더 높은 이동 가중치를 부여할 수 있다.
일 실시예에서, 장치는 그리드 영역 상의 복수의 쉘에 대하여, 공간 속성에 기초하여 인접하는 쉘 간의 연결관계인 링크에 가중치를 부여할 수 있다. 예를 들어, 장치는 공간 속성에 기초하여 인접하는 쉘 간의 이동 가능 여부에 따라 링크에 이동 가중치를 부여할 수 있으며, 출발지 또는 도착지가 정해진 경우에 최단 경로 또는 최소 시간이 소요되는 경로인지 여부에 따라 링크에 이동 가중치를 부여할 수 있다. 또는, 장치는 경로 알고리즘 방식에 따라 링크에 이동 가중치를 부여할 수 있다.
일 실시예에서, 장치는 복수의 서로 다른 가중치에 기초하여 종합 가중치를 결정할 수 있다. 예를 들어, 경로 안내의 경우에 이동 가중치만 뿐만 아니라 안전 가중치까지 고려한 종합 가중치를 결정할 수 있다. 구체적으로, 이동 가능 영역에 포함된 쉘(또는 링크) 중 안전 영역에도 포함된 쉘(또는 링크)은 높은 종합 가중치(를 부여할 수 있으며 이동 가능 영역에 포함된 쉘(또는 링크) 중 위험 영역에 포함된 쉘(또는 링크)은 상기 안전 영역에 포함된 쉘(또는 링크) 보다 낮은 종합 가중치를 부여할 수 있다. 그러나, 가중치의 종류는 이동 가중치 및 안전 가중치에 제한되지 않는 것과 마찬가지로 종합 가중치를 결정하는 방법은 다양할 수 있다.
일 실시예에서, 장치는 결정된 가중치에 기초하여 복수의 의미 영역을 생성할 수 있다. 구체적으로, 장치는 그리드 내 복수의 쉘 각각에 가중치를 포함하는 공간 속성을 부여함으로써, 복수의 의미 영역을 생성할 수 있다. 또는, 장치는 복수의 의미 영역에 포함되는 복수의 쉘 각각에 가중치를 포함하는 공간 속성을 새롭게 부여할 수 있다.
일 실시예에서, 장치는 복수의 의미 영역(710, 720, 730, 740)에 기초하여 공간 속성 맵을 생성할 수 있다. 공간 속성 맵은 그리드 내 복수의 쉘 각각에 3D 객체에 관한 정보가 공간 속성으로 부여됨으로써 그리드 영역과 3D 객체가 매칭된 것일 수 있다. 다시 말해, 그리드 영역에 부여되는 공간 속성에는 3D 객체에 관한 정보 또는 3D 객체로부터 생성된 정보가 포함될 수 있고, 장치는 그리드 내 복수의 쉘 각각에 이와 같은 공간 속성을 부여함에 따라 그리드 영역과 3D 객체가 매칭된 공간 속성 맵을 생성할 수 있다.
개념적으로 2D 그리드 정보는 3D 객체의 형상 및 정보를 매칭하기 위한 베이스 프레임임을 의미할 수 있다. 하나의 쉘에는 3D 객체의 포함 정보와 높이에 관한 정보가 데이터로 매칭되어 저장될 수 있다. 또한, 3D 객체의 쉘 영역과의 포함 관계만으로 매칭될 수 있고, 노드 및 링크 정보가 추가적인 연결 정보로 사용될 수 있다.
그리드 영역과 3D 객체의 매칭은 복수의 층으로 구성된 건물 등에도 적용될 수 있다. 예를 들어, 건물의 층별로 의미 영역을 생성하고, 층간 이동이 가능한 쉘 간을 연결하는 링크(또는 층간 이동 영역을 별도의 의미 영역으로 생성하여 해당 의미 영역)를 연결함으로써 공간 속성 맵을 생성할 수 있다.
일 실시예에 관한 공간 속성 맵에 따르면, 공간 속성의 변경이 필요한 경우 3D 정보에 매칭되는 공간 속성만을 변경시키는 등 2D 영역 상의 백그라운드에서 데이터를 처리할 수 있게 되어 데이터 처리 속도를 향상시키고 리소스 대비 3D 정보의 활용을 극대화할 수 있다.
도 8a 및 도 8b는 일 실시예에 관한 가중치를 활용하는 방법을 설명하기 위한 예시도이다.
두 출입구 사이를 연결하는 경로를 찾는 방법에 있어서, 도 8a는 위험 가중치를 고려하지 않은 길 찾기의 예시를 나타내는 도면이고 도 8b는 위험 가중치를 고려한 길 찾기의 예시를 나타내는 도면이다.
구체적으로, 위험구역(복도)에 위험 가중치가 설정되었다고 가정했을 때, 장치가 위험 가중치를 고려하지 않는 경우 추출되는 경로는 도 8a와 같이 위험구역(복도)을 지나가게 되며 장치가 위험 가중치를 고려하는 경우 추출되는 경로는 도 8b와 같이 위험구역(복도)를 지나가지 않게 된다.
일 실시예에서, 장치가 이동 가중치 및 위험 가중치를 모두 고려한 종합 가중치를 이용하여 최단 경로를 추출하는 경우, 도 8a 및 도 8b와 다른 경로가 추출될 수도 있으며, 위험구역(복도)에 설정된 위험 가중치의 값에 따라 위험 가중치를 고려하는 경우라도 위험구역(복도)을 지나가는 경로가 추출될 수도 있다. 예를 들어, 최단 경로에 따른 이동 가중치를 합산한 결과에서 위험 영역을 경유함에 따른 위험 가중치의 차이가 위험 영역을 경유하지 않는 회피 경로에 따른 이동 가중치를 합산한 결과보다 큰 경우 장치는 위험 영역을 경유하는 길 찾기 경로를 추출할 수 있다.
일 실시예에서, 가중치는 다른 파라미터에 따라 변화할 수 있다. 따라서 장치가 추출하는 경로도 함께 변경될 수 있다. 예를 들어, 제1 지점이 화재가 발생한 지점으로 추정되는 지점이고, 장치가 제1 지점 및 제1 지점으로부터의 확산 영역에 포함되는 쉘들에 위험 영역이라는 공간 속성을 부여함으로써 의미 영역을 생성한 경우, 다른 파라미터(예컨대, 시간)에 따라 화재 영역의 쉘들에 부여되는 가중치가 변화할 수 있으며 다른 파라미터에 따라 장치가 추출하는 경로(예컨대, 대피경로)가 함께 변경될 수 있다.
도 9는 일 실시예에 관한 공간 속성 정보를 3D 정보와 결합하는 방법의 흐름도이다.
단계 910에서, 장치는 복수의 쉘의 집합인 그리드 영역에 대해 3D 객체가 점유하는 쉘을 판별하여 그리드 영역에 점유 영역을 설정할 수 있다.
일 실시예에서, 복수의 쉘 각각은 고유의 쉘 인덱스를 가질 수 있다.
일 실시예에서, 장치는 3D 객체의 외형 경계를 획득하고, 하나 이상의 쉘 중에서 외형 경계의 폐영역을 포함하는 쉘의 집합을 점유 영역을 설정할 수 있다.
단계 920에서, 장치는 점유 영역에 기초하여 복수의 쉘 각각에 하나 이상의 공간 속성을 부여함으로써 그리드 영역에 복수의 의미 영역을 생성할 수 있다.
일 실시예에서, 복수의 의미 영역은 의미 영역을 포함하는 쉘의 쉘 인덱스 중 어느 하나를 각각의 고유번호로 가질 수 있다.
일 실시예에서, 복수의 의미 영역은 점유 영역과 인접한 소정의 영역인 확산 영역을 포함할 수 있다.
일 실시예에서, 장치는 복수의 쉘 각각에 대하여 인접하는 쉘의 쉘 인덱스를 포함하는 공간 속성을 부여함으로써 복수의 의미 영역을 생성할 수 있다.
일 실시예에서, 장치는 3D 객체가 점유하지 않는 쉘 영역을 판별하여 그리드 영역 상에 하나 이상의 비점유 영역을 설정하고, 점유 영역 및 비점유 영역에 기초하여 복수의 의미 영역을 생성할 수 있다.
일 실시예에서, 장치는 3D 객체의 특성에 기초하여 가중치를 결정하고, 복수의 쉘 각각에 가중치를 포함하는 공간 속성을 부여함으로써 복수의 의미 영역을 생성할 수 있다.
일 실시예에서, 장치는 그리드 영역 상의 복수의 쉘에 대하여 공간 속성에 기초하여 인접하는 쉘 간의 연결관계인 링크에 가중치를 부여할 수 있다.
일 실시예에서, 장치는 3D 객체의 특성에 기초하여 이동 가능 영역 및 이동 불가능 영역을 구분하고, 이동 가능 영역에 속한 쉘이 이동 불가능 영역에 속한 쉘보다 높은 이동 가중치를 가지도록 가중치를 결정할 수 있다.
일 실시예에서, 장치는 확산 영역에 속한 쉘이 확산 영역에 속하지 않은 쉘보다 더 높은 이동 가중치를 가지도록 가중치를 결정할 수 있다.
일 실시예에서, 장치는 결정된 가중치에 기초하여 복수의 의미 영역을 생성할 수 있다.
단계 930에서, 장치는 복수의 의미 영역에 기초하여 공간 속성 맵을 생성할 수 있다.
일 실시예에서, 공간 속성 맵은, 복수의 쉘 각각에 3D 객체에 관한 정보가 공간 속성으로써 부여됨으로써 그리드 영역과 3D 객체가 매칭된 것일 수 있다.
도 10은 본 발명의 일 실시예에 관한 공간 속성 정보를 3D 정보와 결합하는 장치의 블록도이다. 이하의 설명에 있어서, 상술한 도 1 내지 9에 대한 설명과 중복되는 설명은 생략하기로 한다.
도 10에 도시한 바와 같이, 장치(1000)는 통신부(1010), 프로세서(1020) 및 DB(1030)를 포함할 수 있다. 도 10의 장치(1000)에는 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 10에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 당해 기술분야의 통상의 기술자라면 이해할 수 있다.
통신부(1010)는 외부 서버 또는 외부 장치와 유선/무선 통신을 하게 하는 하나 이상의 구성 요소를 포함할 수 있다. 예를 들어, 통신부(1010)는, 근거리 통신부(미도시), 이동 통신부(미도시) 및 방송 수신부(미도시) 중 적어도 하나를 포함할 수 있다. 일 실시예에서, 통신부(1010)는 3D 정보 또는 3D 객체를 수신할 수 있다.
DB(1030)는 장치(1000) 내에서 처리되는 각종 데이터들을 저장하는 하드웨어로서, 프로세서(1020)의 처리 및 제어를 위한 프로그램을 저장할 수 있다.
DB(1030)는 DRAM(dynamic random access memory), SRAM(static random access memory) 등과 같은 RAM(random access memory), ROM(read-only memory), EEPROM(electrically erasable programmable read-only memory), CD-ROM, 블루레이 또는 다른 광학 디스크 스토리지, HDD(hard disk drive), SSD(solid state drive), 또는 플래시 메모리를 포함할 수 있다.
프로세서(1020)는 장치(1000)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(1020)는 DB(1030)에 저장된 프로그램들을 실행함으로써, 입력부(미도시), 디스플레이(미도시), 통신부(1010), DB(1030) 등을 전반적으로 제어할 수 있다. 프로세서(1020)는, DB(1030)에 저장된 프로그램들을 실행함으로써, 장치(1000)의 동작을 제어할 수 있다.
프로세서(1020)는 도 1 내지 도 9에서 상술한 공간 속성 정보를 3D 정보와 결합하는 장치의 동작 중 적어도 일부를 제어할 수 있다.
프로세서(1020)는 ASICs (application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 전기적 유닛 중 적어도 하나를 이용하여 구현될 수 있다.
일 실시예에서, 장치(1000)는 서버일 수 있다. 서버는 네트워크를 통해 통신하여 명령, 코드, 파일, 컨텐츠, 서비스 등을 제공하는 컴퓨터 장치 또는 복수의 컴퓨터 장치들로 구현될 수 있다. 서버는 공간 속성 정보를 3D 정보와 결합하기 위해 필요한 데이터를 수신하고, 수신한 데이터에 기초하여 공간 속성 정보를 3D 정보와 결합할 수 있다.
한편, 본 발명에 따른 실시예는 컴퓨터 상에서 다양한 구성요소를 통하여 실행될 수 있는 컴퓨터 프로그램의 형태로 구현될 수 있으며, 이와 같은 컴퓨터 프로그램은 컴퓨터로 판독 가능한 매체에 기록될 수 있다. 이때, 매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다.
한편, 상기 컴퓨터 프로그램은 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 프로그램의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함될 수 있다.
일 실시예에 따르면, 본 개시의 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
본 발명에 따른 방법을 구성하는 단계들에 대하여 명백하게 순서를 기재하거나 반하는 기재가 없다면, 상기 단계들은 적당한 순서로 행해질 수 있다. 반드시 상기 단계들의 기재 순서에 따라 본 발명이 한정되는 것은 아니다. 본 발명에서 모든 예들 또는 예시적인 용어의 사용은 단순히 본 발명을 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해 본 발명의 범위가 한정되는 것은 아니다. 또한, 당업자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등물의 범주 내에서 설계 조건 및 팩터에 따라 구성될 수 있음을 알 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시 예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위는 본 발명의 사상의 범주에 속한다고 할 것이다.

Claims (13)

  1. 복수의 쉘 -상기 복수의 쉘 각각은 고유의 쉘 인덱스를 가짐- 의 집합인 그리드 영역에 대해 3D 객체가 점유하는 쉘을 판별하여 상기 그리드 영역에 점유 영역을 설정하는 단계;
    상기 점유 영역에 기초하여 상기 복수의 쉘 각각에 하나 이상의 공간 속성을 부여함으로써 상기 그리드 영역에 복수의 의미 영역을 생성하는 단계;
    동일한 기준에 따라 상기 복수의 의미 영역 각각에 고유번호를 부여하는 단계; 및
    상기 복수의 의미 영역에 기초하여 공간 속성 맵을 생성하는 단계;를 포함하되,
    상기 고유번호를 부여하는 단계는,
    상기 의미 영역에 포함되는 쉘의 상기 쉘 인덱스 중 어느 하나를 상기 복수의 의미 영역 각각의 상기 고유번호로 부여하는, 공간 속성 정보를 3D 정보와 결합하는 방법.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 복수의 의미 영역을 생성하는 단계는,
    상기 복수의 쉘 각각에 대하여, 인접하는 쉘의 쉘 인덱스를 포함하는 상기 공간 속성을 부여함으로써 상기 복수의 의미 영역을 생성하는 단계;
    를 포함하는, 공간 속성 정보를 3D 정보와 결합하는 방법.
  4. 제 1 항에 있어서,
    상기 점유 영역을 설정하는 단계는,
    상기 3D 객체의 외형 경계를 획득하는 단계; 및
    상기 하나 이상의 쉘 중에서 상기 외형 경계의 폐영역을 포함하는 쉘의 집합을 상기 점유 영역으로 설정하는 단계;
    를 더 포함하는, 공간 속성 정보를 3D 정보와 결합하는 방법.
  5. 제 1 항에 있어서,
    상기 점유 영역을 설정하는 단계는,
    상기 3D 객체가 점유하지 않는 쉘 영역을 판별하여 상기 그리드 영역 상에 하나 이상의 비점유 영역을 설정하는 단계;
    를 더 포함하고,
    상기 복수의 의미 영역을 생성하는 단계는,
    상기 점유 영역 및 상기 비점유 영역에 기초하여 상기 복수의 의미 영역을 생성하는 단계;
    를 더 포함하는, 공간 속성 정보를 3D 정보와 결합하는 방법.
  6. 제 1 항에 있어서,
    상기 복수의 의미 영역을 생성하는 단계는,
    상기 3D 객체의 특성에 기초하여 가중치를 결정하는 단계; 및
    상기 복수의 쉘 각각에 상기 가중치를 포함하는 상기 공간 속성을 부여함으로써, 상기 복수의 의미 영역을 생성하는 단계;
    를 포함하는, 공간 속성 정보를 3D 정보와 결합하는 방법.
  7. 제 1 항에 있어서,
    상기 복수의 의미 영역을 생성하는 단계는,
    상기 그리드 영역 상의 복수의 쉘에 대하여, 상기 공간 속성에 기초하여 인접하는 쉘 간의 연결 관계인 링크에 가중치를 부여하는 단계;
    를 더 포함하는, 공간 속성 정보를 3D 정보와 결합하는 방법.
  8. 제 1 항에 있어서,
    상기 복수의 의미 영역은,
    상기 점유 영역과 인접한 소정의 영역인 확산 영역을 포함하는,
    공간 속성 정보를 3D 정보와 결합하는 방법.
  9. 제 8 항에 있어서,
    상기 복수의 의미 영역을 생성하는 단계는,
    상기 3D 객체의 특성에 기초하여 이동 가능 영역 및 이동 불가능 영역을 구분하는 단계;
    상기 이동 가능 영역에 속한 쉘이 상기 이동 불가능 영역에 속한 쉘보다 높은 이동 가중치를 가지도록 가중치를 결정하는 단계; 및
    상기 가중치에 기초하여 상기 복수의 의미 영역을 생성하는 단계;
    를 더 포함하는, 공간 속성 정보를 3D 정보와 결합하는 방법.
  10. 제 9 항에 있어서,
    상기 가중치를 결정하는 단계는,
    상기 확산 영역에 속한 쉘이 상기 확산 영역에 속하지 않은 쉘보다 더 높은 상기 이동 가중치를 가지도록 상기 가중치를 결정하는 단계;
    를 더 포함하는, 공간 속성 정보를 3D 정보와 결합하는 방법.
  11. 제 1 항에 있어서,
    상기 공간 속성 맵은,
    상기 복수의 쉘 각각에 상기 3D 객체에 관한 정보가 상기 공간 속성으로써 부여됨으로써 상기 그리드 영역과 상기 3D 객체가 매칭된 것인,
    공간 속성 정보를 3D 정보와 결합하는 방법.
  12. 적어도 하나의 프로그램이 저장된 메모리; 및
    상기 적어도 하나의 프로그램을 실행함으로써 연산을 수행하는 프로세서를 포함하고,
    상기 프로세서는,
    복수의 쉘 -상기 복수의 쉘 각각은 고유의 쉘 인덱스를 가짐- 의 집합인 그리드 영역에 대해 3D 객체가 점유하는 쉘을 판별하여 상기 그리드 영역 상에 점유 영역을 설정하고,
    상기 점유 영역에 기초하여 상기 복수의 쉘 각각에 하나 이상의 공간 속성을 부여함으로써 상기 그리드 영역에 복수의 의미 영역을 생성하고,
    동일한 기준에 따라 상기 복수의 의미 영역 각각에 고유번호를 부여하고,
    상기 복수의 의미 영역에 기초하여 공간 속성 맵을 생성하되,
    상기 고유번호를 부여하는 것은,
    상기 의미 영역에 포함되는 쉘의 상기 쉘 인덱스 중 어느 하나를 상기 복수의 의미 영역 각각의 상기 고유번호로 부여하는, 공간 속성 정보를 3D 정보와 결합하는 장치.
  13. 제 1 항의 방법을 컴퓨터에서 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR1020220149535A 2022-09-30 2022-11-10 공간 속성 정보를 3d 정보와 결합하는 방법 및 장치 KR102593795B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230140903A KR20240046099A (ko) 2022-09-30 2023-10-20 공간 속성 정보를 3d 정보와 결합하는 방법 및 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20220125788 2022-09-30
KR1020220125788 2022-09-30

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020230140903A Division KR20240046099A (ko) 2022-09-30 2023-10-20 공간 속성 정보를 3d 정보와 결합하는 방법 및 장치

Publications (1)

Publication Number Publication Date
KR102593795B1 true KR102593795B1 (ko) 2023-10-26

Family

ID=88508833

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020220149535A KR102593795B1 (ko) 2022-09-30 2022-11-10 공간 속성 정보를 3d 정보와 결합하는 방법 및 장치
KR1020230140903A KR20240046099A (ko) 2022-09-30 2023-10-20 공간 속성 정보를 3d 정보와 결합하는 방법 및 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020230140903A KR20240046099A (ko) 2022-09-30 2023-10-20 공간 속성 정보를 3d 정보와 결합하는 방법 및 장치

Country Status (1)

Country Link
KR (2) KR102593795B1 (ko)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170134165A (ko) * 2016-05-26 2017-12-06 고려대학교 산학협력단 이동 로봇 제어 방법
KR20190098201A (ko) * 2017-04-28 2019-08-21 구글 엘엘씨 인테리어 공간의 3d 그리드 표현에서 2d 플로어 플랜 추출
JP2022502306A (ja) * 2018-09-28 2022-01-11 ズークス インコーポレイテッド レーダ空間推定
KR102357429B1 (ko) * 2021-01-06 2022-02-08 주식회사 플럭시티 3차원 모델링 데이터의 공간정보 설정 및 활용 방법, 장치 및 컴퓨터-판독가능 기록매체
KR20220058079A (ko) * 2020-10-30 2022-05-09 주식회사 케이티 자율주행 로봇, 계층 코스트 맵 생성 방법 및 이를 이용한 주행 경로 생성 방법
KR102400512B1 (ko) * 2020-11-17 2022-05-23 한국과학기술연구원 의미 지도 제작 시스템 및 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170134165A (ko) * 2016-05-26 2017-12-06 고려대학교 산학협력단 이동 로봇 제어 방법
KR20190098201A (ko) * 2017-04-28 2019-08-21 구글 엘엘씨 인테리어 공간의 3d 그리드 표현에서 2d 플로어 플랜 추출
JP2022502306A (ja) * 2018-09-28 2022-01-11 ズークス インコーポレイテッド レーダ空間推定
KR20220058079A (ko) * 2020-10-30 2022-05-09 주식회사 케이티 자율주행 로봇, 계층 코스트 맵 생성 방법 및 이를 이용한 주행 경로 생성 방법
KR102400512B1 (ko) * 2020-11-17 2022-05-23 한국과학기술연구원 의미 지도 제작 시스템 및 방법
KR102357429B1 (ko) * 2021-01-06 2022-02-08 주식회사 플럭시티 3차원 모델링 데이터의 공간정보 설정 및 활용 방법, 장치 및 컴퓨터-판독가능 기록매체

Also Published As

Publication number Publication date
KR20240046099A (ko) 2024-04-08

Similar Documents

Publication Publication Date Title
CN103971416B (zh) 将3d场景分割为由计算资源处理的多个区域
US20170076016A1 (en) Automated layout generation
Ying et al. Construction of 3D volumetric objects for a 3D cadastral system
JP4905210B2 (ja) 三次元内部空間モデル生成方法、装置及びプログラム
CN109308838A (zh) 一种基于室内地图的室内空间拓扑路网生成方法及装置
CN108211354A (zh) 3d游戏场景中虚拟资源的生成方法及装置
CN111080786B (zh) 基于bim的室内地图模型构建方法及装置
CN108665117B (zh) 一种室内空间最短路径的计算方法、装置、终端设备以及存储介质
Zverovich et al. Emergency response in complex buildings: automated selection of safest and balanced routes
CN101930627A (zh) 一种基于二维户型图的三维户型建模方法
KR102152251B1 (ko) Bim 데이터를 재난안전 공간 데이터로 변환하기 위한 장치 및 방법
KR102050169B1 (ko) 옥트리 구조 기반 3차원 지도 서비스를 위한 3차원 모델의 공간 인덱싱 방법과 이를 이용하는 3차원 지도 서비스 제공 방법 및 장치
US11250175B2 (en) Spatial-information generation apparatus, spatial-information generation method, and non-transitory computer readable medium
Schaffranek et al. Space syntax for generative design: On the application of
EP3086293B1 (en) Simulation device
CN107391745A (zh) 大规模空间数据分级快速索引方法和装置
CN110287508A (zh) 一种多源三维城市模型的可视化融合系统
Yang et al. Floor field model based on cellular automata for simulating indoor pedestrian evacuation
KR102492696B1 (ko) 그리드 기반의 공간 속성 부여를 통한 가시화 디지털 트윈 에너지 관리 장치 및 방법
KR102593795B1 (ko) 공간 속성 정보를 3d 정보와 결합하는 방법 및 장치
KR102117932B1 (ko) 사운드 트레이싱 장치 및 방법
JP2018073427A5 (ko)
Narvaez et al. The spatial dimensions of trade: From the geography of uses to the architecture of local economies
CN114491772B (zh) 一种户型布局生成方法及装置
KR20200029145A (ko) 지능형 실내 공간 서비스를 위한 공간의 기능 및 의미를 포함한 실내 공간 모델링 방법 및 장치

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant