KR20090040287A - 멀티 뷰 비디오 코딩용 방법 및 장치 - Google Patents

멀티 뷰 비디오 코딩용 방법 및 장치 Download PDF

Info

Publication number
KR20090040287A
KR20090040287A KR1020097000494A KR20097000494A KR20090040287A KR 20090040287 A KR20090040287 A KR 20090040287A KR 1020097000494 A KR1020097000494 A KR 1020097000494A KR 20097000494 A KR20097000494 A KR 20097000494A KR 20090040287 A KR20090040287 A KR 20090040287A
Authority
KR
South Korea
Prior art keywords
anchor
picture
views
dependency
view
Prior art date
Application number
KR1020097000494A
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 KR20090040287A publication Critical patent/KR20090040287A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • 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/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/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame 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
    • 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/177Methods 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 a group of pictures [GOP]
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/432Content retrieval operation from a local storage medium, e.g. hard-disk
    • H04N21/4325Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4334Recording operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4347Demultiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8451Structuring of content, e.g. decomposing content into time segments using Advanced Video Coding [AVC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

멀티 뷰 비디오 코딩용 방법 및 장치가 제공된다. 장치는 멀티 뷰 비디오 콘텐츠에 대응하는 적어도 두 뷰에 대한 앵커 및 비앵커 화상(anchor and non-anchor picutres)을 인코딩하는 인코더(100)를 포함하며, 상기 적어도 두 뷰 중 적어도 하나에서 디스플레이 순서상 이전의 앵커 화상 및 다음의 앵커 화상 사이에 배열된 비앵커 화상들의 세트 내 각각의 비앵커 화상의 의존성 구조(dependency structure)는 디스플레이 순서상 상기 이전의 앵커 화상 또는 다음의 앵커 화상과 동일하다.
멀티 뷰 비디오 코딩, 앵커 화상, 비앵커 화상, 의존성 구조

Description

멀티 뷰 비디오 코딩용 방법 및 장치{METHODS AND APPARATUS FOR USE IN MULTI-VIEW VIDEO CODING}
[관련 출원의 상호 참조]
본 출원은 2006년 7월 11일 출원된 미국 가출원번호 제60/830,206호의 우선권을 주장하며, 이 가출원은 본 명세서에서 그 전체가 참조문헌으로 인용된다.
본 발명은 일반적으로 인코딩 및 디코딩에 관한 것으로, 특히, 멀티 뷰 비디오 코딩(Multi-view Video Coding: MVC)용 방법 및 장치에 관한 것이다.
국제 표준화 기구/국제 전기 표준 회의(ISO/IEC) 동화상 전문가 그룹-4(MPEG-4) 파트 10 어드밴스드 비디오 코딩(AVC) 표준/국제 전기통신 연합(ITU)인, 전기통신 섹터(ITU-T) H.264 권고(이하 "MPEG-4 AVC 표준")에 따르는 멀티 뷰 비디오 코딩(MVC)에 관한 현재의 구현에서는, 특정 뷰를 식별하고 카메라 파라미터를 시그널링하는 규정이 없다. 이와 같은 뷰 정보는 몇가지 이유 때문에 필요하다. 뷰 확장성(view scalability), 뷰 랜덤 액세스, 병렬 처리, 뷰 생성, 및 뷰 합성은 모두 뷰 id 정보를 활용하는 멀티 뷰 비디오 코딩 요건들이다. 더욱이, 이들 요건들 중 일부는 또한 현재 표준화 방식으로 제공되지 않는 카메라 파라미터를 활용한다.
첫번째 종래 기술의 접근법에서는, 멀티 뷰 압축 비트 스트림에 효율적으로 랜덤 액세스할 수 있는 방법이 제안되었다. 제안된 방법에서, 새로운 V 화상 타입 및 새로운 뷰 의존성(dependency) SEI 메시지가 정의된다. 제안된 V 화상 타입에서 요구하는 한가지 특징은 V 화상들이 동일 카메라의 다른 화상에 시간적으로 의존되지 않아야 하고 단지 다른 카메라의 화상으로부터 동시에 예측될 수 있다는 점이다. 제안된 뷰 의존성 SEI 메시지는 V 화상은 물론 선행 및 후속 시퀀스의 화상들이 어느 뷰에 의존하는지를 정확하게 설명할 것이다. 이하에서는 제안된 변경들에 대해 상세히 설명된다.
V 화상의 구문(syntax) 및 의미(sematics)에 있어서, MPEG-4 AVC 표준과 관련되는 특정 구문표(syntax table)는 V 화상에 대응하는 네트워크 요약 계층(NAL) 단위 타입을 14개 포함하는 것으로 확장된다. 또한, V 화상의 타입은 다음의 의미를 갖는 것으로 정의된다:
V 화상: 모든 슬라이스들이 동일한 시간 인덱스를 갖는 슬라이스만(즉,단지 다른 뷰의 슬라이스이고 현재 뷰의 슬라이스는 아님) 참조하는 코딩된 화상. V 화상이 출력 또는 디스플레이될 때, 디코딩 프로세스가 동일 뷰에서 IDR 화상 또는 V 화상이 아니고 출력 순서가 V 화상에 선행하는 모든 화상을 표시하여 "참조에 미사용(unused for reference)" 으로 표시되게 한다. 각각의 V 화상은 동일한 NAL에서 발생하는 뷰 의존성 SEI 메시지와 연관될 것이다.
뷰 의존성 보조 향상 정보(Supplemental Enhancement Information) 메시지 구문 및 의미에 있어서, 뷰 의존성 보조 향상 정보 메시지는 다음의 구문으로 정의 된다:
Figure 112009001443342-PCT00001
상기에서 num_seq_reference_views/num_pic_reference_views는 현재 시퀀스/화상의 기준으로 사용될 수 있는 잠재적인 뷰의 개수를 나타내며, seq_reference_view_i/pic_reference_view_i는 i번째 기준 뷰의 뷰 개수를 나타낸다.
뷰 의존성 보조 향상 정보 메시지와 연관된 화상은 단지 pic_reference_view_i로 기술된 지정된 뷰를 참조할 것이다. 마찬가지로, 그 뷰에서 다음의 뷰 의존성 보조 향상 정보 메시지까지 그 뷰의 출력 순서에 있어 모든 후속 화상들은 단지 seq_reference_view_i로 기술된 지정된 뷰를 참조할 것이다.
뷰 의존성 보조 향상 정보 메시지는 각각의 순시 디코딩 리프레시(IDR) 화상 및 V 화상과 연관될 것이다.
상기 첫번째 종래 기술의 방법은 기준 뷰(base view)가 시간에 따라 변경될 수 있는 경우 이를 처리할 수 있는 장점을 갖지만, 어느 화상을 폐기할지를 결정하 기 전에 화상을 버퍼링하는 것을 추가로 필요로 한다. 또한, 첫번째 종래 기술의 방법은 의존성을 결정하는 프로세스를 반복적으로 수행하는 단점을 갖는다.
종래 기술의 이들 및 다른 문제점 및 단점들은 멀티 뷰 비디오 코딩(MVC)용 방법 및 장치에 관한 본 발명의 원리에 따라 처리된다.
본 발명의 원리의 양태에 따르면, 장치가 제공된다. 본 장치는 멀티 뷰 비디오 콘텐츠에 대응하는 적어도 두 뷰에 대한 앵커 및 비앵커 화상(anchor and non-anchor pictures)을 인코딩하는 인코더를 포함한다. 상기 적어도 두 뷰의 적어도 하나에서 디스플레이 순서상 이전의 앵커 화상 및 다음의 앵커 화상 사이에 배열된 비앵커 화상들의 세트 내 각각의 비앵커 화상의 의존성 구조(dependency structure)는 디스플레이 순서상 상기 이전의 앵커 화상 또는 다음의 앵커 화상과 동일하다.
본 발명의 원리의 또 다른 양태에 따르면, 방법이 제공된다. 본 방법은 멀티 뷰 비디오 콘텐츠에 대응하는 적어도 두 뷰에 대한 앵커 및 비앵커 화상을 인코딩하는 인코딩하는 단계를 포함한다. 상기 적어도 두 뷰의 적어도 하나에서 디스플레이 순서상 이전의 앵커 화상 및 다음의 앵커 화상 사이에 배열된 비앵커 화상들의 세트 내 각각의 비앵커 화상의 의존성 구조는 디스플레이 순서상 상기 이전의 앵커 화상 또는 다음의 앵커 화상과 동일하다.
본 발명의 원리의 또 다른 양태에 따르면, 장치가 제공된다. 본 장치는 멀티 뷰 비디오 콘텐츠에 대응하는 적어도 두 뷰에 대한 앵커 및 비앵커 화상을 디코딩하는 디코더를 포함한다. 상기 적어도 두 뷰의 적어도 하나에서 디스플레이 순서상 이전의 앵커 화상 및 다음의 앵커 화상 사이에 배열된 비앵커 화상들의 세트 내 각각의 비앵커 화상의 의존성 구조는 디스플레이 순서상 상기 이전의 앵커 화상 및 다음의 앵커 화상과 동일하다.
본 발명의 원리의 또 다른 양태에 따르면, 방법이 제공된다. 본 방법은 멀티 뷰 비디오 콘텐츠에 대응하는 적어도 두 뷰에 대한 앵커 및 비앵커 화상을 디코딩하는 단계를 포함한다. 상기 적어도 두 뷰의 적어도 하나에서 디스플레이 순서상 이전의 앵커 화상 및 다음의 앵커 화상 사이에 배열된 비앵커 화상들의 세트 내 각각의 비앵커 화상의 의존성 구조는 디스플레이 순서상 상기 이전의 앵커 화상 및 다음의 앵커 화상과 동일하다.
본 발명의 원리의 또 다른 양태에 따르면, 장치가 제공된다. 본 장치는 비트스트림으로부터의 멀티 뷰 비디오 콘텐츠에 대응하는 적어도 두 뷰를 디코딩하는 디코더를 포함한다. 상기 적어도 두 뷰 중 하나 이상에 대응하는 적어도 두 화상 그룹(Groups of Pictures)은 상이한 의존성 구조를 갖는다. 상기 디코더는 상기 적어도 두 뷰의 적어도 하나의 랜덤 액세스 동안에 적어도 하나의 의존성 맵(dependency map)에 따라서 상기 적어도 두 뷰에서 디코딩될 필요가 있는 화상을 선택한다.
본 발명의 원리의 또 다른 양태에 따르면, 방법이 제공된다. 본 방법은 비트스트림으로부터의 멀티 뷰 비디오 콘텐츠에 대응하는 적어도 두 뷰를 디코딩하는 단계를 포함한다. 상기 적어도 두 뷰 중 하나 이상에 대응하는 적어도 두 화상 그룹은 상이한 의존성 구조를 갖는다. 상기 디코딩 단계는 상기 적어도 두 뷰의 적어도 하나의 랜덤 액세스 동안에 적어도 하나의 의존성 맵에 따라서 상기 적어도 두 뷰에서 디코딩될 필요가 있는 화상을 선택한다.
본 발명의 원리의 이들 및 다른 양태, 특징 및 장점들은 첨부 도면과 함께 읽을 볼 후술하는 예시적인 실시예의 상세한 설명으로부터 명확해질 것이다.
본 발명의 원리는 다음의 예시적인 도면에 따라서 더 잘 이해될 수 있다.
도 1은 본 발명의 원리의 실시예에 따라서, 본 발명의 원리가 적용될 수 있는 예시적인 멀티 뷰 비디오 코딩(MVC) 인코더의 블럭도이다.
도 2는 본 발명의 원리의 실시예에 따라서, 본 발명의 원리가 적용될 수 있는 예시적인 멀티 뷰 비디오 코딩(MVC) 디코더의 블럭도이다.
도 3은 본 발명의 원리의 실시예에 따라서, 계층 B 화상을 이용하는 MPEG-4 AVC 표준 기반의 뷰간 시간 예측 구조(inter-view-temporal prediction structure)에 대한 도면이다.
도 4는 본 발명의 원리의 실시예에 따라서, 멀티 뷰 비디오 콘텐츠의 다수의 뷰를 인코딩하는 예시적인 방법에 대한 흐름도이다.
도 5는 본 발명의 원리의 실시예에 따라서, 멀티 뷰 비디오 콘텐츠의 다수의 뷰를 디코딩하는 예시적인 방법에 대한 흐름도이다.
도 6A는 본 발명의 원리의 실시예에 따라서, 본 발명의 원리가 적용될 수 있는 나중의 앵커 슬롯(later anchor slot)과 동일한 의존성을 갖는 비앵커 프레임의 의존성 변경의 일예를 예시하는 도면이다.
도 6B는 본 발명의 원리의 실시예에 따라서, 본 발명의 원리가 적용될 수 있는 이전의 앵커 슬롯(previous anchor slot)과 동일한 의존성을 갖는 비앵커 프레임의 의존성 변경의 일예를 예시하는 도면이다.
도 7은 본 발명의 원리의 실시예에 따라서, 랜덤 액세스 포인트를 이용하여 멀티 뷰 비디오 콘텐츠를 디코딩하는 예시적인 방법에 대한 흐름도이다.
도 8은 본 발명의 원리의 실시예에 따라서, 랜덤 액세스 포인트를 이용하여 멀티 뷰 비디오 콘텐츠를 디코딩하는 또 다른 예시적인 방법에 대한 흐름도이다.
도 9는 본 발명의 원리의 실시예에 따라서, 멀티 뷰 비디오 콘텐츠를 인코딩하는 예시적인 방법에 대한 흐름도이다.
본 발명의 원리는 멀티 뷰 비디오 코딩(MVC)용 방법 및 장치와 관련된다.
본 설명은 본 발명의 원리를 예시한다. 따라서, 비록 본 명세서에서 명확하게 기술하거나 도시하지 않을지라도, 본 기술 분야에서 숙련된 자들이 본 발명의 원리를 구현하고 그 정신 및 범주 내에 포함되는 다양한 장치들을 고안할 수 있음을 인식할 것이다.
본 명세서에서 기술된 모든 예 및 조건부 언어는 독자에게 본 발명의 원리 및 본 발명자(들)이 본 기술을 촉진하는데 기여한 개념을 이해하는데 도움을 주기 위한 교육 목적으로 의도되며, 그와 같이 특정하게 기술된 예들 및 조건들로 국한하지 않는 것으로 간주되어야 한다.
또한, 본 명세서에서 원리, 양태, 및 본 발명의 원리의 실시예를 기술하는 모든 설명들과 그 특정 예들은 그의 구조적 및 기능적 등가물을 모두 망라하는 것으로 의도한다. 추가적으로, 이러한 등가물은 현재 공지된 등가물과 미래에 개발되는 등가물, 즉, 구조와 상관없이 동일한 기능을 수행하는 개발되는 모든 요소들을 모두 포함하는 것으로 의도한다.
따라서, 예를 들어, 본 기술 분야에서 숙련된 자들은 본 명세서에서 제시된 블럭도가 본 발명의 원리를 구현하는 예시적인 회로의 개념도를 나타냄을 인식할 것이다. 유사하게, 모든 순서도(flow charts), 흐름도(flow diagrams), 상태 천이도, 의사 코드(psedocode) 등은 실질적으로 컴퓨터 판독가능 매체로 나타내고 그와 같이 컴퓨터 또는 프로세서가 명시적 도시 여부에 관계없이 그러한 컴퓨터 또는 프로세서에 의해 실행될 수 있는 각종 프로세스를 나타냄을 인식할 것이다.
도면에 도시된 다양한 구성 요소들의 기능은 전용 하드웨어는 물론 적합한 소프트웨어와 연관하여 소프트웨어를 실행할 수 있는 하드웨어를 이용함으로써 제공될 수 있다. 프로세서에 의한 제공시에는, 이들 기능은 단일의 전용 프로세서, 또는 단일의 공유 프로세서, 또는 일부가 공유될 수 있는 다수의 개별 프로세서들에 의해 제공될 수 있다. 또한, 명시적으로 사용된 "프로세서" 또는 "제어기" 라는 용어는 배타적으로 스프트웨어를 실행할 수 있는 하드웨어를 지칭하는 것으로 간주되지 않아야 하고, 제한 없이, 암시적으로 디지털 신호 프로세서("DSP") 하드웨어, 소프트웨어를 저장하는 판독 전용 메모리("ROM"), 랜덤 액세스 메모리("RAM"), 및 비휘발성 저장 장치를 포함할 수 있다.
다른 통상의 및/또는 커스텀 하드웨어가 또한 포함될 수 있다. 유사하게, 도면에 도시된 모든 스위치들은 단지 개념적이다. 이들의 기능은 프로그램 로직 동작을 통해, 전용 로직을 통해, 프로그램 제어 및 전용 로직의 상호작용을 통해, 또는 수동으로도 수행될 수 있으며, 문맥으로부터 더욱 상세하게 이해할 수 있는 바와 같이 특정 기법이 구현자에 의해 선택가능하다.
본 발명의 원리의 특허청구범위에서, 특정 기능을 수행하는 수단으로서 표현된 임의의 구성요소는, 예를 들어, a)그 기능을 수행하는 회로 소자의 결합 또는 b)상기 기능을 수행하도록 그 소프트웨어를 실행하는 적합한 회로와 결합된 펌웨어, 마이크로코드 등을 포함하는 임의 형태의 소프트웨어를 포함하는 기능을 수행하는 모든 방식을 망라하는 것으로 의도한다. 이와 같은 특허청구범의에 정의된 바와 같은 본 발명의 원리는 기술된 각종 수단에 의해 제공된 기능이 특허청구범위가 청구하는 방식으로 함께 조합되고 결합된다. 따라서 이들 기능을 제공할 수 있는 모든 수단은 본 명세서에서 설명된 수단과 동등한 것으로 간주된다.
본 명세서에서 본 발명 원리의 "일 실시예(one embodiment)" 또는 "실시예(an embodiment)"에 대한 언급은 그 실시예와 관련하여 기술된 특정 특징, 구조, 특성 등이 본 발명 원리의 적어도 일 실시예에 포함되는 것을 의미한다. 따라서, 본 명세서 전체에 걸쳐서 나타나는 "일 실시예에서" 또는 "실시예에서" 라는 문구는 반드시 모두 동일한 실시예를 언급하지는 않는다.
본 명세서에서 사용된 바와 같은 "고수준의 구문(high level syntax)"은 계층적으로 매크로블럭 층(macroblock layer) 이상의 비트스트림에 존재하는 구문을 말한다. 예를 들어, 본 명세서에서 사용된 바와 같은 고수준의 구문은, 이것으로 제한하는 것은 아니지만, 슬라이스 헤더 레벨, 보조 향상 정보(SEI) 레벨, 화상 파라미터 세트 레벨, 시퀀스 파라미터 세트 레벨 및 NAL 단위 헤더 레벨의 구문을 지칭할 수 있다.
또한, 본 명세서에 사용된 바와 같은 "앵커 슬롯(anchor slot)"은 각 뷰로부터 화상이 샘플되고 각 뷰로부터의 각 샘플 화상이 앵커 화상이 되는 시간을 지칭한다.
도 1을 참조하면, 참조 번호(100)는 일반적으로 예시적인 멀티 뷰 비디오 코딩(MVC) 인코더를 나타낸다. 인코더(100)는 출력이 변환기(110)의 입력과 신호 통신하여 연결된 결합기(105)를 포함한다. 변환기(110)의 출력은 양자화기(115)의 입력과 신호 통신하여 연결된다. 양자화기(115)의 출력은 엔트로피 코더(120)의 입력 및 역양자화기(125)의 입력과 신호 통신하여 연결된다. 역양자화기(125)의 출력은 역변환기(130)의 입력과 신호 통신하여 연결된다. 역변환기(130)의 출력은 결합기(135)의 제1 비반전 입력과 신호 통신하여 연결된다. 결합기(135)의 출력은 인트라 예측기(145)의 입력 및 디블럭킹 필터(150)의 입력과 신호 통신하여 연결된다. 디블럭킹 필터(150)의 출력은 (뷰i용) 기준 화상 저장소(155)의 입력과 신호 통신하여 연결된다. 기준 화상 저장소(155)의 출력은 움직임 보상기(175)의 제1 입력 및 움직임 추정기(180)의 제1 입력과 신호 통신하여 연결된다. 움직임 추정기(180)의 출력은 움직임 보상기(175)의 제2 입력과 신호 통신하여 연결된다.
(다른 뷰용) 기준 화상 저장소(160)의 출력은 변이(disparity) 추정기(170) 의 제1 입력 및 변이 보상기(165)의 제1 입력과 신호 통신하여 연결된다. 변이 추정기(170)의 출력은 변이 보상기(165)의 제2 입력과 신호 통신하여 연결된다.
엔트로피 디코더(120)의 출력은 인코더(100)의 출력으로서 이용가능하다. 결합기(105)의 비반전 입력은 인코더(100)의 입력으로서 이용가능하며, 변이 추정기(170)의 제2 입력 및 움직임 추정기(180)의 제2 입력과 신호 통신하여 연결된다. 스위치(185)의 출력은 결합기(135)의 제2 비반전 입력 및 결합기(105)의 반전 입력과 신호 통신하여 연결된다. 스위치(185)는 움직임 보상기(175)의 출력과 신호 통신하여 연결된 제1 입력, 변이 보상기(165)의 출력과 신호 통신하여 연결된 제2 입력, 및 인트라 예측기(145)의 출력과 신호 통신하여 연결된 제3 입력을 포함한다.
도 2를 참조하면, 참조 번호(200)는 일반적으로 예시적인 멀티 뷰 비디오 코딩(MVC) 디코더를 나타낸다. 디코더(200)는 출력이 역양자화기(210)의 입력과 통신하여 연결된 엔트로피 디코더(205)를 포함한다. 역양자화기의 출력은 역변환기(215)의 입력과 신호 통신하여 연결된다. 역변환기(215)의 출력은 결합기(220)의 제1 비반전 입력과 신호 통신하여 연결된다. 결합기(220)의 출력은 디블럭킹 필터(225)의 입력 및 인트라 예측기(230)의 입력과 신호 통신하여 연결된다. 디블럭킹 필터(225)의 출력은 기준 화상 저장소(240)(뷰i용)의 입력과 신호 통신하여 연결된다. 기준 화상 저장소(240)의 출력은 움직임 보상기(235)의 제1 입력과 신호 통신하여 연결된다.
(다른 뷰용) 기준 화상 저장소(245)의 출력은 변이 보상기(250)의 제1 입력과 신호 통신하여 연결된다.
엔트로피 코더(205)의 입력은 잔여 비트스트림을 수신하는 디코더(200)로의 입력으로서 이용가능하다. 또한, 스위치(255)의 제어 입력은 스위치(255)에 의해 어느 입력이 선택되는지를 제어하는 제어 구문을 수신하는 디코더(200)으로의 입력으로서 이용가능하다. 또한, 움직임 보상기(235)의 제2 입력은 움직임 벡터를 수신하는 디코더(200)의 입력으로서 이용가능하다. 또한, 변이 보상기(250)의 제2 입력은 변이 벡터를 수신하는 디코더(200)로의 입력으로서 이용가능하다.
스위치(255)의 출력은 결합기(220)의 제2 비반전 입력과 신호 통신하여 연결된다. 스위치(255)의 제1 입력은 변이 보상기(250)의 출력과 신호 통신하여 연결된다. 스위치(255)의 제2 입력은 움직임 보상기(235)의 출력과 신호 통신하여 연결된다. 스위치(255)의 제3 입력은 인트라 예측기(230)의 출력과 신호 통신하여 연결된다. 모드 모듈(260)의 출력은 스위치(255)에 의해 어느 입력이 선택되는지를 제어하는 스위치(255)와 신호 통신하여 연결된다. 디블럭킹 필터(225)의 출력은 디코더의 출력으로서 이용가능하다.
본 발명의 원리의 실시예에서는, 멀리 뷰 시퀀스를 효율적으로 처리하는 고수준의 구문이 제안된다. 특히, 본 발명자들은 멀티 뷰 슬라이스를 지원하기 위한 그 자신의 NAL 단위 타입 및 추가의 두 새로운 NAL 단위 타입을 갖는 뷰 파라미터 세트(VPS)라 불리는 새로운 파라미터 세트의 생성을 제안하며, 상기 NAL 단위 타입들은 NAL 헤더에 슬라이스가 어느 뷰에 속하는지를 식별하는 뷰 식별자(id)를 포함한다. 뷰 확장성 및 MPEG-4 AVC 표준에 따르는 디코더와의 배경 호환성을 위해, 본 발명자들은 "MPEG-4 AVC 컴플라이언트 기준 뷰" 라하는 하나의 MPEG-4 컴플라이 언트 뷰를 지원하는 것을 제안한다.
본 명세서에서 사용된 바와 같은 "고수준의 구문"은 계층적으로 매크로블럭 층 이상의 비트스트림에 존재하는 구문을 말한다. 예를 들어, 본 명세서에서 사용된 바와 같은 고수준의 구문은, 이것으로 제한하는 것은 아니지만, 슬라이스 헤더 레벨, 보조 향상 정보(SEI) 레벨, 화상 파라미터 세트 레벨, 및 시퀀스 파라미터 세트 레벨의 구문을 지칭할 수 있다.
특정 뷰를 식별하고 카메라 파라미터를 시그널링하는 규정이 없는 전술한 멀티 뷰 비디오 코딩 시스템의 현재의 구현에서는, 상이한 뷰를 별개의 뷰로 처리하는 대신 상이한 뷰들을 인터리브하여 단일 시퀀스를 형성한다. 구문이 MPEG-4 AVC 표준과 호환되므로, 전술한 바와 같이 현재 주어진 슬라이스가 어느 뷰에 속하는지를 식별할 수 없다. 이와 같은 뷰 정보는 몇가지 이유로 필요하다. 뷰 확장성, 뷰 랜덤 액세스, 병렬 처리, 뷰 생성, 및 뷰 합성은 모두 뷰의 식별을 필요로 하는 멀티 뷰 비디오 코딩 요건들이다. 뷰 랜덤 액세스 및 뷰 확장성을 효율적으로 지원하기 위해서는, 상이한 화상들이 서로 얼마나 의존하는지를 디코더가 인식하는 것이 중요하므로, 단지 필요한 화상들만 디코드된다. 뷰 합성을 위해 카메라 파라미터가 필요하다. 디코딩 루프에서 결국 뷰 합성이 사용된다면, 카메라 파라미터를 시그널링하는 표준화 방식이 특정될 필요가 있다. 일 실시예에 따르면, 뷰 파라미터 세트가 사용된다.
일 실시예에서, 비MVC(non-MVC) 호환성이지만 MPEG-4 AVC 호환성 디코더 지원 목적으로 MPEG-4 AVC 표준과 완전히 역호환되는 하나의 뷰가 필요하다고 가정한 다. 일 실시예에서, 뷰 랜덤 액세스를 고속으로 수행하기 위해 독립적으로 디코드가능한 뷰가 존재한다고 가정한다. 이들 뷰를 "기준 뷰"라 한다. 기준 뷰는 MPEG-4와 호환되거나 호환되지 않을 수 있지만, MPEG-4 호환성 뷰는 항상 기준 뷰이다.
도 3을 참조하면, 참조 번호(300)는 일반적으로 계층 B 화상을 이용하는 MPEG-4 AVC 표준 기반의 뷰간 시간 예측 구조(inter-view-temporal prediction structure)를 나타낸다. 도 3에서, 변수 I는 인트라 코딩된 화상을 나타내며, 변수 P는 예측 코딩된 화상을 나타내며, 변수 B는 양방향 예측 코딩된 화상을 나타내며, 변수 T는 특정 화상의 위치를 나타내며, 변수 S는 특정 화상에 대응하는 특정 뷰를 나타낸다.
일 실시예에 따라서, 다음 용어들이 정의된다.
"앵커 화상"은 디코딩시 상이한 시간 간격으로 샘플된 화상을 전혀 포함하지 않는 화상으로 정의된다. 앵커 화상은 nal_ref_idc를 3으로 설정함으로써 시그널링된다. 도 3에서, 위치(T0, T8,...,T96, 및 T100)의 모든 화상은 앵커 화상들의 예이다.
"비앵커 화상"은 상기 제약 조건이 앵커 화상에 지정되지 않는 화상으로 정의된다. 도 3에서, 화상(B2, B3, 및 B4)은 비앵커 화상들이다.
"기준 뷰"는 어떤 다른 뷰에 의존하지 않고 독립적으로 디코딩될 수 있는 뷰이다. 도 3에서, 뷰(S0)는 기준 뷰의 일예이다.
또한, 일 실시예에서, 멀티 뷰 비디오 코딩 슬라이스를 지원하기 위하여 자 신의 NAL 단위 타입과 새로운 두 NAL 단위 타입을 갖는 뷰 파라미터 세트라하는 새로운 파라미터 세트가 제안된다. 또한 뷰_id 및 뷰 파라미터 세트를 나타내는 슬라이스 헤더 구문을 변형하여 사용한다.
MPEG-4 AVC 표준은 다음의 두 파라미터 세트, 즉 (1)시퀀스 전체에 걸쳐서 변경되지 않는 정보를 포함하는 시퀀스 파라미터 세트(SPS), 및 (2)각 화상마다 변경되지 않는 정보를 포함하는 화상 파라미터 세트(PPS)를 포함한다.
멀티 뷰 비디오 코딩이 각 뷰에 특정된 추가 정보를 가지므로, 이 정보를 전송하기 위해 별도의 뷰 파라미터 세트(VPS)를 생성하였다. 상이한 뷰들 간의 의존성을 결정하는데 필요한 모든 정보는 뷰 파라미터 세트에 표시된다. 표 1에는 제안된 뷰 파라미터 세트의 구문표(뷰 파라미터 세트 RBSP 구문)가 도시된다. 이와 같은 뷰 파라미터 세트는 새로운 NAL 단위 타입, 예를 들어, 표 2에 도시된 바와 같은 타입 14(NAL 단위 타입 코드)에 포함된다.
본 발명의 설명에 따라서, 다음 용어들이 정의된다:
view_parameter_set_id는 슬라이스 헤더에 언급된 뷰 파라미터를 나타낸다. view_parameter_set_id의 값은 0 내지 255 범위 내에 있을 것이다.
number_of_views_minus_1 plus 1은 비트스트림 내 총 뷰의 개수를 나타낸다. number_of_views_minus_1의 값은 0 내지 255 범위 내에 있을 것이다.
avc_compatible_view_id는 AVC 호환성 뷰의 뷰_id를 나타낸다. avc_compatible_view_id의 값은 0 내지 255 범위 내에 있을 것이다.
is_base_view_flag[i] equal to 1은 뷰i가 기준 뷰이고 독립적으로 디코드 가능함을 나타낸다. is_base_view_flag[i] equal to 0은 뷰i가 기준 뷰가 아님을 나타낸다. is_base_view_flag[i]의 값은 AVC 호환성 뷰i의 경우 1일 것이다.
dependency_update_flag equal 1은 이 뷰의 의존성 정보가 VPS에서 업데이트됨을 나타낸다. dependency_update_flag equal 0은 이 뷰의 의존성 정보가 업데이트되지 않고 변경되지 않아야 함을 나타낸다.
anchor_picture_dependency_maps[i][j] equal to 1은 뷰_id가 j인 앵커 화상이 뷰_id가 i인 앵커 화상에 의존함을 나타낸다.
non_anchor_picture_dependency_maps[i][j] equal to 1은 뷰_id가 j인 비앵커 화상이 뷰_id가 i인 비앵커 화상에 의존함을 나타낸다. non_anchor_picture_dependency_maps[i][j]는 anchor_picture_dependency_maps[i][j] equal to 1일 경우에만 존재한다. 만일 anchor_picture_dependency_maps[i][j]가 존재하고 0이면, non_anchor_picture_dependency_maps[i][j]는 0으로 추론될 것이다.
Figure 112009001443342-PCT00002
nal_unit_type NAL 단위 콘텐츠 및 RBSP 구문 구조 C
0 미지정
1 비IDR 화상의 코딩된 슬라이스 slice_layer_without_partitioning_rbsp() 2,3,4
2 코딩된 슬라이스 데이터 부분 A slice_data_partition_a_layer_rbsp() 2
3 코딩된 슬라이스 데이터 부분 B slice_data_partition_b_layer_rbsp() 3
4 코딩된 슬라이스 데이터 부분 C slice_data_partition_c_layer_rbsp() 4
5 IDR 화상의 코딩된 슬라이스 slice_layer_without_partitioning_rbsp() 2,3
6 보조 강화 정보(SEI) sei_rbsp() 5
7 시퀀스 파라미터 세트 seq_parameter_set_rbsp() 0
8 화상 파라미터 세트 pic_parameter_set_rbsp() 1
9 액세스 단위 구분자 access_unit_delimiter_rbsp() 6
10 시퀀스의 마지막 end_of_seq_rbsp() 7
11 스트림의 마지막 end_of_stream_rbsp() 8
12 필터 데이터 filter_data_rbsp() 9
13 시퀀스 파라미터 세트 확장 seq_parameter_set_extention_rbsp() 10
14 뷰 파라미터 세트 view_parameter_set_rbsp() 11
15..18 예약
19 구획없이 보조 코딩된 화상의 코딩된 슬라이스 slice_layer_without_partitioning_rbsp() 2,3,4
20 확장형 비IDR 화상의 코딩된 슬라이스 slice_layer_in_scalable_extension_rbsp() 2,3,4
21 확장형 IDR 화상의 코딩된 슬라이스 slice_layer_in_scalable_extension_rbsp() 2,3
22 멀티 뷰 확장 비IDR 화상의 코딩된 슬라이스 slice_layer_in_mvc_extension_rbsp() 2,3,4
23 멀티 뷰 확장 IDR 화상의 코딩된 슬라이스 slice_layer_in_mvc_extension_rbsp() 2,3
24..31 미지정
뷰 파라미터 세트 내 선택적 파라미터는 다음을 포함한다:
camera_parameters_present_flag equal to 1은 프로젝션 메트릭스(projection parameter)가 다음과 같이 시그널링됨을 나타낸다.
카메라 파라미터가 3x4 프로젝션 메트릭스 P 형태로 전달된다고 가정하면, 3D 세계의 포인트를 2D 이미지 좌표에 매핑하는데 사용될 수 있는 camera_parameters는:
Figure 112009001443342-PCT00003
이고, 여기서 l은 동차 좌표(homogeneous coordinate)
Figure 112009001443342-PCT00004
이다.
각각의 element camera_parameters_*_*는 IEEE 단정도 소숫점(single precision floating point)(32 비트) 표준에 따라 표현될 수 있다.
이와 같은 정보를 별도의 파라미터 세트에 포함시키는데 대한 장점은 MPEG-4 AVC 표준과 호환되는 시퀀스 파라미터 세트(SPS) 및 화상 파라미터 세트(PPS)를 여전히 지원한다는 점이다. 만일 각 뷰마다 이 정보를 시퀀스 파라미터 세트 또는 화상 파라미터 세트에 포함시킨다면, 별도의 시퀀스 파라미터 세트 및 화상 파라미터 세트를 전송할 필요가 있다. 또한, 이것은 지나치게 제한적이다. 이 정보는 시퀀스 파라미터 세트 또는 화상 파라미터 세트에 잘 맞지 않는다. 또 다른 이유는 MPEG-4 AVC 표준 호환성 기준 뷰를 갖는 것을 제안하기 때문에, 그 뷰의 경우 별도(MPEG-4 AVC 호환성)의 시퀀스 파라미터 세트 및 화상 파라미터 세트와 다른 모든 뷰의 경우 (특정 뷰 정보를 갖는) 별도의 시퀀스 파라미터 세트/화상 파라미터 세트를 이용하여야 한다는 것이다.
모든 의존성 정보를 시퀀스 맨앞의 단일 뷰 파라미터 세트에 배치하면 매우 유익하다. 디코더는 일단 뷰 파라미터 세트를 수신하면 모든 의존성 정보를 이용하여 맵을 생성할 수 있다. 이 맵은 디코더가 임의의 슬라이스를 수신하기 전에 특정 뷰를 디코딩하는데 어느 뷰가 필요한지를 알게 해 준다. 이 결과로, 뷰_id를 획득하고 이 뷰가 사용자에 의해 표시된 바와 같은 타겟 뷰를 디코딩하는데 필요로 하는지를 판단하기 위해 슬라이스 헤더를 분석하기만 하면 된다. 따라서, 특정 뷰를 디코딩하는데 어느 프레임이 필요한지를 판단하는 소정의 시점까지 어떤 프레임도 버퍼링하거나 대기할 필요가 없다.
의존성 정보 및 기준 뷰인지 여부는 뷰 파라미터 세트에 표시된다. MPEG-4 AVC 호환성 기준 뷰 조차도 그 뷰에 특정한 정보(예컨대, 카메라 파라미터)를 그와 연관시켰다. 이 정보는 뷰 보간/합성을 포함하는 몇가지 목적상 다른 뷰에 의해 이용될 수 있다. 본 발명자들은 단지 하나의 MPEG-4 AVC 호환성 뷰를 지원하는 것을 제안하는데 이는 다수의 MPEG-4 AVC 호환성 뷰가 존재하는 경우 그와 같은 각 슬라이스가 어느 뷰에 속하는지를 식별하기 어렵고 비멀티(non-Multi) 뷰 비디오 코딩 디코더가 쉽게 혼란스러워할 수 있기 때문이다.
이를 단지 하나의 그와 같은 뷰로 제한함으로써, 비멀티 뷰 비디오 코딩 디코더가 뷰를 정확하게 디코딩할 수 있도록 해 주고 구문 avc_compatible_view_id를 이용하여 멀티 뷰 비디오 코딩 디코더가 쉽게 그러한 뷰를 뷰 파라미터 세트로부터 식별할 수 있게 해준다. 다른 모든 기준 뷰들(비MPEG-4 AVC 호환성)은 is_base_view_flag를 이용하여 식별될 수 있다.
멀티 뷰 비디오 코딩 슬라이스의 새로운 슬라이스 헤더가 제안된다. 뷰 확장성, 뷰 랜덤 액세스 등을 지원하기 위해, 현재 슬라이스가 어느 뷰에 의존하는지 를 알 필요가 있다. 뷰 합성 및 뷰 보간을 위해, 잠재적으로 카메라 파라미터를 또한 필요로 할 수 있다. 이 정보는 앞의 표 1에 도시된 바와 같은 뷰 파라미터 세트에 존재한다. 뷰 파라미터 세트는 view_parameter_set_id를 이용하여 식별된다. 본 발명자들은 표 3에 도시된 바와 같이 모든 비MPEG-4 AVC 호환성 슬라이스의 슬라이스 헤더에 view_parameter_set_id를 부가하는 것을 제안한다. 뷰_id 정보는 뷰 보간/합성, 뷰 랜덤 액세스, 병렬 처리 등을 포함하는 몇가지 멀티 뷰 비디오 코딩 요건에서 필요하다. 이 정보는 또한 단지 상호 뷰 예측(cross-view prediction)과 관련되는 특정 코딩 모드에 유용할 수 있다. 이 뷰의 경우 대응하는 파라미터를 뷰 파라미터 세트로부터 찾기 위해, 슬라이스 헤더 내 뷰_id를 전송하는 것이 필요하다.
Figure 112009001443342-PCT00005
새로운 멀티 뷰 비디오 코딩 슬라이스의 경우, 본 발명자들은 각 슬라이스 타입마다 새로운 NAL 단위 타입(순시 디코딩 리프레시(IDR) 및 비IDR)을 생성하는 것을 제안한다. 본 발명자들은 표 2에 도시된 바와 같이 IDR 슬라이스의 경우 타입 22 그리고 비IDR 슬라이스의 경우 타입 23을 이용하는 것을 제안한다.
view_parameter_set_id는 일반적으로 이용되고 있는 뷰 파라미터 세트를 지정한다. view_parameter_set_id의 값은 0 내지 255 범위 내에 있을 것이다.
view_id는 현재 뷰의 뷰 id를 나타낸다. view_parameter_set_id의 값은 0 내지 255 범위 내에 있을 것이다.
이제 본 발명의 원리의 실시예에 따라서 뷰 랜덤 액세스의 일예가 설명될 것이다.
뷰 랜덤 액세스는 멀티 뷰 비디오 코딩 요건이다. 그 목적은 최소의 디코딩 노력으로 임의의 뷰에 액세스하기 위함이다. 도 3에 도시된 예측 구조용의 뷰 랜덤 액세스의 간단한 예를 생각해 보자.
사용자가 뷰(S3)의 디코드를 요청한다고 가정하자. 도 3으로부터, 이 뷰가 뷰(S0), 뷰(S2), 및 뷰(S4)에 의존하는 것을 알 수 있다. 이하에서 뷰 파라미터 세트의 일예가 예시된다.
뷰의 뷰_id가 슬라이스 헤더 구문에서 0에서 7까지 연속적으로 번호 부여되고 view_parameter_set_ equal to 0인 단지 하나의 뷰 파라미터 세트가 존재한다고 가정하자. number_of_views_minus_1은 7로 설정된다. avc_compatible_view_id는 0로 설정될 수 있다.
뷰(S0)의 경우, is_base_view_flag는 1로 설정되며, 다른 뷰의 경우 이것은 0로 설정된다. S0, S1, S2, S3, 및 S4에 대한 의존성 맵은 표 4A(S0 anchor_picture_dependency_map의 의존성 표) 및 표 4B(S0 non_anchor_picture_dependency_map의 의존성 표)에 도시된 바와 같을 것이다. 다른 뷰에 대한 의존성 맵은 유사한 방식으로 작성될 수 있다.
일단 이 표가 디코더에서 이용가능하다면, 디코더가 수신하는 슬라이스가 특정 뷰를 디코딩하는데 필요한지 여부를 디코더가 용이하게 판단할 수 있다. 디코더는 현재 슬라이스의 뷰_id를 판단하기 위해 슬라이스 헤더와, 디코더가 현재 슬라이스를 보유해야 하는지 여부를 판단하기 위해 두 표(표 4A 및 표 4B)에서 S3 컬럼을 참조할 수 있는 타겟 뷰(S3)를 분석하기만 하면 된다. 디코더는 앵커 화상 및 비앵커 화상을 구별하는 것이 필요한데 이는 이들 화상들이 표 4a 및 4b에서 알수 있는 바와 같이 서로 다른 의존성을 가질 수 있기 때문이다. 타켓 뷰(S3)의 경우, 뷰(S0, S2, 및 S4)의 앵커 화상을 디코드해야 하지만, 그러나 단지 뷰(S2 및 S4)의 비앵커 화상을 디코딩하면 된다.
i\j S0 S1 S2 S3 S4 S5 S6 S7
S0 0 1 1 1 1 1 1 1
S1 0 0 0 0 0 0 0 0
S2 0 1 0 1 1 1 1 1
S3 0 0 0 0 0 0 0 0
S4 0 0 0 1 0 1 1 1
i\j S0 S1 S2 S3 S4 S5 S6 S7
S0 0 1 0 0 0 0 0 0
S1 0 0 0 0 0 0 0 0
S2 0 1 0 1 0 0 0 0
S3 0 0 0 0 0 0 0 0
S4 0 0 0 1 0 1 0 0
도 4를 참조하면, 참조 번호(400)는 일반적으로 멀티 뷰 비디오 콘탠츠의 다수의 뷰를 인코딩하는 예시적인 방법을 나타낸다.
본 방법(400)은 시작 블럭(405)을 포함하며 이 블럭은 제어를 기능 블럭(410)에 전달한다. 기능 블럭(410)은 다수의 뷰를 인코딩하는데 사용될 인코딩 파라미터들에 대한 구성 파일을 판독하고, 제어를 기능 블럭(415)에 전달한다. 기능 블럭은 N을 인코딩할 뷰의 개수로 설정하고, 제어를 기능 블럭(420)으로 전달한다. 기능 블럭(420)은 number_of_views_minus_1을 N-1로 설정하고, avc_compatible_view_id를 MPEG-4 AVC 호환성 뷰의 뷰_id로 설정하고, 제어를 기능 블럭(425)으로 전달한다. 기능 블럭(425)은 view_parameter_set_id를 유효 정수로 설정하고, 변수(i)를 0가 되게 초기화하고, 제어를 판단 블럭(430)으로 전달한다. 판단 블럭(430)은 i가 N보다 큰지 여부를 판단한다. 만일 그렇다면, 제어는 판단 블럭(435)으로 전달된다. 그렇지 않다면, 제어는 기능 블럭(470)으로 전달된다.
판단 블럭(435)은 현재 뷰가 기준 뷰인지 여부를 판단한다. 만일 그렇다면 제어는 기능 블럭(440)으로 전달된다. 그렇지 않다면, 제어는 기능 블럭(480)으로 전달된다.
기능 블럭(440)은 is_base_view_flag[i]를 1로 설정하고, 제어를 판단 블럭(445)으로 전달한다. 판단 블럭(445)은 의존성이 업데이트되고 있는지 여부를 판단한다. 만일 그렇다면, 제어는 기능 블럭(450)으로 전달된다. 그렇지 않다면, 제어는 기능 블럭(485)으로 전달된다.
기능 블럭(450)은 dependency_update_flag를 1로 설정하고, 제어를 기능 블럭(455)으로 전달한다. 기능 블럭(455)은 변수(j)를 0으로 설정하고, 제어를 판단 블럭(460)으로 전달한다. 판단 블럭(460)은 j가 N보다 작은지를 판단한다. 만일 그렇다면, 제어는 기능 블럭(465)으로 전달된다. 그렇지 않다면, 제어는 기능 블럭(487)으로 전달된다.
기능 블럭(465)은 anchor_picture_dependency_maps[i][j] 및 non_anchor_picture_dependency_maps[i][j]를 구성 파일에 표시된 값들로 설정하고, 제어를 기능 블럭(467)으로 전달한다. 기능 블럭(467)은 변수(j)를 1만큼 증분하고, 제어를 판단 블럭(460)으로 리턴한다.
기능 블럭(470)은 카메라 파라미터가 존재할 경우 camera_parameters_present_flag를 1로 설정하고, 그렇지 않다면 camera_parameters_present_flag를 0으로 설정하고, 제어를 판단 블럭(472)으로 전달한다. 판단 블럭(472)은 camera_parameters_present_flag가 1인지를 판단한다. 만일 그렇다면, 제어는 기능 블럭(432)으로 전달된다. 그렇지 않다면, 제어는 기능 블럭(434)으로 전달된다.
기능 블럭(432)은 카메라 파라미터를 기록하고, 제어를 기능 블럭(434)으로 전달한다.
기능 블럭(434)은 뷰 파라미터 세트(VPS) 또는 시퀀스 파라미터 세트(SPS)를 기록하고, 제어를 종료 블럭(499)으로 전달한다.
기능 블럭(480)은 is_base_view_flag[i]를 0로 설정하고, 제어를 판단 블럭(445)으로 전달한다.
기능 블럭(485)은 dependency_update_flag를 0로 설정하고, 제어를 기능 블럭(487)으로 전달한다. 기능 블럭(487)은 변수(i)를 1만큼 증분하고, 제어를 판단 블럭(430)으로 리턴한다.
도 5를 참조하면, 참조 번호(500)는 일반적으로 멀티 뷰 비디오 콘텐츠의 다수의 뷰를 디코딩하는 예시적인 방법을 나타낸다.
본 방법(500)은 시작 블럭(505)을 포함하며, 이 블럭은 제어를 기능 블럭(510)으로 전달한다. 기능 블럭(510)은 시퀀스 파라미터 세트(SPS) 또는 뷰 파라미터 세트(VPS), view_parameter_set_id, number_of_views_minus_1, avc_compatible_view_id를 분석하고, 변수(i 및 j)를 0로 설정하고, N을 number_of_views_minus_1로 설정하고, 제어를 판단 블럭(515)으로 전달한다. 판단 블럭(515)은 i가 N보다 작거나 같은지를 판단한다. 만일 그렇다면, 제어는 기능 블럭(570)으로 전달된다. 그렇지 않다면, 제어는 기능 블럭(525)으로 전달된다.
기능 블럭(570)은 camera_parameters_present_flag를 분석하고, 제어를 판단 블럭(572)으로 전달한다. 판단 블럭(572)은 camera_parameters_present_flag가 1인지를 판단한다. 만일 그렇다면, 제어는 기능 블럭(574)으로 전달된다. 그렇지 않다면, 제어는 기능 블럭(576)으로 전달된다.
기능 블럭(574)은 카메라 파라미터를 분석하고, 제어를 기능 블럭(576)으로 전달한다.
기능 블럭(576)은 디코딩을 계속하고, 제어를 종료 블럭(599)으로 전달한다.
기능 블럭(525)은 is_base_view_flag[i] 및 dependency_update_flag를 분석하고, 제어를 판단 블럭(530)으로 전달한다. 판단 블럭(530)은 dependency_update_flag가 0인지를 판단한다. 만일 그렇다면, 제어는 기능 블럭(532)으로 전달된다. 그렇지 않다면, 제어는 판단 블럭(535)으로 전달된다.
기능 블럭(532)은 i를 1만큼 증분하고, 제어를 판단 블럭(535)으로 리턴한다.
판단 블럭(535)은 j가 N보다 작거나 같은지를 판단한다. 만일 그렇다면, 제어는 기능 블럭(540)으로 전달된다. 그렇지 않다면, 제어는 기능 블럭(537)으로 전달된다.
가능 블럭(540)은 anchor_picture_dependency_maps[i][j] 를 분석하고, 제어를 판단 블럭(545)으로 전달한다. 판단 블럭(545)은 non_anchor_picture_dependency_maps[i][j]가 1인지를 판단한다. 만일 그렇다면, 제어는 기능 블럭(550)으로 전달된다. 그렇지 않다면, 제어는 기능 블럭(547)으로 전달된다.
기능 블럭(550)은 non_anchor_picture_dependency_maps[i][j]를 분석하고, 제어를 기능 블럭(547)으로 전달한다.
기능 블럭(547)은 j를 1만큼 증분하고, 제어를 판단 블럭(535)으로 리턴한다.
기능 블럭(537)은 i를 1만큼 증분하고, 제어를 기능 블럭(515)으로 리턴한다.
전술한 실시예들은 버퍼링할 필요없이 랜덤 액세스를 처리하는 효율적인 방법들을 제공한다. 이들 방법은 의존성 구조가 화상 그룹(GOP) 간에서 변경되지 않는 경우에 잘 동작한다. 그러나, 만일 의존성이 변경하는 경우가 발생될 경우, 이들 방법은 동작이 중단될 수 있다. 이와 같은 개념은 도 6a 및 도 6b에 예시된다.
도 6a를 참조하면, 참조 번호(600)는 일반적으로 나중의 앵커 슬롯과 동일한 의존성을 갖는 비앵커 프레임의 의존성 변경의 일예를 예시하는 도면을 나타낸다. 도 6b를 참조하면, 참조 번호(605)는 일반적으로 이전의 앵커 슬롯과 동일한 의존성을 갖는 비앵커 프레임의 의존성 변경의 일예를 예시하는 도면을 나타낸다.
도 6a에 도시된 바와 같이, GOP 1에서 I화상(인트라 코딩된 화상)은 뷰 0에 배치되지만 GOP 2에서 I화상의 위치는 뷰 1로 변경된다. GOP 1에서 앵커 프레임의 의존성 구조는 GOP 2의 의존성 구조와 상이함을 명백하게 알 수 있다. 또한 두 앵커 슬롯 간의 프레임들이 GOP 2의 앵커 프레임과 동일한 의존성 구조를 가짐을 알 수 있다. 결과적으로, 두 GOP의 VPS는 상이할 것이다. 만일 의존성 구조가 이전의 의존성 구조의 변경된 부분에서 랜덤 액세스가 시작되고 버퍼링이 수행되지 않는다면, 이전의 의존성 구조가 이용되어 랜덤 액세스 뷰에 필요하지 않는 프레임들을 페기할 것이다. 이것은 의존성 구조가 두 GOP에서 상이함에 따라 문제가 된다.
그러므로, 본 발명의 원리의 다른 각종 실시예에 따르면, 본 발명자들은 본 명세서에서 후술하는 후자의 실시예들이 상이한 GOP 간에서 시간에 따라 의존성이 변경되는 경우를 처리한다는 면에서 전술한 실시예에서 제안된 것과 다른 방법 및 장치를 제안한다. 의존성 구조는 몇가지 이유 때문에 변경될 수 있다. 한가지 이유는 상이한 GOP에서 뷰 간 I화상 위치의 변경이다. 이것은 본 명세서에서 전술한 도 6a 및 도 6b에 예시된다. 이 경우, 다음 GOP의 의존성 구조는 이전 GOP의 의존성 구조와 상이하다. 이 정보는 새로운 뷰 파라미터 세트를 이용하여 전달되어야 한다.
특히, 본 발명자들은 이와 같이 변경되는 의존성 구조를 처리하는 예시적인 두가지 방법을 제안한다. 첫번째 방법에서, 두 앵커 타임 슬롯 간의 의존성 구조를 고려한다. 첫번째 방법에서, 앵커 타임 슬롯 간에서 의존성 구조가 변경되는 시간 간의 의존성 구조에 의거하여 뷰들의 서브세트(a subset of views)를 디코딩는데 필요한 프레임을 결정한다. 두번째 방법에서, 의존성이 변경된 GOP의 의존성 구조와 이전의 의존성 구조를 결합하여 전술한 문제를 처리할 새로운 의존성 맵을 획득한다. 이제 이들 두가지 방법이 더욱 상세히 설명될 것이다. 물론, 본 명세서에서 제공된 본 발명의 원리의 교시를 보면, 본 기술 및 관련 기술 분야에서 통상의 지식을 가진자라면 본 발명의 원리의 정신을 유지하면서 상이한 화상 그룹(GOP) 간에서 시간에 따라 의존성이 변경될 때 멀티 뷰 비디오 콘텐츠를 인코딩 및/또는 디코딩하는 이들 및 다른 다양한 방법 및 그 변형예를 고려할 수 있음을 인식할 것이다.
첫번째 방법에서, 본 발명자들은 두 앵커 슬롯 간에서 프레임의 의존성 구조를 고려함으로써 전술한 문제를 해결한다.
의존성 구조의 선택은 인코더에서 결정된다. 두 GOP 간에서 의존성 구조가 변경될 경우, 두 앵커 슬롯 간의 프레임은 이전 앵커 슬롯 또는 다음 앵커 슬롯과 동일한 의존성 구조를 가질 수 있다. 또, 이것은 인코더에 의해 결정된다. 두가지 상이한 선택은 도 6a 및 도 6b에 예시된다.
뷰의 서브세트를 디코딩하거나 특정 뷰의 랜덤 액세스를 위해, 이들 두 앵커 슬롯 간의 의존성 구조를 아는 것이 유용하다. 만일 이 정보를 미리 안다면, 추가적인 처리없이 디코딩하는데 어느 프레임이 필요한지 결정하기가 쉽다.
두 앵커 슬롯 간의 의존성 구조를 결정하기 위하여, 본 발명자들은 이들 비앵커 프레임들이 디스플레이 순서에 있어 이전 앵커 슬롯 또는 다음 앵커 슬롯의 의존성 구조를 따르는지를 나타내는 새로운 구문 요소(syntax element)를 제안한다.
이러한 신호/플래그는 비트스트림 내에서 고주순으로 존재하여야 한다. 이 정보는 인밴드 또는 아웃오브밴드로 전달될 수 있다.
예시적인 실시예에서, 이 신호/플래그는 MPEG-4 AVC 표준의 MVC 확장의 뷰 파라미터 세트 또는 시퀀스 파라미터 세트에 존재할 수 있다. 예시적인 신호/플래그가 표 5a 및 표 5b에 도시된다.
Figure 112009001443342-PCT00006
Figure 112009001443342-PCT00007
본 실시예에서, previous_anchor_dep_struct_flag가 0라 함은 비앵커 프레임이 다음 앵커 슬롯의 의존성 구조를 따른다는 것을 의미하며, previous_anchor_dep_struct_flag가 1이라 함은 비앵커 프레임이 이전 앵커 슬롯의 의존성 구조를 따른다는 것을 의미한다.
랜덤 액세스의 프로세스 또는 서브세트 뷰의 디코딩은 이와 같은 플래그에 의존할 것이다. 이 플래그가 1로 설정될 경우, 이것은 비앵커 프레임이 도 6B에 도시된 바와 같이 디스플레이 순서상 이전 앵커 슬롯의 의존성 구조를 따르는 디코더로 전달된다.
이 경우, 디코더는 어떠한 프레임도 버퍼링할 필요가 없다는 것을 인식한다. 예시적인 일 실시예에서, 뷰의 랜덤 액세스 동안 디코더에 의해 수행되는 방법은 다음과 같고, 또한 도 6b로부터 알 수 있다. 뷰 2 및 시간 T2에 대한 랜덤 액세스가 필요하다고 가정한다.
이제, GOP 간에서 의존성 구조가 변경되는 경우와 관련된 전술한 첫번째 방법이 일반적으로 설명되고, 이어서 도 7을 참조하여 더 상세히 설명될 것이다. 다음 단계들은 부가된 순서에 대하여 설명된다. 그러나, 상기 순서는 예시 및 명료성 목적임을 인식할 것이다. 따라서, 본 명세서에서 제공된 본 발명의 원리의 교시를 보면, 본 기술 및 관련 기술 분야에서 통상의 지식을 가진자에 의해 쉽게 결정된 바와 같이, 본 발명의 원리의 범주를 유지하면서 이러한 순서는 재배열되며 및/또는 그와 달리 변형될 수 있다.
첫번째 단계에서, 타겟 뷰(뷰 2)의 경우 T6 이전의 가장 근접한 I화상을 찾는다. 두번째 단계에서, 이 I화상에 대응하는 앵커 슬롯의 의존성 구조를 표 7a를 참조하여 결정한다. 세번째 단계에서, 만일 previous_anchor_dep_struct_flag가 0로 설정된 것으로 결정되면, 앵커 화상을 이 슬롯에서 버퍼링하고; 그렇지 않다면 표 7a로부터 어느 화상이 디코딩되어야 하는지 결정한다. 네번째 단계에서, GOP 2의 앵커 슬롯의 경우, 표 7c를 참조하여 타겟 뷰를 디코딩하는데 어느 화상이 필요한지를 결정한다. 만일 previous_anchor_dep_struct_flag가 1이면, 이하의 다섯번째, 여섯번째, 일곱번째 단계로 진행하여 이전 앵커 슬롯에서 어느 프레임이 디코딩되어야 하는지 결정하며; 그렇지 않으면 여덟번째 단계로 진행한다. 다섯번째 단계에서, 타겟 뷰(뷰 2)의 경우, 앵커 의존성 표(표 6c)에서 어느 뷰(뷰 1)가 필요한지 확인한다. 여섯번째 뷰에서, 타겟 뷰(뷰 2)에 필요한 각 뷰(뷰 1) 마다, VPS 의존성 표(표 6a)를 참조함으로써 어느 뷰(뷰 0, 뷰 2)가 필요한지 확인한다. 일곱번째 단계에서, 만일 뷰(뷰 0, 뷰 2)로부터의 앵커 프레임이 시간적으로 타겟 뷰/시간 이전의 I화상의 뷰 파라미터 세트(VPS)를 가리킨다면 그들 프레임을 디코딩한다. 여덟번째 단계에서, 모든 비앵커에 대해 어느 화상이 필요한지를 결정하고, 만일 previous_anchor_dep_struct_flag가 1로 설정되어 있다면, 이전 앵커 슬롯의 의존성 구조를 이용하여 타겟 뷰에 대해 어느 프레임이 디코딩될 필요가 있는지를 결정하며; 그렇지 않다면, 다음 앵커 슬롯의 의존성 구조를 이용한다.
i\j View 1 View 2 View 3
View 0 0 1 1
View 1 0 0 0
View 2 0 1 0
i\j View 1 View 2 View 3
View 0 0 1 0
View 1 0 0 0
View 2 0 1 0
i\j View 1 View 2 View 3
View 0 0 0 0
View 1 1 0 1
View 2 0 0 0
i\j View 1 View 2 View 3
View 0 0 0 0
View 1 1 0 1
View 2 0 0 0
i\j View 1 View 2 View 3
View 0 0 1 1
View 1 0 0 0
View 2 0 1 0
i\j View 1 View 2 View 3
View 0 0 1 0
View 1 0 0 0
View 2 0 1 0
i\j View 1 View 2 View 3
View 0 0 0 0
View 1 1 0 1
View 2 0 0 0
i\j View 1 View 2 View 3
View 0 0 1 0
View 1 0 0 0
View 2 0 1 0
도 7을 참조하면, 참조 번호(700)는 일반적으로 랜덤 액세스 포인트를 이용하여 멀티 뷰 비디오 콘텐츠를 디코딩하는 예시적인 방법을 나타낸다.
본 방법은 시작 블럭(702)을 포함하며, 이 블럭은 제어를 기능 블럭(705)으로 전달한다. 기능 블럭(705)은 랜덤 액세스 포인트를 요청하고, 제어를 기능 블럭(710)으로 전달한다. 기능 블럭(710)은 랜덤 액세스 시간 이전의 가장 근접한 I화상(A)을 찾고, 제어를 기능 블럭(715)으로 전달한다. 기능 블럭(715)은 앵커 슬롯(A)의 의존성 구조를 결정하고, 제어를 판단 블럭(720)으로 전달한다. 판단 블럭(720)은 previous_anchor_dep_struct_flag가 0인지를 판단한다. 만일 그렇다면, 제어는 기능 블럭(740)으로 전달된다. 그렇지 않다면, 제어는 기능 블럭(725)으로 전달된다.
기능 블럭(740)은 이 타임 슬롯에 대응하는 모든 앵커 화상들의 버퍼링을 시작하고, 제어를 기능 블럭(745)으로 전달한다. 기능 블럭(745)은 랜덤 액세스 시간 이후의 가장 근접한 I화상(B)을 찾고, 제어를 판단 블럭(750)으로 전달한다. 판단 블럭(750)은 I화상(A) 및 I화상(B)에 대한 의존성 맵들이 상이한지를 판단한다. 만일 그렇다면, 제어는 기능 블럭(755)으로 전달된다. 그렇지 않다면, 제어는 기능 블럭(775)으로 전달된다.
타겟 뷰의 경우, 기능(755)은 어느 뷰가 필요한지를 알기 위해 앵커 의존성 맵을 확인하고, 제어를 기능 블럭(760)으로 전달한다. 기능 블럭(760)은 상기 맵으로부터 필요로 하는 각 뷰마다, 의존성 표를 참조하여 대응하는 뷰 파라미터 세트(VPS)로부터 어느 뷰가 필요한지를 확인하고, 제어를 기능 블럭(765)으로 전달한다. 기능 블럭(765)은 기능 블럭(760)에 의해 확인된 바와 같이 필요로 하는 뷰의 앵커 프레임을 디코딩하고, 제어를 기능 블럭(770)으로 전달한다. 기능 블럭(770)은 다른 모든 프레임에 대해 I화상(B)으로 나타낸 바와 같은 의존성 맵을 이용하고, 제어를 종료 블럭(799)으로 전달한다.
기능 블럭(725)은 타겟 뷰를 디코딩하는데 어느 화상들이 필요로 하는지를 의존성 그래프로부터 판단하고, 제어를 기능 블럭(730)으로 전달한다. 기능 블럭(730)은 다음 앵커 슬롯의 경우, 대응하는 의존성 그래프를 참조하여 필요로 하는 화상들을 결정하고, 제어를 기능 블럭(735)으로 전달한다. 기능 블럭(735)은 비 앵커 화상의 경우, 랜덤 액세스 포인트 이전의 앵커 슬롯의 의존성 그래프를 이용하여 디코딩에 필요한 화상들을 결정하고, 제어를 종료 블럭(799)으로 전달한다.
기능 블럭(775)은 의존성 표를 판독하고 요청된 뷰를 디코딩하는데 필요하지 않는 프레임들을 폐기하고, 제어를 종료 블럭(799)으로 전달한다.
이제 GOP 간에서 의존성 구조가 변경되는 경우와 관련된 전술한 두번째 방법이 일반적으로 설명되고, 이어서 도 8을 참조하여 더 상세히 설명될 것이다. 다음 단계들은 부가된 순서에 대하여 설명된다. 그러나, 상기 순서는 예시 및 명료성 목적임을 인식할 것이다. 따라서, 본 명세서에서 제공된 본 발명의 원리의 교시를 보면, 본 기술 및 관련 기술 분야에서 통상의 지식을 가진자에 의해 쉽게 결정된 바와 같이, 본 발명의 원리의 범주를 유지하면서 이러한 순서는 재배열되며 및/또는 그와 달리 변형될 수 있다.
전술한 바와 같이, 첫번째 방법에서, 올바른 프레임들(correct frames)이 폐기되는 방식으로 두 GOP의 의존성 구조를 결합함으로써 GOP 간에서 의존성 구조가 변경되는 상기 문제를 해결한다. 랜덤 액세스 프로세스는 도 6a를 통해 예시된다.
표 6a, 6b, 6c 및 6d에는 앵커 및 비앵커 화상에 대한 GOP 1 및 GOP 2의 의존성 맵들이 도시된다.
타겟 뷰가 뷰 2이고 타겟 시간이 T6이라고 가정하자. 이 뷰 및 시간에 대한 랜덤 액세스 동안, 현재 타겟 뷰/시간 타겟 (단지 시간적으로) 이전의 가장 근접한 I화상을 찾아야 한다. 이 I화상의 VPS-ID를 유념하고 이 시간 간격에서 모든 앵커 화상들을 버퍼링한다. (단지 시간적으로) 나중인 다음의 I화상이 도달하는 즉시, VPS-ID가 이전의 I화상과 동일한지를 확인한다. 만일 그 ID가 동일하다면, 이 VPS에 표시된 바와 같은 의존성 구조를 이용하여 어느 프레임을 보유하고 어느 프레임을 폐기할 것인지를 판단한다.
VPS ID가 상이할 경우, 다음 단계들이 수행되어야 한다. 첫번째 단계에서, 타겟 뷰(뷰 2)의 경우 앵커 의존성 표(표 6C)에서 어느 뷰(뷰 1)가 필요한지를 확인한다. 두번째 단계에서, 타겟 뷰(뷰 2)에서 필요로 하는 각 뷰(뷰 1)마다 그 VPS의 의존성 표(표 6a)를 참조함으로써 어느 뷰(뷰 0, 뷰 2)가 필요한지를 확인한다. 세번째 단계에서, 뷰(뷰 0, 뷰 2)로부터의 앵커 프레임이 시간적으로 타겟 뷰/시간 이전의 I화상의 VPS를 가리키는 경우 그들 프레임을 디코드한다. 네번째 단계에서, 시간적으로 타겟 뷰/시간 이후의 I화상과 동일한 VPS-ID를 가리키거나 이용하는 모든 프레임의 경우, 그 VPS에 표시된 의존성 맵(표 6c, 6d)을 이용한다.
전술한 두번째 방법은 뷰 간에서 I화상의 위치가 변경될 경우에도, 여전히 효율적인 방식으로 랜덤 액세스가 수행될 수 있다. 단지 시간적으로 랜덤 액세스 포인트 이전의 가장 근접한 I화상에 대응하는 앵커 화상을 버퍼링하면 된다.
도 8을 참조하면, 참조 번호(800)는 일반적으로 랜덤 액세스 포인트를 이용하여 멀티 뷰 콘텐츠를 디코딩하는 또 다른 예시적인 방법을 나타낸다.
본 방법(800)은 시작 블럭(802)을 포함하며, 이 블럭은 제어를 기능 블럭(805)으로 전달한다. 기능 블럭(805)은 랜덤 액세스 포인트를 요청하고, 제어를 기능 블럭(810)으로 전달한다. 기능 블럭(810)은 랜덤 액세스 포인트 이전의 가장 근접한 I화상(A)을 찾고, 제어를 기능 블럭(815)으로 전달한다. 기능 블럭(815)은 이 타임 슬롯에 대응하는 모든 앵커 화상들의 버퍼링을 시작하고, 제어를 기능 블럭(820)으로 전달한다. 기능 블럭(820)은 랜덤 액세스 포인트 이후의 가장 근접한 I화상(B)을 찾고, 제어를 판단 블럭(825)으로 전달한다. 판단 블럭(815)은 I화상(A) 및 I화상(B)에 대한 의존성 맵들이 상이한지를 판단한다. 만일 그렇다면, 제어는 기능 블럭(830)으로 전달된다. 그렇지 않다면, 제어는 기능 블럭(850)으로 전달된다.
기능 블럭(830)은, 타겟 뷰의 경우 어느 뷰가 필요한지를 알기 위해 앵커 의존성 맵을 확인하고, 제어를 기능 블럭(835)으로 전달한다. 기능 블럭(835)은 전술한 맵으로부터 필요로 하는 각 뷰마다, 의존성 표를 참조하여 대응하는 뷰 파라미터 세트(VPS)로부터 어느 뷰가 필요한지를 확인하고, 제어를 기능 블럭(840)으로 전달한다. 기능 블럭(840)은 기능 블럭(835)에 의해 확인된 바와 같은 필요한 뷰의 앵커 프레임을 디코딩하고, 제어를 기능 블럭(845)으로 전달한다. 기능 블럭(845)은 다른 모든 프레임의 경우 I화상(B)에 의해 확인된 바와 같은 의존성 맵을 이용하고, 제어를 종료 블럭(899)으로 전달한다.
기능 블럭(850)은 의존성 표를 판독하고 요청된 뷰를 디코딩는데 필요하지 않는 프레임들을 폐기하고, 제어를 종료 블럭(899)으로 전달한다.
도 9를 참조하면, 참조 번호(900)는 일반적으로 멀티 뷰 비디오 콘텐츠를 인코딩하는 예시적인 방법을 나타낸다.
본 방법(900)은 시작 블럭(902)을 포함하며, 이 블럭은 제어를 기능 블럭(905)으로 전달한다. 기능 블럭(905)은 인코더 구성 파일을 판독하고, 제어를 판단 블럭(910)으로 전달한다. 판단 블럭(910)은 비앵커 화상이 이전의 앵커 화상의 의존성을 따르는지를 판단한다. 만일 그렇다면, 제어는 기능 블럭(915)으로 전달된다. 그렇지 않다면, 제어는 기능 블럭(920)으로 전달된다.
기능 블럭(915)은 previous_anchor_dep_struct_flag를 1로 설정하고, 제어를 기능 블럭(925)으로 전달한다.
기능 블럭(920)은 previous_anchor_dep_flag를 0로 설정하고, 제어를 기능 블럭(925)으로 전달한다.
기능 블럭(925)은 시퀀스 파라미터 세트(SPS), 뷰 파라미터 세트(VPS) 및/또는 화상 파라미터 세트(PPS)를 기록하고, 제어를 기능 블럭(930)으로 전달한다. 기능 블럭(930)은 뷰의 개수를 N으로 설정하고, 변수(i, j)를 0가 되도록 초기화하고, 제어를 판단 블럭(935)으로 전달한다. 판단 블럭(935)은 i가 N보다 작은지를 판단한다. 만일 그렇다면, 제어는 판단 블럭(940)으로 전달된다. 그렇지 않다면, 제어는 종료 블럭(999)으로 전달된다.
판단 블럭(940)은 j가 뷰i에서 화상의 개수보다 작은지를 판단한다. 만일 그렇다면, 제어는 판단 블럭(950)으로 전달된다. 그렇지 않다면, 제어는 판단 블럭(935)으로 전달된다.
판단 블럭(945)은 현재 화상이 앵커 화상인지를 판단한다. 만일 그렇다면, 제어는 판단 블럭(950)으로 전달된다. 판단 블럭(950)은 의존성 변경이 존재하는지를 판단한다. 만일 그렇다면, 제어는 판단 블럭(955)으로 전달된다. 그렇지 않다면, 제어는 기능 블럭(970)으로 전달된다.
판단 블럭(955)은 비앵커 화상이 이전의 앵커 화상의 의존성에 따르는지를 판단한다. 만일 그렇다면, 제어는 기능 블럭(960)으로 전달된다. 그렇지 않다면, 제어는 기능 블럭(980)으로 전달된다.
기능 블럭(960)은 previous_anchor_dep_struct_flag를 1로 설정하고, 제어를 기능 블럭(975)으로 전달한다.
기능 블럭(970)은 previous_anchor_dep_struct_flag를 0로 설정하고, 제어를 기능 블럭(975)으로 전달한다.
기능 블럭(975)은 시퀀스 파라미터 세트(SPS), 뷰 파라미터 세트(VPS) 및/또는 화상 파라미터 세트(PPS)를 기록하고, 제어를 기능 블럭(980)으로 전달한다.
기능 블록(980)은 현재 화상을 인코드하고, 제어를 기능 블럭(985)으로 전달한다. 기능 블럭(985)은 변수(j)를 증분하고, 제어를 기능 블럭(990)으로 전달한다. 기능 블럭(990)은 frame_num 및 화상 순서 계수(POC)를 증분하고, 제어를 판단 블럭(940)으로 리턴한다.
이제 본 발명의 부수적인 많은 장점/특징의 일부에 대한 설명이 제공될 것이며, 이들증 일부는 앞에서 언급하였다. 예를 들어, 한가지 장점/특징은 멀티 뷰 비디오 콘텐츠에 대응하는 적어도 두 뷰의 앵커 및 비앵커 화상을 인코딩하는 인코더를 포함하는 장치이다. 상기 적어도 두 뷰의 적어도 하나에서 디스플레이 순서상 이전의 앵커 화상 및 다음의 앵커 화상 사이에 배열된 비앵커 화상들의 세트 내 각 비앵커 화상의 의존성 구조는 디스플레이 순서상 상기 이전의 앵커 화상 또는 다음의 앵커 화상과 동일하다.
또 다른 장점/특징은 전술한 바와 같은 인코더를 갖는 장치이며, 상기 인코더는 의존성 구조를 인밴드 및 아웃오브밴드 중 적어도 하나로 시그널링한다.
또 다른 장점/특징은 전술한 바와 같은 인코더를 갖는 장치이며, 상기 인코더는 의존성 구조를 고수준의 구문을 이용하여 시그널링한다.
더욱이, 또 다른 장점/특징은 전술한 바와 같이 고수준의 구문을 이용하여 의존성 구조를 시그널링하는 인코더를 갖는 장치이며, 상기 의존성 구조는 시퀀스 파라미터 세트, 뷰 파라미터 세트, 및 화상 파라미터 세트 중 적어도 하나로 시그널링된다.
또한, 또 다른 장점/특징은 전술한 바와 같은 고수준의 구문을 이용하여 의존성 구조를 시그널링하는 인코더를 갖는 장치이며, 상기 의존성 구조는 플래그를 이용하여 시그널링된다.
또한, 또 다른 장점/특징은 전술한 바와 같이 플래그를 이용하여 의존성 구조를 시그널링하는 인코더를 갖는 장치이며, 상기 플래그는 previous_anchor_dep_struct_flag 구문 요소로 나타낸다.
추가적으로, 또 다른 장점/특징은 전술한 바와 같은 고수준의 구문을 이용하여 의존성 구조를 시그널링하는 인코더를 갖는 장치이며, 상기 의존성 구조는 적어도 두 뷰 중 어느 뷰의 어느 다른 화상들이 비앵커 화상들의 세트를 적어도 부분적으로 디코딩는데 이용되는지를 결정하는데 이용된다.
게다가, 또 다른 장점/특징은 전술한 바와 같은 고수준의 구문을 이용하여 의존성 구조를 시그널링하는 인코더를 갖는 장치이며, 상기 의존성 구조는 적어도 두 뷰의 적어도 하나의 랜덤 액세스 동안에 적어도 두 뷰의 어느 다른 화상들이 비앵커 화상들의 세트를 디코딩하는데 이용되는지를 결정하는데 이용된다.
또한, 또 다른 장점/특징은 멀티 뷰 비디오 콘텐츠에 대응하는 적어도 두 뷰의 앵커 및 비앵커 화상을 디코딩하는 디코더를 갖는 장치이다. 상기 적어도 두 뷰의 적어도 하나에서 디스플레이 순서상 이전의 앵커 화상 및 다음의 앵커 화상 사이에 배열된 비앵커 화상들의 세트 내 각 비앵커 화상의 의존성 구조는 디스플레이 순서상 상기 이전의 앵커 화상 또는 다음의 앵커 화상과 동일하다.
추가적으로, 또 다른 장점/특징은 전술한 바와 같은 디코더를 갖는 장치이며, 상기 디코더는 의존성 구조를 인밴드 및 아웃오브밴드 중 적어도 하나로 수신한다.
더욱이, 또 다른 장점/특징은 전술한 바와 같은 디코더를 갖는 장치이며, 상기 디코더는 고수준의 구문을 이용하여 의존성 구조를 결정한다.
또한, 또 다른 장점/특징은 전술한 바와 같은 고수준의 구문을 이용하여 의존성 구조를 결정하는 디코더를 갖는 장치이며, 상기 의존성 구조는 시퀀스 파라미터 세트, 뷰 파라미터 세트, 및 화상 파라미터 세트 중 적어도 하나를 이용하여 결정된다.
또한, 또 다른 장점/특징은 전술한 바와 같은 고수준의 구문을 이용하여 의존성 구조를 결정하는 디코더를 갖는 장치이며, 상기 의존성 구조는 플래그를 이용하여 결정된다.
추가적으로, 또 다른 장점/특징은 전술한 바와 같은 플래그를 이용하여 의존성 구조를 결정하는 디코더를 갖는 장치이며, 상기 플래그는 previous_anchor_dep_struct_flag 구문 요소로 나타낸다.
더욱이, 또 다른 장점/특징은 전술한 바와 같은 고수준의 구문을 이용하여 의존성 구조를 결정하는 디코더를 갖는 장치이며, 상기 의존성 구조는 적어도 두 뷰 중 어느 뷰의 어느 다른 화상들이 비앵커 화상들의 세트를 적어도 부분적으로 디코딩는데 이용되는지를 결정하는데 이용된다.
또한, 또 다른 장점/특징은 전술한 바와 같은 고수준의 구문을 이용하여 의존성 구조를 결정하는 디코더를 갖는 장치이며, 상기 의존성 구조는 적어도 두 뷰의 적어도 하나의 랜덤 액세스 동안에 적어도 두 뷰의 어느 다른 화상들이 비앵커 화상들의 세트를 디코딩하는데 이용되는지를 결정하는데 이용된다.
또한, 또 다른 장점/특징은 전술한 바와 같은 디코더를 갖는 장치이며, 상기 디코더는 의존성 구조가 디스플레이 순서에 있어 이전의 앵커 화상 또는 다음의 앵커 화상을 따르는지에 따라서 상기 적어도 두 뷰의 적어도 하나의 랜덤 액세스 동안 적어도 두 뷰의 앵커 화상 중 어느 것을 버퍼링할지를 결정한다.
추가적으로, 또 다른 장점/특징은 전술한 바와 같은 랜덤 액세스 동안 상기 적어도 두 뷰의 앵커 화상 중 어느 것을 버퍼링할지를 결정하는 디코더를 갖는 장치이며, 상기 디코더는 비앵커 화상들의 세트 내 비앵커 화상의 의존성 구조가 디스플레이 순서에 있어 랜덤 액세스 포인트 이후에 배열된 앵커 화상과 동일할 때, 버퍼링하는 랜덤 액세스 포인트 이전에 배열된 앵커 화상을 선택한다.
더욱이, 또 다른 장점/특징은 전술한 바와 같은 랜덤 액세스 동안 상기 적어도 두 뷰의 앵커 화상 중 어느 것을 버퍼링할지를 결정하는 디코더를 갖는 장치이며, 상기 디코더는 비앵커 화상들의 세트 내 비앵커 화상의 의존성 구조가 디스플레이 순서에 있어 랜덤 액세스 포인트 이전에 배열된 앵커 화상과 동일할 때, 랜덤 액세스 포인트 이전에 배열된 앵커 화상의 버퍼링을 생략한다.
또한, 또 다른 장점/특징은 비트스트림으로부터의 멀티 뷰 비디오 콘텐츠에 대응하는 적어도 두 뷰를 디코딩하는 디코더를 갖는 장치이다. 상기 적어도 두 뷰의 하나 이상에 대응하는 적어도 두 화상 그룹은 상이한 의존성 구조를 갖는다. 상기 디코더는 적어도 하나의 의존성 맵에 의거하여 적어도 두 뷰 중 적어도 하나의 랜덤 액세스 동안 디코딩할 필요가 있는 적어도 두 뷰의 화상을 선택한다.
또한, 또 다른 장점/특징은 전술한 바와 같은 디코더를 갖는 장치이며, 상기 랜덤 액세스는 디스플레이 순서상 랜덤 액세스 이전의 가장 근접한 인트라 코딩된 화상에서 시작한다.
추가적으로, 또 다른 장점/특징은 전술한 바와 같은 디코더를 갖는 장치이며, 상기 랜덤 액세스는 디스플레이 순서상 전술한 바와 같은 랜덤 액세스 이전의 가장 근접한 인트라 코딩된 화상에서 시작하며, 상기 비트스트림은 앵커 화상 및 비앵커 화상을 포함하며, 및 상기 디코더는 적어도 두 뷰에서 시간적으로 랜덤 액세스 이전의 가장 근접한 인트라 코딩된 화상에 대응하는 앵커 화상을 버퍼링한다.
더욱이, 또 다른 장점/특징은 전술한 바와 같은 디코더를 갖는 장치이며, 상기 랜덤 액세스는 랜덤 액세스 이후의 가장 근접한 인트라 코딩된 화상에서 시작한다.
또한, 또 다른 장점/특징은 전술한 바와 같은 디코더를 갖는 장치이며, 상기 적어도 하나의 의존성 맵은 랜덤 액세스를 기준으로 이전의 인트라 코딩된 화상 및 이후의 인트라 코딩된 화상으로 이루어진 의존성 맵들을 포함하며, 및 상기 디코더는 상기 이전의 인트라 코딩된 화상과 이후의 인트라 코딩된 화상을 비교함으로써 상기 요구된 화상을 선택한다.
또한, 또 다른 장점/특징은 전술한 바와 같은 의존성 맵을 비교함으로써 상기 요구된 화상을 선택하는 디코더를 갖는 장치이며, 상기 이전의 인트라 코딩된 화상과 이후의 인트라 코딩된 화상으로 이루어진 의존성 맵들은 동일하다.
추가적으로, 또 다른 장점/특징은 전술한 바와 같은 상기 동일한 의존성 맵을 비교함으로써 상기 요구된 화상을 선택하는 디코더를 갖는 장치이며, 상기 이전의 인트라 코딩된 화상과 이후의 인트라 코딩된 화상으로 이루어진 의존성 맵들 중 임의의 의존성 맵은 상기 필요한 화상을 결정하는데 이용된다.
더욱이, 또 다른 장점/특징은 전술한 바와 같은 의존성 맵을 비교함으로써 상기 요구된 화상을 선택하는 디코더를 갖는 장치이며, 상기 이전의 인트라 코딩된 화상과 이후의 인트라 코딩된 화상으로 이루어진 의존성 맵들은 상이하다.
또한, 또 다른 장점/특징은 전술한 바와 같은 상이한 의존성 맵을 비교함으로써 상기 필요한 화상을 선택하는 디코더를 갖는 장치이며, 상기 적어도 하나의 의존성 맵은 적어도 하나의 앵커 화상 의존성 맵을 포함하며, 상기 디코더는 상기 적어도 하나의 앵커 화상 의존성 맵을 확인하여 상기 적어도 두 뷰 중 적어도 하나가 상기 적어도 두 뷰 중 어느 것에 의존하는지를 결정한다.
또한, 또 다른 장점/특징은 전술한 바와 같은 상이한 의존성 맵을 비교함으로써 상기 필요한 화상을 선택하는 디코더를 갖는 장치이며, 상기 적어도 두 뷰 중 적어도 하나가 의존하는 상기 적어도 두 뷰 중 각 뷰마다, 상기 디코더는 그에 대응하는 의존성 표를 확인한다.
추가적으로, 또 다른 장점/특징은 상기 상이한 의존성 맵과 전술한 바와 같은 의존성 맵을 비교함으로써 상기 필요한 화상을 선택하는 디코더를 갖는 장치이며, 상기 앵커 화상은 상기 적어도 두 뷰 중 적어도 하나가 의존하는 상기 적어도 두 뷰 중 각각의 뷰로부터 디코드된다.
더욱이, 또 다른 장점/특징은 전술한 바와 같은 상이한 의존성 맵을 비교함으로써 상기 필요한 화상을 선택하는 디코더를 갖는 장치이며, 상기 디코더는 적어도 두 화상 그룹 중 하나의 변경된 의존성 구조와 적어도 두 화상 그룹 중 다른 하나의 변경되지 않은 의존성 구조를 결합함으로써 형성된 의존성 맵에 의거하여, 랜덤 액세스 동안에 나중의 인트라 코딩된 화상과 동일한 의존성 맵을 이용하는 임의의 특정 화상이 디코딩될 필요가 있는지를 결정한다.
본 발명의 원리의 이들 및 다른 특징 및 장점들은 본 명세서의 교시에 의거하여 관련 기술 분야에서 통상의 지식을 가진자에 의해 쉽게 확인될 수 있다. 본 발명의 원리의 교시는 다양한 형태의 하드웨어, 소프트웨어, 펌웨어, 특수 목적의 프로세서, 또는 이들의 결합으로 구현될 수 있다.
보다 바람직하게는, 본 발명의 원리의 교시는 하드웨어 및 소프트웨어를 결합함으로써 구현된다. 더욱이, 상기 소프트웨어는 프로그램 저장 장치에 유형적으로 구현된 애플리케이션 프로그램으로 구현될 수 있다. 애플리케이션 프로그램은 어떤 적합한 아키텍처로 구성되는 머신에 업로드되며, 이 머신에 의해 실행될 수 있다. 바람직하게, 머신은 하나 이상의 중앙 처리 장치("CPU"), 랜덤 액세스 메모리("RAM"), 및 입/출력("I/O") 인터페이스와 같은 하드웨어를 갖는 컴퓨터 플랫폼 상에 구현된다. 컴퓨터 플랫폼은 또한 오프레이팅 시스템 및 마이크로인스트럭션 코드를 포함할 수 있다. 본 명세서에서 설명된 각종 프로세스 및 기능들은 마이크로인스트럭션 코드의 일부 또는 애플리케이션 프로그램의 일부, 또는 이들의 임의의 결합일 수 있으며, 이것은 CPU에 의해 실행될 수 있다. 또한, 다른 각종 주변 장치들은 추가의 데이터 저장 장치 및 인쇄 장치와 같은 컴퓨터 플랫폼에 연결될 수 있다.
또한, 첨부 도면에 도시된 구성적 시스템 컴포넌트 및 방법의 일부가 바람직하게 소프트웨어로 구현되므로, 시스템 컴포넌트 또는 프로세스 기능 블럭도 간의 실제 연결은 본 발명의 원리가 프로그램되는 방식에 따라 다를 수 있다. 본 명세서에서 주어진 교시를 보면, 관련 기술 분야에서 통상의 지식을 가진자라면 본 발명의 원리의 이들 및 이와 유사한 구현 또는 구성을 고려할 수 있을 것이다.
비록 예시적인 실시예들이 본 명세서에서 첨부 도면과 관련하여 설명되었을지라도, 본 발명의 원리가 이들 세부 실시예로 국한되지 않고, 본 발명의 원리의 범주 또는 정신으로부터 일탈함이 없이 관련 기술 분야에서 통상의 지식을 가진자에 의해 각종 변경 및 변형이 이루어질 수 있음이 자명하다. 이러한 모든 변경 및 변형은 첨부의 특허청구범위에 기술된 본 발명의 원리의 범주 내에 포함되는 것으로 의도한다.

Claims (64)

  1. 멀티 뷰 비디오 콘텐츠에 대응하는 적어도 2개의 뷰에 대한 앵커(anchor) 및 비앵커(non-anchor) 화상을 인코딩하는 인코더(100)를 포함하며,
    상기 적어도 2개의 뷰 중 적어도 하나에서 디스플레이 순서상 이전의 앵커 화상 및 다음의 앵커 화상 간에 배열되는 비앵커 화상들의 세트(a set of non-anchor pictures)에서 각각의 비앵커 화상의 의존성 구조(dependency structure)는 디스플레이 순서상 상기 이전의 앵커 화상 또는 상기 다음의 앵커 화상과 동일한 장치.
  2. 제1항에 있어서,
    상기 인코더(100)는 상기 의존성 구조를 인밴드 및 아웃오브밴드 중 적어도 하나로 시그널링하는 장치.
  3. 제1항에 있어서,
    상기 인코더(100)는 상기 의존성 구조를 고수준의 구문을 이용하여 시그널링하는 장치.
  4. 제3항에 있어서,
    상기 의존성 구조는 시퀀스 파라미터 세트, 뷰 파라미터 세트, 및 화상 파라 미터 세트 중 적어도 하나로 시그널링되는 장치.
  5. 제3항에 있어서,
    상기 의존성 구조는 플래그를 이용하여 시그널링되는 장치.
  6. 제5항에 있어서,
    상기 플래그는 previous_anchor_dep_struct_flag 구문 요소(syntax element)로 나타내는 장치.
  7. 제3항에 있어서,
    상기 의존성 구조는 상기 비앵커 화상들의 세트를 적어도 부분적으로 디코딩하는데 상기 적어도 2개의 뷰 중 어느 뷰에서 어느 다른 화상들이 이용되는지를 결정하는데 이용되는 장치.
  8. 제3항에 있어서,
    상기 의존성 구조는 상기 적어도 2개의 뷰의 상기 적어도 하나의 랜덤 액세스 동안에 상기 비앵커 화상들의 세트를 디코딩하는데 상기 적어도 2개의 뷰의 어느 다른 화상들이 이용되는지를 결정하는데 이용되는 장치.
  9. 멀티 뷰 비디오 콘텐츠에 대응하는 적어도 2개의 뷰에 대한 앵커 및 비앵커 화상을 인코딩하는 단계를 포함하며,
    상기 적어도 2개의 뷰 중 적어도 하나에서 디스플레이 순서상 이전의 앵커 화상 및 다음의 앵커 화상 간에 배열되는 비앵커 화상들의 세트에서 각각의 비앵커 화상의 의존성 구조는 디스플레이 순서상 상기 이전의 앵커 화상 또는 상기 다음의 앵커 화상과 동일한(910, 920, 915) 방법.
  10. 제9항에 있어서,
    상기 인코딩 단계는 상기 의존성 구조를 인밴드 및 아웃오브밴드 중 적어도 하나로 시그널링하는 단계(925)를 포함하는 방법.
  11. 제9항에 있어서,
    상기 인코딩 단계는 상기 의존성 구조를 고수준의 구문을 이용하여 시그널링하는 단계(925)를 포함하는 방법.
  12. 제11항에 있어서,
    상기 의존성 구조는 시퀀스 파라미터 세트, 뷰 파라미터 세트, 및 화상 파라미터 세트 중 적어도 하나로 시그널링(925)되는 방법.
  13. 제11항에 있어서,
    상기 의존성 구조는 플래그를 이용하여 시그널링(915, 920)되는 방법.
  14. 제13항에 있어서,
    상기 플래그는 previous_anchor_dep_struct_flag 구문 요소로 나타내는(915, 920) 방법.
  15. 제11항에 있어서,
    상기 의존성 구조는 상기 비앵커 화상의 세트를 적어도 부분적으로 디코딩하는데 상기 적어도 2개의 뷰 중 어느 뷰의 어느 다른 화상들이 이용되는지를 결정(915, 920)하는데 이용되는 방법.
  16. 제11항에 있어서,
    상기 의존성 구조는 상기 적어도 2개의 뷰 중 상기 적어도 하나의 랜덤 액세스 동안에 상기 비앵커 화상들의 세트를 디코딩하는데 상기 적어도 2개의 뷰의 어느 다른 화상들이 이용되는지를 결정(915, 920)하는데 이용되는 방법.
  17. 멀티 뷰 비디오 콘텐츠에 대응하는 적어도 2개의 뷰에 대한 앵커 및 비앵커 화상을 디코딩하는 디코더(200)를 포함하며,
    상기 적어도 2개의 뷰 중 적어도 하나에서 디스플레이 순서상 이전의 앵커 화상 및 다음의 앵커 화상 간에 배열되는 비앵커 화상들의 세트에서 각각의 비앵커 화상의 의존성 구조는 디스플레이 순서상 상기 이전의 앵커 화상 또는 상기 다음의 앵커 화상과 동일한 장치.
  18. 제17항에 있어서,
    상기 디코더(200)는 상기 의존성 구조를 인밴드 및 아웃오브밴드 중 적어도 하나로 수신하는 장치.
  19. 제17항에 있어서,
    상기 디코더(200)는 상기 의존성 구조를 고수준의 구문을 이용하여 결정하는 장치.
  20. 제19항에 있어서,
    상기 의존성 구조는 시퀀스 파라미터 세트, 뷰 파라미터 세트, 및 화상 파라미터 세트 중 적어도 하나를 이용하여 결정되는 장치.
  21. 제19항에 있어서,
    상기 의존성 구조는 플래그를 이용하여 결정되는 장치.
  22. 제21항에 있어서,
    상기 플래그는 previous_anchor_dep_struct_flag 구문 요소로 나타내는 장치.
  23. 제19항에 있어서,
    상기 의존성 구조는 상기 비앵커 화상들의 세트를 적어도 부분적으로 디코딩하는데 상기 적어도 2개의 뷰 중 어느 뷰에서 어느 다른 화상들이 이용되는지를 결정하는데 이용되는 장치.
  24. 제19항에 있어서,
    상기 의존성 구조는 상기 적어도 2개의 뷰 중 상기 적어도 하나의 랜덤 액세스 동안에 상기 비앵커 화상들의 세트를 디코딩하는데 상기 적어도 2개의 뷰에서 어느 다른 화상들이 이용되는지를 결정하는데 이용되는 장치.
  25. 제17항에 있어서,
    상기 디코더(200)는 상기 의존성 구조가 디스플레이 순서상 상기 이전의 앵커 화상 또는 상기 다음의 앵커 화상에 따르는지 여부에 따라서 상기 적어도 2개의 뷰 중 상기 적어도 하나의 랜덤 액세스 동안에 상기 적어도 2개의 뷰에서 상기 앵커 화상 중 어느 것을 버퍼링할 것인지를 결정하는 장치.
  26. 제25항에 있어서,
    상기 디코더(200)는, 상기 비앵커 화상들의 세트 내 상기 비앵커 화상의 상기 의존성 구조가 디스플레이 순서에 있어 랜덤 액세스 포인트 이후에 배열된 상기 앵커 화상과 동일할 경우, 버퍼링하기 위한 상기 랜덤 액세스 포인트 이전에 배열된 상기 앵커 화상을 선택하는 장치.
  27. 제25항에 있어서,
    상기 디코더(200)는, 상기 비앵커 화상의 세트 내 상기 비앵커 화상의 상기 의존성 구조가 디스플레이 순서에 있어 랜덤 액세스 포인트 이전에 배열된 상기 앵커 화상과 동일할 경우, 상기 랜덤 액세스 포인트 이전에 배열된 상기 앵커 화상의 버퍼링을 생략하는 장치.
  28. 멀티 뷰 비디오 콘텐츠에 대응하는 적어도 2개의 뷰에 대한 앵커 및 비앵커 화상을 디코딩하는 단계를 포함하며,
    상기 적어도 2개의 뷰 중 적어도 하나에서 디스플레이 순서상 이전의 앵커 화상 및 다음의 앵커 화상 간에 배열되는 비앵커 화상들의 세트에서 각각의 비앵커 화상의 의존성 구조는 디스플레이 순서상 상기 이전의 앵커 화상 또는 상기 다음의 앵커 화상과 동일한(720) 방법.
  29. 제28항에 있어서,
    상기 디코딩 단계는 상기 의존성 구조를 인밴드 및 아웃오브밴드 중 적어도 하나로 수신하는 단계(510)를 포함하는 방법.
  30. 제28항에 있어서,
    상기 디코딩 단계는 상기 의존성 구조를 고수준의 구문을 이용하여 결정(510)하는 방법.
  31. 제30항에 있어서,
    상기 의존성 구조는 시퀀스 파라미터 세트, 뷰 파라미터 세트, 및 화상 파라미터 세트 중 적어도 하나를 이용하여 결정(510)되는 방법.
  32. 제30항에 있어서,
    상기 의존성 구조는 플래그를 이용하여 결정(720)되는 방법.
  33. 제32항에 있어서,
    상기 플래그는 previous_anchor_dep_struct_flag 구문 요소로 나타내는(720) 장치.
  34. 제30항에 있어서,
    상기 의존성 구조는 상기 비앵커 화상들의 세트를 적어도 부분적으로 디코딩하는데 상기 적어도 2개의 뷰 중 어느 뷰에서 어느 다른 화상들이 이용되는지를 결정(725)하는데 이용되는 방법.
  35. 제30항에 있어서,
    상기 의존성 구조는 상기 적어도 2개의 뷰 중 상기 적어도 하나의 랜덤 액세스 동안에 상기 비앵커 화상들의 세트를 디코딩하는데 상기 적어도 2개의 뷰에서 어느 다른 화상들이 이용되는지를 결정(725)하는데 이용되는 방법.
  36. 제28항에 있어서,
    상기 디코딩 단계는 상기 의존성 구조가 디스플레이 순서에 있어 상기 이전의 앵커 화상 또는 상기 다음의 앵커 화상에 따르는지 여부에 따라 상기 적어도 2개의 뷰 중 상기 적어도 하나의 랜덤 액세스 동안에 상기 적어도 2개의 뷰에서 상기 앵커 화상 중 어느 것을 버퍼링할 것인지를 결정하는 단계(730, 740)를 포함하는 방법.
  37. 제36항에 있어서,
    상기 디코딩 단계는, 상기 비앵커 화상들의 세트 내 상기 비앵커 화상의 상기 의존성 구조가 디스플레이 순서에 있어 랜덤 액세스 포인트 이후에 배열된 상기 앵커 화상과 동일할 경우, 버퍼링하기 위한 상기 랜덤 액세스 포인트 이전에 배열된 상기 앵커 화상을 선택하는 단계(740)를 포함하는 방법.
  38. 제36항에 있어서,
    상기 디코딩 단계는, 상기 비앵커 화상들의 세트 내 상기 비앵커 화상의 상 기 의존성 구조가 디스플레이 순서에 있어 랜덤 액세스 포인트 이전에 배열된 상기 앵커 화상과 동일할 경우, 상기 랜덤 액세스 포인트 이전에 배열된 상기 앵커 화상의 버퍼링을 생략하는 단계(725, 730, 735)를 포함하는 방법.
  39. 비트스트림으로부터의 멀티 뷰 비디오 콘텐츠에 대응하는 적어도 2개의 뷰를 디코딩하는 디코더(200)를 포함하며,
    적어도 2개의 화상 그룹(Groups of Pictures)은 상이한 의존성 구조를 갖는 상기 적어도 2개의 뷰 중 하나 이상에 대응하며,
    상기 디코더는 적어도 하나의 의존성 맵에 따라서 상기 적어도 2개의 뷰에서 상기 적어도 2개의 뷰 중 적어도 하나의 랜덤 액세스 동안에 디코딩될 필요가 있는 화상들을 선택하는 장치.
  40. 제39항에 있어서,
    상기 랜덤 액세스는 디스플레이 순서상 상기 랜덤 액세스 이전의 가장 근접한 인트라 코딩된 화상에서 시작하는 장치.
  41. 제40항에 있어서,
    상기 비트스트림은 앵커 화상 및 비앵커 화상을 포함하며, 상기 디코더(200)는 상기 적어도 2개의 뷰에서 시간적으로 상기 랜덤 액세스 이전의 상기 가장 근접한 인트라 코딩된 화상에 대응하는 상기 앵커 화상을 버퍼링하는 장치.
  42. 제39항에 있어서,
    상기 랜덤 액세스는 상기 랜덤 액세스 이후의 가장 근접한 인트라 코딩된 화상에서 시작하는 장치.
  43. 제39항에 있어서,
    상기 적어도 하나의 의존성 맵은 상기 랜덤 액세스를 기준으로 이전의 인트라 코딩된 화상과 이후의 인트라 코딩된 화상으로 이루어진 의존성 맵들을 포함하며, 상기 디코더(200)는 상기 이전의 인트라 코딩된 화상과 상기 이후의 인트라 코딩된 화상으로 이루어진 상기 의존성 맵들을 비교함으로써 상기 요구된 화상들을 선택하는 장치.
  44. 제43항에 있어서,
    상기 이전의 인트라 코딩된 화상과 상기 이후의 인트라 코딩된 화상으로 이루어진 상기 의존성 맵들은 동일한 것인 장치.
  45. 제44항에 있어서,
    상기 더 이른 인트라 코딩된 화상과 상기 더 나중의 인트라 코딩된 화상으로 이루어진 상기 의존성 맵들 중 임의의 의존성 맵이 상기 요구된 화상을 결정하는데 이용되는 장치.
  46. 제43항에 있어서,
    상기 더 이른 인트라 코딩된 화상과 상기 더 나중의 인트라 코딩된 화상으로 이루어진 상기 의존성 맵들은 상이한 것인 장치.
  47. 제46항에 있어서,
    상기 적어도 하나의 의존성 맵은 적어도 하나의 앵커 화상 의존성 맵을 포함하며, 상기 디코더(200)는 상기 적어도 하나의 앵커 화상 의존성 맵을 확인하여 상기 적어도 2개의 뷰 중 상기 적어도 하나가 상기 적어도 2개의 뷰 중 어느 뷰에 의존하는지를 결정하는 장치.
  48. 제47항에 있어서,
    상기 적어도 2개의 뷰 중 상기 적어도 하나가 의존하는 상기 적어도 2개의 뷰 중 각 뷰마다, 상기 디코더(200)는 그에 대응하는 의존성 테이블을 확인하는 장치.
  49. 제48항에 있어서,
    상기 앵커 화상은 상기 적어도 2개의 뷰 중 상기 적어도 하나가 의존하는 상기 적어도 2개의 뷰 중 각 뷰로부터 디코딩되는 장치.
  50. 제47항에 있어서,
    상기 디코더(200)는 상기 적어도 2개의 화상 그룹 중 하나의 화상 그룹에 대한 변경된 의존성 구조와 상기 적어도 2개의 화상 그룹 중 또 다른 하나의 화상 그룹에 대한 변경되지 않은 의존성 구조를 결합함으로써 형성된 의존성 맵에 의거하여, 상기 랜덤 액세스 동안에 상기 이후의 인트라 코딩된 화상과 동일한 의존성 맵을 이용하는 임의의 특정 화상이 디코딩될 필요가 있는지를 판단하는 장치.
  51. 비트스트림으로부터의 멀티 뷰 비디오 콘텐츠에 대응하는 적어도 2개의 뷰를 디코딩하는 단계를 포함하며,
    적어도 2개의 화상 그룹(Groups of Pictures)은 상이한 의존성 구조를 갖는 상기 적어도 2개의 뷰 중 하나 이상에 대응하며,
    상기 디코딩 단계는 적어도 하나의 의존성 맵에 따라서 상기 적어도 2개의 뷰 중 적어도 하나의 랜덤 액세스 동안에 상기 적어도 2개의 뷰에서 디코딩될 필요가 있는 화상들을 선택(800)하는 방법.
  52. 제51항에 있어서,
    상기 랜덤 액세스는 디스플레이 순서상 상기 랜덤 액세스 이전의 가장 근접한 인트라 코딩된 화상에서 시작하는 방법.
  53. 제52항에 있어서,
    상기 비트스트림은 앵커 화상 및 비앵커 화상을 포함하며, 상기 디코딩 단계는 상기 적어도 2개의 뷰에서 시간적으로 상기 랜덤 액세스 이전의 상기 가장 근접한 인트라 코딩된 화상에 대응하는 상기 앵커 화상을 버퍼링하는 단계(815)를 포함하는 방법.
  54. 제51항에 있어서,
    상기 랜덤 액세스는 상기 랜덤 액세스 이후의 가장 근접한 인트라 코딩된 화상에서 시작(820)하는 방법.
  55. 제51항에 있어서,
    상기 적어도 하나의 의존성 맵은 상기 랜덤 액세스를 기준으로 이전의 인트라 코딩된 화상과 이후의 인트라 코딩된 화상으로 이루어진 의존성 맵들을 포함하며, 상기 디코딩 단계는 상기 이전의 인트라 코딩된 화상과 상기 이후의 인트라 코딩된 화상으로 이루어진 상기 의존성 맵들을 비교함으로써 상기 요구된 화상들을 선택(825)하는 방법.
  56. 제55항에 있어서,
    상기 이전의 인트라 코딩된 화상과 상기 이후의 인트라 코딩된 화상으로 이루어진 상기 의존성 맵들은 동일(850)한 것인 방법.
  57. 제56항에 있어서,
    상기 더 이른 인트라 코딩된 화상과 상기 더 나중의 인트라 코딩된 화상으로 이루어진 상기 의존성 맵들 중 임의의 맵이 상기 요구되는 화상을 결정하는데 이용(850)되는 방법.
  58. 제55항에 있어서,
    상기 이전의 인트라 코딩된 화상과 상기 이후의 인트라 코딩된 화상으로 이루어진 상기 의존성 맵들은 상이한(830, 835, 840) 것인 방법.
  59. 제58항에 있어서,
    상기 적어도 하나의 의존성 맵은 적어도 하나의 앵커 화상 의존성 맵을 포함하며, 상기 디코딩 단계는 상기 적어도 하나의 앵커 화상 의존성 맵을 확인하여 상기 적어도 2개의 뷰 중 상기 적어도 하나에 상기 적어도 2개의 뷰 중 어느 뷰가 의존하는지를 판단(830)하는 방법.
  60. 제59항에 있어서,
    상기 적어도 2개의 뷰 중 상기 적어도 하나가 의존하는 상기 적어도 2개의 뷰 중 각 뷰마다, 상기 디코딩 단계는 그에 대응하는 의존성 테이블을 확인(835)하는 방법.
  61. 제60항에 있어서,
    상기 앵커 화상은 상기 적어도 2개의 뷰 중 상기 적어도 하나가 의존하는 상기 적어도 2개의 뷰 중 각 뷰로부터 디코딩(840)되는 방법.
  62. 제59항에 있어서,
    상기 디코딩 단계는 상기 적어도 2개의 화상 그룹 중 하나의 화상 그룹에 대한 변경된 의존성 구조와 상기 적어도 2개의 화상 그룹 중 또 다른 하나의 화상 그룹에 대한 변경되지 않은 의존성 구조를 결합함으로써 형성된 의존성 맵에 의거하여, 상기 랜덤 액세스 동안에 상기 이후의 인트라 코딩된 화상과 동일한 의존성 맵을 이용하는 임의의 특정 화상이 디코딩될 필요가 있는지를 판단하는 단계를 포함하는 방법.
  63. 비디오 인코딩을 위한 비디오 신호 구조로서,
    멀티 뷰 비디오 콘텐츠에 대응하는 적어도 2개의 뷰에 대해 인코딩된 앵커 및 비앵커 화상을 포함하며,
    상기 적어도 2개의 뷰 중 적어도 하나에서 디스플레이 순서상 이전의 앵커 화상 및 다음의 앵커 화상 간에 배열되는 비앵커 화상들의 세트에서 각각의 비앵커 화상의 의존성 구조는 디스플레이 순서상 상기 이전의 앵커 화상 또는 상기 다음의 앵커 화상과 동일한 비디오 신호 구조.
  64. 인코딩된 비디오 신호 데이터를 갖는 저장 매체로서,
    멀티 뷰 비디오 콘텐츠에 대응하는 적어도 2개의 뷰에 대해 인코딩된 앵커 및 비앵커 화상을 포함하며,
    상기 적어도 2개의 뷰 중 적어도 하나에서 디스플레이 순서상 이전의 앵커 화상 및 다음의 앵커 화상 간에 배열되는 비앵커 화상들의 세트에서 각각의 비앵커 화상의 의존성 구조는 디스플레이 순서상 상기 이전의 앵커 화상 또는 상기 다음의 앵커 화상과 동일한 저장 매체.
KR1020097000494A 2006-07-11 2007-05-30 멀티 뷰 비디오 코딩용 방법 및 장치 KR20090040287A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US83020606P 2006-07-11 2006-07-11
US60/830,206 2006-07-11

Publications (1)

Publication Number Publication Date
KR20090040287A true KR20090040287A (ko) 2009-04-23

Family

ID=38923730

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097000494A KR20090040287A (ko) 2006-07-11 2007-05-30 멀티 뷰 비디오 코딩용 방법 및 장치

Country Status (6)

Country Link
US (1) US20090323824A1 (ko)
EP (1) EP2041955A2 (ko)
JP (1) JP2009543514A (ko)
KR (1) KR20090040287A (ko)
CN (1) CN101491079A (ko)
WO (1) WO2008008133A2 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130088086A (ko) * 2012-01-30 2013-08-07 삼성전자주식회사 시점변환을 위한 예측구조에 기초한 다시점 비디오 부호화 방법 및 그 장치, 시점변환을 위한 예측구조에 기초한 다시점 비디오 복호화 방법 및 그 장치
KR20150103122A (ko) * 2013-01-02 2015-09-09 퀄컴 인코포레이티드 비디오 코딩 확장안들에 대한 시간 모션 벡터 예측

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8289370B2 (en) 2005-07-20 2012-10-16 Vidyo, Inc. System and method for scalable and low-delay videoconferencing using scalable video coding
WO2010086500A1 (en) * 2009-01-28 2010-08-05 Nokia Corporation Method and apparatus for video coding and decoding
CN103561273B (zh) * 2009-03-26 2016-10-05 松下电器(美国)知识产权公司 编码装置及方法、错误检测装置及方法、解码装置及方法
WO2010120033A1 (ko) * 2009-04-17 2010-10-21 엘지전자 주식회사 다시점 비디오 신호의 처리 방법 및 장치
KR20110007928A (ko) * 2009-07-17 2011-01-25 삼성전자주식회사 다시점 영상 부호화 및 복호화 방법과 장치
EP2375746A1 (en) 2010-03-31 2011-10-12 Deutsche Telekom AG Method for encoding texture data of free viewpoint television signals, corresponding method for decoding and texture encoder and decoder
KR20130061675A (ko) * 2010-04-20 2013-06-11 톰슨 라이센싱 컴퓨터 그래픽을 사용해서 적어도 하나의 이미지를 렌더링하기 위해 데이터를 인코딩하는 방법 및 디바이스와 대응 디코딩 방법 및 디바이스
JPWO2012029883A1 (ja) * 2010-09-03 2013-10-31 ソニー株式会社 符号化装置および符号化方法、並びに復号装置および復号方法
EP2684293A4 (en) 2011-03-10 2014-10-29 Vidyo Inc SET OF DEPENDENCY PARAMETERS FOR EVOLVING VIDEO CODING
WO2013030458A1 (en) * 2011-08-31 2013-03-07 Nokia Corporation Multiview video coding and decoding
US9674534B2 (en) * 2012-01-19 2017-06-06 Samsung Electronics Co., Ltd. Method and apparatus for encoding multi-view video prediction capable of view switching, and method and apparatus for decoding multi-view video prediction capable of view switching
CN103379333B (zh) * 2012-04-25 2018-12-04 浙江大学 编解码方法、视频序列码流的编解码方法及其对应的装置
US9313486B2 (en) 2012-06-20 2016-04-12 Vidyo, Inc. Hybrid video coding techniques
WO2014047351A2 (en) * 2012-09-19 2014-03-27 Qualcomm Incorporated Selection of pictures for disparity vector derivation
US9781413B2 (en) * 2012-10-02 2017-10-03 Qualcomm Incorporated Signaling of layer identifiers for operation points
RU2610286C2 (ru) * 2012-12-21 2017-02-08 Телефонактиеболагет Л М Эрикссон (Пабл) Декодирование многослойного видеопотока
US10805605B2 (en) 2012-12-21 2020-10-13 Telefonaktiebolaget Lm Ericsson (Publ) Multi-layer video stream encoding and decoding
DK2936817T3 (en) * 2012-12-21 2017-10-02 ERICSSON TELEFON AB L M (publ) Encoding and decoding of multilayer video stream
US9774927B2 (en) 2012-12-21 2017-09-26 Telefonaktiebolaget L M Ericsson (Publ) Multi-layer video stream decoding
US9374581B2 (en) * 2013-01-07 2016-06-21 Qualcomm Incorporated Signaling of picture order count to timing information relations for video timing in video coding
CA2921759C (en) 2013-10-17 2018-05-15 Mediatek Inc. Method of motion information prediction and inheritance in multi-view and three-dimensional video coding
US10148965B2 (en) * 2015-03-04 2018-12-04 Panasonic Intellectual Property Management Co., Ltd. Moving image coding apparatus and moving image coding method
US10499070B2 (en) 2015-09-11 2019-12-03 Facebook, Inc. Key frame placement for distributed video encoding
US10341561B2 (en) 2015-09-11 2019-07-02 Facebook, Inc. Distributed image stabilization
US10506235B2 (en) 2015-09-11 2019-12-10 Facebook, Inc. Distributed control of video encoding speeds
US10602157B2 (en) 2015-09-11 2020-03-24 Facebook, Inc. Variable bitrate control for distributed video encoding
US10375156B2 (en) 2015-09-11 2019-08-06 Facebook, Inc. Using worker nodes in a distributed video encoding system
US10602153B2 (en) 2015-09-11 2020-03-24 Facebook, Inc. Ultra-high video compression
US10063872B2 (en) * 2015-09-11 2018-08-28 Facebook, Inc. Segment based encoding of video

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7483484B2 (en) * 2003-10-09 2009-01-27 Samsung Electronics Co., Ltd. Apparatus and method for detecting opaque logos within digital video signals

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130088086A (ko) * 2012-01-30 2013-08-07 삼성전자주식회사 시점변환을 위한 예측구조에 기초한 다시점 비디오 부호화 방법 및 그 장치, 시점변환을 위한 예측구조에 기초한 다시점 비디오 복호화 방법 및 그 장치
KR20150103122A (ko) * 2013-01-02 2015-09-09 퀄컴 인코포레이티드 비디오 코딩 확장안들에 대한 시간 모션 벡터 예측

Also Published As

Publication number Publication date
WO2008008133A3 (en) 2008-04-03
US20090323824A1 (en) 2009-12-31
CN101491079A (zh) 2009-07-22
EP2041955A2 (en) 2009-04-01
JP2009543514A (ja) 2009-12-03
WO2008008133A2 (en) 2008-01-17

Similar Documents

Publication Publication Date Title
KR20090040287A (ko) 멀티 뷰 비디오 코딩용 방법 및 장치
US9100659B2 (en) Multi-view video coding method and device using a base view
KR101558627B1 (ko) 다시점 비디오 코딩시스템에 있어 비디오 사용성 정보(vui)를 통합하기 위한 방법 및 장치
KR101450921B1 (ko) 멀티뷰 비디오 엔코딩 및 디코딩을 위한 방법 및 장치
KR101353204B1 (ko) 멀티-뷰 비디오 코딩에서의 뷰 스케일러빌리티를 신호로 알리기 위한 방법 및 장치
AU2012203039B2 (en) Methods and apparatus for use in a multi-view video coding system

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid