KR20220086858A - 가상 공간을 생성하는 사용자 단말, 방법 및 컴퓨터 프로그램 - Google Patents

가상 공간을 생성하는 사용자 단말, 방법 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20220086858A
KR20220086858A KR1020200177034A KR20200177034A KR20220086858A KR 20220086858 A KR20220086858 A KR 20220086858A KR 1020200177034 A KR1020200177034 A KR 1020200177034A KR 20200177034 A KR20200177034 A KR 20200177034A KR 20220086858 A KR20220086858 A KR 20220086858A
Authority
KR
South Korea
Prior art keywords
virtual
space
polyhedron
virtual space
physical space
Prior art date
Application number
KR1020200177034A
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 KR1020200177034A priority Critical patent/KR20220086858A/ko
Publication of KR20220086858A publication Critical patent/KR20220086858A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Tourism & Hospitality (AREA)
  • Architecture (AREA)
  • Primary Health Care (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Processing Or Creating Images (AREA)

Abstract

가상 공간을 생성하는 사용자 단말은 사용자 단말의 위치 정보에 기초하여 사용자 단말이 기생성된 제 1 가상 공간에 대응하는 제 1 물리적 공간을 이탈한지를 판단하는 이탈 판단부, 사용자 단말이 상기 1 물리적 공간을 이탈한 경우, 위치 정보에 대응하는 제 2 물리적 공간에 대한 영상을 촬영하는 촬영부, 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성하는 다면체 생성부, 제 2 물리적 공간에 대한 영상 내에서 가상 다면체의 방향 및 크기를 조절하여 제 2 물리적 공간에 가상 다면체를 피팅시키는 피팅부, 제 2 물리적 공간에 피팅된 가상 다면체를 이용하여 제 2 물리적 공간에 대응하는 제 2 가상 공간을 생성하는 가상 공간 생성부 및 기설정된 공간 병합 조건에 기초하여 제 1 가상 공간 및 제 2 가상 공간을 병합하는 가상 공간 병합부를 포함할 수 있다.

Description

가상 공간을 생성하는 사용자 단말, 방법 및 컴퓨터 프로그램{USER DEVICE, METHOD AND SYSTEM FOR GENERATING VIRTUAL SPACE}
본 발명은 가상 공간을 생성하는 사용자 단말, 방법 및 컴퓨터 프로그램에 관한 것이다.
일반적으로 증강 현실 서비스(또는 가상 현실 서비스)를 위한 가상 공간을 생성하기 위해서는 폴리곤, 텍스쳐, 광원 등의 그래픽 요소를 장면(Scene)에 맞게 변환해야 한다.
그래픽적으로 표현된 장면에 대한 최적화된 렌더링을 제공하기 위해 장면을 구조화하는데 이를 작업 그래프(Scene graph)라고 한다. 이러한, 작업 그래프의 종류에는 예를 들어, OpenSG, OpenSceneGraph, USDZ 등의 다양한 포맷들이 있지만, 대부분 그래픽 저작 소프트웨어나 운영 체제에 의존성이 있어 특정 서비스에 사용하기 위해서는 재정의가 필요하다.
한편, 모바일 단말 기반의 공간 분석 방법으로 구글의 ARCore나 애플의 ARKit 등이 있다. 그러나 이러한 기술은 바닥이나 테이블 등의 단순 평면을 인식하는 것으로 룸(Room) 등을 인식하여 가상 공간을 생성하기에는 한계가 있다.
즉, 사물(Object) 크기나 테이블 정도 범위에서 증강 현실을 구현하기에는 적합하지만, 실내(indoor)와 같이 룸 스케일의 물리적 공간을 분석하고, 가상 공간을 생성하기에는 사용자 편의 측면 및 공간 구축 과정에서 한계가 있다.
한국등록특허공보 제10-1867020호 (2018.06.05. 등록)
본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 기생성된 제 1 가상 공간과 추가로 생성될 제 2 가상 공간을 병합하여 가상 공간을 확장하고자 한다.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른 가상 공간을 생성하는 사용자 단말은 상기 사용자 단말의 위치 정보에 기초하여 상기 사용자 단말이 기생성된 제 1 가상 공간에 대응하는 제 1 물리적 공간을 이탈한지를 판단하는 이탈 판단부; 상기 사용자 단말이 상기 1 물리적 공간을 이탈한 경우, 상기 위치 정보에 대응하는 제 2 물리적 공간에 대한 영상을 촬영하는 촬영부; 상기 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성하는 다면체 생성부; 상기 제 2 물리적 공간에 대한 영상 내에서 상기 가상 다면체의 방향 및 크기를 조절하여 상기 제 2 물리적 공간에 상기 가상 다면체를 피팅시키는 피팅부; 상기 제 2 물리적 공간에 피팅된 상기 가상 다면체를 이용하여 상기 제 2 물리적 공간에 대응하는 제 2 가상 공간을 생성하는 가상 공간 생성부; 및 기설정된 공간 병합 조건에 기초하여 상기 제 1 가상 공간 및 상기 제 2 가상 공간을 병합하는 가상 공간 병합부를 포함할 수 있다.
본 발명의 제 2 측면에 따른 사용자 단말에 의해 수행되는 가상 공간을 생성하는 방법은 상기 사용자 단말의 위치 정보에 기초하여 상기 사용자 단말이 기생성된 제 1 가상 공간에 대응하는 제 1 물리적 공간을 이탈한지를 판단하는 단계; 상기 사용자 단말이 상기 1 물리적 공간을 이탈한 경우, 상기 위치 정보에 대응하는 제 2 물리적 공간에 대한 영상을 촬영하는 단계; 상기 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성하는 단계; 상기 제 2 물리적 공간에 대한 영상 내에서 상기 가상 다면체의 방향 및 크기를 조절하여 상기 제 2 물리적 공간에 상기 가상 다면체를 피팅시키는 단계; 상기 제 2 물리적 공간에 피팅된 상기 가상 다면체를 이용하여 상기 제 2 물리적 공간에 대응하는 제 2 가상 공간을 생성하는 단계; 및 기설정된 공간 병합 조건에 기초하여 상기 제 1 가상 공간 및 상기 제 2 가상 공간을 병합하는 단계를 포함할 수 있다.
본 발명의 제 3 측면에 따른 가상 공간을 생성하는 명령어들의 시퀀스를 포함하는 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램은 컴퓨팅 장치에 의해 실행될 경우, 사용자 단말의 위치 정보에 기초하여 상기 사용자 단말이 기생성된 제 1 가상 공간에 대응하는 제 1 물리적 공간을 이탈한지를 판단하고, 상기 사용자 단말이 상기 1 물리적 공간을 이탈한 경우, 상기 위치 정보에 대응하는 제 2 물리적 공간에 대한 영상을 촬영하고, 상기 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성하고, 상기 제 2 물리적 공간에 대한 영상 내에서 상기 가상 다면체의 방향 및 크기를 조절하여 상기 제 2 물리적 공간에 상기 가상 다면체를 피팅시키고, 상기 제 2 물리적 공간에 피팅된 상기 가상 다면체를 이용하여 상기 제 2 물리적 공간에 대응하는 제 2 가상 공간을 생성하고, 기설정된 공간 병합 조건에 기초하여 상기 제 1 가상 공간 및 상기 제 2 가상 공간을 병합하는 명령어들의 시퀀스를 포함할 수 있다.
상술한 과제 해결 수단은 단지 예시적인 것으로서, 본 발명을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 기재된 추가적인 실시예가 존재할 수 있다.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 본 발명은 기생성된 제 1 가상 공간과 추가로 생성될 제 2 가상 공간을 병합하여 가상 공간을 확장할 수 있다.
또한, 본 발명은 가상 공간을 손쉽고 정교하게 생성할 수 있도록 사용자에게 검증 가이드를 제공할 수 있다.
또한, 본 발명은 검증 가이드를 통해 가상 공간의 생성에 부족한 부분을 보완하도록 함으로써 가상 공간을 이용한 몰입감 있는 가상 현실 서비스를 제공할 수 있다.
도 1은 본 발명의 일 실시예에 따른, 사용자 단말의 블록도이다.
도 2는 본 발명의 일 실시예에 따른, 제 1 물리적 공간에서의 이탈을 판단하는 방법을 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른, 영상 내에서 제 2 물리적 공간에 가상 다면체를 피팅하는 방법을 설명하기 위한 도면이다.
도 4a 내지 4d는 본 발명의 일 실시예에 따른, 검증 가이드를 제공하는 방법을 도면이다.
도 5a 내지 5e는 본 발명의 일 실시예에 따른, 제 1 가상 공간 및 제 2 가상 공간을 병합하는 방법을 설명하기 위한 도면이다.
도 6a 내지 6h는 본 발명의 일 실시예에 따른, 가상 공간의 생성을 위해 제공되는 가상 공간 모델링 유저 인터페이스를 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따른, 가상 공간을 생성하는 방법을 나타낸 흐름도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다.
본 명세서에 있어서 단말 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말 또는 디바이스에서 수행될 수도 있다.
이하, 첨부된 구성도 또는 처리 흐름도를 참고하여, 본 발명의 실시를 위한 구체적인 내용을 설명하도록 한다.
도 1은 본 발명의 일 실시예에 따른, 사용자 단말(10)의 블록도이다.
도 1을 참조하면, 사용자 단말(10)은 이탈 판단부(100), 촬영부(110), 평면 탐색부(120), 다면체 생성부(130), 템플릿 적합성 평가부(140), 추천부(150), 피팅부(160), 가상 공간 생성부(170) 및 가상 공간 병합부(180)를 포함할 수 있다. 다만, 도 1에 도시된 사용자 단말(10)은 본 발명의 하나의 구현 예에 불과하며, 도 1에 도시된 구성요소들을 기초로 하여 여러 가지 변형이 가능하다.
이하에서는 도 2 내지 6h를 함께 참조하여 도 1을 설명하기로 한다.
이탈 판단부(100)는 가상 공간의 생성을 위해 사용자 단말(10)의 카메라를 통해 제 2 물리적 공간의 촬영이 시작되면, 촬영이 시작되는 시점에서의 사용자 단말(10)의 위치 정보를 원점으로 설정하여 사용자 단말(10)의 위치를 추적할 수 있다.
이탈 판단부(100)는 사용자 단말(10)의 위치 정보에 기초하여 사용자 단말(10)이 기생성된 제 1 가상 공간에 대응하는 제 1 물리적 공간을 이탈했는지 여부를 판단할 수 있다. 여기서, 제 1 가상 공간은 밑에서 서술할 제 2 가상 공간을 생성하는 방법과 동일한 방법으로 생성될 수 있다.
이탈 판단부(100)는 사용자 단말(10)의 위치 정보와 기생성된 제 1 가상 공간의 바닥면 또는 천장면에 매핑된 위치 정보와 비교하여 사용자 단말(10)이 제 1 물리적 공간을 이탈한지를 판단할 수 있다. 예를 들어, 이탈 판단부(100)는 사용자 단말(10)의 위치 정보를 기생성된 제 1 가상 공간의 X-Z 평면도(즉, 바닥면 및 천장면)에 투영함으로써 사용자 단말(10)의 위치 정보가 기생성된 제 1 가상 공간의 바닥면 또는 천장면에 매핑된 위치 정보에 포함되는지 여부를 판단할 수 있다. 이 때, 이탈 판단부(100)는 사용자 단말(10)의 위치 정보가 기생성된 제 1 가상 공간의 바닥면 또는 천장면에 매핑된 위치 정보에 포함되지 않은 경우, 제 1 물리적 공간을 이탈한 것으로 판단할 수 있다.
이탈 판단부(100)는 사용자 단말(10)의 위치 정보와 가장 가까운 벽면에 대한 벡터와 벽면의 법선 벡터가 서로 마주보지 않는 경우, 사용자 단말(10)이 제 1 물리적 공간을 이탈한 것으로 판단할 수 있다. 예를 들어, 도 2를 참조하면, 이탈 판단부(100)는 사용자 단말(10)의 위치로부터 가장 가까운 벽면(201)을 향하는 방향 벡터(203)와 해당 벽면(201)의 중앙에서 뻗어나가는 법선 벡터(205) 간의 사이각이 기설정된 각도 범위(예컨대, 90도 내지 180도)에 속하면, 사용자 단말(10)이 제 1 물리적 공간을 이탈한 것으로 판단할 수 있다.
사용자 단말(10)이 제 1 물리적 공간을 이탈한 것으로 판단되면, 제 1 물리적 공간에 대응하는 제 1 가상 공간의 표시 형태가 변경될 수 있다. 또한, 제 1 물리적 공간의 이탈은 새로운 가상 공간을 생성하는 조건이 될 수 있다.
예를 들어, 사용자 단말(10)이 촬영하는 촬영 공간이 제 1 물리적 공간과 다른 경우, 사용자 단말(10)의 화면에는 기생성된 제 1 가상 공간을 구성하는 텍스쳐 이미지가 반투명 텍스쳐 이미지로 변경되어 표시될 수 있다.
촬영부(110)는 사용자 단말(10)이 1 물리적 공간을 이탈한 경우, 사용자 단말(10)의 위치 정보에 대응하는 제 2 물리적 공간에 대한 영상을 촬영할 수 있다.
다면체 생성부(130)는 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성할 수 있다.
다면체 생성부(130)는 제 2 물리적 공간에 대한 영상에서 제 2 물리적 공간에 포함된 바닥면, 벽면, 천장면 중 하나를 사용자로부터 선택받은 경우, 선택된 하나를 가상 다면체의 시작 위치로 설정할 수 있다. 여기서, 가상 다면체의 시작 위치 설정은 사용자 단말(10)의 화면에 표시된 바닥면 아이콘, 벽 아이콘, 천장 아이콘 중 하나를 사용자로부터 선택받아 설정될 수 있다.
다른 예로, 가상 다면체의 시작 위치는 사용자 단말(10)에서 자동으로 최적의 평면을 선정하여 선정된 평면을 시작 위치로서 설정될 수도 있다. 이 때, 가상 다면체의 시작 위치 선정에 대한 우선 순위는 바닥면, 벽면, 천장면 순으로 기지정될 수 있다. 다른 예로, 가상 다면체의 시작 위치는 기생성된 제 1 가상 공간에 대응하는 제 1 물리적 공간의 벽면으로부터 기설정된 거리 이상 떨어진 지점에 해당하는 평면이 될 수도 있다. 또한, 가상 다면체의 시작 위치는 사용자의 설정에 의해 변경될 수 있다.
다면체 생성부(130)는 설정된 가상 다면체의 시작 위치에 기초하여 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성할 수 있다.
다면체 생성부(130)는 설정된 가상 다면체의 시작 위치에 기초하여 복수의 가상 다면체 템플릿 중 하나의 가상 다면체 템플릿을 선택하고, 선택된 가상 다면체 템플릿을 이용하여 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성할 수 있다. 이 때, 가상 다면체 템플릿은 가상 다면체의 시작 위치에 따라 달라질 수 있다.
이 후, 선택된 가상 다면체 템플릿이 제 2 물리적 공간에 적합한 가상 다면체를 생성하는데 적합한 템플릿인지를 평가해야 한다.
평면 탐색부(120)는 제 2 물리적 공간에 대한 영상 내에서 특징점을 이용하여 평면을 인식하고, 제 2 물리적 공간에서 인식된 복수의 평면 중 수직 평면을 선택받고, 제 2 물리적 공간에서 인식된 복수의 평면 중 제 1 가상 공간의 시작 위치와의 거리가 가장 가까운 제 1 평면을 탐색할 수 있다.
템플릿 적합성 평가부(140)는 선택받은 수직 평면, 제 1 가상 공간의 시작 위치 및 탐색된 제 1 평면에 대한 정보에 기초하여 복수의 가상 다면체 템플릿에 대한 적합성을 평가할 수 있다. 여기서, 적합성은 벽면의 개수 정보, 벽면 간의 사이각 정보, 벽면의 길이 비율 정보, 바닥 도형의 닮음 정보, 제 1 물리적 공간과의 연결 여부 정보 중 적어도 하나를 포함할 수 있다.
이 때, 가상 다면체 템플릿에 대한 적합성의 점수는 사용자 단말(10)의 화면에 수치 또는 그래프 형식으로 표시될 수 있다.
템플릿 적합성 평가부(140)는 현재까지 구성된 바닥면, 벽면의 형태와 복수의 가상 다면체 템플릿 각각과 비교하여 복수의 가상 다면체 템플릿에 대한 적합성을 평가할 수 있다.
예를 들어, 육면체 형태의 가상 다면체 템플릿을 사용한다고 가정하면, 템플릿 적합성 평가부(140)는 매칭 과정에서 제 2 물리적 공간의 벽면 간 각도에 맞게 육면체 형태의 가상 다면체 템플릿을 회전시키고, 육면체 형태의 가상 다면체 템플릿의 벽면 간 사이각(90도)과 제 2 물리적 공간에서의 벽면 간 사이각(예컨대, 60도)을 비교하여 해당 사이각들이 서로 상이하면 육면체 형태의 가상 다면체 템플릿이 적합하지 않다고 판단할 수 있다.
도 4a를 참조하면, 추천부(150)는 복수의 가상 다면체 템플릿에 대한 적합성 평가에 기초하여 제 2 물리적 공간에 대응하는 제 2 가상 공간을 생성하는데 적합한 가상 다면체 템플릿을 추천할 수 있다.
추천부(150)는 가상 다면체 템플릿을 매칭하는 과정에서 바닥면, 벽면, 천장면 간의 사이각을 계산하여 현재 선택된 가상 다면체 템플릿을 다른 가상 다면체 템플릿을 변경하도록 하는 가이드를 사용자에게 제공할 수 있다.
예를 들어, 육면체 형태의 가상 다면체 템플릿을 사용할 때, 매칭 과정에서 제 2 물리적 공간의 두 벽면 간 사이각이 90도가 아닌 경우(예컨대, 가상 다면체 템플릿의 벽면 간 사이각이 90이고, 제 2 물리적 공간에서의 벽면 간 사이각이 60도인 경우), 추천부(150)는 현재 선택된 가상 다면체 템플릿의 각도를 변경할지 아니면 다른 가상 다면체 템플릿으로 변경할지를 선택하도록 하는 가이드(40)를 사용자에게 제공할 수 있다. 만일, 사용자가 다른 가상 다면체 템플릿으로 변경하는 것을 선택한 경우, 추천부(150)는 제 2 물리적 공간의 벽면간의 사이각에 적합한 다른 종류의 가상 다면체 템플릿(41)을 사용자에게 추천할 수 있다.
다면체 생성부(130)는 선택받은 수직 평면, 제 1 가상 공간의 시작 위치 및 탐색된 제 1 평면에 대한 정보에 기초하여 복수의 가상 다면체 템플릿 중 하나의 가상 다면체 템플릿을 선택하고, 선택된 가상 다면체 템플릿을 이용하여 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성할 수 있다.
다면체 생성부(130)는 템플릿 적합성 평가부(140)에 의한 복수의 가상 다면체 템플릿 각각에 대한 적합성 평가에 기초하여 선택받은 수직 평면, 제 1 가상 공간의 시작 위치 및 탐색된 제 1 평면의 위치 및 각도와 가장 유사한 가상 다면체 템플릿을 선택하고, 선택된 가상 다면체 템플릿을 이용하여 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성할 수 있다.
피팅부(160)는 제 2 물리적 공간에 대한 영상 내에서 가상 다면체의 방향 및 크기를 조절하여 제 2 물리적 공간에 가상 다면체를 피팅시킬 수 있다. 여기서, 피팅(Fitting)은 영상 내 물리적 공간의 형상에 가상 다면체의 형상을 일치시키는 것을 의미한다.
구체적으로, 피팅부(160)는 제 2 물리적 공간에 대한 영상 내에서 특징점을 이용하여 인식된 평면 중 어느 한 수평 평면에 가상 다면체의 어느 한 수평 평면을 피팅시킨 후, 나머지 각 평면마다 거리가 가장 가까운 가상 다면체의 면을 피팅시킬 수 있다.
예를 들어, 피팅부(160)는 제 2 물리적 공간에 대한 영상의 바닥면에 가상 다면체의 바닥면을 위치시킬 수 있다. 이 때, 영상 내 제 2 물리적 공간과 가상 다면체는 바닥면만 일치할 뿐 제 2 물리적 공간의 벽면과 가상 다면체의 벽면의 방향과 크기는 불일치할 수 있고, 제 2 물리적 공간의 천장면과 가상 다면체의 윗면은 높이가 달라 불일치할 수 있다. 이어서, 피팅부(160)는 사용자가 영상에서 제 2 물리적 공간의 우측 벽면을 선택하면, 그 선택된 우측 벽면과 가장 가까운 가상 다면체의 우측면을 선택된 우측 벽면의 형상에 맞게 방향 및 크기를 조절하여 우측 벽면에 붙인다. 이와 같은 방식으로 피팅부(160)는 사용자가 선택하는 제 2 물리적 공간의 각 평면에 대해 가상 다면체의 가장 가까운 면의 방향 및 크기를 조절함으로써 최종적으로 가상 다면체를 영상 내 제 2 물리적 공간에 피팅시킬 수 있다.
도 3을 참조하면, 도 3의 (a)는 가장 일반적인 육면체 형태의 가상 다면체를 나타낸다. 육면체 형태의 가상 다면체는 예를 들어, 1*1*1 m를 기준으로 6 개의 면으로 구성될 수 있다. 육면체 형태의 가상 다면체에서
Figure pat00001
는 천장면이고,
Figure pat00002
은 바닥면이고,
Figure pat00003
는 좌측 벽면이고,
Figure pat00004
는 우측 벽면이고,
Figure pat00005
은 후면 벽면이고,
Figure pat00006
은 정면 벽면을 나타낸다. 육면체의 바닥면의 중심을 3차원 직교 좌표계의 원점(0, 0, 0)으로 하여 x 축, y 축, z 축을 정의할 수 있다.
도 3의 (b) 및 (c)에 도시된 바와 같이, 가상 다면체의 바닥면을 영상 내 제 2 물리적 공간의 바닥면(④)에 위치시켰을 때, 제 2 물리적 공간의 좌우 벽면과 천장면은 가상 다면체와 일치하지 않는다. 사용자가 제 2 물리적 공간의 우측 벽면(⑤)을 선택하면, 이에 가장 가까운 가상 다면체의 우측면의 크기와 방향을 조절하여 제 2 물리적 공간의 우측 벽면에 일치시킨다. 이와 같은 방식으로, 나머지 좌측 벽면(⑤'), 정면 벽면과 천장면(⑥)에 가상 다면체를 피팅할 수 있다.
템플릿 적합성 평가부(140)는 생성된 가상 다면체의 각 평면을 제 2 물리적 공간의 평면마다 피팅시킬 때마다 피팅된 평면이 현재 가상 다면체 템플릿에 적합한지 여부를 검증할 수 있다. 예를 들어, 템플릿 적합성 평가부(140)는 가상 다면체의 우측 벽면을 제 2 물리적 공간의 우측 벽면에 피팅시킨 후, 피팅된 제 2 물리적 공간의 우측 벽면의 상태가 현재 선택된 가상 다면체 템플릿에 적합한지를 검증할 수 있다.
템플릿 적합성 평가부(140)는 적합성 평가 기준에 따른 합산 결과에 기초하여 현재 선택된 가상 다면체 템플릿에 대한 적합성을 평가할 수 있다.
예를 들어, 템플릿 적합성 평가부(140)는 제 2 물리적 공간에 피팅된 벽면의 개수 및 선택된 가상 다면체 템플릿의 벽면의 개수에 기초하여 벽면의 개수 정보(=피팅된 벽면의 개수/가상 다면체 템플릿의 개수)를 계산하여 선택된 가상 다면체 템플릿에 대한 제 1 적합성 점수를 산출할 수 있다.
또한, 템플릿 적합성 평가부(140)는 제 2 물리적 공간의 벽면 간의 사이각 합 및 사이각 비율 구성(예켠대, 60도 *3 또는 90도*4 또는, 60도*2 + 120도*2 등)과 선택된 가상 다면체 템플릿의 벽면 간의 사이각 합 및 사이각 비율 구성 간의 비교에 기초하여 선택된 가상 다면체 템플릿에 대한 제 2 적합성 점수를 산출할 수 있다.
또한, 템플릿 적합성 평가부(140)는 제 2 물리적 공간의 벽면을 바닥면에 투영했을 때 벽면의 길이 비율 및 형태 정보(예컨대, 정다각형, 직사각형 등)에 기초하여 선택된 가상 다면체 템플릿에 대한 제 3 적합성 점수를 산출할 수 있다.
또한, 템플릿 적합성 평가부(140)는 제 2 물리적 공간의 바닥면의 도형과 선택된 가상 다면체 템플릿의 바닥면의 도형 간의 닮음 정도(예켠대, 바닥의 모서리 각도, 선의 비율 등으로 닮음 정도를 판단함)에 기초하여 선택된 가상 다면체 템플릿에 대한 제 4 적합성 점수를 산출할 수 있다.
또한, 템플릿 적합성 평가부(140)는 기생성된 제 1 가상 공간에 대응하는 제 1 물리적 공간에 제 2 물리적 공간이 일부 포함될 경우, 제 1 물리적 공간에 포함되지 않은 제 2 물리적 공간의 영역과 선택된 가상 다면체 템플릿의 영역 간의 닮음 정도를 비교하여 제 1 물리적 공간과의 연결 여부 정보를 도출하고, 도출된 제 1 물리적 공간과의 연결 여부 정보에 기초하여 선택된 가상 다면체 템플릿에 대한 제 5 적합성 점수를 산출할 수 있다.
또한, 템플릿 적합성 평가부(140)는 선택된 가상 다면체 템플릿에 대한 제 1 내지 5 적합성 점수의 합산 결과에 기초하여 선택된 가상 다면체 템플릿에 대한 적합성을 평가할 수 있다.
한편, 제 2 물리적 공간의 피팅 과정에서 사용중인 가상 다면체로 피팅이 어려울 경우, 피팅부(160)는 피팅 조정 가이드를 제공할 수 있다. 예를 들어, 사용중인 가상 다면체의 크기가 커서 텍스쳐 이미지(제 2 물리적 공간의 영상으로부터 획득된 이미지)의 세밀도를 떨어뜨리거나, 사용중인 가상 다면체로 벽면이나 바닥면의 형상을 표현하지 못하는 경우, 피팅부(160)는 피팅 조정 가이드를 제공할 수 있다.
예를 들어, 도 4d를 참조하면, 피팅부(160)는 제 2 물리적 공간의 영상으로부터 획득된 텍스쳐 이미지를 분석하고, 분석된 텍스쳐 이미지가 사용중인 가상 다면체의 크기와 차이가 있는 경우, 획득된 텍스쳐 이미지의 크기를 조정하거나, 사용중인 가상 다면체의 크기를 조정하거나 사용자 정의로 조정하도록 하는 피팅 조정 가이드를 사용자에게 제공할 수 있다.
예를 들어, 피팅부(160)는 획득된 텍스쳐 이미지로부터 실내 내장재 정보(예컨대, 데코 타일의 개수, 벽면 파티션의 개수, 천장 석고보드의 개수 등)를 검출하고, 검출된 실내 내장재 정보로부터 공간의 대략적인 크기를 도출할 수 있다. 또한, 피팅부(160)는 도출된 공간의 크기가 현재 사용중인 가상 다면체의 크기와 다를 경우, 피팅 조정 가이드를 사용자에게 제공할 수 있다.
선택된 가상 다면체 템플릿을 이용한 가상 다면체의 모든 면에 대하여 제 2 물리적 공간의 모든 면의 피팅이 완료된 경우, 기생성된 제 1 물리적 공간과 제 2 물리적 공간을 구분하여 피팅된 모든 면에 대한 정보는 데이터베이스에 저장될 수 있다.
가상 공간 생성부(170)는 제 2 물리적 공간에 피팅된 가상 다면체를 이용하여 제 2 물리적 공간에 대응하는 제 2 가상 공간을 생성할 수 있다.
예를 들어, 가상 공간 생성부(170)는 제 2 물리적 공간의 벽면의 크기에 따라 2차원 그리드(Grid) 형태의 패치를 제 2 가상 공간의 벽면에 드로잉하고, 벽면 이미지(제 2 물리적 공간에 대한 촬영 영상에 포함된 벽면 이미지)를 제 2 가상 공간의 벽면에 붙여 나가는 방식으로 벽면 텍스쳐 이미지를 채울 수 있다. 이 때, 가상 공간 생성부(170)는 제 2 물리적 공간의 실제 벽면의 좌표 정보를 제 2 물리적 공간을 촬영하는 카메라 영상의 좌표로 변환하여 벽면 이미지를 획득할 수 있다.
예를 들어, 가상 공간 생성부(170)는 제 2 가상 공간의 바닥면(또는 천장면)의 경우, 그리드 방식으로 촬영된 바닥면 텍스쳐 이미지(또는 촬영된 천장면 텍스쳐 이미지)를 제 2 가상 공간의 바닥면(또는 천장면)에 이어붙이거나 기설정된 타일 영역을 반복하여 이어붙일 수 있다.
가상 공간 생성부(170)는 사용자의 손 제스쳐를 이용하여 가상 다면체과 제 2 물리적 공간이 매칭된 평면의 텍스쳐 이미지를 제 2 물리적 공간의 영상으로부터 획득하고, 획득된 텍스쳐 이미지를 이용하여 제 2 가상 공간을 생성할 수 있다.
예를 들어, 제 2 물리적 공간의 영상에 유리 또는 거울이 촬영된 경우, 유리 또는 거울에는 특징점이 검출되지 않는다. 이러한 경우, 유리 또는 거울을 평면으로 인지할 수 있는 객체(예컨대, 스티커 등)이 유리 또는 거울에 부착된 경우, 가상 공간 생성부(170)는 객체가 부착된 유리 또는 거울을 평면의 일부로 인지하고, 인지된 평면의 텍스쳐 이미지를 제 2 가상 공간의 평면에 스티칭할 수 있다.
다른 예로, 가상 공간 생성부(170)는 유리 또는 거울에 객체가 부착되어 있지 않은 경우, 유리 또는 거울에 사용자의 손을 위치시킴으로써 사용자의 손이 포함된 면을 평면으로 인식하고, 인식된 평면의 텍스쳐 이미지를 제 2 가상 공간의 평면에 스티칭할 수 있다.
한편, 가상 공간 생성부(170)는 제 1 가상 공간 및 제 2 가상 공간이 중첩되는 평면이 존재하거나 제 2 물리적 공간을 벗어나는 평면이 제 2 가상 공간에 포함된 경우, 해당 평면을 제 2 가상 공간에서 제거할 수 있다. 이 때, 제거되는 평면에 대하여 별도의 색상이나 글자를 화면에 표시함으로써 제 2 가상 공간에서 제거될 대상을 사용자에게 확인시킬 수 있다.
예를 들어, 가상 공간 생성부(170)는 제거 대상에 대한 제거 모드로서 자동 모드 및 수동 모드가 화면에 표시된 경우, 사용자로부터 자동 모드를 선택받은 경우, 사용자의 별도의 입력없이 불필요한 평면을 자동으로 제거할 수 있다. 이 때, 사용자가 수동 모드를 선택한 경우, 사용자에 의해 지정된 평면에 대한 제거 UI가 화면에 표시될 수 있다. 예를 들어, 가상 공간 생성부(170)는 사용자의 손 제스쳐를 통해 사용자가 지정한 평면을 제 2 가상 공간에서 제거할 수 있다.
예를 들어, 가상 공간 생성부(170)는 제 2 가상 공간의 벽면에 위치한 출입문 영역에 대하여 사용자가 손 제스쳐를 취한 경우, 제 2 가상 공간에서 출입문 영역을 검출하고, 검출된 출입문 영역을 해당 벽면으로부터 분리하여 제거할 수 있다. 여기서, 검출된 출입문 영역의 경우, 제 1 가상 공간 및 제 2 가상 공간 간의 연결 경로 및 이동 경로 등으로 활용될 수도 있다.
한편, 가상 공간 생성부(170)는 제 2 물리적 공간의 영상으로부터 제 2 가상 공간의 평면에 대응하는 텍스쳐 이미지를 획득할 수 있다. 이 때, 가상 공간 생성부(170)는 획득된 텍스쳐 이미지에 포함된 포인트 정보(예컨대, 2차원 포인트 정보 또는 3차원 포인트 정보)에 기초하여 텍스쳐 이미지로부터 객체를 구분하고, 객체를 분리할 수 있다.
가상 공간 생성부(170)는 획득된 텍스쳐 이미지를 깊이 이미지로 전환하고, 전환된 깊이 이미지(즉, 3차원 포인트 클라우드를 포함하는 이미지)로부터 제 2 가상 공간의 평면의 정보를 활용하여 평면과 객체를 분리할 수 있다. 또한, 가상 공간 생성부(170)는 분리된 바닥면, 천장면 및 벽면 각각에 대응하는 텍스쳐 이미지로부터 획득된 포인트 클라우드를 통합하여 적어도 하나의 객체의 3차원 포인트 클라우드를 획득하고, 획득된 객체의 3차원 포인트 클라우드를 분류기에 입력하여 객체를 분리할 수 있다. 이어서, 가상 공간 생성부(170)는 분리된 객체들을 예측 모델에 입력하여 텍스쳐 이미지에서 보이지 않았던 객체들의 특정 부분을 예측할 수 있다.
한편, 앵커 등록부(미도시)는 생성된 제 2 가상 공간의 특정 위치(예컨대, 벽면)에 해당되는 텍스쳐 이미지 중 일부 이미지(예컨대, 벽면에 부착된 특정 객체 이미지)를 앵커(Anchor)로 지정하고, 지정된 앵커에 대한 정보(예컨대, 앵커 이미지 및 좌표 정보 등)를 등록할 수 있다. 예를 들어, 앵커 등록부(미도시)는 제 2 가상 공간의 벽면 텍스쳐 이미지 중 특징점이 가장 영역에 해당되는 텍스쳐 이미지를 앵커 이미지로 선정하고, 선정된 앵커 이미지의 좌표 정보를 등록할 수 있다.
여기서, 등록된 앵커에 대한 정보는 텍스쳐 이미지 중 특징점이 가장 많은 영역에 해당되는 이미지에 대응하는 3차원 포인트 클라우드 정보(또는 1차원 포인트 어레이)일 수 있다.
사용자 단말(10)의 성능에 따라 앵커의 동작 방식이 다음과 같이 결정될 수 있다. 예를 들어, 사용자 단말(10)이 고성능 기기(예컨대, 고사양 또는 레이더가 탑재된 기기)인 경우, 사용자 단말(10)은 실시간으로 3차원 깊이 정보를 생성할 수 있기 때문에 포인트 클라우드를 그대로 사용하는 앵커가 사용자 단말(10)에 표시될 수 있다. 예를 들어, 사용자 단말(10)이 저사양 기기인 경우, 1차원 포인트 어레이로 변환된 앵커가 사용자 단말(10)에 표시될 수 있다.
앵커 적합성 검증부(미도시)는 사용자에 의해 선택된 적어도 하나의 앵커에 대한 적합성을 검증하고, 앵커 등록을 위한 가이드를 제공할 수 있다. 예를 들어, 도 4c를 참조하면, 앵커 적합성 검증부(미도시)는 가상 공간 생성 시, 사용자 단말(10)의 이동 평균 높이(즉, 바닥면으로부터 사용자 단말(10)까지의 높이) 및 사용자에 의해 앵커(42)가 포함된 텍스쳐 이미지에서의 특징점의 개수 정보에 기초하여 앵커(42)에 대한 적합성 점수를 산출할 수 있다. 이 때, 앵커(42)에 대한 적합성 점수는 사용자 단말(10)의 화면에 수치 또는 그래프 형식으로 표현될 수 있다.
또한, 앵커 적합성 검증부(미도시)는 앵커(42)에 대한 적합성 점수에 따라 앵커(42)의 색상을 상이하게 표시함으로써 사용자에게 앵커(42)가 적합한지 여부를 확인시킬 수 있다. 또한, 앵커 적합성 검증부(미도시)는 앵커(42)에 대한 적합성 점수가 기설정된 임계치 이상일 경우, 앵커(42)를 등록할 수 있다. 만일, 앵커(42)에 대한 적합성 점수가 기설정된 임계치 미만인 경우 앵커(42)의 등록은 거부될 수 있다. 이 때, 등록된 앵커(42)의 크기는 사용자에 의해 조정될 수 있다.
표시부(미도시)는 생성된 제 2 가상 공간에 추가적인 가상 요소(예컨대, 공, 깃발, 텍스트, 광원 등)을 배치하여 표시할 수 있다.
앵커 등록부(미도시)는 제 2 가상 공간에 표시된 추가적인 가상 요소 중 하나를 앵커로 지정하고, 지정된 앵커의 앵커 이미지 및 좌표 정보를 등록할 수 있다.
한편, 도 4b를 참조하면, 표시부(미도시)는 제 2 물리적 공간에 대응하는 제 2 가상 공간이 생성되는 과정에서 가상 다면체의 피팅을 위한 최적의 이동 경로를 안내하는 이동 방향 가이드를 사용자 단말(10)의 화면에 표시할 수 있다.
표시부(미도시)는 제 2 물리적 공간에 대응하는 제 2 가상 공간의 생성을 위해 제 2 물리적 공간에 대한 영상 내에 수평 이동 방향 및 추천 이동 방향 중 하나를 사용자 단말(10)의 화면 가운데 표시할 수 있다. 여기서, 추천 이동 방향은 예를 들어, 제 2 물리적 공간에 대한 영상으로부터 검출된 면의 개수 정보, 그리드로 분할된 화면에 포함된 복수의 서브 화면 각각으로부터 검출된 특징점(예컨대, 모서리 패턴)의 개수 정보 및 각 서브 화면의 히스토그램 표준편차, 광학 흐름도(optical flow) 방향 정보(즉, 이전 영상 프레임 대비 각 특징점들이 이동하는 방향), 가상 다면체를 통해 완성되지 못한 면의 방향 정보, 피팅된 면에 텍스쳐 이미지를 채우지 못한 면의 방향 정보 및 앵커를 등록할 때 이미 획득된 텍스쳐 이미지에서 최적의 앵커 위치 방향 정보(예컨대, 특징점이 많이 존재하는 영역으로의 방향 정보 등) 중 적어도 하나 이상에 기초하여 결정될 수 있다.
예를 들어, 표시부(미도시)는 제 2 물리적 공간에 대응하는 제 2 가상 공간의 생성을 위해 실시간으로 촬영되는 제 2 물리적 공간에 대한 영상 내에 수평 이동 방향 가이드(예컨대, 녹색선) 및 추천 이동 경로(예컨대, 화살표 등)를 표시할 수 있다. 또한, 표시부(미도시)는 사용자 단말(10)의 기울기를 나타내는 흰색 실선 정보 및 사용자 단말(10)의 이동 적합성을 나타내는 원형 정보(이동 적합성이 좋을수록 원의 색상이 녹색으로 변경됨)를 영상 내에 표시할 수 있다.
가상 공간 병합부(180)는 기설정된 공간 병합 조건에 기초하여 제 1 가상 공간 및 제 2 가상 공간을 병합할 수 있다. 예를 들어, 도 5a를 참조하면, 기설정된 공간 병합 조건은 (a)와 같이 제 1 가상 공간(501)과 제 2 가상 공간(503)이 중첩되어 있는 경우와, (b)와 같이 제 1 가상 공간(501)이 제 2 가상 공간(503)에 포함되어 있는 경우 및 (c)와 같이, 경계선 영역(505)을 설정했을 때, 경계선 영역(505)이 제 1 가상 공간(501)(예컨대, 부엌)과 제 2 가상 공간(503)(예컨대, 펜트리 또는 다용도실)에 중첩되어 있는 경우를 포함할 수 있다. 여기서, 경계선 영역(505)은 생성된 공간들을 연결하는 영역(예컨대, 문 또는 문이 없는 연결 통로 등)을 의미한다. 경계선 영역(505)은 공간 이동을 분석할 때 경로로 사용될 수 있다.
도 5b의 (a)를 참조하면, 가상 공간 병합부(180)는 제 2 가상 공간(503)의 바닥면 또는 벽면에 경계선 템플릿(50)을 배치하고 경계선 템플릿(50)의 위치 및 크기를 조정하여 경계선 영역(505)을 생성할 수 있다.
도 5b의 (b)를 참조하면, 가상 공간 병합부(180)는 제 2 가상 공간(503)의 벽면에 시작점(52)과 끝점(54)을 지정하고, 지정된 시작점(52) 및 끝점(54)을 포함하는 경계선 영역(505)의 평면(56)을 생성하고, 생성된 평면(56)에 대한 두께를 조정하여 경계선 영역(505)을 생성할 수 있다.
도 5c를 참조하면, 가상 공간 병합부(180)는 경계선 영역(505)을 이용하여 제 1 가상 공간(501) 및 제 2 가상 공간(503)을 연결함으로써 제 1 가상 공간(501) 및 제 2 가상 공간(503)을 병합할 수 있다.
가상 공간 병합부(180)는 제 1 가상 공간 및 제 2 가상 공간에 대한 병합이 기설정된 공간 병합 조건에 부합되더라도 사용자로부터 병합 의사를 입력받을 수 있다. 예를 들어, 제 2 가상 공간에 제 1 가상 공간이 포함되는 공간 병합 조건을 만족하더라도 실제 제 2 물리적 공간에 제 1 물리적 공간이 포함되는 경우에는 제 2 가상 공간 및 제 1 가상 공간을 병합하지 말고, 제 1 가상 공간과 제 2 가상 공간이 별개로 존재하도록 설계해야 한다.
도 5d를 참조하면, 가상 공간 병합부(180)는 제 2 가상 공간(503)이 제 1 가상 공간(501)에 중첩되는 공간 병합 조건을 만족한 경우, 제 2 가상 공간(503)을 구성하는 복수의 평면 중 제 1 가상 공간(501) 및 제 2 가상 공간(503)이 중첩되는 병합 포인트를 탐색할 수 있다.
가상 공간 병합부(180)는 탐색된 병합 포인트가 포함된 평면을 기준으로 제 2 가상 공간(503)의 메쉬를 분할하고, 제 1 가상 공간(501)에 분할된 제 2 가상 공간(503)의 메쉬를 병합할 수 있다.
도 5e를 참조하면, (a) 가상 공간 병합부(180)는 병합 포인트가 포함된 평면의 텍스쳐 이미지를 제 1 가상 공간 및 제 2 가상 공간 각각으로부터 획득할 수 있다. 또한, (b) 가상 공간 병합부(180)는 병합 포인트가 포함된 평면의 비율에 기초하여 획득된 평면의 텍스쳐 이미지를 분리할 수 있다.
(c) 가상 공간 병합부(180)는 제 1 가상 공간(501)의 병합 포인트가 포함된 평면에 대응하는 텍스쳐 이미지에 제 2 가상 공간(503)의 병합 포인트가 포함된 평면에 대응하는 텍스쳐 이미지를 이어 붙일 수 있다.
이 때, (d) 가상 공간 병합부(180)는 이어 붙일 영역(적색 박스)(58)에서 변화가 적도록 텍스쳐 이미지를 기존의 영상 합성 기법에 기초하여 병합할 수 있다. 예를 들어, 가상 공간 병합부(180)는 제 1 가상 공간(501)의 텍스쳐 이미지 및 제 2 가상 공간(503)의 텍스쳐 이미지에서 변화가 적은 연결선을 탐색하고, 탐색된 연결선을 중심으로 제 1 가상 공간(501)의 텍스쳐 이미지 및 제 2 가상 공간(503)의 텍스쳐 이미지를 병합할 수 있다. 여기서, 변화가 적은 연결선은 예를 들어, 색상 차이가 적은 연결선 또는 주파수 변화가 적은 연결선일 수 있다.
생성된 제 2 가상 공간 및 병합된 가상 공간에 대한 정보(예컨대, 공간의 위치 정보, 앵커 정보 등)는 장면 포맷의 형식에 맞게 저장될 수 있다. 여기서, 장면 포맷은 예를 들어, Json와 같은 스크립트 언어를 포함할 수 있다. 스크립트 언어로 이루어진 가상 공간에 대한 정보는 유니티(Unity)와 같은 그래픽 소프트웨어에서 활용가능하다.
한편, 가상 공간 생성부(170)는 병합된 가상 공간에 3차원 환경음을 삽입하여 병합된 가상 공간을 통해 3차원 환경음을 재생하도록 가상 공간을 재구성할 수 있다. 구체적으로, 가상 공간 생성부(170)는 병합된 가상 공간을 3차원 그리드 방식으로 분할하고, 분할된 복수의 셀 중 적어도 하나의 셀에서 녹음된 환경음을 해당 셀에 삽입할 수 있다.
예를 들어, 사용자가 가상 공간을 이동하면서, 가상 공간이 분할된 그리드의 적어도 하나의 셀에 진입하면 녹음이 시작되고, 셀에서 나오면 녹음이 중지될 수 있다. 만일, 사용자가 최소 녹음 시간을 설정하게 되면, 사용자 단말(10)의 화면에 바(bar) 형태로 녹음 진행 UI가 표시되고, 최소 녹음 시간이 지나면 녹음이 중지될 수 있다. 이 때, 가상 공간 생성부(170)는 녹음된 환경음을 3차원 아이콘으로 표시하여 가상 공간에 삽입하여 표시할 수 있다.
예를 들어, 가상 공간이 가상 현실로 재구성하게 되면, 각 환경음은 분할된 가상 공간의 각 셀 크기의 1.5배 거리의 청음 거리를 갖게 된다. 또한, 각 환경음은 사용자가 셀을 이동할 때 거리에 반비례하여 볼륨이 조절된다. 사용자가 셀을 이동할 때 각 환경음들이 오버랩되면서 자연스럽게 이어지는 환경음들을 청취할 수 있다. 다른 예로, 가상 공간이 증강 현실로 재구성하게 되면, 환경음은 기본적으로 오프 상태로 재생되고, 사용자가 환경음을 듣고자 실행할 때 재생될 수 있다.
가상 현실 서비스 제공부(미도시)는 병합된 가상 공간에서 앵커를 찾아 현실 공간과 가상 공간을 일치시켜 가상 현실 서비스를 사용자에게 제공할 수 있다. 예를 들어, 가상 현실 서비스 제공부(미도시)는 병합된 가상 공간에서 사용자가 바닥면 및 벽면의 특정 위치를 지정한 경우, 사용자가 위치한 실내 공간의 크기와 벽면의 각도에 기초하여 가상 공간을 조정하고, 횡단보도, 차도, 차량, 행인 등을 가상 공간에 설정함으로써 사용자가 실내 공간에서 교통 안전 체험을 할 수 있도록 가상 현실 서비스를 제공할 수 있다.
가상 현실 서비스 제공부(미도시)는 데이터베이스에 저장된 가상 공간에 대한 정보를 이용하여 가상 공간을 재구성하고, 증강 현실과 연동함으로써 증강 현실 서비스(예컨대, 실내 공간 투어 서비스 등)를 사용자에게 제공할 수 있다.
잠시 도 6a 내지 6h를 참조하여 가상 공간의 생성을 위해 제공되는 가상 공간 모델링 유저 인터페이스를 설명하기로 한다.
도 6a를 참조하면, 사용자 단말(10)은 가상 공간 모델링 유저 인터페이스를 통해 평면 생성 공간 탭을 제공할 수 있다. 여기서, 평면 생성 공간 탭은 실내 공간을 평면으로 인지하여 인지된 실내 공간에 매칭될 가상 다면체 템플릿을 탐색할 수 있다. 이러한 평면 생성 공간 탭은 실내 공간에서 바닥면, 벽면 및 천장면을 포함하는 평면이 검출되면, 검출된 평면의 위치 및 각도에 맞게 검출된 각 면에 대응하는 정보를 출력한다. 예를 들어, 검출된 평면이 바닥면인 경우, 'floor'가 출력되고, 검출된 평면이 벽면인 경우, 'wall'이 출력될 수 있다.
만일, 동일한 하나의 평면이 두 개로 검출되었다가 하나로 인지되면 검출된 평면의 정보가 1개로 통합되어 출력된다. 이 때, 가독성을 높이기 위해 바닥면과 천장면 각각에 대응하는 정보는 사용자를 향해 회전하여 출력될 수 있다.
도 6b를 참조하면, 사용자 단말(10)은 가상 공간 모델링 유저 인터페이스를 통해 텍스트(text) 탭을 제공할 수 있다.
예를 들어, 사용자가 공간의 특정 위치에 화면에 표시된 T 아이콘(텍스트 탭)을 드래그 앤 드롭하면 특정 위치에 글자가 생성될 수 있다.
글자를 특정 평면에 위치시키면, 특정 평면의 포즈에 맞게 글자의 크기가 조정되고, 글자를 포인트 클라우드에 위치시키면, 일정 영역의 포인트 클라우들의 중심점에 글자가 생성될 수 있다. 또한, 글자를 가상 물체에 내려 놓으면 가상 물체의 포즈에 맞게 글자의 크기가 조정될 수 있다.
도 6c를 참조하면, 사용자 단말(10)은 가상 공간 모델링 유저 인터페이스를 통해 사인(sign) 탭을 제공할 수 있다. 여기서, 사인 탭은 복수의 3차원 표지판을 제공하는 탭이다.
예를 들어, 사용자가 공간의 특정 위치에 복수의 3차원 표지판 중 하나를 드래그앤 드롭하면, 특정 위치에 사용자가 선택한 3차원 표지판이 표시될 수 있다.
사용자가 선택한 3차원 표지판을 특정 평면에 위치시키면, 특정 평면의 포즈에 맞게 3차원 표지판의 크기가 조정되고, 3차원 표지판을 포인트 클라우드에 위치시키면, 일정 영역의 포인트 클라우들의 중심점에 3차원 표지판이 표시될 수 있다. 또한, 3차원 표지판을 가상 물체에 내려 놓으면 가상 물체의 포즈에 맞게 3차원 표지판의 크기가 조정될 수 있다.
도 6d를 참조하면, 사용자 단말(10)은 가상 공간 모델링 유저 인터페이스를 통해 프롭(Prop.) 탭을 제공할 수 있다. 여기서, 프롭 탭은 3차원 가상 객체를 제공하는 탭이다.
예를 들어, 사용자가 화면에 표시된 복수의 가상 객체(프롭 탭) 중 하나의 가상 객체를 선택하고, 공간의 특정 위치에 선택한 가상 객체 아이콘을 드래그 앤 드롭하면 특정 위치에 선택된 가상 객체가 생성될 수 있다.
도 6e를 참조하면, 사용자 단말(10)은 가상 공간 모델링 유저 인터페이스를 통해 라인(Line) 탭을 제공할 수 있다. 여기서, 라인 탭은 선을 드로잉하는 탭이다.
사용자는 라인 탭을 이용하여 공간에 선을 드로잉할 수 있다. 사용자가 라인 탭에 포함된 메이터 라인 버튼을 누르면, 드로잉한 선이 연장되어 그려지고, 사용자가 라인 탭에 포함된 피니쉬 버튼을 누르면, 선 그리기가 종료될 수 있다.
도 6f를 참조하면, 사용자 단말(10)은 가상 공간 모델링 유저 인터페이스를 통해 교합기(Occluder) 탭을 제공할 수 있다. 여기서, 교합기 탭은 기본 도형으로 실체 물체의 영역을 표시하는 기능을 제공한다. 예를 들어, 교합기 탭을 통해 실제 물체의 영역을 표시하고, 실제 물체를 통해 가상 물체가 가려지는 모습을 표현할 수 있다. 예를 들어, 교합기 탭을 통해 사물함(실제 물체) 뒤에 표지판(가상 물체)을 위치시키고, 사물함에 의해 표지판이 가려 안보이도록 표현할 수 있다.
도 6g를 참조하면, 사용자 단말(10)은 가상 공간 모델링 유저 인터페이스를 통해 시뮬레이터(Simulator) 탭을 제공할 수 있다. 여기서, 시뮬레이터 탭은 특수 애니메이션이나 동작을 표현하도록 하는 기능을 제공한다.
예를 들어, 스뮬레이터 탭을 통해 특정 위치에 위치하는 가상 물체가 동작하도록 표현할 수 있고, 특정 위치에 폭발 또는 연기 등이 재현되도록 할 수 있다.
도 6h를 참조하면, 사용자 단말(10)은 가상 공간 모델링 유저 인터페이스를 통해 깊이(Depth) 탭을 제공할 수 있다. 여기서, 깊이 탭은 실시간으로 깊이 이미지를 추출하고, 추출된 깊이 이미지에 대한 프리뷰를 제공한다. 깊이 탭은 사용자 단말(10)의 카메라에 의해 촬영되는 실시간 이미지를 깊이 이미지로 변환하고, 변환된 깊이 이미지를 저장하는 기능을 제공한다. 또한, 깊이 탭은 공간 모델과 같이 깊이 이미지를 구성하는 포인트 클라우드를 저장하는 기능을 제공한다. 이러한, 깊이 탭은 3차원 사물 간의 비교나 공간의 정확도 향상을 위해 사용될 수 있다.
한편, 당업자라면, 이탈 판단부(100), 촬영부(110), 평면 탐색부(120), 다면체 생성부(130), 템플릿 적합성 평가부(140), 추천부(150), 피팅부(160), 가상 공간 생성부(170) 및 가상 공간 병합부(180) 각각이 분리되어 구현되거나, 이 중 하나 이상이 통합되어 구현될 수 있음을 충분히 이해할 것이다.
도 7은 본 발명의 일 실시예에 따른, 가상 공간을 생성하는 방법을 나타낸 흐름도이다.
도 7을 참조하면, 단계 S701에서 사용자 단말(10)은 사용자 단말(10)의 위치 정보에 기초하여 사용자 단말(10)이 기생성된 제 1 가상 공간에 대응하는 제 1 물리적 공간을 이탈한지를 판단할 수 있다.
단계 S703에서 사용자 단말(10)은 사용자 단말(10)이 1 물리적 공간을 이탈한 경우, 사용자 단말(10)의 위치 정보에 대응하는 제 2 물리적 공간에 대한 영상을 촬영할 수 있다.
단계 S705에서 사용자 단말(10)은 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성할 수 있다.
단계 S707에서 사용자 단말(10)은 제 2 물리적 공간에 대한 영상 내에서 가상 다면체의 방향 및 크기를 조절하여 제 2 물리적 공간에 가상 다면체를 피팅시킬 수 있다.
단계 S709에서 사용자 단말(10)은 제 2 물리적 공간에 피팅된 가상 다면체를 이용하여 제 2 물리적 공간에 대응하는 제 2 가상 공간을 생성할 수 있다.
단계 S711에서 사용자 단말(10)은 기설정된 공간 병합 조건에 기초하여 제 1 가상 공간 및 제 2 가상 공간을 병합할 수 있다.
상술한 설명에서, 단계 S701 내지 S711은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
10: 사용자 단말
100: 이탈 판단부
110: 촬영부
120: 평면 탐색부
130: 다면체 생성부
140: 템플릿 적합성 평가부
150: 추천부
160: 피팅부
170: 가상 공간 생성부
180: 가상 공간 병합부

Claims (20)

  1. 가상 공간을 생성하는 사용자 단말에 있어서,
    상기 사용자 단말의 위치 정보에 기초하여 상기 사용자 단말이 기생성된 제 1 가상 공간에 대응하는 제 1 물리적 공간을 이탈한지를 판단하는 이탈 판단부;
    상기 사용자 단말이 상기 1 물리적 공간을 이탈한 경우, 상기 위치 정보에 대응하는 제 2 물리적 공간에 대한 영상을 촬영하는 촬영부;
    상기 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성하는 다면체 생성부;
    상기 제 2 물리적 공간에 대한 영상 내에서 상기 가상 다면체의 방향 및 크기를 조절하여 상기 제 2 물리적 공간에 상기 가상 다면체를 피팅시키는 피팅부;
    상기 제 2 물리적 공간에 피팅된 상기 가상 다면체를 이용하여 상기 제 2 물리적 공간에 대응하는 제 2 가상 공간을 생성하는 가상 공간 생성부; 및
    기설정된 공간 병합 조건에 기초하여 상기 제 1 가상 공간 및 상기 제 2 가상 공간을 병합하는 가상 공간 병합부
    를 포함하는 것인, 사용자 단말.
  2. 제 1 항에 있어서,
    상기 이탈 판단부는 상기 사용자 단말의 위치 정보와 상기 제 1 가상 공간의 바닥면 또는 천장면에 매핑된 위치 정보와 비교하여 상기 사용자 단말이 상기 제 1 물리적 공간을 이탈한지를 판단하는 것인, 사용자 단말.
  3. 제 1 항에 있어서,
    상기 이탈 판단부는 상기 사용자 단말의 위치 정보와 가장 가까운 벽면에 대한 벡터와 상기 벽면에 대한 법선 벡터가 서로 마주보지 않는 경우, 상기 사용자 단말이 상기 제 1 물리적 공간을 이탈한 것으로 판단하는 것인, 사용자 단말.
  4. 제 1 항에 있어서,
    상기 다면체 생성부는 상기 제 2 물리적 공간에 포함된 바닥면, 벽면, 천장면 중 하나를 선택받은 경우, 선택된 하나를 상기 가상 다면체의 시작 위치로 설정하고,
    상기 가상 다면체의 시작 위치에 기초하여 상기 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성하는 것인, 사용자 단말.
  5. 제 4 항에 있어서,
    상기 제 2 물리적 공간에 대한 영상 내에서 특징점을 이용하여 평면을 인식하고,
    상기 제 2 물리적 공간에서 인식된 복수의 평면 중 수직 평면을 선택받고, 상기 제 2 물리적 공간에서 인식된 복수의 평면 중 상기 제 1 가상 공간의 시작 위치와의 거리가 가장 가까운 제 1 평면을 탐색하는 평면 탐색부
    를 더 포함하는 것인, 사용자 단말.
  6. 제 5 항에 있어서,
    상기 다면체 생성부는 상기 선택받은 수직 평면, 상기 제 1 가상 공간의 시작 위치 및 상기 탐색된 제 1 평면에 대한 정보에 기초하여 복수의 가상 다면체 템플릿 중 하나의 가상 다면체 템플릿을 선택하고,
    상기 선택된 가상 다면체 템플릿을 이용하여 상기 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성하는 것인, 사용자 단말.
  7. 제 6 항에 있어서,
    상기 선택받은 수직 평면, 상기 제 1 가상 공간의 시작 위치 및 상기 탐색된 제 1 평면에 대한 정보에 기초하여 상기 복수의 가상 다면체 템플릿에 대한 적합성을 평가하는 템플릿 적합성 평가부
    를 더 포함하고,
    상기 적합성은 벽면의 개수 정보, 상기 벽면 간의 사이각 정보, 상기 벽면의 길이 비율 정보, 바닥 도형의 닮음 정보, 제 1 물리적 공간과의 연결 여부 정보 중 적어도 하나를 포함하는 것인, 사용자 단말.
  8. 제 7 항에 있어서,
    상기 복수의 가상 다면체 템플릿에 대한 적합성 평가에 기초하여 상기 제 2 물리적 공간에 대응하는 제 2 가상 공간을 생성하는데 적합한 가상 다면체 템플릿을 추천하는 추천부
    를 더 포함하는 것인, 사용자 단말.
  9. 제 1 항에 있어서,
    상기 가상 공간 생성부는 상기 제 1 가상 공간 및 상기 제 2 가상 공간이 중첩되는 평면이 존재하거나 상기 제 2 물리적 공간을 벗어나는 평면이 상기 제 2 가상 공간에 포함된 경우, 상기 평면을 상기 제 2 가상 공간에서 제거하는 것인, 사용자 단말.
  10. 제 1 항에 있어서,
    상기 가상 공간 병합부는 상기 제 2 가상 공간을 구성하는 복수의 평면 중 상기 제 1 가상 공간 및 상기 제 2 가상 공간이 중첩되는 병합 포인트가 포함된 평면을 기준으로 상기 제 2 가상 공간의 메쉬를 분할하고,
    상기 제 1 가상 공간에 상기 분할된 제 2 가상 공간의 메쉬를 병합하는 것인, 사용자 단말.
  11. 제 10 항에 있어서,
    상기 가상 공간 병합부는
    상기 제 1 가상 공간의 상기 병합 포인트가 포함된 평면에 상기 제 2 가상 공간의 상기 병합 포인트가 포함된 평면에 대응하는 텍스쳐 이미지를 이어 붙이는 것인, 사용자 단말.
  12. 사용자 단말에 의해 수행되는 가상 공간을 생성하는 방법에 있어서,
    상기 사용자 단말의 위치 정보에 기초하여 상기 사용자 단말이 기생성된 제 1 가상 공간에 대응하는 제 1 물리적 공간을 이탈한지를 판단하는 단계;
    상기 사용자 단말이 상기 1 물리적 공간을 이탈한 경우, 상기 위치 정보에 대응하는 제 2 물리적 공간에 대한 영상을 촬영하는 단계;
    상기 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성하는 단계;
    상기 제 2 물리적 공간에 대한 영상 내에서 상기 가상 다면체의 방향 및 크기를 조절하여 상기 제 2 물리적 공간에 상기 가상 다면체를 피팅시키는 단계;
    상기 제 2 물리적 공간에 피팅된 상기 가상 다면체를 이용하여 상기 제 2 물리적 공간에 대응하는 제 2 가상 공간을 생성하는 단계; 및
    기설정된 공간 병합 조건에 기초하여 상기 제 1 가상 공간 및 상기 제 2 가상 공간을 병합하는 단계
    를 포함하는, 가상 공간 생성 방법.
  13. 제 12 항에 있어서,
    상기 이탈한지를 판단하는 단계는
    상기 사용자 단말의 위치 정보와 상기 제 1 가상 공간의 바닥면 또는 천장면에 매핑된 위치 정보와 비교하여 상기 사용자 단말이 상기 제 1 물리적 공간을 이탈한지를 판단하는 단계를 포함하는 것인, 가상 공간 생성 방법.
  14. 제 12 항에 있어서,
    상기 이탈한지를 판단하는 단계는
    상기 사용자 단말의 위치 정보와 가장 가까운 벽면에 대한 벡터와 상기 벽면에 대한 법선 벡터가 서로 마주보지 않는 경우, 상기 사용자 단말이 상기 제 1 물리적 공간을 이탈한 것으로 판단하는 단계를 포함하는 것인, 가상 공간 생성 방법.
  15. 제 12 항에 있어서,
    상기 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성하는 단계는
    상기 제 2 물리적 공간에 포함된 바닥면, 벽면, 천장면 중 하나를 선택받은 경우, 선택된 하나를 상기 가상 다면체의 시작 위치로 설정하는 단계 및
    상기 가상 다면체의 시작 위치에 기초하여 상기 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성하는 단계를 포함하는 것인, 가상 공간 생성 방법.
  16. 제 15 항에 있어서,
    상기 제 2 물리적 공간에 대한 영상 내에서 특징점을 이용하여 평면을 인식하는 단계; 및
    상기 제 2 물리적 공간에서 인식된 복수의 평면 중 수직 평면을 선택받고, 상기 제 2 물리적 공간에서 인식된 복수의 평면 중 상기 제 1 가상 공간의 시작 위치와의 거리가 가장 가까운 제 1 평면을 탐색하는 단계
    를 더 포함하는 것인, 가상 공간 생성 방법.
  17. 제 16 항에 있어서,
    상기 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성하는 단계는
    상기 선택받은 수직 평면, 상기 제 1 가상 공간의 시작 위치 및 상기 탐색된 제 1 평면에 대한 정보에 기초하여 복수의 가상 다면체 템플릿 중 하나의 가상 다면체 템플릿을 선택하는 단계 및
    상기 선택된 가상 다면체 템플릿을 이용하여 상기 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성하는 단계를 포함하는 것인, 가상 공간 생성 방법.
  18. 제 17 항에 있어서,
    상기 선택받은 수직 평면, 상기 제 1 가상 공간의 시작 위치 및 상기 탐색된 제 1 평면에 대한 정보에 기초하여 상기 복수의 가상 다면체 템플릿에 대한 적합성을 평가하는 단계를 더 포함하고,
    상기 적합성은 벽면의 개수 정보, 상기 벽면 간의 사이각 정보, 상기 벽면의 길이 비율 정보, 바닥 도형의 닮음 정보, 제 1 물리적 공간과의 연결 여부 정보 중 적어도 하나를 포함하는 것인, 가상 공간 생성 방법.
  19. 제 12 항에 있어서,
    상기 제 1 가상 공간 및 상기 제 2 가상 공간을 병합하는 단계는
    상기 제 2 가상 공간을 구성하는 복수의 평면 중 상기 제 1 가상 공간 및 상기 제 2 가상 공간이 중첩되는 병합 포인트가 포함된 평면을 기준으로 상기 제 2 가상 공간의 메쉬를 분할하는 단계 및
    상기 제 1 가상 공간에 상기 분할된 제 2 가상 공간의 메쉬를 병합하는 단계를 포함하는 것인, 가상 공간 생성 방법.
  20. 가상 공간을 생성하는 명령어들의 시퀀스를 포함하는 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램에 있어서,
    상기 컴퓨터 프로그램은 컴퓨팅 장치에 의해 실행될 경우,
    사용자 단말의 위치 정보에 기초하여 상기 사용자 단말이 기생성된 제 1 가상 공간에 대응하는 제 1 물리적 공간을 이탈한지를 판단하고,
    상기 사용자 단말이 상기 1 물리적 공간을 이탈한 경우, 상기 위치 정보에 대응하는 제 2 물리적 공간에 대한 영상을 촬영하고,
    상기 제 2 물리적 공간에 대한 영상에 가상 다면체를 생성하고,
    상기 제 2 물리적 공간에 대한 영상 내에서 상기 가상 다면체의 방향 및 크기를 조절하여 상기 제 2 물리적 공간에 상기 가상 다면체를 피팅시키고,
    상기 제 2 물리적 공간에 피팅된 상기 가상 다면체를 이용하여 상기 제 2 물리적 공간에 대응하는 제 2 가상 공간을 생성하고,
    기설정된 공간 병합 조건에 기초하여 상기 제 1 가상 공간 및 상기 제 2 가상 공간을 병합하는 명령어들의 시퀀스를 포함하는, 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램.
KR1020200177034A 2020-12-17 2020-12-17 가상 공간을 생성하는 사용자 단말, 방법 및 컴퓨터 프로그램 KR20220086858A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200177034A KR20220086858A (ko) 2020-12-17 2020-12-17 가상 공간을 생성하는 사용자 단말, 방법 및 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200177034A KR20220086858A (ko) 2020-12-17 2020-12-17 가상 공간을 생성하는 사용자 단말, 방법 및 컴퓨터 프로그램

Publications (1)

Publication Number Publication Date
KR20220086858A true KR20220086858A (ko) 2022-06-24

Family

ID=82215813

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200177034A KR20220086858A (ko) 2020-12-17 2020-12-17 가상 공간을 생성하는 사용자 단말, 방법 및 컴퓨터 프로그램

Country Status (1)

Country Link
KR (1) KR20220086858A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102622431B1 (ko) * 2022-12-14 2024-01-08 주식회사 맥스트 사용자 입력에 따라 인식된 평면의 정보에 기초하여 3d 모델을 생성하는 방법, 컴퓨터 프로그램 및 전자 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101867020B1 (ko) 2016-12-16 2018-07-19 경희대학교 산학협력단 박물관/미술관용 증강 현실 구현 방법 및 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101867020B1 (ko) 2016-12-16 2018-07-19 경희대학교 산학협력단 박물관/미술관용 증강 현실 구현 방법 및 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102622431B1 (ko) * 2022-12-14 2024-01-08 주식회사 맥스트 사용자 입력에 따라 인식된 평면의 정보에 기초하여 3d 모델을 생성하는 방법, 컴퓨터 프로그램 및 전자 장치

Similar Documents

Publication Publication Date Title
KR102417645B1 (ko) Ar 장면 이미지 처리 방법, 장치, 전자 기기 및 저장 매체
KR101388133B1 (ko) 2차원 실사 영상으로부터 3차원 모델을 생성하는 방법 및장치
JP4642757B2 (ja) 画像処理装置および画像処理方法
US9001120B2 (en) Using photo collections for three dimensional modeling
US9990760B2 (en) Generating a 3D interactive immersive experience from a 2D static image
JP6220486B1 (ja) 3次元モデル生成システム、3次元モデル生成方法、及びプログラム
JP5299173B2 (ja) 画像処理装置および画像処理方法、並びにプログラム
JP6196416B1 (ja) 3次元モデル生成システム、3次元モデル生成方法、及びプログラム
CN105493155A (zh) 用于表示物理场景的方法和设备
KR101989089B1 (ko) 클라우드 소싱 기반의 ar 컨텐츠 템플릿을 수집하여 ar 컨텐츠를 자동으로 생성하는 방법 및 시스템
KR101717896B1 (ko) 데이터 경량화를 고려한 건물 외곽 모델링 방법 및 장치
CN108352082B (zh) 将3d对象推挤到平面中的技术
KR20190117354A (ko) 실내공간의 3차원 지도 생성 방법 및 장치
JP6096634B2 (ja) 仮想現実を用いた3次元地図表示システム
JP7337428B1 (ja) 対象物の双方向な三次元表現の制御方法、制御装置及び記録媒体
KR20220086858A (ko) 가상 공간을 생성하는 사용자 단말, 방법 및 컴퓨터 프로그램
JP6110780B2 (ja) 付加情報表示システム
KR102237519B1 (ko) 2.5 차원화를 이용한 가상 전시 공간 제공 방법
WO2023231793A1 (zh) 对物理场景进行虚拟化的方法、电子设备、计算机可读存储介质和计算机程序产品
JP4291360B2 (ja) 地図データ処理方法、コンピュータグラフィック処理方法およびコンピュータグラフィック処理装置
KR102121397B1 (ko) 2.5차원 가상 전시 공간을 이용한 3차원 vr 데이터 생성 방법
JP2011198135A (ja) 漫画作成支援装置、漫画作成支援方法およびプログラム
JP3911182B2 (ja) 地図データ処理方法、コンピュータグラフィック処理方法および装置
KR102641060B1 (ko) 사용자에 의한 3차원(3d) 객체 편집을 용이하게 하는 영상처리방법 및 영상처리장치
US20230290090A1 (en) Searchable object location information