KR101553273B1 - 증강현실 서비스를 제공하는 방법 및 장치 - Google Patents

증강현실 서비스를 제공하는 방법 및 장치 Download PDF

Info

Publication number
KR101553273B1
KR101553273B1 KR1020130160689A KR20130160689A KR101553273B1 KR 101553273 B1 KR101553273 B1 KR 101553273B1 KR 1020130160689 A KR1020130160689 A KR 1020130160689A KR 20130160689 A KR20130160689 A KR 20130160689A KR 101553273 B1 KR101553273 B1 KR 101553273B1
Authority
KR
South Korea
Prior art keywords
image
module
sub
information
model information
Prior art date
Application number
KR1020130160689A
Other languages
English (en)
Other versions
KR20150072954A (ko
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 KR1020130160689A priority Critical patent/KR101553273B1/ko
Publication of KR20150072954A publication Critical patent/KR20150072954A/ko
Application granted granted Critical
Publication of KR101553273B1 publication Critical patent/KR101553273B1/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
    • G06T7/00Image analysis

Abstract

증강현실 서비스를 제공하는 방법 및 장치를 개시한다.
사용자가 단말기를 이용하여 개인정보를 획득하거나, 구역 설명, 지도 등의 3D 모델정보를 획득하여 비디오 영상의 특정 표시 위에 출력하여 사용자에게 증강현실 서비스를 제공하는 방법 및 장치에 관한 것이다.

Description

증강현실 서비스를 제공하는 방법 및 장치{Method and Apparatus for Providing Augmented Reality Service}
본 실시예는 증강현실 서비스를 제공하는 방법 및 그를 위한 장치에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
멀티 코어 병렬 처리 컴퓨터 기술, 소프트웨어 공학 관리, IPV6 기술과 3G 통신기술의 신속한 발전에 따라, 컴퓨터 지원 설계, 시뮬레이션 모델링, 컴퓨터 아트, 컴퓨터 비전, 지능형 로봇 등 기술은 국제 공업계화 학계의 중요한 연구 포인트로 되었다. 이러한 기술들은 점차 사람들을 정보 디지털화 후의 가상 세계로 이끌고 있으며 예술과 영상 창작을 시간, 공간, 경험을 초월한 새로운 창작과 새로운 사고의 영역으로 이끌고 있다. 가상현실(VR: Virtual Reality) 기술은 신세기의 컴퓨터 멀티미디어 형식을 예고하고 있으며 증강현실(AR: Augmented Reality) 기술은 가상현실(VR: Virtual Reality) 기술의 중요한 분류의 하나로서 사용자와 가상세계 중 3D 물체와 자연적인 상호작용을 진행할 수 있는 인터페이스를 제공하고 있으며 사용자들에게 실현하기 쉬운 하드장비, 강한 상호 작용, 사람들의 인지 능력을 강화할 수 있는 새로운 실감적인 세계를 가져다 준다.
증강현실 시스템은 실시간으로 실감적인 고해상도 3D 장면을 제공하기 위한 연구가 계속되고 있고, 사람과 가상환경간의 완벽한 통합을 실현하여 사람들로 하여금 제일 자연적인 조작을 통하여 가상 세계 속의 3D 물체와 상호작용을 진행하는 것이 필요로 한다.
본 실시예는, 사용자가 단말기를 이용하여 개인정보를 획득하거나, 구역 설명, 지도 등의 3D 모델정보를 획득하여 비디오 영상의 특정 표시 위에 출력하여 사용자에게 증강현실 서비스를 제공하는 방법 및 장치를 제공하는 데 목적이 있다.
본 실시예의 일 측면에 의하면, 영상 입력장치로부터 촬영된 비디오 영상을 획득하는 영상수집 서브모듈; 상기 비디오 영상을 기초로 영상 전처리를 수행하여 기 설치된 특정 표시를 식별하는 영상 전처리 서브모듈; 상기 특정 표시에 근거하여 3D 모델정보를 생성하고, 생성된 상기 3D 모델정보를 상기 특정 표시 상에 렌더링(Rendering)하는 그래픽 제작 서브모듈; 상기 특정 표시 및 상기 3D 모델정보 간의 심도정보를 측정하는 심도검사 서브모듈; 상기 심도정보에 근거하여 상기 특정 표시 및 상기 3D 모델정보에 시각정보를 추가하여 융합하여 렌더링 되도록 하는 실제상황 융합 서브모듈; 및 상기 특정 표시 및 상기 3D 모델정보를 출력하는 디스플레이 모듈을 포함하는 것을 특징으로 하는 증강현실 서비스 제공장치를 제공한다.
또한, 본 실시예의 다른 측면에 의하면, 영상 입력장치로부터 촬영된 비디오 영상을 획득하는 영상수집 과정; 상기 비디오 영상을 기초로 영상 전처리를 수행하여 기 설치된 특정 표시를 식별하는 영상 전처리 과정; 상기 특정 표시에 근거하여 3D 모델정보를 생성하는 가상모델 생성과정; 상기 특정 표시 및 상기 3D 모델정보 간의 심도정보를 측정하는 심도검사 과정; 상기 심도정보에 근거하여 상기 특정 표시 및 상기 3D 모델정보에 시각정보를 추가하여 융합하는 실제상황 융합 과정; 상기 3D 모델정보를 상기 특정 표시 상에 렌더링(Rendering)하는 렌더링 과정; 및 상기 특정 표시 및 상기 3D 모델정보를 출력하는 디스플레이 과정을 포함하는 것을 특징으로 하는 증강현실 서비스 제공방법을 제공한다.
또한, 본 실시예의 다른 측면에 의하면, 데이터 처리기기에, 영상 입력장치로부터 촬영된 비디오 영상을 획득하는 영상수집 과정; 상기 비디오 영상을 기초로 영상 전처리를 수행하여 기 설치된 특정 표시를 식별하는 영상 전처리 과정; 상기 특정 표시에 근거하여 3D 모델정보를 생성하는 가상모델 생성과정; 상기 특정 표시 및 상기 3D 모델정보 간의 심도정보를 측정하는 심도검사 과정; 상기 심도정보에 근거하여 상기 특정 표시 및 상기 3D 모델정보에 시각정보를 추가하여 융합하는 실제상황 융합 과정; 상기 3D 모델정보를 상기 특정 표시 상에 렌더링(Rendering)하는 렌더링 과정; 및 상기 특정 표시 및 상기 3D 모델정보를 출력하는 디스플레이 과정을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
이상에서 설명한 바와 같이 본 실시예에 의하면, 사용자가 단말기를 이용하여 개인정보를 획득하거나, 구역 설명, 지도 등의 3D 모델정보를 기 설치된 특정 표시 상에 투영함으로써, 사용자가 들어갈 수 없는 미관세계 또는 특수 환경을 느낄 수 있는 증강현실 서비스를 제공하는 효과가 있다.
또한, 특정 표시 상에 구역 설명, 지도 등의 3D 모델정보를 투영함으로써, GPS가 원활하지 않은 지역에서 위치를 확인할 수 있고, 불필요한 데이터 송수신을 줄일 수 있는 효과가 있다.
도 1은 본 발명의 제1 실시예에 따른 증강현실 시스템을 개략적으로 나타낸 블록 구성도이다.
도 2는 본 발명의 제1 실시예에 따른 영상수집 서브모듈이 다이렉트쇼 모듈로 구현된 것을 나타내기 위한 예시도이다.
도 3은 본 발명의 제1 실시예에 따른 영상 전처리 서브모듈의 디지털 이미지 처리 절차를 나타낸 블록 구성도이다.
도 4는 본 발명의 제1 실시예에 따른 등록측정 서브모듈에서 방사형 왜곡 기반의 카메라 모델을 나타내기 위한 예시도이다.
도 5는 본 발명의 제1 실시예에 따른 심도검사 서브모듈에서 심도정보를 검측하는 절차를 나타낸 블록 구성도이다.
도 6은 본 발명의 제2 실시예에 따른 증강현실 서비스 제공장치를 개략적으로 나타낸 블록 구성도이다.
도 7은 본 발명의 제2 실시예에 따른 영상 처리부의 좌표계를 나타내기 위한 예시도이다.
도 8은 본 발명의 제2 실시예에 따른 가상 3D 물체를 특정 표시 상에 투영하는 동작을 나타낸 예시도이다.
도 9는 본 발명의 제2 실시예에 따른 디지털 명함을 나타낸 예시도이다.
도 10의 (a)는 본 발명의 제2 실시예에 따른 디지털 명함에 대한 증강현실 서비스를 제공하기 위한 특정 표시를 나타낸 예시도이다.
도 10의 (b)는 본 발명의 제2 실시예에 따른 증강현실 서비스를 이용하여 특정 표시 상에 출력된 디지털 명함을 나타낸 예시도이다.
도 11의 (a)는 본 발명의 제2 실시예에 따른 3D 지도에 대한 증강현실 서비스를 제공하기 위한 특정 문패표시를 나타낸 예시도이다.
도 11의 (b)는 본 발명의 제2 실시예에 따른 증강현실 서비스를 이용하여 출력된 3D 장면 지도를 나타낸 예시도이다.
도 12의 (a)는 본 발명의 제2 실시예에 따른 증강현실 서비스를 제공하기 위한 특정 문패표시 및 특정 안내표시를 나타낸 예시도이다.
도 12의 (b)는 본 발명의 제2 실시예에 따른 증강현실 서비스를 이용하여 출력된 3D 지도 및 구역 안내정보를 나타낸 예시도이다.
이하, 본 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 제1 실시예에 따른 증강현실 시스템을 개략적으로 나타낸 블록 구성도이다.
본 발명의 일 실시예에 따른 증강현실 시스템은 증강현실 기술을 이용하여 복수 개의 고정 카메라를 통해 기 설치된 특정 표시를 식별하고, 특정 표시에 대응하는 3D 모델정보를 특정 표시 상에 투영한다. 증강현실 시스템은 동시에 물체의 심도 정보를 측정하고, 주변 조명 및 사용자의 상호작용 정보에 근거하여 가상 물체(3D 모델정보)와 현실영상(비디오 영상)의 출력, 숨김 등의 관계처리를 진행하여 증강현실 서비스를 제공한다.
본 실시예에 따른 증강현실 시스템은 영상수집 서브모듈(110), 영상 전처리 서브모듈(120), 심도검사 서브모듈(130), 그래픽 제작 서브모듈(140), 실제상황 융합 서브모듈(150), 사용자 상호작용 서브모듈(160), 멀티미디어 제어 서브모듈(170) 및 디스플레이 모듈(180)을 포함한다. 여기서, 증강현실 시스템은 조명 제어모듈, 조명 계산모듈, 투영 제작모듈 및 사용자정보 관리모듈 등의 확장모듈을 추가하여 구성될 수 있다. 이하, 증강현실 시스템의 구성요소에 대해 자세히 설명하도록 한다.
영상수집 서브모듈(110)은 영상 입력장치(예컨대, 카메라)의 비디오 스트리밍을 이용하여 비디오 영상을 획득한다. 여기서, 영상 입력장치는 고사양 CCD 카메라 등으로 구현될 수 있고, 영상수집 서브모듈(110)이 비디오 영상을 실시간으로 정확하게 획득할 수 있는 영상 정밀도와 획득 속도를 지원한다면 다양한 형태로 구현 가능하다. 예컨대, 영상수집 서브모듈(110)은 도 2에 도시된 바와 같이, 다이렉트엑스(DirectX) 개발 키트 중 다이렉트쇼(DirectShow) 모듈로 구현될 수 있고, 도 2에서는 다이렉트쇼 모듈의 응용 프로그램, 다이렉트쇼 부품, 다이렉트쇼가 지원하는 부분 하드, 소프트웨어와 부품 간의 관계를 도시한다. 여기서, 다이렉트쇼 모듈은 윈도우(Windows) 환경 내에서 실행되는 하나의 스트리밍 미디어를 처리하는 다이렉트엑스의 구성요로를 의미한다.
다이렉트쇼 모듈의 기능은 COM(Component Object Model) 기술을 기반이고, COM 부품은 COM 규범에 따라 편집되었고, Win32 동적 링크 라이브러리(DLL: Dynamic-Link Library)와 실행파일(.exe) 형식으로 구현된 것은 이진 코드를 수행할 수 있으며 부품구성의 모든 요구를 만족시킬 수 있다. COM 부품과 부품간의 상호 조작할 수 있는 규범을 따르기에 아주 편리하게 산출할 수 있는 응용 시스템을 개발할 수 있다. COM 부품의 인터페이스가 변경되지 않으면, COM 부품을 임의로 업그레이드하거나 바꿀 수 있으며 응용프로그램은 아무런 수정도 할 필요가 없다.
다이렉트쇼 모듈은 복수 개의 멀티미디어 형식을 지원하며, 예컨대, ASF, MPEG, AVI, MP3, WAV 등의 멀티미디어 형식일 수 있다. 다이렉트쇼 모듈은 하드웨어 가속장치를 장착하는 경우, 자동적으로 멀티미디어 형식의 데이터를 검색할 수도 있다. 또한, 다이렉트쇼 모듈은 WDM 비디오 캡처장비를 추가로 지원할 수 있으며 VFW 비디오 캡쳐 장치도 지원할 수 있다.
도 3은 본 발명의 제1 실시예에 따른 영상 전처리 서브모듈의 디지털 이미지 처리 절차를 나타낸 블록 구성도이다.
영상 전처리 서브모듈(120)는 획득된 비디오 영상을 기초로 디지털 영상처리를 수행하는 디지털 영상처리, 표시 식별처리 및 등록 측정처리 등의 기능을 수행한다.
영상 전처리 서브모듈(120)은 획득된 비디오 영상을 기초로 등록측정 서브모듈(미도시) 및 실제상황 융합 서브모듈(150)로 증강현실을 수행하기 위한 데이터를 제공한다. 더 자세히 설명하자면, 영상 전처리 서브모듈(120)은 획득된 비디오 영상을 기초로 이미지 분할, 에지 검출 등의 영상 처리방식을 이용하여 비디오 영상 중 기 설치된 특정 표시를 식별한 데이터를 생성한다. 예컨대, 영상 전처리 서브모듈(120)은 도 4에 도시된 바와 같이, 획득한 비디오 영상을 그레이 스케일 변환 및 화소 임계값을 세분화하여 이진 이미지(Binary Image)를 생성하고, 생성된 이진 이미지를 기초로 에지 추출 및 허프(Hough) 변환을 이용하여 추출된 선분(엣지)을 이용하여 특정 표시의 구조를 확인하여, 특정 표시의 특정점을 추출할 수 있다.
영상 전처리 서브모듈(120)은 표시 식별처리를 수행하는 표시식별 서브모듈(미도시)을 추가로 포함할 수 있고, 표시식별 서브모듈은 영상 분할, 에지 검출과 윤곽선 추출 등을 수행한 데이터(특정점 관련정보)를 기초로 매칭 연산에 근거하여 비디오 영상의 특정 표시를 정확하게 식별되도록 하며, 동시에 특정 표시의 ID 정보를 제공하여 그래픽 제작 서브모듈(140)에서 기 생성된 3D 모델정보가 특정 표시에 정확히 출력되도록 한다. 여기서, 특정 표시는 일정한 넓이가 있는 폐쇄된 블랙 직사각형 테두리와 내부의 각종 도형 또는 문자 두 부분으로 구성될 수 있다.
표시식별 서브모듈은 비디오 영상의 매 프레임 영상에 대해 영상 분할, 에지 추출, 연통영역 검측, 윤곽 추출 등 과정을 이용하여 폐쇄된 블랙 직사각형 테두리가 존재하는지 확인한 후 연통영역의 사각형 구조와 매칭하여 비디오 영상 중 모든 특정 표시가 있는 영역과 좌표를 기록하여, 특정 표시에 대한 사각형의 에지 픽셀 좌표를 각각 추출하고 사각형 표기의 4개 정점 좌표를 찾아내 특정 표기의 에지(Edge)에 대한 직선 방정식을 계산하여 특정 표시를 식별할 수 있다.
표시식별 서브모듈은 특정 표시를 식별하기 위해 영상 표준화 과정 및 템플릿 매칭 과정을 수행할 수 있다. 영상 전처리 서브모듈(120)에 포함된 표시식별 서브모듈의 영상 표준화 과정에 대해 설명하자면 다음과 같다.
표시식별 서브모듈은 기 제작된 특정 표시를 정확히 식별하기 위하여 템플릿 매칭 연산을 이용하여 데이터베이스 또는 특정 폴더 내에 기 저장된 기준 특정 표시와 비디오 영상 내의 특정 표시를 비교하여 증강현실 서비스와 관련된 특정 표시인지를 판단한 후 특정 표시의 ID 정보를 확인하여 그에 해당하는 가상 3D 모델정보(가상 3D 물체)를 특정 표시 위에 오버레이(Overlay)되도록 한다.
하지만, 영상 입력장치에 의해 획득된 비디오 영상은 랜덤 위치에서 촬영됨으로 특정 표시는 영상 입력장치의 렌즈와 평행이 아닐 수 있으며, 영상 입력장치의 광축도 특정 표시와 수직이 아닐 수 있다. 그러므로 수집된 비디오 영상도 불규칙적이며 특정 표시는 평행이동, 회전, 아핀(Affine) 확장변형 등 일정한 변형이 발생하게 되며, 이를 해결하기 위해 표시식별 서브모듈은 기 저장된 템플릿(기준 특정 표시)과 매칭 연산을 수행하여 특정 표시의 ID 정보를 식별하기 위하여 비디오 영상에 대해 기하변환을 진행하여 비디오 영상을 표준화한 후 특정 표시에 대한 3D 모델정보를 확인하는 것이 바람직하다.
영상 전처리 서브모듈(120)에 포함된 표시식별 서브모듈의 템플릿 매칭 과정에 대해 설명하자면 다음과 같다.
표시식별 서브모듈은 모드 매칭 방식을 이용하여 특정 표시를 식별할 수 있다. 여기서, 모드 매칭 방식은 알려진 모드에 근거하여 다른 이미지(템플릿)에서 매칭되는 서브 이미지(특정 표시)를 검색하는 과정을 말한다. 즉, 템플릿 매칭 과정은 비디오 영상의 하나의 프레임 내에서 특정 표시를 검색하는 과정으로서, 한 폭의 큰 이미지 중에서 목표를 찾는 것이고 이미지 중에 찾아야 할 목표가 있다는 것을 알고 있으며 일정한 연산을 통해 이 영상 중에서 목표를 찾아낼 수 있으며, 목표 즉, 특정 표시에 대한 좌표위치를 확정하는 것이다.
전술한 템플릿 매칭 과정에 대한 일 실시형태에 대해 설명하자면, 한 폭의 영상과 다른 한 폭의 영상의 근사 정도는 하나의 표준이 필요하며 수학에서 보통 벡터의 기준(Norm)을 표준으로 사용하여 탬플릿 매칭을 수행한다. 예를 들어, 입력 영상(비디오 영상)이 M이고 알고 있는 영상(템플릿)이 T라면 이 두 영상 간의 근사도(d)는 다음과 같은 수학식 1로 측정할 수 있다.
Figure 112013117251274-pat00001
근사도(d)는 거리의 스칼라 양이고 두 벡터 간의 거리를 표시한다. 영상 중에서 근사도(d)에 대한 값이 최소 구역을 찾는 것으로서, 알고 있는 영상(T)가 입력 영상(M) 중에서의 위치정보를 확정한다. 표시식별 서브모듈은 매칭 오차를 방지하기 위하여 일반적으로 응용 중에 임계값을 설정하여 근사도(d)값이 기 설정된 임계값 이하인 경우, 알고 있는 영상(T) 및 입력 영상(M) 간에 일정한 근사도가 있는 것으로 판단하여 비교하고, 근사도(d)값이 기 설정된 임계값 이상인 경우, 알고 있는 영상(T) 및 입력 영상(M)의 근사도가 없는 것으로 판단하여 비교하지 않는다.
전술한 템플릿 매칭 과정에 대한 다른 실시형태에 대해 설명하자면, 영상 촬영 시, 조명 강도가 일정하여 획득한 영상의 그레이 스케일의 분포가 일정하게 되면, 근사한 알고 있는 영상(T) 및 입력 영상(M)이 상이한 것으로 검측 오류가 발생하게 된다. 이러한, 검측 오류를 방지하기 위하여 알고 있는 영상(T) 및 입력 영상(M)에 대한 실제 두 벡터의 협각(θ)을 이용하여 두 영상의 근사도를 측정할 수 있으며, 근사도 즉, 협각을 산출하는 공식은 다음과 같은 수학식 2로 산출할 수 있다.
Figure 112013117251274-pat00002
영상 전처리 서브모듈(120)은 등록 측정처리를 수행하는 등록측정 서브모듈 (미도시)을 추가로 포함할 수 있고, 등록측정 서브모듈은 영상 입력장치의 실제환경에 대한 상대 위치, 방향각, 이미지 촬영의 내부함수에 근거하여 생성된 가상정보를 이용하여 실시간으로 3D 모델정보가 출력될 위치를 확정한다. 다시 말해, 영상 전처리 서브모듈(120)은 등록 측정처리를 이용함으로써, 사용자가 어떠한 각도에서 특정 표시를 관찰하더라도, 가상물체(3D 모델정보)와 현실환경(비디오 영상)은 모두 3D 유클리드 공간(Euclidean Space)의 기하 일관성을 유지될 수 있다.
등록측정 서브모듈은 영상 입력장치의 내부함수 측정연산을 기초로 기 설치된 특정 표시의 3D 위치 및 형태를 계산하여 생성된 외부함수를 추출결과로 실제상황 융합 서브모듈(150)로 전송하여 OpenGL(Open Graphics Library) 중의 가상 카메라로 진실세계 중의 카메라를 시뮬레이션하여 양호한 가상물체(3D 모델정보)와 현실환경(비디오 영상)의 완전융합 장면이 생성되도록 하고, 생성된 3D 모델정보를 특정 표시에 렌더링(Rendering)하여 출력되도록 한다.
등록측정 서브모듈은 전술한 동작을 수행하기 위해 카메라 보정의 과정을 수행한다.
이하, 등록측정 서브모듈의 카메라 보정에 대한 과정에 대해 설명하도록 한다. 여기서, 카메라 보정은 비디오 영상의 모델을 수립하여 2D 영상정보로부터 3D 물체의 대응관계를 획득하여 확정하고, 이러한 대응관계를 카메라의 내부함수와 외부함수로 표시할 수 있다. 여기서, 비디오 영상의 모델은 두 가지 종류로 구별할 수 있는데, 한 가지는 공용 원근 투영 카메라 모델이고, 다른 한 가지는 방사형 왜곡을 기반으로 한 Tsai 카메라 모델이다.
등록측정 서브모듈은 공용 카메라 모델을 기반으로 한 카메라 보정방식은 원근 투영의 카메라 모델을 수립하여 카메라의 외부함수와 내부함수를 구해낸다. 공용 카메라 모델을 기반의 카메라 보정기술은 4 개의 좌표 시스템(세계 좌표계, 영상 평면 좌표계, 카메라 좌표계 및 영상 디스플레이 좌표계)을 이용하여 영상을 보정할 수 있다. 공용 카메라 모델을 기반의 카메라 보정기술은 현실세계의 3D 형태의 물체가 카메라 영상원리를 통해 영상 평면의 2D 점으로 변환하는 과정은 4개 좌표계간의 좌표변환을 경과해야 하며, 카메라 보정 기술은 이 좌표계 간의 변환관계를 기반으로 확정해야 하고, 이런 관계를 이용하여 평면상의 2D 점에 근거하여, 2D 점의 실제 3D공간 속에서의 위치를 계산할 수 있다.
한편, 등록측정 서브모듈은 방사형 왜곡을 기반의 카메라 보정방식에 대해 설명하자면 다음과 같다.
방사형 왜곡을 기반의 카메라 보정방식은 영상 중심과 멀리 떨어져 있는 영상 점은 비교적 큰 왜곡을 측정하여 카메라 보정을 수행할 수 있다. 예컨대, (x1, y1) 로 비선형 왜곡값은 (X1, Y1)로 왜곡 후의 실제값을 기반으로 방사형 왜곡(k), 원심 왜곡(p), 프리즘 왜곡(s)을 이용하여 산출할 수 있고, 이러한 비선형 왜곡값은 수학식 3을 통해 산출될 수 있다.
Figure 112013117251274-pat00003
도 4에 도시된 바와 같이, 등록측정 서브모듈은 방사형 왜곡을 기반으로 일 단계 방사형 왜곡 계수가 있는 카메라 모델을 생성할 수 있다.
방사형 왜곡을 기반의 Tsai카메라 모델은 왜곡이 없는 영상 평면 좌표 (x, y) 부터 카메라 렌즈 방사형 왜곡의 영향을 받아 오프셋 된 실제 영상 평면좌표 (x*, y*)의 변환에 대한 수학식 4 및 수학식 5는 다음과 같다.
Figure 112013117251274-pat00004
Figure 112013117251274-pat00005
방정식 4과 방정식 5 에서 보다시피 영상 점의 방사형 왜곡과 이 점에서 카메라 렌즈 중심까지 거리의 평방과 정비례됨으로 중심 거리와 멀수록 방사형 왜곡이 더욱 선명함을 알 수 있다.
도 1에 도시된 바와 같이, 일 단계 방사형 왜곡을 포함한 카메라 모델을 기반으로 한 카메라 보정은 하나의 한 폭의 한 그룹 공동 면 기준점을 포함한 영상이 필요하며 먼저 카메라 외부함수를 계산한 후 다음 카메라의 내부함수를 계산한다. 구체적인 계산과정은 다음과 같다.
한 폭의 여러 공동 평면 점이 존재하는 특정 표시에 대한 영상을 촬영한다. 세계좌표 (Xi, Yi, Zi)와 대응하는 평면좌표 (xi, yi)를 알고 있는 점 M개(M>=5)가 주어졌다 가정하고 I = 1, 2, …, M, 매개 점 Pi에 대하여 하나의 방정식을 만들 수 있고 M 개의 방정식을 연립시키면 수학식 6과 같다.
Figure 112013117251274-pat00006
M > 5일 때 이 식은 중복 결정(Overdetermined)의 식이기에 최소 평방법으로 구할 수 있으며, 다음 수학식7과 같은 변수의 값을 얻을 수 있다.
Figure 112013117251274-pat00007
등록측정 서브모듈은 다음과 같은 방법으로 카메라의 외부함수를 계산할 수 있다.
(A) W는 W1 2+ W2 2+ W3 2+ W4 2 라고 한다면, 회전 행렬의 직교성에 근거하여 수학식 8을 얻을 수 있다.
Figure 112013117251274-pat00008
(B) Ty의 정수값(절대값)으로 다음 수학식 9에 넣어 계산하면 다음과 같다.
Figure 112013117251274-pat00009
(C) 세계 좌표계 중에서 임의로 하나의 특정점 p(X, Y, Z)를 선택하여 이 점이 영상 좌표계에서의 좌표값을 산출한다. 영상 좌표계에서의 좌표값을 산출하는 수학식 10은 다음과 같다.
Figure 112013117251274-pat00010
(D) 산출된 좌표값 (xp, yp)와 이 점이 모니터에서의 좌표값 (x, y)를 비교한다. 방사형의 일관성 제약 조건에 근거하여 x, y의 부호는 각각 , xp, yp의 부호와 같다. 여기서, Tx는 정수 값을 취하고 반대로 Ty는 음수 값을 획득하여 기타 회전 함수(수학식 11)들을 확인할 수 있다.
Figure 112013117251274-pat00011
카메라의 유효 초점 f, Tz(Translational Component)와 렌즈의 방사형 왜곡 계수 k를 계산하고, 전술한 절차를 통해 획득한 함수로 매트릭스 B 및 벡터 v의 매 행을 수학식 12 및 수학식 13과 같이 표시한다.
Figure 112013117251274-pat00012
Figure 112013117251274-pat00013
수학식 12 및 수학식 13을 선형 식으로 결합하면, 수학식 14와 같다.
Figure 112013117251274-pat00014
수학식 14를 카메라의 유효 초점 f와 z 축 상에서의 Tz의 예측값을 산출하고, 만약 f < 0이라면 r3, r6, r7, r8, f 및 Tz는 음수 값을 취한다. 마지막으로 방사형 왜곡의 계수와 f 및 Tz의 정확한 값을 산출하기 위해 비선형 수학식 15를 구하고, I = 1, 2, …, M를 대입하여 비선형 회귀 방법으로 방정식을 해결한다.
Figure 112013117251274-pat00015
영상 전처리 서브모듈(120)은 비디오 영상 내의 3D 장면의 물체는 조명의 영향 및 주위환경의 영향에 근거하여 가상물체의 매끈한 표면이 주위환경을 반사(환경반사)할 수 있다. 예컨대, 임의의 물체에 대한 주위환경 장면을 포함하는 텍스쳐(Texture)를 가상물체의 표면에 매핑하면, 일정하게 물체에 대한 주위환경의 반사를 시뮬레이션할 수 있고, 광선추적 등의 복잡한 기술을 대신하여 사용할 수 있다.
영상 전처리 서브모듈(120)이 환경반사를 사용하고, 3D 실시간 동적인 장면의 렌더링 속도를 높이기 위해 GPU 프로그래밍 기술을 사용할 수도 있다. 이하, 주요 과정은 다음과 같다.
(A) 주위 환경을 하나의 입방체로 가상한다.
(B) 카메라로부터 주위환경의 영상을 획득한다.
(C) 정점의 위치를 컷 공간과 텍스쳐로 변환하여 텍스쳐 좌표집합을 전달한다.
(D) 벡터를 세계공간 속으로 변환하고 입사광선 I를 계산한다.
(E) 사람 눈이 발사한 입사광선 I와 물체 표면의 법선 N에 근거하여 대응한 반사광선 R를 구한다. 계산 공식은 수학식 16과 같다.
Figure 112013117251274-pat00016
Cg 그래픽 언어가 제공한 reflect(I, N) 표준함수를 사용하여 GPU에서 계산한다.
또한, 영상 전처리 서브모듈(120)은 스넬의 법칙(Snell? Law)에 근거하여 합리적인 굴절지수 비율을 지정하여 변수 etaRatio에 할당하고, 굴절광선 T를 계산하여 Cg 그래픽 언어가 제공한 refract(I, N, etaRatio) 표준함수를 이용하여 GPU에서 반사계수를 계산하여 벡터를 규범화시킨다.
영상 전처리 서브모듈(120)은 반사광선과 굴절광선을 조각 프로그램에게 전달하여 환경 텍스쳐를 검색하고, 착색 또는 가상물체의 표면에서 기 설정도니 임계치 이상의 환경 반사효과가 있는 환경 텍스쳐를 생성할 수 있다.
도 5는 본 발명의 제1 실시예에 따른 심도검사 서브모듈에서 심도정보를 검측하는 절차를 나타낸 블록 구성도이다.
도 5는 심도검사 서브모듈(130)의 흐름도를 나타낸 것으로서, 심도검사 서브모듈(130)은 가상물체(3D 모델정보)의 심도정보를 계산하고, 심도정보 대비값을 이용하여 가상물체와 현실장면(비디오 영상)의 적용관계를 확정한다.
심도검사 서브모듈(130)은 현실세계와 가상세계를 연결하는 교량 역할을 수행한다. 예컨대, 심도검사 서브모듈(130)은 광학적 외피(Photo Hull) 기술을 이용하여 공간 점의 심도정보를 판단한다. 심도검사 서브모듈(130)은 공간조각 계산법 중 우선 현실세계 중 하나의 3D 공간을 확정(SRP)한 후 이 공간을 입자 방식으로 검사를 진행한다.
심도검사 서브모듈(130)은 한 폭의 영상 중 한 점은 공간 중 한 라인과 이 점과의 상호대응을 확정하고 시스템 중에서 영상 위의 한 점의 심도 정보를 구하기 위해서는 두 폭의 영상 혹은 여러 폭의 영상이 필요하다. 한 점이 여러 영상에서의 심도정보의 직선 방정식을 계산하고 방정식을 연계하여 최소 평방법을 이용하여 영상 점의 심도정보를 계산한다.
그래픽 제작 서브모듈(140)은 시스템이 가상 3D 모델정보의 실시간 동태에 대한 렌더링(Rendering)을 실현한다. 이 모듈의 개발 키트는 예컨대, OpenGL과 OpenVRML이 포함될 수 있다. OpenGL는 3D 모델 렌더링 개발 키드이며 여러 가지 성숙된 기술과 기능이 포함되며 주로 3D 장면 중 3D 모델정보를 구성하고 이런 모델들의 공간 위치관계를 관리하고, 3D모델의 아핀 변환(Affine Transform)을 지원하고 풍부한 칼라 설치 기능을 제공하고 조명 시뮬레이션과 텍스쳐 매핑(Texture Mapping)을 지원하고 안티에얼리어싱(Antialiasing)등 기술은 실제 상황 결합 모듈을 지원하여 완전융합을 실현하여 비트맵을 양호하게 표현할 수 있으며 이중 버퍼링 기술을 응용하여 동영상 렌더링을 실현할 수 있다. OpenVRML는 렌더링용 VRML 언어로 가상환경을 구성하는 개발 키트로 구현될 수 있다.
이하, 그래픽 제작 서브모듈(140)이 3D 모델을 렌더링하는 동작에 대해 설명하도록 한다.
그래픽 제작 서브모듈(140)은 가상 3D 모델의 렌더링을 수행하는데 있어서, OpenGL을 사용하여 구조가 간단하고 동영상 디자인을 쉽게 구현할 수 있는 가상 3D 모델을 제작한다. 그래픽 제작 서브모듈(140)은 영상 입력장치의 내부함수 및 외부함수에 기초하여 OpenGL 중 가상 카메라의 위치와 형태를 기 설치하여 가상 3D모델로 하여금 정확하게 실제 환경에 렌더링 되게 한다.
그래픽 제작 서브모듈(140)은 가상 3D 모델의 렌더링을 수행하는데 VRML(Virtual Reality Modeling Language)을 이용할 수 있다. 여기서, VRML은 가상현실 3D 입체 네트워크 프로그램 설계언어의 약칭이다.
그래픽 제작 서브모듈(140)에서 OpenVRML은 하나의 크로스 플랫폼 프로그램 링크 라이브러리이고 안에는 하나의 브라우저가 포함되며 VRML 파일과 X3D 파일이 정의한 3D 가상 장면을 볼 수 있다. 그래픽 제작 서브모듈(140)은 동시에 응용프로그램 중 라이브러리 안의 함수를 호출하여 VRML 파일과 X3D 파일이 정의한 3D 장면을 실시간으로 렌더링 할 수 있다.
그래픽 제작 서브모듈(140)에서 OpenVRML은 복수 개의 클래스를 정의할 수 있으며, 예컨대, browser 클래스, viewer 클래스, VRML 언어표준 중 데이터 유형의 클래스, 여러 노드의 클래스, 이벤트 및 스크립트 등에 대한 클래스가 포함될 수 있다. 그래픽 제작 서브모듈(140)에서 응용프로그램은 browser 클래스의 대상과 viewer 클래스의 대상을 정의하는 것을 통하여 VRML 형식의 파일에 대한 브라우저 대상을 생성하며, viewer 클래스 대상의 Tranlation, Rotation, Scale의 값에 근거하여 부동한 시점과 각도에서 관찰한 VRML 파일이 정의한 가상 3D세계를 설치한다. 동시에 browser 클래스 중 bool browser::update(Double Current_Time) 함수의 입력함수에 대한 설치를 통하여 browser 대상 전부 동태적인 상호작용 감지 노드를 촉발하여 browser 대상 중 모든 동태적인 상호작용 감지 노드의 상태 값이 모두 변화를 발생하게 한다. 즉, 3D 모델의 각종 상태 함수를 개변하여 viewer[id]->redraw 함수가 새로 설치한 상태함수에 근거하여 3D 모델을 렌더링 한다. 부동적인 시각에서 3D 모델의 상태함수가 부동하기 때문에 VRML 프로그램 중 정의한 3D 모델에 대한 동영상이 형성된다.
실제상황 융합 서브모듈(150)은 주로 전경과 가상 환경과의 융합, 커버 처리, 에지 융합 등 작업을 완성한다. 별도의 시각효과, 예를 들면 조명, 전경 칼라 증가 등도 이 모듈에서 수행될 수 있다.
실제상황 융합 서브모듈(150)은 가상물체와 현실물체와의 커버관계를 정확하게 표현하기 위해서는 심도검사 서브모듈(130)의 추출 결과를 기초로 현실환경 중의 물체와 가상물체와의 커버관계에 근거하여 현실환경과 가상환경과의 완전 융합을 진행한다. 실제상황 융합 서브모듈(150)이 가상물체와 현실물체 간의 커버관계를 처리하는 절차는 다음과 같다.
(A) 만약 물체가 감시구역에 있다면 물체의 심도정보와 감시구역 중 가상물체와의 심도정보를 비교한다.
(B) 만약 현실 환경 중 물체의 심도가 가상 3D모델의 심도정보보다 크다면 즉 고정 카메라의 시각에서 보았을 때 현실환경 중의 물체와 가상물체의 공간위치 관계는 현실 환경의 물체가 뒤에 있고 가상물체가 앞에 있다면 3D가상 모델을 특정 표시에 투영한다.
(C) 만약 현실 환경 중 물체의 심도가 가상 3D 모델의 심도정보보다 작다면 즉 고정 카메라의 시각에서 보았을 때 현실환경 중의 물체와 가상물체의 공간위치 관계는 현실 환경의 물체가 앞에 있고 가상 물체가 뒤에 있다면 3D 가상 모델을 표기물에 투영한 후 가우스 소거(Gauss Cutout)하여 얻은 현실물체의 영상을 가상 3D 모델 위에 렌더링하여 현실물체와 가상물체와의 커버관계를 나타낸다. 실제상황 융합 서브모듈(150)은 조명, 음영, 전경칼라 증강 등 시각효과를 환경의 수요에 따라 추가하여 증강현실 서비스를 제공하는 장면의 현실감을 증가시킬 수 있다.
사용자 상호작용 서브모듈(160)은 사용자를 위해 두 가지 가상물체와 직접 상호작용 할 수 있는 방식을 제공한다. 사용자 상호작용 서브모듈(160)은 예컨대, 사용자가 손으로 가상물체와 상호작용하도록 제어할 수 있다. 이러한, 상호작용 방식은 주로 심도검사 서브모듈(130)의 추출 결과에 근거하여 실제 손을 발견된 경우, 이러한 추출 결과를 입력 함수의 형식으로 사용자 상호작용 서브모듈(160)에 전송하여 사용자 상호작용 서브모듈(160)에서 입력 함수를 분석한 후 상호작용 시맨틱(semantic) 신호를 추출하여 시멘틱 신호를 함수 형식으로 그래픽 제작 서브모듈(140)에 전송하여 특정 표시 위에 가상 3D모델이 출력되는 동시에 사용자의 손에 대한 3D 모델을 이용하여 다른 가상물체와 상호작용할 수 있도록 한다.
사용자 상호작용 서브모듈(160)은 충돌 감지 및 사용자 상호작용에 대한 동작을 수행한다. 사용자 상호작용 서브모듈(160)은 두 표시 물체의 충돌 상황을 검사 할 때, 특정 표시의 두 세계 좌표계의 원점이 카메라 좌표계에서의 거리에 대해 기 설정한 충돌거리의 값보다 작은지 여부를 검사한다. 예컨대, 사용자 상호작용 서브모듈(160)은 특정 표시의 두 세계 좌표계의 원점이 카메라 좌표계에서의 거리에 대해 기 설정한 충돌거리보다 작으면, 두 가상물체는 충돌이 존재하는 것으로 판단하여 그래픽 제작 서브모듈(140)에서 기 생성된 3D 모델이 출력되도록 한다.
사용자 상호작용 서브모듈(160)은 특정 표시의 두 세계 좌표계의 원점과 카메라 좌표계의 좌표값이 카메라가 각각 이 두 특정 표시의 세계 좌표계 중 외부함수 표시를 이용할 때, 획득한 두 카메라 외부 함수 매트릭스 중 회전 변환 매트릭스일 수 있다. 이러한, 회전 변환 매트리스는 수학식 17과 같다.
Figure 112013117251274-pat00017
위 방정식 중 마지막 열의 Tx, Ty, Tz가 바로 특정 표시 위의 세계 좌표계 원점이 카메라 좌표계에서의 좌표값이다. 두 개의 특정 표시의 세계 좌표계 원점이 카메라 좌표계 중 좌표값이 (T1, T2, T3), (T4, T5, T6) 이라면 카메라 좌표계 중 공간거리(d)는 수학식 18와 같다.
Figure 112013117251274-pat00018
사용자 상호작용 서브모듈(160)은 충돌 감지를 검사한 결과에 근거하여 사용자 상호작용을 분석하여, 그래픽 제작 서브모듈(140)에서 가상 3D 모델을 이용한 애니매이션 동작을 출력할 수 있도록 함으로써, 사용자와 가상 3D 모델 간의 상호 작용을 실현할 수 있다.
멀티미디어 제어 서브모듈(170)은 오디오 또는 비디오에 대한 멀티미디어 제어기술을 이용하여 생동감 있는 증강 현실 서비스를 제공하는 동작을 수행한다.
이하, 멀티미디어 제어 서브모듈(170)이 오디오 파일에 대한 렌더링을 제어하는 동작에 대해 설명하도록 한다. 멀티미디어 제어 서브모듈(170)은 오디오 파일을 렌더링하여 증강현실 상의 가상 3D 모델과 상호작용을 통해 생동감 있는 증강현실 서비스를 제공할 수 있도록 한다. 예컨대, 멀티미디어 제어 서브모듈(170)에 포함된 멀티미디어 클래스는 주로 wav 형식의 파일과 MIDI파일 형식의 렌더링에 대한 제어를 지원하며 제공된 사운드를 제어하는 과정은 다음과 같다.
(A) 사운드 장비를 ON/OFF하여 장비의 문맥환경을 설치
(B) 지정한 사운드 파일을 메모리에 로드
(C) 사운드 파일에 대하여 순서적으로 재생, 재생 정지, 일시 정지 등 기능 실행
(D) 재생 시 필요한 볼륨의 크기 설치
(E) 사운드 파일을 재생 시 좌, 우 채널의 크기를 각각 설치
(F) 사운드 파일의 길이 획득, 사운드 파일의 순환 재생 등을 설치
(G) 사운드 재생 시의 시작점 설치, 사운드 파일이 지정한 시작점으로부터 필요한 사운드 재생
(H) 사운드 파일 중 재생 필요한 구간을 설치하고 순환 재생을 진행
(I) 사운드 파일이 지금 재생하고 있는 파일의 위치를 획득
도 6은 본 발명의 제2 실시예에 따른 증강현실 서비스 제공장치를 개략적으로 나타낸 블록 구성도이다.
본 발명의 제2 실시예에 따른 증강현실 서비스 제공장치(600)는 도 6에 도시된 바와 같이, 현실환경 속에 기 설치된 복수 개의 카메라를 이용하여 특정 표시를 식별하고, 3D 모델을 특정 표시 위에 투영한다. 여기서, 증강현실 서비스 제공장치(600)는 3D 모델을 특정 표시 위에 투영하는 동시에 3D 모델의 심도정보를 검사하여 조명과 사용자의 상호작용 정보를 추가로 계산하여 가상물체와 현실 환경의 출력, 숨김 등의 관계처리를 진행할 수 있다.
증강현실 서비스 제공장치(600)는 영상 처리부(610), 증강현실 처리부(620) 및 증강현실 출력부(630)를 포함한다.
본 발명의 제2 실시예에 따른 영상 처리부(610)는 영상획득, 카메라보정, 사용자 상호작용, 영상 사전 처리 등에 대한 동작을 수행한다. 이하, 영상 처리부(610)에서 영상 처리가 수행될 수 있도록 복수 개의 환경을 구현하는 동작에 대해 예를 들어 설명하도록 한다.
영상 처리부(610)는 카메라가 동작하여 영상이 생성되면 획득하는 동작을 수행하고, 이에 대한 코드는 표 1과 같다.
Figure 112013117251274-pat00019
영상 처리부(610)는 획득된 영상을 이용하여 영상 사전처리를 수행할 수 있다. 여기서, 영상 처리부(610)는 에지를 검출할 수 있다. 여기서, 검출된 에지는 주위의 픽셀 그레이 스케일의 단계 변화, 지붕 등 변화가 있는 픽셀들의 집합이다. 영상의 에지는 영상의 그레이 스케일의 불연속성과 대응되며, 에지 연산자는 작은 공간범위를 가지고 있는 일종의 수학 연산자이며 전문적으로 영상 함수 중 에지의 존재를 검출하는데 쓰일 수 있다. 영상 처리부(610)가 영상 사전처리를 수행하는 코드는 표 2와 같다.
Figure 112013117251274-pat00020
영상 처리부(610)는 영상에서 특정점을 추출할 때 정확도, 안정성, 전체 성능을 제공하기 위해 현실환경에 특정 표시를 기 설치해야 하고, 실시간 등록과정 중 특정 표시는 전체가 확인되어야 한다. 그러나, 실제응용 중 많은 실제환경 속에는 특정 표시를 설치하기 불편하며 표시가 완전히 확인됨을 확신 할 수 없다.
영상 처리부(610)는 특정 표시가 커버되는 문제를 해결하기 위해 카메라 표시 공간 확장방법을 사용할 수 있다. 전술한 방법은 복수 개의 특정 표시를 선택하여 미리 특정 표시들의 3D 공간위치의 상대관계를 설정할 수 있다. 영상 처리부(610)는 일단 하나의 특정 표시가 커버되면, 기타 표시를 식별한 후 이들 간의 공간위치 관계에 근거하여 가상 3D 물체가 커버된 특정 표시에 대한 위치 및 형태를 계산할 수 있다.
영상 처리부(610)는 특정 표시가 커버되는 문제를 해결하기 위해 카메라의 표시공간을 확장할 수 있으며, 도 7에 도시된 바와 같이, 여러 개의 표시를 선택하여 매개 표시 위에 하나의 세계 좌표계를 수립할 수 있다.
영상 처리부(610)는 이러한 특정 표시들을 공간 표시집합으로 구성하여 시스템상에서 하나의 새로운 좌표계를 설정하고, 공간 표시집합의 세계 좌표계와 새로운 좌표계의 회전 변환 행렬을 각각 계산한다. 여기서, 영상 처리부(610)는 여러 개의 특정 표시가 식별된 경우, 식별된 특정 표시 중 신뢰 계수가 가장 높은 특정 표시를 선택하고, 좌표계간의 전환관계를 새로 수립하며, 수립된 좌표계 중에서 3D 위치 자태를 계산하고 동시에 기타 특정 표시 상의 3D 모델의 3D 위치 자태를 계산하여 추후 3D 모델을 실제공간 속에 투영한다. 전술한 동작을 수행하기 위한 표시 식별 시스템에 대한 코드는 표 3과 같다.
Figure 112013117251274-pat00021
증강현실 처리부(620)는 카메라의 내부함수와 외부함수를 얻은 후 OpenGL로 가상의 3D 모델을 정확한 자태로 현실장면 속에 투영하여 가상모델과 현실장면이 정확하게 등록되어 가상장면과 현실세계의 완전 융합을 실현한다.
증강현실 처리부(620)는 OpenGL 중 함수 glFrustum (l, r, b, t, n, f)가 생성된 매트릭스 R을 설정하고, 현재 매트릭스 모드를 GL_PROJECTION로 설정하고 매트릭스 R을 원근 투영 스택에 푸시하여 3D 모델 투시변환의 그래픽효과를 실현하며, 이미 획득한 카메라 내부함수에 근거하여 이런 투시변환 매트릭스를 설정할 수 있다. 이러한, 매트릭스 R은 수학식 19를 이용하여 구현될 수 있다.
Figure 112013117251274-pat00022
증강현실 처리부(620)는 카메라의 외부함수로부터 카메라가 세계 좌표계의 위치와 방향을 알 수 있으며, OpenGL에서 카메라의 외부함수에 근거하여 OpenGL 중 가상 카메라의 가상세계 좌표계에서의 위치와 방향을 설정하여 현실세계 중의 카메라 형태를 시뮬레이션 할 수 있다. 따라서, 도 8에 도시된 바와 같이, 가상 3D물체를 정확한 위치와 형태로 현실세계 속으로 투영 할 수 있다. 여기서, 도 8을 구현하기 위한 이용한 현실세계의 융합 코드는 표 4와 같다.
Figure 112013117251274-pat00023
증강현실 출력부(630)는 전술한 증강 현실 기술에 근거하여 디지털 명함 또는 3D 전자지도 등의 분야에 대한 응용 실례를 출력할 수 있다.
전술한 바와 같이 도 6 내지 도 8에 기재된 증강현실 서비스 제공장치(600)의 동작은 프로그램으로 구현되고 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. 증강현실 서비스 제공장치(600)의 동작을 구현하기 위한 프로그램이 기록되고 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 이러한 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 또한, 본 실시예를 구현하기 위한 기능적인(Functional) 프로그램, 코드 및 코드 세그먼트들은 본 실시예가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있을 것이다.
본 발명의 제2 실시예에 따른 증강현실 서비스 제공장치(600)는 사용자가 스마트폰을 이용하여 증강현실 서비스를 통해 개인 정보를 획득, 구역 설명, 3D 장면 지도 등을 획득할 수 있어 사용자로 하여금 신속히 낯선 환경 속에 적응할 수 있게 할 수 있다.
일반적인 명함(910, 912, 920, 922))은 도 9에 도시된 바와 같이, 사람들의 이름, 직위, 등 간단한 정보가 적혀있을 뿐 상세한 정보를 표현하기에는 부족하다. 이에 비해, 제1 실시형태에 따른 증강현실 서비스 제공장치(600)는 스마트폰을 통하여 간단하게 정보를 인식할 수 있고, 사용자는 스마트폰의 카메라로 특정 표시를 인식하여, 3D 디지털 명함에 대한 가상 모델을 특정 표시 위에 투영하여 가상물체와 현실세계가 융합한 후의 장면을 스마트폰을 통하여 출력할 수 있다. 이러한, 증강현실 서비스 제공장치(600)는 도 10의 (a)에 도시된 바와 같이, 복수 개의 특정 표시(1010, 1020) 상에 3D 디지털 명함에 대한 가상 모델(1012, 1022)을 투영할 수 있다.
낯선 도시에서 자기가 위치하고 있는 장소를 알기에는 많은 수단이 있으며 지도 혹은 휴대폰 네비게이션 등을 통해 쉽게 실현 할 수 있다. 하지만, 구조가 복잡한 빌딩에서 특정된 방이나 지점을 찾기에는 어렵다.
제2 실시형태에 따른 증강현실 서비스 제공장치(600)는 스마트폰을 캐리어로 하여 사용자로 하여금 더욱 편리하게 원하는 정보를 제공할 수 있다. 예컨대, 증강현실 서비스 제공장치(600)는 GPS를 사용하지 않고 특정 표시(예컨대, 문패 등)를 인식하여 사용자의 스마트폰을 이용하여 현재 위치에 대한 3D 장면 지도를 제공할 수 있고, 현재 위치하고 있는 장소는 다른 색깔 또는 형태로 표시하여 구분하여 제공할 수도 있다. 예컨대, 도 11의 (a)는 기 설정된 특정 표시인 학과 문패(1110)를 나타내고, 도 11의 (b)는 증강현실 서비스 제공장치(600)가 학과 문패(1110)를 인식하여 투영한 학과 3D 장면 지도(1120)를 나타낸다.
또한, 증강현실 서비스 제공장치(600)는 도 12의 (a) 및 (b)에 도시된 바와 같이, 특정 안내 표시(1210)가 인식되는 경우, 강의 안내, 강사 정보 등의 가상 안내 정보(1212)를 특정 안내 표시(1210) 상에 투영하여 증강현실 서비스를 제공할 수 있고, 동시에 특정 문패 표시(1220)가 인식되는 경우, 현재 위치, 해당 층 구조정보 등의 3D 안내 지도(1222)를 특정 문패 표시(1220) 상에 투영할 수 있다.
이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
110: 영상수집 서브모듈 120: 영상 전처리 서브모듈
130: 심도검사 서브모듈 140: 그래픽 제작 서브모듈
150: 실제상황 융합 서브모듈 160: 사용자 상호작용 서브모듈
170: 멀티미디어 제어 서브모듈 180: 디스플레이 모듈

Claims (15)

  1. 영상 입력장치로부터 촬영된 비디오 영상을 획득하는 영상수집 서브모듈;
    상기 비디오 영상을 기초로 영상 전처리를 수행하여 기 설치된 특정 표시를 식별하는 영상 전처리 서브모듈;
    상기 식별된 특정 표시에 근거하여 상기 특정 표시에 대응되어 기 설정된 구역설명 또는 지도의 3D 모델정보를 생성하고, 생성된 상기 3D 모델정보를 상기 특정 표시 상에 렌더링(Rendering)하는 그래픽 제작 서브모듈;
    상기 특정 표시 및 상기 3D 모델정보 간의 심도정보를 측정하는 심도검사 서브모듈;
    상기 심도정보를 상기 3D 모델정보와 비교한 비교값에 근거하여 상기 비디오 영상 내에서 상기 3D 모델정보의 출력위치를 제어하고, 조명, 음영 및 전경칼라 증강 중 적어도 하나 이상의 시각정보를 추가로 융합하여 상기 특정 표시 상에 상기 3D 모델정보가 렌더링되도록 하는 실제상황 융합 서브모듈; 및
    상기 특정 표시 및 상기 3D 모델정보를 출력하는 디스플레이 모듈을 포함하며,
    상기 영상 전처리 서브모듈은 영상 분할, 에지 검출 및 윤곽선 추출 중 적어도 하나 이상의 영상 처리를 수행한 데이터를 기초로 매칭 연산을 수행하여 상기 특정 표시를 식별하는 표시식별 서브모듈; 및
    상기 영상 입력장치의 실제환경에 대한 상대 위치, 방향각 및 이미지 촬영의 내부함수 중 적어도 하나 이상의 정보를 기초로 생성된 가상정보를 이용하여 상기 3D 모델정보의 출력위치를 확정하는 등록측정 서브모듈을 포함하는 영상 전처리 서브모듈을 포함하며,
    상기 매칭 연산을 수행하기 위하여 아래의 수식
    Figure 112015024820714-pat00036

    (여기서, d:근사도, M:입력 영상, T:알고 있는 영상)
    Figure 112015024820714-pat00037

    (여기서, θ: 협각, M:입력 영상, T:알고 있는 영상)
    을 이용하는 것을 특징으로 하는 증강현실 서비스 제공장치.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 표시식별 서브모듈은,
    상기 영상 처리를 수행한 데이터를 기초로 폐쇄된 블랙 직사각형 테두리가 존재하는지 확인한 후 상기 테두리 내의 구조와 매칭하여 상기 비디오 영상 내의 모든 특정 표시의 위치를 기록하고, 각각의 상기 특정 표시에 대한 에지 픽셀 좌표를 검출하여 상기 특정 표시의 에지(Edge)에 대한 직선 방정식을 계산하여 상기 특정 표시를 식별하는 것을 특징으로 하는 증강현실 서비스 제공장치.
  4. 제 1 항에 있어서,
    상기 표시식별 서브모듈은,
    기 저장된 템플릿(기준 특정 표시)을 매칭 연산하여 상기 특정 표시를 식별하는 것을 특징으로 하는 증강현실 서비스 제공장치.
  5. 제 4 항에 있어서,
    상기 표시식별 서브모듈은,
    상기 기 저장된 템플릿을 상기 비디오 영상에 매칭하여 근사도값이 기 설정된 임계값 이하인 영역을 상기 기 저장된 템플릿에 대응하는 상기 특정 표시인 것으로 식별하는 것을 특징으로 하는 증강현실 서비스 제공장치.
  6. 제 1 항에 있어서,
    상기 등록측정 서브모듈은,
    공용 원근 투영 카메라 모델 또는 방사형 왜곡 기반 카메라 모델을 이용하여 카메라 보정을 수행하고, 상기 카메라 보정을 기초로 상기 특정 표시 및 상기 3D 모델정보의 위치 및 형태를 추출하여 상기 출력위치를 확정하는 것을 특징으로 하는 증강현실 서비스 제공장치.
  7. 삭제
  8. 제 1 항에 있어서,
    상기 심도검사 서브모듈은,
    광학적 외피(Photo Hull)를 기반으로 상기 3D 모델정보에 포함된 공간 점의 각각의 심도를 산출하여 상기 3D 모델정보에 대한 상기 심도정보를 측정하는 것을 특징으로 하는 증강현실 서비스 제공장치.
  9. 제 1 항에 있어서,
    상기 영상수집 서브모듈은,
    상기 비디오 영상을 실시간을 획득할 수 있는 영상 정밀도 및 영상 획득속도를 지원하고, 복수 개의 멀티미디어 형식을 지원하는 다이렉트쇼(DirectShow) 모듈로 구현되는 것을 특징으로 하는 증강현실 서비스 제공장치.
  10. 제 1 항에 있어서,
    상기 심도정보에 근거하여 사용자의 손이 존재하는 경우 상기 사용자의 손과(보정 3) 상기 3D 모델정보가 서로 상호작용할 수 있도록 제어하는 사용자 상호작용 서브모듈; 및
    상기 특정 표시 상에 상기 3D 모델정보를 렌더링하는데 있어서, 오디오 파일을 추가로 렌더링되도록 제어하는 멀티미디어 제어 서브모듈
    을 더 포함하는 것을 특징으로 하는 증강현실 서비스 제공장치.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
KR1020130160689A 2013-12-20 2013-12-20 증강현실 서비스를 제공하는 방법 및 장치 KR101553273B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130160689A KR101553273B1 (ko) 2013-12-20 2013-12-20 증강현실 서비스를 제공하는 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130160689A KR101553273B1 (ko) 2013-12-20 2013-12-20 증강현실 서비스를 제공하는 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20150072954A KR20150072954A (ko) 2015-06-30
KR101553273B1 true KR101553273B1 (ko) 2015-09-15

Family

ID=53518786

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130160689A KR101553273B1 (ko) 2013-12-20 2013-12-20 증강현실 서비스를 제공하는 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101553273B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11605206B2 (en) 2020-12-11 2023-03-14 Samsung Electronics Co., Ltd. Method and apparatus with human body estimation

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2017314940B2 (en) 2016-08-26 2021-09-23 Magic Leap, Inc. Continuous time warp and binocular time warp for virtual and augmented reality display systems and methods
KR101890166B1 (ko) * 2016-11-28 2018-08-21 숭실대학교산학협력단 감시영상의 실시간 와핑을 이용한 3차원 감시 시스템 및 방법
KR102005526B1 (ko) * 2017-10-19 2019-07-30 에스케이텔레콤 주식회사 증강 현실 표시 방법 및 장치
KR101909461B1 (ko) * 2017-12-15 2018-10-22 코디소프트 주식회사 증강현실이 적용된 교육 서비스 제공방법
CN111640166B (zh) * 2020-06-08 2024-03-26 上海商汤智能科技有限公司 一种ar合影方法、装置、计算机设备及存储介质
CN112017303B (zh) * 2020-09-04 2024-01-19 中筑科技股份有限公司 一种基于增强现实技术的设备维修辅助方法
KR20230007611A (ko) * 2021-07-05 2023-01-13 삼성전자주식회사 시력 측정 및 시력 교정을 제공하는 증강 현실 장치 및 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012058968A (ja) * 2010-09-08 2012-03-22 Namco Bandai Games Inc プログラム、情報記憶媒体及び画像生成システム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012058968A (ja) * 2010-09-08 2012-03-22 Namco Bandai Games Inc プログラム、情報記憶媒体及び画像生成システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11605206B2 (en) 2020-12-11 2023-03-14 Samsung Electronics Co., Ltd. Method and apparatus with human body estimation

Also Published As

Publication number Publication date
KR20150072954A (ko) 2015-06-30

Similar Documents

Publication Publication Date Title
KR101553273B1 (ko) 증강현실 서비스를 제공하는 방법 및 장치
CN108510592B (zh) 真实物理模型的增强现实展示方法
EP3690815B1 (en) Method, medium and apparatus for automatically labeling target object within image
US10482659B2 (en) System and method for superimposing spatially correlated data over live real-world images
US20140285523A1 (en) Method for Integrating Virtual Object into Vehicle Displays
Starck et al. The multiple-camera 3-d production studio
EP3533218B1 (en) Simulating depth of field
WO2022088881A1 (en) Method, apparatus and system for generating a three-dimensional model of a scene
Meerits et al. Real-time diminished reality for dynamic scenes
CN110084797B (zh) 平面检测方法、装置、电子设备和存储介质
CN109741431B (zh) 一种二三维一体化电子地图框架
US20230035477A1 (en) Method and device for depth map completion
CN110084873B (zh) 用于渲染三维模型的方法和装置
KR101641672B1 (ko) 휴대단말기를 이용한 건축 모형 실행의 증강 현실 시스템
Selvam et al. Augmented reality for information retrieval aimed at museum exhibitions using smartphones
Soares et al. Designing a highly immersive interactive environment: The virtual mine
WO2023088127A1 (zh) 室内导航方法、服务器、装置和终端
EP2779102A1 (en) Method of generating an animated video sequence
CN109863746A (zh) 交互式数据可视化环境
KR20100097297A (ko) 마커를 사용하지 않는 증강공간 제공 장치
Gomes Jr et al. Semi-automatic methodology for augmented panorama development in industrial outdoor environments
Kim et al. 3-d virtual studio for natural inter-“acting”
CN114089836B (zh) 标注方法、终端、服务器和存储介质
EP4075789A1 (en) Imaging device, imaging method, and program
US20170064296A1 (en) Device and method of creating an augmented interactive virtual reality system

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180903

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190822

Year of fee payment: 5