KR100679022B1 - 계층간 필터링을 이용한 비디오 코딩 및 디코딩방법과,비디오 인코더 및 디코더 - Google Patents

계층간 필터링을 이용한 비디오 코딩 및 디코딩방법과,비디오 인코더 및 디코더 Download PDF

Info

Publication number
KR100679022B1
KR100679022B1 KR1020040094597A KR20040094597A KR100679022B1 KR 100679022 B1 KR100679022 B1 KR 100679022B1 KR 1020040094597 A KR1020040094597 A KR 1020040094597A KR 20040094597 A KR20040094597 A KR 20040094597A KR 100679022 B1 KR100679022 B1 KR 100679022B1
Authority
KR
South Korea
Prior art keywords
frames
video
video coding
layer
coding scheme
Prior art date
Application number
KR1020040094597A
Other languages
English (en)
Other versions
KR20060034192A (ko
Inventor
한우진
하호진
차상창
이재영
이배근
이교혁
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to BRPI0516826-0A priority Critical patent/BRPI0516826A/pt
Priority to JP2007534509A priority patent/JP2008515328A/ja
Priority to PCT/KR2005/003082 priority patent/WO2006043755A1/en
Priority to CA002584215A priority patent/CA2584215A1/en
Priority to EP05256418A priority patent/EP1657932A1/en
Priority to US11/251,917 priority patent/US20060083300A1/en
Publication of KR20060034192A publication Critical patent/KR20060034192A/ko
Application granted granted Critical
Publication of KR100679022B1 publication Critical patent/KR100679022B1/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/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
    • H04N19/615Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding using motion compensated temporal filtering [MCTF]
    • 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/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • 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/127Prioritisation of hardware or computational resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/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/146Data rate or code amount at the encoder output
    • H04N19/149Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
    • 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/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • 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/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • 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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/162User input
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/164Feedback from the receiver or from the transmission channel
    • 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/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
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/31Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/34Scalability techniques involving progressive bit-plane based encoding of the enhancement layer, e.g. fine granular scalability [FGS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/36Scalability techniques involving formatting the layers as a function of picture distortion after decoding, e.g. signal-to-noise [SNR] scalability
    • 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/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • 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/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • 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/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • 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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]

Abstract

계층간 필터링을 이용한 비디오 코딩 및 디코딩방법과, 비디오 인코더 및 디코더를 제공한다.
본 발명의 일 실시예에 따른 비디오 코딩방법은 (a) 비디오 프레임들을 제1 비디오 코딩방식으로 코딩하는 단계와, (b) 상기 제1 비디오 코딩방식으로 코딩된 프레임들을 계층간 필터링하는 단계와, (c) 상기 계층간 필터링된 프레임들을 참조하여 상기 비디오 프레임들을 제2 비디오 코딩방식으로 코딩하는 단계, 및 (d) 상기 제1 및 제2 비디오 코딩방식으로 코딩된 프레임들을 포함한 비트스트림을 생성하는 단계를 포함한다.
계층간 필터링, 웨이브렛, AVC, 비디오 코딩, 예측 평활화

Description

계층간 필터링을 이용한 비디오 코딩 및 디코딩방법과, 비디오 인코더 및 디코더{Video coding and decoding method using inter-layer filtering, video ecoder and decoder}
도 1은 비디오 압축이 적용되는 환경을 보여주는 도면이다.
도 2 및 도 3은 각각 다계층(multi-layer) 비디오 코딩에 의해 생성된 비트스트림의 구조의 예를 보여주는 도면이다.
도 4는 본 발명의 일 실시예에 따른 비디오 인코더의 구성을 보여주는 블록도이다.
도 5는 본 발명의 다른 실시예에 따른 비디오 인코더의 구성을 보여주는 블록도이다.
도 6은 본 발명의 일 실시예에 따른 시간적 필터링부의 구성을 보여주는 블록도이다.
도 7은 본 발명의 일 실시예에 따른 비디오 코딩과정을 보여주는 흐름도이다.
도 8은 본 발명의 일 실시예에 따른 제2 계층의 비디오 코딩과정을 보다 상세히 보여주는 흐름도이다.
도 9는 본 발명의 일 실시예에 따른 비디오 디코더의 구성을 보여주는 블록 도이다.
도 10는 본 발명의 다른 실시예에 따른 비디오 디코더의 구성을 보여주는 블록도이다.
도 11은 본 발명의 일 실시예에 따른 역 시간적 필터링부의 구성을 보여주는 블록도이다.
도 12은 본 발명의 일 실시예에 따른 비디오 디코딩과정을 보여주는 흐름도이다.
도 13은 본 발명의 일 실시예에 따른 제2 계층의 역 시간적 필터링과정을 보다 상세히 보여주는 흐름도이다.
본 발명은 다계층 비디오 코딩 기술에 관한 것으로, 보다 상세하게는 계층간 필터링을 이용한 비디오 코딩 기술에 관한 것이다.
인터넷을 포함한 정보통신 기술이 발달함에 따라 문자, 음성뿐만 아니라 화상통신이 증가하고 있다. 기존의 문자 위주의 통신 방식으로는 소비자의 다양한 욕구를 충족시키기에는 부족하며, 이에 따라 문자, 영상, 음악 등 다양한 형태의 정보를 수용할 수 있는 멀티미디어 서비스가 증가하고 있다. 멀티미디어 데이터는 그 양이 방대하여 대용량의 저장매체를 필요로하며 전송시에 넓은 대역폭을 필요로 한다. 예를 들면 640*480의 해상도를 갖는 24 bit 트루컬러의 이미지는 한 프레임 당 640*480*24 bit의 용량 다시 말해서 약 7.37Mbit의 데이터가 필요하다. 이를 초당 30 프레임으로 전송하는 경우에는 221Mbit/sec의 대역폭을 필요로 하며, 90분 동안 상영되는 영화를 저장하려면 약 1200G bit의 저장공간을 필요로 한다. 따라서 문자, 영상, 오디오를 포함한 멀티미디어 데이터를 전송하기 위해서는 압축코딩기법을 사용하는 것이 필수적이다.
비디오 데이터를 압축하는 기본적인 원리는 데이터의 중복(redundancy)을 없애는 과정이다. 이미지에서 동일한 색이나 객체가 반복되는 것과 같은 공간적 중복이나, 동영상 프레임에서 인접 프레임간의 변화가 거의 없는 것과 같은 시간적 중복, 또는 인간의 시각 및 지각 능력이 높은 주파수에 둔감한 것을 고려한 심리시각 중복을 없앰으로서 비디오 데이터를 압축할 수 있다.
도 1은 비디오 압축이 적용되는 환경을 보여주고 있다.
비디오 데이터는 비디오 인코더(110)에서 압축된다. 현재 알려진 비디오 압축방식은 MPEG-2, MPEG-4, H.263, H.264 등이 있으며, 이러한 압축방식은 DCT(Discrete Cosine Transform)에 기반한다. 한편, 최근에는 웨이브렛 변환에 기반한 스케일러블 비디오 코딩에 대한 연구가 활발하다. 압축된 비디오 데이터는 네트워크(120)를 통해 비디오 디코더(130)로 전달된다. 비디오 디코더(130)는 압축된 비디오 데이터를 디코딩하여 비디오 데이터를 복원한다.
비디오 인코더(110)는 네트워크(120)의 대역폭(bandwidth)을 넘지 않도록 비디오 데이터를 압축해야 압축된 비디오 데이터를 비디오 디코더(130)가 디코딩할 수 있다. 그러나 네트워크(120)의 통신 대역폭은 네트워크의 종류에 따라 다르다. 예를 들면 이더넷을 이용할 때의 통신 대역폭과, 무선 랜을 이용할 때의 통신 대역폭이 다르다. 또한, 셀룰러 통신망을 이용할 경우에 통신 대역폭은 매우 좁을 수 있다. 이에 따라 하나의 압축된 비디오 데이터에서 다양한 비트레이트의 압축된 비디오 데이터를 얻을 수 있는 방법, 특히 스케일러블 비디오 코딩에 대한 연구가 활발하다.
스케일러블 비디오 코딩은 스케일러빌리티를 갖도록 비디오 데이터를 코딩하는 비디오 압축방식을 의미한다. 스케일러빌리티란 하나의 비디오 시퀀스를 압축하여 얻은 비트스트림으로부터 해상도와 프레임 레이트 및 화질을 달리하는 다양한 비디오 시퀀스를 복원할 수 있는 특성을 의미한다. 시간적 스케일러빌리티는 MCTF(Motion Compensation Temporal Filtering), UMCTF(Unconstrained MCTF), STAR(Successive Temporal Approximation and Referencing) 등의 알고리즘으로 얻을 수 있다. 공간적 스케일러빌리티는 웨이브렛 변환 알고리즘으로 얻을 수 있으나, 최근에는 다계층(multi-layer) 기법에 대한 연구가 활발하다. SNR(Signal to Noise Ratio) 스케일러빌리티는 EZW, SPIHT, EZBC, EBCOT와 같은 양자화 알고리즘으로 얻을 수 있다.
최근에 스케일러블 비디오 코딩 알고리즘으로 다계층 비디오 코딩 알고리즘이 채용되고 있다. 종전에 비디오 다계층 비디오 코딩방식은 주로 하나의 비디오 코딩 알고리즘을 사용하였다. 최근에는 복수의 비디오 코딩 알고리즘을 사용하는 다계층 비디오 코딩방식에 대하여 관심이 증가하고 있다.
예를 들면, 다계층 비디오 코딩에 의해 도 2나 도 3과 같은 구조의 비트스트 림을 생성할 수 있다.
도 2를 참조하면, 비디오 인코더는 우수한 스케일러빌리티를 갖는 웨이브렛 코딩방식과 우수한 코딩효율을 갖는 MPEG-4 AVC(Advanced Video Coding)(이하, AVC 라 함) 코딩방식을 모두 사용한다. 비디오 인코더가 웨이브렛 코딩방식만을 이용하여 비디오 코딩을 하는 경우에, 저해상도에서 화질이 급격히 나빠지는 경향이 있다. 따라서 도 2의 비트스트림을 생성하기 위하여 비디오 인코더는 가장 낮은 해상도 계층을 AVC 코딩방식으로 코딩된 프레임들과, 이를 참조하여 가장 높은 해상도 계층을 웨이브렛 코딩방식된 프레임들을 포함한다. 인코딩과정에서 참조되는 코딩된 프레임은 비디오 코딩방식으로 코딩하여 얻은 프레임을 디코딩하여 재구성한 프레임을 의미한다.
도 3을 참조하면, 비디오 인코더는 우수한 스케일러빌리티를 갖는 웨이브렛 코딩방식과 우수한 코딩효율을 갖는 AVC 코딩방식을 모두 사용한다. 도 2의 비트스트림은 웨이브렛 코딩 계층과 AVC 코딩 계층의 단 두개의 계층을 갖지만, 도 3의 비트스트림은 각 해상도마다 웨이브렛 코딩 계층과 AVC 코딩 계층을 갖는다.
다계층 비디오 코딩을 할 경우에 먼저 코딩한 계층(기초계층)의 양자화 잡음 때문에 나중에 코딩한 계층(향상계층)의 코딩의 효율이 떨어지는 경향이 있다. 특히 서로 다른 특성을 갖는 복수의 비디오 코딩방식을 사용할 경우에 이러한 현상은 더 잘나타난다. 예를 들면, 도 2나 도 3과 같이 DCT(Discrete Cosine Transform)에 기반한 AVC 코딩방식과 웨이브렛 변환에 기반한 웨이브렛 코딩방식을 모두 사용하는 경우에 웨이브렛 계층의 코딩 효율이 떨어질 수 있다.
본 발명은 상술한 문제점을 해결하기 위해 안출된 것으로서, 본 발명의 목적은 다계층 비디오 코딩의 효율을 높이기 위한 계층간 필터링을 이용한 비디오 코딩 및 디코딩방법과 비디오 인코더 및 디코더를 제공하는 것이다.
본 발명의 목적은 이상에서 언급한 목적들로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해되어질 수 있을 것이다.
상기 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 비디오 코딩방법은 (a) 비디오 프레임들을 제1 비디오 코딩방식으로 코딩하는 단계와, (b) 상기 제1 비디오 코딩방식으로 코딩된 프레임들을 계층간 필터링하는 단계와, (c) 상기 계층간 필터링된 프레임들을 참조하여 상기 비디오 프레임들을 제2 비디오 코딩방식으로 코딩하는 단계, 및 (d) 상기 제1 및 제2 비디오 코딩방식으로 코딩된 프레임들을 포함한 비트스트림을 생성하는 단계를 포함한다.
상기 목적을 달성하기 위하여, 본 발명의 다른 실시예에 따른 비디오 코딩방법은 (a) 비디오 프레임들을 다운샘플링하여 저해상도 프레임들을 생성하는 단계와, (b) 상기 저해상도 비디오 프레임들을 제1 비디오 코딩방식으로 코딩하는 단계와, (c) 상기 제1 비디오 코딩방식으로 코딩된 프레임들을 상기 비디오 프레임의 해상도로 업샘플링하는 단계와, (d) 상기 업샘플링된 프레임들을 계층간 필터링하는 단계와, (e) 상기 계층간 필터링된 프레임들을 참조하여 상기 비디오 프레임들을 제2 비디오 코딩방식으로 코딩하는 단계, 및 (f) 상기 제1 및 제2 비디오 코딩방식으로 코딩된 프레임들을 포함한 비트스트림을 생성하는 단계를 포함한다.
상기 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 비디오 인코더는 비디오 프레임들을 제1 비디오 코딩방식으로 코딩하는 제1 비디오 코딩부와, 상기 제1 비디오 코딩방식으로 코딩된 프레임들을 계층간 필터링하는 계층간 필터와, 상기 계층간 필터링된 프레임들을 참조하여 상기 비디오 프레임들을 제2 비디오 코딩방식으로 코딩하는 제2 비디오 코딩부, 및 상기 제1 및 제2 비디오 코딩방식으로 코딩된 프레임들을 포함한 비트스트림을 생성하는 비트스트림 생성부를 포함한다.
상기 목적을 달성하기 위하여, 본 발명의 다른 실시예에 따른 비디오 인코더는 비디오 프레임들을 다운샘플링하여 저해상도 프레임들을 생성하는 다운샘플러와, 상기 저해상도 비디오 프레임들을 제1 비디오 코딩방식으로 코딩하는 제1 비디오 코딩부와, 상기 제1 비디오 코딩방식으로 코딩된 프레임들을 업샘플링하는 업샘플러와, 상기 업샘플링된 프레임들을 계층간 필터링하는 계층간 필터와, 상기 계층간 필터링된 프레임들을 참조하여 상기 비디오 프레임들을 제2 비디오 코딩방식으로 코딩하는 제2 비디오 코딩부, 및 상기 제1 및 제2 비디오 코딩방식으로 코딩된 프레임들을 포함한 비트스트림을 생성하는 비트스트림 생성부를 포함한다.
상기 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 비디오 디코딩방법은 (a) 비트스트림으로부터 제1 비디오 코딩방식으로 코딩된 프레임들 및 제2 비디오 코딩방식으로 코딩된 프레임들을 추출하는 단계와, (b) 상기 제1 비디오 코딩 방식으로 코딩된 프레임들을 제1 비디오 디코딩방식으로 디코딩하여 제1 계층 프레임들을 재구성하는 단계와, (c) 상기 재구성된 제1 계층 프레임들을 계층간 필터링하는 단계, 및 (d) 상기 계층간 필터링된 제1 계층 프레임들을 참조하여 상기 제2 비디오 코딩방식으로 코딩된 프레임들을 제2 비디오 디코딩방식으로 디코딩하여 제2 계층 프레임들을 재구성하는 단계를 포함한다.
상기 목적을 달성하기 위하여, 본 발명의 다른 실시예에 따른 비디오 디코딩방법은 (a) 비트스트림으로부터 제1 비디오 코딩방식으로 코딩된 프레임들 및 제2 비디오 코딩방식으로 코딩된 프레임들을 추출하는 단계와, (b) 상기 제1 비디오 코딩방식으로 코딩된 프레임들을 제1 비디오 디코딩방식으로 디코딩하여 제1 계층 프레임들을 재구성하는 단계와, (c) 상기 재구성된 제1 계층 프레임들을 업샘플링하는 단계와, (d) 상기 업샘플링된 제1 계층 프레임들을 계층간 필터링하는 단계, 및 (e) 상기 계층간 필터링된 제1 계층 프레임들을 참조하여 상기 제2 비디오 코딩방식으로 코딩된 프레임들을 제2 비디오 디코딩방식으로 디코딩하여 제2 계층 프레임들을 재구성하는 단계를 포함한다.
상기 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 비디오 디코더는 비트스트림으로부터 제1 비디오 코딩방식으로 코딩된 프레임들 및 제2 비디오 코딩방식으로 코딩된 프레임들을 추출하는 비트스트림 해석부와, 상기 제1 비디오 코딩방식으로 코딩된 프레임들을 제1 비디오 디코딩방식으로 디코딩하여 제1 계층 프레임들을 재구성하는 제1 비디오 디코딩부와, 상기 재구성된 제1 계층 프레임들을 계층간 필터링하는 계층간 필터, 및 상기 계층간 필터링된 제1 계층 프레임들을 참조 하여 상기 제2 비디오 코딩방식으로 코딩된 프레임들을 제2 비디오 디코딩방식으로 디코딩하여 제2 계층 프레임들을 재구성하는 제1 비디오 디코딩부를 포함한다.
상기 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 비디오 디코더는 비트스트림으로부터 제1 비디오 코딩방식으로 코딩된 프레임들 및 제2 비디오 코딩방식으로 코딩된 프레임들을 추출하는 비트스트림 해석부와, 상기 제1 비디오 코딩방식으로 코딩된 프레임들을 제1 비디오 디코딩방식으로 디코딩하여 제1 계층 프레임들을 재구성하는 제1 비디오 디코딩부와, 상기 재구성된 제1 계층 프레임들을 업샘플링하는 업샘플러와, 상기 업샘플링된 제1 계층 프레임들을 계층간 필터링하는 계층간 필터, 및 상기 계층간 필터링된 제1 계층 프레임들을 참조하여 상기 제2 비디오 코딩방식으로 코딩된 프레임들을 제2 비디오 디코딩방식으로 디코딩하여 제2 계층 프레임들을 재구성하는 제2 비디오 디코딩부를 포함한다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예들을 설명한다. 설명의 편 의를 위하여 이하에서 본 발명에 따른 실시예들은 2개의 계층을 갖는 예시적으로 경우를 설명한다.
도 4는 본 발명의 일 실시예에 따른 비디오 인코더의 구성을 보여주는 블록도이다.
비디오 인코더는 제1 비디오 코딩부(410)와 제2 비디오 코딩부(420)와 비트스트림 생성부(430), 및 계층간 필터(440)를 포함한다.
제1 비디오 코딩부(410)는 시간적 필터링부(411)와 DCT 변환부(412)와 양자화부(413)를 포함한다. 제1 비디오 코딩부(410)는 AVC 방식으로 비디오 프레임을 코딩한다.
시간적 필터링부(411)는 비디오 프레임(400)을 입력받아 비디오 프레임(400)이 갖고 있는 인접한 프레임들과의 시간적 중복을 제거한다. 일 실시예에 있어서, 시간적 필터링부(411)는 MCTF(Motion Compensated Temporal Filtering) 알고리즘으로 프레임들간의 시간적 중복을 제거한다. MCTF는 시간적 스케일러빌리티를 갖는 알고리즘으로서 인접하는 프레임들간의 시간적 중복을 제거한다. 현재 MCTF는 5/3 필터방식이 주로 사용된다. 이 밖에 시간적 스케일러빌리티를 갖는 시간적 필터링 알고리즘으로는 UMCTF나 STAR 등을 사용할 수 있다.
DCT 변환부(412)는 시간적 필터링된 프레임을 DCT 변환한다. DCT 변환은 소정의 사이즈, 예를 들면 8*8 또는 4*4 사이즈의 블록단위로 수행된다. DCT 변환을 거친 블록은 DCT 변환을 거치기 전보다 엔트로피가 감소한다.
양자화부(513)는 DCT 변환된 프레임을 양자화한다. AVC에서 양자화는 양자 화 파라미터(Qp) 값에 따라 결정된다. 양자화된 프레임은 스캐닝 과정과 엔트로피 코딩 과정을 거친 후에 비트스트림에 포함된다.
제2 비디오 코딩부(420)는 시간적 필터링부(421)와 웨이브렛 변환부(422)와 양자화부(423)를 포함한다. 제2 비디오 코딩부(420)는 웨이브렛 방식으로 비디오 프레임을 코딩한다.
시간적 필터링부(421)는 비디오 프레임(400)을 입력받아 비디오 프레임(400)이 갖고 있는 인접한 프레임들과의 시간적 중복을 제거한다. 일 실시예에 있어서, 시간적 필터링부(421)는 MCTF(Motion Compensated Temporal Filtering) 알고리즘으로 프레임들간의 시간적 중복을 제거한다. MCTF는 시간적 스케일러빌리티를 갖는 알고리즘으로서 인접하는 프레임들간의 시간적 중복을 제거한다. 이 밖에 시간적 스케일러빌리티를 갖는 시간적 필터링 알고리즘으로는 UMCTF나 STAR 등을 사용할 수 있다.
웨이브렛 변환부(422)는 시간적 필터링된 프레임을 웨이브렛 변환한다. 웨이브렛 변환은 블록단위로 수행되는 DCT 변환과는 달리 프레임단위로 수행된다. 웨이브렛 변환은 공간적 스케일러빌리티를 갖는 변환 알고리즘으로서, 하나의 프레임을 저주파 서브밴드(LL 서브밴드)와 3개의 고주파 서브밴드들(LH, HL, HH 서브밴드들)로 나눈다. 저주파 서브밴드(LL 서브밴드)는 웨이브렛 변환되기 전 프레임의 1/4 크기를 가지며, 웨이브렛 변환되기 전 프레임과 거의 유사한 이미지를 갖는다. 또한 웨이브렛 변환은 저주파 서브밴드(LL 서브밴드)를 다시 저주파 서브밴드(LLLL 서브밴드)와 고주파 서브밴드들(LLLH, LLHL, LLHH)로 나눈다. 저주파 서브밴드 (LLLL 서브밴드)는 저주파 서브밴드(LL 서브밴드)의 1/4 크기를 가지며, 저주파 서브밴드(LL 서브밴드)와 거의 유사한 이미지를 갖는다. 현재 웨이브렛 변환에서는 9/7 필터 방식이 주로 사용되고 있다.
양자화부(513)는 웨이브렛 변환된 프레임을 양자화한다. 양자화는 임베디드 양자화 알고리즘, 예를 들면 EZW, SPIHT, EZBC, EBCOT 등을 사용할 수 있다. 임베디드 양자화 알고리즘은 SNR(Signal to Noise Ratio) 스케일러빌리티를 제공한다.
시간적 필터링부(421)은 비디오 프레임(400)의 시간적 중복을 제거할 때 인접한 프레임들을 참조하지만 제1 비디오 코딩부(410)에서 코딩된 프레임을 참조하기도 한다. 제1 비디오 코딩부(410)는 블록 단위로 DCT 변환하고 양자화하기 때문에 블록 아티팩트가 발생할 수 있다. 블록 아티팩트는 제2 비디오 코딩부(420)의 웨이브렛 코딩의 효율을 낮춘다. 즉, 블록 아티팩트가 있는 프레임은 웨이브렛 변환을 거치면 노이즈가 변환된 프레임의 전체로 퍼지게 되며, 이는 웨이브렛 코딩 효율의 저하를 불러온다.
따라서, 도 4의 비디오 인코더는 계층간의 잡음을 제거하기 위하여 계층간 필터(440)를 더 포함한다. 계층간 필터(440)는 제1 비디오 코딩방식으로 코딩된 프레임을 제2 비디오 코딩방식에 적합하도록 필터링한다. 도 4의 비디오 인코더와 같이 계층간에 서로 다른 비디오 코딩방식이 사용되는 경우에 계층간 필터링은 더욱 필요하다.
계층간 필터(440)는 DCT 변환방식을 채용한 AVC 코딩방식에 의해 코딩된 프레임을 웨이브렛 코딩과정에서 참조되기에 적합하도록 필터링한다. 일 실시예에 있어서, AVC 코딩된 프레임을 웨이브렛 필터로 업샘플링한 후에 MPEG 필터로 다운샘플링한다. 그렇지만 이는 예시적인 것으로서, 계층간 필터(440)는 웨이브렛 필터로 업샘플링된 프레임을 다른 필터로 다운샘플링할 수도 있다. 계층간 필터(440)가 사용하는 다운샘플링 필터의 특성은 주파수 영역에서 볼 때 차단 주파수에서 기울기가 급격히 떨어지는 저역통과필터의 특성을 갖는 것이 바람직하다. 또한 계층간 필터(440)는 계층간 필터링된 프레임이 제2 비디오 코딩부(420)에서 잘 참조될 수 있도록 하는 어떠한 단일 또는 복수의 필터를 사용할 수도 있다.
비트스트림 생성부(430)는 AVC 코딩된 프레임(431)와 웨이브렛 코딩된 프레임(432)과 움직임 벡터 및 기타 필요한 정보를 포함하는 비트스트림을 생성한다.
도 5는 본 발명의 다른 실시예에 따른 비디오 인코더의 구성을 보여주는 블록도이다.
비디오 인코더는 제1 비디오 코딩부(510)와 제2 비디오 코딩부(520)와 비트스트림 생성부(530)와, 계층간 필터(540), 업샘플러(550) 및 다운샘플러(560)를 포함한다. 도 5의 비디오 인코더는 도 5의 비디오 인코더와는 비디오 프레임과 저해상도 비디오 프레임을 서로 다른 비디오 코딩방식으로 코딩한다. 이를 위하여 다운샘플러(560)는 비디오 프레임(500)을 다운샘플링하여 해상도를 낮추어 저해상도 프레임을 생성한다.
제1 비디오 코딩부(510)는 저해상도 프레임을 비디오 코딩하며, 시간적 필터링부(511)와 DCT 변환부(512)와 양자화부(513)를 포함한다. 제1 비디오 코딩부(510)는 AVC 방식으로 저해상도 비디오 프레임을 코딩한다.
시간적 필터링부(511)는 저해상도 프레임을 입력받아 저해상도 프레임이 갖고 있는 인접한 저해상도 프레임들과의 시간적 중복을 제거한다. 일 실시예에 있어서, 시간적 필터링부(511)는 MCTF(Motion Compensated Temporal Filtering) 알고리즘으로 저해상도 프레임들간의 시간적 중복을 제거한다. MCTF는 시간적 스케일러빌리티를 갖는 알고리즘으로서 인접하는 저해상도 프레임들간의 시간적 중복을 제거한다. 현재 MCTF는 5/3 필터방식이 주로 사용된다. 이 밖에 시간적 스케일러빌리티를 갖는 시간적 필터링 알고리즘으로는 UMCTF나 STAR 등을 사용할 수 있다.
DCT 변환부(512)는 시간적 필터링된 프레임을 DCT 변환한다. DCT 변환은 소정의 사이즈, 예를 들면 8*8 또는 4*4 사이즈의 블록단위로 수행된다. DCT 변환을 거친 블록은 DCT 변환을 거치기 전보다 엔트로피가 감소한다.
양자화부(513)는 DCT 변환된 프레임을 양자화한다. AVC에서 양자화는 양자화 파라미터(Qp) 값에 따라 결정된다. 양자화된 프레임은 재순서화(reordering) 과정과 엔트로피 코딩 과정을 거친 후에 비트스트림에 포함된다.
업샘플러(550)는 AVC 코딩된 프레임을 프레임(500)의 해상도로 업샘플링한다.
계층간 필터(540)는 업샘플링된 프레임을 웨이브렛 코딩과정에서 참조되기에 적합하도록 필터링한다. 일 실시예에 있어서, 업샘플링된 프레임을 웨이브렛 필터로 다시 업샘플링한 후에 MPEG 필터로 다운샘플링한다. 그렇지만 이는 예시적인 것으로서, 계층간 필터(540)는 웨이브렛 필터로 업샘플링된 프레임을 다른 필터로 다운샘플링할 수도 있다. 계층간 필터(540)가 사용하는 다운샘플링 필터의 특성은 주파수 영역에서 볼 때 차단 주파수에서 기울기가 급격히 떨어지는 저역통과필터의 특성을 갖는 것이 바람직하다. 또한 계층간 필터(540)는 계층간 필터링된 프레임이 제2 비디오 코딩부(520)에서 잘 참조될 수 있도록 하는 어떠한 단일 또는 복수의 필터를 사용할 수도 있다.
제2 비디오 코딩부(520)는 시간적 필터링부(521)와 웨이브렛 변환부(522)와 양자화부(523)를 포함한다. 제2 비디오 코딩부(520)는 웨이브렛 방식으로 비디오 프레임을 코딩한다.
시간적 필터링부(521)는 비디오 프레임(500)을 입력받아 비디오 프레임(500)이 갖고 있는 인접한 프레임들과의 시간적 중복을 제거한다. 일 실시예에 있어서, 시간적 필터링부(521)는 MCTF(Motion Compensated Temporal Filtering) 알고리즘으로 프레임들간의 시간적 중복을 제거한다. MCTF는 시간적 스케일러빌리티를 갖는 알고리즘으로서 인접하는 프레임들간의 시간적 중복을 제거한다. 이 밖에 시간적 스케일러빌리티를 갖는 시간적 필터링 알고리즘으로는 UMCTF나 STAR 등을 사용할 수 있다.
웨이브렛 변환부(522)는 시간적 필터링된 프레임을 웨이브렛 변환한다. 웨이브렛 변환은 블록단위로 수행되는 DCT 변환과는 달리 프레임단위로 수행된다. 웨이브렛 변환은 공간적 스케일러빌리티를 갖는 변환 알고리즘으로서, 하나의 프레임을 저주파 서브밴드(LL 서브밴드)와 3개의 고주파 서브밴드들(LH, HL, HH 서브밴드들)로 나눈다. 저주파 서브밴드(LL 서브밴드)는 웨이브렛 변환되기 전 프레임의 1/4 크기를 가지며, 웨이브렛 변환되기 전 프레임과 거의 유사한 이미지를 갖는다. 또한 웨이브렛 변환은 저주파 서브밴드(LL 서브밴드)를 다시 저주파 서브밴드(LLLL 서브밴드)와 고주파 서브밴드들(LLLH, LLHL, LLHH)로 나눈다. 저주파 서브밴드(LLLL 서브밴드)는 저주파 서브밴드(LL 서브밴드)의 1/4 크기를 가지며, 저주파 서브밴드(LL 서브밴드)와 거의 유사한 이미지를 갖는다. 현재 웨이브렛 변환에서는 9/7 필터 방식이 주로 사용되고 있다.
양자화부(513)는 웨이브렛 변환된 프레임을 양자화한다. 양자화는 임베디드 양자화 알고리즘, 예를 들면 EZW, SPIHT, EZBC, EBCOT 등을 사용할 수 있다. 임베디드 양자화 알고리즘은 SNR(Signal to Noise Ratio) 스케일러빌리티를 제공한다.
시간적 필터링부(521)은 비디오 프레임(500)의 시간적 중복을 제거할 때 인접한 프레임들을 참조하지만 제1 비디오 코딩부(510)에서 코딩된 프레임을 참조하기도 한다. 제1 비디오 코딩부(510)에서 코딩된 프레임은 업샘플링되고, 계층간 필터링된 후에 시간적 필터링부(521)에 제공된다.
비트스트림 생성부(430)는 AVC 코딩된 프레임(531)와 웨이브렛 코딩된 프레임(532)과 움직임 벡터 및 기타 필요한 정보를 포함하는 비트스트림을 생성한다.
시간적 필터링부에 대한 보다 상세한 구성은 도 6을 참조하여 설명한다.
도 6은 본 발명의 일 실시예에 따른 시간적 필터링부의 구성을 보여주는 블록도이다. 시간적 필터링부는 도 4 및 도 5의 제1 비디오 코딩부와 제2 비디오 코딩부의 모두에서 사용이 가능하지만, 편의상 도 4의 제2 비디오 코딩부에 적용된 것을 기준으로 설명한다.
시간적 필터링부(600)는 GOP 단위로 MCTF 방식으로 비디오 프레임들의 시간 적 중복을 제거한다. 이를 위하여 시간적 필터링부(600)는 예측 프레임을 생성하는 예측 프레임 생성부(610)와, 예측 프레임을 부드럽게 하는 예측 평활화부(620)와, 부드러워진 예측 프레임을 이용하여 비디오 프레임으로부터 차분 프레임을 생성하는 차분 프레임 생성부(630), 및 생성된 차분 프레임을 이용하여 비디오 프레임을 업데이트하는 업데이트부(640)를 포함한다.
예측 프레임 생성부(610)는 차분 프레임의 생성을 위해 비디오 프레임과 비교될 예측 프레임을 생성한다. 예측 프레임 생성부(610)는 예측 프레임을 생성하기 위하여 상기 비디오 프레임에 인접한 비디오 프레임들 및 계층간 필터링된 프레임을 참조한다. 예측 프레임 생성부(610)는 상기 비디오 프레임의 각 블록에 매칭되는 블록을 참조 프레임들(인접한 비디오 프레임들 및 계층간 필터링된 프레임)에서 찾거나(인터 코딩), 상기 비디오 프레임의 다른 블록에서 찾는다(인트라 코딩).
예측 평활화부(620)는 예측 프레임(prediction frame)을 부드럽게 한다. 왜냐하면 참조 프레임들에서 찾은, 상기 비디오 프레임의 블록에 대응되는 블록들로 구성된 예측 프레임의 블록경계에서 블록화 현상이 나타나기 때문이다. 일 실시예에 있어서, 예측 평활화부(620)는 예측 프레임의 블록간 경계에 있는 픽셀들을 디블록킹한다. 디블록킹에 알고리즘은 H.264 등의 비디오 코딩 방식에서 널리 사용되고 있는 알고리즘으로 이에 대한 설명은 생략한다.
차분 프레임 생성부(630)는 상기 비디오 프레임과 평활화된 예측 프레임을 비교하여 시간적 중복이 제거된 차분 프레임을 생성한다.
업데이트부(640)는 차분 프레임을 이용하여 다른 비디오 프레임들을 업데이 트 한다. 업데이트된 비디오 프레임들은 다시 예측 프레임 생성부(611)에 제공된다.
예를 들어, GOP가 8개의 비디오 프레임들으로 구성된 경우에 시간적 필터링부(600)는 1, 3, 5, 7번 프레임들의 시간적 중복을 제거하여 차분 프레임들을 생성하고, 1, 3, 5, 7번 차분 프레임들을 이용하여 0, 2, 4, 6번 프레임들을 업데이트 한다. 시간적 필터링부(600)는 업데이트된 0, 2, 4, 6번 프레임들 중에서 2, 6번 프레임들의 시간적 중복을 제거하여 차분 프레임들을 생성하고, 2, 6번 차분 프레임들을 이용하여 0, 4번 프레임들을 업데이트한다. 그리고 나서 시간적 필터링부(600)는 업데이트된 0, 4번 프레임들 중에서 4번 프레임의 시간적 중복을 제거하여 차분 프레임을 생성하고, 4번 차분 프레임을 이용하여 0번 프레임을 업데이트 한다. 이러한 과정을 통해 시간적 필터링부(600)는 8개의 비디오 프레임들을 시간적 필터링하여 하나의 저주파 프레임(업데이트된 0번 프레임) 및 7개의 고주파 프레임들(1 내지 7번 차분 프레임들)을 얻는다.
비디오 코딩과정 및 시간적 필터링과정에 대한 설명은 도 7 및 도 8을 참조하여 설명한다. 두 개의 계층으로 비디오 코딩하는 과정을 설명한다.
먼저 도 7을 참조하여 비디오 코딩과정을 설명한다.
비디오 인코더는 비디오 프레임을 입력받는다(S710).
비디오 프레임이 입력되면, 비디오 인코더는 입력받은 비디오 인코더를 AVC 코딩방식으로 코딩한다(S720). 본 실시예에서 제1 계층을 AVC 코딩방식으로 코딩하는 이유는 AVC 코딩방식이 현재 알려진 코딩방식 중에서 코딩효율이 가장 좋기 때문이다. 그렇지만 이는 예시적인 것으로서 다른 비디오 코딩 알고리즘으로 제1 계층을 코딩할 수도 있다.
제1 계층의 코딩이 끝나면, 비디오 인코더는 계층간 필터링 과정을 수행한다(S730). 비디오 인코더는 AVC 코딩된 프레임이 제2 계층의 코딩과정에서 잘 참조될 수 있도록 AVC 코딩된 프레임을 필터링한다. 일 실시예에 있어서, 계층간 필터링 과정은 AVC 코딩된 프레임을 웨이브렛방식으로 업샘플링한 후에 MPEG 방식으로 다운샘플링한다
계층간 필터링과정이 끝나면, 비디오 인코더는 계층간 필터링된 프레임을 참조하여 비디오 프레임을 웨이브렛 코딩방식으로 코딩한다(S740).
웨이브렛 코딩과정이 끝나면, 비디오 인코더는 AVC 코딩된 프레임과 웨이브렛 코딩된 프레임을 포함하는 비트스트림을 생성한다(S750).
한편, 제1 계층과 제2 계층의 해상도가 다른 경우에 비디오 인코더는 AVC 코딩과정에서 입력된 비디오 프레임을 다운샘플링하여 얻은 저해상도 프레임을 사용한다. AVC 코딩과정이 끝난 후에 비디오 인코더는 AVC 코딩된 프레임의 해상도를 바꾼다. 예를 들어, 제1 계층의 해상도가 제2 계층의 해상도보다 저해상도인 경우에, 비디오 인코더는 제2 계층의 해상도로 AVC 코딩된 프레임을 업샘플링한다. 그리고 나서 비디오 인코더는 업샘플링된 프레임을 계층간 필터링을 한다.
도 8은 제2 계층의 비디오 코딩과정을 보다 상세히 보여주는 흐름도이다.
제2 비디오 코딩부는 비디오 프레임 및 제1 계층의 비디오 코딩된 프레임을 계층간 필터링하여 얻은 계층간 필터링된 프레임을 입력받는다(S810).
비디오 프레임 및 계층간 필터링된 프레임이 입력되면, 제2 비디오 코딩부는 비디오 프레임의 시간적 중복을 제거하는데 사용될 예측 프레임을 생성하기 위하여 움직임 추정과정을 수행한다(S820). 움직임 추정 알고리즘으로 블록매칭 알고리즘, 계층적 가변 사이즈 블록(Hierachical Varible Size Block) 알고리즘 등 다양한 알고리즘이 알려져 있다.
움직임 추정과정이 끝나면, 제2 비디오 코딩부는 움직임 추정과정에서 얻은 움직임 벡터를 이용하여 예측 프레임을 생성한다(S830).
예측 프레임이 생성되면, 제2 비디오 코딩부는 예측 프레임을 평활화한다(S840). 예측 프레임을 평활화하는 이유는 차분 프레임에서 블록화가 적게 생기도록 하기 위함이다. 차분 프레임에서 블록의 경계가 뚜렷하게 나타날 경우에 웨이브렛 변환 및 양자화 과정에서 코딩효율이 나빠지게 되기 때문이다.
예측 프레임 평활화가 끝나면, 제2 비디오 코딩부는 예측 프레임과 비디오 프레임을 비교하여 차분 프레임을 생성한다(S850). 차분 프레임은 MCTF 과정을 통해 생성된 고주파 프레임(H 프레임)에 해당한다.
차분 프레임이 생성되면, 시간적 필터링부는 차분 프레임을 이용하여 다른 비디오 프레임을 업데이트시킨다(S860). 업데이트된 프레임은 MCTF 과정을 통해 생성된 저주파 프레임(L 프레임)에 해당한다.
S820 내지 S860 과정을 통해 GOP 단위로 저주파 프레임 및 고주파 프레임들을 생성하고 나면, 제2 비디오 코딩부는 시간적 필터링된 프레임들(저주파 프레임 및 고주파 프레임들)을 웨이브렛 변환한다(870). 웨이브렛 변환방식으로는 9/7 필 터를 사용할 수 있지만, 11/9 또는 13/11 필터 등을 사용할 수도 있다.
제2 비디오 코딩부는 웨이브렛 변환된 프레임들을 양자화한다(S880). 양자화 알고리즘으로 EZW, SPIHT, EZBC, EBCOT 등의 임베디드 양자화 알고리즘을 사용할 수 있다.
다음으로 비디오 디코더 및 디코딩 과정에 대해 설명한다. 기본적으로 비디오 디코딩과정은 비디오 코딩과정과 반대로 수행된다. 그러나 비디오 코딩과정과 비디오 디코딩과정에서 계층간의 코딩순서 및 디코딩 순서는 동일하다. 즉, 비디오 인코더가 제1 계층을 코딩하고나서 제2 계층을 코딩하는 경우에, 비디오 디코더도 제1 계층을 디코딩하고나서 제2 계층을 디코딩한다.
편의상 2개의 계층을 갖는 비트스트림으로부터 비디오 프레임을 재구성하는 비디오 디코더를 설명한다.
도 9는 제1 계층과 제2 계층이 동일한 해상도인 경우에 비디오 디코더의 구성을 보여주고 있으며, 도 10은 제1 계층의 해상도가 제2 계층의 해상도 보다 낮은 해상도를 갖는 경우에 비디오 디코더의 구성을 보여주고 있다.
도 9를 참조하면, 비디오 디코더는 비트스트림 해석부(900)와, 제1 비디오 디코딩부(910)와, 제2 비디오 디코딩부(920), 및 계층간 필터링부(940)를 포함한다.
비트스트림 해석부(900)는 입력된 비트스트림을 해석하여, 제1 비디오 코딩방식으로 코딩된 프레임들과 제2 비디오 코딩방식으로 코딩된 프레임들을 추출한다. 제1 비디오 코딩방식으로 코딩된 프레임들은 제1 비디오 디코딩부(910)로 제 공되고, 제2 비디오 코딩방식으로 코딩된 프레임들은 제2 비디오 디코딩부(920)로 제공된다.
제1 비디오 디코딩부(910)는 역 양자화부(911)와, 역 DCT 변환부(912), 및 역 시간적 필터링부(913)를 포함한다.
역 양자화부(911)는 제1 비디오 코딩방식으로 코딩된 프레임들을 역 양자화한다. 역 양자화 과정은 엔트로피 디코딩 과정과, 역 스캐닝 과정 및 양자화 테이블을 참조하여 DCT 변환된 프레임들을 재구성하는 과정을 포함할 수 있다.
역 DCT 변환부(912)는 역 양자화된 프레임들을 역 DCT 변환한다.
역 시간적 필터링부(913)는 역 DCT 변환된 프레임들로부터 제1 계층의 비디오 프레임들을 재구성한다. 재구성된 제1 계층 프레임은 원래의 비디오 프레임을 낮은 비트레이트로 코딩한 후에, 다시 디코딩하여 재구성한 프레임에 해당한다.
계층간 필터(940)는 재구성된 제1 계층 프레임을 계층간 필터링한다. 계층간 필터링 알고리즘으로는 디블록킹 알고리즘이 사용될 수 있다.
제2 비디오 디코딩부(920)는 역 양자화부(921)와, 역 웨이브렛 변환부(922), 및 역 시간적 필터링부(923)를 포함한다.
역 양자화부(921)는 제2 비디오 코딩방식으로 코딩된 프레임들을 역 양자화한다. 역 양자화 과정은 엔트로피 디코딩 과정과, 역 스캐닝 과정 및 양자화 테이블을 참조하여 웨이브렛 변환된 프레임들을 재구성하는 과정을 포함할 수 있다.
역 웨이브렛 변환부(922)는 역 양자화된 프레임들을 역 웨이브렛 변환한다.
역 시간적 필터링부(923)는 역 웨이브렛 변환된 프레임들로부터 제2 계층의 비디오 프레임들을 재구성한다. 이 때, 역 시간적 필터링부(923)은 계층간 필터링된 프레임을 참조한다. 재구성된 제2 계층 프레임은 원래의 비디오 프레임을 높은 비트레이트로 코딩한 후에, 다시 디코딩하여 재구성한 프레임에 해당한다.
도 10를 참조하면, 비디오 디코더는 비트스트림 해석부(1000)와, 제1 비디오 디코딩부(1010)와, 제2 비디오 디코딩부(1020), 계층간 필터링부(1040), 및 업샘플러(1050)을 포함한다.
비트스트림 해석부(1000)는 입력된 비트스트림을 해석하여, 제1 비디오 코딩방식으로 코딩된 프레임들과 제2 비디오 코딩방식으로 코딩된 프레임들을 추출한다. 제1 비디오 코딩방식으로 코딩된 프레임은 제2 비디오 코딩방식으로 코딩된 프레임보다 낮은 해상도를 갖는다. 제1 비디오 코딩방식으로 코딩된 프레임들은 제1 비디오 디코딩부(1010)로 제공되고, 제2 비디오 코딩방식으로 코딩된 프레임들은 제2 비디오 디코딩부(1020)로 제공된다.
제1 비디오 디코딩부(1010)는 역 양자화부(1011)와, 역 DCT 변환부(1012), 및 역 시간적 필터링부(1013)를 포함한다.
역 양자화부(1011)는 제1 비디오 코딩방식으로 코딩된 프레임들을 역 양자화한다. 역 양자화 과정은 엔트로피 디코딩 과정과, 역 스캐닝 과정 및 양자화 테이블을 참조하여 DCT 변환된 프레임들을 재구성하는 과정을 포함할 수 있다.
역 DCT 변환부(1012)는 역 양자화된 프레임들을 역 DCT 변환한다.
역 시간적 필터링부(1013)는 역 DCT 변환된 프레임들로부터 제1 계층의 비디오 프레임들을 재구성한다. 재구성된 제1 계층 프레임은 원래의 비디오 프레임을 다운샘플링하고 코딩한 후에, 다시 디코딩하여 재구성한 프레임에 해당한다.
업샘플러(1050)는 재구성된 제2 계층의 해상도로 제1 계층 프레임을 업샘플링한다.
계층간 필터(1040)는 업샘플링된 프레임을 계층간 필터링한다. 계층간 필터링 알고리즘으로는 디블록킹 알고리즘이 사용될 수 있다.
제2 비디오 디코딩부(1020)는 역 양자화부(1021)와, 역 웨이브렛 변환부(1022), 및 역 시간적 필터링부(1023)를 포함한다.
역 양자화부(1021)는 제2 비디오 코딩방식으로 코딩된 프레임들을 역 양자화한다. 역 양자화 과정은 엔트로피 디코딩 과정과, 역 스캐닝 과정 및 양자화 테이블을 참조하여 웨이브렛 변환된 프레임들을 재구성하는 과정을 포함할 수 있다.
역 웨이브렛 변환부(1022)는 역 양자화된 프레임들을 역 웨이브렛 변환한다.
역 시간적 필터링부(1023)는 역 웨이브렛 변환된 프레임들로부터 제2 계층의 비디오 프레임들을 재구성한다. 이 때, 역 시간적 필터링부(1023)은 계층간 필터링된 프레임을 참조한다. 재구성된 제2 계층 프레임은 원래의 비디오 프레임을 코딩한 후에, 다시 디코딩하여 재구성한 프레임에 해당한다.
도 11은 본 발명의 일 실시예에 따른 역 시간적 필터링부의 구성을 보여주는 블록도이다.
역 시간적 필터링부는 도 9 및 도 10의 제1 비디오 디코딩부와 제2 비디오 디코딩부의 모두에서 사용이 가능하지만, 편의상 도 9의 제2 비디오 디코딩부에 적용된 것을 기준으로 설명한다.
역 시간적 필터링부(1100)는 GOP 단위로 MCTF 방식으로 비디오 프레임들의 역 웨이브렛 변환된 프레임으로부터 비디오 프레임을 재구성한다. 역 시간적 필터링부(1100)에 입력되는 역 웨이브렛 변환된 프레임들은 비디오 코딩 과정에서 시간적 중복이 제거된 저주파 프레임 및 고주파 프레임들에 해당된다. 예를 들어, 하나의 GOP가 8개의 프레임으로 구성된 경우에, 역 웨이브렛 변환된 프레임들은 비디오 코딩과정에서 얻은 하나의 저주파 프레임(업데이트된 0번 프레임) 및 7개의 고주파 프레임들(1 내지 7번 차분 프레임들)에 해당한다.
이를 위하여 역 시간적 필터링부(1100)는 역 업데이트부(1110)와, 예측 프레임 생성부(1120)와, 예측 평활화부(1130), 및 프레임 재구성부(1140)를 포함한다.
역 업데이트부(1110)는 비디오 코딩과정과 반대로 역 웨이브렛 변환된 프레임들을 역 업데이트한다.
예측 프레임 생성부(1120)는 차분 프레임으로부터 저주파 프레임 또는 비디오 프레임을 재구성하기 위한 예측 프레임을 생성한다. 예측 프레임 생성부(1120)는 예측 프레임을 생성할 때 계층간 필터링된 프레임을 참조한다.
예측 평활화부(1130)는 생성된 예측 프레임을 평활화한다.
프레임 재구성부(1140)는 평활화된 예측 프레임을 이용하여 고주파 프레임으로부터 저주파 프레임 또는 비디오 프레임을 재구성한다.
예를 들어, GOP가 8개의 비디오 프레임들으로 구성된 경우에 역 시간적 필터링부(1100)는 4번 차분 프레임 및 0번 계층간 필터링된 프레임을 이용하여 0번 저주파 프레임을 역 업데이트한다.
그리고 나서 역 시간적 필터링부(1100)는 0번 저주파 프레임을 이용하여 4번 차분 프레임에 대한 예측 프레임을 생성하고, 생성된 예측 프레임을 이용하여 4번 차분 프레임들로부터 4번 저주파 프레임을 생성한다.
그리고 나서 역 시간적 필터링부(1100)는 2, 6번 차분 프레임들 및 0, 4번 계층간 필터링된 프레임들을 이용하여 0, 4번 저주파 프레임들을 역 업데이트한다.
그리고 나서 역 시간적 필터링부(1100)는 0, 4번 저주파 프레임들 및 계층간 필터링된 2, 6번 프레임들을 이용하여 2, 6번 차분 프레임들에 대한 예측 프레임들을 생성하고, 생성된 예측 프레임들을 이용하여 2, 6번 차분 프레임들로부터 2, 6번 저주파 프레임들을 생성한다.
그리고 나서 역 시간적 필터링부(1100)는 1, 3, 5, 7번 차분 프레임들 및 0, 2, 4, 6번 계층간 필터링된 프레임들을 이용하여 0, 2, 4, 6번 프레임들을 역 업데이트하여 0, 2, 4, 6번 비디오 프레임들을 재구성한다.
마지막으로 역 시간적 필터링부(1100)는 재구성된 0, 2, 4, 6번 프레임들 및 계층간 필터링된 1, 3, 5, 7번 프레임들을 이용하여 1, 3, 5, 7번 차분 프레임들에 대한 예측 프레임들을 생성하고, 생성된 예측 프레임들을 이용하여 1, 3, 5, 7번 비디오 프레임들을 재구성한다.
이상의 설명에서 각 구성요소는 소프트웨어 또는 FPGA또는 ASIC과 같은 하드웨어 구성요소일 수 있으며, 어떤 역할들을 수행한다. 그렇지만 구성요소는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. 각 구성요소는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 실 행시키도록 구성될 수도 있다. 따라서, 일 예로서 구성요소는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 이와 같은 구성요소들이 제공하는 기능은 더 작은 수의 구성요소들이나 모듈들로 결합되거나, 추가적인 구성요소들과 모듈들로 더 분리될 수 있다. 또한 구성요소들은 비디오 인코딩 또는 디코딩 시스템을 위한 하나 또는 그 이상의 컴퓨터들을 실행시키도록 구현될 수도 있다.
다음으로 비디오 디코딩과정을 도 12 및 도 13을 참조하여 설명한다.
도 12은 본 발명의 일 실시예에 따른 비디오 디코딩과정을 보여주는 흐름도이다.
비디오 디코더는 비트스트림을 입력받는다(S1210). 비트스트림을 입력받으면 비디오 디코더는 제1 비디오 코딩방식으로 코딩된 프레임들과 제2 비디오 코딩방식으로 코딩된 프레임들을 추출한다. 예를 들면, 제1 비디오 코딩방식으로 코딩된 프레임들은 AVC 코딩방식으로 코딩된 프레임들이고, 제2 비디오 코딩방식으로 코딩된 프레임들은 웨이브렛 코딩방식으로 코딩된 프레임들이다.
AVC 코딩방식으로 코딩된 프레임들을 추출하면, 비디오 디코더는 AVC 코딩방식으로 코딩된 프레임을 AVC 디코딩방식으로 디코딩한다(S1220).
AVC 디코딩방식으로 디코딩한 후에, 비디오 디코더는 AVC 디코딩된 프레임들 계층간 필터링한다(S1230).
계층간 필터링이 끝나면, 비디오 디코더는 웨이브렛 코딩방식으로 코딩된 프레임들을 계층간 필터링된 프레임들을 참조하여 웨이브렛 디코딩방식으로 디코딩한다(S1240).
웨이브렛 디코딩 과정이 끝나면, 비디오 디코더는 재구성된 비디오 프레임들을 이용하여 비디오 신호를 생성한다. 즉, 비디오 디코더는 재구성된 픽셀값들의 Y, U, V 성분을 R, G, B 성분으로 변환한다.
도 13은 본 발명의 일 실시예에 따른 제2 계층의 역 시간적 필터링과정을 보다 상세히 보여주는 흐름도이다.
역 시간적 필터링부는 역 웨이브렛 변환된 프레임들 및 계층간 필터링된 프레임들을 입력받는다(S1310). 역 웨이브렛 변환된 프레임들은 GOP마다 저주파 프레임과 고주파 프레임들로 구성된다.
역 시간적 필터링부는 역 웨이브렛 변환된 프레임들 중에서 고주파 프레임들과 계층간 필터링된 프레임을 이용하여 저주파 프레임을 역 업데이트시킨다(S1320).
역 업데이트 과정이 끝나면, 역 시간적 필터링부는 역 업데이트된 저주파 프레임 및 계층간 필터링된 프레임을 이용하여 예측 프레임을 생성한다(S1330).
예측 프레임이 생성되면, 역 시간적 필터링부는 생성된 예측 프레임을 평활화한다(S1340).
예측 프레임 평활화 과정이 끝나면, 역 시간적 필터링부는 평활화된 예측 프 레임 및 고주파 프레임을 이용하여 저주파 프레임 또는 비디오 프레임을 재구성한다(S1350).
본 명세서에 개시된 실시예와 도면은 예시적인 것으로서 본 발명의 기술적 사상은 이에 한정되지 않는다. 예를 들어, 상세한 설명에서 AVC 코딩방식과 웨이브렛 코딩방식을 사용하는 비디오 인코더를 설명하였지만, 이는 예시적인 것으로서 이와는 다른 코딩방식들을 사용하는 비디오 인코더에도 본 발명은 적용될 수 있다. 따라서 이상의 설명은 예시적인 것이며, 본 발명의 기술사상은 후술하는 특허청구범위에 의해 보다 명확하게 한정될 것이다.
본 발명의 실시예들에 따르면, 복수의 비디오 코딩방식을 채용한 다계층 비디오 코딩에서 계층간 필터링을 이용하여 비디오 코딩 효율을 높일 수 있다.
특히, 본 발명의 실시예들에 따르면, 블록 단위로 변환 알고리즘을 갖는 비디오 코딩방식과 프레임단위로 변환 알고리즘을 갖는 비디오 코딩방식을 함께 사용할 때 생긴는 코딩효율의 저하를 막을 수 있다.

Claims (41)

  1. (a) 비디오 프레임들을 제1 비디오 코딩방식으로 코딩하는 단계;
    (b) 상기 제1 비디오 코딩방식으로 코딩된 프레임들을 제2 비디오 코딩 방식에 적합하도록 계층간 필터링하는 단계;
    (c) 상기 계층간 필터링된 프레임들을 참조하여 상기 비디오 프레임들을 상기 제2 비디오 코딩방식으로 코딩하는 단계; 및
    (d) 상기 제1 및 제2 비디오 코딩방식으로 코딩된 프레임들을 포함한 비트스트림을 생성하는 단계를 포함하는 비디오 코딩방법.
  2. 제1항에 있어서,
    상기 제1 비디오 코딩방식은 AVC 코딩방식이고, 상기 제2 비디오 코딩방식은 웨이브렛 코딩방식인 비디오 코딩방법.
  3. 제2항에 있어서,
    상기 계층간 필터링은 상기 AVC 코딩방식으로 코딩된 프레임들을 웨이브렛 필터로 업샘플링하고 업샘플링된 프레임들을 MPEG 필터로 다운샘플링하여 이루어지는, 비디오 코딩방법.
  4. 제1항에 있어서, 상기 (c) 단계는
    (c1) 상기 계층간 필터링된 프레임들을 참조하여 상기 비디오 프레임들을 MCTF 방식으로 시간적 필터링하는 단계;
    (c2) 상기 MCTF 방식으로 시간적 필터링된 프레임들을 웨이브렛 변환하는 단계; 및
    (c3) 상기 웨이브렛 변환된 프레임들을 양자화하는 단계를 포함하는, 비디오 코딩방법.
  5. 제4항에 있어서, 상기 (c1) 단계는
    (c11) 상기 계층간 필터링된 프레임을 참조하여 상기 비디오 프레임들에 대한 예측 프레임들을 생성하는 단계;
    (c12) 상기 예측 프레임들을 평활화하는 단계;
    (c13) 상기 평활화된 예측 프레임들을 이용하여 상기 비디오 프레임들에 대한 차분 프레임들을 생성하는 단계; 및
    (c14) 상기 차분 프레임을 이용하여 상기 비디오 프레임들을 업데이트하는 단계를 포함하는, 비디오 코딩방법.
  6. (a) 비디오 프레임들을 다운샘플링하여 저해상도 프레임들을 생성하는 단계;
    (b) 상기 저해상도 비디오 프레임들을 제1 비디오 코딩방식으로 코딩하는 단계;
    (c) 상기 제1 비디오 코딩방식으로 코딩된 프레임들을 상기 비디오 프레임의 해상도로 업샘플링하는 단계;
    (d) 상기 업샘플링된 프레임들을 제2 비디오 코딩 방식에 적합하도록 계층간 필터링하는 단계;
    (e) 상기 계층간 필터링된 프레임들을 참조하여 상기 비디오 프레임들을 상기 제2 비디오 코딩방식으로 코딩하는 단계; 및
    (f) 상기 제1 및 제2 비디오 코딩방식으로 코딩된 프레임들을 포함한 비트스트림을 생성하는 단계를 포함하는 비디오 코딩방법.
  7. 제6항에 있어서,
    상기 제1 비디오 코딩방식은 AVC 코딩방식이고, 상기 제2 비디오 코딩방식은 웨이브렛 코딩방식인 비디오 코딩방법.
  8. 제7항에 있어서,
    상기 계층간 필터링은 상기 업샘플링된 프레임들을 웨이브렛 필터로 다시 업샘플링하고, 웨이브렛 필터로 업샘플링된 프레임들을 MPEG 필터로 다운샘플링하여 이루어지는, 비디오 코딩방법.
  9. 제6항에 있어서, 상기 (e) 단계는
    (e1) 상기 계층간 필터링된 프레임들을 참조하여 상기 비디오 프레임들을 MCTF 방식으로 시간적 필터링하는 단계;
    (e2) 상기 MCTF 방식으로 시간적 필터링된 프레임들을 웨이브렛 변환하는 단 계; 및
    (e3) 상기 웨이브렛 변환된 프레임들을 양자화하는 단계를 포함하는, 비디오 코딩방법.
  10. 제9항에 있어서, 상기 (e1) 단계는
    (e11) 상기 계층간 필터링된 프레임을 참조하여 상기 비디오 프레임들에 대한 예측 프레임들을 생성하는 단계;
    (e12) 상기 예측 프레임들을 평활화하는 단계;
    (e13) 상기 평활화된 예측 프레임들을 이용하여 상기 비디오 프레임들에 대한 차분 프레임들을 생성하는 단계; 및
    (e14) 상기 차분 프레임을 이용하여 상기 비디오 프레임들을 업데이트하는 단계를 포함하는, 비디오 코딩방법.
  11. 비디오 프레임들을 제1 비디오 코딩방식으로 코딩하는 제1 비디오 코딩부;
    상기 제1 비디오 코딩방식으로 코딩된 프레임들을 제2 비디오 코딩 방식에 적합하도록 계층간 필터링하는 계층간 필터;
    상기 계층간 필터링된 프레임들을 참조하여 상기 비디오 프레임들을 상기 제2 비디오 코딩방식으로 코딩하는 제2 비디오 코딩부; 및
    상기 제1 및 제2 비디오 코딩방식으로 코딩된 프레임들을 포함한 비트스트림을 생성하는 비트스트림 생성부를 포함하는 비디오 인코더.
  12. 제11항에 있어서,
    상기 제1 비디오 코딩부는 AVC 코딩방식으로 상기 프레임들을 코딩하고, 상기 제2 비디오 코딩부는 웨이브렛 코딩방식으로 상기 프레임들을 코딩하는 비디오 인코더.
  13. 제12항에 있어서,
    상기 계층간 필터는 상기 AVC 코딩방식으로 코딩된 프레임들을 웨이브렛 필터링 방식으로 업샘플링하고 업샘플링된 프레임들을 MPEG 필터링 방식으로 다운샘플링하는, 비디오 인코더.
  14. 제11항에 있어서, 상기 제2 비디오 코딩부는
    상기 계층간 필터링된 프레임들을 참조하여 상기 비디오 프레임들을 MCTF 방식으로 시간적 필터링하는 시간적 필터링부;
    상기 시간적 필터링된 프레임들을 웨이브렛 변환하는 웨이브렛 변환부; 및
    상기 웨이브렛 변환된 프레임들을 양자화하는 양자화부를 포함하는, 비디오 인코더.
  15. 제14항에 있어서, 상기 시간적 필터링부는
    상기 계층간 필터링된 프레임을 참조하여 상기 비디오 프레임들에 대한 예측 프레임들을 생성하는 예측 프레임 생성부;
    상기 예측 프레임들을 평활화하는 예측 평활화부;
    상기 평활화된 예측 프레임들을 이용하여 상기 비디오 프레임들에 대한 차분 프레임들을 생성하는 차분 프레임 생성부; 및
    상기 차분 프레임을 이용하여 상기 비디오 프레임들을 업데이트하는 업데이트부를 포함하는, 비디오 인코더.
  16. 비디오 프레임들을 다운샘플링하여 저해상도 프레임들을 생성하는 다운샘플러;
    상기 저해상도 비디오 프레임들을 제1 비디오 코딩방식으로 코딩하는 제1 비디오 코딩부;
    상기 제1 비디오 코딩방식으로 코딩된 프레임들을 업샘플링하는 업샘플러;
    상기 업샘플링된 프레임들을 제2 비디오 코딩 방식에 적합하도록 계층간 필터링하는 계층간 필터;
    상기 계층간 필터링된 프레임들을 참조하여 상기 비디오 프레임들을 상기 제2 비디오 코딩방식으로 코딩하는 제2 비디오 코딩부; 및
    상기 제1 및 제2 비디오 코딩방식으로 코딩된 프레임들을 포함한 비트스트림을 생성하는 비트스트림 생성부를 포함하는 비디오 인코더.
  17. 제16항에 있어서,
    상기 제1 비디오 코딩부는 AVC 코딩방식으로 상기 프레임들을 코딩하고, 상 기 제2 비디오 코딩부는 웨이브렛 코딩방식으로 상기 프레임들을 코딩하는 비디오 인코더.
  18. 제17항에 있어서,
    상기 계층간 필터는 상기 업샘플링된된 프레임들을 웨이브렛 필터링 방식으로 다시 업샘플링하고, 웨이브렛 필터링방식으로 업샘플링된 프레임들을 MPEG 필터링 방식으로 다운샘플링하는, 비디오 인코더.
  19. 제16항에 있어서, 상기 제2 비디오 코딩부는
    상기 계층간 필터링된 프레임들을 참조하여 상기 비디오 프레임들을 MCTF 방식으로 시간적 필터링하는 시간적 필터링부;
    상기 시간적 필터링된 프레임들을 웨이브렛 변환하는 웨이브렛 변환부; 및
    상기 웨이브렛 변환된 프레임들을 양자화하는 양자화부를 포함하는, 비디오 인코더.
  20. 제19항에 있어서, 상기 시간적 필터링부는
    상기 계층간 필터링된 프레임을 참조하여 상기 비디오 프레임들에 대한 예측 프레임들을 생성하는 예측 프레임 생성부;
    상기 예측 프레임들을 평활화하는 예측 평활화부;
    상기 평활화된 예측 프레임들을 이용하여 상기 비디오 프레임들에 대한 차분 프레임들을 생성하는 차분 프레임 생성부; 및
    상기 차분 프레임을 이용하여 상기 비디오 프레임들을 업데이트하는 업데이트부를 포함하는, 비디오 인코더.
  21. (a) 비트스트림으로부터 제1 비디오 코딩방식으로 코딩된 프레임들 및 제2 비디오 코딩방식으로 코딩된 프레임들을 추출하는 단계;
    (b) 상기 제1 비디오 코딩방식으로 코딩된 프레임들을 제1 비디오 디코딩방식으로 디코딩하여 제1 계층 프레임들을 재구성하는 단계;
    (c) 상기 재구성된 제1 계층 프레임들을 상기 2 비디오 코딩 방식에 적합하도록 계층간 필터링하는 단계; 및
    (d) 상기 계층간 필터링된 제1 계층 프레임들을 참조하여 상기 제2 비디오 코딩방식으로 코딩된 프레임들을 제2 비디오 디코딩방식으로 디코딩하여 제2 계층 프레임들을 재구성하는 단계를 포함하는 비디오 디코딩방법.
  22. 제21항에 있어서,
    상기 제1 비디오 코딩 및 디코딩방식은 AVC 방식이고, 상기 제2 비디오 코딩 및 디코딩방식은 웨이브렛 방식인 비디오 디코딩방법.
  23. 제22항에 있어서,
    상기 계층간 필터링은 상기 AVC 디코딩방식으로 디코딩된 프레임들을 웨이브렛 필터로 업샘플링하고 업샘플링된 프레임들을 MPEG 필터로 다운샘플링하여 이루 어지는, 비디오 디코딩방법.
  24. 제21항에 있어서, 상기 (d) 단계는
    (d1) 상기 제2 비디오 코딩방식으로 코딩된 프레임들을 역 양자화하는 단계;
    (d2) 상기 역 양자화된 프레임들을 역 웨이브렛 변환하는 단계; 및
    (d3) 상기 계층간 필터링된 제1 계층 프레임들을 참조하여 상기 역 웨이브렛 변환된 프레임들을 MCTF 방식으로 역 시간적 필터링하는 단계를 포함하는, 비디오 디코딩방법.
  25. 제24항에 있어서, 상기 (d3) 단계는
    (d31) 상기 역 웨이브렛 변환된 프레임들을 역 업데이트하는 단계;
    (d32) 상기 역 업데이트된 프레임들 및 상기 계층간 필터링된 제1 계층 프레임들을 참조하여 예측 프레임들을 생성하는 단계;
    (d33) 상기 예측 프레임들을 평활화하는 단계; 및
    (d34) 상기 역 업데이트된 프레임들 및 상기 평활화된 예측 프레임들을 이용하여 상기 제2 계층 프레임들을 재구성하는 단계를 포함하는, 비디오 디코딩방법.
  26. (a) 비트스트림으로부터 제1 비디오 코딩방식으로 코딩된 프레임들 및 제2 비디오 코딩방식으로 코딩된 프레임들을 추출하는 단계;
    (b) 상기 제1 비디오 코딩방식으로 코딩된 프레임들을 제1 비디오 디코딩방식으로 디코딩하여 제1 계층 프레임들을 재구성하는 단계;
    (c) 상기 재구성된 제1 계층 프레임들을 업샘플링하는 단계;
    (d) 상기 업샘플링된 제1 계층 프레임들을 제2 비디오 코딩 방식에 적합하도록 계층간 필터링하는 단계; 및
    (e) 상기 계층간 필터링된 제1 계층 프레임들을 참조하여 상기 제2 비디오 코딩방식으로 코딩된 프레임들을 제2 비디오 디코딩방식으로 디코딩하여 제2 계층 프레임들을 재구성하는 단계를 포함하는 비디오 디코딩방법.
  27. 제26항에 있어서,
    상기 제1 비디오 코딩 및 디코딩방식은 AVC 방식이고, 상기 제2 비디오 코딩 및 디코딩방식은 웨이브렛 방식인 비디오 디코딩방법.
  28. 제27항에 있어서,
    상기 계층간 필터링은 상기 AVC 디코딩방식으로 디코딩된 프레임들을 웨이브렛 필터로 업샘플링하고 업샘플링된 프레임들을 MPEG 필터로 다운샘플링하여 이루어지는, 비디오 디코딩방법.
  29. 제26항에 있어서, 상기 (e) 단계는
    (e1) 상기 제2 비디오 코딩방식으로 코딩된 프레임들을 역 양자화하는 단계;
    (e2) 상기 역 양자화된 프레임들을 역 웨이브렛 변환하는 단계; 및
    (e3) 상기 계층간 필터링된 제1 계층 프레임들을 참조하여 상기 역 웨이브렛 변환된 프레임들을 MCTF 방식으로 역 시간적 필터링하는 단계를 포함하는, 비디오 디코딩방법.
  30. 제29항에 있어서, 상기 (e3) 단계는
    (e31) 상기 역 웨이브렛 변환된 프레임들을 역 업데이트하는 단계;
    (e32) 상기 역 업데이트된 프레임들 및 상기 계층간 필터링된 제1 계층 프레임들을 참조하여 예측 프레임들을 생성하는 단계;
    (e33) 상기 예측 프레임들을 평활화하는 단계; 및
    (e34) 상기 역 업데이트된 프레임들 및 상기 평활화된 예측 프레임들을 이용하여 상기 제2 계층 프레임들을 재구성하는 단계를 포함하는, 비디오 디코딩방법.
  31. 비트스트림으로부터 제1 비디오 코딩방식으로 코딩된 프레임들 및 제2 비디오 코딩방식으로 코딩된 프레임들을 추출하는 비트스트림 해석부;
    상기 제1 비디오 코딩방식으로 코딩된 프레임들을 제1 비디오 디코딩방식으로 디코딩하여 제1 계층 프레임들을 재구성하는 제1 비디오 디코딩부;
    상기 재구성된 제1 계층 프레임들을 상기 제2 비디오 코딩 방식에 적합하도록 계층간 필터링하는 계층간 필터; 및
    상기 계층간 필터링된 제1 계층 프레임들을 참조하여 상기 제2 비디오 코딩방식으로 코딩된 프레임들을 제2 비디오 디코딩방식으로 디코딩하여 제2 계층 프레임들을 재구성하는 제1 비디오 디코딩부를 포함하는 비디오 디코더.
  32. 제31항에 있어서,
    상기 제1 비디오 디코딩부는 AVC 디코딩방식으로 상기 제1 계층 프레임들을 재구성하고, 상기 제2 비디오 디코딩부는 웨이브렛 디코딩방식으로 상기 제2 계층 프레임들을 재구성하는 비디오 디코더.
  33. 제32항에 있어서,
    상기 계층간 필터는 상기 AVC 디코딩방식으로 디코딩된 프레임들을 웨이브렛 필터로 업샘플링하고 업샘플링된 프레임들을 MPEG 필터로 다운샘플링하는, 비디오 디코더.
  34. 제31항에 있어서, 상기 제2 비디오 디코딩부는
    상기 제2 비디오 코딩방식으로 코딩된 프레임들을 역 양자화하는 역 양자화부;
    상기 역 양자화된 프레임들을 역 웨이브렛 변환하는 역 웨이브렛 변환부; 및
    상기 계층간 필터링된 제1 계층 프레임들을 참조하여 상기 역 웨이브렛 변환된 프레임들을 MCTF 방식으로 역 시간적 필터링하는 역 시간적 필터링부를 포함하는, 비디오 디코더.
  35. 제34항에 있어서, 상기 역 시간적 필터링부는
    상기 역 웨이브렛 변환된 프레임들을 역 업데이트하는 역 업데이트부;
    상기 역 업데이트된 프레임들 및 상기 계층간 필터링된 제1 계층 프레임들을 참조하여 예측 프레임들을 생성하는 예측 프레임 생성부;
    상기 예측 프레임들을 평활화하는 예측 평활화부; 및
    상기 역 업데이트된 프레임들 및 상기 평활화된 예측 프레임들을 이용하여 상기 제2 계층 프레임들을 재구성하는 프레임 재구성부를 포함하는, 비디오 디코더.
  36. 비트스트림으로부터 제1 비디오 코딩방식으로 코딩된 프레임들 및 제2 비디오 코딩방식으로 코딩된 프레임들을 추출하는 비트스트림 해석부;
    상기 제1 비디오 코딩방식으로 코딩된 프레임들을 제1 비디오 디코딩방식으로 디코딩하여 제1 계층 프레임들을 재구성하는 제1 비디오 디코딩부;
    상기 재구성된 제1 계층 프레임들을 업샘플링하는 업샘플러;
    상기 업샘플링된 제1 계층 프레임들을 상기 제2 비디오 코딩 방식에 적합하도록 계층간 필터링하는 계층간 필터; 및
    상기 계층간 필터링된 제1 계층 프레임들을 참조하여 상기 제2 비디오 코딩방식으로 코딩된 프레임들을 제2 비디오 디코딩방식으로 디코딩하여 제2 계층 프레임들을 재구성하는 제2 비디오 디코딩부를 포함하는 비디오 디코더.
  37. 제36항에 있어서,
    상기 제1 비디오 디코딩부는 AVC 디코딩방식으로 상기 제1 계층 프레임들을 재구성하고, 상기 제2 비디오 디코딩부는 웨이브렛 디코딩방식으로 상기 제2 계층 프레임들을 재구성하는 비디오 디코더.
  38. 제37항에 있어서,
    상기 계층간 필터는 상기 업샘플링된 제1 계층 프레임들을 웨이브렛 필터로 업샘플링하고 업샘플링된 프레임들을 MPEG 필터로 다운샘플링하는, 비디오 디코더.
  39. 제36항에 있어서, 상기 제2 비디오 디코딩부는
    상기 제2 비디오 코딩방식으로 코딩된 프레임들을 역 양자화하는 역 양자화부;
    상기 역 양자화된 프레임들을 역 웨이브렛 변환하는 역 웨이브렛 변환부; 및
    상기 계층간 필터링된 제1 계층 프레임들을 참조하여 상기 역 웨이브렛 변환된 프레임들을 MCTF 방식으로 역 시간적 필터링하는 역 시간적 필터링부를 포함하는, 비디오 디코더.
  40. 제39항에 있어서, 상기 역 시간적 필터링부는
    상기 역 웨이브렛 변환된 프레임들을 역 업데이트하는 역 업데이트부;
    상기 역 업데이트된 프레임들 및 상기 계층간 필터링된 제1 계층 프레임들을 참조하여 예측 프레임들을 생성하는 예측 프레임 생성부;
    상기 예측 프레임들을 평활화하는 예측 평활화부; 및
    상기 역 업데이트된 프레임들 및 상기 평활화된 예측 프레임들을 이용하여 상기 제2 계층 프레임들을 재구성하는 프레임 재구성부를 포함하는, 비디오 디코더.
  41. 제1항 내지 제10항 및 제21항 내지 제30항 중 어느 한 항의 방법을 컴퓨터로 실행하기 위한 프로그램을 기록한 기록매체.
KR1020040094597A 2004-10-18 2004-11-18 계층간 필터링을 이용한 비디오 코딩 및 디코딩방법과,비디오 인코더 및 디코더 KR100679022B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
BRPI0516826-0A BRPI0516826A (pt) 2004-10-18 2005-09-16 método de codificação de vìdeo, codificador de vìdeo, decodificador de vìdeo, método de decodificação de vìdeo, e meio de gravação que possui um programa legìvel por computador gravado nele
JP2007534509A JP2008515328A (ja) 2004-10-18 2005-09-16 階層間フィルタリングを利用したビデオコーディングおよびデコーディング方法と、ビデオエンコーダおよびデコーダ
PCT/KR2005/003082 WO2006043755A1 (en) 2004-10-18 2005-09-16 Video coding and decoding methods using interlayer filtering and video encoder and decoder using the same
CA002584215A CA2584215A1 (en) 2004-10-18 2005-09-16 Video coding and decoding methods using interlayer filtering and video encoder and decoder using the same
EP05256418A EP1657932A1 (en) 2004-10-18 2005-10-15 Video coding and decoding methods using interlayer filtering and video encoder and decoder using the same
US11/251,917 US20060083300A1 (en) 2004-10-18 2005-10-18 Video coding and decoding methods using interlayer filtering and video encoder and decoder using the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US61902304P 2004-10-18 2004-10-18
US60/619,023 2004-10-18

Publications (2)

Publication Number Publication Date
KR20060034192A KR20060034192A (ko) 2006-04-21
KR100679022B1 true KR100679022B1 (ko) 2007-02-05

Family

ID=36748181

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020040094597A KR100679022B1 (ko) 2004-10-18 2004-11-18 계층간 필터링을 이용한 비디오 코딩 및 디코딩방법과,비디오 인코더 및 디코더
KR1020040107960A KR100703724B1 (ko) 2004-10-18 2004-12-17 다 계층 기반으로 코딩된 스케일러블 비트스트림의비트율을 조절하는 장치 및 방법
KR1020050006803A KR100679030B1 (ko) 2004-10-18 2005-01-25 하이브리드 비트스트림의 프리디코딩 방법 및 장치

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020040107960A KR100703724B1 (ko) 2004-10-18 2004-12-17 다 계층 기반으로 코딩된 스케일러블 비트스트림의비트율을 조절하는 장치 및 방법
KR1020050006803A KR100679030B1 (ko) 2004-10-18 2005-01-25 하이브리드 비트스트림의 프리디코딩 방법 및 장치

Country Status (5)

Country Link
US (3) US7839929B2 (ko)
KR (3) KR100679022B1 (ko)
CN (3) CN101036388A (ko)
BR (1) BRPI0516826A (ko)
RU (1) RU2337503C1 (ko)

Families Citing this family (91)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8442108B2 (en) * 2004-07-12 2013-05-14 Microsoft Corporation Adaptive updates in motion-compensated temporal filtering
US8340177B2 (en) * 2004-07-12 2012-12-25 Microsoft Corporation Embedded base layer codec for 3D sub-band coding
US8374238B2 (en) 2004-07-13 2013-02-12 Microsoft Corporation Spatial scalability in 3D sub-band decoding of SDMCTF-encoded video
TWI301953B (en) * 2005-03-14 2008-10-11 Qisda Corp Methods and apparatuses for video encoding
JP4839035B2 (ja) * 2005-07-22 2011-12-14 オリンパス株式会社 内視鏡用処置具および内視鏡システム
KR100891663B1 (ko) * 2005-10-05 2009-04-02 엘지전자 주식회사 비디오 신호 디코딩 및 인코딩 방법
KR100891662B1 (ko) 2005-10-05 2009-04-02 엘지전자 주식회사 비디오 신호 디코딩 및 인코딩 방법
KR20070038396A (ko) 2005-10-05 2007-04-10 엘지전자 주식회사 영상 신호의 인코딩 및 디코딩 방법
US8345755B2 (en) * 2006-01-09 2013-01-01 Lg Electronics, Inc. Inter-layer prediction method for video signal
US20070160134A1 (en) * 2006-01-10 2007-07-12 Segall Christopher A Methods and Systems for Filter Characterization
US8619865B2 (en) 2006-02-16 2013-12-31 Vidyo, Inc. System and method for thinning of scalable video coding bit-streams
US8014445B2 (en) * 2006-02-24 2011-09-06 Sharp Laboratories Of America, Inc. Methods and systems for high dynamic range video coding
US8194997B2 (en) * 2006-03-24 2012-06-05 Sharp Laboratories Of America, Inc. Methods and systems for tone mapping messaging
KR100781524B1 (ko) * 2006-04-04 2007-12-03 삼성전자주식회사 확장 매크로블록 스킵 모드를 이용한 인코딩/디코딩 방법및 장치
US8711925B2 (en) 2006-05-05 2014-04-29 Microsoft Corporation Flexible quantization
FR2903556B1 (fr) * 2006-07-04 2008-10-03 Canon Kk Procedes et des dispositifs de codage et de decodage d'images, un systeme de telecommunications comportant de tels dispositifs et des programmes d'ordinateur mettant en oeuvre de tels procedes
US7535383B2 (en) * 2006-07-10 2009-05-19 Sharp Laboratories Of America Inc. Methods and systems for signaling multi-layer bitstream data
US7885471B2 (en) * 2006-07-10 2011-02-08 Sharp Laboratories Of America, Inc. Methods and systems for maintenance and use of coded block pattern information
US7840078B2 (en) * 2006-07-10 2010-11-23 Sharp Laboratories Of America, Inc. Methods and systems for image processing control based on adjacent block characteristics
US8059714B2 (en) * 2006-07-10 2011-11-15 Sharp Laboratories Of America, Inc. Methods and systems for residual layer scaling
US8532176B2 (en) * 2006-07-10 2013-09-10 Sharp Laboratories Of America, Inc. Methods and systems for combining layers in a multi-layer bitstream
US8422548B2 (en) * 2006-07-10 2013-04-16 Sharp Laboratories Of America, Inc. Methods and systems for transform selection and management
US8130822B2 (en) * 2006-07-10 2012-03-06 Sharp Laboratories Of America, Inc. Methods and systems for conditional transform-domain residual accumulation
KR100842544B1 (ko) * 2006-09-11 2008-07-01 삼성전자주식회사 스케일러블 영상 코딩을 이용한 전송 방법 및 이를 이용한이동통신 시스템
US20080095235A1 (en) * 2006-10-20 2008-04-24 Motorola, Inc. Method and apparatus for intra-frame spatial scalable video coding
WO2008051755A2 (en) * 2006-10-20 2008-05-02 Motorola, Inc. Method and apparatus for intra-frame spatial scalable video coding
WO2008079508A1 (en) * 2006-12-22 2008-07-03 Motorola, Inc. Method and system for adaptive coding of a video
US8503524B2 (en) * 2007-01-23 2013-08-06 Sharp Laboratories Of America, Inc. Methods and systems for inter-layer image prediction
US8233536B2 (en) 2007-01-23 2012-07-31 Sharp Laboratories Of America, Inc. Methods and systems for multiplication-free inter-layer image prediction
US7826673B2 (en) * 2007-01-23 2010-11-02 Sharp Laboratories Of America, Inc. Methods and systems for inter-layer image prediction with color-conversion
US8665942B2 (en) * 2007-01-23 2014-03-04 Sharp Laboratories Of America, Inc. Methods and systems for inter-layer image prediction signaling
US8243789B2 (en) * 2007-01-25 2012-08-14 Sharp Laboratories Of America, Inc. Methods and systems for rate-adaptive transmission of video
US7760949B2 (en) 2007-02-08 2010-07-20 Sharp Laboratories Of America, Inc. Methods and systems for coding multiple dynamic range images
US8238424B2 (en) 2007-02-09 2012-08-07 Microsoft Corporation Complexity-based adaptive preprocessing for multiple-pass video compression
US8767834B2 (en) 2007-03-09 2014-07-01 Sharp Laboratories Of America, Inc. Methods and systems for scalable-to-non-scalable bit-stream rewriting
KR100918385B1 (ko) * 2007-08-10 2009-09-21 한국전자통신연구원 스케일러블 비디오 스트림 코딩에서 참조 슬라이스 제거알림 장치 및 방법
KR100937590B1 (ko) * 2007-10-23 2010-01-20 한국전자통신연구원 다중 품질 서비스 영상 콘텐츠 제공 시스템 및 그것의업그레이드 방법
JP5216303B2 (ja) * 2007-11-01 2013-06-19 株式会社東芝 合成映像配信装置ならびにその方法およびプログラム
US8126054B2 (en) * 2008-01-09 2012-02-28 Motorola Mobility, Inc. Method and apparatus for highly scalable intraframe video coding
US8750390B2 (en) * 2008-01-10 2014-06-10 Microsoft Corporation Filtering and dithering as pre-processing before encoding
US8160132B2 (en) * 2008-02-15 2012-04-17 Microsoft Corporation Reducing key picture popping effects in video
US8953673B2 (en) * 2008-02-29 2015-02-10 Microsoft Corporation Scalable video coding and decoding with sample bit depth and chroma high-pass residual layers
US8711948B2 (en) * 2008-03-21 2014-04-29 Microsoft Corporation Motion-compensated prediction of inter-layer residuals
CN101557510A (zh) * 2008-04-09 2009-10-14 华为技术有限公司 视频编码处理方法、系统及装置
US8897359B2 (en) 2008-06-03 2014-11-25 Microsoft Corporation Adaptive quantization for enhancement layer video coding
US9571856B2 (en) 2008-08-25 2017-02-14 Microsoft Technology Licensing, Llc Conversion operations in scalable video encoding and decoding
US8213503B2 (en) * 2008-09-05 2012-07-03 Microsoft Corporation Skip modes for inter-layer residual video coding and decoding
US8385404B2 (en) * 2008-09-11 2013-02-26 Google Inc. System and method for video encoding using constructed reference frame
US8265140B2 (en) * 2008-09-30 2012-09-11 Microsoft Corporation Fine-grained client-side control of scalable media delivery
CN102246165B (zh) * 2008-11-12 2014-10-29 诺基亚公司 利用压缩梯度直方图来代表和标识特征描述符的方法和装置
JP4947389B2 (ja) * 2009-04-03 2012-06-06 ソニー株式会社 画像信号復号装置、画像信号復号方法、および画像信号符号化方法
KR101557504B1 (ko) * 2009-04-13 2015-10-07 삼성전자주식회사 채널 적응형 비디오 전송 방법, 이를 이용한 장치 및 이를 제공하는 시스템
KR101484280B1 (ko) * 2009-12-08 2015-01-20 삼성전자주식회사 임의적인 파티션을 이용한 움직임 예측에 따른 비디오 부호화 방법 및 장치, 임의적인 파티션을 이용한 움직임 보상에 따른 비디오 복호화 방법 및 장치
WO2011087963A1 (en) 2010-01-15 2011-07-21 Dolby Laboratories Licensing Corporation Edge enhancement for temporal scaling with metadata
CN102783152A (zh) * 2010-03-02 2012-11-14 三星电子株式会社 用于使用可分级视频编码方案进行自适应流传输的方法和设备
JP5510012B2 (ja) * 2010-04-09 2014-06-04 ソニー株式会社 画像処理装置および方法、並びにプログラム
US8392201B2 (en) * 2010-07-30 2013-03-05 Deutsche Telekom Ag Method and system for distributed audio transcoding in peer-to-peer systems
US20120076205A1 (en) * 2010-09-29 2012-03-29 Segall Christopher A Methods and Systems for Capturing Wide Color-Gamut Video
GB2487200A (en) 2011-01-12 2012-07-18 Canon Kk Video encoding and decoding with improved error resilience
KR20120096863A (ko) * 2011-02-23 2012-08-31 한국전자통신연구원 고효율 비디오 부호화의 계층적 부호화 구조를 위한 비트율 제어 기법
JP2012191465A (ja) * 2011-03-11 2012-10-04 Sony Corp 画像処理装置、および画像処理方法、並びにプログラム
US8638854B1 (en) 2011-04-07 2014-01-28 Google Inc. Apparatus and method for creating an alternate reference frame for video compression using maximal differences
CN102129838B (zh) * 2011-04-28 2013-01-23 深圳市天微电子有限公司 Led显示数据的处理方法及装置
WO2013005968A2 (ko) 2011-07-01 2013-01-10 삼성전자 주식회사 계층적 구조의 데이터 단위를 이용한 엔트로피 부호화 방법 및 장치, 복호화 방법 및 장치
US9185424B2 (en) * 2011-07-05 2015-11-10 Qualcomm Incorporated Image data compression
US8948248B2 (en) 2011-07-21 2015-02-03 Luca Rossato Tiered signal decoding and signal reconstruction
US9271055B2 (en) * 2011-08-23 2016-02-23 Avaya Inc. System and method for variable video degradation counter-measures
KR101928910B1 (ko) * 2011-08-30 2018-12-14 쏘닉 아이피, 아이엔씨. 복수의 최대 비트레이트 레벨들을 사용하여 인코딩된 비디오를 인코딩하고 스트리밍하기 위한 시스템들 및 방법들
US9467708B2 (en) 2011-08-30 2016-10-11 Sonic Ip, Inc. Selection of resolutions for seamless resolution switching of multimedia content
US8976857B2 (en) * 2011-09-23 2015-03-10 Microsoft Technology Licensing, Llc Quality-based video compression
US9667964B2 (en) 2011-09-29 2017-05-30 Dolby Laboratories Licensing Corporation Reduced complexity motion compensated temporal processing
EP2642755B1 (en) * 2012-03-20 2018-01-03 Dolby Laboratories Licensing Corporation Complexity scalable multilayer video coding
CN103379319B (zh) * 2012-04-12 2018-03-20 中兴通讯股份有限公司 一种滤波方法、滤波器及包含该滤波器的编码器和解码器
WO2013162980A2 (en) 2012-04-23 2013-10-31 Google Inc. Managing multi-reference picture buffers for video data coding
US20130318251A1 (en) * 2012-05-22 2013-11-28 Alimuddin Mohammad Adaptive multipath content streaming
US9313486B2 (en) * 2012-06-20 2016-04-12 Vidyo, Inc. Hybrid video coding techniques
CN115243046A (zh) 2012-08-29 2022-10-25 Vid拓展公司 用于可分级视频编码的运动矢量预测的方法和装置
WO2014052731A2 (en) * 2012-09-28 2014-04-03 Vid Scale, Inc. Cross-plane filtering for chroma signal enhancement in video coding
US10085017B2 (en) * 2012-11-29 2018-09-25 Advanced Micro Devices, Inc. Bandwidth saving architecture for scalable video coding spatial mode
TWI597968B (zh) 2012-12-21 2017-09-01 杜比實驗室特許公司 在高位元深度視訊的可適性編碼中,高精度升取樣
EP2979447B1 (en) 2013-03-28 2018-01-03 Huawei Technologies Co., Ltd. Method for determining predictor blocks for a spatially scalable video codec
US9479695B2 (en) 2014-07-31 2016-10-25 Apple Inc. Generating a high dynamic range image using a temporal filter
US9374526B2 (en) 2014-07-31 2016-06-21 Apple Inc. Providing frame delay using a temporal filter
US9413951B2 (en) 2014-07-31 2016-08-09 Apple Inc. Dynamic motion estimation and compensation for temporal filtering
US9514525B2 (en) 2014-07-31 2016-12-06 Apple Inc. Temporal filtering for image data using spatial filtering and noise history
US10893266B2 (en) * 2014-10-07 2021-01-12 Disney Enterprises, Inc. Method and system for optimizing bitrate selection
KR102338980B1 (ko) * 2015-03-23 2021-12-13 삼성전자주식회사 플리커를 제거하기 위해 양자화 계수를 조절할 수 있은 인코더와 이를 포함하는 장치
TWI731063B (zh) * 2017-04-13 2021-06-21 物聯智慧科技(深圳)有限公司 影音檔案處理方法及建置方法
CN111108747B (zh) * 2017-09-22 2023-10-24 威诺瓦国际有限公司 获得信号的时间样本的目标表示
US11570473B2 (en) * 2018-08-03 2023-01-31 V-Nova International Limited Entropy coding for signal enhancement coding
US10728180B2 (en) * 2018-08-21 2020-07-28 At&T Intellectual Property I, L.P. Apparatus, storage medium and method for adaptive bitrate streaming adaptation of variable bitrate encodings

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0336978A (ja) * 1989-06-30 1991-02-18 Matsushita Electric Ind Co Ltd モータ速度制御装置
JP3164647B2 (ja) * 1992-06-03 2001-05-08 株式会社東芝 動画像符号化方法及び装置
CA2126467A1 (en) * 1993-07-13 1995-01-14 Barin Geoffry Haskell Scalable encoding and decoding of high-resolution progressive video
US5754241A (en) * 1994-11-18 1998-05-19 Sanyo Electric Co., Ltd Video decoder capable of controlling encoded video data
US6957350B1 (en) * 1996-01-30 2005-10-18 Dolby Laboratories Licensing Corporation Encrypted and watermarked temporal and resolution layering in advanced television
WO1999029113A1 (en) * 1997-11-27 1999-06-10 British Telecommunications Public Limited Company Transcoding
US6292512B1 (en) * 1998-07-06 2001-09-18 U.S. Philips Corporation Scalable video coding system
KR100363162B1 (ko) * 1998-11-02 2003-01-24 삼성전자 주식회사 영상신호의전송/복원방법및장치
US6529552B1 (en) * 1999-02-16 2003-03-04 Packetvideo Corporation Method and a device for transmission of a variable bit-rate compressed video bitstream over constant and variable capacity networks
JP2000333163A (ja) * 1999-05-24 2000-11-30 Sony Corp 復号装置及び方法、符号化装置及び方法、画像処理システム、画像処理方法
US6263022B1 (en) * 1999-07-06 2001-07-17 Philips Electronics North America Corp. System and method for fine granular scalable video with selective quality enhancement
US6639943B1 (en) * 1999-11-23 2003-10-28 Koninklijke Philips Electronics N.V. Hybrid temporal-SNR fine granular scalability video coding
AU4338800A (en) * 1999-12-22 2001-07-03 General Instrument Corporation Video compression for multicast environments using spatial scalability and simulcast coding
US7095782B1 (en) * 2000-03-01 2006-08-22 Koninklijke Philips Electronics N.V. Method and apparatus for streaming scalable video
US6771703B1 (en) * 2000-06-30 2004-08-03 Emc Corporation Efficient scaling of nonscalable MPEG-2 Video
EP1319309B1 (en) * 2000-09-22 2006-11-22 Koninklijke Philips Electronics N.V. Hybrid temporal-snr fine granular scalability video coding
US6836512B2 (en) * 2000-10-11 2004-12-28 Koninklijke Philips Electronics N.V. Spatial scalability for fine granular video encoding
US7272299B2 (en) * 2000-12-08 2007-09-18 Matsushita Electric Industrial Co., Ltd. Data conversion apparatus, data coding apparatus, and data recording apparatus
US7203238B2 (en) * 2000-12-11 2007-04-10 Sony Corporation 3:2 Pull-down detection
US20020118742A1 (en) * 2001-02-26 2002-08-29 Philips Electronics North America Corporation. Prediction structures for enhancement layer in fine granular scalability video coding
KR100778471B1 (ko) * 2001-04-21 2007-11-21 엘지전자 주식회사 비디오 신호의 인코딩 또는 디코딩 방법
US6944225B2 (en) * 2001-07-24 2005-09-13 Sharp Laboratories Of America, Inc. Resolution-scalable video compression
US7283880B2 (en) 2001-09-06 2007-10-16 Thomson Licensing Method and apparatus for elapsed playback timekeeping of variable bit-rate digitally encoded audio data files
CN1253008C (zh) 2001-10-26 2006-04-19 皇家飞利浦电子股份有限公司 空间可分级压缩的方法和设备
US20030118099A1 (en) * 2001-12-20 2003-06-26 Comer Mary Lafuze Fine-grain scalable video encoder with conditional replacement
FI114527B (fi) * 2002-01-23 2004-10-29 Nokia Corp Kuvakehysten ryhmittely videokoodauksessa
US7317759B1 (en) * 2002-02-28 2008-01-08 Carnegie Mellon University System and methods for video compression mode decisions
US20030215011A1 (en) 2002-05-17 2003-11-20 General Instrument Corporation Method and apparatus for transcoding compressed video bitstreams
KR100484148B1 (ko) * 2002-07-27 2005-04-18 삼성전자주식회사 개선된 비트율 제어 방법과 그 장치
KR20040047010A (ko) 2002-11-28 2004-06-05 엘지전자 주식회사 영상 전화 시스템의 비트율 조절방법
KR100543608B1 (ko) 2003-01-03 2006-01-20 엘지전자 주식회사 오브젝트 기반 비트율 제어방법 및 장치
US20050008240A1 (en) * 2003-05-02 2005-01-13 Ashish Banerji Stitching of video for continuous presence multipoint video conferencing
JP2005123732A (ja) * 2003-10-14 2005-05-12 Matsushita Electric Ind Co Ltd デブロックフィルタ処理装置およびデブロックフィルタ処理方法
US8340177B2 (en) * 2004-07-12 2012-12-25 Microsoft Corporation Embedded base layer codec for 3D sub-band coding
US8374238B2 (en) * 2004-07-13 2013-02-12 Microsoft Corporation Spatial scalability in 3D sub-band decoding of SDMCTF-encoded video
KR100621581B1 (ko) 2004-07-15 2006-09-13 삼성전자주식회사 기초 계층을 포함하는 비트스트림을 프리디코딩,디코딩하는 방법, 및 장치
DE102004059993B4 (de) * 2004-10-15 2006-08-31 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Erzeugen einer codierten Videosequenz unter Verwendung einer Zwischen-Schicht-Bewegungsdaten-Prädiktion sowie Computerprogramm und computerlesbares Medium
KR200447010Y1 (ko) 2007-10-01 2009-12-17 이운영 행주 삶는 전기 포트

Also Published As

Publication number Publication date
CN101027908B (zh) 2010-06-16
KR20060034197A (ko) 2006-04-21
CN101027908A (zh) 2007-08-29
KR20060034192A (ko) 2006-04-21
US7839929B2 (en) 2010-11-23
RU2337503C1 (ru) 2008-10-27
US20060083300A1 (en) 2006-04-20
KR100703724B1 (ko) 2007-04-05
CN1764276A (zh) 2006-04-26
CN101036388A (zh) 2007-09-12
CN100466738C (zh) 2009-03-04
US20060083303A1 (en) 2006-04-20
KR20060034195A (ko) 2006-04-21
US20060083302A1 (en) 2006-04-20
BRPI0516826A (pt) 2008-09-23
KR100679030B1 (ko) 2007-02-05
US7881387B2 (en) 2011-02-01

Similar Documents

Publication Publication Date Title
KR100679022B1 (ko) 계층간 필터링을 이용한 비디오 코딩 및 디코딩방법과,비디오 인코더 및 디코더
JP5026965B2 (ja) ベースレイヤを含むビットストリームをプリデコーディング、デコーディングする方法及び装置
JP5014989B2 (ja) 基礎階層を利用するフレーム圧縮方法、ビデオコーディング方法、フレーム復元方法、ビデオデコーディング方法、ビデオエンコーダ、ビデオデコーダ、および記録媒体
KR100679026B1 (ko) 비디오 코딩 및 디코딩을 위한 시간적 분해 및 역 시간적분해 방법과, 비디오 인코더 및 디코더
Andreopoulos et al. In-band motion compensated temporal filtering
US8929436B2 (en) Method and apparatus for video coding, predecoding, and video decoding for video streaming service, and image filtering method
US20050226334A1 (en) Method and apparatus for implementing motion scalability
KR100679018B1 (ko) 다계층 비디오 코딩 및 디코딩 방법, 비디오 인코더 및디코더
JP4844741B2 (ja) 動画像符号化装置及び動画像復号装置と、その方法及びプログラム
JP2007520150A (ja) スケーラブルビデオコーディング方法およびデコーディング方法とそのための装置
WO2006006786A1 (en) Method and apparatus for scalable video coding and decoding
EP1741297A1 (en) Method and apparatus for implementing motion scalability
JP2008515328A (ja) 階層間フィルタリングを利用したビデオコーディングおよびデコーディング方法と、ビデオエンコーダおよびデコーダ
AU2004314092B2 (en) Video/image coding method and system enabling region-of-interest
KR100621584B1 (ko) 스무딩 필터를 이용하는 비디오 디코딩 방법 또는 비디오디코더
JP4660550B2 (ja) 多階層ビデオコーディングおよびデコーディング方法、ビデオエンコーダおよびデコーダ
EP1766986A1 (en) Temporal decomposition and inverse temporal decomposition methods for video encoding and decoding and video encoder and decoder

Legal Events

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

Payment date: 20121228

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20131230

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20141223

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee