KR100312419B1 - Error propagation prevention method due to transmission error in video coder - Google Patents
Error propagation prevention method due to transmission error in video coder Download PDFInfo
- Publication number
- KR100312419B1 KR100312419B1 KR1019980054723A KR19980054723A KR100312419B1 KR 100312419 B1 KR100312419 B1 KR 100312419B1 KR 1019980054723 A KR1019980054723 A KR 1019980054723A KR 19980054723 A KR19980054723 A KR 19980054723A KR 100312419 B1 KR100312419 B1 KR 100312419B1
- Authority
- KR
- South Korea
- Prior art keywords
- error
- image
- block
- encoding
- blocks
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/89—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
1. 청구범위에 기재된 발명이 속하는 기술분야1. TECHNICAL FIELD OF THE INVENTION
본 발명은 동영상 부호화 장치에서 전송오류에 의한 오류전파 방지 방법 및 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것임.The present invention relates to a method for preventing error propagation due to transmission errors in a video encoding apparatus and a computer-readable recording medium having recorded thereon a program for realizing the method.
2. 발명이 해결하고자하는 과제2. The problem to be solved by the invention
본 발명은 MPEG-2 등과 같은 움직임 추정 및 보상을 이용한 블록 기반의 동영상 부호화 방식에서, 전송 에러로 인해 손상된 영상의 전파를 방지하기 위해 블록단위의 움직임의 궤적을 송수신단에서 일정 프레임 기간 동안 보관하고 있다가, 수신단에서 오류 블록을 송신단에 알리고, 송신단에서는 이를 인트라 모드로 부호화하여 오류의 전파를 방지할 수 있는 동영상 부호화 장치에서 전송오류에 의한 오류전파 방지 방법 및 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하고자 함.In the block-based video encoding method using motion estimation and compensation such as MPEG-2, the present invention maintains a trace of motion in a block unit for a certain frame period in order to prevent propagation of a damaged image due to a transmission error. In addition, the receiving end notifies the transmitting end of the error block to the transmitting end, and the transmitting end records the error propagation prevention method due to transmission error and a program for realizing the method in the video encoding apparatus capable of preventing the propagation of the error. To provide a computer-readable recording medium.
3. 발명의 해결방법의 요지3. Summary of Solution to Invention
본 발명은, 동영상 부호화 장치에서 전송오류에 의한 오류전파 방지 방법에 있어서, 전송 오류로 인해 손상된 영상의 전파를 방지하기 위해, 인코더가 프레임간에 블록 단위의 움직임 추정 및 예측 보상을 통해 부호화하는 제 1 단계; 상기 인코더가 현재 프레임의 각 블록들에 대해 자신이 다음 프레임의 특정 블록들의 부호화에 사용되었는지를 기록하는 제 2 단계; 및 디코더로부터 오류가 발생된 영상및 블록의 위치가 전송되었는지 여부에 따라, 상기 인코더가 오류 발생 블럭들로부터 영향을 받은 현재 영상내의 블록들을 인트라(intra) 모드로 부호화하는 제 3 단계를 포함함.The present invention provides a method for preventing error propagation due to transmission error in a video encoding apparatus, the first encoding of which the encoder encodes through block motion estimation and prediction compensation between frames in order to prevent propagation of a damaged image due to transmission error. step; A second step of recording, by the encoder, for each block of the current frame whether it has been used for encoding specific blocks of the next frame; And a third step of encoding, in an intra mode, the blocks in the current image affected by the error-producing blocks according to whether the location of the error-prone image and the block has been transmitted from the decoder.
4. 발명의 중요한 용도4. Important uses of the invention
본 발명은 동영상 부호화 장치 등에 이용됨.The present invention is used in a video encoding apparatus.
Description
본 발명은 동영상 부호화 장치에서 전송오류에 의한 오류전파 방지 방법 및 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로서, 특히 무선채널 등과 같이 전송채널의 전송오류가 빈번한 채널에서 실시간 영상 통신에 적용하기 위한 전송오류에 의한 오류전파 방지 방법에 관한 것이다.The present invention relates to a method for preventing error propagation due to a transmission error in a video encoding apparatus and a computer-readable recording medium recording a program for realizing the method. In particular, in a channel where transmission errors of a transmission channel are frequent, such as a wireless channel, The present invention relates to a method for preventing error propagation by transmission error for application to real time video communication.
일반적으로, 동영상 부호화 장치는 16x16 블록의 이동벡터를 추정하기 위하여 이전영상에서 적절한 탐색영역을 정하고, 그 범위 내에서 현재영상의 부호화 하려는 16x16 블록을 탐색영역 내에서 가장 유사한 곳을 찾아 그 상대적인 변위를 이동벡터로서 전송한다.In general, a video encoding apparatus determines an appropriate search region in a previous image to estimate a motion vector of a 16x16 block, and finds a 16x16 block to be encoded of the current image within the range most similarly within the search region, and finds a relative displacement. Transmit as a motion vector.
그러나, 이전영상에서 전송오류가 발생하여 영상이 손상되었음에도 불구하고, 이동보상기법에 의해 손상된 영역의 일부를 계속 이용하여 현재영상의 재생함으로 인해 오류가 이전영상에서 현재영상으로, 그리고 다음영상으로 계속 전파함으로써, 다음 프레임내의 부호화 영상이 나올 때까지 전송 에러에 의해 손상된 영상이 계속 전파되는 문제점이 있었다.However, even though the image is damaged due to transmission error in the previous image, the error continues from the previous image to the current image and the next image due to the continuous playback of the current image using a part of the damaged region by the moving compensation method. By propagation, there has been a problem that an image damaged by a transmission error continues to propagate until an encoded image in the next frame is obtained.
본 발명은 상기와 같은 문제점을 해결하기 위하여 제안된 것으로, MPEG-2 등과 같은 움직임 추정 및 보상을 이용한 블록 기반의 동영상 부호화 방식에서, 전송 에러로 인해 손상된 영상의 전파를 방지하기 위해 블록단위의 움직임의 궤적을 송수신단에서 일정 프레임 기간 동안 보관하고 있다가, 수신단에서 오류 블록을 송신단에 알리고, 송신단에서는 이를 인트라 모드로 부호화하여 오류의 전파를 방지할 수 있는 동영상 부호화 장치에서 전송오류에 의한 오류전파 방지 방법 및 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있다.The present invention has been proposed to solve the above problems. In the block-based video encoding method using motion estimation and compensation such as MPEG-2, a block unit motion is prevented to prevent propagation of a damaged image due to a transmission error. The transmitter and the receiver store the trajectory of the signal for a predetermined frame period, and then the receiver receives the error block to the transmitter, and the transmitter encodes it in the intra mode to prevent the propagation of the error. It is an object of the present invention to provide a method of preventing and a computer-readable recording medium having recorded thereon a program for realizing the method.
도 1 은 본 발명이 적용되는 이동 보상 예측과 변환 부호화를 이용한 동영상 부호화 장치의 구성 예시도.1 is an exemplary configuration diagram of a video encoding apparatus using motion compensation prediction and transform encoding to which the present invention is applied.
* 도면의 주요 부분에 대한 부호의 설명* Explanation of symbols for the main parts of the drawings
110 : 입력 처리부 120 : 움직임 추정 및 보상부110: input processing unit 120: motion estimation and compensation unit
130 : 부호화 모드 결정부 140 : 2차원 이산 여현 변환부130: encoding mode determiner 140: two-dimensional discrete cosine transform unit
150 : 양자화부 160 : 역양자화부150: quantization unit 160: inverse quantization unit
170 : 2차원 역이산 여현 변환부 180 : 이전영상 재생부170: 2D inverse discrete cosine transform unit 180: previous image playback unit
190 : 이전영상 메모리 200 : 스캐너190: Previous image memory 200: Scanner
210 : 가변길이 부호화부210: variable length encoder
이와 같은 목적을 달성하기 위한 본 발명은, 동영상 부호화 장치에서 전송오류에 의한 오류전파 방지 방법에 있어서, 전송 오류로 인해 손상된 영상의 전파를 방지하기 위해, 인코더가 프레임간에 블록 단위의 움직임 추정 및 예측 보상을 통해 부호화하는 제 1 단계; 상기 인코더가 현재 프레임의 각 블록들에 대해 자신이 다음 프레임의 특정 블록들의 부호화에 사용되었는지를 기록하는 제 2 단계; 및 디코더로부터 오류가 발생된 영상 및 블록의 위치가 전송되었는지 여부에 따라, 상기 인코더가 오류 발생 블럭들로부터 영향을 받은 현재 영상내의 블록들을 인트라(intra) 모드로 부호화하는 제 3 단계를 포함하여 이루어진 것을 특징으로 한다.According to an aspect of the present invention, in order to prevent propagation of an image damaged by a transmission error, an encoder estimates and predicts a block-by-block motion between frames in a video encoding apparatus. A first step of encoding through compensation; A second step of recording, by the encoder, for each block of the current frame whether it has been used for encoding specific blocks of the next frame; And a third step of encoding, in an intra mode, blocks in the current image affected by the error-producing blocks according to whether an error-prone image and a block position are transmitted from a decoder. It is characterized by.
또한, 본 발명은 전송 오류로 인해 손상된 영상의 전파를 방지하기 위하여, 프로세서를 구비한 동영상 부호화 장치에, 인코더가 프레임간에 블록 단위의 움직임 추정 및 예측 보상을 통해 부호화하는 제 1 기능; 상기 인코더가 현재 프레임의 각 블록들에 대해 자신이 다음 프레임의 특정 블록들의 부호화에 사용되었는지를 기록하는 제 2 기능; 및 디코더로부터 오류가 발생된 영상 및 블록의 위치가 전송되었는지 여부에 따라, 상기 인코더가 오류 발생 블럭들로부터 영향을 받은 현재 영상내의 블록들을 인트라(intra) 모드로 부호화하는 제 3 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.In addition, the present invention provides a video encoding apparatus having a processor to prevent propagation of an image damaged by a transmission error, comprising: a first function of encoding by a encoder through motion estimation and prediction compensation in units of blocks between frames; A second function for recording, for each block of the current frame, whether the encoder has been used to encode specific blocks of the next frame; And a third function for encoding, in an intra mode, the blocks in the current image affected by the error-producing blocks according to whether an error-prone image and a block position are transmitted from a decoder. A computer readable recording medium having recorded a program is provided.
전송 오류가 발생할 경우, 이로 인해 재생 영상에 오류가 생기며, 이것이 다음 프레임내 부호화(인트라 부호화) 영상이 나올 때까지 계속 전파된다.If a transmission error occurs, this causes an error in the reproduced video, which continues to propagate until the next intra-frame coded (intra-encoded) video comes out.
따라서, 본 발명에서는 CCITT H.261, H.263이나 ISO/IEC 13818-2 MPEG-2와 같은 움직임 추정 예측을 이용한 블록 기반의 동영상 부호화 방식에서, 전송 에러로 인해 손상된 영상의 전파를 방지하기 위해, 블록 단위의 움직임의 궤적을 송수신단에서 일정 프레임 기간 동안 보관하고 있다가, 수신단에서 오류 블록을 송신단으로 알리고, 송신단에서는 이를 인트라(intra) 모드로 부호화하여 오류의 전파를 막는 것이다.Accordingly, in the present invention, in the block-based video encoding method using motion estimation prediction such as CCITT H.261, H.263 or ISO / IEC 13818-2 MPEG-2, in order to prevent propagation of a damaged image due to transmission error For example, the trajectory of block-based movement is stored in the transceiver for a predetermined frame period, and then the receiver receives the error block to the transmitter, and the transmitter encodes it in an intra mode to prevent the propagation of an error.
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.The above objects, features and advantages will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1 은 본 발명이 적용되는 이동 보상 예측과 변환 부호화를 이용한 동영상 부호화 장치의 구성 예시도이다.1 is an exemplary configuration diagram of a video encoding apparatus using motion compensation prediction and transform encoding according to the present invention.
도 1에 도시한 바와 같이, 본 발명이 적용되는 동영상 부호화 장치는, 외부로부터 영상 관련 데이터를 입력받아 전달하는 입력 처리부(110)와, 이전 영상 메모리(190)에 저장된 이전 영상을 이용하여 입력 처리부(110)로부터 영상 관련 데이터를 입력받아 움직임 추정과 보상을 위한 움직임 추정 및 보상부(120)와, 입력 처리부(110)로부터 전달된 영상 데이터를 매크로 블록(MB : Macro Block) 단위로 부호화할 것인지, 움직임 추정 및 보상부(120)로부터 전달된 영상 데이터를 매크로블럭 단위로 부호화할 것인지를 결정하는 부호화 모드 결정부(130)와, 부호화 모드 결정부(130)로부터 전달된 영상 데이터를 2차원적으로 이산여현변환(DCT : Discrete Cosine Transform)하기 위한 2차원 이산 여현 변환부(140)와, 이산 여현 변환부(140)에 의해 이산 여현 변환된 영상 데이터를 양자화(Quantization)하기 위한 양자화부(150)와, 양자화부(150)를 통해 양자화된 영상 데이터를 역양자화하기 위한 역양자화부(160)와, 역양자화부(160)로부터 출력된 영상 데이터를 2차원적으로 역이산 여현 변환하기 위한 2차원 역이산 여현 변환부(170)와, 2차원 역이산 여현 변환부(170)에 의해 역이산 여현 변환된 영상 데이터와 움직임 추정 및 보상부(120)로부터 전달된 영상 데이터를 입력받아 이전 영상을 재생하기 위한 이전 영상 재생부(180)와, 이전 영상 재생부(180)를 통해 재생된 이전 영상을 저장하기 위한 이전 영상 메모리(190)와, 양자화부(150)에 의해 양자화된 영상 데이터를 지그재그(zig-zag) 형태로 스캐닝하기 위한 스캐너(200)와, 스캐너(200)를 통해 스캐닝된 영상 데이터를 입력받아 가변길이를 부호화하여 출력하는 가변길이 부호화부(210)를 구비한다.As shown in FIG. 1, the video encoding apparatus to which the present invention is applied includes an input processor 110 that receives and transmits image-related data from the outside, and an input processor by using a previous image stored in the previous image memory 190. Receiving image-related data from the (110) receives the motion estimation and compensation unit 120 for motion estimation and compensation, and whether to encode the image data transferred from the input processing unit 110 in units of macro blocks (MB: Macro Block) The encoding mode determiner 130 determines whether to encode the image data transmitted from the motion estimation and compensator 120 in macroblock units, and the image data transferred from the encoding mode determiner 130 is two-dimensional. 2D discrete cosine transform unit 140 for discrete cosine transform (DCT) and discrete cosine transformed image data by discrete cosine transform unit 140 to quantize ( Two-dimensional image data output from the quantization unit 150 for quantization, the inverse quantization unit 160 for inverse quantization of the quantized image data through the quantization unit 150, and the inverse quantization unit 160 The 2D inverse discrete cosine transform unit 170 and the 2D inverse discrete cosine transform unit 170 for transforming the inverse discrete cosine transformed by the inverse discrete cosine transform unit 170 and the motion estimation and compensation unit 120 The previous image reproducing unit 180 for receiving the image data and reproducing the previous image, the previous image memory 190 for storing the previous image reproduced through the previous image reproducing unit 180, and the quantization unit 150 The scanner 200 for scanning the quantized image data in the form of a zig-zag, and the variable length encoder 210 for receiving the image data scanned through the scanner 200 and encoding and outputting the variable length. ).
이와 같은 동영상 부호화 장치에 의한 압축 부호화 방식은 IOU-T H.261, H.263 영상전화 표준이나, OSO/DEC PEG-2와 같은 TV급 혹은 HDTV급 동영상 압축부호화 표준에서 공히 사용되고 있는 방식으로서, 응용분야로는 영상전화 및 회의, 원격교육 등의 양방향 영상통신 및 디지털 TV, 디지털 영상 저장 매체 등의 단방향혹은 분배형 영상전송 서비스 등에 이용된다.Such a compression encoding method using the video encoding apparatus is a method commonly used in the IOU-T H.261, H.263 video telephone standards, or TV or HDTV video compression coding standards such as OSO / DEC PEG-2, Applications include two-way video communications such as video telephony, conferencing, and distance education, and one-way or distributed video transmission services such as digital TV and digital video storage media.
상기한 바와 같은 구조를 갖는 본 발명이 적용되는 본 발명이 적용되는 동영상 부호화 장치의 동작에 대하여 상세하게 설명하면 다음과 같다.The operation of the video encoding apparatus to which the present invention to which the present invention having the above structure is applied is applied will be described in detail as follows.
움직임 추정 및 보상부(120)는 16x16 블록의 이동벡터를 추정하기 위하여 이전영상에서 적절한 탐색영역을 정하고, 그 범위 내에서 현재영상의 부호화 하려는 16x16 블록을 탐색영역 내에서 가장 유사한 곳을 찾아 그 상대적인 변위를 이동벡터로서 전송한다.In order to estimate the motion vector of the 16x16 block, the motion estimation and compensator 120 determines an appropriate search region in the previous image and finds the most similar place in the search region for the 16x16 block to be encoded of the current image within the range. Send the displacement as a motion vector.
이때, 움직임 추정 및 보상 과정에서 문제가 되는 것은, 이전영상에서 전송오류가 발생하여 영상이 손상되었음에도 불구하고, 이동보상기법에 의해 손상된 영역의 일부를 계속 이용하여 현재영상의 재생함으로 인해 오류가 이전영상에서 현재영상으로, 그리고 다음영상으로 계속 전파된다는 사실이다.At this time, a problem in the motion estimation and compensation process is that, even though the transmission error occurred in the previous image and the image was damaged, the error was transferred due to the playback of the current image by continuously using a part of the damaged region by the moving compensation method. It is the fact that it continues to propagate from the video to the current video and the next video.
이러한, 전파는 이전영상에서 이동보상을 하지 않고, 2차원 이산 여현 변환(140)를 통한 이산 여현 변환만으로 부호화 하는 인트라 부호화 영상(Intra-coded Picture)을 만날 때까지 계속된다.This propagation is continued until an intra-coded picture that is encoded by only the discrete cosine transform through the two-dimensional discrete cosine transform 140 without moving compensation in the previous image.
그리고, 대부분의 전송오류는 오류 검출 기법을 이용하여 검출은 가능하지만, 실시간 영상통신에서는 통상 재전송을 요구할 수 없기 때문에 그대로 복호화를 진행하거나, 오류 은닉 기법을 사용하는데, 오류 은닉 기법 자체가 완전하지 않기 때문에 오류발생 및 전파는 피할 수 없게 된다.In addition, most transmission errors can be detected using an error detection technique. However, since real-time video communication cannot normally require retransmission, decoding is performed as it is, or an error concealment technique is used. Therefore, error occurrence and propagation are inevitable.
따라서, 본 발명에서는 이러한 오류의 전파를 방지하기 위해 인코더에서 각 처리 매크로블럭(MB : Macro Block)들의 이동의 궤적을 기록해 놓고, 수신단에서오류가 발생한 MB 혹은 MB들의 위치정보를 전달하면, 이로부터 오류가 전파된 MB들의 위치를 추적하여 해당 MB들을 인트라 모드로 부호화함으로써, 오류의 전파를 막기 위한 방법을 제시한다.Therefore, in the present invention, in order to prevent the propagation of such an error, the encoder records the trajectory of the movement of each processing Macro Block (MB) and transmits the location information of the MB or MB in which the error occurs at the receiving end. The present invention proposes a method for preventing the propagation of an error by tracking the positions of MBs in which an error is propagated and encoding the MBs in an intra mode.
이하에서는, 전술한 바와 같은 본 발명의 동영상 부호화 장치에서 전송오류에 의한 오류전파 방지 과정에 대하여 상세하게 설명한다.Hereinafter, an error propagation prevention process due to a transmission error in the video encoding apparatus of the present invention as described above will be described in detail.
먼저, 인코더측에서는 k, k+1, K+2, ··· 영상에 대해 현재 영상내의 어떤 MB가 다음영상의 어떤 MB의 복호화에 이용이 되었는지를 기록하기 위한 메모리를 준비한다.First, on the encoder side, a memory for recording k, k + 1, K + 2, ... which MB in the current video is used to decode which MB of the next video is used.
이제, k번째 영상이 부호화 되었다고 가정하고(단, 여기서 첫 번째 영상은 통상 인트라(intra) 모드로 부호화 함), k+1번째 영상의 부호화 과정중에서 수직으로 i번째, 수평으로 j번째 MB에 대해 그 MB가 k번째 영상의 어떤 MB들을 이용하여 부호화 되었는지를 알 수 있다.Now, assuming that the kth image is encoded (where the first image is usually encoded in the intra mode), the i + th vertically and the jth MB horizontally during the encoding process of the k + 1th image. It can be known which MB of the k-th image is encoded using the MB.
그리고, MB(i, j)(k+1)의 부호화에 이용한 MB들의 궤적 메모리에 자신의 인덱스(index)인 i, j 값을 기록한다. 이러한, 과정을 모든 MB에 대해 수행하면, 궤적메모리 Tmem(i, j)(k)에는 자신을 이용해 부호화된 k+1번째 영상내의 모든 MB들의 인덱스가 기록되어 있을 것이다.Then, i and j values, which are their indexes, are recorded in the trajectory memories of the MBs used for encoding MB (i, j) (k + 1). If the above process is performed for all MBs, the index memory Tmem (i, j) (k) will record the indexes of all the MBs in the k + 1th image encoded using itself.
이것은, K+2번째 영상의 부호화 과정에서 마찬가지로 k+1번째 영상의 궤적메모리를 채우게 될 것이다. 또한, 어떤 MB의 경우에는 자신을 이용하여 부호화된 다음영상의 MB가 하나도 없을 수도 있다.This will similarly fill the trajectory memory of the k + 1th image during the encoding process of the K + 2th image. In addition, in the case of a certain MB, there may not be any MB of the next image encoded using the self.
이제, 부호화와 복호화 과정을 기술하면서 상기 궤적 메모리의 이용방법을설명한다.Now, a method of using the trajectory memory will be described while describing an encoding and decoding process.
인코더에서 부호화된 데이터는 통상 출력단 끝에 있는 메모리 버퍼를 통해 출력된다.The data encoded by the encoder is usually output through a memory buffer at the output end.
메모리 버퍼의 역할은 가변적으로 발생하는 데이터율을 항등율로 변환하기 위한 역할이다.The role of the memory buffer is to convert a variable data rate into an equality rate.
이때, 통상 버퍼의 크기는 전송율의 1/20 내지 1/10 정도로 한다.At this time, the size of the buffer is usually about 1/20 to 1/10 of the transfer rate.
예를 들면, 전송율이 10 Mbit/s이면 버퍼 크기는 0.5 내지 1 Mbits 전후로 설정한다.For example, if the transmission rate is 10 Mbit / s, the buffer size is set around 0.5 to 1 Mbits.
그리고, 디코더도 동일한 양의 버퍼를 입력단에 두어 항등율로 입력된 비트열을 복호화에 필요한 가변율로 가변길이 복호기로 전달하면, 이 버퍼에 의해 전송지연이 발생하게 되는데, 만일 초당 30 프레이을 부호화하고, 버퍼크기를 전송율의 1/15로 설정했다고 가정하면, 버퍼로 인해 2프레임의 부호화, 복호화 지연이 발생한다.Also, if the decoder also puts the same amount of buffer at the input and transfers the bit string input at the constant rate to the variable length decoder at the variable rate necessary for decoding, the transmission delay is caused by this buffer. Assuming that the buffer size is set to 1/15 of the transmission rate, the encoding and decoding delay of two frames occurs due to the buffer.
따라서, 인코더에서 k+2번째 영상의 부호화를 시작할 때 디코더는 k번째 영상의 복호화를 시작한다.Therefore, when the encoder starts encoding the k + 2th image, the decoder starts decoding the kth image.
다음은, 복호기에서 k번째 영상을 복호화할 때 영상의 어떤 부분에서 전송오류가 검출되었다고 가정하고 설명하겠다.Next, assuming that a transmission error is detected in a part of the image when decoding the k-th image in the decoder.
우선, 해당오류가 들어있는 데이터들은 디코더에서 버려지고, 통상 오류 은닉 과정에서 이전 영상의 동일한 위치에서 데이터를 얻어온다. 물론, 이것은 완전한 은닉이 아니므로 영상은 이미 손상을 입은 것이다.First, data containing the corresponding error are discarded at the decoder, and data is usually obtained at the same position of the previous image in the error concealment process. Of course, this is not a complete concealment, so the image is already damaged.
이때, 디코더는 즉시 손상을 입은 영상내의 해당 위치를 인코더측에 적당한 채널로 전달한다.At this time, the decoder immediately transmits the corresponding position in the damaged image to the appropriate channel on the encoder side.
이어서, k+2번째 영상을 부호화하고 있던 인코더는 디코더에서 전달된 k번째 영상의 오류 블럭들의 위치로부터 그 오류 블럭들을 이용하여 복호화된 k+1번째 영상의 블록들의 위치를 알아낸다. 그 블록들은 디코더에서 이전의 오류가 난 블록들을 이용하여 복호화하기 때문에 오류가 전파된 블록들이다.Subsequently, the encoder encoding the k + 2th image finds the positions of the decoded k + 1th image blocks from the position of the error blocks of the kth image transferred from the decoder. The blocks are propagated blocks because they are decoded using the previously failed blocks at the decoder.
그리고, 다시 k+1번째 영상의 궤적 메모리를 참고하여 k+2번째 영상내의 블록들의 위치를 알아낸다.Then, the location of the blocks in the k + 2th image is determined by referring to the trajectory memory of the k + 1th image.
만일, 그 위치가 이미 부호화를 마친 위치이면 오류블럭으로 기록만해 놓고, 아직 부호화를 수행하지 않은 블록이면 해당블럭을 인트라 모드로 부호화 한다.If the position has already been encoded, only the error block is recorded. If the block has not been encoded, the block is encoded in the intra mode.
이미, 부호화를 마친 오류블럭은 k+3번째 영상을 처리할 때 해당블럭들을 이용하여 복호화되지 않도록, 다른 위치에서 이동 보상을 수행하던가 아니면 인트라 모드로 부호화 한다.The error block that has already been encoded is encoded in the intra mode or the motion compensation is performed at another position so as not to be decoded using the corresponding blocks when processing the k + 3th image.
따라서, 디코더 입장에서는 k번째 영상의 전송오류로 손상된 일부 영상은 k+1번째 영상까지는 전파되나, k+2번째 영상에서 일부 복원이 되고, k+3번째 영상에서는 완전하게 복원될 것이다.Therefore, from the perspective of the decoder, some of the images damaged by the transmission error of the k-th image are propagated up to the k + 1 th image, but partially restored from the k + 2 th image, and completely restored from the k + 3 th image.
정리해 보면, 본 발명은 실시간 동영상 전송에서 인코더(encoder)가 블록단위로 압축 부호화하여 전송한 영상을 디코더(decoder)가 복호화시에 전송 오류가 발생했을 경우, 그 오류의 전파를 최소화하고자 하는 것이다.In summary, the present invention is intended to minimize the propagation of an error when a transmission error occurs when a decoder decodes an image transmitted by an encoder by encoding a block in real time video transmission.
실시간 동영상 전송이라 함은, 영상전화나 영상회의, 방송 등과 같이 부호화하여 송신된 영상을 전송지연을 제외한 매우 짧은 시간내에 수신자가 눈으로 직접 이를 본다는 의미이다. 이에 반해, 비실시간 전송은 대개 전송된 영상이 중간에 혹은 수신자의 저장장치에 저장된 후, 데이터 전송시간보다 훨씬 긴 시간후에 수신자가 전송된 영상을 확인하는 것으로서, 인터넷 방송이나 비디오 메일 등이 이에 해당한다 할 수 있다.Real-time video transmission means that the receiver directly sees the video transmitted by encoding such as a video call, a video conference, a broadcast, etc. within a very short time excluding the transmission delay. In contrast, non-real-time transmission usually checks the transmitted image after the transmitted image is stored in the receiver or in the storage device of the receiver, and is much longer than the data transmission time, such as Internet broadcasting or video mail. I can do it.
인터프레임 동영상 부호화방식(ITU-T H.261 및 H.263, ISO/IEC MPEG-1, MPEG-2 등)에서 오류 전파의 문제는 현재 영상의 부호화에 과거 영상을 이용하므로, 과거 영상의 복호화 오류가 현재 영상의 복호화에 전파된다는 것이다.In the interframe video encoding method (ITU-T H.261 and H.263, ISO / IEC MPEG-1, MPEG-2, etc.), the problem of error propagation uses the past image to encode the current image, thus decoding the past image. The error is propagated to the decoding of the current image.
실시간 동영상 전송시에는 ARQ(Automatic Repeat reQuest) 방식은 기본적으로 이용이 대단히 어렵다. 그 이유는 인코더가 부호화하고 있는 영상의 위치와 디코더가 복호화하고 있는 영상의 위치는 대개의 영상부호화 방식에서는 큰 차이가 나기 때문이다. 그 차이가 나는 이유는 인코더는 인코더에서 부호화된 데이터를 버퍼에 저장하며, 버퍼에 저장된 데이터는 FIFO(First In First Out)의 형태로 디코더로 전송되는데, 버퍼의 크기가 대개 영상 몇 장(1 ~ 3장)을 저장할 수 있을 만큼 크기 때문이다. 따라서, 디코더가 k번째 영상을 복호화할 때는 인코더는 k+1 혹은 k+2, 그 이상 앞선 영상을 부호화하고 있는 중이다. 따라서, 디코더가 k번째 영상 복호시 오류가 나서 다시 보내줄 것을 요구해도, 현실적으로 인코더는 그 요구를 들어주기가 어렵다. 왜냐하면, 과거의 영상 데이터는 이미 인코더 내에서 사라진 다음이기 때문이다. 따라서, 오류 정정 부호 등을 사용하여 오류를 최소화하려고 노력하지만, 전송 오류가 나면 복호화된 영상의 오류는 피할 수 없는 것이다. 여기서, 고려될 사항은 인터프레임 부호화의 특성상 그 오류는 다음 영상으로 전파가 되는데, 이것은 다음 인트라모드 영상이 나올 때까지 눈에 상당히 거슬리는 부분이 된다. 따라서, 인코더와 디코더는 이렇게 오류가 전파되는 것은 가급적 막도록 할 필요가 있다.When transmitting real-time video, ARQ (Automatic Repeat reQuest) method is difficult to use basically. This is because the position of the video encoded by the encoder and the position of the video decoded by the decoder are largely different in the video encoding scheme. The reason for the difference is that the encoder stores the data encoded in the encoder in the buffer, and the data stored in the buffer is transmitted to the decoder in the form of FIFO (First In First Out). Large enough to hold Chapter 3). Therefore, when the decoder decodes the k-th video, the encoder is encoding a video that is k + 1 or k + 2 or higher. Therefore, even if the decoder requests an error when the k-th image is decoded and needs to be resent, it is practically difficult for the encoder to satisfy the request. This is because past image data has already disappeared in the encoder. Therefore, while trying to minimize the error by using an error correction code or the like, if a transmission error occurs, the error of the decoded video is inevitable. Here, it is considered that the error propagates to the next image due to the characteristics of the interframe encoding, which becomes an unobtrusive part until the next intra-mode image. Therefore, encoders and decoders need to prevent such error propagation as much as possible.
오류전파를 방지하기 위해 사용하는 기존 방법은 인트라모드로 부호화되는 영상을 주기적으로 넣거나, 부호화하는 블록마다 일정시간이 지나면 블록 단위의 인트라모드 부호화가 되도록 하는 것(forced update)이다. 그 주기를 짧게 하면 오류의 전파는 짧아지나 인트라모드의 압축효율이 떨어지므로, 전체적으로 압축효율의 저하를 가져오며, 주기를 길게 하면 압축효율은 상대적으로 증대하나 오류발생시 전파시간이 길어지게 된다.An existing method used to prevent error propagation is to periodically insert an image encoded in an intra mode or to perform intra mode encoding on a block basis after a predetermined time for each block to be encoded. If the period is shortened, the propagation of the error is shortened but the compression efficiency of the intra mode is lowered. Therefore, the overall compression efficiency is lowered. If the longer the period, the compression efficiency is relatively increased, but the propagation time is longer when an error occurs.
본 발명은 이러한 오류의 전파를 보다 적극적으로 막아보자는 의도로서, 디코더에서 복호화시 오류가 났을 경우, 그 오류가 난 위치를 인코더에 전송하고 인코더는 그 위치를 중심으로 한 일정 영역을 우선적으로 인트라모드로 부호화함으로써, 빠른 시간내에 오류전파를 막는 것을 주요 수단으로 하고 있다. 예를 들면, 영상 전화에서 초당 10장 정도의 영상을 전송하고, 99장의 영상마다 매 블록을 순차적으로 인트라모드로 부호화함으로써 오류의 전파를 막는다고 가정할 경우, 이러한 시스템에서는 평균적으로 오류 발생시 49.5장, 즉 약 5초간의 오류전파를 겪게 된다. 그러나, 본 방식을 적용하면 인코더와 디코더의 영상부호화 및 복호화 시간의 차이가 2장, 즉 0.2초에 해당한다면, 디코더는 오류 발생시 그 위치를 인코더에 알려주고, 인코더는 그 데이터를 갖고 있다가 다음 장의 부호화에 우선적으로 그 위치를 중심으로 인트라모드로 부호화를 함으로써 오류 전파 시간은 3장 내외, 즉 0.3초 내외로 제한할 수 있다. 이 방법은 오류가 난 위치를 알려준다는 의미에서는 ARQ와 동일하나, ARQ는 재전송을 전제로 하므로 본 방식과 상이하며, 주기적으로 인트라모드로 부호화하여 오류전파를 방지하는 방식은 디코더의 오류발생 시간 및 위치와는 무관하게 인코더에서 인트라모드로 부호화하므로 전술한 예에서와 같이 그 효과에 있어서 큰 차이를 보인다.The present invention intends to more actively prevent the propagation of such an error, and when an error occurs during decoding at the decoder, the error location is transmitted to the encoder, and the encoder preferentially intra-spaces the area around the location. By encoding in the mode, the main means is to prevent error propagation in a short time. For example, suppose that video telephony transmits about 10 images per second and prevents the propagation of errors by sequentially encoding every block in every 99 images in intra mode. That is, about 5 seconds of error propagation. However, if the difference between the video encoding and the decoding time of the encoder and decoder corresponds to 2, that is, 0.2 seconds, the decoder informs the encoder of the position when an error occurs, and the encoder has the data. By encoding in the intra mode based on the position prior to encoding, the error propagation time can be limited to about 3 or more, that is, about 0.3 seconds. This method is the same as ARQ in that it indicates the location of an error, but ARQ is different from this method because it is based on the premise of retransmission. Since the encoder is encoded in the intra mode regardless of the position, there is a big difference in the effect as in the above example.
따라서, 본 방식이 비록 ARQ 방식의 일부와 인트라모드로 부호화하여 오류전파를 방지한다는 기존 방법의 개념을 이용한다 할 지라도, 구체적인 방법 및 효과는 상이하다고 볼 수 있다. 또한, 본 방법은 인터프레임 동영상 부호화 방식에 대한 구체적인 이해와 전송오류 발생시의 영향, 인코더와 디코더의 구조 등에 대해 상세한 이해를 전제로 한다.Therefore, although the present scheme uses the concept of the existing method of preventing error propagation by encoding a part of the ARQ scheme and the intra mode, the specific methods and effects may be different. In addition, the present method is based on a detailed understanding of the interframe video encoding scheme, the effects of transmission errors, and the structure of the encoder and decoder.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다.The method of the present invention as described above may be implemented as a program and stored in a computer-readable recording medium (CD-ROM, RAM, ROM, floppy disk, hard disk, magneto-optical disk, etc.).
본 발명의 기술 사상은 상기 바람직한 실시예에 따라 구체적으로 기술되었으나, 상기한 실시예는 그 설명을 위한 것이며 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명의 기술 분야의 통상의 전문가라면 본 발명의 기술 사상의 범위내에서 다양한 실시예가 가능함을 이해할 수 있을 것이다.Although the technical idea of the present invention has been described in detail according to the above preferred embodiment, it should be noted that the above-described embodiment is for the purpose of description and not of limitation. In addition, those skilled in the art will understand that various embodiments are possible within the scope of the technical idea of the present invention.
이상에서 설명한 바와 같이 본 발명은, 블록단위의 움직임의 궤적을 송수신단에서 일정 프레임 기간 동안 보관하고 있다가, 수신단에서 오류 블록을 송신단에 알리고, 송신단에서는 이를 인트라 모드로 부호화하여 오류의 전파를 방지함으로써, 전송 에러로 인해 손상된 영상의 전파를 방지할 수 있는 효과가 있다.As described above, the present invention maintains the trajectory of block-by-block movement at the transmitting and receiving end for a predetermined frame period, and then, at the receiving end, informs the transmitting end of an error block, and at the transmitting end, encodes it in an intra mode to prevent the propagation of an error. As a result, propagation of a damaged image due to a transmission error can be prevented.
Claims (4)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019980054723A KR100312419B1 (en) | 1998-12-12 | 1998-12-12 | Error propagation prevention method due to transmission error in video coder |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019980054723A KR100312419B1 (en) | 1998-12-12 | 1998-12-12 | Error propagation prevention method due to transmission error in video coder |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20010025763A KR20010025763A (en) | 2001-04-06 |
KR100312419B1 true KR100312419B1 (en) | 2001-12-12 |
Family
ID=19562626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019980054723A KR100312419B1 (en) | 1998-12-12 | 1998-12-12 | Error propagation prevention method due to transmission error in video coder |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100312419B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100677083B1 (en) * | 2000-01-27 | 2007-02-01 | 삼성전자주식회사 | Transmission/receipt data processing method for inhibiting error propagation in digital image data communication system and computer-readable medium therefor |
-
1998
- 1998-12-12 KR KR1019980054723A patent/KR100312419B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR20010025763A (en) | 2001-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Girod et al. | Feedback-based error control for mobile video transmission | |
JP4603695B2 (en) | Video coding | |
US8170124B2 (en) | MPEG-4 streaming system with adaptive error concealment | |
US6493392B1 (en) | Method for coding digital interlaced moving video | |
US6141448A (en) | Low-complexity error-resilient coder using a block-based standard | |
US8144764B2 (en) | Video coding | |
US20070160141A1 (en) | Picture encoding method and apparatus and picture decoding method and apparatus | |
US6744924B1 (en) | Error concealment in a video signal | |
JP2003533950A (en) | Video coding method | |
Gao et al. | Robust H. 263+ video transmission using partial backward decodable bit stream (PBDBS) | |
Farber et al. | Robust H. 263 compatible transmission for mobile video server access | |
KR100312419B1 (en) | Error propagation prevention method due to transmission error in video coder | |
KR20010108077A (en) | Method and device for robust decoding of header information in macroblock-based compressed video data | |
KR100454526B1 (en) | Error concealment method of Itra coded frame by spatio-temporal information | |
KR20040031949A (en) | Method for moving picture encoding and decoding | |
KR100312418B1 (en) | Intra mode code selection method in video coder | |
KR101069404B1 (en) | Video encoder and coding algorithm | |
Choi et al. | A feedback channel based error compensation method for mobile video communications using H. 253 standard | |
KR20000039401A (en) | Apparatus for image data retransmission of moving picture encoding system and method thereof | |
KR100557118B1 (en) | Moving picture decoder and method for moving picture decoding | |
KR100590328B1 (en) | Moving picture decoder and method for decoding using the same | |
KR100669621B1 (en) | Reference frame control method of video codec | |
Chen et al. | Design of limited buffer size for storing multiple reference frames in a video codec | |
KR20030042115A (en) | Video coding method based on multiple reference frame | |
Jiang et al. | Robust video coding over wireless channels using TRIRF inter-frame coding |
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: 20120928 Year of fee payment: 12 |
|
FPAY | Annual fee payment |
Payment date: 20131001 Year of fee payment: 13 |
|
LAPS | Lapse due to unpaid annual fee |