KR20150063126A - 비디오 인코딩 및 디코딩 방법, 장치 및 시스템 - Google Patents

비디오 인코딩 및 디코딩 방법, 장치 및 시스템 Download PDF

Info

Publication number
KR20150063126A
KR20150063126A KR1020157010905A KR20157010905A KR20150063126A KR 20150063126 A KR20150063126 A KR 20150063126A KR 1020157010905 A KR1020157010905 A KR 1020157010905A KR 20157010905 A KR20157010905 A KR 20157010905A KR 20150063126 A KR20150063126 A KR 20150063126A
Authority
KR
South Korea
Prior art keywords
independently decodable
picture
video
area
region
Prior art date
Application number
KR1020157010905A
Other languages
English (en)
Other versions
KR101661436B1 (ko
Inventor
시아오펭 양
유안유안 장
텡 쉬
Original Assignee
후아웨이 테크놀러지 컴퍼니 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 후아웨이 테크놀러지 컴퍼니 리미티드 filed Critical 후아웨이 테크놀러지 컴퍼니 리미티드
Publication of KR20150063126A publication Critical patent/KR20150063126A/ko
Application granted granted Critical
Publication of KR101661436B1 publication Critical patent/KR101661436B1/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/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • H04N13/0048
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/162User input
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • 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/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/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/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/16Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter for a given display mode, e.g. for interlaced or progressive display mode

Landscapes

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

Abstract

비디오 인코딩 및 디코딩 방법, 장치 및 시스템이 개시되어 있다. 이 비디오 인코딩 방법은 비디오에 대응하는 구성 파일에 따라 인코딩될 픽처에서의 독립적으로 디코딩가능한 뷰를 결정하는 단계; 픽처를 적어도 2개의 타일로 분할하는 단계 - 독립적으로 디코딩가능한 뷰를 커버하는 하나 이상의 타일에 대응하는 영역은 독립적으로 디코딩가능한 영역임 -; 픽처에 대응하는 보조 메시지를 생성하는 단계 - 보조 메시지는 독립적으로 디코딩가능한 영역의 위치 식별자를 포함하고, 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일 ID를 포함함 -; 및 인코딩된 비디오 코드 스트림을 형성하기 위해서 픽처에 포함된 모든 타일을 인코딩하는 단계를 포함하고, 인코딩된 비디오 코드 스트림은 보조 메시지를 포함한다. 이 인코딩된 비디오 코드 스트림을 디코딩하는 것은 디코더의 성능 요건을 감소시키며, 디코딩 효율을 개선할 수 있다.

Description

비디오 인코딩 및 디코딩 방법, 장치 및 시스템{METHOD, APPARATUS AND SYSTEM FOR ENCODING AND DECODING VIDEO}
본 발명은 이미지 처리 기술에 관한 것이며, 구체적으로는 비디오 인코딩 및 디코딩 방법, 장치 및 시스템에 관한 것이다.
3DTV(Three-Dimensional Television, 3차원 텔레비전)는 가장 일반적인 3차원 텔레비전 기술이다. 이 기술을 이용하면, 2개의 독립적인 뷰인 좌측 뷰와 우측 뷰가 스크린 상에 디스플레이되고, 좌측 눈과 우측 눈은 별개로 상이한 뷰를 수신하여, 3D 3차원 효과를 달성하게 된다. 현재, 서비스 제공자가 3DTV 서비스를 제공하는 경우, 비디오 생성 비용 및 전송 디바이스 비용을 감소시키기 위해서 오리지널 2DTV(Two-Dimensional Television, 2차원 텔레비전)의 인코딩 툴 및 전송 디바이스가 가능한 한 많이 사용되는 것으로 예상된다.
전술한 요건을 만족시키기 위해서, 프레임 패킹(frame packing) 3DTV 기술이 이용되어 좌측 뷰와 우측 뷰를 하나의 이미지의 프레임으로 패킹한 다음, 2D 인코더 및 2D 전송 디바이스가 사용되어 인코딩 및 전송을 수행하는데; 2개의 뷰를 패킹하는 방법에 대한 메시지가 인코딩된 비트스트림에 부가되거나, 프레임에서의 2개의 뷰의 별개의 위치 정보를 직접 나타내는 메시지가 부가되어, 디코더가 디코딩을 수행한 이후에, 전술한 메시지에 따라 2개의 뷰가 출력된다.
프레임 패킹 3DTV 기술을 이용하는 뷰들에 대한 복수의 패킹 타입이 존재한다. 도 1은 2가지 패킹 타입, 즉 좌-우 타입 및 상-하 타입을 예시적으로 도시한다. 하나의 패킹 타입에 대하여, 상이한 플립핑 타입들에 따라 상이한 패킹 케이스들이 또한 존재할 수 있다. 플립핑 타입은, 좌-우 뷰의 배열 순서가 플립핑되는지 또는 상-하 뷰의 배열 데이터가 플립핑되는지를 나타낸다. 도 1은 상이한 패킹 타입들 및 플립핑 타입들을 이용하여 형성된 상이한 이미지들을 도시한다.
다양한 상이한 타입들의 기존의 모든 디코더는 2개의 메인 부분: 디코딩 모듈 및 로컬 메모리를 포함한다. 로컬 메모리는, 인코딩되었지만 디코딩되지는 않은 픽처, 및 후속 픽처를 디코딩하기 위한 기준 프레임으로서 이용될 필요가 있거나 출력 시간에는 도달하지 않은 디코딩된 픽처를 저장하는데 사용된다. 디코더는 로컬 메모리에 충분한 저장 리소스들을 할당할 필요가 있고, 디코딩 모듈은 디코더의 계산 리소스들을 소비할 필요가 있다.
송신될 필요가 있는 비디오는 인코딩된 이후에 비트스트림을 형성하고, 각각의 비트스트림의 프로파일(profile) 정보 및 레벨(level) 정보가 각각의 비트스트림에서 송신된다. 프로파일은 비디오 인코딩 동안에 인코더에 의해 이용된 코딩 툴들을 나타내고(예를 들어, 메인 프로파일에서, 픽셀의 비트 깊이는 단지 8 비트이고, 픽처 파라미터 세트 식별자(PPS id)는 63을 초과할 수 없고, 타일 코딩은 인에이블되지 않지만; 하이 프로파일에는 이들 제약 모두가 존재하지 않음), 디코더가 그 코딩 툴들 중 하나를 지원하지 않는 경우, 디코딩이 수행될 수 없다. 레벨은, 디코더가 디코딩을 수행하는 경우에 요구되는 계산 능력 및 저장 리소스를 나타낸다. 예를 들어, 현재의 hevc 드래프트는 레벨 4 및 레벨 4.1을 정의하지만 - 레벨 4 및 레벨 4.1은, 1920*1080의 해상도를 갖는 고화질 비트스트림이 디코딩되는 경우에 이들 2개의 표준에 따르는 디코더가 32 프레임/s 및 64 프레임/s에 도달할 수 있음을 각각 나타냄 -, 레벨 4 아래의 표준에만 따르는 디코더는 1920*1080의 해상도를 갖는 고화질 비트스트림을 디코딩할 수 없다.
실제 애플리케이션에서, 도 2에 도시된 바와 같이, 디코더가 프레임 패킹 3DTV 기술을 이용하여 인코딩된 3D 비디오 비트스트림을 수신하지만, 디코더가 2D 디스플레이 디바이스에 접속되는 경우, 픽처가 디코더에 의해 디코딩된 이후에, 2개의 뷰 중 하나만이 획득된 다음, 2D 디스플레이 디바이스에 출력된다. 종래 기술에서의 솔루션들이 채택되는 경우, 상위 레벨 디코더가 3D 비디오 비트스트림에 대한 디코딩을 수행한 다음, 디코딩된 픽처를 2D 디스플레이 디바이스에 출력하는 것이 요구되는데, 그 이유는 3D 비디오 비트스트림을 인코딩하거나 디코딩하기 위한 프로파일 및 레벨 요건이 2D 비디오 비트스트림을 인코딩하거나 디코딩하기 위한 프로파일 및 레벨 요건보다 상대적으로 더 높기 때문이다. 또한, 2D 디스플레이 디바이스에 관하여, 디코더의 계산 및 저장 리소스들이 낭비되는데, 그 이유는 2D 디스플레이 디바이스에 의해 디스플레이될 필요가 없는 픽처도 또한 디코딩될 필요가 있기 때문이다.
이것을 고려하여, 디코더 또는 인코더의 계산 및 저장 리소스들을 낭비하는 전술한 문제점을 해결하기 위해서, 본 발명의 구현 방식들에서 다음의 기술적 솔루션들이 이용된다.
비디오 인코딩 방법으로서 - 비디오는 픽처 시퀀스를 포함함 -,
비디오에 대응하는 구성 파일에 따라, 인코딩될 픽처에서의 독립적으로 디코딩가능한 뷰(independently decodable view)를 결정하는 단계;
픽처를 적어도 2개의 타일(tile)로 분할하는 단계 - 독립적으로 디코딩가능한 뷰를 커버하는 하나 이상의 타일에 대응하는 영역은 독립적으로 디코딩가능한 영역임 -;
픽처에 대응하는 보조 메시지를 생성하는 단계 - 보조 메시지는 독립적으로 디코딩가능한 영역의 위치 식별자를 포함하고, 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일 식별자(tile id)를 포함함 -; 및
인코딩된 비디오 비트스트림을 형성하기 위해서 픽처에 포함된 모든 타일을 인코딩하는 단계 - 인코딩된 비디오 비트스트림은 보조 메시지를 포함함 -
를 포함하는 비디오 인코딩 방법.
비디오 디코딩 방법으로서,
비디오 비트스트림을 수신하는 단계 - 비디오 비트스트림은 디코딩될 비디오 및 보조 메시지를 포함하고, 디코딩될 비디오는 디코딩될 픽처 시퀀스를 포함함 -;
디코딩될 픽처를 취득하는 단계;
보조 메시지에 따라 디코딩될 픽처의 독립적으로 디코딩가능한 영역의 위치 식별자를 획득하는 단계 - 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일(tile)의 타일 식별자들(tile id)을 포함함 -; 및
독립적으로 디코딩가능한 영역의 위치 식별자에 따라 디코딩될 픽처의 독립적으로 디코딩가능한 영역을 획득하고, 독립적으로 디코딩가능한 영역을 디코딩하는 단계
를 포함하는 비디오 디코딩 방법.
비디오 인코더로서 - 비디오는 픽처 시퀀스를 포함함 -,
비디오에 대응하는 구성 파일에 따라, 인코딩될 픽처에서의 독립적으로 디코딩가능한 뷰를 결정하도록 구성된 독립적으로 디코딩가능한 뷰 결정 유닛;
픽처를 적어도 2개의 타일(tile)로 분할하도록 구성된 타일 분할 유닛 - 독립적으로 디코딩가능한 뷰를 커버하는 하나 이상의 타일에 대응하는 영역은 독립적으로 디코딩가능한 영역임 -;
픽처에 대응하는 보조 메시지를 생성하도록 구성된 보조 메시지 생성 유닛 - 보조 메시지는 독립적으로 디코딩가능한 영역의 위치 식별자를 포함하고, 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일 식별자(tile id)를 포함함 -; 및
인코딩된 비디오 비트스트림을 형성하기 위해서 픽처에 포함된 모든 타일을 인코딩하도록 구성된 인코딩 실행 유닛 - 인코딩된 비디오 비트스트림은 보조 메시지를 포함함 -
을 포함하는 비디오 인코더.
선택적으로, 인코딩 실행 유닛은, 현재의 인코딩될 타일이 독립적으로 디코딩가능한 영역에서의 타일인지 여부를 판정하고; 그러한 경우에는, 인코딩된 픽처의 독립적으로 디코딩가능한 영역을 현재의 타일의 후보 인터-프레임 기준 영역으로 설정하고; 그렇지 않은 경우에는, 인코딩된 픽처의 전체 픽처 영역을 현재의 타일의 후보 인터-프레임 기준 영역으로 설정하고; 인터-프레임 알고리즘이 인코딩을 위해 이용될 때에, 인코딩될 타일에 대응하는 후보 인터-프레임 기준 영역에 따라 최적의 기준 영역을 선택하도록 구성된 판정 유닛을 더 포함한다.
비디오 디코더로서,
비디오 비트스트림을 수신하도록 구성된 수신 유닛 - 비디오 비트스트림은 디코딩될 비디오 및 보조 메시지를 포함하고, 디코딩될 비디오는 디코딩될 픽처 시퀀스를 포함함 -; 및
디코딩될 픽처를 취득하고; 보조 메시지에 따라 디코딩될 픽처의 독립적으로 디코딩가능한 영역의 위치 식별자를 획득하며 - 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일(tile)의 타일 식별자들(tile id)을 포함함 -; 독립적으로 디코딩가능한 영역의 위치 식별자에 따라 디코딩될 픽처의 독립적으로 디코딩가능한 영역을 획득하고, 독립적으로 디코딩가능한 영역을 디코딩하도록 구성된 디코딩 실행 유닛
을 포함하는 비디오 디코더.
비디오를 인코딩하도록 구성된 인코더로서 - 비디오는 픽처 시퀀스를 포함함 -,
하나 이상의 프로세서;
하나 이상의 메모리; 및
하나 이상의 프로그램
을 포함하고,
하나 이상의 프로그램은 하나 이상의 메모리에 저장되고, 추가로 하나 이상의 프로그램은 하나 이상의 프로세서에 의해 실행되도록 구성되고,
하나 이상의 프로그램은,
비디오에 대응하는 구성 파일에 따라, 인코딩될 픽처에서의 독립적으로 디코딩가능한 뷰를 결정하도록 구성된 명령어;
픽처를 적어도 2개의 타일(tile)로 분할하도록 구성된 명령어 - 독립적으로 디코딩가능한 뷰를 커버하는 하나 이상의 타일에 대응하는 영역은 독립적으로 디코딩가능한 영역임 -;
픽처에 대응하는 보조 메시지를 생성하도록 구성된 명령어 - 보조 메시지는 독립적으로 디코딩가능한 영역의 위치 식별자를 포함하고, 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일 식별자(tile id)를 포함함 -; 및
인코딩된 비디오 비트스트림을 형성하기 위해서 픽처에 포함된 모든 타일을 인코딩하도록 구성된 명령어 - 인코딩된 비디오 비트스트림은 보조 메시지를 포함함 -
를 포함하는, 인코더. 51. 제50항에 있어서, 보조 메시지는 다음의 정보: 독립적으로 디코딩가능한 영역 식별자, 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 크롭핑(cropping) 정보, 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 프로파일(profile) 정보, 및 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 레벨(level) 정보 중 하나를 더 포함하는, 인코더.
디코더로서,
하나 이상의 프로세서;
하나 이상의 메모리; 및
하나 이상의 프로그램
을 포함하고,
하나 이상의 프로그램은 하나 이상의 메모리에 저장되고, 추가로 하나 이상의 프로그램은 하나 이상의 프로세서에 의해 실행되도록 구성되고,
하나 이상의 프로그램은,
비디오 비트스트림을 수신하도록 구성된 명령어 - 비디오 비트스트림은 디코딩될 비디오 및 보조 메시지를 포함하고, 디코딩될 비디오는 디코딩될 픽처 시퀀스를 포함함 -; 및
디코딩될 픽처를 취득하도록 구성된 명령어;
보조 메시지에 따라 디코딩될 픽처의 독립적으로 디코딩가능한 영역의 위치 식별자를 획득하도록 구성된 명령어 - 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일(tile)의 타일 식별자들(tile id)을 포함함 -; 및
독립적으로 디코딩가능한 영역의 위치 식별자에 따라 디코딩될 픽처의 독립적으로 디코딩가능한 영역을 획득하고, 독립적으로 디코딩가능한 영역을 디코딩하도록 구성된 명령어
를 포함하는, 디코더.
비디오를 처리하기 위한 소스 장치에 배치되고, 비디오를 인코딩하도록 구성된 인코더로서 - 비디오는 픽처 시퀀스를 포함함 -,
비디오에 대응하는 구성 파일에 따라, 인코딩될 픽처에서의 독립적으로 디코딩가능한 뷰를 결정하고; 픽처를 적어도 2개의 타일(tile)로 분할하고 - 독립적으로 디코딩가능한 뷰를 커버하는 하나 이상의 타일에 대응하는 영역은 독립적으로 디코딩가능한 영역임 -; 픽처에 대응하는 보조 메시지를 생성하고 - 보조 메시지는 독립적으로 디코딩가능한 영역의 위치 식별자를 포함하고, 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일 식별자(tile id)를 포함함 -; 인코딩된 비디오 비트스트림을 형성하기 위해서 픽처에 포함된 모든 타일을 인코딩하도록 구성된 하나 이상의 회로 - 인코딩된 비디오 비트스트림은 보조 메시지를 포함함 -
를 포함하는 인코더.
비디오를 처리하기 위한 수신 장치에 배치된 디코더로서,
비디오 비트스트림을 수신하고 - 비디오 비트스트림은 디코딩될 비디오 및 보조 메시지를 포함하고, 디코딩될 비디오는 디코딩될 픽처 시퀀스를 포함함 -; 디코딩될 픽처를 취득하고; 보조 메시지에 따라 디코딩될 픽처의 독립적으로 디코딩가능한 영역의 위치 식별자를 획득하고 - 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일(tile)의 타일 식별자들(tile id)을 포함함 -; 독립적으로 디코딩가능한 영역의 위치 식별자에 따라 디코딩될 픽처의 독립적으로 디코딩가능한 영역을 획득하고, 독립적으로 디코딩가능한 영역을 디코딩하도록 구성된 하나 이상의 회로
를 포함하는 디코더.
컴퓨터 판독가능 저장 매체로서 - 컴퓨터 판독가능 저장 매체는 복수의 명령어를 저장함 -
이들 명령어들이 디바이스에 의해 실행되는 경우, 이 디바이스는,
비디오에 대응하는 구성 파일에 따라, 인코딩될 픽처에서의 독립적으로 디코딩가능한 뷰를 결정하는 동작;
픽처를 적어도 2개의 타일(tile)로 분할하는 동작 - 독립적으로 디코딩가능한 뷰를 커버하는 하나 이상의 타일에 대응하는 영역은 독립적으로 디코딩가능한 영역임 -;
픽처에 대응하는 보조 메시지를 생성하는 동작 - 보조 메시지는 독립적으로 디코딩가능한 영역의 위치 식별자를 포함하고, 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일 식별자(tile id)를 포함함 -; 및
인코딩된 비디오 비트스트림을 형성하기 위해서 픽처에 포함된 모든 타일을 인코딩하는 동작 - 인코딩된 비디오 비트스트림은 보조 메시지를 포함함 -
을 수행하도록 트리거되는, 컴퓨터 판독가능 저장 매체.
컴퓨터 판독가능 저장 매체로서 - 컴퓨터 판독가능 저장 매체는 복수의 명령어를 저장함 -
이들 명령어들이 디바이스에 의해 실행되는 경우, 이 디바이스는,
비디오 비트스트림을 수신하는 동작 - 비디오 비트스트림은 디코딩될 비디오 및 보조 메시지를 포함하고, 디코딩될 비디오는 디코딩될 픽처 시퀀스를 포함함 -;
디코딩될 픽처를 취득하는 동작;
보조 메시지에 따라 디코딩될 픽처의 독립적으로 디코딩가능한 영역의 위치 식별자를 획득하는 동작 - 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일(tile)의 타일 식별자들(tile id)을 포함함 -; 및
독립적으로 디코딩가능한 영역의 위치 식별자에 따라 디코딩될 픽처의 독립적으로 디코딩가능한 영역을 획득하고, 독립적으로 디코딩가능한 영역을 디코딩하는 동작
을 수행하도록 트리거되는, 컴퓨터 판독가능 저장 매체.
전술한 다양한 구현 형태들에서 설명된 바와 같이, 선택적으로, 보조 메시지는 독립적으로 디코딩가능한 영역 식별자를 더 포함하고, 독립적으로 디코딩가능한 영역 식별자는, 픽처가 독립적으로 디코딩가능한 영역을 포함하는지 여부를 식별하기 위해 이용된다.
전술한 다양한 구현 형태들에서 설명된 바와 같이, 선택적으로, 보조 메시지는 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 크롭핑(cropping) 정보를 더 포함하고, 크롭핑 정보는 독립적으로 디코딩가능한 영역에 대한 독립적으로 디코딩가능한 뷰의 상측, 하측, 좌측 또는 우측 경계의 수평 좌표 또는 수직 좌표를 포함한다.
전술한 다양한 구현 형태들에서 설명된 바와 같이, 선택적으로, 보조 메시지는 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 프로파일(profile) 정보를 더 포함하고, 프로파일 정보는 독립적으로 디코딩가능한 영역에서의 코딩 툴 세트를 식별하기 위해 이용된다.
전술한 다양한 구현 형태들에서 설명된 바와 같이, 선택적으로, 보조 메시지는 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 레벨(level) 정보를 더 포함하고, 레벨 정보는, 디코더가 만족시킬 필요가 있는 레벨 정보를 식별하기 위해 이용되며, 레벨 정보는 픽처에 대한 독립적으로 디코딩가능한 영역의 비율에 따라 계산 수단에 의해 획득된다.
전술한 다양한 인코딩 구현 형태들에서 설명된 바와 같이, 선택적으로, 인코딩될 픽처에 포함된 모든 타일을 인코딩하는 단계는, 현재의 인코딩될 타일이 독립적으로 디코딩가능한 영역에서의 타일인지 여부를 판정하는 단계; 그러한 경우에는, 인코딩된 픽처의 독립적으로 디코딩가능한 영역을 현재의 타일의 후보 인터-프레임 기준 영역으로 설정하는 단계; 그렇지 않은 경우에는, 인코딩된 픽처의 전체 픽처 영역을 현재의 타일의 후보 인터-프레임 기준 영역으로 설정하는 단계; 및 인터-프레임 알고리즘이 인코딩을 위해 이용될 때에, 인코딩될 타일에 대응하는 후보 인터-프레임 기준 영역에 따라 최적의 기준 영역을 선택하는 단계를 더 포함한다.
전술한 다양한 구현 형태들에서 설명된 바와 같이, 선택적으로, 픽처 시퀀스는 상이한 패킹 타입들과 플립핑 타입들의 픽처들을 포함하고; 구성 파일은 픽처 시퀀스에서의 픽처의 각각의 프레임의 패킹 타입과 플립핑 타입, 및 상이한 패킹 타입들과 플립핑 타입들의 픽처들에 대응하는 독립적으로 디코딩가능한 뷰들을 저장한다.
전술한 다양한 구현 형태들에서 설명된 바와 같이, 선택적으로, 보조 메시지는, 독립적으로 디코딩가능한 영역들의, 상이한 패킹 타입들과 플립핑 타입들의 픽처들에 대응하는 위치 식별자들을 더 포함한다.
전술한 다양한 구현 형태들에서 설명된 바와 같이, 선택적으로, 보조 메시지는, 상이한 패킹 타입들과 플립핑 타입들의 픽처들에 대응하며 독립적으로 디코딩가능한 영역들을 디코딩하기 위해 이용되는 크롭핑 정보를 더 포함한다.
전술한 다양한 디코딩 구현 형태들에서 설명된 바와 같이, 선택적으로, 구현 형태들은, 보조 메시지에서의 크롭핑 정보에 따라 독립적으로 디코딩가능한 영역을 크롭핑하여, 독립적으로 디코딩가능한 뷰를 획득하는 단계를 더 포함한다.
전술한 다양한 구현 형태들에서 설명된 바와 같이, 선택적으로, 보조 메시지는, 상이한 패킹 타입들과 플립핑 타입들의 픽처들에 대응하며 독립적으로 디코딩가능한 영역들을 디코딩하기 위해 이용되는 프로파일 정보를 더 포함한다.
전술한 다양한 구현 형태들에서 설명된 바와 같이, 선택적으로, 보조 메시지는, 상이한 패킹 타입들과 플립핑 타입들의 픽처들에 대응하며 독립적으로 디코딩가능한 영역들을 디코딩하기 위해 이용되는 레벨 정보를 더 포함한다.
전술한 다양한 구현 형태들에서 설명된 바와 같이, 선택적으로, 보조 메시지는 보충 증대 정보(SEI: Supplemental Enhancement Information)에서 반송된다.
전술한 다양한 구현 형태들에서 설명된 바와 같이, 선택적으로, 보조 메시지는 시퀀스 파라미터 세트(SPS: Sequence Parameter Set)에서 반송된다.
비디오 인코딩 및 디코딩 시스템으로서, 전술한 다양한 구현 형태들에서 제공된 인코더; 및 전술한 다양한 구현 형태들에서 제공된 디코더를 포함하는 비디오 인코딩 및 디코딩 시스템.
비디오 비트스트림으로서, 디코딩될 비디오 및 보조 메시지를 포함하고, 디코딩될 비디오는 디코딩될 픽처 시퀀스를 포함하고, 보조 메시지는 픽처 시퀀스의 독립적으로 디코딩가능한 영역을 나타내는 위치 식별자를 포함하고, 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일(tile)의 타일 식별자들(tile id)을 포함하는, 비디오 비트스트림.
전술한 구현 형태들의 기술적 효과들은 다음과 같이 분석된다:
전술한 인코딩 구현 형태들에 따르면, 보조 메시지가 비트스트림에 부가되고, 보조 메시지에서의 프로파일 및 레벨 정보는 독립적으로 디코딩가능한 영역에 대해 형성된 서브비트스트림에만 적용되는데, 이는 디코더의 성능에 대한 요건을 저하시킨다.
전술한 디코딩 구현 형태들에 따르면, 디코더는 보조 메시지에 따라 픽처에서 독립적으로 디코딩가능한 영역만을 획득하여 디코딩을 수행할 수 있는데, 즉 디코딩은 독립적으로 디코딩가능한 영역에 대해서만 수행되는데, 이는 디코더의 성능에 대한 요건을 저하시키며, 디코더의 계산 및 저장 리소스들을 절약한다. 또한, 독립적으로 인코딩가능한 영역의 서브비트스트림에 대응하는 프로파일 및 레벨 요건은 일반적으로 디코더의 성능 및 스토리지에 대한 요건을 저하시킨다. 그러므로, 디코더가 초기화된 이후에, 디코더의 디코딩 시간 및 전력 소비는 감소될 수 있고, 디코더의 스토리지에 대한 요건도 저하된다. 디코더가 오리지널 비디오 비트스트림의 프로파일 및 레벨 요건을 충족하지 않지만, 디코더가 독립적으로 인코딩가능한 영역의 서브비트스트림에 대응하는 프로파일 및 레벨 요건을 충족하는 경우, 해상도 또는 비트 레이트에 대해 높은 요건을 가지며 2D 디스플레이와 호환되는 3D 비디오 비트스트림에 대한 디코더의 지원이 증가된다.
본 발명의 실시예들에서의 기술적 솔루션들을 보다 명확하게 설명하기 위해서, 이하에서는 본 발명의 실시예들을 설명하는 첨부 도면들을 간략하게 소개한다. 명백하게도, 이하의 설명에서의 첨부 도면들은 본 발명의 일부 바람직한 실시예들을 도시할 뿐이며, 통상의 기술자라면 창조적 노력 없이 이들 첨부 도면들로부터 다른 도면들을 여전히 도출할 수 있다.
도 1은 종래 기술에서의 프레임 패킹 3DTV 기술을 이용하는 비디오 비트스트림의 뷰 패킹 타입의 개략도이다.
도 2는 종래 기술에서의 프레임 패킹 3DTV 기술을 이용하는 비디오 비트스트림을 2D 디스플레이 디바이스에 출력하는 처리 프로세스의 개략도이다.
도 3은 종래 기술에서의 인코딩될 픽처의 개략적인 구조도이다.
도 4는 본 발명의 일 실시예에 따른 비디오 인코딩 및 디코딩 시스템의 아키텍처도이다.
도 5는 본 발명의 일 실시예에 따른 인코더의 하드웨어의 구조도이다.
도 6은 본 발명의 일 실시예에 따른 디코더의 하드웨어의 구조도이다.
도 7은 본 발명의 일 실시예에 따른 인코더의 기능 블록도이다.
도 8은 본 발명의 일 실시예에 따른 디코더의 기능 블록도이다.
도 9는 본 발명의 일 실시예에 따른 인코더의 하드웨어의 구조도이다.
도 10은 본 발명의 일 실시예에 따른 비디오 인코딩 방법의 플로우차트이다.
도 11은 도 10에 도시된 방법 프로세스에서 픽처의 프레임을 인코딩하기 위한 특정 방법의 플로우차트이다.
도 12는 본 발명의 일 구현 방식에 따른 비디오 디코딩 방법의 플로우차트이다.
도 13은 본 발명의 일 구현 방식에 따른 다른 비디오 인코딩 방법의 플로우차트이다.
도 14는 도 13에 도시된 방법 프로세스에서 픽처의 프레임을 인코딩하기 위한 특정 방법의 플로우차트이다.
도 15는 본 발명의 일 구현 방식에 따른 다른 비디오 디코딩 방법의 플로우차트이다.
도 16은 본 발명의 일 구현 방식에 따른 또 다른 비디오 인코딩 방법의 플로우차트이다.
도 17은 도 16에 도시된 방법 프로세스에서 픽처의 프레임을 인코딩하기 위한 특정 방법의 플로우차트이다.
도 18은 본 발명의 일 구현 방식에 따른 또 다른 비디오 디코딩 방법의 플로우차트이다.
이하, 본 발명의 실시예들의 첨부 도면들을 참조하여 본 발명의 실시예들에서의 기술적 솔루션들을 명확하고 완전하게 설명한다. 명백하게도, 설명된 실시예들은 본 발명의 실시예들 전부가 아닌 일부이다. 창조적 노력 없이 본 발명의 실시예들에 기초하여 통상의 기술자에 의해 획득되는 다른 모든 실시예들은 본 발명의 보호 범위 내에 있을 것이다.
다음에, 본 발명의 솔루션들을 이해하기 위한 기본 개념들을 먼저 설명한다.
최대 코딩 단위(LCU: largest coding unit): 도 3에서 작은 셀로서 도시되어 있는, 고효율 비디오 코딩(HEVC: high efficiency video coding) 기술에서의 최소 픽처 분할 단위. LCU는 64*64 픽셀들의 블록일 수 있다. HEVC 인코더가 픽처의 프레임을 인코딩하기 이전에, 픽처는 먼저 LCU를 단위로서 이용하는 그리드로 분할된다.
코딩 단위(CU: coding unit): 인코더는 픽처의 텍스처 디테일의 크기에 따라 최적의 코딩 단위 분할을 동적으로 결정한다. 하나의 LCU는 하나 이상의 코딩 단위로 분할될 수 있고, 인코딩 및 디코딩은 CU를 단위로서 이용하여 별개로 수행된다.
타일(tile): 상위 레벨 픽처 분할 방법에서, 픽처는 m개의 행과 n개의 열로 분할되는데, 각각의 분할된 블록은 타일로 지칭된다. 도 3에 도시된 바와 같이, 픽처는 1개의 행과 3개의 열로 분할된다. 타일의 행과 열은 모두 LCU를 최소 단위로서 이용하는데, 즉 하나의 LCU는 동시에 2개의 타일에 속할 수 없다. 타일 분할이 결정된 이후에, 인코더는 타일 식별자(tile id)를 먼저 좌-우 시퀀스로 할당한 다음, 상-하 시퀀스로 할당한다. 일반적으로, 타일의 크기 분할은 픽처에 대응하는 구성 파일에 따라 수행된다. 일반적으로, 구성 파일은 인코더의 인코딩 프로세스에서 미리 결정될 필요가 있는 입력 파라미터, 예를 들어 코딩 툴, 코딩 제한 및 인코딩될 픽처의 특성을 저장한다.
독립 타일(independent tile): 타일의 타입으로서, 인트라-프레임 예측 중에, 독립 타일에서의 CU와 다른 독립 타일에서의 CU 사이에 상호 참조가 이루어질 수 없다.
종속 타일(dependent tile): 타일의 타입으로서, 인트라-프레임 예측 중에, 종속 타일에서의 CU는 독립 파일에서의 CU를 참조할 수 있다.
HEVC 인코더는 LCU를 최소 단위로서 이용함으로써 인코딩을 수행한다. 픽처의 폭 및 높이가 LCU의 정수배가 아닌 경우, 인코딩 이전에 보충이 수행될 필요가 있다. 도 3에 도시된 바와 같이, 대각선 음영 표시 부분의 LCU들은 픽처 영역이고, 비어 있는 부분의 LCU들은 보충 부분인데, 이는 LCU 정렬로 언급된다. 디코더가 디코딩을 완료하고 비디오 스트림을 출력하기 전에, 이전에 보충된 LCU 부분이 크롭핑될 필요가 있고, 다음에 비디오 스트림이 출력되는데, 이는 크롭핑(cropping)으로 언급된다.
도 3에 도시된 바와 같이, 각각의 LCU에는, 0부터 시작하여, 먼저 좌-우 시퀀스로 그리고 다음에 상-하 시퀀스로 어드레스가 순차적으로 할당되고, 이 어드레스는 LCU 어드레스로 지칭되고; 다음에 임의의 LCU 어드레스가 속하는 타일이 타일 분할에 따라 계산될 수 있는데, 즉 타일 id에 대한 LCU 어드레스로부터 룩업 테이블이 설정될 수 있다.
일반적으로, 인코딩될 비디오는 픽처 시퀀스로 고려될 수 있고, 인코딩 이후에 비디오 비트스트림이 형성되는데, 이 비디오 비트스트림은 인코딩된 픽처 시퀀스, 및 픽처를 디코딩하기 위해 요구되는 파라미터 세트를 포함한다. 액세스 단위(AU: access unit)는 인코딩된 픽처의 프레임, 및 픽처를 디코딩하기 위해 요구되는 파라미터 세트를 포함하거나, 또는 AU는 인코딩된 픽처의 프레임만을 포함한다.
픽처를 디코딩하기 위한 파라미터 세트에서, 1 비트 식별자 tile_splittable_flag가 비디오 사용성 정보(VUI: video usability information) 파라미터 구조에서 정의되고, tile_splittable_flag는, 비트스트림에서의 타일이 다음의 특징들을 만족함을 나타낸다:
1. 타일 분할은 픽처 시퀀스에서의 각각의 픽처에 대해 변경되지 않은 채로 유지된다;
2. 시퀀스에서의 상이한 프레임들에 대해, 예측 기준은 동일한 id를 갖는 타일들 사이에서만 이루어질 수 있다;
3. 각각의 타일에 대해 루프 필터링이 별개로 수행되고, 완전한 픽처는 수개의 디코딩된 CU에 의해 복원된다. 픽처에서의 CU는 상이한 기준 프레임의 상이한 부분에 따라 예측될 수 있고, 오리지널 픽처와 예측 및 디코딩에 의해 획득된 이 픽처 사이에 에러가 존재할 수 있는데, 이는 인접 CU들의 경계 상에 불연속성을 야기시킨다. 루프 필터링은, 이 불연속성을 제거하기 위해서 전체 픽처에 대해 수행되는 필터링 동작이다.
본 발명의 일 실시예에 따른 비디오 인코딩 및 디코딩 방법을 구현하기 위한 시스템 아키텍처도인 도 4에 도시된 바와 같이, 소스 장치(100)는 네트워크측 상의 비디오 헤드엔드 디바이스인데, 소스 장치(100)는 인코딩 전과 후의 비디오(즉, 픽처 시퀀스)를 저장하도록 구성된 비디오 메모리(101), 픽처 시퀀스를 인코딩하도록 구성된 인코더(102), 및 인코딩된 비트스트림을 다른 장치로 송신하도록 구성된 송신기(103)를 포함한다. 소스 장치(100)는, 비디오를 캡처하고 이 캡처된 비디오를 비디오 메모리(101)에 저장하기 위한 비디오 캡처 장치, 예를 들어 비디오 카메라를 더 포함할 수 있고, 다른 엘리먼트, 예를 들어 인트라-프레임 인코더 엘리먼트, 다양한 필터들을 더 포함할 수 있다.
비디오 메모리(101)는 일반적으로 비교적 큰 저장 공간을 포함한다. 예를 들어, 비디오 메모리(101)는 DRAM(dynamic random access memory) 또는 플래시 메모리를 포함할 수 있다. 다른 실시예에서, 비디오 메모리(101)는 비휘발성 메모리 또는 임의의 다른 데이터 저장 장치를 포함할 수 있다.
인코더(102)는 비디오 인코딩을 수행하는 디바이스의 일부일 수 있다. 특정 실시예로서, 인코더는 비디오의 인코딩 및 디코딩을 위해 사용되는 칩셋을 포함하고, 하드웨어, 소프트웨어, 펌웨어, 프로세서 또는 디지털 신호 처리(DSP)의 일부 조합을 포함할 수 있다.
송신기(103)는 유선 네트워크, 무선 네트워크 또는 다른 방식을 이용함으로써 비디오 비트스트림에 대해 신호 변조를 수행한 다음, 이 비디오 비트스트림을 수신측으로 송신한다.
수신 장치(200)는 사용자측 상의 단말 디바이스인데, 수신 장치(200)는 인코딩된 비디오 비트스트림을 수신하도록 구성된 수신기(203), 비디오 비트스트림을 디코딩하도록 구성된 디코더(202), 및 LED TV와 같이 디코딩된 비디오를 단말 사용자에게 출력하는 디스플레이 장치(201)를 포함한다. 수신 장치(200)는 다른 엘리먼트, 예를 들어 모뎀, 신호 증폭기 및 메모리를 더 포함할 수 있다.
디코더(202)는 비디오 디코딩을 수행하는 디바이스의 일부일 수 있다. 특정 실시예로서, 디코더는 비디오의 인코딩 및 디코딩을 위해 사용되는 칩셋을 포함하고, 하드웨어, 소프트웨어, 펌웨어, 프로세서 또는 디지털 신호 처리(DSP)의 일부 조합을 포함할 수 있다.
디스플레이 장치(201)는, 디스플레이, TV 및 프로젝터와 같이, 동시에 2D 또는 3D와 호환되는 디스플레이 디바이스 또는 2D 디스플레이 디바이스일 수 있다.
도 4에 도시된 인코더(102)의 더 상세한 하드웨어의 구조도인 도 5에 도시된 바와 같이, 인코더(102)는 버퍼(1021) 및 프로세서(1022)를 포함한다. 버퍼(1021)는 비디오 메모리(101)의 저장 공간보다 더 작고 더 빠른 저장 공간을 포함한다. 예를 들어, 버퍼(1021)는 SRAM(synchronous random access memory)을 포함할 수 있다. 버퍼(1021)는 "온칩" 메모리를 포함할 수 있고, 버퍼(1021)는 프로세서(1022)의 집약적인 코딩 프로세스에서 매우 빠른 데이터 액세스를 제공하기 위해서 인코더(102)의 다른 컴포넌트와 통합된다. 주어진 픽처 시퀀스의 인코딩 중에, 인코딩될 픽처 시퀀스는 비디오 메모리(101)로부터 버퍼(1021)로 순차적으로 로딩될 수 있다. 또한, 버퍼(1021)는, 인코딩될 비디오의 구성 파일, 특정 인코딩 알고리즘을 실행하는데 이용되는 소프트웨어 프로그램 등을 저장하도록 또한 구성된다. 일부 경우에, 버퍼(1021)는 인코딩이 완료된 픽처(이 픽처의 송신 시간에는 도달하지 않았거나 또는 이 픽처는 픽처의 다음 프레임을 인코딩하기 위한 기준을 제공하는데 이용됨)를 저장하도록 또한 구성된다. 다른 실시예에서, 저장 기능을 갖는 메모리가 버퍼(1021)로서 사용될 수 있다. 프로세서(1022)는 인코딩될 픽처를 버퍼(1021)로부터 취득하고, 비디오에 포함된 픽처 시퀀스가 인코딩될 때까지 픽처에 대해 인코딩을 수행한다.
도 4에 도시된 디코더(202)의 더 상세한 하드웨어의 구조도인 도 6에 도시된 바와 같이, 디코더(202)는 버퍼(2021) 및 프로세서(2022)를 포함한다. 버퍼(2021)는 더 작고 더 빠른 저장 공간이다. 예를 들어, 버퍼(2021)는 SRAM(synchronous random access memory)을 포함할 수 있다. 버퍼(2021)는 "온칩" 메모리를 포함할 수 있고, 버퍼(2021)는 프로세서(2022)의 집약적인 코딩 프로세스에서 매우 빠른 데이터 액세스를 제공하기 위해서 디코더(202)의 다른 컴포넌트와 통합된다. 주어진 픽처 시퀀스의 디코딩 중에, 디코딩될 픽처 시퀀스는 버퍼(2021)로 로딩될 수 있다. 또한, 버퍼(2021)는 특정 디코딩 알고리즘을 실행하는데 이용되는 소프트웨어 프로그램 등을 더 저장한다. 또한, 버퍼(2021)는, 디코딩이 완료되었지만 디스플레이 시간에는 도달하지 않았거나 후속 픽처를 디코딩하기 위한 기준 프레임으로서 이용될 필요가 있는 픽처를 저장하도록 또한 구성될 수 있다. 다른 실시예에서, 저장 기능을 갖는 메모리가 버퍼(2021)로서 사용될 수 있다. 프로세서(2022)는 디코딩될 픽처를 버퍼(2021)로부터 취득하고, 비디오 비트스트림에 포함된 픽처 시퀀스가 디코딩될 때까지 픽처에 대해 디코딩을 수행한다.
본 발명의 이 실시예에 따르면, 인코더(102)에 의해 인코딩을 수행하는 프로세스에서, 인코딩된 비트스트림에 보조 메시지가 부가된다. 예를 들어, 보조 메시지는 디코딩 시에 디코더(202)를 돕기 위해 시퀀스 파라미터 세트(SPS: Sequence Parameter Set) 또는 보충 증대 정보(SEI: Supplemental Enhancement Information)에 저장된다. 먼저, 인코딩된 비트스트림에 독립적으로 디코딩가능한 영역이 존재함을 식별하기 위해서 독립적으로 디코딩가능한 영역 식별자가 보조 메시지에 부가될 수 있다. 3D 비디오 비트스트림에서의 픽처의 각각의 프레임의 것이며 2D 디스플레이 디바이스에 의해 최종적으로 디스플레이되는 뷰 부분이 독립적으로 디코딩가능한 뷰이고; 타일 분할에 대응하여, 독립적으로 디코딩가능한 뷰를 커버하는 영역이 독립적으로 디코딩가능한 영역이다. 또한, 보조 메시지 자체는 또한 독립적으로 디코딩가능한 식별자로서 고려될 수 있다. 인코딩된 비디오 비트스트림이 보조 메시지를 포함하는 경우에는, 비트스트림에 독립적으로 디코딩가능한 영역이 존재한다고 고려되며; 그렇지 않은 경우에는, 독립적으로 디코딩가능한 영역이 존재하지 않는다고 고려된다. 디코더(202)는 인코딩된 비디오 비트스트림(즉, 픽처 시퀀스)에서 각각의 픽처의 독립적으로 디코딩가능한 영역을 획득한 다음, 정상 디코딩을 수행한다.
본 발명의 이 실시예에서 인코더(102)가 독립적으로 디코딩가능한 영역을 결정하는 경우, 독립적으로 디코딩가능한 영역의 특징들이 다음과 같음을 보장하는 것이 요구된다:
동일한 패킹 타입 및 플립핑 타입을 갖는 픽처의 각각의 프레임에서, 독립적으로 디코딩가능한 영역의 위치 및 크기가 변경되지 않은 채로 유지된다;
독립적으로 디코딩가능한 영역에서의 CU에 대해, 동일한 패킹 타입 및 플립핑 타입을 갖는 픽처의 독립적으로 디코딩가능한 영역으로부터 인터-프레임 예측을 위한 기준 픽처 블록이 선택된다; 그리고
독립적으로 디코딩가능한 영역에서 루프 필터링이 별개로 수행된다.
보조 메시지는 다음의 정보: 독립적으로 디코딩가능한 영역에서의 서브픽처에 의해 형성되는 서브픽처 시퀀스(즉, 서브비트스트림)의 프로파일 및 레벨 정보와, 독립적으로 디코딩가능한 영역을 출력하고 디스플레이하기 위해 이용되는 크롭핑 정보와, 독립적으로 디코딩가능한 영역의 위치 식별자를 더 포함할 수 있다.
선택적인 실시예로서, 도 5에 도시된 인코더(102)의 버퍼(1021)는 도 7에 도시된 저장 유닛(1023)을 이용함으로써 구현될 수 있고; 또한, 프로세서(1022)는 도 7에 도시된 독립적으로 디코딩가능한 뷰 결정 유닛(1024), 타일 분할 유닛(1025), 보조 메시지 생성 유닛(1026) 및 인코딩 실행 유닛(1027)을 이용함으로써 구현될 수 있다. 선택적인 실시예로서, 도 5에 도시된 인코더(102)는 도 10, 도 11, 도 13, 도 14, 도 16 및 도 17에서 제공된 인코딩 방법을 실행할 수 있다.
선택적인 실시예로서, 도 6에 도시된 디코더(202)의 버퍼(2021)는 도 8에 도시된 저장 유닛(2023)을 이용함으로써 구현될 수 있고; 또한, 프로세서(2022)는 도 8에 도시된 수신 유닛(2024) 및 디코딩 실행 유닛(2025)을 이용함으로써 구현될 수 있다. 도 6에 도시된 디코더(202)는 도 12, 도 15 및 도 18에서 제공된 디코딩 방법을 실행할 수 있다.
본 발명의 일 실시예에 따른 인코더의 기능 모듈 구성의 개략도인 도 7에 도시된 바와 같이, 인코더(102)는 저장 유닛(1023), 독립적으로 디코딩가능한 뷰 결정 유닛(1024), 타일 분할 유닛(1025), 보조 메시지 생성 유닛(1026) 및 인코딩 실행 유닛(1027)을 포함한다. 저장 유닛(1023)은 비디오의 구성 파일을 저장하도록 구성되고; 독립적으로 디코딩가능한 뷰 결정 유닛(1024)은, 비디오에 대응하는 구성 파일에 따라, 인코딩될 픽처에서의 독립적으로 디코딩가능한 뷰를 결정하도록 구성되고; 타일 분할 유닛(1025)은 픽처를 적어도 2개의 타일(tile)로 분할하도록 구성되고 - 독립적으로 디코딩가능한 뷰를 커버하는 하나 이상의 타일에 대응하는 영역은 독립적으로 디코딩가능한 영역임 -; 보조 메시지 생성 유닛(1026)은 픽처에 대응하는 보조 메시지를 생성하도록 구성되고 - 보조 메시지는 독립적으로 디코딩가능한 영역의 위치 식별자를 포함하고, 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일 식별자(tile id)를 포함함 -; 인코딩 실행 유닛(1027)은 인코딩된 비디오 비트스트림을 형성하기 위해서 픽처에 포함된 모든 타일을 인코딩하도록 구성되고, 이 인코딩된 비디오 비트스트림은 보조 메시지를 포함한다. 인코딩 실행 유닛은 판정 유닛을 더 포함하는데, 이 판정 유닛은, 현재의 인코딩될 타일이 독립적으로 디코딩가능한 영역에서의 타일인지 여부를 판정하고; 그러한 경우에는, 인코딩된 픽처의 독립적으로 디코딩가능한 영역을 현재의 타일의 후보 인터-프레임 기준 영역으로 설정하고; 그렇지 않은 경우에는, 인코딩된 픽처의 전체 픽처 영역을 현재의 타일의 후보 인터-프레임 기준 영역으로 설정하고, 인터-프레임 알고리즘이 인코딩을 위해 이용될 때에, 인코딩될 타일에 대응하는 전술한 후보 인터-프레임 기준 영역에 따라 최적의 기준 영역을 선택하도록 구성된다.
보다 상세하게는, 저장 유닛(1023)은 인코딩될 픽처를 로딩하며, 인코딩 실행 유닛(1027)에 의해 인코딩이 완료되는 픽처를 로딩하도록 또한 구성된다. 독립적으로 디코딩가능한 뷰 결정 유닛(1024)은 도 10에 도시된 단계 S301과 단계 S302 및 도 11에 도시된 단계 S401을 또한 수행할 수 있고; 타일 분할 유닛(1025)은 도 11에 도시된 단계 S402를 또한 수행할 수 있고; 보조 메시지 생성 유닛(1026)은 도 11에 도시된 단계 S403 및 단계 S404를 또한 수행할 수 있고; 인코딩 실행 유닛(1027)은 도 11에 도시된 단계 S405 내지 단계 S409를 또한 수행할 수 있다.
본 발명의 다른 실시예에서, 저장 유닛(1023)은 인코딩될 픽처를 로딩하며, 인코딩 실행 유닛(1027)에 의해 인코딩이 완료되는 픽처를 로딩하도록 또한 구성된다. 독립적으로 디코딩가능한 뷰 결정 유닛(1024)은 도 13에 도시된 단계 S601 내지 단계 S603을 또한 수행할 수 있고; 타일 분할 유닛(1025)은 도 14에 도시된 단계 S701 및 단계 S702를 또한 수행할 수 있고; 보조 메시지 생성 유닛(1026)은 도 13에 도시된 단계 S604를 또한 수행할 수 있고; 인코딩 실행 유닛(1027)은 도 14에 도시된 단계 S703 내지 단계 S707을 또한 수행할 수 있다.
본 발명의 또 다른 실시예에서, 저장 유닛(1023)은 인코딩될 픽처를 로딩하며, 인코딩 실행 유닛(1027)에 의해 인코딩이 완료되는 픽처를 로딩하도록 또한 구성된다. 독립적으로 디코딩가능한 뷰 결정 유닛(1024)은 도 16에 도시된 단계 S901 및 단계 S902를 또한 수행할 수 있고; 타일 분할 유닛(1025)은 도 16에 도시된 단계 S903 및 단계 S904를 또한 수행할 수 있고; 보조 메시지 생성 유닛(1026)은 도 16에 도시된 단계 S905를 또한 수행할 수 있고; 인코딩 실행 유닛(1027)은 도 17에 도시된 단계 S1001 내지 단계 S1006을 또한 수행할 수 있다.
본 발명의 일 실시예에 따른 디코더의 기능 모듈 구성의 개략도인 도 8에 도시된 바와 같이, 디코더(202)는 저장 유닛(2023), 수신 유닛(2024) 및 디코딩 실행 유닛(2025)을 포함한다. 저장 유닛(2023)은 디코딩될 픽처를 저장하고, 디코딩 실행 유닛(2025)에 의해 디코딩이 완료되었지만 디스플레이 시간에는 도달하지 않은 픽처를 로딩하도록 구성된다. 수신 유닛(2024)은 비디오 비트스트림을 수신하도록 구성되는데, 이 비디오 비트스트림은 디코딩될 비디오 및 보조 메시지를 포함하고, 디코딩될 비디오는 디코딩될 픽처 시퀀스를 포함한다. 디코딩 실행 유닛(2025)은 디코딩될 픽처를 취득하고; 보조 메시지에 따라 디코딩될 픽처의 독립적으로 디코딩가능한 영역의 위치 식별자를 획득하고 - 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일(tile)의 타일 식별자들(tile id)을 포함함 -; 독립적으로 디코딩가능한 영역의 위치 식별자에 따라 디코딩될 픽처의 독립적으로 디코딩가능한 영역을 획득하고, 독립적으로 디코딩가능한 영역을 디코딩하도록 구성된다.
보다 상세하게는, 수신 유닛(2024)은 도 12에 도시된 단계 S501을 수행하도록 또한 구성되고; 디코딩 실행 유닛(2025)은 도 12에 도시된 단계 S502 내지 단계 S515를 수행하도록 또한 구성된다.
본 발명의 다른 실시예에서, 수신 유닛(2024)은 도 15에 도시된 단계 S801을 수행하도록 또한 구성되고; 디코딩 실행 유닛(2025)은 도 15에 도시된 단계 S802 내지 단계 S816을 수행하도록 또한 구성된다.
본 발명의 또 다른 실시예에서, 수신 유닛(2024)은 도 18에 도시된 단계 S1101을 수행하도록 또한 구성되고; 디코딩 실행 유닛(2025)은 도 18에 도시된 단계 S1102 내지 단계 S1114를 수행하도록 또한 구성된다.
본 발명의 일 실시예에 따른 인코더의 특정 구현의 구조도인 도 9에 도시된 바와 같이, Fn 현재(1001)는 인코딩될 비디오에서의 현재 인코딩될 픽처의 프레임이고, F'n-1 기준(1002)은 인코딩될 비디오에서의 인코딩된 픽처의 프레임이며, 현재 인코딩될 픽처에 대한 인코딩 기준을 제공한다.
입력 프레임 Fn 현재(1001)는 인트라-프레임 또는 인터-프레임 예측 코딩 방법에 따라 처리된다. 인트라-프레임 예측 코딩이 이용되는 경우, Fn 현재(1001)에서의 이전에 인코딩된 기준 이미지에 대해 모션 보상(1006)(MC)이 수행된 이후에 Fn 현재(1001)의 예측값 PRED(도면에서 P로 표현됨)가 획득되고, 기준 이미지는 F'n-1 기준(1002)으로 표현된다. 예측 정밀도를 개선하여 압축비를 개선하기 위해서, 인코딩된, 디코딩된, 복원된, 또는 필터링된 프레임으로부터 실제 기준 이미지가 선택될 수 있다. 현재의 블록으로부터 예측값 PRED가 감산된 이후에, 잔여 블록 Dn이 생성되고, 변조 및 양자화 이후에, 양자화된 변환 계수들 X의 그룹이 생성된다. 다음에, 엔트로피 인코딩(1014) 이후에, 디코딩을 위해 요구되는 (예측 모드 양자화 파라미터 및 모션 벡터와 같은) 일부 정보 및 변환 계수들 X는 압축된 비트스트림을 형성하고, 압축된 비트스트림은 송신 및 저장을 위해 NAL(network adaptive layer)을 통과한다.
전술한 바와 같이, 추가 예측을 위해 기준 이미지를 제공하기 위해서, 인코더는 이미지를 복원하는 기능을 가질 필요가 있다. 따라서, 역양자화 및 역변환 이후에 획득되는 F'n 복원(1003)이 잔여 이미지에 대해 수행되고, 예측값 P가 함께 부가되어, uF'n(필터링되지 않은 프레임)을 획득해야 한다. 인코딩 및 디코딩 루프에서 생성된 잡음을 제거하고, 기준 프레임의 이미지 품질을 개선하여, 이미지 압축의 성능을 개선하기 위해서, 루프 필터가 배치되고, 필터링되어 출력된 F'n 복원(1003), 즉 복원된 이미지가 기준 이미지로서 이용될 수 있다.
본 발명에서, ME 및 인트라-프레임 예측 모드의 선택 중에, 독립적으로 디코딩가능한 영역 외부의 코딩 단위의 기준 범위에 대한 제한이 제거된다(상세를 위해, 도 10 내지 도 18에서의 설명 참조). 그러므로, 보다 유사한 기준 단위가 선택되어 예측 정밀도를 개선하고, 그에 따라 압축비를 개선할 수 있다.
도 10은 본 발명의 일 실시예에 따른 비디오 인코딩 방법을 도시한다. 이 실시예에서, 전술한 보조 메시지가 SEI 메시지에서 반송된다. 3D 비디오 비트스트림에서의 픽처의 각각의 프레임의 것이며 2D 디스플레이 디바이스에 의해 최종적으로 디스플레이되는 뷰 부분이 독립적으로 디코딩가능한 뷰이고; 타일 분할에 대응하여, 독립적으로 디코딩가능한 뷰를 커버하는 영역이 독립적으로 디코딩가능한 영역이다. SEI 메시지는 독립적으로 디코딩가능한 영역 식별자를 포함한다. 독립적으로 디코딩가능한 영역은 하나의 타일에 대응하는데, 즉 하나의 타일의 범위 내에 독립적으로 디코딩가능한 뷰를 포함하기 위해 하나의 타입의 타일 분할이 이용된다. 인코딩될 비디오, 즉 인코딩될 픽처 시퀀스는, 상이한 패킹 타입들과 상이한 플립핑 타입들을 갖는 픽처들을 포함할 수 있다.
도 10에 도시된 인코딩 방법은 인코더에 의해 비디오를 인코딩하는 프로세스이고, 이 비디오는 M개의 프레임의 길이를 갖는 픽처 시퀀스이다. 2-뷰 패킹 형태가 픽처의 각각의 프레임에 대해 일례로서 이용되고, 그것의 하나의 뷰가 2D 디스플레이 디바이스에서 최종적으로 디스플레이되는 부분, 즉 전술한 독립적으로 디코딩가능한 뷰이다. 통상의 기술자의 경우, 단순히 이 방법을 변환함으로써 2개 이상의 뷰에 의해 패킹된 픽처의 인코딩 방법을 획득할 수 있다.
단계 S301: 인코딩될 비디오의 구성 파일을 판독하는 단계 - 구성 파일은 인코더의 인코딩 프로세스에서 미리 결정될 필요가 있는 입력 파라미터, 예를 들어 코딩 툴, 코딩 제한, 인코딩될 픽처의 특성을 저장함 -.
단계 S302: 구성 파일에 따라, 픽처 시퀀스에서 독립적으로 디코딩될 필요가 있는 뷰를 결정하는 단계. 이 실시예에서, 전체 픽처 시퀀스에서 각각의 패킹 타입 및 플립핑 타입의 픽처에 대응하는 독립적으로 디코딩가능한 뷰가 픽처의 프레임에서의 좌측 뷰 또는 우측 뷰와 같이 구성 파일에서 미리 설정된다. 동일한 패킹 타입 및 플립핑 타입의 픽처들에 대응하는 독립적으로 디코딩가능한 뷰들은 동일하고, 상이한 패킹 타입 및 플립핑 타입의 픽처들에 대응하는 독립적으로 디코딩가능한 뷰들은 상이하다.
단계 S303: 픽처 시퀀스에서 픽처의 i번째 프레임을 취득하고, i=1을 설정하는 단계.
단계 S304: 픽처의 i번째 프레임을 인코딩하는 단계 - 다음의 도 11에는 특정 인코딩 프로세스가 상세하게 설명됨 -.
단계 S305: 현재 인코딩된 픽처의 i번째 프레임에 대응하는 AU를 출력하고, 인코더의 저장 장치 또는 외부 저장 장치, 예를 들어 소스 장치(100)의 비디오 메모리(101) 또는 인코더(102)의 버퍼(1021)에 AU를 저장하거나, 네트워크를 이용하여 원격 수신 장치(200)로 AU를 직접 송신하는 단계.
단계 S306: i가 M과 동일한 경우에는(즉, i번째 프레임이 최종 프레임인 경우에는), 인코딩이 종료되고; 그렇지 않은 경우에는, i=i+1이고, 단계 S303이 수행된다.
도 11은 도 10에 도시된 비디오 인코딩 방법의 단계 S304에서 픽처의 프레임을 인코딩하기 위한 특정 방법의 개략적인 플로우차트이다.
단계 S401: 구성 파일에 따라, 픽처의 현재의 i번째 프레임의 패킹 타입 및 플립핑 타입에 대응하는 독립적으로 디코딩가능한 뷰를 취득하는 단계.
단계 S402: 독립적으로 디코딩가능한 뷰를 커버하는 최소 타일에 따라 타일 분할을 결정하는 단계. 즉, 독립적으로 디코딩가능한 뷰는 하나의 타일의 범위 내에 포함되고, 또한 타일 분할의 상측, 하측, 좌측 및 우측은 LCU 정렬의 요건을 충족할 필요가 있다. 타일에 대응하는 영역이 독립적으로 디코딩가능한 영역이다. 그러면, 픽처의 i번째 프레임은, 독립적으로 디코딩가능한 영역을 커버하는 최소 타일을 제외한 영역 및 독립적으로 디코딩가능한 영역을 커버하는 최소 타일에 의해 형성된 타일들로 분할되고, 총 2개의 타일이고, 타일들의 수 N은 2로 설정된다. 본 발명의 다른 실시예에서, 타일들의 수는 2로 제한되지는 않는다. 타일 id는 먼저 좌-우 시퀀스로 할당된 다음, 상-하 시퀀스로 할당되고, 독립적으로 디코딩가능한 뷰를 커버하는 최소 타일의 id는 s로 미리 설정된다. 본 발명의 다른 실시예에서, 독립적으로 디코딩가능한 뷰를 커버하는 최소 타일은, 다음의 요건이 충족되는 한, 즉 타일이 독립적으로 디코딩가능한 뷰를 커버하고, 타일의 상측, 하측, 좌측 및 우측 경계가 LCU 정렬 요건을 충족하는 한, 타일 분할에서 벤치마크로서 반드시 이용되지는 않는다.
단계 S403: SEI 메시지가 생성될 필요가 있는지 여부를 판정하는 단계 - 판정 조건은 다음과 같다: 픽처의 현재의 i번째 프레임이 인코딩될 비디오 비트스트림에서의 픽처의 제1 프레임이거나, 픽처의 현재의 i번째 프레임이 픽처의 제1 프레임은 아니지만 패킹 타입 또는 플립핑 타입에 있어서 이전의 프레임과 상이한 경우, SEI 메시지가 생성될 필요가 있고, 단계 S404가 수행되고; 또는 픽처의 현재의 i번째 프레임이 인코딩될 비디오 비트스트림에서의 픽처의 제1 프레임이 아니며, 픽처의 현재의 i번째 프레임의 패킹 타입 또는 플립핑 타입이 이전의 프레임의 패킹 타입 또는 플립핑 타입과 동일한 경우, 단계 S405가 수행된다. 즉, 이 실시예에서, 동일한 패킹 타입 및 플립핑 타입의 연속적인 픽처들은 하나의 SEI 메시지에 대응한다. 픽처들의 2개의 연속적인 프레임의 패킹 타입 및 플립핑 타입이 상이한 경우, 새로운 SEI 메시지가 생성될 필요가 있다.
단계 S404: 본 발명에서 임시적으로 INDEC_RGN_SEI로 명명되는 SEI 메시지를 생성하고, SEI 메시지의 각각의 필드를 설정하는 단계 - SEI 메시지는 다음의 표에서 정의됨 -.
Figure pct00001
이 표에서의 ue(v)는 필드의 길이가 가변임을 나타내고, u(n)은 필드의 길이가 n 비트(bite)임을 나타내며, u(1)은 필드의 길이가 1 비트임을 나타낸다.
독립적으로 디코딩가능한 영역의 위치 식별자 정보:
tile_id: 이 실시예에서는 s인, 독립적으로 디코딩가능한 뷰를 커버하는 최소 타일의 id.
다음의 것은 독립적으로 디코딩가능한 영역의 크롭핑 정보이다:
cropping_enable_flag: 타일(s)에 포함된 독립적으로 디코딩가능한 뷰의 폭이 타일(s)의 폭과 동일하고, 독립적으로 디코딩가능한 뷰의 높이가 타일(s)의 높이와 동일한 경우에는, cropping_enable_flag가 false로 설정되고; 그렇지 않은 경우에는, cropping_enable_flag가 true로 설정된다.
pic_crop_left_offset: 타일(s)에 대한 독립적으로 디코딩가능한 뷰의 좌측 에지의 수평 좌표를 포함하며, 픽셀이 단위로서 이용된다.
pic_crop_right_offset: 타일(s)에 대한 독립적으로 디코딩가능한 뷰의 우측 에지의 수평 좌표를 포함하며, 픽셀이 단위로서 이용된다.
pic_crop_top_offset: 타일(s)에 대한 독립적으로 디코딩가능한 뷰의 상측 에지의 수직 좌표를 포함하며, 픽셀이 단위로서 이용된다.
pic_crop_bottom_offset:타일(s)에 대한 독립적으로 디코딩가능한 뷰의 하측 에지의 수직 좌표를 포함하며, 픽셀이 단위로서 이용된다.
다음의 것은 독립적으로 디코딩가능한 영역(즉, 타일(s)에 대응하는 영역)의 서브비트스트림의 프로파일 및 레벨 정보이다:
new_profile_flag: 독립적으로 디코딩가능한 영역의 서브비트스트림의 프로파일의 식별자가 전체 비트스트림의 프로파일의 식별자와 동일한지 여부를 나타낸다. new_profile_flag의 값이 0인 경우에는, 이들이 동일함을 나타내며; new_profile_flag의 값이 1인 경우에는, 이들이 상이함을 나타낸다.
new_level_flag: 독립적으로 디코딩가능한 영역의 서브비트스트림의 레벨의 식별자가 전체 비트스트림의 레벨의 식별자와 동일한지 여부를 나타낸다. new_level_flag의 값이 0인 경우에는, 이들이 동일함을 나타내며; new_level_flag의 값이 1인 경우에는, 이들이 상이함을 나타낸다.
profile_idc: 독립적으로 디코딩가능한 영역에서의 코딩 툴 세트가 적용되는 프로파일 id.
level_idc: 디코더가 만족시킬 필요가 있는 최저 레벨의 id. 전체 픽처의 영역에 대한 타일(s)의 비율에 따라, 타일(s)를 디코딩하기 위한 최대 캐시 및 비트 레이트가 계산된다. 예를 들어, 전체 픽처를 디코딩하기 위한 최대 캐시는 y이고, 비트 레이트는 x이며, 전체 픽처의 영역에 대한 타일(s)의 비율은 r이다. 그러면, 타일(s)에 대한 비트 레이트는 x*r이고, 최대 캐시는 y*r이다. 이 디코딩 성능을 충족하는 최소 레벨은 타일(s)에 대한 비트 레이트 x*r과 최대 캐시 y*r 및 profile_idc에 따라 탐색되고, level_idc는 전술한 최소 레벨로 설정된다.
현재의 타일 id는 k로 설정되는데, 여기서 k=1이다.
단계 S405: k가 s인 경우에는, 즉 현재의 타일이 독립적으로 디코딩가능한 뷰를 커버하는 타일인 경우에는, 단계 S406이 수행되고; 그렇지 않은 경우에는, 단계 S407이 수행된다.
단계 S406: 픽처의 현재의 i번째 프레임과 동일한 패킹 타입 및 플립핑 타입을 갖는 인코딩된 픽처에서의 타일(s)를 현재의 i번째 프레임에서의 타일(s)의 후보 인터-프레임 기준 영역으로 설정하는 단계.
단계 S407: 인코딩된 픽처의 프레임에서의 모든 픽처 영역을 타일(k)의 후보 인터-프레임 기준 영역으로 설정하는 단계.
단계 S408: 인트라-프레임 예측 또는 인터-프레임 예측 알고리즘의 이용을 선택하여, 타일(k)를 인코딩하는 단계. 인터-프레임 예측 알고리즘이 인코딩을 위해 이용될 때에, 인코딩을 수행하기 위해 단계 S406 및 단계 S407에서 획득된 후보 인터-프레임 기준 영역들로부터 최적의 기준 영역이 선택된다.
단계 S409: k가 N보다 작은 경우에는, 즉 타일(k)가 인코딩될 픽처에서의 최종 타일이 아닌 경우에는(여기서, N은 픽처의 프레임에서의 타일들의 총 수임), k=k+1이고, 프로세스는 단계 S405로 스위칭되고; k가 N과 동일한 경우에는, 인코딩이 종료된다.
전술한 도 10 및 도 11에서 제공된 인코딩 방법에 따르면, 보조 메시지가 인코딩된 비트스트림에 부가되며, SEI 메시지에서 반송되고, SEI 메시지에서의 프로파일 및 레벨 정보는 독립적으로 디코딩가능한 영역에 대해 형성된 서브비트스트림에만 적용되는데, 이는 디코더의 성능에 대한 요건을 저하시킨다. 또한, 단계 S406 및 단계 S407에서 독립적으로 디코딩가능한 영역 타일 및 비-독립적으로 디코딩가능한 영역 타일에 대해 상이한 후보 인터-프레임 기준 영역들이 별개로 설정되는데, 이는 영역에서의 인코딩 블록이 독립적으로 디코딩될 수 있음을 보장하며, 영역 외부로 인코딩 블록의 기준 범위를 확장한다. 그러므로, 인코딩에서 현재의 블록과 유사한 인코딩 블록에 대한 참조가 이루어질 수 있고, 그에 따라 인코딩 효율을 개선하며 송신 데이터 볼륨을 절약하게 된다.
도 12는 본 발명의 일 실시예에 따른 비디오 디코딩 방법을 도시한다. 이 실시예에서, 디코더는 도 10 및 도 11에 도시된 프로세스에서 인코딩된 비디오 비트스트림을 디코딩하는데, 즉 M의 길이를 갖는 픽처 시퀀스를 디코딩하는 프로세스는 다음과 같다:
단계 S501: 디코딩될 비디오 비트스트림을 수신하는 단계 - 비디오 비트스트림은 수개의 AU를 포함하고, 각각의 AU는 인코딩된 픽처의 프레임에 대응함 -.
단계 S502: 이 비트스트림으로부터 하나의 AU를 취득하는 단계.
단계 S503: 현재의 AU가 프레임 패킹 배열에서의 픽처를 포함하는지 여부를 판정하는 단계 - 판정 방법은 다음과 같다: (1) 현재의 AU가 FPA(frame packing arrangement) 메시지를 포함하고, 메시지에서의 취소 플래그 비트가 0인 것; (2) 현재의 AU가 FPA 메시지를 포함하지 않지만, 디코딩될 비디오 비트스트림에서 이전에 수신된 최종 FPA 메시지에서의 취소 플래그 비트가 0인 것 -. 2가지 조건 중 어느 하나가 충족되는 경우에는, 단계 S504가 수행되고; 그렇지 않은 경우에는, 프로세스는 단계 S515로 스위칭된다.
단계 S504: 현재의 AU가 SEI 메시지를 포함하는지 여부를 판정하는 단계. 그러한 경우에는, 단계 S506이 수행되고; 그렇지 않은 경우에는, 단계 S505가 수행된다.
단계 S505: 이전에 수신된 AU가 SEI 메시지를 포함하는지 여부를 판정하는 단계. 그러한 경우에는, 현재의 AU에서의 픽처를 디코딩하여 출력하기 위해 이 메시지에서의 파라미터가 재이용되며, 단계 S509가 수행되고; 그렇지 않은 경우에는, 단계 S515가 수행된다.
단계 S506: 디코더의 성능이 SEI 메시지에서의 프로파일 및 레벨 요건을 충족하는지 여부를 판정하는 단계. 그렇지 않은 경우에는, 디코딩이 수행될 수 없고, 바로 종료되며; 그러한 경우에는, 단계 S507이 수행된다.
단계 S507: SEI 메시지에서의 프로파일 및 레벨 정보에 따라 디코더를 초기화하는 단계.
단계 S508: 전술한 SEI 메시지로부터, 독립적으로 디코딩가능한 영역에 대응하는 타일 id를 취득하는 단계 - 독립적으로 디코딩가능한 영역에 대응하는 타일 id는 이 실시예에서 s임 -.
단계 S509: AU로부터 픽처 정보를 획득하는 단계 - 픽처 정보는 인코딩된 픽처 정보이며, 디코더에 의해 디코딩됨 -.
단계 S510: SEI 메시지로부터 취득되며 독립적으로 디코딩가능한 영역에 대응하는 타일 id에 따라 픽처로부터 타일(s)에서의 픽처를 획득하는 단계.
단계 S511: 타일(s)에서의 픽처를 디코딩하는 단계 - 디코딩 방법은 인코딩 프로세스에서의 대응하는 인코딩 방법에 따라 결정됨 -.
단계 S512: 전술한 SEI 메시지에서의 크롭핑 정보에 따라 타일(s)에서의 픽처를 크롭핑하는 단계. cropping_enable_flag가 false인 경우에는, 크롭핑이 요구되지 않고; 그렇지 않은 경우에는, pic_crop_left_offset, pic_crop_right_offset, pic_crop_top_offset 및 pic_crop_bottom_offset에 의해 식별된 영역, 즉 타일(s)에서의 독립적으로 디코딩가능한 뷰가 타일(s)로부터 획득된다.
단계 S513: 독립적으로 디코딩가능한 영역에서의 독립적으로 디코딩가능한 뷰를 출력하는 단계.
단계 S514: 현재의 AU가 비트스트림에서의 최종 AU인 경우에는, 디코딩이 종료되고; 그렇지 않은 경우에는, 단계 S502가 수행된다.
단계 S515: 정상 디코딩 프로세스를 수행하는 단계.
이 실시예에서 제공된 디코딩 방법에 따르면, 디코더가 프레임 패킹 3DTV 기술을 이용하여 인코딩된 3D 비디오 비트스트림을 수신하지만, 디코더가 2D 디스플레이 디바이스에 접속되는 경우, 디코더는 SEI 메시지에 따라 2개의 뷰 중 하나만을 획득하여 디코딩을 수행할 수 있는데, 즉 디코딩은 독립적으로 디코딩가능한 영역에 대해서만 수행되는데, 이는 디코더의 성능에 대한 요건을 저하시키며, 디코더의 계산 및 저장 리소스들을 절약한다. 또한, 독립적으로 인코딩가능한 영역의 서브비트스트림에 대응하는 프로파일 및 레벨은 일반적으로 디코더의 성능 및 스토리지에 대한 요건을 저하시킨다. 그러므로, 디코더가 초기화된 이후에, 디코더의 디코딩 시간 및 전력 소비는 감소될 수 있고, 디코더의 스토리지에 대한 요건도 감소된다. 디코더가 오리지널 3D 비디오 비트스트림의 프로파일 및 레벨 요건을 충족하지 않지만, 디코더가 독립적으로 인코딩가능한 영역의 서브비트스트림에 대응하는 프로파일 및 레벨 요건을 충족하는 경우, 해상도 또는 비트 레이트에 대해 높은 요건을 가지며 2D 디스플레이와 호환되는 3D 비디오 비트스트림에 대한 디코더의 지원이 증가된다.
도 13은 본 발명의 일 실시예에 따른 다른 비디오 인코딩 방법을 도시한다. 이 실시예에서, 전술한 보조 메시지는 또한 SEI 메시지에서 반송되지만, 이 SEI 메시지는 도 10, 도 11 및 도 12에서의 SEI 메시지와는 상이하다. SEI 메시지는 다양한 패킹 타입 및 플립핑 타입의 픽처들에 대응하는 프로파일 및 레벨 정보와, 크롭핑 정보와, 상이한 독립적으로 디코딩가능한 영역 식별자들을 포함한다. 3D 비디오 비트스트림에서의 픽처의 각각의 프레임의 것이며 2D 디스플레이 디바이스에 의해 최종적으로 디스플레이되는 뷰가 독립적으로 디코딩가능한 뷰이다. 독립적으로 디코딩가능한 뷰를 커버하는 영역은 복수의 타일에 의해 형성된 직사각형 영역으로 표현되고, 각각의 타일은 LCU 정렬의 요건을 충족할 필요가 있고, 복수의 타일에 의해 형성된 직사각형 영역은 독립적으로 디코딩가능한 영역이다. 인코딩될 비디오, 즉 인코딩될 픽처 시퀀스는, 상이한 패킹 타입들과 상이한 플립핑 타입들을 갖는 픽처들을 포함할 수 있다.
도 13에 도시된 인코딩 방법은 인코더에 의해 비디오를 인코딩하는 프로세스이고, 이 비디오는 M의 길이를 갖는 픽처 시퀀스이다. 2-뷰 배열 형태가 픽처의 각각의 프레임에 대해 일례로서 이용되고, 그것의 하나의 뷰가 2D 디스플레이 디바이스에 의해 최종적으로 디스플레이되는 부분, 즉 전술한 독립적으로 디코딩가능한 뷰이다. 통상의 기술자의 경우, 단순히 이 방법을 변환함으로써 2개 이상의 뷰에 의해 패킹된 픽처의 인코딩 방법을 획득할 수 있다.
단계 S601: 인코딩될 비디오의 구성 파일을 판독하는 단계 - 구성 파일은 인코더의 인코딩 프로세스에서 미리 결정될 필요가 있는 입력 파라미터, 예를 들어 코딩 툴, 코딩 제한, 인코딩될 픽처의 특성을 저장함 -. 이 실시예에서, 전체 픽처 시퀀스에서 각각의 패킹 타입 및 플립핑 타입의 픽처에 대응하는 독립적으로 디코딩가능한 뷰가 픽처의 프레임에서의 좌측 뷰 또는 우측 뷰와 같이 구성 파일에서 미리 설정된다. 동일한 패킹 타입 및 플립핑 타입의 픽처들에 대응하는 독립적으로 디코딩가능한 뷰들은 동일하고, 상이한 패킹 타입 및 플립핑 타입의 픽처들에 대응하는 독립적으로 디코딩가능한 뷰들은 상이하다.
단계 S602: 인코딩될 비디오의 구성 파일에 따라, 픽처 시퀀스에서의 픽처의 각각의 프레임의 패킹 타입과 플립핑 타입의 조합을 취득하는 단계.
단계 S603: 구성 파일에 따라 취득되는, 픽처의 각각의 프레임의 패킹 타입과 플립핑 타입에 대한 정보에 따라 그리고 각각의 패킹 타입 및 플립핑 타입의 픽처에 대응하며 구성 파일에서 미리 설정되는 독립적으로 디코딩가능한 뷰에 따라, 픽처 시퀀스에서의 픽처의 각각의 프레임의 독립적으로 디코딩가능한 뷰를 결정하는 단계.
단계 S604: SEI 메시지를 생성하는 단계 - SEI 메시지는 하나의 픽처 시퀀스에서 한번만 송신되고, SEI 메시지는 다양한 패킹 타입 및 플립핑 타입의 픽처들에 대응하는 프로파일 및 레벨 정보와, 크롭핑 정보와, 상이한 독립적으로 디코딩가능한 영역 식별자들을 포함함 -.
SEI 메시지의 각각의 필드가 설정되는데, SEI 메시지는 다음의 표에서 정의된다. 구성 파일로부터 취득되는, 픽처 시퀀스의 패킹 타입과 플립핑 타입의 조합에 따르면, SEI의 시작에 있는 필드 arrange_leftright_no_flip, arrange_leftright_flip, arrange_topdown_no_flip 및 arrange_topdown_flip이 설정된 다음, 독립적으로 디코딩가능한 영역들의 것이며 상이한 패킹 타입 및 플립핑 타입의 픽처들에 대응하는 프로파일 및 레벨 정보와, 크롭핑 정보와, 위치 식별자 정보가 별개로 설정된다. 예를 들어, arrange_leftright_no_flip이 1일 때에, 좌-우 패킹되며 플립핑 타입을 갖지 않는 픽처에 대응하는 파라미터가 (arrange_leftright_no_flip) {...}의 경우에 저장되는데, 이 영역에서의 파라미터는, 좌-우 패킹되며 플립핑 타입을 갖지 않는 픽처가 디코딩될 때에 항상 이용된다. 패킹과 플립핑의 다른 조합 케이스는 이 케이스와 유사하다.
Figure pct00002
Figure pct00003
이 표에서의 ue(v)는 필드의 길이가 가변임을 나타내고, u(n)은 필드의 길이가 n 비트(bite)임을 나타내며, u(1)은 필드의 길이가 1 비트임을 나타낸다.
arrange_leftright_no_flip: 픽처가 좌-우 뷰 플립핑 없이 좌-우 패킹된다.
arrange_leftright_flip: 픽처가 좌-우 뷰 플립핑과 함께 좌-우 패킹된다.
arrange_topdown_no_flip: 픽처가 좌-우 뷰 플립핑 없이 상-하 패킹된다.
arrange_topdown_flip: 픽처가 좌-우 뷰 플립핑과 함께 상-하 패킹된다.
독립적으로 디코딩가능한 영역의 위치 식별자 정보:
tile_num: 독립적으로 디코딩가능한 뷰를 커버하는 포함된 타일들의 개수.
tile_ids: 독립적으로 디코딩가능한 뷰를 커버하는 포함된 타일들의 id 어레이로서, 이는 독립적으로 디코딩가능한 영역을 커버하는 수개의 타일에 대응하는 id 세트를 나타냄.
다음의 것은 독립적으로 디코딩가능한 영역의 크롭핑 정보이다:
cropping_enable_flag: 독립적으로 디코딩가능한 뷰의 폭이 독립적으로 디코딩가능한 영역의 폭과 동일하고, 독립적으로 디코딩가능한 뷰의 높이가 독립적으로 디코딩가능한 영역의 높이와 동일한 경우에는, cropping_enable_flag가 false로 설정되고; 그렇지 않은 경우에는, cropping_enable_flag가 true로 설정된다.
pic_crop_left_offset: 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일에 대한 독립적으로 디코딩가능한 뷰의 좌측 에지의 수평 좌표를 포함하며, 픽셀이 단위로서 이용된다.
pic_crop_right_offset: 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일에 대한 독립적으로 디코딩가능한 뷰의 우측 에지의 수평 좌표를 포함하며, 픽셀이 단위로서 이용된다.
pic_crop_top_offset: 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일에 대한 독립적으로 디코딩가능한 뷰의 상측 에지의 수직 좌표를 포함하며, 픽셀이 단위로서 이용된다.
pic_crop_bottom_offset:독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일에 대한 독립적으로 디코딩가능한 뷰의 하측 에지의 수직 좌표를 포함하며, 픽셀이 단위로서 이용된다.
다음의 것은 독립적으로 디코딩가능한 영역의 서브비트스트림의 프로파일 및 레벨 정보이다:
profile_idc: 독립적으로 디코딩가능한 영역에서의 코딩 툴 세트가 충족되는 프로파일 id.
level_idc: 디코더가 만족시킬 필요가 있는 최저 레벨의 id. 전체 픽처의 영역에 대한 독립적으로 디코딩가능한 영역의 비율에 따라, 독립적으로 디코딩가능한 영역을 디코딩하기 위한 최대 캐시 및 비트 레이트가 계산된다. 예를 들어, 전체 픽처를 디코딩하기 위한 최대 캐시는 y이고, 비트 레이트는 x이며, 전체 픽처의 영역에 대한 독립적으로 디코딩가능한 영역의 비율은 r이다. 그러면, 독립적으로 디코딩가능한 영역에 대한 비트 레이트는 x*r이고, 최대 캐시는 y*r이다. 이 디코딩 성능을 충족하는 최소 레벨은 독립적으로 디코딩가능한 영역에 대한 비트 레이트 x*r과 최대 캐시 y*r 및 profile_idc에 따라 탐색되고, level_idc는 전술한 최소 레벨로 설정된다.
단계 S605: 픽처의 i번째 프레임을 취득하고, i=1을 설정하는 단계.
단계 S606: 픽처의 i번째 프레임을 인코딩하는 단계 - 다음의 도 14에는 특정 인코딩 프로세스가 상세하게 설명됨 -.
단계 S607: 현재 인코딩된 픽처의 i번째 프레임에 대응하는 AU를 출력하고, 인코더의 저장 장치 또는 외부 저장 장치, 예를 들어 소스 장치(100)의 비디오 메모리(101) 또는 인코더(102)의 버퍼(1021)에 AU를 저장하거나, 네트워크를 이용하여 원격 수신 장치(200)로 AU를 직접 송신하는 단계.
단계 S608: i가 M과 동일한 경우에는(즉, i번째 프레임이 최종 프레임인 경우에는), 인코딩이 종료되고; 그렇지 않은 경우에는, i=i+1이고, 단계 S605가 수행된다.
도 14는 도 13에 도시된 비디오 인코딩 방법의 단계 S606에서 픽처의 프레임을 인코딩하기 위한 특정 방법의 개략적인 플로우차트이다.
단계 S701: 타일 분할 솔루션을 결정하고, 인코딩될 비디오의 구성 파일에 따라 픽처를 분할하는 단계. 타일 id는 먼저 좌-우 시퀀스로 할당된 다음, 상-하 시퀀스로 할당된다. 동일한 패킹 타입 및 동일한 플립핑 타입의 프레임 픽처들에 대해, 타일 분할은 동일하다. 현재의 타일 id는 k로 설정되는데, 여기서 k=1이고, 타일들의 총 수는 N이다.
단계 S702: 픽처 시퀀스에서의 상이한 패킹 타입 및 플립핑 타입의 픽처의 것이며 단계 S603에서 결정되는 독립적으로 디코딩가능한 뷰에 따라, 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일의 세트를 결정하는 단계 - 각각의 타일은 LCU 정렬의 요건을 충족할 필요가 있음 -. 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일에 대응하는 영역은 독립적으로 디코딩가능한 영역이다. 따라서, 독립적으로 디코딩가능한 영역을 커버하는 타일들의 수에 따라 SEI 메시지에서의 tile_num 필드가 설정되고; 독립적으로 디코딩가능한 영역을 커버하는 타일들의 id 세트에 따라 tile_ids 필드가 설정되는데, 이 필드는 수개의 타일들의 id 어레이이다. LCU 정렬이 수행된 이후에, SEI 메시지에서 크롭핑 정보에 대응하는 필드가 대응하는 크롭핑 정보에 따라 설정된다.
단계 S703: 단계 S702에 따라, 현재의 타일(k)가 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일 중 하나의 타일에 속하는지 여부를 판정하는 단계. 타일(k)가 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일 중 하나의 타일에 속하는 경우에는, 단계 S704가 수행되고; 그렇지 않은 경우에는, 단계 S705가 수행된다.
단계 S704: 타일(k)가 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일 중 하나의 타일에 속하는 경우, 동일한 패킹 타입 및 플립핑 타입의 이전에 인코딩된 픽처에서의 독립적으로 디코딩가능한 영역을 현재의 픽처에서의 타일(k)의 후보 인터-프레임 기준 영역으로 설정하는 단계.
단계 S705: 타일(k)가 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일 중 하나의 타일에 속하지 않는 경우, 이전에 인코딩된 픽처에서의 모든 픽처 영역을 현재의 픽처에서의 타일(k)의 후보 인터-프레임 기준 영역으로 설정하는 단계.
단계 S706: 인트라-프레임 예측 또는 인터-프레임 예측 알고리즘의 이용을 선택하여, 타일(k)를 인코딩하는 단계. 인터-프레임 예측 알고리즘이 인코딩을 위해 이용될 때에, 단계 S704 및 단계 S705에서의 후보 인터-프레임 기준 영역들로부터 최적의 기준 영역이 선택된다.
단계 S707: k가 N보다 작은 경우에는, 즉 타일(k)가 인코딩될 픽처에서의 최종 타일이 아닌 경우에는, k=k+1이고, 단계 S703이 수행되고; k가 N과 동일한 경우에는, 인코딩이 종료된다.
전술한 도 13 및 도 14에서 제공된 인코딩 방법에 따르면, 보조 메시지가 인코딩된 비트스트림에 부가되며, SEI 메시지에서 반송되고, SEI 메시지에서의 프로파일 및 레벨 정보는 독립적으로 디코딩가능한 영역에 대해 형성된 서브비트스트림에만 적용되는데, 이는 디코더의 성능에 대한 요건을 저하시킨다. 또한, 단계 S704 및 단계 S705에서 독립적으로 디코딩가능한 영역 타일 및 비-독립적으로 디코딩가능한 영역 타일에 대해 상이한 후보 인터-프레임 기준 영역들이 별개로 설정되는데, 이는 영역에서의 인코딩 블록이 독립적으로 디코딩될 수 있음을 보장하며, 영역 외부로 인코딩 블록의 기준 범위를 확장한다. 그러므로, 인코딩에서 현재의 블록과 유사한 인코딩 블록에 대한 참조가 이루어질 수 있고, 그에 따라 인코딩 효율을 개선하며 송신 데이터 볼륨을 절약하게 된다.
도 15는 본 발명의 일 실시예에 따른 비디오 디코딩 방법을 도시한다. 이 실시예에서, 디코더는 도 13 및 도 14에 도시된 프로세스에서 인코딩된 비디오 비트스트림을 디코딩하는데, 즉 M의 길이를 갖는 픽처 시퀀스를 디코딩하는 프로세스는 다음과 같다:
단계 S801: 디코딩될 비디오 비트스트림을 수신하는 단계 - 비디오 비트스트림은 수개의 AU를 포함하고, 각각의 AU는 인코딩된 픽처의 프레임에 대응함 -.
단계 S802: 이 비디오 비트스트림으로부터 하나의 AU를 취득하는 단계.
단계 S803: 현재의 AU가 프레임 패킹 배열에서의 픽처를 포함하는지 여부를 판정하는 단계 - 판정 방법은 다음과 같다: (1) 현재의 AU가 FPA(frame packing arrangement) 메시지를 포함하고, 메시지에서의 취소 플래그 비트가 0인 것; (2) 현재의 AU가 FPA 메시지를 포함하지 않지만, 디코딩될 비디오 비트스트림에서 이전에 수신된 최종 FPA 메시지에서의 취소 플래그 비트가 0인 것 -. 2가지 조건 중 어느 하나가 충족되는 경우에는, 단계 S804가 수행되고; 그렇지 않은 경우에는, 단계 S816이 수행된다.
단계 S804: 현재의 AU가 SEI 메시지를 포함하는지 또는 이전의 비트스트림이 SEI 메시지를 이미 수신하였는지 여부를 판정하는 단계. 그러한 경우에는, 프로세스는 단계 S805로 진행되고; 그렇지 않은 경우에는, 프로세스는 단계 S816으로 스위칭된다.
단계 S805: 현재의 AU로부터 인코딩된 픽처 정보를 획득하는 단계.
단계 S806: FPA 메시지에 따라, 픽처의 현재의 i번째 프레임의 패킹 타입과 플립핑 타입이 픽처의 이전의 프레임의 것과 동일한지 여부를 판정하는 단계. 그러한 경우에는, 단계 S811이 수행되고; 그렇지 않은 경우에는, 단계 S807이 수행된다.
단계 S807: 현재의 프레임의 패킹 타입 및 플립핑 타입에 따라, SEI 메시지에서 이들 타입에 대응하는 파라미터를 찾고, 이들 타입에 대응하며 독립적으로 디코딩가능한 영역의 것인 프로파일 및 레벨 정보와, 크롭핑 정보와, 식별자 정보를 획득하는 단계.
단계 S808: 디코더의 성능이 SEI 메시지에서의 프로파일 및 레벨을 충족하는지 여부를 판정하는 단계. 그렇지 않은 경우에는, 디코딩이 수행될 수 없고, 프로세스가 바로 종료되며; 그러한 경우에는, 단계 S809가 수행된다.
단계 S809: SEI 메시지에서의 프로파일 및 레벨 정보에 따라 디코더를 초기화하는 단계.
단계 S810: 전술한 SEI 메시지로부터, 독립적으로 디코딩가능한 영역에 대응하는 수개의 타일의 id 세트를 취득하는 단계.
단계 S811: 전술한 타일 id 세트에 따라, 독립적으로 디코딩가능한 영역을 커버하는 수개의 타일을 획득하는 단계.
단계 S812: 독립적으로 디코딩가능한 영역을 커버하는 수개의 타일에서의 픽처를 디코딩하는 단계 - 디코딩 방법은 인코딩 프로세스에서의 대응하는 인코딩 방법에 따라 결정됨 -.
단계 S813: 전술한 SEI 메시지에서의 크롭핑 정보에 따라 수개의 타일에서의 픽처를 크롭핑하는 단계. cropping_enable_flag가 false인 경우에는, 크롭핑이 요구되지 않고; 그렇지 않은 경우에는, pic_crop_left_offset, pic_crop_right_offset, pic_crop_top_offset 및 pic_crop_bottom_offset에 의해 식별된 영역, 즉 수개의 타일에서의 독립적으로 디코딩가능한 뷰가 수개의 타일로부터 획득된다.
단계 S814: 도 4에 도시된 디스플레이 장치(201)로 독립적으로 디코딩가능한 뷰를 출력하거나, 또는 출력 시간에 도달하지 않은 경우에는 도 6에 도시된 버퍼(2021)에 독립적으로 디코딩가능한 뷰를 임시 저장하는 단계.
단계 S815: 현재의 AU가 비트스트림에서의 최종 AU인 경우에는, 디코딩이 종료되고; 그렇지 않은 경우에는, 단계 S802가 수행된다.
단계 S816: 정상 디코딩 프로세스를 수행하는 단계.
이 실시예에서 제공된 디코딩 방법에 따르면, 디코더가 프레임 패킹 3DTV 기술을 이용하여 인코딩된 3D 비디오 비트스트림을 수신하지만, 디코더가 2D 디스플레이 디바이스에 접속되는 경우, 디코더는 SEI 메시지에 따라 2개의 뷰 중 하나만을 획득하여 디코딩을 수행할 수 있는데, 즉 디코딩은 독립적으로 디코딩가능한 영역에 대해서만 수행되는데, 이는 디코더의 성능에 대한 요건을 저하시키며, 디코더의 계산 및 저장 리소스들을 절약한다. 단계 S809를 참조하면, 독립적으로 인코딩가능한 영역의 서브비트스트림에 대응하는 프로파일 및 레벨은 일반적으로 디코더의 성능 및 스토리지에 대한 요건을 저하시킨다. 그러므로, 디코더가 초기화된 이후에, 디코더의 디코딩 시간 및 전력 소비는 감소될 수 있고, 디코더의 스토리지에 대한 요건도 감소된다. 디코더가 오리지널 3D 비디오 비트스트림의 프로파일 및 레벨 요건을 충족하지 않지만, 디코더가 독립적으로 인코딩가능한 영역의 서브비트스트림에 대응하는 프로파일 및 레벨 요건을 충족하는 경우, 해상도 또는 비트 레이트에 대해 높은 요건을 가지며 2D 디스플레이와 호환되는 3D 비디오 비트스트림에 대한 디코더의 지원이 증가된다.
도 16은 본 발명의 일 실시예에 따른 비디오 인코딩 방법을 도시한다. 이 실시예에서, 전술한 보조 메시지는 SPS 메시지에서 반송된다. 이 SPS 메시지는 독립적으로 디코딩가능한 영역 식별자를 포함할 수 있고, 독립적으로 디코딩가능한 영역의 위치 식별자 정보와, 크롭핑 정보와, 프로파일 및 레벨 정보를 또한 포함할 수 있다. 독립적으로 디코딩가능한 영역은 하나 이상의 독립 타일에 의해 형성된 직사각형 영역에 대응한다. 독립적으로 디코딩가능한 영역 외부의 영역은 하나 이상의 종속 타일에 의해 형성된 직사각형 영역에 대응한다. 이 실시예에서, 인코딩될 비디오, 즉 인코딩될 픽처 시퀀스는 동일한 패킹 타입 및 플립핑 타입을 갖는다. 픽처 시퀀스가 상이한 패킹 타입 및 플립핑 타입을 갖는 경우, 픽처 시퀀스의 인코딩 프로세스는 도 11에 도시된 단계 S403 및 단계 S404와 유사하고, 픽처 시퀀스의 디코딩 프로세스는 도 15에 도시된 단계 S807과 유사하고, 차이점은, 보조 메시지가 각각 SEI 메시지 및 SPS 메시지에서 반송된다는 점이다.
도 16에 도시된 인코딩 방법은 인코더에 의해 비디오를 인코딩하는 프로세스이고, 이 비디오는 M의 길이를 갖는 픽처 시퀀스이다. 2-뷰 패킹 배열이 픽처의 각각의 프레임에 대해 일례로서 이용되고, 그것의 하나의 뷰가 2D 디스플레이 디바이스에 의해 최종적으로 디스플레이되는 부분, 즉 전술한 독립적으로 디코딩가능한 영역이다. 통상의 기술자의 경우, 단순히 이 방법을 변환함으로써 2개 이상의 뷰에 의해 패킹된 픽처의 인코딩 방법을 획득할 수 있다.
단계 S901: 인코딩될 비디오의 구성 파일을 판독하는 단계 - 구성 파일은 인코더의 인코딩 프로세스에서 미리 결정될 필요가 있는 입력 파라미터, 예를 들어 코딩 툴, 코딩 제한, 및 인코딩될 픽처의 특성을 저장함 -. 이 실시예에서, 픽처의 각각의 프레임의 독립적으로 디코딩가능한 뷰가 구성 파일에서 미리 설정된다. 이 실시예에서의 픽처 시퀀스가 동일한 패킹 타입 및 플립핑 타입을 갖기 때문에, 픽처의 각각의 프레임의 독립적으로 디코딩가능한 뷰는 동일하다.
단계 S902: 구성 파일에 따라, 픽처 시퀀스에서의 픽처의 각각의 프레임의 독립적으로 디코딩가능한 뷰, 예를 들어 픽처의 프레임에서의 좌측 뷰 또는 우측 뷰를 결정하고, 현재의 프레임을 i번째 프레임으로 설정하는 단계(여기서, i=1임).
단계 S903: 타일 분할 솔루션을 결정하고, 구성 파일에 따라 픽처를 분할하는 단계. 타일 id는 먼저 좌-우 시퀀스로 할당된 다음, 상-하 시퀀스로 할당된다. 동일한 패킹 타입 및 동일한 플립핑 타입의 프레임 픽처들에 대해, 타일 분할은 동일하다. 현재의 타일 id는 k로 설정되는데, 여기서 k=1이고, 타일들의 총 수는 N이다.
단계 S904: 픽처의 각각의 프레임의 것이며 단계 S902에서 결정되는 독립적으로 디코딩가능한 뷰에 따라, 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일의 세트를 결정하고, 이 세트에서의 타일을 독립 타일로 정의하며, 이 세트 외부의 타일을 종속 타일로 정의하는 단계 - 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일은, 이 수개의 타일의 상측, 하측, 좌측 및 우측 경계가 LCU와 정렬되는 요건을 충족할 필요가 있음 -.
단계 S905: SPS 메시지에서의 파라미터를 설정하고, 독립적으로 디코딩가능한 영역의 것인 프로파일 및 레벨 정보와, 크롭핑 정보와, 식별자 정보에 따라 SPS 메시지에서의 각각의 필드를 설정하는 단계.
Figure pct00004
이 표에서의 ue(v)는 필드의 길이가 가변임을 나타내고, u(n)은 필드의 길이가 n 비트임을 나타내며, u(1)은 필드의 길이가 1 비트임을 나타낸다.
독립적으로 디코딩가능한 영역 식별자:
indec_rgn_present_flag: 독립적으로 디코딩가능한 뷰가 비디오에 존재하는 경우에는, indec_rgn_present_flag는 true로 설정되고; 그렇지 않은 경우에는, indec_rgn_present_flag는 false로 설정된다.
독립적으로 디코딩가능한 영역의 위치 식별자 정보:
tile_num: 독립적으로 디코딩가능한 뷰를 커버하는 포함된 타일들의 개수.
tile_ids: 독립적으로 디코딩가능한 뷰를 커버하는 포함된 타일들의 id 어레이로서, 이는 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일에 대응하는 id 세트를 나타냄.
다음의 것은 독립적으로 디코딩가능한 영역의 크롭핑 정보이다:
cropping_enable_flag: 독립적으로 디코딩가능한 뷰의 폭이 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일의 총 폭과 동일하고, 독립적으로 디코딩가능한 뷰의 높이가 독립적으로 디코딩가능한 뷰의 수개의 타일의 총 높이와 동일한 경우에는, cropping_enable_flag가 false로 설정되고; 그렇지 않은 경우에는, cropping_enable_flag가 true로 설정된다.
pic_crop_left_offset: 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일에 대한 독립적으로 디코딩가능한 뷰의 좌측 에지의 수평 좌표를 포함하며, 픽셀이 단위로서 이용된다.
pic_crop_right_offset: 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일에 대한 독립적으로 디코딩가능한 뷰의 우측 에지의 수평 좌표를 포함하며, 픽셀이 단위로서 이용된다.
pic_crop_top_offset: 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일에 대한 독립적으로 디코딩가능한 뷰의 상측 에지의 수직 좌표를 포함하며, 픽셀이 단위로서 이용된다.
pic_crop_bottom_offset:독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일에 대한 독립적으로 디코딩가능한 뷰의 하측 에지의 수직 좌표를 포함하며, 픽셀이 단위로서 이용된다.
다음의 것은 독립적으로 디코딩가능한 영역의 서브비트스트림의 프로파일 및 레벨 정보이다:
new_profile_flag: 독립적으로 디코딩가능한 영역의 서브비트스트림의 프로파일의 식별자가 전체 비트스트림의 프로파일의 식별자와 동일한지 여부를 나타낸다. new_profile_flag의 값이 0인 경우에는, 이들이 동일함을 나타내며; new_profile_flag의 값이 1인 경우에는, 이들이 상이함을 나타낸다.
new_level_flag: 독립적으로 디코딩가능한 영역의 서브비트스트림의 레벨의 식별자가 전체 비트스트림의 레벨의 식별자와 동일한지 여부를 나타낸다. new_level_flag의 값이 0인 경우에는, 이들이 동일함을 나타내며; new_level_flag의 값이 1인 경우에는, 이들이 상이함을 나타낸다.
profile_idc: 독립적으로 디코딩가능한 영역에서의 코딩 툴 세트가 적용되는 프로파일 id.
level_idc: 디코더가 만족시킬 필요가 있는 최저 레벨의 id. 전체 픽처의 영역에 대한 독립적으로 디코딩가능한 영역의 비율에 따라, 독립적으로 디코딩가능한 영역을 디코딩하기 위한 최대 캐시 및 비트 레이트가 계산된다. 예를 들어, 전체 픽처를 디코딩하기 위한 최대 캐시는 y이고, 비트 레이트는 x이며, 전체 픽처의 영역에 대한 독립적으로 디코딩가능한 영역의 비율은 r이다. 그러면, 독립적으로 디코딩가능한 영역에 대한 비트 레이트는 x*r이고, 최대 캐시는 y*r이다. 이 디코딩 성능을 충족하는 최소 레벨은 독립적으로 디코딩가능한 영역에 대한 비트 레이트 x*r과 최대 캐시 y*r 및 profile_idc에 따라 탐색되고, level_idc는 전술한 최소 레벨로 설정된다.
단계 S906: 픽처의 i번째 프레임을 취득하고, i=1을 설정하는 단계.
단계 S907: 픽처의 i번째 프레임을 인코딩하는 단계 - 다음의 도 17에는 특정 인코딩 프로세스가 상세하게 설명됨 -.
단계 S908: 현재 인코딩된 픽처의 i번째 프레임에 대응하는 AU를 출력하고, 인코더의 저장 장치 또는 외부 저장 장치, 예를 들어 소스 장치(100)의 비디오 메모리(101) 또는 인코더(102)의 버퍼(1021)에 AU를 저장하거나, 네트워크를 이용하여 원격 수신 장치(200)로 AU를 직접 송신하는 단계.
단계 S909: i가 M과 동일한 경우에는(즉, i번째 프레임이 최종 프레임인 경우에는), 인코딩이 종료되고; 그렇지 않은 경우에는, i=i+1이고, 단계 S906이 수행된다.
도 17은 도 16에 도시된 비디오 인코딩 방법의 단계 S907에서 픽처의 프레임을 인코딩하기 위한 특정 방법의 개략적인 플로우차트이다.
단계 S1001: 타일 id가 k이고, k=1로 설정된다.
단계 S1002: SPS 메시지에서의 tile_ids 필드의 콘텐츠에 따라, 현재의 타일(k)가 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일 중 하나의 타일에 속하는지 여부를 판정하는 단계. 타일(k)가 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일 중 하나의 타일에 속하는 경우에는, 단계 S1003이 수행되고; 그렇지 않은 경우에는, 단계 S1004가 수행된다.
단계 S1003: 타일(k)가 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일 중 하나의 타일에 속하는 경우, 동일한 패킹 타입 및 플립핑 타입의 이전에 인코딩된 프레임 픽처에서의 독립적으로 디코딩가능한 영역을 현재의 프레임 픽처 타일(k)의 후보 인터-프레임 기준 영역으로 설정하는 단계.
단계 S1004: 타일(k)가 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일 중 하나의 타일에 속하지 않는 경우, 이전에 인코딩된 프레임 픽처에서의 모든 픽처 영역을 현재의 프레임 픽처 타일(k)의 후보 인터-프레임 기준 영역으로 설정하는 단계.
단계 S1005: 인트라-프레임 예측 또는 인터-프레임 예측 알고리즘의 이용을 선택하여, 타일(k)를 인코딩하는 단계. 인터-프레임 예측 알고리즘이 인코딩을 위해 이용될 때에, 단계 S1003 및 단계 S1004에서의 후보 인터-프레임 기준 영역들로부터 최적의 기준 영역이 선택된다. 인트라-프레임 예측 알고리즘이 인코딩을 위해 이용될 때에, 타일(k)가 독립적으로 디코딩가능한 영역을 커버하는 수개의 타일 중 하나의 타일에 속하지 않는 경우, 즉 타일(k)가 종속 타일인 경우, 타일(k)는 최적의 기준 블록을 선택하기 위해 후보 범위로서 인접 독립 타일의 픽처 블록을 이용할 수 있다.
단계 S1006: k가 N보다 작은 경우에는, 즉 타일(k)가 인코딩될 픽처에서의 최종 타일이 아닌 경우에는, k=k+1이고, 단계 S1002가 수행되고; k가 N과 동일한 경우에는, 인코딩이 종료된다.
전술한 도 16 및 도 17에서 제공된 인코딩 방법에 따르면, 독립적으로 디코딩가능한 영역에 관련된 정보를 식별하기 위해 인코딩된 비트스트림에서의 기존의 SPS 메시지에 새로운 필드가 부가되어, 보조 메시지의 기능을 구현하게 된다. SEI 메시지에서의 프로파일 및 레벨 정보는 독립적으로 디코딩가능한 영역에 대해 형성된 서브비트스트림에만 적용되는데, 이는 디코더의 성능에 대한 요건을 저하시킨다. 또한, 단계 S1003 및 단계 S1004에서 독립적으로 디코딩가능한 영역 타일 및 비-독립적으로 디코딩가능한 영역 타일에 대해 상이한 후보 인터-프레임 기준 영역들이 별개로 설정되는데, 이는 영역에서의 인코딩 블록이 독립적으로 디코딩될 수 있음을 보장하며, 영역 외부로 인코딩 블록의 기준 범위를 확장한다. 그러므로, 인코딩에서 현재의 블록과 유사한 인코딩 블록에 대한 참조가 이루어질 수 있고, 그에 따라 인코딩 효율을 개선하며 송신 데이터 볼륨을 절약하게 된다.
도 18은 본 발명의 일 실시예에 따른 비디오 디코딩 방법을 도시한다. 이 실시예에서, 디코더는 도 16 및 도 17에 도시된 프로세스에서 인코딩된 비디오 비트스트림을 디코딩하는데, 즉 M의 길이를 갖는 픽처 시퀀스를 디코딩하는 프로세스는 다음과 같다:
단계 S1101: 디코딩될 비디오 비트스트림을 수신하는 단계 - 비디오 비트스트림은 수개의 AU를 포함하고, 각각의 AU는 인코딩된 픽처의 프레임에 대응함 -.
단계 S1102: 이 비디오 비트스트림으로부터 SPS 메시지를 취득하고, SPS 메시지에서의 indec_rgn_present_flag 필드가 true인지 여부를 판정하는 단계. 그러한 경우에는, 디코딩을 계속하는 것으로 설정되고; 그렇지 않은 경우에는, 단계 S1114가 수행된다.
단계 S1103: 비디오 비트스트림에서의 SPS 메시지로부터 프로파일 및 레벨 정보를 취득하고, 디코더의 성능이 SPS 메시지에서의 프로파일 및 레벨을 충족하는지 여부를 판정하는 단계. 그렇지 않은 경우에는, 디코딩이 수행될 수 없으며, 프로세스가 바로 종료되고; 그러한 경우에는, 단계 S1104가 수행된다.
단계 S1104: 전술한 프로파일 및 레벨 정보에 따라 디코더를 초기화하는 단계.
단계 S1105: SPS 메시지로부터, 독립적으로 디코딩가능한 뷰를 커버하는 타일들의 대응하는 id 세트를 취득하는 단계.
단계 S1106: 비디오 비트스트림으로부터 하나의 AU를 취득하는 단계.
단계 S1107: 현재의 AU가 프레임 패킹 배열에서의 픽처를 포함하는지 여부를 판정하는 단계 - 판정 조건 및 방법은 다음과 같다: (1) 현재의 AU가 FPA(frame packing arrangement) 메시지를 포함하고, 메시지에서의 취소 플래그 비트가 0인 것; (2) 현재의 AU가 FPA 메시지를 포함하지 않지만, 비트스트림에서 이전에 수신된 최종 FPA 메시지에서의 취소 플래그 비트가 0인 것 -. 2가지 조건 중 어느 하나가 충족되는 경우에는, 프로세스는 다음 단계로 진행하고; 그렇지 않은 경우에는, 프로세스는 단계 S1114로 스위칭된다.
단계 S1108: 현재의 AU로부터 인코딩된 픽처 정보를 획득하는 단계.
단계 S1109: 단계 S1105에서 획득되며 독립적으로 디코딩가능한 뷰를 커버하는 타일들의 것인 대응하는 id 세트에 따라, 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일을 획득하는 단계.
단계 S1110: 독립적으로 디코딩가능한 뷰를 커버하는 수개의 타일에서의 픽처를 디코딩하는 단계 - 디코딩 방법은 인코딩 프로세스에서의 대응하는 인코딩 방법에 따라 결정됨 -.
단계 S1111: 전술한 SPS 메시지에서의 크롭핑 정보에 따라 수개의 타일에서의 픽처를 크롭핑하는 단계. cropping_enable_flag가 false인 경우에는, 크롭핑이 요구되지 않고; 그렇지 않은 경우에는, pic_crop_left_offset, pic_crop_right_offset, pic_crop_top_offset 및 pic_crop_bottom_offset에 의해 식별된 영역, 즉 수개의 타일에서의 독립적으로 디코딩가능한 뷰가 수개의 타일로부터 획득된다.
단계 S1112: 도 4에 도시된 디스플레이 장치(201)로 독립적으로 디코딩가능한 뷰를 출력하거나, 또는 출력 시간에 도달하지 않은 경우에는 도 6에 도시된 버퍼(2021)에 독립적으로 디코딩가능한 뷰를 임시 저장하는 단계.
단계 S1113: 현재의 AU가 비트스트림에서의 최종 AU인 경우에는, 디코딩이 종료되고; 그렇지 않은 경우에는, 단계 S1106이 수행된다.
단계 S1114: 정상 디코딩 프로세스를 수행하는 단계.
이 실시예에서 제공된 디코딩 방법에 따르면, 디코더가 프레임 패킹 3DTV 기술을 이용하여 인코딩된 3D 비디오 비트스트림을 수신하지만, 디코더가 2D 디스플레이 디바이스에 접속되는 경우, 디코더는 SEI 메시지에 따라 2개의 뷰 중 하나만을 획득하여 디코딩을 수행할 수 있는데, 즉 디코딩은 독립적으로 디코딩가능한 영역에 대해서만 수행되는데, 이는 디코더의 성능에 대한 요건을 저하시키며, 디코더의 계산 및 저장 리소스들을 절약한다. 단계 S1104를 참조하면, 독립적으로 인코딩가능한 영역의 서브비트스트림에 대응하는 프로파일 및 레벨은 일반적으로 디코더의 성능 및 스토리지에 대한 요건을 저하시킨다. 그러므로, 디코더가 초기화된 이후에, 디코더의 디코딩 시간 및 전력 소비는 감소될 수 있고, 디코더의 스토리지에 대한 요건도 감소된다. 디코더가 오리지널 3D 비디오 비트스트림의 프로파일 및 레벨 요건을 충족하지 않지만, 디코더가 독립적으로 인코딩가능한 영역의 서브비트스트림에 대응하는 프로파일 및 레벨 요건을 충족하는 경우, 해상도 또는 비트 레이트에 대해 높은 요건을 가지며 2D 디스플레이와 호환되는 3D 비디오 비트스트림에 대한 디코더의 지원이 증가된다.
통상의 기술자라면, 전술한 실시예들에서 제시된 비디오 코딩 및 디코딩 방법이 프로그램 명령어에 관련된 하드웨어에 의해 구현될 수 있다는 것을 이해할 수 있다. 프로그램은 컴퓨터 판독가능 저장 매체에 저장될 수 있다. 프로그램이 실행되는 경우, 전술한 방법의 대응하는 단계들이 수행된다. 저장 매체는 ROM/RAM, 자기 디스크 또는 광학 디스크와 같은 것일 수 있다.
전술한 설명은 본 발명의 예시적인 구현 방식들일 뿐이다. 통상의 기술자라면, 본 발명의 원리로부터 벗어나지 않으면서 수개의 개선 또는 연마를 이룰 수 있으며, 이러한 개선 또는 연마는 본 발명의 보호 범위 내에 있다는 것에 유의해야 한다.

Claims (40)

  1. 비디오 인코딩 방법으로서 - 비디오는 픽처 시퀀스를 포함함 -,
    상기 비디오에 대응하는 구성 파일에 따라, 인코딩될 픽처에서의 독립적으로 디코딩가능한 뷰(independently decodable view)를 결정하는 단계;
    상기 픽처를 적어도 2개의 타일(tile)로 분할하는 단계 - 상기 독립적으로 디코딩가능한 뷰를 커버하는 하나 이상의 타일에 대응하는 영역은 독립적으로 디코딩가능한 영역임 -;
    상기 픽처에 대응하는 보조 메시지를 생성하는 단계 - 상기 보조 메시지는 상기 독립적으로 디코딩가능한 영역의 위치 식별자를 포함하고, 상기 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일 식별자(tile id)를 포함함 -; 및
    인코딩된 비디오 비트스트림을 형성하기 위해서 상기 픽처에 포함된 모든 타일을 인코딩하는 단계 - 상기 인코딩된 비디오 비트스트림은 상기 보조 메시지를 포함함 -
    를 포함하는 비디오 인코딩 방법.
  2. 제1항에 있어서,
    상기 보조 메시지는 독립적으로 디코딩가능한 영역 식별자를 더 포함하고, 상기 독립적으로 디코딩가능한 영역 식별자는, 상기 픽처가 상기 독립적으로 디코딩가능한 영역을 포함하는지 여부를 식별하기 위해 이용되는, 비디오 인코딩 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 보조 메시지는 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 크롭핑(cropping) 정보를 더 포함하고, 상기 크롭핑 정보는 상기 독립적으로 디코딩가능한 영역에 대한 상기 독립적으로 디코딩가능한 뷰의 상측, 하측, 좌측 또는 우측 경계의 수평 좌표 또는 수직 좌표를 포함하는, 비디오 인코딩 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 보조 메시지는 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 프로파일(profile) 정보를 더 포함하고, 상기 프로파일 정보는 상기 독립적으로 디코딩가능한 영역에서의 코딩 툴 세트를 식별하기 위해 이용되는, 비디오 인코딩 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 보조 메시지는 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 레벨(level) 정보를 더 포함하고, 상기 레벨 정보는, 디코더가 만족시킬 필요가 있는 레벨 정보를 식별하기 위해 이용되는, 비디오 인코딩 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,
    상기 픽처에 포함된 모든 타일을 인코딩하는 단계는,
    현재의 인코딩될 타일이 상기 독립적으로 디코딩가능한 영역에서의 타일인지 여부를 판정하는 단계;
    그러한 경우에는, 인코딩된 픽처의 독립적으로 디코딩가능한 영역을 상기 현재의 타일의 후보 인터-프레임 기준 영역으로 설정하는 단계;
    그렇지 않은 경우에는, 상기 인코딩된 픽처의 전체 픽처 영역을 상기 현재의 타일의 상기 후보 인터-프레임 기준 영역으로 설정하는 단계; 및
    인터-프레임 알고리즘이 인코딩을 위해 이용될 때에, 상기 인코딩될 타일에 대응하는 상기 후보 인터-프레임 기준 영역에 따라 최적의 기준 영역을 선택하는 단계
    를 더 포함하는, 비디오 인코딩 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 픽처 시퀀스는 상이한 패킹 타입들(packing types)과 플립핑 타입들(flipping types)의 픽처들을 포함하고, 상기 구성 파일은 상기 픽처 시퀀스에서의 픽처의 각각의 프레임의 패킹 타입과 플립핑 타입, 및 상기 상이한 패킹 타입들과 플립핑 타입들의 픽처들에 대응하는 독립적으로 디코딩가능한 뷰들을 저장하는, 비디오 인코딩 방법.
  8. 제7항에 있어서,
    상기 보조 메시지는 위치 식별자들을 더 포함하고, 상기 위치 식별자들은 독립적으로 디코딩가능한 영역들의, 상기 상이한 패킹 타입들과 플립핑 타입들의 픽처들에 대응하는, 비디오 인코딩 방법.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서,
    상기 보조 메시지는 보충 증대 정보(SEI: Supplemental Enhancement Information)에서 반송되는, 비디오 인코딩 방법.
  10. 제1항 내지 제8항 중 어느 한 항에 있어서,
    상기 보조 메시지는 시퀀스 파라미터 세트(SPS: Sequence Parameter Set)에서 반송되는, 비디오 인코딩 방법.
  11. 비디오 디코딩 방법으로서,
    비디오 비트스트림을 수신하는 단계 - 상기 비디오 비트스트림은 디코딩될 비디오 및 보조 메시지를 포함하고, 상기 디코딩될 비디오는 디코딩될 픽처 시퀀스를 포함함 -;
    디코딩될 픽처를 취득하는 단계;
    상기 보조 메시지에 따라 상기 디코딩될 픽처의 독립적으로 디코딩가능한 영역의 위치 식별자를 획득하는 단계 - 상기 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일(tile)의 타일 식별자들(tile id)을 포함함 -; 및
    상기 독립적으로 디코딩가능한 영역의 위치 식별자에 따라 상기 디코딩될 픽처의 상기 독립적으로 디코딩가능한 영역을 획득하고, 상기 독립적으로 디코딩가능한 영역을 디코딩하는 단계
    를 포함하는 비디오 디코딩 방법.
  12. 제11항에 있어서,
    상기 보조 메시지는 독립적으로 디코딩가능한 영역 식별자를 더 포함하고, 상기 독립적으로 디코딩가능한 영역 식별자는, 상기 픽처가 상기 독립적으로 디코딩가능한 영역을 포함하는지 여부를 식별하기 위해 이용되는, 비디오 디코딩 방법.
  13. 제11항 또는 제12항에 있어서,
    상기 보조 메시지는 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 크롭핑(cropping) 정보를 더 포함하고, 상기 크롭핑 정보는 상기 독립적으로 디코딩가능한 영역에 대한 독립적으로 디코딩가능한 뷰의 상측, 하측, 좌측 또는 우측 경계의 수평 좌표 또는 수직 좌표를 포함하는, 비디오 디코딩 방법.
  14. 제13항에 있어서,
    상기 방법은, 상기 보조 메시지에서의 상기 크롭핑 정보에 따라 상기 독립적으로 디코딩가능한 영역을 크롭핑하여, 상기 독립적으로 디코딩가능한 뷰를 획득하는 단계를 더 포함하는 비디오 디코딩 방법.
  15. 제11항 내지 제13항 중 어느 한 항에 있어서,
    상기 보조 메시지는 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 프로파일(profile) 정보를 더 포함하고, 상기 프로파일 정보는 상기 독립적으로 디코딩가능한 영역에서의 코딩 툴 세트를 식별하기 위해 이용되는, 비디오 디코딩 방법.
  16. 제11항 내지 제15항 중 어느 한 항에 있어서,
    상기 보조 메시지는 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 레벨(level) 정보를 더 포함하고, 상기 레벨 정보는, 디코더가 만족시킬 필요가 있는 레벨 정보를 식별하기 위해 이용되는, 비디오 디코딩 방법.
  17. 제11항 내지 제16항 중 어느 한 항에 있어서,
    상기 디코딩될 픽처 시퀀스는 상이한 패킹 타입들과 플립핑 타입들의 픽처들을 포함하는, 비디오 디코딩 방법.
  18. 제17항에 있어서,
    상기 보조 메시지는 위치 식별자들을 더 포함하고, 상기 위치 식별자들은 독립적으로 디코딩가능한 영역들의, 상기 상이한 패킹 타입들과 플립핑 타입들의 픽처들에 대응하는, 비디오 인코딩 방법.
  19. 제18항에 있어서,
    상기 보조 메시지는, 상기 상이한 패킹 타입들과 플립핑 타입들의 픽처들에 대응하며 상기 독립적으로 디코딩가능한 영역들을 디코딩하기 위해 이용되는 크롭핑 정보를 더 포함하는, 비디오 디코딩 방법.
  20. 제18항에 있어서,
    상기 보조 메시지는, 상기 상이한 패킹 타입들과 플립핑 타입들의 픽처들에 대응하며 상기 독립적으로 디코딩가능한 영역들을 디코딩하기 위해 이용되는 프로파일 정보를 더 포함하는, 비디오 디코딩 방법.
  21. 제18항에 있어서,
    상기 보조 메시지는, 상기 상이한 패킹 타입들과 플립핑 타입들의 픽처들에 대응하며 상기 독립적으로 디코딩가능한 영역들을 디코딩하기 위해 이용되는 레벨 정보를 더 포함하는, 비디오 디코딩 방법.
  22. 제11항 내지 제21항 중 어느 한 항에 있어서,
    상기 보조 메시지는 보충 증대 정보(SEI: Supplemental Enhancement Information)에서 반송되는, 비디오 디코딩 방법.
  23. 제11항 내지 제21항 중 어느 한 항에 있어서,
    상기 보조 메시지는 시퀀스 파라미터 세트(SPS: Sequence Parameter Set)에서 반송되는, 비디오 디코딩 방법.
  24. 비디오 인코더로서 - 비디오는 픽처 시퀀스를 포함함 -,
    상기 비디오의 구성 파일을 저장하도록 구성된 저장 유닛;
    상기 비디오에 대응하는 상기 구성 파일에 따라, 인코딩될 픽처에서의 독립적으로 디코딩가능한 뷰를 결정하도록 구성된 독립적으로 디코딩가능한 뷰 결정 유닛;
    상기 픽처를 적어도 2개의 타일(tile)로 분할하도록 구성된 타일 분할 유닛 - 상기 독립적으로 디코딩가능한 뷰를 커버하는 하나 이상의 타일에 대응하는 영역은 독립적으로 디코딩가능한 영역임 -;
    상기 픽처에 대응하는 보조 메시지를 생성하도록 구성된 보조 메시지 생성 유닛 - 상기 보조 메시지는 상기 독립적으로 디코딩가능한 영역의 위치 식별자를 포함하고, 상기 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일 식별자(tile id)를 포함함 -; 및
    인코딩된 비디오 비트스트림을 형성하기 위해서 상기 픽처에 포함된 모든 타일을 인코딩하도록 구성된 인코딩 실행 유닛 - 상기 인코딩된 비디오 비트스트림은 상기 보조 메시지를 포함함 -
    을 포함하는 비디오 인코더.
  25. 제24항에 있어서,
    상기 인코딩 실행 유닛은, 현재의 인코딩될 타일이 상기 독립적으로 디코딩가능한 영역에서의 타일인지 여부를 판정하고; 그러한 경우에는, 인코딩된 픽처의 독립적으로 디코딩가능한 영역을 상기 현재의 타일의 후보 인터-프레임 기준 영역으로 설정하고; 그렇지 않은 경우에는, 상기 인코딩된 픽처의 전체 픽처 영역을 상기 현재의 타일의 상기 후보 인터-프레임 기준 영역으로 설정하고; 인터-프레임 알고리즘이 인코딩을 위해 이용될 때에, 상기 인코딩될 타일에 대응하는 상기 후보 인터-프레임 기준 영역에 따라 최적의 기준 영역을 선택하도록 구성된 판정 유닛을 더 포함하는, 비디오 인코더.
  26. 비디오 디코더로서,
    비디오 비트스트림을 수신하도록 구성된 수신 유닛 - 상기 비디오 비트스트림은 디코딩될 비디오 및 보조 메시지를 포함하고, 상기 디코딩될 비디오는 디코딩될 픽처 시퀀스를 포함함 -; 및
    디코딩될 픽처를 취득하고; 상기 보조 메시지에 따라 상기 디코딩될 픽처의 독립적으로 디코딩가능한 영역의 위치 식별자를 획득하며 - 상기 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일(tile)의 타일 식별자들(tile id)을 포함함 -; 상기 독립적으로 디코딩가능한 영역의 위치 식별자에 따라 상기 디코딩될 픽처의 상기 독립적으로 디코딩가능한 영역을 획득하고, 상기 독립적으로 디코딩가능한 영역을 디코딩하도록 구성된 디코딩 실행 유닛
    을 포함하는 비디오 디코더.
  27. 비디오를 인코딩하도록 구성된 인코더로서 - 상기 비디오는 픽처 시퀀스를 포함함 -,
    하나 이상의 프로세서;
    하나 이상의 메모리; 및
    하나 이상의 프로그램
    을 포함하고,
    상기 하나 이상의 프로그램은 상기 하나 이상의 메모리에 저장되고, 추가로 상기 하나 이상의 프로그램은 상기 하나 이상의 프로세서에 의해 실행되도록 구성되고,
    상기 하나 이상의 프로그램은,
    상기 비디오에 대응하는 구성 파일에 따라, 인코딩될 픽처에서의 독립적으로 디코딩가능한 뷰를 결정하도록 구성된 명령어;
    상기 픽처를 적어도 2개의 타일(tile)로 분할하도록 구성된 명령어 - 상기 독립적으로 디코딩가능한 뷰를 커버하는 하나 이상의 타일에 대응하는 영역은 독립적으로 디코딩가능한 영역임 -;
    상기 픽처에 대응하는 보조 메시지를 생성하도록 구성된 명령어 - 상기 보조 메시지는 상기 독립적으로 디코딩가능한 영역의 위치 식별자를 포함하고, 상기 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일 식별자(tile id)를 포함함 -; 및
    인코딩된 비디오 비트스트림을 형성하기 위해서 상기 픽처에 포함된 모든 타일을 인코딩하도록 구성된 명령어 - 상기 인코딩된 비디오 비트스트림은 상기 보조 메시지를 포함함 -
    를 포함하는, 인코더. 51. 제50항에 있어서, 상기 보조 메시지는 다음의 정보: 독립적으로 디코딩가능한 영역 식별자, 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 크롭핑(cropping) 정보, 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 프로파일(profile) 정보, 및 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 레벨(level) 정보 중 하나를 더 포함하는, 코더.
  28. 제27항에 있어서,
    상기 보조 메시지는 다음의 정보: 독립적으로 디코딩가능한 영역 식별자, 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 크롭핑(cropping) 정보, 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 프로파일(profile) 정보, 및 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 레벨(level) 정보 중 하나를 더 포함하는, 인코더.
  29. 디코더로서,
    하나 이상의 프로세서;
    하나 이상의 메모리; 및
    하나 이상의 프로그램
    을 포함하고,
    상기 하나 이상의 프로그램은 상기 하나 이상의 메모리에 저장되고, 추가로 상기 하나 이상의 프로그램은 상기 하나 이상의 프로세서에 의해 실행되도록 구성되고,
    상기 하나 이상의 프로그램은,
    비디오 비트스트림을 수신하도록 구성된 명령어 - 상기 비디오 비트스트림은 디코딩될 비디오 및 보조 메시지를 포함하고, 상기 디코딩될 비디오는 디코딩될 픽처 시퀀스를 포함함 -;
    디코딩될 픽처를 취득하도록 구성된 명령어;
    상기 보조 메시지에 따라 상기 디코딩될 픽처의 독립적으로 디코딩가능한 영역의 위치 식별자를 획득하도록 구성된 명령어 - 상기 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일의 타일 식별자들(tile id)을 포함함 -; 및
    상기 독립적으로 디코딩가능한 영역의 위치 식별자에 따라 상기 디코딩될 픽처의 상기 독립적으로 디코딩가능한 영역을 획득하고, 상기 독립적으로 디코딩가능한 영역을 디코딩하도록 구성된 명령어
    를 포함하는, 디코더.
  30. 제29항에 있어서,
    상기 보조 메시지는 다음의 정보: 독립적으로 디코딩가능한 영역 식별자, 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 크롭핑(cropping) 정보, 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 프로파일(profile) 정보, 및 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 레벨(level) 정보 중 하나를 더 포함하는, 디코더.
  31. 비디오를 처리하기 위한 소스 장치에 배치되고, 상기 비디오를 인코딩하도록 구성된 인코더로서 - 상기 비디오는 픽처 시퀀스를 포함함 -,
    상기 비디오에 대응하는 구성 파일에 따라, 인코딩될 픽처에서의 독립적으로 디코딩가능한 뷰를 결정하고; 상기 픽처를 적어도 2개의 타일(tile)로 분할하고 - 상기 독립적으로 디코딩가능한 뷰를 커버하는 하나 이상의 타일에 대응하는 영역은 독립적으로 디코딩가능한 영역임 -; 상기 픽처에 대응하는 보조 메시지를 생성하고 - 상기 보조 메시지는 상기 독립적으로 디코딩가능한 영역의 위치 식별자를 포함하고, 상기 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일 식별자(tile id)를 포함함 -; 인코딩된 비디오 비트스트림을 형성하기 위해서 상기 픽처에 포함된 모든 타일을 인코딩하도록 구성된 하나 이상의 회로 - 상기 인코딩된 비디오 비트스트림은 상기 보조 메시지를 포함함 -
    를 포함하는 인코더.
  32. 제31항에 있어서,
    상기 보조 메시지는 다음의 정보: 독립적으로 디코딩가능한 영역 식별자, 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 크롭핑(cropping) 정보, 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 프로파일(profile) 정보, 및 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 레벨(level) 정보 중 하나를 더 포함하는, 인코더.
  33. 비디오를 처리하기 위한 수신 장치에 배치된 디코더로서,
    비디오 비트스트림을 수신하고 - 상기 비디오 비트스트림은 디코딩될 비디오 및 보조 메시지를 포함하고, 상기 디코딩될 비디오는 디코딩될 픽처 시퀀스를 포함함 -; 디코딩될 픽처를 취득하고; 상기 보조 메시지에 따라 상기 디코딩될 픽처의 독립적으로 디코딩가능한 영역의 위치 식별자를 획득하고 - 상기 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일(tile)의 타일 식별자들(tile id)을 포함함 -; 상기 독립적으로 디코딩가능한 영역의 위치 식별자에 따라 상기 디코딩될 픽처의 상기 독립적으로 디코딩가능한 영역을 획득하고, 상기 독립적으로 디코딩가능한 영역을 디코딩하도록 구성된 하나 이상의 회로
    를 포함하는 디코더.
  34. 제33항에 있어서,
    상기 보조 메시지는 다음의 정보: 독립적으로 디코딩가능한 영역 식별자, 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 크롭핑(cropping) 정보, 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 프로파일(profile) 정보, 및 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 레벨(level) 정보 중 하나를 더 포함하는, 디코더.
  35. 컴퓨터 판독가능 저장 매체로서 - 상기 컴퓨터 판독가능 저장 매체는 다수의 명령어를 저장함 -
    상기 다수의 명령어가 디바이스에 의해 실행되는 경우, 상기 디바이스는,
    비디오에 대응하는 구성 파일에 따라, 상기 비디오의 인코딩될 픽처에서의 독립적으로 디코딩가능한 뷰를 결정하는 동작;
    상기 픽처를 적어도 2개의 타일(tile)로 분할하는 동작 - 상기 독립적으로 디코딩가능한 뷰를 커버하는 하나 이상의 타일에 대응하는 영역은 독립적으로 디코딩가능한 영역임 -;
    상기 픽처에 대응하는 보조 메시지를 생성하는 동작 - 상기 보조 메시지는 상기 독립적으로 디코딩가능한 영역의 위치 식별자를 포함하고, 상기 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일 식별자(tile id)를 포함함 -; 및
    인코딩된 비디오 비트스트림을 형성하기 위해서 상기 픽처에 포함된 모든 타일을 인코딩하는 동작 - 상기 인코딩된 비디오 비트스트림은 상기 보조 메시지를 포함함 -
    을 수행하도록 트리거되는, 컴퓨터 판독가능 저장 매체.
  36. 제35항에 있어서,
    상기 보조 메시지는 다음의 정보: 독립적으로 디코딩가능한 영역 식별자, 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 크롭핑(cropping) 정보, 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 프로파일(profile) 정보, 및 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 레벨(level) 정보 중 하나를 더 포함하는, 컴퓨터 판독가능 저장 매체.
  37. 컴퓨터 판독가능 저장 매체로서 - 상기 컴퓨터 판독가능 저장 매체는 다수의 명령어를 저장함 -
    상기 다수의 명령어가 디바이스에 의해 실행되는 경우, 상기 디바이스는,
    비디오 비트스트림을 수신하는 동작 - 상기 비디오 비트스트림은 디코딩될 비디오 및 보조 메시지를 포함하고, 상기 디코딩될 비디오는 디코딩될 픽처 시퀀스를 포함함 -;
    디코딩될 픽처를 취득하는 동작;
    상기 보조 메시지에 따라 상기 디코딩될 픽처의 독립적으로 디코딩가능한 영역의 위치 식별자를 획득하는 동작 - 상기 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일(tile)의 타일 식별자들(tile id)을 포함함 -; 및
    상기 독립적으로 디코딩가능한 영역의 위치 식별자에 따라 상기 디코딩될 픽처의 상기 독립적으로 디코딩가능한 영역을 획득하고, 상기 독립적으로 디코딩가능한 영역을 디코딩하는 동작
    을 수행하도록 트리거되는, 컴퓨터 판독가능 저장 매체.
  38. 제37항에 있어서,
    상기 보조 메시지는 다음의 정보: 독립적으로 디코딩가능한 영역 식별자, 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 크롭핑(cropping) 정보, 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 프로파일(profile) 정보, 및 상기 독립적으로 디코딩가능한 영역을 디코딩하기 위해 이용되는 레벨(level) 정보 중 하나를 더 포함하는, 컴퓨터 판독가능 저장 매체.
  39. 비디오 인코딩 및 디코딩 시스템으로서,
    제24항 또는 제25항 또는 제27항 또는 제28항 또는 제31항 또는 제32항에 따른 인코더; 및
    제26항 또는 제29항 또는 제30항 또는 제33항 또는 제34항에 따른 디코더
    를 포함하는 비디오 인코딩 및 디코딩 시스템.
  40. 비디오 비트스트림으로서,
    디코딩될 비디오 및 보조 메시지를 포함하고,
    상기 디코딩될 비디오는 디코딩될 픽처 시퀀스를 포함하고, 상기 보조 메시지는 상기 픽처 시퀀스의 독립적으로 디코딩가능한 영역을 나타내는 위치 식별자를 포함하고, 상기 독립적으로 디코딩가능한 영역의 위치 식별자는 하나 이상의 타일(tile)의 타일 식별자들(tile id)을 포함하는, 비디오 비트스트림.
KR1020157010905A 2012-09-29 2012-09-29 비디오 인코딩 및 디코딩 방법, 장치 및 시스템 KR101661436B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2012/082494 WO2014047943A1 (zh) 2012-09-29 2012-09-29 视频编码及解码方法、装置及系统

Publications (2)

Publication Number Publication Date
KR20150063126A true KR20150063126A (ko) 2015-06-08
KR101661436B1 KR101661436B1 (ko) 2016-09-29

Family

ID=50386905

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157010905A KR101661436B1 (ko) 2012-09-29 2012-09-29 비디오 인코딩 및 디코딩 방법, 장치 및 시스템

Country Status (7)

Country Link
US (3) US11089319B2 (ko)
EP (1) EP2887663B1 (ko)
JP (1) JP6074509B2 (ko)
KR (1) KR101661436B1 (ko)
CN (3) CN103907350B (ko)
AU (1) AU2012391251B2 (ko)
WO (1) WO2014047943A1 (ko)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5893346B2 (ja) * 2011-11-07 2016-03-23 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
CN104247433B (zh) * 2012-04-06 2018-02-06 索尼公司 解码装置和解码方法以及编码装置和编码方法
CN105379255A (zh) * 2013-07-22 2016-03-02 索尼公司 信息处理装置和方法
CN104935933B (zh) * 2015-06-05 2019-11-26 广东中星微电子有限公司 一种视频编解码方法
US10034026B2 (en) 2016-04-22 2018-07-24 Akila Subramaniam Device for and method of enabling the processing of a video stream
US10743000B2 (en) * 2016-07-01 2020-08-11 Sk Telecom Co., Ltd. Video bitstream generation method and device for high-resolution video streaming
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
KR20230026551A (ko) * 2016-10-04 2023-02-24 주식회사 비원영상기술연구소 영상 데이터 부호화/복호화 방법 및 장치
CN109587478B (zh) * 2017-09-29 2023-03-31 华为技术有限公司 一种媒体信息的处理方法及装置
CN110035331B (zh) 2018-01-12 2021-02-09 华为技术有限公司 一种媒体信息的处理方法及装置
EP3547704A1 (en) * 2018-03-30 2019-10-02 Thomson Licensing Method, apparatus and stream for volumetric video format
WO2019199025A1 (ko) * 2018-04-09 2019-10-17 에스케이텔레콤 주식회사 영상을 부호화/복호화하는 방법 및 그 장치
CA3100316A1 (en) * 2018-05-15 2019-11-21 Sharp Kabushiki Kaisha Image encoding device, encoded stream extraction device, and image decoding device
CN109525842B (zh) * 2018-10-30 2022-08-12 深圳威尔视觉科技有限公司 基于位置的多Tile排列编码方法、装置、设备和解码方法
CN109587490B (zh) * 2018-11-05 2022-05-31 深圳威尔视觉传媒有限公司 一种Tile分片填充方法、装置、设备、存储介质和解码方法
HRP20230702T1 (hr) 2019-01-09 2023-10-13 Huawei Technologies Co., Ltd. Signaliziranje identifikatora podslike kod kodiranja videa
GB2585042A (en) * 2019-06-25 2020-12-30 Sony Corp Image data encoding and decoding
US11303935B2 (en) * 2019-07-10 2022-04-12 Qualcomm Incorporated Deriving coding system operational configuration
CN110446070A (zh) * 2019-07-16 2019-11-12 重庆爱奇艺智能科技有限公司 一种视频播放的方法和装置
US11785239B2 (en) * 2021-06-29 2023-10-10 Tencent America LLC Independent coded region output supplementary enhancement information message
CN113660529A (zh) * 2021-07-19 2021-11-16 镕铭微电子(济南)有限公司 基于Tile编码的视频拼接、编码、解码方法及装置
WO2023131937A1 (ko) * 2022-01-07 2023-07-13 엘지전자 주식회사 피쳐 부호화/복호화 방법, 장치, 비트스트림을 저장한 기록 매체 및 비트스트림 전송 방법
CN114501070B (zh) * 2022-04-14 2022-07-19 全时云商务服务股份有限公司 视频会议同步额外信息的编解码方法、处理方法和系统

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7724827B2 (en) 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
JP5199124B2 (ja) * 2006-01-12 2013-05-15 エルジー エレクトロニクス インコーポレイティド 多視点ビデオの処理
JP4715633B2 (ja) * 2006-05-19 2011-07-06 ソニー株式会社 記録装置、記録方法および記録プログラム、ならびに、編集装置、編集方法および編集プログラム
US7949054B2 (en) * 2006-06-01 2011-05-24 Microsoft Corporation Flexible data organization for images
JP5326234B2 (ja) * 2007-07-13 2013-10-30 ソニー株式会社 画像送信装置、画像送信方法および画像送信システム
CN101583029B (zh) * 2008-05-13 2011-01-19 联咏科技股份有限公司 熵解码电路与方法、以及使用流水线方式的熵解码方法
US8897359B2 (en) 2008-06-03 2014-11-25 Microsoft Corporation Adaptive quantization for enhancement layer video coding
US9071843B2 (en) * 2009-02-26 2015-06-30 Microsoft Technology Licensing, Llc RDP bitmap hash acceleration using SIMD instructions
CN102461173B (zh) * 2009-06-09 2015-09-09 汤姆森特许公司 解码装置、解码方法以及编辑装置
EP2453652B1 (en) * 2009-07-06 2019-09-04 Huawei Technologies Co., Ltd. Transmission method, receiving method and device for scalable video coding files
US20110286533A1 (en) * 2010-02-23 2011-11-24 Fortney Douglas P Integrated recording and video on demand playback system
US20110243222A1 (en) 2010-04-05 2011-10-06 Samsung Electronics Co., Ltd. Method and apparatus for encoding video by using adaptive prediction filtering, method and apparatus for decoding video by using adaptive prediction filtering
GB2481612A (en) * 2010-06-30 2012-01-04 Skype Ltd Updating image regions in a shared image system
US9596447B2 (en) * 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US20120170648A1 (en) * 2011-01-05 2012-07-05 Qualcomm Incorporated Frame splitting in video coding
JP5747559B2 (ja) * 2011-03-01 2015-07-15 富士通株式会社 動画像復号方法、動画像符号化方法、動画像復号装置、及び動画像復号プログラム
US9118928B2 (en) * 2011-03-04 2015-08-25 Ati Technologies Ulc Method and system for providing single view video signal based on a multiview video coding (MVC) signal stream
US9398307B2 (en) * 2011-07-11 2016-07-19 Sharp Kabushiki Kaisha Video decoder for tiles
AU2012294053B2 (en) * 2011-08-11 2016-07-07 Sun Patent Trust Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
US20130188709A1 (en) * 2012-01-25 2013-07-25 Sachin G. Deshpande Video decoder for tiles with absolute signaling
RU2612577C2 (ru) * 2012-07-02 2017-03-09 Нокиа Текнолоджиз Ой Способ и устройство для кодирования видеоинформации
KR101835802B1 (ko) * 2012-09-18 2018-03-08 브이아이디 스케일, 인크. 타일 및 타일 그룹을 이용한 관심 영역 비디오 코딩
ITTO20120901A1 (it) * 2012-10-15 2014-04-16 Rai Radiotelevisione Italiana Procedimento di codifica e decodifica di un video digitale e relativi dispositivi di codifica e decodifica

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
HANNUKSELA: "Slice Group Related SEI Message", 6. JVT-F045, 13 December 2002. *
Ohji Nakagami et al: "Bitstream restriction flag to enable tile split, JCTVC-I0056, 2012.4.25 *
Y-K Wang et al: "AHG4: Tile group", JCTVC-G318, 2011.11.21.* *

Also Published As

Publication number Publication date
CN103907350B (zh) 2018-02-23
CN108429917A (zh) 2018-08-21
AU2012391251B2 (en) 2016-04-21
EP2887663A4 (en) 2015-08-26
US20150172692A1 (en) 2015-06-18
US20150172693A1 (en) 2015-06-18
WO2014047943A1 (zh) 2014-04-03
KR101661436B1 (ko) 2016-09-29
US11533501B2 (en) 2022-12-20
CN108419076A (zh) 2018-08-17
CN108429917B (zh) 2022-04-29
US20210344942A1 (en) 2021-11-04
CN108419076B (zh) 2022-04-29
US11089319B2 (en) 2021-08-10
EP2887663B1 (en) 2017-02-22
EP2887663A1 (en) 2015-06-24
CN103907350A (zh) 2014-07-02
AU2012391251A1 (en) 2015-05-07
JP6074509B2 (ja) 2017-02-01
JP2015534376A (ja) 2015-11-26

Similar Documents

Publication Publication Date Title
KR101661436B1 (ko) 비디오 인코딩 및 디코딩 방법, 장치 및 시스템
JP6356286B2 (ja) 多視点信号コーデック
KR101844705B1 (ko) 스테레오 비디오에 대한 심도 인지 강화
US10911754B2 (en) Image coding method using history-based motion information and apparatus for the same
JP6022652B2 (ja) スライスヘッダ予測のためのスライスヘッダ三次元映像拡張
JP6370898B2 (ja) レイヤを横切るピクチャパーティションに対するビットストリームの制限
TWI558178B (zh) 用於寫碼視訊資料之方法及器件及電腦可讀儲存媒體
CN112868232B (zh) 使用插值滤波器进行帧内预测的方法和装置
JP2014524707A (ja) 非対称な空間解像度を持つ3次元ビデオ
CN110754091B (zh) 用于360度视频编码的解块滤波
TWI535273B (zh) 經組態以寫碼視訊資訊之設備及視訊寫碼裝置、編碼及解碼視訊資訊之方法與非暫態電腦可讀媒體
JP2016514426A (ja) ビュー内でのおよびビューにわたる深度ルックアップテーブルの予測コーディング
CN116781896A (zh) 对视频信号进行编解码的方法和发送方法
US20160073110A1 (en) Object-based adaptive brightness compensation method and apparatus
JP6120667B2 (ja) 画像処理装置、撮像装置、画像処理方法、プログラム、及び記録媒体
AU2020409800B2 (en) Image/video encoding/decoding method and apparatus using same

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190829

Year of fee payment: 4