KR20020073962A - 오류 회복 엔트로피 부호 기법에 기초한 계층 구조 설정및 부가 정보 전송 방법에 따른 부호화 및 복호화 방법 - Google Patents

오류 회복 엔트로피 부호 기법에 기초한 계층 구조 설정및 부가 정보 전송 방법에 따른 부호화 및 복호화 방법 Download PDF

Info

Publication number
KR20020073962A
KR20020073962A KR1020010013937A KR20010013937A KR20020073962A KR 20020073962 A KR20020073962 A KR 20020073962A KR 1020010013937 A KR1020010013937 A KR 1020010013937A KR 20010013937 A KR20010013937 A KR 20010013937A KR 20020073962 A KR20020073962 A KR 20020073962A
Authority
KR
South Korea
Prior art keywords
coding
encoding
packet
error
hierarchical structure
Prior art date
Application number
KR1020010013937A
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 KR1020010013937A priority Critical patent/KR20020073962A/ko
Publication of KR20020073962A publication Critical patent/KR20020073962A/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/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본원은 오류 회복성을 가지는 영상 부호화 방법 즉 오류 ·회복 엔트로피 부호화로 알려진 오류 처리 기법에 근거한 효율적 부호화 방법에 관한 것으로서, 본 발명에 따른 부호화 방법에 의하면, 부호화된 매크로블록의 부호화 유형을 결정하는 단계와, 상기 결정된 부호화 유형에 따라 오류 회복 엔트로피 부호화의 계층적 구조를 선별적으로 적용하는 단계를 포함하여, 전송 오류에 보다 강인하고 우수한 복원 영상을 얻을 수 있도록 하며, 또한 동시에 전송 오류가 복원 영상에 미치는 영향을 최소화한다.

Description

오류 회복 엔트로피 부호 기법에 기초한 계층 구조 설정 및 부가 정보 전송 방법에 따른 부호화 및 복호화 방법 {encoding and decoding method according to a hierarchical structure and additional information transmission method based on an error resilient entropy coding}
본 발명은 오류 회복성을 가치는 영상 부호 (error resilient video coding) 방법의 구현에 관한 것으로, 특히 오류 회복 엔트로피 부호화(error resilient entropy coding) 으로 알려진 오류 처리 기법에 근거한 효율적 동영상 부호화 방법 및 장치에 관한 것이다.
오류 회복 엔트로피 부호화는 부호화 된 비트열을 슬롯(slot)이라 불리우는 데이터 구조로 재배치함으로써 복호에 필요한 중요 비트들이 시작하는 위치를 복호기가 미리 알게 하는 방법이다. 예를 들어, 움직임 벡터 추정을 위한 기본 단위인매크로블록(macroblock)마다 오류 회복 엔트로피 부호화 알고리듬을 적용하는 경우, 매 슬롯의 처음에는 언제나 새로운 매크로 블록이 시작되기 때문에, 전송 오류가 검출되는 경우 다음 번 슬롯 (혹은 MB)에서 복호를 새로이 수행할 수 있게 된다. 즉, 빠른 재동기가 가능하게 되는 것이다. 오류 회복 엔트로피 부호화를 수행할 슬롯의 전체 빈 공간과 각 블록에서 발생한 비트 수의 합이 같도록 하면, 복호단에서 알아야할 부가정보는 전체 발생 비트수 밖에 없기 때문에 다른 재동기 기법들에 비해 무시할 수 있을 만큼 적은 부가 비트만으로 매우 빠른 복호 재동기를 얻을 수 있게 된다.
오류 회복 엔트로피 부호화 복호를 위한 상기 부가 정보는 비록 그 정보량은 적다하더라도, 영상 복호 전체에 영향을 주기 때문에 이러한 정보를 종래 기술에서와 같이 헤더 부분에 집중시켜 두는 경우, 전송 오류에 의한 헤더 정보의 훼손으로 인해 프레임 전체의 복호를 불가능하게 할 수 있다는 문제가 발생한다. 이는 무선 데이터 통신망의 경우와 같이 연속적 형태의 오류를 수반하는 경우, 간단한 오류 정정 코드의 삽입만으로는 중요 정보를 보존할 수 없기 때문에 더욱 치명적이다. 따라서, 패킷 (packet) 이라 불리는 기본적 전송 단위로부터 오류 회복 및 은닉을 위한 정보 연계가 불가능하고, 패킷 유실 이외에도 전송된 데이터의 중요 부분이 유실되는 경우 전송된 전체 정보를 폐기해야 하는 문제를 야기한다.
또한, 계층적 구조의 오류 회복 엔트로피 부호화가 보다 효율적으로 빠른 재동기를 추구할 수 있다고 알려져 있기는 하지만 일반적인 자연 영상의 부호/복호 시스템에서와 같이 부호화된 각 프레임의 특성이 다른 경우 종래의 기술에서와 같이 이를 일괄적으로 적용하는 것은 전송 오류의 발생시 복호 효율을 떨어뜨리는 원인이 된다.
본 발명이 이루고자 하는 기술적 과제는 전송 오류에 보다 강인하고 우수한 복원 영상을 얻을 수 있는 부호화/복호화 방법 및 그 장치를 제공하는 것이다.
본 발명이 이루고자 하는 또 다른 기술적 과제는 전송 오류가 복원 영상에 미치는 영향을 최소화하는 것이다.
도 1은 본 발명에 따른 영상 압축 부호의 문법 구조를 도시하는 도면
도 2는 H.223 LEVEL 2 패킷 구조를 도시하는 도면
도 3은 본 발명에 따른 NOG 결정 알고리즘을 수행하는 흐름도
상기 과제를 달성하기 위한 본 발명에 따른 오류 회복 엔트로피 부호화 방법은 부호화된 매크로블록의 부호화 유형을 결정하는 단계와, 상기 결정된 부호화 유형에 따라 오류 회복 엔트로피 부호화의 계층적 구조를 선별적으로 적용하는 단계를 포함한다.
본 발명에 따른 또 다른 부호화 방법은 상기 부호화 유형을 결정하는 단계는 상기 부호화된 매크로블록이 인트라 부호화되었는지 인터 부호화되었는지를 결정하며, 상기 결정된 부호화 유형이 인트라 부호화인 경우 상기 계층적 구조는 매크로블록군(group of macroblock) 또는 슬라이스(slice), 매크로블록, 및 블록 단위로 이루어지는 것을 특징으로 한다.
본 발명에 따른 또 다른 부호화 방법은, 상기 결정된 부호화 유형이 인터 부호화인 경우 상기 계층적 구조는 매크로블록군 및 매크로블록 단위로 이루어지는 것을 특징으로 한다.
상기 과제를 달성하기 위한 본 발명에 따른 오류 회복 엔트로피 복호화 방법은, 전송에 사용되는 패킷의 크기 정보로부터 슬롯의 크기 정보를 산출한다.
상기와 같은 본원 발명에 따른 부호화 방법에 의하면, 오류 회복 엔트로피 부호화 기법에 기반한 동영상 부호 및 복호 시스템을 설계하는 경우 영상 전체의 복호와 관련된 중요 정보를 비트열 전반에 분산할 수 있도록 오류 회복 엔트로피 부호화 계층 구조를 설정하고, 전송되어야할 부가 정보를 패킷 헤더 정보에서 산출함으로써 전송오류에 보다 강인하고 우수한 복원 영상을 얻을 수 있는 부호화/복호화 방법 및 장치를 얻을 수 있다. 뿐만 아니라, 전송시 오류가 발생하는 경우 복원 영상의 큰 영역에 영향을 미칠 수 있는 중요 정보를 계층적 재동기 단위 전반에 분산시킴으로써 패킷 유실 이외의 전송 오류가 복원 영상에 미치는 영향을 최소화하는 것이 가능하다.
상기 과제를 달성하기 위한 본 발명에 따른 부호화 방식은 가변장 부호를 포함하는 각종 영상 압축 국제 규격, 예를 들어 H.263, H.261, MPEG-1, MPEG-2, 및 MPEG-4 등에 적용이 가능하지만, 혼돈을 피하고, 일관된 설명을 위해서 H.263의 문법 구조를 기준으로 설명하기로 한다.
도 1은 H.263을 수정한 본 발명에서 제안하는 영상 압축 부호의 문법 구조를 도시하고 있으며, 각 항의 기능 및 명칭은 다음과 같다.
PSC (픽쳐 시작 코드: picture start code) (22 비트)
0000 0000 0000 0000 1 00000의 값을 가지며, PSTUF 항을 이용하여 첫 번째 비트가 한 바이트의 첫 번째 비트가 되도록 바이트 단위로 정렬(byte align)된다.이는 PSTUF에서 PSC가 시작되기 전에 'O'을 삽입함으로써 PSC의 시작비트가 한 바이트의 시작되도록 한다. PSC는 한 프레임의 시작을 나타내는 재동기 단위이다.
TR (시간참조정보: temporal reference) (8 비트)
이전에 전송된 프레임 이후 현재 프레임까지의 프레임 단위 시간 정보를 의미하는 것으로, 256개의 값 중 하나를 가진다.
PTYPE (픽쳐 타입: picture type) (4 비트)
현재 프레임의 타입 정보를 표현하며 각 비트의 의미는 다음과 같다.
4 비트 중 1-3 비트는 소스 포맷(source format) 정보를 표현하며, "000"은 금지(forbidden), "001"은 sub-QCIF, "010"은 QCIF, "011"은 CIF, "100"은 4 CIF, "101"은 16 CIF, "110"과 "110"은 예비 프레임(reserved frame)이라는 것을 표시한다.
또한, 4 번째 비트는 화면 코딩 타입(picture coding type)을 표현하며, "0"은 현재 프레임이 인트라(intra) 코딩된 것, 즉 현재 프레임이 I-픽쳐라는 것을, "1"은 현재 프레임이 인터 코딩(inter coding)된 것, 즉 P-픽쳐라는 것을 의미한다.
COD (부호화된 매크로블록 표시: coded MB indication) (1 비트)
매크로블록의 부호화 유무를 나타내는 플래그로 "0"이면 매크로블록이 부호화되었다는 것을 나타내고, "1"이면 스킵되었다는 것을 나타낸다. 하나의 매크로블록군(group of macroblock)(이하,'GOB'라 함)에 존재하는 매크로 블록의 수만큼 반복되며, 픽쳐 헤더나, GOB 리더의 첫 부분에 존재하는 COD들은 그 GOB에 속하는 매크로 블록들에 대한 정보이며, 그 후에 다시 반복적으로 등장하는 COD들은 이전 GOB에 속하는 매크로 블록들에 대한 정보를 의미한다. 즉, 하나의 GOB마다 2번씩 COD를 전송하며, 이하에서 설명하는 PCRC(picture cyclic redundancy code)나 CCRC(cyclic redundancy code for previous CODs) 정보를 통해 훼손 여부를 판단하여 복호에 사용한다.
PCRC (픽쳐 CRC: picture CRC) (6 비트)
픽쳐 헤더 (PCS에서 COD까지)에 대한 CRC(cyclic redundancy code) 코드를 의미하며, 다음과 같은 생성 다항식(generator polynomial)을 사용한다.
[수학식1]
CCRC (이전 COD에 대한 CRC) (3 비트)
이전 GOB의 COD 정보에 대한 CRC를 나타내며, 다음과 같은 생성 다항식을 사용한다.
[수학식2]
ESTUF (스터핑:stuffing) (가변길이)
영상 시퀀스의 끝을 알리는 고정 부호인 EOS(end of sequence) 항이 첫 번째 비트가 한 바이트의 첫 번째 비트가 되도록 바이트 단위로 정렬(byte align)시키기 위해 사용되는 첨가 코드이다. 8 비트보다 작은 크기의 가변 부호이다.
EOS (End Of Sequence) (22 비트)
0000 0000 0000 0000 1 11111의 값을 가지며, 픽쳐 시퀀스의 종료를 알리는 고정 부호이다. ESTUF에서 EOS가 시작되기 전에 '0'을 삽입함으로써 EOS는 바이트 단위로 정렬된다.
PSTUF (스터핑) (가변길이)
PCS의 시작 비트가 한 바이트의 첫 번째 비트가 되도록 하기 위해 사용되는 첨가 코드로, 8 비트 보다 작은 크기의 가변 부호이다.
GSTUF (스터핑) (가변길이)
GOB의 시작을 나타내는 GOB 시작 코드(GOB start code: 이하 'GBSC'라 함)가 바이트 단위로 정렬되도록 하기 위해 사용되는 첨가 코드이다. 8비트 보다 작은 크기의 가변 부호이다.
GBSC (GOB 시작 코드) (17 비트)
GOB의 시작을 나타내는 항으로 0000 0000 0000 0000 1의 값을 가진다. 모든 GBSC는 GSTUF에 의하여 바이트 단위로 정렬된다.
GN (GOB 번호) (5 비트)
현재 GOB의 시퀀스 번호를 2진법으로 나타내는 코드이다. 00000, 11111의 값은 각각 PCS, EOS로 사용되며, 18-30까지의 값은 사용하지 않는다.
GCRC (GOB CRC) (6 비트)
GOB 헤더 정보의 오류를 검출하기 위한 CRC 코드로 PCRC의 생성 다항식을 사용한다.
MCBPC (MB 유형 & 색차에 대한 부호화된 블록 패턴(coded block patternfor chrominance)) (가변길이)
현재 매크로 블록의 유형과 색조 블록의 부호화 패턴을 나타내는 부호로 H.263 규격집에 있는 가변장 부호를 사용한다.
CBPY (휘도에 관한 부호화된 블록 패턴: coded block pattern for luminance) (가변적)
현재 매크로 블록의 휘도 블록들의 부호화 패턴을 나타내는 부호로 H.263 규격집에 있는 가변장 부호를 사용한다.
QUANT (양자화 정보: quantizer information) (2 or 5 비트)
현재 매크로 블록을 부호화하는데 사용된 양자기 간격을 의미하며, 한 GOB의 첫 매크로 블록이나, 인트라 부호화된 프레임의 경우에는 5 비트 이진 표현된 값 (양자기 간격/2)을 나타낸다. 나머지 경우에는 이전 매크로 블록의 양자기 간격과의 차이를 표현하는 2 비트 값을 나타내며, "00" -1, "01" -2, "10" 1, "11" 2의 부호를 사용한다.
MVD (움직임 벡터 데이터: motion vector data) (가변길이)
움직임 벡터를 의미하며, H.263 규격집의 내용과 같이 처리한다.
INTRADC (인트라 블록의 DC 계수: DC coefficient for INTRA blocks) (8 bits)
인트라로 부호화된 매크로 블록에만 존재하며, 이산 여현 변환(discrete cosine transform: DCT)의 DC 값을 나타낸다. H.263 규격집에 정의된 처리 방식을 따른다.
MCRC (매크로블럭 CRC) (3 or 6 비트)
각 매크로 블록 헤더 정보를 위한 CRC 코드로, 그 길이가 21 bits를 넘는 경우 PCRC 항에서 정의된 생성 다항식을 사용하고, 그렇지 않은 경우에는 CCRC 항에서 정의된 것을 사용한다.
TCOEF (변환 계수) (가변길이)
각 블록의 이산 여현 변환의 AC 계수들을 의미하며, H.263 규격에서 정의된 가변장 부호를 사용하며, 그 처리 방식을 따른다.
상기 명시된 문법 구조로 부호화 된 비트열에 오류 회복 엔트로피 부호화를 수행하는 경우, 인트라 부호화 된 매크로 블록의 경우 블록 단위까지 계층적 오류 회복 엔트로피 부호화를 수행하지만, 인터 부호화된 매크로 블록의 경우에는 매크로 블록 단위까지만 계층적 구조를 허용한다.
이는 인트라 부호화된 매크로 블록의 경우 DCT AC 계수들에서 발생하는 데이터 양이 상당하지만, 인터 부호화된 경우에는 발생하는 데이터가 별로 없어, 무선 채널과 같이 연속된 형태의 오류를 수반하는 경우 하위 계층으로의 세부 구조가 오류 고립화에 별로 효과적지 못하기 때문이다. 반면, 깊은 계층 구조를 허용하여 오류 회복 엔트로피 부호화를 수행하는 경우, 복호단의 복잡도가 다소 높아지기 때문에 이 두 가지 상반된 특성에서 효율을 극대화시키려면 적절한 타협점이 필요하다.
본 발명에 따른 상기 기술된 계층 단위의 선택은 이러한 효율의 증대를 꾀하는 것으로 무선 환경에 대해 매우 효과적이다. 또한, 패킷 단위의 전송을 고려하여 GOB 단위 상위 계층까지의 오류 회복 엔트로피 부호화를 수행하는데, 아래에서 상세하게 설명한다.
우선 부호화된 비트열을 GOB 단위로 모아 저장한다. 이때, 도 1의 GOB 층의 앞부분에 존재하는 GSTUF 항을 이전 GOB의 마지막에 붙여주면, 각 GOB 단위의 비트열은 바이트 단위로 정렬된다. 다음은 전송 패킷의 크기 정보가 허용하는 바이트 단위 크기를 고려하여, 같은 패킷을 통해 전송할 GOB들을 결정하고 전체 바이트 수를 계산한다.
이 크기는 도 2에 도시된 H.223 레벨 2 패킷 내의 다중 페이로드 길이(multiplex payload length: 이하 'MPL'항이라 함)항을 통해 전송되며, 상기된 계층적 구조의 오류 회복 엔트로피 부호화를 수행하는데 필요한 슬롯크기를 결정하는 부가 정보로 사용된다. 이하에서 기술되는 오류 회복 엔트로피 부호의 복호화에서는 혼란을 방지하기 위해 한 패킷을 통해 전송할 수 있는 GOB의 수는 2를 제외한 모든 개수를 허용하도록 한다. 즉, 2개의 GOB를 한 패킷으로 전송해야 하는 경우엔 반드시 2개의 패킷으로 나누어 전송하도록 하여 복호시 혼란을 줄여준다. 각 계층의 슬롯 크기는 MPL항의 정보를 통해 다음과 같은 알고리듬에 의해 결정된다.
GOB 단위의 슬롯 크기 결정 방법
단, ceil() - 올림함수, NOG는 GOB의 번호
단,의 번호
단,의 번호
MB 단위의 슬롯 크기 결정 방법
단,는 해당 GOB 슬롯의 길이,는 GOB 헤더 길이, NOM은 현재 GOB의 부호화된 MB 개수
단,번호
단,번호
Block 단위 슬롯 크기 결정 방법
단,은 해당 MB 슬롯의 길이,은 현 MB 헤더 길이, NOB은 현 MB의 부호화된 블록의 개수
상기 알고리듬에서, 각 계층의 슬롯 크기는 짧은 것과 긴 것이 존재하는데 (예를 들어, GOB 단위의 슬롯 크기에서,는 긴 슬롯의 길이이고,는 짧은 슬롯의 길이이다), 각각의 개수가 유일하게 결정되기 때문에, 짧은 슬롯을 그 개수만큼 앞쪽에 배치하고 긴 슬롯을 뒤쪽에 배치함으로써 혼돈 없이 오류 회복 엔트로피 부호의 복호를 수행할 수 있다.
상기 방법으로 각 단계에서의 슬롯 크기와 그 개수를 결정한 다음, 가장 하위 단계에서의 오류 회복 엔트로피 부호화 비트열 재배치 알고리듬을 수행한다. 재배치되고 남은 비트열은 따로 모아 저장하고 그 비트수를 기록한 다음 그 상위 단계의 슬롯을 구성하여 오류 회복 엔트로피 부호화 비트열 재배치 알고리듬을 재귀적으로 수행한다. 상기 기술된 계층적 단위까지 재배치가 완료되면, 재배열된 비트열을 패킷의 페이로드(payload) 영역에 실어 전송을 실시한다.
이하에서는 이를 보다 상세히 설명한다. RFC2429 등의 종래 기술에 따르면, 짝수의 GN항을 갖는 GOB들을 하나의 패킷으로 구성하고, 홀수의 GN항을 구성하는 GOB들을 또 다른 패킷으로 구성함으로써, 패킷 오류가 발생하는 경우 복호단에서의 오류 은닉이 용이하도록 하고있다.
이를 좀 더 효과적으로 구현하기 위해 QCIF (176X144) 크기의 영상을 부호화하는 경우를 생각해 보자. 부호화된 비트열을 임시 버퍼에 저장한 이후, 0, 2, 4, 6, 8, 1, 3, 5, 7의 GN항 순서로 발생 바이트 수를 더하면서, 하나의 패킷으로 전송할 수 있는 GOB들을 설정한다. 만일 하나의 GOB가 여러 개의 패킷에 나뉘어져야 하는 경우에는 그 GOB내에서 상기 설정된 하위 단계까지의 오류 회복 엔트로피 부호화를 수행하고, 여러개의 GOB가 하나의 패킷을 통해 전송될 수 있는 경우에는 상기 명시된 바와 같이 GOB단위까지의 계층적 오류 회복 엔트로피 부호화를 수행한다. 비트열 재배치가 완료되면 그 데이터를 패킷을 통해 전송하게 되는 것이다.
오류 회복 엔트로피 부호화의 비트열 재배치 알고리즘을 수행할 때와 마찬가지로, 전송된 비트열에 대한 오류 회복 엔트로피 부호의 복호화의 경우에도 필요한 부가 정보는 각 계층 단계에서의 슬롯 크기 뿐 이다. 복호단에서 각 계층 단계의 슬롯 크기 결정은 다시 상기 기술된 슬롯 크기 결정방법을 통해 이루어지는데, 이 때 복호단에서는 각 패킷을 통해 전송된 GOB수를 알 수 없다. 따라서, 이하 상세 기술될 방법에 의해 패킷 내 전송된 GOB 수 (NOG)를 결정하여 각 계층 단계에서의 슬롯 크기를 결정한다.
아래에서는 도 3을 참고하여 NOG를 결정하는 알고리즘을 설명한다.
전송된 데이터로부터 COB수 (NOG)를 결정하는 알고리즘 (A)
1. 처음 부분의 17비트 데이터가 0000 0000 0000 0000 1인지 검사한다.
2. 1항이 참이면 NOG=1, CNT=1로 놓고, 거짓이면 NOG=0, CNT=0으로 놓는다.
3. NOG=3으로 가정한다.
4. GOB 단위 슬롯 크기를 결정하고, 각 슬롯의 처음 17비트 데이터가 각각 0000 0000 0000 0000 1인지 검사한다.
5. 4항에서 검사된 결과가 참인 개수를 세서 CNT와 비교하여, 그 개수가 CNT보다 크면, NOG 값을 현재 가정된 값으로 갱신하고, CNT 값도 참이 되는 개수로 갱신한다.
6. NOG를 1 더하고 미리 설정된 최고 NOG 개수가 넘는지 확인하여, 이를 넘으면 7항으로 가고, 그렇지 않으면 4항으로 돌아간다.
7. NOG의 값과 현재 NOG가 1인 경우 GN항의 값을 반환한다.
상기 알고리즘을 통해 결정된 NOG는 NOG=0인 경우를 제외하고는 무선 채널 환경에서 매우 효과적으로 오류 처리가 가능하다.
NOG=0인 경우에는 1개의 GOB를 전송했으나, 처음 헤더 부분의 데이터가 훼손된 것인지, 아니면 실제로 1개의 GOB가 여러 개의 패킷에 나뉘어 전송되었는지를 다시 확인할 필요가 있다. 이를 위해서, 우선 이전 패킷을 통해 전송된 NOG를 확인하여, 그 값이 1인지를 확인한다. 만일 이전 전송된 값이 1이 아니면 현재 NOG 값을 1로 바꾼다. 하지만, 이전 패킷을 통해 전송된 NOG가 1인 경우에는 다음에 오는 패킷의 NOG 결정까지 현재 패킷을 통해 전송된 패킷의 NOG 결정이 유보된다. 이후에 오는 데이터 중 NOG > 0인 패킷에서 반환된 GN의 값을 이전에 반환된 GN의 값과 비교하여 유보되었던 NOG가 실제로 0인지를 결정한다. 이는 특정한 순서로 GOB들이 전송되기 때문에 이전 GN 이후에 올 수 있는 첫 번째 GN이 있는가 없는가에 따라 실제 여부가 결정되는 것이다.
여기서 만일 2개 이상의 패킷에서 NOG가 유보된 경우 실제로 각 NOG가 0이 아닌 것으로 판명되면, (예를 들어, 각 GOB가 2개씩의 패킷으로 나뉘어 전송되는 경우, GN=2, GN=4, GN=6의 GOB들을 생각해보자. 이 경우 만일 GN=4의 첫 번째 패킷에서 처음 시작 코드에 오류가 발생했다면, 0번 GOB의 2번째 패킷에서부터 6번 패킷의 첫 번째 패킷까지 모두 3개의 패킷에 NOG 결정이 유보되었을 것이고, GN=2 이후 처음 NOG가 0 아닌 값으로 반환된 패킷은 GN=6이므로, 유보되었던 3개의 패킷이 모두 NOG=0이 아닌 것으로 판명될 것이다. 유보되었던 이전 패킷 데이터들은 다음 알고리즘을 통해 NOG를 결정한다.
여기서 알고리즘에 입력되는 인자들은 유보되었던 모든 패킷의 개수 및 각 데이터들, 현재 GN과 이전 GN항에서 알 수 있는 전송되었어야 할 GOB 수이고, 반환되어야 할 값은 유보되었던 패킷들 중에서 NOG=1인 패킷들의 시작 위치들이다.
오류 패킷의 NOG=1 항 결정 알고리즘 (B)
입력 인자 N은 전송되었어야 할 NOG=1인 패킷의 개수, NOG 결정이 유보되었던 각 패킷 데이터이다.
1. 각 패킷의 52-62 bit위치의 11 bits 데이터를 (각 패킷의 두 번째 COD 데이터들) 63-55 bit 위치의 3bits 데이터로 CRC 검출함으로써 오류가 없는 것으로 판명되는 패킷의 위치를 기록하고, 이러한 패킷의 개수가 N과 같으면 기록된 각 위치를 반환하고, N과 그 수가 다르면 NO_NOG를 반환한다
상기 알고리즘 (B)에서, 각 위치가 반환되면 그 위치의 패킷들은 각기 오류 회복 엔트로피 부호화 복호에 사용되고 만일 NO_NOG가 반환되면 유보되었던 모든데이터와 유보되기 바로 전 NOG=1로 판독된 패킷까지를 폐기한다. 이 방법은 연속된 형태의 오류를 수반하는 W-CDMA 무선 통신망의 오류 처리에 매우 효과적이다.
아래에서는 상기 기술된 NOG 결정 알고리즘을 도시하는 도 3을 참고하여 상기 알고리즘을 설명한다.
단계 301에서는 수신된 패킷 데이터를 입력하고, 단계 302에서는 NOG 결정 알고리즘(A)을 수행한다.
단계 303에서는 단계 302에서 결정된 NOG가 0인지 여부를 확인하고, NOG가 0인 경우에는 단계 304에서 이전 NOG가 1인지 여부를 확인하여, 이전 NOG가 1이 아닌 경우 단계 305에서 현재 NOG를 1로 두고, 단계 301을 수행한다.
단계 304에서 확인된 이전 NOG가 1인 경우에는 다음에 오는 패킷의 NOG 결정까지 현재 패킷을 통해 전송된 패킷의 NOG 결정을 유보하고, 단계 301을 수행한다.
단계 303에서 확인된 MOG가 0이 아닌 경우, 단계 307에서 유보된 패킷이 있는가를 확인하고, 유보된 패킷이 없으면, 단계 301을 수행하고, 유보된 패킷이 있는 경우, 단계 308에서 오류 패킷의 NOG항 결정 알고리즘(B)를 수행한 후, 단계 301을 수행한다.
오류 회복 엔트로피 부호화를 사용하여 빠른 재 동기를 얻는 시스템에서 오류 회복 엔트로피 부호화의 적용 단위를 영상 전체로 두는 경우, 복호 단계가 진행함에 따라 발생한 전송 오류가 급속히 전파되어 복원 영상의 화질 열화를 심화하게 되는 단점이 있었다. 반대로, GOB 혹은 슬라이스를 단위로 오류 회복 엔트로피 부호화를 적용하는 경우에는 일부 중요 정보의 오류로 인해 한 패킷 내에 존재하는 4개 이상의 GOB 혹은 슬라이스 손실을 초래할 수 있었다.
본 발명은 부호화 된 비트열을 재배치하는 과정에서, 영상의 부호 형태에 따라 계층적 구조의 오류 회복 엔트로피 부호화를 선별적으로 적용하고, 각 GOB 혹은 슬라이스 단위의 오류 회복 엔트로피 부호화 복호를 위한 일체의 부가 정보를 패킷의 크기 정보로부터 산출함으로써 복호시 나타나는 급속한 오류 전파를 방지하고 최적의 복원 영상을 얻을 수 있는 효과가 있다.
또한, 영상 전체의 복호에 영향을 주는 헤더 정보를 GOB 혹은 슬라이스 단위로 분산시킬 수 있는 문법 구조를 고안함으로써 패킷 유실 이외의 오류가 발생하는 경우 폐기해야할 정보의 양을 최소화할 수 있도록 하면서 오류 회복·엔트로피 부호화의 빠른 재동기 특성을 살릴 수 있는 효과가 있다.

Claims (4)

  1. 오류 회복 엔트로피 부호화 방법에 있어서,
    부호화된 매크로블록의 부호화 유형을 결정하는 단계와,
    상기 결정된 부호화 유형에 따라 오류 회복 엔트로피 부호화의 계층적 구조를 선별적으로 적용하는 단계를 포함하는 것을 특징으로 하는 부호화 방법.
  2. 제1항에 있어서, 상기 부호화 유형을 결정하는 단계는 상기 부호화된 매크로블록이 인트라 부호화되었는지 인터 부호화되었는지를 결정하는 것을 특징으로 하는 부호화 방법.
  3. 제2항에 있어서, 상기 결정된 부호화 유형이 인트라 부호화인 경우 상기 계층적 구조는 매크로블록군(group of macroblock) 또는 슬라이스(slice), 매크로블록, 및 블록 단위로 이루어지는 것을 특징으로 하는 부호화 방법.
  4. 제2항 또는 제3항에 있어서, 상기 결정된 부호화 유형이 인터 부호화인 경우 상기 계층적 구조는 매크로블록군 및 매크로블록 단위로 이루어지는 것을 특징으로 하는 부호화 방법.
KR1020010013937A 2001-03-17 2001-03-17 오류 회복 엔트로피 부호 기법에 기초한 계층 구조 설정및 부가 정보 전송 방법에 따른 부호화 및 복호화 방법 KR20020073962A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020010013937A KR20020073962A (ko) 2001-03-17 2001-03-17 오류 회복 엔트로피 부호 기법에 기초한 계층 구조 설정및 부가 정보 전송 방법에 따른 부호화 및 복호화 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020010013937A KR20020073962A (ko) 2001-03-17 2001-03-17 오류 회복 엔트로피 부호 기법에 기초한 계층 구조 설정및 부가 정보 전송 방법에 따른 부호화 및 복호화 방법

Publications (1)

Publication Number Publication Date
KR20020073962A true KR20020073962A (ko) 2002-09-28

Family

ID=27697795

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010013937A KR20020073962A (ko) 2001-03-17 2001-03-17 오류 회복 엔트로피 부호 기법에 기초한 계층 구조 설정및 부가 정보 전송 방법에 따른 부호화 및 복호화 방법

Country Status (1)

Country Link
KR (1) KR20020073962A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040046895A (ko) * 2002-11-28 2004-06-05 엘지전자 주식회사 영상 전화 시스템의 h.223 crc 에러 체크에 따른데이터 유닛 처리방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040046895A (ko) * 2002-11-28 2004-06-05 엘지전자 주식회사 영상 전화 시스템의 h.223 crc 에러 체크에 따른데이터 유닛 처리방법

Similar Documents

Publication Publication Date Title
US9560367B2 (en) Parameter set and picture header in video coding
KR100928127B1 (ko) 인트라-슬라이스 재동기화 포인트들을 사용하는 에러복원을 위한 방법 및 장치
US6317462B1 (en) Method and apparatus for transmitting MPEG video over the internet
US6768775B1 (en) Video CODEC method in error resilient mode and apparatus therefor
JP5227193B2 (ja) Svcデコーダにおけるパケットロス検出および仮想パケット生成のための方法および装置
KR102094503B1 (ko) 다계층 비디오 부호화 방법 및 장치, 다계층 비디오 복호화 방법 및 장치
US20050123056A1 (en) Encoding and decoding of redundant pictures
EP1267582A2 (en) Moving picture coding and/or decoding system, and variable-length coding and/or decoding system
JPH10234040A (ja) ビデオ情報をパケット化する方法
KR19990066827A (ko) 오류 허용 모드 비디오 코덱 방법 및 그 장치
KR100909328B1 (ko) 비-부호화 매크로블록의 런-렝스 부호화 방법
KR20020073962A (ko) 오류 회복 엔트로피 부호 기법에 기초한 계층 구조 설정및 부가 정보 전송 방법에 따른 부호화 및 복호화 방법
KR100375345B1 (ko) 오류 허용 모드를 위한 비디오 코딩 방법 및 그 장치
Li et al. An error sensitivity-based redundant macroblock strategy for robust wireless video transmission
KR20080061379A (ko) 비디오 에러 은폐를 개선하기 위한 코딩/디코딩 방법 및장치
US20050123047A1 (en) Video processing
KR100644604B1 (ko) 오류 허용 모드를 위한 비디오 코딩 방법 및 그 장치
Tian et al. Improved H. 264/AVC video broadcast/multicast
JP3944049B2 (ja) 可変長復号化方法及び装置
JP3609814B2 (ja) 可変長復号化方法及び装置
JP3612315B2 (ja) 可変長復号化方法及び装置
JP3612314B2 (ja) 可変長符号化方法及び装置
JP3869342B2 (ja) 可変長復号化方法及び装置
JP3748215B2 (ja) 可変長符号化方法及び装置
JP3579409B2 (ja) 可変長符号化方法及び装置

Legal Events

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