KR20180040507A - 가상 현실 영상을 처리하는 방법 및 장치 - Google Patents

가상 현실 영상을 처리하는 방법 및 장치 Download PDF

Info

Publication number
KR20180040507A
KR20180040507A KR1020170132770A KR20170132770A KR20180040507A KR 20180040507 A KR20180040507 A KR 20180040507A KR 1020170132770 A KR1020170132770 A KR 1020170132770A KR 20170132770 A KR20170132770 A KR 20170132770A KR 20180040507 A KR20180040507 A KR 20180040507A
Authority
KR
South Korea
Prior art keywords
track
viewport
virtual reality
image
degrees
Prior art date
Application number
KR1020170132770A
Other languages
English (en)
Other versions
KR102527816B1 (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 삼성전자주식회사
Publication of KR20180040507A publication Critical patent/KR20180040507A/ko
Priority to KR1020230054657A priority Critical patent/KR102642406B1/ko
Application granted granted Critical
Publication of KR102527816B1 publication Critical patent/KR102527816B1/ko

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • 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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • 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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T3/0037
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/06Topological mapping of higher dimensional structures onto lower dimensional surfaces
    • G06T3/067Reshaping or unfolding 3D tree structures onto 2D planes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/12Panospheric to cylindrical image transformations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/16Spatio-temporal transformations, e.g. video cubism
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/243Image signal generators using stereoscopic image cameras using three or more 2D image sensors
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/363Image reproducers using image projection screens
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/398Synchronisation thereof; Control thereof
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y10/00Economic sectors
    • G16Y10/75Information technology; Communication
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y40/00IoT characterised by the purpose of the information processing
    • G16Y40/50Safety; Security of things, users, data or systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Library & Information Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Processing Or Creating Images (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Processing (AREA)

Abstract

본 개시의 일면에 따른 가상 현실 영상을 처리하는 방법은, 뷰포트를 선택하는 과정과; 상기 선택된 뷰포트와 관련된 정보를 송신하는 과정과; 상기 선택된 뷰포트와 중첩되는 가상 현실(virtual reality, VR) 컨텐츠와 관련된 적어도 하나의 트랙을 수신하는 과정과; 상기 수신된 적어도 하나의 트랙으로부터 메타데이터를 획득하는 과정과; 상기 수신된 메타데이터 및 상기 선택된 뷰포트에 기반하여, 상기 수신된 적어도 하나의 트랙으로부터 상기 선택된 뷰포트를 렌더링하는 과정을 포함할 수 있다.

Description

가상 현실 영상을 처리하는 방법 및 장치{METHOD AND APPARATUS OF PROCESSING VIRTUAL REALITY IMAGE}
본 개시는 적응적인 가상 현실(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 기술과 다양한 산업 간의 융합 및 복합을 통하여 스마트홈, 스마트 빌딩, 스마트 시티, 스마트 카 혹은 커넥티드 카, 스마트 그리드, 헬스 케어, 스마트 가전, 첨단의료서비스 등의 분야에 응용될 수 있다.한편, IoT을 구현을 위한 컨텐트들 역시 진화하고 있다. 즉, 흑백 컨텐츠에서 컬러 컨텐츠 고선명(High Definition: HD), 초고선명(Ultra High Definition Television : UHD), 최근의 HDR(high dynamic range) 컨텐츠 표준화 및 배포로 계속 진화해 감에 따라, 오큘러스(Oculus), 삼성 기어 VR 등과 같은 VR 장치들에서 재생될 수 있는 가상 현실(VR: virtual reality) 컨텐츠에 대한 연구가 진행 중이다. VR 시스템의 근본적인 토대는 사용자를 모니터링하여, 사용자가 어떤 종류의 제어기를 사용하여 컨텐츠 디스플레이 장치나 프로세싱 유닛으로 피드백 입력을 제공할 수 있게 하면 그 장치나 유닛이 해당 입력을 처리하여 컨텐츠를 그에 맞춰 조정함으로써 인터랙션을 가능하게 하는 시스템이다.
VR 에코시스템 안의 기본 구성들은 예를 들어, HMD(head mounted display), 무선, 모바일 VR, TV들, CA VE(cave automatic virtual environment)들, 주변기기 및 햅틱스[VR에 입력을 제공하기 위한 다른 제어기들], 컨텐트 캡처[카메라, 비디오 스티칭], 컨텐트 스튜디오[게임, 라이브, 영화, 뉴스 및 다큐멘터리], 산업적 응용[교육, 건강관리, 부동산, 건설, 여행], 생산 도구 및 서비스[3D 엔진, 프로세싱 파워], 앱 스토어[VR 미디어 컨텐츠 용] 등을 포함하여 구성될 수 있다.
그리고, VR 컨텐츠를 구성하기 위해서 수행되는, 360도 영상 컨텐츠의 캡쳐, 부호화 및 전송에 대해 3D, 360도 컨텐츠를 위해 특히 설계될 수 있는 차세대 post-HEVC(High Efficiency Video Coding) 코덱의 구현 없이 많은 도전에 직면하고 있는 실정이다.
따라서, VR 컨텐츠를 보다 효율적으로 구성하여 소비할 수 있는 방안이 요구된다.
본 개시는 가상 현실(VR: virtual reality) 영상을 처리하는 방법 및 장치를 제안한다.
또한, 본 개시는 송신측에서 VR 컨텐츠를 구성하는 영상들을 왜곡 없이 렌더링하기 위한 정보들을 구성하여 이를 시그널링하는 방법 및 장치를 제안한다.
또한, 본 개시는 수신측에서 VR 컨텐츠의 시그널링 정보를 기반으로, 해당 VR 컨텐츠를 재생하는 방법 및 장치를 제안한다.
본 개시의 일면에 따른 가상 현실 영상을 처리하는 방법은, 뷰포트를 선택하는 과정과; 상기 선택된 뷰포트와 관련된 정보를 송신하는 과정과; 상기 선택된 뷰포트와 중첩되는 가상 현실(virtual reality, VR) 컨텐츠와 관련된 적어도 하나의 트랙을 수신하는 과정과; 상기 수신된 적어도 하나의 트랙으로부터 메타데이터를 획득하는 과정과; 상기 수신된 메타데이터 및 상기 선택된 뷰포트에 기반하여, 상기 수신된 적어도 하나의 트랙으로부터 상기 선택된 뷰포트를 렌더링하는 과정을 포함할 수 있다.
또한, 상기 뷰포트와 관련된 정보는 뷰포인트 정보 및 FOV(field of view) 정보를 포함하고, 상기 뷰포인트 정보는 구면 좌표와 관련된 중심 요우 각 및 중심 피치 각을 포함하고, 상기 FOV 정보는 요우 각의 폭 및 피치 각의 폭을 포함할 수 있다.
또한, 상기 중심 요우 각은 -180도 이상 180도 이하이고, 상기 피치 각은 -90도 이상 90도 이하이고, 상기 요우 각의 폭은 0도 이상 360도 이하이고, 상기 피치 각의 폭은 0도 이상 180도 이하일 수 있다.
또한, 상기 메타 데이터는: 상기 적어도 하나의 트랙의 스티칭 여부, 상기 적어도 하나의 트랙의 전체 커버리지 범위, 상기 적어도 하나의 트랙이 상기 360 영상의 전체인지 부분인지 여부, 상기 적어도 하나의 트랙의 수평 활성 범위, 상기 적어도 하나의 트랙의 수직 활성 범위, 상기 적어도 하나의 트랙이 정다면체 투영법에 의한 것인지 여부, 상기 정다면체의 종류, 및 상기 적어도 하나의 트랙의 FOV 정보 중 적어도 하나를 포함할 수 있다. 상기 메타데이터는, 상기 뷰포트와 중첩되는 상기 적어도 하나의 트랙과 하나 이상의 트랙들 사이의 의존성에 대한 정보를 포함할 수 있다.
상기 적어도 하나의 트랙은 상기 가상 현실 컨텐츠의 전체 지오메트리(geometry)를 포함할 수 있고, 상기 가상 현실 컨텐츠의 전체 지오메트리 중 일부만 포함할 수도 있다. 상기 적어도 하나의 트랙은, 등장방형 투영(ERP, equiretangular projection) 방법 또는 정다면체 투영(platonic solid projection) 방법에 따라 생성될 수 있다. 상기 적어도 하나의 트랙의 개수는 2 이상이고, 서로 중첩되지 아니하고, 서로 의존성을 갖을 수 있다.
본 개시의 다른 면에 따른 가상 현실 영상을 처리하는 장치는, 송수신기; 가상 현실 영상 처리 모듈을 저장하는 메모리; 및 상기 송수신기와 상기 메모리와 연결되어 상기 가상 현실 영상 처리 모듈을 실행하는 제어기를 포함하고, 상기 제어기는 뷰포트를 선택하고, 상기 선택된 뷰포트와 관련된 정보를 송신하고, 상기 선택된 뷰포트와 중첩되는 가상 현실(virtual reality, VR) 컨텐츠와 관련된 적어도 하나의 트랙을 수신하고, 상기 수신된 적어도 하나의 트랙으로부터 메타데이터를 획득하고, 상기 수신된 메타데이터 및 상기 선택된 뷰포트에 기반하여, 상기 수신된 적어도 하나의 트랙으로부터 상기 선택된 뷰포트를 렌더링하도록 구성될 수 있다.
본 개시의 다른 측면들과, 이득들 및 핵심적인 특징들은 부가 도면들과 함께 처리되고, 본 개시의 바람직한 실시예들을 게시하는, 하기의 구체적인 설명으로부터 해당 기술 분야의 당업자에게 자명할 것이다.
하기의 본 게시의 구체적인 설명 부분을 처리하기 전에, 이 특허 문서를 통해 사용되는 특정 단어들 및 구문들에 대한 정의들을 설정하는 것이 효과적일 수 있다: 상기 용어들 “포함하다(include)” 및 “포함하다(comprise)”과 그 파생어들은 한정없는 포함을 의미하며; 상기 용어 “혹은(or)”은 포괄적이고 '및/또는'을 의미하고; 상기 구문들 “~와 연관되는(associated with)” 및 ““~와 연관되는(associated therewith)”과 그 파생어들은 포함하고(include), ~내에 포함되고(be included within), ~와 서로 연결되고(interconnect with), 포함하고(contain), ~내에 포함되고(be contained within), ~에 연결하거나 혹은 ~와 연결하고(connect to or with), ~에 연결하거나 혹은 ~와 연결하고(couple to or with), ~와 통신 가능하고(be communicable with), ~와 협조하고(cooperate with), 인터리빙하고(interleave), 병치하고(juxtapose), ~로 가장 근접하고(be proximate to), ~로 ~할 가능성이 크거나 혹은 ~와 ~할 가능성이 크고(be bound to or with), 가지고(have), 소유하고(have a property of) 등과 같은 것을 의미하고; 상기 용어 “제어기”는 적어도 하나의 동작을 제어하는 임의의 디바이스, 시스템, 혹은 그 부분을 의미하고, 상기와 같은 디바이스는 하드웨어, 펌웨어 혹은 소프트웨어, 혹은 상기 하드웨어, 펌웨어 혹은 소프트웨어 중 적어도 2개의 몇몇 조합에서 구현될 수 있다. 어떤 특정 제어기와 연관되는 기능성이라도 집중화되거나 혹은 분산될 수 있으며, 국부적이거나 원격적일 수도 있다는 것에 주의해야만 할 것이다. 특정 단어들 및 구문들에 대한 정의들은 이 특허 문서에 걸쳐 제공되고, 해당 기술 분야의 당업자는 많은 경우, 대부분의 경우가 아니라고 해도, 상기와 같은 정의들이 종래 뿐만 아니라 상기와 같이 정의된 단어들 및 구문들의 미래의 사용들에도 적용된다는 것을 이해해야만 할 것이다.
도 1은 본 개시에 따른 적응적인 가상 현실 영상을 처리하는 방법이 구현되는 컴퓨터 시스템의 구성을 설명하기 위한 예시도이다.
도 2A, 2B 및 2C는 본 개시에 따른 ERP 영상의 예시도들을 나타낸다.
도 3A, 3B 및 3C는 본 개시에 따른 뷰포트(viewport) 영상의 예시도들을 나타낸다.
도 4는 뷰포트 영상과 ERP 영상을 매핑하는 방법을 설명하기 위한 예시도이다.
도 5는 뷰포트 영상과 ERP 영상을 매핑하는 방법을 설명하기 위한 예시도이다.
도 6A, 6B 및 6C는 생성한 뷰포트 영상에 나타나는 재깅(zagging), 흐릿함(blur), 우둘투둘함(aliasing)을 설명하기 위한 예시도이다.
도 7 및 8은 본 개시에 따른 뷰포트 영상과 ERP 영상을 매핑하는 방법을 설명하기 위한 예시도이다.
도 9(a)는 뷰포트 영상을 나타내는 도면이고, 도 9(b)는 구형 좌표계에서 요와 피치를 나타내는 도면이다.
도 10은 구형 좌표계의 좌표를 ERP 영상의 좌표에 매핑하는 방법을 설명하기 위한 예시도이다.
도 11은 본 개시에 따른 다면체를 이용하여 360도 영상을 획득하는 방법을 설명하기 위한 예시도이다. 도 11(a)는 다면체별 2차원 전개도를 나타내고, 도 11(b)는 육면체의 2차원전개도의 예시도이고, 도 11(c)는 20면체의 2차원 전개도의 예시도이다.
도 12는 본 개시에 따른 ERP 영상에서 뷰포트를 렌더링하는것과 관련한 뷰포인트 추적을 설명하기 위한 도면이다.
도 13는 본 개시에 따른 육면체 투명(cubical projection)에서 뷰포트를 렌더링하는것과 관련한 뷰포인트 추적을 설명하기 위한 도면이다.
도 14는 360도 영상을 캡처하기 위한 카메라 장치들을 나타낸다.
도 15는 360도 영상을 캡처하는 카메라 장치들의 형태에 따른 촬영범위를 설명하기 위한 예시도이다. 도 15(a)는 정사면체 형태의 카메라 장치, 도 15(b)는 정육면체 형태의 카메라 장치, 도 15(ㅊ)는 정십이면체 형태의 카메라 장치에 따른 촬영범위를 나타낸다.
도 16은 구면 영상으로부터 투명하는 방법을 설명하기 위한 예시도이다.
도 17은 육면체 투영 방법을 설명하기 위한 예시도이다.
도 18은 팔면체 투영 방법을 설명하기 위한 예시도이다.
이하 첨부된 도면을 참조하여 본 개시의 바람직한 실시 예에 대한 동작 원리를 상세히 설명한다. 도면상에 표시된 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 참조번호로 나타내었으며, 다음에서 본 개시를 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 개시에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
본 개시는 다양한 변경을 가할 수 있고 여러 가지 실시 예들을 가질 수 있는 바, 특정 실시 예들을 도면들에 예시하여 상세하게 설명한다. 그러나, 이는 본 개시를 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 개시의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
또한, 본 명세서에서 명백하게 다른 내용을 지시하지 않는 “한”과, “상기”와 같은 단수 표현들은 복수 표현들을 포함한다는 것이 이해될 수 있을 것이다. 따라서, 일 예로, “컴포넌트 표면(component surface)”은 하나 혹은 그 이상의 컴포넌트 표면들을 포함한다.
또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 개시의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
또한, 본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 개시를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 본 개시의 실시 예들에서, 별도로 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 개시의 실시 예에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
본 개시의 다양한 실시 예들에 따르면, 전자 디바이스는 통신 기능을 포함할 수 있다. 일 예로, 전자 디바이스는 스마트 폰(smart phone)과, 태블릿(tablet) 개인용 컴퓨터(personal computer: PC, 이하 'PC'라 칭하기로 한다)와, 이동 전화기와, 화상 전화기와, 전자책 리더(e-book reader)와, 데스크 탑(desktop) PC와, 랩탑(laptop) PC와, 넷북(netbook) PC와, 개인용 복합 단말기(personal digital assistant: PDA, 이하 'PDA'라 칭하기로 한다)와, 휴대용 멀티미디어 플레이어(portable multimedia player: PMP, 이하 'PMP'라 칭하기로 한다)와, 엠피3 플레이어(mp3 player)와, 이동 의료 디바이스와, 카메라와, 웨어러블 디바이스(wearable device)(일 예로, 헤드-마운티드 디바이스(head-mounted device: HMD, 일 예로 'HMD'라 칭하기로 한다)와, 전자 의류와, 전자 팔찌와, 전자 목걸이와, 전자 앱세서리(appcessory)와, 전자 문신, 혹은 스마트 워치(smart watch) 등이 될 수 있다.
본 개시의 다양한 실시 예들에 따르면, 전자 디바이스는 통신 기능을 가지는 스마트 가정용 기기(smart home appliance)가 될 수 있다. 일 예로, 상기 스마트 가정용 기기는 텔레비전과, 디지털 비디오 디스크(digital video disk: DVD, 이하 'DVD'라 칭하기로 한다) 플레이어와, 오디오와, 냉장고와, 에어 컨디셔너와, 진공 청소기와, 오븐과, 마이크로웨이브 오븐과, 워셔와, 드라이어와, 공기 청정기와, 셋-탑 박스(set-top box)와, TV 박스 (일 예로, Samsung HomeSyncTM, Apple TVTM, 혹은 Google TVTM)와, 게임 콘솔(gaming console)과, 전자 사전과, 캠코더와, 전자 사진 프레임 등이 될 수 있다.
본 개시의 다양한 실시 예들에 따르면, 전자 디바이스는 의료 기기(일 예로, 자기 공명 혈관 조영술(magnetic resonance angiography: MRA, 이하 'MRA'라 칭하기로 한다) 디바이스와, 자기 공명 화상법(magnetic resonance imaging: MRI, 이하 “MRI”라 칭하기로 한다)과, 컴퓨터 단층 촬영(computed tomography: CT, 이하 'CT'라 칭하기로 한다) 디바이스와, 촬상 디바이스, 혹은 초음파 디바이스)와, 네비게이션(navigation) 디바이스와, 전세계 위치 시스템(global positioning system: GPS, 이하 'GPS'라 칭하기로 한다) 수신기와, 사고 기록 장치(event data recorder: EDR, 이하 'EDR'이라 칭하기로 한다)와, 비행 기록 장치(flight data recorder: FDR, 이하 'FER'이라 칭하기로 한다)와, 자동차 인포테인먼트 디바이스(automotive infotainment device)와, 항해 전자 디바이스(일 예로, 항해 네비게이션 디바이스, 자이로스코프(gyroscope), 혹은 나침반)와, 항공 전자 디바이스와, 보안 디바이스와, 산업용 혹은 소비자용 로봇(robot) 등이 될 수 있다.
본 개시의 다양한 실시 예들에 따르면, 전자 디바이스는 통신 기능을 포함하는, 가구와, 빌딩/구조의 일부와, 전자 보드와, 전자 서명 수신 디바이스와, 프로젝터와, 다양한 측정 디바이스들(일 예로, 물과, 전기와, 가스 혹은 전자기 파 측정 디바이스들) 등이 될 수 있다.
본 개시의 다양한 실시 예들에 따르면, 전자 디바이스는 상기에서 설명한 바와 같은 디바이스들의 조합이 될 수 있다. 또한, 본 개시의 바람직한 실시 예들에 따른 전자 디바이스는 상기에서 설명한 바와 같은 디바이스에 한정되는 것이 아니라는 것은 당업자에게 자명할 것이다.
본 개시의 다양한 실시 예들에 따르면, VR 컨텐츠를 송수신하는 기기는 일 예로, 전자 디바이스가 될 수 있다.
이하, 본 개시의 실시 예들에서 사용되는 용어들을 아래와 같이 정의한다. 영상은 동영상(video), 정지 영상(image) 등이 될 수 있으며, 영상 컨텐츠는 동영상, 정지 영상 등은 물론 관련된 오디오, 자막 등을 포함하는 각종 멀티미디어 컨텐츠를 포함할 수 있다. VR 컨텐츠는 상기 영상을 360도 영상, 3D 영상 등으로 제공하는 영상 컨텐츠를 포함한다. 미디어 파일 포맷은 ISO(International Organization for Standardization) 기반 미디어 파일 포맷(ISOBMFF) 등과 같은 각종 미디어 관련 규격에 따른 미디어 파일 포맷 등이 될 수 있다. 그리고 투영(projection)은 360도 영상 등의 표현을 위한 구형 영상(spherical image)이 평면(planar surface) 상에 투영되는 처리 또는 그 처리 결과에 따른 영상 프레임을 의미한다. 맵핑(mapping)은 상기 투영에 따른 평면 상의 영상 데이터가 2D 평면에 매핑되는 처리 또는 그 처리 결과에 따른 영상 프레임을 의미한다. 전방향 미디어(omnidirectional media)는 예컨대, 사용자가 HMD를 이용하였을 때 사용자의 머리 움직임의 방향에 따라 또는 사용자의 뷰 포트(viewport)에 따라 렌더링될 수 있는 (동)영상(image or video) 및/또는 관련된 오디오를 포함한다. 상기 뷰 포트는 FOV(Field Of View)로 칭해질 수 있으며, 특정 시점에 사용자에게 보여지는 영상의 영역(여기서 상기 영상의 영역은 상기 구형 영상의 영역 등이 될 수 있다.)을 의미한다.
이하, 본 발명의 바람직한 실시예에 대하여 첨부한 도면을 참조하여 상세히 설명하기로 한다.
도 1은 본 발명에 따른 적응적인 가상 현실 영상을 처리하는 방법이 구현되는 컴퓨터 시스템의 구성을 설명하기 위한 예시도이다.
한편, 본 발명의 실시예에 따른 적응적인 가상 현실 영상을 처리하는 방법은 컴퓨터 시스템에서 구현되거나, 또는 기록매체에 기록될 수 있다. 도 1에 도시된 바와 같이, 컴퓨터 시스템은 적어도 하나 이상의 프로세서(110)와, 메모리(120)를 포함할 수 있다.
프로세서(110)는 CPU(central processing unit; 중앙 처리 장치)이거나, 혹은 메모리(120)에 저장된 명령어를 처리하는 반도체 장치일 수 있다.
프로세서(110)는 컴퓨터 시스템(100)의 모든 동작을 제어하는 제어기(controller)일 수 있다. 상기 제어기는 메모리(120)에서 저장된 프로그램 코드를 읽어내어 실행함으로써 컴퓨터 시스템(100)이 작동하는 동작들을 실행할 수 있다.
컴퓨터 시스템(100)은 사용자 입력 장치(150)와, 데이터 통신 버스(130)와, 사용자 출력 장치(160)와, 저장소(140)를 포함할 수 있다. 전술한 각각의 구성 요소는 데이터 통신 버스(130)를 통해 데이터 통신을 할 수 있다.
컴퓨터 시스템은 네트워크(180)에 연결된 네트워크 인터페이스(170)를 더 포함할 수 있다.
메모리(120) 및 저장소(140)는 다양한 형태의 휘발성 혹은 비휘발성 저장매체를 포함할 수 있다. 예컨대, 메모리(120)는 ROM(123) 및 RAM(126)을 포함할 수 있다. 저장소(140)는 자기 테이프, 하드 디스크 드라이브(HDD), 솔리드 스테이트 드라이브(SDD), 광데이터 장치 및 플래시 메모리와 같은 비휘발성 메모리를 포함할 수 있다.
따라서, 본 발명의 실시예에 따른 적응적인 가상 현실 영상을 처리하는 방법은 컴퓨터에서 실행 가능한 방법으로 구현될 수 있다. 본 발명의 실시예에 따른 적응적인 가상 현실 영상을 처리하는 방법이 컴퓨터 장치에서 수행될 때, 컴퓨터로 판독 가능한 명령어들이 본 발명에 따른 운영 방법을 수행할 수 있다.
한편, 상술한 본 발명에 따른 적응적인 가상 현실 영상을 처리하는 방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체로는 컴퓨터 시스템에 의하여 해독될 수 있는 데이터가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래시 메모리, 광 데이터 저장장치 등이 있을 수 있다. 또한, 컴퓨터로 판독 가능한 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다.
도 2A, 2B 및 2C는 본 개시에 따른 ERP 영상의 예시도들을 나타낸다.
뷰포트는 사용자의 관점(perspective)에 따라 투명(projection)된 것을 의미한다. 가상 현실 컨텐츠(virtual reality content, VR content)를 볼 때, 기초 VR content의 '부분'이 VR 디스플레이 장치에 의하여 렌더링될 수 있다. 상기 기초 VR 컨텐츠의 상기 부분을 뷰포트라 한다. 예컨대, 사용자의 머리의 움직임에 기초하여, 헤드 마운티드 디스플레이 장치(Head mounted device, HMD)가 뷰포트를 렌더링할 수 있다.
뷰포트는 다양한 의미로 사용될 수 있다. HMD의 디스플레이 부분을 지칭할 수 있고, 전체 VR 컨텐츠 중 렌더링할 부분을 지칭할 수 있으며, 상기 렌더링 할 부분을 선별하기 위한 정보를 뷰포트라 지칭할 수 있다.
전방향 영상(omnidirectional image)의 경우, 구형 좌표계(spherical coordinate) 또는 등장방형 투영(equiretangular projection)에서 전체 컨텐츠 중 사용자 보는 관점(perspective)에 해당하는 영상, 즉 '전체 영상의 부분'을 뷰포트라 지칭하는 것이 통상적이므로, 뷰포트에 관련된 정보는 뷰포인트(viewpoint)와 FoV(Field of view)를 포함한다. 뷰포인트는 구형 좌표계에서 사용자의 시점이 지향하는 지점(viewing orientation point)을 의미하고, FoV는 커버리지 영역과 관련된 것으로, HMD의 디스플레이에 출력될 시야의 범위를 나타낸다. viewpoint는 구형 좌표계에서의 요우 각(yaw angle) 및 피치 각(pitch angle)으로 나타낼 수 있고, FoV는 요우 각의 너비 및 피치 각의 너비를 각도 단위로 나타낼 수 있다.
본 개시에 따른 전방향 비디오 영상은 4k 등장방형 투영(ERP, Equiretangular projection) 영상일 수 있다. 4k ERP 영상의 해상도는 4096 x 2048일 수 있다. 4k는 가로축 해상도인 4096을 의미할 수 있다. 본 개시에 따른 뷰포트 영상의 해상도는 640 x 720 일 수 있다. 이는 헤드 마운티드 디스플레이 장치의 양안에 대응되는 왼쪽 이미지와 오른쪽 이미지 각각이 640 x 720 일 수 있다.
구체적인 수치는 예시적인 것이며, 본 개시의 기술적 범위를 제한하는 것은 아니다. 예컨대, 4k ERO 영상의 해상도는 3840 x 2160 또는 3840 x 1920 일 수 있고, 뷰포트 영상의 해상도는 630 x 700일 수 있다.
도 3A, 3B 및 3C는 본 개시에 따른 뷰포트(viewport) 영상의 예시도들을 나타낸다.
도 3A, 3B 및 3C에 개시된
Figure pat00001
는 뷰포인트의 중심 요 각(center yaw angle)을 의미하고,
Figure pat00002
는 중심 피치 각(center pitch angle)을 의미한다.
뷰포인트는 중심 요 각 및 중심 피치 각에 의하여 정하여질 수 있다. 예컨대, 뷰포인트를 viewpoint = (center_yaw, center_pitch)와 같이 나타낼 수 있다.
예컨대, 도 3A는 뷰포인트가 (0˚, 0˚)인 경우, 도 3B는 뷰포인트가 (0˚, 45˚)인 경우, 도 3A는 뷰포인트가 (0˚, 90˚)인 경우에 대한 헤드 마운티드 디스플레이의 양안의 디스플레이 화면을 나타낸다.
뷰포인트를 나타내는 center_yaw 및 center_pitch는 각도로 환산될 수 있는 것이라면, 다양한 실시예를 가질 수 있다. center_yaw 및 center_pitch는 부동소수점 방식 또는 고정소수점 방식으로 나타낼 수 있다. 또는, 기본 단위(base unit)에 기반하여, 정수로 나타낼 수 있다. 예컨대, 기본 단위를 (2-16˚)로 하고, center_yaw = 100 x 216 라 하면, center_yaw는 100˚를 의미하게 된다.
도 4는 뷰포트 영상과 ERP 영상을 매핑하여, 뷰포트를 렌더링하는 방법을 설명하기 위한 예시도이다.
먼저, 퍼스펙티브(perspective), 아지무달(azimuthal) 등의 투영 방법(projection method)을 사용하여, 뷰포트(viewport)의 좌표 (x, y)를 구형 좌표계의 좌표 (θ, φ )로 변환한다. 이때, θ는 요우 각을 의미하고, φ는 피치 각을 의미한다. 변환된 구형 좌표계의 좌표 (θ, φ )를 ERP 영상의 서브 픽셀 (u, v)로 변환한다. 도 4의 ERP 영상은 전방향 비디오 영상(omnidirectional video coordinate)이다. 즉, u의 범위는 -180˚ < u < 180˚로 정하여지고, v의 범위는 -90˚ < u < 90˚로 정하여진다.
서브 픽셀 (u, v)를 포함하는 인접 픽셀들의 픽셀 값들을 획득하고, 상기 획득한 인접 픽셀들의 픽셀 값들에 기반하여, 뷰포트의 좌표 (x, y)에 대응하는 픽셀 값을 산출할 수 있다. 또한, 상기 획득한 인접 픽셀들의 픽셀 값들에 가중치를 적용하여 뷰포트의 좌표 (x, y)에 대응하는 픽셀 값을 산출할 수 있다.
또한, 본 개시에 따른 가상 현실 영상을 처리하는 방법은 뷰포트의 좌표 (x, y)로부터 ERP 영상의 서브 픽셀 (u, v)를 즉시 획득할 수 있다. 이때, 뷰포트의 좌표 (x, y)와 ERP 영상의 서브 픽셀 (u, v)의 대응 관계를 나타내는 대응 표를 실험적으로 미리 획득하고, 상기 대응표를 이용하여 뷰포트의 좌표 (x, y)에 대응하는 ERP 영상의 서브 픽셀 (u, v)를 즉시 획득할 수 있다.
다음 수식에 따라 서브 픽셀 (u, v)를 포함하는 인접 픽셀들의 픽셀 값들로부터, 뷰포트의 좌표 (x, y)의 픽셀 값을 산출할 수 있다.
Figure pat00003
도 5는 뷰포트 영상과 ERP 영상을 매핑하여, 뷰포트를 렌더링하는 방법을 설명하기 위한 예시도이다.
도 5의 왼쪽 그림은 요우 각이 0˚이고, 피치 각이 45˚인 뷰포트이고, 도 5의 오른쪽 그림은 4k ERP 영상을 의미한다. 도 5는 뷰포트와 4k ERP 영상 사이의 매핑 관계를 나타낸다. 통상 뷰포트의 하단 라인과 매핑되는 ERP 영상의 하단 곡선의 곡률(curvature)보다 뷰포트의 상단 라인과 매핑되는 ERP 영상의 상단 곡선의 곡률이 더 크다. 뷰포트의 하단 라인 및 상단 라인에 대응되는 ERP 영상의 하단 곡선 및 상단 곡선은 실험적으로 획득할 수 있다.
뷰포트의 각 행(row) 별로 샘플링 비율(sampling rate)이 다르므로, 뷰포트의 좌표의 픽셀 값을 구하기 위하여 ERP 영상에 4x4 또는 2x2 등의 일정한 보간 마스크(interpolation mask)를 사용하여 뷰포트의 좌표에 대응하는 픽셀 값을 산출하는 것은 큰 오차가 발생하는 문제를 내포하고 있다. 뷰포트의 각 행 별로, 다른 샘플링 비율을 적용할 수 있는 방법이 필요하다.
본 개시에 따른 뷰포트의 렌더링 방법은 뷰포트의 수평 라인 별로 렌더링 할 수 있다. 각 수평 라인에 대하여, 4k ERP 영상에 대응되는 각 곡선을 미리 획득하고, 뷰포트의 각 수평 라인에 대응하는 각 곡선을 따라서, 보간법(interpolation method)에 따라 뷰포트의 좌표 (x, y)에 대응하는 픽셀 값을 산출할 수 있다.
도 6A, 6B 및 6C는 생성한 뷰포트 영상에 나타나는 재깅(zagging), 흐릿함(blur), 우둘투둘함(aliasing)을 설명하기 위한 예시도이다.
도 6A는 뷰포트의 좌표 (x, y)에 대응하는 픽셀 값을 산출하기 위하여, 최근방법(nearest neighborhood method)을 사용한 결과를 나타낸다. 최근방법은 상기 ERP 영상의 서브 픽셀 (u, v)에 가장 가까운 픽셀 값을 이용하여 뷰포트의 좌표 (x, y)에 대응하는 픽셀 값을 산출하는 방법이다. 가장 가까운 픽셀 값을 이용하기 때문에, 축소 변환의 경우, 유실되는 픽셀이 존재하게 되므로, zagging 현상(지그재그 모양의 무늬가 생김)이 나타날 수 있다.
도 6B는 뷰포트의 좌표 (x, y)에 대응하는 픽셀 값을 산출하기 위하여, Bi-linear 보간법을 사용한 결과를 나타낸다. Bi-linear 보간법은 통상 linear 보간법을 수평 방향 또는 수직 방향으로 연속적으로 2회 보간하는 방법이다. bi-linear 보간법는 수평 방향 또는 수직 방향으로 보간하므로, 빠르게 처리할 수 있으나, 라인 별로 보간법을 적용하므로, 라인 내의 이미지는 부드럽게 처리되는 반면, 라인 간의 이미지는 편차가 발생하여 blur 현상(영상이 흐릿해짐)이 나타날 수 있다.
도 6C는 뷰포트의 좌표 (x, y)에 대응하는 픽셀 값을 산출하기 위하여, Bi-cubic 보간법을 사용한 결과를 나타낸다. bi-cubic 보간법을 큐빅 보간법을 연속적으로 2회 보간하는 방법이다. ERP의 서브픽셀의 상하좌우에 위치하는 픽셀값을 이용하여, 가중 평균값을 뷰포트의 픽셀 값으로 사용하므로, 알리아싱(aliasing) 현상(우툴두툴한 질감이 생김)이 발생할 수 있다.
도 7 및 8은 본 개시에 따른 뷰포트 영상과 ERP 영상을 매핑하는 방법을 설명하기 위한 예시도이다.
도 7은 뷰포트의 한 픽셀에 대하여, ERP 영상에서의 복수의 인접 픽셀들을 결정하는 방법을 설명하기 위한 예시도 이다. 뷰포트의 한 픽셀의 중심점과 4개의 꼭지점을 산출하고, 산출된 중심점과 4개의 꼭지점의 좌표에 해당하는 뷰포트의 서브 픽셀들을 산출한다. 상기 뷰포트의 서브 픽셀들에 대응되는 ERP 영상의 서브 픽셀들을 산출하고, ERP 영상의 서브 픽셀들을 각각의 인접 픽셀들을 결정한다.
도 8은 상기 결정된 인접 픽셀들의 픽셀 값들을 가중 평균하여, 상기 중심점 및 상기 4개의 꼭지점의 픽셀 값들을 산출한다. 각 점에 대한 픽셀 값 산출 방법은 도 4에서 설명한 방법과 유사하다.
먼저 뷰포트의 한 픽셀의 중심점을 (x0, y0) 이라 하고, 상기 픽셀의 꼭지점들을 각각 (x1, y1), (x2, y2), (x3, y3), (x4 y4)이라 할 때, 상기 중심점 및 상기 꼭지점들은 각각 뷰포트의 서브 픽셀을 나타내는 것이다. 뷰포트의 서브 픽셀은 (xj, yj)로 표시할 수 있고, 하기 수식에 따라 계산할 수 있다.
Figure pat00004
상기 수식의 결과를 이용하여 뷰포트의 픽셀 (x, y)의 픽셀 값은 하기 수식에 따라 계산할 수 있다.
Figure pat00005
도 9(a)는 뷰포트 영상을 나타내는 도면이고, 도 9(b)는 구형 좌표계에서 요우 각와 피치 각을 나타내는 도면이다.
뷰포트는 2가지 방식으로 나타낼 수 있다. 1)뷰포트가 뷰포인트(viewpoint)와 FOV(field of view)를 포함하는 방식과, 2) 뷰포트 자체를 표현하는 방식이다.
뷰포인트와 FoV는 하기 수식과 같이 표현할 수 있다.
Figure pat00006
또한, 뷰포트는 뷰포인트 및 FoV를 사용하는 대신, 하기 수식과 같이 표현할 수 있다.
Figure pat00007
[수학식 4]와 [수학식 5] 사이에는 다음과 같은 관계식을 갖는다.
Figure pat00008
예컨대, viewpoint = (90°, 0°), 및 FOV = (120°, 100°) 일 때, viewport = (150°, 30°; 50°, -50°)일 수 있다.
아키텍처 A( Architecture A): Track covering entire content geometry
도 10은 구형 좌표계의 좌표를 ERP 영상의 좌표에 매핑하는 방법을 설명하기 위한 예시도이다.
구형 좌표계(spherical coordinate의 좌표 (r, θ, φ)는 ERP 상의 좌표 (x, y)로 변환된다. 이때, x는 요우 각(θ)에 대응되고, y는 피치 각(φ)에 대응될 수 있다.
본 개시에 따른 일 실시예는 트랙이 전체 컨텐츠의 기하학적 구조(geometry, 지오메트리)를 포함하도록 설계할 수 있다.
아키텍처 A의 특징은 다음과 같다. 비디오 스트림 또는 비디오 트랙의 샘플들은 전체 컨텐츠의 기하학적 구조(geometry)를 포함할 수 있다. 예컨대, 도 10의 ERP 투영의 요우 각(θ)의 범위가 -180°< θ < 180°이고, 피치 각(φ)의 범위가 -90°< φ < 90° 일 경우, ERP 투영 영상(ERP projection image)은 전방향 영상(omnidirectional image)가 된다. 이를 360°영상, 전체 컨텐츠(entire content)라 할 수 있고, 더 간단히 360 영상, 360 비디오라 칭할 수 있다. 전형적으로, 구형 360 비디오를 캡처하고, 캡처한 360 비디오를 2차원 평면에 매핑함으로써, 아키텍처 A가 수행될 수 있다. 재생기(예컨대, HMD)는 뷰포트를 선택하고, 360도 비디오로부터 추출하여, 선택된 뷰포트를 렌더링 할 수 있다.
도 11은 본 개시에 따른 다른 실시예에 의하여, 360도 영상을 2차원 평면에 투영하는 방법을 설명하기 위한 예시도이다.
전방향 영상은 다른 투영 방법에 의하여 생성될 수도 있다. 예컨대, 정다면체를 이용하여, 360 영상을 생성하고, 생성된 360 영상들을 2차원 평면에 투영할 수 있다.
도 11(a)는 다면체에 따라, 3차원 모델과, 2차원 투영도, 다면체의 면의 개수를 나타낸다. 도 11(b)는 육면체의 2차원 투영도를 나타내고, 도 11(c)는 20면체의 2차원 투영도를 나타낸다.
도 11(a)는 구형 360도 영상을 2차원 평면으로 투영하는 다른 방법들을 개시하고 있다. 일반적으로 기본은 정다면체에 투영하는 것이다. 상기 정다면체는 복수의 2차원 평면으로 둘러쌀 수 있으므로, ERP와 유사하게 2차원 평면으로 나타낼 수 있다. ERP 영상은 구면에 투명되는 영상을 직사각형에 투영하여 직사각형 형태로 작성되나, 정다면체를 이용한 투영 방법은, 도 11(b) 및 도 11(c)의 경우와 같이, 검은색 영역과 같은 패딩 영역이 필요할 수 있다.
사용할 수 있는 다면체가 다양할 수 있으므로, HMD와 같은 클라이언트가 360 영상으로부터 뷰포트를 정확히 렌더링할 수 있도록, 파일 포맷(예컨대, ISOBMFF, international organization for standardization base media file format)에 기본 투영 방법에 관한 정보를 나타내는 것이 중요하다. 즉, 상기 ISOBMFF 형식으로 구성된 데이터는 메타데이터를 포함할 수 있고, 상기 메타데이터는 상기 기본 투영 방법에 관한 정보를 포함할 수 있다.
아키텍처 B(Architecture B): 뷰포트 기반 아키텍처
아키텍처 B는 뷰포트에 기반하여 설계된 것이다. 트랙은 스티칭되었을 수도 있고, 스티칭되지 아니할 수도 있다. 이를 뷰포트-기반 설계(viewport-based architecture)라 한다.
아키텍처 B에 따르면, 비디오 컨텐츠는 다수개로 분리될 수 있다. 각각은 구형 360 영상의 다른 부분을 커버한다. 분리된 각각을 트랙 뷰포트(track viewport)라고 할 수 있다. 상기 트랙 뷰포트들 사이에 중첩된 부분이 존재할 수 있고, 존재하지 아니할 수 있다. 통상 컨텐츠 서버 또는 카메라를 장착한 영상 처리 장치가 상기 트랙 뷰포트들을 생성한다.
클라이언트(예컨대, HMD)는 렌더링할 뷰포트를 선택한다. 선택된 뷰포트에 대응하는 적어도 하나의 트랙 뷰포트를 상기 컨텐츠 서버 또는 상기 영상 처리 장치에게 요청하고 수신한다. 그러나, HMD는 카메라 장치를 포함할 수 있고, 스스로 캡처한 영상으로부터 트랙 뷰포트를 획득하는 것을 본 개시의 범위에서 배제하는 것은 아니다.
선택된 뷰포트를 렌더링하기 위하여, 복수의 트랙 뷰포트들이 필요할 수 있다. 상기 복수의 트랙 뷰포트들 사이에는 의존성(dependency)이 있을 수 있다. 즉, 어떤 트랙 뷰포트는 단지 비디오 부분의 작은 부분을 나타나기 때문에, 단독으로 재생할 수 없을 수 있다. 즉, 의존적인 트랙은 다른 트랙들 없이 단독으로 프리젠테이션되지 아니할 수 있다.
상기 복수의 트랙 뷰포트들 사이에 의존성이 있는 경우, 클라이언트는 선택된 뷰포트와 중첩되는 트랙뷰포트와 관련된 뷰포트를 요청하고, 상기 선택된 뷰포트를 렌더링할 수 있다.
상기 트랙들은, 각각의 트랙이 분리된 파일로서, 개별적으로 저장될 수 있고, 하나의 파일에 복수의 트랙이 저장될 수 있고, 하나의 트랙이 복수의 파일들에 나뉘어 저장될 수 있다.
트랙들 사이에 의존성이 있는 경우, 선택된 뷰포트와 중첩되는 트랙 뷰포트와 관련되는 참조 트랙들을 특정하기 위하여 "Track Reference Box"를 사용할 수 있다.
실시예 B.1: 스티칭 (stitching), 투영(projection), 파티셔닝 (partitioning)
본 개시에 따라서, 360 영상을 캡처하는 카메라 장치에 의하여, 360 구형 컨텐츠가 생성되고, 2차원 평면에 투영된다. 그러면, 투영된 평면은 영역들로 분리되고, 분리된 영역들 각각은 트랙으로 캡슐화된다.
도 12는 본 개시의 일면에 따른 ERP 영상에서 "렌더링할 뷰포트"과 관련하여 요구되는 "트랙 뷰포트"을 설명하기 위한 도면이다.
도 12를 참고하면, VR 컨텐츠는 ERP를 사용하여 투영되고, 각 트랙이 360 구형 영상의 부분 (트랙 뷰포트)을 차지하도록 분할된다. 1, 2, 3, ... , 16으로 번호 붙여진 영역들이 각각 트랙 뷰포트이다. 이를 번호에 따라, 1번 트랙 뷰포트, 2번 트랙 뷰포트, ..., 16번 트랙 뷰포트라 할 수 있다. HMD와 같은 클라이언트가 "렌더링할 뷰포트"를 선택할 때, 하나 또는 복수의 파일들에 관련된 트랙들이 "트랙 뷰포트"에 기초하여 요구될 수 있다.
예컨대, 도 12(a)의 중앙의 검은색 부분이 "렌더링할 뷰포트"라면, 요청되는 "트랙 뷰포트"들은, 6번 트랙 뷰포트, 7번 트랙 뷰포트, 10번 트랙 뷰포트, 11번 트랙 뷰포트가 된다. 도 12(b)의 검은색 부분이 "렌더링할 뷰포트"라면, 요청되는 "트랙 뷰포트"들은 3번 트랙 뷰포트와 7번 트랙 뷰포트가 된다.
도 13는 본 개시의 다른 실시예에 따라서, 육면체 투영(cubical projection)을 사용하여, "렌더링할 뷰포트"과 관련하여 요구되는 "트랙 뷰포트"을 설명하기 위한 도면이다.
VR 컨텐츠가 생성되고, 육면체 투영을 이용하여, 2차원 평면에 투영된다. 투영된 평면은 육면체의 각 면에 정확히 대응되는 영역들로 분할되고, 영역들 각각은 트랙으로 캡슐화된다.
도 13(a) 및 도 13(b)는 육면체의 각 면을 1F, 2R, 3b, 4L, 5T, 6m으로 표시하고 있다. 도 17(b)와 유사하다. 다만, 2R 대신 2l, 4L대신 4r인 점에서 도 13과 도 17(b)는 서로 다르다. 각 투영면에 대한 명칭은 실시예에 따라 다양하게 적용할 수 있다.
도 13(a)에서 표시된 검은 색 부분이 "렌더링할 뷰포트"라면, 요청되는 "트랙 뷰포트"들은, 1F와 2R가 된다. 도 13(b)에서 표시된 검은 색 부분이 "렌더링할 뷰포트"라면, 요청되는 "트랙 뷰포트"들은, 2R과 5T가 된다.
요청되는 트랙들이 다른 트랙들과 의존성을 갖는다면, "트랙 참조 박스(track reference box)"에 의하여 암시되어, 상기 참조된 트랙(들)도 요청될 수 있다.
실시예 B.2: No stitching (개별 카메라의 아웃풋, 임의 배치)
본 실시예에 따르면, 캡처링 장치(컨텐츠 생성 장치)에서, 각 카메라의 캡처된 프레임은 스티치되지 아니한다. 이미지 스티칭이란 조각난 파노라마 또는 고 해상도 영상을 제작하기 위하여, FOV(Field of View)를 중첩시켜서, 다수의 사진 영상을 결합하는 과정을 의미한다.
각 카메라로부터의 개별 비디오 시퀀스는 트랙으로써 캡슐화된다. 달리 말하면, "트랙 뷰포트"는 각 카메라의 뷰포트와 동일하다. 일반적으로 카메라의 뷰포트는 중첩된다. 즉, 카메라로부터의 개별 비디오 시퀀스를 스티칭하지 아니하고, 개별적으로 수신할 수 있다.
도 14는 360 영상을 캡처하기 위한 카메라 장치들을 나타낸다.
선택된 "렌더링 뷰포트"를 생성하기 위하여, 다른 카메라들로부터의 프레임들의 스티칭 및 투영이 클라이언트 측에서 수행된다. 각 카메라의 피치와 요 경계를 특정하거나, 카메라의 지향점과 FOV를 특정함으로써, 파일 형식(예: ISOBMFF)은 카메라 뷰포트의 임의 배치를 나타내는 구문을 이용할 수 있게 한다. 즉, 상기 ISOBMFF 형식으로 구성된 데이터는 메타데이터를 포함할 수 있고, 상기 메타데이터는 상기 카메라 뷰포트의 임의 배치에 관한 정보를 포함할 수 있다.
실시예 B.3: No stitching (개별 카메라의 아웃풋, 정형 배치)
본 실시예에 따르면, 캡처링 장치(컨텐츠 생성 장치)에서, 각 카메라의 캡처된 프레임은 스티치되지 아니한다. 각 카메라로부터의 개별 비디오 시퀀스는 트랙으로써 캡슐화된다.
상기 실시예 B.2와 달리, 하나의 카메라가 정다면체의 하나의 면을 지향점으로 하는 정다면체의 표면의 투영들 중 하나와 같이 정형 배치에 부합되도록 실시예 B.3의 카메라 장치가 설정된다.
도 15는 360도 영상을 캡처하는 카메라 장치들의 형태에 따른 촬영범위를 설명하기 위한 예시도이다. 도 15(a)는 정사면체 형태의 카메라 장치 장치에 관한 예시도이고, 도 15(b)는 정육면체 형태의 카메라 장치 장치에 관한 예시도이고, 도 15(c)는 정십이면체 형태의 카메라 장치에 관한 예시도이다. 즉, 카메라 장치는 정사면체(4개의 카메라들), 정육면체(6개의 카메라들), 정십이면체(12개의 카메라들)의 투영에 대응되는 것을 묘사하고 있다.
파일 포맷(예: ISOBMFF)에서 카메라 장치를 위하여 사용되는 정다면체를 특정함으로써 클라이언트는 정확한 카메라 배치를 알 수 있다. 즉, 카메라의 지향점들과 VR 컨텐츠를 생산하는 스티칭 방법들을 알 수 있다. 상기 ISOBMFF 형식으로 구성된 데이터는 메타데이터를 포함할 수 있고, 상기 메타데이터는 상기 카메라 배치, 카메라의 지향점들 및 VR 컨텐츠를 생산하는 스티칭 방법에 관한 정보를 포함할 수 있다.
또한 렌더링을 위하여 클라이언트에 의해 사용되는 파일 포맷에 의하여 카메라들의 FOV가 특정될 필요가 있다.
아키텍처 B의 이러한 속성을 이용하면, 클라이언트(예: HMD)가 관련된 트랙들/파일들을 정확하게 요청하도록, 파일 포맷이 기본 투영 방법과 "트랙 뷰포트"를 지시하는 것이 중요하다.
일반적으로 아키텍처 B에서 각 트랙의 종횡비 및 해상도는 동일할 필요는 없다. 예컨대, 서로 다른 트랙 뷰포트로 파티셔닝하기 전에 2차원 투영을 위한 ERP라면, 상부 및 하부는 중앙 영역보다 더 넓은 직사각형으로 분할될 수 있다. 또는 상부 및 하부는 중앙 영역보다 낮은 해상도로 분할될 수 있다.
이하에서 상술한 모든 실시예에 적용할 수 있는 구문 구조를 제시하고자 한다.
트랙-기반 구문은 컨테이닝 트랙의 VR 속성을 특정하기 위한 것이다.
부호화된 프레임들(decoded frames)은 VR 컨텐츠일 수 있다. 상기 부호화된 프레임들은 전체 VR 장면(예: 구형 360 영상, 투영들 등)을 포함할 수 있다. 또는, 상기 부호화된 프레임들은 상기 전체 VR 장면의 부분만을 포함할 수 있다.
스키마 타입(SchemeType) 'vrvi' (VR video box)가 사용될 수 있다. 또는 다른 고유한 이름이 사용될 수 있다.
하기 표는 'vrvi'의 정의를 나타낸다.
Figure pat00009
VR 비디오 박스는 부호화된 프레임이 전체 360 영상 장면을 포함하거나, 구형 장면의 부분만을 포함하는 것을 지시하는데 사용될 수 있다. 스키마 타입태(SchemeType)가 'vrvi'일 때, 상기 VR 비디오 박스는 존재할 것이다.
하기 표는 'vrvi'의 구문을 나타낸다.
Figure pat00010
본 개시에 따른 다른 방법에서, FOV는 카메라 파라미터들에 의하여 도출될 수 있다. 예컨대, 센서 디멘전과 초점 거리를 이용하여 일반 광학 장치들을 통하여, FOV가 산출될 수 있다.
상술한 바와 같이 뷰포트를 특정하는 다른 방법은 뷰포인트(viewpoint, 또는 지향점, orientation)와 FOV를 이용하는 것이다. 카메라의 지향점 (center_yaw, center_pitch)은 특정되고, FOV는 상기 구문의 fov_yaw와 fov_pitch에 의하여 시그널링될 수 있거나, 카메라 파라미터(예: 센서 디멘션과 초점 거리)에 의하여 도출될 수 있다.
pre_stitched는 정수이다. pre_stitched가 1이면, 파일 포맷에 의하여, 하나 또는 복수의 트랙에 캡슐화되기 전에 컨텐츠는 먼저 스티칭(pre-stitched)되고, 2차원 평면에 투영된다.
pre_stitched가 0이면, 컨텐츠는 스티치되지 아니하고, 각 카메라로부터의 비디오 시퀀스는 개별적으로 캡슐화된다.
entire_active_range는 모든 관련된 트랙에 의하여 전달되는 비디오와 함께 렌더링될 컨텐츠의 전체 커버리지 범위(기하학적 표면)를 지시한다. entire_active_range의 값에 따른 정의는 하기 표를 참고한다.
Figure pat00011
hor_active_range는 컨텐츠의 제한된 보기(즉, degree_range = 3)가 있는 경우, 컨텐츠의 수평도 범위(도)를 나타낸다.
vert_active_range는 컨텐츠의 제한된 보기(즉, degree_range = 3)가 있는 경우, 컨텐츠의 수직 각도 범위 (도)를 나타낸다.
geometry_type은 전방향 미디어(omnidirectional media)를 렌더링 하기 위하여 특정되는 기하학적 형태를 나타낸다.
Figure pat00012
platonic_projection_type은 전방향 미디어의 렌더링을 위한 정다면체의 형태를 나타낸다.
Figure pat00013
scene_fraction은 정수이다. scene_fraction이 0이면, 컨텐츠가 VR의 전체 장면을 포함한다는 것을 나타낸다. 즉, 각 프레임이 전체 장면을 포함한다. 프레임의 장면 범위는 즉, 각 프레임이 전체 장면을 포함한다. 프레임의 장면 범위는 (yaw_left, yaw_right) = (0,360) 및 (pitch_top, pitch_bot) = (-90,90) 이도록 유도된다. scene_fraction이 1이면 프레임이 장면의 일부를 담당한다. 커버리지는 다음 구문으로 표시된다.
platonic_arranged 컨텐츠가 스티칭되지 않은 경우 (pre_stitched = 0),이 구문은 카메라 리그가 특별히 배열되었는지 여부를 나타낸다. 값이 1일 때, 정다면체의 주어진 면을 향하는 각 지점으로 카메라가 향하는 것을 나타낸다.
num_faces는 다음과 같은 두 가지 상황에서 신호됩니다.
A. vr_projection_type이 투영이 정다면체 위에 있음을 나타낸다. 이는 상기 투영 방법을 나타내기 위하여, 4, 8, 12, 20의 값이 될 수 있습니다. (6은 정육면체 투영를 위한 것이다.).
B. platonic_arranged는 정다면체에 따라 배치된 카메라로 스티치되지 않은 카메라 컨텐츠를 획득하였음을 나타낸다.
face_id는 다음과 같은 두 가지 상황에서 시그널된다.
A. vr_scene_fraction = 1 이고, vr_projection_type은 투영이 정다면체 위에 있음을 나타낼 때, 그것은 정다면체의 미리 정하여진 인덱싱에 따라서, 포함된 트랙으로부터의 면을 나타낸다.
B. platonic_arranged는 정다면체에 따라 배치된 카메라로 스티치되지 않은 카메라 컨텐츠를 획득하였음을 나타낸다. 이 값은 카메라의 방향이 정다면체의 미리 정하여진 인덱싱에 대응됨을 나타낸다.
yaw_left, yaw_right, pitch_top, pitch_bot는 포함된 트랙의 뷰포트를 나타낸다.
fov_yaw, fov_pitch는 수평 및 수직 방향으로 카메라의 FOV를 나타낸다. 카메라가 정다면체의 면과 정렬되도록 배치된 경우, 지향(orientation)이 결정되고, 카메라의 뷰포트를 결정하기 위하여, FOV를 위한 두개의 파라미터들만 필요하다.
실시예 1
ERP에서, 하나의 트랙으로 전체 장면을 커버하는 실시예의 구문은 다음과 같다.
Figure pat00014
실시예 2
도 16은 구면 영상으로부터 투명하는 방법을 설명하기 위한 예시도이다.
도 16은 ERP에서, 4개의 트랙들, 각각 장면의 일부를 커버하는 실시예를 설명하기 위한 것이다.
도 16의 영역 1 부분의 구문은 다음과 같다.
Figure pat00015
실시예 3
큐빅 투영(Cubic projection)에 있어서, 하나의 트랙을 전체 화면을 커버하는 실시예를 위한 구문은 다음과 같다.
Figure pat00016
실시예 4
도 17은 정육면체 투영 방법을 설명하기 위한 예시도이다.
큐빅 투영 방법에 있어서, 6개의 트랙 중 "전면(front face)"(즉, 1f)을 커버하는 실시예를 위한 구문은 다음과 같다.
Figure pat00017
실시예 5
하기 표는 정팔면체에 있어서, 하나의 트랙이 전체 장면을 커버하기 위한 실시예를 위한 구문이다.
Figure pat00018
실시예 6
도 18은 정팔면체 투영 방법을 설명하기 위한 예시도 이다.
하기 표는 도 18의 정팔면체 중 3번 면의 장면을 커버하기 위한 실시예를 위한 구문이다.
Figure pat00019
실시예 7
하기 표는 도 14에서 제시된 카메라 장치들과 같이 카메라가 임의 배치된 경우의 하나의 카메라에 대응되는 면을 커버하는 실시예를 위한 구문이다.
Figure pat00020
실시예 8
하기 표는 어안(fish-eye) 카메라의 전면을 커버하는 실시예를 위한 구문이다.
Figure pat00021
실시예 9
하기 표는 도 15(b)의 정육면체 투영에 있어서, 전면을 커버하는 실시예를 위한 구문이다.
Figure pat00022
실시예 10
하기 표는 도 15(a)의 정사면체 투영에 있어서, 특정 면을 커버하는 실시예를 위한 구문이다.
Figure pat00023
이상, 본 발명의 구성에 대하여 첨부 도면을 참조하여 상세히 설명하였으나, 이는 예시에 불과한 것으로서, 본 발명이 속하는 기술 분야에 통상의 지식을 가진 자라면 본 발명의 기술적 사상의 범위 내에서 다양한 변형과 변경이 가능함은 물론이다. 따라서 본 발명의 보호 범위는 전술한 실시예에 국한되어서는 아니 되며 이하의 특허청구범위의 기재에 의하여 정해져야 할 것이다.

Claims (20)

  1. 가상 현실 영상을 처리하는 방법에 있어서,
    뷰포트를 선택하는 과정과;
    상기 선택된 뷰포트와 관련된 정보를 송신하는 과정과;
    상기 선택된 뷰포트와 중첩되는 가상 현실(virtual reality, VR) 컨텐츠와 관련된 적어도 하나의 트랙을 수신하는 과정과;
    상기 수신된 적어도 하나의 트랙으로부터 메타데이터를 획득하는 과정과;
    상기 수신된 메타데이터 및 상기 선택된 뷰포트에 기반하여, 상기 수신된 적어도 하나의 트랙으로부터 상기 선택된 뷰포트를 렌더링하는 과정을 포함하는 가상 현실 영상을 처리하는 방법.
  2. 제1항에 있어서,
    상기 뷰포트와 관련된 정보는 뷰포인트 정보 및 FOV(field of view) 정보를 포함하고,
    상기 뷰포인트 정보는 구면 좌표와 관련된 중심 요우 각 및 중심 피치 각을 포함하고,
    상기 FOV 정보는 요우 각의 폭 및 피치 각의 폭을 포함하는 가상 현실 영상을 처리하는 방법.
  3. 제2항에 있어서,
    상기 중심 요우 각은 -180도 이상 180도 이하이고,
    상기 피치 각은 -90도 이상 90도 이하이고,
    상기 요우 각의 폭은 0도 이상 360도 이하이고,
    상기 피치 각의 폭은 0도 이상 180도 이하인
    가상 현실 영상을 처리하는 방법.
  4. 제1항에 있어서,
    상기 메타 데이터는:
    상기 적어도 하나의 트랙의 스티칭 여부,
    상기 적어도 하나의 트랙의 전체 커버리지 범위,
    상기 적어도 하나의 트랙이 상기 360 영상의 전체인지 부분인지 여부,
    상기 적어도 하나의 트랙의 수평 활성 범위,
    상기 적어도 하나의 트랙의 수직 활성 범위,
    상기 적어도 하나의 트랙이 정다면체 투영법에 의한 것인지 여부,
    상기 정다면체의 종류, 및
    상기 적어도 하나의 트랙의 FOV 정보 중 적어도 하나를 나타내는 정보를 포함하는 가상 현실 영상을 처리하는 방법.
  5. 제1항에 있어서,
    상기 적어도 하나의 트랙은 상기 가상 현실 컨텐츠의 전체 지오메트리(geometry)를 포함하고,
    상기 적어도 하나의 트랙은, 캡쳐된 360 영상을 스티칭하고, 상기 스티칭된 360 영상을 2차원 평면에 투영하고, 상기 투영된 영상을 분할하여 생성되는 가상 현실 영상을 처리하는 방법.
  6. 제5항에 있어서,
    상기 적어도 하나의 트랙은,
    등장방형 투영(ERP, equiretangular projection) 방법 또는 정다면체 투영(platonic solid projection) 방법에 따라 생성된 것인
    가상 현실 영상을 처리하는 방법.
  7. 제1항에 있어서,
    상기 메타데이터는, 상기 뷰포트와 중첩되는 상기 적어도 하나의 트랙과 하나 이상의 트랙들 사이의 의존성에 대한 정보를 포함하고,
    상기 메타데이터가 상기 적어도 하나의 트랙과 상기 하나 이상의 트랙들 사이의 의존성을 나타내는 정보를 포함하는 경우,
    상기 방법은, 상기 하나 이상의 트랙들을 수신하는 과정을 더 포함하는
    가상 현실 영상을 처리하는 방법.
  8. 제7항에 있어서,
    상기 메타데이터에 기반하여, 상기 적어도 하나의 트랙과 상기 하나 이상의 트랙들을 스티칭하는 과정과,
    상기 스티칭된 복수의 트랙들을 2차원 평면에 투영하는 과정과,
    상기 수신된 메타데이터 및 상기 선택된 뷰포트에 기반하여, 상기 투영된 트랙들로부터 상기 선택된 뷰포트를 렌더링하는 과정을 더 포함하는 가상 현실 영상을 처리하는 방법.
  9. 제1항에 있어서,
    상기 적어도 하나의 트랙의 개수는 2 이상이고, 상기 적어도 하나의 트랙은 서로 중첩되지 아니하고, 상기 적어도 하나의 트랙은 서로 의존성을 갖고,
    상기 방법은,
    상기 적어도 하나의 트랙을 2차원 평면에 투영하는 과정과,
    상기 수신된 메타데이터 및 상기 선택된 뷰포트에 기반하여, 상기 투영된 적어도 하나의 트랙으로부터 상기 선택된 뷰포트를 렌더링하는 과정을 더 포함하는
    가상 현실 영상을 처리하는 방법.
  10. 제1항에 있어서,
    정다면체 투영(platonic solid projection) 방법에 따라 상기 적어도 하나의 트랙의 개수는 4, 6, 8, 12, 20 중 어느 하나이고,
    상기 적어도 하나의 트랙 중 하나의 트랙은 상기 정다면체 투영 방법의 하나의 면에 대응되고,
    상기 적어도 하나의 트랙은 서로 중첩되고,
    상기 방법은, 상기 중첩된 부분을 스티칭하고, 2차원 평면에 투영하는 과정을 더 포함하는 가상 현실 영상을 처리하는 방법.
  11. 가상 현실 영상을 처리하는 장치에 있어서,
    송수신기;
    가상 현실 영상 처리 모듈을 저장하는 메모리; 및
    상기 송수신기와 상기 메모리와 연결되어 상기 가상 현실 영상 처리 모듈을 실행하는 제어기를 포함하고,
    상기 제어기는 뷰포트를 선택하고, 상기 선택된 뷰포트와 관련된 정보를 송신하고, 상기 선택된 뷰포트와 중첩되는 가상 현실(virtual reality, VR) 컨텐츠와 관련된 적어도 하나의 트랙을 수신하고, 상기 수신된 적어도 하나의 트랙으로부터 메타데이터를 획득하고, 상기 수신된 메타데이터 및 상기 선택된 뷰포트에 기반하여, 상기 수신된 적어도 하나의 트랙으로부터 상기 선택된 뷰포트를 렌더링하도록 구성되는 가상 현실 영상을 처리하는 장치.
  12. 제11항에 있어서,
    상기 뷰포트와 관련된 정보는 뷰포인트 정보 및 FOV(field of view) 정보를 포함하고,
    상기 뷰포인트 정보는 구면 좌표와 관련된 중심 요우 각 및 중심 피치 각을 포함하고,
    상기 FOV 정보는 요우 각의 폭 및 피치 각의 폭을 포함하는 가상 현실 영상을 처리하는 장치.
  13. 제12항에 있어서,
    상기 중심 요우 각은 -180도 이상 180도 이하이고,
    상기 피치 각은 -90도 이상 90도 이하이고,
    상기 요우 각의 폭은 0도 이상 360도 이하이고,
    상기 피치 각의 폭은 0도 이상 180도 이하인
    가상 현실 영상을 처리하는 장치.
  14. 제1항에 있어서,
    상기 메타 데이터는:
    상기 적어도 하나의 트랙의 스티칭 여부,
    상기 적어도 하나의 트랙의 전체 커버리지 범위,
    상기 적어도 하나의 트랙이 상기 360 영상의 전체인지 부분인지 여부,
    상기 적어도 하나의 트랙의 수평 활성 범위,
    상기 적어도 하나의 트랙의 수직 활성 범위,
    상기 적어도 하나의 트랙이 정다면체 투영법에 의한 것인지 여부,
    상기 정다면체의 종류, 및
    상기 적어도 하나의 트랙의 FOV 정보 중 적어도 하나를 나타내는 정보를 포함하는 가상 현실 영상을 처리하는 장치.
  15. 제11항에 있어서,
    상기 적어도 하나의 트랙은 가상 현실 컨텐츠의 전체 지오메트리(geometry)를 포함하고,
    상기 적어도 하나의 트랙은, 캡쳐된 360 영상을 스티칭하고, 스티칭된 360 영상을 2차원 평면에 투영하고, 투영된 영상을 분할하여 생성된 것인 가상 현실 영상을 처리하는 장치.
  16. 제15항에 있어서,
    상기 적어도 하나의 트랙은,
    등장방형 투영(ERP, equiretangular projection) 방법 또는 정다면체 투영(platonic solid projection) 방법에 따라 생성된 것인
    가상 현실 영상을 처리하는 장치.
  17. 제11항에 있어서,
    상기 메타데이터는, 상기 뷰포트와 중첩되는 상기 적어도 하나의 트랙과 하나 이상의 트랙들 사이의 의존성에 대한 정보를 포함하고,
    상기 메타데이터가 상기 적어도 하나의 트랙과 상기 하나 이상의 트랙들 사이의 의존성을 나타내는 정보를 포함하는 경우,
    상기 제어기는, 상기 하나 이상의 트랙들을 수신하도록 더 구성되는
    가상 현실 영상을 처리하는 장치.
  18. 제17항에 있어서,
    상기 제어기는,
    상기 메타데이터에 기반하여, 상기 적어도 하나의 트랙과 상기 하나 이상의 트랙들을 스티칭하고, 상기 스티칭된 복수의 트랙들을 2차원 평면에 투영하고, 상기 수신된 메타데이터 및 상기 선택된 뷰포트에 기반하여, 상기 투영된 트랙들로부터 상기 선택된 뷰포트를 렌더링하도록 더 구성되는 가상 현실 영상을 처리하는 장치.
  19. 제11항에 있어서,
    상기 적어도 하나의 트랙의 개수는 2 이상이고, 상기 적어도 하나의 트랙은 서로 중첩되지 아니하고, 상기 적어도 하나의 트랙은 서로 의존성을 갖고,
    상기 제어기는,
    상기 적어도 하나의 트랙을 2차원 평면에 투영하고, 상기 수신된 메타데이터 및 상기 선택된 뷰포트에 기반하여, 상기 투영된 적어도 하나의 트랙으로부터 상기 선택된 뷰포트를 렌더링하도록 더 구성되는 가상 현실 영상을 처리하는 장치.
  20. 제11항에 있어서,
    정다면체 투영(platonic solid projection) 방법에 따라 상기 적어도 하나의 트랙의 개수는 4, 6, 8, 12, 20 중 어느 하나이고,
    상기 적어도 하나의 트랙 중 하나의 트랙은 상기 정다면체 투영 방법의 하나의 면에 대응되고,
    상기 적어도 하나의 트랙은 서로 중첩되고,
    상기 제어기는,
    상기 중첩된 부분을 스티칭하고, 2차원 평면에 투영하도록 더 구성되는 가상 현실 영상을 처리하는 장치.
KR1020170132770A 2016-10-12 2017-10-12 전방향 이미지를 처리하는 방법 및 장치 KR102527816B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230054657A KR102642406B1 (ko) 2016-10-12 2023-04-26 가상 현실 영상을 처리하는 방법 및 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201662406997P 2016-10-12 2016-10-12
US62/406,997 2016-10-12

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020230054657A Division KR102642406B1 (ko) 2016-10-12 2023-04-26 가상 현실 영상을 처리하는 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20180040507A true KR20180040507A (ko) 2018-04-20
KR102527816B1 KR102527816B1 (ko) 2023-05-03

Family

ID=61906397

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020170132770A KR102527816B1 (ko) 2016-10-12 2017-10-12 전방향 이미지를 처리하는 방법 및 장치
KR1020230054657A KR102642406B1 (ko) 2016-10-12 2023-04-26 가상 현실 영상을 처리하는 방법 및 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020230054657A KR102642406B1 (ko) 2016-10-12 2023-04-26 가상 현실 영상을 처리하는 방법 및 장치

Country Status (5)

Country Link
US (1) US20210067758A1 (ko)
EP (1) EP3528212A4 (ko)
KR (2) KR102527816B1 (ko)
CN (1) CN109891465B (ko)
WO (1) WO2018070810A1 (ko)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190116928A (ko) * 2018-04-05 2019-10-15 엘지전자 주식회사 360도 비디오를 송수신하는 방법 및 그 장치
KR20190120065A (ko) * 2018-04-15 2019-10-23 엘지전자 주식회사 복수의 뷰포인트들에 대한 메타데이터를 송수신하는 방법 및 장치
KR20200000363A (ko) * 2018-06-22 2020-01-02 엘지전자 주식회사 360도 비디오를 송수신하는 방법 및 그 장치
US20200014905A1 (en) * 2018-07-06 2020-01-09 Lg Electronics Inc. Method and apparatus for transmitting and receiving metadata for coordinate system of dynamic viewpoint
WO2020013513A1 (ko) * 2018-07-09 2020-01-16 엘지전자 주식회사 비디오 송신 방법, 비디오 송신 장치, 비디오 수신 방법 및 비디오 수신 장치
WO2020027349A1 (ko) * 2018-07-31 2020-02-06 엘지전자 주식회사 다중 뷰포인트 기반 360 비디오 처리 방법 및 그 장치
KR20200123988A (ko) * 2019-04-23 2020-11-02 주식회사 비포에이 Vr 영상 콘텐츠의 자막 처리 기기
KR20210045871A (ko) 2019-10-17 2021-04-27 세종대학교산학협력단 뷰포트(Viewport) 추출 방법 및 장치
US11140380B2 (en) * 2018-06-06 2021-10-05 Lg Electronics Inc. Method and apparatus for processing overlay media in 360 degree video system
US11212505B2 (en) 2019-01-31 2021-12-28 Electronics And Telecommunications Research Institute Method and apparatus for immersive video formatting

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190222823A1 (en) * 2017-12-18 2019-07-18 Immersive Tech, Inc. Techniques for Capturing and Rendering Videos with Simulated Reality Systems and for Connecting Services with Service Providers
US11343567B1 (en) * 2019-08-07 2022-05-24 Meta Platforms, Inc. Systems and methods for providing a quality metric for media content
US11734789B2 (en) 2020-06-02 2023-08-22 Immersive Tech, Inc. Systems and methods for image distortion correction

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1299244C (zh) * 2005-06-02 2007-02-07 中国科学院力学研究所 一种三维场景动态建模和实时仿真的系统及方法
US7990394B2 (en) * 2007-05-25 2011-08-02 Google Inc. Viewing and navigating within panoramic images, and applications thereof
KR101679844B1 (ko) * 2010-06-14 2016-11-25 주식회사 비즈모델라인 이종 플랫폼 간 증강현실 제공 방법
WO2012083508A1 (zh) * 2010-12-24 2012-06-28 中国科学院自动化研究所 互联网上复杂场景真实感快速绘制方法
KR101368177B1 (ko) * 2012-08-08 2014-02-27 한국과학기술정보연구원 가상현실 멀티뷰 제공 방법 및 시스템
US20140320592A1 (en) * 2013-04-30 2014-10-30 Microsoft Corporation Virtual Video Camera
EP2824883A1 (en) * 2013-07-12 2015-01-14 Alcatel Lucent A video client and video server for panoramic video consumption
US10725297B2 (en) * 2015-01-28 2020-07-28 CCP hf. Method and system for implementing a virtual representation of a physical environment using a virtual reality environment
WO2017142353A1 (ko) * 2016-02-17 2017-08-24 엘지전자 주식회사 360 비디오를 전송하는 방법, 360 비디오를 수신하는 방법, 360 비디오 전송 장치, 360 비디오 수신 장치
CN105915885A (zh) * 2016-03-02 2016-08-31 优势拓展(北京)科技有限公司 鱼眼图像的3d交互显示方法和系统
US20180048877A1 (en) * 2016-08-10 2018-02-15 Mediatek Inc. File format for indication of video content
WO2018043905A1 (ko) * 2016-08-29 2018-03-08 엘지전자 주식회사 360 비디오를 전송하는 방법, 360 비디오를 수신하는 방법, 360 비디오 전송 장치, 360 비디오 수신 장치
CN109362242B (zh) * 2016-10-10 2021-05-14 华为技术有限公司 一种视频数据的处理方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Feng Qian et al., "Optimizing 360 Video Delivery Over Cellular Networks", DOI:10.1145/2980055.2980056, AllThingsCellular’16, 2016.10.03.-07)* *
YEONGDOO CHOI et al., "WD on ISO/IEC 23000-20 Omnidirectional Media Application Format", (2016-06-01)* *

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190116928A (ko) * 2018-04-05 2019-10-15 엘지전자 주식회사 360도 비디오를 송수신하는 방법 및 그 장치
KR20190120065A (ko) * 2018-04-15 2019-10-23 엘지전자 주식회사 복수의 뷰포인트들에 대한 메타데이터를 송수신하는 방법 및 장치
KR20200066601A (ko) * 2018-04-15 2020-06-10 엘지전자 주식회사 복수의 뷰포인트들에 대한 메타데이터를 송수신하는 방법 및 장치
US10869017B2 (en) 2018-04-15 2020-12-15 Lg Electronics Inc. Multiple-viewpoints related metadata transmission and reception method and apparatus
US11140380B2 (en) * 2018-06-06 2021-10-05 Lg Electronics Inc. Method and apparatus for processing overlay media in 360 degree video system
KR20200000363A (ko) * 2018-06-22 2020-01-02 엘지전자 주식회사 360도 비디오를 송수신하는 방법 및 그 장치
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
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
US20200014905A1 (en) * 2018-07-06 2020-01-09 Lg Electronics Inc. Method and apparatus for transmitting and receiving metadata for coordinate system of dynamic viewpoint
US10834375B2 (en) * 2018-07-06 2020-11-10 Lg Electronics Inc. Method and apparatus for transmitting and receiving metadata for coordinate system of dynamic viewpoint
WO2020013513A1 (ko) * 2018-07-09 2020-01-16 엘지전자 주식회사 비디오 송신 방법, 비디오 송신 장치, 비디오 수신 방법 및 비디오 수신 장치
US11463671B2 (en) 2018-07-09 2022-10-04 Lg Electronics Inc. Video transmitting method, video transmitting device, video receiving method and video receiving device
US10965928B2 (en) 2018-07-31 2021-03-30 Lg Electronics Inc. Method for 360 video processing based on multiple viewpoints and apparatus therefor
WO2020027349A1 (ko) * 2018-07-31 2020-02-06 엘지전자 주식회사 다중 뷰포인트 기반 360 비디오 처리 방법 및 그 장치
US11212505B2 (en) 2019-01-31 2021-12-28 Electronics And Telecommunications Research Institute Method and apparatus for immersive video formatting
KR20200123988A (ko) * 2019-04-23 2020-11-02 주식회사 비포에이 Vr 영상 콘텐츠의 자막 처리 기기
KR20210045871A (ko) 2019-10-17 2021-04-27 세종대학교산학협력단 뷰포트(Viewport) 추출 방법 및 장치

Also Published As

Publication number Publication date
US20210067758A1 (en) 2021-03-04
KR102642406B1 (ko) 2024-03-04
KR102527816B1 (ko) 2023-05-03
EP3528212A4 (en) 2019-09-18
KR20230060499A (ko) 2023-05-04
CN109891465B (zh) 2023-12-29
WO2018070810A1 (ko) 2018-04-19
CN109891465A (zh) 2019-06-14
EP3528212A1 (en) 2019-08-21

Similar Documents

Publication Publication Date Title
KR102642406B1 (ko) 가상 현실 영상을 처리하는 방법 및 장치
US11244584B2 (en) Image processing method and device for projecting image of virtual reality content
US10855968B2 (en) Method and apparatus for transmitting stereoscopic video content
KR102560029B1 (ko) 가상 현실 콘텐트를 송수신하는 방법 및 장치
US11388382B2 (en) Suggested viewport indication for panoramic video
US10757423B2 (en) Apparatus and methods for compressing video content using adaptive projection selection
KR102352933B1 (ko) 3차원 이미지를 프로세싱하기 위한 방법 및 장치
Zakharchenko et al. Quality metric for spherical panoramic video
CN108605093B (zh) 用于处理360度图像的方法和设备
US10909761B1 (en) 2D video with option for projected viewing in modeled 3D space
US10545570B2 (en) Method for providing content and apparatus therefor
US20180007339A1 (en) Apparatus and method for capturing and displaying segmented content
US10755472B2 (en) Method and apparatus for displaying image based on user motion information
KR20170132669A (ko) 몰입형 비디오 포맷을 위한 방법, 장치 및 스트림
KR20180029344A (ko) 가상 현실 시스템에서 컨텐트 전송 및 재생 방법 및 장치
KR20190046850A (ko) 몰입형 비디오 포맷을 위한 방법, 장치 및 스트림
WO2018004934A1 (en) Apparatus and method for capturing and displaying segmented content
da Silveira et al. Omnidirectional visual computing: Foundations, challenges, and applications
CN108022204A (zh) 一种柱面全景视频转换为球面全景视频的方法
US10853910B2 (en) Method and apparatus for processing omni-directional image

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant