KR20210094646A - 몰입형 비디오 비트 스트림 처리 - Google Patents

몰입형 비디오 비트 스트림 처리 Download PDF

Info

Publication number
KR20210094646A
KR20210094646A KR1020217021481A KR20217021481A KR20210094646A KR 20210094646 A KR20210094646 A KR 20210094646A KR 1020217021481 A KR1020217021481 A KR 1020217021481A KR 20217021481 A KR20217021481 A KR 20217021481A KR 20210094646 A KR20210094646 A KR 20210094646A
Authority
KR
South Korea
Prior art keywords
video
information
image
mapping
adjacent
Prior art date
Application number
KR1020217021481A
Other languages
English (en)
Inventor
자오 우
밍 리
핑 우
Original Assignee
지티이 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 지티이 코포레이션 filed Critical 지티이 코포레이션
Publication of KR20210094646A publication Critical patent/KR20210094646A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/06Topological mapping of higher dimensional structures onto lower dimensional surfaces
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/60Rotation of whole images or parts thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • 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/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
    • 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/184Methods 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 bits, e.g. of the compressed video stream
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

디지털 비디오 또는 화상을 인코딩 하거나 디코딩 하는 기술은 3차원 좌표에서 파노라마 이미지의 다중 영역을 포함하는 2차원 이미지인 인코딩 된 비디오 이미지를 포함하는 비디오 비트 스트림을 획득하고, 상기 다중 영역에 대한 주변 정보를 추출하며, 상기 주변 정보를 사용하여 상기 비디오 비트 스트림으로부터 디코딩 된 비디오 이미지의 후처리를 수행하고, 상기 후처리 후 상기 비디오 이미지로부터 디스플레이 이미지를 생성하는 것을 포함한다.

Description

몰입형 비디오 비트 스트림 처리
이 특허 문헌은 일반적으로 비디오와 이미지 인코딩 및 디코딩에 관한 것이다.
비디오 인코딩은 2차원 비디오 프레임을 네트워크 통한 저장 또는 전송에 더 효율적인 압축된 비트 스트림 표현으로 인코딩 하기 위해 압축 툴을 사용한다. 인코딩을 위해 2차원 비디오 프레임을 사용하는 전통적인 비디오 코딩 기술은 때때로 3차원 시각 장면의 시각 정보를 표현하는데 비효율적이다.
이 특허 문헌은 무엇보다도 다차원 이미지와 관련된 시각 정보를 전달하는 디지털 비디오를 인코딩 및 디코딩 하는 기술을 설명한다.
일 예시적인 양태에서, 비디오 또는 화상 처리를 위한 방법이 개시된다. 방법은 3차원 좌표로 파노라마 이미지의 다중 영역을 포함하는 2차원 이미지인 인코딩 된 비디오 이미지를 포함하는 비디오 비트 스트림을 획득하는 단계, 다중 영역에 대한 주변 정보를 추출하는 단계, 주변 정보를 사용하여 비디오 스트림으로부터 디코딩 된 비디오 이미지의 후처리를 수행하는 단계 및 후처리 후 비디오 이미지로부터 디스플레이 이미지를 생성하는 단계를 포함한다.
다른 예시적인 양태에서, 비디오 또는 화상 처리의 다른 방법이 개시된다. 방법은 3차원 좌표에서 파노라마 이미지를 획득하는 단계, 파노라마 이미지를 다중 영역을 포함하는 2차원 이미지에 매핑하는 단계, 다중 영역의 주변 정보를 결정하는 단계 및 비디오 비트 스트림을 전송하거나 저장하는 단계를 포함한다.
다른 예시적인 양태에서, 비디오 또는 화상의 하나 이상의 비트 스트림을 처리하는 장치가 개시된다.
또 다른 예시적인 양태에서, 컴퓨터 프로그램 저장 매체가 개시된다. 컴퓨터 프로그램 저장 매체는 그것에 저장된 코드를 포함한다. 이 코드는 프로세서에 의해 실행될 때, 프로세서가 설명된 방법을 구현하도록 한다.
이러한 양태 및 다른 양태가 본 문서에 설명된다.
도 1은 비디오 인코딩의 예시적인 프로세스의 흐름도이다.
도 2a 내지 2b는 구면 좌표계로부터 2차원 좌표계로 매핑하는 예를 보여준다.
도 3은 매핑된 영역을 포함하는 비디오 프레임의 예를 보여준다.
도 4는 매핑되고 회전된 영역을 포함하는 비디오 프레임의 예를 보여준다.
도 5는 비디오 디코딩 프로세스의 예시적인 흐름도를 보여준다.
도 6은 비디오 인코딩 장치의 예시적인 블록도이다.
도 7은 비디오 디코딩 장치의 예시적인 블록도이다.
도 8은 여기에 설명된 방법을 구현하기 위한 하드웨어 플랫폼의 실시예의 블록도이다.
도 9는 구면 좌표에서 몰입형 비디오 이미지의 다른 예를 보여준다.
도 10은 도 9에서 구면 이미지의 2차원 매핑을 보여준다.
도 11은 상이한 뷰들 사이에 시각적 연속성을 유지하기 위해 화상 영역을 매핑 및 회전시킨 후에 생성된 비디오 프레임의 예를 보여준다.
섹션 표제는 본 문서에서 가독성을 향상시키기 위해서만 사용되며, 각 섹션에서 개시된 실시예 및 기술의 범위를 그 섹션으로만 제한하지 않는다. 특정 피처는 H.264/AVC(고급 비디오 코딩) 및 H.265/HEVC(고효율 비디오 코딩) 표준의 예를 사용하여 설명된다. 그러나, 개시된 기술의 적용성은 H.264/AVC 또는 H.265/HEVC 시스템에만 제한되지 않는다.
간략한 논의
모바일 통신은 사람들의 삶을 완전히 바꾸어 놓았다. SD에서 UHD, 평면에서 파노라마 스테레오, 표준 동적 범위(SDR: Standard Dynamic Range)에서 고 동적 범위(HDR: High Dynamic Range), 의사 색채(pseudo-color)에서 트루 색채(true color), 인터레이스(Interlaced)에서 프로그레시브(progressive) 스캐닝, 초당 30 프레임에서 초당 120 프레임, TV에서 모바일 전화에 이르기까지 모바일 통신의 발전과 함께, 사람들은 점점 더 미디어 콘텐츠를 보기 원하고 보기 형식은 다양하다. 몰입형 미디어는 체성 감각 게임 및 몰입형 영화와 같은 엔터테인먼트 및 게임의 사용자에게 다양한 경험을 제공한다.
이전 비디오와는 달리, 몰입형 비디오는 원본 비디오 데이터를 캡처하기 위해 다수의 카메라를 사용한다. H.265/HEVC와 같은 기존 비디오 코딩 표준을 사용하기 위해, 획득에 의해 얻은 원본 데이터는 매핑되고 재배열 되어야 하고, 최종적으로 직사각형 코딩 영역이 생성되어야 한다.
여기에 개시된 일부 실시예에서, 몰입형 미디어 데이터는 구면에서 2차원 평면으로 매핑된 다음 재배열된다. 재배열 후 인접한 매핑 영역은 기존 구면 표면에 반드시 인접할 필요는 없다. 구면 표면에 인접하지 않은 영역에서는 공간 연속성 특성이 없으며, 함께 인코딩 되면, 최적의 압축률을 얻을 수 없다.
간략한 개요
여기에 설명된 일부 실시예는 매핑되거나 재배열된 데이터 영역의 인접 영역이 구면 표면상에서 서로 인접하는지 여부를 표시하고, 인접한 정보를 사용함으로써 인코딩의 범위를 제어하고, 인접하지 않은 영역을 함께 인코딩 하는 것을 방지하고, 코딩 효율성을 향상시키는 유리한 기술로부터 이익을 얻을 수 있다. 디코딩 할 때, 인접한 정보의 사용은 오류 복구 또는 후처리에 더 표적화될 수 있다.
실시예 I
본 발명의 실시예에 따르면, 구면 좌표 하의 파노라마 이미지 데이터가 수집되고, 파노라마 이미지 데이터는 구면 좌표에서 직각 2차원 좌표로 매핑된 후, 매핑된 이미지는 기존 구면 좌표 하에 재배열된 4개의 위크(weeks)의 각 영역에서 인접한 영역의 인접 관계를 결정하기 위해 재배열 되며, 인접한 관계 정보는 코드 스트림에 기록된다. 코드 스트림을 보내거나 저장한다.
도 1은 본 발명의 실시예에 따른 코드 흐름 처리 방법(100)의 흐름도이다.
단계는 아래와 같다:
단계 101: 구면 좌표 하의 파노라마 이미지를 수집하고 획득하는 단계. 이미지는 카메라 소스 또는 이미지가 저장되는 저장 디바이스로부터 수신될 수 있다.
예를 들어, 구면 좌표에서 파노라마 이미지 데이터는 카메라 획득에 의해 생성된다. 획득 후 다수의 카메라가 동시에 접합되거나 단일 카메라가 다수의 이미지를 캡처한 후 병진 및 회전 동작을 통해 접합할 수 있다.
단계 102: 구면 좌표로부터 2차원 직각 좌표(카아티이젼(Cartesian))로 파노라마 이미지를 매핑하는 단계.
파노라마 이미지 데이터는 설정된 매핑 규칙에 따라 매팅되고 변환되어 2차원 직사각형 이미지 데이터를 생성한다.
매핑 규칙은, 제한되는 것은 아니지만, 실린더 매핑 정방형(ERP: Equirectangular), 큐브 매핑 큐브맵(CMP: Cubemap), 팔면체 매핑 팔면체(OHP: octahedron mapping Octahedron), 이십면체 매핑 이십면체(ISP: Icosahedron), 끝을 자른 피라미드 매핑 끝을 자른 정사각형 피라미드(TSP: Truncated Square Pyramid), 세그먼트 된 구 투영도법(SSP: Segmented Sphere Projection), 조정된 큐브맵 투영도법(ACP: Adjusted Cubemap Projection), 회전된 구 투영도법(RSP: Rotated Sphere Projection), 등각 큐브맵 투영도법(EAC: Equi-angular Cubemap Projection), 적도의 원통 투영도법(ECP: Equatorial Cylindrical Projection), 하이브리드 등각 큐브맵 투영도법(HEC: Hybrid Equi-angular Cubemap Projection), 직선 투영도법을 사용하는 뷰포트 생성(Viewport generation using rectilinear projection), 크래스터 포물선 투영도법(CCP: Crasters Parabolic Projection)등일 수 있다.
도 2a는 구면 좌표계에서 찍힌 다음 다수의 평면(예: 6개의 2-D 표면)에 매핑된 이미지의 예를 보여준다. 도 2a에서, 각 평면 뷰는 동일한 치수(예: W x W x W, 여기서 W는 폭(width), 높이(height) 및 깊이(depth)를 나타냄)를 가질 수 있다. 그렇지 않으면, 2-D 표면 중 일부는 직사각형일 수 있다. 예를 들어, 상자의 치수는 W x D x H 일 수 있고, 여기서 W는 폭, D는 깊이 및 H는 높이이며, W, D 및 H 중 적어도 일부는 서로 다를 수 있다.
도 2b는 2차원 평면에서 대응하는 결과적인 6개의 영역을 보여준다. 영역은 위, 왼쪽, 앞, 오른쪽, 뒤 및 아래 보기 평면(viewing plane)을 나타낸다. 이 특별한 매핑은 종종 큐브 매핑이라고 불린다.
단계 103: 이 단계에서, 매핑 된 2차원 직사각형 이미지의 재배열 또는 재배치가 수행된다. 도 2b에서 일부 이미지 데이터가 이미지 영역에 의해 점유되는 반면, 파선의 직사각형의 나머지 네 모서리에는 대응하는 이미지 데이터가 없다는 것을 알 수 있다.
재배열이 수행된 후, 도 3에 도시된 바와 같이, 완전한 이미지 직사각형 데이터 영역으로부터 비 이미지 데이터 영역을 제거하는 것이 가능할 수 있고, 이는 재배열 이미지가 생성된 후의 스테레오 매핑이다.
도 3에 도시된 재배열 이미지는 일부 영역에서 여전히 시각적 불연속성을 가질 수 있다. 도 4에 도시된 바와 같이 시각적 연속성은 이미지 영역 또는 타일 중 하나를 회전함으로써 확립될 수 있다. 따라서 스테레오 매핑 후 서브 영역의 이러한 회전 및 재배열 이미지는 원본 3D 이미지로부터 모든 정보를 캡처하여 2-D 직사각형 영역상에 간결하고 시각적으로 상관된 방식으로 나타내는 2-D 이미지를 제공한다. 예를 들어, 도 4에 도시된 직사각형 비디오 화상에서, 어느 픽셀도 어떠한 이미지 정보도 나타내지 않는 “더미(dummy)” 픽셀이 아니다.
단계 104: 이 단계에서, 재정렬 후 상이한 영역 사이의 이웃 관계가 결정되고 저장될 수 있다. 이 단계는 재정렬 프로세스 동안 다른 단계와 동시에 구현될 수 있다.
인접 관계는 구면 좌표에서 상이한 영역과 주변 영역이 인접하는지 여부를 포함하고, 표 1은 영역과 주변 영역 사이의 인접 관계 내용의 조직 관계를 보여준다. 표에서, 용어 uimsbf는 “부호 없는 정수 최상위 비트 우선(unsigned integer most significant bit first)”을 나타내고, 용어 “double”은 64비트와 같은 이중 정밀 포맷(double precision format)을 나타낸다.
구문 요소 비트 수 유형
adjacent_info_table() {
table_id
version
length
table_payload {
adjacent_num
i = 0
while( i < N) {
sphere_adjacent_flag
sphere_position_x
sphere_position_y
sphere_position_z
rect_position_x
rect_position_y
rotate_flag
if(rotate_flag == 1)
rotate_degree
user_data()
......
}





N



8
8
32

8


8


32
32
32
32

32


uimsbf
uimsbf
uimsbf

uimsbf


uimsbf


double
double
double
double

double

일부 예시적인 실시예에서, 위에 나열된 구문 요소에 대해 다음 사용이 사용될 수 있다.
table_id: 표의 식별자(identifier of the table);
version: 버전 정보;
length: 길이 정보(비트 또는 바이트 수);
adjacent_num: 인접 영역의 수;
sphere_adjacent_flag: 이 근방이 구면 표면의 현재 영역에 인접한지 여부, 1: 인접함, 0: 인접하지 않음
(sphere_position_x, sphere_position_y, sphere_position_z): 이 근방의 왼쪽 상단 모서리의 구면 표면에 대한 3차원 좌표 정보;
(rect_position_x, rect_position_y): 직사각형 평면 상에서 근방의 왼쪽 상단 모서리의 2차원 좌표 정보;
rotate_flag: 이 근방이 회전되었는지 여부, 1: 회전됨, 0: 회전되지 않음.
rotate_degree: 이 근방의 회전 각도;
user_data(): 사용자 정보.
단계 105: 이 단계에서, 인접한 관계 정보는 3-D 비디오의 비트 스트림 표현의 필드에 기록될 수 있다.
예를 들어, 위의 인접한 관계 정보가 코드 스트림에 기록되었음을 나타내기 위해 표1에 도시된 구문이 사용될 수 있다.
단계 106: 3-D 비디오의 압축된 표현을 생성할 때, 이 단계는 나중에 사용하거나 전송하기 위한 비트 스트림을 전송하거나 저장하는 단계를 포함할 수 있다.
필드는 본 문서에 설명된 기술 중 하나를 사용하여 비트 스트림에 포함될 수 있다.
실시예 II
제1 실시예의 단계 104에서, adjacent_info_table은 비디오 스트림 OMAF에서 RectRegionPacking 구조에 기록될 수 있고, 구체적인 예는 표2에 도시된 바와 같다. 다양한 실시예에서, adjacent_info_table은 시퀀스 레벨 또는 화상 레벨 또는 타일 레벨 또는 NAL 레벨에서 비디오 비트 스트림에 삽입될 수 있다.
aligned(8) class RectRegionPacking(i) {
unsigned int(32) proj_reg_width[i];
unsigned int(32) proj_reg_height[i];
unsigned int(32) proj_reg_top[i];
unsigned int(32) proj_reg_left[i];
unsigned int(3) transform_type[i];
bit(5) reserved = 0;
unsigned int(16) packed_reg_width[i];
unsigned int(16) packed_reg_height[i];
unsigned int(16) packed_reg_top[i];
unsigned int(16) packed_reg_left[i];
adjacent_info_table(i);
}
adjacent_info_table의 예는 표 3에 도시된 바와 같다. 이 예에서, 인접한 정보 표는 표에 존재하는 다수의 정보 요소(adjacent_num)을 포함한다. 그런 다음 표는 영역의 구면 및 직사각형 위치를 각각 나열할 수 있다. 특정 영역이 회전된 경우, 표는 회전 및 회전량을 나타내는 필드를 포함한다.
표 3은 구면 및 직각 좌표계 사이의 변환의 예를 도시하지만, 본 문서에 도시된 다른 좌표계와 그들의 대응하는 2차원 좌표계 표현 사이의 매핑(및, 있는 경우 회전)을 나타내는 유사한 표가 포함될 수 있다. 일부의 경우, 인코더의 좌표계 선택은 시퀀스 또는 화상 레벨에서 비디오 비트 스트림에 시그널링 될 수 있다.
aligned(8) class adjacent_info_table(i) {
unsigned int(8) adjacent_num;
for (j = 0; j < adjacent_num; j++) {
unsigned int(8) sphere_adjacent_flag;
double(32) sphere_position_x;
double(32) sphere_position_y;
double(32) sphere_position_z;
unsigned int(32) rect_position_x;
unsigned int(32) rect_position_y;
unsigned int(8) rotate_flag;
if(rotate_flag == 1)
double(32) rotate_degree;
}
}
실시예 III
실시예 1의 단계 104에서, adjacent_info_table에 대응하는 비트는 표 4에서 도시된 구조에 도시된 바와 같이 비디오 비트 스트림에서 추가 향상 정보(SEI: supplemental enhancement Information) 필드에 저장될 수 있다.
sei_payload( payloadType, payloadSize ) { Descriptor
......
if( payloadType = = ADJACENT_INFO) {
......
adjacent_info_table( payloadSize );
......
}
}
표 2에서, adjacent_info_table()은 실시예 1에 따른 adjacent_info_table 데이터 구조로, 영역의 인접 정보를 포함한다.
adjacent_info 로서 정보를 식별하는 정보는 SEI 정보로부터 얻을 수 있다.
실시예 IV
이 실시예에서, 실시예 I의 단계 104를 참조하면, 비디오 인코더는, 표5에 도시된 구조에서 도시된 바와 같이 비디오 앱 정보 필드(비디오 유용성 정보, VUI)에 adjacent_info_table을 기록할 수 있다. 이 문서의 표에서 다음과 같은 용어가 사용된다.
u(n): n비트를 사용하는 부호가 없는 정수. 구문 표에서 n이 “v”일 때, 비트의 수는 다른 구문 요소의 값에 의해 달라진다.
ue(v): 왼쪽 비트가 우선인 부호 없는 정수 0차 Exp-Golomb 코딩 구문 요소.
vui_parameters( ) { 설명자
......
adjacent_info_flag u(1)
if(adjacent_info_flag) {
......
adjacent_info_table();
......
}
}
표 5에서 adjacent_info_flag값은 “1”과 같으며, 이는 후속 영역 인접 정보가 존재한다는 것을 표시한다.
adjacent_info_table()은 실시예 1에 따른 adjacent_info_table 데이터 구조로, 영역의 인접 정보를 포함한다.
실시예 V
실시예 I의 단계 104에서, adjacent_info_table은 전송 스트림의 설명, 파일 포맷의 데이터 단위(예: 박스)와 같은 시스템 계층 미디어 속성 설명 단위(system Layer Media Property Description unit), 미디어 프레젠테이션 설명 또는 MPD 파일의 미디어 렌더링 설명 정보단위와 같은 전송 스트림의 미디어 설명 정보에 기록될 수 있다.
실시예 VI
실시예 1의 104에서, 영역의 인접한 정보는 H.265/HEVC 표준을 사용하는 시간 도메인 모션의 제한된 타일 세트(시간적 모션 제한 타일 세트 또는 MCTS)와 조합된다. 예시적인 구문은 표 6에 도시된 바와 같다.
아래 구문에서, adjacent_info_flag:0은 인접 영역이 없다는 것을 나타내고, 1은 영역 인접 정보가 있음을 나타낸다.
temporal_motion_constrained_tile_sets( payloadSize ) { 설명자
mc_all_tiles_exact_sample_value_match_flag u(1)
each_tile_one_tile_set_flag u(1)
if( !each_tile_one_tile_set_flag ) {
limited_tile_set_display_flag u(1)
num_sets_in_message_minus1 u(1)
for( i = 0; i <= num_sets_in_message_minus1; i++ ) {
mcts_id[ i ] ue(v)
......
num_tile_rects_in_set_minus1[ i ] ue(v)
for( j = 0; j <= num_tile_rects_in_set_minus1[ i ]; j++ ) {
top_left_tile_index[ i ][ j ] ue(v)
bottom_right_tile_index[ i ][ j ] ue(v)
adjacent_info_flag u(1)
if(adjacent_info_flag == 1)
adjacent_info()
}
......
}
}else {
max_mcs_tier_level_idc_present_flag u(1)
if( mcts_max_tier_level_idc_present_flag ) {
mcts_max_tier_flag u(1)
mcts_max_level_idc u(8)
}
adjacent_info_flag u(1)
if(adjacent_info_flag == 1)
adjacent_info()
}
}
adjacent_info 필드의 예는 표7에 도시된다.
adjacent_info() { 설명자
length ue(v)
adjacent_num ue(v)
i = 0
while( i < N) {
sphere_adjacent_flag u(8)
sphere_position_x ue(v)
sphere_position_y ue(v)
sphere_position_z ue(v)
rect_position_x ue(v)
rect_position_y ue(v)
rotate_flag u(8)
if(rotate_flag == 1)
rotate_degree ue(v)
}
}
이 표에서, 다양한 엔트리는 아래와 같은 정보를 나타내는 값을 가질 수 있다.length: 길이 정보(비트 또는 바이트 단위의 테이블 길이)
adjacent_num: 인접 영역의 수
sphere_adjacent_flag: 이 근방이 구면 표면의 현재 영역에 인접한지 여부, 1: 인접함, 0: 인접하지 않음.
(sphere_position_x, sphere_position_y, sphere_position_z): 구면 표면에서 이 근방의 왼쪽 상단 모서리의 3차원 좌표 정보;
(rect_position_x, rect_position_y): 이 근방의 왼쪽 상단 모서리에서 직사각형 평면상의 2차원 좌표 정보;
rotate_flag: 이 근방이 회전하는지 여부, 1: 회전 후, 0: 회전 없음.
rotate_degree: 이 근방의 회전 각도.
실시예 VII
이 실시예는 비디오 디코더에서 구현될 수 있다. 이 실시예에 따르면, 프로세스 흐름(500)은 도 5에 도시되고, 비디오 디코더는 비트 스트림을 획득(501)할 수 있고, 비디오 스트림으로부터 영역의 인접 정보를 추출(502)할 수 있으며, 위 정보에 따라 비트스트림에서 얻은 영역 데이터를 처리(503)할 수 있다. 비트 스트림 및 인접 관계 정보는 사용자 인터페이스에 표시하기 위해 디코딩 되거나 압축 해제된 이미지를 생성(504)하는데 사용될 수 있다.
다양한 실시예에서, 각각의 상기 단계는 다음과 같이 추가로 구현될 수 있다.
단계 501: 비트 스트림을 획득하는 단계.
비트 스트림은 시스템 계층 정보를 포함하는 비디오 스트림 또는 스트리밍 미디어 스트림일 수 있다. 비트 스트림은 네트워크 정보를 통해 얻거나 하드 드라이브, 광학 디스크 또는 SSM(solid state memory)과 같은 데이터 저장 디바이스로부터 얻을 수 있다.
단계 502: 비트 스트림으로부터 영역 인접 정보를 추출하는 단계.
SEI, VUI, MPD등과 같은 관심 영역 정보에 의해 배치된 상이한 위치에 따라 영역의 주변 정보가 추출된다.
단계 503: 상기 정보에 따라 영역 데이터에 대한 후처리를 수행하는 단계.
H.264/AVC 표준 슬라이스 그룹(Slice Group) 또는 H.265/HEVC 표준 타일(Tile)을 사용하는 코덱 단위와 같은 비디오 코덱 단위와 조합된 영역 주변 정보에 따라, 이미지 데이터는 후처리 된다. 하나의 예시적인 후처리 어플리케이션은 인접한 영역에 대한 경계 필터링을 포함할 수 있다. 이러한 동작은 이미지의 보기 품질(viewing quality)을 향상시키기 위해 수행될 수 있다. 다른 예시적인 후처리 동작은 경계 필터링 없이 인접하지 않은 영역을 처리하는 것을 포함한다. 예를 들어, 근방 영역에 대한 정보를 사용하여 필터링 하는 것은 시각적 불연속 경계를 넘어 필터링이 비활성화 되는 것을 억제할 수 있다. 후처리의 다른 예는 오류 보상 또는 복구일 수 있다. 그러한 동작에서, 특정 위치에서 누락된 시각 정보에 대한 오류 보정은 인접하지 않은 영역 정보 요소를 사용하지 않고, 보상을 위해 인접한 영역의 데이터만을 사용하여 생성될 수 있다. 예를 들어, 비디오 디코더에서 이러한 전략은 사용자에게 시각적으로 연속하여 보이는 이미지를 제공함으로써 비트 스트림에서 누락된 비트로부터 오류의 시각적 명확성을 유리하게 감춘다.
단계 504: 디스플레이를 위해 이미지를 생성하는 단계.
비디오 디코딩(압축 해제) 및 추가적인 후처리 후에, 이미지는 생성될 수 있고 데이터 메모리에 저장 및/또는 디스플레이 디바이스에 디스플레이 될 수 있다.
실시예 VIII
본 실시예에서, 비디오 영역은 입체적인 비디오에 속하고, 영역의 인접 정보는 좌우 시야에서 동시에 사용된다.
실시예 IX
일부 실시예에서, 비디오 데이터 영역은 재배열 없이 인코딩 될 수 있고, 동시에 영역 주변 정보가 생성된다. 인접 영역이 패딩(padding) 영역인 경우, 영역 주변 정보 sphere_adjacent_flag는 2로 설정되어 구면 표면상에 근방이 존재하지 않음을 나타낸다.
구문 요소 비트 수 유형
adjacent_info_table() {
......
table_payload {
adjacent_num
i = 0
while( i < N) {
sphere_adjacent_flag
if(sphere_adjacent_flag != 2)
{
sphere_position_x
sphere_position_y
sphere_position_z
rect_position_x
rect_position_y
rotate_flag
if(rotate_flag == 1)
rotate_degree
......
}
......
}
}
}



N






8


8


32
32
32
32
32
8

32




uimsbf


uimsbf


double
double
double
double
double
uimsbf

double
실시예 X
이 실시예는 실시예 1에서 설명된 비트 스트림 처리 방법(100)에 대응한다. 실시예 10은 도6에 도시된 바와 같이 디바이스(600)에 대응할 수 있다. 디바이스(600)는 다음을 포함한다:
획득 모듈(601)은 구면의 파노라마 비디오 이미지 정보를 수집하도록 구성된다. 이 모듈은 메모리 또는 카메라 프레임 버퍼로부터 비디오 데이터를 읽기 위해 입출력 제어기 회로를 포함할 수 있다. 이 모듈은 비디오 데이터를 읽기 위한 프로세서 실행 가능 명령을 포함할 수 있다.
매핑 재배열 모듈(602)은 구면 파노라마 비디오 이미지 데이터를 매핑 및 재배열하고 영역 주변 정보를 생성하도록 구성된다. 이 모듈은 프로세서 실행 가능 소프트웨어 코드로 구현될 수 있다.
비디오 인코더 모듈(603)은 영역 주변 정보에 따라 재배열된 비디오 이미지 데이터를 인코딩 하도록 구성된다. 비디오 인코더 모듈(603)은 예를 들어 종래의 H.264/H.265 또는 비디오 및 직사각형의 이미지의 인코딩에 적합한 다른 코덱일 수 있다. 비디오 인코더 모듈(603)은 모션 추정/보상을 사용하는 기술 또는 인트라-이미지 코딩 기술을 사용할 수 있다.
디스플레이/전송 모듈(604)은 비디오 인코딩 데이터 또는 미디어 데이터에 대해 저장 또는 네트워크 전송 계층 코딩을 수행하도록 구성되며, 영역의 주변 정보를 포함하는 비디오 데이터를 인코딩 하거나 비디오 데이터 및 인접한 영역의 데이터를 개별적으로 인코딩할 수 있다.
위에서 설명된 획득 디바이스(601), 매핑 재배열 모듈(602), 비디오 인코더(603) 및 전송 모듈(604)은 전용 하드웨어 또는 적절한 소프트웨어와 결합하여 처리를 수행할 수 있는 하드웨어를 사용하여 구현될 수 있다. 이러한 하드웨어 또는 특수 목적 하드웨어는 주문형 집적 회로(ASIC), 다양한 다른 회로, 다양한 프로세서 등을 포함할 수 있다. 프로세서에 의해 구현될 때, 기능은 단일 전용 프로세서, 단일 공유 프로세서 또는 다중 독립 프로세서에 의해 제공될 수 있으며, 이들 중 일부는 공유될 수 있다. 또한, 프로세서는 소프트웨어를 실행할 수 있는 하드웨어를 의미하는 것으로 이해되어서는 안되며, 이에 국한되지 않고 디지털 신호 프로세서(DSP) 하드웨어, 소프트웨어 저장을 위한 읽기 전용 메모리(ROM), 랜덤 액세스 메모리(RAM)에 더하여 비휘발성 저장 디바이스를 암시적으로 포함할 수 있다.
이 실시예에서 디바이스(600)는 모바일 폰, 컴퓨터, 서버, 셋톱 박스, 휴대용 모바일 단말기, 디지털 비디오 카메라, 텔레비전 방송 시스템 디바이스 등과 같은 비디오 애플리케이션의 디바이스일 수 있다.
실시예 XI
이 실시예는 실시예 VII에 설명된 비트 스트림 처리 방법에 대응하고, 실시예 XI는 비디오 코딩을 구현하는 디바이스(700)에 관한 것이다. 도7에 도시된 바와 같이, 디바이스는 다음을 포함한다:
획득 모듈(701)은 네트워크 또는 저장 디바이스로부터 비트 스트림을 획득하고 비디오 인코딩 데이터 또는 미디어 데이터를 포함하는 네트워크 전송 계층 데이터로부터 디코딩을 수행하도록 구성되며, 영역 주변 정보 데이터만을 제안하거나 영역 주변 정보를 포함하는 비디오 데이터를 추출할 수 있다.
인접 영역 정보 처리 모듈(702)은 영역 주변 정보를 분석하도록 구성된다.
비디오 디코더(703)는 비디오 데이터 정보를 디코딩 하거나 파노라마 비디오를 디코딩 하거나, 디코딩을 위해 관심 영역이 위치한 독립적인 디코딩 단위를 추출하도록 구성된다.
디스플레이 디바이스(704)는 파노라마 비디오 이미지를 생성 또는 디스플레이 하거나 부분 인접 영역 이미지 디스플레이를 선택하도록 구성된다.
상기 설명된 전송 모듈(701), 영역 인접 정보 처리 모듈(702), 비디오 디코더(703), 및 디스플레이 디바이스(704)는 전용 하드웨어 또는 적절한 소프트웨어와 결합하여 처리를 수행할 수 있는 하드웨어를 사용함으로써 실현될 수 있다. 이러한 하드웨어 또는 특수 목적 하드웨어는 주문형 집적 회로(ASIC), 다양한 다른 회로, 다양한 프로세서 등을 포함할 수 있다. 프로세서에 의해 구현될 때, 기능은 단일 전용 프로세서, 단일 공유 프로세서 또는 다중 독립 프로세서에 의해 제공될 수 있으며, 이들의 일부는 공유될 수 있다. 또한, 프로세서는 소프트웨어를 실행할 수 있는 하드웨어를 나타내는 것으로 이해되어서는 안되며, 이에 국한되는 것은 아니지만, 디지털 신호 프로세서(DSP) 하드웨어, 읽기 전용 메모리(ROM), 랜덤 액세스 메모리(RAM) 및 비 휘발성 저장 디바이스를 암시적으로 포함할 수 있다.
본 실시예의 디바이스는 모바일 폰, 컴퓨터, 서버, 셋톱 박스, 휴대형 이동 단말기, 디지털 비디오 카메라, 텔레비전 방송 시스템 디바이스 등과 같은 비디오 애플리케이션 디바이스일 수 있다.
실시예 XII
도 9는 구면 좌표계에서 몰입형 비디오 화상의 예를 보여준다. 이 좌표계는 도 2a에 도시된 좌표계와 유사하다. 시각적 피처1 및 시각적 피처2로 표시된 2개의 시각적 피처가 도9에 도시된다. 이러한 피처는 실제 세계에서 단단한 물체의 시각적 표현일 수 있다. 시각적 피처1은 구면 좌표계의 곡면을 따라 놓여 있으며 상단과 왼쪽 모두에서 볼 수 있다. 유사하게, 시각적 피처2는 왼쪽에서 볼 수 있으며 하단에서도 계속 볼 수 있다. 이러한 구면 표현의 치수는 W x H x D일 수 있으며, 여기서 W, H 및 D는 일반적으로 다른 양일 수 있다.
도 10은 2차원 직각 좌표계로의 도9의 구면 뷰의 매핑을 보여준다. 도면에서 볼 수 있듯이, 시각적 피처1 및 2 모두 위/아래 및 왼쪽/아래 보기 각각의 가장자리에 걸쳐 분할된다.
이것은 정보의 손실을 나타내지 않으며 디코더 측에서 재 매핑은 문서에 설명된 인접한 정보 표를 사용하여 시각적 연속성을 복원할 수 있지만, 모션 예측 및 모션 후 보상 필터링과 같은 특정 비디오 처리는 경계에서 인공물을 만드는 경향이 있다. 이러한 인공물은 본 기술을 사용하여 제거되거나 억제될 수 있다.
도 11은 시각적 피처1 및 시각적 피처2와 같은 시각적 피처의 시각적 연속성을 재확립하기 위해 일부 영역이 회전되는 2차원 좌표계에서 영역의 매핑 및 재정렬을 나타낸다. 매핑 및 회전 후, 결과 비디오 화상은 2*W + D폭 및 2*H 높이이다. 이 예에서, 영역 중 하나는 시계 반대 방향으로 180도 회전되고 다른 영역은 시계 방향으로 90도(또는 시계 반대 방향으로 270도) 회전된다. 이 실시예의 하나의 유리한 측면은 매핑과 회전으로 인해, H, W 및 D가 다른 값을 가질 수 있는 경우에도 결과적인 2차원 화상이 직사각형 화상이라는 것이다. 따라서, 이 방식은 매핑 동작동안 상이한 차원의 경계 박스를 사용하여 3차원 몰입형 비디오가 캡처되는 경우에도 작동한다.
도 8은 본 문서에 설명된 인코더 측 또는 디코더 측 기술을 구현하는데 사용될 수 있는 예시적인 장치(800)를 도시한다. 장치(800)는 인코더 측 또는 디코더 측 또는 둘 다를 수행하도록 구성될 수 있는 프로세서(802)를 포함한다. 장치(800)는 또한 프로세서 실행 가능 명령어를 저장하고 비디오 비트 스트림 및/또는 디스플레이 데이터를 저장하기 위한 메모리(도시되지 않음)를 포함할 수 있다. 장치(800)는 변환 회로, 산술 코딩/디코딩 회로, 룩업 테이블 기반의 코딩 기술등과 같은 비디오 처리 회로(도시되지 않음)를 포함할 수 있다. 비디오 처리 회로는 부분적으로 프로세서에 포함될 수 있고/있거나 그래픽 프로세서, FPGA(Field Programmable Gate Array) 등과 같은 다른 전용 회로에 부분적으로 포함될 수 있다.
개시된 기술 중 일부는 다음 항목 기반 설명을 사용하여 설명될 수 있다.
1. 비디오 또는 화상 처리를 위한 방법으로서, 3차원 좌표에서 파노라마 이미지의 다중 영역을 포함하는 2차원 이미지인 인코딩된 비디오 이미지를 포함하는 비디오 비트 스트림을 획득하는 단계; 다중 영역에 대한 주변 정보를 추출하는 단계; 주변 정보를 사용하여, 비디오 비트 스트림으로부터 디코딩 된 비디오 이미지의 후처리를 수행하는 단계; 및 후처리 후에 비디오 이미지로부터 디스플레이 이미지를 생성하는 단계를 포함한다.
항목 1의 방법은 단일 화상 또는 비디오 비트 스트림과 같은 화상의 시퀀스를 디코딩 하기위해 사용될 수 있다. 도 5 및 관련 설명은 항목 1의 방법의 추가적인 실시예 및 피처를 설명한다.
2. 비디오 또는 화상 처리 방법은: 3차원 좌표로 표현된 파노라마 이미지를 획득하는 단계; 파노라마 이미지를 다중 영역을 포함하는 2차원 이미지로 매핑하는 단계; 다중 영역의 주변 정보를 결정하는 단계; 주변 정보를 포함하는 파노라마 이미지로부터 비디오 비트 스트림을 생성하는 단계; 및 비디오 비트 스트림을 전송하거나 저장하는 단계를 포함한다.
항목 2의 방법은 단일 화상 또는 비디오 비트 스트림과 같은 화상 시퀀스를 인코딩 하기 위해 사용될 수 있다. 도 1 및 관련 설명은 항목 2의 방법의 추가적인 실시예 및 피처를 설명한다.
3. 항목 1-2의 방법에서, 상기 주변 정보는 추가 향상 정보(SEI) 필드에서 비트 스트림에 포함된다.
4. 항목 1-2의 방법에서, 상기 주변 정보는 비디오 사용성 정보(VUI) 필드에서 비트 스트림에 포함된다.
5. 항목 1-2의 방법에서, 상기 주변 정보는 미디어 프레젠테이션 설명(MPD) 포맷에 포함된다.
6. 항목 1-5 중 임의의 방법에서, 상기 주변 정보는 다중 영역의 영역에 대해, 하나 이상의 인접한 영역의 개수, 하나 이상의 인접 영역에 대한 3차원 좌표 및 직각 좌표 또는 하나 이상의 인접 영역의 회전 표시를 포함하는 정보를 포함한다.
7. 항목 6의 방법에서, 상기 주변 정보는 하나 이상의 인접 영역에 대한 하나 이상의 회전 각도를 더 포함한다.
8. 항목 4-5 중 임의의 방법에서, 상기 주변 정보는 인접 정보 표를 포함한다.
9. 항목 1-8 중 임의의 방법에서, 상기 3차원 좌표는 원통 좌표 정방형(ERP: Equirectangular) 매핑, 큐브 매핑, 팔면체 매핑, 이십면체 매핑 이십면체(Icosahedron), 끝을 자른 피라미드 매핑, 세그먼트 된 구 투영도법 또는 끝을 자른 정사각형 피라미드를 포함한다.
10. 제2항 내지 9항 중 어느 한 항에 기재된 방법을 구현하도록 구성된 프로세서를 포함하는 비디오 인코더 장치.
11. 제1항 또는 제3항 내지 9항 중 어느 한 항에 기재된 방법을 구현하도록 구성된 프로세서를 포함하는 비디오 디코더 장치.
12. 프로세서에 의해 실행될 때, 프로세서가 제1항 내지 9항 중 어느 한 항에 기재된 방법을 구현하도록 하는 코드가 저장된 컴퓨터 프로그램 제품.
항목에 설명된 기술의 추가적인 실시예 및 피처는 본 문서를 통해 개시된다.
당업자는 상기 단계의 전부 또는 일부가 읽기 전용 메모리, 자기 디스크 또는 광 디스크와 같은 관련 하드웨어에 명령하는 프로그램에 의해 달성될 수 있음을 인식할 것이다. 대안적으로, 상기 실시예의 단계의 전부 또는 일부는 또한 하나 이상의 집적 회로를 사용하여 구현될 수 있다. 이에 대응하여, 상기 실시예에서 각 모듈/유닛은 하드웨어 형태로 구현되거나 소프트웨어 기능 모듈의 형태로 구현될 수 있다. 발명은 하드웨어와 소프트웨어의 조합의 임의의 특정 형태에 제한되지 않는다.
이 문서에 설명된 개시된 및 다른 실시예, 모듈 및 기능적 동작은 본 문서에 개시된 구조 및 그들의 구조적 등가물 또는 그들의 하나 이상의 조합을 포함하는 디지털 전자 회로 또는 컴퓨터 소프트웨어, 펌웨어, 또는 하드웨어에서 구현될 수 있다. 개시된 및 다른 실시예는 하나 이상의 컴퓨터 프로그램 제품 즉, 데이터 처리 장치에 의해 실행되거나 데이터 처리 장치의 동작을 제어하기 위해 컴퓨터 판독 가능 매체상에 인코딩 된 컴퓨터 프로그램 명령의 하나이상의 모듈로서 구현될 수 있다. 컴퓨터 판독 가능 매체는 기계 판독 가능 저장 디바이스, 기계 판독 가능 저장 기판, 메모리 디바이스, 기계 판독 가능 전파 신호에 영향을 미치는 물질의 구성 또는 그들의 하나 이상의 조합일 수 있다. 용어 “데이터 처리 장치”는 예를 들어 프로그래밍 가능 프로세서, 컴퓨터, 또는 다중의 프로세서 또는 컴퓨터를 포함하는 모든 장치(apparatus), 디바이스(device) 및 데이터 처리를 위한 기계를 포함한다. 장치는 하드웨어에 추가하여 문제의 컴퓨터 프로그램에 대한 실행 환경을 생성하는 코드, 예를 들어 프로세서 펌웨어, 프로토콜 스택, 데이터 베이스 관리 시스템, 운영 체제 또는 이들의 하나 이상의 조합을 구성하는 코드를 포함할 수 있다. 전파된 신호는 인공적으로 생성된 신호, 예를 들어, 적절한 수신기 장치로 전송하기 위해 정보를 인코딩 하도록 생성되는 기계 생성 전기, 광학 또는 전자기 신호이다.
컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 어플리케이션, 스크립트 또는 코드라고 알려지기도 함)은 컴파일 되거나 해석된 언어를 포함하는 모든 형태의 프로그래밍 언어로 작성될 수 있고, 독립된 프로그램 또는 컴퓨팅 환경에 사용하기에 적합한 모듈, 구성요소, 서브루틴 또는 다른 단위를 포함하는 임의의 형태로 배포될 수 있다. 컴퓨터 프로그램은 반드시 파일 시스템의 파일에 대응하는 것은 아니다. 프로그램은 다른 프로그램 또는 데이터를 보유하는 파일의 일부(예: 마크업 언어 문서에 저장된 하나 이상의 스크립트), 해당 프로그램의 전용 단일 파일 또는 다수의 조정된 파일(예: 하나 이상의 모듈, 서브 프로그램 또는 코드의 일부를 저장하는 파일)에 저장될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터 또는 하나의 사이트에 위치하거나 여러 사이트에 분산되고 통신 네트워크에 의해 상호 연결된 다수의 컴퓨터상에서 실행되도록 배포될 수 있다.
이 문서에 설명된 프로세스 및 논리 흐름은 입력 데이터에 대해 동작하고 출력을 생성함으로써 기능을 수행하기 위해 하나 이상의 컴퓨터 프로그램을 실행하는 하나 이상의 프로그래밍 가능 프로세서에 의해 수행될 수 있다. 프로세스 및 로직 흐름은 또한 FPGA(Field Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)과 같은 특수 목적 논리 회로에 의해 그리고 특수 목적 논리 회로로서 또한 구현될 수 있는 장치에 의해 수행될 수 있다.
컴퓨터 프로그램의 실행에 적합한 프로세서는 예로서 범용 및 특수 목적의 마이크로 프로세서 및 임의의 종류의 디지털 컴퓨터의 임의의 하나 이상의 프로세서를 포함한다. 일반적으로, 프로세서는 읽기 전용 메모리 또는 랜덤 액세스 메모리 또는 둘 다로부터 명령어 및 데이터를 수신할 것이다. 컴퓨터의 필수 요소는 명령어를 수행하기 위한 프로세서와 명령어 및 데이터를 저장하기 위한 하나 이상의 메모리 디바이스이다. 일반적으로, 컴퓨터는 또한 데이터를 저장하기 위한 하나 이상의 대용량 저장 디바이스, 예를 들어, 자기(magnetic), 광자기 디스크 또는 광디스크로부터 데이터를 수신하거나 이들에게 데이터를 전송하거나 또는 둘 모두를 포함하거나 작동 가능하도록 결합될 것이다. 그러나 컴퓨터는 이러한 디바이스가 필요하지 않다. 컴퓨터 프로그램 명령어 및 데이터를 저장하는데 적합한 컴퓨터 판독가능 미디어는 예를 들어, EPROM, EEPROM 및 플래시 메모리 디바이스와 같은 예시적인 반도체 메모리 디바이스를 포함하는 모든 형태의 비휘발성 메모리, 매체 및 메모리 디바이스, 예를 들어 내부 하드 디스크 또는 이동식 디스크와 같은 자기 디스크, 광자기 디스크 및 CD ROM과 DVD-ROM 디스크를 포함한다. 프로세서 및 메모리는 특수 목적 논리 회로에 의해 보완되거나 이에 통합될 수 있다.
이 특허 문서는 많은 세부사항을 포함하지만, 이는 임의의 발명 범위 또는 청구된 것으로 제한되어 해석되어서는 안되며, 오히려 특정 발명의 특정 실시예로 특정할 수 있는 특징의 설명으로 해석되어야 한다. 개별 실시예의 맥락에서 이 특허 문서에 설명된 특정 피처는 또한 단일 실시예에서 조합하여 구현될 수 있다. 반대로, 단일 실시예의 맥락에서 설명된 다양한 피처는 또한 다수의 실시예에서 각각 또는 임의의 적합한 하위 조합으로 구현될 수 있다. 또한, 피처가 특정 조합으로 작용하는 것으로 위에서 설명될 수 있고 심지어 처음에 그렇게 청구될 수 있지만, 청구된 조합 으로부터 하나 이상의 피처는 일부의 경우 조합 으로부터 삭제될 수 있고, 청구된 조합은 하위 조합 또는 하위 조합의 변형으로 향할 수 있다.
유사하게, 동작이 특정 순서로 도면에 도시되지만, 이는 그러한 동작이 도시된 특정 순서 또는 순차적인 순서로 수행되거나 바람직한 달성을 위해 모든 도시된 동작이 수행되어야 하는 것을 요구하는 것으로 이해되어서는 안된다. 더욱이, 본 특허 문서에 설명된 실시예 들에서 다양한 시스템 구성요소들의 분리는 모든 실시예에서 그러한 분리를 요구하는 것으로 이해되어서는 안된다.
단지 몇 가지 구현 및 예가 설명되고 다른 구현, 향상 및 변형이 이 특허 문서에 설명되고 도시된 것을 기반으로 하여 이루어질 수 있다.

Claims (19)

  1. 비디오 또는 화상을 처리하는 방법으로서,
    3차원 좌표에서 파노라마 이미지의 다중 영역을 포함하는 2차원 이미지인 인코딩 된 비디오 이미지를 포함하는 비디오 비트 스트림을 획득하는 단계;
    상기 다중 영역에 대한 주변 정보를 추출하는 단계;
    상기 주변 정보를 사용하여, 상기 비디오 비트 스트림으로부터 디코딩 된 비디오 이미지의 후 처리를 수행하는 단계; 및
    상기 후 처리 후에 상기 비디오 이미지로부터 디스플레이 이미지를 생성하는 단계를 포함하는 방법.
  2. 제1항에 있어서,
    상기 주변 정보는 추가 향상 정보(SEI: Supplemental Enhancement Information) 필드에서 상기 비디오 비트 스트림에 포함되는 방법.
  3. 제1항 내지 2항 중 어느 한 항에 있어서,
    상기 주변 정보는 비디오 사용성 정보(VUI: Video Usability Information) 필드에서 상기 비트 스트림에 포함되는 방법.
  4. 제1항 내지 3항 중 어느 한 항에 있어서,
    상기 주변 정보는 미디어 프레젠테이션 설명(MPD: Media Presentation Description) 포맷에 포함되는 방법.
  5. 제1항 내지 3항 중 어느 한 항에 있어서,
    상기 주변 정보는, 상기 다중 영역의 영역에 대해, 하나 이상의 인접 영역의 개수, 상기 하나 이상의 인접 영역의 3차원 좌표 및 직각 좌표 또는 상기 하나 이상의 인접 영역의 회전 표시를 포함하는 정보를 포함하는 방법.
  6. 제5항에 있어서,
    상기 주변 정보는 상기 하나 이상의 인접 영역에 대한 하나 이상의 회전 각도를 더 포함하는 방법.
  7. 제5항 내지 6항 중 어느 한 항에 있어서,
    상기 주변 정보는 인접 정보 테이블을 포함하는 방법.
  8. 제1항 내지 7항 중 어느 한 항에 있어서,
    상기 3차원 좌표는 실린더 좌표 정방형(ERP) 매핑, 큐브 매핑, 팔면체 매핑, 이십면체 매핑 이십면체, 끝을 자른 피라미드 매핑, 세그먼트 된 구 투영도법 또는 끝을 자른 정사각형 피라미드를 포함하는 방법.
  9. 비디오 또는 화상 처리 방법으로서,
    3차원 좌표로 표현된 파노라마 이미지를 획득하는 단계;
    다중 영역을 포함하는 2차원 이미지로 상기 파노라마 이미지를 매핑하는 단계;
    상기 다중 영역의 주변 정보를 결정하는 단계;
    상기 주변 정보를 포함하는 상기 파노라마 이미지로부터 비디오 비트 스트림을 생성하는 단계; 및
    상기 비디오 비트 스트림을 전송하거나 저장하는 단계를 포함하는 방법.
  10. 제9항에 있어서,
    상기 주변 정보는 SEI 필드에서 상기 비디오 비트 스트림에 포함되는 방법.
  11. 제9항에 있어서,
    상기 주변 정보는 VUI 필드에서 상기 비디오 비트 스트림에 포함되는 방법.
  12. 제9항에 있어서,
    상기 주변 정보는 MPD 포맷에 포함되는 방법.
  13. 제9항 내지 12항 중 어느 한 항에 있어서,
    상기 주변 정보는, 상기 다중 영역의 영역에 대해, 하나 이상의 인접 영역의 개수, 상기 하나 이상의 인접 영역에 대한 3차원 좌표 및 직각 좌표 또는 상기 하나 이상의 인접 영역의 회전 표시를 포함하는 정보를 포함하는 방법.
  14. 제13항에 있어서,
    상기 주변 정보는 상기 하나 이상의 인접 영역에 대한 하나 이상의 회전 각도를 더 포함하는 방법.
  15. 제11항 내지 12항 중 어느 한 항에 있어서,
    상기 주변 정보는 인접 정보 테이블을 포함하는 방법.
  16. 제1항 내지 8항 중 어느 한 항에 있어서,
    상기 3차원 좌표는 실린더 좌표 정방형(ERP) 매핑, 큐브 매핑, 팔면체 매핑, 이십면체 매핑 이십면체, 끝을 자른 피라미드 매핑, 세그먼트 된 구 투영도법 또는 끝을 자른 정사각형 피라미드를 포함하는 방법.
  17. 비디오 인코더 장치에 있어서,
    제9항 내지 16항 중 임의의 하나 이상의 항에 기재된 방법을 구현하도록 구성된 프로세서를 포함하는 장치.
  18. 비디오 디코더 장치에 있어서,
    제1항 내지 8항 중 임의의 하나 이상의 항에 기재된 방법을 구현하도록 구성된 프로세서를 포함하는 장치.
  19. 컴퓨터 프로그램 제품에 있어서,
    프로세서에 의해 실행될 때, 상기 프로세서가 제1항 내지 16항 중 임의의 하나 이상의 항에 기재된 방법을 구현하게 하는 코드가 저장된 제품.
KR1020217021481A 2018-12-14 2018-12-14 몰입형 비디오 비트 스트림 처리 KR20210094646A (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/121093 WO2020034509A1 (en) 2018-12-14 2018-12-14 Immersive video bitstream processing

Publications (1)

Publication Number Publication Date
KR20210094646A true KR20210094646A (ko) 2021-07-29

Family

ID=69525016

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217021481A KR20210094646A (ko) 2018-12-14 2018-12-14 몰입형 비디오 비트 스트림 처리

Country Status (6)

Country Link
US (1) US11948268B2 (ko)
EP (1) EP3895425A4 (ko)
JP (1) JP7271672B2 (ko)
KR (1) KR20210094646A (ko)
CN (1) CN113228658B (ko)
WO (1) WO2020034509A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115543083A (zh) * 2022-09-29 2022-12-30 歌尔科技有限公司 图像显示方法、装置及电子设备
WO2024077799A1 (en) * 2022-10-11 2024-04-18 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method and system for image data processing

Family Cites Families (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170118475A1 (en) * 2015-10-22 2017-04-27 Mediatek Inc. Method and Apparatus of Video Compression for Non-stitched Panoramic Contents
WO2017142353A1 (ko) * 2016-02-17 2017-08-24 엘지전자 주식회사 360 비디오를 전송하는 방법, 360 비디오를 수신하는 방법, 360 비디오 전송 장치, 360 비디오 수신 장치
US11019257B2 (en) * 2016-05-19 2021-05-25 Avago Technologies International Sales Pte. Limited 360 degree video capture and playback
EP3761645A1 (en) * 2016-05-26 2021-01-06 Vid Scale, Inc. Methods and apparatus of viewport adaptive 360 degree video delivery
US20180020238A1 (en) * 2016-07-15 2018-01-18 Mediatek Inc. Method and apparatus for video coding
US10313763B2 (en) * 2016-07-29 2019-06-04 Mediatek, Inc. Method and apparatus for requesting and receiving selected segment streams based on projection information
US20180054613A1 (en) * 2016-08-22 2018-02-22 Mediatek Inc. Video encoding method and apparatus with in-loop filtering process not applied to reconstructed blocks located at image content discontinuity edge and associated video decoding method and apparatus
CN117201817A (zh) 2016-09-02 2023-12-08 Vid拓展公司 用于用信号通知360度视频信息的方法和系统
KR102352933B1 (ko) 2016-09-09 2022-01-20 삼성전자주식회사 3차원 이미지를 프로세싱하기 위한 방법 및 장치
WO2018048223A1 (ko) * 2016-09-09 2018-03-15 삼성전자 주식회사 3차원 이미지를 프로세싱하기 위한 방법 및 장치
EP3301933A1 (en) * 2016-09-30 2018-04-04 Thomson Licensing Methods, devices and stream to provide indication of mapping of omnidirectional images
EP3301928A1 (en) * 2016-09-30 2018-04-04 Thomson Licensing Methods, devices and stream to encode global rotation motion compensated images
US11212496B2 (en) * 2016-10-07 2021-12-28 Vid Scale, Inc. Geometry conversion and frame packing associated with 360-degree videos
KR20180042098A (ko) * 2016-10-17 2018-04-25 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
US20180109810A1 (en) * 2016-10-17 2018-04-19 Mediatek Inc. Method and Apparatus for Reference Picture Generation and Management in 3D Video Compression
WO2018074813A1 (ko) * 2016-10-17 2018-04-26 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
US10432856B2 (en) * 2016-10-27 2019-10-01 Mediatek Inc. Method and apparatus of video compression for pre-stitched panoramic contents
EP3542530B1 (en) * 2016-11-17 2023-04-05 Intel Corporation Suggested viewport indication for panoramic video
US10573076B2 (en) * 2016-12-14 2020-02-25 Mediatek Inc. Method and apparatus for generating and encoding projection-based frame with 360-degree content represented by rectangular projection faces packed in viewport-based cube projection layout
US10827160B2 (en) 2016-12-16 2020-11-03 Samsung Electronics Co., Ltd Method for transmitting data relating to three-dimensional image
CN110073657B (zh) * 2016-12-16 2022-01-21 三星电子株式会社 用于传输与三维图像相关的数据的方法
WO2018123645A1 (ja) * 2016-12-28 2018-07-05 ソニー株式会社 生成装置、識別情報生成方法、再生装置および画像再生方法
US20180192074A1 (en) * 2017-01-03 2018-07-05 Mediatek Inc. Video processing method for processing projection-based frame with 360-degree content represented by projection faces packed in 360-degree virtual reality projection layout
WO2018128247A1 (ko) * 2017-01-03 2018-07-12 엘지전자 주식회사 360도 비디오에 대한 영상 코딩 시스템에서 인트라 예측 방법 및 장치
WO2018154130A1 (en) * 2017-02-27 2018-08-30 Koninklijke Kpn N.V. Processing spherical video data
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
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
RU2019128700A (ru) * 2017-03-17 2021-03-15 Вид Скейл, Инк. Прогнозирующее кодирование для 360-градусного видео на основе геометрического дополнения
KR102305633B1 (ko) * 2017-03-17 2021-09-28 엘지전자 주식회사 퀄리티 기반 360도 비디오를 송수신하는 방법 및 그 장치
US10643301B2 (en) * 2017-03-20 2020-05-05 Qualcomm Incorporated Adaptive perturbed cube map projection
WO2018171758A1 (en) * 2017-03-24 2018-09-27 Mediatek Inc. Method and apparatus for deriving vr projection, packing, roi and viewport related tracks in isobmff and supporting viewport roll signaling
GB2573951A (en) * 2017-04-05 2019-11-20 Mediatek Inc Method and apparatus for processing projection-based frame with at least one projection face generated using non-uniform mapping
KR20230079466A (ko) * 2017-04-11 2023-06-07 브이아이디 스케일, 인크. 면 연속성을 사용하는 360 도 비디오 코딩
US11184641B2 (en) * 2017-05-09 2021-11-23 Koninklijke Kpn N.V. Coding spherical video data
US20190387212A1 (en) * 2017-05-26 2019-12-19 Lg Electronics Inc. 360 video processing method and apparatus therefor
US10893256B2 (en) * 2017-06-26 2021-01-12 Nokia Technologies Oy Apparatus, a method and a computer program for omnidirectional video
US10484682B2 (en) * 2017-07-03 2019-11-19 Qualcomm Incorporated Reference picture derivation and motion compensation for 360-degree video coding
US10798417B2 (en) * 2017-07-05 2020-10-06 Qualcomm Incorporated Deblock filtering for 360-degree video coding
CN110870303B (zh) * 2017-07-13 2021-10-08 联发科技(新加坡)私人有限公司 呈现超出全方位媒体的vr媒体的方法和装置
KR102468596B1 (ko) * 2017-07-31 2022-11-21 에스케이텔레콤 주식회사 360 영상을 부호화 또는 복호화하기 위한 방법 및 장치
WO2019054611A1 (ko) * 2017-09-14 2019-03-21 삼성전자 주식회사 전자 장치 및 그 동작방법
US11418816B2 (en) * 2017-09-20 2022-08-16 Vid Scale, Inc. Handling face discontinuities in 360-degree video coding
KR102322508B1 (ko) * 2017-09-28 2021-11-05 엘지전자 주식회사 스티칭 및 리프로젝션 관련 메타데이터를 이용한 6dof 비디오를 송수신하는 방법 및 그 장치
CN107871304B (zh) * 2017-11-29 2020-05-12 中国科学技术大学 基于球面环切和仿射变换的全景视频帧矩形映射方法
EP3741108A4 (en) * 2018-01-17 2021-10-13 Nokia Technologies Oy APPARATUS, PROCESS AND COMPUTER PROGRAM FOR OMNIDIRECTIONAL VIDEO
US10764605B2 (en) * 2018-02-14 2020-09-01 Qualcomm Incorporated Intra prediction for 360-degree video
US10721465B2 (en) * 2018-02-14 2020-07-21 Qualcomm Incorporated Motion compensation for cubemap packed frames
US11212438B2 (en) * 2018-02-14 2021-12-28 Qualcomm Incorporated Loop filter padding for 360-degree video coding
US10922783B2 (en) * 2018-03-02 2021-02-16 Mediatek Inc. Cube-based projection method that applies different mapping functions to different square projection faces, different axes, and/or different locations of axis
US11069026B2 (en) * 2018-03-02 2021-07-20 Mediatek Inc. Method for processing projection-based frame that includes projection faces packed in cube-based projection layout with padding
WO2019166107A1 (en) * 2018-03-02 2019-09-06 Huawei Technologies Co., Ltd. Apparatus and method for picture coding with selective loop-filtering
US20190281273A1 (en) * 2018-03-08 2019-09-12 Mediatek Inc. Adaptive loop filtering method for reconstructed projection-based frame that employs projection layout of 360-degree virtual reality projection
US10659780B2 (en) * 2018-03-09 2020-05-19 Mediatek Inc. De-blocking method for reconstructed projection-based frame that employs projection layout of 360-degree virtual reality projection
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
CN110349226B (zh) * 2018-04-01 2021-06-01 浙江大学 一种全景图像处理方法及装置
EP3714597B1 (en) * 2018-04-03 2023-10-25 Samsung Electronics Co., Ltd. Methods and apparatus for determining rotation angle for spherical multimedia content
US11303923B2 (en) * 2018-06-15 2022-04-12 Intel Corporation Affine motion compensation for current picture referencing
WO2020053329A1 (en) * 2018-09-14 2020-03-19 Koninklijke Kpn N.V. Video coding based on global motion compensated motion vectors
EP3850850A1 (en) * 2018-09-14 2021-07-21 Koninklijke KPN N.V. Video coding based on global motion compensated motion vector predictors

Also Published As

Publication number Publication date
JP2022513487A (ja) 2022-02-08
WO2020034509A1 (en) 2020-02-20
CN113228658A (zh) 2021-08-06
EP3895425A4 (en) 2021-12-15
US20210312588A1 (en) 2021-10-07
JP7271672B2 (ja) 2023-05-11
CN113228658B (zh) 2023-10-17
EP3895425A1 (en) 2021-10-20
US11948268B2 (en) 2024-04-02

Similar Documents

Publication Publication Date Title
EP3669333B1 (en) Sequential encoding and decoding of volymetric video
US11962744B2 (en) Image data encoding/decoding method and apparatus
US11457231B2 (en) Methods and apparatus for signaling spatial relationships for point cloud multimedia data tracks
US20200153885A1 (en) Apparatus for transmitting point cloud data, a method for transmitting point cloud data, an apparatus for receiving point cloud data and/or a method for receiving point cloud data
CN107454468B (zh) 对沉浸式视频进行格式化的方法、装置和流
US20190373245A1 (en) 360 video transmission method, 360 video reception method, 360 video transmission device, and 360 video reception device
US11004173B2 (en) Method for processing projection-based frame that includes at least one projection face packed in 360-degree virtual reality projection layout
WO2018001194A1 (en) Method and apparatus of inter coding for vr video using virtual reference frames
JP7177034B2 (ja) レガシー及び没入型レンダリングデバイスのために没入型ビデオをフォーマットする方法、装置、及びストリーム
US11968349B2 (en) Method and apparatus for encoding and decoding of multiple-viewpoint 3DoF+ content
JP7332605B2 (ja) ビデオビットストリームの復号化、生成方法および装置、記憶媒体、電子機器
US11948268B2 (en) Immersive video bitstream processing
EP3939315A1 (en) A method and apparatus for encoding and rendering a 3d scene with inpainting patches
KR20220069086A (ko) 볼류메트릭 비디오를 인코딩, 송신 및 디코딩하기 위한 방법 및 장치
WO2019115867A1 (en) An apparatus, a method and a computer program for volumetric video
US20230042874A1 (en) Volumetric video with auxiliary patches
US20200374558A1 (en) Image decoding method and device using rotation parameters in image coding system for 360-degree video
US20230308674A1 (en) Method and apparatus for encoding/decoding image on basis of cpi sei message, and recording medium having bitstream stored therein
US20220377302A1 (en) A method and apparatus for coding and decoding volumetric video with view-driven specularity
KR20180109655A (ko) 3차원 이미지에 관한 데이터를 전송하기 위한 방법
EP3709659A1 (en) A method and apparatus for encoding and decoding volumetric video
WO2019162564A1 (en) An apparatus, a method and a computer program for volumetric video
CN110870320A (zh) 用于针对虚拟现实应用程序发送信号通知投影区域的系统和方法
US20230362409A1 (en) A method and apparatus for signaling depth of multi-plane images-based volumetric video
WO2024061660A1 (en) Dynamic structures for volumetric data coding

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal