KR101073813B1 - 비트스트림 오류 보완방법, 비트스트림 오류 보완전처리기, 및 그 전처리기를 포함하는 디코딩 장치 - Google Patents

비트스트림 오류 보완방법, 비트스트림 오류 보완전처리기, 및 그 전처리기를 포함하는 디코딩 장치 Download PDF

Info

Publication number
KR101073813B1
KR101073813B1 KR1020080009674A KR20080009674A KR101073813B1 KR 101073813 B1 KR101073813 B1 KR 101073813B1 KR 1020080009674 A KR1020080009674 A KR 1020080009674A KR 20080009674 A KR20080009674 A KR 20080009674A KR 101073813 B1 KR101073813 B1 KR 101073813B1
Authority
KR
South Korea
Prior art keywords
bitstream
error
decoding
preprocessor
signal type
Prior art date
Application number
KR1020080009674A
Other languages
English (en)
Other versions
KR20090083708A (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 KR1020080009674A priority Critical patent/KR101073813B1/ko
Priority to US12/363,599 priority patent/US8270497B2/en
Publication of KR20090083708A publication Critical patent/KR20090083708A/ko
Application granted granted Critical
Publication of KR101073813B1 publication Critical patent/KR101073813B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0046Code rate detection or code type detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • H04N7/1675Providing digital key or authorisation information for generation or regeneration of the scrambling sequence

Landscapes

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

Abstract

본 발명은 비트스트림의 오류를 전처리를 통해 보완함으로써, 하드웨어 디코더에서 안정적인 복호화를 가능하게 하는 비트스트림 오류 보완방법, 비트스트림 오류 보완 전처리기, 및 그 전처리기를 포함하는 디코딩 장치를 제공한다. 그 오류 보완방법은 비트스트림(bitstream)을 수신하는 단계; 상기 비트스트림의 오류를 검출하는 단계; 및 검출된 상기 비트스트림의 오류를 보완하는 단계;를 포함하고, 하드웨어(hardware) 디코더(decoder)를 통한 상기 비트스트림의 안정적인 복호화를 위해 상기 복호화 전에 상기 비트스트림을 보완하게 된다.
비트스트림 오류정정, 비트스트림 전처리기, 오류 은닉

Description

비트스트림 오류 보완방법, 비트스트림 오류 보완 전처리기, 및 그 전처리기를 포함하는 디코딩 장치{Method of complementing bitstream errors, preprocessor for complementing bitstream errors, and decoding device comprising the same preprocessor}
본 발명은 비트스트림으로 전송되는 신호처리 및 그 신호처리장치에 관한 것으로, 특히 오류가 발생한 비트스트림에 대하여 하드웨어 디코더에 의해 복호화되기 전에 비트스트림의 오류를 보완하는 비트스트림 오류 보완방법, 비트스트림 오류 보완 전처리기, 및 그 전처리기를 포함하는 디코딩 장치에 관한 것이다.
자연계에 존재하는 신호들은 일반적으로 연속된 신호형태인 아날로그 신호로 존재하고, 이러한 아날로그 신호를 전송시키기 위해 샘플링과 양자화 처리를 통해 디지털 신호로 변환시키게 된다. 이러한 변환된 디지털 신호로 신호를 전송하게 되면 음질이나 화상 등이 향상되는 효과가 있는 반면에, 데이터의 양이 증가하는 문제가 있다.
이러한 데이터의 양의 증가에 대한 영향을 감소시키기 위해 압축을 수행하는데, 압축을 수행하지 않을 경우 영상정보 혹은 오디오정보의 전송에 있어서, 채널 이 요구하는 대역폭을 제공하지 못하기 때문에 전송이 불가능한 문제가 발생한다. 그에 따라 여러 가지 방법의 압축방식들이 제안되었고, 현재 정지 화상에 대한 JPEG이나 동영상에 대한 MPEG 등이 대표적인 압축방법들로 자리 잡고 있다.
이와 같이 압축된 데이터를 전송할 경우, 전송채널의 특징에 따라 전송되는 비트율과, 실시간 처리를 위한 비트율이 결정되기 때문에 결정된 비트율에서 최대의 음질 또는 화질 등을 보장할 수 있는 상태로 고정시켜 놓고 데이터를 전송한다. 따라서, 전송되는 데이터를 최적으로 복원해내기 위한 장치, 즉 디코더와 그 전송률을 최대한 효과적으로 사용하도록 부호화해 주는 장치, 즉 엔코더들이 개발되고 있다.
한편, 이러한 압축된 디지털 신호는 비트스트림이라는 연속적으로 전송되는 비트열을 통해 전송되고 전송된 비트스트림은 수신 단말기 등에 포함된 디코더 장치를 통해 원래의 신호로 복원되게 되는데, 수신된 비트스트림에 오류가 발생하는 일이 종종 발생한다. 예컨대, 현재 다양한 이종 네트워크가 존재하는 상황에서 무선 네트워크와 같이 오류가 발생하기 쉬운 네트워크로 비트스트림을 전송할 때, 수신단에서 전송오류에 의한 비트스트림 오류가 발생할 수 있다.
이와 같이 수신된 비트스트림에 오류가 발생하게 되면, 하드웨어 디코더가 그 비트스트림을 디코딩 또는 복호화할 때, 일부분을 복원하지 못하거나 또는 전혀 복호화할 수 없는 경우가 발생한다. 예컨대, 화상의 일부가 깨지거나, 음성의 경우 귀에 거슬리는 소리 등이 이러한 비트스트림 수신 오류에서 기인한다. 더 나아가서 하드웨어 디코더가 다운되거나, 잘못된 연산으로 시스템을 불안정하게 만들 수 있 다.
따라서, 본 발명이 이루고자 하는 과제는 이러한 비트스트림의 오류를 전처리를 통해 보완함으로써, 하드웨어 디코더에서 안정적인 복호화를 가능하게 하는 비트스트림 오류 보완방법, 비트스트림 오류 보완 전처리기, 및 그 전처리기를 포함하는 디코딩 장치를 제공하는 데에 있다.
상기 과제를 달성하기 위하여, 본 발명은 비트스트림(bitstream)을 수신하는 단계; 상기 비트스트림의 오류를 검출하는 단계; 및 검출된 상기 비트스트림의 오류를 보완하는 단계;를 포함하고, 하드웨어(hardware) 디코더(decoder)를 통한 상기 비트스트림의 안정적인 복호화를 위해 상기 복호화 전에 상기 비트스트림을 보완하는 비트스트림 오류 보완방법을 제공한다.
본 발명에 있어서, 상기 검출 단계에서는 상기 비트스트림의 신호 종류를 판단하여 상기 신호 종류별로 다른 검출 방법을 통해 또는 동일 검출 방법을 통해 상기 비트스트림의 오류를 검출할 수 있다. 또한, 상기 보완 단계에서는 상기 신호 종류별로 다른 오류 보완 방법을 통해 상기 비트스트림의 오류를 보완할 수 있다.
예컨대, 상기 비트스트림이 정지화상 압축방식인 JPEG(Joint Photographic Coding Experts Group) 비트스트림인 경우, 상기 검출 단계는, 복호화할 압축된 화상파일의 읽은 비트수를 상기 압축된 화상파일의 크기와 비교하는 단계; 및 상기 비교 단계의 결과에 따라 상기 비트스트림의 오류를 검출하는 단계;를 포함할 수 있다. 구체적으로 상기 비교 단계에서, 상기 읽은 비트수가 상기 압축된 화상파일의 크기보다 작거나 같은 경우에는 상기 비트스트림을 정상으로 판단하여 복호화를 수행하며, 큰 경우에는 상기 검출 단계에서 비트스트림의 오류로 결정하게 된다. 또한, 상기 보완 단계에서, 복호화할 총 블럭(block) 수에 도달하였는지 판단하는 단계; 및 상기 판단 단계의 결과에 따라 상기 비트스트리의 오류 부분을 단색으로 엔트로피 부호화하는 단계;를 포함할 수 있다.
다른 예로, 상기 비트스트림은 동영상압축방식인 MPEG(Moving Picture Expert Group) 비트스트림으로서 프레임 간 상관관계를 갖는 신호인 경우, 상기 검출 단계에서는 해당 프레임이 존재하는지 판단하고, 상기 해당 프레임이 없는 경우에, 상기 보완 단계에서는 해당 프레임 위치에 상기 해당 프레임의 이전 프레임을 삽입함으로써, 프레임 간의 오류의 전파를 최소화하고 하드웨어에서 디코딩 가능하도록 비트스트림을 보완할 수 있다.
본 발명은 또한 상기 과제를 달성하기 위하여, 비트스트림(bitstream)을 수신하는 비트스트림 수신부; 상기 수신부에서 수신받는 비트스트림의 오류를 검출하는 오류 검출부; 및 상기 오류 검출부로부터 결과를 받아 오류가 있는 비트스트림을 오류를 보완하는 오류 정정부; 를 포함하고, 상기 오류 정정부를 통해 비트스트림을 오류를 보완하여 하드웨어 디코더의 안정적인 복호화를 지원하는 비트스트림 오류 보완 전처리기를 제공한다.
본 발명에 있어서, 상기 오류 검출부는 상기 비트스트림의 신호 종류를 판단하는 신호 종류 판단부 및 상기 신호 종류 판단부에 결과에 따라 각 신호 종류별 비트스트림의 오류를 검출하는 개별 오류 검출부를 포함할 수 있다. 또한, 상기 오류 정정부는 상기 개별 오류 검출부에 대응하는 개별 오류 정정부를 포함할 수 있다.
예컨대, 상기 비트스트림이 JPEG(Joint Photographic Coding Experts Group) 비트스트림인 경우, 상기 오류 검출부는, 복호화할 압축된 화상파일의 읽은 비트 수를 수신된 상기 압축된 화상파일의 크기와 비교하여 상기 비교 결과에 따라 상기 비트스트림의 오류를 검출하고, 상기 오류 정정부는 복호화할 총 블럭(block) 수에 도달할 때까지 상기 비트스트림의 오류 부분을 단색으로 엔트로피 부호화함으로써, 비트스트림을 보완할 수 있다.
더 나아가 본 발명은 상기 과제를 달성하기 위하여, 상기 비트스트림 오류 보완 전처리기; 및 상기 전처리기를 통해 보완된 상기 비트스트림을 복호화하는 하드웨어 디코더;를 포함하여, 상기 비트스트림의 안정적인 복호화를 수행하는 디코딩 장치를 제공한다.
본 발명에 있어서, 상기 오류 검출부는 전술한 바와 같이 신호 종류 판단부 및 개별 오류 검출부를 포함할 수 있고, 상기 오류 정정부는 상기 개별 오류 검출부에 대응하는 개별 오류 정정부를 포함할 수 있다.
한편, 본 발명은 상기 과제를 달성하기 위하여, 컴퓨터 프로그램을 기록한 기록매체에 있어서, 수신된 비트스트림의 오류를 검출하는 단계; 및 검출된 상기 비트스트림의 오류를 보완하는 단계;를 포함하여, 하드웨어(hareware) 디코더(decoder)를 통한 상기 비스스트림의 안정적인 복호화를 위해 상기 복호화 전에 상기 비트스트림을 보완하도록 컴퓨터에 실행시키기 위한 프로그램을 기록한 기록매체를 제공한다.
본 발명에 따른 비트스트림 오류 보완방법, 비트스트림 오류 보완 전처리기, 및 그 전처리기를 포함하는 디코딩 장치는 하드웨어 디코더를 통해 비트스트림을 복호화하기 전에 소프트웨어 또는 하드웨어를 통해 비트스트림을 전처리하여 오류가 발생한 부분을 보완, 즉 오류부분을 은익함으로써, 하드웨어 디코더가 보다 안정적으로 신호를 복호화할 수 있도록 지원할 수 있다.
따라서, 이러한 본 발명의 비트스트림 오류 보완방법, 비트스트림 오류 보완 전처리기, 및 그 전처리기는 이동통신망, 디지털 저장매체 또는 인터넷 등 매우 유용하게 이용될 수 있다.
이하에서는 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 이하의 설명에서 어떤 구성 요소가 다른 구성 요소에 연결된다고 기술될 때, 이는 다른 구성 요소와 바로 연결될 수도 있지만, 그 사이에 제3의 구성 요소가 개재될 수도 있다. 또한, 도면에서 각 구성 요소의 구조나 크기는 설명의 편의 및 명확성을 위하여 과장되었고, 설명과 관계없는 부분은 생략되었다. 도면상에서 동일 부호는 동일한 요소를 지칭한다. 한편, 사용되는 용어들은 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다.
도 1은 본 발명의 일 실시예에 따른 오류가 발생한 비트스트림을 보완하는 과정을 보여주는 흐름도이다.
도 1을 참조하면, 먼저 단말기 등의 수신단에서 압축된 비트스트림을 수신한다(S100). 전술한 바와 같이 이렇게 수신된 비트스트림은 비트스트림 자체 또는 네트워크상의 문제로 인하여 오류가 발생한 비트스트림일 수 있다. 다음 이렇게 수신된 비트스트림이 오류가 있는지, 즉 수신된 비트스트림에 오류가 발생했는지 판단한다(S200).
비트스트림의 오류가 발생했는지 여부는 여러 가지 방법을 통해 확인할 수 있는데, 도 2a 및 2b에서 대표적인 2가지 경우를 설명한다.
비트스트림의 오류가 발생한 경우, 즉 비트스트림의 오류가 검출된 경우에는 발생한 오류를 적당한 방법을 통해 보완한다(S300). 이러한 보완 역시 여러 가지 방법으로 수행할 수 있는데, 도 3a 및 3b에서 앞서, 도 2a 및 2b에서 검출된 방법에 대응한 보완 방법을 설명한다. 한편, 여기서 보완은 원래의 비트스트림으로의 복원이 아닌 오류를 적당히 처리하여 오류로 인식하지 못하게 하는 오류의 은익에 가까운 의미이다.
이러한 비트스트림의 보완이 수행된 후, 최종적으로 하드웨어 디코더에 의해 복호화를 수행한다(S400). 한편, 오류 판단 단계에서 오류가 없는 것으로 판단된 경우에도 바로 하드웨어 디코더에 의해 복호화를 수행한다(S400).
본 발명의 비트스트림 보완 방법은 하드웨어 디코더에 의해 복호화 전에 비트스트림의 오류를 보완 또는 은익함으로써, 하드웨어 디코더의 복호화를 안정적으 로 지원하고 그에 따라 신호복원을 보다 안정적으로 할 수 있게 한다. 한편, 이러한 비트스트림의 오류 보완은 하드웨어나 소프트웨어 둘 다 또는 적어도 하나를 통해 수행할 수 있다.
도 2a는 도 1의 비트스트림 보완과정에서 오류 발생 검출 방법을 좀더 상세하게 보여주는 흐름도로서, 특히 화상 신호가 JPEG 방법을 통해 압축된 비트스트림으로 전송되는 경우에 대한 것이다.
도 2a를 참조하면, 먼저 화상 신호가 수신된 후에, 복호화할 압축된 화상 파일의 읽은 비트 수가 수신된 압축된 화상 파일의 크기보다 작거나 같은지 판단한다(S220). 여기서 수신된 압축된 화상 파일의 크기는 일단 수신된 파일에 대한 정보이므로 미리 알 수 있다. 다음 이렇게 수신된 파일을 복호화하기 위해 읽게 되면, 정상적으로 비트스트림이 수신된 경우, 수신된 화상 파일 크기 또는 그 이하로 읽게 된다. 그러나 정상적으로 비트스트림을 수신하지 못한 경우, 수신된 화상 파일 크기보다 더 많은 비트 수를 읽게 된다. 즉, 읽어야 할 비트스트림 부분이 수신이 안 됐거나 기타의 오류에 의해 손실된 경우이다.
따라서, 수신된 압축된 화상 파일 크기보다 읽은 비트 수가 작거나 같으면 비트스트림이 정상적인 것으로 판단하고, 만약 읽은 비트 수가 수신된 압축된 화상 파일 크기보다 크면 비트스트림의 오류로 판단한다.
그에 따라, 읽은 비트 수가 화상 파일보다 작거나 같은 경우 정상적으로 압축된 화상 파일에 대한 디코딩을 수행한다(S400). 디코딩 수행 후에는 다시 다음 화상에 대한 비트스트림의 오류 판단 단계(S220)로 돌아간다. 만약, 오류로 판단된 경우, 즉 읽은 비트 수가 화상 파일보다 큰 경우에는 압축된 화상파일에 오류가 있는 것으로 검출한다(S240).
이러한 비트스트림의 오류 검출은 소프트웨어를 이용하여 검출할 수도 있고, 미리 하드웨어 디코더 앞에 설계되어 배치된 하드웨어를 통해 검출할 수도 있다.
도 2b는 도 2a와 다른 방법을 통해 오류 발생 검출을 하는 과정을 보여주는 흐름도로서, 전송신호가 압축되어 프레임 간 상관관계를 가진 비트스트림, 예컨대 MPEG 비트스트림이 전송되는 경우에 대한 것이다.
도 2b를 참조하면, 먼저, 수신된 비트스트림에 해당 프레임이 모두 존재하는지 판단한다(S220a). 해당 프레임이 존재하면 압축된 파일을 디코딩하고(S400a), 다시 다음 비트스트림에 대한 해당 프레임이 존재하는지 판단한다. 만약 수신된 비트스트림에 어느 하나라도 프레임이 존재하지 않는 경우에는 압축된 파일에 오류가 있는 것으로 결정한다(S240a).
해당 프레임이 존재하는지에 대한 여부는 전송되는 프레임들 간의 상관관계를 통해 쉽게 찾아질 수 있다. 즉, 전송되는 프레임은 서로 상관관계를 가지고 있기 때문에, 앞뒤 프레임들은 서로에 대한 정보를 가지고 있다. 따라서, 해당 프레임이 디코더 버퍼 메모리에 없을 경우 해당 프레임이 손실되었음을 알 수 있다.
이와 같은 비트스트림 오류 검출 방법 역시 소프트웨어 또는 하드웨어를 통해 검출할 수 있다. 한편, 수신되는 신호의 종류에 따라 다른 오류 검출 방법을 적용할 수도 있는데, 그러한 경우는 수신단에 수신 신호의 종류를 판단하는 판단부를 두고, 그 판단부에 연결되어 신호 종류에 따라 각 신호에 대한 오류를 판단할 수 있도록 구성할 수 있도록 할 수도 있다.
도 3a는 도 2a에 대응하여 발생한 오류를 보완하는 방법을 좀더 상세하게 보여주는 흐름도로서, 즉 JPEG 화상 신호에 오류가 발생한 경우의 오류보완 과정을 보여준다.
도 3a를 참조하면, 먼저, 오류가 발생한 압축된 화상 파일에 대하여, 복호화할 총 블럭(block)의 수에 도달하였는지 판단한다(S320). 여기서, 총 블럭이란 하나의 화상 파일에 정해져 있는 블럭의 수를 말하고, 미리 정해져 있다. 앞서, 오류가 난 비트스트림의 경우 읽은 비트 수가 수신된 화상 파일 크기보다 크기 때문에, 화상 파일 이상의 부분에 대해서는 보완을 하여야 한다. 즉, 오류가 발생한 경우에는 수신된 화상 파일의 블럭 수는 총 블럭의 수보다 작고 따라서, 부족한 부분에 대해서는 오류를 보완해야 한다.
다음, 총 블럭 수에 도달하지 않은 경우, 오류가 비트스트림의 부분을 단색으로 엔트로피 부호화한다(S340). 이와 같이 단색 엔트로피 부호화하는 경우, 차후 하드웨어 디코더를 통해 복호화를 수행하면 그 부분이 하얀 색 등의 단색으로 복원된다. 따라서, 오류로 인하여 화상의 일부 또는 전부가 깨져 눈에 거슬리거나 아예 복호화가 불가능한 경우를 해결할 수 있다. 즉, 하드웨어 디코더를 통한 복호화가 안정적으로 수행되며, 또한, 오류가 난 부분도 눈에 거슬리지 않는 단색으로 처리되어 안정적인 화상으로 복원된다.
도 3b는 도 2b에 대응하여 발생한 오류를 보완하는 방법을 좀더 상세하게 보 여주는 흐름도로서, 프레임간 상관관계를 가지고 전송되는 비트스트림에 오류가 발생한 경우의 오류보완 과정을 보여준다.
먼저, 수신된 신호가 복호화할 총 프레임 수에 도달하였는지 판단한다(S320a). 다음, 해당 프레임이 존재하는지 판단한다(S320b). 해당 프레임이 존재하는 경우는 다시 총 프레임 수 판단 단계(S320a)로 돌아가고, 해당 프레임이 손실된 경우는 해당 프레임에 대한 보완을 수행한다(S340a). 즉 손실된 해당 프레임 위치에 이전 프레임을 삽입한다. 일반적으로 상관관계를 가지고 전송되는 프레임들은 연속하는 프레임들 간에 서로 유사한 비트스트림 구조를 갖는다. 따라서, 해당 프레임이 손실된 경우, 이전 프레임을 삽입하여 보완하게 되면, 전체 신호에 영향을 주지 않으면서 전체 신호를 안정적으로 복원할 수 있도록 해준다.
이러한 보완과정이 수행되면 다시 총 프레임 수 판단 단계(S320a)로 돌아가고, 총 프레임 수에 도달하면, 오류 보완 과정을 종료한다. 물론, 이와 같이 프레임 간 상관관계 가지고 전송되는 비트스트림 오류 검출 방법 역시 소프트웨어 또는 하드웨어를 통해 검출할 수 있음은 물론이다.
지금까지 2가지 예를 들어 설명하였지만, 그에 한정되지 않고 다양한 방법을 통해 하드웨어 디코더를 통한 복호화 전에 비트스트림의 오류를 보완할 수 있음은 물론이다.
도 4는 본 발명의 다른 실시예에 따른 비트스트림 오류 보완 전처리를 포함한 디코딩 장치를 개략적으로 보여주는 구성도이다.
도 4를 참조하면, 본 실시예 따른 디코딩 장치는 비트스트림 오류 보완 전처 리기(100) 및 하드웨어 디코더(200)를 포함한다. 여기서, 비트스트림 오류 보완 전처리(100)가 하드웨어 디코더(200)가 비트스트림에 대한 복호화를 수행하기 전에, 미리 오류를 검출하여 검출된 오류에 대하여 보완하게 된다.
비트스트림 오류 보완 전처리기(100)는 비트스트림 수신부(120), 오류 검출부(140), 오류 정정부(160)를 포함한다. 비트스트림 수신부(120)는 전송된 비트스트림을 수신하다. 오류 검출부(140)는 신호 종류 판단부(142) 및 개별 오류 검출부(144)를 포함하는데, 신호 종류 판단부(142)는 수신된 신호를 종류를 판단하고, 개별 오류 검출부(144)는 종류가 판단된 신호에 대응하여 적절한 방법을 적용하여 비트스트림의 오류를 판단한다. 이러한 비트스트림의 오류 판단 방법은 도 2a 및 2b에서 설명한 바와 같다.
한편, 이와 같이 오류 검출부(140)가 각 신호별 개별 오류 검출부(144)를 포함할 수도 있지만 모든 신호에 대해서 하나의 검출부를 통해 오류를 판단할 수도 있다. 이러한 하나의 검출부 또는 여러 개의 개별 오류 검출부들은 소프트웨어적 또는 하드웨어적으로 구현할 수 있다.
오류 정정부(160)는 오류 검출부(140)의 개별 오류 검출부(144)에 대응하여 개별 오류 정정부(162)를 포함할 수 있다. 이러한 개별 오류 정정부(162)는 오류가 검출된 해당 비트스트림에 대하여 적절한 방법을 통해 오류를 보완한다. 이러한 오류 보완의 일 예가 도 3a 및 3b에서 설명되었다.
한편, 오류 정정부(160)가 각 신호별 개별 오류 정정부(162)를 포함할 수도 있지만 하나의 정정부를 통해 오류를 판단할 수음은 물론이다. 이러한 하나의 정정 부 또는 여러 개의 개별 오류 검출부들 역시 소프트웨어적 또는 하드웨어적으로 구현할 수 있음은 물론이다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD_ROM, 자기테이프, 플로피디스크 및 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드로 저장되고 실행될 수 있다.
지금까지, 본 발명을 도면에 도시된 실시예를 참고로 설명하였으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 오류가 발생한 비트스트림을 보완하는 과정을 보여주는 흐름도이다.
도 2a는 도 1의 비트스트림 보완과정에서 오류 발생 검출 방법을 좀더 상세하게 보여주는 흐름도이다.
도 2b는 도 2a와 다른 방법을 통해 오류 발생 검출을 하는 과정을 보여주는 흐름도이다.
도 3a는 도 2a에 대응하여 발생된 오류를 보완하는 방법을 좀더 상세하게 보여주는 흐름도이다.
도 3b는 도 2b에 대응하여 발생된 오류를 보완하는 방법을 좀더 상세하게 보여주는 흐름도이다.
도 4는 본 발명의 다른 실시예에 따른 비트스트림 오류 보완 전처리를 포함한 디코딩 장치를 개략적으로 보여주는 구성도이다.

Claims (21)

  1. 비트스트림(bitstream)을 수신하는 단계;
    상기 비트스트림의 오류를 검출하는 단계; 및
    검출된 상기 비트스트림의 오류를 보완하는 단계;를 포함하고,
    하드웨어(hardware) 디코더(decoder)를 통한 상기 비트스트림의 안정적인 복호화를 위해 상기 복호화 전에 상기 비트스트림을 보완하며,
    상기 비트스트림은 JPEG(Joint Photographic Coding Experts Group) 비트스트림이고,
    상기 검출 단계는,
    복호화할 압축된 화상파일의 읽은 비트수를 수신된 상기 압축된 화상파일의 크기와 비교하는 단계; 및
    상기 비교 단계의 결과에 따라 상기 비트스트림의 오류를 검출하는 단계;를 포함하는 것을 특징으로 하는 비트스트림 오류 보완방법.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 제1 항에 있어서,
    상기 비교 단계에서, 상기 읽은 비트수가 상기 압축된 화상파일의 크기보다 작거나 같은 경우에는 상기 비트스트림을 정상으로 판단하여 복호화를 수행하며, 큰 경우에는 상기 검출 단계에서 비트스트림의 오류로 결정하는 것을 특징으로 하는 비트스트림 오류 보완방법.
  6. 제1 항에 있어서,
    상기 보완 단계는,
    복호화할 총 블럭(block) 수에 도달하였는지 판단하는 단계; 및
    상기 판단 단계의 결과에 따라 상기 비트스트림의 오류 부분을 단색으로 엔트로피 부호화하는 단계;를 포함하는 것을 특징으로 하는 비트스트림 오류 보완방법.
  7. 제6 항에 있어서,
    상기 보완 단계는
    상기 엔트로피 부호화 단계 이후 상기 판단 단계로 다시 돌아가며,
    상기 판단 단계에서 상기 복호화할 총 블럭(block) 수에 도달한 경우 보완 단계를 종료하는 것을 특징으로 하는 비트스트림 오류 보완방법.
  8. 삭제
  9. 삭제
  10. 제1 항에 있어서,
    상기 비트스트림은 상기 하드웨어(hardware) 디코더(decoder)를 통한 복호화가 요구되는 압축된 신호에 대한 비트스트림인 것을 특징으로 하는 비트스트림 오류 보완방법.
  11. 비트스트림(bitstream)을 수신하는 비트스트림 수신부;
    상기 수신부에서 수신받는 비트스트림의 오류를 검출하는 오류 검출부; 및
    상기 오류 검출부로부터 결과를 받아 오류가 있는 비트스트림의 오류를 보완하는 오류 정정부;를 포함하고,
    상기 오류 정정부를 통해 비트스트림을 오류를 보완하여 하드웨어 디코어의 안정적인 복호화를 지원하며,
    상기 비트스트림은 JPEG(Joint Photographic Coding Experts Group) 비트스트림이고,
    상기 오류 검출부는, 복호화할 압축된 화상파일의 읽은 비트수를 수신된 상기 압축된 화상파일의 크기와 비교하여 상기 비교 결과에 따라 상기 비트스트림의 오류를 검출하고,
    상기 오류 정정부는 복호화할 총 블럭(block) 수에 도달할 때까지 상기 비트스트림의 오류 부분을 단색으로 엔트로피 부호화하는 것을 특징으로 하는 비트스트림 오류 보완 전처리기.
  12. 제11 항에 있어서,
    상기 오류 검출부는 상기 비트스트림의 신호 종류를 판단하는 신호 종류 판단부 및 상기 신호 종류 판단부에 결과에 따라 각 신호 종류별 비트스트림의 오류를 검출하는 개별 오류 검출부를 포함하는 것을 특징으로 하는 비트스트림 오류 보완 전처리기.
  13. 제12 항에 있어서,
    상기 오류 정정부는 상기 개별 오류 검출부에 대응하는 개별 오류 정정부를 포함하는 것을 특징으로 하는 비트스트림 오류 보완 전처리기.
  14. 삭제
  15. 삭제
  16. 제11 항의 비트스트림 오류 보완 전처리기; 및
    상기 전처리기를 통해 보완된 상기 비트스트림을 복호화하는 하드웨어 디코더;를 포함하여,
    상기 비트스트림의 안정적인 복호화를 수행하는 디코딩 장치.
  17. 제16 항에 있어서,
    상기 오류 검출부는 상기 비트스트림의 신호 종류를 판단하는 신호 종류 판단부 및 상기 신호 종류 판단부에 결과에 따라 각 신호 종류별 비트스트림의 오류를 검출하는 개별 오류 검출부를 포함하는 것을 특징으로 하는 디코딩 장치.
  18. 제17 항에 있어서,
    상기 오류 정정부는 상기 개별 오류 검출부에 대응하는 개별 오류 정정부를 포함하는 것을 특징으로 하는 디코딩 장치.
  19. 삭제
  20. 삭제
  21. 삭제
KR1020080009674A 2008-01-30 2008-01-30 비트스트림 오류 보완방법, 비트스트림 오류 보완전처리기, 및 그 전처리기를 포함하는 디코딩 장치 KR101073813B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020080009674A KR101073813B1 (ko) 2008-01-30 2008-01-30 비트스트림 오류 보완방법, 비트스트림 오류 보완전처리기, 및 그 전처리기를 포함하는 디코딩 장치
US12/363,599 US8270497B2 (en) 2008-01-30 2009-01-30 Complementing bitstream error and decoding

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080009674A KR101073813B1 (ko) 2008-01-30 2008-01-30 비트스트림 오류 보완방법, 비트스트림 오류 보완전처리기, 및 그 전처리기를 포함하는 디코딩 장치

Publications (2)

Publication Number Publication Date
KR20090083708A KR20090083708A (ko) 2009-08-04
KR101073813B1 true KR101073813B1 (ko) 2011-10-14

Family

ID=40938852

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080009674A KR101073813B1 (ko) 2008-01-30 2008-01-30 비트스트림 오류 보완방법, 비트스트림 오류 보완전처리기, 및 그 전처리기를 포함하는 디코딩 장치

Country Status (2)

Country Link
US (1) US8270497B2 (ko)
KR (1) KR101073813B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104536843A (zh) * 2014-12-18 2015-04-22 无敌科技(西安)有限公司 一种快速检测jpeg图片文件是否正确的嵌入式装置及方法
CN110677680A (zh) * 2019-09-24 2020-01-10 杭州当虹科技股份有限公司 一种基于解码器错误检测的主备信源切换方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100747716B1 (ko) * 2002-12-31 2007-08-08 노키아 코포레이션 압축-도메인 패킷 손실 은폐를 위한 방법 및 장치
JP2007336382A (ja) * 2006-06-16 2007-12-27 Canon Inc 画像伝送装置及び画像伝送方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4712704B2 (ja) * 2004-02-09 2011-06-29 パナソニック株式会社 放送受信装置、放送受信方法、放送受信プログラム及び放送受信回路
US7254800B1 (en) * 2004-02-26 2007-08-07 Xilinx, Inc. Methods of providing error correction in configuration bitstreams for programmable logic devices
US7693345B2 (en) * 2004-03-04 2010-04-06 Nvidia Corporation Method and apparatus for error concealment for JPEG 2000 compressed images and data block-based video data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100747716B1 (ko) * 2002-12-31 2007-08-08 노키아 코포레이션 압축-도메인 패킷 손실 은폐를 위한 방법 및 장치
JP2007336382A (ja) * 2006-06-16 2007-12-27 Canon Inc 画像伝送装置及び画像伝送方法

Also Published As

Publication number Publication date
US20090201999A1 (en) 2009-08-13
KR20090083708A (ko) 2009-08-04
US8270497B2 (en) 2012-09-18

Similar Documents

Publication Publication Date Title
KR100628494B1 (ko) 화상복호화방법 및 장치와 기록매체
JP2005503738A (ja) ビデオ再生システム及び方法
US6983016B2 (en) Method for detecting errors in video information
KR101073813B1 (ko) 비트스트림 오류 보완방법, 비트스트림 오류 보완전처리기, 및 그 전처리기를 포함하는 디코딩 장치
US6356661B1 (en) Method and device for robust decoding of header information in macroblock-based compressed video data
US20050089102A1 (en) Video processing
JP4280927B2 (ja) 動画像伝送システム、動画像符号化装置、動画像復号化装置、動画像伝送プログラム及び動画像伝送方法
US20040258163A1 (en) Video communication system and video coding method
US20050111541A1 (en) Moving image transferring system, moving image encoding apparatus, moving image decoding apparatus, and moving image transferring program
EP1555788A1 (en) Method for improving the quality of an encoded video bit stream transmitted over a wireless link, and corresponding receiver
US20040228404A1 (en) Moving picture coding method
KR100363550B1 (ko) 동영상 인코딩 장치 및 무선 단말기의 동영상 디코딩 장치
JP2006352784A (ja) 伝送方法、受信装置及びコンピュータプログラム
KR100564967B1 (ko) 동영상 디코더 및 이를 이용한 디코딩 방법
JP2001078198A (ja) エラー隠蔽制御方法及び符号化装置及び画像信号伝送システム
KR100752846B1 (ko) 비디오 디코더의 에러 검출 장치 및 방법
KR100557047B1 (ko) 동영상 디코딩 방법
JPH03209998A (ja) 動画像復号化装置
JP2006319583A (ja) 出力方法、出力装置及びコンピュータプログラム
KR20050089457A (ko) 동영상 복호화 시 에러 은닉 방법
JPH10136369A (ja) ディジタル動画像の復号化装置
JPH0453379A (ja) 動画像復号化装置
KR20050089454A (ko) 동영상 복호화 시 에러 은닉 방법
KR20050026110A (ko) 동영상 디코더 및 디코딩 방법
KR20040034188A (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
LAPS Lapse due to unpaid annual fee