KR100239495B1 - 손상된 비트스트림 데이터의 디코딩방법 - Google Patents
손상된 비트스트림 데이터의 디코딩방법 Download PDFInfo
- Publication number
- KR100239495B1 KR100239495B1 KR1019970008975A KR19970008975A KR100239495B1 KR 100239495 B1 KR100239495 B1 KR 100239495B1 KR 1019970008975 A KR1019970008975 A KR 1019970008975A KR 19970008975 A KR19970008975 A KR 19970008975A KR 100239495 B1 KR100239495 B1 KR 100239495B1
- Authority
- KR
- South Korea
- Prior art keywords
- block
- display
- value
- image
- identifier
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
-
- 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/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
- H04N19/895—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 in combination with error concealment
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
손상된 비트스트림데이타를 디코딩하는 방법이 제공된다. 이 방법은 다수개의 심볼을 갖는 비트스트림을 디코딩하여 다수개의 이미지블록을 갖는 이미지 스트림을 제공하는 단계와; 비가용 심볼을 만나면 한 장소의 공간적위치를 갖고있는 제 1 식별자로이미지블록을 표시해 놓는 단계와; 재동기 코드가 디코딩될 때 까지 상기 비트스트림을 제쳐두는 단계와; 제 2 식별자로 재동기 코드와 관련된 이미지 블록을 표시해 놓는 단계와; 상기 이미지 스트림을 디코딩하여 다수개의 디스플레이블록을 갖는 다수개의 디스플레이 프레임을 제공하는 단계와; 한 디스플레이 프레임의 디스플레이 블록들을 비교하여 이전의 한 디스플레이 프레임의 디스플레이 블록들간의 유사성을 찾아내어 에러가 있는 디스플레이 블록을 결정하는 단계와; 에러가 있는 디스플레이 블록을 유사한 공간적 위치에 대응하는 이전 디스플레이 블록으로 대체하는 단계로이루어짐에 그 요지가 있다.
Description
본 발명은 오디오 및 비디오데이타의 데이터 압축에 관한 것으로서, 특히 손상된 압축된 비트스트림 데이터를 검출하고 수리하는 방법에 관한 것이다.
데이터 압축은 제한된 대역폭의 채널에 걸친 전송시 요구되는 데이터의 양을 줄이기 위해 자주 사용한다.
자주 압축되는 데이터로는 오디오 및 비디오데이타가 있다. 데이터 압축의 최종목적은 압축된 데이터를 소위 말하는 실시간 동작속도로 풀어야 하는데 있다.
중급질(Medium Quality) 및 중급의 비트속도(Medium Bit Rate) 비디오 및 오디오 압축용의 ISO/IEC(international organigation for standardigation/ international electrotechnical commission)표준의 하나인 MPEG(Moving Picture Experts Group)가 데이터 압축타입의 일례이다.
MPEG비디오압축은 비디오 프레임내의 공간적인 리던던시(Redundancy)와 비디오 프레임간의 시간적 리던던시를 제거한다.
이산 코사인 변환(Discrete Cosine Transform: DCT)에 기초한 압축이 공간적 리던던시를 줄이기 위해 사용된다.
움직임 보상은 시간적 리던던시를 처리하기 위하여 사용된다. 비디오스트림내의 영상은 보통 작은 시간간격 사이에서는 크게 변하지 않는다.
움직임 보상이란는 것은 시간적으로 근접해 있는 다른 비디오 프레임에 근거하여 비디오 프레임을 부호화하는 것이다.
비디오 스트림의 디코딩시 자주발생하는 문제는 동기정보를 잃어버린다는 것이다.
동기정보는 공간적, 시간적으로 비디오열내의 임의의 일 지점을 조사하여 그 점의 위치를 결정하는 데이터를 포함하고 있다.
또한, 현존하는 에러검출 및 정정방식으로는 검출이나 정정을 할 수 없는 에러가 전송중에 자주발생한다.
예를 들어 에러가 발생하면, 중요한 동기정보를 잃게 되어 일반적인 디코더가 잘 작동할 수 없게된다.
따라서, 오디오/비디오데이타의 높은 에러발생율의 전송에 아주 적합한 손상된 비트스트림 디코딩방법을 제공하는 것이 요구된다.
오디오/비디오 데이타전송중 에러가 발생하여도 회의를 계속할 수 있다면 화상 및 전화회의에 있어서, 괄목할 만한 발전이 있을 것이다.
더구나 전화선과 같은 손상된 전송채널의 에러를 결정하고 그 에러로부터 복구할 수 있는 능력은 화상회의 시스템 분야를 크게 뒷받침 할 수 있을 것이다.
본 발명의 목적은 에러가 있는 데이터의 위치를 결정하는 방법을 제공하는데있다.
본 발명의 다른 목적은 에러가 있는 데이터를 시각적으로 유사한 데이터와 교체하는 방법을 제공하는데 있다.
본 발명의 또 다른 목적은 정확한 데이터를 얻을 때까지 복구된 영역을 좋은 상태로 보존하는 방법을 제공함에 있다.
도 1은 비디오 엔코딩 기술에서 일반적으로 알려져 있는 비디오엔코더의 블록 구성을 보여주는 도면
도 2는 본 발명의 실시예에 따른 손상된 압축 비트스트림 데이터용 디코더의 블록 구성을 보여주는 도면
도 3은 도 2에서의 호프만(Huffman)에러핸들러의 상세 블록구성을 보여주는 도면
도 4는 도 2에서의 에러수리부의 상세 블록구성을 보여주는 도면
도 5는 본 발명에 따른 에러수리의 동작을 나타낸 플로우챠트
* 도면의 주요부분에대한 부호의 설명
210 : 호프만 디코더 215 : 호프만에러 핸들러
220 : 역양자화기 225 : 양자값 수리부
230 : DCT부 235 : DCT값 수리부
238 : 합산부 240 : 모션벡터부
245 : 모션벡터값 수리부 250 : 체크부
260 : 에러수리부 270 : yuv/RGB컨버터
상기 목적을 달성하기 위한 본 발명의 손상된 비트스트림 데이터 디코딩방법의 특징은 다수개의 심볼이 있는 비트스트림 데이터를 디코딩하여 다수개의 이미지 블록(Image Block)이 있는 이미지 스트림을 제공하는 단계와, 비가용 심볼(Invalid Symbol)을 만나면 한 장소에 대한 공간적 위치를 갖는 제1식별자로 이미지 블록을 마킹(Marking)하는 단계와, 재 동기코드가 복호될 때까지 상기 비트스트림 데이터를 제껴두는 단계와, 재 동기코드와 관련된 이미지 블록을 제 2 식별자로 마킹하는단계와, 상기 이미지 스트림을 디코딩하여 다수개의 디스플레이블록을 갖고 있는 다수개의 디스플레이프레임을 제공하는 단계와, 한 디스플레이 프레임의 디스플레이 블록과 디스플레이 프레임의 디스플레이 블록의 유사성을 비교하여 에러가 있는 디스플레입 블록을 결정하는 단계와, 상기 에러가 있는 디스플레이 블록을 유사한 공간 위치에 대응되는 이전 디스플레이블록과 대체하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 한 관점에 따르면, 상기 방법은 제 1 식별자(the first identifier)의 공간적 위치에 대응하는 영역내에 있는 디스플레이 블록들을 비교하는 단계를 포함한다.
만약, 상기 제 1 식별자의 공간적 위치에 대응하는 영역내에 있는 디스플레이 블록들이 유사한 데이터를 포함하고 있지 않으면, 디스플레이 블록의 에러를 한 디스플레이 프레임내에서 찾을 수 있다.
본 발명의 관점에서 상기 방법은 교체된 블록의 블록에지(Block Edge)를 필터링하여 교체된 블록과 교체되지 않은 블록사이의 데이타를 부드럽게 전송하는 단계를 포함한다. 이런 방벙으로 본 발명은 에러가 있는 데이터를 시각적으로 유사한 데이터와 대체하는 방법을 제공한다.
에러가 있는 블록데이타를 결정하고, 에러가 있는 데이터를 에러가 없는 이전의 좋은 데이터와 교체하고, 에러가 없는 좋은 양질의 데이터와 교체된 데이터간의 경과를 좋게하며, 수리된 영역이 새로운 가치있는 데이타로 채워질 때까지 수리된 영역을 그대로 보존하는 손상된 비트스트림 데이터를 디코딩하는 방법이 제공된다.
본 발명에 따른 손상된 비트스트림 데이터를 디코딩하는 방법에 대하여 본 발명의 실시예를 전반적으로 보여주는 도면을 참조하여 설명하기로 한다.
도 1은 비디오 엔코딩 기술에서 일반적으로 알려져 있는 비디오엔코더의 블록 다이어그램을 나타낸 것이다.
먼저, 도 1을 참조하여 그 구성을 살펴보면, RGB컨버터(110), 적분기(115), DCT부(120), 양자화기(130), 호프만 엔코더(140), 데이터 압축기(150), 역양자화기(170) 및 프레임 재구성 및 움직임 추정부(160)로 구성된다.
상기 구성에 대한 동작을 보면, 라인(108)상의 R, G, B데이타가 비디오입력 R, G, B컨버터(110)에 제공된다. R, G, B컨버터(110)는 R, G, B데이타를 코드화하여 휘도 및 두 개의 색차성분 y, u, v로 만든다.
이 R, G, B컨버터(110)는 상기 변환된 휘도 및 두 개의 색차성분 y, u, v를 적분기(115)에 라인(112)을 통해 출력한다. 적분기(115)는 프레임 재구성 및 움직임 추정부(160)의 출력과 상기 R, G, B컨버터(110)에서 라인(112)을 통해 출력되는 y,u,v데이타를 적분하여 DCT부(120)로 출력한다.
DCT부(120)는 입력을 양자화기(130)에 제공한다. 양자화기(130)의 출력은 호프만 엔코더(140)와 역양자화기(170)에 입력을 제공한다.
역양자화기(170)의 출력은 프레임 재구성 및 움직임 추정부(160)에 입력을 제공한다. DCT부(120)와 양자화기(130), 역양자화기(170) 및 프레임 재구성 및 움직임 추정부(160)는 MPEG엔코딩을 한다. 이 MPEG엔코딩은 다수개의 디스플레이 프레임을 제공하는데, 이 각 디스플레이 프레임은 다수개의 디스플레이 블록을 가지고있다.
H261과 H263표준규격과 같은 다른 비디오 엔코딩기술도 같은 방법으로 엔코딩된다. H261과 H263표준은 화상전화회의를 구현하는데 사용된다.
호프만 엔코더(140)의 일례로 양자화기(130)의 출력을 입력으로하여 MPEG엔코드된 데이터를 호프만 엔코드한다. 호프만 엔코더(140)의 출력은 데이터 압축기(150)에 입력을 제공한다.
데이터 압축기(150)는 호프만엔코드된 데이터를 압축하여 라인(155)를 통하여 압축된 비트스트림 데이터를 전송한다.
도 2는 본 발명에 따른 손상된 압축 비트스트림데이타를 디코딩하기 위한 비디오 엔코더(20)의 일 실시예를 보인 것이다.
도 2의 구성을 살펴보면, 호프만디코더(210), 호프만 에러핸들러(215), 역양자화기(220), 양자값 수리부(225), 역DCT부(230), DCT값 수리부(235), 합산부(238), 모션벡터부(240), 모션벡터값 수리부(245), 체크부(250), 에러수리부(260) 및 YUV/RGB컨버터(270)로 구성된다.
상기 구성의 동작을 보면, 도 1의 라인(155)를 통해 출력되는 상기 비트스트림 데이터는 도 2의 라인(205)를 통해 입력된다. 라인(205)를 통한 비트스트림 데이터는 호프만 디코더(210)에 입력으로 제공한다.
호프만 디코더(210)는 라인(205)을 통해 입력되는 손상되고 코드화된 비트스트림 데이터를 디코딩하여 라인(212)로 디코딩된 이미지 블록들을 출력한다. 상기 비트스트림 데이터의 디코딩중에 비가용 심볼(Invalid Symbol)을 만나면 에러를 검출한다.
에러가 검출되면, 호프만 디코더(210)는 비트스트림 데이타를 라인(214)에 출력하여 호프만 에러핸들러(Huffman Error Handler)(215)에 제공한다. 호프만 에러핸들러(215)는 라인(214)를 통하여 비트스트림 데이터를 수신하여 라인(218)에 출력한다.
라인(218)에서의 출력은 라인(212)에 제공된다. 라인(212)은 다수개의 이미지 블록들을 갖는 하나의 이미지 스트림을 포함하는 디코딩된 호프만 비트스트림을 상기 역양자화기(220)에 제공한다.
도 3은 호프만 에러핸들러(215)의 블록 다이어그램을 나타낸 것으로서, 이미지 블록마커(310)와, 재동기 식별기(320)로 구성된다.
상기 호프만 에러핸들러(215)의 이미지 블록 마커(310)는 비가용 심볼과 관련된 비가용 심볼 식별자(invalid symbol identifier)를 비트스트림내에 설정한다.
상기 비가용 심볼식별자는 비트스트림 내에서의 비가용심볼의 공간적위치를 제공한다. 재동기 식별기(320)는 재동기 코드가 나타날때까지 비트스트림내의 비트들을 제쳐둔다.
여기서, 상기 재동기 코드는 비트스트림의 디코딩을 시작하기 위한 기준으로서, 일단 재동기 코드가 발견되면, 재동기 식별기(320)는 비트스트림내의 재동기 코드의 공간적 위치와 관련된 가용심볼식별자(valid symbol identifier)를 설정한다.
호프만 디코더(210)는 비트스트림을 다시 디코딩하여 라인(214)에 디코딩된 비트스트림의 이미지 블록들을 출력한다.
만약, 디코딩중 에러가 검출되면, 호프만 디코더(210)는 호프만 에러핸들러(215)에 비트스트림 데이터를 전송하여 이미지 스트림 내에서 그 에러의 공간적위치를 식별하도록 한다.
다시 도 2를 참조하면, 라인(212)의 이미지 스트림은 역양자화기(220)에 입력되어 역양자화된다. 역양자화기(220)는 상기 역양자화된 값을 불러내어 양자화된 값을 검사한다.
만약, 역양자화된 값이 기 설정된 양자화값의 범위내에 있으면 역양자화기(220)는 이를 라인(222)에 출력한다.
그러나, 양자화된 값이 기 설정된 양자화값의 범위밖에 있으면 라인(224)에 출력한다. 양자값 수신부(225)는 상기 양자화된 값의 범위밖의 양자화 값을 라인(224)를 통하여 수신하여 양자화된 값의 범위내에 있는 또 다른 양자화된 값으로 대체한다. 일 실시예에서는 양자값 수신부(225)는 최근의 양자화된 값의 범위밖의 것을 기록되어 있는 양자화된 값의 평균값과 대체하여 라인(226)에 출력한다.
라인(226)은 라인(222)와 연결되어 있으며 역 DCT부(230)에 입력을 제공한다. 다른 일실시예에서는 양자값수신부(225)는 프레임 내에서의 에러위치의 X,Y좌표를 기록해 둔다. 그리고 에러의 타입을 명시해 주는 정보도 기록하였다가 차후의 에러보정에 사용될 수도있다.
라인(222)의 이미지 스트림은 역 DCT부(230)에 수신되어 역 DCT된다. 역 DCT부(230)는 DCT값을 불러내어 DCT값을 검사한다. DCT값이 기 설정된 DCT값범위내에 있으면 역DCT부(230)는 그 값을 라인(232)에 출력한다.
만약, DCT값이 기 설정된 DCT값 범위밖에 있으면, 역 DCT부(230)는 라인(234)에 출력한다. DCT값 수신부(235)는 범위밖의 DCT값을 수신하여 DCT값범위내의 또 다른 DCT값과 대체한다.
일 실시예에서는 DCT값 수신부(235)는 최근의 DCT값들의 목록을 기록하여 두었다가 상기 범위밖의 DCT값을 기록된 DCT 값의 평균값과 대체한다. DCT값수신부(235)는 라인(236)에 출력한다.
라인(236)은 라인(232)에 연결되어 합산부(238)에 입력을 제공한다. 합산부(238)는 라인(239)을 통하여 체크부(250)와 모션벡터부(24)에 입력을 제공한다.
다른 일 실시예에서는 DCT값수신부(235)는 프레임내의 에러위치의 X,Y좌표를 기록하여 둔다. 그리고 에러의 타입을 명시하는 정보까지도 기록하여 두었다가 차후의 에러보정에 사용할 수도 있다.
라인(239)를 통한 이미지 스트림은 모션벡터부(240)에 수신되어 종전의 프레임을 재 구축하고 움직임 벡터를 제공한다. 모션벡터부(240)는 움직임 벡터값을 검사한다. 만약 움직임 벡터값이 움직임 벡터값범위내에 있으면 모션벡터부(240)는 그 움직임 벡터값범위내의 움직임 벡터값을 라인(242)으로 출력한다.
그러나, 만약 움직임 벡터값이 움직임 베터값 범위밖에 있으면 모션벡터부(240)는 라인(244)으로 그 범위밖이 움직임 벡터값을 출력한다.
모션벡터값 수리부(245)는 라인(244)을 통해 범위밖의 움직임 벡터값을 수신하여 움직임 벡터값 범위내의 또 다른 움직임 벡터값과 대체된다. 일실시예에서는 모션벡터값 수리부(245)는 최근의 움직임벡터값들을 저장하였다가 범위밖의 움직임 벡터값들을 저장된 움직임벡터들의 평균값과 대체한다.
모션벡터값 수리부(245)는 라인(246)을 통해 상기 대체된 움직임 벡터값들의 평균값을 출력한다. 라인(246)은 라인(242)와 연결되어 합산부(238)에 출력한다. 다른 실시예에서는 모션벡터값 수신부(245)는 프레임내의 에러위치의 x, y좌표를 기록하여둔다. 그리고 에러타입에 대한 정보까지도 기록하였다가 차후에 에러보정시에 사용할 수도 있다.
체크부(250)는 합산부(238)로부터 라인(239)을 통하여 이미지 스트림을 수신하여 이미지 스트림을 두 번 검사한다. 첫째, 체크부(250)는 이미지 스트림내에 저장된 에러를 조사한다. 만약, 이미지 스트림내에 로그된(logged) 에러가 검출되면, 그 검출된 에러를 체크부(250)는 라인(253)을 통해 에러수리부(260)로 출력한다.
상기 에러수리부(260)는 라인(262)에 수신된 이미지 프레임을 출력한다.
둘째, 만약 체크부(250)에서 이미지 스트림에 로그된 에러가 검출되지 않으면, 디코딩된 이미지 프레임 블록과 이전의 디코딩된 이미지프레임의 유사성을 조사한다.
만약, 체크부(250)가 주변영역내에 있는 디코딩된 현재의 이미지블록과 이전의 디코딩된 이미지 블록간의 유사성값이 유사성 문턱값보다 큰 값인 것으로 검출되면, 그 이미지 블록을 확인해 놓고, 또 라인(260)을 통하여 에러수리부(260)로 출력한다.
만약, 주변영역내의 디코딩된 현재 이미지 블록의 유사성값이 이전의 디코딩된 이미지 블록의 유사성 문턱값내에 있으면, 체크부(250)는 상기 현재 이미지 블록의 유사성값을 라인(256)을 통하여 y, u,v / R, G, B컨버터(110)로 출력한다.
상기 y,u,v/R,G,B컨버터(110)는 디스플레이할 수 있도록 이미지 프레임을 변환하여 라인(280)으로 출력한다. 좋은 성능의 엔코더를 사용하여 이미지 프레임의 엔코딩된 비트스트림데이타가 유사성 문턱값내에 있도록 할 수 있으면, 유사성 검사의 확실성을 개선할 수가 있다.
도 4는 에러수신부(260)의 블록 다이어그램이다. 현재 프레임(420)은 다수개의 현재 이미지 블록(421)을 포함한다. 현재 이미지 블록(422)은 에러를 포함하고 있는 것으로 검출되었다. 따라서, 에러수리부(260)는 다수개의 종전 에러블록(411)을 가지고 있는 종전 프레임(410)을 불러낸다.
종전 이미지 블록(412)은 현재 이미지 블록(422)의 공간적 위치에 대응된다. 에러수신부(260)는 현재 이미지 프레임(420)의 현재 이미지 블록(422)을 종전 이미지 프레임의 종전 이미지 블록(412)과 대체한다.
수리된 이미지 프레임(430)은 현재 이미지 프레임(420)의 현재 이미지 블록(421) 과 종전 이미지 프레임(410)의 종전 이미지 블록(412)을 포함한다. 그러므로 에러수신부(260)는 에러가 있는 이미지 블록(422)을 종전 이미지 블록(412)으로 대체하여 라인(262)으로 수신된 이미지 블록(430)을 출력한다.
도 5는 에러수신부(260)의 에러수리흐름도이다. 이 에러수신 흐름도는 510 스텝에서 에러가 있는 블록을 분리시킴으로써 시작된다. 디코딩된 이미지 스트림들간의 유사성을 검사하여 에러가 있는 블록을 분리시킨다.
520스텝에서는 식별자가 에러가 있는 블록들을 표시해 놓은 영역주변을 검색한다. 검색영역내의 어느블록이 채택문턱값 이상으로 나타나면, 530스텝에서 에러가 있는 블록으로 결정한다.
검색영역내의 어느블록이 채택문턱값이하로 나타나면, 그 블록들은 에러가 없는 블록들로 결정한다. 스텝(535)에서는 이미지 블록들을 디스플레이하기 위하여 색변환한다.
530스텝에서 한 이미지 프레임내의 블록이 에러가 있는 데이터로 결정되면, 540스텝에서는 메모리로부터 종전의 디코딩된 이미지프레임을 불러낸다. 즉, 에러있는 블록의 공간적위치에 대응되는 종전의 디코딩된 이미지 프레임의 블록데이타를 메모리로부터 불러낸다.
550스텝에서는 종전에 디코딩된 이미지 프레임의 블록데이타에 대하여 필터링한다. 필터링은 고주파 휘도에너지의 효과를 줄여서 부정확한 에러가 있는 데이터를 대체하지 않고도 이전 이미지의 미세한 상세부분을 감축시킨다.
다음으로 560스텝에서는 에러가 있는 블록에 대응하는 공간적위치를 가지고 있는 필터링된 블록데이타로 에러가 있는 블록의 블록데이타를 대체한다.
스텝(560)에서는 또한 수신된 블록에 관련된 수신식별자를 설정한다. 필터링을 한 번더 대체된 블록데이타의 에지에 대하여 수행하여 정상블록과 대체된 블록과의 경계(edge)를 매끄럽게 한다. 이렇게하여 590스텝에서는 에러수리동작을 완료하는 것이다.
이후의 블록 수리동작에 있어서는, 수리된 블록과 관련된 수리식별자가 있는 수리된 블록은 저주파 프레임간 정보를 제공한다. 수신된 블록들은 에러가 있는 다른 블록의 움직임 보상을 위한 DC 성분(component)을 제공한다.
움직임 보상용 DC성분은 에러가 있는 블록에 제공되는 움직임 보상의 양을 최소화한다. 수리된 블록의 공간적 위치에서 자체내에서 코딩된 블록(intra coded block)을 디코딩하면 수리식별자는 없어진다.
I-프레임(Intra-Frame)은 자주 전송되어지지는 않는데, 왜냐하면 I-프레임은 인터 프레임(Inter- Frame)보다 훨씬 크기 때문이다.
I-프레임은 프레임데이터에 관한 모든 정보를 포함하고 있는 반면, 인터 프레임은 훨씬 적고, 이전 프레임에 추가될 프레임 정보를 더 포함하고 있다.
아직까지의 상세설명은 본 발명에 따른 손상된 비트스트림 데이터의 디코딩방법의 몇가지 실시예를 설명한 것이지만, 상기 상세설명은 단지 예시적인 것이며 개시된 본 발명을 제한하는 것은 아님을 이해해야 한다.
틀림없이, 본 발명에 능통한 실시자에게는 여러 가지 수정과 변형이 가능할 것이다. 이에 따라서 에러가 있는 중에서도 손상된 디코딩데이타를 연속적으로 전송할 수 있게 하는 손상된 비트스트림 데이터를 디코딩하는 방법을 제공한다.
프레임데이타중의 에러가 있는 블록 데이터를 수리하므로서, 오디오 및 비디오데이타의 전송을 크게 진작할 것이다.
표준전화선을 통한 전화회의가 훨씬 쉽게 rn현될 수 있을 것이다.
상세설명에서 기술된 손상된 비트스트림 데이터의 디코딩방법은 여러형태의 손상된 데이터에 이용될 수 있을 것이다.
Claims (21)
- 다수개의 심볼을 갖는 비트스트림을 디코딩하여 다수개의 이미지블록을 갖는 이미지 스트림을 제공하는 단계와;비가용 심볼을 만나면 한 장소의 공간적위치를 갖고있는 제 1 식별자로이미지블록을 표시해 놓는 단계와;재동기 코드가 디코딩될 때 까지 상기 비트스트림을 제처두는 단계와;제 2 식별자로 재동기 코드와 관련된 이미지 블록을 표시해 놓는 단계와;상기 이미지 스트림을 디코딩하여 다수개의 디스플레이블록을 갖는 다수개의 디스플레이 프레임을 제공하는 단계와;한 디스플레이 프레임의 디스플레이 블록들을 비교하여 이전의 한 디스플레이 프레임의 디스플레이 블록들간의 유사성을 찾아내어 에러가 있는 디스플레이 블록을 결정하는 단계와;에러가 있는 디스플레이 블록을 유사한 공간적 위치에 대응하는 이전 디스플레이 블록으로 대체하는 단계를 포함하는 것을 특징으로 하는 손상된 비트스트림데이타를 디코딩하는 방법.
- 제 1 항에 있어서,상기 디스플레이 블록의 유사성을 비교하는 단계는 에러가 있는 대체해야할 블록의 공간적위치를 표시해 넣는 단계를 포함하는 것을 특징으로 하는 손상된 비트스트림데이타를 디코딩하는 방법.
- 제 2 항에 있어서,상기 에러가 있는 블록을 표시해 놓는 단계는 제 2 식별자의 공간적위치를 표시해 놓는 단계를 포함하는 것을 특징으로 하는 손상된 비트스트림 데이터를 디코딩하는 방법.
- 제 3 항에 있어서,상기 제 2 식별자는 에러가 없는 디스플레이 블록의 공간적위치를 지시하는 것을 특징으로 하는 손상된 비트스트림 데이터를 디코딩하는 방법.
- 제 2 항에 있어서,에러가 있는 블록을 표시해놓는 단계는 제 1 식별자의 공간적위치를 표시하는 것을 포함하는 것을 특징으로 하는 손상된 비트스트림 데이터를 디코딩하는 방법.
- 제 1 항에 있어서,상기 디스플레이 블록의 유사성을 비교하는 단계는 제 1 식별자의 공간적위치에 해당하는 디스플레이 블록들을 비교하는 단계를 포함하는 것을 특징으로 하는 손상된 비트스트림 데이터를 디코딩하는 방법.
- 제 1 항에 있어서,상기 디스플레이 블록의 유사성을 비교하는 단계는 제1식별자의 공간적위치에 해당하는 한 영역내의 디스플레이블록들을 비교하는 단계를 포함하는 것을 특징으로 하는 손상된 비트스트림 데이터를 디코딩하는 방법.
- 제 1 항에 있어서,상기 디스플레이 블록이 이전의 디스플레이 블록으로 대체되었을 때 수선된 블록으로서의 디스플레이 블록을 확인하는 단계를 포함하는 것을 특징으로 하는 손상된 비트스트림 데이터를 디코딩하는 방법.
- 제 8 항에 있어서,자체 코딩된 블록이 에러가 있는 디스플레이블록을 대체할 때 수선된 블록으로서의 확인된 디스플레이 블록을 없애는 단계를 더 포함하는 것을 특징으로 하는 손상된 비트스트림 데이터를 디코딩하는 방법.
- 제 8 항에 있어서,상기 디스플레이 블록을 대체하는 단계는 디스플레이 블록을 수선된 블록으로 대체하는 단계를 포함하는 것을 특징으로 하는 손상된 비트스트림 데이터를 디코딩하는 방법.
- 제 10 항에 있어서,디스플레이 블록을 이전에 수선된 블록으로 대체하는 단계를 더 포함하는 것을 특징으로 하는 손상된 비트스트림 데이터를 디코딩하는 방법.
- 제 11 항에 있어서,디스플레이 블록을 이전에 수선된 블록으로 대체하기 전에 이전에 수선된 블록을 필터링하는 단계를 더 포함하는 것을 특징으로 하는 손상된 비트스트림 데이터를 디코딩하는 방법.
- 제 12 항에 있어서,상기 필터링하는 단계는 디스플레이 블록의 저주파수 프레임간 정보를 새롭게 하는 단계를 포함하는 것을 특징으로 하는 손상된 비트스트림 데이터를 디코딩하는 방법.
- 제 12 항에 있어서,상기 필터링하는 단계는 이산 코사인값 움직임 콘포넌트를 새로이 하는 단계를 포함하는 것을 특징으로 하는 손상된 비트스트림 데이터를 디코딩하는 방법.
- 제 1 항에 있어서,상기 에러가 있는 디스플레이 블록을 대체하는 단계는 대체된 블록의 블록에지를 필터링하여 대체된 블록과 대체되지 않는 블록간의 경과를 부드럽게 하는 단계를 포함하는 것을 특징으로 하는 손상된 비트스트림 데이터를 디코딩하는 방법.
- 이미지 블록을 역양자화하여 디스플레이 블록의 역양자화값을 제공하는 단계;이미지 블록을 역변환하여 디스플레이 블록의 역변환값을 제공하는 단계;디스플레이 블록의 움직임 벡터값을 디코딩하는 단계;상기 역양자화값이 소정의 역양자화값 범위내에서 있는지를 검사하는 단계;만약 상기 역양자화값이 상기 소정의 역양자화값 범위내에있지 않으면 상기 역양자화값을 수정하는 단계를 포함하는 것을 특징으로 하는 다수개의 이미지 블록을 디코딩하는 방법.
- 제 16 항에 있어서,상기 검사하는 단계는 역변환된 값이 소정의 역변환값 범위내에 있는지를 검사하는 단계와,만약 상기 역변환값이 상기 소정의 역변환값 범위내에 있지 않으면 상기 역변환값을 수정하는 단계를 포함하는 것을 특징으로 하는 다수개의 이미지 블록을 디코딩하는 방법.
- 제 16 항에 있어서,상기 검사하는 단계는 움직임 벡터값이 소정의 움직임 벡터값 범위내에 있는지 조사하는 단계와;만약 상기 움직임 벡터값이 상기 소정의 움직임 벡터값 범위내에 있지 않으면 상기 움직임 벡터를 수정하는 단계를 포함하는 것을 특징으로 하는 다수개의 이미지 블록을 디코딩하는 방법.
- 제 16 항에 있어서,다수개의 역양자화 값을 저장하여 상기 소정의 역양자화값 범위를 제공하는 단계를 더 포함하는 것을 특징으로 하는 다수개의 이미지 블록을 디코딩하는 방법.
- 제 17 항에 있어서,다수개의 역변환값을 저장하여 상기의 소정의 역변환값 범위를 제공하는 단계를 더 포함하는 것을 특징으로 하는 다수개의 이미지 블록을 디코딩하는 방법.
- 제 18 항에 있어서,다수개의 움직임 벡터를 저장하여 상기 소정의 움직임 벡터범위를 제공하는 단계를 더 포함하는 것을 특징으로 하는 다수개의 이미지 블록을 디코딩하는 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/618,847 US5703697A (en) | 1996-03-20 | 1996-03-20 | Method of lossy decoding of bitstream data |
US8/618,847 | 1996-03-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR970068187A KR970068187A (ko) | 1997-10-13 |
KR100239495B1 true KR100239495B1 (ko) | 2000-01-15 |
Family
ID=24479370
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970008975A KR100239495B1 (ko) | 1996-03-20 | 1997-03-17 | 손상된 비트스트림 데이터의 디코딩방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5703697A (ko) |
KR (1) | KR100239495B1 (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100577770B1 (ko) * | 1997-10-23 | 2006-05-10 | 소니 일렉트로닉스 인코포레이티드 | 엔코딩된 데이터의 비트스트림에서 손상된 데이터를 회복하는 방법과 장치, 디지털 프로세싱 시스템, 및 컴퓨터 판독 가능한 매체 |
KR100652004B1 (ko) * | 1999-03-03 | 2006-11-30 | 엘지전자 주식회사 | 오디오 데이터의 에러 정정 장치 및 방법 |
KR20220118894A (ko) | 2021-02-19 | 2022-08-26 | 대한민국(관리부서: 행정안전부 국립과학수사연구원장) | 손상된 디지털 동영상에서 오디오 신호 추출 방법 및 장치 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100316783B1 (ko) * | 1996-11-09 | 2002-01-12 | 윤종용 | 산술부호화 비트스트림 분할방법 및 부호화 방식 혼용 비트스트림 생성방법 |
US6212236B1 (en) | 1997-03-26 | 2001-04-03 | Matsushita Electric Industrial Co., Ltd. | Image decoding apparatus |
JPH11122624A (ja) | 1997-10-16 | 1999-04-30 | Matsushita Electric Ind Co Ltd | ビデオデコーダ処理量を低減する方法および装置 |
KR100363162B1 (ko) | 1998-11-02 | 2003-01-24 | 삼성전자 주식회사 | 영상신호의전송/복원방법및장치 |
US7149249B2 (en) * | 2001-05-07 | 2006-12-12 | Summus, Inc. | Color video codec method and system |
US20040037361A1 (en) * | 2002-08-22 | 2004-02-26 | Eduardo Gudis | Video block error sensing by detection of shapes in output |
US7184094B2 (en) * | 2002-12-06 | 2007-02-27 | Motorola, Inc. | Decoding system, video color converter and method thereof |
US20060188151A1 (en) * | 2005-02-23 | 2006-08-24 | Lexmark International, Inc. | Method for processing data for use with a video display of an imaging apparatus |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS583384A (ja) * | 1981-06-29 | 1983-01-10 | Fuji Photo Film Co Ltd | スチル/ム−ビ−兼用電子カメラ |
EP0498081B1 (en) * | 1991-01-21 | 1996-09-04 | Koninklijke Philips Electronics N.V. | Video coder/decoder with shift prevention for correctly decoded signal blocks |
US5113256A (en) * | 1991-02-08 | 1992-05-12 | Zenith Electronics Corporation | Method of perceptually modeling a video image signal |
JPH05199122A (ja) * | 1992-01-20 | 1993-08-06 | Canon Inc | 復号回路 |
KR970010101B1 (en) * | 1994-06-30 | 1997-06-21 | Daewoo Electronics Co Ltd | Post-processing method of digital transmission pictures |
KR100229783B1 (ko) * | 1994-07-29 | 1999-11-15 | 전주범 | 디지탈 전송 화상의 적응적후 처리장치 |
-
1996
- 1996-03-20 US US08/618,847 patent/US5703697A/en not_active Expired - Lifetime
-
1997
- 1997-03-17 KR KR1019970008975A patent/KR100239495B1/ko not_active IP Right Cessation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100577770B1 (ko) * | 1997-10-23 | 2006-05-10 | 소니 일렉트로닉스 인코포레이티드 | 엔코딩된 데이터의 비트스트림에서 손상된 데이터를 회복하는 방법과 장치, 디지털 프로세싱 시스템, 및 컴퓨터 판독 가능한 매체 |
KR100652004B1 (ko) * | 1999-03-03 | 2006-11-30 | 엘지전자 주식회사 | 오디오 데이터의 에러 정정 장치 및 방법 |
KR20220118894A (ko) | 2021-02-19 | 2022-08-26 | 대한민국(관리부서: 행정안전부 국립과학수사연구원장) | 손상된 디지털 동영상에서 오디오 신호 추출 방법 및 장치 |
Also Published As
Publication number | Publication date |
---|---|
US5703697A (en) | 1997-12-30 |
KR970068187A (ko) | 1997-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5724369A (en) | Method and device for concealment and containment of errors in a macroblock-based video codec | |
JP3609965B2 (ja) | 圧縮形式でのデジタルビデオデータの処理方法 | |
US20030012286A1 (en) | Method and device for suspecting errors and recovering macroblock data in video coding | |
JP3217987B2 (ja) | 動画像信号の復号方法および符号化方法 | |
US8780970B2 (en) | Motion wake identification and control mechanism | |
US7945103B2 (en) | Method and apparatus for decoding compressed and encoded digital images | |
WO2003007536A1 (en) | Method for detection and recovery of errors in the frame | |
CN101253775A (zh) | 用于视频错误恢复的编解码方法及装置 | |
KR100239495B1 (ko) | 손상된 비트스트림 데이터의 디코딩방법 | |
US6748114B1 (en) | Moving picture encoding method and moving picture encoding apparatus | |
KR100556450B1 (ko) | 움직임 벡터 추정에 의한 오류 복원 방법 | |
US6847684B1 (en) | Zero-block encoding | |
US6804299B2 (en) | Methods and systems for reducing requantization-originated generational error in predictive video streams using motion compensation | |
US20050013496A1 (en) | Video decoder locally uses motion-compensated interpolation to reconstruct macro-block skipped by encoder | |
US6356661B1 (en) | Method and device for robust decoding of header information in macroblock-based compressed video data | |
JP4432582B2 (ja) | 動画像情報復元装置、動画像情報復元方法、動画像情報復元プログラム | |
JPH1093964A (ja) | 映像信号のエラー隠ぺい装置 | |
US7440625B2 (en) | Method and apparatus for decoding compressed and encoded digital images | |
US7185264B2 (en) | Image processing apparatus and method therefor | |
WO2008097104A1 (en) | Method for pixel prediction with low complexity | |
KR100238087B1 (ko) | 인트라블록 삽입방법 및 이를 이용한 동영상부호화장치 | |
KR100590328B1 (ko) | 동영상 디코더 및 이를 이용한 디코딩 방법 | |
JPH09238345A (ja) | 画像信号符号化方法及び装置、画像信号伝送方法、画像信号復号方法及び装置並びに記録媒体 | |
JPH07203460A (ja) | 軌跡表示装置 | |
Lee et al. | Error recovery for MPEG-4 shape and texture information |
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: 20110920 Year of fee payment: 13 |
|
FPAY | Annual fee payment |
Payment date: 20120926 Year of fee payment: 14 |
|
LAPS | Lapse due to unpaid annual fee |