KR101276847B1 - 다시점 비디오의 처리 - Google Patents

다시점 비디오의 처리 Download PDF

Info

Publication number
KR101276847B1
KR101276847B1 KR1020087019748A KR20087019748A KR101276847B1 KR 101276847 B1 KR101276847 B1 KR 101276847B1 KR 1020087019748 A KR1020087019748 A KR 1020087019748A KR 20087019748 A KR20087019748 A KR 20087019748A KR 101276847 B1 KR101276847 B1 KR 101276847B1
Authority
KR
South Korea
Prior art keywords
block
value
current block
delete delete
neighboring
Prior art date
Application number
KR1020087019748A
Other languages
English (en)
Other versions
KR20080094048A (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
Priority claimed from KR1020060037773A external-priority patent/KR20070076356A/ko
Priority claimed from KR1020060110338A external-priority patent/KR20070076392A/ko
Priority claimed from KR1020060110337A external-priority patent/KR20070076391A/ko
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority claimed from PCT/KR2007/000225 external-priority patent/WO2007081176A1/en
Publication of KR20080094048A publication Critical patent/KR20080094048A/ko
Application granted granted Critical
Publication of KR101276847B1 publication Critical patent/KR101276847B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods 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 scalable video layer
    • 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
    • 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/136Incoming video signal characteristics or properties
    • 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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • H04N19/197Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters including determination of the initial value of an encoding parameter
    • 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/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

Landscapes

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

Abstract

본 발명은, 다시점 비디오 신호의 다수개 시점들이 인코딩된 비트스트림을 수신하는 단계와, 상기 다시점 비디오 신호의 부분과 관련된 플래그 정보를 상기 비트스트림으로부터 추출하는 단계 및 상기 플래그 정보에 따라 조명 보상이 수행되는 부분에 대해, 상기 부분 내의 세그먼트와 관련된 값을 상기 비트스트림으로부터 추출하고, 상기 추출된 값으로부터 상기 세그먼트의 조명 보상이 수행되는지 여부를 결정하는 단계를 포함하되, 상기 다수개 시점들의 각 시점은 다수개의 세그먼트들로 구분된 다수개의 픽쳐들을 포함하고, 상기 플래그 정보는 상기 다시점 비디오 신호의 부분 내의 세그먼트들에 대해 조명 보상이 수행되는지 여부를 나타내는 것을 특징으로 하는 다시점 비디오 신호 디코딩 방법을 제공한다.
비디오, 다시점, 프로파일

Description

다시점 비디오의 처리{PROCESSING MULTIVIEW VIDEO}
본 발명은 다시점 비디오의 처리에 관한 것이다.
MVC(Multiview Video Coding)에서는 여러 대의 카메라에서 취득된 비디오 영상(예를 들어, 일련의 이미지들 또는 픽쳐들)에 대한 압축 표준을 다룬다. 상기 비디오 영상 또는 시점들은 MPEG과 같은 표준에 따라 코딩될 수 있다. 비디오 영상 내의 픽쳐는 완전한 비디오 프레임 또는 비디오 프레임의 필드를 나타낼 수 있다. 슬라이스는 상기 픽쳐 내의 일부 또는 모든 매크로블록들을 포함하는 픽쳐의 독립적으로 코딩된 부분일 수 있다. 그리고, 매크로블록은 픽쳐 요소들(또는 픽셀들)로 구성된 블록들을 포함할 수 있다.
상기 비디오 영상들은 H.264/AVC 코덱 기술에 따라 다시점 비디오 영상으로 코딩될 수 있다. 그리고, 많은 연구원들이 다시점 비디오 영상들을 제공하기 위해 표준의 추가 기술로 연구를 수행하고 있다.
현재 H.264에는 특정한 기능을 지원하는 세 개의 프로파일이 정의되어 있는데, 프로파일(Profile)이란 비디오 부호화/복호화 과정에서 알고리즘상 들어가는 기술적 구성요소를 규격화한 것을 의미한다. 즉, 압축된 영상의 비트열을 복호하기 위해 필요한 기술요소의 집합으로서 일종의 서브 규격이라 할 수 있다. 상기 세 개 의 프로파일은 베이스라인 프로파일(Baseline Profile), 메인 프로파일(Main Profile), 확장 프로파일(Extended Profile)을 말한다. 디코더가 각각의 프로파일과 호환되기 위해서, 인코더와 디코더에 요구되는 다양한 사항들이 H.264 표준에서 정의되어 있다.
H.264/AVC 에서의 비트열의 구성을 살펴보면, 동영상 부호화 처리 그 자체를 다루는 VCL(Video Coding Layer, 비디오 부호화 계층)과 부호화된 정보를 전송하고 저장하는 하위 시스템과의 사이에 있는 NAL(Network Abstraction Layer, 네트워크 추상 계층)이라는 분리된 계층 구조로 정의되어 있다. 부호화 과정의 출력은 VCL 데이터이고 전송하거나 저장하기 전에 NAL 단위로 맵핑된다. 각 NAL 단위는 압축된 비디오 데이터 또는 헤더 정보에 해당하는 데이터인 RBSP(Raw Byte Sequence Payload, 동영상 압축의 결과데이터)를 포함한다.
NAL 단위는 NAL헤더와 RBSP를 포함한다. 상기 NAL 헤더는 플래그 정보(예를 들어, nal_ref_idc)와 식별(ID) 정보(예를 들어, nal_unit_type)를 포함할 수 있다. 상기 플래그 정보는 상기 NAL 단위의 참조 픽처가 되는 슬라이스가 포함되어 있는지 여부를 나타내고, 상기 식별 정보는 NAL 단위의 종류를 나타낸다. RBSP 에는 압축된 원본의 데이터를 저장하며, RBSP 의 길이를 8비트의 배수로 표현하기 위해 RBSP 의 마지막에 RBSP 채워넣기 비트(RBSP trailing bit)를 첨가한다.
이러한 NAL 단위의 종류에는 IDR (Instantaneous Decoding Refresh, 순간 복호 리프레쉬) 픽쳐, SPS (Sequence Parameter Set, 시퀀스 파라미터 세트), PPS (Picture Parameter Set, 픽쳐 파라미터 세트), SEI (Supplemental Enhancement Information, 보충적 부가정보) 등이 있다.
또한, 규격에서는 대상 제품을 적당한 비용으로 구현 가능하도록 여러 가지 프로파일 및 레벨로 제약하고 있는데, 복호기는 해당 프로파일과 레벨에서 정해진 제약을 만족시켜야 한다.
이처럼 복호기가 어떤 압축 영상의 범위까지 대응할 수 있는지 그 기능 또는 파라미터를 나타내기 위해 프로파일과 레벨이라는 두 가지의 개념이 정의되었다. 비트스트림이 어떤 프로파일에 기초하는 것인가는 프로파일 식별 정보(profile_idc)로 식별할 수 있다. 프로파일 식별 정보란, 비트스트림에 관련된 프로파일을 나타내는 플래그를 의미한다. H.264/AVC 표준은 3가지 프로파일 식별정보를 포함할 수 있다. 예를 들어, 상기 프로파일 식별 정보가 66 이면 상기 비트스트림은 베이스라인 프로파일에 기초함을 의미하고, 77 이면 메인 프로파일에 기초함을 의미하며, 88 이면 확장 프로파일에 기초함을 의미한다. 상기 프로파일 식별 정보는 시퀀스 파라미터 세트에 포함될 수 있다.
다시점(multiview) 영상을 효율적으로 다루기 위해서는, 디코딩 장치가 입력 비트스트림이 다시점 프로파일(Multiview Profile)에 관련되어 있는지 여부를 결정하도록 하는 정보를, 상기 입력 비트스트림은 포함할 수 있다. 상기 입력 비트스트림이 다시점 프로파일과 관련되어 있는 것으로 식별되면 다시점 영상에 대한 하나 이상의 추가 정보를 전송할 수 있도록 신택스를 추가할 필요가 있다. 여기서 다시점 프로파일 식별 정보란, H.264/AVC의 추가 기술로서 다시점 비디오(multiview video)를 다루는 프로파일 모드(profile mode)를 나타낼 수 있다.
MVC 기술은 H.264/AVC 기술에 대한 추가 기술이므로 무조건적인 신택스보다는 MVC 모드인 경우에 대한 추가 정보로서 신택스를 추가하는 것이 더 효율적일 수 있다. 예를 들어, AVC의 프로파일 식별자가 다시점 프로파일을 나타낼 때 다시점 영상에 대한 정보를 추가하면 부호화 효율을 높일 수 있다.
시퀀스 파라미터 세트란, 프로파일, 레벨 등 시퀀스 전체의 부호화에 걸쳐있는 정보가 포함되어 있는 헤더 정보를 말한다.
압축된 동영상 전체, 즉 시퀀스는 반드시 시퀀스 헤더로부터 시작하여야 하므로 헤더 정보에 상당하는 시퀀스 파라미터 세트는 그 파라미터 세트를 참조하는 데이터보다 먼저 복호기에 도착하여야 한다. 시퀀스 파라미터 세트 RBSP (도 2의 S1)는 동영상 압축의 결과 데이터에 대한 헤더 정보로써의 역할을 한다. 비트스트림이 입력되면, 먼저 프로파일 식별자는 입력된 비트스트림이 복수개의 프로파일 중에서 어떤 프로파일에 기초하는 것인지를 식별하게 된다.
따라서, 입력되는 비트스트림이 다시점 프로파일에 대한 것인지 여부를 판단하는(예를 들어, " If ( profile_idc == MULTI_VIEW_PROFILE )") 프로파일 식별 정보를 신택스 상에 포함시킴으로써, 입력된 비트스트림이 다시점 프로파일에 대한 것인지 여부를 판별하고, 다시점 프로파일에 대한 것으로 인정되는 경우에 여러 가지 속성 정보들을 추가할 수 있게 된다.
도 1은 본 발명이 적용되는 실시예로서, 다시점 비디오 영상을 포함하는 비디오 신호의 디코딩을 위한 다시점 비디오 시스템의 디코딩 장치의 개략적인 블록도를 나타낸다.
상기 다시점 비디오 시스템은 상기 다시점 비디오 영상을 제공하기 위해 대응되는 인코딩 장치(인코더)를 포함할 수 있다. 이때, 상기 다시점 비디오 영상은 장치로 판독가능한 정보의 운송체(예를 들어, 장치로 판독가능한 저장 매체, 또는 송신기와 수신기 사이에서 전파되는 장치로 판독가능한 에너지 신호)에 포함된 인코딩된 이미지 데이터를 포함하는 비트스트림으로써 제공될 수 있다.
도 1에 따르면, 상기 디코딩 장치는 크게 파싱부(10), 엔트로피 디코딩부(11), 역양자화/역변환부(12), 화면간 예측부(13), 화면내 예측부(14), 디블록킹 필터부(15), 복호 픽쳐 버퍼부(16) 등을 포함한다.
상기 화면간 예측부(13)는 움직임 보상부(17), 조명 보상부(18), 조명 보상 오프셋 예측부(19) 등을 포함한다.
파싱부(10)에서는 수신된 비디오 영상을 복호하기 위하여 NAL 단위로 파싱을 수행한다. 일반적으로 하나 또는 그 이상의 시퀀스 파라미터 셋과 픽쳐 파라미터 셋이 슬라이스 헤더와 슬라이스 데이터가 디코딩되기 전에 디코더로 전송된다. 이 때 NAL 헤더 영역 또는 NAL 헤더의 확장 영역에는 여러 가지 속성 정보가 포함될 수 있다. 예를 들어, 시간적 레벨(temporal level) 정보, 시점 레벨(view level) 정보, 앵커 픽쳐(anchor picture) 식별 정보, 시점 식별(view identifier) 정보 등이 포함될 수 있다.
여기서, 시간적 레벨 정보란, 비디오 신호로부터 시간적 확장성을 제공하기 위한 계층적인 구조에 대한 정보를 말한다. 이러한 시간적 레벨 정보를 통해 사용자에게 다양한 시간대의 영상을 제공할 수 있게 된다.
시점 레벨 정보란, 비디오 신호로부터 시점 확장성을 제공하기 위한 계층적인 구조에 대한 정보를 말한다. 다시점 비디오 영상에서는 사용자에게 다양한 시간 및 시점의 영상을 제공하도록 하기 위해 시간 및 시점에 대한 레벨을 정의해 줄 필요가 있다.
이처럼 레벨 정보를 정의할 경우, 시간 및 시점에 대한 확장성(scalability)을 이용할 수 있게 된다. 따라서, 사용자는 원하는 시간 및 시점의 영상만을 볼 수도 있고, 다른 제한 조건에 따른 영상만을 볼 수 있게 된다. 상기 레벨 정보는 그 기준 조건에 따라 다양한 방법으로 다르게 설정될 수 있다. 예를 들어, 상기 레벨 정보는 카메라의 위치에 따라 다르게 설정될 수 있고, 카메라의 배열 형태에 따라 다르게 설정될 수 있다. 또한, 상기 레벨 정보는 특별한 기준에 의하지 않고 임의로 설정될 수도 있다.
앵커 픽쳐라 함은, 모든 슬라이스들이 동일 시간대의 프레임에 있는 슬라이스만을 참조하는 부호화된 픽쳐를 의미한다. 예를 들어, 다른 시점에 있는 슬라이스만을 참조하고 현재 시점에 있는 슬라이스는 참조하지 않는 부호화된 픽쳐를 말한다. 다시점 영상의 복호화 과정에 있어서, 시점 간의 랜덤 액세스가 필요할 수 있다.
복호화 노력을 최소화하면서 임의 시점에 대한 액세스가 가능하도록 하여야 한다. 여기서 효율적인 랜덤 액세스를 실현하기 위하여 앵커 픽쳐 식별 정보가 필요할 수 있다.
또한, 시점 식별 정보란, 현재 시점에 있는 픽쳐와 다른 시점에 있는 픽쳐를 구별하기 위한 정보를 말한다. 비디오 영상 신호가 코딩될 때, 각각의 픽쳐를 식별하기 위하여 POC(Picture Order Count)와 frame_num 이 이용될 수 있다.
다시점 비디오 영상인 경우에는 시점 간의 예측이 수행될 수 있다. 따라서, 현재 시점에 있는 픽쳐와 다른 시점에 있는 픽쳐를 구별하기 위해 식별자가 이용될 수 있다.
픽쳐의 시점을 나타내는 시점 식별자(view identifier)가 정의될 수 있다. 상기 시점 식별자를 이용하여 현재 픽쳐와 다른 시점에 있는 픽쳐의 정보를 획득하고, 상기 다른 시점에 있는 픽쳐의 정보를 이용하여 상기 비디오 신호를 디코딩할 수 있다. 이러한 상기 시점 식별자는 비디오 신호의 인코딩/디코딩 과정 전반에 걸쳐 적용될 수 있다. 또한, 특정한 시점 식별자가 아닌, 시점이 고려된 frame_num을 이용하여 다시점 비디오 코딩에 그대로 적용할 수도 있다.
일반적으로 다시점 영상의 데이터량이 방대하기 때문에, 이를 해결하기 위해 각 시점의 계층적(hierarchy) 부호화(이를, '뷰 스케일러빌러티(view scalability)'라고도 한다) 기능이 필요할 수 있다. 뷰 스케일러빌러티 기능을 수행하기 위해 다시점 영상의 시점을 고려한 예측 구조를 정의할 수 있다.
상기 예측 구조는 여러 개의 시점 영상들에 대해서 예측 순서 및 방향 등을 구조화함으로써 정의될 수 있다. 예를 들어, 부호화하려는 여러 시점의 영상들이 주어질 때, 전체 배열의 중앙을 기준 시점(base view)으로 정하고 점차 계층적으로 부호화하려는 시점의 영상을 선택할 수 있다. 또는 전체 배열의 끝부분이나 그외 다른 부분을 기준 시점으로 정할 수도 있다.
만약 카메라 시점의 개수가 2의 지수승인 경우를 기준으로 각 시점 영상 간의 계층적인 예측 구조를 형성할 수도 있다. 또는 카메라 시점의 개수가 2의 지수승이 아닌 경우에는 실제 개수보다 크면서 가장 작은 2의 지수승의 경우를 기준으로 가상의 시점을 상정하고 예측 구조를 형성할 수도 있다. 또한, 카메라 배열이 2차원일 경우에는 수평, 수직 방향으로 번갈아가며 예측 순서를 정할 수 있다.
파싱된 비트스트림은 엔트로피 디코딩부(11)를 통하여 엔트로피 디코딩되고, 각 매크로브록의 계수, 움직임 벡터 등이 추출된다. 역양자화부/역변환부(12)에서는 수신된 양자화된 값에 일정한 상수를 곱하여 변환된 계수값을 획득하고, 상기 계수값을 역변환하여 화소값을 복원하게 된다. 상기 복원된 화소값을 이용하여 화면내 예측부(14)에서는 현재 픽쳐 내의 디코딩된 샘플로부터 화면내 예측을 수행하게 된다.
디블록킹 필터부(15)에서는 블록 왜곡 현상을 감소시키기 위해 각각의 코딩된 매크로블록에 적용된다. 필터는 블록의 가장자리를 부드럽게 하여 디코딩된 프레임의 화질을 향상시킨다. 필터링 과정의 선택은 경계 세기(boundary strenth)와 경계 주위의 이미지 샘플의 변화(gradient)에 의해 좌우된다. 필터링을 거친 픽쳐들은 출력되거나 참조 픽쳐로 이용하기 위해 복호 픽쳐 버퍼부(16)에 저장된다.
복호 픽쳐 버퍼부(Decoded Picture Buffer unit)(16)에서는 화면간 예측을 수행하기 위해서 이전에 코딩된 픽쳐들을 저장하거나 개방하는 역할 등을 수행한다. 이 때 복호 픽쳐 버퍼부(16)에 저장하거나 개방하기 위해서 각 픽쳐의 frame_num 과 POC(Picture Order Count)를 이용하게 된다. 따라서, MVC에 있어서 상기 이전에 코딩된 픽쳐들 중에는 현재 픽쳐와 다른 시점에 있는 픽쳐들도 있으므로, 이러한 픽쳐들을 참조 픽쳐로서 활용하기 위해서는 상기 frame_num 과 POC 뿐만 아니라 픽쳐의 시점을 나타내는 시점 식별자도 함께 이용할 수 있다.
화면간 예측부(13)에서는 복호 픽쳐 버퍼부(16)에 저장된 참조 픽쳐를 이용하여 화면간 예측을 수행한다. 인터 코딩된 매크로블록은 매크로블록 파티션으로 나누어질 수 있으며, 각 매크로블록 파티션은 하나 또는 두개의 참조 픽쳐로부터 예측될 수 있다.
움직임 보상부(17)에서는 엔트로피 디코딩부(11)로부터 전송된 정보들을 이용하여 현재 블록의 움직임을 보상한다. 비디오 신호로부터 현재 블록에 이웃하는 블록들의 움직임 벡터를 추출하고, 상기 현재 블록의 움직임 벡터 프리딕터를 획득한다. 상기 획득된 움직임 벡터 프리딕터와 비디오 신호로부터 추출되는 차분 벡터를 이용하여 현재 블록의 움직임을 보상한다. 또한, 이러한 움직임 보상은 하나의 참조 픽쳐를 이용하여 수행될 수도 있고, 복수의 픽쳐를 이용하여 수행될 수도 있다.
따라서, 상기 참조 픽쳐들이 현재 시점과 다른 시점에 있는 픽쳐들인 경우에는 그 시점을 나타내는 시점 식별자를 이용하여 움직임 보상을 수행할 수 있다.
또한, 직접 예측 모드(direct mode)는 부호화가 끝난 블록의 움직임 정보로부터 현재 블록의 움직임 정보를 예측하는 부호화 모드이다. 이러한 방법은 움직임 정보를 부호화할 때 필요한 비트수가 절약되기 때문에 압축 효율이 향상된다.
예를 들어, 시간 직접 예측 모드(temporal direct mode)는 시간 방향의 움직임 정보 상관도를 이용하여 현재 블록의 움직임 정보를 예측하게 된다. 이 방법과 유사하게, 상기 디코더는 시점 방향의 움직임 정보 상관도를 이용하여 현재 블록의 움직임 정보를 예측할 수 있다.
또한, 입력된 비트스트림이 다시점 영상에 해당되는 경우, 각 시점 영상(view sequence)들은 각기 다른 카메라에서 취득된 영상들이기 때문에 카메라의 내외적 요인으로 인하여 조명 (illumination) 차이가 발생하게 된다. 이를 방지하기 위해서 조명 보상부(18)에서는 조명 보상(illumination compensation)을 수행하게 된다.
조명 보상을 수행함에 있어서, 비디오 신호의 일정 계층에 대한 조명 보상 수행여부를 나타내는 플래그 정보를 이용할 수 있다. 예를 들어, 해당 슬라이스 또는 해당 매크로블록의 조명 보상 수행여부를 나타내는 플래그 정보를 이용하여 조명 보상을 수행할 수 있다. 또한, 상기 플래그 정보를 이용하여 조명 보상을 수행함에 있어서, 여러 가지 매크로블록의 타입(예를 들어, 인터16×16모드 또는 B-skip모드 또는 직접 예측 모드 등)에 적용될 수 있다.
또한, 조명 보상을 수행함에 있어서, 현재 블록을 복원하기 위하여 주변 블록의 정보 또는 현재 블록과 다른 시점에 있는 블록의 정보를 이용할 수 있으며, 현재 블록의 오프셋 값을 이용할 수도 있다. 여기서 현재 블록의 오프셋 값이란, 현재 블록의 평균 화소값과 그에 대응하는 참조 블록의 평균 화소값 사이의 차이를 말한다. 상기 오프셋 값을 이용하는 일례로, 상기 현재 블록의 이웃 블록들을 이용하여 상기 현재 블록의 오프셋 값의 프리딕터를 획득하고, 상기 오프셋 값과 상기 프리딕터와의 차이값(residual)을 이용할 수 있다. 따라서, 디코더에서는 상기 차이값과 상기 프리딕터를 이용하여 상기 현재 블록의 오프셋 값을 복원할 수 있다.
또한, 현재 블록의 프리딕터를 획득함에 있어서, 이웃 블록의 정보를 이용할 수 있다.
예를 들어, 이웃 블록의 오프셋 값을 이용하여 현재 블록의 오프셋 값을 예측할 수 있는데, 이에 앞서 상기 현재 블록의 참조 번호(reference index)와 상기 이웃 블록의 참조 번호가 동일한지 여부를 확인할 수 있다. 상기 확인 결과에 따라 상기 조명 보상부(18)는 어떤 이웃 블록을 이용할지, 또는 어떤 값을 이용할지를 결정할 수 있다.
또한, 상기 조명 보상부(18)는 현재 블록의 프리딕션 타입을 이용하여 조명 보상을 수행할 수도 있으며, 현재 블록이 2개의 참조 블록을 이용하여 예측 코딩된 경우에는 현재 블록의 오프셋 값을 이용하여 각 참조 블록에 대응하는 오프셋 값을 획득할 수도 있다.
이처럼 조명 보상, 움직임 보상 등을 이용하여 인터 예측된 픽쳐들과 인트라 예측된 픽쳐들은 예측 모드에 따라 선택되어 현재 픽쳐를 복원하게 된다.
이하에서는 현재 픽쳐를 복원하기 위해 적용되는 인코딩/디코딩 방법들의 구체적인 실시예들을 살펴보도록 한다.
도 2는 본 발명이 적용된 일실시예로서, 비디오 영상 부호화 방법을 설명하기 위한 흐름도를 도시한 것이다.
도 2에 따르면, 비디오 영상 부호화 방법의 일실시예로서, 현재 블록에 인접한 블록들과 다른 시점의 참조 영상 블록들 중 적어도 하나의 블록에 대한 조명 평균값(average pixel value)을 획득한다(S131). 상기 획득된 값을 가지고 복수개의 모드들 중에서 하나 이상의 모드를 이용하여 현재 블록의 조명 평균 예측값(predicted average pixel value)을 유도한다(S132). 그리고 상기 현재 블록의 조명 평균 예측값과 조명 평균값과의 오차값(difference value)을 획득한다(S133). 상기 복수개의 모드에 대하여 각각의 부호화 효율을 측정하고 최적인 모드를 선택하게 된다(S134). 상기 최적의 모드를 선택하는 방법의 일실시예들로서, 상기 획득된 오차값들 중에서 오차값이 최소가 되는 모드를 선택하는 방법, 또는 RD(Rate-Distortion) 관계식을 이용하는 방법 등을 들 수 있다.
여기서, RD 관계식이란, 해당 블록을 부호화할 때 생기는 부호화 비트수와 실제 영상과의 오차를 나타내는 왜곡값, 이 두 성분을 가지고 비용을 계산한다. 구체적으로, 비트수에 양자화 계수에 의해 결정되는 라그랑지안 승수를 곱하고 왜곡값을 더하여 구할 수 있다. 상기 최적의 모드가 선택된 후에는 상기 선택된 모드를 나타내는 식별 정보만 부호화하여 전송하거나 상기 선택된 모드를 나타내는 식별 정보와 함께 상기 선택된 모드에 의해 획득된 오차값도 부호화하여 전송할 수 있다(S135).
도 3은 본 발명을 적용한 일실시예로서, 다른 시점의 참조 영상 블록으로부터 현재 블록의 조명 평균 예측값(predicted average pixel value)을 유도하는 과정을 설명하기 위한 블록 구성도를 도시한 것이다.
도 3에 따르면,
Figure 112008057611866-pct00001
블록 픽셀값들의 평균값을
Figure 112008057611866-pct00002
,
Figure 112008057611866-pct00003
의 평균값을
Figure 112008057611866-pct00004
라고 하고, 나머지 블록들의 평균값도 상기 블록 표시법(notation)에 준해서 표현한다. 주변 정보를 이용하는 방법에 따라
Figure 112008057611866-pct00005
정보를 예측하는 방법이 다양하다.
Figure 112008057611866-pct00006
블록을 부호화할 시, 참조 영상#1(reference frame#1)이 후보 참조 영상(reference frame)이 되는 경우라고 가정하자.
주변 정보를 이용하는 방법에 따라
Figure 112008057611866-pct00007
정보를 예측하는 방법의 일실시예로서, 현재 블록에 대응되는 다른 시점의 참조 영상 블록의 조명 평균값으로부터 예측하는 경우(Mode1)를 들 수 있다. 즉, 도 3에서 참조 영상#1(reference frame#1)의 블록
Figure 112008057611866-pct00008
의 평균값으로 예측하는 경우이다. 오차값(difference value)은 다음 수학식 1과 같다.
Figure 112008057611866-pct00009
또 다른 일실시예로서, 현재 블록과 이에 대응하는 다른 시점의 참조 영상 블록의 조명 평균값과의 차이를, 현재 블록과 참조 영상 블록의 각각 인접한 블록들끼리의 조명 평균값 차이로부터 예측하는 경우(Mode2)를 들 수 있다. 즉, 도 3에서 참조 영상1(reference frame#1)의 블록
Figure 112008057611866-pct00010
의 조명 평균값과의 차이를, 인접한 블록들(
Figure 112008057611866-pct00011
,
Figure 112008057611866-pct00012
) 끼리의 조명 평균값 차이로 예측하는 경우이다. 오차값은 다음 수학식 2와 같다.
Figure 112008057611866-pct00013
또 다른 일실시예로서, 현재 블록에 인접한 블록의 조명 평균값과 현재 블록에 대응되는 다른 시점의 참조 영상 블록의 조명 평균값 차이로부터 예측하는 경우(Mode3)를 들 수 있다. 즉, 인접한 블록
Figure 112008057611866-pct00014
의 조명 평균값과 참조 영상#1( reference frame#1)의 블록
Figure 112008057611866-pct00015
의 조명 평균값 차이로부터 예측하는 경우이다. 오차값은 다음 수학식 3과 같다.
Figure 112008057611866-pct00016
또 다른 일실시예로서, 현재 블록에 인접한 블록이 다른 시점의 참조 영상 블록의 인접한 블록으로부터 부호화된 경우, 현재 블록에 인접한 블록의 조명 평균값 예측 차이로부터 예측하는 경우(Mode4)를 들 수 있다. 즉,
Figure 112008057611866-pct00017
이 이미 참조 영상#2(reference frame#2)의 블록
Figure 112008057611866-pct00018
을 참조해서 부호화된 경우, 이웃 블록
Figure 112008057611866-pct00019
의 조명 평균값 예측 차이로 예측하는 경우이다. 오차값은 다음 수학식 4와 같다.
Figure 112008057611866-pct00020
상기 Mode2, Mode3, Mode4의 방법에서 인접한 블록 정보를 이용할 시, 바로 위의 블록 한 개의 정보만 이용하는 경우를 예로 들었지만, 일반적으로 현재 블록을 둘러싼 여러 이웃의 정보들을 조합하여 활용할 수 있다.
도 4는 본 발명을 적용한 일실시예로서, 다른 시점의 참조 영상 블록으로부터 현재 블록의 조명 평균 예측값을 유도하는 과정을 일반화하여 설명하기 위한 블록 구성도를 도시한 것이다.
상기 도 4에서는 현재 블록과 경계선(boundary)을 공유하는 이미 부호화된 블록들, 그리고 참조 블록과 경계선을 공유하는 블록들을 나타낸다. 이때, Mode2, Mode3, Mode4 방법의 식들은 각각 아래 수학식 5와 같이 일반화시킬 수 있다.
Figure 112008057611866-pct00021
Mode 2 :
Mode 3 :
Figure 112008057611866-pct00022
Mode 4 :
Figure 112008057611866-pct00023
Mode 4의 일반화된 식에서,
Figure 112008057611866-pct00024
Figure 112008057611866-pct00025
블록의 참조 블록이 참조 프레임(reference frame) #
Figure 112008057611866-pct00026
에 있을 때, 이 블록의 조명 평균값을 나타낸다.
상기 식들에서
Figure 112008057611866-pct00027
는 가중치가 되며, 예측에 이용하는 인접한 블록은 상기와 같이 경계선을 공유하는 것들만으로 국한되지 않으며, 상기 이웃들의 이웃들도 포함될 수 있으며, 또한 그 중 일부만 활용할 수도 있다. 이는
Figure 112008057611866-pct00028
로 조절할 수 있다. 이렇게 구한 오차값
Figure 112008057611866-pct00029
는 양자화한 후, 엔트로피 부호화하여 전송한다.
상기 모드들(Mode1, Mode2, Mode3, Mode4)의 참조 프레임(Reference frame)의 결정은 실제 비트스트림(bitstream) 단계까지 계산해 본 후, 율(rate)과 왜곡(distortion) 측면에서 최적인 것으로 찾는다. 상기 최적의 모드를 선택하는 방법의 일실시예들로서, 상기 획득된 오차값들 중에서 오차값이 최소가 되는 모드를 선택하는 방법, 또는 RD(Rate-Distortion) 관계식을 이용하는 방법 등을 들 수 있다.
상기 RD(Rate-Distortion) 관계식을 이용하는 방법은 실제로 각 모드에 대해서 실제 비트스트림(bitstream)까지 계산하는 단계를 모두 해본 후, 율(rate)과 왜곡(distortion) 측면에서 최적인 모드를 선택한다. 기존의 방식과 다른 점은, 블록 차분(block residual)값을 계산할 때, 현재 블록 및 참조블록에서 각 블록의 평균값을 제한 값들로부터 그 차이값을 계산한다는 점이다. 즉 아래 수학식 6과 같다.
Figure 112008057611866-pct00030
여기서,
Figure 112008057611866-pct00031
는 변이 벡터(disparity vector)를 나타내고,
Figure 112008057611866-pct00032
는 조명값(pixel value)을 나타낸다.
Figure 112008057611866-pct00033
는 주변 정보를 통해서 예측한 값과, 오차 값을 양자화한 후, 다시 복원된 값을 더해서 구한 값으로서, 이는 인코더와 디코더에서 동일한 값을 얻기 위함이다.
Figure 112008057611866-pct00034
은 참조 블록(reference block)의 조명 평균값이며, 복호된 영상이므로 인코더와 디코더에서 동일한 값이 된다. 그리고, 실제 적용에서는 시간적으로도 참조를 찾아서 한 후, 시공간 영역에서 최적인 것을 찾게 된다. 따라서, 조명 보상(illumination compensation)을 적용할지 여부의 식별 정보 또한 각 프레임과 각 블록에 대해서 0 또는 1로 지정이 되며, 이 또한 엔트로피 부호화를 적용한다.
상기 최적의 모드가 선택된 후에는 상기 선택된 모드만 부호화하여 전송할 수 있다. 또한, 상기 선택된 모드와 함께 상기 선택된 모드에 의해 획득된 오차값도 부호화하여 전송할 수 있다. 선택된 모드 정보는 인덱스(index)로 표현되며, 이 정보 역시 이웃 모드 정보로부터 예측할 수도 있으며, 현재 선택된 모드의 인덱스(index)와 예측된 모드의 인덱스(index) 값과의 오차값도 부호화하여 전송할 수 있다.
상기의 모드들은 모두 고려할 수도 있으며, 일부를 선택하거나, 이들 모드들 중 하나만 선택해서 적용할 수도 있다. 가능한 모든 경우 중, 단일 방법만을 사용하는 경우에는 모드 인덱스(mode index)를 따로 부호화하지 않아도 된다.
본 발명을 적용한 또 다른 실시예로서, 조명 평균값의 획득 및 조명 평균 예측값을 유도함에 있어서, 참조 영상과 부호화하려는 영상의 부호화하고 있는 현재 블록들에 대해서, 이미 복호화된 픽셀 값들을 이용할 수 있다.
기본적으로, 현재 블록의 조명 평균값을 예측할 때, 좌측과 상단의 픽셀들의 이미 복호화된 값들을 이용한다. 이들 픽셀들의 조명 평균값을 현재 블록의 조명 평균값으로 예측할 수 있다. 실제 비디오 영상을 부호화할 때, 매크로 블록을 기준으로 부호화를 한다. 그리고, 16x16 사이즈의 매크로 블록은 영상의 복잡도에 따라서, 16x8, 8x16, 8x8로 세분화되어 부호화하기도 하며, 각각의 8x8 블록은 다시 같은 방식으로 8x4, 4x8, 4x4블록으로 쪼개어질 수 있다. 각각의 경우에 하나의 매크로 블록을 기준으로 각 위치에 있는 작은 블록들의 조명 평균값을 예측하는 방법은 다양할 수 있다.
도 5는 본 발명을 적용한 일실시예로서, 조명 평균값의 획득 및 조명 평균 예측값을 유도함에 있어서, 블록의 좌측과 상단에 있는 픽셀들의 이미 복호화된 값들을 이용하는 것을 설명하기 위한 16x16 매크로 블록을 도시한 것이다.
도 5에 따르면, 16x16 매크로블록은 상단, 좌측에 있는 모든 픽셀값을 이용할 수 있다. 따라서, 현재 블록의 조명 평균값을 예측할 때, 상기 블록의 상단, 좌측에 있는 모든 픽셀(v1~v16, h1~h16)들의 조명 평균값을 계산하여 이로부터 현재 블록의 조명 평균값을 예측할 수 있다. 이 경우 B16x16 블록의 조명 평균값은 다음 수학식 7과 같다.
Figure 112008057611866-pct00035
도 6a 및 도 6b는 본 발명을 적용한 일실시예들로서, 블록이 분할된 경우 분할된 블록의 조명 평균값의 획득 및 조명 평균 예측값을 유도함에 있어서, 상기 분할된 블록을 둘러싸는 픽셀 전부를 이용하는 경우와, 상기 분할된 블록을 둘러싸는 픽셀들만을 이용하는 경우를 설명하기 위한 16x8 매크로 블록을 각각 도시한 것이다.
도 6a의 경우, 즉 상기 분할된 블록을 둘러싸는 픽셀 전부를 이용하는 경우, B16x8_0 및 B16x8_1 블록의 평균값은 다음 수학식 8과 같다.
Figure 112008057611866-pct00036
도 6b의 경우, 즉 상기 분할된 블록을 둘러싸는 픽셀들만을 이용하는 경우, B16x8_0 및 B16x8_1 블록의 조명 평균값은 각각 다음 수학식 9,10과 같다.
Figure 112008057611866-pct00037
Figure 112008057611866-pct00038
또한, 상기의 경우들에 있어서, 코너의
Figure 112008057611866-pct00039
도 포함하여 계산할 수도 있다. 이 경우 상기 도 6a 및 도 6b 경우의 B16x8_0 조명 평균값은 각각 다음 수학식 11,12와 같다.
Figure 112008057611866-pct00040
Figure 112008057611866-pct00041
또한, 상기의 경우들에 있어서, 코너의
Figure 112008057611866-pct00042
Figure 112008057611866-pct00043
포함하여 계산할 수도 있다. 이 경우 상기 도 6a 및 도 6b 경우의 B16x8_1 조명 평균값은 각각 다음 수학식 13,14와 같다.
Figure 112008057611866-pct00044
Figure 112008057611866-pct00045
도 7a 및 도 7b는 본 발명을 적용한 일실시예로서, 블록이 분할된 경우 분할된 블록의 조명 평균값의 획득 및 조명 평균 예측값을 유도함에 있어서, 상기 분할된 블록을 둘러싸는 픽셀 전부를 이용하는 경우와 상기 분할된 블록을 둘러싸는 픽셀들만을 이용하는 경우를 설명하기 위한 8x16 매크로 블록을 각각 도시한 것이다. 분할된 각 블록의 조명 평균값을 구하는 방법은 상기 도 6a 및 도 6b에서 구하는 방법과 동일하다.
도 8a 및 도 8b는 본 발명을 적용한 일실시예로서, 블록이 분할된 경우 분할된 블록의 조명 평균값의 획득 및 조명 평균 예측값을 유도함에 있어서, 상기 분할된 블록을 둘러싸는 픽셀 전부를 이용하는 경우와 상기 분할된 블록을 둘러싸는 픽셀들만을 이용하는 경우를 설명하기 위한 8x8 매크로 블록을 각각 도시한 것이다. 분할된 각 블록의 조명 평균값을 구하는 방법은 상기 도 6a 및 도 6b에서 구하는 방법과 동일하다.
상기의 방법들과 마찬가지로 8x8 블록은 더 세부블록으로 분할될 수 있고, 동일한 방법이 적용될 수 있다.
위와 같은 방식으로 부호화하려는 영상의 현재 블록과 참조 영상에서의 해당 블록 픽셀의 조명 평균값을 예측하여 각각
Figure 112008057611866-pct00046
,
Figure 112008057611866-pct00047
이라고 한다.
각 블록 내의 모든 픽셀에 대해서 각각의 조명 평균 예측값을 뺀 후에, 두 블록의 오차값을 다음 수학식 15와 같이 계산할 수 있다.
Figure 112008057611866-pct00048
여기서,
Figure 112008057611866-pct00049
는 변이 벡터(disparity vector)를 의미하고,
Figure 112008057611866-pct00050
는 픽셀값을 표현한다. 이 블록 오차가 가장 작은 참조 영상의 블록을 조명(illumination)이 보상된 최적 블록으로 선택한다. 이때, 추정된 변이 벡터(disparity vector)는
Figure 112008057611866-pct00051
가 된다. 실제 시스템에서는 조명 보상(illumination compensation)을 하지 않는 경우와 결과를 비교하여, 성능이 좋은 것을 선택한다.
위 방식의 한가지 변형으로는, 참조 영상 블록의 조명 평균값은 주위 픽셀값을 가지고 예측하는 것이 아니라, 실제 블록 내의 모든 픽셀들의 조명 평균값으로 직접 계산하는 경우가 있다.
다른 변형으로서, 상단과 좌측 이용 픽셀의 수를 늘리는 경우이다. 즉 바로 인접한 한층의 픽셀들만이 아니라, 인접한 2개 이상 층의 픽셀들을 이용할 수도 있다.
디코더 측에서는 식별 정보를 통해서 해당 블록의 조명 보상(illumination compensation) 여부를 결정할 수 있다. 조명 보상을 수행하게 되는 경우, 오차값
Figure 112008057611866-pct00052
에 대한 복호된 값을 먼저 구하고, 상기 예측 방법에 따라 예측 값을 구할 수 있다. 그리고 이 두 값을 더함으로써
Figure 112008057611866-pct00053
(=
Figure 112008057611866-pct00054
+ e)를 복호할 수 있다. 소위 상기 현재 블록의 예측자(predictor)로 불리는 예측 블록인 참조 블록(Reference block)으로부터
Figure 112008057611866-pct00055
을 빼 준 후, 차분 블록(residual block)값의 복호된 값에 더해줌으로써 현재 블록값을 최종적으로 구할 수 있다. 상기 현재 블록은 다음과 같이 복원될 수 있다.
B = 예측 블록(prediction block) + 차분 블록(residual block) + (
Figure 112008057611866-pct00056
+ e), 여기서 B는 현재 블록값을 나타내고, 예측 블록은 상기 현재 블록의 예측자를 나타낸다. 그리고,
Figure 112008057611866-pct00057
은 상기 현재 블록의 조명 보상 오프셋 예측값인 평균 픽셀값의 예측된 차이값을 나타내고, e는 상기에서 설명한 오차값을 나타낸다. 디코딩부는 상기 현재 블록의 조명 보상 오프셋값과 예측된 차이값 사이의 오차값을 획득할 수 있다. 그리고, 상기 획득된 오차값과 상기 예측된 차이값을 이용하여 상기 현재 블록의 조명 보상 오프셋 값을 복원할 수 있다.
도 9는 본 발명이 적용되는 일실시예로서, 현재 블록의 오프셋 값을 획득하는 과정을 설명하기 위한 도면을 나타낸다.
조명 보상은 움직임 추정(motion estimation) 과정에서 수행될 수 있다. 현재 블록과 후보 참조 블록(candidate reference block)의 유사성을 비교할 때 양 블록 사이의 조명 차이를 고려하여야 한다. 상기 조명 차이를 보상하기 위하여 새 로운 움직임 추정/움직임 보상(motion compensation)이 수행된다. 새로운 SAD는 아래 수학식 16,17을 이용하여 구할 수 있다.
Figure 112008057611866-pct00058
Figure 112008057611866-pct00059
여기서, Mc 는 현재 블록의 평균 화소값을 나타내고, Mr 은 참조 블록의 평균 화소값을 나타낸다. Ic(x,y) 는 현재 블록의 (x,y)좌표에서의 화소값을 나타내고, Ir(x+△x, y+△y) 는 참조 블록의 움직임 벡터 (△x,△y)일 때의 화소값을 나타낸다. 상기 수학식 16의 새로운 SAD에 기초하여 움직임 추정을 수행함으로써 상기 현재 블록과 상기 참조 블록 사이의 평균 화소값 차이가 획득될 수 있다. 상기 획득된 평균 화소값 차이를 오프셋 값(IC_offset)이라 한다.
조명 보상이 적용된 움직임 추정이 수행되는 경우, 오프셋 값과 움직임 벡터 가 구해지고 조명 보상은 상기 오프셋 값과 상기 움직임 벡터를 이용하여 수학식 18과 같이 수행될 수 있다.
Figure 112008057611866-pct00060
여기서, R(x,y)는 조명 보상이 수행된 오차값(residual)을 나타낸다.
상기 오프셋 값(IC_offset = Mc - Mr)은 디코딩부로 전송될 수 있다. 디코딩부에서의 조명 보상은 다음 수학식 19와 같이 수행될 수 있다.
Figure 112008057611866-pct00061
R'(x,y)는 복원된, 조명 보상이 수행된 오차값(residual)을 나타내고, I'c(x,y)는 복원된 현재 블록의 화소값을 나타낸다.
현재 블록을 복원하기 위해서는 오프셋 값이 디코딩부에 전송되어야 하고, 상기 오프셋 값은 이웃 블록들의 정보로부터 예측될 수 있다. 상기 오프셋 값을 코딩할 비트수를 더 감소시키기 위하여, 현재 블록의 오프셋 값(IC_offset)과 이웃 블록의 오프셋 값(IC_offset_pred)과의 차이값(RIC_offset)만 보낼 수 있다. 이는 아래 수학식 20와 같다.
RIC _ offset = IC_offset ― IC_offset_pred
도 10은 본 발명이 적용되는 일실시예로서, 현재 블록에 대한 조명 보상을 수행하는 과정을 설명하기 위한 흐름도를 나타낸다.
현재 블록의 조명 보상 플래그가 0 인 경우에는 현재 블록에 대한 조명 보상이 수행되지 않는다. 플래그가 1인 경우에 현재 블록의 오프셋 값을 복원하는 과정이 수행된다. 이 때, 현재 블록의 프리딕터를 획득함에 있어서, 이웃 블록의 정보를 이용할 수 있다. 먼저 현재 블록의 참조 번호와 이웃 블록의 참조 번호가 동일한지 여부를 판단한다(S210). 상기 판단 결과에 기초하여 현재 블록의 조명 보상을 위한 프리딕터를 획득한다(S211). 상기 획득된 프리딕터를 이용하여 현재 블록의 오프셋 값을 복원한다(S212). 여기서, 상기 현재 블록의 참조 번호와 이웃 블록의 참조 번호가 동일한지 여부를 판단하고(S210), 그 판단 결과에 기초하여 프리딕터를 획득하는 단계(S211)에 대해서 보다 상세히 살펴볼 필요가 있다. 이에 대해서는 도 11에서 설명하도록 한다.
도 11은 본 발명이 적용되는 일실시예로서, 현재 블록과 이웃 블록의 참조 번호 동일 여부에 기초하여 프리딕터를 획득하는 방법을 설명하기 위한 흐름도를 나타낸다.
디코딩부에서는 조명 보상을 수행하기 위하여 비디오 신호로부터 현재 블록의 이웃 블록들의 플래그 정보 및 오프셋 값, 상기 현재 블록과 그 이웃 블록들의 해당 참조 블록들의 참조 번호 등을 추출하고, 이러한 정보들을 이용하여 현재 블 록의 프리딕터를 획득할 수 있다. 그리고, 현재 블록의 오프셋 값과 상기 프리딕터 사이의 차이값(residual)을 획득하고, 상기 획득된 차이값과 상기 프리딕터를 이용하여 상기 현재 블록의 오프셋 값을 복원할 수 있다.
이때, 현재 블록의 프리딕터를 획득함에 있어서, 이웃 블록의 정보를 이용할 수 있다. 예를 들어, 상기 이웃 블록의 오프셋 값을 이용하여 상기 현재 블록의 오프셋 값을 예측할 수 있는데, 이에 앞서 현재 블록의 참조 번호(reference index)와 상기 이웃 블록의 참조 번호가 동일한지 여부를 확인하고, 그 확인 결과에 따라 어떤 이웃 블록을 이용할지, 또는 어떤 값을 이용할지가 결정될 수 있다. 또한, 상기 이웃 블록의 플래그 정보가 참인지 여부를 확인하고, 그 확인 결과에 따라 상기 이웃 블록을 이용할지를 결정할 수 있다.
첫번째 실시예로, 현재 블록의 참조 번호와 동일한 참조 번호를 가지는 이웃 블록이 존재하는지 여부를 판단한다(S220). 상기 판단 결과, 현재 블록의 참조 번호와 동일한 참조 번호를 가지는 이웃 블록이 1개만 존재하는 경우, 상기 참조 번호가 동일한 이웃 블록의 오프셋 값을 현재 블록의 프리딕터에 할당하게 된다(S221). 상기 S220 단계의 판단 결과에 따라 현재 블록의 참조 번호와 동일한 참조 번호를 가지는 이웃 블록이 2개 존재하는 경우에는 동일한 참조 번호를 가지는 2개의 이웃 블록들의 오프셋 값들의 평균값이 현재 블록의 프리딕터에 할당된다(S222). 또한, 상기 S220 단계의 판단 결과에 따라 현재 블록의 참조 번호와 동일한 참조 번호를 가지는 이웃 블록이 3개 존재하는 경우에는 동일한 참조 번호를 가지는 3개의 이웃 블록들의 오프셋 값들의 중간값(Median)이 현재 블록의 프리딕 터에 할당된다(S223). 또한, 상기 S220 단계의 판단 결과에 따라 현재 블록의 참조 번호와 동일한 참조 번호를 가지는 이웃 블록이 존재하지 않는 경우, 현재 블록의 프리딕터는 "0"으로 할당된다(S224). 위의 참조 번호의 동일성을 확인하는 과정(S220)에서 해당 이웃 블록의 플래그가 1인지 여부를 확인하는 조건을 포함할 수 있다.
두번째 실시예로서, 이웃 블록이 현재 블록의 참조 번호와 동일한 참조 번호를 가지는지 여부를 확인하고, 상기 이웃 블록의 플래그가 1인지를 확인한다. 상기 두가지 조건이 모두 만족되는 이웃 블록이 있으면, 그 이웃 블록의 오프셋 값을 프리딕터로 할 수 있다. 이때, 이웃 블록을 체크하는 순서는 좌측 -> 상단 -> 상우측 -> 상좌측 순으로 할 수도 있고, 상단 -> 좌측 -> 상우측 -> 상좌측 순으로 할 수도 있다. 상기 두 가지 조건이 모두 만족되는 이웃 블록이 없고, 상기 3개의 이웃 블록들의 플래그들(예를 들어, 좌측, 상단, 상우측(또는 상좌측)에 있는 3개의 이웃블록의 플래그들)이 1이면, 상기 3개의 이웃 블록의 오프셋 값들의 중간값(median)을 프리딕터로 하고, 이 또한 만족하지 않으면, 현재 블록의 프리딕터는 "0"으로 할당될 수 있다.
도 12는 본 발명이 적용되는 일실시예로서, 현재 블록의 프리딕션 타입에 기초하여 조명 보상을 수행하는 방법을 설명하기 위한 흐름도를 나타낸다.
현재 블록의 프리딕션 타입에 따라 참조하는 이웃 블록이 달라질 수 있다. 예를 들어, 현재 블록과 이웃 블록의 형상이 동일한 경우에는 현재 블록은 이웃 블록들의 중간값(Median)을 이용하여 예측을 수행할 수 있다. 그러나, 그 형상이 다 른 경우에는 다른 방법이 적용될 수 있다.
예를 들어, 현재 블록의 좌측에 있는 블록이 여러 블록으로 나뉘어져 있을 경우 그 중 가장 상단에 위치한 블록이 예측을 위해 사용될 수 있다. 또는 현재 블록의 상단에 있는 블록이 여러 개로 나뉘어져 있을 경우 그 중 가장 좌측에 위치한 블록이 예측을 위해 사용될 수 있다. 이와 같이 현재 블록의 프리딕션 타입이 어느 이웃 블록을 사용할 것인지에 따라 그 예측값이 달라질 수 있다. 따라서, 본 발명의 일실시예에서는 먼저 현재 블록의 프리딕션 타입에 따라 참조하는 이웃 블록을 결정할 수 있다(S231). 상기 결정된 이웃 블록의 참조 번호와 상기 현재 블록의 참조 번호가 동일한지 여부를 판단할 수 있다(S232). 여기서, 위의 참조 번호의 동일여부를 확인하는 과정(S232)에서 해당 이웃 블록의 플래그가 1인지 여부를 확인하는 조건도 포함할 수 있다. 상기 판단 결과에 기초하여 현재 블록의 조명 보상을 위한 프리딕터를 획득할 수 있다(S233). 상기 획득된 프리딕터를 이용하여 현재 블록의 오프셋 값을 복원함으로써 조명 보상을 수행할 수 있다(S234). 여기서, 상기 S232 단계의 결과에 기초하여 S233 단계를 수행하는 과정에 대하여 구체적 실시예를 들어 설명하도록 한다. 이 부분에 대한 구체적 실시예들은 상기 도 11에서 설명한 방식과 유사한 방식으로 적용될 수 있다.
예를 들어, 현재 블록의 프리딕션 타입이 현재 블록의 좌측 블록을 참조하여 예측을 수행하는 경우라면, 상기 현재 블록의 좌측 블록의 참조 번호가 상기 현재 블록의 참조 번호와 동일한지 여부를 판단한다. 상기 판단 결과, 참조 번호가 동일한 경우 상기 좌측 블록의 오프셋 값을 현재 블록의 프리딕터에 할당한다. 또한, 현재 블록의 프리딕션 타입이 현재 블록의 좌측 블록과 상단 블록 2개를 참조하여 예측을 수행하는 경우, 또는 현재 블록의 좌측 블록과 상단 블록, 그리고 우측 상단 블록 3개를 참조하는 경우 등 각각의 경우는 상기 도 11에서 설명한 방식과 동일하게 적용된다.
도 13은 본 발명이 적용되는 일실시예로서, 해당 블록의 조명 보상 수행여부를 나타내는 플래그 정보를 이용하여 조명 보상을 수행하는 방법을 설명하기 위한 흐름도를 나타낸다.
본 발명의 다른 실시예로, 현재 블록의 오프셋 값을 복원할 때, 상기 현재 블록의 조명 보상 수행 여부를 나타내는 플래그 정보(IC_flag)도 이용할 수 있다. 또는 상기 도 11에서 설명했던 참조 번호를 확인하는 방법과 플래그 정보를 예측하는 방법 모두를 이용하여 상기 프리딕터를 획득할 수도 있다. 먼저 현재 블록의 참조 번호와 동일한 참조 번호를 가지는 이웃 블록이 존재하는지 여부를 판단할 수 있다(S241). 상기 판단 결과에 기초하여 현재 블록의 조명 보상을 위한 프리딕터를 획득할 수 있다. 이때 이웃 블록의 플래그가 1인지 여부를 판단 기준으로 포함할 수 있다(S242). 또한 상기 판단 결과에 기초하여 현재 블록의 플래그 정보를 예측할 수 있다(S243). 상기 획득된 프리딕터와 상기 예측된 플래그 정보를 이용하여 현재 블록의 오프셋 값을 복원함으로써 조명 보상을 수행할 수 있게 된다(S244). 여기서, 상기 S242 단계는 상기 도 11에서 설명한 방식과 동일하게 적용될 수 있다. 그리고 상기 S243 단계는 이하 도 14에서 상세하게 설명하도록 한다.
도 14는 본 발명이 적용되는 일실시예로서, 현재 블록과 이웃 블록의 참조 번호 동일 여부에 기초하여 현재 블록의 플래그 정보를 예측하는 방법을 설명하기 위한 흐름도를 나타낸다.
본 발명의 일실시예에서는, 먼저 현재 블록의 참조 번호와 동일한 참조 번호를 가지는 이웃 블록이 존재하는지 여부를 판단할 수 있다(S250). 상기 판단 결과, 현재 블록의 참조 번호와 동일한 참조 번호를 가지는 이웃 블록이 1개만 존재하는 경우, 상기 참조 번호가 동일한 이웃 블록의 플래그 정보로부터 현재 블록의 플래그 정보를 예측할 수 있다(S251). 상기 S250 단계의 판단 결과에 따라 현재 블록의 참조 번호와 동일한 참조 번호를 가지는 이웃 블록이 2개 존재하는 경우에는 동일한 참조 번호를 가지는 2개의 이웃 블록들의 플래그 정보 중 어느 하나의 플래그 정보로부터 현재 블록의 플래그 정보를 예측할 수 있다(S252).
또한, 상기 S250 단계의 판단 결과에 따라 현재 블록의 참조 번호와 동일한 참조 번호를 가지는 이웃 블록이 3개 존재하는 경우에는 동일한 참조 번호를 가지는 3개의 이웃 블록들의 플래그 정보 중 중간값(Median)으로부터 현재 블록의 플래그 정보를 예측할 수 있다(S253). 또한, 상기 S250 단계의 판단 결과에 따라 현재 블록의 참조 번호와 동일한 참조 번호를 가지는 이웃 블록이 존재하지 않는 경우, 현재 블록의 플래그 정보 예측은 수행하지 않을 수 있다(S254).
도 15는 본 발명이 적용되는 일실시예로서, 현재 블록이 2개의 참조 블록을 이용하여 예측 코딩된 경우에 있어서 조명 보상을 수행하는 방법을 설명하기 위한 흐름도이다.
조명 보상을 수행함에 있어서, 현재 블록이 2개의 참조 블록을 이용하여 예 측 코딩된 경우에는 디코더에서 각 참조 블록에 대응되는 오프셋 값을 직접적으로 알 수 없게 된다. 왜냐하면, 현재 블록의 오프셋 값을 획득할 때, 상기 2개의 참조 블록을 평균한 화소값을 이용하였기 때문이다. 따라서, 본 발명의 일실시예에서는 각 참조 블록마다 대응되는 오프셋 값을 획득하여 보다 정확한 예측을 가능하게 할 수 있다. 먼저, 현재 블록의 프리딕터와 오차값을 이용하여 현재 블록의 오프셋 값을 복원한다(S261). 현재 블록이 2개의 참조 블록을 이용하여 예측 코딩된 경우, 상기 오프셋 값을 이용하여 각 참조 블록에 대응하는 오프셋 값을 획득한다(S262). 이는 아래 수학식 21과 같다.
Figure 112008057611866-pct00062
Figure 112008057611866-pct00063
Figure 112008057611866-pct00064
Figure 112008057611866-pct00065
Figure 112008057611866-pct00066
IC_Offset = - * - *
IC_OffsetL0 =
Figure 112008057611866-pct00067
-
Figure 112008057611866-pct00068
= IC_Offset + (
Figure 112008057611866-pct00069
- 1)*
Figure 112008057611866-pct00070
+
Figure 112008057611866-pct00071
*
Figure 112008057611866-pct00072
IC_OffsetL1 =
Figure 112008057611866-pct00073
-
Figure 112008057611866-pct00074
= IC_Offset +
Figure 112008057611866-pct00075
*
Figure 112008057611866-pct00076
+ (
Figure 112008057611866-pct00077
- 1)*
Figure 112008057611866-pct00078
.
여기서, mc 는 현재 블록의 평균 화소값을 나타내고, mr ,1 , mr ,2는 각각 참조 블록의 평균 화소값을 나타낸다. w1 , w2 는 쌍방향 예측 코딩(bi-predictive coding)시의 가중치 계수를 나타낸다.
상기 조명 보상 방법의 일실시예로서, 상기 시스템은 각 참조 블록에 대응하는 정확한 오프셋 값을 별도로 획득하여 이용할 수 있으므로 보다 정확한 예측 코 딩을 할 수 있게 된다. 상기 현재 블록의 오프셋 값을 복원할 때(S262), 복원된 오프셋 차이값(residual)과 프리딕터 값을 더하여 오프셋 값을 구할 수 있다. 이때, List 0의 참조 픽쳐와, List 1의 참조 픽쳐 각각에 대한 프리딕터를 구하고, 이들을 조합하여 현재블록의 오프셋 값을 복원할 때 필요한 프리딕터 값을 구할 수 있다.
또 다른 실시예로서, 본 발명은 스킵 매크로블록의 경우에도 적용될 수 있다. 본 실시예에서는 예측이 조명 보상에 관한 정보를 획득하기 위하여 수행된다. 조명 보상 수행 여부를 나타내는 플래그 정보는 주변 블록에서 예측된 값을 쓸 수 있고, 현재 블록의 오프셋 값은 주변 블록에서 예측된 오프셋 값을 쓸 수 있다. 예를 들어, 플래그 정보가 참이라면 오프셋 값은 참조 블록에 더해지게 된다. 구체적 예로서, P-Skip 모드가 적용되는 매크로블록의 경우, 좌측과 상단의 이웃 블록들의 플래그와 오프셋 값을 이용해서 예측하여 상기 매크로블록의 플래그와 오프셋 값을 구할 수 있다. 한개의 블록만 플래그가 1이라면 상기 현재 블록의 플래그와 오프셋 값은 상기 블록의 플래그와 오프셋값으로 설정될 수 있다. 두개의 블록이 모두 플래그 1을 가지면, 상기 현재 블록의 플래그는 1이 되고, 오프셋 값은 두 이웃 블록의 오프셋값의 평균값으로 설정될 수 있다.
또 다른 실시예로서, 본 발명은 직접 예측 모드(예를 들어, Direct, B-Skip 모드)에도 적용될 수 있다. 본 실시예에서는 예측이 조명 보상에 관한 정보를 획득하기 위하여 수행된다. 상기의 다양한 플래그, 오프셋 예측 방법들을 적용해서 각각의 프리딕터를 구할 수 있다. 이 값을 현재 블록의 실제 플래그, 오프셋 값으로 설정할 수 있다. 각 블록이 한쌍의 플래그, 오프셋 정보만을 갖고 있다면, 각각에 대해서 하나씩의 예측값을 구하면 된다. 이때 참조블록이 2개인 경우, 참조 번호 체크를 할 경우에는 상기 현재 블록과 이웃 블록의 각 참조 번호가 모두 일치하는 지를 체크한다. 또한, 각 참조블록에 대해서 각각의 오프셋 값을 가지고 있는 경우에는 예측된 제 1 플래그 정보와 예측된 제 1 오프셋 값, 예측된 제 2 플래그 정보와 예측된 제 2 오프셋 값이 획득될 수 있다. 이 경우, 플래그 정보는 주변 블록에서 예측된 값을 쓸 수 있고, 2개의 참조 블록의 오프셋 값은 각각 상기 예측된 제 1 오프셋 값과 제 2 오프셋 값을 쓸 수 있다. 여기서 현재 블록의 오프셋 값은 각 참조 블록의 오프셋 값의 평균값을 쓸 수 있다.
직접 예측 모드와 스킵 매크로블록의 경우 플래그 정보를 부호화/복호화할 수도 있다. 즉, 플래그 값에 따라 오프셋 값이 더해질 수도 있고, 그렇지 않을 수도 있다. 또한, 오프셋 값과 예측된 오프셋 값 사이의 오차값을 부호화/복호화할 수도 있다. 이 경우 좀더 정확하게 복원될 수 있으며, RD측면에서 최적인 것을 선택하도록 할 수도 있다. 또한, 본 명세서에서 설명한 예측 과정에서 참조 픽쳐가 이용가능하지 않은 경우, 즉 참조 픽쳐 번호가 1보다 작은 경우는 플래그 정보 또는 예측된 플래그 정보가 거짓이 될 수 있고, 오프셋 값 또는 예측된 오프셋 값은 0으로 설정될 수 있다.
또 다른 실시예로서, 본 발명은 엔트로피 코딩에도 적용될 수 있다. 플래그 정보에 대해서는 이웃 블록(예를 들어, 현재 블록의 좌측 블록과 상위 블록)의 플래그 값에 따라 3개의 컨텍스트를 생각할 수 있다.
플래그 값이 참일 경우는 1, 거짓일 경우는 0으로 변환하면 각 경우에 대해서 두 값을 합하면 3가지 경우가 나온다. 이러한 3개의 컨텍스트를 이용하여 플래그 정보를 부호화/복호화할 수 있다. 오프셋의 예측 오차값에 대해서는 예를 들어, 변환 계수 레벨 코딩(transform coefficient levels coding)에서와 같은 방법을 사용할 수 있다. 즉 UEG0로 이진화가 수행되고 최초 빈(first bin) 값에 대해서 컨텍스트 모델 하나, 유너리 프리픽스 파트(unary prefix part)의 나머지 빈(bin) 값들에 대해서 컨텍스트 모델 하나 적용할 수 있다. 사인 비트(sign bit)는 바이패스 모드(bypass mode)로 부호화/복호화될 수 있다. 플래그 정보에 대해서 다른 실시예로서, 예측된 플래그 정보의 값에 따라 2개의 컨텍스트를 생각할 수 있으며 이를 이용해서 부호화/복호화할 수 있다.
도 16은 본 발명이 적용된 실시예로서, 현재 블록의 조명 보상 수행여부를 나타내는 플래그 정보와 현재 블록의 오프셋 값을 이용하여 조명 보상을 수행하는 과정을 설명하기 위한 흐름도를 나타낸다.
디코딩부에서는 조명 보상을 수행하기 위하여 비디오 신호로부터 다양한 정보, 예를 들어, 상기 현재 블록의 이웃 블록들의 플래그 정보 및 오프셋 값, 상기 현재 블록과 그 이웃 블록들의 해당 참조 블록들의 인덱스 정보 등을 추출할 수 있다. 그리고, 이러한 정보들을 이용하여 상기 현재 블록의 프리딕터를 획득할 수 있다. 상기 디코딩부는, 현재 블록의 오프셋 값과 상기 프리딕터 사이의 차이값(residual)을 획득하고, 상기 획득된 차이값과 상기 프리딕터를 이용하여 상기 현재 블록의 오프셋 값을 복원할 수 있다. 이때, 현재 블록의 오프셋 값을 복원할 때, 상기 현재 블록의 조명 보상 수행 여부를 나타내는 플래그 정보(IC_flag)를 이용할 수 있다.
상기 디코딩부는 비디오 신호로부터 현재 블록의 조명보상 수행여부를 나타내는 플래그 정보를 획득한다(S271). 상기 플래그 정보에 따라 조명보상이 수행되는 경우, 상기 현재 블록의 평균 화소값과 참조 블록의 평균 화소값의 차이를 나타내는 현재 블록의 오프셋 값을 복원할 수 있다(S272). 이처럼, 조명 보상 기술은 서로 다른 픽쳐에 속한 블록들의 평균 화소값의 차이값을 코딩한다. 각 블록에 대해서 조명 보상 기술의 적용 여부를 나타내는 플래그가 사용될 때, 해당 블록이 P 슬라이스에 속한 블록인 경우에는 하나의 플래그 정보와 하나의 오프셋 값을 부호화/복호화하면 된다. 그러나, 해당 블록이 B 슬라이스에 속한 블록인 경우에는 여러 가지 방법이 가능할 수 있다. 이하 도 17a ~ 도 17b에서 상세하게 설명하도록 한다.
도 17a ~ 도 17b는 본 발명이 적용된 일실시예로서, 각각 P 슬라이스 및 B 슬라이스에 속한 블록에 대해 플래그 정보와 오프셋 값을 이용하여 조명 보상을 수행하는 방법을 설명하기 위해 나타낸 것이다.
상기 도 17a에서, "C"는 현재 블록(C)을 나타내고, "N"는 현재 블록(C)에 이웃하는 블록을, "R"은 현재 블록(C)이 참조하는 블록을, "S"는 현재 블록(C)에 이웃하는 블록(N)이 참조하는 블록을 나타낸다. "mc"는 현재 블록의 평균 화소값을 나타내고, "mr"은 현재 블록이 참조하는 블록의 평균 화소값을 나타낸다. 현재 블 록(C)의 오프셋 값을 "IC_offset" 이라 하면, IC_offset = mc - mr 이 된다.
마찬가지로 이웃 블록(N)의 오프셋 값을 "IC_offset_pred"라 하면, 인코딩부에서는 현재 블록(C)의 오프셋 값인 "IC_offset"을 복원하기 위해 그 값을 그대로 전송하지 않고, 현재 블록의 오프셋 값(IC_offset)과 이웃 블록의 오프셋 값(IC_offset_pred)과의 차이값(RIC_offset)만을 보낼 수 있다. 여기서, RIC _ offset은 상기 수학식 20과 같다.
상기 이웃 블록의 플래그 정보 또는 오프셋 값으로부터 현재 블록의 프리딕터를 생성할 때는 다양한 방법이 적용될 수 있다. 예를 들어, 이웃 블록 하나만의 정보를 이용할 수도 있고, 2 이상의 이웃 블록의 정보를 이용할 수도 있다. 2 이상의 이웃 블록의 정보를 이용하는 경우에는 평균값을 이용할 수도 있고, 중간값(median)을 이용할 수도 있다. 이처럼, 현재 블록이 하나의 참조 블록을 이용하여 예측 코딩된 경우에는 하나의 오프셋 값과 하나의 플래그 정보를 이용하여 조명 보상을 수행할 수 있다.
그러나, 해당 블록이 B 슬라이스에 속한 블록인 경우, 즉 현재 블록이 2 이상의 참조 블록들을 이용하여 예측 코딩된 경우에는 여러 가지 방법이 가능할 수 있다.
예를 들어, 도 17b에서 "C"는 현재 블록(C)을 나타내고, "N"은 현재 블록(C)에 이웃하는 블록을, "R0"는 현재 블록이 참조하는 List 0의 참조 픽쳐 1에 있는 참조 블록을, "S0"는 이웃 블록이 참조하는 List 0의 참조 픽쳐 1에 있는 참조 블 록을 나타낸다고 가정한다. 그리고, "R1"은 현재 블록이 참조하는 List 1의 참조 픽쳐 3에 있는 참조 블록을, "S0"는 이웃 블록이 참조하는 List 1의 참조 픽쳐 3에 있는 참조 블록을 나타낸다고 가정한다. 이 때, 현재 블록의 플래그 정보와 오프셋 값은 각 참조 블록에 대해 존재하므로 각각 두 개의 값이 존재한다. 따라서, 상기 플래그 정보와 오프셋 값을 이용함에 있어서, 각각 적어도 하나 이상을 이용할 수 있다.
첫번째 예로, 움직임 보상을 통하여 두 개의 참조 블록에 대한 정보의 조합으로 현재 블록의 프리딕터가 구해질 수 있다. 여기서, 현재 블록에 조명 보상를 적용할지 여부를 하나의 플래그 정보로 나타내고, 상기 플래그 정보가 참인 경우, 상기 현재 블록과 상기 프리딕터로부터 하나의 오프셋 값을 획득하여 부호화/복호화를 수행할 수 있다.
두번째 예로, 움직임 보상을 수행하는 과정에서 두 개의 참조 블록에 대해서 각각 조명 보상을 적용할지 여부가 결정될 수 있다. 각각의 참조 블록에 대해서 플래그 정보가 부여되고, 상기 플래그 정보를 이용하여 획득된 하나의 오프셋 값이 부호화/복호화될 수 있다. 이 경우, 플래그 정보는 참조 블록을 기준으로 2개, 오프셋 값은 현재 블록을 기준으로 1개 사용될 수 있다.
세번째 예로, 현재 블록을 기준으로, 이 블록에 대해서 조명 보상을 적용할 것인지 여부를 하나의 플래그 정보에 나타낼 수 있다. 그리고, 두 개의 참조 블록에 대해서 각각의 오프셋 값이 부호화/복호화될 수 있다. 부호화 과정에 있어서, 어느 한쪽의 참조 블록에 대해서 조명 보상을 적용하지 않는 경우에는 그에 해당하 는 오프셋 값을 0으로 한다. 이 경우, 플래그 정보는 현재 블록을 기준으로 1개, 오프셋 값은 참조 블록을 기준으로 2개 사용될 수 있다.
네번째 예로, 각 참조 블록에 대해서 각각의 플래그 정보와 오프셋 값이 부호화/복호화될 수 있다. 이 경우, 플래그 정보와 오프셋 값은 모두 참조 블록을 기준으로 각각 2개씩 사용될 수 있다.
상기 첫번째~네번째 예의 경우에 대해서, 오프셋 값은 그대로 부호화되지 않고, 이웃 블록의 오프셋 값으로부터 예측한 후, 그 오차값만을 부호화할 수 있다.
도 18은 본 발명이 적용되는 일실시예로서, 현재 블록이 2개의 참조 블록을 이용하여 예측 코딩된 경우에 있어서 조명 보상을 수행하는 방법을 설명하기 위한 흐름도이다.
현재 블록이 B 슬라이스에 속한 블록인 경우, 조명 보상을 수행하기 위하여 비디오 신호로부터 상기 현재 블록의 이웃 블록들의 플래그 정보 및 오프셋 값, 상기 현재 블록과 그 이웃 블록들의 해당 참조 블록들의 인덱스 정보 등을 추출하고, 이러한 정보들을 이용하여 현재 블록의 프리딕터를 획득할 수 있다. 그리고, 현재 블록의 오프셋 값과 상기 프리딕터 사이의 차이값(residual)을 획득하고, 상기 획득된 차이값과 상기 프리딕터를 이용하여 상기 현재 블록의 오프셋 값을 복원할 수 있다. 이때, 현재 블록의 오프셋 값을 복원할 때, 상기 현재 블록의 조명 보상 수행 여부를 나타내는 플래그 정보(IC_flag)를 이용할 수 있다.
상기 디코딩부는, 비디오 신호로부터 현재 블록의 조명보상 수행여부를 나타내는 플래그 정보를 획득할 수 있다(S291). 상기 플래그 정보에 따라 조명보상이 수행되는 경우, 상기 현재 블록의 평균 화소값과 참조 블록의 평균 화소값의 차이를 나타내는 현재 블록의 오프셋 값을 복원할 수 있다(S292).
그런데, 이와 같이 현재 블록이 2개의 참조 블록을 이용하여 예측 코딩된 경우에는 디코더에서 각 참조 블록에 대응되는 오프셋 값을 직접적으로 알 수 없게 된다. 왜냐하면, 현재 블록의 오프셋 값을 획득할 때, 상기 2개의 참조 블록을 평균한 화소값을 이용하였기 때문이다. 따라서, 본 발명의 일실시예에서는 각 참조 블록마다 대응되는 오프셋 값을 획득하여 보다 정확한 예측을 가능하게 할 수 있다. 따라서, 현재 블록이 2개의 참조 블록을 이용하여 예측 코딩된 경우, 상기 오프셋 값을 이용하여 각 참조 블록에 대응하는 오프셋 값을 획득할 수 있다(S293). 이는 아래 수학식 22와 같다.
IC_offset = mc - w1 * mr ,1 - w2 * mr ,2
IC_offsetL0 = mc - mr ,1 = IC_offset + (w1-1)* mr ,1 + w2 * mr ,2
IC_offsetL1 = mc - mr ,2 = IC_offset + w1 * mr ,1 + (w2 - 1) * mr ,2.
여기서, mc 는 현재 블록의 평균 화소값을 나타내고, mr ,1 , mr ,2는 각각 참조 블록의 평균 화소값을 나타낸다. w1 , w2 는 쌍방향 예측 코딩(bi-predictive coding)시의 가중치 계수를 나타낸다.
이러한 방법으로 조명 보상을 수행하게 되는 경우, 각 참조 블록에 대응하는 정확한 오프셋 값을 별도로 획득하여 이용할 수 있게 되므로 보다 정확한 예측 코딩을 할 수 있게 된다. 상기 현재 블록의 오프셋 값을 복원할 때, 복원된 오프셋 차이값(residual)과 프리딕터 값을 더하여 오프셋 값을 획득할 수 있다. 이 때, List0, List1 각각에 대한 프리딕터를 구하고, 이들을 조합하여 현재 블록의 오프셋 값을 복원할 때 필요한 프리딕터 값을 구할 수 있다.
도 19는 본 발명이 적용되는 일실시예로서, 현재 블록의 조명 보상 수행 여부를 나타내는 플래그 정보를 이용하여 조명 보상을 수행하는 과정을 설명하기 위한 흐름도를 나타낸다.
조명 보상 기술은 카메라 사이의 조명 또는 색상(color) 차이를 보상하기 위한 것이다. 이 기술은 좀더 확장하여, 같은 카메라에서 획득된 시퀀스 영상들 사이에서도 적용할 수 있다. 이 기술을 통해서 조명이나 색상 차이가 움직임 추정에 크게 영향을 미치지 않도록 할 수 있다. 그러나, 실제 부호화 과정에서는 조명 보상의 적용 여부를 나타내는 플래그 정보를 사용하게 된다. 조명 보상의 적용 범위는 시퀀스(sequence), 시점(view), GOP(Group Of Picture), 픽쳐(picture), 슬라이스(slice), 매크로블록(macroblock), 서브블록(sub-block) 등이 될 수 있다.
작은 영역 범위에 조명 보상 기술이 쓰이면, 좀더 로컬(local)한 영역에 대해서 조절이 가능하지만, 그대신 플래그 정보를 위한 비트가 그만큼 많이 소요된다. 또한, 많은 경우에 조명 보상 기술이 필요없을 수도 있다. 따라서, 각 영역 범위 별로 조명 보상 기술의 사용 여부를 나타내는 플래그 비트를 할당함으로써, 효과적으로 조명 보상 기술을 사용할 수 있게 된다. 먼저 비디오 신호의 일정 계층에 대해 조명 보상을 수행하도록 유도하는 플래그 정보를 획득할 수 있다(S301).
예를 들어, 각 영역 범위 별로 다음과 같이 플래그 정보를 설정할 수 있다. 시퀀스 계층에 대해서는 "seq_IC_flag", 시점 계층에 대해서는 "view_IC_flag", GOP 계층에 대해서는 "GOP_IC_flag", 픽쳐 계층에 대해서는 "pic_IC_flag", 슬라이스 계층에 대해서는 "slice_IC_flag", 매크로블록 계층에 대해서는 "mb_IC_flag", 블록 계층에 대해서는 "blk_IC_flag" 로 플래그 비트를 할당할 수 있다. 이에 대해서는 도 20a ~ 도 20c에서 상세히 설명하도록 한다. 그리고, 상기 플래그 정보에 따라 조명 보상이 수행된 상기 비디오 신호의 일정 계층을 디코딩할 수 있게 된다(S302).
도 20a ~ 도 20c는 본 발명이 적용된 일실시예로서, 현재 블록의 조명 보상 수행하도록 유도하는 플래그 정보의 사용 범위를 설명하기 위해 나타낸 것이다.
조명 보상을 수행하도록 유도하는 플래그 정보의 적용 범위를 계층별로 구분할 수 있다. 예를 들어, 상기 도 20a ~ 도 20b에서처럼, 시퀀스 계층에 대해서는 "seq_IC_flag"(311), 시점 계층에 대해서는 "view_IC_flag"(312), GOP 계층에 대해서는 "GOP_IC_flag"(313), 픽쳐 계층에 대해서는 "pic_IC_flag"(314), 슬라이스 계층에 대해서는 "slice_IC_flag"(315), 매크로블록 계층에 대해서는 "mb_IC_flag"(316), 블록 계층에 대해서는 "blk_IC_flag"(317) 로 나타낼 수 있다.
여기서, 각 플래그는 1비트 정보이며, 상기 플래그들은 적어도 하나 이상 존재할 수 있다. 또한, 시퀀스/시점/픽쳐/슬라이스 범위 등의 플래그들은 해당 파라미터 세트 또는 헤더에 위치할 수 있으며, 또는 다른 파라미터 세트에도 위치할 수 있다. 예를 들어, "seq_IC_flag"(311)는 시퀀스 파라미터 세트(sequence parameter set)에 위치할 수 있고, "view_IC_flag"(312)는 시점 파라미터 세트(view parameter set)에 위치할 수 있으며, "pic_IC_flag"(314)는 픽쳐 파라미터 세트(picture parameter set)에 위치할 수 있다. 또한, "slice_IC_flag"(315)는 슬라이스 헤더에 위치할 수 있다.
상기 플래그 정보가 2이상 존재하는 경우, 2이상의 일정 계층 중 하위 계층의 조명 보상 수행 여부는 상위 계층의 조명 보상 수행 여부에 의해 제어될 수 있다. 즉, 각 플래그 비트값이 1로 설정이 되면, 그 하위 범위에서 조명 보상 기술이 적용되는 경우가 있을 수 있음을 나타낸다.
예를 들어, pic_IC_flag = 1인 경우, 해당 픽쳐 범위 내의 각 슬라이스에 대해서 slice_IC_flag값을 1 또는 0으로 셋팅할 수 있고, 또는 각 매크로블록에 대해서 mb_IC_flag값을 1 또는 0으로 셋팅할 수 있으며, 또는 각 블록에 대해서 blk_IC_flag값을 1 또는 0으로 셋팅할 수 있다. 시점 파라미터 세트가 있는 경우, seq_IC_flag = 1 이라면, 각 시점에 대해서 view_IC_flag값을 1 또는 0으로 셋팅할 수 있게 된다. 다만, view_IC_flag=1인 경우에는, 도 20a에서처럼 해당 시점에 속하는 각 GOP, 픽쳐, 슬라이스, 매크로블록, 또는 블록에 대한 플래그 비트값을 1 또는 0으로 셋팅할 수도 있고, 그렇지 않은 경우도 있을 수 있다. 여기서, 그렇지 않은 경우는 도 20b에서처럼 각 GOP, 픽쳐, 슬라이스, 매크로블록, 또는 블록에 대한 플래그들이 시점에 대한 플래그 정보에 의해 제어되지 않는 경우를 말한다.
상위 범위의 플래그 비트값이 0인 경우, 하위 범위의 플래그 비트값들은 자 동적으로 0이 된다. 예를 들어, seq_IC_flag = 0인 경우, 해당 시퀀스에 대해서 조명 보상 기술이 적용되지 않는다는 것을 의미하며, 따라서 view_IC_flag, GOP_IC_flag, pic_IC_flag, slice_IC_flag, mb_IC_flag, blk_IC_flag는 모두 0으로 셋팅된다. 그리고, mb_IC_flag와 blk_IC_flag는 조명 보상 기술의 구체적인 구현 방법에 따라 하나만 사용될 수도 있다. 또한, 시점에 대한 플래그 정보(view_IC_flag)는 다시점 비디오 코딩에서 시점 파라미터 세트가 새로이 적용될 경우에 적용될 수 있다. 제일 하위 단위인 매크로블록 또는 서브블록에서의 플래그 비트값에 따라 현재 블록의 오프셋 값이 추가적으로 부호화/복호화 될 수 있다.
또한, 도 20c와 같이 IC 기술 적용에 대한 플래그가 슬라이스와 매크로블록 계층에만 적용되는 실시예도 생각할 수 있다. 예를 들어, slice_IC_flag 가 0 인 경우는 해당 슬라이스에서 IC가 적용되지 않음을 의미할 수 있다. slice_IC_flag가 1 인 경우는 해당 슬라이스에서 IC가 적용됨을 의미할 수 있으며, 이 경우 mb_IC_flag가 1이면 해당 매크로블록에서 IC_offset 이 복원된다. mb_IC_flag 가 0 이면 해당 매크로블록에서 IC가 적용되지 않음을 의미할 수 있다.
또한, 본 발명의 다른 일실시예로서, 매크로블록 계층보다 상위 계층의 플래그 정보가 참인 경우, 현재 블록의 평균 화소값과 참조 블록의 평균 화소값 차이를 나타내는 현재 블록의 오프셋 값을 획득할 수 있는데, 이 때 상기 매크로블록 계층 또는 상기 블록 계층에 대한 플래그 정보는 이용하지 않을 수 있다. 조명 보상 기술을 적용할 때, 각 블록에 대해서 조명 보상 기술을 적용할 것인지 여부를 플래그 정보를 통해서 나타낼 수 있다. 그러나, 움직임 벡터처럼 그 값만을 나타내는 것으 로도 충분할 수도 있다. 이는 조명 보상 기술의 적용범위와 함께 운용이 가능할 수 있으며, 상위 범위(sequence, view, GOP, picture)에 대해서는 플래그 정보를 통해서 그 하위 범위에서 조명 보상이 적용되는지를 나타낼 수 있다. 제일 하위 범위인 매크로블록 계층 또는 블록 계층에서는 플래그 비트를 사용함이 없이 오프셋 값만으로 충분할 수 있다. 이는 기본적으로 움직임 벡터와 유사한 방식으로 예측 및 부호화를 수행할 수 있다. 예를 들어, 현재 블록에 대해서 예측 코딩을 수행하는 경우, 이웃 블록의 오프셋 값을 현재 블록의 오프셋 값에 할당하게 된다. 그리고, 쌍방향 예측 코딩인 경우, List 0, List 1에서 찾아진 참조 블록과의 계산을 통해서 각 참조 블록에 대한 오프셋 값이 획득된다. 따라서, 현재 블록의 오프셋 값들을 부호화할 때, 이웃 블록들의 오프셋 값들을 이용해서 상기 각 참조 블록에 대한 ㅇ오프셋 값을 직접 부호화 하지 않고, 예측 오차만을 부호화/복호화 한다. 오프셋 값의 예측방법은 위의 오프셋 예측 방법이나 움직임 벡터 예측시 사용되는 중간값(median)을 획득하는 방법을 사용할 수도 있다. 쌍방향 예측의 직접 모드(direct mode)일 때도, 움직임 벡터와 같은 방법으로 부가 정보의 부호화/복호화 없이 이미 주어진 정보를 통해서 오프셋 값들을 구할 수 있다.
또한, 본 발명의 다른 일실시예로서, MVC 디코더가 아닌 디코더(예를 들어,H.264)를 이용하게 되는 경우, 기존의 디코더와 호환성을 가지는 시점 영상은 기존의 디코더로 디코딩될 수 있어야 하므로 "view_IC_flag = false or 0" 으로 설정해야 된다. 여기서 기준 시점(base views)에 대한 개념을 설명할 필요가 있다. 우리는 H.264/AVC 디코더와 호환성을 가지기 위한 적어도 하나의 시점 영상(view sequence)이 필요할 수 있다. 따라서, 독립적으로 복호화가 가능한 시점들을 정의할 필요가 있는데, 이를 기준 시점이라 한다. 이러한 기준시점은 다시점 중 부호화의 기준이 되며, 이는 참조 시점(reference view)에 해당된다. MVC에서 기준 시점에 해당되는 영상은 종래 일반적인 영상 부호화 방식(MPEG-2, MPEG-4, H.263, H.264 등)에 의해 부호화되어 독립적인 비트스트림으로 형성하게 된다. 기준 시점에 해당되는 영상은 H.264/AVC와 호환될 수도 있고, 되지 않을 수도 있다. 하지만, H.264/AVC와 호환될 수 있는 시점의 영상은 항상 기준 시점이 된다.
도 21은 본 발명이 적용되는 일실시예로서, 현재 블록의 오프셋 값을 고려하여 움직임 벡터를 획득하는 과정을 설명하기 위한 흐름도를 나타낸다.
도 21에 따르면, 상기 시스템은 비디오 신호로부터 현재 블록의 오프셋 값을 획득할 수 있다(S321). 상기 시스템은 상기 오프셋 값을 이용하여 현재 블록과 최적으로 매칭되는 참조 블록을 서치할 수 있다(S322). 상기 시스템은 상기 서치된 참조 블록으로부터 움직임 벡터를 획득하여 부호화할 수 있다(S323). 여기서, 조명 보상을 적용하는 경우 움직임 추정을 수행할 때 고려할 사항들이 있다. 예를 들어, 블록 사이의 평균 화소값을 상쇄해서 두 블록의 유사성을 비교하는 방법의 경우, 움직임 추정을 수행할 때 각 블록의 화소값들에서 블록의 평균 화소값을 뺀 값들을 가지고 유사성 정도를 계산할 수 있다. 이때, 두 블록 간의 오프셋 값이 따로 부호화되기 때문에 이러한 비용도 움직임 추정 과정에 반영되어야 한다. 기존의 비용(cost) 계산은 아래 수학식 23과 같다.
Figure 112008057611866-pct00079
조명 보상을 적용하는 경우, SAD(Sum of Absolute Differences)는 아래 수학식 24와 같이 계산될 수 있다.
Figure 112008057611866-pct00080
여기서, Ic, Ir은 각각 현재 블록과 참조 블록의 화소값을 나타낸다. Mc, Mr은 각각 현재 블록과 참조 블록의 평균 화소값을 나타낸다. 오프셋 값의 비용은 SAD 계산에 포함하여 반영할 수 있다.
Figure 112008057611866-pct00081
SADIC = α|offset - offset_pred|+ ∑ |(Ic(m,n)-Mc ) - (Ir(m,n)- Mr )|
여기서,
Figure 112008057611866-pct00082
는 가중치가 되며, 1일 때, 오프셋 값의 절대치가 반영된다. 또한, 조명 보상 비용을 반영하는 다른 방법으로서, 오프셋 값을 부호화하는 데에 쓰이는 비트수를 추정해서 반영하는 방법이 있다.
이는 아래 수학식 27에서처럼 오프셋 부호화 비트를 추정해서 반영한다. 여 기서, 상기 부호화 비트는 오프셋 차이값의 크기에 비례하도록 추정할 수 있다.
Figure 112008057611866-pct00083
이 경우, 새로운 비용은 아래 수학식 28을 이용하여 구할 수 있다.
Figure 112008057611866-pct00084
Cost =
도 1은 본 발명이 적용되는 실시예로서, 다시점 비디오 영상을 포함하는 비디오 신호의 디코딩을 위한 다시점 비디오 시스템의 디코딩 장치의 개략적인 블록도를 나타낸다.
도 2는 본 발명이 적용된 일실시예로서, 비디오 영상 부호화 방법을 설명하기 위한 흐름도를 도시한 것이다.
도 3은 본 발명을 적용한 일실시예로서, 다른 시점의 참조 영상 블록으로부터 현재 블록의 조명 평균 예측값(predicted average pixel value)을 유도하는 과정을 설명하기 위한 블록 구성도를 도시한 것이다.
도 4는 본 발명을 적용한 일실시예로서, 다른 시점의 참조 영상 블록으로부터 현재 블록의 조명 평균 예측값을 유도하는 과정을 일반화하여 설명하기 위한 블록 구성도를 도시한 것이다.
도 5는 본 발명을 적용한 일실시예로서, 조명 평균값의 획득 및 조명 평균 예측값을 유도함에 있어서, 블록의 좌측과 상단에 있는 픽셀들의 이미 복호화된 값들을 이용하는 것을 설명하기 위한 16x16 매크로 블록을 도시한 것이다.
도 6a 및 도 6b는 본 발명을 적용한 일실시예들로서, 블록이 분할된 경우 분할된 블록의 조명 평균값의 획득 및 조명 평균 예측값을 유도함에 있어서, 상기 분할된 블록을 둘러싸는 픽셀 전부를 이용하는 경우와, 상기 분할된 블록을 둘러싸는 픽셀들만을 이용하는 경우를 설명하기 위한 16x8 매크로 블록을 각각 도시한 것이다.
도 7a 및 도 7b는 본 발명을 적용한 일실시예로서, 블록이 분할된 경우 분할된 블록의 조명 평균값의 획득 및 조명 평균 예측값을 유도함에 있어서, 상기 분할된 블록을 둘러싸는 픽셀 전부를 이용하는 경우와 상기 분할된 블록을 둘러싸는 픽셀들만을 이용하는 경우를 설명하기 위한 8x16 매크로 블록을 각각 도시한 것이다.
도 8a 및 도 8b는 본 발명을 적용한 일실시예로서, 블록이 분할된 경우 분할된 블록의 조명 평균값의 획득 및 조명 평균 예측값을 유도함에 있어서, 상기 분할된 블록을 둘러싸는 픽셀 전부를 이용하는 경우와 상기 분할된 블록을 둘러싸는 픽셀들만을 이용하는 경우를 설명하기 위한 8x8 매크로 블록을 각각 도시한 것이다.
도 9는 본 발명이 적용되는 일실시예로서, 현재 블록의 오프셋 값을 획득하는 과정을 설명하기 위한 도면을 나타낸다.
도 10은 본 발명이 적용되는 일실시예로서, 현재 블록에 대한 조명 보상을 수행하는 과정을 설명하기 위한 흐름도를 나타낸다.
도 11은 본 발명이 적용되는 일실시예로서, 현재 블록과 이웃 블록의 참조 번호 동일 여부에 기초하여 프리딕터를 획득하는 방법을 설명하기 위한 흐름도를 나타낸다.
도 12는 본 발명이 적용되는 일실시예로서, 현재 블록의 프리딕션 타입에 기초하여 조명 보상을 수행하는 방법을 설명하기 위한 흐름도를 나타낸다.
도 13은 본 발명이 적용되는 일실시예로서, 해당 블록의 조명 보상 수행여부를 나타내는 플래그 정보를 이용하여 조명 보상을 수행하는 방법을 설명하기 위한 흐름도를 나타낸다.
도 14는 본 발명이 적용되는 일실시예로서, 현재 블록과 이웃 블록의 참조 번호 동일 여부에 기초하여 현재 블록의 플래그 정보를 예측하는 방법을 설명하기 위한 흐름도를 나타낸다.
도 15는 본 발명이 적용되는 일실시예로서, 현재 블록이 2개의 참조 블록을 이용하여 예측 코딩된 경우에 있어서 조명 보상을 수행하는 방법을 설명하기 위한 흐름도이다.
도 16은 본 발명이 적용된 실시예로서, 현재 블록의 조명 보상 수행여부를 나타내는 플래그 정보와 현재 블록의 오프셋 값을 이용하여 조명 보상을 수행하는 과정을 설명하기 위한 흐름도를 나타낸다.
도 17a ~ 도 17b는 본 발명이 적용된 일실시예로서, 각각 P 슬라이스 및 B 슬라이스에 속한 블록에 대해 플래그 정보와 오프셋 값을 이용하여 조명 보상을 수 행하는 방법을 설명하기 위해 나타낸 것이다.
도 18은 본 발명이 적용되는 일실시예로서, 현재 블록이 2개의 참조 블록을 이용하여 예측 코딩된 경우에 있어서 조명 보상을 수행하는 방법을 설명하기 위한 흐름도이다.
도 19는 본 발명이 적용되는 일실시예로서, 현재 블록의 조명 보상 수행 여부를 나타내는 플래그 정보를 이용하여 조명 보상을 수행하는 과정을 설명하기 위한 흐름도를 나타낸다.
도 20a ~ 도 20c는 본 발명이 적용된 일실시예로서, 현재 블록의 조명 보상 수행하도록 유도하는 플래그 정보의 사용 범위를 설명하기 위해 나타낸 것이다.
도 21은 본 발명이 적용되는 일실시예로서, 현재 블록의 오프셋 값을 고려하여 움직임 벡터를 획득하는 과정을 설명하기 위한 흐름도를 나타낸다.
본 발명은, 다시점 비디오 신호의 다수개 시점들이 인코딩된 비트스트림을 수신하는 단계와, 상기 다시점 비디오 신호의 부분과 관련된 플래그 정보를 상기 비트스트림으로부터 추출하는 단계 및 상기 플래그 정보에 따라 조명 보상이 수행되는 부분에 대해, 상기 부분 내의 세그먼트와 관련된 값을 상기 비트스트림으로부터 추출하고, 상기 추출된 값으로부터 상기 세그먼트의 조명 보상이 수행되는지 여부를 결정하는 단계를 포함하되, 상기 다수개 시점들의 각 시점은 다수개의 세그먼트들(예를 들어, 단일 블록 또는 매크로블록 같은 이미지 블록 세그먼트, 또는 이미지의 슬라이스 같은 세그먼트)로 구분된 다수개의 픽쳐들을 포함하고, 상기 플래 그 정보는 상기 다시점 비디오 신호의 부분 내의 세그먼트들에 대해 조명 보상이 수행되는지 여부를 나타내는 것을 특징으로 하는 다시점 비디오 신호 디코딩 방법을 제공한다.
또한, 본 발명은 다음과 같은 특징들 중 하나 이상을 포함할 수 있다.
본 발명에서, 상기 세그먼트들은 이미지 블록들로 이루어지는 것을 특징으로 한다.
본 발명은, 조명 보상이 수행되는 것을 나타내는 값과 관련된 제 1 블록에 대해, 상기 제 1 블록에 인접한 적어도 하나의 이웃 블록의 조명 보상 오프셋 값을 이용하여, 상기 제 1 블록의 조명 보상 예측값을 획득하는 단계를 더 포함하는 것을 특징으로 한다.
본 발명에서, 이웃 블록의 조명 보상 오프셋 값은, 상기 이웃 블록의 조명 보상 예측값과 차분값을 더함으로써 획득되는 것을 특징으로 한다.
본 발명에서, 상기 제 1 블록에 인접한 적어도 하나의 이웃 블록의 조명 보상 오프셋 값을 이용하여 상기 제 1 블록의 조명 보상 예측값을 획득하는 단계는, 상기 이웃 블록들 중 정해진 순서에 따라 상기 적어도 하나의 이웃 블록을 선택하는 단계를 포함하는 것을 특징으로 한다.
본 발명에서, 상기 정해진 순서에 따라 상기 적어도 하나의 이웃 블록을 선택하는 단계는, 하나 이상의 수직 또는 수평 방향에 있는 이웃 블록들, 그 다음에 하나 이상의 대각선 방향에 있는 이웃 블록들의 순서로, 하나 이상의 조건들이 이웃 블록에 대해 만족되는지 여부를 결정하는 단계를 포함하는 것을 특징으로 한다.
본 발명에서, 상기 플래그 정보는, 상기 블록을 포함하는 시퀀스, 시점, 픽쳐들의 그룹, 픽쳐 및 슬라이스 중 하나 이상에 대해 조명 보상을 가능하게 하는 것을 특징으로 한다.
본 발명에서, 상기 플래그 정보는, 상기 블록을 포함하는 상기 슬라이스에 대해 조명 보상을 가능하게 하는 것을 특징으로 한다.
본 발명에서, 상기 추출된 값은, 상기 블록을 포함하는 매크로블록의 플래그 정보 또는 상기 블록의 플래그 정보로 이루어지는 것을 특징으로 한다.
본 발명에서, 상기 추출된 값은, 상기 블록을 포함하는 매크로블록의 플래그 정보로 이루어지는 것을 특징으로 한다.
또한, 본 발명은, 다시점 비디오 신호의 다수개 시점들이 인코딩된 비트스트림을 수신하는 단계와, 제 1 세그먼트에 인접한 적어도 하나의 이웃 세그먼트의 조명 보상 오프셋 값을 이용하여, 상기 제 1 세그먼트의 조명 보상 예측값을 획득하는 단계를 포함하되, 상기 다수개 시점들의 각 시점은 다수개의 세그먼트들로 구분된 다수개의 픽쳐들을 포함하고, 상기 예측값을 획득하는 단계는, 상기 이웃 세그먼트들 중 정해진 순서에 따라 상기 적어도 하나의 이웃 세그먼트를 선택하는 단계를 포함하는 것을 특징으로 하는 다시점 비디오 신호 디코딩 방법을 제공한다.
또한, 본 발명은 다음과 같은 특징들 중 하나 이상을 포함할 수 있다.
본 발명에서, 상기 제 1 세그먼트와 상기 적어도 하나의 이웃 세그먼트는 이미지 블록으로 이루어지는 것을 특징으로 한다.
본 발명에서, 이웃 블록의 조명 보상 오프셋 값은, 상기 이웃 블록의 조명 보상 예측값과 차분값을 더함으로써 획득되는 것을 특징으로 한다.
본 발명에서, 상기 정해진 순서에 따라 상기 적어도 하나의 이웃 블록을 선택하는 단계는, 하나 이상의 수직 또는 수평 방향에 있는 이웃 블록들, 그 다음에 하나 이상의 대각선 방향에 있는 이웃 블록들의 순서로, 하나 이상의 조건들이 이웃 블록에 대해 만족되는지 여부를 결정하는 단계를 포함하는 것을 특징으로 한다.
본 발명에서, 상기 정해진 순서에 따라 상기 적어도 하나의 이웃 블록을 선택하는 단계는, 좌측 이웃 블록, 상단 이웃 블록, 우측 상단 이웃 블록, 좌측 상단 이웃 블록의 순서로, 하나 이상의 조건들이 이웃 블록에 대해 만족되는지 여부를 결정하는 단계를 포함하는 것을 특징으로 한다.
본 발명에서, 하나 이상의 조건들이 이웃 블록에 대해 만족되는지 여부를 결정하는 단계는, 상기 이웃 블록의 조명 보상이 수행되는지 여부를 나타내는 상기 이웃 블록에 관련된 값을 상기 비트스트림으로부터 추출하는 단계를 포함하는 것을 특징으로 한다.
본 발명에서, 상기 추출된 값은, 상기 블록을 포함하는 매크로블록의 플래그 정보 또는 상기 블록의 플래그 정보로 이루어지는 것을 특징으로 한다.
본 발명에서, 상기 조명 보상 예측값을 획득하는 단계는, 하나의 이웃 블록의 조명 보상 오프셋 값을 이용할지 또는 각 이웃 블록들의 다수개의 조명 보상 오프셋 값들을 이용할지 여부를 결정하는 단계를 포함하는 것을 특징으로 한다.
본 발명에서, 다수개의 조명 보상 오프셋 값들이 이용되는 경우, 상기 다수개의 조명 보상 오프셋 값들을 이용하여 상기 제 1 블록의 조명 보상 예측값을 획 득하는 단계를 더 포함하는 것을 특징으로 한다.
본 발명에서, 상기 다수개의 조명 보상 오프셋 값들을 이용하는 단계는, 상기 다수개의 조명 보상 오프셋 값들의 평균값 또는 중간값을 취하는 단계를 포함하는 것을 특징으로 한다.
또한, 본 발명은, 다시점 비디오 신호의 다수개 시점들이 인코딩된 비트스트림을 수신하는 단계와, 참조 픽쳐에 관한 제 1 세그먼트의 조명 보상 오프셋 값을 획득하는 단계 및 상기 제 1 세그먼트의 조명 보상을 이용하여 상기 비트스트림을 디코딩하는 단계를 포함하되, 상기 다수개 시점들의 각 시점은 다수개의 세그먼트들로 구분된 다수개의 픽쳐들을 포함하고, 상기 오프셋 값은 이웃 세그먼트와 관련된 특성에 기초하여 결정된 적어도 하나의 이웃 세그먼트의 조명 보상 오프셋 값을 이용하여 예측되고, 상기 디코딩 단계는, 상기 참조 픽쳐로부터 획득된 상기 제 1 세그먼트의 픽셀들의 예측값과, 상기 제 1 세그먼트의 픽셀들의 차분값과, 대응되는 조명 보상 오프셋 값을 더하는 단계를 포함하는 것을 특징으로 하는 다시점 비디오 신호 디코딩 방법을 제공한다.
또한, 본 발명은 다음과 같은 특징들 중 하나 이상을 포함할 수 있다.
본 발명에서, 상기 제 1 세그먼트와 상기 적어도 하나의 이웃 세그먼트는 이미지 블록으로 이루어지는 것을 특징으로 한다.
본 발명에서, 이웃 블록의 조명 보상 오프셋 값은, 상기 이웃 블록의 조명 보상 예측값과 차분값을 더함으로써 획득되는 것을 특징으로 한다.
본 발명은, 하나 이상의 수직 또는 수평 방향에 있는 이웃 블록들, 그 다음 에 하나 이상의 대각선 방향에 있는 이웃 블록들의 순서로, 하나 이상의 조건들이 이웃 블록에 대해 만족되는지 여부에 기초하여 적어도 하나의 이웃 블록을 선택하는 단계를 더 포함하는 것을 특징으로 한다.
본 발명에서, 상기 정해진 순서에 따라 상기 적어도 하나의 이웃 블록을 선택하는 단계는, 좌측 이웃 블록, 상단 이웃 블록, 우측 상단 이웃 블록, 좌측 상단 이웃 블록의 순서로, 하나 이상의 조건들이 이웃 블록에 대해 만족되는지 여부를 결정하는 단계를 포함하는 것을 특징으로 한다.
본 발명에서, 하나 이상의 조건들이 이웃 블록에 대해 만족되는지 여부를 결정하는 단계는, 상기 이웃 블록의 조명 보상이 수행되는지 여부를 나타내는 상기 이웃 블록에 관련된 값을 상기 비트스트림으로부터 추출하는 단계를 포함하는 것을 특징으로 한다.
본 발명에서, 상기 추출된 값은, 상기 블록을 포함하는 매크로블록의 플래그 정보 또는 상기 블록의 플래그 정보로 이루어지는 것을 특징으로 한다.
본 발명에서, 적어도 하나의 이웃 블록을 선택하는 단계는, 하나의 이웃 블록의 조명 보상 오프셋 값을 이용할지 또는 각 이웃 블록들의 다수개의 조명 보상 오프셋 값들을 이용할지 여부를 결정하는 단계를 포함하는 것을 특징으로 한다.
본 발명에서, 다수개의 조명 보상 오프셋 값들이 이용되는 경우, 상기 다수개의 조명 보상 오프셋 값들을 이용하여 상기 제 1 블록의 조명 보상 예측값을 획득하는 단계를 더 포함하는 것을 특징으로 한다.
본 발명에서, 상기 다수개의 조명 보상 오프셋 값들을 이용하는 단계는, 상 기 다수개의 조명 보상 오프셋 값들의 평균값 또는 중간값을 취하는 단계를 포함하는 것을 특징으로 한다.
또한, 본 발명은, 다시점 비디오 신호의 다수개 시점들이 인코딩된 비트스트림을 수신하는 단계와, 참조 픽쳐에 관한 제 1 세그먼트의 조명 보상 예측값을 획득하는 단계와, 상기 제 1 세그먼트의 조명 보상 예측값과 차분값을 더함으로써 상기 제 1 세그먼트의 조명 보상 오프셋 값을 결정하는 단계 및 상기 제 1 세그먼트의 조명 보상을 이용하여 상기 비트스트림을 디코딩하는 단계를 포함하되, 상기 다수개 시점들의 각 시점은 다수개의 세그먼트들로 구분된 다수개의 픽쳐들을 포함하고, 상기 디코딩 단계는, 상기 참조 픽쳐로부터 획득된 상기 제 1 세그먼트의 픽셀들의 예측값과, 상기 제 1 세그먼트의 픽셀들의 차분값과, 대응되는 조명 보상 오프셋 값을 더하는 단계를 포함하는 것을 특징으로 하는 다시점 비디오 신호 디코딩 방법을 제공한다.
또한, 본 발명은 다음과 같은 특징들 중 하나 이상을 포함할 수 있다.
본 발명에서, 상기 세그먼트들은 이미지 블록들로 이루어지는 것을 특징으로 한다.
본 발명에서, 상기 제 1 세그먼트의 조명 보상을 이용하는 것은, 이웃 블록의 조명 보상 예측값과 차분값을 더함으로써 상기 이웃 블록의 조명 보상 오프셋 값을 획득하는 단계를 포함하는 것을 특징으로 한다.
본 발명에서, 하나 이상의 수직 또는 수평 방향에 있는 이웃 블록들, 그 다음에 하나 이상의 대각선 방향에 있는 이웃 블록들의 순서로, 하나 이상의 조건들 이 이웃 블록에 대해 만족되는지 여부에 기초하여 적어도 하나의 이웃 블록을 선택하는 단계를 더 포함하는 것을 특징으로 한다.
본 발명에서, 상기 적어도 하나의 이웃 블록을 선택하는 단계는, 좌측 이웃 블록, 상단 이웃 블록, 우측 상단 이웃 블록, 좌측 상단 이웃 블록의 순서로, 하나 이상의 조건들이 이웃 블록에 대해 만족되는지 여부를 결정하는 단계를 포함하는 것을 특징으로 한다.
본 발명에서, 하나 이상의 조건들이 이웃 블록에 대해 만족되는지 여부를 결정하는 단계는, 상기 이웃 블록의 조명 보상이 수행되는지 여부를 나타내는 상기 이웃 블록에 관련된 값을 상기 비트스트림으로부터 추출하는 단계를 포함하는 것을 특징으로 한다.
본 발명에서, 상기 추출된 값은, 상기 블록을 포함하는 매크로블록의 플래그 정보 또는 상기 블록의 플래그 정보로 이루어지는 것을 특징으로 한다.
본 발명에서, 적어도 하나의 이웃 블록을 선택하는 단계는, 하나의 이웃 블록의 조명 보상 오프셋 값을 이용할지 또는 각 이웃 블록들의 다수개의 조명 보상 오프셋 값들을 이용할지 여부를 결정하는 단계를 포함하는 것을 특징으로 한다.
본 발명에서, 다수개의 조명 보상 오프셋 값들이 이용되는 경우, 상기 다수개의 조명 보상 오프셋 값들을 이용하여 상기 제 1 블록의 조명 보상을 수행하기 위한 예측값을 획득하는 단계를 더 포함하는 것을 특징으로 한다.
본 발명에서, 상기 다수개의 조명 보상 오프셋 값들을 이용하는 단계는, 상기 다수개의 조명 보상 오프셋 값들의 평균값 또는 중간값을 취하는 단계를 포함하 는 것을 특징으로 한다.
또한, 본 발명은, 다시점 비디오 신호의 다수개 시점들이 인코딩된 비트스트림을 수신하는 단계와, 제 1 세그먼트와 관련된 참조 픽쳐가 이웃 세그먼트와 관련된 참조 픽쳐와 동일한지 여부에 따라, 상기 제 1 세그먼트에 인접한 적어도 하나의 이웃 세그먼트의 조명 보상 오프셋 값을 이용하여 참조 픽쳐에 관한 제 1 세그먼트의 조명 보상 예측값을 획득하는 단계를 포함하되, 상기 다수개 시점들의 각 시점은 다수개의 세그먼트들로 구분된 다수개의 픽쳐들을 포함하는 것을 특징으로 하는 다시점 비디오 신호 디코딩 방법을 제공한다.
또한, 본 발명은 다음과 같은 특징들 중 하나 이상을 포함할 수 있다.
본 발명에서, 상기 세그먼트들은 이미지 블록들로 이루어지는 것을 특징으로 한다.
본 발명에서, 상기 제 1 세그먼트의 조명 보상을 이용하는 것은, 이웃 블록의 조명 보상 예측값과 차분값을 더함으로써 상기 이웃 블록의 조명 보상 오프셋 값을 획득하는 단계를 포함하는 것을 특징으로 한다.
본 발명은, 하나 이상의 수직 또는 수평 방향에 있는 이웃 블록들, 그 다음에 하나 이상의 대각선 방향에 있는 이웃 블록들의 순서로, 하나 이상의 조건들이 이웃 블록에 대해 만족되는지 여부에 기초하여 적어도 하나의 이웃 블록을 선택하는 단계를 더 포함하는 것을 특징으로 한다.
본 발명에서, 상기 적어도 하나의 이웃 블록을 선택하는 단계는, 좌측 이웃 블록, 상단 이웃 블록, 우측 상단 이웃 블록, 좌측 상단 이웃 블록의 순서로, 하나 이상의 조건들이 이웃 블록에 대해 만족되는지 여부를 결정하는 단계를 포함하는 것을 특징으로 한다.
본 발명에서, 하나 이상의 조건들이 이웃 블록에 대해 만족되는지 여부를 결정하는 단계는, 상기 이웃 블록의 조명 보상이 수행되는지 여부를 나타내는 상기 이웃 블록에 관련된 값을 상기 비트스트림으로부터 추출하는 단계를 포함하는 것을 특징으로 한다.
본 발명에서, 상기 추출된 값은, 상기 블록을 포함하는 매크로블록의 플래그 정보 또는 상기 블록의 플래그 정보로 이루어지는 것을 특징으로 한다.
본 발명에서, 적어도 하나의 이웃 블록을 선택하는 단계는, 하나의 이웃 블록의 조명 보상 오프셋 값을 이용할지 또는 각 이웃 블록들의 다수개의 조명 보상 오프셋 값들을 이용할지 여부를 결정하는 단계를 포함하는 것을 특징으로 한다.
본 발명에서, 다수개의 조명 보상 오프셋 값들이 이용되는 경우, 상기 다수개의 조명 보상 오프셋 값들을 이용하여 상기 제 1 블록의 조명 보상을 수행하기 위한 예측값을 획득하는 단계를 더 포함하는 것을 특징으로 한다.
본 발명에서, 상기 다수개의 조명 보상 오프셋 값들을 이용하는 단계는, 상기 다수개의 조명 보상 오프셋 값들의 평균값 또는 중간값을 취하는 단계를 포함하는 것을 특징으로 한다.
또한, 본 발명은, 각각의 디코딩 방법에 대하여, 상기 각각의 디코딩 방법에 의해 상기 비디오 신호가 디코딩될 수 있는 비트스트림을 생성하는 것을 특징으로 하는 비디오 신호 인코딩 방법을 제공한다.
예를 들어, 본 발명은, 다시점 비디오 신호의 다수개 시점들이 인코딩된 비트스트림을 생성하는 단계와, 상기 다시점 비디오 신호의 부분과 관련된 플래그 정보를 제공하는 단계 및 상기 플래그 정보에 따라 조명 보상이 수행되는 부분에 대해, 상기 부분 내의 세그먼트와 관련된 값을 제공하고, 상기 제공된 값으로부터 상기 세그먼트의 조명 보상이 수행되는지 여부를 결정하는 단계를 포함하되, 상기 다수개 시점들의 각 시점은 다수개의 세그먼트들로 구분된 다수개의 픽쳐들을 포함하고, 상기 플래그 정보는 상기 다시점 비디오 신호의 부분 내의 세그먼트들에 대해 조명 보상이 수행되는지 여부를 나타내는 것을 특징으로 하는 비디오 신호 인코딩 방법을 제공한다.
또한, 본 발명은, 다시점 비디오 신호의 다수개 시점들이 인코딩된 비트스트림을 생성하는 단계와, 제 1 세그먼트에 인접한 적어도 하나의 이웃 세그먼트의 조명 보상 오프셋 값을 이용하여, 상기 제 1 세그먼트의 조명 보상 예측값을 제공하는 단계를 포함하되, 상기 다수개 시점들의 각 시점은 다수개의 세그먼트들로 구분된 다수개의 픽쳐들을 포함하고, 상기 예측값을 제공하는 단계는, 상기 이웃 세그먼트들 중 정해진 순서에 따라 상기 적어도 하나의 이웃 세그먼트를 선택하는 단계를 포함하는 것을 특징으로 하는 비디오 신호 인코딩 방법을 제공한다.
또한, 본 발명은, 다시점 비디오 신호의 다수개 시점들이 인코딩된 비트스트림을 생성하는 단계와, 참조 픽쳐에 관한 제 1 세그먼트의 조명 보상 오프셋 값을 제공하는 단계 및 상기 제 1 세그먼트의 조명 보상을 위한 정보를 제공하는 단계를 포함하되, 상기 다수개 시점들의 각 시점은 다수개의 세그먼트들로 구분된 다수개 의 픽쳐들을 포함하고, 상기 오프셋 값은 이웃 세그먼트와 관련된 특성에 기초하여 결정된 적어도 하나의 이웃 세그먼트의 조명 보상 오프셋 값을 이용하여 예측되고, 상기 정보 제공 단계는, 상기 참조 픽쳐로부터 획득된 상기 제 1 세그먼트의 픽셀들의 예측값과, 상기 제 1 세그먼트의 픽셀들의 차분값과, 대응되는 조명 보상 오프셋 값을 더하는 것에 기초하는 것을 특징으로 하는 비디오 신호 인코딩 방법을 제공한다.
또한, 본 발명은, 다시점 비디오 신호의 다수개 시점들이 인코딩된 비트스트림을 생성하는 단계와, 참조 픽쳐에 관한 제 1 세그먼트의 조명 보상 예측값을 제공하는 단계와, 상기 제 1 세그먼트의 조명 보상 예측값과 차분값을 더함으로써 상기 제 1 세그먼트의 조명 보상 오프셋 값을 제공하는 단계 및 상기 제 1 세그먼트의 조명 보상을 위한 정보를 제공하는 단계를 포함하되, 상기 다수개 시점들의 각 시점은 다수개의 세그먼트들로 구분된 다수개의 픽쳐들을 포함하고, 상기 정보 제공 단계는, 상기 참조 픽쳐로부터 획득된 상기 제 1 세그먼트의 픽셀들의 예측값과, 상기 제 1 세그먼트의 픽셀들의 차분값과, 대응되는 조명 보상 오프셋 값을 더하는 단계를 포함하는 것을 특징으로 하는 비디오 신호 인코딩 방법을 제공한다.
또한, 본 발명은, 다시점 비디오 신호의 다수개 시점들이 인코딩된 비트스트림을 생성하는 단계와, 제 1 세그먼트와 관련된 참조 픽쳐가 이웃 세그먼트와 관련된 참조 픽쳐와 동일한지 여부에 따라, 상기 제 1 세그먼트에 인접한 적어도 하나의 이웃 세그먼트의 조명 보상 오프셋 값을 이용하여 참조 픽쳐에 관한 제 1 세그먼트의 조명 보상 예측값을 제공하는 단계를 포함하되, 상기 다수개 시점들의 각 시점은 다수개의 세그먼트들로 구분된 다수개의 픽쳐들을 포함하는 것을 특징으로 하는 비디오 신호 인코딩 방법을 제공한다.
또한, 각각의 디코딩 방법에 대하여, 컴퓨터로 읽을 수 있는 매체에 저장된 컴퓨터 프로그램은, 상기 각각의 디코딩 방법을 수행하도록 컴퓨터에 지시하는 것을 특징으로 한다.
또한, 각각의 디코딩 방법에 대하여, 장치로 판독가능한 정보 운송체에 포함된 이미지 데이터는 상기 각각의 디코딩 방법에 의해 비디오 신호로 디코딩될 수 있다.
또한, 각각의 디코딩 방법에 대하여, 디코더는 상기 각각의 디코딩 방법을 수행하기 위한 수단을 포함하는 것을 특징으로 한다.
또한, 각각의 디코딩 방법에 대하여, 인코더는 상기 각각의 디코딩 방법에 의해 비디오 신호로 디코딩될 수 있도록 비트스트림을 생성하는 수단을 포함하는 것을 특징으로 한다.
또한, 본 발명은, (a)현재 블록에 인접한 블록들과 다른 시점의 참조 영상 블록들 중 적어도 하나의 블록에 대한 조명(illumination) 평균값을 획득하는 단계와, (b)상기 획득된 적어도 하나의 블록에 대한 조명 평균값으로부터 현재 블록의 조명 평균 예측값을 유도하는 단계 및 (c)상기 현재 블록의 조명 평균 예측값과 현재 블록의 조명 평균값 사이의 오차값을 획득하는 단계로 이루어지는 것을 특징으로 하는 비디오 영상 인코딩 방법을 제공한다.
또한, 본 발명은, (l)비디오 신호로부터 현재 블록의 조명 평균값을 복원하 기 위한 오차값을 획득하는 단계와, (m)다른 시점의 참조 영상 블록들에 기초하여 현재 블록의 조명 평균 예측값을 유도하는 단계 및 (n)상기 조명 평균 예측값과 오차값으로부터 상기 현재 블록의 조명 평균값을 복원하는 단계를 포함하여 이루어지는 것을 특징으로 하는 비디오 영상 디코딩 방법을 제공한다.
또한, 본 발명은, 현재 블록에 인접한 블록들과 다른 시점의 참조 영상 블록들의 조명 평균값을 획득하는 조명 평균값 획득부와, 상기 획득된 평균값으로부터 상기 현재 블록의 조명 평균 예측값을 유도하는 조명 평균값 예측부와, 상기 조명 평균 예측값과 현재 블록의 조명 평균값과의 오차값을 구하는 오차값 부호화부를 포함하여 이루어지는 것을 특징으로 하는 비디오 영상 인코딩 장치를 제공한다.
또한, 본 발명은, 수신된 비트스트림으로부터 오차값을 획득하는 오차값 복호화부와, 다른 시점의 참조 영상 블록에 기초하여 현재 블록의 조명 평균 예측값을 유도하는 조명 평균값 예측부와, 상기 오차값과 조명 평균 예측값으로부터 현재 블록의 조명 평균값을 복원하는 조명 보상부를 포함하여 이루어지는 것을 특징으로 하는 비디오 영상 디코딩 장치를 제공한다.
또한, 본 발명은, 현재 블록에 인접하는 이웃 블록의 오프셋 값을 이용하여 상기 현재 블록의 조명 보상을 위한 프리딕터(predictor)를 획득하는 단계와, 상기 프리딕터를 이용하여 상기 현재 블록의 오프셋 값을 복원하는 단계를 포함하되, 상기 프리딕터는, 현재 블록의 참조 번호와 상기 이웃 블록들의 참조 번호가 동일한지 여부에 따라 결정되는 것을 특징으로 하는 비디오 신호 디코딩 방법을 제공한다.
또한, 본 발명은, 현재 블록의 조명 평균값과 참조 블록의 조명 평균값의 차이를 나타내는 현재 블록의 오프셋 값을 복원하는 단계와, 상기 현재 블록이 2이상의 참조 블록을 이용하여 예측 코딩된 경우, 상기 오프셋 값을 이용하여 상기 현재 블록의 각 참조 블록에 대한 오프셋 값들을 획득하는 단계를 포함하는 것을 특징으로 하는 비디오 신호 디코딩 방법을 제공한다.
또한, 본 발명은, 현재 블록의 조명보상 수행여부를 나타내는 플래그 정보를 획득하는 단계와, 상기 플래그 정보에 따라 조명보상이 수행되는 경우, 상기 현재 블록의 평균 화소값과 참조 블록의 평균 화소값의 차이를 나타내는 현재 블록의 오프셋 값을 복원하는 단계를 포함하는 것을 특징으로 하는 비디오 신호 디코딩 방법을 제공한다.
또한, 본 발명은, 비디오 신호의 일정 계층에 대해 조명 보상을 수행하도록 유도하는 플래그 정보를 획득하는 단계와, 상기 플래그 정보에 따라 조명 보상이 수행된 상기 비디오 신호의 일정 계층을 디코딩하는 단계를 포함하되, 상기 비디오 신호의 일정 계층은, 시퀀스(sequence) 계층, 시점(view) 계층, 픽쳐그룹(Group Of Picture) 계층, 픽쳐(picture) 계층, 슬라이스(slice) 계층, 매크로블록(macroblock) 계층 또는 블록(block) 계층 중 어느 하나인 것을 특징으로 하는 비디오 신호 디코딩 방법을 제공한다.
또한, 본 발명은, 현재 블록의 평균 화소값과 참조 블록의 평균 화소값 차이를 나타내는 현재 블록의 오프셋 값을 획득하는 단계와, 상기 오프셋 값을 이용하여 현재 블록과 최적으로 매칭되는 참조 블록을 서치하는 단계와, 상기 서치된 참 조 블록으로부터 움직임 벡터를 획득하여 부호화하는 단계를 포함하는 것을 특징으로 하는 비디오 신호 인코딩 방법을 제공한다.
상기 실시예들은 하나 이상의 다음과 같은 이점을 가질 수 있다.
상기 비디오 영상의 인코딩/디코딩 방법 또는 장치는 부호화하려는 블록(current block)의 평균값을 주변 블록으로부터 예측하고 그 차이 값만을 보내는 방식을 이용함으로써, 조명 보상(illumination compensation)을 위해서 전송해야 하는 정보를 최소화할 수 있다.
또한, 본 발명은 방대한 데이터량을 필요로 하는 다시점 비디오 영상에 있어서 효율적인 조명 보상(illumination compensation)을 수행함으로써 부호화 효율을 높일 수 있다. 또한, 블록 간 또는 시점 간의 상관관계를 이용함으로써 효율적인 부호화 및 복호화 시스템을 구성하는 것이 가능해진다.
다시점 비디오 데이터의 시점 영상들은 서로 다른 카메라에 의해 생성되기 때문에, 카메라의 내외적 요인으로 인하여 조명 차이가 발생하게 된다. 따라서, 본 발명에서는 현재 블록의 오프셋 값을 이웃 블록의 정보를 이용하여 예측하고 그 차이값만을 전송함으로써, 조명 보상을 위해서 전송해야 하는 정보를 최소화할 수 있다. 또한, 상기 현재 블록의 오프셋 값을 예측할 때, 현재 블록과 이웃 블록의 참조 번호가 동일한지 여부를 확인함으로써 보다 정확한 예측을 수행할 수 있게 된다.
또한, 본 발명은 현재 블록의 조명 보상 수행 여부를 나타내는 플래그 정보도 예측하여 그 차이값만을 전송함으로써 전송해야 하는 정보를 최소화할 수 있다. 마찬가지로 현재 블록과 이웃 블록의 참조 번호가 동일한지 여부도 확인함으로써 보다 정확한 예측을 수행할 수 있게 된다. 상기와 같은 본 발명을 통해, 블록 간 또는 시점 간의 상관관계를 이용함으로써 효율적인 코딩이 가능해진다.
다시점 비디오 데이터의 시점 영상들은 서로 다른 카메라에 의해 생성되기 때문에, 카메라의 내외적 요인으로 인하여 조명 차이가 발생하게 된다. 따라서, 본 발명에서는 현재 블록의 오프셋 값을 이웃 블록의 정보를 이용하여 예측하고 그 차이값만을 전송함으로써, 조명 보상을 위해서 전송해야 하는 정보를 최소화할 수 있다. 본 발명은, 현재 블록의 조명 보상 수행 여부를 나타내는 플래그 정보도 예측하여 그 차이값만을 전송함으로써 전송해야 하는 정보를 최소화할 수 있다.
또한, 2이상의 참조 블록을 이용하여 예측 코딩된 경우, 오프셋 값과 플래그 정보를 각각 적어도 하나 이상의 방법으로 적용함으로써 보다 효율적인 코딩이 가능해질 수 있다. 또한, 비디오 신호의 각 영역 범위 별로 조명 보상 기술의 사용 여부를 나타내는 플래그 비트를 할당함으로써, 효과적으로 조명 보상 기술을 사용할 수 있다. 또한, 본 발명은, 움직임 추정을 수행하는 과정에서 조명 차이를 반영하여 비용 계산을 함으로써 보다 정확한 예측 코딩을 수행할 수 있게 된다.
다른 특징들과 이점들은 발명의 상세한 설명과 청구 범위에서 보다 명백하게 나타날 것이다.
본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다.
그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (50)

  1. 다시점 비디오 신호의 다수개 시점들이 인코딩된 비트스트림을 수신하는 단계;
    상기 비트스트림으로부터 상기 다시점 비디오 신호의 현재 슬라이스에 대한 제 1 플래그 정보를 추출하는 단계;
    상기 제 1 플래그 정보에 따라 조명 보상이 상기 현재 슬라이스에 대해 수행되는 경우, 상기 비트스트림으로부터 상기 현재 슬라이스 내의 현재 블록에 대한 제 2 플래그 정보를 추출하는 단계;
    상기 제 2 플래그 정보에 따라 조명 보상이 상기 현재 블록에 대해 수행되는 경우, 상기 현재 블록에 인접한 적어도 하나의 이웃 블록의 조명 보상 오프셋 값을 이용하여 상기 현재 블록의 조명 보상 예측값을 유도하는 단계;
    상기 비트스트림으로부터 상기 현재 블록의 조명 보상 차분값을 추출하는 단계; 및
    상기 현재 블록의 조명 보상 예측값과 상기 현재 블록의 조명 보상 차분값을 더하여 상기 현재 블록의 조명 보상 오프셋 값을 획득하는 단계를 포함하되,
    상기 제 1 플래그 정보는 조명 보상이 상기 현재 슬라이스에 대해 수행되는지 여부를 나타내고,
    상기 제 2 플래그 정보는 조명 보상이 상기 현재 블록에 대해 수행되는지 여부를 나타내는 것을 특징으로 하는 다시점 비디오 신호 디코딩 방법.
  2. 제 1항에 있어서,
    상기 현재 블록의 조명 보상 오프셋 값을 이용하여 상기 현재 블록의 픽셀값을 예측하는 단계; 및
    상기 예측된 현재 블록의 픽셀값을 이용하여 상기 현재 블록을 디코딩하는 단계를 더 포함하는 것을 특징으로 하는 다시점 비디오 신호 디코딩 방법.
  3. 제 1항에 있어서,
    상기 현재 블록의 조명 보상 예측값은 상기 현재 블록의 참조 번호와 상기 이웃 블록의 참조 번호가 동일한지 여부에 기초하여 유도되는 것을 특징으로 하는 다시점 비디오 신호 디코딩 방법.
  4. 제 1항에 있어서,
    상기 이웃 블록의 조명 보상 오프셋 값은 상기 이웃 블록의 조명 보상 예측값과 상기 이웃 블록의 조명 보상 차분값을 더하여 획득되는 것을 특징으로 하는 다시점 비디오 신호 디코딩 방법.
  5. 제 3항에 있어서,
    상기 이웃 블록은 상기 현재 블록에 인접한 이웃 블록들 중에서 기결정된 순서에 따라 선택된 것을 특징으로 하는 다시점 비디오 신호 디코딩 방법.
  6. 제 5항에 있어서,
    상기 이웃 블록은 상기 현재 블록의 상단, 좌측, 우측상단 그리고 좌측상단에 위치한 블록 순으로 선택되는 것을 특징으로 하는 다시점 비디오 신호 디코딩 방법.
  7. 제 1항에 있어서, 상기 현재 블록의 조명 보상 예측값을 유도하는 단계는,
    하나의 이웃 블록의 조명 보상 오프셋 값을 이용할지 또는 다수개의 이웃 블록들의 조명 보상 오프셋 값들을 이용할지 여부를 결정하는 단계를 포함하는 것을 특징으로 하는 다시점 비디오 신호 디코딩 방법.
  8. 제 7항에 있어서, 상기 다수개의 이웃 블록들의 조명 보상 오프셋 값들을 이용하는 경우, 상기 현재 블록의 조명 보상 예측값은 상기 다수개의 이웃 블록들의 조명 보상 오프셋 값들의 평균값 또는 중간값으로부터 유도되는 것을 특징으로 하는 다시점 비디오 신호 디코딩 방법.
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 삭제
  38. 삭제
  39. 삭제
  40. 삭제
  41. 삭제
  42. 삭제
  43. 삭제
  44. 삭제
  45. 삭제
  46. 삭제
  47. 삭제
  48. 삭제
  49. 삭제
  50. 삭제
KR1020087019748A 2006-01-12 2007-01-12 다시점 비디오의 처리 KR101276847B1 (ko)

Applications Claiming Priority (25)

Application Number Priority Date Filing Date Title
US75823406P 2006-01-12 2006-01-12
US60/758,234 2006-01-12
KR20060004956 2006-01-17
KR1020060004956 2006-01-17
US75962006P 2006-01-18 2006-01-18
US60/759,620 2006-01-18
US76253406P 2006-01-27 2006-01-27
US60/762,534 2006-01-27
KR20060027100 2006-03-24
KR1020060027100 2006-03-24
US78719306P 2006-03-30 2006-03-30
US60/787,193 2006-03-30
KR1020060037773A KR20070076356A (ko) 2006-01-18 2006-04-26 비디오 영상의 부호화/복호화 방법 및 장치
KR1020060037773 2006-04-26
US81827406P 2006-07-05 2006-07-05
US60/818,274 2006-07-05
US83008706P 2006-07-12 2006-07-12
US60/830,087 2006-07-12
US83032806P 2006-07-13 2006-07-13
US60/830,328 2006-07-13
KR1020060110338A KR20070076392A (ko) 2006-01-18 2006-11-09 비디오 신호의 디코딩/인코딩 방법 및 장치
KR1020060110337 2006-11-09
KR1020060110337A KR20070076391A (ko) 2006-01-18 2006-11-09 비디오 신호의 디코딩/인코딩 방법 및 장치
KR1020060110338 2006-11-09
PCT/KR2007/000225 WO2007081176A1 (en) 2006-01-12 2007-01-12 Processing multiview video

Publications (2)

Publication Number Publication Date
KR20080094048A KR20080094048A (ko) 2008-10-22
KR101276847B1 true KR101276847B1 (ko) 2013-06-18

Family

ID=39731061

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087019748A KR101276847B1 (ko) 2006-01-12 2007-01-12 다시점 비디오의 처리

Country Status (2)

Country Link
US (1) USRE44680E1 (ko)
KR (1) KR101276847B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
PL2805511T3 (pl) 2012-01-20 2019-09-30 Sun Patent Trust Sposoby i urządzenie do kodowania i dekodowania wideo przy użyciu predykcji wektora ruchu w czasie
MX2013008942A (es) 2012-02-03 2013-09-12 Panasonic Corp Metodo de codificacion de imagenes, metodo de decodificacion de imagenes, aparato de codificacion de imagenes, aparato de decodificacion de imagenes y aparato de codificacion y decodificacion de imagenes.
EP2824920A4 (en) 2012-03-06 2016-02-17 Panasonic Ip Corp America VIDEO CODING METHOD, VIDEO CODING METHOD, VIDEO COORDING DEVICE, VIDEO CODING DEVICE AND VIDEO CODING / DECODING DEVICE

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030202592A1 (en) 2002-04-20 2003-10-30 Sohn Kwang Hoon Apparatus for encoding a multi-view moving picture
EP1515550A1 (en) * 2002-06-20 2005-03-16 Sony Corporation Decoding apparatus and decoding method

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0698312A (ja) 1992-09-16 1994-04-08 Fujitsu Ltd 画像高能率符号化方式
ZA951617B (en) 1994-03-04 1997-02-27 Lilly Co Eli Antithrombotic agents.
US6055012A (en) 1995-12-29 2000-04-25 Lucent Technologies Inc. Digital multi-view video compression with complexity and compatibility constraints
US6850567B1 (en) 1997-01-13 2005-02-01 Koninklijke Philips Electronics N.V. Embedding supplemental data in a digital video signal
JPH11252552A (ja) 1998-03-05 1999-09-17 Sony Corp ビデオ信号の圧縮符号化方法及び圧縮符号化装置、並びに、圧縮符号化データの多重化方法及び多重化装置
US6167084A (en) 1998-08-27 2000-12-26 Motorola, Inc. Dynamic bit allocation for statistical multiplexing of compressed and uncompressed digital video signals
KR100375708B1 (ko) 2000-10-28 2003-03-15 전자부품연구원 3차원 입체영상을 위한 다시점 비디오 시스템 및영상제조방법
KR100397511B1 (ko) 2001-11-21 2003-09-13 한국전자통신연구원 양안식/다시점 3차원 동영상 처리 시스템 및 그 방법
WO2003098939A1 (en) 2002-05-22 2003-11-27 Matsushita Electric Industrial Co., Ltd. Moving image encoding method, moving image decoding method, and data recording medium
CN1299502C (zh) 2002-06-20 2007-02-07 索尼株式会社 解码设备和解码方法
KR100475060B1 (ko) 2002-08-07 2005-03-10 한국전자통신연구원 다시점 3차원 동영상에 대한 사용자 요구가 반영된 다중화장치 및 방법
KR100751422B1 (ko) 2002-12-27 2007-08-23 한국전자통신연구원 스테레오스코픽 비디오 부호화 및 복호화 방법, 부호화 및복호화 장치
US7489342B2 (en) 2004-12-17 2009-02-10 Mitsubishi Electric Research Laboratories, Inc. Method and system for managing reference pictures in multiview videos
US7286689B2 (en) 2003-06-07 2007-10-23 Hewlett-Packard Development Company, L.P. Motion estimation for compression of calibrated multi-view image sequences
KR20060038408A (ko) 2003-06-30 2006-05-03 코닌클리케 필립스 일렉트로닉스 엔.브이. 오버컴플릿 웨이브릿 코딩 및 순환성 예측 맵핑을 사용하는비디오 처리를 위한 시스템 및 방법
US7778328B2 (en) 2003-08-07 2010-08-17 Sony Corporation Semantics-based motion estimation for multi-view video coding
CN1212014C (zh) 2003-08-18 2005-07-20 北京工业大学 基于时空域相关性快速运动估计的视频编码方法
WO2005055607A1 (en) 2003-12-08 2005-06-16 Electronics And Telecommunications Research Institute System and method for encoding and decoding an image using bitstream map and recording medium thereof
KR100987775B1 (ko) 2004-01-20 2010-10-13 삼성전자주식회사 영상의 3차원 부호화 방법
KR100679740B1 (ko) 2004-06-25 2007-02-07 학교법인연세대학교 시점 선택이 가능한 다시점 동영상 부호화/복호화 방법
US7444664B2 (en) 2004-07-27 2008-10-28 Microsoft Corp. Multi-view video format
US7671893B2 (en) 2004-07-27 2010-03-02 Microsoft Corp. System and method for interactive multi-view video
KR100584603B1 (ko) 2004-08-03 2006-05-30 학교법인 대양학원 다시점 영상의 다이렉트 모드 움직임 예측 방법 및 장치
US7924923B2 (en) 2004-11-30 2011-04-12 Humax Co., Ltd. Motion estimation and compensation method and device adaptive to change in illumination
WO2006062377A1 (en) 2004-12-10 2006-06-15 Electronics And Telecommunications Research Institute Apparatus for universal coding for multi-view video
US7710462B2 (en) 2004-12-17 2010-05-04 Mitsubishi Electric Research Laboratories, Inc. Method for randomly accessing multiview videos
US7468745B2 (en) 2004-12-17 2008-12-23 Mitsubishi Electric Research Laboratories, Inc. Multiview video decomposition and encoding
US7728878B2 (en) 2004-12-17 2010-06-01 Mitsubishi Electric Research Labortories, Inc. Method and system for processing multiview videos for view synthesis using side information
US8644386B2 (en) 2005-09-22 2014-02-04 Samsung Electronics Co., Ltd. Method of estimating disparity vector, and method and apparatus for encoding and decoding multi-view moving picture using the disparity vector estimation method
KR101276720B1 (ko) 2005-09-29 2013-06-19 삼성전자주식회사 카메라 파라미터를 이용하여 시차 벡터를 예측하는 방법,그 방법을 이용하여 다시점 영상을 부호화 및 복호화하는장치 및 이를 수행하기 위한 프로그램이 기록된 기록 매체
US9131247B2 (en) 2005-10-19 2015-09-08 Thomson Licensing Multi-view video coding using scalable video coding
ZA200805337B (en) 2006-01-09 2009-11-25 Thomson Licensing Method and apparatus for providing reduced resolution update mode for multiview video coding
CN101371571B (zh) 2006-01-12 2013-06-19 Lg电子株式会社 处理多视图视频
WO2007081176A1 (en) 2006-01-12 2007-07-19 Lg Electronics Inc. Processing multiview video
EP2005752A4 (en) 2006-03-30 2010-06-09 Lg Electronics Inc METHOD AND APPARATUS FOR DECODING / ENCODING A VIDEO SIGNAL
US9456222B2 (en) 2006-10-18 2016-09-27 Thomson Licensing Local illumination and color compensation without explicit signaling
BRPI0811469A8 (pt) 2007-06-28 2019-01-22 Thomson Licensing métodos e dispositivo em um codificador e decodificador para suportar decodificação de ciclo simples de vídeo codificado em imagem multivista
KR101003105B1 (ko) 2008-01-29 2010-12-21 한국전자통신연구원 어파인 변환 기반의 움직임 보상을 이용한 비디오 부호화 및 복호화 방법 및 장치
US8130277B2 (en) 2008-02-20 2012-03-06 Aricent Group Method and system for intelligent and efficient camera motion estimation for video stabilization

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030202592A1 (en) 2002-04-20 2003-10-30 Sohn Kwang Hoon Apparatus for encoding a multi-view moving picture
EP1515550A1 (en) * 2002-06-20 2005-03-16 Sony Corporation Decoding apparatus and decoding method

Also Published As

Publication number Publication date
KR20080094048A (ko) 2008-10-22
USRE44680E1 (en) 2013-12-31

Similar Documents

Publication Publication Date Title
KR100947234B1 (ko) 다시점 비디오의 처리 방법 및 장치
KR102436983B1 (ko) 비디오 신호 처리 방법 및 장치
KR101370919B1 (ko) 신호처리방법 및 장치
US20070177671A1 (en) Processing multiview video
JP5498963B2 (ja) ピクセルブロックに分割された画像または画像のシーケンスの符号化及び復号化
KR102081945B1 (ko) 비디오 신호 처리 방법 및 장치
EP2243297A1 (en) Methods and apparatus for implicit block segmentation in video encoding and decoding
KR101276847B1 (ko) 다시점 비디오의 처리
KR20080006494A (ko) 비디오 신호의 디코딩 방법 및 장치
KR20080060188A (ko) 비디오 신호 디코딩 방법 및 장치
KR102333745B1 (ko) 비디오 신호 처리 방법 및 장치
KR20140124440A (ko) 밝기 보상을 이용한 비디오 부호화/복호화 방법 및 장치
KR20080029944A (ko) 비디오 신호 처리 방법 및 장치
KR20140124438A (ko) 밝기 보상을 이용한 비디오 부호화/복호화 방법 및 장치

Legal Events

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

Payment date: 20160524

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170512

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180514

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190514

Year of fee payment: 7