KR100860689B1 - 동영상 복호화시 프레임 손실 은폐 방법 및 장치 - Google Patents

동영상 복호화시 프레임 손실 은폐 방법 및 장치 Download PDF

Info

Publication number
KR100860689B1
KR100860689B1 KR1020070011554A KR20070011554A KR100860689B1 KR 100860689 B1 KR100860689 B1 KR 100860689B1 KR 1020070011554 A KR1020070011554 A KR 1020070011554A KR 20070011554 A KR20070011554 A KR 20070011554A KR 100860689 B1 KR100860689 B1 KR 100860689B1
Authority
KR
South Korea
Prior art keywords
weight
pixel
frame
coordinates
macro block
Prior art date
Application number
KR1020070011554A
Other languages
English (en)
Other versions
KR20080073047A (ko
Inventor
최정석
박영오
최광표
주영훈
김용덕
송관웅
김창수
Original Assignee
삼성전자주식회사
고려대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사, 고려대학교 산학협력단 filed Critical 삼성전자주식회사
Priority to KR1020070011554A priority Critical patent/KR100860689B1/ko
Publication of KR20080073047A publication Critical patent/KR20080073047A/ko
Application granted granted Critical
Publication of KR100860689B1 publication Critical patent/KR100860689B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/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

본 발명은 동영상 복호화시 프레임 손실 은폐 방법에 있어서, 동영상 복호화시 입력된 프레임의 손실을 확인하는 과정과, 입력된 프레임에 손실이 발생한 경우 입력된 프레임을 매크로 블록 단위로 복원하기 위해 이전에 입력된 프레임에서 복원할 매크로 블록과 같은 위치의 매크로 블록의 움직임 벡터를 검사하는 과정과, 복원할 매크로 블록을 수평축과 수직축으로 분할되는 사분면형태로 판단하여, 각각의 복원할 픽셀별로 복원할 픽셀이 위치한 사분면에 인접하는 주변 매크로 블록을 참조 매크로 블록으로 설정하여 움직임 벡터를 검사하는 과정과, 검사한 각각의 움직임 벡터들에 미리 설정된 가중치를 적용하여 하나의 가중치 평균 움직임 벡터를 계산하는 과정과, 가중치 평균 움직임 벡터를 사용하여 손실된 매크로 블록을 복원하는 과정과, 손실된 프레임의 모든 매크로 블록을 복원하여 손실된 프레임을 대체하는 복원 프레임을 생성하는 과정을 포함한다.
프레임, 손실 은폐, OBEC, 매크로 블록, 움직임 벡터

Description

동영상 복호화시 프레임 손실 은폐 방법 및 장치{METHOD AND APPARATUS FOR FRAME ERROR CONCEALMENT IN VIDEO DECODING}
도 1은 동영상 복호화시 프레임 에러 발생 이후에 출력되는 프레임들의 예시도
도 2는 일반적인 프레임 프리즈(Frame Freeze) 기법을 사용한 동영상 복호화시 프레임 에러 발생 이후에 출력되는 프레임들의 예시도
도 3은 본 발명의 일 실시예에 따른 동영상 복호화시 프레임 손실 은폐 장치의 블록 구성도
도 4는 본 발명의 일 실시예에 따른 동영상 복호화시 프레임 손실 은폐 방법의 이전 프레임의 매크로 블록을 참조하는 방식을 보여주는 예시도
도 5는 본 발명의 일 실시예에 따른 동영상 복호화시 프레임 손실 은폐 방법의 각 픽셀별 움직임 벡터의 가중치를 나타내는 도면
도 6은 본 발명의 다른 실시예에 따른 동영상 복호화시 프레임 손실 은폐 방법의 움직임 벡터 추출을 위한 매크로 블록을 나타내는 예시도
도 7은 본 발명의 일 실시예에 따른 동영상 복호화시 프레임 손실 은폐 동작의 흐름도
도 8은 본 발명의 일 실시예에 따른 프레임 손실 은폐 방법을 사용한 동영상 복호화시 프레임 에러 발생 이후에 출력되는 프레임들의 예시도
본 발명은 동영상 복호화에 관한 기술로서, 특히 동영상 복호화시 프레임의 손실을 은폐(EC: Error Concealment)하는 방법 및 장치에 관한 것이다.
일반적으로 국제적인 표준으로 제정된 H.263, H.264, MPEG-4와 같은 대부분의 동영상 부호화 기술은 가변 길이 부호화(VLC: Variable Length Coding)와 공간 및 움직임 예측(spatial and motion prediction) 등의 효율적인 영상 압축 기법을 사용하고 있다. 그런데, 가변 길이 부호화 기술은 손실이 있는 채널 환경에 매우 취약하여 소수의 비트 손실에 의해서도 영상 디코딩 도중에 동기를 잃어버리게 하는 원인을 제공하며, 또한 예측 부호화 기술은 전체 영상을 통해 손실이 전파되게 만든다. 이로 인해 채널 전송, 저장 매체 기록 또는 읽기 중에 발생하는 손실은 복원된 영상의 화질 저하에 많은 영향을 끼치게 된다.
이와 같은 피할 수 없는 전송 손실에 효과적으로 대응하기 위하여 손실에 강인한 부호화 기법들에 대한 연구와 더불어, 전송 환경에서 발생하는 손실에 의한 피해를 최소화하기 위한 기법으로 손실 은폐(EC: Error Concealment) 기법이 연구되어 왔다.
다양한 EC 기법 중 널리 이용되는 기법은 복호기가 EC의 역할을 담당하는 후 처리 기법으로 자연 이미지의 경우 공간적 또는 시간적으로 인접한 픽셀(pixel)들은 부드럽게 변화한다는 특성을 이용하여 손실된 정보를 복원하는 기법이다. 이때 손실된 블록과 이웃한 블록의 픽셀 값 또는 움직임 벡터(MV: Motion Vector)를 이용하여 손실된 블록을 화소 단위 또는 매크로 블록 단위로 복원하게 된다. 그러나 프레임 단위로 발생되는 에러의 경우에는 블록 단위의 에러와는 달리 하나의 프레임 내에 활용 가능한 정보가 없다는 문제점이 있다. 이와 같은 이유로 프레임 단위의 EC기법은 거의 전무한 실정이다.
도 1은 동영상 복호화시 프레임 에러 발생 이후에 출력되는 프레임들의 예시도이다. 도 1을 참조하면, 손실이 발생한 프레임(Fk) 이후에 전송되는 프레임은, 이전 프레임과의 상관관계를 이용한 압축 방식 때문에 이전 프레임의 에러가 전파되는 형태를 보여준다. 따라서 손실된 프레임은 Fk 이지만 이후에 전송된 Fk+1 , Fk+2 프레임에도 그 영향이 전달되어 실제 영상을 확인하는 것이 불가능하게 된다.
최근 활성화 되고 있는 지상파 DMB(Digital Multimedia Broadcasting)의 동영상의 경우 H.264의 압축 방식을 이용하면서 하나의 슬라이스로 하나의 프레임을 구성하는 방법을 이용하게 된다. 슬라이스단위의 압축 방법은 에러에 강인한 특성을 갖도록 설계 된 방법이나, 하나의 슬라이스 내부에 에러가 발생할 경우 슬라이스 전체에 대한 복호가 불가능해지는 특징을 가지고 있고 이는 프레임 단위의 에러가 발생함을 의미한다.
하나의 슬라이스로 하나의 프레임이 구성되는 영상에서 발생되는 에러는 슬 라이스 전체가 에러로 취급되기 때문에 기존의 화소 또는 블록 단위의 에러와 비교하여 동영상의 화질에 더욱 심각한 문제가 발생하게 된다. 따라서 손실된 영역이 전체 프레임이기 때문에 기존에 개발 된 블록 단위의 EC기법의 적용이 불가능한 문제점이 있다.
이와 같은 이유로 인해 기존의 프레임 단위의 EC기법은 일반적으로 새로운 IDR(Instantaneous Decoding Refresh) 화면이 수신될 때까지 손실 이전의 영상을 정지 화면 형태로 출력하는 프레임 프리즈(Frame Freeze) 기법이 주로 사용되었다.
도 2는 일반적인 프레임 프리즈(Frame Freeze) 기법을 사용한 동영상 복호화시 프레임 에러 발생 이후에 출력되는 프레임들의 예시도이다. 도 2에서와 같이 프레임 프리즈 기법은 프레임이 손실되기 이전의 올바르게 전송된 프레임을 손실된 프레임 대신 출력하게 되기 때문에 프레임 프리즈 기법은 사용자에게 영상 정보를 정확하게 전달 할 수 없는 문제점이 있으며, 다수의 프레임이 손실되어 다수의 프레임을 프레임 프리즈 기법을 사용하여 처리 할 경우 중요한 정보의 손실이 발생할 수 있다.
본 발명은 높은 복원 효율을 얻을 수 있도록 하기 위한 동영상 복호화시 효율적인 프레임 손실 은폐 방법 및 장치를 제공하고자 한다.
이를 달성하기 위한 본 발명의 일 형태에 따르면, 본 발명은 동영상 복호화시 프레임 손실 은폐 방법에 있어서, 동영상 복호화시 입력된 프레임의 손실을 확 인하는 과정과, 상기 입력된 프레임에 손실이 발생한 경우 상기 입력된 프레임을 매크로 블록 단위로 복원하기 위해 이전에 입력된 프레임에서 상기 복원할 매크로 블록과 같은 위치의 매크로 블록의 움직임 벡터를 검사하는 과정과, 상기 복원할 매크로 블록을 수평축과 수직축으로 분할되는 사분면형태로 판단하여, 각각의 복원할 픽셀별로 상기 복원할 픽셀이 위치한 사분면에 인접하는 주변 매크로 블록을 참조 매크로 블록으로 설정하여 움직임 벡터를 검사하는 과정과, 상기 검사한 각각의 움직임 벡터들에 미리 설정된 가중치를 적용하여 하나의 가중치 평균 움직임 벡터를 계산하는 과정과, 상기 가중치 평균 움직임 벡터를 사용하여 손실된 매크로 블록을 복원하는 과정과, 상기 손실된 프레임의 모든 매크로 블록을 복원하여 상기 손실된 프레임을 대체하는 복원 프레임을 생성하는 과정을 포함함을 특징으로 한다.
본 발명의 다른 형태에 따르면, 본 발명은 동영상 복호화시 프레임 손실 은폐 장치에 있어서, 입력받은 부호화된 프레임의 비트 스트림을 복호화하고 복호화된 프레임에 대한 손실 발생 여부를 확인하는 프레임 복호부와; 상기 프레임 복호부로부터 받은 이전에 복호화된 이전 프레임과 현재 복호화된 현재 프레임을 일시 저장하는 버퍼부와; 프레임 손실 은폐 기능을 수행시의 각 구성을 제어하는 제어부와; 입력받은 영상 프레임의 손실시 이전에 정상적으로 수신된 프레임을 이용하여 원본 영상과 유사한 복원 프레임을 생성하는 프레임 손실 은폐부와; 상기 버퍼부로부터 손실 없이 입력된 영상 프레임을 받아서 그대로 출력하거나, 입력된 프레임에 손실 발생시 상기 프레임 손실 은폐부에서 생성한 복원 프레임을 출력하는 출력부 를 포함하며; 상기 프레임 손실 은폐부는 상기 입력된 프레임에 손실이 발생한 경우 상기 입력된 프레임을 매크로 블록 단위로 복원하기 위해 이전에 입력된 프레임에서 상기 복원할 매크로 블록과 같은 위치의 매크로 블록의 움직임 벡터를 검사하며, 상기 복원할 매크로 블록을 수평축과 수직축으로 분할되는 사분면형태로 판단하여, 각각의 복원할 픽셀별로 상기 복원할 픽셀이 위치한 사분면에 인접하는 주변 매크로 블록을 참조 매크로 블록으로 설정하여 움직임 벡터를 검사하며, 상기 검사한 각각의 움직임 벡터들에 미리 설정된 가중치를 적용하여 하나의 가중치 평균 움직임 벡터를 계산하며, 상기 가중치 평균 움직임 벡터를 사용하여 손실된 매크로 블록을 복원하며, 상기 손실된 프레임의 모든 매크로 블록을 복원하여 상기 손실된 프레임을 대체하는 복원 프레임을 생성함을 특징으로 한다.
이하 본 발명에 따른 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 하기 설명에서는 구체적인 구성 소자 등과 같은 특정 사항들이 나타나고 있는데 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐 이러한 특정 사항들이 본 발명의 범위 내에서 소정의 변형이나 혹은 변경이 이루어질 수 있음은 이 기술분야에서 통상의 지식을 가진 자에게는 자명하다 할 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다
동영상 복호화시 프레임의 손실을 은폐하는 방식으로 손실된 프레임을 이전 프레임과 동일한 프레임으로 처리하여 이후에 수신되는 정상적인 정보는 계속 복호를 진행하는 방식을 고려해 볼 수 있다. 이 방식은 프레임 프리즈 기법과 비교하여 비교적 사용자에게 영상에 대한 정보를 정확하게 전달할 수는 있으나, 손상된 프레임의 이후에 출력되는 영상 프레임에도 많은 에러가 발생하게 되고, 발생된 에러는 IDR(Instantaneous Decoding Refresh) 화면이 수신될 때까지 계속 나타나게 되는 문제점이 있다.
본 발명의 일 실시예에 따른 동영상 복호화시 프레임 손실 은폐 기법은 정상적으로 수신된 이전의 프레임을 사용하여 현재 입력받은 손실된 프레임을 은폐하는 새로운 프레임(이하 복원 프레임이라 칭함)을 생성하여 손실된 프레임 이후의 프레임에 전파되는 오류를 최소화하여 정상적인 복호가 가능하도록 하는 방법이다.
도 3은 본 발명의 일 실시예에 따른 동영상 복호화시 프레임 손실 은폐 장치의 블록 구성도이다. 도 3을 참조하면, 본 발명의 일 실시예에 따른 프레임 손실 은폐 장치는 입력받은 영상 프레임의 비트 스트림을 복호화하고 복호화된 영상 프레임의 손실 발생 여부를 확인하는 프레임 복호부(310)와, 상기 프레임 복호부로부터 받은 이전에 복호화된 이전 프레임과 현재 복호화된 현재 프레임을 일시 저장하는 버퍼부(330)와, 프레임 손실 은폐 기능을 수행시의 각 구성을 제어하는 제어부(320)와, 입력받은 영상 프레임의 손실시 이전에 정상적으로 수신 된 프레임을 이용하여 원본 영상과 유사한 복원 프레임을 생성하는 프레임 손실 은폐부(340)와, 상기 버퍼부(330)로부터 손실 없이 입력된 영상 프레임을 받아서 그대로 출력하거 나 혹은 입력된 프레임에 손실 발생시 상기 프레임 손실 은폐부(340)에서 생성한 복원 프레임을 출력하는 출력부(350)를 포함한다.
이하 도 3을 참조하여 프레임 손실 은폐 장치의 각 구성 및 동작에 대하여 상세히 설명하기로 한다. 영상 신호에 대한 입력 비트 스트림은 상기 프레임 복호부(310)로 입력된다. 상기 프레임 복호부(310)는 입력된 비트 스트림의 데이터를 부호화된 형식에 맞춰 복호화를 수행한다. 이러한 부호화 형식은 일반적인 국제적인 표준인 H.263, H.264, MPEG-1, MPEG-2, MPEG-3, MPEG-4 등의 방식이 될 수 있다. 상기 프레임 복호부(310)는 이러한 방식에 맞춰 프레임 복호를 수행하고, 복호된 데이터를 버퍼부(330)로 출력한다.
상기 버퍼부(330)는 상기 프레임 복호부(310)로부터 입력되는 영상 프레임을 저장하는 현재 프레임 저장부(331)와, 그 다음 프레임이 입력될 시 상기 현재 프레임 저장부(331)에 저장된 데이터를 입력받아 저장하는 이전 프레임 저장부(332)를 포함한다. 이러한 이전 프레임 저장부(332)에 저장된 프레임은 오류가 발생한 프레임이 발생하는 경우 이를 은폐하기 위한 자료로서 사용하기 위해 저장된다.
또한 상기 프레임 복호부(310)는 프레임의 복호 결과에 따른 오류 발생 신호를 생성하여 제어부(320)로 출력한다. 상기 프레임 복호 결과에 따른 상기 오류 발생 신호는 프레임 단위의 오류가 발생하여 프레임이 손실된 경우 손실된 프레임에 대한 정보를 제어부(320)로 보낸다.
상기 제어부(320)는 상기 프레임 복호부(310)로부터 수신된 프레임에 오류가 발생했다는 오류 발생 신호를 입력 받으면, 상기 버퍼부(330)와 상기 프레임 손실 은폐부(340)를 제어하여 이전 프레임의 매크로 블록을 사용하여 오류가 발생한 프레임을 대신할 복원 프레임을 생성한다. 그리고 상기 제어부(320)는 복원 프레임을 오류가 발생한 손실된 프레임과 대체하도록 제어하고, 상기 출력부(350)에서 복원 프레임을 출력하도록 제어한다. 그러나 프레임이 정상적으로 수신된 경우에는 제어부(320)는 수신된 프레임을 바로 출력하도록 제어한다.
상기 이전 프레임 저장부(332)는 현재 영상 프레임을 받아서 저장하게 되는데, 만일 상기 프레임 복호부(310)에서 입력받은 프레임이 손실된 프레임일 경우에는 상기 출력부(350)에서 출력되는 오류가 은폐된 프레임 즉, 손실된 프레임의 은폐를 위하여 새롭게 생성된 복원 프레임을 저장할 수 있다.
상기 프레임 손실 은폐부(340)는 입력된 프레임에 오류가 발생하여 프레임이 손실된 경우에 이전에 입력된 프레임을 참고하여 새로운 복원 프레임을 생성한다. 이하 이전에 입력된 프레임을 사용하여 새로운 복원 프레임을 생성하는 방식에 대하여 상세히 살펴보기로 한다.
본 발명의 특징에 따라, 에러 프레임의 복원에 사용되는 OBEC(Overlapped block error concealment) 방법은 부호기에서 움직임 보상을 위해 사용하는 OBMC(Overlapped block motion compensation) 방법과 유사하게 손실된 매크로 블록 내에 위치한 픽셀을 이전 프레임에 위치한 다수의 참조 매크로 블록을 이용하여 에러를 은폐하는 방법이다.
도 4는 본 발명의 일 실시예에 따른 동영상 복호화시 프레임 손실 은폐 방법의 이전 프레임의 매크로 블록을 참조하는 방식을 보여주는 예시도이다. 도 4를 참 조하면, 본 발명의 일 실시예에 따른 프레임 손실 은폐 방법은, 본 발명의 특징에 따라 손실된 프레임(Lost frame)의 매크로 블록을 복원하기 위하여 이전 프레임(Previous frame)의 같은 위치의 매크로 블록뿐만 아니라 같은 위치의 매크로 블록의 상하좌우의 주변 매크로 블록의 움직임 벡터를 함께 참조하여 복원하는 방식을 사용한다. 여기서 손실된 매크로 블록이 복원하는데 참조하는 매크로 블록들을 참조 매크로 블록이라고 정한다.
본 발명에 따른 프레임 손실 은폐 방법은, 오류를 은폐하는 방법으로 손상된 프레임 내의 복원하는 픽셀의 위치에 따른 가중치를 이용하게 되며, 이때 가중치를 적용하는 대상에 따라 MV-OBEC 방법과 P-OBEC 방법으로 구분된다. MV-OBEC 방법은 다수의 움직임 벡터를 이용하여 손상된 픽셀의 움직임 벡터를 추정하는 방법이며, P-OBEC 방법은 다수의 픽셀 값을 중첩 평균하여 손상된 픽셀을 대체하는 방법이다. 먼저 MV-OBEC 방법을 설명하기로 한다. MV-OBEC 방법은 손실된 매크로 블록을 복원하기 위해 참조하는 이전 프레임의 참조 매크로 블록들의 움직임 벡터에 미리 설정된 가중치를 적용하여 하나의 움직임 벡터(이하 가중치 평균 움직임 벡터라고 칭함)를 구하고 상기 가중치 평균 움직임 벡터를 사용하여 손실된 매크로 블록을 복원한다. 여기서 본 발명의 특징에 따라 참조 매크로 블록들 중에서 이전 프레임의 같은 위치의 참조 매크로 블록은 항상 복원을 위해 참조되지만, 위, 오른쪽, 아래, 왼쪽의 주변 매크로 블록은 복원할 픽셀의 매크로 블록 내에서의 위치에 따라 선택되어 참조된다. 즉, 본 발명은 본 발명의 특징에 따라, 복원할 매크로 블록을 수평축과 수직축으로 분할되는 사분면형태로 판단할 때, 각 사분면에 위치하는 픽셀은 각 사분면에 인접하는 매크로 블록의 움직임 벡터만 복원에 참조하도록 설정하였다. 따라서 1사분면(우상방향)에 위치한 픽셀은 1사분면에 인접한 오른쪽 참조 매크로 블록과, 위쪽 참조 매크로 블록의 움직임 벡터를 참조하게 되고, 2사분면(좌상방향)에 위치한 픽셀은 2사분면에 인접한 왼쪽 참조 매크로 블록과, 위쪽 참조 매크로 블록의 움직임 벡터를 참조하게 되고, 3사분면(좌하방향)에 위치한 픽셀은 3사분면에 인접한 왼쪽 참조 매크로 블록과, 아래쪽 참조 매크로 블록의 움직임 벡터를 참조하게 되고, 4사분면(우하방향)에 위치한 픽셀은 4사분면에 인접한 오른쪽 참조 매크로 블록과, 아래쪽 참조 매크로 블록의 움직임 벡터를 참조하게 된다.
도 5는 본 발명의 일 실시예에 따른 동영상 복호화시 프레임 손실 은폐 방법의 각 픽셀별 움직임 벡터의 가중치를 나타내는 도면이다. 도 5의 (a)는 H.263 부호화 표준의 8x8 OBMC에 사용되는 가중치를 4x4 블록에 적합하도록 재설계한 것이다. 그러나 본 발명에서는 보다 높은 복원 성능을 위해 도 5의 (b)와 같은 가중치를 사용한다. 도 5의 (b)는 도 5의 (a)와 비교하여 좌우 블록의 가중치가 상하 블록보다 더 크게 반영되도록 한 것으로 이는 일반적인 영상의 경우 상하 블록간의 연관성보다 좌우 블록간의 연관성이 더 높기 때문이다.
도 5를 참조하면, 본 발명의 일 실시예에 따른 프레임 손실 은폐 방법은 4x4 픽셀 단위의 블록을 사용한다. 4x4 픽셀 단위의 블록의 각각 한칸은 픽셀을 나타낸다. 또한 i와 j는 블록 내 픽셀의 위치를 나타내는데, i는 수평축을 j는 수직축을 나타내어, 제일 왼쪽 위의 픽셀을 pixel(0,0)으로 표시하고 제일 오른쪽 아래에 위치한 픽셀을 pixel(3,3)으로 표시하기로 한다. 블록의 각 픽셀에 표시된 숫자는 각 픽셀을 복원하기 위해 해당 블록의 움직임 벡터에 적용되는 가중치를 나타낸다.
본 발명의 일 실시예에 따른 프레임 손실 은폐 방법은 각 픽셀이 어떤 사분면에 위치하는지에 따라 참조하는 매크로 블록이 선택되고, 상기 픽셀이 상기 사분면 위에서 어떤 위치에 위치하는지에 따라 참조 매크로 블록들에 적용되는 가중치가 다르게 적용된다. 각 픽셀이 해당 사분면에서 안쪽, 다시 말해서 주변의 참조 매크로 블록과의 거리가 멀수록 상기 주변의 참조 매크로 블록의 움직임 벡터의 가중치가 낮게 설정되고, 각 픽셀이 해당 사분면에서 바깥쪽, 즉 주변의 참조 매크로 블록과의 거리가 가까울수록 상기 주변의 참조 매크로 블록의 움직임 벡터의 가중치가 높게 설정된다. 상기 복원할 픽셀과 주변 매크로 블록과의 거리에 따른 가중치는 미리 설정된 범위 내에서 결정된다.
도 5의 (b)를 참조하여 각 움직임 벡터에 가중치를 적용하는 방식을 복원할 매크로 블록의 pixel(3,0)을 예를 들어 설명하기로 한다. 상기 pixel(3,0)은 1사분면에 위치하기 때문에 중앙 매크로 블록과 1사분면에 인접하는 오른쪽과, 위쪽의 매크로 블록의 움직임 벡터를 참조하게 된다. 그래서 중앙 블록의 pixel(3,0) 위치의 가중치 값인 '4'를 중앙 블록의 움직임 벡터(mvC)의 가중치로 사용하고, 오른쪽 블록의 pixel(3,0) 위치의 가중치 값인 '2'를 오른쪽 블록의 움직임 벡터(mvR)의 가중치로 사용하고, 윗쪽 블록의 pixel(3,0) 위치의 가중치 값인 '2'를 윗쪽 블록의 움직임 벡터(mvT)의 가중치로 사용하게 된다.
도 5의 (b)에 나타난 본 발명의 일 실시예에 따른 4x4 픽셀 단위의 블록의 각 픽셀별 복원에 사용하는 움직임 벡터의 가중치를 아래의 표 1에 정리하여 표시한다.
좌표: (0,0) mvT의 가중치:2 mvL의 가중치:2 mvC의 가중치:4 좌표: (1,0) mvT의 가중치:1 mvL의 가중치:2 mvC의 가중치:5 좌표: (2,0) mvT의 가중치:1 mvR의 가중치:2 mvC의 가중치:5 좌표: (3,0) mvT의 가중치:2 mvR의 가중치:2 mvC의 가중치:4
좌표: (0,1) mvT의 가중치:2 mvL의 가중치:1 mvC의 가중치:5 좌표: (1,1) mvT의 가중치:1 mvL의 가중치:1 mvC의 가중치:6 좌표: (2,1) mvT의 가중치:1 mvR의 가중치:1 mvC의 가중치:6 좌표: (3,1) mvT의 가중치:2 mvR의 가중치:1 mvC의 가중치:5
좌표: (0,2) mvB의 가중치:2 mvL의 가중치:1 mvC의 가중치:5 좌표: (1,2) mvB의 가중치:1 mvL의 가중치:1 mvC의 가중치:6 좌표: (2,2) mvB의 가중치:1 mvR의 가중치:1 mvC의 가중치:6 좌표: (3,2) mvB의 가중치:2 mvR의 가중치:1 mvC의 가중치:5
좌표: (0,3) mvB의 가중치:2 mvL의 가중치:2 mvC의 가중치:4 좌표: (1,3) mvB의 가중치:1 mvL의 가중치:2 mvC의 가중치:5 좌표: (2,3) mvB의 가중치:1 mvR의 가중치:2 mvC의 가중치:5 좌표: (3,3) mvB의 가중치:2 mvR의 가중치:2 mvC의 가중치:4
상기의 가중치를 적용하여 각 픽셀별로 계산하는 가중치 평균 움직임 벡터를 수학식으로 표현하면 하기의 수학식 1과 같다.
mv(i,j) = (weightC(i,j)*mvc + weightT(i,j)*mvT + weightB(i,j)*mvB + weightL(i,j)*mvL + weightR(i,j)*mvR)/8
상기 수학식 1에서 mvC, mvT, mvB, mvL, mvR은 각각 가운데, 위, 아래, 왼쪽, 오른쪽에 위치한 블록의 움직임 벡터를 의미하고, weightC, weightT, weightB, weightL, weightR는 각각 mvC, mvT, mvB, mvL, mvR에 적용되는 가중치를 의미한다. 각 픽셀이 참조하지 않는 매크로 블록의 움직임 벡터에 적용되는 가중치는 0으로 계산한다.
한편, 본 발명에서 제안하는 P-OBEC 방법은 손실 은폐를 위해 손상된 프레임 의 픽셀의 복원에 다수의 픽셀을 이용하는 방법으로써 상기에서 설명한 MV-OBEC와 동일한 가중치를 사용하게 된다. 하지만 MV-OBEC방법과는 다르게 가중치를 움직임 벡터에 적용하는 것이 아니라 손상된 프레임의 픽셀에 적용하는 방법이다. 이 때 손실 은폐에 사용되는 픽셀은 해당 픽셀을 포함하는 4x4 블록의 움직임 벡터를 이용해 추출된다. 상기의 방법을 수학식으로 표현하면 하기의 수학식 2와 같다.
pixel(i,j) = (weightC(i,j)*pixelC(i+mvx,j+mvy) + weightT(i,j)*pixelT(i+mvx,j+mvy) + weightB(i,j)*pixelB(i+mvx,j+mvy)+ weightL(i,j)*pixelL(i+mvx,j+mvy) + weightR(i,j)*pixelR(i+mvx, j+mvy)) / 8
상기 수학식 2에서 상기 pixel(i,j)는 상기 가중치 평균 픽셀이고, 상기 weightC(i,j)는 이전에 입력된 프레임에서 복원할 매크로 블록과 같은 위치의 참조 매크로 블록의 (i,j)좌표 픽셀에 적용되는 가중치 값이고, weightT(i,j)는 위쪽 참조 매크로 블록의 (i,j)좌표 픽셀에 적용되는 가중치 값이고, weightB(i,j),는 아래쪽 참조 매크로 블록의 (i,j)좌표의 픽셀에 적용되는 가중치 값이고, weightL(i,j)은 왼쪽 참조 매크로 블록의 (i,j)좌표의 픽셀에 반영되는 가중치 값이고, weightR(i,j)은 오른쪽 참조 매크로 블록의 픽셀에 적용되는 가중치 값이고, pixelC(i,j)는 이전에 입력된 프레임에서 복원할 매크로 블록과 같은 위치의 참조 매크로 블록의 (i,j)좌표 픽셀값이고, pixelT(i,j)는 위쪽 참조 매크로 블록의 (i,j)좌표 픽셀값이고, pixelB(i,j)는 아래쪽 참조 매크로 블록의 (i,j)좌표 픽셀값이고, pixelL(i,j)은 왼쪽 참조 매크로 블록의 (i,j)좌표 픽셀값이고, pixelR(i,j)은 오른쪽 참조 매크로 블록의 (i,j)좌표 픽셀값이며, 상기 i, j는 블록 내 픽셀의 위치를 의미하며, mvx, mvy는 각각 움직임 벡터의 x 성분 및 y 성분을 나타내며 해당하는 픽셀이 위치하는 4x4 블록의 움직임 벡터를 의미하고, 상기 복원할 픽셀이 참조하지 않는 블록의 픽셀값에 적용되는 가중치는 0으로 계산한다.
본 발명에서 사용된 OBEC 방법은 본 발명의 일 실시예처럼 4x4 픽셀 단위의 매크로 블록에 적용이 가능하나, 4x4 픽셀 단위의 매크로 블록에 적용시와 같은 방식을 사용하여 8x8 또는 16x16 픽셀 단위의 매크로 블록에도 적용이 가능하다. 8x8 픽셀 단위의 매크로 블록에 본 발명을 적용하면, 8x8 픽셀 단위의 매크로 블록은 4x4 픽셀 단위의 매크로 블록에 비해 픽셀 수가 4배 많기 때문에, 4x4 픽셀 단위의 매크로 블록에서 한 픽셀에 적용되던 가중치를 8x8 픽셀 단위의 매크로 블록 에서 대응되는 위치의 네 개의 픽셀에 적용하여 본 발명을 실시할 수 있다. 또한 16x16 픽셀 단위의 매크로 블록도 마찬가지로 4x4 픽셀 단위의 매크로 블록에서 한 픽셀 에 적용되던 가중치를 16x16 픽셀 단위의 매크로 블록 상에서 대응되는 위치의 16개의 픽셀에 적용하여 본 발명을 실시할 수 있다. 또한 8x8 또는 16x16 픽셀 단위의 매크로 블록에 적용할 때 픽셀 수가 늘어난 만큼 가중치를 세분화 하여 적용하는 방법도 사용할 수 있다. 이와 같이 손상된 프레임에 대해 본 발명에서 사용된 OBEC 방법을 적용하여 높은 복원 효율을 얻을 수 있다.
상기 프레임 손실 은폐부(340)는 상기에 설명한 매크로 블록의 복원 방식을 손실된 프레임에 전체적으로 적용하여 모든 매크로 블록을 복원함으로서 손실된 프레임을 대체하는 복원 프레임을 생성한다.
도 6은 본 발명의 다른 실시예에 따른 동영상 복호화시 프레임 손실 은폐 방법의 움직임 벡터 추출을 위한 매크로 블록을 나타내는 예시도이다. 본 발명의 다른 실시예에 따른 프레임 손실 은폐 방법은 이전 프레임의 움직임 벡터를 바로 이용하는 것이 아니라 주변 값과 비교하여 튀는 값을 제거한 후에 남은 움직임 벡터들의 평균치를 사용하여 계산한 새로운 움직임 벡터를 이용하여 손실된 매크로 블록을 복원하는 방법(average filter)이다.
도 6은 본 발명의 다른 실시예에 따른 프레임 손실 은폐 방법이 적용되는 매크로 블록을 보여준다. 본 발명의 다른 실시예에 따른 프레임 손실 은폐 방법은 손실된 매크로 블록의 이전 프레임의 같은 위치에 위치한 매크로 블록과 그 주변 8개의 매크로 블록의 움직임 벡터를 검사하여 평균 움직임 벡터를 계산하는데, 이 때 계산에 사용되는 9개의 움직임 벡터를 서로 비교하여 특정 움직임 벡터가 다른 움직임 벡터보다 미리 설정된 일정량 이상 크거나 작으면 그 움직임 벡터는 평균값 계산에 사용하지 않는다. 따라서 본 발명의 다른 실시예에 따른 프레임 손실 은폐 방법은 일정 수준 이상의 움직임 벡터를 제거함으로써 좀 더 안정적인 복원이 가능하도록 한 방식이다. 본 발명의 다른 실시예에 따른 프레임 손실 은폐 방법은 3x3 매크로 블록 단위에 적용하여 9개의 움직임 벡터를 참조하여 사용가능 하나, 5x5 매크로 블록 단위로 확장하여 25개의 매크로 블록을 참조하여 사용할 수도 있다.
도 7은 본 발명의 일 실시예에 따른 동영상 복호화시 프레임 손실 은폐 동작의 흐름도이다. 도 7을 참조하면, 처음 702단계에서 영상 프레임이 입력되면 704단계로 진행하여 프레임 복호부(310)에서 영상 프레임을 복호한다. 다음 706단계에서 오류 프레임이 발생 하였는지 판단하여 프레임에 오류가 발생하여 프레임이 손실되었으면 708단계로 진행하여 프레임 손실 은폐부(340)에서 이전 프레임을 사용하여 오류가 발생하여 손실된 프레임을 대체하는 복원 프레임을 생성한다. 그 후에 710단계로 진행하여 상기 복원 프레임을 출력한다. 상기 706단계에서 프레임에 오류가 발생하지 않았다면 바로 710단계로 진행하여 해당 프레임을 출력한다. 712단계에서 동작이 종료될지 판단하여 종료된다면 모든 동작을 종료하게 되고, 종료되지 않으면 702단계로 다시 진행하여 상기 동작을 반복 수행하게 된다.
도 8은 본 발명의 일 실시예에 따른 프레임 손실 은폐 방법을 사용한 동영상 복호화시 프레임 에러 발생 이후에 출력되는 프레임들의 예시도이다. 도 8은 본 발명에서 제안한 방법을 이용하여 프레임 손실 이후에 에러를 복원한 영상으로 도 1과 비교하여 높은 복원효율을 보이며, 도 2의 프레임 프리즈 기법과 비교하여도 우수한 성능을 나타냄을 알 수 있다.
상기와 같이 본 발명의 일 실시예에 따른 동영상 복호화시 프레임 손실 은폐 방법 및 장치의 동작 및 구성이 이루어질 수 있으며, 한편 상기한 본 발명의 설명에서는 구체적인 실시예에 관해 설명하였으나 여러 가지 변형이 본 발명의 범위를 벗어나지 않고 실시될 수 있다. 따라서 본 발명의 범위는 설명된 실시예에 의하여 정할 것이 아니고 청구범위와 청구범위의 균등한 것에 의하여 정하여져야 할 것이다.
본 발명은 동영상의 오류가 발생하여 프레임 단위로 손실이 발생할 경우 동영상의 손실을 보다 효율적으로 복원할 수 있으며, 또한 이후에 전송되는 프레임으로 오류가 전파되는 것을 막을 수 있다.

Claims (17)

  1. 동영상 복호화시 프레임 손실 은폐 방법에 있어서,
    동영상 복호화시 입력된 프레임의 손실을 확인하는 과정과,
    상기 입력된 프레임에 손실이 발생한 경우 상기 입력된 프레임을 매크로 블록 단위로 복원하기 위해 이전에 입력된 프레임에서 상기 복원할 매크로 블록과 같은 위치의 매크로 블록을 참조 매크로 블록으로 설정하고 상기 참조 매크로 블록의 움직임 벡터를 검사하는 과정과,
    상기 복원할 매크로 블록을 수평축과 수직축으로 분할되는 사분면형태로 판단하여, 각각의 복원할 픽셀별로 상기 복원할 픽셀이 위치한 사분면에 인접하는 주변 매크로 블록의 이전에 입력된 프레임에서 같은 위치의 매크로 블록을 참조 매크로 블록으로 설정하고 상기 참조 매크로 블록들의 움직임 벡터를 검사하는 과정과,
    상기 참조 매크로 블록들의 각각의 움직임 벡터들에 미리 설정된 가중치를 적용하여 하나의 가중치 평균 움직임 벡터를 계산하는 과정과,
    상기 가중치 평균 움직임 벡터를 사용하여 손실된 매크로 블록을 복원하는 과정과,
    상기 손실된 프레임의 모든 매크로 블록을 복원하여 상기 손실된 프레임을 대체하는 복원 프레임을 생성하는 과정을 포함함을 특징으로 하는 프레임 손실 은폐 방법.
  2. 제 1항에 있어서, 상기 가중치 평균 움직임 벡터는 하기 수학식 3을 사용하여 계산함을 특징으로 하는 프레임 손실 은폐 방법.
    mv(i,j) = (weightC(i,j)*mvc + weightT(i,j)*mvT + weightB(i,j)*mvB + weightL(i,j)*mvL + weightR(i,j)*mvR)/8
    상기 수학식 3에서 상기 mv(i,j)는 상기 가중치 평균 움직임 벡터를 의미하고, 상기 i,j는 블록 내 픽셀의 위치를 의미하며, mvC, mvT, mvB, mvL, mvR은 각각 가운데, 위, 아래, 왼쪽 그리고 오른쪽에 위치한 블록의 움직임 벡터를 의미하고, 상기 weightC, weightT, weightB, weightL, weightR은 각각 상기 mvC, mvT, mvB, mvL, mvR에 적용되는 가중치를 의미하고, 상기 복원할 픽셀이 참조하지 않는 블록의 움직임 벡터에 적용되는 가중치는 0으로 계산함.
  3. 동영상 복호화시 프레임 손실 은폐 방법에 있어서,
    동영상 복호화시 입력된 프레임의 손실을 확인하는 과정과,
    상기 입력된 프레임에 손실이 발생한 경우 상기 입력된 프레임을 매크로 블록 단위로 복원하기 위해 이전에 입력된 프레임에서 상기 복원할 매크로 블록과 같은 위치의 매크로 블록을 참조 매크로 블록으로 설정하고 상기 참조 매크로 블록의 움직임 벡터를 검사하는 과정과,
    매크로 블록을 수평축과 수직축으로 분할되는 사분면형태로 판단하여, 각각의 복원할 픽셀별로 상기 복원할 픽셀이 위치한 사분면에 인접하는 주변 매크로 블록의 이전에 입력된 프레임에서 같은 위치의 매크로 블록을 참조 매크로 블록으로 설정하고 상기 참조 매크로 블록들의 움직임 벡터를 검사하는 과정과,
    상기 참조 매크로 블록들의 각각의 움직임 벡터의 수평축 성분과 수직축 성분에 상기 복원할 픽셀의 수평축 좌표값과 수직축 좌표값을 각각 더하여 각각의 참조 픽셀 값들을 추출하는 과정과,
    상기 참조 픽셀 값들에 미리 설정된 가중치를 적용하여 하나의 가중치 평균 픽셀을 계산하는 과정과,
    상기 가중치 평균 픽셀을 사용하여 손실된 매크로 블록을 복원하는 과정과,
    상기 손실된 프레임의 모든 매크로 블록을 복원하여 상기 손실된 프레임을 대체하는 복원 프레임을 생성하는 과정을 포함함을 특징으로 하는 프레임 손실 은폐 방법.
  4. 제 3항에 있어서, 상기 가중치 평균 픽셀은 하기 수학식 4를 사용하여 계산함을 특징으로 하는 프레임 손실 은폐 방법.
    pixel(i,j) = (weightC(i,j)*pixelC(i+mvx,j+mvy) + weightT(i,j)*pixelT(i+mvx,j+mvy) + weightB(i,j)*pixelB(i+mvx,j+mvy)+ weightL(i,j)*pixelL(i+mvx,j+mvy) + weightR(i,j)*pixelR(i+mvx, j+mvy)) / 8
    상기 수학식 4에서 상기 pixel(i,j)는 상기 가중치 평균 픽셀이고, 상기 weightC(i,j)는 이전에 입력된 프레임에서 복원할 매크로 블록과 같은 위치의 참조 매크로 블록의 (i,j)좌표 픽셀에 적용되는 가중치 값이고, weightT(i,j)는 위쪽 참조 매크로 블록의 (i,j)좌표 픽셀에 적용되는 가중치 값이고, weightB(i,j),는 아래쪽 참조 매크로 블록의 (i,j)좌표의 픽셀에 적용되는 가중치 값이고, weightL(i,j)은 왼쪽 참조 매크로 블록의 (i,j)좌표의 픽셀에 반영되는 가중치 값이고, weightR(i,j)은 오른쪽 참조 매크로 블록의 픽셀에 적용되는 가중치 값이고, pixelC(i,j)는 이전에 입력된 프레임에서 복원할 매크로 블록과 같은 위치의 참조 매크로 블록의 (i,j)좌표 픽셀값이고, pixelT(i,j)는 위쪽 참조 매크로 블록의 (i,j)좌표 픽셀값이고, pixelB(i,j)는 아래쪽 참조 매크로 블록의 (i,j)좌표 픽셀값이고, pixelL(i,j)은 왼쪽 참조 매크로 블록의 (i,j)좌표 픽셀값이고, pixelR(i,j)은 오른쪽 참조 매크로 블록의 (i,j)좌표 픽셀값이며, 상기 i, j는 블록 내 픽셀의 위치를 의미하며, mvx, mvy는 각각 움직임 벡터의 x 성분 및 y 성분을 나타내며 해당하는 픽셀이 위치하는 4x4 블록의 움직임 벡터를 의미하고, 상기 복원할 픽셀이 참조하지 않는 블록의 픽셀값에 적용되는 가중치는 0으로 계산한다.
  5. 제 1항 또는 3항에 있어서, 상기 입력된 프레임에 손실이 발생하지 않은 경우 상기 입력된 프레임을 그대로 출력하는 과정을 더 포함함을 특징으로 하는 프레임 손실 은폐 방법.
  6. 제 1항에 있어서, 상기 매크로 블록이 4x4 픽셀 단위로 구성된 블록이면 상기 복원할 블록의 각 픽셀의 좌표별로 참조하는 가중치는 하기 표 2와 같음을 특징으로 하는 프레임 손실 은폐 방법.
    좌표: (0,0) mvT의 가중치:2 mvL의 가중치:2 mvC의 가중치:4 좌표: (1,0) mvT의 가중치:1 mvL의 가중치:2 mvC의 가중치:5 좌표: (2,0) mvT의 가중치:1 mvR의 가중치:2 mvC의 가중치:5 좌표: (3,0) mvT의 가중치:2 mvR의 가중치:2 mvC의 가중치:4 좌표: (0,1) mvT의 가중치:2 mvL의 가중치:1 mvC의 가중치:5 좌표: (1,1) mvT의 가중치:1 mvL의 가중치:1 mvC의 가중치:6 좌표: (2,1) mvT의 가중치:1 mvR의 가중치:1 mvC의 가중치:6 좌표: (3,1) mvT의 가중치:2 mvR의 가중치:1 mvC의 가중치:5 좌표: (0,2) mvB의 가중치:2 mvL의 가중치:1 mvC의 가중치:5 좌표: (1,2) mvB의 가중치:1 mvL의 가중치:1 mvC의 가중치:6 좌표: (2,2) mvB의 가중치:1 mvR의 가중치:1 mvC의 가중치:6 좌표: (3,2) mvB의 가중치:2 mvR의 가중치:1 mvC의 가중치:5 좌표: (0,3) mvB의 가중치:2 mvL의 가중치:2 mvC의 가중치:4 좌표: (1,3) mvB의 가중치:1 mvL의 가중치:2 mvC의 가중치:5 좌표: (2,3) mvB의 가중치:1 mvR의 가중치:2 mvC의 가중치:5 좌표: (3,3) mvB의 가중치:2 mvR의 가중치:2 mvC의 가중치:4
    상기 표 2에서 mvC, mvT, mvB, mvL, mvR은 각각 가운데, 위, 아래, 왼쪽 그리고 오른쪽에 위치한 참조 매크로 블록의 움직임 벡터를 의미함.
  7. 제 6항에 있어서, 상기 매크로 블록이 8x8 픽셀 단위로 구성된 블록이면,
    상기 4x4 픽셀 단위의 블록에서 한 픽셀에 적용한 가중치를, 8x8 픽셀 단위의 블록 내에서 대응되는 위치의 네 개의 픽셀에 적용하는 것을 특징으로 하는 프레임 손실 은폐 방법.
  8. 제 6항에 있어서, 상기 매크로 블록이 16x16 픽셀 단위로 구성된 블록이면,
    상기 4x4 픽셀 단위의 블록에서 한 픽셀에 적용한 가중치를, 16x16 픽셀 단 위의 블록내의 대응되는 위치의 16 개의 픽셀에 적용하는 것을 특징으로 하는 프레임 손실 은폐 방법.
  9. 동영상 복호화시 프레임 손실 은폐 장치에 있어서,
    입력받은 부호화된 프레임의 비트 스트림을 복호화하고 복호화된 프레임에 대한 손실 발생 여부를 확인하는 프레임 복호부와,
    상기 프레임 복호부로부터 받은 이전에 복호화된 이전 프레임과 현재 복호화된 현재 프레임을 일시 저장하는 버퍼부와,
    프레임 손실 은폐 기능을 수행시의 각 구성을 제어하는 제어부와,
    입력받은 영상 프레임의 손실시 이전에 정상적으로 수신된 프레임을 이용하여 원본 영상과 유사한 복원 프레임을 생성하는 프레임 손실 은폐부와,
    상기 버퍼부로부터 손실 없이 입력된 영상 프레임을 받아서 그대로 출력하거나, 입력된 프레임에 손실 발생시 상기 프레임 손실 은폐부에서 생성한 복원 프레임을 출력하는 출력부를 포함하며,
    상기 프레임 손실 은폐부는 상기 입력된 프레임에 손실이 발생한 경우 상기 입력된 프레임을 매크로 블록 단위로 복원하기 위해 이전에 입력된 프레임에서 상기 복원할 매크로 블록과 같은 위치의 매크로 블록의 움직임 벡터를 검사하며, 상기 복원할 매크로 블록을 수평축과 수직축으로 분할되는 사분면형태로 판단하여, 각각의 복원할 픽셀별로 상기 복원할 픽셀이 위치한 사분면에 인접하는 주변 매크로 블록의 이전에 입력된 프레임에서 같은 위치의 매크로 블록을 참조 매크로 블록으로 설정하여 움직임 벡터를 검사하며, 상기 검사한 각각의 움직임 벡터들에 미리 설정된 가중치를 적용하여 하나의 가중치 평균 움직임 벡터를 계산하며, 상기 가중치 평균 움직임 벡터를 사용하여 손실된 매크로 블록을 복원하며, 상기 손실된 프레임의 모든 매크로 블록을 복원하여 상기 손실된 프레임을 대체하는 복원 프레임을 생성함을 특징으로 하는 프레임 손실 은폐 장치.
  10. 제 9항에 있어서, 상기 버퍼부는 상기 프레임 복호부로부터 수신되는 상기 현재 프레임을 저장하는 현재 프레임 저장부와, 상기 이전 프레임들을 저장하는 이전 프레임 저장부를 포함함을 특징으로 하는 프레임 손실 은폐 장치.
  11. 제 9항에 있어서, 상기 제어부는 프레임이 정상적으로 수신된 경우에는 수신된 프레임을 바로 출력하도록 제어함을 특징으로 하는 프레임 손실 은폐 장치.
  12. 제 1항 또는 제3항에 있어서, 참조 매크로 블록의 움직임 벡터를 검사하는 과정은,
    상기 참조 매크로 블록 및 상기 참조 매크로 블록의 주변 매크로 블록들의 들의 각 움직임 벡터를 검사하는 과정과,
    상기 검사한 움직임 벡터들을 서로 비교하여 특정 움직임 벡터가 다른 움직임 벡터들보다 미리 설정된 수준 이상 크거나 작으면 상기 특정 움직임 벡터의 값은 참조하지 않도록 설정하는 과정과,
    상기 검사한 각각의 움직임 벡터를 참조하여 하나의 평균 움직임 벡터를 계산하는 과정을 포함함을 특징으로 하는 프레임 손실 은폐 방법.
  13. 제 12항에 있어서, 상기 참조 매크로 블록의 주변 매크로 블록들은, 상기 참조 매크로 블록을 중심으로 3x3 사각형 모양에서 상기 참조 매크로 블록 주변의 8개의 매크로 블록임을 특징으로 하는 프레임 손실 은폐 방법.
  14. 제 12항에 있어서, 상기 참조 매크로 블록의 주변 매크로 블록들은, 상기 참조 매크로 블록을 중심으로 5x5 사각형 모양에서 상기 참조 매크로 블록 주변의 25개의 매크로 블록임을 특징으로 하는 프레임 손실 은폐 방법.
  15. 제 3항에 있어서, 상기 매크로 블록이 4x4 픽셀 단위로 구성된 블록이면 상기 복원할 블록의 각 픽셀의 좌표별로 참조하는 가중치는 하기 표 3과 같음을 특징으로 하는 프레임 손실 은폐 방법.
    좌표: (0,0) PixelT의 가중치:2 PixelL의 가중치:2 PixelC의 가중치:4 좌표: (1,0) PixelT의 가중치:1 PixelL의 가중치:2 PixelC의 가중치:5 좌표: (2,0) PixelT의 가중치:1 PixelR의 가중치:2 PixelC의 가중치:5 좌표: (3,0) PixelT의 가중치:2 PixelR의 가중치:2 PixelC의 가중치:4 좌표: (0,1) PixelT의 가중치:2 PixelL의 가중치:1 PixelC의 가중치:5 좌표: (1,1) PixelT의 가중치:1 PixelL의 가중치:1 PixelC의 가중치:6 좌표: (2,1) PixelT의 가중치:1 PixelR의 가중치:1 PixelC의 가중치:6 좌표: (3,1) PixelT의 가중치:2 PixelR의 가중치:1 PixelC의 가중치:5 좌표: (0,2) PixelB의 가중치:2 PixelL의 가중치:1 PixelC의 가중치:5 좌표: (1,2) PixelB의 가중치:1 PixelL의 가중치:1 PixelC의 가중치:6 좌표: (2,2) PixelB의 가중치:1 PixelR의 가중치:1 PixelC의 가중치:6 좌표: (3,2) PixelB의 가중치:2 PixelR의 가중치:1 PixelC의 가중치:5 좌표: (0,3) PixelB의 가중치:2 PixelL의 가중치:2 PixelC의 가중치:4 좌표: (1,3) PixelB의 가중치:1 PixelL의 가중치:2 PixelC의 가중치:5 좌표: (2,3) PixelB의 가중치:1 PixelR의 가중치:2 PixelC의 가중치:5 좌표: (3,3) PixelB의 가중치:2 PixelR의 가중치:2 PixelC의 가중치:4
    상기 표 3에서 pixelC, pixelT, pixelB, pixelL, pixelR은 각각 가운데, 위, 아래, 왼쪽 그리고 오른쪽에 위치한 참조 매크로 블록의 픽셀을 의미함.
  16. 제 15항에 있어서, 상기 매크로 블록이 8x8 픽셀 단위로 구성된 블록이면,
    상기 4x4 픽셀 단위의 블록에서 한 픽셀에 적용한 가중치를, 8x8 픽셀 단위의 블록 내에서 대응되는 위치의 네 개의 픽셀에 적용하는 것을 특징으로 하는 프레임 손실 은폐 방법.
  17. 제 16항에 있어서, 상기 매크로 블록이 16x16 픽셀 단위로 구성된 블록이면,
    상기 4x4 픽셀 단위의 블록에서 한 픽셀에 적용한 가중치를, 16x16 픽셀 단위의 블록내의 대응되는 위치의 16 개의 픽셀에 적용하는 것을 특징으로 하는 프레임 손실 은폐 방법.
KR1020070011554A 2007-02-05 2007-02-05 동영상 복호화시 프레임 손실 은폐 방법 및 장치 KR100860689B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070011554A KR100860689B1 (ko) 2007-02-05 2007-02-05 동영상 복호화시 프레임 손실 은폐 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070011554A KR100860689B1 (ko) 2007-02-05 2007-02-05 동영상 복호화시 프레임 손실 은폐 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20080073047A KR20080073047A (ko) 2008-08-08
KR100860689B1 true KR100860689B1 (ko) 2008-09-26

Family

ID=39882979

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070011554A KR100860689B1 (ko) 2007-02-05 2007-02-05 동영상 복호화시 프레임 손실 은폐 방법 및 장치

Country Status (1)

Country Link
KR (1) KR100860689B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018221838A1 (ko) * 2017-05-31 2018-12-06 삼성전자 주식회사 처리 장치들 및 그 제어 방법들

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010010753A (ko) * 1999-07-22 2001-02-15 구자홍 엠펙­2 압축복원시스템에서의 오류 은폐방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010010753A (ko) * 1999-07-22 2001-02-15 구자홍 엠펙­2 압축복원시스템에서의 오류 은폐방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018221838A1 (ko) * 2017-05-31 2018-12-06 삼성전자 주식회사 처리 장치들 및 그 제어 방법들
CN110612725A (zh) * 2017-05-31 2019-12-24 三星电子株式会社 处理设备及其控制方法

Also Published As

Publication number Publication date
KR20080073047A (ko) 2008-08-08

Similar Documents

Publication Publication Date Title
JP4373702B2 (ja) 動画像符号化装置、動画像復号化装置、動画像符号化方法、動画像復号化方法、動画像符号化プログラム及び動画像復号化プログラム
KR100736041B1 (ko) 에러 은닉 방법 및 장치
TWI442777B (zh) 空間性錯誤隱藏方法
KR100301833B1 (ko) 오류은폐방법
JP4703449B2 (ja) 符号化方法
US20060062304A1 (en) Apparatus and method for error concealment
US20090168883A1 (en) Configurable performance motion estimation for video encoding
KR20060109248A (ko) 영상신호의 엔코딩/디코딩시에 내부모드 블록의 정보를처리하는 방법 및 장치
US20090167775A1 (en) Motion estimation compatible with multiple standards
JP4173897B2 (ja) 画像補正装置および画像補正方法
KR100640498B1 (ko) 프레임의 오류 은닉 장치 및 방법
JPH06311502A (ja) 動画像伝送装置
KR100587274B1 (ko) 엠펙­2 압축복원시스템에서의 오류 은폐방법
KR100860689B1 (ko) 동영상 복호화시 프레임 손실 은폐 방법 및 장치
Yılmaz et al. Error detection and concealment for video transmission using information hiding
JPWO2009048112A1 (ja) 動画像復号器、動画像復号方法及び動画像復号プログラム
KR100856215B1 (ko) 동영상 복호화시 프레임 손실의 은폐 방법 및 장치
JP2007325206A (ja) 動画像復号装置及び動画像復号方法
JP4133581B2 (ja) テロップ合成装置、テロップ合成方法及びテロップ合成プログラム
Vetro et al. True motion vectors for robust video transmission
KR20070090494A (ko) 평균 움직임 벡터를 이용한 인터 프레임 에러 은닉 장치 및방법
Qian et al. An effective GM/LM-based video error concealment
KR20030065694A (ko) 시공간적 정보를 이용한 인트라 프레임의 에러 은닉방법
KR20000067180A (ko) 영상 복원 장치 및 이를 이루기 위한 오류 은닉 방법
KR100388802B1 (ko) 오류은폐장치및방법

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: 20120830

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20130829

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140828

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150828

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160830

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee