KR100952761B1 - Apparatus for temporal scalable video coding and method thereof - Google Patents

Apparatus for temporal scalable video coding and method thereof Download PDF

Info

Publication number
KR100952761B1
KR100952761B1 KR1020030011772A KR20030011772A KR100952761B1 KR 100952761 B1 KR100952761 B1 KR 100952761B1 KR 1020030011772 A KR1020030011772 A KR 1020030011772A KR 20030011772 A KR20030011772 A KR 20030011772A KR 100952761 B1 KR100952761 B1 KR 100952761B1
Authority
KR
South Korea
Prior art keywords
layer
frame
bitstream
enhancement
processor
Prior art date
Application number
KR1020030011772A
Other languages
Korean (ko)
Other versions
KR20040076428A (en
Inventor
지석만
윤도현
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1020030011772A priority Critical patent/KR100952761B1/en
Publication of KR20040076428A publication Critical patent/KR20040076428A/en
Application granted granted Critical
Publication of KR100952761B1 publication Critical patent/KR100952761B1/en

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/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/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/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • 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/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder

Landscapes

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

Abstract

본 발명은 에러에 강한 시간적 확장성 영상 코딩 (Temporal scalable video coding) 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for temporal scalable video coding that is resistant to errors.

본 발명은 입력 영상을 프레임 비율(frame rate)에 따라서 서로 다르게 나누는 확장성 프리 프로세서 (Scalability pre-processor)와; 제 1 입력 데이터로부터 하위 계층(layer) 비트스트림 (bitstream)을 생성하는 기본계층 (base layer)과; 제 2 입력 데이터로부터 인코더 중간 프로세서 (encoder mid-processor)를 이용하여 상위 계층 비트스트림을 생성하는 하나 이상의 확장 계층 (enhancement layer);을 포함하여 구성된다. 또한 본 발명은, 하위 계층 비트스트림에 에러가 발생시 디코더 중간프로세서를 이용해서 하위 비트스트림으로부터 제 1 출력을 생성하는 기본 계층과, 상위 계층 비트스트림에 에러가 발생시 중간프로세서를 이용해서 상위 비트스트림으로부터 제 2 출력을 생성하는 하나이상의 확장계층(enhancement layer)과; 상기 제 1, 2 출력으로부터 출력 영상을 만드는 확장성 포스트 프로세서;를 포함하여 구성된다. 따라서 본 발명에 의하면, 유/무선 영상전화, VOD 등 영상서비스에서 에러가 발생했을 때, 짧은 시간에 에러를 복원하므로 에러가 많이 발생하는 환경에서 영상의 품질을 높이는 장점이 있다.According to an aspect of the present invention, there is provided a scalability pre-processor that divides an input image differently according to a frame rate; A base layer for generating a lower layer bitstream from the first input data; One or more enhancement layers for generating a higher layer bitstream using an encoder mid-processor from the second input data. The present invention also provides a base layer for generating a first output from a lower bitstream using a decoder intermediate processor when an error occurs in a lower layer bitstream, and from an upper bitstream using an intermediate processor when an error occurs in an upper layer bitstream. One or more enhancement layers to produce a second output; And an expandable post processor for generating an output image from the first and second outputs. Therefore, according to the present invention, when an error occurs in a video service such as a wired / wireless video telephone or a VOD, the error is restored in a short time, thereby improving the quality of the image in an environment where many errors occur.

Description

시간적 확장성 영상 코딩 장치 및 방법 {Apparatus for temporal scalable video coding and method thereof}Apparatus for temporal scalable video coding and method

도 1은 시간적 확장성 영상 인코더(temporal scalable video encoder)의 하이레벨 (high level) 블럭도1 is a high level block diagram of a temporal scalable video encoder.

도 2는 시간적 확장성 영상 디코더 (temporal scalable video decoder)의 하이레벨 블럭도 2 is a high level block diagram of a temporal scalable video decoder.

도 3은 상기 도 1의 시간적 확장성 영상 인코더(temporal scalable video encoder)를 상세하게 나타낸 도면FIG. 3 illustrates the temporal scalable video encoder of FIG. 1 in detail.

도 4는 상기 도 2의 시간적 확장성 영상 디코더 (temporal scalable video decoder)를 상세하게 나타낸 도면FIG. 4 is a diagram illustrating the temporal scalable video decoder of FIG. 2 in detail.

도 5는 시간적 확장성 영상 인코더 (temporal scalable video encoder)의 하이레벨 구조에서 N개의 확장계층을 가질 경우를 나타낸 도면FIG. 5 is a diagram illustrating a case of having N extension layers in a high level structure of a temporal scalable video encoder. FIG.

도 6은 시간적 확장성 영상 (temporal scalable video) 디코더의 하이레벨 구조에서 N개의 확장계층을 가질 경우를 나타낸 도면FIG. 6 illustrates a case in which N extension layers are included in a high level structure of a temporal scalable video decoder; FIG.

도 7은 본 발명의 인코더에서의 시간적 확장성 영상 코딩 방법을 나타낸 흐름도7 is a flowchart illustrating a temporal scalable video coding method in an encoder of the present invention.

도 8은 본 발명의 디코더에서의 시간적 확장성 영상 코딩 방법을 나타낸 흐름도8 is a flowchart illustrating a temporal scalable image coding method in a decoder of the present invention.

본 발명은 시간적 확장성 영상 코딩(temporal scalable video coding)에 관한 것으로, 특히 에러에 강한 시간적 확장성 영상 코딩 장치 및 방법에 관한 것이다.The present invention relates to temporal scalable video coding, and more particularly, to an apparatus and method for temporal scalable video coding that is resistant to errors.

이하 종래 및 본 발명에 대해 설명한다.Hereinafter, the conventional and the present invention will be described.

일반적으로 에러가 많이 발생하는 환경에서 영상의 품질을 높이기 위해서는 유/무선 영상전화, VOD 등 영상서비스에서 에러가 발생했을 때, 짧은 시간에 에러를 복원해야 한다.In general, in order to improve video quality in an error-prone environment, when an error occurs in a video service such as a wired / wireless videophone or a VOD, the error should be restored in a short time.

그러나 종래에 있어서 유/무선 통신망을 이용하는 영상 서비스는 할당되는 대역폭(bandwidth)이 가변적이기 때문에 이에 대응하는 방법의 하나로 시간적 확장성 영상 코딩(temporal scalable video coding)을 한다. However, in the related art, a video service using a wired / wireless communication network has a temporal scalable video coding as one of the corresponding methods since the allocated bandwidth is variable.

그런데 유/무선 통신망에서는 전송에러가 발생하는데, 종래의 시간적 확장성 (temporal scalability)은 에러의 전파를 막을 수는 있지만 에러의 복원을 할 수 없었다.However, transmission errors occur in wired / wireless communication networks. The conventional temporal scalability prevents error propagation but cannot recover the error.

따라서 본 발명에서는 상기와 같은 문제점을 해결하고자 한 것으로, 본 발명의 시간적 확장성은 기본 계층과 한 개 이상의 확장계층 (enhancement layer)으로 구성이 되어 모든 계층은 그 상위 또는 하위 계층에 발생한 에러를 복원할 수 있는 정보를 전달하며, 임의의 계층에서 에러가 발생하면 그 상위 및 하위 계층으로부터 에러를 복원하는 것을 제안한다. Therefore, in the present invention to solve the above problems, the temporal scalability of the present invention is composed of a base layer and one or more enhancement layer (enhancement layer) so that all layers can recover the error occurred in the upper or lower layer. It conveys information that can be transmitted and proposes to recover the error from the upper and lower layers if an error occurs in any layer.

본 발명의 시간적 확장성 영상 코딩(Temporal scalable video coding) 장치는, 입력 영상을 프레임 비율에 따라서 서로 다르게 나누는 Scalability pre-processor와; 제 1 입력 데이터로부터 하위 계층 비트스트림을 생성하는 기본 계층과; 제 2 입력 데이터로부터 인코더 중간프로세서를 이용하여 상위 계층 비트스트림을 생성하는 하나이상의 확장계층(enhancement layer);을 포함하여 구성된다. The temporal scalable video coding apparatus of the present invention comprises: a scalability pre-processor for dividing an input image differently according to a frame rate; A base layer for generating a lower layer bitstream from the first input data; One or more enhancement layers for generating a higher layer bitstream using an encoder intermediate processor from the second input data.

또한 본 발명은, 하위 계층 비트스트림에 에러가 발생시 디코더 중간프로세서를 이용해서 하위 비트스트림 으로부터 제 1 출력을 생성하는 기본 계층과, 상위 계층 비트스트림에 에러가 발생시 중간프로세서 (mid-processor)를 이용해서 상위 비트스트림으로부터 제 2 출력을 생성하는 하나이상의 확장계층(enhancement layer)과; 상기 제 1, 2출력으로 부터 출력영상을 만드는 확장성포스트프로세서(Scalability post-processor) ;를 포함하여 구성된다.The present invention also uses a base layer that generates a first output from a lower bitstream using a decoder intermediate processor when an error occurs in a lower layer bitstream and a mid-processor when an error occurs in an upper layer bitstream. One or more enhancement layers to generate a second output from the higher bitstream; And a scalability post-processor for producing an output image from the first and second outputs.

또한 본 발명의 인코더에서의 시간적 확장성 영상 코딩 (Temporal scalable video coding) 방법은, 하위계층인 기본 계층과 상위계층인 하나 이상의 확장계층(enhancement layer)을 구성하는 단계; 모든 확장계층(enhancement layer)에 주기적으로 그 하위 계층의 프레임과 동일한 시간에 동일한 프레임인 동기 프레임을 코딩하는 단계; 상위계층의 동기 프레임은 동일한 계층(layer)의 이전 프레임과 하위계층의 동기 프레임의 차이를 코딩하는 단계;를 포함한다.In addition, the temporal scalable video coding method in the encoder of the present invention comprises the steps of: configuring a base layer that is a lower layer and at least one enhancement layer that is an upper layer; Coding a synchronization frame that is the same frame at the same time as the frame of the lower layer periodically in every enhancement layer; The sync frame of the higher layer includes coding a difference between the previous frame of the same layer and the sync frame of the lower layer.

또한 본 발명의 디코더에서의 시간적 확장성 영상 코딩 방법은, 하위계층인 기본 계층과 상위계층인 하나이상의 확장계층(enhancement layer)을 구성하는 단계; 임의의 계층에서 임의의 프레임에 에러가 발생시에, 에러가 없는 그 상위계층의 동기 프레임 또는 에러가 없는 하위계층의 프레임으로부터 에러를 복원하는 단계;를 포함한다.In addition, the temporal scalable video coding method in the decoder of the present invention comprises the steps of: configuring a base layer which is a lower layer and at least one enhancement layer which is an upper layer; And when an error occurs in any frame in any layer, recovering the error from the sync frame of the upper layer without errors or the frame of the lower layer without errors.

본 발명의 다른 목적, 특징들은 첨부한 도면을 참조한 실시예들의 상세한 설명을 통해 명백해질 것이다.Other objects and features of the present invention will become apparent from the detailed description of the embodiments with reference to the accompanying drawings.

이하 첨부된 도면을 참조하여 본 발명에 따른 시간적 확장성 영상 코딩 (Temporal scalable video coding) 장치와 방법에 대하여 설명한다.Hereinafter, an apparatus and method for temporal scalable video coding according to the present invention will be described with reference to the accompanying drawings.

먼저, 본 발명의 특징을 설명한다.First, the features of the present invention will be described.

시간적 확장성 (temporal scalability)은 한 개의 기본 계층과 한 개 이상의 확장계층(enhancement layer)으로 구성된다.Temporal scalability consists of one base layer and one or more enhancement layers.

1) 모든 확장계층(enhancement layer)에 각각 주기적으로 그 하위 계층의 프레임과 동일한 시간에 동일한 프레임을 coding 한다. 이때, 동일한 시간의 동일한 두 프레임을 동기프레임 (sync frame) 이라 부른다.1) The same frame is coded in all enhancement layers periodically at the same time as the frame of the lower layer. At this time, two identical frames at the same time are called sync frames .

2) 한 쌍의 동기 프레임 중 상위 계층의 동기 프레임은 동일한 계층의 이전 프레임과 하위 계층의 동기 프레임의 차이를 coding 한다.2) A sync frame of a higher layer among a pair of sync frames codes a difference between a previous frame of the same layer and a sync frame of a lower layer.

3) 임의의 계층에서 임의의 프레임에 에러가 발생하면 에러가 없는 그 상위 계층의 동기 프레임으로부터 에러를 복원한다.3) If an error occurs in any frame in any layer, the error is recovered from the sync frame of the upper layer where there is no error.

4) 또는 임의의 계층에서 임의의 프레임에 에러가 발생하면 에러가 없는 하위 계층의 프레임으로부터 에러를 복원한다.4) Or, if an error occurs in any frame in any layer, the error is recovered from the frame of the lower layer without an error.

이하 도면을 인용하여 설명한다.Hereinafter, a description will be given with reference to the drawings.

도 1은 시간적 확장성 영상 인코더의 하이 레벨 블럭도이다.1 is a high level block diagram of a temporally scalable video encoder.

도면에서 보는바와 같이, 출력 비트스트림(1,0)이 한 개의 기본 계층 (BL) (104)과 한 개의 확장계층(enhancement layer) (EL) (102)으로 이루어 질 때를 나타낸다. As shown in the figure, it shows when the output bitstream (1,0) consists of one base layer (BL) 104 and one enhancement layer (EL) 102.

영상 인코더 (Video encoder)가 N개의 확장계층을 가질 때는 도 1의 기본계층 인코더가 확장계층 n 인코더를, 도 1의 확장계층 1 인코더가 확장계층 n+1 인코더를 나타낸다 (n=1부터 N-1까지).When a video encoder has N extension layers, the base layer encoder of FIG. 1 indicates an extension layer n encoder, and the enhancement layer 1 encoder of FIG. 1 indicates an extension layer n + 1 encoder (n = 1 to N−). Up to 1).

Scalability pre-processor (101)는 입력 영상을 프레임 비율에 따라서 입력 0과 입력 1로 나눈다. Scalability pre-processor 101 divides the input image into input 0 and input 1 according to the frame rate.

즉, 기본계층의 프레임 비율에 맞는 프레임은 입력 0으로, 그렇지 않은 프레임은 입력 1로 나눈다.That is, frames that meet the frame rate of the base layer are divided by input 0, and frames that are not otherwise divided by input 1.

기본계층 인코더는 입력 0으로부터 하위 계층 비트스트림 (bitstream 0)을 만든다.The base layer encoder creates a lower layer bitstream (bitstream 0) from input zero.

확장계층 1 인코더는 인코더 중간프로세서(mid-processor) (103)를 이용해서 입력 1로부터 상위 계층 비트스트림 (bitstream 1)을 만든다.The enhancement layer 1 encoder uses an encoder mid-processor 103 to create a higher layer bitstream 1 from input 1.

도 2는 시간적 확장성 영상 디코더 의 하이레벨 블럭도이다.2 is a high level block diagram of a temporal scalable video decoder.

도면에서 보는바와 같이, 입력 비트스트림(1,0)이 한 개의 기본계층과 한 개의 확장계층으로 이루어질 때를 나타낸다.        As shown in the figure, this shows when the input bitstream (1,0) consists of one base layer and one extension layer.

Video 디코더가 N개의 확장계층을 가질 때는 도 2의 기본계층 디코더(203)가 확장계층 n 디코더를, 도 2의 확장계층 1 디코더 (201)가 확장계층 n+1 디코더를 나타낸다. (n=1부터 N-1까지).When the video decoder has N enhancement layers, the base layer decoder 203 of FIG. 2 represents an enhancement layer n decoder, and the enhancement layer 1 decoder 201 of FIG. 2 represents an enhancement layer n + 1 decoder. (n = 1 to N-1).

기본계층 디코더는 하위 계층 비트스트림 (bitstream 0)으로부터 출력 0를 만든다.The base layer decoder produces output 0 from the lower layer bitstream 0.

Bitstream 0에 에러가 발생했으면, 기본계층 디코더는 디코더 중간프로세서 (202)를 이용해서 하위 계층 비트스트림 (bitstream 0)으로부터 출력 0를 만든다.If an error occurs in Bitstream 0, the base layer decoder uses the decoder intermediate processor 202 to generate output 0 from the lower layer bitstream (bitstream 0).

한편, 확장계층 1 디코더 (201)는 디코더 중간프로세서를 이용해서 상위 계층 비트스트림 (bitstream 1)으로부터 출력 1을 만든다.      Meanwhile, the enhancement layer 1 decoder 201 generates an output 1 from an upper layer bitstream 1 using a decoder intermediate processor.

Bitstream 1에 에러가 발생했으면, 확장계층 1 디코더 (201)는 디코더 중간중간프로세서 (202)을 이용해서 상위 계층 비트 스트림 (비트스트림 1)으로부터 출력1을 만든다.If an error occurs in Bitstream 1, the enhancement layer 1 decoder 201 uses the decoder intermediate intermediate processor 202 to produce output 1 from the higher layer bit stream (bitstream 1).

확장성 포스트 프로세서 (Scalability post-processor) (204)는 출력 0과 출력 1로부터 출력 영상을 만든다.      Scalability post-processor 204 produces an output image from output 0 and output 1.

도 3은 상기 도 1의 시간적 확장성 영상 디코더를 상세하게 나타낸 도면이다.FIG. 3 is a detailed diagram of the temporal scalable video decoder of FIG. 1.

도면에서 보는바와 같이, 기본계층 인코더와 확장계층 1 인코더의 연산 블록은 기본적으로 도 1과 같다.As shown in the figure, the operation blocks of the base layer encoder and the enhancement layer 1 encoder are basically as shown in FIG.

기본계층 인코더 (303)는 일반적인 video 인코더와 같이 기본계층 프레임을 인코딩 한다. 예를 들면, 기본계층의 프레임 비율에 따라서 입력 0을 I-프레임 또는 P-프레임으로 인코딩 한다.      The base layer encoder 303 encodes a base layer frame like a general video encoder. For example, input 0 is encoded as an I-frame or a P-frame according to the frame rate of the base layer.

확장계층 1 인코더 (301)는 인코더 중간프로세서 (302)를 이용해서 입력 1을 인코딩 한다.      The enhancement layer 1 encoder 301 encodes input 1 using the encoder intermediate processor 302.

이때, 인코더 기준 (reference) 프레임 선택기 (selector) (302a)는 확장계층 1 인코더의 기준 프레임을 기본계층에서 선택할지 또는 확장계층에서 선택할지 결정한다. In this case, the encoder reference frame selector 302a determines whether to select a reference frame of the enhancement layer 1 encoder in the base layer or in the enhancement layer.

예를 들면, 입력 1의 프레임을 모두 P-프레임으로 인코딩 할 경우, 기본계층에서 가장 최근에 encoding한 프레임 혹은 확장계층에서 가장 최근에 encoding한 프레임을 기준 프레임으로 한다.For example, when all the frames of the input 1 are encoded into P-frames, the most recently encoded frame in the base layer or the most recently encoded frame in the enhancement layer is used as the reference frame.

또한 인코더 동기 프레임 선택기 (302b)는 상기의 확장계층 프레임을 인코딩 하도록 한다.      The encoder sync frame selector 302b also encodes the enhancement layer frame.

한편, 확장성 프리 프로세서 (Scalability pre-processor)가 입력 영상을 기본계층의 프레임 비율에 따라서 나누기 때문에 기본계층의 입력 0과 확장계층의 입력 1은 시간적으로 동일한 (coincident) 프레임을 갖지 않는다.       Meanwhile, since the scalability pre-processor divides the input image according to the frame rate of the base layer, the input 0 of the base layer and the input 1 of the extension layer do not have the same frame in time.

하지만 인코더 동기 프레임 선택기는 주기적으로 기본계층의 프레임과 동일한 시간에 확장계층의 프레임을 인코딩 하도록 한다. However, the encoder sync frame selector periodically encodes the frame of the enhancement layer at the same time as the frame of the base layer.

이때, 동일한 시간에 존재하는 기본계층의 프레임과 확장계층의 프레임을 동기 프레임이라고 정의하고 이 시간을 동기 시간 (sync time)이라고 정의한다. At this time, the frame of the base layer and the frame of the extension layer existing at the same time are defined as a sync frame , and this time is defined as a sync time .

이 동기 프레임은 시간적 확장성 영상 디코더에서 에러 복원을 위해 사용한다. 동기 프레임을 만들기 위해 동기 시간의 기본계층 프레임과 가장 최근의 확장계층 프레임을 이용한다. 확장계층 동기 프레임의 양자화된 계수 (quantized coefficient)는 각 프레임의 양자화된 계수 (quantized coefficient)로부터 계산한다.This sync frame is used for error recovery in a temporally scalable video decoder. To create a sync frame, the base layer frame of sync time and the most recent extended layer frame are used. The quantized coefficients of the enhancement layer sync frame are calculated from the quantized coefficients of each frame.

Q_기본계층_동기_프레임 = 기본계층 동기 프레임의 양자화된 계수Q_base layer_sync_frame = quantized coefficient of base layer sync frame

Q_확장계층_latest_프레임 = 가장 최근의 확장계층 프레임의 양자화된 계수Q_extension layer_latest_frame = quantized coefficients of the most recent enhancement layer frame

Q_확장계층_동기_프레임 = 확장계층 동기 프레임의 양자화된 계수Q_extended layer_sync_frame = quantized coefficients of extended layer sync frame

Q_확장계층_동기_프레임 = Q_확장계층_latest_프레임 - Q_기본계층_동기_프레임Q_extended_sync_frame = Q_extended_latest_frame-Q_base_sync_frame

도 4는 상기 도 2의 시간적 확장성 영상 디코더를 상세하게 나타낸 도면이다.4 is a diagram illustrating the temporal scalable video decoder of FIG. 2 in detail.

도면에서 보는바와 같이, 기본계층 디코더와 확장계층 1 디코더의 연산 블록은 기본적으로 도 2와 같다.As shown in the figure, the operation blocks of the base layer decoder and enhancement layer 1 decoder are basically the same as in FIG.

기본계층 디코더 (403)는 일반적인 video 디코더와 같이 비트스트림 0으로부터 기본계층 프레임을 디코딩 한다. The base layer decoder 403 decodes the base layer frame from bitstream 0 like a normal video decoder.

예를 들면, 상기 도 3에서 설명한바와 같이 인코딩한 비트스트림 0로부터 I-프레임과 P-프레임을 디코딩 한다.For example, the I-frame and the P-frame are decoded from the encoded bitstream 0 as described with reference to FIG. 3.

확장계층 1 디코더 (401)는 디코더 중간프로세서 (402)를 이용해서 비트스트림 1으로부터 확장계층 프레임을 디코딩 한다. The enhancement layer 1 decoder 401 uses the decoder intermediate processor 402 to decode the enhancement layer frame from bitstream 1.

이때, 디코더 기준 프레임 선택기 (402a)는 비트스트림 1을 해석한 후 기준 프레임을 기본계층 프레임에서 선택할지 또는 확장계층 프레임에서 선택할지 결정한다. In this case, the decoder reference frame selector 402a analyzes bitstream 1 and determines whether to select a reference frame from a base layer frame or an extended layer frame.

예를 들면, 현재 확장계층 프레임이 P-프레임이라면 기준 프레임은 기본계층에서 가장 최근의 I-프레임 혹은 P-프레임, 또는 확장계층에서 가장 최근의 P-프레임이 되는데 이것은 비트스트림 1을 해석한 후 판단한다.For example, if the current enhancement layer frame is a P-frame, the reference frame is the most recent I-frame or P-frame in the base layer, or the most recent P-frame in the enhancement layer. To judge.

한편, 기본계층 비트스트림 0에 에러가 발생하면 기본계층의 다음 I-프레임부터 다시 디코딩 한다. 이는 기본계층 (하위 계층)에서 에러가 발생했을 때, 기본계층의 프레임으로부터 에러을 극복하는 방법이다.On the other hand, if an error occurs in the base layer bitstream 0, the next I-frame of the base layer is decoded again. This is a way to overcome the error from the frame of the base layer when an error occurs in the base layer (lower layer).

또는, 기본계층 비트스트림 0에 에러가 발생하면 동기 프레임을 이용해서 이를 극복한다. 이는 기본계층 (하위 계층)에서 에러가 발생했을 때, 그 확장계층 (상위 계층)의 동기 프레임으로부터 에러를 극복하는 방법이다.Alternatively, if an error occurs in the base layer bitstream 0, the synchronization frame is used to overcome the error. When an error occurs in the base layer (lower layer), this is a method of overcoming the error from the synchronization frame of the extended layer (higher layer).

그러나 상기에서 에러가 발생한 기본계층 프레임이 동기 프레임이 아니면, 확장계층의 다음 동기 프레임을 기준 프레임으로 기본계층을 디코딩 한다. However, if the base layer frame in which the error occurs is not a sync frame, the base layer is decoded as a reference frame based on the next sync frame of the enhancement layer.

이때, 디코더 동기 프레임 선택기가 기준 프레임으로 쓰이는 확장계층 동기 프레임을 기본계층 디코더에 전달한다.In this case, the decoder sync frame selector transfers the enhancement layer sync frame used as the reference frame to the base layer decoder.

한편, 에러가 발생한 기본계층 프레임이 동기 프레임이면, 확장계층의 현재 동기 프레임을 기준 프레임으로 기본계층을 디코딩 한다. 이때, 디코더 동기 프레임 선택기가 기준 프레임으로 쓰이는 확장계층 동기 프레임을 기본계층 디코더에 전달한다.On the other hand, if the base layer frame in which the error occurs is a sync frame, the base layer is decoded using the current sync frame of the enhancement layer as a reference frame. In this case, the decoder sync frame selector transfers the enhancement layer sync frame used as the reference frame to the base layer decoder.

확장계층 1 비트스트림 1에 에러가 발생하면 기본계층의 다음 프레임부터 디코딩 한다. Enhancement layer 1 If an error occurs in bitstream 1, decoding is performed from the next frame of the base layer.

이는 확장계층 (상위 계층)에서 에러가 발생했을 때, 그 기본계층 (하위 계층)의 다음 프레임으로부터 에러를 극복하는 방법이다.This is a way to overcome an error from the next frame of the base layer (lower layer) when an error occurs in the enhancement layer (higher layer).

도 5는 시간적 확장성 영상 인코더의 하이레벨 구조에서 N개의 확장계층을 가질 경우를 나타낸 도면이다.FIG. 5 is a diagram illustrating a case of having N extension layers in a high level structure of a temporal scalable video encoder.

인코딩은 인접한 두 계층의 쌍으로 도 1과 도 3처럼 이루어진다. The encoding is done in pairs of two adjacent layers, as shown in Figs.

예를 들면, 기본계층과 확장계층 1을 쌍으로 상기 도 1과 도 3을 적용하고, 확장계층 1과 확장계층 2를 쌍으로 도 1과 도 3을 적용한다.For example, FIG. 1 and FIG. 3 are applied in pairs of a base layer and an extension layer 1, and FIGS. 1 and 3 are applied in pairs of an extension layer 1 and an extension layer 2. FIG.

이때, 동기 프레임은 인접한 두개 이상의 계층에서 일치가 가능하다. In this case, the sync frame may be matched in two or more adjacent layers.

예를 들어, 기본계층과 확장계층 1의 동기 시간과 확장계층 1과 확장계층 2의 동기 시간이 같을 수 있다.For example, the synchronization time between the base layer and the enhancement layer 1 and the synchronization time between the enhancement layer 1 and the enhancement layer 2 may be the same.

도 6은 시간적 확장성 영상 디코더의 하이레벨 구조에서 N개의 확장계층을 가질경우를 나타낸 도면이다.FIG. 6 is a diagram illustrating a case of having N extension layers in a high level structure of a temporal scalable video decoder.

디코딩은 인접한 두 계층의 쌍으로 상기 도 2와 도4처럼 이루어진다. Decoding is performed as shown in Figs. 2 and 4 in pairs of two adjacent layers.

예를 들면, 기본계층과 확장계층 1을 쌍으로 도 2와 도 4를 적용하고, 확장계층 1과 확장계층 2를 쌍으로 도 2와 도 4를 적용한다.For example, FIGS. 2 and 4 are applied to the base layer and the extended layer 1 in pairs, and FIGS. 2 and 4 are applied to the extended layer 1 and the extended layer 2 in pairs.

임의의 계층에서 에러가 발생하면, 상기 도 4의 경우처럼 그 계층의 다음 I-프레임을 이용해서 에러를 복원한다.If an error occurs in any layer, the error is recovered using the next I-frame in that layer as in the case of FIG.

또는 임의의 계층에서 에러가 발생하면, 상기 도 4의 경우처럼 상위 계층의 동기 프레임을 이용해서 에러를 복원한다.Alternatively, if an error occurs in any layer, the error is recovered using the synchronization frame of the upper layer as in the case of FIG.

또한 임의의 계층에서 에러가 발생하면, 상기 도 4의 경우처럼 하위 계층의 다음 프레임을 이용해서 에러를 복원한다.If an error occurs in any layer, the error is recovered using the next frame of the lower layer as in the case of FIG.

도 7은 본 발명의 인코더에서의 시간적 확장성 영상 코딩 방법을 나타낸 흐름도이다.7 is a flowchart illustrating a temporal scalable video coding method in the encoder of the present invention.

하위계층인 기본 계층과 상위계층인 하나이상의 확장계층(enhancement layer)을 구성한다. (S 701).A base layer that is a lower layer and one or more enhancement layers that are an upper layer are configured. (S 701).

모든 확장계층(enhancement layer)에 주기적으로 그 하위 계층의 프레임과 동일한 시간에 동일한 프레임인 동기 프레임을 코딩한다. (S 702).In every enhancement layer, a sync frame that is the same frame is coded at the same time as the frame of the lower layer periodically. (S 702).

상위계층의 동기 프레임은 동일한 계층(layer)의 이전 프레임과 하위계층의 동기 프레임의 차이를 코딩한다. (S 703).The sync frame of the higher layer codes the difference between the sync frame of the lower layer and the previous frame of the same layer. (S 703).

부연하면, 두 계층이 쌍으로 상기 단계 S702, S703을 반복한다.In other words, the two layers repeat the above steps S702 and S703 in pairs.

즉, 기본 계층과 확장계층 1을 쌍으로 단계 S702, S703을 하고, 다시 확장계층1, 확장계층 2를 쌍으로 S702, S703을 하고, 다시 확장계층 2, 확장계층 3을 쌍으로 S702, S703을 수행한다.That is, the steps S702 and S703 are performed in pairs of the base layer and the extension layer 1, and the steps S702 and S703 are performed in pairs of the extension layer 1 and the extension layer 2 again, and the S702 and S703 are further paired in the extension layer 2 and the extension layer 3. To perform.

도 8은 본 발명의 디코더에서의 시간적 확장성 영상 코딩 방법을 나타낸 흐름도이다.8 is a flowchart illustrating a temporal scalable video coding method in the decoder of the present invention.

하위계층인 기본계층(base layer)과 상위계층인 하나 이상의 확장계층(enhancement layer)을 구성한다. (S 801).A lower layer base layer and one or more enhancement layers are formed. (S 801).

임의의 계층에서 임의의 프레임에 에러가 발생시에, 에러가 없는 그 상위계층의 동기 프레임 또는 에러가 없는 하위계층의 프레임으로부터 에러를 복원한다. (S 802).When an error occurs in any frame in any layer, the error is recovered from the sync frame of the upper layer without errors or the frame of the lower layer without errors. (S 802).

이상에서 본 발명의 바람직한 실시예를 설명하였으나, 본 발명은 다양한 변화와 변경 및 균등물을 사용할 수 있다. 본 발명은 상기 실시예를 적절히 변형하여 동일하게 응용할 수 있음이 명확하다. Although preferred embodiments of the present invention have been described above, the present invention may use various changes, modifications, and equivalents. It is clear that the present invention can be applied in the same manner by appropriately modifying the above embodiments.

즉, 표준 코덱(codec)과 호환을 위해서 한 쌍의 동기 프레임 중 상위 계층의 동기 프레임은 표준 코덱의 해당 프로파일(profile) 및 레벨(level)에서 사용하지 않는 코드를 이용해서 인코딩 한다.That is, in order to be compatible with the standard codec, the upper layer sync frame of the pair of sync frames is encoded using a code not used in the corresponding profile and level of the standard codec.

이때, 표준 디코더는 한 쌍의 동기 프레임 중 상위 계층의 동기 프레임을 에러로 간주하고 무시할 수 있다.In this case, the standard decoder may regard the sync frame of the upper layer among the pair of sync frames as an error and ignore it.

따라서 상기 기재 내용은 하기 특허청구범위의 한계에 의해 정해지는 본 발 명의 범위를 한정하는 것이 아니다.
Therefore, the above description does not limit the scope of the present invention as defined by the limitations of the following claims.

본 발명에 의하면, 유/무선 영상전화, VOD 등 영상서비스에서 에러가 발생했을 때, 짧은 시간에 에러를 복원하는 효과가 있다.According to the present invention, when an error occurs in a video service such as a wired / wireless video telephone or a VOD, the error can be restored in a short time.

따라서 짧은 시간에 에러를 복원하므로 에러가 많이 발생하는 환경에서 영상의 품질을 높이는 장점이 있다.












Therefore, since the error is restored in a short time, there is an advantage of improving the image quality in an environment where many errors occur.












Claims (8)

입력 영상을 프레임 비율에 따라서 서로 다르게 나누는 확장성 프리 프로세서 (scalability pre-processor)와;A scalability pre-processor dividing the input image differently according to the frame rate; 제 1 입력 데이터로부터 하위 계층 비트스트림을 생성하는 기본 계층과;A base layer for generating a lower layer bitstream from the first input data; 제 2 입력 데이터로부터 인코더 중간프로세서를 이용하여 상위 계층 비트스트림을 생성하는 하나 이상의 확장계층(enhancement layer); 을 포함하여 동작하는데 있어, 하위 계층 비트스트림에 에러가 발생시에 기본 계층은 디코더 프로세서를 이용해서 하위 비트스트림으로부터 제 1 출력을 생성하고, 상위 계층 비트스트림에 에러가 발생시에 확장계층은 디코더 프로세서를 이용해서 상위 비트스트림으로부터 제 2 출력을 생성하며, 상기 제 1, 2 출력으로부터 출력 영상을 만드는 확장성 포스트 프로세서;를 포함하여 구성되는 것을 특징으로 하는 시간적 확장성 영상 코딩 장치. One or more enhancement layers for generating an upper layer bitstream from the second input data using an encoder intermediate processor; In operation , the base layer generates a first output from the lower bitstream by using a decoder processor when an error occurs in the lower layer bitstream, and when the error occurs in the upper layer bitstream, the enhancement layer uses the decoder processor. And a scalable post processor for generating a second output from an upper bitstream by using the first and second outputs, and generating an output image from the first and second outputs . 제 1항에 있어서, 인코더 기준 프레임 선택기가 확장 계층 1 인코더의 기준 프레임을 기본계층에서 선택할지 또는 확장계층에서 선택할지 결정하는 것을 특징으로 하는 시간적 확장성 영상 코딩 장치.The apparatus of claim 1, wherein the encoder reference frame selector determines whether to select a reference frame of the enhancement layer 1 encoder in the base layer or in the enhancement layer. 하위계층인 기본 계층과 상위계층인 하나 이상의 확장계층(enhancement layer)를 구성하는 단계;Constructing a base layer which is a lower layer and at least one enhancement layer which is an upper layer; 상위 계층인 모든 확장계층(enhancement layer)에 주기적으로 그 하위 계층의 프레임과 동일한 시간에 동일한 프레임인 동기 프레임을 코딩하는 단계;Further comprising: periodically encoding the same frame is a sync frame in the same time as a frame of the lower layer all enhancement layer (enhancement layer) of an upper layer; 상위계층의 동기 프레임은 동일한 계층(layer)의 이전 프레임과 하위계층의 동기 프레임의 차이를 코딩하는 단계; 를 포함하는데 있어, 하위 계층 비트스트림에 에러가 발생시에 기본 계층은 디코더 프로세서를 이용해서 하위 비트스트림으로부터 제 1 출력을 생성하고, 상위 계층 비트스트림에 에러가 발생시에 확장계층은 디코더 프로세서를 이용해서 상위 비트스트림으로부터 제 2 출력을 생성하며, 상기 제 1, 2 출력으로부터 출력 영상을 만드는 것을 특징으로 하는 시간적 확장성 영상 코딩 방법. The sync frame of the higher layer may include coding a difference between a previous frame of the same layer and a sync frame of the lower layer; In this case, when an error occurs in the lower layer bitstream, the base layer generates a first output from the lower bitstream using the decoder processor, and when an error occurs in the upper layer bitstream, the enhancement layer uses the decoder processor. Generating a second output from an upper bitstream and generating an output image from the first and second outputs . 제 3항에 있어서, 동기 프레임을 만들기 위해 동기 시간의 기본계층 프레임과 가장 최근의 확장계층 프레임을 이용하는 것을 특징으로 하는 시간적 확장성 영상 코딩 방법.4. The method of claim 3, wherein a base layer frame of synchronization time and a most recent extended layer frame are used to create a synchronization frame. 제 3항 또는 4항에 있어서, 확장계층 동기 프레임의 양자화된 계수(quantized coefficient)는 각 프레임의 양자화된 계수로부터 계산하는 것을 특징으로 하는 시간적 확장성 영상 코딩 방법.5. The method of claim 3 or 4, wherein the quantized coefficients of the enhancement layer sync frame are calculated from the quantized coefficients of each frame. 하위 계층 비트스트림에 에러가 발생시 디코더 중간프로세서를 이용해서 하위 비트스트림으로부터 제 1 출력을 생성하는 기본 계층과;A base layer for generating a first output from the lower bitstream using the decoder intermediate processor when an error occurs in the lower layer bitstream; 상위 계층 비트스트림에 에러가 발생시 중간프로세서를 이용해서 상위 비트스트림으로부터 제 2 출력을 생성하는 하나 이상의 확장 계층(enhancement layer)과;One or more enhancement layers for generating a second output from the upper bitstream using an intermediate processor when an error occurs in the upper layer bitstream; 상기 제 1, 2 출력으로부터 출력 영상을 만드는 확장성 포스트 프로세서;를 포함하여 구성되는 것을 특징으로 하는 시간적 확장성 영상 코딩 장치.And a scalable post processor configured to generate an output image from the first and second outputs. 제 6항에 있어서, 디코더 기준 프레임 선택기가 비트스트림 1을 해석한 후 기준 프레임을 기본계층 프레임에서 선택할지 또는 확장계층 프레임에서 선택할지 결정하는 것을 특징으로 하는 시간적 확장성 영상 코딩 장치.7. The apparatus of claim 6, wherein the decoder reference frame selector determines whether to select a reference frame from a base layer frame or an extended layer frame after interpreting bitstream 1. 하위계층인 기본 계층과 상위계층인 하나 이상의 확장계층 (enhancement layer)를 구성하는 단계;Constructing a base layer that is a lower layer and one or more enhancement layers that are an upper layer; 임의의 계층에서 임의의 프레임에 에러가 발생시에, 에러가 없는 그 상위계층의 동기 프레임 또는 에러가 없는 하위계층의 프레임으로부터 에러를 복원하는 단계;를 포함하는 것을 특징으로 하는 시간적 확장성 영상 코딩 방법. When an error occurs in any frame in any layer, restoring the error from a sync frame of the upper layer which is not in error or a frame of the lower layer which is not in error; .
KR1020030011772A 2003-02-25 2003-02-25 Apparatus for temporal scalable video coding and method thereof KR100952761B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030011772A KR100952761B1 (en) 2003-02-25 2003-02-25 Apparatus for temporal scalable video coding and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030011772A KR100952761B1 (en) 2003-02-25 2003-02-25 Apparatus for temporal scalable video coding and method thereof

Publications (2)

Publication Number Publication Date
KR20040076428A KR20040076428A (en) 2004-09-01
KR100952761B1 true KR100952761B1 (en) 2010-04-14

Family

ID=37362621

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030011772A KR100952761B1 (en) 2003-02-25 2003-02-25 Apparatus for temporal scalable video coding and method thereof

Country Status (1)

Country Link
KR (1) KR100952761B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI424750B (en) 2005-03-10 2014-01-21 Qualcomm Inc A decoder architecture for optimized error management in streaming multimedia
US7925955B2 (en) 2005-03-10 2011-04-12 Qualcomm Incorporated Transmit driver in communication system
US8693540B2 (en) 2005-03-10 2014-04-08 Qualcomm Incorporated Method and apparatus of temporal error concealment for P-frame

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020081777A (en) * 2001-04-19 2002-10-30 엘지전자 주식회사 Spatio-temporal hybrid scalable video coding using subband decomposition

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020081777A (en) * 2001-04-19 2002-10-30 엘지전자 주식회사 Spatio-temporal hybrid scalable video coding using subband decomposition

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
IEEE(1998, 5쪽)
한국OA학회논문지(2000, 4쪽)
한국멀티미디어학회(2002, 5쪽)

Also Published As

Publication number Publication date
KR20040076428A (en) 2004-09-01

Similar Documents

Publication Publication Date Title
US8311102B2 (en) Bitstream switching in multiple bit-rate video streaming environments
JP4537583B2 (en) Error concealment of video signal
US7664176B2 (en) Method and system for entropy decoding for scalable video bit stream
CN100512446C (en) A multi-description video encoding and decoding method based on self-adapted time domain sub-sampling
CN101626512A (en) Method and device of multiple description video coding based on relevance optimization rule
US7242812B2 (en) Coding and decoding of video data
JP2007520950A (en) Spatial and SNR Fine Granular Scalable Video Coding and Transmission Method
EP1867176A1 (en) Method for decoding video signal encoded using inter-layer prediction
KR100363162B1 (en) Method and apparatus for transmitting and recovering video signal
US20060233255A1 (en) Fine granularity scalability (FGS) coding efficiency enhancements
US20100303151A1 (en) Method for decoding video signal encoded using inter-layer prediction
CN103139571A (en) Video fault-tolerant error-resisting method based on combination of forward error correction (FEC) and WZ encoding and decoding
JP2005535219A (en) Method and apparatus for performing multiple description motion compensation using hybrid prediction code
KR100952761B1 (en) Apparatus for temporal scalable video coding and method thereof
US20060093031A1 (en) Method and apparatus for performing multiple description motion compensation using hybrid predictive codes
Zhang et al. Efficient error recovery for multiple description video coding
US20040258163A1 (en) Video communication system and video coding method
CN113038126A (en) Multi-description video coding method and decoding method based on frame prediction neural network
Maugey et al. Analysis of error propagation due to frame losses in a distributed video coding system
Dissanayake et al. Error resilience for multi-view video using redundant macroblock coding
AU2012100851A4 (en) Multiple description video codec based on adaptive temporal sub-sampling
Zheng et al. Multiple description coding using multiple reference frame for robust video transmission
KR100690710B1 (en) Method for transmitting moving picture
Kaup Error concealment for SNR scalable video coding in wireless communication
KR20040071984A (en) Apparatus and Method for Encoding/Decoding of Video

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
FPAY Annual fee payment

Payment date: 20160324

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170314

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20180314

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee