KR100418482B1 - A method for providing move vector information to conceal an error - Google Patents

A method for providing move vector information to conceal an error Download PDF

Info

Publication number
KR100418482B1
KR100418482B1 KR10-2001-0079782A KR20010079782A KR100418482B1 KR 100418482 B1 KR100418482 B1 KR 100418482B1 KR 20010079782 A KR20010079782 A KR 20010079782A KR 100418482 B1 KR100418482 B1 KR 100418482B1
Authority
KR
South Korea
Prior art keywords
motion vector
error
error concealment
providing
vector information
Prior art date
Application number
KR10-2001-0079782A
Other languages
Korean (ko)
Other versions
KR20030049554A (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 KR10-2001-0079782A priority Critical patent/KR100418482B1/en
Publication of KR20030049554A publication Critical patent/KR20030049554A/en
Application granted granted Critical
Publication of KR100418482B1 publication Critical patent/KR100418482B1/en

Links

Classifications

    • 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
    • H04N19/895Methods 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 in combination with error concealment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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
    • H04N19/423Methods 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 characterised by memory arrangements
    • H04N19/426Methods 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 characterised by memory arrangements using memory downsizing methods
    • H04N19/428Recompression, e.g. by spatial or temporal decimation
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • H04N19/67Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience involving unequal error protection [UEP], i.e. providing protection according to the importance of the data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2385Channel allocation; Bandwidth allocation

Landscapes

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

Abstract

본 발명은 움직임 추정을 하는 동영상 부호기에서 복호기의 오류 은닉을 위해 필요한 특정 움직임 벡터 정보를 해당 복호기로 제공하기 위한 방법에 관한 것으로서, 동영상 복호기에서 오류 은닉시 사용되는 움직임 벡터 정보를 부호기로부터 제공하는 방법에 있어서, 현재 프레임의 임의의 구획에 대하여 추정된 움직임 벡터를 1차 부호화하되(S101,S102), 그 움직임 벡터를 이용하여 오류 은닉을 수행한 경우의 오차값 D(mv) 및 그 움직임 벡터 없이 오류 은닉을 수행한 경우의 오차값 Dn을 산출하고(S103,S104); 상기 산출된 오차값 D(mv)와 Dn 에 근거하여 상기 해당 움직임 벡터의 중요성 여부를 판단하고(S105); 상기 판단 결과 중요하다면, 상기 움직임 벡터를 상기 1차 부호화와는 별도로 2차 부호화한 후(S106); 상기 1차 및 2차 부호화 데이터를 별도의 패킷 또는 채널을 통해 이중으로 전송하여 해당 복호기에 제공하도록 함으로서, 기존과 비교하여 움직임 벡터를 이용한 오류 은닉의 효과를 향상시킨다.The present invention relates to a method for providing specific motion vector information necessary for error concealment of a decoder in a video encoder for motion estimation to the corresponding decoder, and a method for providing motion vector information used for error concealment in a video decoder from an encoder. In 1st order encoding of the motion vector estimated for any partition of the current frame (S101, S102), the error value D (mv) when error concealment is performed using the motion vector and without the motion vector An error value Dn when an error concealment is performed (S103, S104); Determining whether or not the corresponding motion vector is important based on the calculated error values D (mv) and Dn (S105); If the determination result is important, after the second motion coding is performed separately from the first coding (S106); The primary and secondary coded data are dually transmitted through separate packets or channels to be provided to the corresponding decoder, thereby improving the effect of error concealment using a motion vector as compared to the conventional method.

Description

동영상 복호시의 오류 은닉을 위한 움직임 벡터 정보의 제공 방법{A method for providing move vector information to conceal an error}A method for providing move vector information to conceal an error

본 발명은 동영상 복호시의 오류 은닉을 위한 움직임 벡터 정보의 제공 방법에 관한 것으로서, 보다 상세하게는 움직임 추정을 하는 동영상 부호기에서 복호기의 오류 은닉을 위해 필요한 특정 움직임 벡터 정보를 해당 복호기로 제공하기 위한 방법에 관한 것이다.The present invention relates to a method of providing motion vector information for error concealment during video decoding, and more particularly, to provide specific motion vector information necessary for error concealment of a decoder to a corresponding decoder in a video encoder for motion estimation. It is about a method.

현재, 국제 동영상 부호 표준으로 쓰이고 있는 MPEG-1, MPEG-2, MPEG-4 및 H.26x 계열의 표준들은 모두 움직임 예측을 하고 이 결과를 부호화하는 구조를 쓰고 있다. 이때 복호기에서의 복호시 오류를 발견하면 움직임 벡터 등을 포함한 부가 정보를 이용해서 오류를 은닉하는 기법들이 제안된 바 있다.Currently, the MPEG-1, MPEG-2, MPEG-4 and H.26x standards, which are used as international video coding standards, all use a structure for predicting motion and encoding the result. At this time, if an error is detected in the decoder, techniques for concealing the error using additional information including a motion vector have been proposed.

이러한 오류 은닉 기법에 있어서, 오류 은닉에 이용되는 매우 중요한 부가 정보의 요소가 움직임 벡터이며, MPEG-4 등의 표준에서는 이러한 움직임 벡터의 중요도를 인정하여 데이터 분할(partitioning) 등을 통해 중요한 정보들을 오류에 보다 강인하게 부호화하는 기법도 제안된 바 있다.In this error concealment technique, a very important element of additional information used for error concealment is a motion vector, and standards such as MPEG-4 recognize the importance of such a motion vector, thereby error-inducing important information through data partitioning. A more robust encoding scheme has also been proposed.

그러나, 상술된 바와 같이 기존에 제안된 기법들은 모든 움직임 벡터 정보들을 균일한 조건으로 부호화하였기 때문에, 전송 링크의 상태가 악화되면 전송시 정보 유실의 위험이 매우 크게되며, 이와 같은 이유 등에 의해 해당 움직임 벡터 정보가 복호기에 정확하게 전달되지 않을 경우 오류 복구에 큰 손실을 입게되는 문제가 있었다.However, since the conventionally proposed techniques encode all motion vector information under a uniform condition, when the state of a transmission link deteriorates, there is a great risk of information loss during transmission. If the vector information is not correctly transmitted to the decoder, there is a problem that a large loss in error recovery occurs.

본 발명은 상기와 같은 문제점을 해결하기 위하여 창작된 것으로서, 그 목적은 모든 움직임 벡터들을 균일한 조건으로 부호화하는 기존의 방법을 지양하고, 움직임 벡터 각각이 복호기에서 오류 은닉에 사용되었을 경우의 중요도에 따라 부호화를 달리함으로서, 기존과 비교하여 움직임 벡터를 이용한 오류 은닉의 효과를 향상시키도록 된, 동영상 복호시의 오류 은닉을 위한 움직임 벡터 정보의 제공 방법을 제공하고자 하는 것이다.The present invention was created to solve the above problems, and its object is to avoid the conventional method of encoding all motion vectors under uniform conditions, and to emphasize the importance when each motion vector is used for error concealment in a decoder. The present invention provides a method of providing motion vector information for error concealment at the time of video decoding, by improving encoding according to different encoding.

도 1은 동영상 복호시의 오류 은닉을 위한 움직임 벡터 정보의 제공 방법의 흐름도이고,1 is a flowchart of a method of providing motion vector information for error concealment during video decoding;

도 2는 도 1의 설명을 위한 도면으로서, 부호화하고자 하는 현재 프레임과 그 현재 프레임에 대한 이전 프레임을 도시한 것이다.FIG. 2 is a diagram for describing FIG. 1 and shows a current frame to be encoded and a previous frame with respect to the current frame.

※ 도면의 주요부분에 대한 부호의 설명※ Explanation of code for main part of drawing

210,220 : 프레임 211,212,221 : 매크로 블록210,220: Frame 211,212,221: Macro block

MV : 움직임 벡터 D(m,v) : 매크로블록 221과 212의 오차값MV: Motion vector D (m, v): Error value of macroblocks 221 and 212

Dn : 매크로블록 221과 221의 오차값Dn: Error value of macroblocks 221 and 221

상기와 같은 목적을 달성하기 위하여 본 발명에 따른 동영상 복호시의 오류 은닉을 위한 움직임 벡터 정보의 제공 방법은, 동영상 복호기에서 오류 은닉시 사용되는 움직임 벡터 정보를 부호기로부터 제공하는 방법에 있어서, 현재 프레임의 임의의 구획에 대하여 추정된 움직임 벡터를 1차 부호화하되, 그 움직임 벡터를 이용하여 오류 은닉을 수행한 경우의 오차값 D(mv) 및 그 움직임 벡터 없이 오류 은닉을 수행한 경우의 오차값 Dn을 산출하는 제 1 단계; 상기 산출된 오차값 D(mv)와 Dn 에 근거하여 상기 해당 움직임 벡터의 중요성 여부를 판단하는 제 2 단계; 상기 판단 결과 중요하다면, 상기 움직임 벡터를 상기 1차 부호화와는 별도로 2차 부호화하는 제 3 단계; 및 상기 1차 및 2차 부호화 데이터를 이중으로 전송하여 해당복호기에 제공하는 제 4 단계를 포함하여 구성된 다.In order to achieve the above object, a method of providing motion vector information for error concealment during video decoding according to the present invention is a method for providing motion vector information used for error concealment in a video decoder from an encoder. An error value D (mv) is obtained when the estimated motion vector is first-order coded for any partition of and the error concealment is performed by using the motion vector. Calculating a first step; A second step of determining whether the corresponding motion vector is important based on the calculated error values D (mv) and Dn; If the result of the determination is important, performing a second-order encoding of the motion vector separately from the first-order encoding; And a fourth step of transmitting the first and second encoded data in duplicate and providing the same to the corresponding decoder.

상기 움직임 벡터의 중요성은 'Dn - D(mv) > T'의 수식을 만족하는가의 가부에 따라 판단하고, 여기서 T는 기 설정된 문턱값 또는 실시간 통신 환경에 따라 계산된 문턱값인 것을 특징으로 한다.The importance of the motion vector is determined according to whether or not the formula of 'Dn-D (mv)> T' is satisfied, wherein T is a threshold calculated in accordance with a preset threshold or a real-time communication environment. .

상기 오차값 D(mv)는 상기 임의의 구획과 상기 움직임 벡터가 참조하는 이전 프레임의 매크로 블록과의 오차값이고, 상기 오차값 Dn은 상기 임의의 구획과 이에 대응하는 상기 이전 프레임의 매크로 블록과의 오차값인 것을 일예로 한다.The error value D (mv) is an error value between the arbitrary block and the macroblock of the previous frame referred to by the motion vector, and the error value Dn is equal to the random block and the macroblock of the previous frame corresponding thereto. As an example, an error value of?

상기 제 4 단계의 상기 이중 전송은, 일예로 상기 1차 및 2차 부호화 데이터를 서로 다른 패킷을 통해 전송하여 이루어지거나, 다른 예로 상기 1차 및 2차 부호화 데이터를 서로 다른 채널을 통해 전송하여 이루어짐을 특징으로 한다.The dual transmission of the fourth step may be performed by, for example, transmitting the primary and secondary encoded data through different packets, or as another example, by transmitting the primary and secondary encoded data through different channels. It is characterized by.

이와 같은 본 발명은, 서로 다른 패킷 또는 채널을 통하여 중요도가 높은 움직임 벡터 정보를 이중으로 전송함으로서, 복호기에서는 하나의 패킷 또는 채널을 통한 움직임 벡터 정보가 깨졌을 경우라도 다른 하나의 패킷 또는 채널을 통해 정상적으로 전송받은 움직임 벡터를 이용하여 효과적으로 오류 은닉을 수행할 수 있다. 즉, 본 발명의 방법은 기존과 같이 모든 움직임 벡터들이 균일한 중요도를 가진다는 가정하에 부호화되는 것을 지양하고, 움직임 벡터 각각이 복호기에서 오류 은닉에 사용되었을 경우의 효과를 기준으로, 중요도가 높은 움직임 벡터를 반복하여 이중으로 부호화토록 한다.As described above, according to the present invention, motion vector information having high importance is repeatedly transmitted through different packets or channels, so that even if the motion vector information through one packet or channel is broken in the decoder, the other packet or channel is normally transmitted. Error concealment can be effectively performed using the received motion vector. That is, the method of the present invention avoids encoding on the assumption that all motion vectors have a uniform importance as before, and based on the effect when each motion vector is used for error concealment in the decoder, the motion has a high importance. Repeat the vector so that it is encoded twice.

상술된 바와 같은 본 발명의 방법은, 해당 움직임 벡터가 복호기의 오류 은닉 과정에서 사용되었을 경우에 나타날 수 있는 오류 은닉의 효과와 해당 움직임벡터의 부재시 사용가능한 오류 은닉 기법의 효과를, 부호화기에서 사전에 예측하고 상호 비교하여, 그 두 방법에 의한 오류 은닉 효과의 차이가 일정 기준 이상일 경우에는 해당 움직임 벡터를 부가 정보, 다른 패킷 또는 다른 채널에 속하도록 따로 부호화하여 이중으로 전송하도록 한다.The method of the present invention as described above, in advance the effect of error concealment that may appear when the motion vector is used in the error concealment process of the decoder and the error concealment technique available in the absence of the motion vector in advance in the encoder When the difference between the error concealment effect by the two methods is more than a predetermined criterion, the corresponding motion vector is separately encoded to belong to additional information, another packet, or another channel, and then dually transmitted.

즉, 본 발명의 부호기에서는, 복호기에서 복호를 수행하는 도중 임의의 구획(임의의 매크로 블록)의 복호시 오류를 발견하게 되면 전송받은 움직임 벡터를 이용해서 오류 은닉을 수행하는 제 1 방법 및 그 움직임 벡터 없이 오류 은닉을 수행하는 제 2 방법의 2가지 방법으로 오류 은닉을 수행함을 전제로 하고서, 상기 제 1 방법의 수행시의 오차값 D(mv)와 상기 제 2 방법의 수행시의 오차값 Dn을 구하고, 그 값의 비교 결과에 따라 해당 복호기로 제공할 해당 움직임 벡터의 중요도를 판단한다. 상기 판단시 'Dn-D(mv)' 값이 상기와 같이 정해진 문턱값 T값보다 충분히 크다면, 해당 움직임 벡터는 매우 중요한 것으로 판단할 수 있으며, 부호기에서는 해당 움직임 벡터가 복호기에 정확하게 전송되지 않을 경우에는 매우 큰 손실을 입을 수 있는 것으로 판단한다. 따라서, 부호기에서는 상기와 같이 수식 'Dn - D(mv) > T'를 만족할 경우에는 해당 움직임 벡터를 중요도가 매우 높은 움직임 벡터로 분류하여, 다른 패킷이나 다른 채널을 통하여 이중 전송해 준다. 이에 대응하여 복호기에서는 전송받은 움직임 벡터 데이터가 오류로 인하여 해석이 불가능할 경우에 다른 패킷 또는 다른 채널을 통해서 전송받은 해당 움직임 벡터 데이터를 이용하여 보다 효과적으로 오류 은닉을 수행할 수 있다.That is, in the encoder of the present invention, when the decoder detects an error during decoding of an arbitrary section (arbitrary macro block) during decoding, the first method of performing error concealment using the received motion vector and the motion Assuming that error concealment is performed by two methods of the second method of performing error concealment without a vector, an error value D (mv) when performing the first method and an error value Dn when performing the second method Then, the importance of the motion vector to be provided to the decoder is determined according to the comparison result. If the value of 'Dn-D (mv)' is larger than the threshold T value determined as described above, the motion vector may be determined to be very important, and the encoder may not transmit the motion vector correctly to the decoder. In this case, it can be very big loss. Therefore, when the encoder satisfies the expression 'Dn-D (mv)> T' as described above, the encoder classifies the motion vector into a motion vector having a very high importance and dually transmits it through another packet or another channel. Correspondingly, when the received motion vector data cannot be interpreted due to an error, the decoder can perform error concealment more effectively by using the corresponding motion vector data transmitted through another packet or another channel.

이하, 첨부 도면을 참조하여 본 발명의 바람직한 실시예에 따른 동영상 복호시의 오류 은닉을 위한 움직임 벡터 정보의 제공 방법에 대하여 상세히 설명하기로 한다.Hereinafter, a method of providing motion vector information for error concealment during video decoding according to a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 동영상 복호시의 오류 은닉을 위한 움직임 벡터 정보의 제공 방법의 흐름도로서, 부호화기에 적용된다. 또한, 도 2는 부호화하고자 하는 현재 프레임(220)과 그 현재 프레임(220)에 대한 이전 프레임(210)을 도시한 것으로, 도 1의 설명시 참조하도록 한다.1 is a flowchart of a method of providing motion vector information for error concealment during video decoding, which is applied to an encoder. 2 illustrates a current frame 220 to be encoded and a previous frame 210 with respect to the current frame 220, which will be referred to for description of FIG. 1.

먼저, 부호화기에서는 부호화하고자 하는 현재 프레임(220)의 매크로 블록(현재 부호화를 하기위해 구획된 매크로 블록)(221)에 대하여 동일하거나 유사한 블록을 이전 프레임(210)에서 탐색하여 찾도록 하는 움직임 추정 과정을 수행하는 데, 그 움직임 추정 과정은 상기 현재 프레임(220)의 상기 매크로 블록(221)의 위치를 상기 이전 프레임(210)에서 일정 크기의 벡터로 움직여 가면서 찾는 것으로서 이와 같은 과정은 기존과 동일한 방법에 의해 수행된다(S101).First, in the encoder, a motion estimation process of searching for and finding the same or similar block in the previous frame 210 with respect to the macroblock (macroblock partitioned for current encoding) 221 of the current frame 220 to be encoded. The motion estimation process is to find the position of the macro block 221 of the current frame 220 while moving to a vector of a predetermined size in the previous frame 210, and this process is the same as the conventional method. It is performed by (S101).

이어, 상기 단계 S101의 움직임 추정 과정을 통해 움직임 벡터 MV를 추정하고, 상기 매크로 블록(221)에 대해 움직임 벡터 MV를 1차로 부호화하도록 하되(S102), 이와 동시에 또는 직후에 그 움직임 벡터 MV를 이용하여 오류 은닉을 수행한 경우의 오차값 D(mv) 및 그 움직임 벡터 MV 없이 오류 은닉을 수행한 경우의 오차값 Dn을 산출하는데(S103,S104), 상기 오차값 D(mv)와 상기 오차값 Dn을 구하는 일 예로는, 예를 들어 상기 오차값 D(mv)는 상기 매크로 블록(221)의 데이터와 상기 움직임 벡터 MV가 참조하는 상기 이전 프레임(212)의 매크로 블록(212)의데이터를 배타적 논리 연산하여 구한 오차값(distortion value) 으로 구해질 수 있고, 상기 오차값 Dn은 상기 매크로 블록(221)의 데이터와 그 위치에 바로 대응하는 상기 이전 프레임(210)의 매크로 블록(211)의 데이터를 배타적 논리 연산하여 구한 오차값(distortion value)으로 구해질 수 있다. 하지만, 이와 같은 오차값 산출 과정은 상술된 일예에 한정되지 않고, 상기 매크로 블록(221)에 대하여 상기 움직임 벡터 MV를 이용하여 오류 은닉을 수행한 경우의 오차값 D(mv) 및 그 움직임 벡터 MV 없이 오류 은닉을 수행한 경우의 오차값 Dn을 산출할 수 있는 적절한 알고리즘을 상기 부호기측에 구비하고서, 본 발명의 기술적 사상을 벗어나지 않는 범위내에서 다양한 방식에 의해 구해질 수 있을 것이다.(S103,S104)Subsequently, the motion vector MV is estimated through the motion estimation process of step S101, and the motion vector MV is first encoded with respect to the macroblock 221 (S102), and at the same time or immediately after, the motion vector MV is used. To calculate the error value D (mv) when the error concealment is performed and the error value Dn when the error concealment is performed without the motion vector MV (S103, S104), the error value D (mv) and the error value As an example of obtaining Dn, for example, the error value D (mv) is exclusive of data of the macroblock 221 and data of the macroblock 212 of the previous frame 212 referenced by the motion vector MV. The error value Dn is obtained by a logic operation, and the error value Dn is the data of the macro block 211 of the previous frame 210 that corresponds directly to the data of the macro block 221 and its position. Exclusive rice fields Calculated it can be calculated by obtained error value (distortion value). However, the process of calculating the error value is not limited to the above-described example, and the error value D (mv) and the motion vector MV when the error concealment is performed on the macroblock 221 using the motion vector MV. With an appropriate algorithm on the encoder side that can calculate the error value Dn when error concealment is performed without any error, it can be obtained by various methods without departing from the technical idea of the present invention. S104)

다음, 상기 단계 S103에서 산출된 상기 오차값 D(mv)와 상기 단계 S104에서 산출된 상기 오차값 Dn 에 근거하여 상기 움직임 벡터 MV의 중요성 여부를 판단하도록 하는데, 예컨대, 상기 오차값 Dn 에서 상기 오차값 D(mv)를 뺀 차이값 'Dn-D(mv)'를 구하고 그 차이값 'Dn-D(mv)'가 정해진 문턱값(Threshold) T를 초과하는지를 즉, 'Dn - D(mv) > T'의 수식을 만족하는지를 판단하는 것으로서, 여기서 상기 문턱값 T는 일예로 기 설정된 값이거나 또는 다른 예로 특정 알고리즘을 이용해서 실시간 통신 환경에 따라 계산된 값으로 설정할 수 있다.(S105)Next, the importance of the motion vector MV is determined based on the error value D (mv) calculated in the step S103 and the error value Dn calculated in the step S104. For example, the error at the error value Dn is determined. The difference value 'Dn-D (mv)' is obtained by subtracting the value D (mv) and the difference value 'Dn-D (mv)' exceeds the predetermined threshold T, that is, 'Dn-D (mv)'. The threshold value T may be set to, for example, a preset value or a value calculated according to a real-time communication environment using a specific algorithm as an example (S105).

다음, 상기 단계 S105의 판단 결과, 만일 상기 수식 'Dn - D(mv) > T'를 만족한다면 상기 움직임 벡터 MV가 복호기에서의 오류 은닉을 수행할 때 매우 중요한 요소인 것으로 분류하여 그 움직임 벡터 MV를 상기 1차 부호화 때와는 다른 패킷 또는 부가 정보 또는 다른 채널에 따로 2차 부호화를 수행하도록 하며, 만족하지않는 다면 상기 단계 S106과 같은 2차 부호화 과정을 수행치 않도록 한다.(S106)Next, as a result of the determination in step S105, if the expression 'Dn-D (mv)> T' is satisfied, the motion vector MV is classified as a very important factor when performing error concealment in the decoder, and the motion vector MV. The second encoding is performed separately from a packet or additional information or a different channel different from the first encoding, and if not satisfied, the second encoding process such as the step S106 is not performed (S106).

마지막으로, 단계 S105의 판단 결과에 따라, 상기 1차 부호화된 움직임 벡터 데이터와 상기 2차 부호화된 움직임 벡터 데이터를 서로 다른 채널 또는 패킷에 실어 이중으로 전송토록 하거나, 상기 1차 부호화된 움직임 벡터 데이터만을 단일로 전송토록 한 후 종료한다.(S107)Finally, according to the determination result of step S105, the primary coded motion vector data and the secondary coded motion vector data are put on different channels or packets to be transmitted in duplicate, or the primary coded motion vector data is transmitted. End only after sending only one (S107)

이상 상세히 설명한 바와 같이 본 발명에 따른 동영상 복호시의 오류 은닉을 위한 움직임 벡터 정보의 제공 방법은, 무선 환경 등과 같이 오류가 빈번하게 발생하는 환경에서 단방향/양방향의 동영상 통신을 수행하고자 할 경우 복호기에서의 오류 은닉 수행에 매우 큰 효과를 가질 수 있다. 또한, 본 발명은 독자적인 방법으로 구현할 수 있을 뿐만아니라, 현재 제안된 모든 국제 동영상 표준내에 포함되어 있는 부가정보 부분을 이용하여 국제 표준과 완전히 호환가능하게 구현할 수 있는 정범을 가지는 매우 유용한 발명이다.As described in detail above, a method of providing motion vector information for error concealment during video decoding according to the present invention may be performed by a decoder in order to perform unidirectional / bidirectional video communication in an environment where errors frequently occur, such as a wireless environment. Can have a very large effect on the performance of error concealment. In addition, the present invention is a very useful invention having a standard that can be implemented not only in its own way but also fully compatible with the international standard by using the additional information part included in all currently proposed international video standards.

Claims (5)

동영상 복호기에서 오류 은닉시 사용되는 움직임 벡터 정보를 부호기로부터 제공하는 방법에 있어서,In the method for providing motion vector information used in error concealment in the video decoder from the encoder, 현재 프레임의 임의의 구획에 대하여 추정된 움직임 벡터를 1차 부호화하되, 그 움직임 벡터를 이용하여 오류 은닉을 수행한 경우의 오차값 D(mv) 및 그 움직임 벡터 없이 오류 은닉을 수행한 경우의 오차값 Dn을 산출하는 제 1 단계;An error value D (mv) in the case of performing an error concealment using the motion vector by firstly encoding an estimated motion vector for an arbitrary section of the current frame and an error in the case of performing the error concealment without the motion vector. Calculating a value Dn; 상기 산출된 오차값 D(mv)와 Dn 에 근거하여 상기 해당 움직임 벡터의 중요성 여부를 판단하는 제 2 단계;A second step of determining whether the corresponding motion vector is important based on the calculated error values D (mv) and Dn; 상기 판단 결과 중요하다면, 상기 움직임 벡터를 상기 1차 부호화와는 별도로 2차 부호화하는 제 3 단계; 및If the result of the determination is important, performing a second-order encoding of the motion vector separately from the first-order encoding; And 상기 1차 및 2차 부호화 데이터를 이중으로 전송하여 해당 복호기에 제공하는 제 4 단계를 포함하여 구성된 것을 특징으로 하는 동영상 복호시의 오류 은닉을 위한 움직임 벡터 정보의 제공 방법.And a fourth step of dually transmitting the first and second coded data and providing the same to a corresponding decoder. 제 1 항에 있어서,The method of claim 1, 상기 중요성은 'Dn - D(mv) > T'의 수식을 만족하는가의 가부에 따라 판단하고, 여기서 T는 기 설정된 문턱값 또는 실시간 통신 환경에 따라 계산된 문턱값인 것을 특징으로 하는 동영상 복호시의 오류 은닉을 위한 움직임 벡터 정보의 제공 방법.The importance is determined according to whether or not the formula of 'Dn-D (mv)> T' is satisfied, wherein T is a preset threshold or a threshold calculated according to a real-time communication environment. Method of Providing Motion Vector Information for Error Concealment. 제 1 항 또는 제 2 항에 있어서,The method according to claim 1 or 2, 상기 오차값 D(mv)는 상기 임의의 구획과 상기 움직임 벡터가 참조하는 이전 프레임의 매크로 블록과의 오차값이고, 상기 오차값 Dn은 상기 임의의 구획과 이에 대응하는 상기 이전 프레임의 매크로 블록과의 오차값인 것을 특징으로 하는 동영상 복호시의 오류 은닉을 위한 움직임 벡터 정보의 제공 방법.The error value D (mv) is an error value between the arbitrary block and the macroblock of the previous frame referred to by the motion vector, and the error value Dn is equal to the random block and the macroblock of the previous frame corresponding thereto. Method of providing motion vector information for error concealment during video decoding, characterized in that the error value of. 제 1 항에 있어서,The method of claim 1, 상기 제 4 단계의 상기 이중 전송은, 상기 1차 및 2차 부호화 데이터를 서로 다른 패킷을 통해 전송하여 이루어짐을 특징으로 하는 동영상 복호시의 오류 은닉을 위한 움직임 벡터 정보의 제공 방법.The dual transmission of the fourth step is a method of providing motion vector information for error concealment during video decoding, characterized in that the first and second coded data is transmitted through different packets. 제 1 항에 있어서,The method of claim 1, 상기 제 4 단계의 상기 이중 전송은, 상기 1차 및 2차 부호화 데이터를 서로 다른 채널을 통해 전송하여 이루어짐을 특징으로 하는 동영상 복호시의 오류 은닉을 위한 움직임 벡터 정보의 제공 방법.The dual transmission of the fourth step is a method of providing motion vector information for error concealment during video decoding, characterized in that the first and second coded data is transmitted through different channels.
KR10-2001-0079782A 2001-12-15 2001-12-15 A method for providing move vector information to conceal an error KR100418482B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0079782A KR100418482B1 (en) 2001-12-15 2001-12-15 A method for providing move vector information to conceal an error

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0079782A KR100418482B1 (en) 2001-12-15 2001-12-15 A method for providing move vector information to conceal an error

Publications (2)

Publication Number Publication Date
KR20030049554A KR20030049554A (en) 2003-06-25
KR100418482B1 true KR100418482B1 (en) 2004-02-14

Family

ID=29575348

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0079782A KR100418482B1 (en) 2001-12-15 2001-12-15 A method for providing move vector information to conceal an error

Country Status (1)

Country Link
KR (1) KR100418482B1 (en)

Also Published As

Publication number Publication date
KR20030049554A (en) 2003-06-25

Similar Documents

Publication Publication Date Title
US6910175B2 (en) Encoder redundancy selection system and method
US8040949B2 (en) Video encoding methods and devices
US7310372B2 (en) Motion vector encoding device and decoding device
JP5007322B2 (en) Video encoding method
US9538197B2 (en) Methods and systems to estimate motion based on reconstructed reference frames at a video decoder
US20090180542A1 (en) Process for delivering a video stream over a wireless bidirectional channel between a video encoder and a video decoder
EP2036360B1 (en) Method, apparatus and system for robust video transmission with auxiliary information channel
WO2000025523A1 (en) Image decoding device
US20060056510A1 (en) Method of coding video streams for low-cost multiple description at gateways
KR101443061B1 (en) Adhoc multimedia group communication terminal robust packet loss and operating method thereof
KR100418482B1 (en) A method for providing move vector information to conceal an error
KR20040075020A (en) Coding images
JP4432582B2 (en) Moving picture information restoration device, moving picture information restoration method, moving picture information restoration program
JP2002325259A (en) Method for coding digital image base on error correction
US20090323812A1 (en) Process for delivering a video stream over a wireless channel
Wang et al. Error resilient video coding using flexible reference frames
WO2002019709A1 (en) Dual priority video transmission for mobile applications
JPWO2005071967A1 (en) Moving picture communication device, moving picture communication system and moving picture communication method
Ko et al. H. 264/AVC error detection scheme using fragile data hiding in motion vector set
KR100207388B1 (en) Image encoder using adaptive vector quantization
WO2001015458A2 (en) Dual priority video transmission for mobile applications
Kim et al. Channel Adaptive Error Resilience Scheme for Video Transmission over Mobile WiMAX
Lee et al. Video coding using supplementary Block for reliable communication
KR20050093435A (en) Error resilient intra prediction mode decoding method
KR20050099079A (en) Error concealment method in decoding motion picture

Legal Events

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

Payment date: 20130201

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20140204

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20150128

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20160128

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20170202

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20180202

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20190207

Year of fee payment: 16

FPAY Annual fee payment

Payment date: 20200131

Year of fee payment: 17