KR20040039808A - 움직임 벡터 예측 방법 - Google Patents

움직임 벡터 예측 방법 Download PDF

Info

Publication number
KR20040039808A
KR20040039808A KR1020020068019A KR20020068019A KR20040039808A KR 20040039808 A KR20040039808 A KR 20040039808A KR 1020020068019 A KR1020020068019 A KR 1020020068019A KR 20020068019 A KR20020068019 A KR 20020068019A KR 20040039808 A KR20040039808 A KR 20040039808A
Authority
KR
South Korea
Prior art keywords
error
motion
motion vector
motion compensation
blocks
Prior art date
Application number
KR1020020068019A
Other languages
English (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 KR1020020068019A priority Critical patent/KR20040039808A/ko
Publication of KR20040039808A publication Critical patent/KR20040039808A/ko

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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • 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/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

본 발명은 IMT-2000 무선망을 통하여 전송된 영상 비트스트림을 디코딩할 때 에러가 발생된 블록들을 움직임 보상할 때, 선택되어 보상되지 않도록 하여 화질 저하를 방지할 수 있는 움직임 벡터 예측방법을 개시한다. 개시된 본 발명은 동영상 비트스트림을 디코딩하는 단계; 상기 디코딩되는 영상 프레임의 헤더 정보에 따라 인터 모드로 매크로 블록에 대하여 움직임 보상을 위하여 주변 매크로 블록과 차분 움직임 벡터를 디코딩하는 단계; 상기 움직임 보상을 위한 상기 주변 매크로 블록들에 대한 에러 유무를 판단하는 단계; 및 상기 움직임 보상을 위하여 참조하는 상기 주변 매크로 블록에 에러가 존재하고, 그 에러 블록이 2개 이상인 경우에는 상기 주변 매크로 블록들에 대한 움직임 벡터 값을 '0'으로 판단하여 움직임 보상을 위한 참조 블록으로 사용하지 않고 움직임 보상을 진행하는 단계;를 포함하는 것을 특징으로 한다.

Description

움직임 벡터 예측 방법{METHOD FOR PREDICTION MOVING VECTOR}
본 발명은 동영상 디코딩 방법에 관한 것으로, 보다 구체적으로는 무선망을 통하여 비디오 신호를 전송할 때, 채널 비트 에러로 인하여 움직임 벡터 에러 보정과 움직임 보상 과정에서의 에러 전파 및 화질 저하를 방지할 수 있는 움직임 벡터예측방법에 관한 것이다.
현재, 그리고 미래의 통신 환경은 유선과 무선의 영역 구분이나, 지역 국가의 구분을 초월할 만큼 급변하고 있으며, 특히 IMT-2000 등으로 대별되는 미래 통신환경은 영상과 음성은 물론 사용자가 필요로 하는 다양한 정보를 실시간으로, 또는 종합적으로 제공하는 환경으로 구축되어 가는 추세이다.
또한, 개인 휴대 통신 시스템의 발달은 현재 셀룰러폰이나 PCS등에서도 단순히 음성 통신만을 수행하던 차원에서 벗어나서 문자 정보의 전송은 물론, 개인 휴대 통신 단말기를 이용해서 무선으로 인터넷에 접속하거나, TV에서나 보던 동영상들을 송신할 수 있도록 개발되어지고 있다.
특히, 동영상을 디지털 데이터로 가공하여 실시간으로 전송하고 또 이 것을 수신하여 디스플레이 하는 디지털 텔레비전 시스템과, 실시간으로 전송되는 동영상을 IMT-2000을 이용한 개인 휴대 단말기 등에서는 필수적인 요소로 자리 잡아 가고 있는 실정이다.
이것은 종래에는 휴대 단말기가 사람의 음성만을 송수신하도록 되어 있었으나, 멀티 미디어의 개발과 디지털 정보처리 기술의 발달로 인하여 음성, 영상등 다양한 정보들을 송신할 수 있게 되었다.
이와 같은 기술이 상용화될 수 있었던 것은 무엇보다도 아날로그 영상 신호를 양자화, 가변장부호화등 특수한 디지털 처리를 한 다음, 이를 디지털 정보에 포함시켜 송신하고, 수신되는 단말기에서는 이를 반대로 디코딩함으로써 빠른 전송 속도와 보다 풍부한 정보량을 송수신하도록 한 동영상 압축기술의 발달이 크게 기여하였다.
최근 디지털 신호처리 기술의 발전에 힘입어 제한된 대역폭의 전송 채널을 통해 많은 양의 동영상 정보를 압축, 전송하는 방식들이 개발되어 왔으나, 전송 채널 상의 오류가 발생하면 복원 영상의 화질이 크게 저하되는 문제가 생긴다.
이때 제한된 대역폭을 최대한으로 이용하기 위해 오류 정정 부호를 사용하지 않고, 정상적으로 복원된 주변의 정보들로부터 잃어버린 정보를 보완하여 원 영상에 가깝게 복구하는 오류 은폐 기법들이 연구되고 있다.
특히 MPEG(Moving Picture Experts Group)와 같은 경우 에러(error)가 발생하면 다음 동기 신호인 슬라이스 헤더를 찾을 때까지의 모든 정보를 손실하게 된다. 또한, 움직임 보상 부호화기법을 이용하기 때문에 손상된 부분의 영향이 이후 계속된 여러 장의 프레임에 걸쳐 계속된다.
본 발명은 비디오 데이터의 빠른 인코딩과 화질개선을 가능하게 할 수 있는 하드웨어 액셀러레이터 구조에 최적 화된 모션 판단 값과 인트라 모드(Intra mode) 압축 알고리듬을 적용한 IMT-2000 화상단말기이다. 무선화상 통신을 위하여 일반적으로 사용되어지는 엠펙(MPEG) 압축 방식의 모션 판단 값은 가장 많은 계산 량을 가지며 화질과 비트(bit)량에 직접적인 영향을 미치므로 매우 중요하다고 할 수 있다.
따라서 모션 판단 값에 관한 많은 연구가 끊임없이 이루어 졌으며, 최근에는 모션 판단 값을 다이아몬드 서치 패턴(diamond search pattern)을 이용하여 풀 서치(full search)와 거의 비슷한 화질과 비트 량을 가지며 가장 범용 적으로 쓰이는트리 스텝 서치(three step search) 방식이 사용되고 있다.
도 1은 종래 기술에 따른 동영상 디코더의 구조를 도시한 블록도이다.
도 1에 도시된 바와 같이, 부호 화된 영상 데이터가 비트스트림(bit stream) 형태로 디코더 부에 들어오면 이를 원래의 영상으로 복원하기 위하여 인코더에서 행해지는 부호화와 반대로 복호화가 이루어진다.
따라서, 압축된 비트스트림을 복호화 하는 디코더는 일정한 비트스트림의 데이터 양을 임시적으로 저장하는 버퍼부(1)와, 상기 버퍼부(1)에 저장되어 있는 비트스트림을 영상으로 재현하기 위하여 디코딩 작업을 하는 가변장복호화기(Variable Length Decoding :VLD 3)와, 상기 가변장복호화기(3)로부터 디코딩된 비트스트림에서 에러 검출, 움직임 벡터 복원 및 영상 재현을 위한 에러 감지/복원부(5)와, 상기 에러 감지/복원부(5)에서 영상 재현을 위한 영상 데이터는 인코더에서 실시한 압축 방식의 반대로 진행하기 위하여 역양자화와 역이산여현변환을 실시하는 역양자화부(Inverse Quantization:7)와 역DCT(Inverse Discrete Cosine Transform: 9), 상기 에러 감지/복원부(5)에서 복원한 움직임 벡터를 보상하기 위한 움직임 보상기(Motion Compensation: MC 12)와, 동영상을 디스플레이 하는 디스플레이부(10)로부터 이전 영상들을 저장하는 영상 프레임 메모리(15)로 구성되어 있다.
상기와 같은 구조를 갖는 디코더에 의하여 압축된 동영상이 재현되는 과정을 다음과 같다.
아날로그 영상 신호를 인코더(encoder)에서 이산여현변환(Discrete CosineTransform), 양자화(Quantization)를 거쳐 가변장부호화가된 영상 프레임 신호가 압축된 비트스트림(bit stream) 상태로 디코더(decoder)에 수신되면, 먼저 이를 임시적으로 저장하기 위하여 상기 버퍼부(1)에 저장된다. 상기 버퍼부(1)에 저장된 압축된 동영상 비트스트림은 상기 가변장복호화기(3)에서 압축된 비트스트림의 값, 길이 등을 이차원부호화로 변환시킨 후에 에러 검출 및 이의 대응을 위하여 상기 에러 감지/복원부(5)에서 움직임 벡터 값과 에러(error) 여부를 감지한다.
그런 다음, 상기 에러 감지/복원부(5)로부터 인가되는 압축 영상을 인코더(encoder)에서 압축할 때와 반대 방향으로 다시 복원 과정을 거친다. 상기 역양자화부(7)에서 역스캔 및 역 양자 화된 다음, 역 이산여현변환기(IDCT: 9)(103)에서 IDCT 변환을 실시한다.
이렇게 역이산여현변환(Inverse Discrete Cosine Transform)이 이루어진 영상 신호를 가산기(11)에 입력시키는데, 상기 가산기(11)에서는 복원하는 영상 프레임이 처음 시작하는 인트라 모드(Intra Mode) 영상인가, 이전 영상 프레임이 존재하는 인터(INTER) 모드 영상인가를 파악한 다음, 인트라 모드 영상인 경우에는 움직임 벡터가 없으므로 바로 상기 디스플레이부(10)에서 영상을 재현한다.
그리고, 인터 모드로 판단된 경우에는 움직임 벡터가 존재하므로 압축된 비트스트림으로부터 상기 에러 감지/복원부(5)에서 움직임 벡터를 추출한 후 이를 보상하기 위하여 움직임 보상기(Motion Compensation: 12)로 움직임 벡터를 전송한다.
상기 움직임 보상기(12)에서는 상기 디스플레이부(10)에서 재현되는 이전 영상 프레임을 저장하는 상기 영상 프레임 메모리(15)로부터 상기 에러 감지/복원부(5)에서 추출된 움직임 벡터의 차를 구하여 디코딩된 영상을 보상한다.
그러므로 상기 움직임 보상기(12)에서 이전 영상 프레임으로부터 현재 움직임 벡터 값을 뺀 차를 상기 가산기(11)에 전송하고, 압축된 비트스트림이 이전 영상 프레임이 존재하는 인터 모드(Inter mode)인 경우에는 상기 역DCT된 값과 합하여 영상을 재현하게 된다.
상기에서 복원되는 영상 프레임은 각각의 매크로 블록 단위로 구분되어 있는데, 각각의 매크로 블록의 데이터들은 디코딩되면서 움직임 벡터를 포함하고 있고, 이러한 움직임 벡터들은 일정한 방향을 지시하고 있다. 동영상 압축 기술은 이러한 움직임 벡터를 이용하여 이전 영상 프레임의 매크로 블록을 가져와 현재 영상 프레임을 복원하는 방식을 취하여 압축률을 줄인다.
도 2는 본 발명에 따른 매크로 블록 레이어의 구조를 도시한 도면이다.
도 2에 도시된 바와 같이, PTYPE 헤더 정보에서 인터 모드임을 지시한 현재 영상 프레임의 매크로 블록을 나타내는 COD(Coded Macroblock Indication), 매크로 블록의 타입과 색차 신호에 대한 패턴이 코딩된 MCBPC(Macroblock type & Coded block pattern for chrominance), B 영상 프레임에 대한 매크로 블록 모드를 나타내는 MODB(Macroblock mode for B-blocks), B 영상 프레임의 블록에 대한 패턴을 나타내는 CBPB(Coded Block pattern for B-blocks), 휘도 신호에 대한 블록 패턴을 나타내는 CBPY(Coded block pattern for luminance), 양자화된 값의 차이를 나타내는 DQUANT(Differential values for Quantizer Information), 움직임 벡터의 데이터를 나타내는 MVD(Motion vector data)와 MVD2-4(Motion vector data), B 영상 프레임에 대한 움직임 벡터의 데이터를 나타내는 MVDB(Motion vector data for B-macroblock), 매크로 블록을 구성하는 각각의 블록에 대한 데이터 정보가 있는 블록 레이어(Block Layer)로 구성되어 있다.
상기 DQUANT는 이전 양자화 값과 현재 영상에서의 양자화 값의 차만을 부호화하여 디코더로 전송된 것이다. 인코더에서는 양자화한 후 이를 레이트 컨트롤에서 비트율 조절을 하여 영상 프레임의 헤더 정보에 첨가하여 전송하는데, 영상 프레임 단위에서의 DQUANT 값은 항상 일정한 "0"의 값으로 조절된다.
따라서, 압축된 영상 비트스트림의 채널 에러로 인하여 영상의 에러가 발생하는 경우에도 일단 레이트 컨트롤에 의하여 비트율 조절이 있는 경우에는 항상 매크로 블록의 DQUANT 값을 "0"으로 판단하여 디코딩하여 에러를 보정한다.
도 3은 종래 기술에 따라 움직임 벡터 예측 방법을 설명하기 위한 도면이다.
일반적으로 인코더에서는 영상 비디오 신호를 부호화할 때, 인터 모드인 경우에는 계속되는 영상 비디오 신호 중에서 변화된 부분만 부호화하여 코딩 효율을 높인다. 즉, 영상 비디오의 화상 중에서 움직임이 없는 영상은 이전 영상 프레임의 부호화 값을 그대로 사용하지만, 변화된 부분의 영상 비디오 신호를 부호화할 때는 움직인 영상을 중심으로 주변의 세 개의 움직임 벡터(MV1, MV2, MV3)를 사용하여 부호화한다.
상기 주변의 세 개의 움직임 벡터를 중간값 필터(median filter)를 사용하여 그 중간값을 예측 움직임 벡터로 사용하고 전송되는 움직임 벡터 값과의 차 값을 코딩(MVD: Motion Vector Difference)하여 전송한다.
도 3에 도시된 바와 같이, 영상 비트스트림이 디코더에 전송되어 오면, 부호화된 영상 신호들을 디코딩하는데, 이때 영상 프레임의 픽쳐 헤더 정보로부터 인터 모드 정보가 있을 경우에는 매크로 블록들을 디코딩하는데, 이때 영상의 변화가 발생하여 움직임 벡터 보상을 해야할 경우에 인코더에서 부호화하는 방법과 같은 방법으로 복호화를 하여 움직임 벡터 보상 및 예측을 하게 된다.
구하고자하는 움직임 벡터를 중심으로 둘레에 전송되어온 모션 벡터들(MV1, MV2, MV3)로부터 중간 값을 구한 다음, 매크로 블록 정보로 전송되어온 차분 벡터(MVD)와의 합에 의하여 움직임 보상을 하여 움직임 벡터를 구한다.
주변 매크로 블록중 인트라 모드(Intra mode)인 경우와 낫 코디드(Not Coded) 블록인 경우에는 예측될 후보 움직임 벡터 값을 (0, 0)으로 놓고, GOB(Group of Block) 및 슬라이스(Slice) 또는 픽쳐 경계일 경우에도 (0, 0)으로 놓는다.
그러나, 상기와 같은 방법에 의하여 인코더에서 코딩된 움직임 벡터들을 디코딩하여 움직임 보상을 하는 경우, 무선망을 통하여 전송된 인코딩된 영상의 움직임 벡터 정보에 에러가 발생한 경우에 이를 감지하지 못하고, 에러가 발생한 그 움직임 벡터를 예측 벡터로 선택하여 움직임 보상을 하게되는 문제가 있다.
이것은, 인코더에서 행한 움직임 벡터 보상 방식과 디코더에서 행하는 움직임 벡터 보상 방식이 서로 다르게되어 화질 저하를 초래한다.
또한, 주변 블록들 중에서 에러가 있는 블록이 움직임 벡터로 선택되어 보상 될 경우에는 계속된 에러 발생 움직임 벡터를 선택하여 보상하여 에러 누적으로 인하여 정상적으로 디코딩한 움직임 벡터 블록들까지 오류를 발생시키는 문제가 있었다.
본 발명은, IMT2000 무선망을 통하여 영상 신호를 전송할 때, 채널 비트 에러로 인하여 에러가 발생한 움직임 벡터들을 움직임 보상을 위한 예측 벡터의 참조 선택되지 않도록 함으로써 움직임 보상에 의한 움직임 벡터 오류 및 이로 인하여 에러의 누적으로 인한 화질 저하를 방지할 수 있는 움직임 벡터 예측 방법을 제공함에 그 목적이 있다.
도 1은 종래 기술에 따른 동영상 디코더의 구조를 도시한 블록도.
도 2는 본 발명에 따른 매크로 블록 레이어의 구조를 도시한 도면.
도 3은 종래 기술에 따라 움직임 벡터 예측 방법을 설명하기 위한 도면.
도 4a 내지 도 4d는 본 발명에 따른 움직임 벡터 예측을 위한 도면.
도 5는 본 발명에 따른 움직임 벡터 예측 방법을 설명하기 위한 플로챠트.
*도면의 주요 부분에 대한 부호의 설명*
1: 버퍼부3: VLD
5: 에러 감지/복원부7: 역양자화부
9: 역DCT10: 디스플레이부
12: MC15: 영상 프레임 메모리
상기한 목적을 달성하기 위한, 본 발명에 따른 움직임 벡터 예측 방법은,
동영상 비트스트림을 디코딩하는 단계;
상기 디코딩되는 영상 프레임의 헤더 정보에 따라 인터 모드로 매크로 블록에 대하여 움직임 보상을 위하여 주변 매크로 블록과 차분 움직임 벡터를 디코딩하는 단계;
상기 움직임 보상을 위한 상기 주변 매크로 블록들에 대한 에러 유무를 판단하는 단계; 및
상기 움직임 보상을 위하여 참조하는 상기 주변 매크로 블록에 에러가 존재하고, 그 에러 블록이 2개 이상인 경우에는 상기 주변 매크로 블록들에 대한 움직임 벡터 값을 '0'으로 판단하여 움직임 보상을 위한 참조 블록으로 사용하지 않고 움직임 보상을 진행하는 단계;를 포함하는 것을 특징으로 한다.
여기서, 상기 움직임 보상을 위하여 참조할 주변 블록들 중에서 에러가 발생하지 않는 경우에는 중간값 필터와 상기 디코딩된 차분 움직임 벡터 값을 이용하여 움직임 보상을 하고, 상기 참조 블록들 중에서 에러 블록이 2개 이상인 경우에는, 에러가 발생한 두 개의 블록에 대한 움직임 벡터 값을 매우 크게 셋팅하여 움직임 보상시 참조 블록으로 선택되지 않도록 하는 것을 특징으로 한다.
그리고 상기 움직임 보상을 위하여 참조할 블록에서 에러가 발생한 경우에는 처음부터 에러 블록이 선택되지 않도록 하는 것을 특징으로 한다.
본 발명에 의하면, 채널 비트 에러로 인하여 에러가 발생한 움직임 벡터가 디코더에서 움직임 보상시에 참조 움직임 벡터로 선택되어지지 않도록 함으로써 움직임 벡터 오류 및 이로 인하여 에러의 전파 및 화질 저하를 방지할 수 있다.
이하, 첨부한 도면에 의거하여 본 발명의 바람직한 실시 예를 자세히 설명하도록 한다.
도 4a 내지 도 4d는 본 발명에 따른 움직임 벡터 예측을 위한 도면이다.
도 4a에 도시된 바와 같이, 디코더에서 움직임 벡터의 보상을 위한 주변 매크로 블록의 움직임 벡터를 디코딩하여 에러가 발생하지 않는 경우에는 상기 도 3에서 설명한 바와 같이 세 개의 움직임 벡터에서 중간값을 취하는 움직임 보상을 실시한다.
즉, 보상을 하고자하는 움직임 벡터를 중심으로 둘레에 전송되어온 모션 벡터들(MV1, MV2, MV3)로부터 중간값을 구한 다음, 매크로 블록 정보로 전송되어온 차분 벡터(MVD)와의 합에 의하여 움직임 보상을 한다.
하지만, 움직임 보상을 하려는 움직임 벡터가 참조하는 주위의 세 개의 참조 블록들에 대한 벡터들 중에 어느 하나에서 에러가 발생한 경우에는(MV1, MV2, MV3)중 어느 하나의 움직임 벡터), 이때 디코더에서는 에러가 발생한 매크로 블록들의 정보를 알 수 있으므로, 이 정보를 사용하여 움직임 보상을 실시한다.
도 4b에 도시된 바와 같이, 움직임 보상을 위하여 사용되는 주변의 세 개의 블록들 중에서 어느 하나에서 에러가 발생한 경우에는, 그 에러가 발생한 블록의 움직임 벡터를 매우 큰 값으로 셋팅을 한다. 예를 들어 777로 셋팅하여 일반적으로 매크로 블록의 움직임 벡터가 갖는 값보다 훨씬 큰 값을 갖도록 하여 중간값 필터에서 선택되지 않도록 한다.
즉, 움직임 보상을 위하여 참조하는 세 개의 블록에 대한 움직임 벡터 중에서 하나의 움직임 벡터에 에러가 발생한 경우, 에러가 발생한 하나의 움직임 벡터를 아주 큰 값으로 셋팅(SETTING)을 하게 되면 움직임 보상을 위한 중간값 선택 과정에서 에러 움직임 벡터는 선택되지 않기 때문에 채널 비트 등에 의한 에러에도 불구하고, 정확한 움직임 보상을 할 수 있게 된다.
예를 들어 참조할 움직임 벡터 MV1, MV2, MV3들 중에서 MV2에서 에러가 발생한 경우 도면에서와 같이 일반적으로 움직임 벡터가 가질 수 없는 아주 큰 777값으로 세팅을 하면, 중간 값 필터를 통과한 움직임 벡터들 중에서는 777로 세팅되어진 MV2벡터는 어느 경우에도 선택되지 않게 되어 에러 발생 벡터를 움직임 예측 보상에서 사용하지 않게 된다.
만약, 움직임 보상을 위한 3개의 참조 움직임 벡터들 중에서 두 개의 움직임 벡터에서 에러가 발생할 경우에는 도 4c에서 도시된 바와 같이, 에러가 발생한 두 개의 움직임 벡터들을 매우 큰 값으로 셋팅을 한다.
따라서, 참조할 움직임 벡터를 중간값 필터를 통하여 중간값을 갖는 움직임 벡터를 선택할 때, 두 개의 아주 큰 움직임 벡터가 있기 때문에 에러 발생 확률이 상당이 높기 때문에 일괄적으로 움직임 벡터 값을 0으로 하여 움직임 보상에 참조 움직임 벡터를 사용하지 않도록 한다.
두 개의 움직임 벡터에서 에러가 발생하고 하나의 움직임 벡터에서는 에러가 발생하지 않은 경우에는, 에러가 발생하지 않은 움직임 벡터를 선택하여 움직임 보상을 하는 것이 바람직하겠지만, 현재 사용되는 중간 값 필터는 세 개의 움직임 벡터 값에서 중간 값을 선택하기는 어려운 문제가 있다.
그러므로 에러가 발생한 움직임 벡터 두 개 모두를 매우 큰 움직임 벡터 값으로 셋팅하여 움직임 보상을 할 때, 두 개이상의 에러를 포함하는 주변 움직임 벡터인 경우에는 참조하지 않고 보상하는 것이 화질 저하를 막을 수 있다.
또한, 에러 움직임 벡터를 사용하여 움직임 보상을 한 경우에는 에러를 포함한 움직임 벡터가 다른 움직임 벡터의 움직임 보상이 참조 움직임 벡터가 되어 에러 누적을 야기하기 때문에 처음부터 참조를 하지 않도록 하였다.
그리고 도 4d에서 도시한 바와 같이, 움직임 보상에서 참조하는 세 개의 움직임 벡터 모두에서 에러가 발생한 경우에는 세 개 모두의 움직임 벡터 값을 매우 큰 값으로 셋팅하여 움직임 보상을 할 때, 참조하지 않도록 하였다.
즉, 두 개 이상의 움직임 벡터에서 에러가 발생한 경우에는 움직임 벡터를 0으로 취급하여 시간적 연관성이 떨어지는 블록들을 이용하지 않도록 하여 화질 저하를 방지하고, 아울러 누적되는 에러에 의한 오류를 방지하고자 하였다.
도 5는 본 발명에 따른 움직임 벡터 예측 방법을 설명하기 위한 플로챠트이다.
도 5에 도시된 바와 같이, 영상 비트스트림이 디코더에 전송되어 디코딩을 실시할 때, 픽쳐 헤더 정보와 매크로 블록들을 디코딩한다. 상기 매크로 블록을 디코딩할 때에는 인터 모드일 때에는 이전 영상 프레임의 매크로 블록과 차분 벡터를 사용하여 이전에 디코딩된 영상으로부터 현재 디코딩될 영상을 재현하도록 되어 있다.
이때, 영상 프레임의 어느 특정 매크로 블록의 블록 움직임 벡터를 보상하기 위해서는 먼저 이전에 디코딩된 주변 블록의 움직임 벡터 값(MV1, MV2, MV3)을 이용하고, 아울러 인코더에서 코딩되어 들어온 차분 벡터 값을 이용한다.(S501)
상기 디코더에서 디코딩을 할 때, 움직임 보상에서 사용되는 주변 세 개의 블록들(MV1, MV2, MV3)의 움직임 벡터에서 에러가 발생한지를 판단할 수있는데(S502), 이것은 인코더에서 코딩할 때 영상 프레임의 헤더 정보에 삽입된 정보를 통하여 알 수 있다.
그러므로 움직임 보상을 위하여 참조를 할 블록의 움직임 벡터에 에러가 발생하였는가를 판단하여 에러가 있는 경우에는 세 개의 참조 블록중 몇 개의 블록에서 에러가 발생하였나를 판단한다.(S503, S504)
참조할 블록들 중에서 1개의 블록에서만 에러가 발생한 경우에는 그 에러가 발생한 블록이 움직임 보상 과정에서 선택되지 않도록 매우 큰 값으로 셋팅을 한다(S507). 매우 큰 값으로 셋팅된 에러 블록은 중간값 필터에서 중간값으로 판단되지 않기 때문에 움직임 보상에 사용되지 않는다.
따라서, 에러가 발생하지 않은 블록들 중에서 움직임 보상을 위한 블록이 선택되어 움직임 보상을 하므로 화질 저하를 방지할 수 있는 이점이 있다.
상기 움직임 보상을 위하여 참조할 세 개의 블록들 중에서 어느 하나도 에러가 발생하지 않는 경우에는 일반적인 방법에 따라 중간값 필터를 통하여 세 개의 움직임 벡터 값중 중간에 해당하는 값을 선택하고, 디코딩된 차분 벡터 값을 더하여 움직임 보상을 진행한다.(S503, S506)
그리고, 참조 블록들 중에서 두 개이상의 블록들에서 에러가 발생한 경우에는 두 개의 에러 블록의 움직임 벡터 값을 매우 큰 값으로 셋팅하고, 일괄적으로 움직임 벡터를 "0"으로 취급하여 움직임 보상을 할 때 참조하지 않도록 한다.
시간적 연관성이 매우 떨어지는 블록들을 사용하여 움직임 보상을 하는 경우에는 화질 저하를 초래할 뿐만 아니라 움직임 보상을 한 블록이 다른 블록의 움직임 보상을 할 때 참조되어 에러 누적이 발생하는 문제를 방지하도록 하였다.
그러므로, 움직임 예측 벡터의 선택시 에러가 있는 블록들이 선택되지 않도록 하여 에러 전파에 의한 화질 저하와 잘못된 움직임 벡터를 이용한 움직임 보상을 방지하여 디코딩 효율을 향상시켰다.
이상에서 자세히 설명된 바와 같이, 본 발명은 채널 비트 에러로 인하여 발생한 움직임 벡터들을 움직임 보상에서 선택되지 않도록 하여 화질 저하를 방지한 효과가 있다.
아울러, 에러가 발생한 블록을 처음부터 선택되지 않도록 하여 움직임 보상과정에서 에러 전파로 인한 에러 누적을 방지하도록 한 이점이 있다.
본 발명은 상기한 실시 예에 한정되지 않고, 이하 청구 범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변경 실시가 가능할 것이다.

Claims (4)

  1. 동영상 비트스트림을 디코딩하는 단계;
    상기 디코딩되는 영상 프레임의 헤더 정보에 따라 인터 모드로 매크로 블록에 대하여 움직임 보상을 위하여 주변 매크로 블록과 차분 움직임 벡터를 디코딩하는 단계;
    상기 움직임 보상을 위한 상기 주변 매크로 블록들에 대한 에러 유무를 판단하는 단계; 및
    상기 움직임 보상을 위하여 참조하는 상기 주변 매크로 블록에 에러가 존재하고, 그 에러 블록이 2개 이상인 경우에는 상기 주변 매크로 블록들에 대한 움직임 벡터 값을 '0'으로 판단하여 움직임 보상을 위한 참조 블록으로 사용하지 않고 움직임 보상을 진행하는 단계;를 포함하는 것을 특징으로 하는 움직임 벡터 예측방법.
  2. 제 1 항에 있어서,
    상기 움직임 보상을 위하여 참조할 주변 블록들 중에서 에러가 발생하지 않는 경우에는 중간값 필터와 상기 디코딩된 차분 움직임 벡터 값을 이용하여 움직임 보상을 하는 것을 특징으로 하는 움직임 벡터 예측방법.
  3. 제 1 항에 있어서,
    상기 참조 블록들 중에서 에러 블록이 2개 이상인 경우에는, 에러가 발생한 두 개의 블록에 대한 움직임 벡터 값을 매우 크게 셋팅하여 움직임 보상시 참조 블록으로 선택되지 않도록 하는 것을 특징으로 하는 움직임 벡터 예측방법.
  4. 제 1 항에 있어서,
    상기 움직임 보상을 위하여 참조할 블록에서 에러가 발생한 경우에는 처음부터 에러 블록이 선택되지 않도록 하는 것을 특징으로 하는 움직임 벡터 예측방법.
KR1020020068019A 2002-11-05 2002-11-05 움직임 벡터 예측 방법 KR20040039808A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020020068019A KR20040039808A (ko) 2002-11-05 2002-11-05 움직임 벡터 예측 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020020068019A KR20040039808A (ko) 2002-11-05 2002-11-05 움직임 벡터 예측 방법

Publications (1)

Publication Number Publication Date
KR20040039808A true KR20040039808A (ko) 2004-05-12

Family

ID=37337331

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020020068019A KR20040039808A (ko) 2002-11-05 2002-11-05 움직임 벡터 예측 방법

Country Status (1)

Country Link
KR (1) KR20040039808A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011025301A2 (ko) * 2009-08-28 2011-03-03 에스케이텔레콤 주식회사 동영상 부호화를 위한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR200453416Y1 (ko) * 2009-06-09 2011-05-03 이진섭 높이조절 및 회전이 가능한 마사지 진동운동기구

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980080690A (ko) * 1997-03-26 1998-11-25 모리시다요이치 화상 복호화장치
KR19990044381A (ko) * 1996-07-05 1999-06-25 미야즈 쥰이치로 화상 통신 시스템 및 그 방법
KR20040031948A (ko) * 2002-10-08 2004-04-14 엘지전자 주식회사 동영상 디코딩 방법
KR20040047045A (ko) * 2002-11-29 2004-06-05 엘지전자 주식회사 동영상 디코딩 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990044381A (ko) * 1996-07-05 1999-06-25 미야즈 쥰이치로 화상 통신 시스템 및 그 방법
KR19980080690A (ko) * 1997-03-26 1998-11-25 모리시다요이치 화상 복호화장치
KR20040031948A (ko) * 2002-10-08 2004-04-14 엘지전자 주식회사 동영상 디코딩 방법
KR20040047045A (ko) * 2002-11-29 2004-06-05 엘지전자 주식회사 동영상 디코딩 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR200453416Y1 (ko) * 2009-06-09 2011-05-03 이진섭 높이조절 및 회전이 가능한 마사지 진동운동기구
WO2011025301A2 (ko) * 2009-08-28 2011-03-03 에스케이텔레콤 주식회사 동영상 부호화를 위한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
WO2011025301A3 (ko) * 2009-08-28 2011-06-09 에스케이텔레콤 주식회사 동영상 부호화를 위한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치

Similar Documents

Publication Publication Date Title
KR100564896B1 (ko) 화상부호화방법 및 장치와 기록매체
KR100505306B1 (ko) 동화상신호의부호화방법및장치와,동화상신호의복호화방법및장치
GB2343321A (en) Error concealment in a video signal
US6040875A (en) Method to compensate for a fade in a digital video input sequence
KR100669634B1 (ko) 동영상 압축 및 복원 방법
KR20040031949A (ko) 동영상 인코딩 및 디코딩 방법
KR20040046320A (ko) 동영상 부호화 방법
KR100627494B1 (ko) 동영상 부호화기 및 이를 이용한 부호화 방법
KR20040039808A (ko) 움직임 벡터 예측 방법
KR100586103B1 (ko) 동영상 부호화 방법
WO2001008420A1 (en) Device for encoding motion picture signals and encoding method
KR100564967B1 (ko) 동영상 디코더 및 이를 이용한 디코딩 방법
KR100543607B1 (ko) 동영상 디코딩 방법
KR20040039809A (ko) 동영상 부호화기 및 이를 이용한 부호화 방법
KR100522595B1 (ko) 엠펙 비디오 복호화방법 및 엠펙 비디오 복호화기
KR20040047045A (ko) 동영상 디코딩 방법
KR20040031948A (ko) 동영상 디코딩 방법
KR100557118B1 (ko) 동영상 디코더 및 이를 이용한 디코딩 방법
KR100627493B1 (ko) 동영상 부호화기 및 이를 이용한 부호화 방법
KR100590328B1 (ko) 동영상 디코더 및 이를 이용한 디코딩 방법
KR20040034188A (ko) 동영상 디코딩 방법
KR100557047B1 (ko) 동영상 디코딩 방법
KR20040035012A (ko) 동영상 코덱 및 이를 이용한 동영상 코덱의 에러방지방법
KR20040035013A (ko) 동영상 디코딩 방법
KR20040020734A (ko) 동영상 디코딩 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application