KR20220047402A - 지오메트리 투영을 이용한 360도 비디오 코딩 - Google Patents

지오메트리 투영을 이용한 360도 비디오 코딩 Download PDF

Info

Publication number
KR20220047402A
KR20220047402A KR1020227011309A KR20227011309A KR20220047402A KR 20220047402 A KR20220047402 A KR 20220047402A KR 1020227011309 A KR1020227011309 A KR 1020227011309A KR 20227011309 A KR20227011309 A KR 20227011309A KR 20220047402 A KR20220047402 A KR 20220047402A
Authority
KR
South Korea
Prior art keywords
sample
projection
predicted
face
picture
Prior art date
Application number
KR1020227011309A
Other languages
English (en)
Other versions
KR102521272B1 (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 KR1020237012023A priority Critical patent/KR20230051319A/ko
Publication of KR20220047402A publication Critical patent/KR20220047402A/ko
Application granted granted Critical
Publication of KR102521272B1 publication Critical patent/KR102521272B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/30Polynomial surface description
    • 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/161Encoding, multiplexing or demultiplexing different image signal components
    • 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
    • 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/366Image reproducers using viewer tracking
    • H04N13/383Image reproducers using viewer tracking for tracking with gaze detection, i.e. detecting the lines of sight of the viewer's eyes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/563Motion estimation with padding, i.e. with filling of non-object values in an arbitrarily shaped picture block or region for estimation purposes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • H04N5/23238
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • G06T2207/10021Stereoscopic video; Stereoscopic image sequence
    • 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

Abstract

비디오 데이터를 프로세싱하는 것은 다수의 카메라로 비디오 데이터를 캡쳐하는 것 및 비디오 데이터를 함께 스티칭하여 360도 비디오를 획득하는 것을 포함할 수도 있다. 캡쳐된 그리고 스티칭된 비디오 데이터에 기초하여 프레임 패킹 픽쳐가 제공될 수도 있다. 현재 샘플 위치가 프레임 패킹 픽쳐에서 식별될 수도 있다. 이웃하는 샘플 위치가 프레임 패킹 픽쳐의 콘텐츠 경계의 외부에 위치되는지의 여부가 결정될 수도 있다. 이웃하는 샘플 위치가 콘텐츠 경계의 외부에 위치되는 경우, 투영 지오메트리 및 360도 비디오 콘텐츠의 적어도 하나의 원형 특성에 기초하여 패딩 샘플 위치가 유도될 수도 있다. 360도 비디오 콘텐츠는 패딩 샘플 위치에 기초하여 프로세싱될 수도 있다.

Description

지오메트리 투영을 이용한 360도 비디오 코딩{360-DEGREE VIDEO CODING USING GEOMETRY PROJECTION}
본 출원은 2016년 7월 8일자로 출원된 미국 가출원 제62/360,112호, 2016년 10월 4일자로 출원된 미국 가출원 제62/404,017호, 2017년 2월 24일자로 출원된 미국 가출원 제62/463,242호, 및 2017년 5월 3일자로 출원된 미국 가출원 제62/500,605호의 이익을 주장하는데, 이들 가출원의 내용은 참조에 의해 본원에 통합되며, 본 출원은 이들 우선권 출원의 출원일의 이익을 주장한다.
가상 현실(virtual reality; VR)은, 건강 관리, 교육, 소셜 네트워킹, 산업 디자인/트레이닝, 게임, 영화, 쇼핑, 엔터테인먼트 및/또는 등등을 포함하는, 그러나 이들로 제한되지는 않는 많은 응용 분야에서 적용되고 있다. VR은, 예를 들면, 뷰어(viewer)를 둘러싸는 가상 환경을 생성하는 것 및 뷰어에 대한 "그곳에서의 존재(being there)"의 진정한 느낌을 생성하는 것에 의해, 뷰어의 경험을 향상시킬 수도 있다. VR 시스템은, 자세(posture), 제스쳐, 시선(eye gaze), 음성, 등등을 통한 상호 작용을 지원할 수도 있다. 시스템은, 유저가 VR 환경에서 자연스러운 방식으로 오브젝트와 상호 작용할 수도 있도록, 유저에게 햅틱 피드백을 제공할 수도 있다.
비디오 데이터를 프로세싱하는 것은, 다수의 카메라로 비디오 데이터를 캡쳐하는 것 및 비디오 데이터를 함께 스티칭하여 360도 비디오를 획득하는 것을 포함할 수도 있다. 본원에서 사용될 때, 360도 비디오는, 구형 비디오(spherical video), 전방향 비디오(omnidirectional video), 가상 현실(VR) 비디오, 파노라마 비디오, 몰입형 비디오(예를 들면, 6 자유도를 포함할 수도 있는 라이트 필드 비디오(light field video)), 포인트 클라우드 비디오, 및/또는 등등을 포함할 수도 있다. 지오메트리 패딩(geometry padding)은, 360도 비디오 인코딩 및/또는 디코딩 동안 적용될 수도 있다.
360도 비디오 콘텐츠가 코딩될 수도 있다. 프레임 픽쳐는, 하나 이상의 카메라로 캡쳐된 비디오 데이터 및 캡쳐된 비디오 데이터를 스티칭하는 것에 기초하여 제공될 수도 있다. 현재 샘플 위치는 프레임 패킹 픽쳐(frame-packed picture)에서 식별될 수도 있다. 프레임 패킹 픽쳐는 제1 투영 지오메트리(projection geometry)와 연관되는 하나 이상의 면(face)을 포함할 수도 있다. 현재 샘플 위치는 제1 투영 지오메트리와 연관될 수도 있다. 제1 투영 지오메트리는, 예를 들면, 등장방형 투영(equirectangular projection), 등적 투영(equal-area projection), 큐브맵 투영(cubemap projection), 팔면체 투영(octahedron projection), 원통형 투영(cylinder projection), 또는 등등 중 적어도 하나를 포함할 수도 있다. 360도 비디오 콘텐츠를 코딩하기 위한 본원에서 설명되는 투영 지오메트리는 예시적인 방식으로 사용되며, 기술 분야의 숙련된 자는, 다른 투영 포맷이 상호 교환 가능하게 사용될 수도 있다는 것을 인식할 것이다.
이웃하는 샘플 위치(neighboring sample location)가 프레임 패킹 픽쳐의 콘텐츠 경계의 외부에 위치되는지의 여부가 결정될 수도 있다. 콘텐츠 경계는, 프레임 패킹 픽쳐 경계, 면 경계(face boundary), 및/또는 등등을 포함할 수도 있다. 이웃하는 샘플 위치가 프레임 패킹 픽쳐의 콘텐츠 경계의 외부에 위치되는 경우, 패딩 샘플 위치는 제1 투영 지오메트리 및 360도 비디오 콘텐츠의 하나 이상의 원형 특성(circular characteristic)에 기초하여 유도될 수도 있다. 이웃하는 샘플 위치의 3D 포지션이 계산될 수도 있다. 이웃하는 샘플 위치는 현재 샘플 위치를 포함하는 면과 연관하여 계산될 수도 있다. 패딩 샘플 위치를 포함하는 제2 면이 이웃하는 샘플 위치의 3D 포지션에 기초하여 결정될 수도 있다. 제2 면은, 현재 샘플 위치를 포함하는 제1 면과는 상이할 수도 있다. 이웃하는 샘플 위치의 3D 포지션을 가지고 지오메트리 투영이 적용되어 제2 면에서의 2D 평면 포지션을 유도할 수도 있다. 제2 면에서의 이웃하는 샘플 위치의 2D 평면 포지션은, 이웃하는 샘플 위치의 3D 포지션의 지오메트리 투영에 기초하여 패딩 샘플 위치로서 유도될 수도 있다.
이웃하는 샘플 위치가 프레임 패킹 픽쳐의 콘텐츠 경계의 내부에 위치되는 경우, 패딩 샘플 위치를 유도하는 것은 스킵될 수도 있다. 360도 비디오 콘텐츠는 (예를 들면, 콘텐츠 경계의 내부에 위치되는) 이웃하는 샘플 위치를 사용하여 프로세싱될 수도 있다.
패딩 샘플 위치를 유도하기 위해 중간 투영(intermediate projection)이 사용될 수도 있다. 예를 들면, 제1 투영 지오메트리에서의 좌표는, 제2 투영 지오메트리와 연관되는 중간 좌표로 변환될 수도 있다. 제1 투영 지오메트리는 유니큐브 투영(unicube projection) 내에 있을 수도 있고, 제2 투영 지오메트리는 큐브맵 투영(cubemap projection) 내에 있을 수도 있다. 이웃하는 샘플 위치의 3D 포지션은 중간 좌표에서 계산될 수도 있고, 제2 면에서의 이웃하는 샘플 위치의 2D 평면 포지션은 중간 좌표에서 식별될 수도 있다. 제2 투영 지오메트리와 연관되는 이웃하는 샘플 위치의 식별된 2D 평면 포지션은 제1 투영 지오메트리와 연관되는 좌표로 다시 변환될 수도 있다.
360도 비디오 콘텐츠는 유도된 패딩 샘플 위치에 기초하여 프로세싱될 수도 있다. 예를 들면, 패딩 샘플 위치에서 패딩 샘플 값이 유도될 수도 있다. 패딩 샘플 위치에서의 패딩 샘플 값은 보간 필터(interpolation filter)를 사용하여 유도될 수도 있다. 예를 들면, 쌍선형(bilinear), 바이큐빅(bicubic), Lanczos(랑조스), 스플라인 보간 필터(spline interpolation filter), 이산 코사인 변환 기반의 보간 필터, 및/또는 등등이 사용될 수도 있다. 예를 들면, 패딩 샘플 값을 유도하기 위해, 인터 예측(inter predicting), 인트라 예측(intra predicting), 디블로킹(deblocking), 루프 필터링(loop filtering), 샘플 적응 오프셋화(sample adaptive offsetting), 적응형 루프 필터링(adaptive loop filtering), 및/또는 등등이 수행될 수도 있다. 현재 샘플 위치가 콘텐츠 경계 상에 위치되는 경우, 패딩 샘플 위치에 기초한 디블로킹 필터가 적용될 수도 있다.
360도 비디오 콘텐츠의 원형 특성에 따라, 현재 샘플 위치가 프레임 패킹 픽쳐의 가장 우측 콘텐츠 경계 근처에 위치되고 결정된 이웃하는 샘플 위치가 우측 콘텐츠 경계를 넘어 프레임 패킹 픽쳐의 외부에 위치되는 경우, 패딩 샘플 위치는, 프레임 패킹 픽쳐의 가장 우측 콘텐츠 경계에 원형으로 연결되는(circularly connected) 프레임 패킹 픽쳐의 가장 좌측 콘텐츠 경계 근처에 위치될 수도 있다. 현재 샘플 위치가 프레임 패킹 픽쳐의 가장 좌측 콘텐츠 경계 근처에 위치되고 결정된 이웃하는 샘플 위치가 좌측 콘텐츠 경계를 넘어 프레임 패킹 픽쳐의 외부에 위치되는 경우, 패딩 샘플 위치는, 프레임 패킹 픽쳐의 가장 좌측 콘텐츠 경계에 원형으로 연결되는 프레임 패킹 픽쳐의 가장 우측 콘텐츠 경계 근처에 위치될 수도 있다. 현재 샘플 위치가 프레임 패킹 픽쳐의 최상부 콘텐츠 경계(topmost content boundary)의 제1 영역 근처에 위치되고 결정된 이웃하는 샘플 위치가 최상부 콘텐츠 경계의 제1 영역을 넘어 프레임 패킹 픽쳐 외부에 위치되는 경우, 패딩 샘플 위치는, 최상부 콘텐츠 경계의 제1 영역의 원형으로 반대 측에 위치되는 최상부 콘텐츠 경계의 제2 영역 근처에 위치될 수도 있다. 현재 샘플 위치가 프레임 패킹 픽쳐의 최하부 콘텐츠 경계(bottommost content boundary)의 제1 영역 근처에 위치되고 결정된 이웃하는 샘플 위치가 최하부 콘텐츠 경계의 제1 영역을 넘어 프레임 패킹 픽쳐의 외부에 위치되는 경우, 패딩 샘플 위치는, 최하부 콘텐츠 경계의 제1 영역의 원형으로 반대 측에 위치되는 최하부 콘텐츠 경계의 제2 영역 근처에 위치될 수도 있다.
360도 비디오 콘텐츠를 코딩하기 위해, 현재 블록은 유도된 또는 매핑된 참조 블록(reference block)에 기초하여 예측될 수도 있다. 현재 블록과 연관되는 초기 참조 블록이 프레임 패킹 픽쳐의 콘텐츠 경계의 외부에 위치되는지의 여부가 결정될 수도 있다. 초기 참조 블록이 콘텐츠 경계의 외부에 있는 경우, 제1 투영 지오메트리 및 360도 비디오 콘텐츠의 하나 이상의 원형 특성에 기초하여 매핑된 참조 블록이 유도될 수도 있다. 초기 참조 블록과 연관되는 위치의 3D 포지션이 식별될 수도 있다. 초기 참조 블록과 연관되는 위치는, 현재 블록을 포함하는 면과 연관하여 계산될 수도 있다. 매핑된 참조 블록을 포함하는 제2 면이 초기 참조 블록과 연관되는 위치의 3D 포지션에 기초하여 식별될 수도 있다. 제1 면은 제2 면과는 상이할 수도 있다. 지오메트리 투영은, 초기 참조 블록과 연관되는 위치의 3D 포지션에 기초하여 적용될 수도 있다. 제2 면에서의 초기 참조 블록의 2D 평면 포지션은, 지오메트리 투영에 기초하여 매핑된 참조 블록에 대해 유도될 수도 있다.
초기 참조 블록이 콘텐츠 경계의 내부에 있다면, 상기 매핑된 참조 블록을 유도하는 것은 스킵될 수도 있다. 현재 블록은 (예를 들면, 콘텐츠 경계의 내부에 위치되는) 초기 참조 블록에 기초하여 예측될 수도 있다.
매핑된 참조 블록을 유도하기 위해 중간 투영이 사용될 수도 있다. 예를 들면, 제1 투영 지오메트리에서의 좌표는, 제2 투영 지오메트리와 연관되는 중간 좌표로 변환될 수도 있다. 제1 투영 지오메트리는 유니큐브 투영(unicube projection) 내에 있을 수도 있고, 제2 투영 지오메트리는 큐브맵 투영(cubemap projection) 내에 있을 수도 있다. 초기 참조 블록 위치와 연관되는 위치의 3D 포지션은 중간 좌표에서 계산될 수도 있다. 매핑된 참조 블록을 유도하기 위한 제2 면에서의 초기 참조 블록의 2D 평면 포지션은 중간 좌표에서 식별될 수도 있다. 제2 투영 지오메트리와 연관되는 초기 참조 블록의 식별된 2D 평면 포지션은, 제1 투영 지오메트리와 연관되는 좌표로 다시 변환될 수도 있다.
현재 블록이 프레임 패킹 픽쳐의 가장 우측 콘텐츠 경계 근처에 위치되고 결정된 초기 참조 블록이 우측 콘텐츠 경계를 넘어 프레임 패킹 픽쳐의 외부에 위치되는 경우, 매핑된 참조 블록은, 프레임 패킹 픽쳐의 가장 우측 콘텐츠 경계에 원형으로 연결되는 프레임 패킹 픽쳐의 가장 좌측 콘텐츠 경계 근처에 위치될 수도 있다. 현재 블록이 프레임 패킹 픽쳐의 가장 좌측 콘텐츠 경계 근처에 위치되고 결정된 초기 참조 블록이 좌측 콘텐츠 경계를 넘어 프레임 패킹 픽쳐의 외부에 위치되는 경우, 매핑된 참조 블록은, 프레임 패킹 픽쳐의 가장 좌측 콘텐츠 경계에 원형으로 연결되는 프레임 패킹 픽쳐의 가장 우측 콘텐츠 경계 근처에 위치될 수도 있다. 현재 블록이 프레임 패킹 픽쳐의 최상부 콘텐츠 경계의 제1 영역 근처에 위치되고 결정된 초기 참조 블록이 최상부 콘텐츠 경계의 제1 영역을 넘어 프레임 패킹 픽쳐의 외부에 위치되는 경우, 매핑된 참조 블록은, 최상부 콘텐츠 경계의 제1 영역의 원형으로 반대 측에 위치되는 최상부 콘텐츠 경계의 제2 영역 근처에 위치될 수도 있다. 현재 블록이 프레임 패킹 픽쳐의 최하부 콘텐츠 경계의 제1 영역 근처에 위치되고 결정된 초기 참조 블록이 최하부 콘텐츠 경계의 제1 영역을 넘어 프레임 패킹 픽쳐의 외부에 위치되는 경우, 매핑된 참조 블록은, 최하부 콘텐츠 경계의 제1 영역의 원형으로 반대 측에 위치되는 최하부 콘텐츠 경계의 제2 영역 근처에 위치될 수도 있다.
매핑된 참조 블록과 연관되는 샘플 값은 보간 필터를 사용하여 유도될 수도 있다. 예를 들면, 쌍선형, 바이큐빅, 랑조스, 스플라인 보간 필터, 이산 코사인 변환 기반의 보간 필터, 및/또는 등등이 사용될 수도 있다.
매핑된 참조 블록과 연관되는 하나 이상의 속성(attribute)은 현재 블록을 예측하기 위해 유도될 수도 있다. 예를 들면, 속성(들)은, 매핑된 블록 포지션의 인트라 모드, 인터 모드, 병합 모드, 모션 정보 및/또는 등등을 포함할 수도 있다. 현재 블록은 속성(들)에 기초하여 예측될 수도 있다. 매핑된 참조 블록에서의 샘플 값은 360도 비디오 콘텐츠를 프로세싱하기 위해 유도될 수도 있다. 예를 들면, 비디오 프로세싱을 위한 매핑된 참조 블록에서의 복수의 샘플 값을 유도하기 위해, 인터 예측, 인트라 예측, 디블로킹, 루프 필터링, 샘플 적응 오프셋화, 적응형 루프 필터링, 및/또는 등등이 사용될 수도 있다.
매핑된 참조 블록은, 제1 투영 지오메트리와 연관되는 3D 지오메트리를 전개하는(unfolding) 것에 의해 유도될 수도 있다. 초기 참조 블록이 콘텐츠 경계에 대한 대각선 포지션 상에 있지 않는 경우, 현재 블록은, 콘텐츠 경계에 수직으로 또는 대각선으로(diagonally) 위치되는 가장 근처의 이용 가능한 블록을 복제하는 것에 의해 예측될 수도 있다.
현재 블록은, 면의 사이즈에 기초하여 면의 유효 패딩 영역(valid padded region)을 결정하는 것에 의해 예측될 수도 있다. 초기 참조 블록이 유효 패딩 영역 내에 위치되는지의 여부가 결정될 수도 있다. 초기 참조 블록이 유효 패딩 영역의 외부에 위치되는 경우, 현재 블록은 유효 패딩 영역 내에 위치되는 가장 근처의 이용 가능한 블록에 기초하여 예측될 수도 있다. 초기 참조 블록이 유효 패딩 영역의 내부에 위치되는 경우, 현재 블록은 매핑된 참조 블록에 기초하여 예측될 수도 있다.
초기 참조 블록은 유효 패딩 영역의 외부에 부분적으로 위치될 수도 있다. 예를 들면, 초기 참조 블록은 유효 패딩 영역 내에 위치되는 제1 서브블록 및 유효 패딩 영역의 외부에 위치되는 제2 서브블록을 포함할 수도 있다. 유효 패딩 영역의 외부에 위치되는 제2 서브블록의 샘플은, 유효 패딩 영역 내에 위치되는 각각의 이웃하는 샘플 값을 사용하여 패딩될 수도 있다. 현재 블록은, 제1 서브블록 내의 샘플 및 제2 서브블록 내의 패딩된 샘플에 기초하여 예측될 수도 있다.
유효 패딩 영역의 범위는, 제1 투영 지오메트리와 연관되는 면의 적어도 하나의 포지션 및/또는 사이즈에 기초하여 결정될 수도 있다. 초기 참조 블록이 유효 패딩 영역의 외부에 적어도 부분적으로 위치되는지의 여부가 결정될 수도 있다. 초기 참조 블록이 유효 패딩 영역의 외부에 적어도 부분적으로 위치되는 경우, 초기 참조 블록은 현재 블록을 예측하는 것으로부터 배제될 수도 있다.
본원에서 개시되는 실시형태의 더욱 상세한 이해는, 첨부의 도면과 연계하여 예로서 주어지는 다음의 설명으로부터 얻어질 수도 있다.
도 1a는 등장방형 투영(equirectangular projection; ERP)에서의 경도 방향 및 위도 방향을 따른 예시적인 구체 샘플링(sphere sampling)을 예시한다.
도 1b는 ERP에서의 예시적인 2D 평면을 예시한다.
도 1c는 ERP를 사용하여 생성되는 예시적인 픽쳐를 예시한다.
도 2a는 큐브맵 투영(cubemap projection; CMP)에서의 예시적인 3D 지오메트리 구조를 예시한다.
도 2b는 4×3 프레임 패킹 및 여섯 개의 면을 갖는 예시적인 2D 평면을 예시한다.
도 2c는 큐브맵 투영을 사용하여 생성되는 예시적인 픽쳐를 예시한다.
도 3a는 등적 투영(equal-area projection; EAP)에서의 예시적인 구체 샘플링을 예시한다.
도 3b는 EAP에서의 예시적인 2D 평면을 예시한다.
도 3c는 EAP를 사용하여 생성되는 예시적인 픽쳐를 예시한다.
도 4a는 팔면체 투영에서의 예시적인 3D 지오메트리 구조를 예시한다.
도 4b는 팔면체 투영에서의 예시적인 2D 평면 프레임 패킹을 예시한다.
도 4c는 팔면체 투영을 사용하여 생성되는 예시적인 픽쳐를 예시한다.
도 5는 예시적인 360도 비디오 프로세싱을 예시한다.
도 6은 예시적인 블록 기반 인코더의 블록도를 예시한다.
도 7은 예시적인 블록 기반 디코더의 블록도를 예시한다.
도 8은 HEVC 인트라 예측에서 참조 샘플을 사용하는 예를 예시한다.
도 9는 HEVC에서의 인트라 예측 방향의 예시적인 표시를 예시한다.
도 10은 하나의 모션 벡터를 갖는 예시적인 인터 예측을 예시한다.
도 11은 HEVC/H.264에서의 픽쳐 경계 외부의 참조 샘플에 대한 패딩을 예시한다.
도 12는, 공간적 이웃(spatial neighbor)이 HEVC 병합 프로세스에서 공간적 병합 후보(spatial merge candidate)를 유도하기 위해 어떻게 사용될 수도 있는지를 예시한다.
도 13은 큐브맵을 사용하여 투영되는 면 픽쳐(face picture)에 대한 불연속성 및 지오메트리 패딩을 예시한다.
도 14a는 큐브맵에 대한 패딩의 예시적인 3D 표현을 예시한다.
도 14b는 큐브맵에 대한 패딩의 전면(front face) 주위에서 전개된 면을 갖는 예시적인 평면 표현(flat representation)을 예시한다.
도 15a는 최근접 이웃 기법(nearest neighbor technique)을 사용하는, 코너 영역에서의 손실 샘플의 예시적인 외삽(extrapolation)을 예시한다.
도 15b는 면 경계에 대한 대각선 기법(diagonally to the face boundary technique)을 사용하는, 코너 영역에서의 손실 샘플의 예시적인 외삽을 예시한다.
도 16은 큐브맵 4×3 프레임 패킹 픽쳐에 대한 예시적인 모션 보상 예측(motion compensated prediction)을 예시한다.
도 17a는 구체 상에서의 연속성을 나타내기 위해 등장방형 투영으로 투영되는 픽쳐에 대한 예시적인 패딩의 예시이다.
도 17b는 등장방형 투영으로 투영되는 픽쳐에 대한 예시적인 패딩의 다른 예시이다.
도 18은 사인 함수가 룩업 테이블(look-up table)을 사용하여 유도될 수도 있는 방법을 예시한다.
도 19a는 모션 추정을 위한 패딩된 면 버퍼(padded face buffer)를 예시한다.
도 19b는 패딩된 면 버퍼에서의 모션 추정을 예시한다.
도 20a는 소스 픽쳐 사이즈가 최소 코딩 단위(coding unit; CU) 사이즈의 배수가 아닌 경우의 수평 방향에서의 패딩을 예시한다.
도 20b는 소스 픽쳐 사이즈가 최소 CU 사이즈의 배수가 아닌 경우의 수직 방향에서의 패딩을 예시한다.
도 20c는 소스 픽쳐 사이즈가 최소 CU 사이즈의 배수가 아닌 경우의 수평 방향 및 수직 방향에서의 패딩을 예시한다.
도 21은 현재 블록을 디블로킹할 때 사용되는 이웃하는 블록(neighboring block)을 예시한다.
도 22는 에지 오프셋(edge-offset) 샘플 적응 오프셋(sample adaptive offset ; SAO)에 의해 필터링될 수도 있는 픽셀을 예시한다.
도 23a는 수행되고 있는 예시적인 디코딩된 픽쳐 버퍼(decoded picture buffer; DPB) 관리의 예시를 도시한다.
도 23b는 수행되고 있는 예시적인 DPB 관리의 다른 예시를 도시한다.
도 24a는 큐브맵에 대한 큐브 면(cube face)의 균일한 샘플링의 예시적인 예시를 도시한다.
도 24b는 큐브맵에 대한 균일하지 않은 구형 샘플링(spherical sampling)의 예시적인 예시를 도시한다.
도 24c는 유니큐브에 대한 큐브 면의 균일하지 않은 샘플링의 예시적인 예시를 도시한다.
도 24d는 유니큐브에 대한 균일한 구형 샘플링의 예시적인 예시를 도시한다.
도 25a는, 규브 면의 균일하지 않은 구획 그리드로부터 유니큐브 면의 균일한 구획 그리드로의 예시적인 매핑을 예시한다.
도 25b는, 유니큐브 면의 균일한 구획 그리드로부터 큐브 면의 균일하지 않은 구획 그리드로의 예시적인 매핑을 예시한다.
도 26a는 큐브 면 상의 예시적인 균일하지 않은 구획을 예시한다.
도 26b는 구체 상의 예시적인 균일한 구획을 예시한다.
도 26c는 큐브 면 β의 좌표와 유니큐브 면 β'의 좌표 사이의 예시적인 매핑을 예시한다.
도 27은 하나의 유니큐브 면에 대한 패딩된 샘플의 유효 영역의 예시적인 예시를 도시한다.
도 28은 유니큐브 포맷을 위한 패딩된 샘플의 유효 영역에 MV를 클리핑하는 예시적인 예시를 도시한다.
도 29는 유니큐브 투영을 위한 하이브리드 패딩의 예시적인 예시를 도시한다.
도 30은 유니큐브 투영을 위한 하이브리드 패딩의 예시적인 픽쳐를 예시한다.
도 31은 큐브맵, 유니큐브, ACP 및 EAC의 매핑 기능의 예시적인 비교를 예시한다.
도 32는 유니큐브에 대한 지오메트리 패딩을 위해 여섯 개의 면에 대해 룩업(look-up)을 사용하는 예시적인 예시를 도시한다.
도 33a는 하나 이상의 개시된 실시형태가 구현될 수도 있는 예시적인 통신 시스템의 도면을 묘사한다.
도 33b는 도 33a에서 예시되는 통신 시스템 내에서 사용될 수도 있는 예시적인 무선 송수신 유닛(wireless transmit/receive unit; WTRU)의 시스템 도면을 묘사한다.
도 33c는 도 33a에서 예시되는 통신 시스템 내에서 사용될 수도 있는 예시적인 코어 네트워크 및 예시적인 무선 액세스 네트워크의 시스템 도면을 묘사한다.
도 33d는 도 33a에서 예시되는 통신 시스템 내에서 사용될 수도 있는 예시적인 코어 네트워크 및 다른 예시적인 무선 액세스 네트워크의 시스템 도면을 묘사한다.
도 33e는 도 33a에서 예시되는 통신 시스템 내에서 사용될 수도 있는 예시적인 코어 네트워크 및 다른 예시적인 무선 액세스 네트워크의 시스템 도면을 묘사한다.
이제, 예시적인 실시형태의 상세한 설명이 다양한 도면을 참조로 설명될 것이다. 비록 이 설명이 가능한 구현예의 상세한 예를 제공하지만, 세부 사항은 예시적인 것으로 의도되며 본 출원의 범위를 어떤 식으로든 제한하도록 의도되는 것이 아니다는 것을 유의해야 한다.
VR 시스템은 하나 이상의 360도 비디오를 사용할 수도 있다. 360도 비디오는, 수평 방향에서의 360도 각도로부터 그리고 수직 방향에서의 180도 각도로부터 관찰될 수도 있다. VR 시스템 및 360도 비디오는 초고선명(Ultra High Definition; UHD) 서비스를 능가하는 미디어 소비를 위해 사용될 수도 있다. 자유 시점 TV(Free view TV; FTV)가 솔루션의 성능을 테스트할 수도 있다. 예를 들면, FTV는 360도 비디오(예를 들면, 또는 전방향 비디오) 기반의 시스템 및/또는 다중 시점 기반의 시스템(multi-view based system)의 성능을 테스트할 수도 있다.
VR 시스템은 프로세싱 체인(processing chain)을 포함할 수도 있다. 프로세싱 체인은 캡쳐, 프로세싱, 디스플레이, 및/또는 애플리케이션을 포함할 수도 있다. 캡쳐와 연관하여, VR 시스템은 하나 이상의 카메라를 사용하여 상이한 발산 시점(divergent view)(예를 들면, 6 내지 12 시점)으로부터 장면을 캡쳐할 수도 있다. 시점은 함께 스티칭될 수도 있고 (예를 들면, 4K 또는 8K와 같은 고해상도로) 360도 비디오를 형성할 수도 있다. VR 시스템의 클라이언트 및/또는 유저 측은, 계산 플랫폼, 헤드 마운트형 디스플레이(head mounted display; HMD), 및/또는 머리 추적 센서를 포함할 수도 있다. 계산 플랫폼은 디스플레이를 위한 뷰포트를 수신, 디코딩(예를 들면, 360도 비디오), 및/또는 생성할 수도 있다. 뷰포트에 대해 두 개의 픽쳐(예를 들면, 각각의 눈에 하나씩)가 렌더링될 수도 있다. 스테레오 시청(stereo viewing)을 위해 두 개의 픽쳐가 HMD에서 디스플레이될 수도 있다. HMD에서 디스플레이되는 이미지를 확대하기 위해 렌즈가 사용될 수도 있다. 예를 들면, 렌즈는 더 나은 시야를 위해 HMD에서 디스플레이되는 이미지를 확대하기 위해 사용될 수도 있다. 머리 추적 센서는 뷰어의 머리 방위(orientation)를 계속 추적할 수도 있다(예를 들면, 일정하게 계속 추적할 수도 있다). 방위 정보는 VR 시스템에 공급되어 그 방향에 대한 뷰포트 픽쳐를 디스플레이할 수도 있다. VR 시스템은 전문화된 터치 디바이스를 제공할 수도 있다. 예를 들면, 특수한 터치 디바이스는, 뷰어가 가상 세계에서 오브젝트와 상호 작용하는 것을 허용할 수도 있다. VR 시스템은 그래픽 프로세싱 유닛(graphic processing unit; GPU) 지원을 갖는 워크스테이션에 의해 구동될 수도 있다. VR 시스템은, 모바일 디바이스(예를 들면, 스마트폰)를, 계산 플랫폼으로서, HMD 디스플레이로서 및/또는 머리 추적 센서로서 사용할 수도 있다. 공간적 HMD 해상도는, 예를 들면, 2160×1200일 수도 있다. 리프레시율은, 예를 들면, 90 Hz일 수도 있다. 시야(field of view; FOV)는, 예를 들면, 약 110도일 수도 있다. 머리 추적 센서에 대한 샘플링 레이트는, 예를 들면, 빠른 움직임을 캡쳐하기 위해 1000 Hz일 수도 있다. VR 시스템은 렌즈 및 카드 보드를 포함할 수도 있고, 스마트폰에 의해 구동될 수도 있다. VR 시스템은 게임용으로 사용될 수도 있다. 하나 이상의 360도 비디오 스트리밍 서비스가 제공될 수도 있다.
VR 시스템은 상호 작용 및/또는 햅틱 피드백을 제공할 수도 있다. 큰 HMD는 사람이 착용하기에 편리하지 않을 수도 있다. 2160×1200의 해상도는 (예를 들면, 소정의 HMD에 의해 제공되는 바와 같은) 입체 시점(stereoscopic view)의 경우 충분하지 않을 수도 있으며, 몇몇 유저의 경우 어지럼증과 불편함을 유발할 수도 있다. 해상도 증가가 바람직할 수도 있다. VR 경험은, VR 시스템의 시각적 효과를 현실 세계의 힘 피드백과 결합하는 것에 의해 향상될 수도 있다. VR 롤러 코스터 애플리케이션은, VR 시스템의 시각 효과를 현실 세계의 힘 피드백과 결합하는 한 예일 수도 있다.
360도 비디오는, 예를 들면, HTTP를 통한 동적 적응형 스트리밍(Dynamic Adaptive Streaming over HTTP; DASH) 기반의 비디오 스트리밍 기법을 사용하여, 압축 및/또는 전달될 수도 있다. 360도 비디오 콘텐츠는 구체 지오메트리로 표현될 수도 있다. 예를 들면, 동기화된 다수의 시점은 다수의 카메라에 의해 캡쳐될 수도 있고 구체 상에서 스티칭될 수도 있다. 동기화된 다수의 시점은, 구체 상에서 일체형 구조로서 스티칭될 수도 있다. 구체 정보는 지오메트리 변환 프로세스를 통해 2D 평면 표면 상으로 투영될 수도 있다. 예를 들면, 구체 정보는, 등장방형 투영(ERP)을 사용하는 것에 의해 지오메트리 변환 프로세스를 통해 2D 평면 표면 상으로 투영될 수도 있다. 도 1a는 경도(φ) 및 위도(θ)에서의 예시적인 구체 샘플링을 도시한다. 도 1b는 ERP를 사용하여 2D 평면 상으로 투영되고 있는 예시적인 구체를 도시한다. 범위 [-π, π] 내의 경도 φ는 요(yaw)로서 참조될 수도 있고, 범위 [-π/2, π/2] 내의 위도 θ는 항공에서의 피치(pitch)로서 참조될 수도 있다. π는 원의 직경에 대한 그 둘레의 비율일 수도 있다. (x, y, z)는 3D 공간에서의 포인트의 좌표를 나타낼 수도 있다. (ue, ve)는 ERP 이후에 2D 평면에서 포인트의 좌표를 나타낼 수도 있다. ERP는, 예를 들면, 수학식 (1) 및/또는 수학식 (2)에서 도시되는 바와 같이, 수학적으로 표현될 수도 있다.
Figure pat00001
W 및 H는 2D 평면 픽쳐의 폭 및 높이일 수도 있다. 도 1a에서 도시되는 바와 같이, 구체 상의 경도 L4와 위도 A1 사이의 교차점인 포인트 P는, 수학식 (1) 및/또는 (2)를 사용하여, 2D 평면에서의 도 1b의 고유 포인트 q로 매핑될 수도 있다. 도 1b에서 도시되는 2D 평면에서의 포인트 q는, 예를 들면, 역투영을 통해, 도 1a에서 도시되는 구체 상의 포인트 P로 다시 투영될 수도 있다. 도 1b에서의 시야(FOV)는, 구체에서의 FOV가, 약 110도 각도에서 X 축을 따른 시야각을 가지고 2D 평면으로 매핑되는 예를 도시한다.
하나 이상의 360도 비디오가 2D 비디오로 매핑될 수도 있다. 예를 들면, 360도 비디오는 ERP를 사용하여 2D 비디오로 매핑될 수도 있다. 360도 비디오는 H.264 또는 고효율 비디오 코딩(high efficiency video coding; HEVC)과 같은 비디오 코덱으로 인코딩될 수도 있고, 클라이언트로 전달될 수도 있다. 클라이언트 측에서, 비디오는 (예를 들면, 등장방형 포맷으로) 디코딩될 수도 있고, 예를 들면, 등장방형 픽쳐에서 FOV에 속하는 부분을 HMD 상으로 투영 및 디스플레이하는 것에 의해, 유저의 뷰포트에 기초하여 렌더링될 수도 있다. 등장방형 2D 픽쳐의 특성은 2D 픽쳐(예를 들면, 직선형 비디오 픽쳐)와는 상이할 수도 있다. 도 1c는 예시적인 등장방형 픽쳐를 도시한다. 픽쳐의 상부 부분은 북극(North Pole)에 대응할 수도 있고, 하부 부분은 남극(South Pole)에 대응할 수도 있다. 도 1c에서 도시되는 바와 같이, 상부 및/또는 하부 부분은 신장될 수도 있다. 예를 들면, 상부 및/또는 하부 부분은 적도에 대응하는 픽쳐의 중간 부분과 비교하여 신장될 수도 있다. 상부 및/또는 하부에서의 신장은, 2D 공간 도메인에서의 등장방형 샘플링이 균등하지 않을 수도 있다는 것을 나타낼 수도 있다. 2D 등장방형 픽쳐에서의 모션 필드는 복잡할 수도 있다. 예를 들면, 시간 방향에서의 2D 등장방형 픽쳐에서의 모션 필드는 복잡할 수도 있다.
모션 필드를 설명하기 위해 병진 모델(translational model)을 사용하는 소정의 비디오 코덱(예를 들면, MPEG-2, H.264, 및/또는 HEVC)은, 등장방형의 투영된 2D 평면 픽쳐에서 형상이 변하는 움직임을 표현할 수 없을 수도 있다. ERP에서, 극에 더 가까운 영역은, 뷰어 및/또는 콘텐츠 제공자가 덜 주목할 수도 있다. 예를 들면, 극에 더 가까운 영역은, 적도에 더 가까운 영역과 비교하여, 뷰어 및/또는 콘텐츠 제공자가 덜 주목할 수도 있고, 뷰어는 긴 지속 기간 동안 상부 및 하부 부분에 초점을 맞추지 않을 수도 있다. 상부 및 하부 부분은 (예를 들면, 워핑 효과 때문에) 신장되어 ERP 이후에 2D 평면의 큰 부분이 될 수도 있다. 신장된 부분에 대한 비디오 압축은, 많은 수의 비트를 취할 수도 있다. 소정의 프로세싱 기법은 등장방형 픽쳐 코딩에 적용될 수도 있다. 예를 들면, 극 영역을 코딩하기 위한 비트 비용을 감소시키기 위해, 평활화(smoothing)와 같은 사전 프로세싱이 극 영역에 적용될 수도 있다.
360도 비디오를 나타내기 위해서, 큐브맵, 등적(equal-area), 원통, 피라미드, 팔면체 및/또는 등등을 포함하는, 그러나 이들로 제한되지는 않는 하나 이상의 상이한 기하학적 형상 투영(geometric projection)이 사용될 수도 있다. 큐브맵은 여섯 개의 면을 활용할 수도 있다. 큐브맵에서의 면은 평면 정사각형일 수도 있다. 도 2a는 큐브맵 투영(CMP)의 예를 도시한다. 큐브맵은 여섯 개의 면을 포함할 수도 있다. 예를 들면, 큐브맵은 여섯 개의 정사각형 면을 포함할 수도 있다. 도시되는 접하는 구체(tangent sphere)의 반경이 1이라고 가정하면, 큐브맵의 면(예를 들면, 정사각형 면)의 횡방향 길이는 2일 수도 있다. 도 2b는 여섯 개의 면을, 인코딩 및 전달을 위해 사용될 수도 있는 직사각형 영역에 배치하기 위한 패킹의 예를 도시한다. 도 2c는 CMP를 사용하여 생성되는 픽쳐의 예를 도시한다. 픽쳐가 없는 회색 부분(201 및 203)은, 직사각형 픽쳐를 채우기 위한 하나 이상의 패딩된 영역을 나타낼 수도 있다. CMP에서의 면의 경우, 픽쳐는 2D 픽쳐와 동일하게 보일 수도 있다. 면의 경계는 연속적이지 않을 수도 있다. 예를 들면, 두 개의 이웃하는 면을 교차하는 직선은, 그들 두 개의 면의 경계에서 굴곡될 수도 있다. 면 경계에서의 모션은 불연속적일 수도 있다.
도 3a는 등적 투영(EAP)의 예시적인 지오메트리 구조를 도시한다. 등적 투영의 구체 상에서의 수직 샘플링은, 균일한 간격의 피치에 기초하지 않을 수도 있다. 샘플링된 위도(예를 들면, 각각의 샘플링된 위도)의 Y 축 상에서의 투영은, 구체 상의 샘플이 동일한 면적을 차지할 수도 있도록 균등하게 분포될 수도 있다. 수직 방향에서의 샘플링은 극 영역에 가까운 영역에 대해 희소하게 될 수도 있다. 도 3a에서 도시되는 바와 같이, 적도 주위에서 더 많은 샘플이 사용될 수도 있다. 유저는, 극 근처의 영역보다는 적도 근처의 영역을 더욱 빈번하게 볼 수도 있다. 도 3b는 EAP에서의 예시적인 2D 평면을 도시한다. 도 3c는 EAP를 사용한 예시적인 픽쳐를 도시한다. 도 3c에서 도시되는 바와 같이, 적도 주의의 영역(예를 들면, 301)은 확대될 수도 있고, 한편 극 부근의 영역은 압착될 수도 있다(예를 들면, 303).
도 4a는 팔면체 투영의 예시적인 지오메트리 구조를 도시한다. 팔면체는 여덟 개의 등변 삼각형 면을 포함할 수도 있다. 접하는 구체의 반경이 1이면, 각각의 삼각형의 변 길이는 √6일 수도 있다. 도 4b는 여덟 개의 삼각형을 직사각형 영역으로 배열하기 위한 예시적인 패킹을 도시한다. 도 4c는 팔면체 투영법을 사용한 예시적인 픽쳐를 도시한다. 두 개의 이웃하는 삼각형의 공유된 경계(예를 들면, 401)의 코너에서 워핑 왜곡이 관찰될 수도 있다.
상이한 지오메트리 투영의 코딩 효율성이 비교될 수도 있다. 예를 들면, 위도 기반의 피크 신호 대 잡음비(latitude based peak signal-to-noise ratio; L-PSNR)가 비교를 위해 사용될 수도 있다. 하나 이상의(예를 들면, 두 개의) 인자가 고려될 수도 있다: 구체 상에서의 균일한 샘플링 및/또는 뷰어의 시청 습성. 구체 상에서 균등하게 분포되는 특정한 수의 샘플이 정의될 수도 있다. 샘플의 가중치는 그것의 위도에 기초하여 정의될 수도 있다. 왜곡은, 균등하게 분포된 샘플을 고려하는 것에 의해 가중된 평균 제곱 오차(mean square error; MSE)를 사용하여 측정될 수도 있다. 가중치는 뷰어의 시야각을 추적하는 것에 의해 유도될 수도 있다. 예를 들면, 가중치는 트레이닝 시퀀스를 사용하여 뷰어의 시야각을 추적하는 것에 의해 유도될 수도 있다.
더욱 빈번하게 보게 되는 샘플에 대해서는 더 큰 가중치가 주어질 수도 있다. 예를 들면, 주목을 끄는 콘텐츠가 적도 주위에 위치될 수도 있기 때문에, 극 근처의 샘플보다는 적도 주위의 샘플에 대해 더 큰 가중치가 주어질 수도 있다. 구체 상의 균등하게 분포된 샘플을 사용하는 것에 의해, 상이한 투영법의 성능이 비교될 수도 있다. 이들 구체 샘플은 미리 정의될 수도 있고, 상이한 투영이 적용되는 경우, 정수 샘플링 포지션으로 투영되지 않을 수도 있다. 보간 필터 기반의 리샘플링이 적용되면, 추가적인 보간 오차가 발생할 수도 있다. 최근접 이웃 샘플링이 적용되는 경우, 균등한 샘플링이 보장되지 않을 수도 있다.
하나 이상의 360도 카메라 및 스티칭(stitching)으로 등장방형 포맷이 지원될 수도 있다. 큐브맵 지오메트리를 사용하여 360도 비디오를 인코딩하는 동안, 등장방형 포맷은 큐브맵 포맷으로 변환될 수도 있다. 등장방형과 큐브맵 사이에 관계가 있을 수도 있다. 도 2a에서, 구체의 중심으로부터 면의 중심 쪽으로 진행하는 세 개의 축의 각각을 사용하여 면이 참조될 수도 있다. 도 2a에서 도시되는 바와 같이, P는 양수를 나타낼 수도 있고, N은 음수를 나타낼 수도 있다. PX는 구체의 중심으로부터 양의 x 축을 따르는 방향을 나타낼 수도 있고, NX는 PX의 역방향을 나타낼 수도 있다. PY, NY, PZ 및/또는 NZ에 대해 유사한 표기법이 사용될 수도 있다. 여섯 개의 면(예를 들면, PX, NX, PY, NY, PZ, 및/또는 NZ)은, 각각, 전, 후, 상, 하, 좌 및/또는 우의 면에 대응할 수도 있다. 면은 0에서부터 5까지 인덱싱될 수도 있다. 예를 들면, 면은 다음과 같이 인덱싱될 수도 있다: PX (0), NX (1), PY (2), NY (3), PZ (4), 및/또는 NZ (5). Ps(X_s, Y_s, Z_s)는 1의 반경을 갖는 구체 상의 한 포인트일 수도 있다. 포인트 Ps는, 다음과 같이 요 φ와 피치 θ로 표현될 수도 있다:
Figure pat00002
포인트 Pf는, 라인이 구체 중심으로부터 Ps로 연장될 때의 큐브 상의 포인트일 수도 있다. Pf는 면 NZ 상에 있을 수도 있다. Pf의 좌표인 (X_f, Y_f, Z_f)는 다음과 같이 계산될 수도 있는데:
Figure pat00003
여기서 |x|는 변수 x의 절대 값일 수도 있다. 면 NZ의 2D 평면에서의 Pf의 좌표인 (uc, vc)는 다음과 같이 계산될 수도 있다:
Figure pat00004
하나 이상의 수학식 (3) 내지(10)를 사용하여, 특정한 면 상의 큐브맵에서의 좌표 (uc, vc)와 구체 상에서의 좌표 (φ, θ) 사이의 관계가 유도될 수도 있다. 구체 상의 포인트 (φ, θ)와 등장방형 포인트 (ue, ve) 사이의 관계는, 수학식 (1) 및/또는 (2)으로부터 알려질 수도 있다. 등장방형 지오메트리와 큐브맵 지오메트리 사이에 어떤 관계가 있을 수도 있다.
큐브맵으로부터 등장방형으로의 지오메트리 매핑은 다음과 같이 표현될 수도 있다. 큐브맵 상의 하나의 면 상의 포인트 (uc, vc)가 주어지면, 등장방형 평면 상에서의 출력 (ue, ve)는 다음 중 하나 이상으로서 계산될 수도 있다. (uc, vc)를 갖는 면 상에서의 3D 포인트 P_f의 좌표는, 수학식 (9) 및/또는 (10)에서의 관계에 따라 계산될 수도 있다. P_f를 갖는 구체 상에서의 3D 포인트 P_s의 좌표는, 수학식 (6), (7) 및/또는 (8)에서의 관계에 따라 계산될 수도 있다. P_s를 갖는 구체 상에서의 (φ, θ)는, 수학식 (3), (4) 및/또는 (5)에서의 관계에 따라 계산될 수도 있다. (φ, θ)로부터의 등장방형 픽쳐 상의 포인트 (ue, ve)의 좌표는 수학식 (1) 및/또는 (2)에서의 관계에 따라 계산될 수도 있다.
큐브맵을 사용하여 2D 픽쳐에서 360도 비디오를 표현하기 위해, 큐브맵의 여섯 개의 면은 직사각형 영역으로 패킹될 수도 있다. 이것은 프레임 패킹으로 참조될 수도 있다. 프레임 패킹 픽쳐는, 2D 픽쳐로 취급(예를 들면, 코딩)될 수도 있다. 다른 프레임 패킹 구성이 사용될 수도 있다(예를 들면, 3×2 및/또는 4×3). 3×2 구성에서, 여섯 개의 큐브맵 면은, 하나의 행에서 3 개의 면을 갖는 2 개의 행으로 패킹될 수도 있다. 4×3 구성에서, 4 개의 면(예를 들면, PX, NZ, NX 및 PZ)은 하나의 행(예를 들면, 가운데 행)으로 패킹될 수도 있고, 다른 두 개의 면(예를 들면, PY 및 NY)은 두 개의 상이한 행(예를 들면, 상부 및 하부 행)으로 별개로 패킹될 수도 있다. 도 2c는, 도 1c에서의 등장방형 픽쳐에 대응하는 4×3 프레임 패킹의 예를 도시한다.
등각 포맷의 360도 비디오는 큐브맵 포맷으로 변환될 수도 있다. 예를 들면, 등장방형 포맷의 360도 비디오는, 등장방형 포맷의 360도 비디오를 입력으로서 사용하여 큐브맵 포맷으로 변환될 수도 있다. 큐브맵 포맷의 샘플 포지션 (uc, vc)의 경우, 등장방형 포맷의 대응하는 좌표 (ue, ve)가 계산될 수도 있다. 등장방형에서의 계산된 좌표 (ue, ve)가 정수 샘플 포지션에 있지 않으면, 보간 필터가 사용될 수도 있다. 예를 들면, 이웃하는 정수 포지션으로부터의 샘플을 사용하여 이 분수 포지션에서 샘플 값을 획득하기 위해, 보간 필터가 사용될 수도 있다.
큐브맵 포맷은 360도 비디오의 표현 포맷일 수도 있다. 구체 상의 샘플은 큐브맵 포맷에 의해 불균등하게 샘플링될 수도 있다. 예를 들면, 구체의 샘플은, 면 경계 근처에서 더 높은 샘플링 레이트를 및/또는 면 중심 근처에서 더 낮은 샘플링 레이트를 가지면서, 큐브맵 포맷에 의해 불균등하게 샘플링될 수도 있다. 구체 상의 샘플은, 직선 투영의 제한 사항으로 인해, 큐브맵 포맷에 의해 불균등하게 샘플링될 수도 있다. 소정의 구형 샘플링 특성이 큐브맵 포맷에서 존재할 수도 있다. 예를 들면, 면 경계에서 더 높은 샘플링 레이트 및/또는 면 중심에서 더 낮은 샘플링 레이트의 구형 샘플링 특성이 큐브맵 포맷에서 존재할 수도 있다. 큐브맵 투영은, 면의 경계 주위의 영역을 확대할 수도 있고 및/또는 면의 중심 주위의 영역을 축소시킬 수도 있다.
모션 모델은, 병진 모션 모델, 아핀 모션 모델(affine motion model), 및/또는 등등을 포함할 수도 있다. 큐브맵 투영은, 투영 면에서 결과적으로 나타나는 모션 필드의 규칙성을 감소시킬 수도 있다.
유니큐브 맵 투영 포맷이 제공될 수도 있다. 큐브맵의 샘플링 그리드는, 구체 상의 균일한 샘플링 그리드로 바뀔 수도 있다. 실제 큐브 면이 생성되기 이전에, 2D 평면의 면 상의 샘플의 좌표를 수정하기 위해 매핑이 사용될 수도 있다.
도 24a 내지 도 24(d)는, 큐브맵과 유니큐브 사이의 평면의 샘플링 패턴 및 구형의 샘플링 패턴의 예를 예시한다. 예를 들면, 도 24a는 큐브맵에 대한 큐브 면의 예시적인 균일한 샘플링을 예시한다. 도 24a에서 도시되는 바와 같이, 큐브맵 면의 샘플링 그리드는, 평행 라인의 두 개의 세트를 포함할 수도 있다: 수평 방향에서의 하나의 라인 및 수직 방향에서의 다른 라인. 평행한 구획 라인의 세트는 균일한 간격을 가지고 분리될 수도 있다. 큐브맵 면이 구체 상으로 투영되는 경우, 샘플링 그리드는 왜곡될 수도 있다. 예를 들면, 평면의 면에서의 직선의 라인은, 도 24b에서 도시되는 바와 같이, 곡선이 될 수도 있다. 도 24b는 큐브맵에 대한 예시적인 균일하지 않은 구형 샘플링을 예시한다. 구체 상의 샘플링 그리드는 균일하지 않게 될 수도 있다. 예를 들면, 구체 상의 샘플링 그리드는, 도 24b에서 도시되는 바와 같이, 직선 투영이 거리 보존 투영(distance-reserved projection)이 아닐 수도 있기 때문에, 불균일하게 될 수도 있다. 큐브맵과 유사한 샘플링 구조를 유지하기 위해, 유니큐브 포맷의 면은, 평행 라인의 하나 이상의(예를 들면, 두 개) 세트에 기초하여 샘플링될 수도 있다. 세트 내의 평행 라인은 불균일하게 분포될 수도 있고, 그 결과, 구체 상의 대응하는 샘플링 그리드는 불균일할 수도 있다. 도 24c는, 유니큐브에 대한 큐브 면의 예시적인 균일하지 않은 샘플링을 예시한다. 예를 들면, 세트 내의 평행 라인은, 도 24c에서 도시되는 바와 같이, 불균일하게 분포될 수도 있다. 도 24(d)는 유니큐브에 대한 예시적인 균일한 구형 샘플링을 예시한다. 구체 상의 대응하는 샘플링 그리드는, 도 24(d)에서 도시되는 바와 같이, 균일할 수도 있다.
도 24c의 예에서 도시되는 바와 같이, 큐브 면 상의 불균일한 구획은, 이웃하는 샘플 사이의 다양한 거리와 연관될 수도 있다. 매핑은, 균일하지 않은 평면의 샘플링 그리드를, 균일한 평면의 샘플링 그리드로 변환하기 위해 사용될 수도 있다. 도 25는 큐브 면과 유니큐브 면 사이의 예시적인 매핑을 도시한다. 예를 들면, 도 25a는, 큐브 면의 균일하지 않은 구획 그리드로부터 유니큐브 면의 균일한 구획 그리드로의 예시적인 매핑을 예시한다. 도 25b는, 유니큐브 면의 균일한 구획 그리드로부터 큐브 면의 균일하지 않은 구획 그리드로의 예시적인 매핑을 예시한다. 수평 및 수직 변환이 분리 가능한 경우, (x, y)로부터 (x', y')로의 매핑은, 하나 이상의(예를 들면, 두 개의) 별개의 변환, 예를 들면, x' = f(x) 및 y' = f(y)를 포함할 수도 있는데, 여기서 변환은 x와 y에 적용될 수도 있다. 예를 들면, 변환은 x와 y에 대해 독립적으로 적용될 수도 있다. (x', y')를 (x, y)로 매핑할 수도 있는 역변환, 예를 들면, x = g(x') 및 y = g(y')가 계산될 수도 있다. x 및 y의 두 개 변환은 동일할 수도 있다. x 및 y의 두 개의 변환 함수가 동일하면, y의 변환 함수의 유도가 수행될 수도 있다. 예를 들면, β∈[-1, 1]가 큐브 상의 패턴 영역의 y 좌표이면, 도 26은, 큐브 면의 좌표와 유니큐브 면의 좌표 사이의 매핑 함수를 계산하는 예를 도시한다. 도 26a는, 큐브 면 상의 하나의 균일하지 않은 구획을 사용하는 유니큐브의 예시적인 매핑 함수를 예시한다. 도 26b는, 구체 상의 대응하는 균일한 구획을 사용하는 유니큐브의 예시적인 매핑 함수를 예시한다. 도 26c는, 큐브 면 β의 좌표와 유니큐브 면 β'의 좌표 사이의 매핑 함수를 예시한다. 매핑 함수 β' = f(β)는, (예를 들면, 도 24b에서 도시되는 바와 같이) 구체 상에서 동일한 직선 구조 구획을 가지면서 β를 β'으로 변환하는 것을 목표로 할 수도 있고, f(β)는 β에 대응하는 구형 영역의 면적에 비례할 수도 있다. 예를 들면, 도 26b에서 도시되는 바와 같이, f(β)의 값은, 패턴 구형 영역의 면적과 구체의 1/4 사이의 비율과 동일할 수도 있다. 예를 들면, 매핑 함수 f(β)는 다음과 같이 계산될 수도 있는데:
Figure pat00005
여기서 β'∈[-1, 1]이다. 도 26c는, β와 β'사이의 대응하는 매핑 관계를 예시한다.
큐브맵형 투영 포맷은, 큐브맵의 좌표를 조정하는 것에 의해, 하나 이상의 구형 샘플링 피쳐를 제공할 수도 있다. 예를 들면, 큐브맵의 좌표는, 하나 이상의 매핑 함수를 사용하는 것에 의해 조정될 수도 있다. 조정된 큐브맵 투영(adjusted cubemap projection; ACP)은 구형 샘플링 균일성을 제공할 수도 있다. 큐브 도메인에서의 좌표는 다음의 매핑 함수 중 하나 이상에 기초하여 조정될 수도 있는데:
Figure pat00006
여기서 sgn(·)은 입력의 부호를 반환할 수도 있다.
큐브 도메인과 EAC 도메인 사이에서 좌표를 변환하는 것에 의해, 등각 큐브맵(equi-angular cubemap; EAC) 투영이 수행될 수도 있다. 예를 들면, 큐브 도메인과 EAC 도메인 사이의 좌표는, 큐브맵 샘플링 그리드 상의 구형 샘플의 각도의 접선에 기초하여 변환될 수도 있다. EAC 투영을 위한 매핑 함수는 다음과 같이 계산될 수도 있다:
Figure pat00007
도 31은, 큐브맵, 유니큐브, ACP 및 EAC에 대한 매핑 함수 g(β')의 예시적인 비교를 예시한다.
도 5는 360도 비디오 프로세싱을 위한 예시적인 작업 흐름을 예시한다. 하나 이상의 카메라를 사용하여 360도 비디오 캡쳐가 캡쳐될 수도 있다. 예를 들면, 구형 공간을 커버하는 360도 비디오를 캡쳐하기 위해, 하나 이상의 카메라가 사용될 수도 있다. 비디오는 함께 스티칭될 수도 있다. 예를 들면, 비디오는 등장방형 지오메트리 구조를 사용하여 함께 스티칭될 수도 있다. 등장방형 지오메트리는, 인코딩(예를 들면, 비디오 코덱을 사용한 인코딩)을 위해, 큐브맵 지오메트리와 같은 다른 지오메트리 구조로 변환될 수도 있다. 코딩된 비디오는, 예를 들면, 동적 스트리밍 및/또는 브로드캐스팅을 통해 클라이언트에게 전달될 수도 있다. 비디오는, 예를 들면, 수신기에서 디코딩될 수도 있다. 압축 해제된 프레임은, 디스플레이 지오메트리와 같은 디스플레이로 언패킹될(unpacked) 수도 있다. 예를 들면, 디스플레이 지오메트리는 등장방형 지오메트리 내에 있을 수도 있다. 지오메트리는 렌더링을 위해 사용될 수도 있다. 예를 들면, 지오메트리는, 유저의 시야각에 따른 뷰포트 투영을 통한 렌더링을 위해 사용될 수도 있다.
크로마 성분은, 루마 성분보다 더 작은 해상도로 서브샘플링될 수도 있다. 크로마 서브샘플링은, 인코딩을 위해 사용되는 비디오 데이터의 양을 감소시킬 수도 있고 대역폭 및/또는 컴퓨팅 능력을 절약할 수도 있고 비디오 품질에 영향을 주지 않으면서(예를 들면, 상당히 영향을 주지 않으면서) 그렇게 할 수도 있다. 4:2:0 크로마 포맷에서, 크로마 성분 둘 모두는 루마 해상도의 1/4이 되도록 서브샘플링될 수도 있다. 예를 들면, 크로마 성분은, 루마 해상도의 수평으로 1/2 그리고 수직으로 1/2로 서브샘플링될 수도 있다. 크로마 서브샘플링 이후에, 크로마 샘플링 그리드는 루마 샘플링 그리드와는 상이할 수도 있다. 도 5에서, 프로세싱 흐름의 전반에 걸쳐, 하나 이상의 스테이지에서 프로세싱되고 있는 360도 비디오는, 크로마 성분이 서브샘플링된 크로마 포맷일 수도 있다.
도 6은, 예시적인 블록 기반의 하이브리드 비디오 인코딩 시스템(600)의 블록도를 도시한다. 입력 비디오 신호(602)는 블록 단위로(block by block) 프로세싱될 수도 있다. 고해상도(예를 들면, 1080p 및/또는 그 이상) 비디오 신호를 압축하기 위해, 확장된 블록 사이즈(예를 들면, 코딩 단위 또는 CU로 칭해짐)가 (예를 들면, HEVC에서) 사용될 수도 있다. CU는 (예를 들면, HEVC에서) 64×64 픽셀까지 가질 수도 있다. CU는 또한, 예측 단위(prediction unit) 또는 PU로 구획될 수도 있는데, 이것에 대해 별개의 예측 방법이 적용될 수도 있다. 입력 비디오 블록(예를 들면, 매크로블록(macroblock; MB) 또는 CU)에 대해, 공간 예측(660) 및/또는 시간 예측(662)이 수행될 수도 있다. 공간 예측(예를 들면, 또는 "인트라 예측")은, 현재 비디오 블록을 예측하기 위해, 동일한 비디오 픽쳐 및/또는 슬라이스에서의 이미 코딩된 이웃하는 블록으로부터의 픽셀을 사용할 수도 있다. 공간 예측은, 비디오 신호에서는 본질적인 공간 중복성(spatial redundancy)을 감소시킬 수도 있다. 시간 예측(예를 들면, "인터 예측" 또는 "모션 보상 예측"으로 칭해짐)은, 현재 비디오 블록을 예측하기 위해, 이미 코딩된 비디오 픽쳐로부터의 픽셀을 사용할 수도 있다. 시간 예측은, 비디오 신호에서는 본질적인 시간 중복성을 감소시킬 수도 있다. 주어진 비디오 블록에 대한 시간 예측 신호는, 현재 블록과 그것의 참조 블록 사이의 모션의 양 및/또는 방향을 나타내는 하나 이상의 모션 벡터에 의해 시그널링될 수도 있다. (예를 들면, H.264/AVC 또는 HEVC에서) 다수의 참조 픽쳐가 지원되는 경우, 비디오 블록의 참조 픽쳐 인덱스가 디코더로 시그널링될 수도 있다. 참조 픽쳐 인덱스는, 시간 예측 신호가 참조 픽쳐 저장소(664)의 어떤 참조 픽쳐로부터 유래할 수도 있는지를 식별하기 위해 사용될 수도 있다.
공간 및/또는 시간 예측 이후, 인코더 내의 모드 결정(680)은, 예를 들면, 레이트 왜곡 최적화(rate-distortion optimization)에 기초하여, 예측 모드를 선택할 수도 있다. 예측 블록은 616에서 현재 비디오 블록으로부터 감산될 수도 있다. 예측 잔차는, 목표 비트 레이트를 달성하기 위해, 변환 모듈(604) 및 양자화 모듈(606)을 사용하여 상관 해제될 수도 있다. 양자화된 잔차 계수는 610에서 역 양자화되고 612에서 역변환되어 재구성된 잔차를 형성할 수도 있다. 재구성된 잔차는 626에서 예측 블록에 다시 추가되어 재구성된 비디오 블록을 형성할 수도 있다. 재구성된 비디오 블록이 참조 픽쳐 저장소(664)에 놓이기 이전에, 666에서, 재구성된 비디오 블록에 디블로킹 필터 및/또는 적응형 루프 필터와 같은 루프 내 필터가 적용될 수도 있다. 참조 픽쳐 저장소(664) 내의 참조 픽쳐는 미래의 비디오 블록을 코딩하기 위해 사용될 수도 있다. 출력 비디오 비트스트림(620)이 형성될 수도 있다. 코딩 모드(예를 들면, 인터 또는 인트라), 예측 모드 정보, 모션 정보, 및/또는 양자화된 잔차 계수는, 엔트로피 코딩 유닛(608)으로 전송되고 압축 및 패킹되어 비트스트림(620)을 형성할 수도 있다.
도 7은 예시적인 블록 기반의 비디오 디코더의 일반적인 블록도를 도시한다. 비디오 비트스트림(202)은 엔트로피 디코딩 유닛(208)에서, 수신될 수도 있고, 언패킹될 수도 있고, 및/또는 엔트로피 디코딩될 수도 있다. 코딩 모드 및/또는 예측 정보는 (예를 들면, 인트라 코딩된 경우) 공간 예측 유닛(260)으로 및/또는 (예를 들면, 인터 코딩된 경우) 시간 예측 유닛(262)으로 전송될 수도 있다. 공간 예측 유닛(260) 및/또는 시간 예측 유닛(262)에서 예측 블록이 형성될 수도 있다. 잔차 변환 계수는 역양자화 유닛(210) 및 역변환 유닛(212)으로 전송되어 잔차 블록을 재구성할 수도 있다. 그 다음, 예측 블록 및 잔차 블록은 226에서 가산될 수도 있다. 재구성된 블록은 루프 내 필터링(266)을 통과할 수도 있고 참조 픽쳐 저장소(264)에 저장될 수도 있다. 참조 픽쳐 저장소(264) 내의 재구성된 비디오는, 디스플레이 디바이스를 구동하기 위해 및/또는 미래의 비디오 블록을 예측하기 위해 사용될 수도 있다.
H.264 및/또는 HEVC와 같은 비디오 코덱은 2D 평면 직선형 비디오를 코딩하기 위해 사용될 수도 있다. 비디오 코딩은, 공간 및/또는 시간 상관을 활용하여 정보 중복성을 제거할 수도 있다. 인트라 예측 및/또는 인터 예측과 같은 하나 이상의 예측 기법이 비디오 코딩 동안 적용될 수도 있다. 인트라 예측은, 이웃하는 재구성된 샘플을 사용하여 샘플 값을 예측할 수도 있다. 도 8은, 현재의 변환 단위(transform unit; TU)를 인트라 예측하기 위해 사용될 수도 있는 예시적인 참조 샘플을 도시한다. 참조 샘플은 현재의 TU의 상부 및/또는 좌측에 위치되는 재구성된 샘플을 포함할 수도 있다.
선택할 다수의 인트라 예측 모드가 있을 수도 있다. 도 9는 HEVC에서의 인트라 예측 방향의 예시적인 표시를 예시한다. 예를 들면, HEVC는, 도 9에서 도시되는 바와 같이, 평면 (0), DC (1), 및/또는 각도 예측 (2 내지 34)을 포함하는 35 개의 인트라 예측 모드를 명시할 수도 있다. 적절한 인트라 예측 모드가 선택될 수도 있다. 예를 들면, 적절한 인트라 예측 모드가 인코더 측에서 선택될 수도 있다. 다수의 후보 인트라 예측 모드에 의해 생성되는 예측이 비교될 수도 있다. 예측 샘플과 원래의 샘플 사이의 가장 작은 왜곡을 생성하는 후보 인트라 예측 모드가 선택될 수도 있다. 선택된 인트라 예측 모드는 비트스트림으로 코딩될 수도 있다.
방향성 텍스쳐를 예측하기 위해 각도 예측이 사용될 수도 있다. 도 10은 하나의 모션 벡터(MV)를 갖는 예시적인 인터 예측을 도시한다. 참조 픽쳐 내의 블록 B0' 및 B1'은, 현재 픽쳐의 블록 B0 및 B1에 대한 각각의 참조 블록일 수도 있다. 참조 블록 B0'은 부분적으로 참조 픽쳐의 경계 외부에 있을 수도 있다. 패딩 프로세스는 픽쳐 경계 외부에 미지의 샘플을 채우기 위해 사용될 수도 있다. 도 11은 픽쳐 경계의 외부의 참조 샘플에 대한 예시적인 패딩을 도시한다. 예를 들면, 블록 B0'에 대한 패딩 예는, 네 개의 부분 P0, P1, P2 및 P3을 구비할 수도 있다. 부분 P0, P1 및 P2는 픽쳐 경계 외부에 있을 수도 있고, 예를 들면, 패딩 프로세싱을 통해 채워질 수도 있다. 예를 들면, 부분 P0은 참조 픽쳐의 좌상(top-left) 샘플로 채워질 수도 있다. 부분 P1은 참조 픽쳐의 최상부 행을 사용하여 수직 패딩으로 채워질 수도 있다. 부분 P2는 픽쳐의 가장 좌측의 열을 사용하여 수평 패딩으로 채워질 수도 있다.
모션 벡터 예측 및/또는 병합 모드는 인터 코딩을 위해 사용될 수도 있다. 모션 벡터 예측에서, 이웃하는 PU로부터의 모션 벡터 및/또는 시간적 병치 PU(temporal collocated PU)가 현재 MV의 예측자(predictor)로서 사용될 수도 있다. 선택된 MV 예측자의 인덱스는 코딩될 수도 있고 및/또는 디코더로 시그널링될 수도 있다. 디코더는 다수의 엔트리를 갖는 MV 예측자 목록을 구성할 수도 있다. 시그널링된 인덱스를 갖는 엔트리는, 현재 PU의 MV를 예측하기 위해 사용될 수도 있다.
병합 모드에서, 공간적 및/또는 시간적 이웃 PU에 대한 MV 정보가 재사용될 수도 있고, 현재 PU에 대한 모션 벡터 코딩이 스킵될 수도 있다. 도 12는, 병합 후보 유도를 위해 사용될 수도 있는 예시적인 공간적 이웃 블록을 예시한다. 예를 들면, 좌하(A0), 좌측(A1), 우상(B0), 상부(B1), 및/또는 좌상(B2)이 병합 후보 유도를 위해 사용될 수도 있다. 시간적 병치 블록(temporal collocated block)이 병합 후보로서 사용될 수도 있다. 선택된 병합 후보의 인덱스가 코딩될 수도 있다. 디코더 측에서 병합 후보 목록이 구성될 수도 있다. 예를 들면, 디코더 측에서 구성되는 병합 후보 목록은, 인코더 측에서의 MV 예측자 목록의 구성과 유사할 수도 있다. 시그널링된 병합 후보 인덱스를 갖는 엔트리는 현재 PU의 MV로서 사용될 수도 있다.
360도 비디오 코딩 및 2D 평면 비디오 코딩은 다양한 양태에서 상이할 수도 있다. 예를 들면, 360도 비디오는 프레임 패킹될 수도 있고 뷰어를 둘러싸는 환경의 360도 정보를 포함할 수도 있다. 이와 같이, 360도 비디오는 2D 비디오가 가지지 않을 수도 있는 하나 이상의 고유한 원형 특성을 가질 수도 있다. 2D 비디오를 코딩하는 데 적절할 수도 있는, MPEG-2, H.264, 및/또는 HEVC와 같은 소정의 코덱은, 360도 비디오의 원형 특성 피쳐를 완전히 고려하지 않을 수도 있다. 예를 들면, 360도 비디오 내의 픽셀이 픽쳐의 경계 외부에 있으면, 반복적인 패딩이 적용될 수도 있다.
프레임 패킹은 코딩을 위해 360도 비디오의 하나 이상의 면을 직사각형의 픽쳐로 배열하기 위해 사용될 수도 있다. 면 경계를 따르는 샘플 값은 연속적이지 않을 수도 있다. 불연속성은 공간 예측의 효율을 감소시킬 수도 있다. 도 8에서 도시되는 바와 같이, 이웃하는 재구성된 샘플은, 현재의 TU를 인트라 예측하기 위한 참조 샘플을 유도하기 위해 사용될 수도 있다. 이웃하는 재구성된 샘플은, 현재 TU가 속하는 면과는 상이한 면에 위치될 수도 있다. 예를 들면, 현재 TU가 큐브맵에서 면의 경계 근처에 있거나 또는 면의 경계에 있다면, 대응하는 프레임 패킹 2D 픽쳐에서의 가장 근처의 이웃하는 샘플은 이웃하는 면 내에 있을 수도 있고, 샘플은 프레임 패킹 픽쳐에서 연속적이지 않을 수도 있다.
도 13은 큐브맵의 면 픽쳐에서의 불연속적인 샘플 및 패딩의 예를 도시한다. 원은 구체의 적도를 나타낼 수도 있다. 정사각형의 네 개의 변(lateral)/변(side)은, 적도가 투영되는 큐브맵의 네 개의 측면 상의 네 개의 라인을 나타낼 수도 있다. P는 큐브맵의 면을 나타낼 수도 있고, Q는 면 P의 인접한 면을 나타낼 수도 있다. Px(x∈[0, 3])는 면 P 상의 샘플링 포인트를 나타낼 수도 있다. Qx(x∈[0, 3])는 이웃하는 면 Q 상의 샘플링 포인트를 나타낼 수도 있다. 예를 들면, 이웃하는 샘플 P4, P5, 및 P6이 면 경계의 외부에 있는 샘플이면 그리고 P4, P5, 및 P6이 (예를 들면, 짝수의 샘플링 간격을 가지고) 면 P 상에 패딩될 경우, 패딩 샘플 K0, K1, 및 K2는, 각각, 구체의 중심으로부터 면 Q 상의 P4, P5, 및 P6의 투영을 나타낼 수도 있다. P4, P5, 및 P6의 포인트 위치는, 이웃하는 샘플 위치 또는 초기 참조 블록과 연관되는 초기 샘플 위치로 참조될 수도 있다. 도 13에서 도시되는 바와 같이, K0 및 Q0은 서로 중첩되지 않을 수도 있다. K1 및 Q1, 및 K2 및 Q2는 중첩되지 않을 수도 있다. 확장된 샘플이 면 경계에 대해 더 멀수록, 발산은 더 클 수도 있다. 패딩 샘플 K0, K1, 및 K2는, 각각, P4, P5 및 P6에서 샘플을 채우기 위해 사용될 수도 있다. K0, K1, 및 K2는, 그들 각각의 참조 샘플 위치에 위치되는 매핑된 참조 블록과 연관되는 참조 샘플, 유도된 샘플 위치, 패딩 샘플 위치, 또는 복수의 샘플 값으로 참조될 수도 있다. 도 13에서 도시되는 바와 같이, K0과 Q0은 서로 중첩하지 않을 수도 있고, K1과 Q1, 및 K2와 Q2에 대해서도 동일할 수도 있다. 패딩 샘플 K0, K1, 및/또는 K2는, P4, P5, 및/또는 P6에서 샘플을 채우기 위해 사용될 수도 있다.
인터 모션 보상 예측(inter motion compensated prediction)은 불연속적인 샘플을 가질 수도 있다. 예를 들면, 인코딩 동안 (예를 들면, 도 2b에서 도시되는 바와 같은) 큐브맵 4×3 프레임 패킹이 적용되면, 현재 블록의 면 외부에 있는 참조 블록의 픽셀은 불연속적일 수도 있다. 도 16은 큐브맵 4×3 프레임 패킹 픽쳐에 대한 예시적인 모션 보상 예측을 예시한다. 도 16에서 도시되는 바와 같이, 면 V는 프레임 패킹을 위한 가상 면일 수도 있다. 현재 블록 B0이 현재 픽쳐의 면 0에 속하고, 모션 벡터에 의해 지시되는 시간 참조 블록 B0'이 부분적으로 참조 픽쳐의 면 0 외부에 위치되면, 면 4 상의 서브블록(1402)(예를 들면, 블록 B0'의 서브블록)은 상이한 텍스쳐 방향을 가질 수도 있다. 현재 블록 B0은 두 개의 예측 단위로 분할될 수도 있다.
프레임 패킹 픽쳐에서 면 경계를 따르는 모션은 연속적이지 않을 수도 있다. 예를 들면, 도 12의 현재 PU는 면 경계에 있을 수도 있다. 이웃하는 블록 A0, A1, B0, B1, 및/또는 B2는 하나 이상의 상이한 면에 위치될 수도 있다. 이웃하는 블록(예를 들면, A0, A1, B0, B1, 및/또는 B2)의 모션은, 현재 블록의 모션 방향과는 상이한 하나 이상의 방향을 가질 수도 있다.
360도 비디오 코딩은, 코딩되고 있는 비디오의 지오메트리 구조 및/또는 특성을 고려할 수도 있다. 인트라 및/또는 인터 예측의 경우, 참조 샘플이 프레임 패킹 픽쳐 외부에 있으면, 픽쳐의 하나 이상의 원형 특성을 고려하는 것에 의해 지오메트리 패딩이 적용될 수도 있다. 지오메트리 패딩은, 픽쳐 외부의 참조 샘플에 대한 예측 효율성을 증가시킬 수도 있다. 예를 들면, 지오메트리 패딩은, 인터 모션 보상 예측을 위해 픽쳐 외부의 참조 샘플에 대한 예측 효율성을 증가시킬 수도 있다. 예를 들면, 도 11에 도시된 바와 같은 서브블록 P0, P1, 및/또는 P2 내의 포인트 p의 값은, 본원에서 설명되는 바와 같이, 지오메트리 매핑 및/또는 보간을 통해 유도될 수도 있다.
인트라 예측 및/또는 인터 예측의 경우, 프레임 패킹 픽쳐 내의 참조 샘플이 픽쳐 내부에 있지만 그러나 현재 블록이 속하는 면 외부에 있는 경우, 참조 샘플 값은 지오메트리 패딩을 사용하여 유도될 수도 있다. 예를 들면, 지오메트리 패딩은 불연속성을 다루기 위해 사용될 수도 있다. 현재 블록의 면 외부에 있을 수도 있는, 이웃하는 샘플 위치 및/또는 초기 참조 블록과 연관되는 하나 이상의 초기 샘플 위치로서 참조될 수도 있는 참조 샘플 포지션은, 예를 들면, 지오메트리 매핑을 사용하는 것에 의해, 자신의 현재 면으로부터 다른 면으로 매핑될 수도 있다. 예를 들면, 도 13에서의 참조 샘플 포지션 P4는 K0으로 매핑될 수도 있고, 포지션 K0에서의 샘플 값은 이웃하는 면 상의 샘플 값(예를 들면, Q0, Q1, 및/또는 등등)으로부터 유도될 수도 있다. 예를 들면, 인터 예측을 위해 사용될 수도 있는 도 16에서의 서브블록(1402)은 지오메트리 패딩을 통해 유도될 수도 있다. 예를 들면, 면 4 상의 샘플 값은, 도 16에서 인터 예측을 위해 (예를 들면, 직접적으로) 사용되지 않을 수도 있다.
모션 벡터 예측 및/또는 인터 병합 모드에서, 시간적 모션 벡터 예측을 위한 시간적 병치 블록 또는 공간적 이웃 블록은, 현재 블록의 면 외부에 있을 수도 있다. 예를 들면, 시간적 모션 벡터 예측을 위한 시간적 병치 블록은 HEVC에 의해 정의될 수도 있다. 이웃하는 블록 포지션은 지오메트리 매핑 프로세스를 통해 유도될 수도 있다. 예를 들면, 샘플 포지션이 매핑될 수도 있다. 샘플 값(들)은 매핑된 포지션에 기초하여 유도될 수도 있다.
360도 비디오는 하이브리드 투영 기법을 사용하여 인코딩될 수도 있다. 예를 들면, 하이브리드 투영 기법은 비디오 및/또는 투영 기법의 특성에 기초할 수도 있다. 예를 들면, 인트라 픽쳐는 투영을 사용하여 코딩될 수도 있고, 한편, 인터 픽쳐는 다른 투영에서 코딩될 수도 있다. 예를 들면, 인트라 픽쳐는 ERP 또는 등적 투영을 사용하여 코딩될 수도 있다. 인터 픽쳐는 큐브맵 투영에서 코딩될 수도 있다.
지오메트리 패딩은 360도 비디오 코딩에서 적용될 수도 있다. 도 17a 및 도 17b는 등장방형 픽쳐에 대한 예시적인 지오메트리 패딩을 예시한다. 도 17a 및 도 17b에서 도시되는 바와 같이, 우측 경계 및 좌측 경계는 구형으로(spherically) 연속적일 수도 있다. 예를 들면, 도 17a에서 도시되는 화살표는 구체 상에서의 연속성을 나타낼 수도 있다. 예를 들면, 도 17a에서 02와 02', 32와 32', 42와 42', 04와 04', 34와 34', 및 44와 44'와 같은 동일한 참조 번호를 갖는 화살표는, 우측 및 좌측 경계에서 구체 상에서의 연속성을 나타낼 수도 있다. 상부 경계는 구체의 북극을 나타낼 수도 있고, 하부 경계는 구체의 남극을 나타낼 수도 있다. 본원에서 설명되는 바와 같이, 상부 경계 및 하부 경계는 구형으로 연결될 수 없을 수도 있고, 구체 상에서 가장 멀리 떨어져 있을 수도 있다. 상부 경계(20과 20', 22와 22', 26과 26', 및/또는 28과 28')는 북극에서의 구의 연속성(spherical continuity)을 나타낼 수도 있다. 하부 경계(06과 06', 08과 08', 10과 10', 및/또는 12와 12')는 남극에서의 구의 연속성을 나타낼 수도 있다.
본원에서 설명되며 도 17a 및 도 17b에서 도시되는 바와 같은 구의 특성을 사용하여, 이웃하는 샘플 위치가 픽쳐의 우측 경계(예를 들면, 02, 32, 42, D, E, 및/또는 F)를 넘어 가면, 픽쳐의 좌측 경계(예를 들면, 각각, 02', 32', 42', D', E', 및/또는 F')로 다시 되감는 것에 의해 패딩 샘플 위치를 사용하여 패딩이 수행될 수도 있다. 패딩은, 픽쳐의 하나 이상의 원형 특성에 기초하여 되감기 하는 것에 의해 수행될 수도 있다. 이웃하는 샘플 위치가 픽쳐의 우측 경계 내에 있는 경우, 패딩을 위해, 픽쳐 경계 내의 가장 우측 라인으로부터의 반복이 수행될 수도 있다. 이웃하는 샘플 위치가 픽쳐의 하부 경계(예를 들면, 06, 08, 10, 12, K, L, M 및/또는 N)를 넘어 가는 경우, 패딩은 경도 라인을 따라 반대쪽의 반구(hemisphere)(예를 들면, 각각, 06', 08', 10', 12', K', L', M' 및/또는 N')로 진행할 수도 있다. 도 17b에서의 화살표 및 대응 알파벳 라벨은, 패딩될 샘플과 이웃하는 샘플 위치(들)를 패딩하기 위해 사용될 수도 있는 패딩 샘플 사이의 대응(correspondence)을 나타낼 수도 있다. 예를 들면, 화살표 A에서 채워질 패딩은 화살표 A'를 따라 취해질 수도 있다. 화살표 B에서 채워질 패딩은 화살표 B'를 따라 취해질 수도 있고, 계속 그런 식일 수도 있다.
초기 참조 샘플 포인트 (u, v)는 픽쳐의 현재 위치에 기초하여 제공될 수도 있다. 예를 들면, 포인트 (u, v)는 등장방형 픽쳐 외부에 있을 수도 있다. 초기 참조 샘플 위치 (u, v)는 패딩 샘플 위치 (up, vp)를 유도하기 위해 사용될 수도 있다. 포인트 (up, vp)는 패딩 샘플, 또는 매핑된 참조 블록과 연관되는 하나 이상의 샘플 값으로서 참조될 수도 있다. 등장방형 픽쳐에 대한 유도된 참조 샘플 위치 (up, vp)는 다음과 같이 계산될 수도 있다.
u < 0 이거나 또는 u ≥ W 이고 0 ≤ v < H 이면, up = u%W, vp = v (17)
v < 0 이면, vp = -v - 1, up = (u + W/2)%W (18)
v ≥ H 이면, vp = 2 * H - 1 - v, up = (u + W/2)%W (19)
여기서 W 및 H는 등장방형 픽쳐의 폭 및 높이일 수도 있다. 예를 들면, 패딩 샘플 위치 (up, vp)는 포인트 (u, v)의 위치에 기초하여 계산될 수도 있다. 예를 들면, 포인트 (u, v)가 우측 또는 좌측 경계를 넘는 경우, 패딩 샘플 (up, vp)는 수학식 (17)에 기초하여 계산될 수도 있다. 우측 또는 좌측 경계를 넘는 포인트 (u, v)의 패딩 샘플 (up, vp)는, 각각, 등장방형 픽쳐의 좌측 또는 우측 경계 근처에 위치되는 포인트에 대응할 수도 있다. 다른 패딩 샘플은 수학식 (18) 및/또는 (19)에 대응할 수도 있는 포인트 (u, v)의 포지션에 기초하여 계산될 수도 있다.
도 13에서 도시되는 바와 같이, CMP를 위한 패딩이 제공될 수도 있다. 패딩은 포인트 (u, v)에 적용될 수도 있다. 포인트 p(u, v)는 지오메트리 구조에서 비디오 콘텐츠 내에 위치될 수도 있다. 포인트 p(u, v)는 현재 샘플의 이웃하는 샘플일 수도 있다. 샘플 값을 유도하기 위해, 다음 중 하나 이상이 사용될 수도 있다.
포인트 p(u, v)는 현재 샘플 위치에서의 현재 샘플에 기초하여 식별될 수도 있다. 예를 들면, 현재 샘플 위치에서의 현재 샘플은 현재 면 위치 내에 있을 수도 있다. 현재 샘플은 패딩 샘플과 연관될 수도 있다. 포인트 p(u, v)는 현재 면 경계 외부에 위치될 수도 있다. 포인트 p(u, v)는 상이한 면 내에 위치될 수도 있다. 포인트의 3D 포지션 Pf(X, Y, Z)는, 포인트 p(u, v)가 속하는 면에 따라, 계산될 수도 있다. 예를 들면, 포인트 p의 면이 NZ인 경우, 포인트 p의 3D 포지션 (X, Y, Z)를 계산하기 위해, 수학식 (6), (7), 및/또는 (8)이 사용될 수도 있다. 패딩을 위해 사용되는 샘플이 속하는 새로운 면은, 3D 포지션 (X, Y, Z)에 기초하여 결정될 수도 있다. 샘플은, 다음과 같은 방식으로 (X, Y, Z)를 사용하여, 패딩을 위해 사용될 수도 있다:
(|X| >= |Y| 및 |X| >= |Z| 이고 X > 0)이면, 새로운 면이 PX일 수도 있다;
(|X| >= |Y| 및 |X| >= |Z|이고 X < 0)이면 새로운 면이 NX일 수도 있다;
(|Y| >= |X| 및 |Y| >= |Z|이고 Y > 0)이면, 새로운 면은 PY일 수도 있다;
(|Y| >= |X| 및 |Y| >= |Z|이고 Y <0)이면, 새로운 면은 NY일 수도 있다;
(|Z| >= |X| 및 |Z| >= |Y|이고 Z > 0)이면, 새로운 면은 PZ일 수도 있다;
(|Z| >= |X| 및 |Z| >= |Y|이고 Z < 0)이면, 새로운 면은 NZ일 수도 있다.
포인트 p의 2D 포지션 (u', v')는 Ps(X', Y', Z')를 사용하여 계산될 수도 있다. 예를 들면, 포인트 p의 2D 포지션 (u', v')는 새로운 면의 위치에 기초하여 계산될 수도 있다. 새로운 면이 NZ에 위치되면, 패딩 샘플 위치 (u', v')를 (X', Y')로 계산하기 위해, 수학식 (9) 및/또는 (10)이 사용될 수도 있다. (u', v')에서의 샘플 값은 보간 필터를 사용하여 및/또는 (u', v')가 속하는 새로운 면 상에서의 정수 포지션 샘플에 기초하여 결정될 수도 있다.
지오메트리 구조에서의 포인트 (u, v)에 대한 패딩은 다음 중 하나 이상을 포함할 수도 있다. 패딩 샘플과 연관되는 현재 샘플 위치에서의 현재 샘플이 결정될 수도 있다. 패딩될 면 상의 3D 포지션 Pf(X, Y, Z)는 포인트 (u, v)에 기초하여 결정될 수도 있다. 포인트 (u, v)는 픽쳐 경계 또는 면 외부에 위치되는 포인트를 나타낼 수도 있다. 패딩 샘플 위치는 패딩될 샘플의 위치에 기초하여 결정될 수도 있다. 예를 들면, 2D 평면 포지션 (u', v')는, 지오메트리 구조에, 패딩 샘플의 3D 포지션의 지오메트리 투영을 적용하는 것에 의해 식별될 수도 있다. 패딩 샘플 위치인 2D 평면 포지션 (u', v')에서의 패딩 샘플 값이 유도될 수도 있다. 2D 평면 포지션 (u', v')에서 샘플 값은, 보간 필터를 사용하여 및/또는 정수 포지션에서의 샘플에 기초하여 결정될 수도 있다. 매핑된 샘플 포지션 및/또는 패딩 샘플 값이 유도될 수도 있다.
하나 이상의 보간 필터가 사용될 수도 있다. 예를 들면, 새로운 면 상의 (u', v')에서 샘플 값을 결정할 때 하나 이상의 보간 필터가 사용될 수도 있다. 예를 들면, 쌍선형, 바이큐빅, 랑조스, 스플라인 보간 필터, 및/또는 이산 코사인 변환 기반의 보간 필터(discrete cosine transform based interpolation filter; DCT-IF)가 사용될 수도 있다. 최근접 이웃 보간(nearest neighbor interpolation)이 사용될 수도 있다. 도 13에서 도시되는 바와 같이, 최근접 이웃 보간이 사용되는 경우, Q0의 값은 P4 및/또는 P5를 패딩하기 위해 사용될 수도 있다. 예를 들면, Q0가 K0 및 K1에 대한 가장 근처의 이웃일 수도 있기 때문에, Q0의 값은 P4 및/또는 P5를 패딩하기 위해 사용될 수도 있다. Q1의 값은 P6을 패딩하기 위해 사용될 수도 있다. 예를 들면, Q1이 K2에 대한 가장 근처의 이웃일 수도 있기 때문에, Q1의 값은 P6을 패딩하기 위해 사용될 수도 있다. 근사는 도 13에서 대략적일 수도 있다. 예를 들면, 샘플링이 희소할 수도 있기 때문에, 도 13에서의 근사는 대략적일 수도 있다. 큐브맵 지오메트리가 큐브 경계 근처에서 구체를 오버샘플링할 수도 있다는 점을 감안하여, 그것은 더 조밀한 샘플링에 대한 근사를 제공할 수도 있다.
최근접 이웃 보간(nearest neighbor interpolation)은 매핑된 샘플 포지션을 유도할 수도 있다. 예를 들면, 매핑된 샘플 포지션은 다음 중 하나 이상을 포함할 수도 있다. 포인트 (u, v)에 기초하여 패딩될 면 상에서 3D 포지션 Pf(X, Y, Z)가 계산될 수도 있다. 포지션 Ps(X', Y', Z')는 Pf(X, Y, Z)를 지오메트리 구조 상으로 투영하는 것에 의해 계산될 수도 있다. 2D 평면 포지션 (u', v')가 새로운 면 상에서 계산될 수도 있다. 예를 들면, 최근접 이웃 보간이 매핑된 샘플 포지션을 유도할 수도 있는데, 이것은 비선형 함수를 수반할 수도 있다. 패딩이 사용될 수도 있다. 예를 들면, 면 기반의 패딩이 사용될 수도 있다. 면 기반의 패딩에서, 큐브의 전개에 대응할 수도 있는 주변의 패딩된 영역을 채우기 위해 하나 이상의 인접한 면이 사용될 수도 있다. 예를 들면, 면 기반의 패딩을 위해 주변의 패딩된 영역을 채우기 위해 네 개의 인접한 면이 사용될 수도 있다(예를 들면, 직접적으로 사용될 수도 있다). 도 14는 큐브맵에 대한 패딩 프로세싱의 예를 예시한다. 도 14a는 큐브맵에 대한 패딩 프로세스의 예시적인 3D 표현을 예시한다. 도 14b는 큐브맵에 대한 패딩 프로세스의 전면(front face) 주위에 전개된 면을 갖는 예시적인 평면 표현의 예를 예시한다. 도 14에서 도시되는 바와 같이, 점선에 의해 둘러싸이는 패딩된 영역은, 이웃하는 면으로부터의 샘플로 채워질 수도 있다. 예를 들면, 도 14에서 도시되는, 점선에 의해 둘러싸이는 패딩된 영역은, 이웃하는 면으로부터의 샘플로 직접적으로 채워질 수도 있다. 도 13에서 도시되는 바와 같이, 면 기반의 패딩이 사용되는 경우, Q0, Q1, 및/또는 Q2의 값은, 각각 P4, P5, 및/또는 P6을 패딩하기 위해 사용될 수도 있다. Q2는 P 샘플을 포함하는 면에 의해 정의되는 반구에 대한 반대쪽 반구에 속할 수도 있고, 및/또는 P 샘플을 포함하는 면을 패딩하는 데 의미가 없을 수도 있다. 면 기반의 패딩은, 한 측 상에서의 절반이 넘는 면 사이즈만큼 패딩하는 데 의미가 없을 수도 있다. 패딩된 영역의 사이즈가 작은 경우(예를 들면, 몇몇 개의 샘플 폭), 투영 각도는, 큐브 경계를 그 중심에 연결하는 45도 각도에 가까울 수도 있고 및/또는 면 기반의 패딩은 충분한 근사를 제공할 수도 있다. 도 14b에서 도시되는 바와 같이, 패딩된 영역의 네 개의 코너는 외삽될 수도 있다. 도 14b에서 도시되는, 패딩된 영역의 네 개의 코너는, 이웃하는 면으로부터 직접적으로 이용 가능하지 않은 샘플을 가질 수도 있다. 반복적인 패딩은 하나 이상의 코너에서 사용될 수도 있다. 예를 들면, 반복적인 패딩은 네 개의 코너에서 사용될 수도 있다. 다음의 외삽 중 하나 이상이 사용될 수도 있다: 이용 가능한 샘플을 거울 반사함, (예를 들면, 도 15a에서 도시되는 바와 같이, 면 경계에 수직으로) 가장 근처의 이용 가능한 샘플을 복제함, 및/또는 샘플을, 도 15b에서 도시되는 바와 같이, 면 경계에 대해 대각선으로 샘플을 복제함. 예를 들면, 샘플 값은 다음으로서 유도될 수도 있다:
|x| >= |y|이면, v(x, y) = v(sign(x)(|x| + |y|), 0);
|x| < |y|이면, v(x, y) = v(0, sign(y)(|x| + |y|).
자신의 포지션이 두 개의 현존하는 샘플로부터 등거리인 외삽 샘플의 경우, 두 개의 현존하는 샘플의 평균이 사용될 수도 있다. 예를 들면, 도 15a 및 도 15b에서 묘사되는 바와 같이, 외삽된 샘플은 (예를 들면, 점선으로서 도시되는) 대각선을 따라 두 개의 현존하는 샘플로부터 등거리일 수도 있고, 이용 가능한 샘플 까지의 거리에 기초한 가중된 합이 사용될 수도 있다. 샘플 값은 유도될 수도 있다. 예를 들면, 도 15a에 도시되는 예시적인 원리에 따르면, 샘플 값은 다음으로서 유도될 수도 있다:
|x| >= |y|이면, v(x, y) = a*v(x, 0) + b*v(0, x), a = (2*|x| - |y|)/(2*|x|), b = |y|/(2*|x|)이다;
|x| < |y|이면, v(x, y) = a*v(y, 0) + b*v(0, y), a = |x|/(2*|y|), b = (2*|y| - |x|)/(2*|y|)이다.
및 /또는 도 15b에서 도시되는 예시적인 원리에 따르면, 샘플 값은 다음으로서 유도될 수도 있다:
v(x, y) = a*v(sign(x)(|x| + |y|),0) + b*v(0, sign(y)(|x| + |y|), a = |x|/(|x|+|y|), b = |y|/(|x| + |y|).
하나 이상의 면을 포함하는 하나 이상의 투영 지오메트리에 대해, 프로세스(예를 들면, 유사한 프로세스)가 사용될 수도 있다. 예를 들면, 하나 이상의 면으로 구성되는 투영 지오메트리는, 팔면체 및/또는 이십면체(icosahedron)를 포함할 수도 있지만, 그러나 이들로 제한되지는 않는다.
지오메트리 패딩은 다음의 경우 중 하나 이상에서 적용될 수도 있다. 예를 들면, 지오메트리 패딩은 인트라 예측에서 수행될 수도 있다. 예를 들면, 이웃하는 샘플이 픽쳐 경계 외부에 있는 경우 지오메트리 패딩이 수행될 수도 있다. 예를 들면, 이웃하는 샘플이, 예측되고 있는 현재 샘플과 동일한 면 내에 있지 않는 경우 지오메트리 패딩이 수행될 수도 있다. 지오메트리 패딩은 인터 예측에서 수행될 수도 있다. 예를 들면, 참조 샘플이 참조 픽쳐 경계 외부에 있는 경우 지오메트리 패딩이 수행될 수도 있다. 예를 들면, 참조 샘플이 예측되고 있는 현재 샘플과 동일한 면 내에 있지 않는 경우 지오메트리 패딩이 수행될 수도 있다. 매핑된 샘플 포지션 유도는 다음 중 하나 이상을 포함할 수도 있다. 패딩될 면 상에서의 3D 포지션 Pf(X, Y, Z)이 포인트 (u, v)에 기초하여 계산될 수도 있다. 포지션 Ps(X', Y', Z')는 Pf(X, Y, Z)를 지오메트리 구조 상으로 투영하는 것에 의해 계산될 수도 있다. 새로운 면 상에서의 2D 평면 포지션 (u', v')가 계산될 수도 있다. 매핑된 샘플 포지션 유도는, 픽쳐 경계 외부에 있을 수도 있는 공간적 이웃 블록을 유도하기 위해 사용될 수도 있다. 매핑된 샘플 포지션 유도는 예측되고 있는 블록과 동일한 면 내에 있지 않을 수도 있는 공간적 이웃 블록을 유도하기 위해 사용될 수도 있다. 매핑 블록 포지션의 속성은, 블록(예를 들면, 현재 블록)에 대한 예측자로 사용될 수도 있다. 예를 들면, 매핑 블록 포지션의 속성은 다음 중 하나 이상을 포함할 수도 있다: 인트라 모드, 인터 모드, 병합 모드, 모션 정보(모션 벡터(들) 및/또는 참조 픽쳐 인덱스(들)를 포함할 수도 있음), 및/또는 등등. 블록에 대한 예측자로 사용되는 매핑 블록 포지션은 다음 중 하나 이상을 포함할 수도 있다: p(u, v)의 3D 포지션 Pf(X, Y, Z)를 계산하는 것; Ps(X', Y', Z')를 계산하는 것; 및/또는 2D 포지션 (u', v')를 계산하는 것과 같은 기법을 사용하여 유도되는 것. 예를 들면, 인터 병합 모드의 모션 벡터 유도 및/또는 모션 벡터 예측을 위해, 본원에서 설명되는 바와 같이 유도되는 매핑 블록 포지션의 모션 벡터는, 병합 후보의 모션 벡터로서 및/또는 모션 벡터 예측자로서 사용될 수도 있다. 이웃하는 블록의 포지션이 유도될 수도 있고, 및/또는 매핑된 블록으로부터의 속성이 추론될 수도 있다. 이웃하는 블록의 포지션은, 예를 들면, 이웃하는 블록 중 어느 하나(예를 들면, 좌측, 위쪽, 등등)를, 현재 블록에 가장 가까운 위치 p(u, v)로서 간주하여 계산될 수도 있다. 예를 들면, (uc, vc)가 현재 블록의 좌상 코너의 위치이면, 좌측의 이웃하는 블록의 위치는 (uc-1, vc)를 사용하여 계산될 수도 있고, 상부의 이웃하는 블록의 위치는 (uc, vc-1)를 사용하여 계산될 수도 있고, 등등일 수도 있다. 이웃하는 블록의 포지션은 이웃하는 블록의 중심으로서 계산될 수도 있다. 예를 들면, (uc, vc)가 현재 블록의 좌상 코너의 위치이면, 좌측의 이웃하는 블록의 위치는, 포지션 (uc-1, vc)를 포함하는 블록의 중심 포지션으로서 계산될 수도 있고, 상부의 이웃하는 블록의 위치는 (uc, vc-1)를 포함하는 블록의 중심 포지션으로서 계산될 수도 있고, 등등일 수도 있다. 예를 들면, 이웃하는 블록의 포지션은 3D 지오메트리를 전개하는 것에 의해 결정될 수도 있다. 3D 지오메트리를 전개하는 것은, 이웃하는 면의 매핑 블록 포지션을 결정할 수도 있다.
도 14b에서 도시되는 바와 같이, 패딩될 네 개의 코너 영역 내의 하나 이상의 샘플에 대한 매핑 포지션은, 반복적인 패딩을 사용하는 경우 면 내부의 가장 근처의 코너 샘플 포지션일 수도 있다. 이웃하는 블록의 포지션이 (예를 들면, 도 15a 및/또는 도 15b에서 점선을 사용하여 표현되는) 대각선 상에 있다면, 블록은, 자신의 포지션이, 면에 속하지 않을 수도 있는 큐브 면 경계로 매핑될 수도 있기 때문에, 이용 불가능한 것으로 간주될 수도 있다. 이웃하는 블록의 포지션이 대각선 상에 있지 않으면, 이웃하는 블록 포지션은, 도 15a 및/또는 도 15b에서 각각 도시되는 바와 같이, 면 경계에 대해 가장 근처의 이용 가능한 포지션으로 투영될 수도 있다. 예를 들면, 도 15a에서 도시되는 바와 같이, 이웃하는 블록 포지션은 면 경계에 대해 수직으로 가장 근처의 이용 가능한 포지션으로 투영될 수도 있다. 예를 들면, 도 15b에서 도시되는 바와 같이, 이웃하는 블록 포지션은 면 경계에 대해 대각선으로 가장 근처의 이용 가능한 포지션으로 투영될 수도 있다. 지오메트리 패딩 기법은 비디오 코딩 동안 하나 이상의 필터링 프로세스에 적용될 수도 있다. 필터링 프로세스는, 예를 들면, 이웃하는 샘플이 사용될 수도 있는, 루프 필터링, 샘플 적응 오프셋(SAO), 및/또는 적응형 루프 필터링(adaptive loop filtering; ALF)을 포함할 수도 있다. 이웃하는 샘플이 픽쳐 경계 외부에 있거나 또는 필터링되고 있는 샘플과 동일한 면 내에 있지 않는 경우, 이웃하는 샘플 값을 유도하기 위해 지오메트리 패딩이 사용될 수도 있다.
수학식 (3), (4), 및/또는 (5)는 사인 및/또는 코사인 함수를 사용한다. 수학식 (3), (4), 및/또는 (5)에서의 사인 및/또는 코사인 함수와 같은 비선형 함수의 하드웨어 구현은, 룩업 테이블(LUT) 및/또는 선형 보간을 사용할 수도 있다. LUT는, 그들이 순환 함수이기 때문에, 범위 [0, 90] 내에서 정의될 수도 있다. 근사 정밀도는, 애플리케이션 요건 및/또는 메모리 사이즈 제한에 기초하여 결정될 수도 있다. 도 18은 LUT를 사용한 사인 함수의 예시적인 유도를 예시한다. sin(x)은 변수 x의 사인 함수일 수도 있다. 하나 이상의 검정색 원(1602)은 범위 [0, 90]에서 균등하게 샘플링되는 함수 sin(x)에 대한 LUT를 정의할 수도 있다. x는, 자신의 값이 LUT에서 정의되지 않을 수도 있는 입력 변수일 수도 있다. P 및 Q는 입력 x의 제1 및 제2 가장 근처의 이웃(예를 들면, 또는 샘플링 포인트)일 수도 있다. sin(x)의 값을 유도하기 위해 하나 이상의 상이한 보간이 적용될 수도 있다. 예를 들면, 최근접 이웃 보간이 사용되는 경우, sin(x)은 sin(x) = sin(P)로서 근사될 수도 있다. 선형 보간이 사용되면, sin(x)는 다음으로서 근사될 수도 있다
sin(x) = sin(P) + (sin(Q) - sin(P)) * (Q - x)/(Q - P)
LUT는 불균등한 샘플링을 가지고 범위 사이에서 정의될 수도 있다. 예를 들면, sin(x)의 경우, (예를 들면, 0도 근처의 그래디언트가 90도 근처의 것보다 더 크기 때문에) 0도 근처의 범위에서 더 많은 샘플링 포인트가 사용될 수도 있고 90도 근처의 범위에서는 더 적은 샘플링 포인트가 사용될 수도 있다.
프레임 패킹 픽쳐의 면은 지오메트리 패딩으로 패딩될 수도 있고 및/또는 디코딩된 픽쳐 버퍼에 저장될 수도 있다. 예를 들면, 도 19a에서 도시되는 바와 같이, 미래의 픽쳐 코딩의 모션 추정을 위해, 하나 이상의(예를 들면, 모든) 면이 지오메트리 패딩으로 패딩될 수도 있고 및/또는 디코딩된 픽쳐 버퍼에 저장될 수도 있다. 면은, 인코더 측 및/또는 디코더 측에서, 지오메트리 패딩으로 패딩될 수도 있고 및/또는 디코딩된 픽쳐 버퍼에 저장될 수도 있다. 면은, 참조 픽쳐가 재구성된 이후, 지오메트리 패딩으로 패딩될 수도 있고 및/또는 디코딩된 픽쳐에 저장될 수도 있다. 하나 이상의 면은, 미래의 픽쳐 코딩의 모션 추정을 위해, 지오메트리 패딩으로 패딩될 수도 있고 및/또는 디코딩된 픽쳐 버퍼에 저장될 수도 있다. 모션 추정 프로세스는, 프레임 패킹 정보에 따라 현재 블록이 위치될 수도 있는 면 및/또는 포지션을 결정할 수도 있다.
블록(예를 들면, 전체 블록)은 인코딩 없이 스킵될 수도 있다. 예를 들면, 블록(예를 들면, 전체 블록)이 도 19a에서 "V"로서 마킹되는 널 면(null face) 내부에 있으면, 블록(예를 들면, 전체 블록)은 인코딩 없이 스킵될 수도 있다. 블록(예를 들면, 전체 블록)이 도 19a에서 "V"로서 마킹되는 널 면 내부에 있지 않으면, 모션 추정 프로세스는 시작 포지션 및/또는 미리 정의된 검색 범위에 기초하여 블록에 대한 검색 윈도우를 결정할 수도 있다. 예를 들면, 블록 "B"는, 도 19a 및 도 19b에서 도시되는 바와 같이, 면 "0" 내에 위치될 수도 있다. 시작 포지션은 그것의 공간적 및/또는 시간적 이웃 블록으로부터 유도되는 모션 벡터 예측자일 수도 있다. 검색 윈도우는 패딩된 면 버퍼 내에 있도록 제한될 수도 있다. 예를 들면, 검색 윈도우가 전체적으로 패딩된 면 버퍼 내에 있도록 제한될 수도 있다. 모션 검색이 사용될 수도 있다. 예를 들면, 모션 검색은, 전체 검색, 고속 검색, 및/또는 등등을 포함할 수도 있다. 예를 들면, 검색 윈도우가 결정될 때 모션 검색이 사용될 수도 있다.
패딩된 영역의 사이즈는 성능에 영향을 줄 수도 있다. 예를 들면, 패딩된 영역의 사이즈는, 검색 윈도우가 패딩된 면 버퍼 내부에 있도록 제한될 수도 있기 때문에, 성능에 영향을 줄 수도 있다. 지오메트리 패딩이 수행되어 참조 픽쳐에 대한 패딩된 면을 획득할 수도 있다. 지오메트리 패딩은 디코더 측에서 및/또는 인코더 측에서 수행될 수도 있다. 패딩된 면 버퍼는 모션 보상을 위해 사용될 수도 있다. 지오메트리 패딩은 예측 블록을 생성할 수도 있다. 예를 들면, 지오메트리 패딩은 예측 블록을 즉석에서(on the fly) 생성할 수도 있다. 지오메트리 패딩을 통해 예측 블록을 생성하는 것은, 블록 단위로 패딩을 수행할 수도 있다. 예를 들면, 지오메트리 패딩을 통해 예측 블록을 생성하는 것은 필요에 따른 기반으로 패딩을 수행할 수도 있다.
인터 블록을 디코딩하기 위해, 디코더는, 예측 블록(또는 예측 블록의 일부분)이 면 외부에 있을 수도 있는지 또는 면 내부에 있을 수도 있는지의 여부를 결정할 수도 있다. 예를 들면, 디코더는, 예측 블록이 현재 면 외부에 있을 수도 있는지의 여부를 결정할 수도 있다. 디코더는, 예측 블록의 일부분이 현재 면 외부에 있을 수도 있는지의 여부를 결정할 수도 있다. 디코더는, 디코딩 블록의 포지션 및/또는 그것의 모션 벡터에 기초하여 예측 블록(예를 들면, 예측 블록의 일부분)이 현재 면 외부에 있을 수도 있는지의 여부를 결정할 수도 있다. 디코더는 어떠한 패딩도 수행하지 않을 수도 있다. 예를 들면, 예측 블록이 면 내부에 있다면, 디코더는 패딩을 스킵할 수도 있다. 디코더는, 지오메트리 패딩 기법을 사용하여 특정한 블록(예를 들면, 예측 블록의 일부분)을 생성할 수도 있다(예를 들면, 그것만을 생성할 수도 있다). 디코더는 면 경계(예를 들면, 전체 면 경계)를 패딩하지 않을 수도 있다. 예를 들면, 예측 블록(및/또는 예측 블록의 일부분)이 면 외부에 있는 경우, 디코더는 지오메트리 패딩 기법을 사용하여 그 특정한 블록(예를 들면, 및/또는 예측 블록의 일부분)을 생성할 수도 있다.
대응하는 샘플 포지션 정보를 저장하는 룩업 테이블이 사용될 수도 있다. 룩업 테이블은 각각의 면의 각각의 패딩된 포지션에 대한 대응하는 샘플 포지션 정보를 저장할 수도 있다. 패딩된 영역의 사이즈에 대한 하나 이상의 제한이 정의될 수도 있다. 예를 들면, 패딩 영역의 사이즈에 대한 최대 사이즈 및/또는 제한이 지오메트리 패딩을 위해 사용되는 LUT의 사이즈에 대한 요건을 감소시키도록 정의될 수도 있다. 패딩된 영역의 사이즈(예를 들면, 최대 사이즈)에 대한 하나 이상의 제한은, 구현 리소스 요건을 감소시키기 위해 프로파일/레벨 정의 내에 있을 수도 있는 픽쳐 사이즈에 따라 정의될 수도 있다. 예를 들면, 큰 픽쳐 사이즈를 갖는 비디오는 더 큰 패딩된 영역 사이즈를 사용할 수도 있다. 패딩된 영역 사이즈는, 시퀀스 파라미터 세트(sequence parameter set; SPS), 픽쳐 파라미터 세트(picture parameter set; PPS), 및/또는 등등과 같은 시퀀스 레벨에서 시그널링될 수도 있다.
디코더는 초기화될 수도 있다. 예를 들면, 패딩된 영역 사이즈를 시퀀스 레벨에서 시그널링하는 것에 의해, LUT가 구축될 수도 있기 때문에, 디코더는 초기화될 수도 있다(예를 들면, 더 빨리 초기화될 수도 있다). LUT는 시그널링된 정보에 기초하여 구축될 수도 있다.
지오메트리 패딩 기법이 모션 보상 예측을 위해 사용되는 경우 그리고 시간적 참조 샘플이 현재 블록이 속하는 면 외부에 있는 경우, 현재 블록의 모션 벡터 및/또는 현재 블록의 이웃하는 블록의 모션 벡터는 상이할 수도 있다. 예를 들면, 현재 블록 및/또는 현재 블록의 이웃하는 블록의 모션 벡터는, 현재 블록 및 그것의 이웃하는 블록이 상이한 투영 면에 속하는 경우에 상당히 상이할 수도 있다. 프레임 패킹 픽쳐 내의 두 개의 이웃하는 면이 3D 공간에서 인접하지 않을 수도 있기 때문에(예를 들면, 바로 인접하지 않을 수도 있기 때문에), 현재 블록의 모션 벡터 및/또는 현재 블록의 이웃하는 블록의 모션 벡터는 상당히 상이할 수도 있다. 현재 블록의 모션 벡터 및/또는 현재 블록의 이웃하는 블록의 모션 벡터는 상당히 상이할 수도 있는데, 그 이유는, 3D 공간에서 두 개의 인접한(예를 들면, 바로 인접한) 면이 2D 프레임 패킹 픽쳐에 배치될 때 워핑 효과가 존재할 수도 있기 때문인데, 이것은 면 경계에서 샘플 값 및/또는 모션 벡터의 불연속성을 야기할 수도 있다. 모션 벡터 예측자에 대한 이웃하는 블록의 모션 벡터가 현재 블록을 예측하기 위해 사용될 수도 있는지의 여부는, 이웃하는 블록이 상이한 면에 속하는지의 여부에 기초하여 결정될 수도 있다. 인코더 및/또는 디코더는, 하나 이상의(예를 들면, 두 개의) 인접한 면 경계가 3D 공간에서 연결될 수도 있는지를 체크할 수도 있다. 하나의 면 경계는, 이웃하는 블록이 속할 수도 있는 면의 경계일 수도 있다. 다른 면 경계는, 현재 블록이 속할 수도 있는 면의 경계일 수도 있다. 하나 이상의(예를 들면, 두 개의) 면 경계가 3D 공간에서 연결되면, 이웃하는 블록의 모션 벡터는 현재 블록에 대한 모션 벡터 예측자로서 사용될 수도 있다. 하나 이상의(예를 들면, 두 개의) 면 경계가 3D 공간에서 연결되지 않으면, 그 이웃하는 블록의 모션 벡터는 현재 블록의 모션 벡터 예측을 위해 사용되지 않을 수도 있다. 하나 이상의(예를 들면, 두 개) 모션 벡터 예측 제한이 인터 병합 모드에 적용 가능할 수도 있다. 예를 들면, 이웃하는 블록이 상이한 면에 속하는 경우, 이웃하는 블록은 인터 병합 모드에 대한 병합 후보로 사용되지 않을 수도 있다.
유니큐브, ACP, 및 EAC 투영을 위해 지오메트리 패딩이 수행될 수도 있다.
본원에서 설명되는 바와 같이, 수학식 (11) 및/또는 (12)는, 유니큐브 도메인에서의 좌표 (x', y')와 큐브 도메인에서의 좌표 (x, y) 사이의 관계를 제공할 수도 있다. 큐브 도메인에서의 좌표와 구체 상의 대응하는 3D 포인트 Ps 사이의 기하학적 관계는 공지될 수도 있다. 큐브맵을 중간 단계로서 사용하여, 큐브맵 지오메트리 패딩은, 유니큐브 투영 포맷을 위한 패딩된 영역에서 참조 샘플을 유도하도록 확장될 수도 있다. 예를 들면, 유니큐브 면의 패딩된 영역 내의 좌표에서 참조 샘플을 유도하기 위해, 다음 중 하나 이상이 수행될 수도 있다. 프레임 패킹 픽쳐의 입력 투영과 연관되는 좌표는 중간 좌표로 매핑될 수도 있다. 예를 들면, 유니큐브 투영과 연관되는 좌표는, 예를 들면, 수학식 (12)에 기초하여, 큐브 면에서 정의되는 바와 같은 중간 좌표로 매핑될 수도 있다. 중간 큐브 좌표는 이웃하는 면 내의 하나 이상의 다른 큐브 좌표 상으로 투영될 수도 있다. 예를 들면, 중간 큐브 좌표는, 큐브맵 포맷의 지오메트리 투영 함수에 기초하여 이웃하는 면 내의 하나 이상의 다른 큐브 좌표 상으로 투영될 수도 있다. 큐브 좌표는, 예를 들면, 수학식 (11)에 기초하여, 유니큐브 도메인 내에서 정의되는 참조 좌표로 다시 매핑될 수도 있다. 유니큐브 면 내의 참조 좌표에 있는 샘플은, 예를 들면, 보간 필터링을 사용하여, 유도될 수도 있다.
면의 패딩된 영역 내의 좌표 (u, v)가 제공될 수도 있다. 유니큐브 포맷을 위한 지오메트리 패딩이 수행될 수도 있다. 하나 이상의 좌표가 유니큐브 포맷/지오메트리로부터 큐브 포맷/지오메트리로 변환될 수도 있다. 예를 들면, 입력 좌표 (u, v)는 유니큐브 면에서 정의될 수도 있다. 큐브 면에서 정의되는 중간 좌표 (uc, vc)는 수학식 (12)에 따라 계산될 수도 있다. 참조 좌표 (uc', vc')는 다음 중 하나 이상을 통해 이웃하는 큐브 면에 (uc, vc)를 투영하는 것에 의해 유도될 수도 있다. 큐브로부터 3D 공간으로의 2D 대 3D 매핑이 수행될 수도 있다. (uc, vc)가 속하는 면에 따라, (X, Y, Z)의 대응하는 3D 포지션이 계산될 수도 있다. 예를 들면, 면이 NZ인 경우, 수학식(들) (6), (7), 및/또는 (8)이 사용되어 (X, Y, Z)의 3D 포지션을 계산할 수도 있다. 참조 샘플이 속하는 새로운 면은, 예를 들면, 3D 좌표 (X, Y, Z)에 기초하여 결정될 수도 있다.
(|X| >= |Y| 및 |X| >= |Z| 이고 X > 0)이면, 새로운 면이 PX일 수도 있다:
(|X| >= |Y| 및 |X| >= |Z|이고 X < 0)이면 새로운 면이 NX일 수도 있다;
(|Y| >= |X| 및 |Y| >= |Z|이고 Y > 0)이면, 새로운 면은 PY일 수도 있다;
(|Y| >= |X| 및 |Y| >= |Z|이고 Y <0)이면, 새로운 면은 NY일 수도 있다;
(|Z| >= |X| 및 |Z| >= |Y|이고 Z > 0)이면, 새로운 면은 PZ일 수도 있다;
(|Z| >= |X| 및 |Z| >= |Y|이고 Z < 0)이면, 새로운 면은 NZ일 수도 있다.
3D 공간으로부터 큐브로의 3D 대 2D 매핑이 수행될 수도 있다. 투영된 2D 좌표 (uc', vc')는 (X, Y, Z)을 사용하여 새로운 면에서 계산될 수도 있다. 예를 들면, 새로운 면이 NZ인 경우, 수학식(들) (9) 및/또는 (10)이 사용되어 (X, Y, Z)로 (uc', vc')를 유도할 수도 있다. 하나 이상의 좌표가 큐브 포맷/지오메트리로부터 유니큐브 포맷/지오메트리로 변환될 수도 있다. 예를 들면, 큐브 면에서 정의되는 참조 좌표 (uc', vc')가 주어지면, 유니큐브 면에서 정의되는 대응하는 참조 좌표 (u', v')가 계산될 수도 있다. 패딩을 위해 사용되는 유니큐브 면 내의 참조 좌표 (u', v')에 있는 샘플은, 유니큐브 면 내의 (u', v') 주위의 정수 포지션에 있는 샘플에 보간 필터를 적용하는 것에 의해 유도될 수도 있다.
수학식 (12)에서 도시되는 바와 같이, 변환 함수 β = g(β')는 좌표를 유니큐브 면으로부터 큐브 면으로 매핑할 수도 있다. 수학식 (12)에서의 변환 함수 β = g(β')는, 그것의 분모에 제곱근을 포함하는 분수를 포함할 수도 있다. 다음의 것은, 분모가 제로가 되는 것을 방지하기 위해 수행될 수도 있다:
Figure pat00008
β'∈[-1, 1]은 유니큐브 면 내부의 샘플의 좌표의 범위를 정의할 수도 있다. β'∈[-1, 1]가 유니큐브 면 내부의 샘플의 좌표의 범위를 정의할 수도 있다면, 수학식 (20)은, 임의의 3D 포인트가 유니큐브 면 상으로 투영될 때, 면 상에서의 투영이, 면 중심을 중심으로 할 수도 있고 및/또는 수평 및/또는 수직 방향에서 면 사이즈의 1.5 배만큼 클 수도 있는 영역 내에 있을 수도 있다는 것을 규정할 수도 있다. 지오메트리 패딩을 유니큐브 포맷에 적용하는 경우, 유니큐브 면에 대한 패딩된 영역의 최대 사이즈에 제한이 있을 수도 있다. 예를 들면, 유니큐브 면의 패딩된 영역의 최대 사이즈는, 면 사이즈의 1.5 배를 초과할 수 없을 수도 있다. 도 27은, 유니큐브 투영 포맷을 위한 면 내의 패딩된 샘플의 유효 영역의 예를 예시한다.
모션 보상 예측이, 픽쳐 경계 및/또는 면 경계의 외부에 있는 샘플을 참조하는 경우, 본원에서 설명되는 지오메트리 패딩은, 코딩 투영 포맷에 의해 표현되는 3D 지오메트리 구조를 고려하여 대응하는 참조 샘플을 패딩하기 위해 적용될 수도 있다. 예를 들면, 예측 블록(또는 예측 블록의 일부분)은 유니큐브 면 내의 패딩된 샘플의 유효 영역 외부에 있을 수도 있다.
지오메트리 패딩은 유니큐브 투영에 기초하여 360도 비디오 코딩에 대해 수행될 수도 있다.
도 28은 유니큐브 포맷을 위한 패딩된 샘플의 유효 영역에 대한 예시적인 MV 클리핑을 예시한다. 도 28에서 도시되는 바와 같이, MV 클리핑 동작은 모션 보상 예측 이전에 인코더 및/또는 디코더에서 수행될 수도 있다. 예를 들면, 시간 예측은 유니큐브 면 내의 패딩된 샘플의 유효 영역으로부터의 참조 샘플을 사용할 수도 있다. MV가 유니큐브 면 내의 유효 패딩 영역 외부에 또는 부분적으로 외부에 있을 수도 있는 참조 블록을 가리키는 경우, MV는, 예측 블록의 참조 샘플이 패딩을 위한 유효 영역 내에 있을 수도 있도록 가장 근처의 값으로 클리핑될 수도 있다. 도 28에서 도시되는 바와 같이, 참조 블록 A는 부분적으로 유효 패딩 영역 외부에 있다. 참조 블록 A와 연관되는 MV는, 참조 블록 A'를 가리키는 MV'를 생성하도록 클리핑될 수도 있다. 참조 블록 A'는, 유효 패딩 영역 내에 있는 이웃하는 블록일 수도 있다.
코딩된 MV가 적절한 값을 갖는 것을 보장하기 위해, 비트스트림 적합성(bitstream conformance)이 제공될 수도 있다. 예를 들면, 예측 블록의 참조 샘플 중 하나 이상(예를 들면, 모두)이 유니큐브 면의 유효 패딩 영역으로부터 유래한다는 적절한 값을 코딩된 MV가 갖는 것을 보장하기 위해 비트스트림 적합성이 제공될 수도 있다. 코딩 블록의 포지션 및/또는 사이즈가 주어지면, 유효 MV의 범위가 결정될 수도 있다. 예를 들면, 유효 MV의 범위는, 유효 패딩 영역 외부의 참조 샘플을 사용하지 않는 모션 보상 예측 신호에 대응할 수도 있다. 적합된 비트스트림 내의 MV의 값은, 미리 결정된 범위 내에 있을 수도 있다.
유니큐브에 대한 모션 보상 예측을 위해, 하이브리드 패딩이 수행되어 참조 샘플을 패딩할 수도 있다. 하이브리드 패딩은 지오메트리 패딩 및 반복적인 패딩을 공동으로 적용할 수도 있다. 참조 샘플의 포지션이 유니큐브 면 내의 패딩된 샘플의 유효 영역 내에 있으면, 360도 비디오에서 표현되는 3D 지오메트리 구조에 기초하여 대응하는 샘플 값을 유도하기 위해 지오메트리 패딩이 적용될 수도 있다. 참조 샘플의 포지션이 유니큐브 면 내의 패딩된 샘플의 유효 영역 내에 있지 않는 경우(예를 들면, 참조 샘플의 포지션이 유니큐브 면의 유효 패딩 영역 외부에 있는 경우), 수평에서 및/또는 수직에서 유효 패딩 영역 내에 있는 가장 근처의 포지션에 샘플 포지션을 클리핑하는 것에 의해 샘플을 패딩하기 위해, 반복적인 패딩이 적용될 수도 있다. 도 29는 유니큐브 투영 포맷을 위한 예시적인 하이브리드 패딩을 예시한다. 도 29에서 도시되는 바와 같이, 참조 블록 B는 유니큐브 면의 유효 패딩 영역 외부에 있을 수도 있다(예를 들면, 부분적으로 외부에 있을 수도 있다). 서브블록 B3 내의 샘플은 유효 패딩 영역 내부에 있을 수도 있고, 샘플 값은 지오메트리 패딩에 기초하여 유도될 수도 있다. 서브블록 B0, B1, 및 B2의 경우, 대응하는 샘플은 유효 패딩 영역의 경계로부터 샘플 값을 복사(예를 들면, 반복적으로 복사)하는 것에 의해 패딩될 수도 있다. 예를 들면, B0은 B3의 좌상 샘플로 채워질 수도 있다. B1은 B3의 상부 라인으로 채워질 수도 있다. B2는 B3의 좌측 열로 채워질 수도 있다. 도 30은 하이브리드 패딩을 사용하는 패딩된 픽쳐의 예를 예시한다. 반복적인 패딩은 하이브리드 패딩의 한 예로서 활용될 수도 있다. 유니큐브 투영 포맷을 위한 패딩된 샘플의 유효 영역 외부에 있을 수도 있는 샘플을 패딩하기 위해, 하나 이상의 다른 패딩 방법(예를 들면, 도 14의 면 기반의 패딩, 도 15의 수직 외삽 기반의 및/또는 대각선 외삽 기반 패딩, 및/또는 등등)이 하이브리드 패딩에서 적용될 수도 있다.
시퀀스 레벨에서, 유니큐브 면 사이즈가 알려지는 경우, 다음 중 하나 이상이 LUT로서 사전 계산될 수도 있고 및/또는 저장될 수도 있다. 예를 들면, 패딩 샘플 포지션 LUT는 큐브 면에서 정의되는 계산된 중간 좌표 (uc, vc), 유도된 참조 좌표 (uc', vc'), 및/또는 유니큐브 면에서 정의되는 계산된 참조 좌표 (u', v' )의 상관 관계를 나타낼 수도 있다. LUT는 패딩된 샘플 포지션에서 샘플 값을 패딩하기 위해 사용될 수도 있는 유도된 샘플 포지션(들)을 저장할 수도 있다. 유니큐브 면 내의 참조 좌표 (u', v')에서의 유도된 매핑된 샘플은 픽쳐에 대해 계산될 수도 있다(예를 들면, 동적으로 계산될 수도 있다). 3D 공간으로부터 여섯 개의 유니큐브 면으로의 투영은 대칭적일 수도 있다. 다른 다섯 개의 면 중 하나 이상에 의해 재사용될 수도 있는 면에 대해 참조 LUT가 저장될 수도 있다. 예를 들면, 다른 다섯 개의 면 중 하나 이상에 의해 재사용될 수도 있는 면에 대해 단일의 참조 LUT가 저장될 수도 있다. 도 32는 유니큐브에 대한 지오메트리 패딩을 위한 여섯 개의 면에 대해 LUT를 사용하는 것의 예시적인 예시를 도시한다. 도 32에서 도시되는 바와 같이, 3×2 프레임 패킹 배열이 적용될 수도 있다. 도 32에서, 블랭크 블록(3201)은 면 영역을 나타낼 수도 있다. 패턴화된 블록(3203)은 패딩된 영역을 나타낼 수도 있다. 도 32에서 도시되는 바와 같이, 샘플 A 및 샘플 B는, 각각, 면 #0 및 면 #5의 패딩된 영역 내에서 동일한 포지션에 위치될 수도 있는 두 개의 샘플일 수도 있다. 샘플 A는 면 #4에서 2D 좌표 (u, v) 상으로 투영될 수도 있다. 도 32에서 제시되는 바와 같이, 대칭적인 3D 투영 구조에 기초하여, 샘플 B는 면 #5의 이웃하는 면, 예를 들면, 면 #0 내의 동일한 좌표(예를 들면, (u, v))로 투영될 수도 있다. 예를 들면, 상이한 면의 패딩된 영역 내의 동일한 샘플 포지션의 경우, 투영 면 내의 대응하는 좌표는 동일할 수도 있다. 패딩된 샘플 포지션에 대한 투영된 좌표를 포함하는 LUT는 하나의 면에 대해 저장될 수도 있는데, 이것은 다른 면에서의 패딩된 샘플의 투영된 좌표를 계산하기 위해 재사용될 수도 있다. 매핑된 샘플의 좌표는, LUT가 면 중 하나 이상(예를 들면, 모두)의 전체에 걸쳐 재사용될 때 투영 면 내에서 매핑될 수도 있다. 예를 들면, 매핑된 샘플의 좌표는, 프레임 패킹 프로세스 동안의 회전(들)에 기초하여 면 중 하나 이상(예를 들면, 모두)의 전체에 걸쳐 LUT(예를 들면, 동일한 LUT)가 재사용되는 경우 투영 면 내에서 매핑될 수도 있다.
지오메트리 패딩이 360도 비디오 코딩을 위해 적용될 때 제한된 패딩된 영역을 설명하기 위해 유니큐브 투영이 본원에서 사용될 수도 있지만, 제한된 패딩된 영역은, 실제 큐브맵 면이 생성되기 이전에 2D 평면의 면 상의 샘플의 좌표를 수정하는 것에 의해 상이한 구형 샘플링 그리드를 달성할 수도 있는 다른 큐브형 투영 포맷(예를 들면, ACP, EAC, 및/또는 등등)에 대해 존재하도록 적용될 수도 있다. 본원에서 설명되는 지오메트리 패딩 기법(예를 들면, MV 클리핑, 비트스트림 적합성, 및/또는 하이브리드 패딩) 중 하나 이상은, 지오메트리 패딩이 하나 이상의 다른 투영 포맷과 함께 사용될 때 적용 가능할 수도 있다. 상이한 투영 포맷에 의해 사용되는 매핑 함수는 변할 수도 있다. 유효 패딩 영역의 사이즈는 투영 포맷에 기초하여 조정될 수도 있다. 예를 들면, ACP가 코딩 투영 포맷으로서 사용되는 경우, 수학식 (14)에서의 루트(square root) 내부가 제로보다 더 작지 않은 것을 보장하기 위해, -1.28 ≤ β ≤ 1.28이 사용될 수도 있다. 예를 들면, ACP 면의 패딩된 영역의 최대 사이즈는, 면 사이즈의 1.28 배일 수도 있다. 코딩 투영 포맷으로서 EAC가 사용되는 경우, 패딩된 영역의 최대 사이즈는 수학식 (16)으로부터 -2 < β' < 2로서 유도될 수도 있다.
적합성 윈도우를 갖는 참조 픽쳐에 대한 지오메트리 패딩이 제공될 수도 있다. 코딩된 픽쳐 사이즈는, 수평 및/또는 수직 방향에서 최소 CU 사이즈의 배수일 수도 있다. 예를 들면, 코딩된 픽쳐 사이즈는 수평 및/또는 수직 방향에서 최소 CU 사이즈의 배수일 수도 있는데, 그 이유는, 픽쳐가 코딩을 위해 코딩 단위로 구획될 수도 있기 때문이다. 적합성 윈도우가 사용될 수도 있고, 및/또는 패딩된 픽쳐 사이즈를 최소 CU 사이즈의 배수로 만들기 위해 윈도우 사이즈가 시퀀스 파라미터 세트에서 시그널링될 수도 있다. 예를 들면, 소스 픽쳐 사이즈가 최소 CU 사이즈의 배수가 아닌 경우, 패딩된 픽쳐 사이즈를 최소 CU 사이즈의 배수로 만들기 위해 윈도우 사이즈가 시퀀스 파라미터 세트에서 시그널링될 수도 있다. 파라미터 W 및 H는 소스 픽쳐의 폭 및 높이를 나타낼 수도 있다. 파라미터 mCU_width 및 mCU_height는 최소 CU의 폭 및 높이를 나타낼 수도 있다. 파라미터 dW 및 dH는, 적합성 윈도우에 대한 수평 및 수직 방향에서의 패딩된 사이즈를 나타낼 수도 있다. Ceil(x)은, 변수 x보다 더 작지 않은 최소 정수 값을 계산하기 위한 천장 함수(ceiling function)일 수도 있다.
dW = Ceil(W/mCU_width) * mCU_width - W
dH = Ceil(H/mCU_height) * mCU_height - H
도 20a, 도 20b, 및 도 20c는, 소스 픽쳐 사이즈가 수평 및/또는 수직 방향에서 최소 CU 사이즈의 배수가 아닌 경우의 패딩의 세 가지 예를 도시한다. 도 20a는, 소스 픽쳐 사이즈가 최소 CU 사이즈의 배수가 아닌 경우의 수평 방향에서의 예시적인 패딩을 예시한다. 도 20b는, 소스 픽쳐 사이즈가 최소 CU 사이즈의 배수가 아닌 경우의 수직 방향에서의 예시적인 패딩을 예시한다. 도 20c는, 소스 픽쳐 사이즈가 최소 CU 사이즈의 배수가 아닌 경우의 수평 방향 및 수직 방향에서의 예시적인 패딩을 예시한다. 지오메트리 패딩이 참조 픽쳐의 면에 대해 수행되는 경우, 패딩은 면 경계로부터 시작할 수도 있고, 패딩된 면을 연속적으로 만들기 위한 적합성 윈도우를 포함하지 않을 수도 있는 바깥쪽으로 이동할 수도 있다. 예를 들면, 지오메트리 패딩이 참조 픽쳐의 면에 대해 수행되는 경우, 패딩은 면 경계로부터 시작할 수도 있고 바깥쪽으로 이동할 수도 있는데, 그 이유는, 적합성 윈도우 내의 패딩이 인코더에 의해 나타내어질 수도 있기 때문이다. 예를 들면, 참조 픽쳐의 면은, 패딩된 면을 연속적으로 만들기 위한 적합성 윈도우를 포함하지 않을 수도 있다. 예를 들면, 참조 픽쳐의 면은, 패딩된 면을 연속적으로 만들기 위한 적합성 윈도우를 포함할 수도 있다. 적합성 윈도우는 변경되지 않고 유지될 수도 있고, 및/또는 패딩은, 지오메트리 패딩이 수행될 때, 적합성 윈도우로부터 시작될 수도 있다.
지오메트리 패딩을 갖는 디블로킹이 수행될 수도 있다. 디블로킹 필터는 블로킹 아티팩트(blocking artifact)를 제거하기 위해 적용될 수도 있다. 예를 들면, 디블로킹 필터는, 하나 이상의(예를 들면, 두 개의) 이웃하는 예측 단위 사이의 경계 및/또는 하나 이상의(예를 들면, 두 개의) 변환 단위 사이의 경계에 대한 인코딩 프로세스에 의해 도입되는 블로킹 아티팩트를 제거하기 위해 적용될 수도 있다. 경계에 대해, 이웃하는 블록 내의 하나 이상의 샘플은, 현재 블록 내의 그들 샘플의 필터링을 위해 사용될 수도 있다. 예를 들면, 도 21에서, 블록 "p"는 현재 블록 "q"의 이웃하는 블록일 수도 있다. 하나 이상의 참조 샘플(p0, p1, p2, 및/또는 p3)은 하나 이상의 참조 샘플(q0, q1, q2, 및/또는 q3)을 필터링하기 위해 사용될 수도 있다. 경계가 면 경계인 경우, 블록 "p" 및/또는 블록 "q"는 하나 이상의(예를 들면, 두 개의) 상이한 면 내에 있을 수도 있다. 경계가 면 경계인 경우, 참조 샘플 {p0, p1, p2, p3}과 참조 샘플 {q0, q1, q2, q3} 사이에 불연속성이 있을 수도 있다. 예를 들면, 경계가 면 경계인 경우, 지오메트리 워핑 때문에, 샘플 {p0, p1, p2, p3}과 샘플 {q0, q1, q2, q3} 사이에 불연속성이 있을 수도 있다. 면 경계에 대해 디블로킹 필터를 적용하는 것이 블로킹 아티팩트를 제거하지 않을 수도 있다. 면 경계에 대해 디블로킹 필터를 적용하는 것이 주관적인 시각적 품질을 감소시킬 수도 있다. 면 경계는 픽쳐 경계로서 취급될 수도 있다. 예를 들면, 면 경계는 픽쳐 경계로서 간주될 수도 있고, 그 결과, 디블로킹 필터는 그 경계에 대해 수행되지 않을 수도 있다. 다른 면 내의 이웃하는 샘플을 직접적으로 사용하는 것보다는, 유도된 이웃하는 샘플 값이 디블로킹 필터에 대한 입력으로서 사용되는 이웃하는 샘플에 대한 지오메트리 패딩 기법에 따라 사용될 수도 있다. 예를 들면, 유도된 참조 샘플 p0, p1, p2, 및/또는 p3은, 샘플 q0, q1, q2, 및/또는 q3을 필터링할 때 지오메트리 패딩 기법을 사용하여 필요에 따라 유도될 수도 있다. 면 경계는 프레임 패킹 정보에 따라 결정될 수도 있다.
지오메트리 패딩을 갖는 샘플 적응 오프셋(SAO)이 사용될 수도 있다. SAO는 고주파수 코딩 아티팩트를 제거하기 위해 사용될 수도 있다. 예를 들면, SAO는 HEVC에서 고주파수 코딩 아티팩트를 제거하기 위해 사용될 수도 있다. SAO는 대역 오프셋 및/또는 에지 오프셋을 포함할 수도 있다. SAO 파라미터는 코딩 트리 단위(coding tree unit; CTU)에 대해 시그널링될 수도 있다. 예를 들면, CTU는 64×64 블록 사이즈를 가질 수도 있다. 에지 오프셋의 경우, SAO 프로세스는, 픽셀이 에지 경계 상에 있는지 또는 주어진 방향을 따르지 않는지의 여부를 결정할 수도 있다. 도 22는, 픽셀이 에지 오프셋 SAO에 의해 프로세싱될 수도 있는 예를 예시한다. S(x)는 포지션 x에서의 샘플 값일 수도 있다. P는 현재 샘플 위치일 수도 있고, n0은 좌측/상부 이웃 포지션일 수도 있고, n1은 우측/하부 이웃 포지션일 수도 있다. 도 22에서 도시되는 네 개의 예에서, 현재 샘플이 에지 경계에 있을 수도 있다. 에지 경계는 에지 오프셋 SAO에 의해 프로세싱될 수도 있다. 에지 오프셋 SAO 프로세스는, 그것의 이웃하는 샘플 값을 참조할 수도 있다. 현재 샘플이 면 경계에 위치되는 경우, 현재 샘플의 이웃하는 샘플은 상이한 면 내에 위치될 수도 있다. 예는 유도된 샘플을 사용할 수도 있다. 예를 들면, 유도된 샘플은 하나 이상의 이웃하는 샘플을 대체할 수도 있다. 현재 샘플이 면 경계 상에 있다면, 하나 이상의 이웃하는 샘플이 대체될 수도 있다. 면 경계는 픽쳐 경계로서 취급될 수도 있고, 및/또는 그들 면 경계 샘플에 대한 SAO 필터링은 스킵될 수도 있다.
SAO 파라미터를 시그널링할지의 여부는 CTU의 위치에 기초하여 결정될 수도 있다. 예를 들면, 360도 비디오 코딩의 경우, CTU(예를 들면, CTU 전체)가 널 면(도 19a에서 "V"로서 마킹됨) 내부에 있으면, SAO 파라미터는 시그널링되지 않을 수도 있는데, 그 이유는, 샘플이 프레임 패킹을 위해 사용될 수도 있고 유저에게 렌더링되지 않을 수도 있기 때문이다.
상이한 투영 지오메트리는 상이한 특성을 가질 수도 있다. 예를 들면, ERP 및/또는 등적 투영은, 하나의 면을 가질 수도 있고, 면 경계 이슈는 비록 픽쳐가 신장되더라도 덜 우려될 수도 있다. 큐브맵은 프레임 패킹 픽쳐 안에 여섯 개의 면과 많은 면 경계를 가질 수도 있다. 그러한 만큼, 픽쳐는 상이한 투영 지오메트리에서 코딩될 수도 있다. (예를 들면, 표 1에 나열되는 바와 같은) 투영 지오메트리 인덱스는, 슬라이스(예를 들면, 각각의 슬라이스)에 대해 시그널링될 수도 있다. 표 1은 예시적인 투영 지오메트리 인덱스를 제공한다.
Figure pat00009
투영 포맷은 슬라이스 레벨에서 시그널링될 수도 있다. 투영 포맷 시그널링은 픽쳐 레벨에서 수행될 수도 있다. 예를 들면, 투영 포맷 시그널링은 투영 지오메트리의 인덱스를 통해 픽쳐 레벨에서 수행될 수도 있다. 시퀀스 레벨에서, 전체 시퀀스 및/또는 포맷 그 자체에서 사용되는 투영 포맷의 총 수가 시그널링될 수도 있다. 표 2는 시퀀스 레벨에서의 예시적인 투영 포맷 시그널링을 제공한다.
Figure pat00010
파라미터 num_projection_format은 시퀀스에 사용되는 투영 포맷의 총 수를 명시할 수도 있다. 파라미터 project_geometry_idx [i]는, (예를 들면, 픽쳐/슬라이스 레벨에서 시그널링되는 바와 같은) i 번째 인덱스에 의해 나타내어지는 (예를 들면, 표 1에서 나타내어지는 바와 같은) 매핑 인덱스를 명시할 수도 있다. 예를 들면, 등장방형 및 등적 투영이 시퀀스에서 사용되는 경우, 그리고 비트스트림에서 등적 및 등장방향을 각각 나타내기 위해 인덱스 "0" 및 "1"이 사용되는 경우, project_geometry_idx는 다음과 같이 커스터마이징될 수도 있고 표 2에 따라 시그널링될 수도 있다.
project_geometry_idx [0] = 2
project_geometry_idx[1] = 0
픽쳐에 대한 투영 포맷은 레이트 왜곡 최적화를 사용하여 결정될 수도 있다. 인코더는 현재 픽쳐를 하나 이상의 이용 가능한 투영 포맷을 사용하여 인코딩할 수도 있다. 예를 들면, 인코더는 현재 픽쳐를 하나 이상의 이용 가능한 투영 포맷을 사용하여 인코딩할 수도 있다. 인코더는 투영된 포맷의 레이트 왜곡 비용을 측정할 수도 있다. 최소 레이트 왜곡 비용을 갖는 투영 포맷이 선택될 수도 있다. 왜곡은 원래의 포맷 도메인에서 측정될 수도 있다. 예를 들면, O는 원래의 투영 포맷을 나타낼 수도 있고, X는 측정될 투영 포맷을 나타낼 수도 있고, I는 원래의 픽쳐를 나타낼 수도 있으며, I'는 재구성된 픽쳐를 나타낼 수도 있다. 원래의 픽쳐 I는 원래 투영 포맷 O으로부터 코딩 투영 포맷 X로 변환될 수도 있다. 픽쳐는 코딩 및 재구성될 수도 있다. Projection (I, F)는, 픽쳐 I를 포맷 F로 변환하기 위해 사용되는 투영 함수를 나타낼 수도 있다. I와 I'로부터의 변환된 픽쳐 사이의 왜곡은 다음과 같이 결정될 수도 있다. ||t||는 변수 t의 제곱 오차의 합(Projection; SSE)일 수도 있다.
Distortion = ||I - Projection(I', O)||
디코딩된 픽쳐 버퍼(DPB) 관리는 다음과 같이 수행될 수도 있다. 즉석 변환 모드(on-the-fly conversion mode)가 사용될 수도 있다. 재구성된 픽쳐는 DPB에 저장될 수도 있다. 참조 픽쳐 및 현재 픽쳐가 상이한 투영 포맷을 갖는 경우, 참조 픽쳐는 현재 픽쳐의 포맷으로 변환될 수도 있다. 도 23a 및 도 23b는 DPB 관리가 어떻게 수행될 수도 있는지의 예를 예시한다. 음영이 있는 블록 및 비어 있는(blank) 블록은, 각각, 두 개의 투영 포맷을 나타낼 수도 있다. 점선 블록은 가상 픽쳐를 나타낼 수도 있고, 실선 블록은 물리적 픽쳐를 나타낼 수도 있다. 참조 픽쳐 R0은 하나의 투영 포맷에 있을 수도 있다. 참조 픽쳐 R1 및 R2는 다른 투영 포맷(예를 들면, R0에 대한 투영 포맷과는 상이한 투영 포맷)에 있을 수도 있다. 현재 픽쳐 P는 픽쳐 R1 및 R2와 동일한 투영 포맷을 가질 수도 있다. 점선 테두리가 있는 블록 픽쳐(예를 들면, 도 23a에서 도시되는 참조 픽쳐 목록으로부터의 R1 및 R2)는 가상 픽쳐를 나타낼 수도 있다. 실선의 테두리를 갖는 블록(예를 들면, 도 23a에서 도시되는 참조 픽쳐 목록으로부터의 R0)은 버퍼에 저장되는 물리적 픽쳐를 나타낼 수도 있다. 도 23a에서 도시되는 바와 같이, 참조 픽쳐 R0은 그것이 디코딩되기 이전에 픽쳐 P의 투영 포맷으로 변환될 수도 있다. 변환된 버전은 참조 픽쳐 목록 상에 배치될 수도 있다. 참조 픽쳐 R1 및 R2는 참조 픽쳐 버퍼에 배치될 수도 있다. 예를 들면, 참조 픽쳐 R1 및 R2는, 그들이 픽쳐 P와 동일한 투영 포맷을 가지기 때문에, 참조 픽쳐 버퍼에 직접적으로 배치될 수도 있다.
참조 픽쳐가 DPB에 저장되는 동안, 참조 픽쳐는 상이한 투영 포맷으로 변환될 수도 있다. 도 23b에서 도시되는 바와 같이, 참조 픽쳐는 현재 픽쳐 P의 투영 포맷에 기초하여 DPB로부터 선택될 수도 있다. 참조 픽쳐는 참조 픽쳐 목록을 구성하기 위해 사용될 수도 있다.
하나 이상의(예를 들면, 모든) 인트라 슬라이스 및 하나 이상의(예를 들면, 모든) 인터 슬라이스는 동일한 투영 지오메트리 코딩을 사용할 수도 있다. 하나 이상의(예를 들면, 모든) 인트라 슬라이스는 하나의 투영 지오메트리 코딩을 사용할 수도 있고, 한편 하나 이상의(예를 들면, 모든) 인터 슬라이스는 (예를 들면, 인트라 슬라이스에서 사용되는 투영 지오메트리 코딩과는 상이한) 다른 투영 지오메트리를 사용할 수도 있다. 재구성된 인트라 픽쳐는, 인터 슬라이스가 사용하는 투영 지오메트리로 변환될 수도 있다. 예를 들면, 디코딩된 픽쳐 버퍼 내에 있을 수도 있는 재구성된 인트라 픽쳐는, 모션 보상이 직접적으로 적용될 수도 있도록 인터 슬라이스가 사용하는 투영 지오메트리로 변환될 수도 있다. 예를 들면, 인트라 슬라이스는 코딩을 위해 ERP를 사용할 수도 있고, 한편 인터 슬라이스는 코딩을 위해 큐브맵 투영을 사용할 수도 있다. 두 개의 투영에 대한 해상도는 상이할 수도 있다. 예를 들면, 인트라 슬라이스는 인터 슬라이스보다 더 큰 해상도를 가질 수도 있다. 해상도가 상이한 경우, 재구성된 인트라 픽쳐(예를 들면, 디코딩된 픽쳐 버퍼에 저장되는 것)는 인터 슬라이스가 사용하는 지오메트리 투영으로 변환될 수도 있다. 재구성된 인트라 픽쳐는, 인터 슬라이스와 동일한 해상도로 재샘플링될 수도 있다.
도 33a는 하나 이상의 개시된 실시형태가 구현될 수도 있는 및/또는 사용될 수도 있는 예시적인 통신 시스템(100)의 도면을 묘사한다. 통신 시스템(100)은 음성, 데이터, 비디오, 메시징, 브로드캐스트(broadcast), 등등과 같은 콘텐츠를 다수의 무선 유저에게 제공하는 다중 액세스 시스템(multiple access system)일 수도 있다. 통신 시스템(100)은, 무선 대역폭을 비롯한, 시스템 리소스의 공유를 통해 다수의 무선 유저가 이러한 콘텐츠에 액세스하는 것을 가능하게 할 수도 있다. 예를 들면, 통신 시스템(100)은, 코드 분할 다중 액세스(code division multiple access; CDMA), 시분할 다중 액세스(time division multiple access; TDMA), 주파수 분할 다중 액세스(frequency division multiple access; FDMA), 직교 FDMA(orthogonal FDMA; OFDMA), 싱글 캐리어 FDMA(single-carrier FDMA; SC-FDMA), 및 등등과 같은 하나 이상의 채널 액세스 방법을 활용할 수도 있다.
도 33a에서 도시되는 바와 같이, 통신 시스템(100)은 무선 송수신 유닛(WTRU)(102a, 102b, 102c, 및/또는 102d)(이들은 일반적으로 또는 일괄적으로 WTRU(102)로 참조될 수도 있음), 무선 액세스 네트워크(radio access network; RAN)(103/104/105), 코어 네트워크(106/107/109), 공중 교환식 전화망(public switched telephone network; PSTN)(108), 인터넷(110), 및 다른 네트워크(112)를 포함할 수도 있지만, 개시된 실시형태는 임의의 수의 WTRU, 기지국(base station), 네트워크, 및/또는 네트워크 엘리먼트를 고려한다는 것이 인식될 것이다. WTRU(102a, 102b, 102c, 및/또는 102d)의 각각은 무선 환경에서 동작하도록 및/또는 통신하도록 구성되는 임의의 타입의 디바이스일 수도 있다. 예로서, WTRU(102a, 102b, 102c, 및/또는 102d)는 무선 신호를 송신하도록 및/또는 수신하도록 구성될 수도 있고 유저 기기(user equipment; UE), 이동국(mobile station), 고정식 또는 이동식 가입자 유닛, 페이저, 셀룰러 전화, 개인 휴대형 정보 단말(personal digital assistant; PDA), 스마트폰, 랩탑, 넷북, 퍼스널 컴퓨터, 무선 센서, 가전기기(consumer electronics), 및 등등을 포함할 수도 있다.
통신 시스템(100)은 또한 기지국(114a) 및 기지국(114b)을 포함할 수도 있다. 기지국(114a, 114b)의 각각은, 코어 네트워크(106/107/109), 인터넷(110), 및/또는 네트워크(112)와 같은 하나 이상의 통신 네트워크에 대한 액세스를 용이하게 하기 위해 WTRU(102a, 102b, 102c, 및/또는 102d) 중 적어도 하나와 무선으로 인터페이싱하도록 구성되는 임의의 타입의 디바이스일 수도 있다. 예로서, 기지국(114a 및/또는 114b)은 기지국 트랜스시버(base transceiver station; BTS), Node-B, eNode B, 홈 노드 B, 홈 eNode B, 사이트 컨트롤러(site controller), 액세스 포인트(access point; AP), 무선 라우터, 및 등등일 수도 있다. 기지국(114a, 114b) 각각이 단일의 엘리먼트로서 묘사되지만, 기지국(114a, 114b)은 임의의 수의 상호 연결된(interconnected) 기지국 및/또는 네트워크 엘리먼트를 포함할 수도 있다는 것이 인식될 것이다.
기지국(114a)은, 기지국 컨트롤러(base station controller; BSC), 무선 네트워크 컨트롤러(radio network controller; RNC), 중계 노드, 등등과 같은 다른 기지국 및/또는 네트워크 엘리먼트(도시되지 않음)를 또한 포함할 수도 있는 RAN(103/104/105)의 일부일 수도 있다. 기지국(114a) 및/또는 기지국(114b)은, 특정한 지리적 영역 내에서 무선 신호를 송신하도록 및/또는 수신하도록 구성될 수도 있는데, 특정한 지리적 영역은 셀(도시되지 않음)로서 참조될 수도 있다. 셀은 셀 섹터로 추가로 분할될 수도 있다. 예를 들면, 기지국(114a)과 연관되는 셀은 세 개의 섹터로 분할될 수도 있다. 따라서, 하나의 실시형태에서, 기지국(114a)은 세 개의 트랜스시버, 즉, 셀의 각각의 섹터에 대해 하나씩의 트랜스시버를 포함할 수도 있다. 다른 실시형태에서, 기지국(114a)은 다중입력 다중출력(multiple-input multiple-output; MIMO) 기술을 활용할 수도 있고, 따라서, 셀의 각각의 섹터에 대해 다수의 트랜스시버를 활용할 수도 있다.
기지국(114a 및/또는 114b)은, 임의의 적절한 무선 통신 링크(예를 들면, 무선 주파수(radio frequency; RF), 마이크로파, 적외선(infrared; IR), 자외선(ultraviolet; UV), 가시광, 등등)일 수도 있는 무선 인터페이스(air interface; 115/116/117)를 통해 WTRU(102a, 102b, 102c, 및/또는 102d) 중 하나 이상과 통신할 수도 있다. 무선 인터페이스(115/116/117)는 임의의 적절한 무선 액세스 기술(radio access technology; RAT)을 사용하여 확립될 수도 있다.
더 구체적으로는, 상기에서 언급되는 바와 같이, 통신 시스템(100)은 다중 액세스 시스템일 수도 있고, CDMA, TDMA, FDMA, OFDMA, SC-FDMA, 및 등등과 같은 하나 이상의 채널 액세스 스킴을 활용할 수도 있다. 예를 들면, RAN(103/104/105) 내의 기지국(114a) 및 WTRU(102a, 102b, 및/또는 102c)는, 광대역 CDMA(wideband CDMA; WCDMA)를 사용하여 무선 인터페이스(115/116/117)를 확립할 수도 있는, 범용 이동 통신 시스템(Universal Mobile Telecommunications System; UMTS) 지상 무선 액세스(UMTS Terrestrial Radio Access; UTRA)와 같은 무선 기술을 구현할 수도 있다. WCDMA는 고속 패킷 액세스(High-Speed Packet Access; HSPA) 및/또는 진화된 HSPA(Evolved HSPA; HSPA+)와 같은 통신 프로토콜을 포함할 수도 있다. HSPA는 고속 다운링크 패킷 액세스(High-Speed Downlink Packet Access; HSDPA) 및/또는 고속 업링크 패킷 액세스(High-Speed Uplink Packet Access; HSUPA)를 포함할 수도 있다.
다른 실시형태에서, 기지국(114a) 및 WTRU(102a, 102b, 및/또는 102c)는, 롱 텀 에볼루션(Long Term Evolution; LTE) 및/또는 LTE-어드밴스드(LTE-Advanced; LTE-A)를 사용하여 무선 인터페이스(115/116/117)를 확립할 수도 있는 진화형 UMTS 지상 무선 액세스(Evolved UMTS Terrestrial Radio Access; E-UTRA)와 같은 무선 기술을 구현할 수도 있다.
다른 실시형태에서, 기지국(114a) 및 WTRU(102a, 102b, 및/또는 102c)는, IEEE 802.16(즉, 와이맥스(Worldwide Interoperability for Microwave Access; WiMAX)), CDMA2000, CDMA2000 1X, CDMA2000 EV-DO, IS-2000(Interim Standard 2000), IS-95(Interim Standard 95), IS-856(Interim Standard 856), 이동 통신용 글로벌 시스템(Global System for Mobile communications; GSM), GSM 에볼루션을 위한 향상된 데이터 레이트(Enhanced Data rates for GSM Evolution; EDGE), GSM EDGE(GERAN), 및 등등과 같은 무선 기술을 구현할 수도 있다.
도 33a의 기지국(114b)은, 예를 들면, 무선 라우터, 홈 노드 B, 홈 eNode B, 또는 액세스 포인트일 수도 있고, 사업장, 가정, 차량, 캠퍼스, 및 등등과 같은 국소화된 영역에서 무선 연결성을 용이하게 하기 위해 임의의 적절한 RAT를 활용할 수도 있다. 하나의 실시형태에서, 기지국(114b) 및 WTRU(102c, 102d)는 무선 근거리 통신망(wireless local area network; WLAN)을 확립하기 위해 IEEE 802.11과 같은 무선 기술을 구현할 수도 있다. 다른 실시형태에서, 기지국(114b) 및 WTRU(102c, 102d)는 무선 사설 영역 네트워크(wireless personal area network; WPAN)를 확립하기 위해 IEEE 802.15와 같은 무선 기술을 구현할 수도 있다. 또 다른 실시형태에서, 기지국(114b) 및 WTRU(102c, 102d)는 피코셀 또는 펨토셀을 확립하기 위해 셀룰러 기반의 RAT(예를 들면, WCDMA, CDMA2000, GSM, LTE, LTE-A, 등등)를 활용할 수도 있다. 도 33a에서 도시되는 바와 같이, 기지국(114b)은 인터넷(110)에 대한 직접 연결을 구비할 수도 있다. 따라서, 기지국(114b)은 코어 네트워크(106/107/109)를 통해 인터넷(110)에 액세스하는 데 필요로 되지 않을 수도 있다.
예를 들면, 코어 네트워크(106/107/109)는 호 제어(call control), 과금 서비스, 모바일 위치 기반 서비스, 선불 통화, 인터넷 연결성, 비디오 분배, 등등을 제공할 수도 있고, 및/또는 유저 인증과 같은 하이 레벨의 보안 기능을 수행할 수도 있다. 비록 도 33a에서 도시되지는 않지만, RAN(103/104/105) 및/또는 코어 네트워크(106/107/109)는, RAN(103/104/105)과 동일한 RAT 또는 상이한 RAT를 활용하는 다른 RAN과 직접 또는 간접 통신할 수도 있다는 것이 인식될 것이다. 예를 들면, E-UTRA 무선 기술을 활용할 수도 있는 RAN(103/104/105)에 연결되는 것 외에, 코어 네트워크(106/107/109)는 GSM 무선 기술을 활용하는 다른 RAN(도시되지 않음)과 또한 통신할 수도 있다.
코어 네트워크(106/107/109)는 WTRU(102a, 102b, 102c, 및/또는 102d)가 PSTN(108), 인터넷(110), 및/또는 다른 네트워크(112)에 액세스하는 데 게이트웨이로서 또한 기능할 수도 있다. PSTN(108)은, 기존 전화 서비스(plain old telephone service; POTS)를 제공하는 회선 교환식 전화 네트워크(circuit-switched telephone network)를 포함할 수도 있다. 인터넷(110)은, TCP/IP 인터넷 프로토콜 일군(suite)에서의 송신 제어 프로토콜(transmission control protocol; TCP), 유저 데이터그램 프로토콜(user datagram protocol; UDP) 및 인터넷 프로토콜(internet protocol; IP)과 같은 일반적인 통신 프로토콜을 사용하는 상호 연결된 컴퓨터 네트워크 및 디바이스의 글로벌 시스템을 포함할 수도 있다. 네트워크(112)는 다른 서비스 제공자에 의해 소유되는 및/또는 운영되는 유선 또는 무선 통신 네트워크를 포함할 수도 있다. 예를 들면, 네트워크(112)는, RAN(103/104/105)과 동일한 RAT 또는 상이한 RAT를 활용할 수도 있는 하나 이상의 RAN에 연결되는 다른 코어 네트워크를 포함할 수도 있다.
통신 시스템(100)에서의 WTRU(102a, 102b, 102c, 및/또는 102d) 중 몇몇 또는 모두는 멀티 모드 성능을 포함할 수도 있다, 즉, WTRU(102a, 102b, 102c, 및/또는 102d)는 상이한 무선 링크를 통해 상이한 무선 네트워크와 통신하기 위한 다수의 트랜스시버를 포함할 수도 있다. 예를 들면, 도 33a에서 도시되는 WTRU(102c)는, 셀룰러 기반 무선 기술을 활용할 수도 있는 기지국(114a)과, 그리고 IEEE 802 무선 기술을 활용할 수도 있는 기지국(114b)과 통신하도록 구성될 수도 있다.
도 33b는 예시적인 WTRU(102)의 시스템 도면을 묘사한다. 도 33b에서 도시되는 바와 같이, WTRU(102)는 프로세서(118), 트랜스시버(120), 송신/수신 엘리먼트(122), 스피커/마이크(124), 키패드(126), 디스플레이/터치패드(128), 비착탈식 메모리(130), 착탈식 메모리(132), 전원(134), 전지구 위치 결정 시스템(global positioning system; GPS) 칩셋(136), 및 다른 주변장치(138)를 포함할 수도 있다. WTRU(102)는 한 실시형태와 여전히 부합하면서 전술한 엘리먼트의 임의의 부조합을 포함할 수도 있다는 것이 인식될 것이다. 또한, 실시형태는, 기지국(114a 및 114b), 및/또는, 다른 것들 중에서도, 기지국 트랜스시버(BTS), Node-B, 사이트 컨트롤러, 액세스 포인트(access point; AP), 홈 node-B, 진화형 홈 node-B(eNodeB), 홈 진화형 node-B(home evolved node-B; HeNB), 홈 진화형 node-B 게이트웨이, 프록시 노드와 같은 그러나 이로 제한되지는 않는, 기지국(114a 및 114b)이 나타낼 수도 있는 노드가 도 33b에서 묘사되고 본원에서 설명되는 엘리먼트 중 일부 또는 전체를 포함할 수도 있다는 것을 고려한다.
프로세서(118)는 범용 프로세서, 특수 목적의 프로세서, 종래의 프로세서, 디지털 신호 프로세서(digital signal processor; DSP), 복수의 마이크로프로세서, DSP 코어와 연관되는 하나 이상의 마이크로프로세서, 컨트롤러, 마이크로컨트롤러, 주문형 반도체(Application Specific Integrated Circuit; ASIC), 필드 프로그래머블 게이트 어레이(Field Programmable Gate Array; FPGA) 회로, 임의의 다른 타입의 집적 회로(integrated circuit; IC), 상태 머신, 및 등등일 수도 있다. 프로세서(118)는 신호 코딩, 데이터 프로세싱, 전력 제어, 입력/출력 프로세싱, 및/또는 WTRU(102)가 무선 환경에서 동작하는 것을 가능하게 하는 임의의 다른 기능성(functionality)을 수행할 수도 있다. 프로세서(118)는, 송신/수신 엘리먼트(122)에 커플링될 수도 있는 트랜스시버(120)에 커플링될 수도 있다. 도 33b가 프로세서(118) 및 트랜스시버(120)를 별개의 컴포넌트로서 묘사하지만, 프로세서(118) 및 트랜스시버(120)는 전자적 패키지 또는 칩에 함께 집적될 수도 있다는 것이 인식될 수도 있다.
송신/수신 엘리먼트(122)는 무선 인터페이스(115/116/117)를 통해 기지국(예를 들면, 기지국(114a))으로 신호를 송신하도록, 또는 그 기지국으로부터 신호를 수신하도록 구성될 수도 있다. 예를 들면, 하나의 실시형태에서, 송신/수신 엘리먼트(122)는 RF 신호를 송신하도록 및/또는 수신하도록 구성되는 안테나일 수도 있다. 다른 실시형태에서, 송신/수신 엘리먼트(122)는, 예를 들면, IR, UV, 또는 가시광 신호를 송신하도록 및/또는 수신하도록 구성되는 방출기(emitter)/검출기(detector)일 수도 있다. 여전히 다른 실시형태에서, 송신/수신 엘리먼트(122)는 RF 및 광 신호 둘 모두를 송신 및 수신하도록 구성될 수도 있다. 송신/수신 엘리먼트(122)는 무선 신호의 임의의 조합을 송신하도록 및/또는 수신하도록 구성될 수도 있다는 것이 인식될 것이다.
또한, 비록 송신/수신 엘리먼트(122)가 도 33b에서 단일의 엘리먼트로서 묘사되지만, WTRU(102)는 임의의 수의 송신/수신 엘리먼트(122)를 포함할 수도 있다. 더 구체적으로는, WTRU(102)는 MIMO 기술을 활용할 수도 있다. 따라서, 하나의 실시형태에서, WTRU(102)는, 무선 인터페이스(115/116/117)를 통해 무선 신호를 송신 및 수신하기 위한 두 개 이상의 송신/수신 엘리먼트(122)(예를 들면, 다수의 안테나)를 포함할 수도 있다.
트랜스시버(120)는, 송신/수신 엘리먼트(122)에 의해 송신될 신호를 변조하도록 그리고 송신/수신 엘리먼트(122)에 의해 수신되는 신호를 복조하도록 구성될 수도 있다. 상기에서 언급되는 바와 같이, WTRU(102)는 멀티 모드 성능을 가질 수도 있다. 따라서, 트랜스시버(120)는, WTRU(102)가, 예를 들면, UTRA 및 IEEE 802.11과 같은 다수의 RAT를 통해 통신하는 것을 가능하게 하기 위한 다수의 트랜스시버를 포함할 수도 있다.
WTRU(102)의 프로세서(118)는, 스피커/마이크(124), 키패드(126), 및/또는 디스플레이/터치패드(128)(예를 들면, 액정 디스플레이(liquid crystal display; LCD) 디스플레이 유닛 또는 유기 발광 다이오드(organic light-emitting diode; OLED) 디스플레이 유닛)에 커플링될 수도 있고, 그리고 이들로부터 유저 입력 데이터를 수신할 수도 있다. 프로세서(118)는 유저 데이터를 스피커/마이크(124), 키패드(126), 및/또는 디스플레이/터치패드(128)로 또한 출력할 수도 있다. 또한, 프로세서(118)는, 비착탈식 메모리(130) 및/또는 착탈식 메모리(132)와 같은 임의의 타입의 적절한 메모리의 정보에 액세스할 수도 있고, 그리고 그 임의의 타입의 적절한 메모리에 데이터를 저장할 수도 있다. 비착탈식 메모리(130)는 랜덤 액세스 메모리(random-access memory; RAM), 리드 온리 메모리(read-only memory; ROM), 하드디스크, 또는 임의의 다른 타입의 메모리 저장 디바이스를 포함할 수도 있다. 착탈식 메모리(132)는 가입자 식별 모듈(subscriber identity module; SIM) 카드, 메모리 스틱, 시큐어 디지털(secure digital; SD) 메모리 카드, 및 등등을 포함할 수도 있다. 다른 실시형태에서, 프로세서(118)는, WTRU(102) 상에 물리적으로 위치되지 않는 메모리, 예컨대 서버 또는 가정용 컴퓨터(도시되지 않음) 상의 메모리의 정보에 액세스할 수도 있고, 그리고 그 메모리에 데이터를 저장할 수도 있다.
프로세서(118)는 전원(134)으로부터 전력을 수신할 수도 있고, WTRU(102)의 다른 컴포넌트로 전력을 분배하도록 및/또는 그 전력을 제어하도록 구성될 수도 있다. 전원(134)은 WTRU(102)에 전력을 공급하기 위한 임의의 적절한 디바이스일 수도 있다. 예를 들면, 전원(134)은 하나 이상의 드라이 셀 배터리(예를 들면, 니켈 카드뮴(NiCd), 니켈 아연(NiZn), 니켈 금속 수소(NiMH), 리튬 이온(Li ion), 등등), 태양 전지, 연료 전지, 및 등등을 포함할 수도 있다.
프로세서(118)는, WTRU(102)의 현재 위치에 관한 위치 정보(예를 들면, 경도 및 위도)를 제공하도록 구성될 수도 있는 GPS 칩셋(136)에 또한 커플링될 수도 있다. GPS 칩셋(136)으로부터의 정보 외에, 또는 그 정보 대신, WTRU(102)는 무선 인터페이스(115/116/117)를 통해 기지국(예를 들면, 기지국(114a, 114b))으로부터 위치 정보를 수신할 수도 있고 및/또는 두 개 이상의 근처의 기지국으로부터 수신되고 있는 신호의 타이밍에 기초하여 자신의 위치를 결정할 수도 있다. WTRU(102)는 한 실시형태와 여전히 부합하면서 임의의 적절한 위치 결정 방법을 통해 위치 정보를 획득할 수도 있다는 것이 인식될 것이다.
프로세서(118)는 또한, 추가적인 피쳐, 기능성, 및/또는 유선 또는 무선 연결성을 제공하는 하나 이상의 소프트웨어 및/또는 하드웨어 모듈을 포함할 수도 있는 다른 주변장치(138)에 커플링될 수도 있다. 예를 들면, 주변장치(138)는 가속도계, 전자 콤파스, 위성 트랜스시버, (사진 및 비디오용의) 디지털 카메라, 범용 직렬 버스(universal serial bus; USB) 포트, 진동 디바이스, 텔레비전 트랜스시버, 핸즈프리 헤드셋, Bluetooth® 모듈, 주파수 변조(frequency modulated; FM) 무선 유닛, 디지털 뮤직 플레이어, 미디어 플레이어, 비디오 게임 플레이어 모듈, 인터넷 브라우저, 및 등등을 포함할 수도 있다.
도 33c는 한 실시형태에 따른 RAN(103) 및 코어 네트워크(106)의 시스템 도면을 묘사한다. 상기에서 언급되는 바와 같이, RAN(103)은 무선 인터페이스(115)를 통해 WTRU(102a, 102b, 및/또는 102c)와 통신하기 위해 UTRA 무선 기술을 활용할 수도 있다. RAN(103)은 코어 네트워크(106)와 또한 통신할 수도 있다. 도 33c에서 도시되는 바와 같이, RAN(103)은, 무선 인터페이스(115)를 통해 WTRU(102a, 102b, 및/또는 102c)와 통신하기 위한 하나 이상의 트랜스시버를 각각 포함할 수도 있는 Node-B(140a, 140b, 및/또는 140c)를 포함할 수도 있다. Node-B(140a, 140b, 및/또는 140c) 각각은 RAN(103) 내의 특정한 셀(도시되지 않음)과 연관될 수도 있다. RAN(103)은 또한 RNC(142a 및/또는 142b)를 포함할 수도 있다. RAN(103)은, 한 실시형태와 여전히 부합하면서, 임의의 수의 Node-B 및 RNC를 포함할 수도 있다는 것이 인식될 것이다.
도 33c에서 도시되는 바와 같이, Node-B(140a 및/또는 140b)는 RNC(142a)와 통신할 수도 있다. 추가적으로, Node-B(140c)는 RNC(142b)와 통신할 수도 있다. Node-B(140a, 140b, 및/또는 140c)는 Iub 인터페이스를 통해 각각의 RNC(142a, 142b)와 통신할 수도 있다. RNC(142a, 142b)는 Iur 인터페이스를 통해 서로 통신할 수도 있다. RNC(142a, 142b)의 각각은, 자신이 연결되는 각각의 Node-B(140a, 140b, 및/또는 140c)를 제어하도록 구성될 수도 있다. 또한, RNC(142a, 142b)의 각각은 다른 기능성, 예컨대 외부 루프 전력 제어, 부하 제어, 수락 제어(admission control), 패킷 스케줄링, 핸드오버 제어, 매크로다이버시티, 보안 기능, 데이터 암호화, 및 등등을 수행하도록 또는 지원하도록 구성될 수도 있다.
도 33c에서 도시되는 코어 네트워크(106)는 미디어 게이트웨이(media gateway; MGW)(144), 모바일 스위칭 센터(mobile switching center; MSC)(146), 서빙 GPRS 지원 노드(serving GPRS support node; SGSN)(148), 및/또는 게이트웨이 GPRS 지원 노드(gateway GPRS support node; GGSN)(150)를 포함할 수도 있다. 전술한 엘리먼트의 각각이 코어 네트워크(106)의 일부로서 묘사되지만, 이들 엘리먼트 중 임의의 하나는 코어 네트워크 오퍼레이터 이외의 엔티티에 의해 소유될 수도 있고 및/또는 운영될 수도 있다는 것이 인식될 것이다.
RAN(103)에서의 RNC(142a)는 IuCS 인터페이스를 통해 코어 네트워크(106)의 MSC(146)에 연결될 수도 있다. MSC(146)는 MGW(144)에 연결될 수도 있다. MSC(146) 및 MGW(144)는, WTRU(102a, 102b, 및/또는 102c)와 전통적인 지상 회선(land-line) 통신 디바이스 사이의 통신을 용이하게 하기 위해, PSTN(108)과 같은 회선 교환 네트워크에 대한 액세스를 WTRU(102a, 102b, 및/또는 102c)에게 제공할 수도 있다.
RAN(103)에서의 RNC(142a)는 IuPS 인터페이스를 통해 코어 네트워크(106)의 SGSN(148)에 또한 연결될 수도 있다. SGSN(148)은 GGSN(150)에 연결될 수도 있다. SGSN(148) 및 GGSN(150)은, WTRU(102a, 102b, 및/또는 102c)와 IP 대응 디바이스(IP-enabled device) 사이의 통신을 용이하게 하기 위해, 패킷 교환 네트워크, 예컨대 인터넷(110)에 대한 액세스를 WTRU(102a, 102b, 및/또는 102c)에게 제공할 수도 있다.
상기에서 언급되는 바와 같이, 코어 네트워크(106)는, 다른 서비스 제공자에 의해 소유되는 및/또는 운영되는 다른 유선 또는 무선 네트워크를 포함할 수도 있는 네트워크(112)에 또한 연결될 수도 있다.
도 33d는 한 실시형태에 따른 RAN(104) 및 코어 네트워크(107)의 시스템 도면을 묘사한다. 상기에서 언급되는 바와 같이, RAN(104)은 무선 인터페이스(116)를 통해 WTRU(102a, 102b, 및/또는 102c)와 통신하기 위해 E-UTRA 무선 기술을 활용할 수도 있다. RAN(104)은 코어 네트워크(107)와 또한 통신할 수도 있다.
RAN(104)은 eNode-B(160a, 160b, 및/또는 160c)를 포함할 수도 있지만, RAN(104)은 한 실시형태와 여전히 부합하면서 임의의 수의 eNode-B를 포함할 수도 있다는 것이 인식될 것이다. eNode-B(160a, 160b, 및/또는 160c) 각각은 무선 인터페이스(116)를 통해 WTRU(102a, 102b, 및/또는 102c)와 통신하기 위한 하나 이상의 트랜스시버를 포함할 수도 있다. 하나의 실시형태에서, eNode-B(160a, 160b, 및/또는 160c)는 MIMO 기술을 구현할 수도 있다. 따라서, eNode-B(160a)는, 예를 들면, WTRU(102a)로 무선 신호를 송신하기 위해 그리고 WTRU(102a)로부터 무선 신호를 수신하기 위해 다수의 안테나를 사용할 수도 있다.
eNode-B(160a, 160b, 및/또는 160c)의 각각은 특정한 셀(도시되지 않음)과 연관될 수도 있고 무선 리소스 관리 결정, 핸드오버 결정, 업링크 및/또는 다운링크에서의 유저의 스케줄링, 및 등등을 핸들링하도록 구성될 수도 있다. 도 33d에서 도시되는 바와 같이, eNode-B(160a, 160b, 및/또는 160c)는 X2 인터페이스를 통해 서로 통신할 수도 있다.
도 33d에서 도시되는 코어 네트워크(107)는 이동성 관리 엔티티 게이트웨이(mobility management entity gateway; MME)(162), 서빙 게이트웨이(164), 및 패킷 데이터 네트워크(packet data network; PDN) 게이트웨이(166)를 포함할 수도 있다. 전술한 엘리먼트의 각각이 코어 네트워크(107)의 일부로서 묘사되지만, 이들 엘리먼트 중 임의의 하나는 코어 네트워크 오퍼레이터 이외의 엔티티에 의해 소유될 수도 있고 및/또는 운영될 수도 있다는 것이 인식될 것이다.
MME(162)는 S1 인터페이스를 통해 RAN(104) 내의 eNode-B(160a, 160b, 및/또는 160c)의 각각에 연결될 수도 있고 제어 노드로서 기능할 수도 있다. 예를 들면, MME(162)는 WTRU(102a, 102b, 및/또는 102c)의 유저를 인증하는 것, 베어러 활성화/비활성화, WTRU(102a, 102b, 및/또는 102c)의 초기 연결 동안 특정한 서빙 게이트웨이를 선택하는 것, 및 등등을 담당할 수도 있다. MME(162)는, GSM 또는 WCDMA와 같은 다른 무선 기술을 활용하는 다른 RAN(도시되지 않음)과 RAN(104) 사이를 스위칭하기 위한 제어 평면 기능을 또한 제공할 수도 있다.
서빙 게이트웨이(164)는 S1 인터페이스를 통해 RAN(104) 내의 eNode-B(160a, 160b, 및/또는 160c)의 각각에 연결될 수도 있다. 일반적으로, 서빙 게이트웨이(164)는 유저 데이터 패킷을 WTRU(102a, 102b, 및/또는 102c)로/로부터 라우팅 및 포워딩할 수도 있다. 서빙 게이트웨이(164)는 또한, 다른 기능, 예컨대 eNode B간 핸드오버(inter-eNode B handover) 동안 유저 평면을 앵커링하는 것, 다운링크 데이터가 WTRU(102a, 102b, 및/또는 102c)에 대해 이용 가능할 때 페이징을 트리거하는 것, WTRU(102a, 102b, 및/또는 102c)의 컨텍스트(context)를 관리하고 저장하는 것, 및 등등을 수행할 수도 있다.
서빙 게이트웨이(164)는, WTRU(102a, 102b, 및/또는 102c)와 IP 대응 디바이스 사이의 통신을 용이하게 하기 위해, 인터넷(110)과 같은 패킷 교환식 네트워크에 대한 액세스를 WTRU(102a, 102b, 및/또는 102c)에게 제공할 수도 있는 PDN 게이트웨이(166)에 또한 연결될 수도 있다.
코어 네트워크(107)는 다른 네트워크와의 통신을 용이하게 할 수도 있다. 예를 들면, 코어 네트워크(107)는, WTRU(102a, 102b, 및/또는 102c)와 전통적인 지상 회선 통신 디바이스 사이의 통신을 용이하게 하기 위해, PSTN(108)과 같은 회선 교환식 네트워크에 대한 액세스를 WTRU(102a, 102b, 및/또는 102c)에게 제공할 수도 있다. 예를 들면, 코어 네트워크(107)는, 코어 네트워크(107)와 PSTN(108) 사이의 인터페이스로서 기능하는 IP 게이트웨이(예를 들면, IP 멀티미디어 서브시스템(IP multimedia subsystem; IMS) 서버)를 포함할 수도 있거나, 또는 그 IP 게이트웨이와 통신할 수도 있다. 또한, 코어 네트워크(107)는, 다른 서비스 제공자에 의해 소유되는 및/또는 운영되는 다른 유선 또는 무선 네트워크를 포함할 수도 있는 다른 네트워크(112)에 대한 액세스를 WTRU(102a, 102b, 및/또는 102c)에게 제공할 수도 있다.
도 33e는 한 실시형태에 따른 RAN(105) 및 코어 네트워크(109)의 시스템 도면을 묘사한다. RAN(105)은, 무선 인터페이스(117)를 통해 WTRU(102a, 102b, 및/또는 102c)와 통신하기 위해 IEEE 802.16 무선 기술을 활용하는 액세스 서비스 네트워크(access service network; ASN)일 수도 있다. 하기에서 추가로 논의되는 바와 같이, WTRU(102a, 102b, 및/또는 102c), RAN(105), 및 코어 네트워크(109)의 상이한 기능적 엔티티 사이의 통신 링크는 참조 포인트(reference point)로서 정의될 수도 있다.
도 33e에서 도시되는 바와 같이, RAN(105)은 기지국(180a, 180b, 및/또는 180c), 및 ASN 게이트웨이(182)를 포함할 수도 있지만, RAN(105)은, 한 실시형태와 여전히 부합하면서, 임의의 수의 기지국 및 ASN 게이트웨이를 포함할 수도 있다는 것이 인식될 것이다. 기지국(180a, 180b, 및/또는 180c) 각각은, RAN(105) 내의 특정한 셀(도시되지 않음)과 연관될 수도 있고 무선 인터페이스(117)를 통해 WTRU(102a, 102b, 및/또는 102c)와 통신하기 위한 하나 이상의 트랜스시버를 포함할 수도 있다. 하나의 실시형태에서, 기지국(180a, 180b, 및/또는 180c)은 MIMO 기술을 구현할 수도 있다. 따라서, 기지국(180a)은, 예를 들면, WTRU(102a)로 무선 신호를 송신하기 위해 그리고 WTRU(102a)로부터 무선 신호를 수신하기 위해 다수의 안테나를 사용할 수도 있다. 기지국(180a, 180b, 및/또는 180c)은 또한, 핸드오프 트리거링(handoff triggering), 터널 확립, 무선 리소스 관리, 트래픽 분류, 서비스 품질(quality of service; QoS) 정책 보강(enforcement), 및 등등과 같은 이동성 관리 기능을 제공할 수도 있다. ASN 게이트웨이(182)는 트래픽 집성 포인트(traffic aggregation point)로서 기능할 수도 있고, 페이징, 가입자 프로파일의 캐싱, 코어 네트워크(109)로의 라우팅, 및 등등을 담당할 수도 있다.
WTRU(102a, 102b, 및/또는 102c)와 RAN(105) 사이의 무선 인터페이스(117)는, IEEE 802.16 명세(specification)를 구현하는 R1 참조 포인트로서 정의될 수도 있다. 또한, WTRU(102a, 102b, 및/또는 102c)의 각각은 코어 네트워크(109)와의 논리적 인터페이스(logical interface)(도시되지 않음)를 확립할 수도 있다. WTRU(102a, 102b, 및/또는 102c)와 코어 네트워크(109) 사이의 논리적 인터페이스는 R2 참조 포인트로서 정의될 수도 있는데, R2 참조 포인트는 인증(authentication), 인가(authorization), IP 호스트 구성 관리, 및/또는 이동성 관리를 위해 사용될 수도 있다.
기지국(180a, 180b, 및/또는 180c)의 각각 사이의 통신 링크는, WTRU 핸드오버 및 기지국 사이의 데이터의 전송을 용이하게 하기 위한 프로토콜을 포함하는 R8 참조 포인트로서 정의될 수도 있다. 기지국(180a, 180b, 및/또는 180c)과 ASN 게이트웨이(182) 사이의 통신 링크는 R6 참조 포인트로서 정의될 수도 있다. R6 참조 포인트는 WTRU(102a, 102b, 및/또는 102c)의 각각과 연관되는 이동성 이벤트에 기초하여 이동성 관리를 용이하게 하기 위한 프로토콜을 포함할 수도 있다.
도 33e에서 도시되는 바와 같이, RAN(105)은 코어 네트워크(109)에 연결될 수도 있다. RAN(105)과 코어 네트워크(109) 사이의 통신 링크는, 예를 들면, 데이터 전송 및 이동성 관리 성능을 용이하게 하기 위한 프로토콜을 포함하는 R3 참조 포인트로서 정의될 수도 있다. 코어 네트워크(109)는 모바일 IP 홈 에이전트(mobile IP home agent; MIP-HA)(184), 인증, 인가, 어카운팅(authentication, authorization, accounting; AAA) 서버(186), 및 게이트웨이(188)를 포함할 수도 있다. 전술한 엘리먼트의 각각이 코어 네트워크(109)의 일부로서 묘사되지만, 이들 엘리먼트 중 임의의 하나는 코어 네트워크 오퍼레이터 이외의 엔티티에 의해 소유될 수도 있고 및/또는 운영될 수도 있다는 것이 인식될 것이다.
MIP-HA는 IP 어드레스 관리를 담당할 수도 있고, WTRU(102a, 102b, 및/또는 102c)가 상이한 ASN 및/또는 상이한 코어 네트워크 사이에서 로밍하는 것을 가능하게 할 수도 있다. MIP-HA(184)는, WTRU(102a, 102b, 및/또는 102c)와 IP 대응 디바이스 사이의 통신을 용이하게 하기 위해, 패킷 교환 네트워크, 예컨대 인터넷(110)에 대한 액세스를 WTRU(102a, 102b, 및/또는 102c)에게 제공할 수도 있다. AAA 서버(186)는 유저 인증 및 유저 서비스 지원을 담당할 수도 있다. 게이트웨이(188)는 다른 네트워크와의 상호 연동(interworking)을 용이하게 할 수도 있다. 예를 들면, 게이트웨이(188)는, WTRU(102a, 102b, 및/또는 102c)와 전통적인 지상 회선 통신 디바이스 사이의 통신을 용이하게 하기 위해, PSTN(108)과 같은 회선 교환 네트워크에 대한 액세스를 WTRU(102a, 102b, 및/또는 102c)에게 제공할 수도 있다. 또한, 게이트웨이(188)는, 다른 서비스 제공자에 의해 소유되는 및/또는 운영되는 다른 유선 또는 무선 네트워크를 포함할 수도 있는 네트워크(112)에 대한 액세스를 WTRU(102a, 102b, 및/또는 102c)에게 제공할 수도 있다.
비록 도 33e에서 도시되지는 않지만, RAN(105)은 다른 ASN에 연결될 수도 있고 코어 네트워크(109)는 다른 코어 네트워크에 연결될 수도 있다는 것이 인식되어야 하고, 인식될 수도 있고, 및/또는 인식될 것이다. RAN(105)과 다른 ASN 사이의 통신 링크는 R4 참조 포인트로서 정의될 수도 있는데, R4 참조 포인트는 RAN(105)과 다른 ASN 사이에서 WTRU(102a, 102b, 및/또는 102c)의 이동성을 조정하기(coordinating) 위한 프로토콜을 포함할 수도 있다. 코어 네트워크(109)와 다른 코어 네트워크 사이의 통신 링크는 R5 참조로서 정의될 수도 있는데, 이것은 홈 코어 네트워크와 방문 코어 네트워크(visited core network) 사이의 상호 연동을 용이하게 하기 위한 프로토콜을 포함할 수도 있다.
비록 피쳐 및 엘리먼트가 특정 조합으로 상기에서 설명되었지만, 기술 분야에서 통상의 지식을 가진 자는, 각각의 피쳐 또는 엘리먼트는 단독으로 또는 다른 피쳐 및 엘리먼트와 임의의 조합으로 사용될 수 있다는 것을 인식할 것이다. 또한, 본원에서 설명되는 방법은, 컴퓨터 또는 프로세서에 의한 실행을 위해 컴퓨터 판독 가능한 매체에 통합되는 컴퓨터 프로그램, 소프트웨어, 또는 펌웨어로 구현될 수도 있다. 컴퓨터 판독 가능한 매체의 예는 전자 신호(유선 또는 무선 연결을 통해 송신됨) 및 컴퓨터 판독 가능한 저장 매체를 포함한다. 컴퓨터 판독 가능한 저장 매체의 예는, 리드 온리 메모리(read only memory; ROM), 랜덤 액세스 메모리(random access memory; RAM), 레지스터, 캐시 메모리, 반도체 메모리 디바이스, 내장 하드 디스크 및 착탈식 디스크와 같은 자기 매체, 광자기 매체, 및 CD-ROM 디스크 및 디지털 다기능 디스크(digital versatile disk; DVD)와 같은 광학 매체를 포함하지만, 그러나 이들로 제한되지는 않는다. 소프트웨어와 연관되는 프로세서는, WTRU, UE, 단말, 기지국, RNC, 또는 임의의 호스트 컴퓨터에서 사용하기 위한 무선 주파수 트랜스시버를 구현하기 위해 사용될 수도 있다.

Claims (11)

  1. 비디오 콘텐츠를 디코딩하는 방법에 있어서,
    프레임 패킹 픽쳐(frame-packed picture)에서 현재 샘플 위치를 획득하는 단계 - 상기 프레임 패킹 픽쳐는 제1 투영 지오메트리와 연관되는 복수의 면(face)들을 포함하고, 상기 현재 샘플 위치는 상기 프레임 패킹 픽쳐와 연관되는 제1 면에 위치하고, 상기 현재 샘플 위치는 상기 비디오 콘텐츠의 현재 샘플과 연관됨 -;
    제1 예측 샘플 위치를 획득하는 단계 - 상기 현재 샘플은 상기 제1 예측 샘플 위치에 기초하여 예측될 것임 -;
    상기 제1 예측 샘플 위치가 상기 제1 면의 경계의 외부에 위치한다는 것을 결정하는 단계;
    상기 제1 예측 샘플 위치가 상기 제1 면의 경계의 외부에 위치한다는 결정에 기초하여, 상기 제1 예측 샘플 위치의 3D 포지션을 획득하는 단계 - 상기 제1 예측 샘플 위치의 3D 포지션은 상기 제1 면과 연관됨 -;
    상기 제1 예측 샘플 위치의 3D 포지션에 기초하여, 제2 예측 샘플 위치를 포함하는 제2 면을 획득하는 단계;
    상기 제2 예측 샘플 위치로서 상기 제2 면에서 상기 제1 예측 샘플 위치의 2D 평면 포지션을 도출하도록 상기 제1 예측 샘플 위치의 3D 포지션에 지오메트리 투영을 적용하는 단계; 및
    상기 제2 예측 샘플 위치에 기초하여 상기 비디오 콘텐츠와 연관된 상기 현재 샘플을 예측하는 단계를 포함하는, 비디오 콘텐츠를 디코딩하는 방법.
  2. 제1항에 있어서,
    상기 현재 샘플이 인트라 예측(intra predicted)된다고 결정하는 단계; 및
    상기 현재 샘플이 인트라 예측된다는 결정에 기초하여 그리고 상기 제1 예측 샘플 위치가 상기 제1 면의 외부에 위치한다는 결정에 기초하여, 상기 현재 샘플과 연관된 인트라 예측 모드에 기초하여 상기 제1 예측 샘플 위치를 획득하는 단계를 포함하는, 비디오 콘텐츠를 디코딩하는 방법.
  3. 제1항에 있어서,
    상기 현재 샘플이 인터 예측(inter predicted)된다고 결정하는 단계; 및
    상기 현재 샘플이 인터 예측된다는 결정에 기초하여 그리고 상기 제1 예측 샘플 위치가 상기 제1 면의 경계의 외부에 위치한다는 결정에 기초하여, 상기 현재 샘플과 연관된 모션 벡터를 상기 현재 샘플에 적용함으로써 상기 제1 예측 샘플 위치를 획득하는 단계를 포함하는, 비디오 콘텐츠를 디코딩하는 방법.
  4. 제1항에 있어서,
    상기 제1 투영 지오메트리는 등장방형 투영(equirectangular projection), 등적 투영(equal-area projection), 큐브맵 투영(cubemap projection), 팔면체 투영(octahedron projection), 또는 원통형 투영(cylinder projection) 중 적어도 하나를 포함하는, 비디오 콘텐츠를 디코딩하는 방법.
  5. 제1항에 있어서,
    상기 제1 투영 지오메트리에서의 좌표를 중간(intermediate) 좌표로 변환하는 단계 - 상기 중간 좌표는 제2 투영 지오메트리와 연관되고, 상기 제1 예측 샘플 위치의 3D 포지션은 상기 중간 좌표에서 획득되고, 상기 제2 면에서의 상기 제1 예측 샘플 위치의 2D 평면 포지션은 상기 중간 좌표에서 획득됨 -; 및
    상기 제2 투영 지오메트리와 연관된 상기 제1 예측 샘플 위치의 유도된 상기 2D 평면 포지션을 상기 제1 투영 지오메트리와 연관된 좌표로 다시 변환하는 단계를 더 포함하는, 비디오 콘텐츠를 디코딩하는 방법.
  6. 비디오 콘텐츠를 디코딩하는 장치에 있어서, 프로세서를 포함하고,
    상기 프로세서는:
    프레임 패킹 픽쳐에서 현재 샘플 위치를 획득하고 - 상기 프레임 패킹 픽쳐는 제1 투영 지오메트리와 연관된 복수의 면들을 포함하고, 상기 현재 샘플 위치는 상기 프레임 패킹 픽쳐와 연관된 제1 면에 위치하고, 상기 현재 샘플 위치는 상기 비디오 콘텐츠의 현재 샘플과 연관됨 -;
    제1 예측 샘플 위치를 획득하고 - 상기 현재 샘플은 상기 제1 예측 샘플 위치에 기초하여 예측될 것임 -;
    상기 제1 예측 샘플 위치가 상기 제1 면의 경계의 외부에 있다는 것을 결정하고;
    상기 제1 예측 샘플 위치가 상기 제1 면의 외부에 있다는 결정에 기초하여, 상기 제1 예측 샘플 위치의 3D 포지션을 획득하고 - 상기 제1 예측 샘플 위치의 3D 포지션은 상기 제1 면과 연관됨 -;
    상기 제1 예측 샘플 위치의 3D 포지션에 기초하여, 제2 예측 샘플 위치를 포함하는 제2 면을 획득하고;
    상기 제2 면에서 상기 제1 예측 샘플 위치의 2D 평면 포지션을 도출하도록 상기 제1 예측 샘플 위치의 3D 포지션에 지오메트리 투영을 적용하고 - 상기 제1 예측 샘플 위치의 2D 평면 표지션은 상기 제2 예측 샘플 위치임 -; 그리고
    상기 제2 예측 샘플 위치에 기초하여 상기 비디오 콘텐츠와 연관된 상기 현재 샘플을 예측하도록 구성되는, 비디오 콘텐츠를 디코딩하는 장치.
  7. 제6항에 있어서, 상기 프로세서는:
    상기 현재 샘플이 인트라 예측된다고 결정하고; 그리고
    상기 현재 샘플이 인트라 예측된다는 결정에 기초하여 그리고 상기 제1 예측 샘플 위치가 상기 제1 면의 외부에 위치한다는 결정에 기초하여, 상기 현재 샘플과 연관된 인트라 예측 모드에 기초하여 상기 제1 예측 샘플 위치를 획득하도록 구성되는, 비디오 콘텐츠를 디코딩하는 장치.
  8. 제6항에 있어서, 상기 프로세서는:
    상기 현재 샘플이 인터 예측된다고 결정하고; 그리고
    상기 현재 샘플이 인터 예측된다는 결정에 기초하여 그리고 상기 제1 예측 샘플 위치가 상기 제1 면의 경계의 외부에 위치한다는 결정에 기초하여, 상기 현재 샘플과 연관된 모션 벡터를 상기 현재 샘플에 적용함으로써 상기 제1 예측 샘플 위치를 획득하도록 구성되는, 비디오 콘텐츠를 디코딩하는 장치.
  9. 제6항에 있어서,
    상기 제1 투영 지오메트리는 등장방형 투영, 등적 투영, 큐브맵 투영, 팔면체 투영, 또는 원통형 투영 중 적어도 하나를 포함하는, 비디오 콘텐츠를 디코딩하는 장치.
  10. 제6항에 있어서, 상기 프로세서는 또한:
    상기 제1 투영 지오메트리에서의 좌표를 중간 좌표로 변환하고 - 상기 중간 좌표는 제2 투영 지오메트리와 연관되고, 상기 제1 예측 샘플 위치의 3D 포지션은 상기 중간 좌표에서 획득되고, 상기 제2 면에서의 상기 제1 예측 샘플 위치의 2D 평면 포지션은 상기 중간 좌표에서 획득됨 -; 그리고
    상기 제2 투영 지오메트리와 연관된 상기 제1 예측 샘플 위치의 유도된 상기 2D 평면 포지션을 상기 제1 투영 지오메트리와 연관된 좌표로 다시 변환하도록 구성되는, 비디오 콘텐츠를 디코딩하는 장치.
  11. 비디오 프로세싱을 위한 명령어들을 포함하는 비-일시적 컴퓨터 판독가능 매체에 있어서, 상기 명령어들은 프로세서로 하여금 제1항 내지 제5항 중 어느 한 항의 방법을 수행하게 하는, 비-일시적 컴퓨터 판독가능 매체.
KR1020227011309A 2016-07-08 2017-07-07 지오메트리 투영을 이용한 360도 비디오 코딩 KR102521272B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020237012023A KR20230051319A (ko) 2016-07-08 2017-07-07 지오메트리 투영을 이용한 360도 비디오 코딩

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
US201662360112P 2016-07-08 2016-07-08
US62/360,112 2016-07-08
US201662404017P 2016-10-04 2016-10-04
US62/404,017 2016-10-04
US201762463242P 2017-02-24 2017-02-24
US62/463,242 2017-02-24
US201762500605P 2017-05-03 2017-05-03
US62/500,605 2017-05-03
PCT/US2017/041021 WO2018009746A1 (en) 2016-07-08 2017-07-07 360-degree video coding using geometry projection
KR1020197000642A KR20190035678A (ko) 2016-07-08 2017-07-07 지오메트리 투영을 이용한 360도 비디오 코딩

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020197000642A Division KR20190035678A (ko) 2016-07-08 2017-07-07 지오메트리 투영을 이용한 360도 비디오 코딩

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020237012023A Division KR20230051319A (ko) 2016-07-08 2017-07-07 지오메트리 투영을 이용한 360도 비디오 코딩

Publications (2)

Publication Number Publication Date
KR20220047402A true KR20220047402A (ko) 2022-04-15
KR102521272B1 KR102521272B1 (ko) 2023-04-12

Family

ID=59581992

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020197000642A KR20190035678A (ko) 2016-07-08 2017-07-07 지오메트리 투영을 이용한 360도 비디오 코딩
KR1020227011309A KR102521272B1 (ko) 2016-07-08 2017-07-07 지오메트리 투영을 이용한 360도 비디오 코딩
KR1020237012023A KR20230051319A (ko) 2016-07-08 2017-07-07 지오메트리 투영을 이용한 360도 비디오 코딩

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020197000642A KR20190035678A (ko) 2016-07-08 2017-07-07 지오메트리 투영을 이용한 360도 비디오 코딩

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020237012023A KR20230051319A (ko) 2016-07-08 2017-07-07 지오메트리 투영을 이용한 360도 비디오 코딩

Country Status (7)

Country Link
US (3) US10887621B2 (ko)
EP (1) EP3482563A1 (ko)
JP (3) JP6983862B2 (ko)
KR (3) KR20190035678A (ko)
CN (2) CN117135357A (ko)
TW (1) TWI775760B (ko)
WO (1) WO2018009746A1 (ko)

Families Citing this family (104)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI20165256A (fi) 2016-03-24 2017-09-25 Nokia Technologies Oy Laitteisto, menetelmä ja tietokoneohjelma videokoodaukseen ja -dekoodaukseen
WO2018035721A1 (en) * 2016-08-23 2018-03-01 SZ DJI Technology Co., Ltd. System and method for improving efficiency in encoding/decoding a curved view video
CN107801039B (zh) * 2016-08-30 2020-04-14 华为技术有限公司 运动补偿预测方法和装置
WO2018045108A1 (en) 2016-09-02 2018-03-08 Vid Scale, Inc. Method and system for signaling of 360-degree video information
EP3510744B1 (en) 2016-09-09 2022-05-04 Vid Scale, Inc. Methods and apparatus to reduce latency for 360-degree viewport adaptive streaming
KR20180029315A (ko) * 2016-09-12 2018-03-21 삼성전자주식회사 가상 현실 컨텐트의 영상을 투영하기 위한 영상 처리 방법 및 장치
EP3513561A1 (en) * 2016-09-30 2019-07-24 Huawei Technologies Co., Ltd. Apparatuses and methods for encoding and decoding a panoramic video signal
EP3800891A1 (en) 2016-10-04 2021-04-07 Ki Baek Kim Image data encoding/decoding method and apparatus
WO2018066991A1 (ko) * 2016-10-04 2018-04-12 김기백 영상 데이터 부호화/복호화 방법 및 장치
KR102531386B1 (ko) 2016-10-04 2023-05-12 주식회사 비원영상기술연구소 영상 데이터 부호화/복호화 방법 및 장치
US20190238888A1 (en) 2017-07-17 2019-08-01 Ki Baek Kim Image data encoding/decoding method and apparatus
CN117768645A (zh) * 2016-10-04 2024-03-26 有限公司B1影像技术研究所 图像编码/解码方法、记录介质和传输比特流的方法
KR20180042098A (ko) * 2016-10-17 2018-04-25 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
GB2555788A (en) * 2016-11-08 2018-05-16 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
US20200128238A1 (en) * 2016-12-22 2020-04-23 Kt Corporation Video signal processing method and device
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
US11057643B2 (en) 2017-03-13 2021-07-06 Mediatek Inc. Method and apparatus for generating and encoding projection-based frame that includes at least one padding region and at least one projection face packed in 360-degree virtual reality projection layout
US11004173B2 (en) * 2017-03-13 2021-05-11 Mediatek Inc. Method for processing projection-based frame that includes at least one projection face packed in 360-degree virtual reality projection layout
WO2018199792A1 (en) * 2017-04-26 2018-11-01 Huawei Technologies Co., Ltd Apparatuses and methods for encoding and decoding a panoramic video signal
US11093752B2 (en) * 2017-06-02 2021-08-17 Apple Inc. Object tracking in multi-view video
GB2563944B (en) * 2017-06-30 2021-11-03 Canon Kk 360-Degree video encoding with block-based extension of the boundary of projected parts
US10754242B2 (en) 2017-06-30 2020-08-25 Apple Inc. Adaptive resolution and projection format in multi-direction video
JP7224280B2 (ja) * 2017-07-17 2023-02-17 ビー1、インスティテュート、オブ、イメージ、テクノロジー、インコーポレイテッド 画像データ符号化/復号化方法及び装置
EP3435676A1 (en) * 2017-07-25 2019-01-30 Thomson Licensing Method and apparatus for encoding and decoding an omnidirectional video
DE112018002432T5 (de) 2017-08-18 2020-01-23 Mediatek Inc. Verfahren und Vorrichtung zum Reduzieren von Artefakten in einem projektionsbasierten Rahmen
US10827159B2 (en) * 2017-08-23 2020-11-03 Mediatek Inc. Method and apparatus of signalling syntax for immersive video coding
EP3685585A1 (en) 2017-09-20 2020-07-29 Vid Scale, Inc. Handling face discontinuities in 360-degree video coding
US10818087B2 (en) 2017-10-02 2020-10-27 At&T Intellectual Property I, L.P. Selective streaming of immersive video based on field-of-view prediction
US11445215B2 (en) * 2017-12-28 2022-09-13 Electronics And Telecommunications Research Institute Method and device for image encoding and decoding, and recording medium having bit stream stored therein
CN117834831A (zh) 2018-01-16 2024-04-05 Vid拓展公司 用于360度视频译码的自适应帧封装
WO2019141907A1 (en) * 2018-01-22 2019-07-25 Nokia Technologies Oy An apparatus, a method and a computer program for omnidirectional video
US10721465B2 (en) * 2018-02-14 2020-07-21 Qualcomm Incorporated Motion compensation for cubemap packed frames
US10764605B2 (en) * 2018-02-14 2020-09-01 Qualcomm Incorporated Intra prediction for 360-degree video
US11212438B2 (en) * 2018-02-14 2021-12-28 Qualcomm Incorporated Loop filter padding for 360-degree video coding
US10659815B2 (en) 2018-03-08 2020-05-19 At&T Intellectual Property I, L.P. Method of dynamic adaptive streaming for 360-degree videos
US20190289316A1 (en) * 2018-03-19 2019-09-19 Mediatek Inc. Method and Apparatus of Motion Vector Derivation for VR360 Video Coding
WO2019182294A1 (ko) * 2018-03-19 2019-09-26 주식회사 케이티 비디오 신호 처리 방법 및 장치
WO2019181101A1 (ja) * 2018-03-19 2019-09-26 ソニー株式会社 画像処理装置と画像処理方法
CN111936929A (zh) * 2018-03-22 2020-11-13 联发科技股份有限公司 采用360°虚拟现实投影的投影布局的重构的基于投影的帧的样本适应性偏移滤波方法用于重构的基于投影的帧的样本适应性偏移滤波方法
US10986371B2 (en) 2018-03-22 2021-04-20 Mediatek Inc. Sample adaptive offset filtering method for reconstructed projection-based frame that employs projection layout of 360-degree virtual reality projection
WO2019190197A1 (ko) * 2018-03-27 2019-10-03 주식회사 케이티 비디오 신호 처리 방법 및 장치
KR20230098721A (ko) 2018-03-29 2023-07-04 프라운호퍼-게젤샤프트 추르 푀르데룽 데어 안제반텐 포르슝 에 파우 패딩을 위한 화면내-예측 모드 선택을 위한 장치
CN110349226B (zh) * 2018-04-01 2021-06-01 浙江大学 一种全景图像处理方法及装置
KR102518869B1 (ko) * 2018-04-11 2023-04-06 알카크루즈 인코포레이티드 디지털 미디어 시스템
US11917127B2 (en) 2018-05-25 2024-02-27 Interdigital Madison Patent Holdings, Sas Monitoring of video streaming events
KR102435519B1 (ko) * 2018-06-20 2022-08-24 삼성전자주식회사 360도 영상을 처리하는 방법 및 장치
SG11202012942TA (en) * 2018-06-26 2021-01-28 Huawei Tech Co Ltd High-level syntax designs for point cloud coding
WO2020001790A1 (en) 2018-06-29 2020-01-02 Huawei Technologies Co., Ltd. Apparatuses and methods for encoding and decoding a video signal
US20200045288A1 (en) * 2018-07-31 2020-02-06 Intel Corporation Six degree of freedom video transcoding mechanism
US11178373B2 (en) 2018-07-31 2021-11-16 Intel Corporation Adaptive resolution of point cloud and viewpoint prediction for video streaming in computing environments
US10893299B2 (en) 2018-07-31 2021-01-12 Intel Corporation Surface normal vector processing mechanism
US10887574B2 (en) 2018-07-31 2021-01-05 Intel Corporation Selective packing of patches for immersive video
US11212506B2 (en) 2018-07-31 2021-12-28 Intel Corporation Reduced rendering of six-degree of freedom video
US10595000B1 (en) * 2018-08-02 2020-03-17 Facebook Technologies, Llc Systems and methods for using depth information to extrapolate two-dimentional images
US11094088B2 (en) * 2018-08-31 2021-08-17 Mediatek Inc. Method and apparatus of in-loop filtering for virtual boundaries in video coding
TWI719614B (zh) * 2018-08-31 2021-02-21 聯發科技股份有限公司 用於視頻編解碼中的虛擬邊界的環路內濾波的方法和裝置
US11765349B2 (en) 2018-08-31 2023-09-19 Mediatek Inc. Method and apparatus of in-loop filtering for virtual boundaries
TWI822863B (zh) * 2018-09-27 2023-11-21 美商Vid衡器股份有限公司 360度視訊寫碼樣本導出
US11057631B2 (en) 2018-10-10 2021-07-06 Intel Corporation Point cloud coding standard conformance definition in computing environments
US11736713B2 (en) 2018-11-14 2023-08-22 Tencent America LLC Constraint on affine model motion vector
WO2020101451A1 (ko) * 2018-11-15 2020-05-22 한국전자통신연구원 지역 기반 화면간/화면내 예측 기술을 이용한 부호화/복호화 방법 및 장치
CN113170184A (zh) 2018-11-22 2021-07-23 北京字节跳动网络技术有限公司 默认运动候选的配置方法
US11756153B2 (en) * 2018-12-31 2023-09-12 Intel Corporation Hemisphere cube map projection format in imaging environments
US11089335B2 (en) 2019-01-14 2021-08-10 Mediatek Inc. Method and apparatus of in-loop filtering for virtual boundaries
CN113366846A (zh) * 2019-02-02 2021-09-07 北京字节跳动网络技术有限公司 用于视频编解码中的帧内块复制的缓冲区更新
EP3915265A4 (en) 2019-03-01 2022-06-22 Beijing Bytedance Network Technology Co., Ltd. DIRECTION-BASED PREDICTION FOR INTRA BLOCK COPY IN VIDEO CODING
WO2020189876A1 (ko) * 2019-03-15 2020-09-24 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
US11334969B2 (en) * 2019-03-19 2022-05-17 Sony Group Corporation Point cloud geometry padding
US10979730B2 (en) * 2019-03-20 2021-04-13 Tencent America LLC Techniques and apparatus for interframe point cloud attribute coding
CN113455007B (zh) * 2019-03-22 2023-12-22 腾讯美国有限责任公司 帧间点云属性编解码的方法和装置
US10904558B2 (en) * 2019-04-26 2021-01-26 Tencent America LLC Method and apparatus for motion compensation for 360 video coding
EP3739880A1 (en) * 2019-05-14 2020-11-18 Axis AB Method, device and computer program product for encoding a distorted image frame
WO2020242023A1 (ko) * 2019-05-24 2020-12-03 엘지전자 주식회사 360 비디오를 전송하는 방법, 360 비디오를 수신하는 방법, 360 비디오 전송 장치, 360 비디오 수신 장치
WO2020249124A1 (en) 2019-06-14 2020-12-17 Beijing Bytedance Network Technology Co., Ltd. Handling video unit boundaries and virtual boundaries based on color format
US11190768B2 (en) * 2019-07-02 2021-11-30 Mediatek Inc. Video encoding method with syntax element signaling of packing of projection faces derived from cube-based projection and associated video decoding method and apparatus
US11190801B2 (en) * 2019-07-02 2021-11-30 Mediatek Inc. Video encoding method with syntax element signaling of mapping function employed by cube-based projection and associated video decoding method
US11659206B2 (en) 2019-07-02 2023-05-23 Mediatek Inc. Video encoding method with syntax element signaling of guard band configuration of projection-based frame and associated video decoding method and apparatus
CN114175633B (zh) 2019-07-10 2023-12-29 北京字节跳动网络技术有限公司 用于视频编解码中的帧内块复制的样点标识
CN117939170A (zh) * 2019-07-11 2024-04-26 北京字节跳动网络技术有限公司 自适应环路滤波中的样点填充
BR112022005046A2 (pt) 2019-09-18 2022-07-05 Beijing Bytedance Network Tech Co Ltd Método de processamento de dados de vídeo, aparelho para processar dados de vídeo, meio de armazenamento não transitório legível por computador e meio de gravação não transitório legível por computador
EP4018652A4 (en) 2019-09-22 2022-11-02 Beijing Bytedance Network Technology Co., Ltd. FILLING METHOD IN AN ADAPTIVE LOOP FILTER
CN114450954A (zh) 2019-09-27 2022-05-06 北京字节跳动网络技术有限公司 不同视频单元之间的自适应环路滤波
CN114556926A (zh) 2019-10-10 2022-05-27 北京字节跳动网络技术有限公司 几何分割模式中的运动矢量处理
WO2021068906A1 (en) 2019-10-10 2021-04-15 Beijing Bytedance Network Technology Co., Ltd. Padding process at unavailable sample locations in adaptive loop filtering
EP4042684A4 (en) 2019-10-29 2022-11-30 Beijing Bytedance Network Technology Co., Ltd. SIGNALING AN ADAPTIVE CROSS-COMPONENT LOOP FILTER
MX2022006734A (es) 2019-12-11 2022-06-09 Beijing Bytedance Network Tech Co Ltd Relleno de muestra para filtrado de circuito adaptivo de componente cruzado.
CN114788264B (zh) * 2019-12-30 2023-07-25 阿里巴巴(中国)有限公司 用于发出虚拟边界和环绕运动补偿的信号的方法
US11356698B2 (en) 2019-12-30 2022-06-07 Tencent America LLC Method for parameter set reference constraints in coded video stream
US11477490B2 (en) * 2020-01-03 2022-10-18 Mediatek Inc. Video processing method with sample adaptive offset filtering disabled across virtual boundary in reconstructed frame and associated video processing apparatus
WO2021163845A1 (en) * 2020-02-17 2021-08-26 Intel Corporation Enhancing 360-degree video using convolutional neural network (cnn) -based filter
WO2021182937A1 (ko) * 2020-03-11 2021-09-16 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
KR102406845B1 (ko) * 2020-04-13 2022-06-10 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
US11438628B2 (en) * 2020-06-03 2022-09-06 Tencent America LLC Hash-based accessing of geometry occupancy information for point cloud coding
CN113810734B (zh) * 2020-06-15 2024-04-05 浙江宇视科技有限公司 视频融合方法、装置、设备、系统及计算机可读存储介质
JP2023531223A (ja) 2020-06-30 2023-07-21 北京字節跳動網絡技術有限公司 適応ループフィルタリングのための境界位置
WO2022019713A1 (ko) * 2020-07-23 2022-01-27 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
US20230290006A1 (en) * 2020-09-03 2023-09-14 Lg Electronics Inc. Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method
US20230334719A1 (en) * 2020-10-30 2023-10-19 Lg Electronics Inc. Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method
WO2022197129A1 (ko) * 2021-03-19 2022-09-22 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
US20230306645A1 (en) * 2022-03-25 2023-09-28 Tencent America LLC Convolutional Approach to Fast and Compact Packing of 3D Mesh Into 2D Maps
WO2024007789A1 (en) * 2022-07-06 2024-01-11 Mediatek Inc. Prediction generation with out-of-boundary check in video coding
WO2024080841A1 (ko) * 2022-10-13 2024-04-18 한국전자통신연구원 영상 부호화/복호화를 위한 방법, 장치 및 기록 매체

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060050350A (ko) * 2004-08-13 2006-05-19 경희대학교 산학협력단 파노라마 영상의 움직임 추정 및 보상
US20160112704A1 (en) * 2014-10-20 2016-04-21 Google Inc. Continuous prediction domain

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6331869B1 (en) 1998-08-07 2001-12-18 Be Here Corporation Method and apparatus for electronically distributing motion panoramic images
US6466254B1 (en) * 1997-05-08 2002-10-15 Be Here Corporation Method and apparatus for electronically distributing motion panoramic images
JP2003141562A (ja) * 2001-10-29 2003-05-16 Sony Corp 非平面画像の画像処理装置及び画像処理方法、記憶媒体、並びにコンピュータ・プログラム
US7623682B2 (en) 2004-08-13 2009-11-24 Samsung Electronics Co., Ltd. Method and device for motion estimation and compensation for panorama image
US7627194B2 (en) * 2004-08-13 2009-12-01 Samsung Electronics Co., Ltd. Method and device for making virtual image region for motion estimation and compensation of panorama image
CN101853552A (zh) * 2010-04-20 2010-10-06 长春理工大学 全方位无盲区运动目标检测方法
JP2012190299A (ja) * 2011-03-11 2012-10-04 Sony Corp 画像処理装置および方法、並びにプログラム
BR112013033697A2 (pt) * 2011-07-01 2017-07-11 Samsung Electronics Co Ltd método de codificação de vídeo com previsão intra usando processo de verificação para possibilidade de referência unificada, método de decodificação de vídeo e seu dispositivo
US8995772B2 (en) * 2012-11-09 2015-03-31 Microsoft Technology Licensing, Llc Real-time face detection using pixel pairs
US10368097B2 (en) * 2014-01-07 2019-07-30 Nokia Technologies Oy Apparatus, a method and a computer program product for coding and decoding chroma components of texture pictures for sample prediction of depth pictures
KR101583646B1 (ko) 2014-05-12 2016-01-19 (주)헥스하이브 전 방위 평면 이미지를 생성하는 방법 및 장치
US10204658B2 (en) * 2014-07-14 2019-02-12 Sony Interactive Entertainment Inc. System and method for use in playing back panorama video content
JP6559337B2 (ja) 2015-09-23 2019-08-14 ノキア テクノロジーズ オーユー 360度パノラマビデオの符号化方法、符号化装置、及びコンピュータプログラム
FI20165256A (fi) * 2016-03-24 2017-09-25 Nokia Technologies Oy Laitteisto, menetelmä ja tietokoneohjelma videokoodaukseen ja -dekoodaukseen
WO2017205648A1 (en) 2016-05-26 2017-11-30 Vid Scale, Inc. Geometric conversion for 360-degree video coding
US10523913B2 (en) * 2017-06-30 2019-12-31 Apple Inc. Packed image format for multi-directional video

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060050350A (ko) * 2004-08-13 2006-05-19 경희대학교 산학협력단 파노라마 영상의 움직임 추정 및 보상
US20160112704A1 (en) * 2014-10-20 2016-04-21 Google Inc. Continuous prediction domain

Also Published As

Publication number Publication date
US20190215532A1 (en) 2019-07-11
TWI775760B (zh) 2022-09-01
WO2018009746A1 (en) 2018-01-11
US10887621B2 (en) 2021-01-05
CN109417632B (zh) 2023-08-04
JP6983862B2 (ja) 2021-12-17
JP2019525563A (ja) 2019-09-05
KR102521272B1 (ko) 2023-04-12
US20210136413A1 (en) 2021-05-06
US20220368947A1 (en) 2022-11-17
US11388438B2 (en) 2022-07-12
JP2022000954A (ja) 2022-01-04
JP7295178B2 (ja) 2023-06-20
CN109417632A (zh) 2019-03-01
EP3482563A1 (en) 2019-05-15
KR20230051319A (ko) 2023-04-17
JP2023105219A (ja) 2023-07-28
KR20190035678A (ko) 2019-04-03
TW201812708A (zh) 2018-04-01
CN117135357A (zh) 2023-11-28

Similar Documents

Publication Publication Date Title
KR102521272B1 (ko) 지오메트리 투영을 이용한 360도 비디오 코딩
US20230412839A1 (en) Geometry Conversion for 360-degree Video Coding
JP7357747B2 (ja) 面連続性を使用する360度ビデオコーディング
US20220385942A1 (en) Face discontinuity filtering for 360-degree video coding
US20220007053A1 (en) Sample Derivation For 360-degree Video Coding
WO2019143551A1 (en) Adaptive frame packing for 360-degree video coding
WO2018170416A1 (en) Floating point to integer conversion for 360-degree video projection format conversion and spherical metrics calculation

Legal Events

Date Code Title Description
A107 Divisional application of patent
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