KR102152761B1 - Html5 웹 환경 기반 vr 및 ar 인터랙션 콘텐츠 서비스 제공 시스템 - Google Patents

Html5 웹 환경 기반 vr 및 ar 인터랙션 콘텐츠 서비스 제공 시스템 Download PDF

Info

Publication number
KR102152761B1
KR102152761B1 KR1020190179857A KR20190179857A KR102152761B1 KR 102152761 B1 KR102152761 B1 KR 102152761B1 KR 1020190179857 A KR1020190179857 A KR 1020190179857A KR 20190179857 A KR20190179857 A KR 20190179857A KR 102152761 B1 KR102152761 B1 KR 102152761B1
Authority
KR
South Korea
Prior art keywords
content
user terminal
interaction
user
camera
Prior art date
Application number
KR1020190179857A
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 KR1020190179857A priority Critical patent/KR102152761B1/ko
Application granted granted Critical
Publication of KR102152761B1 publication Critical patent/KR102152761B1/ko

Links

Images

Classifications

    • 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
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • H04L67/38
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/194Transmission of image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8545Content authoring for generating interactive applications

Abstract

HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 시스템이 제공되며, AR 콘텐츠 또는 VR 콘텐츠를 웹 페이지의 엑세스로 출력하고, 사용자 인터페이스의 입력에 대응하는 인터랙션 콘텐츠를 출력하는 사용자 단말, 및 사용자 단말에서 인터랙션 콘텐츠 서비스를 제공하는 웹 페이지로 접속하는 경우, 사용자 단말의 엑세스를 감지하는 감지부, 사용자 단말에서 접속된 웹 페이지에서 AR 콘텐츠를 출력되도록 제어하는 제어부, 사용자 단말의 적어도 하나의 사용자 인터페이스에 입력이 존재하는 경우, 입력에 대응하도록 AR 콘텐츠를 변형하여 인터랙션 콘텐츠를 사용자 단말에서 출력되도록 하는 출력부를 포함하는 인터랙션 콘텐츠 서비스 제공 서버를 포함한다.

Description

HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 시스템{SYSTEM FOR PROVIDING HTML5 WEB ENVIROMENT BASED VIRTUAL REALITY AND AUGMENTED REALITY INTERACTION CONTENTS SERVICE}
본 발명은 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 시스템에 관한 것으로, 애플리케이션이나 프로그램의 다운로드 및 설치없이도 웹 페이지로의 접속만으로도 VR 및 AR 인터랙션 콘텐츠를 구동할 수 있는 플랫폼을 제공한다.
가상현실(Virtual Reality)은 컴퓨터로 만들어진 가상의 환경에서 마치 실제상황인 것처럼 사용자에게 경험을 제공하는 기술이며, 증강현실(Augmented Reality)은 사용자가 현실 세계를 보는 시야 위에 가상 세계를 실시간으로 결합하는 기술로써, 가상현실은 완전히 컴퓨터로 만든 환경 속에 사용자를 넣지만, 증강현실은 실제 환경에 정보를 직접 등록하는 게 목적이다. 가상·증강현실을 구성하는 세부기술은 디스플레이 기술, 인터랙션 기술, 트래킹 기술, 이미지 프로세싱 기술, 저작 기술 등이 있으며, 세부기술의 발전과 더불어 착용형 하드웨어 제품과 이를 활용한 다양한 분야의 콘텐츠가 출시되고 있다. 또한 착용형 방식이 아닌 스마트폰과 태블릿 등을 활용한 핸드헬드 방식의 AR 항공기/자동차 정비 플랫폼도 출시되고 있으며, 다양한 가상·증강현실 제품이 출시됨에 따라 산업의 시장 규모도 점점 커지고 있다.
이때, 증강현실 콘텐츠를 제공할 때 인터랙션이 가능하도록 하는 기술이 연구 및 개발되었는데, 이와 관련하여, 선행기술인 한국공개특허 제2018-0058895호(2018년06월04일 공개) 및 한국등록특허 제10-0834904호(2008년06월03일 공고)에는, 사용자와 가상 객체의 인터랙션에 따라 발생하는 이벤트를 인식하고, 가상 객체의 정보를 스마트 기기로 전송하며, 스마트 기기가 가상 객체에 대한 사용자 입력을 가상 객체에 적용하여 변형 가상 객체를 생성하고, 생성된 변형 가상 객체의 정보를 증강현실 구현장치로 전송하고, 변형 가상 객체의 정보를 바탕으로, 기 저장된 가상 객체를 랜더링하여, 증강현실을 구현하는 구성과, 학습자가 마커를 이용하여 가상 콘텐츠를 조작할 수 있도록 마커 기반의 사용자 인터랙션을 지원하는 구성이 각각 개시되어 있다.
다만, 상술한 구성을 이용하여 가상현실 콘텐츠와 인터랙션을 제공할 수 있다고 할지라도, 사용자 경험 품질은 그리 높지 않다. 그 이유는, 각각의 게임이나 콘텐츠를 구동하기 위해서는 각각의 애플리케이션이나 프로그램을 다운로드받아야 하는데, 사용자의 컴퓨팅 자원이나 메모리가 한정된 경우에는 초기 다운로드되는 용량이 큰 것도 부담스러운데, 이에 더하여 추가적으로 지속되는 업데이트로 메모리나 저장장치의 용량을 계속하여 줄여나가는 경우, 사용자는 단순히 흥미 위주의 필수적이지 않은 애플리케이션을 삭제하게 된다. 이에, 사용자의 컴퓨팅 자원에 종속되지 않는 AR 및 VR 인터랙션 콘텐츠의 연구 및 개발이 요구된다.
본 발명의 일 실시예는, AR 및 VR 콘텐츠를 제작하여 업로드하되, 애플리케이션이나 프로그램의 다운로드없이 웹 페이지로의 엑세스 만으로도 구동가능하도록 HTML5 컨버팅(Converting)을 실시함으로써, 사용자의 컴퓨팅 자원에 종속되지 않는 인터랙션 콘텐츠를 제공할 수 있고, VR 인터랙션 콘텐츠를 사용자 단말로 스트리밍하되, 사용자 단말과 연동된 HMD(Head Mounted Display)의 아이트래킹 및 콘트롤러로부터 입력되는 입력 데이터에 기반하여 VR 인터랙션 콘텐츠를 변형시키고, AR 마커를 통하여 AR 콘텐츠를 출력하되 사용자 단말에서 입력되는 적어도 하나의 입력 데이터에 기반하여 AR 인터랙션 콘텐츠를 변형시킬 수 있는, HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 방법을 제공할 수 있다. 다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 실시예는, AR 콘텐츠 또는 VR 콘텐츠를 웹 페이지의 엑세스로 출력하고, 사용자 인터페이스의 입력에 대응하는 인터랙션 콘텐츠를 출력하는 사용자 단말, 및 사용자 단말에서 인터랙션 콘텐츠 서비스를 제공하는 웹 페이지로 접속하는 경우, 사용자 단말의 엑세스를 감지하는 감지부, 사용자 단말에서 접속된 웹 페이지에서 AR 콘텐츠를 출력되도록 제어하는 제어부, 사용자 단말의 적어도 하나의 사용자 인터페이스에 입력이 존재하는 경우, 입력에 대응하도록 AR 콘텐츠를 변형하여 인터랙션 콘텐츠를 사용자 단말에서 출력되도록 하는 출력부를 포함하는 인터랙션 콘텐츠 서비스 제공 서버를 포함한다.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, AR 및 VR 콘텐츠를 제작하여 업로드하되, 애플리케이션이나 프로그램의 다운로드없이 웹 페이지로의 엑세스 만으로도 구동가능하도록 HTML5 컨버팅(Converting)을 실시함으로써, 사용자의 컴퓨팅 자원에 종속되지 않는 인터랙션 콘텐츠를 제공할 수 있고, VR 인터랙션 콘텐츠를 사용자 단말로 스트리밍하되, 사용자 단말과 연동된 HMD(Head Mounted Display)의 아이트래킹 및 콘트롤러로부터 입력되는 입력 데이터에 기반하여 VR 인터랙션 콘텐츠를 변형시키고, AR 마커를 통하여 AR 콘텐츠를 출력하되 사용자 단말에서 입력되는 적어도 하나의 입력 데이터에 기반하여 AR 인터랙션 콘텐츠를 변형시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 시스템을 설명하기 위한 도면이다.
도 2는 도 1의 시스템에 포함된 인터랙션 콘텐츠 서비스 제공 서버를 설명하기 위한 블록 구성도이다.
도 3 및 도 4는 본 발명의 일 실시예에 따른 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스가 구현된 일 실시예를 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 방법을 설명하기 위한 동작 흐름도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미하며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
명세서 전체에서 사용되는 정도의 용어 "약", "실질적으로" 등은 언급된 의미에 고유한 제조 및 물질 허용오차가 제시될 때 그 수치에서 또는 그 수치에 근접한 의미로 사용되고, 본 발명의 이해를 돕기 위해 정확하거나 절대적인 수치가 언급된 개시 내용을 비양심적인 침해자가 부당하게 이용하는 것을 방지하기 위해 사용된다. 본 발명의 명세서 전체에서 사용되는 정도의 용어 "~(하는) 단계" 또는 "~의 단계"는 "~ 를 위한 단계"를 의미하지 않는다.
본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1개의 유닛이 2개 이상의 하드웨어를 이용하여 실현되어도 되고, 2개 이상의 유닛이 1개의 하드웨어에 의해 실현되어도 된다.
본 명세서에 있어서 단말, 장치 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말, 장치 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말, 장치 또는 디바이스에서 수행될 수도 있다.
본 명세서에서 있어서, 단말과 매핑(Mapping) 또는 매칭(Matching)으로 기술된 동작이나 기능 중 일부는, 단말의 식별 정보(Identifying Data)인 단말기의 고유번호나 개인의 식별정보를 매핑 또는 매칭한다는 의미로 해석될 수 있다.
이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 시스템을 설명하기 위한 도면이다. 도 1을 참조하면, HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 시스템(1)은, 적어도 하나의 사용자 단말(100), 인터랙션 콘텐츠 서비스 제공 서버(300), 적어도 하나의 관리자 단말(400)을 포함할 수 있다. 다만, 이러한 도 1의 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 시스템(1)은, 본 발명의 일 실시예에 불과하므로, 도 1을 통하여 본 발명이 한정 해석되는 것은 아니다.
이때, 도 1의 각 구성요소들은 일반적으로 네트워크(network, 200)를 통해 연결된다. 예를 들어, 도 1에 도시된 바와 같이, 적어도 하나의 사용자 단말(100)은 네트워크(200)를 통하여 인터랙션 콘텐츠 서비스 제공 서버(300)와 연결될 수 있다. 그리고, 인터랙션 콘텐츠 서비스 제공 서버(300)는, 네트워크(200)를 통하여 적어도 하나의 사용자 단말(100), 적어도 하나의 관리자 단말(400)과 연결될 수 있다. 또한, 적어도 하나의 관리자 단말(400)은, 네트워크(200)를 통하여 인터랙션 콘텐츠 서비스 제공 서버(300)와 연결될 수 있다.
여기서, 네트워크는, 복수의 단말 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크의 일 예에는 RF, 3GPP(3rd Generation Partnership Project) 네트워크, LTE(Long Term Evolution) 네트워크, 5GPP(5th Generation Partnership Project) 네트워크, WIMAX(World Interoperability for Microwave Access) 네트워크, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 블루투스(Bluetooth) 네트워크, NFC 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함되나 이에 한정되지는 않는다.
하기에서, 적어도 하나의 라는 용어는 단수 및 복수를 포함하는 용어로 정의되고, 적어도 하나의 라는 용어가 존재하지 않더라도 각 구성요소가 단수 또는 복수로 존재할 수 있고, 단수 또는 복수를 의미할 수 있음은 자명하다 할 것이다. 또한, 각 구성요소가 단수 또는 복수로 구비되는 것은, 실시예에 따라 변경가능하다 할 것이다.
적어도 하나의 사용자 단말(100)은, HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 관련 웹 페이지, 앱 페이지, 프로그램 또는 애플리케이션을 이용하여 AR 콘텐츠 또는 VR 콘텐츠를 출력하는 단말일 수 있다. 이때, 적어도 하나의 사용자 단말(100)은 HMD 또는 컨트롤러(미도시)와 같은 주변기기와 연동되는 단말일 수 있다. 또한, 적어도 하나의 사용자 단말(100)은, 인터랙션 콘텐츠 서비스 제공 서버(300)의 웹 페이지의 접속만으로도 다운로드 및 설치없이 AR 콘텐츠 또는 VR 콘텐츠를 출력 또는 스트리밍받고, 인터랙션 이벤트를 출력하여 인터랙션 콘텐츠 서비스 제공 서버(300)로 전송하는 단말일 수 있다.
여기서, 적어도 하나의 사용자 단말(100)은, 네트워크를 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 네비게이션, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다. 이때, 적어도 하나의 사용자 단말(100)은, 네트워크를 통해 원격지의 서버나 단말에 접속할 수 있는 단말로 구현될 수 있다. 적어도 하나의 사용자 단말(100)은, 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, 네비게이션, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(smartphone), 스마트 패드(smartpad), 타블렛 PC(Tablet PC) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다.
인터랙션 콘텐츠 서비스 제공 서버(300)는, HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 웹 페이지, 앱 페이지, 프로그램 또는 애플리케이션을 제공하는 서버일 수 있다. 그리고, 인터랙션 콘텐츠 서비스 제공 서버(300)는, 적어도 하나의 의뢰 단말(미도시)로부터 AR 콘텐츠 또는 VR 콘텐츠 제작 의뢰를 받는 경우, 적어도 하나의 관리자 단말(400)로 전송하는 서버일 수 있다. 또한, 인터랙션 콘텐츠 서비스 제공 서버(300)는, 적어도 하나의 관리자 단말(400)에서 제작된 AR 콘텐츠 또는 VR 콘텐츠를 업로드하는 경우, HTML5 컨버팅을 수행하여 업로드하는 서버일 수 있다. 또한, 인터랙션 콘텐츠 서비스 제공 서버(300)는, 사용자 단말(100)에서 웹 페이지로의 접속이 존재하는 경우, AR 콘텐츠 또는 VR 콘텐츠가 사용자 단말(100) 또는 사용자 단말(100)과 연동된 주변기기로 출력되도록 하는 서버일 수 있다. 또한, 인터랙션 콘텐츠 서비스 제공 서버(300)는, 사용자 단말(100)에서 적어도 하나의 사용자 인터페이스로 입력을 제공하는 경우, 제공된 입력에 대응하는 인터랙션을 사용자 단말(100)로 제공하는 서버일 수 있다.
여기서, 인터랙션 콘텐츠 서비스 제공 서버(300)는, 네트워크를 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 네비게이션, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다.
적어도 하나의 관리자 단말(400)은, HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 관련 웹 페이지, 앱 페이지, 프로그램 또는 애플리케이션을 이용하는 직원 또는 관리자의 단말일 수 있다. 이때, 적어도 하나의 관리자 단말(400)은, 제작된 AR 콘텐츠 또는 VR 콘텐츠를 인터랙션 콘텐츠 서비스 제공 서버(300)로 업로드하고, 오류가 발생하는 경우 발생된 오류를 수정하거나 버그를 제거하는 단말일 수 있다.
여기서, 적어도 하나의 관리자 단말(400)은, 네트워크를 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 네비게이션, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다. 이때, 적어도 하나의 관리자 단말(400)은, 네트워크를 통해 원격지의 서버나 단말에 접속할 수 있는 단말로 구현될 수 있다. 적어도 하나의 관리자 단말(400)은, 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, 네비게이션, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(smartphone), 스마트 패드(smartpad), 타블렛 PC(Tablet PC) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다.
도 2는 도 1의 시스템에 포함된 인터랙션 콘텐츠 서비스 제공 서버를 설명하기 위한 블록 구성도이고, 도 3 및 도 4는 본 발명의 일 실시예에 따른 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스가 구현된 일 실시예를 설명하기 위한 도면이다.
도 2를 참조하면, 인터랙션 콘텐츠 서비스 제공 서버(300)는, 감지부(310), 제어부(320), 출력부(330), VR 제공부(340), 변환부(350), 및 데이터베이스화부(360)를 포함할 수 있다.
본 발명의 일 실시예에 따른 인터랙션 콘텐츠 서비스 제공 서버(300)나 연동되어 동작하는 다른 서버(미도시)가 적어도 하나의 사용자 단말(100), 및 적어도 하나의 관리자 단말(400)로 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 애플리케이션, 프로그램, 앱 페이지, 웹 페이지 등을 전송하는 경우, 적어도 하나의 사용자 단말(100), 및 적어도 하나의 관리자 단말(400)은, HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 애플리케이션, 프로그램, 앱 페이지, 웹 페이지 등을 설치하거나 열 수 있다. 또한, 웹 브라우저에서 실행되는 스크립트를 이용하여 서비스 프로그램이 적어도 하나의 사용자 단말(100), 및 적어도 하나의 관리자 단말(400)에서 구동될 수도 있다. 여기서, 웹 브라우저는 웹(WWW: world wide web) 서비스를 이용할 수 있게 하는 프로그램으로 HTML(hyper text mark-up language)로 서술된 하이퍼 텍스트를 받아서 보여주는 프로그램을 의미하며, 예를 들어 넷스케이프(Netscape), 익스플로러(Explorer), 크롬(chrome) 등을 포함한다. 또한, 애플리케이션은 단말 상의 응용 프로그램(application)을 의미하며, 예를 들어, 모바일 단말(스마트폰)에서 실행되는 앱(app)을 포함한다.
도 2를 참조하면, 감지부(310)는, 사용자 단말(100)에서 인터랙션 콘텐츠 서비스를 제공하는 웹 페이지로 접속하는 경우, 사용자 단말(100)의 엑세스를 감지할 수 있다. 이때, 웹 페이지는 HTML5 기반의 웹 페이지일 수 있다. 여기서, HTML5는, 웹문서 표준인 HTML(Hyoer Text Markup Language)의 최신 규격으로 문서 작성 중심에서 그림, 동영상, 음악 등을 실행하는 기능이 포함되었다. HTML5는 플러그인 기반의 액티브 엑스(Active-X), Flash 와 같이 프로그램을 별도로 설치할 필요가 없어지게 되었으며, 이로 인해 발생한 문제는 대부분 해결할 수 있게 되었다. 이때, 종래의 HTML 표준과 HTML5의 가장 큰 차이점은 시맨틱 마크업을 지원하는 점과 추가적인 API를 제공하는 점이다. 시맨틱 마크업은 웹 문서를 의미적으로 구조화 할 수 있는 새로운 요소이다. 예를 들어, 문서의 내용을 머리말, 본문, 꼬리말로 구분할 수 있도록 <head>, <section>, <footer> 라는 요소로 문서를 작성하게 되면, 문서의 내용을 구조적으로 명확히 이해할 수 있게 된다. 또한 HTML5에서는 다양한 API를 제공한다. HTML5에서 제공하는 API는 2차원 그래픽을 지원하거나, 디바이스의 지리적 위치를 확인할 수 있는 기능을 지원하는 등 웹 애플리케이션에 다양한 기능을 추가할 수 있도록 해준다
또한, HTML5는, 웹 페이지를 만들 때 사용이 되는 마크업 언어로 하이퍼링크와 텍스트로 표시하던 HTML을 멀티미디어 등 다양한 애플리케이션까지 표현하고 제공할 수 있다. HTML5는 웹 문서 구조 설계를 위한 마크업 언어인 HTML, 디자인 표현을 위한 CSS, 인터랙티브한 동작을 표현하기 위한 자바스크립트(JavaScript) 등을 포함하여 구현될 수 있고, 기존의 HTML의 태그에 새로운 태그들이 더 추가될 수 있으며, 콘텐츠들을 담기 위한 구조로 개선되어 플랫폼의 역할까지도 수행할 수 있다.
또, HTML5는 모바일 웹을 위한 표준은 아니지만, 앞서 설명한 여러 기능 중에서 모바일 웹의 구현에 필요한 기능들을 다수 제공해 주고 있다. 2차원 그래픽, 오디오, 다양한 웹 폼 등은 모바일 웹의 UI(User Interface)를 풍부하고 다양하게 해줄 수 있다. 즉, 모바일 웹 환경에서도 멀티미디어 정보를 제공하거나 사용자의 동적인 상호작용을 지원할 수 있게 된다. 모바일 웹 환경에서는 모바일 환경의 특성상 대용량의 데이터를 전송하는데 한계를 가지고, 인터넷이 연결되지 않는 환경이 자주 발생하지만, 이러한 제약조건을 극복할 수 있는 것이 웹 클라이언트의 캐시를 이용하여 오프라인 웹 애플리케이션을 구현하거나 로컬에 DB를 저장하여 SQL문으로 질의할 수 있는 기능이며, 이 외의 기능을 정리하면 이하 표 1과 같다.
주요기능 설명
웹폼(Web Form) 사용자 입력형태의 확장 제공(전자메일, URL, 숫자, 범위, 달력 등의 추가 웹폼 제공)
캔버스(Canvas) 2차원 그래픽을 그리기 위한 API
SVG(Scalable Vector Graphic) XML 기반의 2차원 벡터 그래픽 표현 언어
Video/Audio 플러그인 없이 오디오와 비디오를 재생하기 위한 엘리먼트
Geolocation 디바이스의 지리적 위치 정보를 제공하는 API
오프라인 웹 애플리케이션
(Offline Web Application)
인터넷에 연결되지 않은 상태에서 웹 애플리케이션이 구동하도록 하는 기술
웹 SQL 데이터베이스
(Web SQL Database)
표준 SQL를 사용할 수 있는 SQL
로컬저장소(Local Storage) 웹 클라이언트에서 데이터를 저장하는 기능
웹 소캣(Web Socket) 웹 클라이언트가 서버측과 직접적인 양방향 통신을 할 수 있는 API
웹 워커(Web Worker) 다중 작업이 가능한 쓰레드 기능을 지원하는 API
상술한 HTML5 기능을 고려하여 본 발명의 일 실시예에서는 두 가지의 모델로 본 발명의 서비스를 구현할 수 있으나, 이하 나열된 것들로 한정되지는 않는다. 첫 번째 모델은, 웹 애플리케이션처럼 서버쪽에 데이터를 저장하고 클라이언트에서는 실시간으로 정보를 전송받는 방식이다. 두 번째 모델은 오프라인 웹 애플리케이션으로 구동하기 위해서 클라이언트의 캐시와 로컬 데이터베이스를 이용하고 필요하면 서버 쪽에서 정보를 전송받는 방식이다. 이 외에도, 클라우드 서버를 이용하여 SaaS, IaaS, PaaS 등을 이용할 수도 있다.이때, 오프라인 서비스나 인프라를 구축하기 위한 비용이나 인력이 부족한 경우에는, 컴퓨터 가상화 및 클라우드를 이용하여 부족한 인프라를 보충해줄 수도 있다. 첫 번째는, Iaas(Infrastructure as a Service)로 서버 운영에 필요한 서버자원, IP, Network, Storage, 전력 등 여러 인프라 자원을 탄력적이고 빠르게 제공할 수 있다. Iaas는 자원을 쉽게 추가하거나 제거할 수 있으며 운영체제를 제공하므로 친숙한 환경이 주어질 수 있다. 두 번째는, Paas(Platform as a Service)로 서비스를 제공할 수 있는데, 안정적인 환경과 그 환경을 이용하는 응용 프로그램을 개발할 수 있는 API까지 제공하는 서비스이다. Paas는 간편하게 원시코드를 빌드 및 배포할 수 있으며 사용량에 따라 scale out을 하기 용이하다. 세 번째는, Saas(Software as a Service)는 클라우드 환경에서 동작하는 응용프로그램을 사용자에게 제공 하는 서비스이다. Saas는 인터넷 어디에서든 쉽게 이용할 수 있고, 웹브라우저만 있으면 어디서든 접근할 수 있다. 이때, 인터랙션 콘텐츠의 요구사항에 따라 Baas(Backend as a Service)를 더 추가할 수도 있다. Baas는 모바일 애플리케이션에 특화된 서비스로 모바일 애플리케이션에서 처리하기 힘든 회원관리 및 푸시, 파일 처리 등 서버 측 애플리케이션을 제공할 수 있다. Paas의 플랫폼을 이용할 수 있고 제공되는 백앤드 모듈을 REST API나 라이브러리 CALL을 통해 바로 사용할 수 있도록 구성될 수도 있다. 상술한 애플리케이션은, 다운로드나 설치를 받는 애플리케이션이 아니라, 클라우드 서버 또는 가상 서버나 HTML5 기반 웹 브라우저를 통하여 제공되는 애플리케이션으로 정의한다.
제어부(320)는, 사용자 단말(100)에서 접속된 웹 페이지에서 AR 콘텐츠를 출력되도록 제어할 수 있다. 이에 따라, 사용자 단말(100)은, AR 콘텐츠 또는 VR 콘텐츠를 웹 페이지의 엑세스로 출력할 수 있고, 애플리케이션이나 프로그램을 설치하지 않을 수 있다. 또한, 제어부(320)는, 사용자 단말(100)에서 기 설정된 AR 마커가 인식되는 경우, AR 마커의 위치에 AR 콘텐츠가 출력되도록 제어할 수 있다. 이때, AR 마커는 의뢰 단말이 기업인 경우, 기업의 로고일 수 있으나 이에 한정되지는 않는다. 또, 화면의 터치로 인터랙션이 가능하도록 구성될 수도 있다.
출력부(330)는, 사용자 단말(100)의 적어도 하나의 사용자 인터페이스에 입력이 존재하는 경우, 입력에 대응하도록 AR 콘텐츠를 변형하여 인터랙션 콘텐츠를 사용자 단말(100)에서 출력되도록 할 수 있다. 이에 따라, 사용자 단말(100)은, 사용자 인터페이스의 입력에 대응하는 인터랙션 콘텐츠를 출력할 수 있다. 이때, 출력부(330)는, 사용자 단말(100)의 터치 디스플레이에 입력되는 터치 이벤트, 사용자 단말(100)의 카메라를 통하여 인식된 제스처 데이터, 및 사용자 단말(100)에 내장된 적어도 하나의 센서를 통하여 감지된 센서 데이터 중 어느 하나 또는 적어도 하나의 조합에 의하여 AR 콘텐츠를 변형할 수 있다.
또, 증강현실에 사용될 3차원 인터랙션 방법은 다양하기 때문에 어느 하나로 한정하지는 않지만, 본 발명의 일 실시예에 따라, 출력부(330)는, 맨손 인터랙션(barehand interaction) 방법을 이용하기로 한다. 이는 손에 아무것도 착용하지 않고 인터랙션을 하는 것으로 깊이 카메라를 이용하거나 컬러 영상 카메라를 이용할 수 있다. 그리고, 출력부(330)는, 깊이 카메라를 이용한 손의 깊이 데이터를 SVM(Support Vector Machine)을 사용하여 제스쳐를 인식하고 이를 양안식 증강현실에서 사용할 수 있도록 구현될 수 있다.
이를 위하여, 출력부(330)는, AR 마커를 이용하여 특징점을 추출하고, 맵을 생성해야 한다. 이때, 마커 기반의 카메라 위치 추정 방법을 이용하여, 카메라와 AR 마커의 상대적 위치를 추정하고, 카메라의 위치와 자연 특징점 매칭을 통해 3차원 특징점 지도를 생성할 수 있다. 마커 기반 위치 추정 기술은 카메라 영상에 보이는 마커를 탐지하여 카메라와의 상대적인 위치를 추정하는 기술이다. 마커를 이용한 카메라 위치 추정은 3차원 정보가 주어진 마커를 사용하기 때문에 빠르고 안정적이다. 다만, 마커를 증강현실을 위해 현실세계에 배치할 경우 배경과 이질감을 주고, 2차원 자연 특징점 매칭을 통한 카메라 위치 추정에는 마커와 같은 사전 정보가 필요 없지만, Bundler와 같은 무거운 알고리즘이 필요하기 때문에, 본 발명의 일 실시예에 따른 출력부(330)는, 마커 기반 위치 추정과 3차원 특징점의 장점을 결합하여 대규모 장면에 대한 3차원 특징점 지도를 생성할 수 있다. 그리고, 출력부(330)는, 장면에 AR 마커를 배치하고 카메라로 촬영하고 AR 마커 정보를 카메라 위치 추정에 사용할 수 있다. 카메라 위치와 자연 특징점 매칭 정보를 이용하여 삼각측량을 적용해 이용해 자연 특징점의 3차원 위치를 추정하여 특징점 지도를 생성할 수 있다.
출력부(330)는, 카메라 영상에서 AR 마커들을 영상 처리를 통해 추출하고 AR 마커의 정보를 이용해 카메라와의 상대적인 위치를 추정한다. 각각의 AR 마커들은 내부의 비트 코드에 따라 방향과 고유번호가 구분될 수 있다. 마커기반 카메라 위치추정에서 계산된 위치는 각 AR 마커와 카메라 간의 상대적인 위치이므로 전체 장면의 기준에 대한 세계 좌표계로 변환해야 하고, 임의의 카메라 또는 AR 마커를 기준으로 다른 AR 마커와 카메라에 대한 변환을 계산해야 하는데, 카메라 프레임을, 마커 프레임으로 변화하는 행렬을 생성하는 경우, 카메라와 AR 마커의 변환 관계를 표현할 수 있다. 이 행렬은 임의의 카메라나 AR 마커가 기준 프레임(단위행렬)이 되면 나머지 값들이 결정된다.
이렇게 카메라와 AR 마커의 위치가 결정되었으면, 그 다음은 사용자 단말(100)인 스마트 폰 기반으로 3차원 트랙킹을 수행해야 한다. 이때, 출력부(330)는, 특징점 지도와 카메라 영상에서 추출한 특징점들을 매칭하여 카메라의 상대적 위치를 추정할 수 있다. 안정적인 특징점 매칭을 위해서는 강건한 특징점을 검출하고 적절한 디스크립터로 변환해야한다. 강건한 특징점이란, 카메라의 위치가 변하는 동안에도 동일한 위치에서 지속적으로 특징점이 검출 되어야 한다는 것이다. 적절한 디스크립터란 동일한 위치의 특징점에서는 유사한 형태로 계산되고 다른 위치에서는 상이한 형태로 계산되어 서로 구분 가능한 디스크립터이다. SIFT (Scale Invariant Feature Transform)는, 카메라로 촬영된 영상에서 강건한 특징점을 추출하고 적절한 디스크립터로 변환할 수 있다. SIFT는 강건한 특징점을 검출하기 위해 하나의 영상에 여러 단계의 가우시안 필터를 적용하고 지역 극값을 찾는다. 추출한 특징점을 구분 가능한 디스크립터로 변환하기 위해 특징점 주변 패치 영역의 픽셀들의 밝기 변화량을 벡터로 변환하여 표현할 수 있다. SIFT는 강건한 특징점을 검출하지만 영상에 여러 단계의 가우시안 필터를 적용하는 등의 계산량이 많아 초당 약 30 프레임을 처리해야하는 트래킹 엔진에 적용하기 쉽지 않고 특히 모바일에서는 GPU를 이용해 개선한다고 해도 필요한 성능을 기대할 수 없는 것이 단점이다. 한편, FAST(Features from Accelerated Segment Test)는 영상에서 코너형태를 특징점으로 검출하는데, FAST 알고리즘은 영상 내의 모든 픽셀의 주변 픽셀을 비교하여 코너 여부를 빠르게 검사한다. 연산 성능이 부족한 모바일에서도 초당 30프레임 이상을 처리할 수 있다는 것이 장점이다.
따라서, 출력부(330)는, SIFT와 FAST의 장점을 결합하여 모바일 성능에 적합하도록 알고리즘을 구성할 수 있다. 특징점의 위치는 FAST를 사용하여 영상의 코너 부분들을 검출하고, 각 특징점은 SIFT의 방식대로 디스크립터로 변환되도록 한다. 이때, 특징점 주변의 패치 영역을 디스크립터로 변환하는 과정은, 특징점 패치의 주방향을 결정하는 단계와 패치의 주방향을 기준으로 픽셀들의 밝기 변화 방향과 크기를 수집하여 히스토그램을 만드는 단계로 구성될 수 있다. 특징점 패치의 주방향을 결정하기 위해서 16×16 크기의 패치의 각 픽셀의 밝기 변화 방향과 크기를 계산하고, 계산된 방향과 크기를 이용해 히스토그램을 구성한다. 히스토그램은 픽셀의 밝기 변화 방향의 복수개의 단계로 양자화되고, 밝기 변화의 크기는 각 단계의 도수에 더해질 수 있다. 밝기 변화의 크기가 도수에 더해질 때 해당 픽셀이 패치의 중심으로부터 떨어진 거리에 따라 가중치가 곱해질 수 있다. 예를 들어, 도수가 가장 큰 방향이 특징점 패치의 주방향이 될 수 있다.
출력부(330)는, 특징점 패치의 주방향이 결정되면 특징점의 디스크립터를 계산한다. 특징점 주변 영역을 주방향으로 회전 시킨 후 예를 들어, 16×16 크기의 패치 영역의 각 픽셀에서 밝기 변화의 방향과 크기를 계산한다. 16×16 픽셀들의 4×4의 작은 영역 16개로 분리된 후 각 영역에서 히스토그램을 계산한다. 히스토그램에서 8 단계 각각의 크기를 모으면 128개의 원소를 가지는 디스크립터 벡터가 계산된다. 카메라 영상에서 특징점을 검출하고 디스크립터들을 계산한 후에는 대규모 환경 지도의 특징점 지도와 비교해야한다. 특징점 디스크립터는 128의 크기를 갖는 벡터이고 n개 특징점 지도의 디스크립터와 m개의 영상 특징점 디스크립터가 있으면, n×m 번의 벡터 간의 거리 계산이 이루어져 병렬화 하지 않으면 실시간 매칭이 어렵기 때문에, 예를 들어 GPU를 이용하여 병렬화로 가속할 수 있다.
디스크립터 간의 거리가 계산되면 거리가 가장 짧은 최적 매칭을 찾아야 하는데, 이때 최적 매칭 두 가지 조건을 만족해야 한다. 하나는 디스크립터 간의 거리가 일정 이하여야 한다는 것이고 다른 하나는 매칭 모호성이 없어야 한다는 것이다. 두 번째 조건을 만족하기 위해서, 이 환경 지도의 특징점 디스크립터와 가장 가까운 영상의 특징점 디스크립터를 찾고, 영상의 특징점 디스크립터에서 가장 가까운 환경지도의 특징점 디스크립터를 찾아서 두 결과가 일치하는 매칭을 찾는다. 환경 지도의 특징점과 영상의 특징점 간의 매칭을 찾은후 환경 지도 특징점의 3차원 정보와 해당 특징점이 영상에 투사된 정보를 이용해 영상을 촬영한 카메라의 위치와 자세를 계산할 수 있다.
출력부(330)는, 센서를 이용하여 하이브리드 기반의 트랙킹의 성능을 증가시킬 수 있다. 일반적인 트랙킹 기법중 하나인 특징점 기반 트랙킹 기법은 카메라의 자세와 위치를 트랙킹 하기 위해 카메라로부터 들어오는 영상을 이용한다. 특징점 기반 트랙킹 기법은 카메라의 움직임이 작은 경우에는 트래킹의 성능을 어느 정도 보장하지만, 카메라가 급격히 회전 또는 이동하는 경우 또는 전방에 움직이는 물체가 나타나 특징점 추출에 방해가 되는 경우, 트랙킹이 실패하는 문제가 발생한다. 이러한 경우, 그래픽의 정확한 증강이 되지 않으면서 실재감이 떨어지게 되는 문제점을 야기하며, 이는 증강현실에서 큰 문제점 중 하나이다. 이러한 문제점을 보완하기 위하여 스마트폰에 내장된 센서를 추가로 사용을 할 수도 있다.
이에 따라, 출력부(330)는, 사용자 단말(100)에서 들어온 센서 값을 EKF(Extended Kalman Filter)를 이용하여 특징점 기반 트랙킹 기법과 융합함으로써 트랙킹 에러를 줄일 수 있다. 예를 들어, 스마트 폰의 자세와 위치 값과, 스마트 폰의 센서로부터 얻어지는 높은 샘플링 주파수의 각속도와 가속도 값을 이용하여 EKF를 통해 트랙킹 성능을 향상시킬 수 있다. 또, 예를 들면, 트랙킹 기법을 통해 카메라의 회전(Rotation) 정보, 즉 오일러 각을 추적할 수도 있다. 물론, 상술한 방법에 한정되지 않고 다양한 방법을 이용하여 AR 인터랙션을 제공할 수도 있으며, 열거된 것들로 한정되지 않음은 자명하다 할 것이다.
덧붙여서, 출력부(330)는, 손의 위치를 파악하고 손의 위치나 제스처에 따라 AR 콘텐츠가 반응하도록, 즉 인터랙션하도록 할 수도 있다. 이를 위해서는, 카메라를 통하여 입력되는 손의 위치, AR 위치, 카메라의 위치와 각도, AR 마커의 위치 등을 알아야 한다. 예를 들어, 깊이 카메라가 설치되는 경우, 깊이 카메라 근처에는 깊이 카메라의 위치를 알 수 있게 하는 마커가 부착된다. 깊이 카메라 앞에 증강현실 카메라(사용자 단말(100)의 카메라)의 위치를 알 수 있게 하고 가상 물체를 표시하기 위한 마커인 AR 마커가 놓여진다. 위와 같은 상태에서 증강현실 카메라가 깊이 카메라 마커와 증강현실 마커를 둘다 동시에 볼 경우에 깊이 카메라 마커가 증강현실 마커에 상대적으로 어디에 놓여져 있는지를 알 수가 있다. 편의상 증강현실 마커가 원점(0,0,0)이라고 설정하는 경우, 깊이 카메라 마커와 깊이 카메라의 위치는 같거나 가깝기 때문에 깊이 카메라의 위치를 알 수가 있다. 깊이 카메라는 고정이 되어 있으므로 이 위치를 계속 사용하면 된다. 그 다음으로, 증강현실 카메라가 증강현실 마커를 보고 있을 경우에 증강현실 카메라의 위치는 증강현실 마커를 기준으로 산출가능하다.
또, 깊이 카메라가 손을 보고 있을 경우에도 손과 손가락의 상대적인 위치를 알수 있으며, 세 번째로 깊이 카메라의 위치를 알고 있고, 깊이 카메라에서 손의 상대적인 위치도 알고 있는 경우, 손이 원점에서 얼마나 떨어져 있는지를 알 수 있다. 또한 증강현실 카메라의 위치도 알고 있기 때문에, 증강현실 카메라에서 손이 어떻게 그려지는가는 프로젝션(Projection)을 통하여 구할 수가 있다. 이렇게 손의 위치나 제스처가 파악되는 경우, 다양한 제스쳐 인식 및 인터랙션이 가능하게 된다. 증강되어 나타나는 토끼와 자연스러운 인터랙션을 하기 위하여 필요한 동작을 구성할 수 있다. 예를 들어, 먹이를 주는 손바닥을 위로 하고 내미는 동작과 손등을 위로하고 쓰다듬는 동작 등을 구현할 수 있으며, 손바닥을 인식하고 제스처를 인식하는 경우, 토끼가 사람의 손을 물거나 할퀴거나 뒷발로 차는 등의 반응을 나타낼 수도 있다. 각각 손 동작들을 구별하기 위하여 사용한 방법은 SVM(Support Vector Machine)으로 데이터 그룹들 사이에 구분을 지어주는 서포트 벡터(Support Vector)를 찾아서 그 사이를 구별하는 방법을 이용할 수 있다. 다만, 이에 한정되는 것은 아니다.
VR 제공부(340)는, 사용자 단말(100)과 연동된 HMD(Head Mounted Display)가 감지된 경우, 사용자 단말(100)로 VR 콘텐츠를 스트리밍시키고, 사용자 단말(100)의 사용자 인터페이스를 통하여 입력이 존재하는 경우, VR 콘텐츠를 변형하여 인터랙션 콘텐츠를 사용자 단말(100)에서 출력되도록 할 수 있다. 이때, VR 제공부(340)는, HMD에서 트래킹된 사용자의 눈동자 데이터 또는 사용자 단말(100)과 연동되는 적어도 하나의 콘트롤러의 입력 데이터에 기초하여 인터랙션 콘텐츠를 제공할 수 있다. 아이트래킹은, 눈의 동공중심부분(Pupil Center)과 각막반사(Comeal Reflex)를 아이트래커(Eye Tracker)가 인식하여 눈의 움직임을 추적하는 방법이다. 시선을 추적하는 아이트래킹은, 시선의 응시 또는 눈(동공)의 움직임을 측정하여 어느 곳을 보고 있는지를 알아내는 방법으로, 화면을 주시하고 있는 사람의눈에 각막광(각막반사)과 동공의 움직임을 추적하는 것인데, 눈의 위치로부터 시선을 추적하는 과정이다. 이때, 응시한 시간, 응시한 횟수, 응시 분포도, 평균 동공의 크기, 눈 깜박임 빈도 등에 따라 인터랙션이 이루어질 수도 있고, 말 그대로 눈이 움직이는 방향에 대응하도록 VR 콘텐츠를 제공할 수도 있다. 이때, 아이트래킹 이외에도 자이로센서, 각축센서 등을 이용하여 사용자가 움직일 때마다, 이에 대응하는 뷰(View)가 출력되도록 할 수도 있다.
변환부(350)는, 제작된 AR 콘텐츠 및 VR 콘텐츠를 업로드받고, HTML5 플랫폼에 대응하도록 컨버팅시킬 수 있다. HTML5 기반 콘텐츠 스트리밍 서비스는 웹 브라우저 기반의 동영상을 재생할 수 있어야 한다. 그러나 현재까지 HTML5 기반 웹 브라우저에서 지원하는 비디오/오디오 코덱 정보가 모두 다르기 때문에, 코덱 표준이 정해지기 전까지 각 웹 브라우저에서 지원하는 콘텐츠로의 변환이 필요하다. 즉, AR 또는 VR 콘텐츠 간 트랜스코딩을 해주는 기능이 필요한데, 이를 위하여 컨버팅을 실시하는 것이다.
이렇게 변환이 되면, 웹 브라우저에서 이미지를 보듯이 멀티미디어 콘텐츠를 재생할 수 있게 되는데, 이를 위하여 HTML5에서 비디오와 오디오 태그를 정의할 수 있다. HTML5 이전에는 웹 페이지에 동영상을 삽입하기 위해서 외부 객체를 넣을 수 있는 오브젝트 태그와 많은 파라미터를 중복 지정했다. 특히, 별도의 응용 프로그램에 미디어 데이터를 넘겨 처리할 경우 예측할 수 없는 상황이 많이 발생한다. 웹 페이지에 플러그인을 삽입하면 웹 브라우저가 플러그인이 차지하는 부분은 블랙박스로 처리하기 때문에 플러그인 내부에서 발생하는 이벤트에 대해서는 처리하거나 알려고 하지 않는다. 이러한 특징은 페이지의 레이아웃이 동적으로 바뀌는 구조와 플러그인에 할당한 영역과 페이지 나머지 요소가 겹치는 구조에서는 문제가 발생할 수 있다. 반면, HTML5에서는 플러그인을 더 이상 사용하지 않고 비디오와 오디오를 웹의 한 요소로 포함시키는 표준화된 방법을 정의하여 웹 브라우저 자체에서 동영상을 직접 재생하고 보여줄 수 있는 방법을 제공한다. 모든 콘텐츠는, 비디오와 오디오로 구성되며 비디오와 오디오의 요소를 하나로 묶어놓은 것을 비디오 컨테이너 파일이라 한다. 비디오 컨테이너 파일은 비디오, 오디오, 데이터 등의 트랙으로 구성되며 일반적으로 상호 연관되어 있다. 또한 각 트랙은 비디오의 화면비율 또는 오디오의 언어정보와 같은 메타데이터를 저장하며, 컨테이너 역시 동영상의 제목과 표지 디자인 등의 메타데이터를 포함할 수 있다.
이때, 전적으로 웹 브라우저에 기반하고 클라이언트인 사용자 단말(100)에 저장되는 데이터가 없기 때문에, 적응적인 스트리밍 기능을 추가적으로 더 이용할 수 있다. 지금까지 인터넷의 동영상 스트리밍은 전용 스트리밍 서버와 스트리밍 전송 프로토콜인 RTP/RTCP/RTSP 등을 사용하는 전통적인 스트리밍 방법과 동영상 파일의 일부를 클라이언트에 다운로드하며 재생을 하는 HTTP 프로그레시브 다운로드 방법이 사용되었다. HTTP 프로그레시브 다운로드 방법은 전용의 스트리밍 서버를 사용하지 않고 웹 서버만으로 서비스가 가능하다는 장점을 가지나, 스트리밍 파일을 요청하면 파일 모두를 다운로드하기 때문에 다운로드 중 재생을 중지하는 경우 대역폭 낭비가 발생할 수 있으며, 네트워크 상태 변화에 적응적으로 동작하지 못한다.
반면, 본 발명의 일 실시예에 따른 HTTP 기반 적응적 스트리밍 기술은, 네트워크의 상태에 따라 적당한 압축률로 압축된 스트림 데이터로 스위칭이 가능하도록 하기 위해서 하나의 콘텐츠를 짧은 시간 간격으로 나누어 다양한 압축률로 압축한 파일들을 웹 서버에 저장한다. 클라이언트는 네트워크 상태를 파악하여 여러 파일 중 적합한 파일의 전송을 요청할 수 있다. HTTP 기반 스트리밍 구조는, 스트리밍 콘텐츠를 생성하는 인코더와 인코딩된 스트리밍 데이터를 일정한 시간 간격의 작 은 조각(chunk)으로 나누는 세그멘터(segmenter), 스트리밍 미디어를 재생하는 클라이언트(웹 브라우저 또는 응용 프로그램), 콘텐트의 분배를 담당하는 콘텐츠 분배기로 구성될 수 있다. HTTP 기반 적응적 스트리밍 기술은 HTTP 프로그레시브 다운로드 기술에 기반하고 있으며 재생을 위한 스트리밍 파일을 연속적인 작은 조각으로 다운로드하여 적응적인 실시간 스트리밍과 적은 비용으로 콘텐츠 캐시의 구현을 가능하게 한다. 또한, 한 콘텐츠에 대해 여러 압축률로 인코딩된 스트림을 제공하여 네트워크 상태와 단말의 능력, 즉 네트워킹 자원과 컴퓨팅 자원에 적합한 스트리밍이 가능하며 네트워크 상태와 단말의 프로세스 부하의 변경에 따라 단말이 다양한 압축률의 스트리밍 데이터간 스위칭이 가능하다.
데이터베이스화부(360)는, 적어도 하나의 관리자 단말(400)로부터 AR 콘텐츠 및 VR 콘텐츠를 업로드받고, AR 콘텐츠 및 VR 콘텐츠를 제작의뢰한 의뢰 단말(미도시)과 매핑하여 저장할 수 있다. 예를 들어, 다양한 개인, 업체, 및 중소기업이나 대기업 등에서 AR 콘텐츠 및 VR 콘텐츠의 제작을 의뢰할 수 있는데, 만약 각 업체에서 직접 스트리밍을 해주는 경우를 제외하고는, 본 발명의 일 실시예에 따른 인터랙션 콘텐츠 서비스 제공 서버(300)에서 서비스를 진행해야 한다. 이 경우, 각 업체는 누가 언제 어떠한 콘텐츠를 얼마나 스트리밍하는지를 알 수 없고, 어떠한 인터랙션이 발생하고 오류가 발생하는지를 알 수 없기 때문에, 인터랙션 콘텐츠 서비스 제공 서버(300)는, 이러한 이벤트들을 수집하고 정리하여 주기적으로 보고서를 제공하거나 데이터를 의뢰 단말과 공유할 수 있다.
이하, 상술한 도 2의 인터랙션 콘텐츠 서비스 제공 서버의 구성에 따른 동작 과정을 도 3 및 도 4를 예로 들어 상세히 설명하기로 한다. 다만, 실시예는 본 발명의 다양한 실시예 중 어느 하나일 뿐, 이에 한정되지 않음은 자명하다 할 것이다.
도 3을 참조하면, (a) 인터랙션 콘텐츠 서비스 제공 서버(300)는, AR 및 VR 콘텐츠를 적어도 하나의 관리자 단말(400)에서 제작하여 업로드하면, HTML5 표준에 따라 컨버팅을 수행함으로써 동종 또는 이종 단말에서도 스트리밍될 수 있도록 트랜스코딩을 실시하여 저장할 수 있다. 그리고, (b) 사용자 단말(100)에서 AR 콘텐츠를 실행하는 경우, AR 콘텐츠를 AR 마커를 기준으로 출력하되, 인터랙션이 요구되는 데이터가 입력되는 경우, 이에 대응하도록 기 설정된 인터랙션 콘텐츠를 출력하거나 AR 콘텐츠를 변형하여 출력할 수 있다. (c) VR 콘텐츠도 마찬가지로 적용되나, 인터랙션 콘텐츠 서비스 제공 서버(300)는, 이때 사용자 단말(100)과 연동된 HMD 또는 컨트롤러로부터 수신된 이벤트를 분류하고, 분류된 입력에 대응하는 VR 콘텐츠를 실시간으로 지연없이 제공할 수 있으며, (d) 의뢰 단말로 그 결과가 제공될 수도 있다. 여기서, VR 콘텐츠는, 바이노럴비트가 삽입된 음원과 자연의 소리, 또는 화이트노이즈를 포함할 수 있지만 이에 한정되는 것은 아니다.
도 4a를 참조하면, 각 프레임이 연속되어 한 장면처럼 구성되었지만, 이는 VR를 위한 하나하나의 장면의 일 실시예이다. 이렇게 캐릭터와 배경이 합쳐져 HMD에서 출력될 수도 있고, 도 4b나 도 4c와 같은 캐릭터가 AR 마커 상에 출력되어 증강현실 카메라 화면 상에 출력되고, 토끼를 쓰다듬거나 먹이를 주는 경우, AR 콘텐츠인 토끼가 사람의 손을 물거나 뒷발로 손을 차는 등의 인터랙션이 가능해진다. 또는, 어린이 동화책에 인쇄된 AR 마커를 기준으로 토끼(캐릭터 이름, 트래비)를 출력시킬 수도 있고, 스마트 폰 화면 상에 출력된 트래비에게 어린이들이 소리로 음성발화를 하는 경우, 트래비는 챗봇 기능을 더 추가하여 응답을 하면서 AR 콘텐츠가 말을 하는 모양으로 변환되면서 출력될 수 있다.
챗봇은 채팅과 로봇의 합성어로 로봇의 인공지능을 대화형 인터페이스에 접목한 기술로 인공지능을 기반으로 사람과 상호작용하는 대화형 시스템을 지칭한다. 챗봇은 인공지능 기술의 발전으로 머신러닝 또는 딥러닝 기술이 챗봇에 적용되어 사용자의 질문을 이해하고 의도를 파악하여 적합한 답변을 제시할 수 있게 되면서 더 복잡한 일을 수행하는 것이 가능해졌다. 또한, 스마트폰의 보급과 모바일 메신저 사용자가 급증하여 스마트 폰 사용자는 대부분 메신저 앱을 사용하고 있어 메신저 앱을 사용하여 챗봇 서비스를 제공하는 경우 새로운 앱 설치 없이 누구나 익숙한 환경에서 챗봇 서비스를 사용자들에게 공급할 수 있게 되었다. 이에 따라 기존 메신저 업체들은 챗봇 시장을 선점하기 위해 각자의 메신저 플랫폼 API를 공개함은 물론 인공지능 기술이 적용된 메신저 플랫폼을 개발하고 있다.
챗봇은 동작방식에 따라 규칙기반 챗봇과 기계학습기반 챗봇, 정보교환방식에 따라 일회성 질의응답 챗봇과 연속대화형 챗봇, 답변생성방식에 따라 검색모델 챗봇과 생성모델 챗봇으로 분류할 수 있다. 규칙기반 챗봇은 미리 정의된 규칙을 기반으로 챗봇이 동작하게 되어 있는데, 사용자의 입력을 해석하는 해석규칙, 사용자의 입력에 대해 반응하는 반응 규칙 또는 응답을 생성하는 규칙을 포함할 수 있다.
기계학습기반 챗봇은 자연어를 이해하고 적절한 답변을 생성하거나 선택하기 위해 기계학습 알고리즘을 사용한다. NLP(Natural Language Process) 모듈은 사용자가 입력한 자연어를 다양한 언어학적 자원을 활용해 분해하는 역할을 수행하고, NLU(Natural Language Understanding) 모듈은 분해된 자연어의 의미를 파악하여 정제된 정보를 답변을 생성하기 위한 최종 분류 모델 또는 생성모델로 전달하게 된다. 나아가 NLU 모듈의 결과물을 사용하여 기계학습 알고리즘은 기존에 정의된 답변을 선택하거나 NLG(Natural Language Generation) 모듈이 새로운 답변을 생성하게 된다. 기계학습 기반 챗봇은 높은 수준의 대화가 가능하지만 그만큼 높은 수준 자연어 처리기술을 필요로 하며, NLP 모듈 및 NLU 모듈은 많은 언어학적 자원 및 데이터를 더 포함할 수 있다(말뭉치 사전, 형태소사전, 의미역 사전).
챗봇이 다양한 주제에 대해 모든 응답을 하는 것이 불가능하므로 대부분 특정 대화의 주제에 따라 구조화된 대화의 형식(시나리오)이 정해져 있다. 정해진 시나리오에 따라 동작하는 챗봇 시스템을 프레임 기반 담화 시스템(Frame-based system)이라고 하는데, 프레임 기반 담화 시스템은 사용자의 질문에 응답하기 위한 정보의 세트인 슬롯을 구성하여 슬롯에 기반을 두어 질문을 생성하고, 요구되는 정보가 수집된 상태에 따라 담화가 전개될 수 있다.
검색기반 챗봇은 사용자의 질문에 따라 기존 지식 베이스에 저장된 답변 중 가장 적절한 답변을 선택하여 제시하는 방식으로 작동할 수 있다. 생성기반 챗봇은 사용자의 질문에 따라 기존에 정의되어 있지 않은 새로운 답변을 생성하여 제공한다. 생성모델의 챗봇은 답변을 생성하는데 자유도가 크기 때문에 문법적인 오류를 범하거나 일반적이지 않은 답변을 생성할 수 있으며, 생성모델의 챗봇을 만들기 위해서는 굉장히 방대한 학습데이터가 필요하므로, 주기적인 학습 및 트레이닝을 더 수행할 수 있다. 이때, 검색기반 챗봇이거나 검색모델과 생성모델을 결합한 하이브리드 방식을 이용할 수도 있고, 딥러닝 알고리즘(Encoder-Decoder, Seq2Seq)을 적용하여 챗봇을 구현할 수도 있으며 상술한 것들로 한정하지는 않는다.
이와 같은 도 2 내지 도 4의 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 방법에 대해서 설명되지 아니한 사항은 앞서 도 1을 통해 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 방법에 대하여 설명된 내용과 동일하거나 설명된 내용으로부터 용이하게 유추 가능하므로 이하 설명을 생략하도록 한다.
도 5는 본 발명의 일 실시예에 따른 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 방법을 설명하기 위한 동작 흐름도이다. 이하, 도 5를 통해 각 구성들 상호간에 데이터가 송수신되는 과정의 일 예를 설명할 것이나, 이와 같은 실시예로 본원이 한정 해석되는 것은 아니며, 앞서 설명한 다양한 실시예들에 따라 도 5에 도시된 데이터가 송수신되는 과정이 변경될 수 있음은 기술분야에 속하는 당업자에게 자명하다. 도 5를 참조하면, 인터랙션 콘텐츠 서비스 제공 서버는, 사용자 단말에서 인터랙션 콘텐츠 서비스를 제공하는 웹 페이지로 접속하는 경우, 사용자 단말의 엑세스를 감지한다(S5100).
그리고, 인터랙션 콘텐츠 서비스 제공 서버는, 사용자 단말에서 접속된 웹 페이지에서 AR 콘텐츠를 출력되도록 제어하고(S5200), 사용자 단말의 적어도 하나의 사용자 인터페이스에 입력이 존재하는 경우, 입력에 대응하도록 AR 콘텐츠를 변형하여 인터랙션 콘텐츠를 사용자 단말에서 출력되도록 제어한다(S5300).
상술한 단계들(S5100~S5300)간의 순서는 예시일 뿐, 이에 한정되지 않는다. 즉, 상술한 단계들(S5100~S5300) 간의 순서는 상호 변동될 수 있으며, 이중 일부 단계들은 동시에 실행되거나 삭제될 수도 있다.
이와 같은 도 5의 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 방법에 대해서 설명되지 아니한 사항은 앞서 도 1 내지 도 4를 통해 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 방법에 대하여 설명된 내용과 동일하거나 설명된 내용으로부터 용이하게 유추 가능하므로 이하 설명을 생략하도록 한다.
도 5를 통해 설명된 일 실시예에 따른 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 방법은, 컴퓨터에 의해 실행되는 애플리케이션이나 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.
전술한 본 발명의 일 실시예에 따른 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 방법은, 단말기에 기본적으로 설치된 애플리케이션(이는 단말기에 기본적으로 탑재된 플랫폼이나 운영체제 등에 포함된 프로그램을 포함할 수 있음)에 의해 실행될 수 있고, 사용자가 애플리케이션 스토어 서버, 애플리케이션 또는 해당 서비스와 관련된 웹 서버 등의 애플리케이션 제공 서버를 통해 마스터 단말기에 직접 설치한 애플리케이션(즉, 프로그램)에 의해 실행될 수도 있다. 이러한 의미에서, 전술한 본 발명의 일 실시예에 따른 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 방법은 단말기에 기본적으로 설치되거나 사용자에 의해 직접 설치된 애플리케이션(즉, 프로그램)으로 구현되고 단말기에 등의 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (7)

  1. AR 콘텐츠 또는 VR 콘텐츠를 웹 페이지의 엑세스로 출력하고, 사용자 인터페이스의 사용자 입력에 대응하는 인터랙션 콘텐츠를 출력하는 사용자 단말; 및
    상기 사용자 단말에서 상기 인터랙션 콘텐츠 서비스를 제공하는 웹 페이지로 접속하는 경우, 상기 사용자 단말의 엑세스를 감지하는 감지부, 상기 사용자 단말에서 상기 접속된 웹 페이지에서 AR 콘텐츠가 출력되도록 제어하는 제어부, 상기 사용자 단말의 적어도 하나의 사용자 인터페이스에 사용자 입력이 존재하는 경우, 상기 사용자 입력에 대응하도록 상기 AR 콘텐츠를 변형하여 인터랙션 콘텐츠를 상기 사용자 단말에서 출력되도록 하는 출력부를 포함하는 인터랙션 콘텐츠 서비스 제공 서버;를 포함하되,
    상기 제어부는, 상기 사용자 단말에서 기업 로고를 포함하는 기 설정된 AR 마커가 인식되는 경우에 상기 AR 마커의 위치에 상기 AR 콘텐츠가 출력되도록 제어하고,
    상기 출력부는, 깊이 카메라 또는 컬러 영상 카메라를 이용한 맨손 인터랙션(barehand interaction) 기법을 적용하고, 상기 깊이 카메라를 이용한 손의 깊이 데이터를 SVM(Support Vector Machine)을 사용하여 제스쳐를 인식하고 이를 양안식 증강현실에 적용하며, 상기 AR 마커를 이용하여 특징점을 추출하여 맵을 생성하고, 상기 특징점의 위치는 FAST(Features from Accelerated Segment Test) 방식을 사용하여 영상의 코너 부분들을 검출하며, 각 특징점은 SIFT(Scale Invariant Feature Transform) 방식으로 디스크립터로 변환되도록 하고,
    애플리케이션이나 프로그램의 다운로드 및 설치 없이도 웹 페이지로의 접속만으로도 VR 및 AR 인터랙션 콘텐츠의 구동이 가능한 것을 특징으로 하는
    HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 시스템.
  2. 제 1 항에 있어서,
    상기 인터랙션 콘텐츠 서비스 제공 서버는,
    상기 사용자 단말과 연동된 HMD(Head Mounted Display)가 감지된 경우, 상기 사용자 단말로 VR 콘텐츠를 스트리밍시키고, 상기 사용자 단말의 사용자 인터페이스를 통하여 사용자 입력이 존재하는 경우, 상기 VR 콘텐츠를 변형하여 인터랙션 콘텐츠가 상기 사용자 단말에서 출력되도록 하는 VR 제공부;
    를 더 포함하는 것을 특징으로 하는 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 시스템.
  3. 제 2 항에 있어서,
    상기 VR 제공부는,
    상기 HMD에서 트래킹된 사용자의 눈동자 데이터 또는 상기 사용자 단말과 연동되는 적어도 하나의 콘트롤러의 입력 데이터에 기초하여 상기 인터랙션 콘텐츠를 제공하는 것을 특징으로 하는 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 시스템.
  4. 제 1 항에 있어서,
    상기 인터랙션 콘텐츠 서비스 제공 서버는,
    제작된 AR 콘텐츠 및 VR 콘텐츠를 업로드받고, HTML 5 플랫폼에 대응하도록 컨버팅시키는 변환부;
    를 더 포함하는 것을 특징으로 하는 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 시스템.
  5. 제 1 항에 있어서,
    상기 인터랙션 콘텐츠 서비스 제공 서버는,
    적어도 하나의 관리자 단말로부터 AR 콘텐츠 및 VR 콘텐츠를 업로드받고, 상기 AR 콘텐츠 및 VR 콘텐츠를 제작의뢰한 의뢰 단말과 매핑하여 저장하는 데이터베이스화부;
    를 더 포함하는 것을 특징으로 하는 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 시스템.
  6. 삭제
  7. 제 1 항에 있어서,
    상기 출력부는,
    상기 사용자 단말의 터치 디스플레이에 입력되는 터치 이벤트, 상기 사용자 단말의 카메라를 통하여 인식된 제스처 데이터, 및 상기 사용자 단말에 내장된 적어도 하나의 센서를 통하여 감지된 센서 데이터 중 어느 하나 또는 적어도 하나의 조합에 의하여 상기 AR 콘텐츠를 변형하고,
    상기 사용자 단말의 카메라 영상에서 AR 마커들을 영상 처리를 통해 추출하고, AR 마커의 정보를 이용하여 상기 사용자 단말의 카메라와의 상대적인 위치를 추정하며,
    상기 사용자 단말의 카메라의 위치와 AR 마커의 위치가 결정되면 상기 사용자 단말 기반의 3차원 트랙킹을 수행하되,
    각각의 AR 마커들은 내부의 비트 코드에 따라 방향과 고유번호가 구분되는 것을 특징으로 하는 HTML5 웹 환경 기반 VR 및 AR 인터랙션 콘텐츠 서비스 제공 시스템.
KR1020190179857A 2019-12-31 2019-12-31 Html5 웹 환경 기반 vr 및 ar 인터랙션 콘텐츠 서비스 제공 시스템 KR102152761B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190179857A KR102152761B1 (ko) 2019-12-31 2019-12-31 Html5 웹 환경 기반 vr 및 ar 인터랙션 콘텐츠 서비스 제공 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190179857A KR102152761B1 (ko) 2019-12-31 2019-12-31 Html5 웹 환경 기반 vr 및 ar 인터랙션 콘텐츠 서비스 제공 시스템

Publications (1)

Publication Number Publication Date
KR102152761B1 true KR102152761B1 (ko) 2020-09-07

Family

ID=72472257

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190179857A KR102152761B1 (ko) 2019-12-31 2019-12-31 Html5 웹 환경 기반 vr 및 ar 인터랙션 콘텐츠 서비스 제공 시스템

Country Status (1)

Country Link
KR (1) KR102152761B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102391074B1 (ko) * 2021-08-26 2022-04-28 주식회사 아이스크림미디어 실감형 포맷의 영상 콘텐츠를 제공하는 교육용 플랫폼
KR20220060678A (ko) 2020-11-05 2022-05-12 주식회사 채움숲 Vr 컨텐츠의 저작 및 체험을 위한 시스템 및 서비스 제공 방법
KR102495824B1 (ko) 2021-11-24 2023-02-06 주식회사 채움숲 Vr을 기반으로 스케줄링 서비스를 제공하는 서버, 및 vr 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160066451A (ko) * 2014-12-02 2016-06-10 경북대학교 산학협력단 Hmd 디바이스 및 그 제어 방법
KR20180080012A (ko) * 2017-01-03 2018-07-11 주식회사 한국스포츠예술차세대플랫폼 소셜 네트워크 서비스를 이용한 실감형 음악연주 컨텐츠 생성·공유 장치 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160066451A (ko) * 2014-12-02 2016-06-10 경북대학교 산학협력단 Hmd 디바이스 및 그 제어 방법
KR20180080012A (ko) * 2017-01-03 2018-07-11 주식회사 한국스포츠예술차세대플랫폼 소셜 네트워크 서비스를 이용한 실감형 음악연주 컨텐츠 생성·공유 장치 및 방법

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220060678A (ko) 2020-11-05 2022-05-12 주식회사 채움숲 Vr 컨텐츠의 저작 및 체험을 위한 시스템 및 서비스 제공 방법
KR102391074B1 (ko) * 2021-08-26 2022-04-28 주식회사 아이스크림미디어 실감형 포맷의 영상 콘텐츠를 제공하는 교육용 플랫폼
KR102426934B1 (ko) * 2021-08-26 2022-08-02 주식회사 아이스크림미디어 영상 콘텐츠의 실시간 스트리밍 서비스를 제공하는 교육용 플랫폼
KR102426933B1 (ko) * 2021-08-26 2022-08-02 주식회사 아이스크림미디어 단말을 통해 클라우드 웹사이트에 액세스하여 영상 콘텐츠를 제공하는 교육용 플랫폼
KR102426932B1 (ko) * 2021-08-26 2022-08-02 주식회사 아이스크림미디어 학습 콘텐츠의 가상 화면과 실시간으로 촬영되는 영상을 융합한 콘텐츠를 제공하는 교육용 플랫폼
KR102485591B1 (ko) * 2021-08-26 2023-01-10 주식회사 아이스크림미디어 Vr, ar, mr, xr, 360도 영상의 실감형 포맷으로 제작된 학습 콘텐츠를 제공하는 교육용 플랫폼
KR102485592B1 (ko) * 2021-08-26 2023-01-10 주식회사 아이스크림미디어 실감형 포맷의 영상 콘텐츠를 제공하여 학습 효과를 향상시키는 방법
KR102495824B1 (ko) 2021-11-24 2023-02-06 주식회사 채움숲 Vr을 기반으로 스케줄링 서비스를 제공하는 서버, 및 vr 장치

Similar Documents

Publication Publication Date Title
Qiao et al. Web AR: A promising future for mobile augmented reality—State of the art, challenges, and insights
KR102152761B1 (ko) Html5 웹 환경 기반 vr 및 ar 인터랙션 콘텐츠 서비스 제공 시스템
JP6662876B2 (ja) アバター選択機構
US9338589B2 (en) User-generated content in a virtual reality environment
US10120954B2 (en) Transformation and presentation of on-demand native application crawling results
US20170289617A1 (en) Computerized system and method for automatically detecting and rendering highlights from streaming videos
KR102117433B1 (ko) 인터액티브 비디오 생성
Agrawal et al. Cloudcv: Large-scale distributed computer vision as a cloud service
KR102626274B1 (ko) 이미지 교체 복원
KR102221909B1 (ko) 비대면 비지니스를 위한 실시간 양방향 영상 기반 협업 서비스 제공 시스템
US11681409B2 (en) Systems and methods for augmented or mixed reality writing
US20140267011A1 (en) Mobile device event control with digital images
US20220319063A1 (en) Method and apparatus for video conferencing
CN114238690A (zh) 视频分类的方法、装置及存储介质
US11430158B2 (en) Intelligent real-time multiple-user augmented reality content management and data analytics system
Li et al. Emerging technologies and applications on interactive entertainments
US20170289612A1 (en) System and methods thereof for displaying video content
US10290151B2 (en) AR/VR device virtualisation
US11599381B2 (en) Processing files via edge computing device
Joveski et al. Semantic multimedia remote display for mobile thin clients
US20220272391A1 (en) Media processing method
CN110891194B (zh) 评论信息显示方法、装置、终端及存储介质
Han et al. Study on the context awareness that the order search system in a distributed computing environment
CN114579806B (zh) 视频检测方法、存储介质和处理器
US11589084B2 (en) Dynamic, interactive segmentation in layered multimedia content

Legal Events

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