KR20180029344A - 가상 현실 시스템에서 컨텐트 전송 및 재생 방법 및 장치 - Google Patents

가상 현실 시스템에서 컨텐트 전송 및 재생 방법 및 장치 Download PDF

Info

Publication number
KR20180029344A
KR20180029344A KR1020160117072A KR20160117072A KR20180029344A KR 20180029344 A KR20180029344 A KR 20180029344A KR 1020160117072 A KR1020160117072 A KR 1020160117072A KR 20160117072 A KR20160117072 A KR 20160117072A KR 20180029344 A KR20180029344 A KR 20180029344A
Authority
KR
South Korea
Prior art keywords
content
metadata
interest
version
fov
Prior art date
Application number
KR1020160117072A
Other languages
English (en)
Other versions
KR102545195B1 (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 KR1020160117072A priority Critical patent/KR102545195B1/ko
Priority to EP17849170.0A priority patent/EP3497940B1/en
Priority to US15/702,367 priority patent/US10863235B2/en
Priority to PCT/KR2017/009993 priority patent/WO2018048286A1/en
Publication of KR20180029344A publication Critical patent/KR20180029344A/ko
Application granted granted Critical
Publication of KR102545195B1 publication Critical patent/KR102545195B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • H04N21/4351Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving reassembling additional data, e.g. rebuilding an executable program from recovered modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • G06T15/205Image-based rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • 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/106Processing image signals
    • H04N13/111Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
    • 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/106Processing image signals
    • H04N13/111Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
    • H04N13/117Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation the virtual viewpoint locations being selected by the viewers or determined by viewer tracking
    • 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/106Processing image signals
    • H04N13/172Processing image signals image signals comprising non-image signal components, e.g. headers or format information
    • H04N13/178Metadata, e.g. disparity information
    • 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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4112Peripherals receiving signals from specially adapted client devices having fewer capabilities than the client, e.g. thin client having less processing power or no tuning capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • H04N21/4355Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving reformatting operations of additional data, e.g. HTML pages on a television screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4728End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for selecting a Region Of Interest [ROI], e.g. for requesting a higher resolution version of a selected region
    • 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
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/698Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/332Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
    • H04N13/344Displays for viewing with the aid of special glasses or head-mounted displays [HMD] with head-mounted left-right displays

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 개시는 센서 네트워크(Sensor Network), 사물 통신(Machine to Machine, M2M), MTC(Machine Type Communication) 및 사물 인터넷(Internet of Things, IoT)을 위한 기술과 관련된 것이다. 본 개시는 상기 기술을 기반으로 하는 지능형 서비스(스마트 홈, 스마트 빌딩, 스마트 시티, 스마트 카 혹은 커넥티드 카, 헬스 케어, 디지털 교육, 소매업, 보안 및 안전 관련 서비스 등)에 활용될 수 있다. 본 개시는 가상 현실 시스템에서 컨텐트를 재생하는 방법에 있어서 사용자 장치의 기능에 관한 파라미터들을 전송하는 과정과, 상기 전송한 파라미터 집합에 부합되는 컨텐트에 관한 관심 메타데이터를 수신하는 과정과, 상기 관심 메타데이터를 기반으로, 상기 전송한 파라미터 집합에 부합되는 버전에 해당하는 컨텐트를 사용자의 시점(viewpoint)에 상응하도록 디스플레이될 뷰 영역에 해당하는 적어도 하나의 타일(tile) 단위로 수신하여 디코딩하는 과정과, 상기 디코딩된 타일을 상기 관심 메타데이터를 기반으로 렌더링하는 과정을 포함한다.

Description

가상 현실 시스템에서 컨텐트 전송 및 재생 방법 및 장치 {Method and apparatus for delivering and playbacking content in virtual reality system}
본 개시는 VR(virtual reality; 가상 현실) 컨텐트의 재생을 위한 메타데이터를 정의하고 메타데이터를 이용하여 컨텐트를 전송 및 재생하는 방법 및 장치에 관한 것이다.
인터넷은 인간이 정보를 생성하고 소비하는 인간 중심의 연결 망에서, 사물 등 분산된 구성 요소들 간에 정보를 주고 받아 처리하는 사물인터넷 (Internet of Things, IoT) 망으로 진화하고 있다. IoE (Internet of Everything) 기술은 클라우드 서버 등과의 연결을 통한 빅데이터 (Big data) 처리 기술 등이 IoT 기술에 결합된 하나의 예가 될 수 있다.
IoT를 구현하기 위해서, 센싱 기술, 유무선 통신 및 네트워크 인프라, 서비스 인터페이스 기술, 및 보안 기술 등과 같은 기술 요소 들이 요구되어, 최근에는 사물간의 연결을 위한 센서 네트워크 (sensor network), 사물 통신 (Machine to Machine, M2M), MTC (Machine Type Communication) 등의 기술이 연구되고 있다.
IoT 환경에서는 연결된 사물들에서 생성된 데이터를 수집, 분석하여 인간의 삶에 새로운 가치를 창출하는 지능형 IT (Internet Technology) 서비스가 제공될 수 있다. IoT는 기존의 IT 기술과 다양한 산업 간의 융합 및 복합을 통하여 스마트홈, 스마트 빌딩, 스마트 시티, 스마트 카 혹은 커넥티드 카, 스마트 그리드, 헬스 케어, 스마트 가전, 첨단의료서비스 등의 분야에 응용될 수 있다.
한편, 소비자 미디어 컨텐트(consumer media content)는 흑백 컨텐트에서 컬러 컨텐트, 고선명(high definition; HD) 컨텐트, 초고선명(ultra high definition; UHD) 컨텐트 등으로 계속적으로 진화하고 있다. 최근에는 HDR(high dynamic range) 컨텐트에 대한 표준화가 진행되어 HDR 컨텐트에 관한 표준이 배포되었다. 한편, VR 컨텐트는 VR 디바이스들이 배포되기까지는 인큐베이션(incubation) 단계에 있었다.
VR 컨텐트의 성격은 기존의 2D, 3D 컨텐트의 성격과는 상이하다. VR 컨텐트는 사용자에게 360도 컨텐트를 경험할 수 있게 함으로써 진정한 몰입을 경험할 수 있게 해준다. 그러나 사용자가 360도를 자유롭게 볼 수 있도록 함으로써 컨텐트 제공자는 사용자에게 예술적인 묘사에 있어서 손실된 컨텐트를 제공할 수 있다.
가상 현실 에코시스템(VR ecosystem)은 사용자를 모니터링하여, 사용자가 어떤 종류의 제어기를 사용하여 컨텐트 디스플레이 장치나 프로세싱 유닛으로 피드백 입력을 제공할 수 있도록 하고, 컨텐트 디스플레이 장치나 프로세싱 유닛이 해당 입력을 처리하여 컨텐트를 조정함으로써 인터랙션을 가능하게 하는 시스템이다.
상기 가상 현실 에코시스템에서 상기 사용자가 상기 제어 장치를 통해 가상 현실 에코시스템으로 입력할 수 있는 움직임의 피드백은 방위(즉, 회전)와 이동(즉, 위치변동)으로 나뉠 수 있다. 상기 가상 현실 에코시스템은 상기 사용자의 피드백에 따른 VR 컨텐트를 제공하여야 한다.
가상 현실 체험에 있어 상기 디스플레이 장치를 통해 상기 사용자에게 제공되는 FOV(field of view)도 중요하다. 사람의 일반적인 수평 FOV(또는 시야각)는 대략 200도이다. 그 중 120도는 입체 중복이 된다. 상기 디스플레이 장치(예를 들어, HMD)는 100-120도의 FOV를 갖는다. 그 중 60도는 터널 시야에 해당한다. 사람의 FOV에 대응하는 것이 상기 가상 현실 에코시스템에서는 FOR(field of regard)이다. 상기 FOR은 상기 가상 현실 에코시스템에서 상기 사용자를 둘러싼 공간의 정도를 의미한다. 예를 들면, HMD는 FOR이 100%이다. 그 이유는 사용자가 이동하더라도 상기 HMD는 지속적으로 바뀌는 뷰를 제공하기 때문이다. CAVE의 FOR은 가상 스크린들로 사용되는 벽들의 개수에 의해 좌우된다. 반면, 텔레비젼이나 모니터들은 매우 제한적인 FOR의 값을 갖는다. 그 이유는 가상 세계가 사용자 앞의 상기 텔레비젼이나 상기 모니터에만 존재하고, 상기 텔레비젼이나 상기 모니터 외에서는 상기 가상 세계가 급작스럽게 단절되기 때문이다. 따라서, 상기 텔레비젼이나 상기 모니터로 VR 컨텐트를 나타내기는 힘들다.
상술한 바와 같이, 컨텐트, 디스플레이 장치 및 디스플레이 상황 등은 VR 컨텐트의 DOF(degree of freedom) 및 FOV(screen field of view)에 영향을 미친다. 따라서 다양한 종류의 360도 VR 컨텐트와 360도 VR 컨텐트를 소비하기 위해 사용될 수 있는 다양한 디스플레이 장치를 고려해야 한다.
한편, 종래에는 사용자가 컨텐트의 DOF를 조절할 수 없기 때문에 컨텐트에 컨텐트 제공자의 제작 의도를 모두 반영하였다. 사용자는 단순히 재생 버튼만 누르고, 이에 따라 제작자가 의도한 그대로 컨텐트가 디스플레이 된다. 이에 반해 360도 VR 컨텐트는 제작자에 의해 POV(point of view)가 제어될 수 없고 사용자에 의해 제어되므로 컨텐트 제작자들이 예술적 의도를 컨텐트 안에 포함시키지 않는다.
360도 VR 컨텐트와 같이 사용자가 POV를 제어할 수 있는 컨텐트는, 사용자가 디스플레이에 관한 세부사항들을 알고 있어야 한다. 그런데 현재의 프레임 워크(부호화부, 파일 포맷, 전송 시스템, 복호화부, 디스플레이 장치 또는 전체 컨텐트 에코시스템 내의 다른 블록 등)는, 사용자에게 어디를 또는 무엇을 봐야 하는지에 관한 어떠한 힌트나 안내도 제공하지 않는다. 또한 종래의 컨텐트는 TV 디스플레이에 보여지는 영상만으로 구성되어 FOV가 작기 때문에 가이드된 뷰(Guided viewing)가 불필요하다. 그러나 TV 디스플레이 밖에 존재하는 VR 360 컨텐트에 대해서는 가이드된 뷰가 필요하다.
따라서 종래의 컨텐트와는 달리, 360도 VR 컨텐트를 위해서는 사용자의 VR 컨텐트 호환 장치의 종류 및 기능에 따라 가능한 한 최상의 VR 경험을 사용자에게 제공할 수 있는 VR 재생을 위한 메타데이터를 포함하는 프레임워크가 필요하다.
본 개시의 목적은 VR 컨텐트의 타입과 VR 컨텐트를 디스플레이 하는 디바이스의 특성에 따라 메타데이터를 정의하는 방법 및 이를 위한 장치를 제공하는데 있다.
또한, 본 개시의 목적은 메타데이터를 이용하여 디스플레이 장치에서 VR 컨텐트를 효과적으로 디스플레이 할 수 있는 방법 및 이를 위한 장치를 제공하는데 있다.
본 개시는 가상 현실 시스템에서 컨텐트를 재생하는 방법에 있어서, 사용자 장치의 기능에 관한 파라미터들을 전송하는 과정과, 상기 전송한 파라미터 집합에 부합되는 컨텐트에 관한 관심 메타데이터를 수신하는 과정과, 상기 관심 메타데이터를 기반으로, 상기 전송한 파라미터 집합에 부합되는 버전에 해당하는 컨텐트를 사용자의 시점(viewpoint)에 상응하도록 디스플레이될 뷰 영역에 해당하는 적어도 하나의 타일(tile) 단위로 수신하여 디코딩하는 과정과, 상기 디코딩된 타일을 상기 관심 메타데이터를 기반으로 렌더링하는 과정을 포함한다.
또한 본 개시는 가상 현실 시스템에서 컨텐트를 재생하는 장치에 있어서, 사용자 장치의 기능에 관한 파라미터들을 전송하고, 상기 전송한 파라미터 집합에 부합되는 컨텐트에 관한 관심 메타데이터를 수신하는 제어부와, 상기 관심 메타데이터를 기반으로, 상기 전송한 파라미터 집합에 부합되는 버전에 해당하는 컨텐트를 사용자의 시점(viewpoint)에 상응하도록 디스플레이될 뷰 영역에 해당하는 적어도 하나의 타일(tile) 단위로 수신하여 디코딩하는 복호화부와, 상기 디코딩된 타일을 상기 관심 메타데이터를 기반으로 렌더링하는 재생부를 포함한다.
또한 본 개시는 가상 현실 시스템에서 컨텐트를 전송하는 방법에 있어서, 사용자 장치의 기능에 관한 파라미터들을 수신하는 과정과, 상기 수신한 파라미터 집합에 부합되는 컨텐트에 관한 관심 메타데이터를 전송하는 과정과, 상기 관심 메타데이터를 기반으로, 상기 수신한 파라미터 집합에 부합되는 버전에 해당하는 컨텐트를 사용자의 시점(viewpoint)에 상응하도록 디스플레이될 뷰 영역에 해당하는 적어도 하나의 타일(tile) 단위로 인코딩하여 전송하는 과정을 포함한다.
또한 본 개시는 가상 현실 시스템에서 컨텐트를 전송하는 장치에 있어서, 사용자 장치의 기능에 관한 파라미터들을 수신하고, 상기 수신한 파라미터 집합에 부합되는 컨텐트에 관한 관심 메타데이터를 전송하는 제어부와, 상기 관심 메타데이터를 기반으로, 상기 전송한 파라미터 집합에 부합되는 버전에 해당하는 컨텐트를 사용자의 시점(viewpoint)에 상응하도록 디스플레이될 뷰 영역에 해당하는 적어도 하나의 타일(tile) 단위로 인코딩하여 전송하는 부호화부를 포함한다.
도 1은 일반적인 VR 경험을 위한 프레임워크를 도시한 도면
도 2는 본 개시에 따른 VR 경험을 위한 프레임워크를 도시한 도면
도 3은 본 개시에 따른 VR 컨텐트의 종류들(content_dof와 degree_range)를 도시한 도면
도 4는 본 개시에 따른 메타데이터 집합을 결정하는 동작을 개략적으로 도시한 도면
도 5는 본 개시에 따른 메타데이터 집합 결정부(420) 내에서의 동작 플로우를 도시한 도면
도 6은 본 개시에 따라 메타데이터 집합을 결정하기 위한 장치들을 도시한 도면
도 7은 interest_metadata 필드 및 각각의 관심 메타데이터가 어떤 영역이나 포인트를 특정하는지에 따른 해당 관심 메타데이터를 나타낸 도면
도 8은 멀티 뷰포트 기반의 타일 전송을 나타낸 도면
도 9와 도 10은 POI 기반 타일 전송 동작을 도시한 도면
도 11과 도 12는 ROI 메타데이터 기반 타일 전송을 나타낸 도면
도 13은 이벤트 기반 타일 전송을 도시한 도면
도 14는 ROI 메타데이터 기반 뷰를 도시한 도면
도 15는 각각의 프레임에 대한 개별 POI 및 ROI로 구성된 관심 메타데이터 트랙을 도시한 도면
도 16은 동일한 360도 VR 컨텐트로부터 관심 메타데이터 뷰를 위해 서로 다른 ROI 트랙들을 사용하여 제한된 재생을 수행하는 예를 도시한 도면
도 17은 POI 메타데이터가 다중 뷰 및 카메라 적용을 지원하는 예를 도시한 도면
도 18은 동일 화면 내에서 복수의 VR 360도 카메라들 간에 POI ID를 동기화하는 예를 도시한 도면
도 19는 본 개시에 따른 메타데이터 집합을 결정하는 하나의 방법을 도시한 도면
도 20은 본 개시에 따른 메타데이터 집합을 결정하는 하나의 방법을 도시한 도면
도 21은 본 개시에 따른 컨텐스 서버의 장치 구성을 예시하는 도면
도 22는 본 개시에 따른 사용자 장치의 구성을 예시하는 도면
도 23은 본 개시에 따라 360도 컨텐츠를 처리하는 시스템의 구성을 나타낸 도면
이하, 첨부된 도면들을 참조하여 본 개시의 실시예를 상세하게 설명한다. 하기에서 본 개시를 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 개시에서의 기능을 고려하여 정의된 용어들로써 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 일반적인 VR 경험을 위한 프레임워크를 도시한 것이다.
도 1에 도시한 바와 같이, VR 컨텐트의 특성들로 인해, VR 재생을 위한 VR 장치들 및 컨텐트 버전은 다양할 수 있다. VR 장치들은 장치의 종류(가령, HMD, TV, 전화 등)에 따라 대략적으로 분류될 수 있으나, 동일한 카테고리에 있는 장치들도 서로 다른 재생 기능과 특징을 가질 수 있으며, 이로 인해 사용자는 동일한 카테고리에 있는 장치들을 통한 VR 경험에서도 차이를 느낄 수 있다. VR 컨텐트도, 재생을 위한 다양한 특징들(에를 들어, 180도 비디오, 360도 비디오, 비디오 매핑 기법, 상호동작 기능 등)을 가질 수 있다.
그런데 현재의 VR 시스템이나 프레임워크는 다양한 종류의 VR 장치들에 부합되는 VR 컨텐트 버전들에 대한 최적의 선택과 재생을 가능하게 하는 기술을 제공하지 못한다. 따라서 본 개시는 다양한 종류의 VR 장치 및 VR 컨텐트에 대한 메타데이터를 정의하고, 상기 정의된 메타데이터를 사용하여 각각의 VR 장치에 부합되는 컨텐트 버전을 인식, 선택, 인증, 전송 및 재생하는 방법 및 이를 위한 장치를 제공하고자 한다.
본 개시에 따른 방법 및 장치를 설명하기에 앞서, 본 명세서에서 사용되는 몇 가지 용어들에 대해 해석 가능한 의미의 예를 제시한다. 하지만, 아래 제시하는 해석 예로 한정되는 것은 아님을 주의하여야 한다.
영상은 동영상(video), 정지 영상(image) 등이 될 수 있으며, 영상 컨텐트는 동영상, 정지 영상 등은 물론 관련된 오디오, 자막 등을 포함하는 각종 멀티미디어 컨텐트를 포함할 수 있다.
VR 컨텐트는 상기 영상을 360도 영상, 3D 영상 등으로 제공하는 영상 컨텐트를 포함한다. 미디어 파일 포맷은 ISO(International Organization for Standardization) 기반 미디어 파일 포맷(ISOBMFF) 등과 같은 각종 미디어 관련 규격에 따른 미디어 파일 포맷 등이 될 수 있다. 360도 영상이란 스티칭 카메라 등에 의해 촬영되고 스티칭되는 영상으로서, 사용자가 위치 또는 오리엔테이션을 변경하는 경우에 360도 전체에 대한 뷰를 제공할 수 있는 영상이다.
투영(projection)은 360도 영상 등의 표현을 위한 구형 영상(spherical image)이 평면(planar surface) 상에 투영되는 처리 또는 그 처리 결과에 따른 영상 프레임을 의미한다.
맵핑(mapping)은 상기 투영에 따른 평면 상의 영상 데이터가 2D 평면에 매핑되는 처리 또는 그 처리 결과에 따른 영상 프레임을 의미한다.
전방향 미디어(omnidirectional media)는 예컨대, 사용자가 HMD를 이용하였을 때 사용자의 머리 움직임의 방향에 따라 또는 사용자의 뷰 포트(viewport)에 따라 렌더링될 수 있는 (동)영상(image or video) 및/또는 관련된 오디오를 포함한다.
뷰 포트는 FOV(Field Of View)로 칭해질 수 있으며, 특정 시점에 사용자에게 보여지는 영상의 영역(여기서 상기 영상의 영역은 상기 구형 영상의 영역 등이 될 수 있다.)을 의미한다.
VR 장치는 본 개시에서 설명되는 VR 컨텐트를 출력하는 장치로서, 디스플레이 하드웨어, 처리 유닛, 사용자 장치, UE, 이동국(Mobile Station; MS), 이동장비(Mobile Equipment; ME), 디바이스(device), 터미널(terminal) 등으로 지칭될 수도 있다.
VR 시스템은 VR 장치의 VR 컨텐트 소비를 지원하기 위한 제반 환경을 의미하며, VR 에코시스템(ecosystem)으로 호칭될 수도 있다. VR의 기본(fundamental)은 사용자를 모니터할 수 있는 시스템이다. 상기 시스템은 사용자가 컨텐트 디스플레이 디바이스(display device) 또는 처리 유닛(processing unit)에게 피드백 입력을 제공하도록 하는 일종의 제어기(controller)를 사용할 수 있게 한다. 상기 시스템은 피드백 입력에 상응하게 컨텐트를 조절할 수 있게 하며, 사용자와의 인터랙션을 가능하게 한다.
상기 시스템은 예를 들어 다음 표와 같은 대략적 구성(또는 기능)들 중 적어도 하나를 포함할 수 있다.
구성(또는 기능) 설명
디스플레이 하드웨어 디스플레이 디바이스 또는 처리 유닛. 예를 들어, HMD, 무선 VR, 모바일 VR, TVs, CAVEs(cave automatic virtual environments)
사용자 제어기 VR 시스템(디스플레이 하드웨어)에 피드백 입력을 제공하는 구성. 예를 들어, 주변장치(peripherals) 및 햅틱장치(haptics)
컨텐트 캡쳐 예를 들어, 카메라, 비디오 스티칭(video stitching; 여러 비디오의 연결) 장치
컨텐트 스튜디오 예를 들어, 게임, 라이브, 시네마, 뉴스 & 다큐멘터리 등
산업 애플리케이션 예를 들어, 교육, 헬스 케어, 부동산, 건축, 여행 등
프로덕션 툴 & 서비스 예를 들어, 3D 엔진, 전력 프로세싱
앱스토어(app stores) VR 미디어 컨텐트를 위한 앱 제공
제어기를 통한 사용자의 피드백 입력은, 1) 오리엔테이션 트래킹(orientation tracking) 및 2) 위치 트래킹(position tracking)으로 나뉠 수 있다. 오리엔테이션 트래킹은 제어기가 회전(rotation)(즉, 사용자 시점의 방향)을 트래킹하는 것으로서, 3 DOF를 갖는다. 위치 트래킹은 제어기가 이동(translation)(즉, 사용자의 이동)을 트래킹하는 것으로서 3 DOF를 갖는다. 따라서, 사용자가 VR 컨텐트를 경험할 때 가능한 최대 DOF는 6이다.
도 2는 본 개시에 따른 VR 경험을 위한 프레임워크를 도시한 것이다.
도 2를 참조하면, 다수의 VR 장치들은 각각의 재생 기능에 따라 HMD, TV, 태블릿(TAB), 개인 컴퓨터(PC) 등의 장치 기능 집합으로 분류될 수 있으며, 장치 기능 집합은 컨텐트의 최적 재생을 위한 최적 컨텐트 버전 및 이에 상응하는 컨텐트 메타데이터 집합에 대한 인식, 선택 및 인증에 사용될 수 있다. 컨텐트 서버(또는 컨텐트 미디어 개체)는 하나의 컨텐트에 대해 다수의 버전의 컨텐트들을 저장할 수 있으며, 컨텐트의 재생을 돕고 최적화하기 위한 다수의 컨텐트 메타데이터를 저장할 수 있다. 컨텐트의 재생을 위해, VR 장치는 최적 재생을 위한 최적 버전의 컨텐트 및 이에 대응하는 메타데이터 집합을 가질 수 있다. 컨텐트 재생을 위해, 소정 버전의 컨텐트 및 메타데이터 집합이 VR 장치로 전달되어야 하고, 해당 버전의 컨텐트가 어떻게 전송되는지에 대한 결정은 이하에서 설명하는 장치 기능 집합 및 컨텐트 메타데이터 집합의 정의 내에서 규정된 다수의 파라미터들에 기반한다.
먼저 VR 장치 기능을 나타내는 파라미터들을 정의한다.
VR 장치들은 예를 들어 HMD, TV, 태블릿, 모바일 장치, PC, 랩탑 등으로 구분될 수 있다. 이와 같이 VR 장치들은 기본 기능에 따라 분류되지만, 동일한 카테고리 안의 장치들이라도 재생 기능이 다를 수 있다. 예를 들어, 두 개의 HMD 장치들은 스크린 해상도, FOV(screen field of view), 상호 동작 기능, 가이드된 VR 기능 등에 대해 상이한 기능들을 가질 수 있다. 따라서 본 개시는 VR 장치의 종류에 따라 장치의 기능을 식별하는 대신에, 장치의 기능을 나타낼 수 있는 장치 기능 파라미터들의 집합을 새롭게 정의한다. 장치 기능 파라미터들의 집합은 호환 가능한 버전의 컨텐트 및 컨텐트 메타데이터를 요청하기 위해 사용되는 메타데이터들로 구성된다. 장치 기능 파라미터들의 종류는 다음과 같다.
1. DOF(degree of freedom)
서로 다른 장치들은 컨텐트 탐색을 위한 서로 다른 DOF를 지원할 수 있다. 예를 들어 가장 간단한 HMD들은 3 DOF를 지원할 수 있고, 이때 사용자는 360도 비디오의 다양한 각도를 뷰 위해 방위 트래킹(회전)을 탐색할 수 있으며, 게임 지향적인 HMD들은 최대 6 DOF를 지원할 수 있으며, 이동 트래킹뿐만 아니라 회전 트래킹에 대한 탐색도 가능할 수 있다. 이동 트래킹은 실제 위치 모션 트래킹이나, 탐색 입력 제어기와 같은 다른 수단을 통해 수행될 수 있다. 방위 및 모션 트래킹 이외에, 시선 트래킹, 핸드 트래킹, 액션 입력(마우스/버튼의 클릭 등)과 같은 상호 동작 기능들도 VR 컨텐트 사용을 위해 지시될 수 있다.
2. FOV(screen field of view)
VR 장치의 스크린 해상도 및 크기와 밀접하게, 스크린 FOV는 사용자에게 보여질 수 있는 뷰 각도를 나타낸다. 인간의 일반적인 수평 FOV는 대략 200도이며 그 중 120도는 입체적으로 중복이 되는 반면, 통상적인 HMD는 60도 터널 시야에 해당하는 90-120도의 시야각을 제공할 수 있다. HMD의 FOV 기능의 90-120도 범위는 사용자에게 보여지는 실제 VR 경험에 큰 변동을 일으킬 수 있는 범위이다. 사용자다 상이한 VR 장치들 상에서 동일한 각도를 볼 때, FOV에 따라 사용자가 특정 시간과 각도에서 보는 프레임된 영상은 상이할 수 있다. 따라서 컨텐트 메타데이터는 VR 장치의 FOV 특성에 잘 부합되어야 한다.
3. 스크린 및 코덱 기능
일반적으로 VR 장치가 소정 버전의 컨텐트를 수신할 때에는 VR 장치의 스크린 및 코덱 기능이 고려되어야 한다. 이때 시스템 구조에 따라, VR 장치들은 디폴트로 온전한 360도 비디오를 수신하여 디코딩한다. 따라서 VR 장치의 코덱 기능은 어떤 버전의 컨텐트를 수신할지를 결정하는데 있어서 중요하다. 그러나 소정 뷰들만이 전송되어 소정 시점에 VR 장치에서 렌더링되는 좀더 복잡한 시스템 구조에서는 호환성을 위해 코덱 및 해상도와 같은 스크린 기능을 모두 고려해야 한다. 또한 360도 비디오 전체가 수신되지만 부분 디코딩 기능이 특정되어 사용자의 현재 뷰만 디코딩하는 사용 케이스를 지원할 수 있어야 한다.
4. VR 컨텐트 매핑 함수 기능
VR 컨텐트는 360도 비디오가 인코딩되어 전송되기 전에 평면 비디오로 매핑될 필요가 있다. 또한 VR 장치는 VR 컨텐트가 수신되면, 평면 비디오를 360도 비디오로 매핑하는데 사용되는 매핑 기술을 지원해야 한다. VR 장치의 매핑 함수 기능은 적절한 버전의 컨텐트들 및 해당 컨텐트의 메타데이터를 선택하기 위한 매핑 함수가 VR 장치에 의해 지원되는지를 가리킨다.
5. 가이드된 뷰/멀티카메라의 VR 기능
앞서 기술한 바와 같이, 360도 VR 컨텐트에 있어서, 360도 비디오 전체가 사용자에 의해서만 통제될 때 컨텐트 제작자는 예술적인 의도를 거의 통제할 수없다. 이와 같이 자동화되거나 가이드된 뷰는 VR 장치(특히 TV 및 PC와 같은 비 HMD 장치)에 의해 구현될 수 있다. 또한, 장치의 DOF 기능에 따라, 사용자에게 정확한 VR 경험을 제공하기 위해 자동화 및/또는 가이드된 뷰 메타데이터가 필요할 수 있다. 따라서 다양한 종류의 가이드된 뷰 메타데이터가 컨텐트 파라미터 메타데이터들로 정의된다.
또한 VR 컨텐트는 동일 장면(scene) 내에서 여러 개의 360도 카메라(VR 멀티카메라)를 사용하여 생성될 수 있으며, 이 경우 VR 멀티카메라의 기능들은 VR 장치에 의해 지원될 수 있는 기능일 수 있다. 이때 다수의 360도 카메라들을 사용하여 화면 내의 다양한 위치에서 이동이 수행될 수 있다.
다음, 장치 기능 집합 메타데이터에 대해 설명한다.
위에서 서술한 VR 장치들의 장치 기능 파라미터들은 장치 기능 집합 내의 메타데이터로서 설명될 수 있다. 메타데이터의 신택스는 다음 표 2와 같다.
aligned (8) class DeviceCapabilitySet
unsigned int(8) device_dof;
unsigned int(16) screen_res_vert;
unsigned int(16) screen_res_hor;
unsigned int(16) screen_fov;
unsigned int(16) codec_support;
unsigned int(16) mapping_support;
unsigned int(16) guided_viewing;
device_dof는 제한된 뷰로 한정되는지, 아니면 3/6 DOF 트래킹을 위한 기능을 가지는지와 관계없이, 필드 값을 통해 정의된 대로 컨텐트를 탐색하기 위한 장치의 기능적인 능력을 나타내고 식별한다. device_dof의 필드 값에 따른 의미는 하기의 표 3과 같다. 필드 값의 의미 중 모션 입력 기능 없음은 (사용자 모션 입력 기능이 없는 TV들과 같은) 자동화되거나 가이드된 뷰/재생 메타데이터를 반드시 필요로 하지는 않는다. 3 DOF은 헤드 트래킹 기능만을 가진 기본 HMD 장치 등을 통해 방위(회전) 트래킹을 제공하는 장치 능력을 가리킨다. 모션 6도는 제어기를 통하거나, 어떤 입력 장치를 통한 사용자의 실질적 위치 트래킹을 이용하여 회전 및 이동 트래킹을 제공하는 장치 능력을 나타낸다. 또한 시선 트래킹, 핸드 트래킹 또는 어떤 상호동작 관련 장치 파라미터들과 같은 상호동작 가능성을 위해 예비 입력 필드 값들이 예비된다.
device_dof
0x00 예비됨
0x01 모션 입력 기능 없음
0x02 모션 3도 (회전)
0x03 모션 6도 (회전 및 이동)
0x04 - 0xFF 다른 예비된 입력들
screen_res_vert는 장치의 픽셀 단위 수직 스크린 해상도를 나타낸다.
screen_res_hor는 장치의 픽셀 단위 수평 스크린 해상도를 나타낸다.
screen_fov는 디폴트 360도 컨텐트를 디스플레이할 때의 장치의 FOV 능력을 나타낸다. 이 필드는 장치의 스크린에 대한 정확한 FOV 값을 도수(degrees)로 나타낸다. 통상적인 VR 장치는 90-120도 사이의 FOV를 제공한다.
codec_support는 장치의 코덱 해상도 지원 능력을 나타낸다. 정확한 해상도 표준이 AVC(Advanced Video Coding) 및 HEVC() 표준들에서 사전에 규정된다.
mapping_support는 장치의 매핑 지원 능력을 나타낸다. 각각의 매핑 방법 알고리즘에 대한 지원은 표 4에서 정의된 바와 같이 해당 비트 플래그(0: 지원되지 않음, 1: 지원됨)를 통해 지시된다. 매핑 방법들은 MPEG OMAF(Omnidirectional Media Application Format) 표준에서 정의된 것과 같이 컨텐트의 'geometry_type’ 필드에 기반한다.
매핑 요소 크기 내용
예비(reserved) 2 비트 -
구(sphere) (ERP) 1 비트 -
찌그러진 구(squished sphere) 1 비트 -
원통(cylinder) 1 비트 -
정다면체(platonic solid) 3 비트 정육면체(Cube)를 위한 1 비트, 정팔면체(octahedron)를 위한 1 비트, 정이십면체(icosahedrons)를 위한 1 비트
각뿔때(truncated pyramid) 1 비트 -
분할된 구(segmented sphere) 1 비트 -
직접적인 피쉬아이(direct fisheye) 1 비트 -
예비(reserved) 6 비트 미래의 매핑 종류를 위해 예비
guided_viewing은 표 5에 정의된 바와 같이 여러 종류의 가이드된/자동화된 뷰 메타데이터를 지원하는 장치 기능을 나타낸다.
가이드 요소 크기 내용
예비(reserved) 2 비트 -
POI 1 비트 -
ROI 1 비트 -
이벤트 1 비트 -
예비(reserved) 11 비트 미래의 가이드 요소 종류를 위해 예비
다음, 컨텐트 파라미터 메타데이터에 대해 설명한다.
VR 컨텐트에 대한 컨텐트 파라미터 메타데이터들은 기능 호환성 메타데이터 및 전송/재생 지원 메타데이터의 두 가지로 구분할 수 있다. 컨텐트 메타데이터 집합은 컨텐트의 제목에 고유한 것이 아니라 해당 컨텐트 제목의 특정 컨텐트 버전에 고유하다. 가령, 수신된 컨텐트 제목이 동일하더라도 다양한 메타데이터 집합들이 2 개의 서로 다른 VR 장치들로 전송될 수 있다.
기능 호환성 메타데이터는, VR 장치의 기능과 호환되는 VR 컨텐트 버전을 선택하는데 사용된다. 이러한 파라미터들을 특정하는 메타데이터가 없으면, 장치들은 호환되지 않는 버전의 컨텐트들을 수신할 수 있으며, 그에 따라 부정확한 VR 컨텐트를 재생할 수 있다. 예를 들어, 3 DOF의 HMD VR 장치가 6 DOF를 지원하는 버전의 컨텐트를 수신하게 될 수 있다. 따라서 VR 장치의 기능과 호환되는 VR 컨텐트 버전을 선택하기 위해서는 다음과 같은 기능 호환성 메타데이터가 필요하다.
1. DOF
컨텐트 버전들은 재생하도록 의도된 DOF에 따라 생성된다. 대다수의 VR 컨텐트는 3 DOF를 탐색할 수 있는 장치들 상에서의 재생에 맞춰진 360도 비디오들이다. 그러나 어떤 컨텐트는 3 DOF를 탐색할 수 없는 장치를 대상으로 할 수 있으며, 이 경우 비디오 뷰는 소정 관심 영역으로 한정될 수밖에 없다. 따라서 VR 컨텐트는 360도 미만의 비디오(가령, 180도 비디오)이거나 어떤 주어진 시점에 소정 시점만을 제공할 수도 있다. 한편, VR 컨텐트는 재생하도록 의되된 3 DOF를 넘는 것에 대해서도 생성될 수 있다. 예를 들어 6 DOF의 경우, 사용자는 컨텐트 안에서 자신의 위치를 탐색할 수 있을 것이다. 이러한 컨텐트는 한 화면 안에 다수의 VR 카메라들을 사용하여 생성될 수 있으며, 이 경우 사용자는 화면 안에서 자신의 위치를 바꾼 것에 상응하도록 카메라 뷰들을 변경할 수 있다. 또한, 위치 탐색이 가능한 컨텐트 환경을 생성하기 위해 컨텐트가 생성 도중 그래픽과 믹싱될 수 있다.
2. 컨텐트 해상도 및 부분 디코딩
컨텐트 해상도 버전은 대상 장치의 코덱 기능의 디코딩 능력에 부합해야 한다. 또한, 컨텐트에 의해 지원되는 부분 디코딩(예를 들어, HEVC 타일들을 이용한 부분 디코딩)도 메타데이터로 표시될 수 있다.
3. 컨텐트 매핑 투영
360도 VR 컨텐트는 인코딩 전에 ERP, 큐브, 피라미드 등과 같은 다양한 매핑 기법들을 이용하여 평면 비디오에 매핑될 수 있다. 컨텐트 매핑 투영 파라미터들은 대상 장치 상에서의 컨텐트의 정확한 렌더링에 필수적이다. 이러한 파라미터는 MPEG의 OMAF 표준 내의 'geometry_type’ 필드에 부합된다.
전송/재생 지원 메타데이터는, 기능 호환성 메타데이터를 고려하여 소정의 호환 가능한 버전의 컨텐트가 선택되었을 때 대상 장치 상에서의 최적의 VR 경험을 제공하기 위해 사용될 수 있다. 또한, 컨텐트 버전 및 이에 상응하는 이용 가능한 관심 메타데이터에 따라, 컨텐트 내의 특정 영역들을 명시하는 관심 메타데이터를 사용하여, 관심 메타데이터 기반의 컨텐트를 전송할 수 있다.
예를 들어, 360도 비디오 버전의 컨텐트가 회전 탐색 기능이 없는 TV 장치 상에서의 재생을 위해 선택되었다면, 올바른 재생 지원 메타데이터가 먼저 선택되어 사용자 장치로 보내져야 한다. 사용자 장치가 해당 재생 지원 메타데이터를 수신하였으면, 컨텐트 영역들을 포함하는 해당 타일들이 관심 메타데이터 룰 기반으로(타일된 컨텐트가) 전송될 수 있고, 이후에 가이드된/자동화된 VR 뷰 경험이 사용자 장치를 통해 제공될 수 있다. 이러한 가이드된 뷰 (타일된) 전송 및 경험과 관련하여, 하기와 같이 다양한 형태의 관심 메타데이터가 정의될 수 있다.
1. 매핑 투영 평면 구성
컨텐트에 사용된 매핑 투영 종류가 기능 호환성 메타데이터에 정의되어 있으나, 동일한 매핑 투영 방법을 사용해도, 결과적인 평면 비디오는 컨텐트의 품질 및 재생에 영향을 미치는 다양한 방식으로 구성될 수 있다. 이러한 평면 구성들은 각각의 매핑 방법에 대해 특정되며, MPEG OMAF와 같은 표준 사양에 미리 규정되어 있다.
2. 초기 프론트 포인트(Initial Front Point)
매핑에 있어서, 3D 기하학의 표면 디폴트 프론트 센터 포인트가 매핑되고 렌더링되는, 인코딩된 평면 영상에서 (x, y 좌표에서) 디폴트 초기초프론트 픽셀을 가리키기 위한 프론트 포인트 메타 데이터가 필요하다.
- 기하학 타입 표면 디폴트 센터 포인트들(Geometry type surface default front center points)
정의된 메타데이터를 통해 모든 장치들에 대해 3D 기하학들에 대해 평면 비디오의 일관된 매핑을 보증하기 위해, 각 기하학 타입을 위한 표면 디폴트 프론트 센터 포인트가 정의된다.
3D 공간에서 정의된, 표면 디폴트 센터 포인트는 포지티브 x 축과 기하학의 표면간에 교차 지점의 포인트이며, 포지티브 x 축의 방향은 기하학의 프론트 표면에 수직이다.
- 롤(Roll), 요(yaw), 피치(pitch)
본 개시에서 사용되는 용어인 롤, 요, 피치 각도는 OMAF에서와 같이 3개의 축에 따라 정의된다. X 축의 포지티브 방향은 소정 기하학을 위한 프론트 방향으로 정의되고, y 축은 x 축의 수직 방향이고 위로 향하며, y 축은 x 축과 y 축 모두에 직각이다.
3. 표면 거리 범위(SurfaceRangeCoverage)
다수의 어플리케이션에서 VR 컨텐트 비디오는 (flag entire_surface = 0로 지시되는 바와 같이)3D 기하학(geometry)의 전체 표면을 커버하지 못한다. 특히, 라이브(live) VR 컨텐트 비디오는 3D 기하학의 전체 표면 중 180도만을 커버할 수 있다. 이와 같이 컨텐트 비디오에 의해 기하학의 일부 범위만을 커버하는 경우에, 각도의 범위는 degree_range field에 의해 특정될 수 있다.
4. 배경 택스처 데이터(Background Texture Data)
VR 컨텐트는 다음과 같은 경우에 기하학을 오버레이하는데 사용배경 택스처 데이터를 포함할 수 있다.
1) 컨텐트 비디오가 3D 기하학의 전체 표면을 커버하지 못하는 경우: 배경 택스처 데이터는 컨텐트 비디오 데이터에 의해 커버되지 않는 표면의 영역들을 오버레이 하기 위해 사용될 수 있다.
2) 뷰포트 기반 또는 관심 메타데이터 기반의 타일 전송 메커니즘이 사용되는 경우: 사용자에 의한 빠른 모션 변화에 따라 뷰포트를 렌더링하기 위한 타일들을 리프레시 하고 전송하기 위한 충분한 시스템 딜레이가 있을 때, 배경 택스처 데이터는 표면의 영역들을 오버레이하는데 사용될 수 있다. 상기 두 가지 경우에 대해, 배경 택스처 데이터는 정적인 이미지들과, 인코딩된 I 프레임 또는 다른 트랙의 비디오 데이터를 포함할 수 있다.
5. 프레임 디폴트 뷰포트와 기하학 회전
매핑과 프로젝션을 위해 사용되는 기하학에 따르면, 특정 매핑 기하학의컨특성에 따라, 컨텐트 또는 서비스 제공자가 동적으로 360도 비디오 화면을 매핑할 것을 선택하는 경우가 있을 수 있다. 예를 들어, 기하학이 화면 품질과 왜곡을 토대로 한 방향에 대해 비대칭 특성을 가지는 경우, 360도 프래임 내에서의 중요한 사항은 기하학의 특정 지향에 매핑될 수 있다. 게다가 360도 비디오가 디코딩되고 렌더링될 때, 기하학 타입에 따라, 표면 디폴트 프론트 센터 포인트가 아닌 포인트가 프론트로서 사용되도록, 전체적인 기하학이 회전될 필요가 있을 수 있다.
프레임 디폴트 프론트 필드는 컨텐트 프레임별로(즉, 동적으로) (기하학의) 표면 디폴트 프론트 센터 포인트에 매핑되기 위해 사용될 인코딩된 화면에서의 다른 포인트를 특정한다. 기하학 회전 필드는 디폴트 지향(여기에서 표면 디폴트 프론트 센터 포인트가 프론트임) 에 대한 기하학을 회전하기 위한 양을 특정한다.
6. 가이드된 뷰/FOV 메타데이터
타일(tiled) 전송을 특정하고 장치들을 통해 가이드 되거나 자동화된 뷰 재생을 구현하는데 사용될 수 있는 다양한 종류의 메타데이터들이 있을 수 있다. 모든 종류의 관심 메타데이터는 정적이거나 프레임 혹은 화면 등에 대해 동적으로 특정될 수 있다.
가이드된 뷰/FOV 메타데이터는 POI(point of interest) 메타데이터, ROI(region of interest) 메타데이터, 이벤트 메타데이터를 포함할 수 있다.
POI 메타데이터는 360도 (또는 다른) 비디오 내 포인트가 POI 메타데이터에 의해 지시된다. 대상 VR 장치는 관심 메타데이터 타일 기반 전송 및/또는 포인트 기반 가이드되거나 자동화된 재생을 위해 이 메타데이터를 사용할 수 있다.
ROI 메타데이터는 360도 (또는 다른) 비디오 내 특정 영역이 명시되고, 관심 메타데이터 타일 기반 전송 및/또는 재생을 위해 사용될 수 있다. 가장 간단한 ROI 메타데이터는 구 표면 상의 한 영역을 ROI 영역으로 특정한다. ROI 메타데이터는 대상 장치에 의해 디스플레이 하도록 의도한 360도 컨텐트 비디오 내의 소정 영역을 특정한다. 이 ROI 영역은 특정 FOV 이거나 의도한 FOV보다 작거나 큰 영역일 수 있다. 다양한 ROI 메타데이터의 다양한 집합들이 다양한 영역 크기들 및 FOV 들에 대해 존재할 경우, ROI 영역이 대상 장치에 부합하도록 하기 위해 가장 근접한 집합을 선택해야 한다. 선택된 ROI 메타데이터 영역 크기나 FOV가 장치의 FOV에 정확히 부합되지 않으면, ROI 기반 재생 중에 FOV 보상이 필요하다. FOV 보상에 대해서는 추후에 상술한다.
이벤트 메타데이터는 특정 위치(360도 비디오 내의 한 포인트) 및 "이벤트 시간”을 가진 컨텐트 내의 이벤트 발생과, 관심 메타데이터 타일 기반 전송을 통해 비디오 타일들을 예측 및 수신하고, 컨텐트 내의 이벤트를 향해 사용자가 시선을 돌리도록 가이드하기 위해 대상 장치에 의해 사용될 수 있다.
이상에서 설명한 ROI, POI, 이벤트 및 상응하는 메타데이터에 대한 관심 메타데이터 개념들은 제작자의 예술적 의도를 포함하고 표현하는 종래의 컨텐트 및 360도 VR 컨텐트 간의 갭을 이어줄 수 있다. 이를 위해 본 개시는 컨텐트 송신장치에서 관심 메타데이터 기반 타일 전송을 수행하고, VR 장치에서는 송신장치에 의해 관심 메타데이터 기반 뷰를 수행한다. 관심 메타데이터는 관심 메타데이터에 의해 특정된 포인트들 및 영역들을 통해 타일 기반 전송에 사용될 수 있다. 또한 관심 메타데이터는 VR 장치들에 의해, 사용자에게 가이드된 뷰 경험을 제공하기 위해 사용될 수 있으며, 이때 ROI 및 POI 메타데이터는 재생 리스트들을 생성하고, 사용자가 소정 시점에 소정 뷰 포인트를 쉽게 선택할 수 있게 하는 데에도 사용될 수 있다.
그러나 본 개시는 ROI 및 POI 메타데이터 개념들의 적용 및 사용이 관심 메타데이터 기반 전송/뷰 단독으로만 국한되지 않으며, 뷰 종속 가변 ROI/POI 인코딩 및/또는 디코딩, 뷰 종속 ROI/POI 톤 매핑, 뷰 종속 ROI/POI 타일 버퍼 선택과 같은 뷰 종속 처리 지원을 위해 사용될 수 있다. 가령, 현재의 사용자의 뷰포트가 소정 POI를 포함하는 경우, 이벤트 트리거를 위한 결정을 지원할 수 있다.
컨텐트 메타데이터 집합의 신택스는 표 6과 같다.
aligned (8) class ContentMetadataSet
고정 메타데이터(컨텐트 샘플마다 변경 가능):
unsigned int(8) content_dof;
if (content_dof == 2) {
unsigned int(8) no_of_viewports;
for (i=1; i<= no_of_viewports; i++ {
unsigned int(16) viewport_id;
unsigned int(16) left_horizontal_offset;
unsigned int(16) top_vertical_offset;
unsigned int(16) viewport_width;
unsigned int(16) viewport_height;
{
if (content_dof == 3) {
if (!is_default_front) {
unsigned int(16) initial_front_x;
unsigned int(16) initial_front_y;
}

unsigned int(1) entire_surface;
if (!entire_surface) {
unsigned int(8) degree_range;
if (degree_range == 3) {
unsigned int(8) hor_range;
unsigned int(8) vert_range;
}
}
unsigned int(16) content_res_vert;
unsigned int(16) content_res_hor;
unsigned int(16) mapping_projection;
for (i=1; i<= mapping_projection; i++) {
unsigned int (8) planar_arrangement;
}
unsigned int(1) background;

if (background == 1) {
unsigned int(8) background_type;
unsigned int(16) background_pitch_start;
unsigned int(16) background_yaw_start;
unsigned int(16) background_pitch_end;
unsigned int(16) background_yaw_end;
}


동적 메타데이터(샘플/프레임마다 변경 가능):
unsigned int(1) frame_default_front;
unsigned int(1) geometry_rotation;

if (frame_default_front) {
unsigned int(16) frame_default_front_x;
unsigned int(16) frame_default_front_y;
}

if (geomtry_rotation) {
unsigned int(16) geometry_rotation_pitch;
unsigned int(16) geometry_rotation_front_yaw;
unsigned int(16) geometry_rotation_front_roll;
}

unsigned int(16) interest_metadata
if (interest_metadata == 1){
unsigned int(8) no_of_viewports;
for (i=1; i<= no_of_viewports; i++ {
unsigned int(16) viewport_id;
unsigned int(16) left_horizontal_offset;
unsigned int(16) top_vertical_offset;
unsigned int(16) viewport_width;
unsigned int(16) viewport_height;
} else if (interest_metadata == 2){
unsigned int(8) no_of_POI;
for (i=1; i<= no_of_POI; i++ {
unsigned int(16) POI_id;
signed int(16) POI_yaw;
signed int(16) POI_pitch;
} else if (interest_metadata == 3){
unsigned int(8) no_of_ROI;
for (i=1; i<= no_of_ROI; i++ {
unsigned int(16) content_fov;
unsigned int(16) ROI_id;
signed int(16) ROI_pitch_start;
signed int(16) ROI_yaw_start;
signed int(16) ROI_pitch_end;
signed int(16) ROI_yaw_end;
} else if (interest_metadata == 4){
unsigned int(8) no_of_events;
for (i=1; i<= no_of_events; i++ {
unsigned(16) event_id;
signed(16) event_pitch;
signed(16) event_yaw;
unsigned int(16) time_to_event;
}
content_dof는 재생이 의도된 버전의 컨텐트 안에 구현되는 DOF를 나타낸다.
content_dof의 값에 따른 의미는 표 7과 같다. content_dof=1일 때, 컨텐트는 단 단일 뷰포트만을 가진 2D 비디오이다. content_dof=2일 때, 컨텐트는 다수의 미리 정의된 뷰포트(360도 비디오에 의해 선택되거나 그와 유사한 것)로 구성되는 2D 비디오이다.
content_dof
0x00 예비됨
0x01 단일 뷰포트
0x02 멀티 뷰포트들
0x03 모션 3도(회전)
0x04 모션 6도(회전 및 이동)
0x05-0xFF 다른 예비된 입력들
no_of_viewports는 content_dof = 2일 때 컨텐트 내 멀티 뷰포트들의 개수를 나타낸다.
viewport_id는 특정된 해당 뷰포트의 아이디(ID)를 나타낸다.
left_horizontal_offset, top_vertical_offset, viewport_width, viewport_height는 멀티 뷰포트들의 위치 및 크기를 나타내는 정수값들이다. left_horizontal_offset 및 top_vertical_offset은 기본 영역과 관련하여 대응하는 뷰포트의 상부 좌측 코너의 수평 및 수직 좌표들을 각각 휘도 샘플들을 통해 나타낸다. viewport_width 및 viewport_height는 해당 뷰포트의 폭과 높이를 각각 휘도 샘플들을 통해 나타낸다.
is_default_front는, 해당 필드 값이 0이면 initial_front_x와 initial_front_y가 존재하고, 해당 필드 값이 1이면 initial_front_x와 initial_front_y가 존재하지 않음을 나타낸다.
initial_front_x와 initial_front_y는, 3D 기하학의 표면 디폴트 프론트 센터 포인트가 매핑되고 렌더링되는, 각각 인코딩된 영상에서 포인트의 x 좌표와 y 좌표를 나타낸다.
entire_surface는 content_dof = 3 (모션 3도의 컨텐트)의 경우에 비디오가 기하학의 전체 볼륨을 커버하는지를 나타낸다. 이 필드 값이 1이면, 기하학의 전체 표면(360도)이 참조된 트랙에서 비디오를 가지고 렌더링될 수 있다. 이 필드 값이 0이면, 현재 트랙이 아닌 다른 수단에 의해 기하학의 몇몇 영역의 택스처가 제공될 수 있다.
degree_range는 표 8에 따라, content_dof = 3(모션 3도의 컨텐트)일 때 컨텐트의 커버리지 정도를 나타낸다. degree_range는 entire_suirface = 0일 때 참조된 트랙 내의 비디오를 가지고 렌더링 될 컨텐트의 (기하학 표면의) 커버리지 정도를 나타낸다.
degree_range
0x00 예비(reserved)
0x01 180도
0x02 270도
0x03 제한된 뷰(restricted view)
0x04 - 0xFF 다른 예비된 범위들
hor_range는 필드 degree_range = 3일 때(즉, 컨텐트가 제한된 뷰를 가질 때) 컨텐트의 수평 정도의 범위를 도수(degrees)로 나타낸다.
vert_range는 필드 degree_range = 3일 때(즉, 컨텐트가 제한된 뷰를 가질 때) 컨텐트의 수직 정도의 범위를 도수(degrees)로 나타낸다.
content_res_vert는 컨텐트의 픽셀 단위 수직 스크린 해상도를 나타낸다.
content_res_hor는 컨텐트의 픽셀 단위 수평 스크린 해상도를 나타낸다.
mapping_projection는 컨텐트 버전에 사용되는 매핑 투영 종류를 나타낸다. 이 필드는 표 9와 같이 MPEG OMAF 표준에 정의된 geometry_type 필드에 상응한다.
mapping_projection
0x00 예비(reserved)
0x01 구(sphere) (ERP)
0x02 찌그러진 구(squished sphere)
0x03 원통(cylinder)
0x04 정다면체(platonic solid)
0x05 각뿔때(truncated pyramid)
0x06 분할된 구(segmented sphere)
0x07 직접적인 피쉬아이(direct fisheye)
0x08-0xFF 예비(reserved)
planar_arrangement는 특정 매핑 투영을 위해 사용되는 평면 구성을 나타낸다. 예컨대 mapping_projection == 4인 경우, planar_arrangement 필드는 평면 정다면체 표면들이 인코딩된 평면 비디오 안에서 어떻게 구성되는지를 나타낸다.
background는 현재 제공되는 트랙에 있는 비디오 이외에 배경 택스처 데이터가 있는지를 나타낸다.이 필드 값이 1이면 배경 택스처 매핑 타입이 배경 타입과 배경 영역에 의한 해당 영역 위치에 의해 특정된다. background_type는 현재 제공되는 트랙에 있는 비디오가 아닌 배경을 위한 택스처 데이터 타입을 지시한다.
background_ type
x00 예비(Reserved)
x01 정적 이미지(Static image)
x02 I 프레임(I-frame)
x03 다른 트랙 비디오(Other track video)
x04-0xFF 예비(Reserved)
background_pitch_start/end와 background_yaw_start/end는 각각 배경 택스처 데이터의 특정 영역의 시작과 끝 피치와 요 각도를 나타낸다.
frame_default_front는, 이 필드 값이 0이면 소정 샘플 또는 프레임에 대한 frame_default_front_x와 frame_default_front_y가 존재함을 나타내고, 이 필드 값이 1이면 소정 샘플 또는 프레임에 대한 frame_default_front_x와 frame_default_front_y가 존재하지 않음을 나타낸다.
geometry_rotation는, 이 필드 값이 0이면 소정 샘플 또는 프레임에 대한 geometry_rotation_pitch, geometry_rotation_yaw, geometry_rotation_roll 이 존재함을 나타내고, 이 필드 값이 1이면 소정 샘플 또는 프레임에 대한 geometry_rotation_pitch, geometry_rotation_yaw, geometry_rotation_roll 이 존재하지 않음을 나타낸다.
planar_default_front_x, y는 각각 3D 기하학의 표면 디폴트 프론트 센터 포인트가 매핑되고 렌더링되는 평면 인코딩 픽처 프레임에서의 포인트의 x 좌표와 y 좌표를 나타낸다.
geometry_rotation_ pitch, yaw, roll는 디폴트 지향(표면 디폴트 프론트 센터가 프론트임)에 관한, 3D 기하학이 회전되는 전체 회전 각도를 나타낸다.
interest_metadata는 표 11과 같이 컨텐트 메타데이터 집합에 포함된 관심 메타데이터의 종류를 나타낸다.
interest_metadata
0x00 예비(reserved)
0x01 멀티 뷰포트
0x02 POI
0x03 ROI
0x04 이벤트
0x05-0xFF 예비(reserved)
no_of_viewports, viewport_id, left_horizontal_offset, top_vertical_offset, viewport_width, viewport_height는 기능 호환성 메타데이터에 해당되며 멀티 뷰포트 재생에 필요하다.
POI_id, yaw, pitch는 소정 샘플/프레임에 대한 POI 메타데이터에 의해 지시된 관심 포인트의 아이디, 요(yaw) 및 피치(pitch)를 나타낸다.
content_fov는 interest_metadata=2(즉, ROI 메타데이터)일 때 컨텐트 메타데이터 집합에서 interest_metadata가 특정하는 디폴트 FOV를 나타낸다. 값에 따른 FOV는 표 12와 같다.
content_fov
0x00 예비됨
0x01 80
0x02 90
0x03 95
0x04 100
0x05 105
0x06 110
0x07 120
0x08-0xFF 예비(reserved)
ROI_id, yaw, pitch, start, end는 각각 소정 샘플/프레임에 대한 ROI 메타데이터에 의해 지시된 관심 영역의 ID, z축 기준의 회전각을 나타내는 요(yaw) 및 y축 기준의 회전각을 나타내는 피치(pitch), 시작, 끝을 나타낸다.
event_id, yaw, pitch는 소정 샘플/프레임에 대한 이벤트 메타데이터에 의해 지시된 이벤트의 ID, 요(yaw) 및 피치(pitch)를 나타낸다.
time_to_event는 이벤트 시작까지 남은 시간을 밀리초 단위로 나타낸다.
다음, 본 개시에 따른 메타데이터를 이용한 시스템의 동작에 대해 상술한다.
먼저, 본 개시에 따른 시스템의 동작을 개략적으로 설명하면, 메타데이터 집합을 결정하고, 관심 메타데이터 기반(타일)으로 컨텐트를 전송하며, 최종적으로 VR 장치에서는 관심 메타데이터 기반으로 VR 컨텐트를 디스플레이를 한다.
메타데이터 집합 결정
메타데이터 집합 결정은 VR 장치와 관련된 버전의 컨텐트 및 이에 상응하는 컨텐트 메타데이터를 결정하고 선택하는 절차이다. 결정된 버전의 컨텐트 및 컨텐트 메타데이터가 장치로 전송되는 방법은 관심 메타데이터 기반 (타일) 전송에 좌우된다.
도 3은 본 개시에 따른 VR 컨텐트의 종류들(content_dof와 degree_range)를 도시한 것이다. (a)는 뷰포트가 하나인 경우를 나타내고, (b)는 뷰포트가 여러 개(도 3에서는 4개)인 경우를 나타낸다. (c)는 X(수평), Y(수직), Z(깊이)를 움직일 수 있는 3 DOF를 나타내고, (c)는 가상 현실 시스템에서 사용되는 모든 동작 요소, 즉 X(수평), Y(수직), Z(깊이), 피치(pitch), 요(yaw), 롤(roll)을 움직일 수 있는 6 DOF을 나타낸다. 도 3에서 굵은 선들은 주어진 시점 및 뷰포트에서 사용자가 시청할 수 있는 영역을 나타낸다.
도 4는 본 개시에 따른 메타데이터 집합을 결정하는 동작을 개략적으로 도시한 것이다.
본 개시에 따른 장치는 메타데이터 집합을 결정하기 위한 메타데이터 집합 결정부(420)를 구비할 수 있으며, 메타데이터 집합 결정부(420)는 장치 기능 집합 메타데이터(410)를 입력받아서 사용자의 대상 장치와 재생 호환성이 있는 버전의 컨텐트(430) 및 해당 버전의 컨텐트가 대상 장치에서 재생되는데 필요한/유용한 컨텐트 메타데이터(440)를 결정하여 출력한다.
메타데이터 집합 결정부(420)는 컨텐트 버전(430) 및 관련 컨텐트 메타데이터(440)를 선택하기 위해 장치 기능 집합 메타데이터(410)를 입력받는다. 메타데이터 집합 결정부(420)는 사용자의 VR 장치가 호환 가능한 버전의 컨텐트와 컨텐트 메타데이터를 결정 및 요청하는 경우에는 사용자의 VR 장치 내에 존재할 수도 있고, 컨텐트 서버(450)와 같은 외부 개체 내에 존재할 수 있다. 후자의 경우에는 개체 간에 협의 세션이 필요할 수 있다.
도 5는 본 개시에 따른 메타데이터 집합 결정부(420) 내에서의 동작 플로우를 도시한 것이다.
도 5를 참조하면, 메타데이터 집합 결정부(420)는 해당 장치에 대한 장치 기능 메타데이터(421)를 입력받아서 이를 토대로 호환 가능한 버전의 컨텐트를 선택한다(424). 그런 다음 메타데이터 집합 결정부(420)는 장치 기능 메타데이터(421)와 선택된 버전의 컨텐트(424)을 이용하여 컨텐트 기능 호환성 메타데이터를 결정한다(422). 그리고 결정된 컨텐트 기능 호환성 메타데이터(422)를 토대로 컨텐트 재생 지원 메타데이터를 결정하고(423), 선택된 버전의 컨텐트(424)과 결정된 컨텐트 재생 지원 메타데이터(423)를 토대로 사용자 맞춤 컨텐트 메타데이터 집합을 결정(425)하여 사용자 장치(500)로 전달한다.
사용자 장치(500)는 수신된 컨텐트 메타데이터 집합(425) 내의 재생 지원 메타데이터(423)를 사용하여 해당 버전의 컨텐트에 대한 관련 전송 메커니즘(예를 들어, 관심 메타데이터 기반 (타일) 전송)을 요청할 수 있고, 또한 최적 버전의 컨텐트(예를 들어, 관심 메타데이터 기반 뷰)을 재생할 수 있다.
또한 메타데이터 집합 결정부(420)는 각각의 장치 기능 집합 파라미터에 대해, 관련 버전의 컨텐트(424) 및 컨텐트 재생 지원 메타데이터(423)를 선택하기 위한 결정을 할 수 있다.
표 13은 컨텐트 버전 선택과 관심 메타데이터 선택을 위한 DOF 결정을 나타낸 것으로, device_dof 및 content_dof 필드들, 그리고 특정 interest_metadata가 이용 가능한지 불가한지 여부에 따라, 메타데이터 집합 결정부에 의해 가능한 결정 결과들을 나타낸 것이다.
Figure pat00001
표 13에서 풀 재생(Full playback)은 컨텐트의 DOF 버전과 관련하여 참조되고(가령, 멀티 뷰포트 컨텐트의 풀 재생은 여러 뷰포트들 사이에서 장치가 선택하는 기능임), 제한된 재생(Restricted playback)은 interest_metadata를 사용한 컨텐트의 제한된 뷰 재생을 나타낸다.
DOF 결정을 위해, 메타데이터 집합 결정부(420)는 device_dof 필드를 확인하고, “풀 재생”에 대해 동일하거나 보다 낮은 값에 해당하는 content_dof 필드를 가지는 버전의 컨텐트를 선택한다. 가령, device_dof = 3이면, 이용 가능성에 따라 content_dof <= 3을 선택할 수 있다. 즉, device_dof => content_dof인 버전의 컨텐트를 선택한다. 만약 device_dof < content_dof이면, 요구되는 interest_metadata가 존재하는 조건에서만 재생이 가능하다.
또한 코덱 해상도 호환성 결정을 위해, 메타데이터 집합 결정부(420)는 codec_support 필드를 확인하고, 코덱에 의해 디코딩될 수 있는 content_res_vert/hor를 가진 버전의 컨텐트를 선택한다.
또한 매핑 호환성 결정을 위해, 메타데이터 집합 결정부(420)는 mapping_support 필드를 확인하고, mapping_support에 의해 지시되는 지원되는 매핑 투영들 중 어느 하나에 상응하는 mapping_projection 필드를 가진 버전의 컨텐트를 선택한다.
또한 관심 메타데이터 결정을 위해, 메타데이터 집합 결정부(420)는 먼저 device_dof 필드를 확인한다. device_dof=1인 경우 guided_viewing 필드 내 가이드 요소가 전송된 해당 interest_metadata를 통해 식별된다. device_dof = 1이고 어떤 가이드 요소도 지원되지 않는 경우, VR 장치는 어떤 VR 컨텐트도 재생할 수 없다. device_dof = 2 또는 3인 경우, 지원되는 interest_metadata가 전송될 수 있다. 따라서, guided_viewing 필드 및 이용 가능한 interest_metadata에 따라, device_dof = 1을 가진 VR 장치가 VR 컨텐트의 풀 재생(단일 뷰포트, 멀티 뷰포트) 또는 제한된 재생을 지원할 수 있다.
ROI 관심 메타데이터에 있어서, 정확한 FOV는 장치의 screen_fov 및 content_fov 필드들에 따라 다를 수 있다. 장치에 가장 근접한 FOV를 가진 interest_metadata를 선택하고 보상하기 위한 동작들은 후술될 것이다.
관심 메타데이터는 소정 버전의 컨텐트에 특정될 수 있고, 컨텐트/컨텐트 메타데이터 생성 중 관심 메타데이터의 이용 가능성 및 적용에 따라 두 가지 이상의 컨텐트 버전에 적용될 수 있다.
도 6은 본 개시에 따라 메타데이터 집합을 결정하기 위한 장치들을 도시한 것이다.
도 6을 참조하면, VR 최적화 장치(610)는 관련 버전의 컨텐트 및 컨텐트 메타데이터 집합을 선택한다. VR 최적화 장치(610)는 메타데이터 집합 결정부(611), 장치 기능 집합 분석부(612), 컨텐트 메타데이터 분석부(613), 컨텐트 메타데이터 집합 작성부(614)를 포함하도록 구성될 수 있다. VR 최적화 장치(610)는 사용자 장치(620) 또는 컨텐트/메타데이터 서버(630)에 포함되거나 별도의 장치로 구성될 수 있다.
장치 기능 집합 분석부(612)는 사용자 장치(620)로부터 획득한 장치 기능 집합 내 성분들을 분석 및 식별한다. 메타데이터 집합 결정부(611)는 장치 기능 집합 분석부(612) 및 컨텐트 메타데이터 분석부(613)로부터의 출력들을 입력받아서 적합한 메타데이터 집합을 결정하여 출력한다. 컨텐트 메타데이터 분석부(613)는 컨텐트 서버(630)로부터 컨텐트 메타데이터를 획득하고 메타데이터 집합 결정부(611)로의 입력을 분석하고 메타데이터 집합 결정부(611)와의 상호동작을 처리한다. 컨텐트 메타데이터 집합 작성부(614)는 메타데이터 집합 결정부(611)에 의해 결정되고 메타데이터 서버(630)로부터 컨텐트 메타데이터 분석부(613)를 통해 제공되는 특정 메타데이터를 작성한다.
사용자 장치(620)는 장치 기능부(621)를 구비하며, 장치 기능부(621)는 사용자 장치(620)의 기능들을 분석하고, 장치 기능 집합을 생성 및 전송할 수 있다.
관심 메타데이터 기반 (타일) 전송
메타데이터 집합 결정부에서 컨텐트 버전 및 컨텐트 메타데이터 집합이 결정되면, 결정된 버전의 컨텐트를 컨텐트 메타데이터에 기반한 여러 가지 방법을 통하여 사용자 장치로 전달될 수 있다. 따라서, 컨텐트 interest_metadata는 이하에서 설명되는 컨텐트 전달 및 컨텐트 재생/뷰 모두에 대해 사용될 수 있다.
표 14는 관심 메타데이터의 종류를 나타낸 것이다.
Figure pat00002
상기 표 14를 참조하면, 멀티 뷰포트 관심 메타데이터는 멀티 뷰포트 컨텐트에 대해서만 적용될 수 있는 반면, POI, ROI, 및 이벤트 관심 메타데이터는 3 DOF 및 6 DOF 컨텐트에 모두 적용될 수 있다.
도 7은 interest_metadata 필드 및 각각의 관심 메타데이터가 어떤 영역이나 포인트를 특정하는지에 따른 해당 관심 메타데이터를 나타낸 것이다.
도 7을 참조하면, (a)는 interest_metadata가 멀티 뷰포트인 경우를 나타내며, viewport_id를 이용하여 가이드된 뷰포트의 아이디와 위치를 특정할 수 있다. (b)는 interest_metadata가 POI인 경우를 나타내며, POI_id, POI_yaw, POI_pitch를 이용하여 360도 비디오 공간에 있는 특정 포인트를 특정할 수 있다. (c)는 interest_metadata가 ROI인 경우를 나타내며, ROI_id, ROI_pitch_start, ROI_yaw_start, ROI_pitch_end, ROI_yaw_end를 이용하여 360도 비디오 공간 내의 정확한 뷰포트를 특정할 수 있다. (d)는 interest_metadata가 이벤트인 경우를 나타내며, event_id, event_yaw, event_pitch, event_to_event를 이용하여 컨텐트 내에서 앞으로 발생할 이벤트의 위치와 시간을 특정할 수 있다.
도 8은 멀티 뷰포트 기반의 타일 전송을 나타낸 도면이다.
멀티 뷰포트 관심 메타데이터는 멀티 뷰포트 컨텐트 안에서 각각의 뷰포트의 정확한 위치, 크기 및 id를 특정한다. 이때 관심 메타데이터를 통해 특정 뷰포트를 선택함으로써 해당 타일만 요청하는 것이 가능하다. 각각의 뷰포트들은 개별 타일들로서 인코딩되므로, 멀티 뷰포트 기반 타일 전송을 위해, 선택된/보여진 뷰포트들에 상응하는 타일들을 선택적으로 전송함으로써 대역폭을 아낄 수 있다. 도 8은 (a)에서 멀티 뷰포트 컨텐트가 뷰포트에 대응하는 4 개의 타일들 안에 인코딩되었음을 보여주며, (b)에서 top_left_viewport_interest metadata를 통해 좌측 상단 타일을 선택하고, (c)에서 상기 선택된 타일/뷰포트를 전송 및 사용자 장치에서 렌더링하는 것을 도시하였다. 이와 같이 함으로써 사용자 장치는 정확한 뷰포트(들)을 재생할 수 있다.
한편, POI 메타데이터는 사람, 또는 객체, 또는 다른 관심사와 같이 (컨텐트 생성자, 제공자, 또는 사용자들에 의해 만들어진) POI들에 해당하는 VR 컨텐트 비디오 내의 포인트들을 특정한다. 메타데이터에 의해 특정된 POI들을 기반으로 타일 전송을 수행할 수 있다.
도 9는 POI 기반 타일 전송 동작을 도시한 것으로, 주어진 프레임에 대한 POI 메타데이터 내에 오직 하나의 관심 포인트(POI)만 있는 경우의 POI 기반 타일 전송의 동작을 보여준다.
(a)는 하나의 POI interest_metadata를 가지는 12개의 타일 내에 인코딩 된 360도 컨텐트를 나타내며, (b)는 POI 메타데이터와 장치 또는 컨텐트의 FOV 메타데이터(device screen_fov 또는 content_fov)를 이용하여, POI를 둘러싼 뷰포트를 계산하는 것을 나타낸다. (c)는 POI를 포함하는 뷰포트를 렌더링 할 수 있도록 하기 위해 전송을 위해 필요한 타일의 개수를 확인함(도 9에서는 4개의 타일이 필요함)을 나타내고, (d)는 POI를 포함하는 뷰포트의 재생을 위하여 (c)에서 확인된 타일들을 전송 및 사용자 장치에서 렌더링함을 나타낸다.
도 10은 POI 기반 타일 전송 동작을 도시한 것으로, 주어진 프레임에 대한 관심 메타데이터 내에 두 개의 POI가 있는 경우의 POI 기반 타일 전송의 기본 동작을 보여준다.
도 10에서는 두 개의 POI 각각에 대해 도 9의 (a), (b), (c)와 동일한 절차가 수행되고 사용자 장치로 전달될 수 있다. 사용자 장치에서는 전달된 두 개의 POI 중 현재 뷰의 POI에 해당하는 뷰포트만을 렌더링 하고(d) 나머지 POI에 해당하는 뷰포트는 필요한 경우(사용자가 POI들 상에서, 그리고 그 주변에서 선택/탐색할 때)에 빠른 렌더링을 위해 미리 준비해 둔다(e).
POI 기반 타일 전송이 모션 기능이 없는(device_dof=1인) 장치로 컨텐트를 전송하는데 사용되는 경우, 식별 및 전송된 타일들은 제한된 재생을 위해 충분하다. 그러나 모션 기능이 있는(device_dof=2, 3인) 장치들에 대해, 사용자가 타일들이 전달되지 않은 뷰에 대한 뷰포트를 탐색하면, 탐색된 뷰포트를 위한 타일들이 곧바로(약간의 지연을 가지고) 전송되거나, 타일들이 요청 및 전송되는 동안 백그라운드 저 해상도 뷰/백그라운드 고정 영상이 디스플레이될 수 있다.
한편, ROI 메타데이터는 소정 지역에서 발생하는 동작들이나 컨텐트 특정 객체들에 해당하는 VR 컨텐트 비디오 내의 정확한 영역을 특정한다. ROI의 영역 크기는 평균 뷰포트/장치의 FOV들보다 크거나, 장치의 FOV들을 목표로 하거나, 평균 뷰포트/장치의 FOV들보다 작을 수 있다.
ROI들이 장치 FOV의 뷰포트들(컨텐트 제작자의 컷 뷰포트, 또는 다른 이전 사용자의 뷰포트)를 목표로 할 경우에는 ROI들의 크기가 장치 FOV들의 크기에 부합되기 때문에, ROI 메타데이터를 사용하여 360도 VR 컨텐트에 대한 제작자의 특정한 예술적 의도를 장치를 통해 사용자에게 전달할 수 있다. 또한 ROI의 크기와 무관하게, 모든 영역에 대해 ROI 기반 타일 전송을 할 수도 있다.
도 11은 ROI 메타데이터 기반 타일 전송을 나타낸 것으로, 주어진 프레임에 대해 관심 메타데이터 안에 하나의 ROI가 존재할 때 ROI 기반 타일 전송을 도시한 것이다. 이때 특정 ROI 크기는 사용자 장치의 뷰포트의 크기에 부합한다.
도 11을 참조하면, (a)는 ROI 관심 메타데이터를 가지며 12개의 타일에 인코딩 된 360도 컨텐트를 나타내며, (b)는 ROI 렌더링을 위해 전송에 필요한 4개의 타일을 확인하는 것을 나타내며, (c)는 ROI 재생을 위해 확인된 타일을 전송 및 렌더링함을 나타낸다.
도 12는 관심 영역(ROI) 메타데이터 기반 타일 전송을 나타낸 것으로, 주어진 프레임 내 다수(도 12에서는 두 개)의 ROI가 존재하는 경우의 ROI 기반 타일 전송을 도시한 것이다. 이때 특정 ROI 크기들은 사용자 장치의 뷰포트의 크기에 부합한다.
도 12를 참조하면, (a)는 2개의 ROI 관심 메타데이터를 가지며 12개의 타일에 인코딩 된 360도 컨텐트를 나타내며, (b)는 2개의 ROI 렌더링을 위해 전송에 필요한 7개의 타일을 확인하는 것을 나타내며, (c)와 (d)는 ROI 재생을 위해 확인된 타일을 전송 및 렌더링함을 나타낸다. 사용자 장치에서는 전달된 두 개의 ROI 중 현재 뷰의 ROI에 해당하는 뷰포트만을 렌더링 하고(c) 나머지 ROI에 해당하는 뷰포트는 필요한 경우(사용자가 ROI들 상에서, 그리고 그 주변에서 선택/탐색할 때)에 빠른 렌더링을 위해 미리 준비해 둔다(d).
ROI 메타데이터에 의해 특정된 영역의 크기에 따라, ROI의 재생에 있어 ROI content_fov 값과 장치의 screen_fov 값은 다를 수 있다. 이 경우, FOV 보상이 필요하다. FOV 보상을 동작들은 후술될 것이다.
POI 기반 타일 전송과 마찬가지로, ROI 기반 타일 전송이 모션 기능이 없는(device_dof=1) 장치로 컨텐트를 전송하는데 사용되는 경우에는 식별 및 전송된 타일들은 제한된 재생을 위해 충분하다. 이 경우 FOV 보상이 필요할 수는 있다. 그러나 모션 기능이 있는(device_dof=2, 3) 장치들에 대해 사용자가 타일들이 전달되지 않은 뷰에 대한 자신의 뷰포트를 탐색할 경우에는, 탐색된 뷰포트를 위한 타일들이 곧바로(약간의 지연을 가지고) 전송하거나, 타일들이 요청 및 전송되는 동안 백그라운드 저 해상도 뷰/백그라운드 고정 영상이 디스플레이될 수 있다.
한편, 이벤트 관심 메타데이터가 VR 컨텐트 비디오 공간 내의 특정 포인트 또는 특정 포인트에서 이벤트가 발생할 때까지의 시간(time_to_event 필드)으로 특정될 수 있다. time_to_event 필드들을 통해, 이벤트 기반 타일 전송 시 전송되어야 할 중요한 타일들이 이벤트 관심 메타데이터를 통해 미리 식별되고 사용자 장치로 전송될 수 있다.
도 13은 이벤트 기반 타일 전송을 도시한 것으로, 하나의 이벤트가 관심 메타데이터 내에 기술될 때 이벤트 기반 타일 전송을 도시한 것이다.
(a)는 사용자의 현재 뷰포트와 time_to_enet=2를 가지는 이벤트를 가지고, 12 타일 내에 인코딩 된 360도 컨텐트를 나타내며, (b)는 이벤트에 의해 지시된 시간 이전에 이벤트 메타데이터에 대응되는 타일(들)을 전송하기 위해 이벤트 메타데이터와 device_fov 또는 content_fov를 사용하는 것을 나타내며, (c)와 (d)는 time_to_event에 의해 기술된 바와 같이 이벤트 발생 전에 해당 타일(들)을 전송함을 나타낸다. 이와 같이 하면 이벤트 기반 타일 전송 및 렌더링에서의 딜레이를 없앨 수 있다.
이와 같이 이벤트 기반 타일 전송은 time_to_event 필드를 사용함으로써, 사용자 장치가 언제, 어떻게 이벤트에 대응하는 타일을 전송할지 여부에 대한 정보를 미리 획득함으로써 이벤트들이 지시하는 타일들을 이벤트가 발생되기 전에 미리 가져오는 것이 가능하다.
예를 들어, 시간 t에서 time_to_event=2인 이벤트가 이벤트 기반 타일 전송될 때, 사용자 장치는 사용자가 이벤트와 관련된 타일을 놓치지 않도록 미리 타일을 수신하기 원하는지 여부를 묻기 위한 팝업을 디스플레이하거나, 이벤트를 렌더링하기 위해 늦지 않게 타일을 미리 수신하도록 자동 결정하거나, 이벤트를 위한 타일이 이미 전송되어 있을 때의 경우, 사용자 장치는 가까운 시간 안에 해당 이벤트가 발생할 때 사용자가 해당 이벤트를 보도록 알리기 위한 (시각, 청각 등의) 알림을 사용자에게 제공할 수 있다.
이상에서는 interest_metadata 필드로 관심 메타데이터로서 멀티 뷰포트, POI, ROI 및 이벤트 기반의 타일 전송을 개별적으로 기술하였으나, 이들 중 선택된 둘 이상의 메타데이터를 기반으로 하는 타일 전송도 가능하다.
관심 메타데이터 기반 뷰/재생
VR 장치는 관심 메타데이터를 사용하여 관심 메타데이터 기반 뷰/재생을 수행한다. 관심 메타데이터 기반 뷰/재생은 풀 VR 비디오 컨텐트 데이터가 이미 이용가능할 때, 혹은 관심 메타데이터 기반 타일 전송에서와 같이 가이드된 영역들이 존재하는 비디오 컨텐트 데이터의 부분적 섹션만이 수신될 때 수행될 수 있다.
멀티 뷰포트 관심 메타데이터는 컨텐트 안에서 이용 가능한 각각의 뷰포트의 정확한 위치, 크기 및 id를 특정한다. VR 장치는 특정 뷰포트 ID(viewport_id)를 선택하여 해당 뷰포트를 디스플레이 할 수 있다.
POI 및 ROI 메타데이터 기반 뷰가 동일 VR 컨텐트(즉, 3 DOF의 360도 비디오 컨텐트)에 대해 존재할 수 있으며, 따라서 이하에서는 POI 및 ROI 메타데이터 기반 뷰를 함께 기술한다.
VR 뷰를 가이드하기 위해 POI 및 ROI 메타데이터가 다양한 방식으로 사용될 수 있다. 특히 TV와 같은 VR 장치 상에서의 VR 컨텐트의 가이드된 뷰를 위해, 사용자들이 TV 화면에 맞춤된 뷰포트를 용이하게 선택하도록 하기 위하여 POI 및 ROI 메타데이터를 사용할 수 있다.
VR 컨텐트 재생 중에, 디스플레이 할 뷰포트를 선택하기 위해 VR 장치는 가이드된 또는 제한된 재생 또는 풀 재생(가령 3 DOF 컨텐트의 뷰포트에 대한 사용자 수동 제어)을 입력으로 받을 수 있다. 가이드된 또는 제한된 재생을 위해 VR 장치는 POI 메타데이터 또는 ROI 메타데이터를 따를 수 있다. 또한 풀 재생을 위해 VR 장치는 POI/ROI 메타데이터로부터 가이드 지시를 받을 수도 있고 받지 않을 수도 있다.
도 14는 ROI 메타데이터 기반 뷰를 도시한 것으로, 모션 능력이 없는 장치(예를 들어, TV) 상에서 ROI 메타데이터를 가진 3 DOF 360도 컨텐트의 제한된 재생을 도시한 것이다.
도 14에서는 특정 프레임에서 3 개의 서로 다른 ROI들이 관심 메타데이터에 의해 특정되고 있으며, VR 장치는 이 중 하나의 ROI에 해당하는 뷰포트만을 제한적으로 재생한다.
제한적 재생을 위해 POI 메타데이터를 따르는 경우, POI 메타데이터는 뷰포트에서의 한 포인트만을 특정하므로, VR 장치는 메타데이터 내의 FOV 필드들을 사용해 POI 메타데이터에 기반하는 뷰포트를 디스플레이할 수 있다. 이때 디스플레이 할 뷰포트는 장치나 컨텐트 FOV 메타데이터(evice screen_fov 또는 content_fov)를 이용하여 계산할 수 있다.
제한적 재생을 위해 ROI 메타데이터를 따르는 경우, ROI 메타데이터에 의해 특정된 영역들은 장치의 FOV 뷰포트보다 작거나, 유사하거나, 일치하거나, 더 클 수 있으므로, 장치에 의해 사용자에게 보여지는 정확한 뷰포트는 ROI 메타데이터에 의해 특정된 영역들의 크기, content_fov, 장치 screen_fov 중 어느 하나에 따라 결정될 수 있다. 이때 장치 screen_fov 및 content_fov의 차이에 따라 렌더링을 위한 FOV 보상을 수행할 필요가 있다.
앞서 언급한 바와 같이 ROI 메타데이터 기반의 가이드된 재생 및 다른 경우들에 있어서, 렌더링되고 디스플레이될 정확한 뷰포트는 장치 screen_fov 및 content_fov 필드들에 따라 다를 수 있다. 또한 ROI 메타데이터에 의해 특정된 영역들의 크기에 따라 ROI 메타데이터를 이용한 재생 동작들이 가변될 수 있다.
ROI 메타데이터는 소정 영역에서 발생하는 동작들이나 컨텐트 특정 객체들에 해당하는 VR 컨텐트 비디오 내의 정확한 영역을 특정한다. ROI들의 영역 크기는 평균 뷰포트/장치 FOV들보다 크거나, 장치 FOV와 유사한 크기 이거나, 평균 뷰포트/장치 FOV들보다 작을 수 있다.
ROI 메타데이터가 평균 뷰포트/장치 FOV들보다 크거나 작을 경우에는, 장치의 screen_fov나 content_fov에 의해 특정된 뷰포트가 ROI 메타데이터를 중심으로 디스플레이된다. ROI 메타데이터가 장치의 FOV들과 유사하고 여러 FOV들에 대해 특정된 다수의 ROI 메타데이터가 존재할 경우에는, 먼저 장치에 가장 근접한 FOV를 가진 interest_metadata가 선택된다. 이를 위해 VR 장치는 장치의 screen_fov를 식별하고, 식별된 장치의 screen_fov에 부합되는 content_fov 필드를 가지는 해당 관심 메타데이터를 선택한다. 정확히 부합되는 content_fov 필드를 가지는 관심 메타데이터가 없으면, 다음으로 큰 크기의 FOV를 가지는 관심 메타데이터를 선택한다. 예를 들어 장치의 screen_fov=95인 경우, content_fov=95가 존재하면 상응하는 관심 메타데이터를 선택하며, content_fov=95가 존재하지 않으면 content_fov >95에 해당하는 필드들 중 다음으로 가능한 필드를 선택한다. 즉, interest_metadata의 대응되는 선택을 위한 조건은 screen_fov =< content_fov이다.
이러한 절차에 따라 사용자 장치 화면의 FOV에 가장 근접한 ROI 메타데이터가 선택되면, 해당 ROI 메타데이터가 이용 가능한 경우에는 표 15와 같이 FOV 보상이 필요하다.
Figure pat00003
표 15를 참조하면, 장치 screen_fov = content_fov인 경우 ROI 메타데이터에 의해 특정된 영역이 장치 화면에 그대로 디스플레이된다. 장치 screen_fov > content_fov인 경우 장치는 ROI 영역을 screen_fov에 맞추기 위해 컨텐트를 확대하거나, ROI 영역에 의해 특정된 것보다 넓은 영역의 컨텐트를 보여주어야 한다. 또한 장치 screen_fov < content_fov인 경우 장치는 ROI 영역을 screen_fov에 맞추기 위해 컨텐트를 축소하거나, ROI 영역에 의해 특정된 것보다 좁은 영역의 컨텐트를 보여주어야 한다.
한편, 이벤트 관심 메타데이터는 보통 (“follow POI”과 같은) 특정 “follow 이벤트” 뷰에는 사용되지 않는다. 대신, (time_to_event 필드를 통해) 앞으로 일어날 이벤트들을 나타내기 위한 통지들을 트리거하기 위해 이벤트 관심 메타데이터들이 사용될 수 있다. 이것은 장치가 이벤트들을 이용해 사용자에게 미리 통지를 제공할 수 있다 하더라도, 이하에 설명될 POI 통지 기반 뷰와 유사하다.
자동화된 POI/ROI 트래킹(follow POI/ROI) 사용이 불가하거나 원하지 않을 경우, 장치는 POI/ROI 알림/통지 안내를 사용자에게 제공하여 POI 또는 ROI 메타데이터 기반 뷰를 위한 사용자의 뷰포인트를 가이드할 수 있다. POI/ROI 알림/통지 안내는 사용자의 현재 뷰포트 안에 없는 POI/ROI의 위치와 방향을 나타내기 위한 팝업 통지나, 테두리(rim) 기반 광(light) 안내(예를 들어, 현재의 뷰포트 밖에 있는 POI/ROI의 위치를 가리키기 위해 부분적으로 점등하는 헤드 마운트 디스플레이나 TV를 둘러싼 빛의 테두리 등) 또는 진동 피드백(예를 들어, POI/ROI의 위치 및 “근접(closeness)”을 나타내기 위한 피드백 장치를 통한 다중 방향 및 다중 세기의 진동이나, 사운드 기반 안내(예를 들어, (보이지 않는) POI/ROI의 방향으로부터 나오는 안내 사운드를 가지는, 현재 뷰포트에 부합하는 3D 사운드를 포함할 수 있다. 진동 세기는 사용자의 현재 뷰포트로부터 POI/ROI의 거리에 부합하도록 조정될 수 있다.
일부의 경우, 소정 컨텐트는 다중 타입(가령, POI 및 ROI 그리고 이벤트들의 혼합)의 관심 메타데이터을 포함할 수 있다. 이 경우, 관심 메타데이터 트랙들이나 재생 리스트들이 컨텐트의 재생 시간에 따른 POI/ROI/이벤트 메타데이터의 체인을 생성하도록 만들어질 수 있다. 관심 메타데이터 트랙들이나 재생 리스트는 재한된 재생(follow interest metadata)이나 풀 재생 중 자동 안내 통지를 위해 사용될 수 있다.
사용자 관점에서 볼 때, VR 장치(예를 들어, TV) 상에서의 POI 및 ROI 메타데이터를 가진 VR 컨텐트의 재생은 사용자가 미리 규정된 (컨텐트 생성자들이나 다른 사용자들, 또는 다른 미리 만들어진 트랙들에 의해 제공되는) 관심 메타데이터 트랙이나 재생 리스트를 선택하거나, 어떤 주어진 시점에 동일한 ID를 가진 특정 POI나 ROI를 디스플레이 장치를 통해 트래킹하도록 선택하거나, POI/ROI 메타데이터로부터의 가이드 지시의 유무에 따라 뷰포트에 대한 사용자의 수동 제어를 수행함으로써 즉각적으로 뷰포트를 제어할 수 있다.
관심 메타데이터 트랙들이나 재생 리스트들은 각 프레임의 개별 POI들이나 ROI들, 다른 관심 메타데이터 재생 리스트들의 일부, 사용자 수동 제어된 뷰포트 데이터(예를 들어, 개인화된(personalized) ROI들)의 조합으로 만들 수 있다.
도 15는 각각의 프레임에 대한 개별 POI 및 ROI로 구성된 관심 메타데이터 트랙을 도시한 것이다.
도 15를 참조하면, 같은 ID를 가진 POI나 ROI가 각각의 프레임마다 특정(시간에 따른 영역의 이동이 허용)되는 반면, 관심 메타데이터 트랙은 시간에 따라 상이한 ID들을 가진 POI 및/또는 ROI 메타데이터를 포함하도록 허용된다. 관심 메타데이터 트랙은 트랙의 경로 중에 여러 카메라들로부터의 뷰포트들을 포함할 수 있다.
한편, 제한된 재생에 있어서, ROI/POI에 따른 재생에서 다른 프레임간의 변경은 패닝에 한정되지 않고, 다른 ROI나 POI로의 갑작스러운 변경이 구현될 수 있다. 이러한 변경에 따른 영향은 장면 변경과 유사하다. ROI 변경 같은 장면 변경의 사용은 TV들과 같이 회전 제어를 위해 불편한 입력을 사용하는 장치들이나 작은 FOV를 가지는 장치들에 있어서 중요한데, 이는 360도 비디오에 대한 빠르거나 랜덤한 패닝이 사용자에게 어지러움을 야기할 수 있기 때문이다.
도 16은 동일한 360도 VR 컨텐트로부터 관심 메타데이터 뷰를 위해 서로 다른 ROI 트랙들을 사용하여 제한된 재생을 수행하는 예를 도시한 것이다.
도 16을 참조하면, TV1과 TV2는 각각 서로 다른 뷰포트들(View1, 2, 3)을 얻기 위해 ROI 및 POI 메타데이터를 사용함으로써, 서로 다른 장치 상에서 재생되는 동일한 VR 컨텐트가 서로 다른 관심 메타데이터 트랙들을 사용하게 되며, 이에 따라 사용자는 동일한 VR 컨텐트에 대해 장치에 따라 서로 다른 VR 경험을 할 수 있다.
한편, 향후의 VR 컨텐트에는 어떤 장면이나 스포츠 게임을 캡처하기 위해 여러 대의 360도 VR 카메라들이 사용되는 경우가 있을 수 있다. 이 경우, 사용자 입장에서 동시에 여러 장치들 상에서 VR 컨텐트의 뷰를 지원하기 위해, 여러 카메라들 사이에서 POI 메타데이터를 동기시키는 것이 가능하다. TV는 동일한 컨텐트에 대해 관심 메타데이터 뷰를 통해 자동 가이드된 VR 경험을 디스플레이할 수 있다; 동시에 사용자는 별도의 장치(모바일 장치 등) 상에서 다른 카메라로부터의 POI 트래킹을 위해 같은 장면 안의 POI를 선택할 수 있다.
도 17은 POI 메타데이터가 다중 뷰 및 카메라 적용을 지원하는 예를 도시한 것이다.
도 17을 참조하면, (b)와 같이 POI ID를 동기화함으로써 사용자는 서로 다른 카메라를 이용하여 스포츠 카의 POI를 트래킹할 수 있을 뿐만 아니라, (c)와 같이 사용자는 모바일 장치 상의 드라이버 관점의 POI에 따라 360도 VR을 경험할 수 있다. 또한, 여러 사용자들에게 공유된 VR 경험을 제공하기 위해 다른 사용자들에게 자신들의 POI들을 공유할 수도 있다. 즉각적 POI 공유는 둘 이상의 또는 모든 사용자들이 HMD들을 사용할 때, 사용자들이 해당 사용자의 스크린이나 어떤 형태의 신체 제스처를 물리적으로 볼 수 없기 때문에 유용하다.
도 18은 동일 화면 내에서 복수의 VR 360도 카메라들 간에 POI ID를 동기화하는 예를 도시한 것이다. 도 18에서는 두 개의 VR 360도 카메라들 간에 동일한 POI에 대해 POI ID를 동기화하는 예를 도시하였다.
한편, 관심 메타데이터는 ROI 및/또는 POI 기반의 VR 자막 배치에도 사용될 수 있다. 본 개시에 따르면, ROI 영역 크기가 장치 스크린 FOV를 목표로 할 때 ROI를 트래킹함으로써 자막이 디스플레이될 수 있다. 이때 자막은 뷰포트와 무관하게 스트린의 하부에 항상 디스플레이될 수 있다. 또는 자막들이 POI들을 트래킹하여 그 옆에서 디스플레이될 수 있다. 이때 장치는 풀 재생 또는 제한된 재생을 제공한다. 가령, 두 개의 POI들이 대화를 하는 캐릭터들인 경우, 각각의 캐릭터로부터 자막 처리된 대화가 각각 캐릭터 하단(또는 옆에) 디스플레이될 수 있다. 이러한 방식으로, 풀 재생 시 POI 기반 자막 배치를 제공하는 경우, 사용자는 자막을 뷰 위해 뷰포트가 POI를 보고 있어야 한다.
또한 본 개시에 따른 관심 메타데이터를 이용하면 AOV(Audio of View)에 따라 올바른 3D 오디오를 대응되는 VR 컨텐트 프레임 내 영역들로 매핑할 수 있다. 오디오 채널들이나 오디오 객체들은 프레임 내 특정 영역들로 매핑될 수 있다. 올바른 오디오 채널들, 또는 그 조합들이 뷰포트에 따라 사용자에게 정확히 제시될 수 있다. AOV들은 오디오 채널이 소정 ROI ID를 따를 수 있는 ROI들에 기반할 수도 있고, 특정 오디오 객체가 특정 POI에 대응하는 POI들에 기반할 수도 있다.
또한 본 개시에 따른 ROI/POI 메타데이터는 뷰 종속 처리에도 사용될 수 있다. 고품질의 360도 비디오는 이론상으로 구 컨텐트와 비교해 훨씬 높은 처리 복잡도를 요할 수 있으며, 특히 주어진 시점에서 ROI가 현재의 컨텐트 픽처 품질들(UHD, HDR 등)에 부합해야 할 경우에는 더욱 그러하다. 이러한 이유 및 다른 다양한 이유들로 인해, POV 및 POI 메타데이터가 뷰 종속 처리 중 결정을 위해 사용될 수도 있으며, 뷰 종속 처리는 현재의 ROI들(또는 POI를 둘러싼 뷰포트 영역들)에서만 수행된다. 뷰 종속 처리는 뷰 종속 ROI/POI 컨텐트 전달, 뷰 종속 ROI/POI 디코딩 및 렌더링, 뷰 종속 ROI/POI 톤 매핑, 뷰 종속 ROI/POI 타일 버퍼 선택과 같은뷰 종속 처리 지원 등을 포함할 수 있다.
또한 본 개시에 따른 360도 VR 메타데이터는 컨텐트 내에서의 상호동작 가능성을 허용한다. 상호동작의 일 예는 컨텐트를 시청하는 동안 사용자에 의해 소정 이벤트들이 트리거되는 경우에만 볼 수 있는, 컨텐트 안에 포함될 수 있는 옵션 화면들(예를 들어 감독의 컷 신들 등)을 재생하는 것이다. 이러한 상호동작은 VR 컨텐트에 고유하며, ROI 및 POI 메타데이터가 이러한 종류의 상호동작 이벤트들을 트리거하기 위해 사용될 수 있다. 기본적인 상호동작 이벤트의 일 예는, 사용자의 현재 뷰포트가 소정 개수 이상의 프레임들에 대해 소정 POI나 ROI를 포함하는 경우 현재의 재생 트랙을 별도의 화면이나 다른 화면으로 전환하는 경우일 수 있으며, 이것을 POI 트리거된 동작, 또는 뷰포트 트리거된 동작의 POI라고 부를 수 있다.
한편, 한 프레임이 여러 ROI 및 POI 메타데이터를 포함하는 경우, 또는 한 컨텐트가 여러 관심 메타데이터 트랙들을 포함하는 경우, ROI/POI 메타데이터는 서로 다른 관심 메타데이터들 사이에서 제작자의 창의적인 의도에 따라 우선순위 또는 서열을 부여하는 데이터를 포함할 수 있다. 예를 들어 사용자가 어떤 관심 메타데이터를 선택할지를 모르는 경우, TV 장치는 프레임 내 관심 메타데이터들 내에서 우선순위/서열 데이터에 기반하여 관심 메타데이터를 자동 선택할 수 있다.
도 19는 본 개시에 따른 메타데이터 집합을 결정하는 하나의 방법을 도시한 것으로, 푸쉬 방식에 따라 컨텐트 서버가 적절한 버전의 컨텐트 및 컨텐트 메타데이터 집합을 선택하여 전송하는 경우를 도시한 것이다.
도 19를 참조하면, 사용자 장치는 장치 기능 집합 파라미터를 컨텐트 서버로 전송하고(1901), 컨텐트 서버가 장치 기능 집합 파라미터에 부합되는 버전의 컨텐트와 메타데이터 집합을 결정하며(1902), 결정된 버전의 컨텐트와 메타데이터 집합을 사용자 장치로 전송한다(1903).
도 20은 본 개시에 따른 메타데이터 집합을 결정하는 하나의 방법을 도시한 것으로, 탐색/풀(pull) 방식에 따라 컨텐트 서버가 사용자 장치와 협의 후에 컨텐트 버전 및 컨텐트 메타데이터 집합을 전송하는 경우를 도시한 것이다.
도 20을 참조하면, 사용자 장치는 장치 기능 집합 파라미터를 컨텐트 서버로 전송하고(2001), 컨텐트 서버가 장치 기능 집합 파라미터에 부합되는 버전의 컨텐트와 메타데이터 집합에 대한 목록을 사용자 장치로 전송한다(2002). 그러면 사용자 장치는 목록에서 특정 버전의 컨텐트와 메타데이터 집합을 선택하여 컨텐트 서버로 요청하고(2003), 컨텐트 서버는 요청된 버전의 컨텐트와 메타데이터 집합을 사용자 장치로 전송한다(2004).
도 21은 본 개시에 따른 컨텐스 서버의 장치 구성을 예시하는 도면이다.
컨텐트 서버(2100)는 제어기(2102) 및 부호화부(2104) 중 적어도 하나를 포함할 수 있다. 상기 컨텐트 서버(2100)는 VR 컨텐트의 일 예로서 360도 영상을 제공할 수 있다. 부호화부(2104)는 카메라에 의해 촬영된 영상 데이터를 영상 스티칭하고 평면화 한 360도 영상을 인코딩하고 파일 형태로 캡슐화할 수 있다. 제어기(2102)는 부호화부(2104)의 동작을 제어할 수 있다. 또한 본 개시에 따라 메타데이터를 사용하여 각각의 VR 장치에 부합되는 버전의 컨텐트를 인식, 선택, 인증, 전송하기 위한 일련의 동작들을 제어할 수 있다. 제어기(2102)와 복호화부(2104)는 반드시 별도의 장치로 구현되어야 하는 것은 아니고, 단일 칩과 같은 하나의 모듈로 구현될 수 있음은 물론이다.
도 22는 본 개시에 따른 사용자 장치의 구성을 예시하는 도면이다.
사용자 장치(2200)는 제어기(2202), 재생부(2206), 및 복호화부(2204) 중 적어도 하나를 포함할 수 있다. 디스플레이 장치(2200)는 전송되는 360도 영상을 관심 메타데이터를 이용하여 최적으로 디스플레이 할 수 있다. 복호화부(2204)는 파일 형태로 캡슐화 되어 전송되는 360도 영상을 디캡슐화하고 디코딩하여 디스플레이 장치(2200)로 전달할 수 있다. 제어기(2202)는 재생부(2206), 및 복호화부(2204)의 일련의 동작들을 제어할 수 있다. 또한 제어기(2202)는 본 개시에 따라 정의된 메타데이터를 사용하여 사용자 장치에 부합되는 버전의 컨텐트를 재생하기 위한 일련의 동작들을 제어할 수 있다.
도 23은 본 개시에 따라 360도 컨텐츠를 처리하는 시스템의 구성을 나타낸 도면이다.
도 23을 참조하면, 시스템은 맵핑부(2303), 변환부(2305), 부호화부(encoder)(2307), 저장부(2309), 복호화부(decoder)(2311), 역변환부(2313), 및 재생부(2315)를 포함한다.
여러 대의 카메라로 촬영한 360도 영상(2300)은 맵핑부(2303)에 입력되고, 맵핑부(2303)는 360도 영상(2300)을 3D 모델, 일례로 구의 표면에 맵핑시켜 3D 영상(2310)을 생성하여 출력한다.
3D 영상(2310)은 변환부(2305)에 입력되고, 변환부(2305)는 입력된 3D 영상(2310)을 영상 스티칭하고 2D 영상(2320)으로 변환하여 출력한다. 상기 2D 영상(2320)은 부호화부(2307)에 입력되고, 부호화부(2307)는 입력된 2D 영상(2320)을 미리 정해진 부호화 방식을 이용하여 부호화하고 파일로 캡슐화하여 출력한다. 상기 부호화된 2D 영상은 저장부(2309)에 저장될 수 있다.
저장부(2309)로부터 출력된 파일 형태의 2D 영상은 복호화부(2311)에 입력되고, 복호화부(2311)는 입력된 영상을 디캡슐화하고 미리 정해진 복호 방식으로 복호하여 출력한다. 상기 복호된 2D 영상은 역변환부(2313)에 입력되고, 역변환부(2313)는 입력된 2D 영상을 3D 영상으로 역변환하여 출력한다.
상기 역변환된 3D 영상(2330)은 재생부(2315)에 입력되고, 재생부(2315)는 입력된 영상을 디스플레이한다.
변환부(2305)와 부호화부(2307)는 3D 영상을 스티칭하고 2D 영상으로 변환하는 과정에서 본 개시에 따른 메타데이터를 이용할 수 있다. 또한 복호화부(decoder)(2311), 역변환부(2313), 및 재생부(2315)는 2D 영상을 복호하고 역변환하여 재생하는 과정에서 본 개시에 따른 메타데이터를 이용할 수 있다.
상기 도 2 내지 도 23이 예시하는 방법 및 장치 구성은 본 개시의 권리범위를 한정하기 위한 의도가 없음을 유의하여야 한다. 즉, 상기 도 2 내지 도 23에 기재된 모든 구성부, 또는 동작의 단계가 본 개시의 실시를 위한 필수구성요소인 것으로 해석되어서는 안되며, 일부 구성요소 만을 포함하여도 본 개시의 본질을 해치지 않는 범위 내에서 구현될 수 있다.
앞서 설명한 동작들은 해당 프로그램 코드를 저장한 메모리 장치를 통신 시스템의 서버 또는 단말 장치 내의 임의의 구성부에 구비함으로써 실현될 수 있다. 즉, 서버 또는 단말 장치의 제어부는 메모리 장치 내에 저장된 프로그램 코드를 프로세서 혹은 CPU(Central Processing Unit)에 의해 읽어내어 실행함으로써 앞서 설명한 동작들을 실행할 수 있다.
본 명세서에서 설명되는 서버 또는 단말 장치의 다양한 구성부들과, 모듈(module)등은 하드웨어(hardware) 회로, 일 예로 상보성 금속 산화막 반도체(complementary metal oxide semiconductor) 기반 논리 회로와, 펌웨어(firmware)와, 소프트웨어(software) 및/혹은 하드웨어와 펌웨어 및/혹은 머신 판독 가능 매체에 삽입된 소프트웨어의 조합과 같은 하드웨어 회로를 사용하여 동작될 수도 있다. 일 예로, 다양한 전기 구조 및 방법들은 트랜지스터(transistor)들과, 논리 게이트(logic gate)들과, 주문형 반도체와 같은 전기 회로들을 사용하여 실시될 수 있다.
한편 본 개시의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 개시의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 개시의 범위는 설명된 실시 예에 국한되어 정해져서는 안되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.

Claims (20)

  1. 가상 현실 시스템에서 컨텐트를 재생하는 방법에 있어서,
    사용자 장치의 기능에 관한 파라미터들을 전송하는 과정과,
    상기 전송한 파라미터 집합에 부합되는 컨텐트에 관한 관심 메타데이터를 수신하는 과정과,
    상기 관심 메타데이터를 기반으로, 상기 전송한 파라미터 집합에 부합되는 버전에 해당하는 컨텐트를 사용자의 시점(viewpoint)에 상응하도록 디스플레이될 뷰 영역에 해당하는 적어도 하나의 타일(tile) 단위로 수신하여 디코딩하는 과정과,
    상기 디코딩된 타일을 상기 관심 메타데이터를 기반으로 렌더링하는 과정을 포함하는 방법.
  2. 제1항에 있어서,
    상기 사용자 장치의 기능에 관한 파라미터들은 DOF(degree of freedom), FOV(field of view), 스크린 사양, 코덱 기능, 평면 영상을 360도 영상으로 매핑하는 함수 기능, 가이드 된 뷰 메타데이터를 지원하는 장치 기능을 나타내는 파라미터 중 적어도 하나를 포함함을 특징으로 하는 방법.
  3. 제1항에 있어서,
    상기 컨텐트에 관한 관심 메타데이터는 상기 컨텐트의 버전 선택을 위한 메타데이터와 상기 컨텐트의 전송 및 재생을 위한 메타데이터를 포함함을 특징으로 하는 방법.
  4. 제3항에 있어서,
    상기 컨텐트의 버전 선택을 위한 메타데이터는 DOF(degree of freedom), 상기 컨텐트의 해상도 버전과 상기 컨텐트에 의해 지원되는 부분 디코딩을 나타내는 메타데이터와, 상기 컨텐트를 평면 영상에 매핑하는 것과 관련된 파라미터를 나타내는 메타데이터 중 적어도 하나를 포함하며,
    상기 컨텐트의 전송 및 재생을 위한 메타데이터는 멀티 뷰포트, POI(point of interest), ROI(region of interest), 이벤트 관련 메타데이터 중 적어도 하나를 포함함을 특징으로 하는 방법.
  5. 제1항에 있어서,
    상기 전송한 파라미터 집합에 부합되는 컨텐트에 관한 관심 메타데이터를 수신하는 과정은,
    컨텐트 서버로부터 컨텐트의 버전과 컨텐트에 관한 관심 메타데이터 목록을 수신하는 과정과,
    상기 목록으로부터 원하는 버전의 컨텐트와 컨텐트에 관한 관심 메타데이터를 선택하여 상기 컨텐트 서버로 요청하는 과정과,
    상기 요청한 버전의 컨텐트와 컨텐트에 관한 관심 메타데이터를 수신하는 과정을 포함함을 특징으로 하는 방법.
  6. 제1항에 있어서,
    상기 렌더링하는 과정은,
    상기 사용자 장치의 화면의 FOV(field of view)와 상기 컨텐트의 FOV가 다른 경우에, 상기 컨텐트의 FOV를 상기 사용자 장치의 화면의 FOV에 부합되도록 조절하여 렌더링함을 특징으로 하는 방법.
  7. 가상 현실 시스템에서 컨텐트를 재생하는 장치에 있어서,
    사용자 장치의 기능에 관한 파라미터들을 전송하고, 상기 전송한 파라미터 집합에 부합되는 컨텐트에 관한 관심 메타데이터를 수신하는 제어부와,
    상기 관심 메타데이터를 기반으로, 상기 전송한 파라미터 집합에 부합되는 버전에 해당하는 컨텐트를 사용자의 시점(viewpoint)에 상응하도록 디스플레이될 뷰 영역에 해당하는 적어도 하나의 타일(tile) 단위로 수신하여 디코딩하는 복호화부와,
    상기 디코딩된 타일을 상기 관심 메타데이터를 기반으로 렌더링하는 재생부를 포함하는 장치.
  8. 제7항에 있어서,
    상기 사용자 장치의 기능에 관한 파라미터들은 DOF(degree of freedom), FOV(field of view), 스크린 사양, 코덱 기능, 평면 영상을 360도 영상으로 매핑하는 함수 기능, 가이드 된 뷰 메타데이터를 지원하는 장치 기능을 나타내는 파라미터 중 적어도 하나를 포함함을 특징으로 하는 장치.
  9. 제7항에 있어서,
    상기 컨텐트에 관한 관심 메타데이터는 상기 컨텐트의 버전 선택을 위한 메타데이터와 상기 컨텐트의 전송 및 재생을 위한 메타데이터를 포함함을 특징으로 하는 장치.
  10. 제9항에 있어서,
    상기 컨텐트의 버전 선택을 위한 메타데이터는 DOF(degree of freedom), 상기 컨텐트의 해상도 버전과 상기 컨텐트에 의해 지원되는 부분 디코딩을 나타내는 메타데이터와, 상기 컨텐트를 평면 영상에 매핑하는 것과 관련된 파라미터를 나타내는 메타데이터 중 적어도 하나를 포함하며,
    상기 컨텐트의 전송 및 재생을 위한 메타데이터는 멀티 뷰포트, POI(point of interest), ROI(region of interest), 이벤트 관련 메타데이터 중 적어도 하나를 포함함을 특징으로 하는 장치.
  11. 제7항에 있어서,
    상기 제어부는,
    컨텐트 서버로부터 컨텐트의 버전과 컨텐트에 관한 관심 메타데이터 목록을 수신하고, 상기 목록으로부터 원하는 컨텐트의 버전과 컨텐트에 관한 관심 메타데이터를 선택하여 상기 컨텐트 서버로 요청하며, 상기 요청한 버전의 컨텐트와 컨텐트에 관한 관심 메타데이터를 수신함을 특징으로 하는 장치.
  12. 제7항에 있어서,
    상기 재생부는, 상기 사용자 장치의 화면의 FOV(field of view)와 상기 컨텐트의 FOV가 다른 경우에, 상기 컨텐트의 FOV를 상기 사용자 장치의 화면의 FOV에 부합되도록 조절하여 렌더링함을 특징으로 하는 장치.
  13. 가상 현실 시스템에서 컨텐트를 전송하는 방법에 있어서,
    사용자 장치의 기능에 관한 파라미터들을 수신하는 과정과,
    상기 수신한 파라미터 집합에 부합되는 컨텐트에 관한 관심 메타데이터를 전송하는 과정과,
    상기 관심 메타데이터를 기반으로, 상기 수신한 파라미터 집합에 부합되는 버전에 해당하는 컨텐트를 사용자의 시점(viewpoint)에 상응하도록 디스플레이될 뷰 영역에 해당하는 적어도 하나의 타일(tile) 단위로 인코딩하여 전송하는 과정을 포함하는 방법.
  14. 제13항에 있어서,
    상기 사용자 장치의 기능에 관한 파라미터들은 DOF(degree of freedom), FOV(field of view), 스크린 사양, 코덱 기능, 평면 영상을 360도 영상으로 매핑하는 함수 기능, 가이드 된 뷰 메타데이터를 지원하는 장치 기능을 나타내는 파라미터 중 적어도 하나를 포함함을 특징으로 하는 방법.
  15. 제13항에 있어서,
    상기 컨텐트에 관한 관심 메타데이터는 상기 컨텐트의 버전 선택을 위한 메타데이터와 상기 컨텐트의 전송 및 재생을 위한 메타데이터를 포함함을 특징으로 하는 방법.
  16. 제15항에 있어서,
    상기 컨텐트의 버전 선택을 위한 메타데이터는 DOF(degree of freedom), 상기 컨텐트의 해상도 버전과 상기 컨텐트에 의해 지원되는 부분 디코딩을 나타내는 메타데이터와, 상기 컨텐트를 평면 영상에 매핑하는 것과 관련된 파라미터를 나타내는 메타데이터 중 적어도 하나를 포함하며,
    상기 컨텐트의 전송 및 재생을 위한 메타데이터는 멀티 뷰포트, POI(point of interest), ROI(region of interest), 이벤트 관련 메타데이터 중 적어도 하나를 포함함을 특징으로 하는 방법.
  17. 제13항에 있어서,
    상기 전송한 파라미터 집합에 부합되는 컨텐트에 관한 관심 메타데이터를 전송하는 과정은,
    컨텐트 서버로부터 컨텐트의 버전과 컨텐트에 관한 관심 메타데이터 목록을 전송하는 과정과,
    상기 목록으로부터 선택된 버전의 컨텐트와 컨텐트에 관한 관심 메타데이터에 대한 요청을 수신하는 과정과,
    상기 요청된 버전의 컨텐트와 컨텐트에 관한 관심 메타데이터를 전송하는 과정을 포함함을 특징으로 하는 방법.
  18. 가상 현실 시스템에서 컨텐트를 전송하는 장치에 있어서,
    사용자 장치의 기능에 관한 파라미터들을 수신하고, 상기 수신한 파라미터 집합에 부합되는 컨텐트에 관한 관심 메타데이터를 전송하는 제어부와,
    상기 관심 메타데이터를 기반으로, 상기 수신한 파라미터 집합에 부합되는 버전에 해당하는 컨텐트를 사용자의 시점(viewpoint)에 상응하도록 디스플레이될 뷰 영역에 해당하는 적어도 하나의 타일(tile) 단위로 인코딩하여 전송하는 부호화부를 포함함을 특징으로 하는 장치.
  19. 제18항에 있어서,
    상기 사용자 장치의 기능에 관한 파라미터들은 DOF(degree of freedom), FOV(field of view), 스크린 사양, 코덱 기능, 평면 영상을 360도 영상으로 매핑하는 함수 기능, 가이드 된 뷰 메타데이터를 지원하는 장치 기능을 나타내는 파라미터 중 적어도 하나를 포함하며,
    상기 컨텐트에 관한 관심 메타데이터는 상기 컨텐트의 버전 선택을 위한 메타데이터와 상기 컨텐트의 전송 및 재생을 위한 메타데이터를 포함하며,
    상기 컨텐트의 버전 선택을 위한 메타데이터는 DOF(degree of freedom), 상기 컨텐트의 해상도 버전과 상기 컨텐트에 의해 지원되는 부분 디코딩을 나타내는 메타데이터와, 상기 컨텐트를 평면 영상에 매핑하는 것과 관련된 파라미터를 나타내는 메타데이터 중 적어도 하나를 포함하며,
    상기 컨텐트의 전송 및 재생을 위한 메타데이터는 멀티 뷰포트, POI(point of interest), ROI(region of interest), 이벤트 관련 메타데이터 중 적어도 하나를 포함함을 특징으로 하는 장치.
  20. 제18항에 있어서,
    상기 제어부는,
    컨텐트 서버로부터 컨텐트의 버전과 컨텐트에 관한 관심 메타데이터 목록을 전송하고, 상기 목록으로부터 선택된 버전의 컨텐트와 컨텐트에 관한 관심 메타데이터에 대한 요청을 수신하고, 상기 요청된 컨텐트 버전과 컨텐트에 관한 관심 메타데이터를 전송함을 특징으로 하는 장치.
KR1020160117072A 2016-09-12 2016-09-12 가상 현실 시스템에서 컨텐트 전송 및 재생 방법 및 장치 KR102545195B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020160117072A KR102545195B1 (ko) 2016-09-12 2016-09-12 가상 현실 시스템에서 컨텐트 전송 및 재생 방법 및 장치
EP17849170.0A EP3497940B1 (en) 2016-09-12 2017-09-12 Method and apparatus for transmitting and reproducing content in virtual reality system
US15/702,367 US10863235B2 (en) 2016-09-12 2017-09-12 Method and apparatus for transmitting and reproducing content in virtual reality system
PCT/KR2017/009993 WO2018048286A1 (en) 2016-09-12 2017-09-12 Method and apparatus for transmitting and reproducing content in virtual reality system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160117072A KR102545195B1 (ko) 2016-09-12 2016-09-12 가상 현실 시스템에서 컨텐트 전송 및 재생 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20180029344A true KR20180029344A (ko) 2018-03-21
KR102545195B1 KR102545195B1 (ko) 2023-06-19

Family

ID=61560550

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160117072A KR102545195B1 (ko) 2016-09-12 2016-09-12 가상 현실 시스템에서 컨텐트 전송 및 재생 방법 및 장치

Country Status (4)

Country Link
US (1) US10863235B2 (ko)
EP (1) EP3497940B1 (ko)
KR (1) KR102545195B1 (ko)
WO (1) WO2018048286A1 (ko)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190313081A1 (en) * 2018-04-05 2019-10-10 Lg Electronics Inc. Multiple-viewpoints related metadata transmission and reception method and apparatus
KR20190116928A (ko) * 2018-04-05 2019-10-15 엘지전자 주식회사 360도 비디오를 송수신하는 방법 및 그 장치
WO2019198883A1 (ko) * 2018-04-11 2019-10-17 엘지전자 주식회사 핫스팟 및 roi 관련 메타데이터를 이용한 360도 비디오를 송수신하는 방법 및 그 장치
US20190320156A1 (en) * 2018-04-15 2019-10-17 Lg Electronics Inc. Multiple-viewpoints related metadata transmission and reception method and apparatus
WO2019203574A1 (ko) * 2018-04-17 2019-10-24 엘지전자 주식회사 360 비디오 데이터의 서브픽처 기반 처리 방법 및 그 장치
WO2019235849A1 (ko) * 2018-06-06 2019-12-12 엘지전자 주식회사 360 비디오 시스템에서 오버레이 미디어 처리 방법 및 그 장치
KR20200000363A (ko) * 2018-06-22 2020-01-02 엘지전자 주식회사 360도 비디오를 송수신하는 방법 및 그 장치
WO2020027349A1 (ko) * 2018-07-31 2020-02-06 엘지전자 주식회사 다중 뷰포인트 기반 360 비디오 처리 방법 및 그 장치
KR20200066707A (ko) * 2018-07-13 2020-06-10 엘지전자 주식회사 동적 뷰포인트의 좌표계에 대한 메타데이터를 송수신하는 방법 및 장치
WO2020204253A1 (ko) * 2019-04-04 2020-10-08 전자부품연구원 관심 영역 기반의 vr 영상 수신 장치 및 방법
KR20210086223A (ko) * 2019-12-31 2021-07-08 엘지전자 주식회사 Xr 컨텐트 제공 방법 및 xr 컨텐트 제공 디바이스
US11140373B2 (en) * 2018-04-05 2021-10-05 Lg Electronics Inc. Method for transmitting 360-degree video, method for receiving 360-degree video, apparatus for transmitting 360-degree video, and apparatus for receiving 360-degree video
US11861797B2 (en) 2020-07-23 2024-01-02 Samsung Electronics Co., Ltd. Method and apparatus for transmitting 3D XR media data

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107924690B (zh) * 2015-09-02 2021-06-25 交互数字Ce专利控股公司 用于促进扩展场景中的导航的方法、装置和系统
WO2018043905A1 (ko) * 2016-08-29 2018-03-08 엘지전자 주식회사 360 비디오를 전송하는 방법, 360 비디오를 수신하는 방법, 360 비디오 전송 장치, 360 비디오 수신 장치
US20180095636A1 (en) * 2016-10-04 2018-04-05 Facebook, Inc. Controls and Interfaces for User Interactions in Virtual Spaces
US20180096505A1 (en) * 2016-10-04 2018-04-05 Facebook, Inc. Controls and Interfaces for User Interactions in Virtual Spaces
US10999602B2 (en) 2016-12-23 2021-05-04 Apple Inc. Sphere projected motion estimation/compensation and mode decision
US11259046B2 (en) 2017-02-15 2022-02-22 Apple Inc. Processing of equirectangular object data to compensate for distortion by spherical projections
US10924747B2 (en) 2017-02-27 2021-02-16 Apple Inc. Video coding techniques for multi-view video
US10231014B2 (en) * 2017-03-14 2019-03-12 Futurewei Technologies, Inc. Virtual reality (VR) video distribution using edge resources
US11093752B2 (en) 2017-06-02 2021-08-17 Apple Inc. Object tracking in multi-view video
US20190005709A1 (en) * 2017-06-30 2019-01-03 Apple Inc. Techniques for Correction of Visual Artifacts in Multi-View Images
US10754242B2 (en) 2017-06-30 2020-08-25 Apple Inc. Adaptive resolution and projection format in multi-direction video
US11202117B2 (en) * 2017-07-03 2021-12-14 Telefonaktiebolaget Lm Ericsson (Publ) Methods for personalized 360 video delivery
US11494870B2 (en) * 2017-08-18 2022-11-08 Mediatek Inc. Method and apparatus for reducing artifacts in projection-based frame
US10062414B1 (en) * 2017-08-22 2018-08-28 Futurewei Technologies, Inc. Determining a future field of view (FOV) for a particular user viewing a 360 degree video stream in a network
US10827159B2 (en) * 2017-08-23 2020-11-03 Mediatek Inc. Method and apparatus of signalling syntax for immersive video coding
US10819645B2 (en) 2017-09-20 2020-10-27 Futurewei Technologies, Inc. Combined method for data rate and field of view size adaptation for virtual reality and 360 degree video streaming
WO2019070686A1 (en) 2017-10-04 2019-04-11 Vid Scale, Inc. 360 DEGREES MULTIMEDIA VISUALIZATION CUSTOMIZED
TWI663868B (zh) * 2017-11-17 2019-06-21 宏碁股份有限公司 顯示系統、內容產生器、運算裝置,及其控制方法
US10798455B2 (en) * 2017-12-22 2020-10-06 Comcast Cable Communications, Llc Video delivery
CN115842907A (zh) * 2018-03-27 2023-03-24 京东方科技集团股份有限公司 渲染方法、计算机产品及显示装置
EP3777136A4 (en) * 2018-04-03 2021-05-19 Huawei Technologies Co., Ltd. MULTIMEDIA DATA PROCESSING METHOD AND APPARATUS
US10990683B2 (en) 2018-05-25 2021-04-27 At&T Intellectual Property I, L.P. Virtual reality for security augmentation in home and office environments
CN113178019B (zh) * 2018-07-09 2023-01-03 上海交通大学 基于视频内容的指示信息标识方法、系统及存储介质
US11019449B2 (en) * 2018-10-06 2021-05-25 Qualcomm Incorporated Six degrees of freedom and three degrees of freedom backward compatibility
CN113170235A (zh) * 2018-12-03 2021-07-23 索尼集团公司 信息处理装置和方法
US10777087B2 (en) * 2018-12-07 2020-09-15 International Business Machines Corporation Augmented reality for removing external stimuli
EP3906701A4 (en) * 2019-01-04 2022-09-07 Nokia Technologies Oy METHOD AND APPARATUS FOR STORING AND SIGNALING MEDIA SEGMENT SIZES AND PRIORITY ORDERS
CN113424549B (zh) * 2019-01-24 2024-05-28 交互数字Vc控股公司 用于利用多个细节级别和自由度的自适应空间内容流传输的系统和方法
EP3782374A4 (en) * 2019-07-03 2021-12-01 Beijing Xiaomi Mobile Software Co., Ltd. METHOD, SYSTEM AND DEVICE FOR CREATING AN ENVIRONMENT OF VIRTUAL REALITY
US20240114176A1 (en) * 2019-10-15 2024-04-04 Nokia Technologies Oy Method, Apparatus and Computer Program Product Providing for Extended Margins Around a Viewport for Immersive Content
US11733667B2 (en) * 2019-11-18 2023-08-22 Rockwell Automation Technologies, Inc. Remote support via visualizations of instructional procedures
US11217027B2 (en) 2020-03-13 2022-01-04 Wipro Limited Method and system for generating augmented reality (AR)/virtual reality (VR) content in real-time
CN113453046B (zh) * 2020-03-24 2022-07-12 腾讯科技(深圳)有限公司 沉浸式媒体提供方法、获取方法、装置、设备及存储介质
CN111736689B (zh) * 2020-05-25 2024-05-28 苏州端云创新科技有限公司 虚拟现实装置、数据处理方法与计算机可读存储介质
US11394932B2 (en) 2020-06-03 2022-07-19 Honeywell International Inc. System and method for auto selecting a video for display on a mobile device based on the proximity of the mobile device relative to the video source
EP4213482A4 (en) 2020-12-16 2024-03-20 Samsung Electronics Co., Ltd. METHOD AND DEVICE FOR TRANSMITTING SEVERAL PARTS OF APPLICATION DATA WITH LOW LATENCY
CN114911990B (zh) * 2022-05-27 2023-01-03 北京天域北斗文化科技集团有限公司 基于虚拟现实和智能交互的地图浏览系统
WO2024105471A1 (en) * 2022-11-15 2024-05-23 Samsung Electronics Co., Ltd. Device and methods for facilitating information flow using meta-context transfer

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090034573A (ko) * 2007-10-04 2009-04-08 삼성전자주식회사 컨텐트 제공 방법 및 그 장치와 컨텐트 재생 방법 및 그장치
US20100162292A1 (en) * 2008-12-23 2010-06-24 Microsoft Corporation Content access
KR20130118820A (ko) * 2012-04-20 2013-10-30 삼성전자주식회사 증강현실 서비스를 위한 미디어 파일의 제공 방법 및 장치
EP2824883A1 (en) * 2013-07-12 2015-01-14 Alcatel Lucent A video client and video server for panoramic video consumption

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060284791A1 (en) * 2005-06-21 2006-12-21 National Applied Research Laboratories National Center For High-Performance Computing Augmented reality system and method with mobile and interactive function for multiple users
US20120066304A1 (en) * 2010-09-14 2012-03-15 Apple Inc. Content configuration for device platforms
US9608676B2 (en) 2013-07-12 2017-03-28 Analog Devices Global Digital pre-distortion systems in transmitters
KR20150141461A (ko) 2014-06-10 2015-12-18 엘지전자 주식회사 헤드 마운티드 디스플레이 및 그 제어 방법
US9363569B1 (en) * 2014-07-28 2016-06-07 Jaunt Inc. Virtual reality system including social graph
US10235714B2 (en) 2014-12-01 2019-03-19 Verizon Patent And Licensing Inc. Customized virtual reality user environment control
EP3304487A1 (en) * 2015-05-27 2018-04-11 Google LLC Streaming spherical video
US10219008B2 (en) * 2016-07-29 2019-02-26 At&T Intellectual Property I, L.P. Apparatus and method for aggregating video streams into composite media content

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090034573A (ko) * 2007-10-04 2009-04-08 삼성전자주식회사 컨텐트 제공 방법 및 그 장치와 컨텐트 재생 방법 및 그장치
US20100162292A1 (en) * 2008-12-23 2010-06-24 Microsoft Corporation Content access
KR20130118820A (ko) * 2012-04-20 2013-10-30 삼성전자주식회사 증강현실 서비스를 위한 미디어 파일의 제공 방법 및 장치
EP2824883A1 (en) * 2013-07-12 2015-01-14 Alcatel Lucent A video client and video server for panoramic video consumption

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
비특허문헌1(Byeongdoo Choi 외 2명, ISO/IEC JTC1/SC29/WG11 N16189, 2016.06)* *

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190313081A1 (en) * 2018-04-05 2019-10-10 Lg Electronics Inc. Multiple-viewpoints related metadata transmission and reception method and apparatus
KR20190116928A (ko) * 2018-04-05 2019-10-15 엘지전자 주식회사 360도 비디오를 송수신하는 방법 및 그 장치
KR20190116916A (ko) * 2018-04-05 2019-10-15 엘지전자 주식회사 복수의 뷰포인트들에 대한 메타데이터를 송수신하는 방법 및 장치
US11044455B2 (en) * 2018-04-05 2021-06-22 Lg Electronics Inc. Multiple-viewpoints related metadata transmission and reception method and apparatus
US11140373B2 (en) * 2018-04-05 2021-10-05 Lg Electronics Inc. Method for transmitting 360-degree video, method for receiving 360-degree video, apparatus for transmitting 360-degree video, and apparatus for receiving 360-degree video
WO2019198883A1 (ko) * 2018-04-11 2019-10-17 엘지전자 주식회사 핫스팟 및 roi 관련 메타데이터를 이용한 360도 비디오를 송수신하는 방법 및 그 장치
US20190320156A1 (en) * 2018-04-15 2019-10-17 Lg Electronics Inc. Multiple-viewpoints related metadata transmission and reception method and apparatus
US10869017B2 (en) * 2018-04-15 2020-12-15 Lg Electronics Inc. Multiple-viewpoints related metadata transmission and reception method and apparatus
WO2019203574A1 (ko) * 2018-04-17 2019-10-24 엘지전자 주식회사 360 비디오 데이터의 서브픽처 기반 처리 방법 및 그 장치
WO2019235849A1 (ko) * 2018-06-06 2019-12-12 엘지전자 주식회사 360 비디오 시스템에서 오버레이 미디어 처리 방법 및 그 장치
US11140380B2 (en) 2018-06-06 2021-10-05 Lg Electronics Inc. Method and apparatus for processing overlay media in 360 degree video system
US10771764B2 (en) 2018-06-22 2020-09-08 Lg Electronics Inc. Method for transmitting 360-degree video, method for receiving 360-degree video, apparatus for transmitting 360-degree video, and apparatus for receiving 360-degree video
KR20200000363A (ko) * 2018-06-22 2020-01-02 엘지전자 주식회사 360도 비디오를 송수신하는 방법 및 그 장치
US10893254B2 (en) 2018-06-22 2021-01-12 Lg Electronics Inc. Method for transmitting 360-degree video, method for receiving 360-degree video, apparatus for transmitting 360-degree video, and apparatus for receiving 360-degree video
KR20200066707A (ko) * 2018-07-13 2020-06-10 엘지전자 주식회사 동적 뷰포인트의 좌표계에 대한 메타데이터를 송수신하는 방법 및 장치
US10965928B2 (en) 2018-07-31 2021-03-30 Lg Electronics Inc. Method for 360 video processing based on multiple viewpoints and apparatus therefor
KR20200065087A (ko) * 2018-07-31 2020-06-08 엘지전자 주식회사 다중 뷰포인트 기반 360 비디오 처리 방법 및 그 장치
WO2020027349A1 (ko) * 2018-07-31 2020-02-06 엘지전자 주식회사 다중 뷰포인트 기반 360 비디오 처리 방법 및 그 장치
WO2020204253A1 (ko) * 2019-04-04 2020-10-08 전자부품연구원 관심 영역 기반의 vr 영상 수신 장치 및 방법
KR20210086223A (ko) * 2019-12-31 2021-07-08 엘지전자 주식회사 Xr 컨텐트 제공 방법 및 xr 컨텐트 제공 디바이스
US11861797B2 (en) 2020-07-23 2024-01-02 Samsung Electronics Co., Ltd. Method and apparatus for transmitting 3D XR media data

Also Published As

Publication number Publication date
US10863235B2 (en) 2020-12-08
EP3497940A4 (en) 2019-06-19
KR102545195B1 (ko) 2023-06-19
EP3497940B1 (en) 2024-07-03
WO2018048286A1 (en) 2018-03-15
EP3497940A1 (en) 2019-06-19
US20180077451A1 (en) 2018-03-15

Similar Documents

Publication Publication Date Title
KR102545195B1 (ko) 가상 현실 시스템에서 컨텐트 전송 및 재생 방법 및 장치
US11700352B2 (en) Rectilinear viewport extraction from a region of a wide field of view using messaging in video transmission
US11388381B2 (en) Suggested viewport indication for panoramic video
KR102294098B1 (ko) 콘텐츠를 제공 및 디스플레이하기 위한 장치 및 방법
US11308581B2 (en) Spherical rotation for encoding wide view video
CN108271044B (zh) 一种信息的处理方法及装置
US10313728B2 (en) Information processing apparatus and information processing method
WO2019007120A1 (zh) 一种媒体数据的处理方法和装置
US20230328329A1 (en) User-chosen, object guided region of interest (roi) enabled digital video

Legal Events

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