KR19990061002A - 비디오 압축을 위한 블록단위의 변환부호화에서 데이터량 발생제한장치 - Google Patents

비디오 압축을 위한 블록단위의 변환부호화에서 데이터량 발생제한장치 Download PDF

Info

Publication number
KR19990061002A
KR19990061002A KR1019970081256A KR19970081256A KR19990061002A KR 19990061002 A KR19990061002 A KR 19990061002A KR 1019970081256 A KR1019970081256 A KR 1019970081256A KR 19970081256 A KR19970081256 A KR 19970081256A KR 19990061002 A KR19990061002 A KR 19990061002A
Authority
KR
South Korea
Prior art keywords
symbol
block
data
discrete cosine
output
Prior art date
Application number
KR1019970081256A
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 KR1019970081256A priority Critical patent/KR19990061002A/ko
Publication of KR19990061002A publication Critical patent/KR19990061002A/ko

Links

Abstract

본 발명은 비디오 압축 부호기에서 블록당 최대 발생 비트량을 설정하여 블록당 비트발생량이 그 설정값 이하로 발생하도록 조절하므로써 하드웨어 구성을 단순화하고 화질의 성능을 향상시킨 것으로, 이를 위해 지그-재그 스캔과 가변길이 부호화기 사이에 데이터 발생 제한기를 구비한 것이다.

Description

비디오 압축을 위한 블록단위의 변환부호화에서 데이터량 발생 제한장치
본 발명은 비디오 압축을 위한 블록단위의 변환부호화에서 데이터량 발생 제한 장치에 관한 것으로, 특히 ITU-T H.261이나 ISO/IEC 엠펙-2(MPEG-2) 표준과 같은 블록단위의 영상압축 부호화에서, 특정블록에서 지나치게 많은 데이터량이 발생하여 하드웨어 구성을 복잡하게 하고 결과적으로 화질을 떨어뜨리는 것을 방지하기 위해, 블록당 최대 발생 비트량을 설정하고 블록당 비트발생량이 그 설정값 이하로 발생하도록 조절하는 장치에 관한 것이다.
도 1은 종래 비디오 압축 부호기의 블록을 개략적으로 도시한 도면으로, 비디오 프레임이 입력되면 이 프레임은 매크로 블록 단위로 나뉘어져 부호화 모드 결정부(1)를 통해 부호화 모드가 결정된 다음, 각 블록 단위로 이산 코사인 변환기(DCT)(2)를 통해 이산 코사인 변환되고, 이어 양자화기(3)를 거쳐 양자화된다.
이처럼 양자화가 수행되면 이 신호는 지그-재그 스캔부(4)를 통해 스캔된 다음 가변길이 부호화기(5)로 입력되어 부호화 된 후, 망으로 출력된다.
그리고 다음 프레임 이후는 매크로 블록단위로 다시 역양자화기(6)와, 이산 코사인 역변환기(7)를 거쳐 이전영상을 재생(8)한 다음 프레임 단위로 이전영상 메모리(9)에 저장된다.
상기 메모리(9)에 저장된 데이터는 다시 움직임 추정 및 보상기(10)에 입력되어 움직임 보상을 수행한 뒤, 매크로 블록의 차이를 고려해 다음 프레임들을 양자화시킬 때 부호화 모드를 결정하는 정보를 상기 부호화 모드 결정부(1)로 출력한다.
이상과 같은 구조에 의한 압축부호화 방식은 ITU-T H.261 영상전화 표준이나, ISO/IEC MPEG-2와 같은 TV급 혹은 HDTV급 동영상 압축부호화 표준에서 공히 사용되고 있는 방식으로 상세한 설명은 생략한다.
이하에서는 입력영상이 움직임추정 후 부호화되는 과정을 개략적으로 설명한다.
입력영상은 16x16 크기의 블록으로 나누어 각 블록에 대해 이동벡터를 추정한 후, 예측한 블록과 현재블록과의 차이를 이산 코사인 변환기(DCT)(2)를 통해 수행한다.
이때 이산 코사인 변환기(DCT)(2)는 8x8 블록에 대해 행해진다.
변환된 계수는 양자화한 후 지그-재그 스캔 모듈을 거쳐 연속되는 0의 갯수를 run, 연속되는 0 이후의 최초의 양자화된 계수룰 level로 하는 (run, level)의 형태로 가변길이 부호화기로 전달한다. 가변길이 부호화기에서는 이 (run, level) 심볼에 대해 여기에 대응하는 가변길이 부호를 찾아 이를 출력한다.
이와 같이 하여 본래의 데이터량보다 약 10:1∼20:1의 데이터 압축효과를 얻을 수 있다.
위 과정에서 가변길이 부호화는 자주 발생하는 (run, level)에 대해서는 짧은 코드를 할당하고, 드물게 발생하는 (run, level)에 대해서는 긴 코드를 할당하므로써 데이터량을 줄이는 Huffman 부호화 방식을 이용한다.
이 방식을 이용하면 대부분의 경우에 데이터량이 감축되지만 드물게는 데이터량이 오히려 늘어나는 경우도 있다.
ISO/IEC MPEG-2 규격의 예를들면, 입력영상은 8비트로 이루어져 있으므로, 움직임 추정 후 예측오차는 9비트로 이루어져 있다.
따라서 8x8 블록의 원 데이터량은 64x9bits=576 비트가 된다.
반면에, (run, level)에 대한 가장 긴 코드는 24비트이다. 예를들어 (0, 41)이란 심볼이 발생하면 24비트가 소요되는데, 이 심볼은 run이 0이므로 8x8블록내에서 64번 발생할 수 있다.
따라서 8x8블록당 총 발생 비트량은 약 1500여 비트가 된다. 이렇게 되면 데이터량은 오히려 3배까지 늘어난 결과를 초래하여 원래 데이터를 그대로 전송하는 것만도 못한 결과가 된다.
또한, 한 블록에서 1500비트씩 발생할 경우 이를 출력 혹은 저장하기 위한 인터페이스 장치도 이를 수용할 수 있어야 하고, 이는 실시간 처리시 하드웨어 처리속도나 메모리를 복잡하게 하는 원인이 된다.
또한, 지나치게 많은 비트의 발생은 다른 블록에서의 비트발생량을 억제시키는 원인이 되어 전체 화질을 저하시키는 원인이 된다.
이에, 본 발명은 상기한 바와 같은 종래기술의 제 문제점을 해소시키기 위하여 창안된 것으로, 지그-재그 스캔 모듈에서 출력되는 비트발생량을 누적하여 그 값이 설정값에 다다르면 블록 끝을 알리는 신호를 출력하여 나머지 계수들을 무시하므로써 데이터량을 제어하는 비디오 압축을 위한 블록단위의 변환부호화에서 데이터량 발생 제한 장치를 제공함에 그 목적이 있다.
도 1은 종래기술에 따른 이동보상예측과 변환부호화를 이용한 동영상 부호화기 블록도.
도 2는 본 발명의 일 실시예에 따른 데이터 발생 제한장치를 부가한 동영상 부호화기 블록도.
도 3은 상기 도 2의 데이터 발생 제한장치에 대한 블록도.
도 4는 데이터 발생 제한 예시(제한비트수 : 578).
상기한 바와 같은 목적을 달성하기 위한 본 발명의 비디오 압축을 위한 블록단위의 변환부호화에서 데이터량 발생 제한 장치는 입력된 비디오 데이터의 처리 및 저장을 위한 입력처리부와,
상기 입력처리부 출력단에 연결되어 인트러(Intra) 프레임 코딩 또는 인터(Inter) 프레임 코딩의 결정과 프레임 베이스드(Based) DCT 및 필드 베이스드(Based) DCT의 결정을 위한 부호화 모드 결정부와,
상기 부호화 모드 결정부 출력단에 연결되어 결정된 블록에 대한 이산 코사인 변환을 위한 이산 코사인 변환기와,
상기 이산 코사인 변환기 출력단에 연결되어 변환된 계수에 대한 양자화를 위한 양자화기와,
상기 양자화기 출력단에 연결되어 양자화된 계수에 대해서 지그-재그 방식으로 주사하는 지그-재그 스캔과,
지그-재그 스캔후 양자화된 DCT 계수에 대한 호프만 코딩을 위한 가변길이 부호화기와,
양자화된 DCT 계수를 원래의 DCT 계수로 환원시키는 역 양자화기와,
상기 역 양자화기 출력단에 연결되어 역양자화된 DCT 계수를 이차원 역 이산 코사인 변환하는 이산 코사인 역변환기와,
상기 이산 코사인 역변환기 출력단에 연결되어 보상예측된 데이터와 역이산 코사인 변환 데이터를 더하기 위한 이전영상 재생기와,
재생된 이전 영상을 저장 및 출력하기 위한 이전영상 메모리와,
입력된 영상의 각 블록에 대해서 이전 영상으로부터 움직임을 추정하고 보상예측하기 위한 움직임추정 및 보상부를 포함하는 비디오 압축을 위한 블록단위의 변환부호화에서 데이터량 발생 제한장치에 있어서,
상기 지그-재그 스캔과 상기 가변길이 부호화기 사이에 연결되어 실정된 비트 이상을 발생하지 못하도록 하는 비트발생량 제어를 위한 데이터 발생 제한기와,
상기 데이터 발생 제한기와 상기 역양자화기 사이에 연결되어 지그-재그 스캔된 데이터를 원래의 데이터로 환원하기 위한 역 지그-재그 스캔을 구비함을 특징으로 한다.
상술한 목적 및 기타의 목적과 본 발명의 특징 및 이점은 첨부도면과 관련한 다음의 상세한 설명을 통해 보다 분명해질 것이다.
이하, 첨부도면을 참조하여 본 발명의 일 실시예를 상세히 설명한다.
도 2는 본 발명에 따른 데이터 발생 제한장치를 부가한 동영상 부호화기 블록도를 나타낸 것으로, 입력되는 비디오 데이터를 처리하고 처리된 데이터를 저장하기 위한 입력처리부와, 상기 입력처리부 출력단에 연결되어 인트러(Intra) 프레임 코딩 또는 인터(Inter) 프레임 코딩의 결정과 프레임 베이스드(Based) DCT 및 필드 베이스드(Based) DCT의 결정을 담당하는 부호화 모드 결정부(1)와, 상기 부호화 모드 결정부(1) 출력단에 연결되어 결정된 블록에 대한 이산 코사인 변환하는 역할을 담당하는 이산 코사인 변환기(2)와, 상기 이산 코사인 변환기(2) 출력단에 연결되어 변환된 계수를 양자화하는 양자화기(3)와, 상기 양자화기(3) 출력단에 연결되어 양자화된 계수에 대해서 지그-재그 방식으로 주사를 하면서 출력하는 지그-재그 스캔(4)과, 상기 지그-재그 스캔(4) 출력단에 연결되어 설정된 비트 이상을 발생하지 못하도록 하는 데이터 발생 제한기(11)와, 상기 데이터 발생 제한기(11) 출력단에 연결되어 지그-재그 스캔후 양자화된 DCT 계수에 대한 호프만 코딩을 하는 가변길이 부호화기(5)와, 상기 데이터 발생 제한기(11) 출력단에 연결되어 지그-재그 스캔된 데이터를 원래의 데이터로 환원시키는 역할을 하는 역 지그-재그 스캔(12)과, 상기 역 지그-재그 스캔(12) 출력단에 연결되어 양자화된 DCT 계수를 원래의 DCT 계수로 환원하는 역할을 하는 역 양자화기(6)와, 상기 역 양자화기(6) 출력단에 연결되어 역 양자화된 DCT 계수를 이차원 역 이산 코사인 변환하는 이산 코사인 역 변환기(7)와, 상기 이산 코사인 역 변환기(7) 출력단에 연결되어 보상예측된 데이터와 역 이산 코사인 변환 데이터를 가산하기 위한 이전영상 재생기(8)와, 상기 이전영상 재생기(8)에 의해 재생된 이전영상을 저장 및 출력하는 이전영상 메모리와, 입력된 영상의 각 블록에 대해서 이전영상으로부터 움직임을 추정하고 보상예측하기 위한 움직임추정 및 보상부(10)로 구성된다.
도 3은 상기 도 2의 데이터 발생 제한기에 대한 상세블록도를 나타낸 것으로, 입력되는 심볼에 대한 가변길이 부호의 길이를 얻어내기 위한 심볼 가변길이부호 길이 판별기와, 입력되는 심볼에 대한 가변길이 부호의 길이를 저장하기 위한 심볼 부호길이 저장기(13)와, 상기 심볼 가변길이부호길이 판별기(14) 출력단에 연결되어 블록의 처음부터 어떤 시점까지의 심볼의 가변길이부호의 길이를 누산하는 기능을 하는 누산기(15)와, 블록당 최대발생량에 대한 설정값을 저장하기 위한 블록당 최대발생량 저장부(16)와, 상기 누산기(15)에서 누산된 길이값이 블록당 최대발생량보다 적을 경우에 심볼 일시 저장기(19)로부터 심볼을 출력하는 기능을 갖는 비교기(17)와, 심볼 블록의 끝을 판별하여 누산기(15)를 0으로 리셋시키는 블록 끝 판별기(18)와, 심볼을 일시 저장후 심볼출력 제어신호가 1'이면 심볼을 출력하고 0이면 블록 끝 신호를 출력하는 심볼 일시 저장기(19)로 구성된다.
이하에서는 상기한 구성으로 이루어진 본 발명에 대한 설명을 살펴본다.
먼저, 도 2는 기존의 비디오 압축 부호기에서 지그-재그 스캔과 가변길이 부호화기 모듈 사이에 비트발생량을 제한하는 데이터 발생 제한기(11)를 삽입하여 설정된 비트 이상을 발생하지 못하도록 하였다.
이 경우 다음 프레임 예측을 위한 복원영상에 그 정보가 반영되어야 하므로, 양자화 후 바로 역양자화 하지 않고, 발생비트량이 제한된 계수를 역 지그-재그 스캔하여 재생영상을 만들 수 있도록 역 지그-재그 스캔을 데이터 발생 제한기(11)와 역 양자화기(6) 사이에 추가하였다.
도 3은 먼저 블록의 시작에서 bit-sum 값은 0이 된다.
DC 값이 들어오면 여기에 할당할 비트수를 계산하여 bit-sum에 더한다.
그 다음 AC 계수들의 (run,level) 값에 대하여 대응하는 가변길이 부호의 길이를 bit-sum 값에 더한다.
여기서, run은 입력되는 심볼의 연속되는 0의 갯수를 나타내며, level은 연속되는 0 이후에 처음으로 나타나는 0이 아닌 값을 나타낸다.
만일, bit-sum 값이 설정된 최대치보다 크면 해당 (run,level) 대신에 블록의 끝을 알리는 EOB(End Of Block) 신호를 내보내고, 더이상의 (run,level) 정보를 출력하지 않는다.
만일 현재블록의 EOB에 해당하는 신호가 들어오면 현재블록의 데이터는 모두 입력된 것이므로, bit-sum 값을 0으로 환원하고, 다음 블록에 대해서 위의 과정을 반복한다.
이 과정을 구체적인 입력 데이터를 예로 들어 설명하면 도 4와 같다.
본 예시에서 누적 비트수가 제한 비트수를 초과하면 그 순간부터의 (run,level)은 내보내지 않고 있다가, EOB가 입력되면, EOB를 출력하고 동작을 멈춘다.
이상에서 살펴본 바와 같이, 본 발명은 데이터 발생 제한기에 의해 인코더는 과도한 비트의 발생을 막을 수 있어, 버퍼제어의 어려움이나 하드웨어 구현의 복잡도 등을 경감할 수 있으며, 이로부터 발생할 수 있는 화질저하의 요인을 막을 수 있다.
본 발명의 바람직한 실시예는 예시의 목적을 위한 것으로 당업자라면 첨부된 특허청구의 범위에 개시된 본 발명의 사상과 범위를 통해 각종 수정, 변경, 대체 및 부가가 가능할 것이다.

Claims (2)

  1. 입력된 비디오 데이터의 처리 및 저장을 위한 입력처리부와,
    상기 입력처리부 출력단에 연결되어 인트러(Intra) 프레임 코딩 또는 인터(Inter) 프레임 코딩의 결정과 프레임 베이스드(Based) DCT 및 필드 베이스드(Based) DCT의 결정을 위한 부호화 모드 결정부와,
    상기 부호화 모드 결정부 출력단에 연결되어 결정된 블록에 대한 이산 코사인 변환을 위한 이산 코사인 변환기와,
    상기 이산 코사인 변환기 출력단에 연결되어 변환된 계수에 대한 양자화를 위한 양자화기와,
    상기 양자화기 출력단에 연결되어 양자화된 계수에 대해서 지그-재그 방식으로 주사하는 지그-재그 스캔과,
    지그-재그 스캔후 양자화된 DCT 계수에 대한 호프만 코딩을 위한 가변길이 부호화기와,
    양자화된 DCT 계수를 원래의 DCT 계수로 환원시키는 역 양자화기와,
    상기 역 양자화기 출력단에 연결되어 역양자화된 DCT 계수를 이차원 역 이산 코사인 변환하는 이산 코사인 역변환기와,
    상기 이산 코사인 역변환기 출력단에 연결되어 보상예측된 데이터와 역이산 코사인 변환 데이터를 더하기 위한 이전영상 재생기와,
    재생된 이전 영상을 저장 및 출력하기 위한 이전영상 메모리와,
    입력된 영상의 각 블록에 대해서 이전 영상으로부터 움직임을 추정하고 보상예측하기 위한 움직임추정 및 보상부를 포함하는 비디오 압축을 위한 블록단위의 변환부호화에서 데이터량 발생 제한장치에 있어서,
    상기 지그-재그 스캔과 상기 가변길이 부호화기 사이에 연결되어 실정된 비트 이상을 발생하지 못하도록 하는 비트발생량 제어를 위한 데이터 발생 제한기와,
    상기 데이터 발생 제한기와 상기 역양자화기 사이에 연결되어 지그-재그 스캔된 데이터를 원래의 데이터로 환원하기 위한 역 지그-재그 스캔을 구비함을 특징으로 하는 비디오 압축을 위한 블록단위의 변환부호화에서 데이터량 발생 제한장치.
  2. 제 1 항에 있어서,
    상기 데이터 발생 제한기는 입력되는 심볼에 대한 가변길이 부호의 길이를 저장하는 심볼 부호길이 저장기와,
    입력된 심볼에 대한 가변길이부호의 길이를 얻어내기 위한 심볼 가변길이부호길이 판별기와,
    상기 심볼 가변길이부호길이 판별기 출력단에 연결되어 블록의 처음부터 어떤 시점까지의 심볼의 가변길이 부호의 길이를 누산하기 위한 누산기와,
    블록당 최대발생량에 대한 설정값을 저장하기 위한 블록당 최대발생량 저장기와,
    상기 누산기 출력단에 연결되어 누산기에서 누산된 길이값이 블록당 최대발생량보다 적을 경우에 심볼출력 제어신호를 출력하여 심볼 일시 저장기로부터 심볼을 출력시키는 기능을 하는 비교기와,
    심볼 블록의 끝을 판별하여 누산기를 0으로 리셋시키는 블록 끝 판별기와,
    심볼을 일시 저장후 심볼출력 제어신호가 1이면 심볼을 출력하고 0이면 블록 끝 신호를 출력하는 심볼 일시 저장기를 포함하여 구비함을 특징으로 하는 비디오 압축을 위한 블록단위의 변환부호화에서 데이터량 발생 제한장치.
KR1019970081256A 1997-12-31 1997-12-31 비디오 압축을 위한 블록단위의 변환부호화에서 데이터량 발생제한장치 KR19990061002A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970081256A KR19990061002A (ko) 1997-12-31 1997-12-31 비디오 압축을 위한 블록단위의 변환부호화에서 데이터량 발생제한장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970081256A KR19990061002A (ko) 1997-12-31 1997-12-31 비디오 압축을 위한 블록단위의 변환부호화에서 데이터량 발생제한장치

Publications (1)

Publication Number Publication Date
KR19990061002A true KR19990061002A (ko) 1999-07-26

Family

ID=66181952

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970081256A KR19990061002A (ko) 1997-12-31 1997-12-31 비디오 압축을 위한 블록단위의 변환부호화에서 데이터량 발생제한장치

Country Status (1)

Country Link
KR (1) KR19990061002A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020001062A (ko) * 2000-06-24 2002-01-09 박종섭 응용분야에 적응적인 엠펙 영상압축 부호화기
KR100495100B1 (ko) * 1998-04-28 2005-10-26 주식회사 팬택앤큐리텔 디지털 영상 처리 시스템의 이동 벡터 부호화/복호화 방법
KR100559713B1 (ko) * 1998-03-04 2006-09-27 주식회사 팬택앤큐리텔 격행주사를 위한 색상 정보 부호화/복호화 장치 및 그 방법
KR100712532B1 (ko) * 2005-09-10 2007-04-30 삼성전자주식회사 단일표현과 다중표현 전환을 이용한 동영상 변환부호화장치 및 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100559713B1 (ko) * 1998-03-04 2006-09-27 주식회사 팬택앤큐리텔 격행주사를 위한 색상 정보 부호화/복호화 장치 및 그 방법
KR100495100B1 (ko) * 1998-04-28 2005-10-26 주식회사 팬택앤큐리텔 디지털 영상 처리 시스템의 이동 벡터 부호화/복호화 방법
KR20020001062A (ko) * 2000-06-24 2002-01-09 박종섭 응용분야에 적응적인 엠펙 영상압축 부호화기
KR100712532B1 (ko) * 2005-09-10 2007-04-30 삼성전자주식회사 단일표현과 다중표현 전환을 이용한 동영상 변환부호화장치 및 방법

Similar Documents

Publication Publication Date Title
US5461422A (en) Quantizer with automatic pre-threshold
KR101106086B1 (ko) 부호화 장치 및 부호화 방법
US7653129B2 (en) Method and apparatus for providing intra coding frame bit budget
US5963673A (en) Method and apparatus for adaptively selecting a coding mode for video encoding
JP2963416B2 (ja) 量子化活動度を用いてビット発生量を制御する映像符号化方法及び装置
US6167088A (en) Method and apparatus for performing adaptive encoding rate control of a video information stream including 3:2 pull-down video information
JPH07184196A (ja) 画像符号化装置
US6956899B2 (en) Precise bit control apparatus with look-ahead for MPEG encoding
KR100961760B1 (ko) 이산코사인변환 계수를 참조하는 움직임 추정 방법 및 장치
JPH06189290A (ja) 1d/2d dctを用いた映像信号符号化装置
WO2006074043A2 (en) Method and apparatus for providing motion estimation with weight prediction
EP2196031B1 (en) Method for alternating entropy coding
KR19990061002A (ko) 비디오 압축을 위한 블록단위의 변환부호화에서 데이터량 발생제한장치
US6266447B1 (en) Coding apparatus
JP3800965B2 (ja) データレート変換装置
JPH10150659A (ja) 画像符号化装置
JPH04259182A (ja) 動き補償予測フレーム間符号化装置
JPH09107293A (ja) 符号量制御方法、及びその装置
JPH07203458A (ja) 動画像符号化装置
JP3363476B2 (ja) 符号化装置及びその方法
JPH089374A (ja) 符号化情報量制御装置
KR0141819B1 (ko) 데이타 압축장치
KR0128861B1 (ko) 영상부호화 장치의 양자화 준위변경방법
KR100230840B1 (ko) 동영상 복호기의 블록화 현상 제거 방법 및 그 장치(Method of and Device for eliminating blocking effect in a motion picture decoder)
JPH1188191A (ja) 符号化方法、復号化方法、符号化装置及び復号化装置

Legal Events

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