KR20020006150A - 동영상 압축 부호화장치의 가변길이부호화 테이블 분할가변길이 부호화 장치 및 그 방법 - Google Patents

동영상 압축 부호화장치의 가변길이부호화 테이블 분할가변길이 부호화 장치 및 그 방법 Download PDF

Info

Publication number
KR20020006150A
KR20020006150A KR1020000039640A KR20000039640A KR20020006150A KR 20020006150 A KR20020006150 A KR 20020006150A KR 1020000039640 A KR1020000039640 A KR 1020000039640A KR 20000039640 A KR20000039640 A KR 20000039640A KR 20020006150 A KR20020006150 A KR 20020006150A
Authority
KR
South Korea
Prior art keywords
tcoef
variable length
vlc
rvlc
inter
Prior art date
Application number
KR1020000039640A
Other languages
English (en)
Other versions
KR100349650B1 (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 KR1020000039640A priority Critical patent/KR100349650B1/ko
Publication of KR20020006150A publication Critical patent/KR20020006150A/ko
Application granted granted Critical
Publication of KR100349650B1 publication Critical patent/KR100349650B1/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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion 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
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • 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/1887Methods 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 a variable length codeword

Abstract

본 발명은 동영상 압축 부호화장치의 가변길이부호화 테이블 분할 가변길이 부호화 장치 및 그 방법을 제공하기 위한 것으로, 이러한 본 발명은 동영상 압축 부호화 장치에서 전송 채널이 허용하는 저전송선로를 통하는 비교적 적은 영상정보에 대해 가변 길이 부호화를 수행할 때, 가변 길이 부호화 테이블을 가변 길이 코드의 규칙성과 유사성을 기준으로 복수개로 분할하고, 각 가변 길이 부호화 테이블을 참조하여 가변 길이 부호화된 정보를 다중화함으로써, 전체 테이블 구성 처리 과정에 대해 개별적인 처리 시간의 오차를 줄일 수 있고, 가변 길이 코드의 유사성을 기준으로 복수개의 가변 길이 부호화 테이블로 구분한 후 합성하여 출력하면 전체적으로 합성된 로직의 크기가 감소되어 장치 구성을 간략화시킬 수 있게 된다.

Description

동영상 압축 부호화장치의 가변길이부호화 테이블 분할 가변길이 부호화 장치 및 그 방법{Apparatus and method for variable length coding with divided variable length coding table in moving picture pression encoder}
본 발명은 화상전화, 화상회의, PCS(개인휴대통신)용 PDA(Personal Digital Assistant; 휴대용개인단말기), mobile용 전화 및 멀티미디어 장치, IMT-2000(3세대 이동통신 시스템) 영상 서비스를 위한 장치 등에서 동영상 압축 부호화 장치 내 가변 길이 부호화 장치에 관한 것으로, 특히 동영상 압축 부호화 장치에서 전송 채널이 허용하는 저전송선로를 통하는 비교적 적은 영상정보에 대해 가변 길이 부호화를 수행할 경우, 가변 길이 부호화 테이블을 가변 길이 코드의 유사성을 기준으로 복수개로 구분함으로써, 전체 테이블 구성 처리 과정에 대해 개별적인 처리 시간의 오차를 줄일 수 있고, 가변 길이 코드의 유사성을 기준으로 복수개의 가변 길이 부호화 테이블로 구분한 후 합성하여 출력하면 전체적으로 합성된 로직의 크기가 감소되어 장치 구성을 간략화시킬 수 있게 되는 동영상 압축 부호화장치의 가변길이부호화 테이블 분할 가변길이 부호화 장치 및 그 방법에 관한 것이다.
영상을 부호화하는 가변 길이 부호화 장치에는 기존의 MPEG1,MPEG2, H.261, H.263 등 여러가지 가변 길이 부호화 방법이 제안되어 왔다. 특히 HDTV(High Density TeleVision)의 표준 방식인 MPEG2의 가변 길이 부호화 장치의 특징은, 대용량의 영상 정보를 빠른 시간 안에 처리하기 위해, 헤더 정보와 영상 데이터를 구분하여 헤더 정보는 그대로 부호화하고 영상데이터는 여러 가지 병렬 구조로 구성되는데, 동시에 여러 개의 영상 데이터를 처리하는 것이다.
도1은 국제 표준 MPEG4의 부호화기 블럭 구성을 보인다. 기존의 MPEG2와는 달리 모양 정보 부호화를 추가로 수행하는 것이 가장 큰 차이점이다.
입력된 영상 데이터를 블럭 단위로 움직임 추정(Motion Estimation)을 수행하여 움직임 벡터를 생성하는 움직임 추정부(1)와; 상기 생성된 움직임 벡터를 이용하여 움직임 보상(Motion Compensation)을 수행하는 움직임 보상부(2)와; 상기 움직임보상부(2)에서 움직임 보상이 되지 않은 부분을 영상 정보 부호화(Texture coding)를 수행하는 영상정보 부호화부(4)와; 상기 움직임 보상부(2)에서 움직임 보상된 VOP(Video Object Plane; MEPG4에서 임의의 모양을 가지는 부호화 단위)와, 상기 영상정보 부호화부(4)에서 부호화된 대상물의 내부 정보가 가산되어 현재 영상 바로 이전 영상의 VOP인 이전 VOP를 재구성하는 이전VOP 재구성부(6)와; 입력된영상의 모양 정보에 대해 모양 정보 부호화(Shape coding)를 수행하는 모양정보부호화부(9)와; 상기 움직임추정부(1)에서 추정된 움직임 정보와, 상기 영상 정보 부호화부(4)에서 부호화된 내부 영상 정보 및 상기 모양 정보 부호화부(9)에서 부호화된 모양 정보를 다중화하는 다중화부(11)와; 상기 다중화부(11)에서 다중화된 비트스트림을 버퍼링한 후 출력하는 출력 버퍼(12)로 구성된다.
상기와 같은 국제 표준 MPEG4의 부호화기의 작용을 설명하면 다음과 같다.
먼저, 영상 화면이 입력되면, 블럭 단위로 움직임 추정(Motion Estimation)을 하고, 여기에서 생성된 움직임 벡터를 전송한다. 그런 후 움직임 벡터로 움직임 보상(Motion Compensation)을 한 후 움직임 보상이 되지 않은 부분을 영상 정보 부호화(Texture coding)를 수행한다.
그리고 영상의 모양 정보에 대해 모양 정보 부호화(Shape coding)를 수행한다. 모양정보 부호화부(9)의 출력 신호는 VOP 부호화기가 적용되는 분야에 따라 사용 여부가 가변되는 것으로, 점선으로 표시된 바와 같이, 모양 정보 부호화부(9)의 출력신호를 움직임 추정부(1), 움직임 보상부(2) 및 영상 정보 부호화부(4)에 입력시켜 움직임 추정, 움직임 보상 및 영상 정보 부호화(texture coding)하는 데 사용할 수 있다.
움직임추정부(1)에서 추정된 움직임 정보와, 영상 정보 부호화부(4)에서 부호화된 내부 영상 정보 및 모양 정보 부호화부(9)에서 부호화된 모양 정보는 다중화부(11)에서 다중화된 후, 출력 버퍼(12)를 통해 비트스트림으로 송신된다.
이렇게 다중화부(11)로 입력되어 송신될 데이터는, 움직임 추정부(1)로부터의 움직임 벡터 정보, 영상정보 부호화부(4)로부터의 매크로블럭 헤더 정보, 영상 데이터 정보 등으로서, 이러한 정보의 대다수가 가변 길이 부호화 코드를 사용하고 있다.
그런데 HDTV의 대용량의 영상 정보를 실시간에 처리해야 하는 경우가 아니라, 전송 채널이 허용하는 저 전송 선로에 대해서도 처리할 수 있는 비교적 적은 영상 정보(CIF: 352*288, QCIF: 176*144)를 효과적으로 가변 길이 부호화해야 하는 경우, 국제 표준 MPEG4의 부호화에서 영상 정보 부호화(texture coding)된 영상 정보를 가변 길이로 부호화하는 장치는 저 전송선로에 대한 비교적 적은 양의 영상 정보를 처리할 수 있도록 구현되어야 한다.
이렇게 저 전송 선로에 대한 비교적 적은 양의 영상 정보를 처리할 수 있도록 가변 길이 부호화 장치를 구현할 경우, 전체 가변 길이 부호화 테이블을 하나의 로직(logic)으로 구현하게 되면, 실제로 합성 과정에서 가변 길이 코드의 규칙성이나 상관성에 영향을 받지 않고 합성하므로, 로직의 크기가 매우 커지는 문제점이 있었다.
이에 본 발명은 상기와 같은 종래 기술의 문제점을 해결하기 위해 제안된 것으로, 본 발명의 목적은
동영상 압축 부호화 장치에서 전송 채널이 허용하는 저전송선로를 통하는 비교적 적은 영상정보에 대해 가변 길이 부호화를 수행할 경우, 가변 길이 부호화 테이블을 가변 길이 코드의 규칙성과 유사성을 기준으로 복수개로 분할하고, 각 가변 길이 부호화 테이블을 참조하여 가변 길이 부호화된 정보를 다중화함으로써, 전체 테이블 구성 처리 과정에 대해 개별적인 처리 시간의 오차를 줄일 수 있고, 가변 길이 코드의 유사성을 기준으로 복수개의 가변 길이 부호화 테이블로 구분한 후 합성하여 출력하면 전체적으로 합성된 로직의 크기가 감소되어 장치 구성을 간략화시킬 수 있게 되는 동영상 압축 부호화장치의 가변길이부호화 테이블 분할 가변길이 부호화 장치 및 그 방법을 제공하는 데 있다.
상기와 같은 목적을 달성하기 위하여 본 발명에 의한 동영상 압축 부호화장치의 가변길이부호화 테이블 분할 가변길이 부호화 장치는,
intra TCOEF(DCT 계수) VLC를 수행하는 장치를,
RUN, LEVEL, LAST값에 따라 해당 intra TCOEF VLC 테이블 모듈을 선택하는 intra TCOEF 모듈 선택부와;
상기 RUN, LEVEL, LAST값에 따라 intra TCOEF VLC 코드의 유사도가 높은 VLC 코드끼리 구분하여 4개의 모듈(module)로 구성된 제1 내지 제4 모듈과;
상기 제1 내지 제4 모듈에서 각각 출력되는 최대 가변 길이 코드와 부호화할 유효 비트수(code length), escape 코드를 상기 intra TCOEF 모듈 선택부에서 선택되는 신호에 따라 다중화하는 intra TCOEF & escape 다중화부로 구성하고,
inter(H.263) TCOEF VLC를 수행하는 장치를,
RUN, LEVEL, LAST값에 따라, inter TCOEF VLC와 H.263 VLC를 위한 해당 VLC테이블 모듈을 선택하는 inter TCOEF 모듈 선택부와;
상기 RUN, LEVEL, LAST값에 따라 inter TCOEF VLC 코드의 유사도가 높은 VLC 코드끼리 구분하여 7개의 모듈(module)로 구성된 제1 내지 제7 모듈과;
상기 제1 내지 제7 모듈에서 각각 출력되는 최대 가변 길이 코드와 부호화할 유효 비트수(code length), escape 코드를 상기 inter TCOEF 모듈 선택부에서 선택되는 신호에 따라 다중화하는 inter TCOEF & escape 다중화부로 구성함을 그 기술적 구성상의 특징으로 한다.
상기와 같은 목적을 달성하기 위하여 본 발명에 의한 동영상 압축 부호화장치의 가변길이부호화 테이블 분할 가변길이 부호화 방법은,
MPEG4 표준 가변 길이 부호화를 구성하기 위해 가변 길이 코드의 규칙성과 유사성을 판단하는 제1단계와;
상기 판단된 결과에 따라 유사 가변 길이 코드끼리 묶어 복수개의 가변 길이 코드화 테이블을 구성하는 제2단계와;
상기 복수개의 가변 길이 코드화 테이블 중 해당 가변 길이 코드화 테이블을 참조하여 가변 길이 코드화를 수행한 후 다중화하는 제3단계로 이루어짐을 그 방법적 구성상의 특징으로 한다.
도1은 국제 표준 MPEG4의 부호화기 블럭 구성도,
도2는 본 발명이 적용되는 동영상압축 부호화장치 내 가변 길이 부호화기 블럭 구성도,
도3은 MPEG4 인코드시 escape 모드 처리 작용을 보인 도면,
도4는 본 발명이 적용되는 동영상압축 부호화장치 내 가변 길이 부호화의 출력을 위한 장치 블럭 구성도,
도5는 도4의 TCOEF VLC/RVLC ESC. 수행부의 내부 블럭 구성도,
도6은 도5의 intra/inter TCOEF VLC & VLC ESC. 수행부의 내부 블럭 구성도,
도7은 도5의 intra/inter TCOEF RVLC & RVLC ESC. 수행부의 내부 블럭 구성도,
도8은 도6의 intra/inter TCOEF VLC 수행부 중에서 본 발명에 의한 intra TCOEF VLC 수행부의 블럭 구성도,
도9는 도6의 intra/inter TCOEF VLC 수행부 중에서 본 발명에 의한 inter(H.263) TCOEF VLC 수행부의 블럭 구성도,
도10은 도7의 intra/inter TCOEF RVLC 수행부 중에서 본 발명에 의한 intra TCOEF RVLC 수행부 블럭 구성도,
도11은 도7의 intra/inter TCOEF RVLC 수행부 중에서 본 발명에 의한 inter TCOEF RVLC 수행부 블럭 구성도.
<도면의 주요 부분에 대한 부호의 설명>
400: intra TCOEF 모듈선택부
410-413: 제1 내지 제4 intra TCOEF VLC 테이블 모듈
420: intra TCOEF & escape 다중화부
이하, 상기와 같은 본 발명에 의한 동영상 압축 부호화장치의 VLC 테이블 분할 가변길이 부호화 장치 및 그 방법을 첨부된 도면에 의거 상세히 설명하면 다음과 같다.
본 발명이 적용되는 동영상 압축 부호화 장치는, MPEG4 simple profile에 맞는 가변 길이 부호화(Variable Length Coding; VLC)와 H.263의 가변 길이 부호화, 그리고 에러 전송에 효과적인 역방향 가변 길이 부호화(Reversible Variable Length Coding; RVLC)의 복합 구조를 이루고 있고, simple profile에서는 모양 정보 부호화는 고려하지 않고 있다.
MPEG4 simple profile 부호화기의 가변 길이 부호화시 사용되는 가변길이 부호화 테이블(VLC 테이블)이 [표 1]에 구성된다.
VLC Table Name Index 개수 비트수 비고
1 mcbpc for I-VOPs 9 1-9
2 mcbpc for P-VOPs 21 1-9
3 cbpy for four non-transparent blocks 16 2-6
4 MVD 65 1-13
5 dct_dc_size_luminance 9 2-7 Not N-bit
6 dct_dc_size_chrominance 9 2-7 Not N-bit
7 Intra Lum. And Chr. TCOEF 113 3-13
8 Inter Lum. And Chr. TCOEF 113 3-13
9 RVLC for intra TCOEF 169 4-16
10 RVLC for inter TCOEF 169 4-16
그리고 H.263 VLC 테이블 구성이 [표 2]에 보인다.
VLC Table Name Index 개수 비트수 MPEG4와 비교
1 mcbpc for I-VOPs 9 1-9 동일
2 mcbpc for P-VOPs 21 1-9 동일
3 cbpy for four blocks 16 2-6 동일
4 MVD 65 1-13 구성이 다름
5 Inter TCOEF 113 3-13 동일(escape 다름)
도2는 본 발명이 적용되는 동영상압축 부호화장치의 가변 길이 부호화기 블럭 구성을 보인다.
MPEG4 simple profile에 맞는 가변 길이 부호화와 H.263의 가변 길이 부호화, 그리고 에러 전송에 효과적인 역방향 가변 길이 부호화(Reversible Variable Length Coding; RVLC)의 복합적인 구조를 가진다.
즉, 영상정보 부호화(texture coding)에서 나오는 매크로블럭 헤더 정보와 영상 데이터를 구분하여 처리하게 되는데, 매크로블럭 헤더 정보 중 휘도 블럭 패턴(Coded Block Pattern for Luminance; CBPY)을 intra_inter 플래그(intra 프레임 부호화와 inter 프레임 부호화를 선택하기 위한 제어 신호)에 따라 VLC 코드로 처리하는 휘도 블럭 패턴 처리부(100)와; 매크로블럭 헤더 정보 중 매크로블럭 타입(MB type)과 CBPC(Coded Block Pattern for Chrominance)의 정보를 VLC 코드로 정의하는 MCBPC(110)와; 매크로블럭 헤더 정보 중의 하나인 이전의 움직임 벡터와 현재의 움직임 벡터 간의 차이값을 VLC 코드로 처리하는 움직임 벡터 차이값 처리부(Motion Vector Difference; MVD)(120)와; 매크로블럭 헤더 정보 중의 하나인 휘도 DCT DC 크기(dct_dc_size_lum.)를 위한 VLC 코드를 처리하는 휘도 DCT DC 크기 처리부(130)와; 매크로블럭 헤더 정보 중의 하나인 색차 DCT DC 크기(dct_dc_size_chro.)를 위한 VLC 코드를 처리하는 색차 DCT DC 크기 처리부(140)와; 영상정보 부호화(texture coding) 과정에서 zigzag scan을 거친 DCT 계수(TCOEF)를 입력받아 버퍼링하고, escape 모드를 고려한 VLC를 하기 위해 필요한 클럭 레이트(clock rate)에 맞추어 RLC(203)로 출력하는 입력 버퍼(201)와;상기 입력버퍼(201)에서 출력되는 DCT AC 계수를 RLC(Run Length Coding)를 수행하여, VLC 부호화하기 위해 필요한 제어 정보를 출력하는 RLC(202)와; 역방향 가변 길이 부호화(RVLC)와 가변 길이 부호화(VLC)를 선택하기 위한 제어 신호(RVLC 플래그), H.263 TCOEF VLC를 선택하기 위한 제어 신호(H.263 플래그), intra 프레임 부호화와 inter 프레임 부호화를 선택하기 위한 제어 신호(intra_inter 플래그)를 선택적으로 입력받아, 역방향 가변 길이 부호화(RVLC), intra TCOEF 가변 길이 부호화(VLC), inter TCOEF VLC, H.263 TCOEF VLC가 선택적으로 수행되도록 상기 RLC(202)로부터의 경로를 각각 스위칭하는 제1 내지 제4 스위치(203-206)와; 상기 제1 내지 제3 스위치(203-205)에 의해 선택되면 MPEG4 intra TCOEF를 intra escape 모드로 VLC를 수행하는 intra TCOEF/MPEG4 intra ESC. 수행부(207)와; 상기 제1 내지 제3 스위치(203-205)에 의해 선택되면 MPEG4 inter TCOEF를 inter escape 모드로 VLC를 수행하는 inter TCOEF/MPEG4 inter ESC. 수행부(208)와; 상기 제1 및 제2 스위치(203)(204)에 의해 선택되면 H.263 TCOEF를 inter 프레임 부호화를 사용하여 escape 모드를 수행하는 TCOEF/H.263 ESC. 수행부(209)와; 상기 제1, 제2, 제4 스위치(203,204,206)에 의해 선택되면 intra TCOEF를 RVLC 수행하고 escape 모드시 고정길이 부호화(Fixed Length Coding; FLC)를 수행하는 intra RVLC TCOEF / ESC. FLC 수행부(210)와; 상기 제1, 제2, 제4 스위치(203,204,206)에 의해 선택되면 inter TCOEF를 RVLC 수행하고 escape 모드시 고정길이 부호화(Fixed Length Coding; FLC)를 수행하는 inter RVLC TCOEF / ESC. FLC 수행부(211)로 구성된다.
상기 RLC(202)에서 출력되는 VLC 부호화하기 위해 필요한 제어 정보는, 현재부호화되는 0이 아닌 DCT 계수가 블럭 내의 마지막 0이 아닌 DCT 계수인 지를 나타내는 LAST, 0이 아닌 계수의 값을 나타내는 LEVEL, 부호화되는 계수 앞의 연속적인 0의 개수를 나타내는 RUN이다.
상기 제1 스위치(203)는 상기 RLC(202)에서 출력되는 제어정보(LAST, LEVEL, RUN)를 RVLC 플래그에 따라 제2 스위치(204)와 제4스위치(206) 중 하나로 스위칭하고, 상기 제2 스위치(203)는 상기 제1 스위치(203)에서 출력되는 정보를 H.263플래그에 따라 제3 스위치(205)와 상기 TCOEF/H.263 ESC. 수행부(209) 중 하나로 스위칭하며, 상기 제3 스위치(205)는 상기 제2 스위치(204)에서 출력되는 정보를 intra_inter 플래그에 따라 상기 intra TCOEF/MPEG4 intra ESC. 수행부(207)와 inter TCOEF/MPEG4 inter ESC. 수행부(208) 중 하나로 스위칭하고, 상기 제4 스위치(206)는 상기 제1 스위치(203)에서 출력되는 정보를 상기 intra_inter 플래그에 따라 상기 intra RVLC TCOEF / ESC. FLC 수행부(210)와 inter RVLC TCOEF / ESC. FLC 수행부(211) 중 하나로 스위칭한다.
상기와 같은 본 발명이 적용되는 동영상압축 부호화장치의 가변 길이 부호화기의 작용을 설명하면 다음과 같다.
입력 버퍼(201)에 입력되는 정보는 영상정보(texture) 부호화에서 나오는 계수(coefficient)로 지그재그 스캔(zigzag scan)을 거친 정보이다. 입력 버퍼(201)에서는 escape mode를 고려한 VLC를 하기 위해 필요한 클럭 레이트(clock rate)에 맞추어 계수를 RLC(202)로 읽어내고 RLC(202)는 RUN,LEVEL,LAST를 구하기 위한 RLC(Run Length Coding)를 한다.
각각의 모듈(207,208,209,210,211)을 선택하기 위해 RVLC 플래그, H.263 플래그, Intra_Inter 플래그가 이용된다.
MPEG4 Inter TCOEF VLC 테이블은 H.263 TCOEF VLC 테이블과 동일하다. 그러나 escape mode는 다르게 구성된다.
영상정보 부호화(texture coding)에서 나오는 매크로블럭 헤더 정보와 영상 데이터를 구분하여 처리하게 되는데, 매크로블럭 헤더 정보 처리 작용에 대해 설명하면, CBPY(100)는 휘도 블럭 패턴을 VLC하고, MCBPC(110)는 MB 타입과 CBPC(Coded Block Pattern for Chrominance)의 정보를 VLC 코드로 정의한다. 그리고 MVD(120)는 이전의 움직임 벡터와 현재의 움직임 벡터의 차이값을 VLC하고, 휘도 DCT DC 크기 처리부(130)는 휘도 DCT DC 크기를 VLC하며, 색차 DCT DC 크기 처리부(140)는 색차 DCT DC 크기를 VLC한다.
이제, 영상 데이터 처리인 입력 버퍼(201)에 이어, RLC의 동작을 설명하면, 입력 버퍼(201)에서 출력되는 AC 계수값을 RLC를 수행하여, LAST, RUN, LEVEL로 이루어진 일련의 EVENT들을 출력해서, VLC 부호화될 수 있도록 한다.
이때 LAST가 '0'인 경우 0이 아닌 계수가 블럭 내에 더 존재한다는 것을 의미하고, '1'인 경우 0이 아닌 계수가 블럭 내에 더 이상 존재하지 않음을 나타낸다.
이렇게 RLC를 수행하여 LAST, RUN, LEVEL을 출력하는 방법을 코드(code)로 나타내면 다음과 같다.
count <= count + 1 ;
if(!AC_Coefficient) begin
run_cnt <= run_cnt + 1 ;
RLC_E <= 1'b0 ;
end
else begin
run_cnt <= 0;
LEVEL_tmp <= AC_Coefficient;
RUN_tmp <= run_cnt;
if(LEVEL_tmp != 12'd0)
RLC_E <= 1'b1;
end
LEVEL <= LEVEL_tmp;
RUN <= RUN_tmp;
if(count == 65) begin --------(1)
LAST <= 1'b1;
LEVEL <= LEVEL_tmp;
RUN <= RUN_tmp;
RLC_E <= 1'b1;
end
상기에서 input은 AC_Coefficient, count flag(64 or 65)이고, output은 RUN, LEVEL, LAST, RLC_E(RLC_Enable)이다. intra mode일 때, (1)의 count == 65는 DC 값을 빼고 LAST를 결정해야 하므로 64로 바뀐다. 그러나 Intra_dc_thr에 의해 DC값을 AC값과 동일한 방법으로 하여 처리하게 되면 Intra mode이더라도 65로 처리한다. 실제 RUN, LEVEL, LAST의 정보는 RLC_Enable로써 나타낸다.
도3은 MPEG4 인코딩(encoding)시 escape 모드 처리 작용을 보인다.
기존의 MPEG1, MPEG2, H.261, H.263에서의 escape 모드 처리 방법은 고정 길이 부호화(Fixed Length Coding; FLC)를 수행했다. 그러나 본 발명에 적용되는 MPEG4 escape mode는 도3에서 보여지는 바와 같이, 영상 압축률을 향상시키기 위해 3단계로 구분하여 처리한다. 즉, Intra TCOEF와 Inter TCOEF로 나누어져 각각 다른 테이블을 이용하며 escape mode에서도 LEVEL과 RUN값을 변화시키는 table이 각각 다르다.
그러나 신호 흐름의 내용은 유사하다. 먼저 RLC(202)에서 나오는 RUN, LEVEL, LAST값을 가지고 TCOEF VLC 테이블을 참조하여 TCOEF VLC 코드를 결정한다. 그래서 TCOEF VLC 테이블의 해당 인덱스 안에 값이 존재하면 일반적인(normal) VLC를 수행한다(ST11,ST12).
그러나 TCOEF VLC 테이블의 해당 인덱스 안에 값이 존재하지 않으면 escapemode로 선택된다. 그래서 LEVEL 값을 변화시킨다. 변화된 LEVEL값은 LEVEL+로, sign(LEVEL)*[abs(LEVEL)-LMAX]이다(ST13)(제1단계). 여기서 LMAX는 주어진 쌍 (LAST,RUN)의 LEVEL의 최대값이다.
이렇게 LEVEL값을 변화시킨 후, 동일한 TCOEF VLC 테이블을 참조하여 해당 인덱스 안에 값이 존재하면 TCOEF VLC 코드를 정한다(ST14,ST15).
그러나 ST14에서 상기 TCOEF VLC 테이블에 값이 존재하지 않아, 다시 escape mode가 선택되면, RUN값을 변화시킨다. 변화된 RUN값은 RUN+로, RUN-(RMAX + 1)이다(ST16)(제2단계). 여기서 RMAX는 주어진 쌍 (LAST, LEVEL)의 RUN의 최대값이다.
이렇게 RUN 값을 변화시킨 후, 다시 동일한 TCOEF VLC 테이블을 참조하여 TCOEF VLC 코드를 정한다(ST17,ST18). 그러나 상기 TCOEF VLC 테이블에 VLC 코드가 존재하지 않아 escape 모드가 선택되면, FLC(Fixed Length Coding)를 수행한다(ST19)(제3단계).
위와 같은 동작 수행은 Intra일 때와 Inter일 때 동일한 방법으로 수행되고 적용되는 테이블의 구성이 다르다.
도4는 본 발명이 적용되는 동영상압축 부호화장치의 가변 길이 부호화의 출력을 위한 장치 블럭 구성을 보인다.
RVLC 플래그에 따라 normal VLC 기능과 RVLC 기능을 수행하고, VLC escape 모드시 FLC를 수행하는 TCOEF VLC/RVLC ESC. 수행부(300)와; 상기 TCOEF VLC/RVLC ESC. 수행부(300)에서 출력되는 가변 길이 부호화(VLC) 코드와 고정 길이부호화(FLC) 코드를 블럭(block) 단위로 하나의 비트열로 램(500)에 쓰기 위해 재구성하는 TCOEF 비트 스트림 생성기(400)와; 상기 TCOEF 비트 스트림 생성기(400)에서 출력되는 TCOEF 비트열을 저장하는 TCOEF VLC/RVLC 버퍼(램)(500)으로 구성된다.
상기 TCOEF VLC/RVLC ESC. 수행부(300)는 도5에 도시된 바와 같이, RVLC 플래그가 VLC 수행을 나타내면 normal VLC 기능을 수행하고 VLC escape 모드시 FLC를 수행하는 intra/inter TCOEF VLC & VLC ESC. 수행부(310)와; 상기 RVLC 플래그가 RVLC 수행을 나타내면 RVLC 기능을 수행하고 RVLC escape 모드시 FLC를 수행하는 intra/inter TCOEF RVLC & RVLC ESC. 수행부(320)와; 상기 RVLC 플래그에 따라, 상기 intra/inter TCOEF VLC & VLC ESC. 수행부(310)에서 출력되는 intra/inter TCOEF VLC/FLC 코드와 상기 intra/inter TCOEF RVLC & RVLC ESC. 수행부(320)에서 출력되는 intra/inter TCOEF RVLC/FLC 코드를 다중화하여 VLC 코드와 FLC 코드를 상기 TCOEF 비트 스트림 생성기(400)로 출력하는 TCOEF VLC/FLC 다중화부(330)로 구성된다.
상기 intra/inter TCOEF VLC & VLC ESC. 수행부(310)는 도6에 도시된 바와 같이, TCOEF VLC 테이블에서 원하는 VLC 모드를 검색하여 그 결과에 따라 escape 모드인 지를 판단하고, escape 모드이면 타이밍 컨트롤러(313)로 escape 모드 신호를 전송하며, 판단된 모드에 따라 가변 길이 부호화를 수행하는 intra/inter TCOEF VLC 수행부(315)와; RMAX, RUN+를 계산하는 intra/inter RMAX, RUN+ 계산부(311)와; LMAX, LEVEL+를 계산하는 intra/inter LMAX, LEVEL+ 계산부(312)와; 상기intra/inter RMAX, RUN+ 계산부(311)에서 계산된 RMAX, RUN+를 제공받고, 상기 intra/inter LMAX, LEVEL+ 계산부(312)에서 계산된 LMAX, LEVEL+를 제공받으며, 상기 intra/inter TCOEF VLC 수행부(315)로부터 전송받는 escape 모드 신호에 따라, LEVEL과 LEVEL+ 선택 기능과 RUN과 RUN+ 선택 기능을 수행하고 각 해당 블럭의 동작 제어 기능을 수행하는 타이밍 컨트롤러(313)와; 상기 타이밍 컨트롤러(313)의 제어에 따라, TCOEF 부호화를 위해 LEVEL의 절대치를 계산하는 LEVEL 절대값 계산부(314)와; 상기 intra/inter TCOEF VLC 수행부(315)에서 RUN, LEVEL, LAST를 이용한 가변 길이 부호화가 끝난 시점에, 상기 LEVEL 절대값 계산부(314)에서 출력되는 데이터를 이용하여 상기 intra/inter TCOEF VLC 수행부(315)로부터의 데이터에 사인비트(sign bit)를 첨가하는 부호비트 에더(sign bit adder)(317)와; 상기 타이밍 컨트롤러(313)의 동작 제어 신호에 따라 동작하여, MPEG4와 H.263의 DCT 계수에 대해 각각 FLC 부호화를 수행하는 MPEG4/H.263 TCOEF FLC 수행부(316)와; 상기 타이밍 컨트롤러(313)의 제어에 따라, 상기 부호 비트 에더(317)의 출력과 상기 MPEG4/H.263 TCOEF FLC 수행부(316)의 출력을 다중화하는 intra/inter TCOEF VLC/FLC 다중화부(318)로 구성된다.
상기 intra/inter TCOEF RVLC & RVLC ESC. 수행부(320)는 도7에 도시된 바와 같이, TCOEF 부호화를 위해 LEVEL의 절대치를 계산하는 LEVEL 절대값 계산부(321)와; 상기 LEVEL 절대값 계산부(321)에서 출력되는 신호, RLC 인에이블 신호, RVLC 플래그, intra_inter 플래그를 입력받아 RVLC를 수행하는 intra/inter TCOEF RVLC 수행부(322)와; 상기 intra/inter TCOEF RVLC 수행부(322)에서 출력되는 RVLC 부호화 코드에 상기 LEVEL 절대값 계산부(321)로부터의 LEVEL sign bit를 첨가하는 sign bit adder(323)와; escape 모드일 때 FLC를 수행하는 TCOEF RVLC FLC 수행부(324)와; 상기 TCOEF RVLC FLC 수행부(324)의 출력과 상기 sign bit adder(323)의 출력을, 상기 intra/inter TCOEF RVLC 수행부(322)로부터의 escape 모드 신호에 따라 다중화하여 상기 TCOEF VLC/FLC 다중화부(330)로 출력하는 intra/inter TCOEF RVLC/FLC 다중화부(325)로 구성된다.
상기와 같은 본 발명이 적용되는 동영상압축 부호화장치의 가변 길이 부호화의 출력을 위한 장치의 작용을 설명하면 다음과 같다.
TCOEF VLC/RVLC ESC. 수행부(300)는 RVLC 플래그에 따라 normal VLC 기능과 RVLC 기능을 수행하고, VLC escape 모드시 FLC를 수행한다. TCOEF 비트 스트림 생성기(400)는 TCOEF VLC/RVLC ESC. 수행부(300)에서 출력되는 가변 길이 부호화(VLC) 코드와 고정 길이 부호화(FLC) 코드를 블럭(block) 단위로 하나의 비트열로 램(500)에 쓰기 위해 재구성한다. TCOEF VLC/RVLC 버퍼(램)(500)은 TCOEF 비트 스트림 생성기(400)에서 출력되는 TCOEF 비트열을 저장하고 원하는 곳에 출력한다.
상기 TCOEF VLC/RVLC ESC. 수행부(300)의 작용을 좀더 상세히 설명하면, 도5에 도시된 바와 같이, RVLC 플래그로 2개의 module(310)(320)을 선택한다.
즉, RVLC 플래그가 VLC 수행을 나타내면, intra/inter TCOEF VLC & VLC ESC. 수행부(310)는 normal VLC 기능을 수행하고 VLC escape 모드시 FLC를 수행한다. 그리고 상기 RVLC 플래그가 RVLC 수행을 나타내면 intra/inter TCOEF RVLC & RVLC ESC. 수행부(320)는 RVLC 기능을 수행하고 RVLC escape 모드시 FLC를 수행한다.
intra/inter TCOEF VLC & VLC ESC. 수행부(310)는 MPEG4와 H.263에 대해 같은 TCOEF VLC 테이블을 사용하여 부호화하고, intra/inter TCOEF RVLC & RVLC ESC. 수행부(320)는 MPEG4와 H.263에 대해 다른 VLC 테이블을 사용하여 부호화한다.
TCOEF VLC/FLC 다중화부(330)는 상기 RVLC 플래그에 따라, 상기 intra/inter TCOEF VLC & VLC ESC. 수행부(310)에서 출력되는 intra/inter TCOEF VLC/FLC 코드와 상기 intra/inter TCOEF RVLC & RVLC ESC. 수행부(320)에서 출력되는 intra/inter TCOEF RVLC/FLC 코드를 다중화하여 VLC 코드와 FLC 코드를 상기 TCOEF 비트 스트림 생성기(400)로 출력한다.
그리고 상기 intra/inter TCOEF VLC & VLC ESC. 수행부(310)의 작용을 좀더 상세히 설명하면 도6에 도시된 바와 같이, intra/inter TCOEF VLC 수행부(315)는, RUN, LEVEL, LAST를 가지고 TCOEF VLC 테이블에서 먼저 인덱스를 찾고, 이 때 escape mode이면 타이밍 컨트롤러(313)로 escape 모드 신호를 전송한다. 그러면 타이밍 컨트롤러(313)는 intra/inter LMAX, LEVEL+ 계산부(312)에서 이미 찾아진 LEVEL+ 값을 선택하여 intra/inter TCOEF VLC 수행부(315)로 전송하고, 다시 TCOEF VLC 테이블을 찾도록 한다. 그 결과 escape mode가 다시 선택되면 미리 선택된 RUN+를 가지고 다시 TCOEF VLC 테이블을 참조한다. 그 결과 escape mode가 다시 선택되면 FLC를 수행하도록 타이밍 컨트롤러(313)에서 MPEG4/H.263 TCOEF FLC 수행부(316)를 제어하여 FLC를 수행하도록 한다.
이러한 방법은 Intra TCOEF일 때와 Inter TCOEF일 때 동일하게 적용되고, 실제 구성 테이블과 LEVEL+와 RUN+ 참고 표는 다르다. 그리고 Inter TCOEF VLC는 H.263 VLC와 동일하게 적용된다.
그리고 escape mode일 때 FLC 방법이 다르므로 H.263 플래그에 의해 FLC 방법을 스위칭한다.
한편 LEVEL 절대값 계산부(314)는 LEVEL 값의 절대치를 계산한다. 그리고 signbit adder(부호비트 가산기)는 intra/inter TCOEF VLC 수행부(315)의 출력 신호인 unsigned VLC code에 sign_bit를 붙인다.
intra/inter TCOEF VLC/FLC 다중화부(318)는 타이밍 컨트롤러(313)의 제어에 따라 상기 부호 비트 에더(317)의 출력과 상기 MPEG4/H.263 TCOEF FLC 수행부(316)의 출력을 다중화하여 상기 TCOEF VLC/FLC 다중화부(330)로 출력한다.
또한 intra/inter TCOEF RVLC & RVLC ESC. 수행부(320)의 작용을 상세히 설명하면, 도7에 도시된 바와 같이, RVLC는 Intra RVLC와 Inter RVLC의 테이블 구성이 다르다. RVLC가 escape mode일 때, FLC 방법은 Intra 프레임 부호화와 Inter 프레임 부호화가 모두 같다.
RVLC 부호화를 위해 선택되는 모드 정보를 이용하여 LEVEL의 sign bit를 처리하고, escape 모드일 때 FLC를 수행하며, 이들의 정보를 intra/inter TCOEF RVLC/FLC 다중호부(325)에서 상기 escape 모드임을 나타내는 신호에 따라 다중화하여 상기 TCOEF VLC/FLC 다중화부(330)로 출력한다.
이제, 본 발명에 의한 동영상 압축 부호화장치의 VLC 테이블 분할 가변길이 부호화 장치의 구성을 설명한다.
도8은 도6의 intra/inter TCOEF VLC 수행부(315) 중 inter(H.263)가 아닌 intra TCOEF VLC 수행부의 블럭 구성을 보인다.
도시된 바와 같이, RUN, LEVEL, LAST값에 따라 해당 intra TCOEF VLC 테이블 모듈을 선택하는 intra TCOEF 모듈 선택부(400)와; 상기 RUN, LEVEL, LAST값에 따라 intra TCOEF VLC 코드의 유사도가 높은 VLC 코드끼리 구분하여 4개의 모듈(module)로 구성된 제1 내지 제4 모듈(410-413)과; 상기 제1 내지 제4 모듈(410-413)에서 각각 출력되는 최대 가변 길이 코드와 부호화할 유효 비트수(code length), escape 코드를 상기 intra TCOEF 모듈 선택부(400)에서 선택되는 신호에 따라 다중화하는 intra TCOEF & escape 다중화부(420)로 구성된다.
도9는 도6의 intra/inter TCOEF VLC 수행부(315) 내부의 inter(H.263) TCOEF VLC 수행부의 구성을 보인다.
도시된 바와 같이, RUN, LEVEL, LAST값에 따라, inter TCOEF VLC와 H.263 VLC를 위한 해당 VLC 테이블 모듈을 선택하는 inter TCOEF 모듈 선택부(500)와; 상기 RUN, LEVEL, LAST값에 따라 inter TCOEF VLC 코드의 유사도가 높은 VLC 코드끼리 구분하여 7개의 모듈(module)로 구성된 제1 내지 제7 모듈(510-516)과; 상기 제1 내지 제7 모듈(510-516)에서 각각 출력되는 최대 가변 길이 코드와 부호화할 유효 비트수(code length), escape 코드를 상기 inter TCOEF 모듈 선택부(500)에서 선택되는 신호에 따라 다중화하는 inter TCOEF & escape 다중화부(520)로 구성된다.
도10은 도7의 intra/inter TCOEF RVLC 수행부(322) 중에서 intra TCOEF RVLC 수행부 블럭 구성을 보인다.
도시된 바와 같이, RUN, LEVEL, LAST값에 따라 해당 intra TCOEF RVLC 테이블 모듈을 선택하는 intra TCOEF RVLC 모듈 선택부(600)와; 상기 RUN, LEVEL, LAST값에 따라 intra TCOEF RVLC 코드의 유사도가 높은 RVLC 코드끼리 구분하여 13개의 모듈(module)로 구성된 제1 내지 제13 모듈(610-622)과; 상기 제1 내지 제13 모듈(610-622)에서 각각 출력되는 최대 역방향 가변 길이 코드와 부호화할 유효 비트수(code length), escape 코드를 상기 intra TCOEF RVLC 모듈 선택부(600)에서 선택되는 신호에 따라 다중화하는 intra TCOEF RVLC & escape 다중화부(630)로 구성된다.
도11은 도7의 intra/inter TCOEF RVLC 수행부(322) 중에서 inter TCOEF RVLC 수행부 블럭 구성을 보인다.
도시된 바와 같이, RUN, LEVEL, LAST값에 따라 해당 inter TCOEF RVLC 테이블 모듈을 선택하는 inter TCOEF RVLC 모듈 선택부(700)와; 상기 RUN, LEVEL, LAST값에 따라 inter TCOEF RVLC 코드의 유사도가 높은 RVLC 코드끼리 구분하여 12개의 모듈(module)로 구성된 제1 내지 제12 모듈(710-721)과; 상기 제1 내지 제12 모듈(710-721)에서 각각 출력되는 최대 역방향 가변 길이 코드와 부호화할 유효 비트수(code length), escape 코드를 상기 inter TCOEF RVLC 모듈 선택부(700)에서 선택되는 신호에 따라 다중화하는 inter TCOEF RVLC & escape 다중화부(730)로 구성된다.
상기와 같은 본 발명에 의한 동영상 압축 부호화 장치의 VLC 테이블 분할 가변길이 부호화 장치의 작용에 대해 설명하면 다음과 같다.
먼저, 영상 정보 가변 길이 부호화를 위한 구성에서 MPEG4 표준 가변 길이 부호화를 구성하기 위해 가변 길이 코드의 규칙성과 유사성을 판단하는 제1단계와; 상기 판단된 결과에 따라 유사 가변 길이 코드끼리 묶어 복수개의 가변 길이 코드화 테이블을 구성하는 제2단계와; 상기 복수개의 가변 길이 코드화 테이블 중 해당 가변 길이 코드화 테이블을 참조하여 가변 길이 코드화를 수행한 후 다중화하는 제3단계를 수행한다.
상기 제2단계는, intra TCOEF VLC의 경우, intra TCOEF VLC 코드의 유사도가 높은 VLC 코드끼리 구분하여 4개의 intra MPEG4 VLC 테이블로 구성하고, inter(H.263) TCOEF VLC의 경우, inter TCOEF VLC 코드의 유사도가 높은 VLC 코드끼리 구분하여 inter TCOEF VLC와 H.263 VLC를 위한 테이블을 7개의 모듈(module)로 구성하며, intra TCOEF RVLC의 경우, intra TCOEF RVLC 코드의 유사도가 높은 RVLC 코드끼리 구분하여 13개의 intra TCOEF RVLC 테이블로 구성하고, inter TCOEF RVLC의 경우, inter TCOEF RVLC 코드의 유사도가 높은 RVLC 코드끼리 구분하여 12개의 inter TCOEF RVLC 테이블로 구성한다.
각 가변 길이 부호화의 경우에 대해 상세히 설명하면, intra TCOEF VLC의 경우, 부호화 코드의 종류를 구분하여 4개의 모듈로 구성하고, 4개 테이블 모듈의 각각의 최대 가변 길이 코드와 부호화할 유효 비트수(code length), escape 코드를intra TCOEF 모듈 선택부(400)에서 선택되는 신호에 의해 다중화를 수행한다.
그리고 도6의 Intra/Inter TCOEF VLC 수행부(315)에서 inter(H.263) TCOEF VLC의 경우, intra mode와 같은 이유로 inter TCOEF VLC 모듈을 7개의 모듈로 구성한다. 그리고 7개 테이블의 각각의 최대 가변 길이 코드와 부호화할 유효 비트수, escape 코드를 모듈 선택기에서 선택되는 신호에 의해 다중화를 수행한다.
도7의 Intra/Inter TCOEF RVLC 수행부(322)에서 intra TCOEF RVLC 수행부는, 도10에 도시된 바와 같이, intra TCOEF RVLC 코드의 유사도가 높은 RVLC 코드끼리 구분하여 13개의 intra TCOEF RVLC 테이블로 구성한다. 그리고 역시 intra TCOEF RVLC 모듈 선택부(600)에서 선택되는 신호에 의해 다중화를 수행하게 된다.
그리고 도7의 Intra/Inter TCOEF RVLC 수행부(322)에서 Inter TCOEF RVLC 수행부는, 도11에 도시된 바와 같이, inter TCOEF RVLC 코드의 유사도가 높은 RVLC 코드끼리 구분하여 12개의 inter TCOEF RVLC 테이블로 구성한다. 그래서 12개 테이블의 각각의 최대 역방향 가변 길이 코드와 부호화할 유효 비트 수, escape 코드를 inter TCOEF RVLC 모듈 선택부(700)에서 선택되는 신호에 의해 다중화를 수행한다.
이렇게 RUN과 LEVEL, LAST의 값의 범위를 가변 길이 코드의 유사성이 높은 것끼리 한 묶음으로 처리할 수 있도록 정해서, logic 구현이 가장 원할하도록 한다.
이러한 과정은 가변 길이 부호화 테이블을 구분하는 경우의 수를 최소화하여, 시간적인 지연의 오차가 최소화된다. 이렇게 하면 각 가변 길이 부호화 수행부 간의 처리 시간에 대한 오차를 조정하고 또한 각 가변 길이 부호화 수행부 안에서처리 시간의 오차를 조정함으로써 전체 테이블 구성 처리 과정에 대해 개별적인 처리 시간의 오차를 줄일 수 있다.
이상에서 살펴본 바와 같이, 본 발명 동영상 압축 부호화장치의 가변길이부호화 테이블 분할 가변길이 부호화 장치 및 그 방법은, 동영상 압축 부호화 장치에서 전송 채널이 허용하는 저전송선로를 통하는 비교적 적은 영상정보에 대해 가변 길이 부호화를 수행할 경우, 가변 길이 부호화 테이블을 가변 길이 코드의 규칙성과 유사성을 기준으로 복수개로 분할함으로써, 각 가변 길이 부호화 수행부 간의 처리 시간에 대한 오차를 조정하고 또한 각 가변 길이 부호화 수행부 안에서 처리 시간의 오차를 조정하여, 전체 테이블 구성 처리 과정에 대해 개별적인 처리 시간의 오차를 줄일 수 있는 효과가 있다.
그리고 전체 VLC 테이블을 종래와 같이 하나의 로직으로 구현하면, 실제로 합성 과정에서 가변 길이 코드의 규칙성이나 상관성에 영향을 받지 않고 합성하므로 로직의 크기가 매우 커졌으나, 본 발명에 의해 가변 길이 코드의 유사성을 기준으로 여러 모듈로 구분한 후 합성하면 전체적으로 합성되는 로직의 크기가 크게 줄어들게 되어 장치 구성을 간략화시킬 수 있는 효과가 있다.

Claims (4)

  1. 영상 정보 가변 길이 부호화 방법에 있어서,
    MPEG4 표준 가변 길이 부호화를 구성하기 위해 가변 길이 코드의 규칙성과 유사성을 판단하는 제1단계와;
    상기 판단된 결과에 따라 유사 가변 길이 코드끼리 묶어 복수개의 가변 길이 코드화 테이블을 구성하는 제2단계와;
    상기 복수개의 가변 길이 코드화 테이블 중 해당 가변 길이 코드화 테이블을 참조하여 가변 길이 코드화를 수행한 후 다중화하는 제3단계를 수행함을 특징으로 하는 동영상 압축 부호화장치의 가변길이부호화 테이블 분할 가변길이 부호화 방법.
  2. 제 1 항에 있어서, 상기 제2단계는,
    intra TCOEF VLC의 경우, intra TCOEF VLC 코드의 유사도가 높은 VLC 코드끼리 구분하여 4개의 intra MPEG4 VLC 테이블로 구성하고, inter(H.263) TCOEF VLC의 경우, inter TCOEF VLC 코드의 유사도가 높은 VLC 코드끼리 구분하여 inter TCOEF VLC와 H.263 VLC를 위한 테이블을 7개의 모듈(module)로 구성하며, intra TCOEF RVLC의 경우, intra TCOEF RVLC 코드의 유사도가 높은 RVLC 코드끼리 구분하여 13개의 intra TCOEF RVLC 테이블로 구성하고, inter TCOEF RVLC의 경우, inter TCOEFRVLC 코드의 유사도가 높은 RVLC 코드끼리 구분하여 12개의 inter TCOEF RVLC 테이블로 구성하는 것을 특징으로 하는 동영상 압축 부호화장치의 가변길이부호화 테이블 분할 가변길이 부호화 방법.
  3. 동영상 압축 부호화장치에서 intra/inter TCOEF(DCT 계수) 가변 길이 부호화를 수행하는 장치에 있어서,
    intra TCOEF(DCT 계수) VLC를 수행하는 장치는,
    RUN, LEVEL, LAST값에 따라 해당 intra TCOEF VLC 테이블 모듈을 선택하는 intra TCOEF 모듈 선택부와;
    상기 RUN, LEVEL, LAST값에 따라 intra TCOEF VLC 코드의 유사도가 높은 VLC 코드끼리 구분하여 4개의 모듈(module)로 구성된 제1 내지 제4 모듈과;
    상기 제1 내지 제4 모듈에서 각각 출력되는 최대 가변 길이 코드와 부호화할 유효 비트수(code length), escape 코드를 상기 intra TCOEF 모듈 선택부에서 선택되는 신호에 따라 다중화하는 intra TCOEF & escape 다중화부로 구성되고,
    inter(H.263) TCOEF VLC를 수행하는 장치는,
    RUN, LEVEL, LAST값에 따라, inter TCOEF VLC와 H.263 VLC를 위한 해당 VLC 테이블 모듈을 선택하는 inter TCOEF 모듈 선택부와;
    상기 RUN, LEVEL, LAST값에 따라 inter TCOEF VLC 코드의 유사도가 높은 VLC 코드끼리 구분하여 7개의 모듈(module)로 구성된 제1 내지 제7 모듈과;
    상기 제1 내지 제7 모듈에서 각각 출력되는 최대 가변 길이 코드와 부호화할 유효 비트수(code length), escape 코드를 상기 inter TCOEF 모듈 선택부에서 선택되는 신호에 따라 다중화하는 inter TCOEF & escape 다중화부로 구성된 것을 특징으로 하는 동영상 압축 부호화장치의 가변길이부호화 테이블 분할 가변길이 부호화 장치.
  4. 동영상 압축 부호화장치에서 intra/inter TCOEF(DCT 계수) 역방향 가변 길이 부호화(RVLC)를 수행하는 장치에 있어서,
    intra TCOEF RVLC를 수행하는 장치는,
    RUN, LEVEL, LAST값에 따라 해당 intra TCOEF RVLC 테이블 모듈을 선택하는 intra TCOEF RVLC 모듈 선택부와;
    상기 RUN, LEVEL, LAST값에 따라 intra TCOEF RVLC 코드의 유사도가 높은 RVLC 코드끼리 구분하여 13개의 모듈(module)로 구성된 제1 내지 제13 모듈과;
    상기 제1 내지 제13 모듈에서 각각 출력되는 최대 역방향 가변 길이 코드와 부호화할 유효 비트수(code length), escape 코드를 상기 intra TCOEF RVLC 모듈 선택부에서 선택되는 신호에 따라 다중화하는 intra TCOEF RVLC & escape 다중화부로 구성되고,
    inter TCOEF RVLC를 수행하는 장치는,
    RUN, LEVEL, LAST값에 따라 해당 inter TCOEF RVLC 테이블 모듈을 선택하는inter TCOEF RVLC 모듈 선택부와;
    상기 RUN, LEVEL, LAST값에 따라 inter TCOEF RVLC 코드의 유사도가 높은 RVLC 코드끼리 구분하여 12개의 모듈(module)로 구성된 제1 내지 제12 모듈과;
    상기 제1 내지 제12 모듈에서 각각 출력되는 최대 역방향 가변 길이 코드와 부호화할 유효 비트수(code length), escape 코드를 상기 inter TCOEF RVLC 모듈 선택부에서 선택되는 신호에 따라 다중화하는 inter TCOEF RVLC & escape 다중화부로 구성된 것을 특징으로 하는 동영상 압축 부호화장치의 가변길이부호화 테이블 분할 가변길이 부호화 장치.
KR1020000039640A 2000-07-11 2000-07-11 동영상 압축 부호화장치의 가변길이부호화 테이블 분할가변길이 부호화 장치 및 그 방법 KR100349650B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000039640A KR100349650B1 (ko) 2000-07-11 2000-07-11 동영상 압축 부호화장치의 가변길이부호화 테이블 분할가변길이 부호화 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000039640A KR100349650B1 (ko) 2000-07-11 2000-07-11 동영상 압축 부호화장치의 가변길이부호화 테이블 분할가변길이 부호화 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20020006150A true KR20020006150A (ko) 2002-01-19
KR100349650B1 KR100349650B1 (ko) 2002-08-24

Family

ID=19677413

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000039640A KR100349650B1 (ko) 2000-07-11 2000-07-11 동영상 압축 부호화장치의 가변길이부호화 테이블 분할가변길이 부호화 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR100349650B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7693340B2 (en) 2002-04-15 2010-04-06 Panasonic Corporation Picture coding method and picture decoding method

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7693340B2 (en) 2002-04-15 2010-04-06 Panasonic Corporation Picture coding method and picture decoding method
US7697770B2 (en) 2002-04-15 2010-04-13 Panasonic Corporation Picture coding method and picture decoding method
KR100954244B1 (ko) * 2002-04-15 2010-04-23 파나소닉 주식회사 화상 복호화 방법
KR100956926B1 (ko) * 2002-04-15 2010-05-11 파나소닉 주식회사 화상 부호화 방법
US7769238B2 (en) 2002-04-15 2010-08-03 Panasonic Corporation Picture coding method and picture decoding method
US8139878B2 (en) 2002-04-15 2012-03-20 Panasonic Corporation Picture coding method and picture decoding method
US8265403B2 (en) 2002-04-15 2012-09-11 Panasonic Corporation Picture coding method and picture decoding method
US8290286B2 (en) 2002-04-15 2012-10-16 Panasonic Corporation Picture coding method and picture decoding method
KR101257212B1 (ko) * 2002-04-15 2013-04-23 파나소닉 주식회사 화상 부호화 장치 및 화상 복호화 장치
US8526748B2 (en) 2002-04-15 2013-09-03 Panasonic Corporation Picture coding method and picture decoding method
US8867855B2 (en) 2002-04-15 2014-10-21 Panasonic Intellectual Property Corporation Of America Picture coding method and picture decoding method

Also Published As

Publication number Publication date
KR100349650B1 (ko) 2002-08-24

Similar Documents

Publication Publication Date Title
US5623312A (en) Compressed-domain bit rate reduction system
US5687095A (en) Video transmission rate matching for multimedia communication systems
US6031575A (en) Method and apparatus for encoding an image signal, method and apparatus for decoding an image signal, and recording medium
CA2159847C (en) Coded domain picture composition for multimedia communications systems
EP0577327B1 (en) Efficient frequency scalable video encoding with coefficient selection
RU2322770C2 (ru) Способ и устройство для указания параметров квантователя в системе видеокодирования
US5623308A (en) Multiple resolution, multi-stream video system using a single standard coder
KR100694275B1 (ko) 신택스레벨에서 동화상의 압축 부호화된 비트스트림을변환하는 트랜스코더장치 및 동화상 통신시스템
JPH05276502A (ja) 映像データ圧縮システムにおいてフィールド群を処理する装置及び方法
JPH0998429A (ja) ディジタル映像信号符号化装置および復号化装置
Morrison Video transcoders with low delay
KR100349649B1 (ko) 동영상압축 부호화장치의 가변 길이 부호화기
US7372906B2 (en) Compression circuitry for generating an encoded bitstream from a plurality of video frames
KR100349650B1 (ko) 동영상 압축 부호화장치의 가변길이부호화 테이블 분할가변길이 부호화 장치 및 그 방법
JPH10224799A (ja) 画像信号符号化方法及び装置、画像信号復号方法及び装置、並びに画像信号記録媒体
KR100323235B1 (ko) 저 복잡도의 동영상 인코더 장치 및 방법
JPH09247667A (ja) 動画像符号化装置および動画像復号化装置
JPH07107464A (ja) 画像符号化装置および復号化装置
KR100386194B1 (ko) 영상 압축에서 양자화 오차의 디시값 추가 보상을 통한이미지의 화질 개선장치 및 그 방법
Ahn et al. A Parallel Processing Architecture for HDTV Encoding System
Zdepski et al. Overview of the Grand Alliance HDTV video compression system
JPH03283886A (ja) 多地点間動画像伝送システムにおける動画像符号化装置及び多地点間接続装置
Jafari et al. An Efficient Video Transcoding Algorithm Between H. 263 and MPEG-4 for Inter-Network Communications
KR19990075518A (ko) 고선명 텔레비젼 수신기의 슬라이스 복호기
KR20020008437A (ko) 동영상 압축 양방향 전송방법

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
G170 Publication of correction
FPAY Annual fee payment

Payment date: 20120727

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20130730

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20160801

Year of fee payment: 15

LAPS Lapse due to unpaid annual fee