KR101974073B1 - 혼합현실을 위한 바닥면 재구성 방법 - Google Patents
혼합현실을 위한 바닥면 재구성 방법 Download PDFInfo
- Publication number
- KR101974073B1 KR101974073B1 KR1020170175131A KR20170175131A KR101974073B1 KR 101974073 B1 KR101974073 B1 KR 101974073B1 KR 1020170175131 A KR1020170175131 A KR 1020170175131A KR 20170175131 A KR20170175131 A KR 20170175131A KR 101974073 B1 KR101974073 B1 KR 101974073B1
- Authority
- KR
- South Korea
- Prior art keywords
- points
- candidate region
- previous frame
- image
- distance
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2211/00—Image generation
- G06T2211/40—Computed tomography
- G06T2211/416—Exact reconstruction
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Architecture (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Processing Or Creating Images (AREA)
Abstract
본 발명은 혼합현실에서 가상 객체가 현실 공간에 배치하게 될 때 기준이 되는 바닥면을 정확하고 신속하게 결정하는 혼합현실을 위한 바닥면 재구성 방법에 관한 것이다. 이에 본 방법은 현실공간에 대한 공간점들의 스캔 및 이미지 촬영하는 단계, 상기 이미지에서 바닥면으로 설정할 후보영역을 추출하는 단계, 상기 후보영역에 해당하는 상기 공간점들의 공간좌표들을 추출하는 단계, 이전 프레임에서 추출된 후보영역이 있는지 판단하는 단계, 상기 이전 프레임 후보영역이 없는 경우, 상기 공간좌표들 중 세점을 선택하고, 상기 세점에 따른 평면과 나머지 점들 중 적어도 일부 점들과의 거리 분산을 구하는 단계, 및 기설정된 반복횟수 만큼 상기 거리 분산들을 구하고, 상기 거리 분산들 중 최소 거리 분산에 해당하는 평면을 선택하는 단계를 포함할 수 있다.
Description
본 발명은 혼합현실에서 가상 객체가 현실 공간에 배치하게 될 때 기준이 되는 바닥면을 정확하고 신속하게 결정하는 혼합현실을 위한 바닥면 재구성 방법에 관한 것이다.
혼합현실(MR: Mixed Reality) 기술은 사용자가 눈으로 보는 현실세계에 부가정보를 가지는 가상 물체를 오버랩시켜 하나의 영상으로 보여주는 기술로서, 증강현실(AR: Augmented Reality) 기술이라고도 한다. 실제환경과 가상 객체가 혼합된 증강현실기술은 사용자가 실제환경을 볼 수 있게 하여 보다 나은 현실감과 부가 정보를 제공한다. 예를 들어, 스마트폰의 카메라로 주변을 비추면 인근에 있는 상점의 위치, 전화번호 등의 정보가 입체영상으로 표기되는 것이 증강현실이다.
혼합현실은 현실공간 속에 가상의 오브젝트가 혼재하는 형태의 기술로서 기존의 공간과 사물 등이 모두 가상인 가상현실 기술과는 차이가 있다. 혼합현실을 제공하기 위한 가장 기본적인 방법으로 사용자가 See-Through 타입의 HMD(Head Mounted Display)를 착용하고 현실공간을 바라보면 HMD가 현실공간을 스캔하여 사용자가 바라보고 있는 관점에서 HMD를 통해 마치 현실공간 위에 가상의 오브젝트가 있는 것처럼 증강현실로 보여주는 것이다. 이러한 혼합현실에서 사용자에게 현실감을 주는 요소로는 현실공간 속 바닥면에 가상의 오브젝트를 정확하게 올려놓는 것이다.
현실공간 속 바닥면에 가상의 오브젝트를 정확하게 올려놓기 위해서는 현실공간을 스캔하여, 거리정보 즉 공간좌표를 획득해야 한다. 거리정보를 획득하기 위해 적외선 장치 등을 이용하는데, 적외선 장치의 해상도가 사람의 눈보다 떨어지고, 현실 공간에서 공간 또는 사물이 가지는 빛의 반사도가 모두 다르기 때문에 정밀한 스캔이 어렵다.
도 1은 현실공간 스캔에 따른 공간정보가 재구성된 평면의 구축례이다. 도 1(a)을 참조하면, 실제 바닥면(S1)에 존재하는 공간점(P1)에 대한 공간좌표가 바닥면(S1)과 다른 평면에 있는 것처럼 스캔될 수 있다. 이러한 공간점(P1)을 이용하여 바닥면을 재구성하면, 도 1(b)와 같이 볼록한 면(B)이 생기는 울퉁불퉁한 바닥면으로 재구성될 수 있다. 이에 혼합현실에서 현실감 있으며, 정확한 바닥면 재구성 방법이 필요하다.
따라서, 본 발명의 목적은 혼합현실 구현시 가상 객체가 위치하게 될 좌표의 기준점이 되는 바닥면을 정확히 재구성하는 방법을 제공함에 있다.
본 발명은 현실공간에 가상의 객체를 혼재하기 위한 기준인 현실공간의 바닥면을 재구성하는 방법으로서, 혼합현실을 위한 바닥면 재구성 방법은 현실공간에 대한 공간점들의 스캔 및 이미지 촬영하는 단계; 상기 이미지에서 바닥면으로 설정할 후보영역을 추출하는 단계; 상기 후보영역에 해당하는 상기 공간점들의 공간좌표들을 추출하는 단계; 이전 프레임에서 추출된 후보영역이 있는지 판단하는 단계; 상기 이전 프레임 후보영역이 없는 경우, 상기 공간좌표들 중 세점을 선택하고, 상기 세점에 따른 평면과 나머지 점들 중 적어도 일부 점들과의 거리 분산을 구하는 단계; 및 기설정된 반복횟수 만큼 상기 거리 분산들을 구하고, 상기 거리 분산들 중 최소 거리 분산에 해당하는 평면을 선택하는 단계;를 포함할 수 있다.
또한, 상기 후보영역은 상기 이미지 중 가장 넓은 평면 영역으로 추출된 영역일 수 있다.
또한, 상기 이전 프레임 후보영역이 있는 경우, 상기 이전 프레임 이미지의 공간과 상기 촬용된 이미지의 공간이 기설정된 수치 이상의 유사도가 있는지 판단하는 단계; 및 상기 유사도 판단 결과 비유사하면, 상기 최소 거리 분산 구하는 단계를 실행하는 단계를 더 포함할 수 있다.
또한, 상기 유사도 판단 결과 유사하면, 자이로 센서를 통해 이전 프레임과의 오일러 각도 변화를 추출하는 단계; 상기 변화된 오일러 각도에 기초하여 상기 이전 프레임의 평면 방정식을 변환하는 단계; 및 상기 변환된 이전 프레임의 평면 방정식과 상기 현재 프레임의 후보영역에서 적어도 일부의 점들과의 거리 평균을 구하고, 상기 거리 평균 만큼 상기 이전 프레임의 평면 방정식을 이동시켜 현재 프레임의 평면 방정식으로 결정하는 단계를 더 포함할 수 있다.
본 발명에 따르면, 현실감을 높일 수 있으며, 가상 객체가 놓이는 지점을 정확하고 간단히 산출할 수 있는 혼합현실의 기준면인 바닥면을 결정할 수 있으며, 과다한 컴퓨팅 자원이 필요하지 않아, 바닥면 결정 시간을 단축 시킬 수도 있다.
도 1은 현실공간 스캔에 따른 공간정보가 재구성된 평면의 구축례이고,
도 2는 본 발명의 일실시예에 따른 단말기의 블럭 구성도(block diagram)이고,
도 3 및 도 4는 본 발명의 일실시예에 따른 바닥면 재구성 방법의 순서도이고,
도 5는 거리 분산 계산의 기초 개념도이다.
도 2는 본 발명의 일실시예에 따른 단말기의 블럭 구성도(block diagram)이고,
도 3 및 도 4는 본 발명의 일실시예에 따른 바닥면 재구성 방법의 순서도이고,
도 5는 거리 분산 계산의 기초 개념도이다.
이하, 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 또한 네트워크 상의 제1 구성요소와 제2 구성요소가 연결되어 있거나 접속되어 있다는 것은, 유선 또는 무선으로 제1 구성요소와 제2 구성요소 사이에 데이터를 주고 받을 수 있음을 의미한다.
또한, 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 단순히 본 명세서 작성의 용이함만이 고려되어 부여되는 것으로서, 그 자체로 특별히 중요한 의미 또는 역할을 부여하는 것은 아니다. 따라서, 상기 "모듈" 및 "부"는 서로 혼용되어 사용될 수도 있다.
이와 같은 구성요소들은 실제 응용에서 구현될 때 필요에 따라 2 이상의 구성요소가 하나의 구성요소로 합쳐지거나, 혹은 하나의 구성요소가 2 이상의 구성요소로 세분되어 구성될 수 있다. 도면 전체를 통하여 동일하거나 유사한 구성요소에 대해서는 동일한 도면 부호를 부여하였고, 동일한 도면 부호를 가지는 구성요소에 대한 자세한 설명은 전술한 구성요소에 대한 설명으로 대체되어 생략될 수 있다.
본 명세서에서 기술되는 혼합현실 단말기에는, 휴대폰, 스마트 폰(smart phone), 노트북 컴퓨터(notebook computer), 디지털방송용 단말기, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 타블렛 컴퓨터(tablet computer), 등이 포함된다.
도 2는 본 발명의 일실시예에 따른 단말기의 블럭 구성도(block diagram)이다. 도 2를 참조하여 본 발명의 일실시예에 따른 단말기를 기능에 따른 구성요소 관점에서 살펴보면 다음과 같다.
도 2를 참조하면, 본 단말기(100)는, 제어부(110), 무선 통신부(120), A/V 입력부(130), 조작부(140), 스캔부(135), 출력부(150), 센싱부(160), 저장부(170), 인터페이스부(180), 및 전원 공급부(190)를 포함할 수 있다. 이와 같은 구성요소들은 실제 응용에서 구현될 때 필요에 따라 2 이상의 구성요소가 하나의 구성요소로 합쳐지거나, 혹은 하나의 구성요소가 2 이상의 구성요소로 세분되어 구성될 수 있다.
무선 통신부(120)는 근거리 통신 모듈(121), 무선 인터넷 모듈(123), GPS 모듈(125), 및 이동통신 모듈(127)을 포함할 수 있다.
근거리 통신 모듈(121)은 근거리 통신을 위한 모듈을 말한다. 근거리 통신 기술로 블루투스(Bluetooth), RFID(Radio Frequency Identification), 적외선 통신(IrDA, infrared Data Association), UWB(Ultra Wideband), 지그비(ZigBee) 등이 이용될 수 있다.
무선 인터넷 모듈(123)은 무선 인터넷 접속을 위한 모듈을 말하는 것으로, 무선 인터넷 모듈(123)은 단말기(100)에 내장되거나 외장될 수 있다. 무선 인터넷 기술로는 WLAN(Wireless LAN)(Wi-Fi), Wibro(Wireless broadband), Wimax(World Interoperability for Microwave Access), HSDPA(High Speed Downlink Packet Access) 등이 이용될 수 있다.
GPS(Global Position System) 모듈(125)은 복수 개의 GPS 인공위성으로부터 위치 정보를 수신한다.
이동통신 모듈(127)은, 이동 통신망 상에서 기지국, 외부의 단말, 서버 중 적어도 하나와 무선 신호를 송수신한다. 여기서, 무선 신호는, 음성 호 신호, 화상 통화 호 신호, 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다.
본 실시예에서, 바닥면 재구성 등 혼합현실 구축을 본 단말기에서 구현하는 것으로 설명하지만, 이에 한정되지 않는다. 예를 들어, 본 단말기가 휴대 단말기이고, 무선 통신부(120)를 통해 PC 또는 서버에서 혼합현실 구축에 필요한 작업을 하고 그 작업물을 수신하여 디스플레이할 수 있다.
A/V(Audio/Video) 입력부(130)는 오디오 신호 또는 비디오 신호 입력을 위한 것으로, 이에는 카메라(131)와 마이크(133) 등이 포함될 수 있다.
카메라(131)는 화상 통화모드 또는 촬영 모드에서 이미지 센서에 의해 얻어지는 정지영상 또는 동영상 등의 화상 프레임을 처리한다. 그리고, 처리된 화상 프레임은 디스플레이 모듈(151)에 표시될 수 있다.
카메라(131)에서 처리된 화상 프레임은 저장부(170)에 저장되거나 무선 통신부(120)를 통하여 외부로 전송될 수 있다. 카메라(131)는 단말기의 구성 태양에 따라 2개 이상이 구비될 수도 있다.
카메라 모듈(131)은 혼합현실 서비스를 제공할 다양한 실체를 촬영하여 이미지를 획득할 수 있다.
마이크(133)는 통화모드 또는 녹음모드, 음성인식 모드 등에서 마이크로폰(Microphone)에 의해 외부의 음향 신호를 입력받아 전기적인 음성 데이터로 처리한다. 그리고, 처리된 음성 데이터는 통화 모드인 경우 이동통신 모듈(113)을 통하여 이동통신 기지국으로 송신 가능한 형태로 변환되어 출력될 수 있다. 마이크 (133)는 외부의 음향 신호를 입력받는 과정에서 발생하는 잡음(noise)을 제거하기 위한 다양한 잡음 제거 알고리즘이 사용될 수 있다.
스캔부(135)는 적외선 카메라, 레이저 조사기 등을 장착하여, 현실공간의 공간점에 대한 공간좌표를 획득할 수 있다.
조작부(사용자 입력부)(140)는 사용자가 단말기의 동작 제어를 위하여 입력하는 키 입력 데이터를 발생시킨다. 조작부(140)는 사용자의 푸시 또는 터치 조작에 의해 명령 또는 정보를 입력받을 수 있는 키 패드(key pad), 돔 스위치(dome switch), 터치 패드(정압/정전) 등으로 구성될 수 있다. 또한, 사용자 입력부(140)는 키를 회전시키는 조그 휠 또는 조그 방식이나 조이스틱과 같이 조작하는 방식이나, 핑거 마우스 등으로 구성될 수 있다.
출력부(150)는 오디오 신호 또는 비디오 신호 또는 알람(alarm) 신호의 출력을 위한 것이다. 출력부(150)는 디스플레이 모듈(151), 음향 출력 모듈(153), 및 햅틱 모듈(157) 등을 포함할 수 있다.
디스플레이 모듈(151)은 단말기(100)에서 처리되는 정보를 표시 출력한다. 예를 들어 단말기(100)가 통화 모드인 경우 통화와 관련된 UI(User Interface) 또는 GUI(Graphic User Interface)를 표시한다. 그리고 단말기(100)가 화상 통화 모드 또는 촬영 모드인 경우, 촬영되거나 수신된 영상을 각각 혹은 동시에 표시할 수 있으며, UI, GUI를 표시한다.
디스플레이 모듈(151)은 카메라 모듈(131)에서 촬영한 이미지에 가상 객체를 결합한 화면을 표시할 수 있다.
음향 출력 모듈(153)은 호신호 수신, 통화모드 또는 녹음 모드, 음성인식 모드, 방송수신 모드 등에서 무선 통신부(110)로부터 수신되거나 저장부(170)에 저장된 오디오 데이터를 출력한다. 음향 출력 모듈(153)은 디스플레이 모듈(151)에서 혼합현실을 디스플레이할 때, 가상 객체의 소리를 출력하여 현실감을 더 높일 수 있다. 이러한 음향 출력 모듈(153)에는 스피커(speaker), 버저(Buzzer) 등이 포함될 수 있다.
햅틱 모듈(haptic module)(157)은 사용자가 느낄 수 있는 다양한 촉각 효과를 발생시킨다. 햅틱 모듈(157)이 발생시키는 촉각 효과의 대표적인 예로는 진동 효과가 있다. 햅틱 모듈(157)이 촉각 효과로 진동을 발생시키는 경우, 햅택 모듈(157)이 발생하는 진동의 세기와 패턴 등은 변환가능하며, 서로 다른 진동을 합성하여 출력하거나 순차적으로 출력할 수도 있다.
햅틱 모듈(157)은 진동 외에도, 접촉 피부 면에 대해 수직 운동하는 핀 배열에 의한 자극에 의한 효과, 분사구나 흡입구를 통한 공기의 분사력이나 흡입력을 통한 자극에 의한 효과, 피부 표면을 스치는 자극에 의한 효과, 전극(electrode)의 접촉을 통한 자극에 의한 효과, 정전기력을 이용한 자극에 의한 효과, 흡열이나 발열이 가능한 소자를 이용한 냉온감 재현에 의한 효과 등 다양한 촉각 효과를 발생시킬 수 있다. 햅틱 모듈(157)은 직접적인 접촉을 통해 촉각 효과의 전달할 수 있을 뿐만 아니라, 사용자의 손가락이나 팔 등의 근 감각을 통해 촉각 효과를 느낄 수 있도록 구현할 수도 있다. 햅틱 모듈(157)은 단말기(100)의 구성 태양에 따라 2개 이상이 구비될 수 있다.
햅틱 모듈(157)은 가상 객체가 구현될 때 다양한 사용자 경험을 느끼게 할 수 있다.
센싱부(160)는 단말기(100)의 개폐 상태, 단말기(100)의 위치, 사용자 접촉 유무 등과 같이 단말기(100)의 현 상태를 감지하여 단말기(100)의 동작을 제어하기 위한 센싱 신호를 발생시킨다. 예를 들어 단말기(100)가 슬라이드 폰 형태인 경우 슬라이드 폰의 개폐 여부를 센싱할 수 있다. 또한, 전원 공급부(190)의 전원 공급 여부, 인터페이스부(180)의 외부 기기 결합 여부 등과 관련된 센싱 기능을 담당할 수 있다.
센싱부(160)는 압력 센서 모듈(161), 및 모션 센서 모듈(163)을 포함할 수 있다.
압력 센서 모듈(161)은 단말기(100)에 압력이 가해지는지 여부와, 그 압력의 크기 등을 검출할 수 있다. 압력 센서 모듈(161)은 사용환경에 따라 단말기(100)에서 압력의 검출이 필요한 부위에 설치될 수 있다. 만일, 압력 센서 모듈(161)이 디스플레이 모듈(151)에 설치되는 경우, 압력 센서 모듈(161)에서 출력되는 신호에 따라, 디스플레이 모듈(151)을 통한 터치 입력과, 터치 입력보다 더 큰 압력이 가해지는 압력터치 입력을 식별할 수 있다. 또한, 압력 센서 모듈(161)에서 출력되는 신호에 따라, 압력터치 입력시 디스플레이 모듈(151)에 가해지는 압력의 크기도 알 수 있다.
모션 센서 모듈(163)은 가속도 센서, 자이로 센서 등을 이용하여 단말기(100)의 위치나 움직임 등을 감지한다. 모션 센서 모듈(163)에 사용될 수 있는 가속도 센서는 어느 한 방향의 가속도 변화에 대해서 이를 전기 신호로 바꾸어 주는 소자로서, MEMS(micro-electromechanical systems) 기술의 발달과 더불어 널리 사용되고 있다. 가속도 센서에는, 자동차의 에어백 시스템에 내장되어 충돌을 감지하는데 사용하는 큰 값의 가속도를 측정하는 것부터, 사람 손의 미세한 동작을 인식하여 게임 등의 입력 수단으로 사용하는 미세한 값의 가속도를 측정하는 것까지 다양한 종류가 있다. 가속도 센서는 보통 2축이나 3축을 하나의 패키지에 실장하여 구성되며, 사용 환경에 따라서는 Z축 한 축만 필요한 경우도 있다. 따라서, 어떤 이유로 Z축 방향 대신 X축 또는 Y축 방향의 가속도 센서를 써야 할 경우에는 별도의 조각 기판을 사용하여 가속도 센서를 주 기판에 세워서 실장할 수도 있다.
또한, 자이로 센서는 각속도를 측정하는 센서로서, 기준 방향에 대해 돌아간 방향을 감지할 수 있다. 자이로 센서는 단말기의 방향을 3차원 공간 좌표계의 회전각으로 획득할 수 있다. 예를 들면, 회전각은 오일러 각으로 획득할 수 있는데, 제1 각도는 z 축을 히전축으로 하여 회전된 xy 좌표축의 각도, 및 제2 각도는 회전된 x 축을 회전축으로 하여 회전된 zy 좌표축의 각도, 및 제3 각도는 회전된 z 축을 회전축으로 하여 회전된 xy 좌표축의 각도와 같이 표시할 수 있다.
저장부(170)는 제어부(110)의 처리 및 제어를 위한 프로그램이 저장될 수도 있고, 입력되거나 출력되는 데이터들(예를 들어, 폰북, 메시지, 정지영상, 동영상 등)의 임시 저장을 위한 기능을 수행할 수도 있다.
저장부(170)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램, 롬 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 또한, 단말기(100)는 인터넷(internet) 상에서 저장부(170)의 저장 기능을 수행하는 웹 스토리지(web storage)를 운영할 수도 있다.
인터페이스부(180)는 단말기(100)에 연결되는 모든 외부기기와의 인터페이스 역할을 수행한다. 단말기(100)에 연결되는 외부기기의 예로는, 유/무선 헤드셋, 외부 충전기, 유/무선 데이터 포트, 메모리 카드(Memory card), SIM(Subscriber Identification Module) 카드, UIM(User Identity Module) 카드 등과 같은 카드 소켓, 오디오 I/O(Input/Output) 단자, 비디오 I/O(Input/Output) 단자, 이어폰 등이 있다. 인터페이스부(180)는 이러한 외부 기기로부터 데이터를 전송받거나 전원을 공급받아 단말기(100) 내부의 각 구성 요소에 전달할 수 있고, 단말기(100) 내부의 데이터가 외부 기기로 전송되도록 할 수 있다.
제어부(110)는 통상적으로 상기 각부의 동작을 제어하여 단말기(100)의 전반적인 동작을 제어한다. 예를 들어 음성 통화, 데이터 통신, 화상 통화, 혼합현실 구축 및 디스플레이 등을 위한 관련된 제어 및 처리를 수행한다. 또한, 제어부(110)는 혼합현실 재생을 위한 혼합현실 재생 모듈(112)을 구비할 수도 있다. 혼합현실 재생 모듈(112)은 제어부(110) 내에 하드웨어로 구성될 수도 있고, 제어부(110)와 별도의 소프트웨어로 구성될 수도 있다.
그리고, 전원 공급부(190)는 제어부(110)의 제어에 의해 외부의 전원, 내부의 전원을 인가받아 각 구성요소들의 동작에 필요한 전원을 공급한다.
도 3 및 도 4는 본 발명의 일실시예에 따른 바닥면 재구성 방법의 순서도이고, 도 5는 거리 분산 계산의 기초 개념도이다.
도 3을 참조하면, 제어부(110)는 카메라 모듈(131) 및 스캔부(135)가 동일한 현실공간을 촬영 및 스캔하도록 할 수 있다(S310). 제어부(110)는 촬영된 이미지 및 현실공간의 공간좌표를 가지는 공간점들을 취득할 수 있다. 공간좌표는 임의의 기준선들을 좌표축으로 하여 얻어지는 좌표값로, 다양한 좌표계로 표시되거나 변환될 수 있다. 예를 들어, 최초 스캔시 원통좌표계 또는 구면좌표계의 좌표값으로 획득하고, 이를 직교좌표계로 변환하여 사용할 수 있다.
제어부(110)는 이미지의 각 픽셀과 공간점들을 매칭하여, 이미지의 각 픽셀이 공간좌표를 가지도록 할 수 있다.
제어부(110)는 이미지의 영상 처리를 통해 바닥면으로 설정할 후보영역을 추출할 수 있다(S315). 후보영역은 이미지 중 가장 넓은 평면으로 추출된 영역인 것이 바람직하다.
제어부(110)는 이미지 중 후보영역에 해당하는 픽셀들, 즉, 공간점들의 공간좌표들을 추출할 수 있다(S320). 이는 앞서 설명한 이미지와 스캔된 공간좌표들의 매칭 테이블에서 추출할 수 있다.
제어부(110)는 이전 프레임에서 후보영역을 추출한 적이 있는지 판단할 수 있다(S325). 혼합현실 관련 어플리케이션이 처음 구동된 경우, 이미지 촬영을 개시하거나 스캔부(135)가 처음 구동한 경우 등의 환경이라면, 이전 프레임에서 후보영역을 추출한 적이 없는 것으로 결정할 수 있다.
제어부(110)는 이전 프레임에서 후보영역을 추출한 적이 있으면, 이전 프레임의 이미지와 현재 프레임 이미지의 유사 여부를 판단할 수 있다(S330). 이미지 유사 판단 대상은 이미지 전부이거나, 이미지의 영상 처리를 통해 추출된 배경에 해당하는 공간일 수 있다. 예를 들어, 이전 프레임의 이미지 전부 대 현재 프레임의 이미지 전부, 또는 이전 프레임의 이미지 공간 대 현재 프레임의 이미지 공간과 같을 수 있다. 유사도는 판단 대상이 겹치는 정도로 정할 수 있다. 유사도가 기설정된 수치 이상인 경우, 이전 및 현재 프레임의 이미지는 유사한 것으로 판단할 수 있다.
이전 후보영역 유무 판단(S325) 결과 이전 후보영역이 비존재하거나, 이전 이미지와 유사 판단(S330) 결과 비유사한 경우, 제어부(110)는 후보영역의 임의의 세 점에 따른 평면과 나머지 점들의 거리 분산을 반복하여 계산할 수 있다(S335).
본 거리 분산 반복 계산(S335) 과정 중 거리 분산을 구하는 구체적인 방법은 다음과 같다.
도 4를 참조하면, 제어부(110)는 후보영역에서 임의의 세 점(d1~3)을 선택할 수 있다(S410). 제어부(110)는 선택된 세 점으로 제1 평면 방정식(D1)을 도출할 수 있다(S415). 도 5(a)를 참조하면, 제어부(110)는 도출한 평면 방정식과 후보영역의 다른 공간점(p1)과의 거리(h11)를 구할 수 있다(S420). 제어부(110)는 제1 평면 방정식(D1)과 계속해서 또 다른 공간점과의 거리(h12, h13, ...)을 구할 수 있다. 계산의 신속성을 위해, 제어부(110)는 후보영역 중 세 점(d1~3)을 제외한 모든 점보다는 랜덤하게 선택한 일부 점들과의 거리를 구하는 것이 바람직하다. 제어부(110)는 구한 거리들(h11, h12, h13, ...)의 분산 또는 제1 표준편차(σ1)를 구할 수 있다.
도 5를 참조하면, 제어부(110)는 다른 임의의 세 점(d4~6)을 선택하고(S410), 제2 평면 방정식(D2)를 도출하고(S415), 다른 점들과의 거리(h21)를 구하고(S420), 거리들(h21, h22, h23, ...)의 분산, 즉 제2 표준편차(σ2)를 구하는 단계(S425)를 기설정된 반복 횟수 만큼 할 수 있다(S335).
거리 분산 반복 계산(S335)이 완료되면, 제어부(110)는 거리 분산들 즉, 표준편차들(σ1, σ2, ...) 중 최소 거리 분산을 선택할 수 있다(S340).
이와 같은 과정을 통해, 제어부(110)는 최소 거리 분산이 나온 평면 방정식으로 바닥면으로 재구성할 수 있다.
제어부(110)는 이전 후보영역 판단(S325) 결과 이전 후보영역이 존재하고, 이전 이미지와 유사하다고 판단(S330)한 경우, 모션 센서 모듈(163) 특히 자이로 센서를 통해, 단말기의 이전 프레임과의 현재 프레임간의 공간 이동 각을 얻을 수 있다(S355). 공간 이동 각은 오일러 각 변화량일 수 있다.
제어부(110)는 이전 프레임에서 설정한 평면 방정식의 법선 벡터를 오일러 각 변화량 만큼 회전 이동할 수 있다(S360).
제어부(110)는 후보영역의 공간점들 중 적어도 일부 점들의 공간좌표를 위 변환된 법선 벡터를 가지는 평면 방정식에 대입하여 나오는 상수들의 평균값을 상수로 결정할 수 있다(S365). 이와 같은 과정은 많은 후보 평면 방정식을 구하고, 다른 점들과의 거리 분산들을 구하는 과정을 생략시킬 수 있다. 이를 통해, 컴퓨팅 자원을 줄일 수 있다.
상기 본 발명은 하드웨어 또는 소프트웨어에서 구현될 수 있다. 구현은 상기 본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 즉, 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 매체를 포함한다. 컴퓨터 판독 가능 매체는 컴퓨터 저장 매체 및 통신 저장 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터가 읽을 수 있는 명령어, 데이터 구조, 프로그램 모듈, 및 기타 데이터 등 정보 저장을 위한 임의의 방법 또는 기술로서 구현된 모든 저장 가능한 매체를 포함하는 것으로, 휘발성/비휘발성/하이브리드형 메모리 여부, 분리형/비분리형 여부 등에 한정되지 않는다. 통신 저장 매체 는 반송파와 같은 변조된 데이터 신호 또는 전송 메커니즘, 임의의 정보 전달 매체 등을 포함한다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안 될 것이다.
110: 제어부 112: 혼합현실 재생 모듈
120: 무선 통신부 130: A/V 입력부
131: 카메라 모듈 135: 스캔부
150: 출력부 151: 디스플레이 모듈
160: 센싱부 163: 모션 센서 모듈
120: 무선 통신부 130: A/V 입력부
131: 카메라 모듈 135: 스캔부
150: 출력부 151: 디스플레이 모듈
160: 센싱부 163: 모션 센서 모듈
Claims (4)
- 현실공간에 가상의 객체를 혼재하기 위한 기준인 현실공간의 바닥면을 재구성하는 방법으로서,
현실공간에 대한 공간점들의 스캔 및 이미지 촬영하는 단계;
상기 이미지에서 바닥면으로 설정할 후보영역을 추출하는 단계;
상기 후보영역에 해당하는 상기 공간점들의 공간좌표들을 추출하는 단계;
이전 프레임에서 추출된 후보영역이 있는지 판단하는 단계;
상기 이전 프레임 후보영역이 없는 경우, 상기 공간좌표들 중 세점을 선택하고, 상기 세점에 따른 평면과 나머지 점들 중 적어도 일부 점들과의 거리 분산을 구하는 단계;
기설정된 반복횟수 만큼 상기 거리 분산들을 구하고, 상기 거리 분산들 중 최소 거리 분산에 해당하는 평면을 선택하는 단계;
상기 이전 프레임 후보영역이 있는 경우, 상기 이전 프레임 이미지의 공간과 상기 촬영된 이미지의 공간이 기설정된 수치 이상의 유사도가 있는지 판단하는 단계;
상기 유사도 판단 결과 비유사하면, 상기 최소 거리 분산 구하는 단계를 실행하는 단계;
상기 유사도 판단 결과 유사하면, 자이로 센서를 통해 이전 프레임과의 오일러 각도 변화를 추출하는 단계;
상기 변화된 오일러 각도에 기초하여 상기 이전 프레임의 평면 방정식을 변환하는 단계; 및
상기 변환된 이전 프레임의 평면 방정식과 현재 프레임의 후보영역에서 적어도 일부의 점들과의 거리 평균을 구하고, 상기 거리 평균 만큼 상기 이전 프레임의 평면 방정식을 이동시켜 현재 프레임의 평면 방정식으로 결정하는 단계를 포함하는, 바닥면 재구성 방법. - 제 1 항에 있어서,
상기 후보영역은 상기 이미지 중 가장 넓은 평면 영역으로 추출된 영역인, 바닥면 재구성 방법. - 삭제
- 삭제
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170175131A KR101974073B1 (ko) | 2017-12-19 | 2017-12-19 | 혼합현실을 위한 바닥면 재구성 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170175131A KR101974073B1 (ko) | 2017-12-19 | 2017-12-19 | 혼합현실을 위한 바닥면 재구성 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101974073B1 true KR101974073B1 (ko) | 2019-04-30 |
Family
ID=66285541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170175131A KR101974073B1 (ko) | 2017-12-19 | 2017-12-19 | 혼합현실을 위한 바닥면 재구성 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101974073B1 (ko) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008197884A (ja) * | 2007-02-13 | 2008-08-28 | Toyota Motor Corp | 環境地図の生成方法及び移動ロボット |
KR20130014358A (ko) * | 2011-07-28 | 2013-02-07 | 삼성전자주식회사 | 평면 특성 기반 마커리스 증강 현실 시스템 및 그 동작 방법 |
JP2015215646A (ja) * | 2014-05-07 | 2015-12-03 | 日本電産エレシス株式会社 | 解析装置、解析方法、及び、プログラム |
-
2017
- 2017-12-19 KR KR1020170175131A patent/KR101974073B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008197884A (ja) * | 2007-02-13 | 2008-08-28 | Toyota Motor Corp | 環境地図の生成方法及び移動ロボット |
KR20130014358A (ko) * | 2011-07-28 | 2013-02-07 | 삼성전자주식회사 | 평면 특성 기반 마커리스 증강 현실 시스템 및 그 동작 방법 |
JP2015215646A (ja) * | 2014-05-07 | 2015-12-03 | 日本電産エレシス株式会社 | 解析装置、解析方法、及び、プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9030408B2 (en) | Multiple sensor gesture recognition | |
CN111445583B (zh) | 增强现实处理方法及装置、存储介质和电子设备 | |
US11132842B2 (en) | Method and system for synchronizing a plurality of augmented reality devices to a virtual reality device | |
KR20160071887A (ko) | 이동단말기 및 그것의 제어방법 | |
KR20180096078A (ko) | 모듈형 가정용 로봇 | |
CN112907725B (zh) | 图像生成、图像处理模型的训练、图像处理方法和装置 | |
KR102028336B1 (ko) | 복수 스크린을 표시하는 디스플레이 장치 및 그 제어 방법 | |
US11721354B2 (en) | Acoustic zooming | |
KR20180042777A (ko) | 이동 단말기 및 그의 동작 방법 | |
KR20200028771A (ko) | 사용자 의도 기반 제스처 인식 방법 및 장치 | |
KR101618783B1 (ko) | 이동 단말기, 이동 단말기의 제어방법, 그리고, 이동 단말기를 포함하는 제어시스템 | |
KR20160113872A (ko) | 신축성 디스플레이 장치 및 그의 동작 방법 | |
KR20160142172A (ko) | 변형 가능한 디스플레이 장치 및 그의 동작 방법 | |
CN106412810B (zh) | 数据传输方法及装置 | |
CN110213205B (zh) | 验证方法、装置及设备 | |
KR101632220B1 (ko) | 이동 단말기, 이동 단말기의 제어방법, 그리고, 제어시스템과 그 제어방법 | |
KR20200102080A (ko) | 외부 객체의 정보에 기반하여 시각화된 인공 지능 서비스를 제공하는 전자 장치 및 전자 장치의 동작 방법 | |
CN112381729B (zh) | 图像处理方法、装置、终端及存储介质 | |
KR101974073B1 (ko) | 혼합현실을 위한 바닥면 재구성 방법 | |
KR102260193B1 (ko) | 3차원 공간에 대한 보안기능을 제공하는 증강현실 원격 통신방법 및 시스템 | |
KR20170083328A (ko) | 모바일 디바이스 및 모바일 디바이스의 제어방법 | |
KR102462204B1 (ko) | 진동을 제공하기 위한 장치 및 방법 | |
KR20110126438A (ko) | 휴대 단말기 및 그 동작 방법 | |
KR102396337B1 (ko) | 오브젝트 기반 증강 컨텐츠의 위치 기반 ar 연동을 위한 전자 장치 및 그의 동작 방법 | |
KR101637663B1 (ko) | 이동 단말기 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |