KR20030005171A - 품질기반 영상압축 - Google Patents

품질기반 영상압축 Download PDF

Info

Publication number
KR20030005171A
KR20030005171A KR1020027009710A KR20027009710A KR20030005171A KR 20030005171 A KR20030005171 A KR 20030005171A KR 1020027009710 A KR1020027009710 A KR 1020027009710A KR 20027009710 A KR20027009710 A KR 20027009710A KR 20030005171 A KR20030005171 A KR 20030005171A
Authority
KR
South Korea
Prior art keywords
block
blocks
scaling
sub
image
Prior art date
Application number
KR1020027009710A
Other languages
English (en)
Other versions
KR100788220B1 (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 퀄컴 인코포레이티드
Publication of KR20030005171A publication Critical patent/KR20030005171A/ko
Application granted granted Critical
Publication of KR100788220B1 publication Critical patent/KR100788220B1/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/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/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/93Run-length coding
    • 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/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • 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/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/96Tree coding, e.g. quad-tree coding

Landscapes

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

Abstract

본 발명은 이산 코사인 변환 계수 데이터의 적응형 사이즈의 블록들 및 서브-블록들, 그리고 품질 기반 양자화 스케일 인자 (100) 를 이용하는 품질-기반 영상 압축 시스템 및 방법에 관한 것이다. 인코더 엘리먼트 (104) 내의 블록 사이즈 할당 엘리먼트 (120) 는 처리될 화소 데이터의 입력 블록 중 임의의 블록 또는 서브-블록을 선택한다. 임계값 보다 더 큰 편차들을 가지는 블록들을 세분하고, 임계값 보다 더 작은 편차들을 가지는 블록들은 세분하지 않는다. 변환 엘리먼트 (124) 는 선택된 블록들의 화소 값들을 주파수 영역으로 변환한다. 주파수 영역 값들은, 영상의 품질과 관련되는 스케일 인자를 이용하여 블록 단위로 또는 프레임 단위 중 어느 한 쪽으로 양자화 된다 (블록 132, 134, 136, 144, 148). 그 후, 송신에 대비하여 데이터를 직렬화하고 코딩한다 (블록 152).

Description

품질기반 영상압축{QUALITY BASED IMAGE COMPRESSION}
"필름" 또는 "영화"를 상영하는데 사용되는 비디오 신호들의 송수신 분야에 있어서, 영상 압축 기술들이 다양하게 개선되고 있다. 현재 제안되고 있는 다수의 비디오 시스템들은 디지털 인코딩 기술들을 이용한다. 디지털 인코딩은 각각이 영상 품질을 다른 방법으로 크게 저하시킬 수 있는, 다중경로 페이딩 및 재밍 (jamming) 또는 신호 간섭과 같은 결함들에 견딜 수 있는 통신 링크를 더욱 튼튼하게 한다. 또한, 디지털 기술들은 신호 암호화 기술들을 사용하는 것을 용이하게 하며, 이는 관영 방송 애플리케이션 및 새롭게 많이 개발되고 있는 상업 방송 애플리케이션에 유용하거나 필요한 것으로 알려져 있다.
고해상도 비디오는 개선된 영상 압축 기술들로부터 이익을 얻는 분야이다. 첫 번째로 제안되는 것으로, 고해상도 비디오의 공중 송신 (또는 배선 또는 광섬유 송신) 은 큰 대역폭이 필요함으로 비실용적이다. 설계되는 통상의 무선 또는 그 밖의 송신 시스템들은 충분한 대역폭을 수용하는데 용이하지 않다. 그러나,적절한 대역폭들을 사용하여 송신할 수 있는 레벨로 디지털 비디오 신호들을 압축할 수 있는 기술이 실현되어 있다. 신호의 디지털 송신과 결합되는, 이러한 레벨들의 신호 압축에 의해, 더욱 바람직하고 유용한 대역폭을 점유하면서 채널 손상에 대한 더 큰 면역성과 적은 전력으로 비디오 신호를 송신할 수 있다.
많은 압축기술들을 이용하여 상당한 레벨로 압축할 수 있지만, 비디오 신호의 품질을 저하시키게 된다. 통상, 압축된 정보를 전송하는 기술들은 압축된 정보를 일정한 비트 레이트로 전송하여야 한다.
비디오 신호들의 소망의 품질 레벨을 유지하면서 상당한 레벨들로 압축할 수 있는 하나의 압축 기술은 인코딩된 DCT (Discrete Cosine Transform) 계수 데이터의 적응형 사이즈의 블록들 및 서브블록들을 이용한다. 이하, 이러한 기술을 ABSDCT (Adaptive Block Size Discrete Cosine Transform) 방식이라 지칭한다. 이러한 기술은 발명의 명칭이 "Adaptive Block Size Image Compression Method And System"으로, 본 발명의 양수인에게 양도되며 여기서 참조되는 미국 특허 제 5,021,891 호에 기재되어 있다. 또한, DCT 기술들은 발명의 명칭이 "Adaptive Block Size Image Compression Method And System" 으로 본 발명의 양수인에게 양도되며 여기서 참조되는 미국 특허 제 5,107,345 호에 기재되어 있다. 또한, 차분 4진 트리 변환 기술과 함께 ABSDCT 기술을 사용한다는 내용은 발명의 명칭이 "Adaptive Block Size Image Compression Method And System" 으로 본 발명의 양수인에게 양도되며 여기서 참조되는 미국 특허 제 5,452,104 호에 기재되어 있다. 이러한 특허들에 기재되어 있는 시스템들은 "인트라-프레임" 인코딩으로 지칭되는것을 이용하며, 각각의 프레임의 영상 데이터는 임의의 다른 프레임의 내용에 상관없이 인코딩된다. ABSDCT 기술을 이용하여, 영상 품질의 저하를 인식함 없이 성취가능한 데이터 레이트를 대략 초당 15 억 비트에서 부터 대략 초당 5 천만비트로 감소시킬 수 있다.
흑백 또는 컬러 영상 또는 그 영상을 나타내는 신호 중 어느 하나를 압축하는데 ABSDCT 기술을 사용할 수도 있다. 컬러 입력 신호는 YIQ 포맷으로 존재하며, 각각의 4 ×4 블록의 화소들에 대하여 Y 는 광도 즉, 휘도 샘플이고, I 및 Q 는 색도 즉, 칼라 샘플들을 나타낸다. 또한, YUV, YCbCy또는 RGB 포맷들과 같은 다른 공지의 포맷들을 사용할 수도 있다. 칼라에 대한 눈의 공간 감도가 낮기 때문에, 대부분의 연구에서는 4 개의 인자에 의해 수평 및 수직 방향들로 칼라 성분들을 서브-샘플링하는 것이 적절하다는 사실을 나타내고 있다. 따라서, 비디오 신호는 4 개의 휘도 성분 및 2 개의 색도 성분에 의해 표현될 수도 있다.
ABSDCT 기술을 이용하여, 비디오 신호를 일반적으로 처리용 화소들의 블록들로 분할할 수 있다. 각 블록에 대하여, 휘도 및 색도 성분을 블록 인터리버로 전달한다. 예를 들어, 16 ×16 (화소) 블록을 블록 인터리버로 제공할 수 있고, 이는 각각의 16 ×16 블록내의 영상 샘플들을 정렬하거나 조직화하여 DCT 분석을 위한 데이터의 블록들 및 합성 서브-블록들을 생성한다. DCT 오퍼레이터는 시간 및 공간 샘플화된 신호를 동일한 신호의 주파수 표현으로 변환하는 하나의 방식이다. 주파수 표현으로 변환함으로써, 영상의 주파수 분배 특성들을 이용하여 양자화기들을 설계할 수 있으므로, 매우 높은 레벨들로 압축할 수 있는 DCT 기술들을 제공할 수 있다. 바람직한 실시예에서, 하나의 16 ×16 DCT 를 제 1 순위로 적용하고, 4 개의 8 ×8 DCT 를 제 2 순위로 적용하고, 16 개의 4 ×4 DCT 를 제 3 순위로 적용하고, 그리고 64 개의 2 ×2 DCT 를 제 4 순위로 적용한다.
DCT 동작은 비디오 소스에 내재된 공간 리던던시를 감소시킨다. DCT 를 수행한 후, 대부분의 비디오 신호 에너지를 소수의 DCT 계수들로 집중시킬 수 있다. DCT 계수들 사이의 리던던시를 감소시키는데 부가적인 변환 즉, DQT (Differential Quad-Tree Transform) 를 이용할 수 있다.
16 ×16 블록 및 각각의 서브-블록에 대하여, DCT 계수값들 및 DQT 값 (만일 DQT 를 사용하는 경우에) 을 분석하여 블록 또는 서브-블록을 인코딩하는데 필요한 비트수를 결정한다. 그 후, 인코딩하기 위한 최소 개수의 비트를 필요로 하는 블록 또는 서브-블록들의 결합체를 선택하여 영상 세그먼트를 나타낸다. 예를 들어, 2 개의 8 ×8 블록, 6 개의 4 ×4 서브-블록들, 및 8 개의 2 ×2 서브-블록들을 선택하여 영상 세그먼트를 나타낸다.
그 후, 선택된 블록 또는 서브-블록들의 결합체를 16 ×16 블록으로 적절히 순서대로 배열한다. 그 후, DCT/DQT 계수 값들을 송신에 대비하여 주파수 가중화, 양자화, 및 인코딩 (가변 길이 인코딩 등) 처리할 수 있다. 상술한 ABSDCT 기술을 매우 잘 수행하더라도, 이는 계산 집중적인 것으로 된다. 따라서, 이러한 기술로 조밀한 하드웨어를 구현하기는 어렵게 된다.
본 발명은 영상 처리에 관한 것이다. 특히, 본 발명은 인코딩된 이산 코사인 변환 계수 데이터의 적응형 사이즈의 블록들 및 서브-블록들을 이용하는, 영상 신호들의 품질기반 압축방식에 관한 것이다.
이하, 본 발명의 특징 및 이점들을 첨부 도면을 통하여 상세히 설명하며, 도면 중 동일한 도면부호들은 동일한 구성요소를 나타낸다.
도 1 은 본 발명의 편차 기반 블록 사이즈 할당 시스템 및 방법을 통합하는 품질 기반 영상 처리 시스템의 인코더 부분에 대한 블록도이다.
도 2 는 본 발명의 편차 기반 블록 사이즈 할당 시스템 및 방법을 통합하는 품질 기반 영상 처리 시스템의 디코더 부분에 대한 블록도이다.
도 3 은 편차 기반 블록 사이즈 할당에 수반되는 처리 단계들을 나타내는 흐름도이다.
도 4a, 4b, 및 4c 는 각각 블록 사이즈 할당, 대응하는 4진 트리 분할, 및 대응하는 PQR 데이터의 일례를 나타낸다.
도 5 는 양자화기 스케일 인자 대 (vs) 화소 당 평균 비트 레이트의 관계를 나타내는 그래프이다.
도 6 는 DCT 블록들의 AC 계수 합계에 기초한 양자화기 스케일 인자의 흐름도이다.
도 7a 는 레이트 왜곡에 기초한 양자화기 스케일 인자의 흐름도이다.
도 7b 는 도 7a의 레이트 왜곡에 기초한 양자화기 스케일 인자의 연속적인 흐름도이다.
하드웨어 구현을 더욱 효과적으로 행할 수 있는 대안적인 기술들은 몇몇 이점들을 제공한다. 일부 시스템들은 DCT 계수 데이터의 적응형 사이즈의 블록들 및 서브-블록들을 이용한다. DCT 기반 시스템들의 일부가 압축 파라미터로서 품질을 이용하지만, 데이터의 다른 부분들은, 품질기반 메트릭을 이용하는 것과는 반대로, 인코딩 레이트에 기초한다. 이러한 코딩 레이트 기반 파라미터의 예로는 콘트라스트 기반의 적응형 블록 사이즈의 영상 압축 알고리즘중 양자화 단계를 선택한다.
본 발명은 DCT 계수 데이터의 적응가능한 크기의 블록들 및 서브-블록들과, 품질 기반 양자화 스케일 인자를 이용하는 품질 기반 영상 압축 시스템 및 방법에 관한 것이다. 화소 데이터의 블록을 인코더에 입력한다. 인코더는 처리용 화소들의 입력 블록을 분할하는 BSA (block size assignment) 엘리먼트를 구비한다. BSA 는 입력 블록의 편차들에 기초하며, 추가적으로 블록들을 세분한다. 통상, 블록 및 서브-블록의 평균값들이 서로 다른 소정의 범위에 있는 경우에, 더 큰 편차들을 가지는 영역들을 더 작은 블록들로 세분하며, 더 작은 편차들을 가지는 영역들은 세분하지 않는다. 따라서, 먼저 블록의 편차 임계값을 그 평균값에 따라 공칭값으로부터 변경시킨 후, 블록의 편차를 임계값과 비교하고, 그 편차가 임계값보다 더 큰 경우에, 그 블록을 세분한다.
BSA 엘리먼트에는 변환 엘리먼트가 제공되며, 이는 화소 데이터를 주파수 영역 데이터로 변환한다. BSA 엘리먼트를 통하여 선택된 블록 및 서브-블록들에서만 변환을 수행한다. 그 후, 변환 데이터를 양자화 및 직렬화를 통하여 스케일링한다. 변환 데이터의 양자화는 콘트라스트, 계수 합계, 레이트 왜곡, 블록 사이즈 할당의 밀도에 대하여 조종가능한 스케일 인자, 및/또는 이전의 스케일 인자들과 같은 영상 품질 메트릭에 기초하여 양자화된다. 또한, 데이터를 직렬화시키는데 지그재그 스캐닝을 이용하여 데이터의 스트림을 생성할 수도 있다. 데이터의 스트림을 송신에 대비하여 가변 길이 코더에 의해 인코딩할 수 있다. 인코딩된 데이터를 송신 채널을 통하여 디코더로 송신하며, 여기서 화소 데이터는 디스플레이를 위하여 재구성된다.
본 발명의 특징 및 이점은 품질 기반 영상 압축 시스템을 제공한다는 것이다.
본 발명의 또 다른 특징 및 이점은 프레임 단위로 비트 레이트를 처리함으로써 융통성 있는 영상 품질 제어를 할 수 있다는 것이다.
본 발명의 또 다른 특징 및 이점은 블록 단위로 비트 레이트를 처리함으로써 융통성 있는 영상 품질 제어를 할 수 있다는 것이다.
본 발명의 또 다른 특징 및 이점은 움직임의 돌발과 같은 활동들을 수반하는 데이터의 비트 레이트 제어 및 품질 기반 영상 압축을 유지할 수 있다는 것이다.
본 발명의 또 다른 특징 및 이점은 신호 대 잡음비 파라미터들을 이용하여 영상 품질을 수량화 할 수 있다는 것이다.
본 발명의 또 다른 특징 및 이점은 영상의 콘트라스트에 의해 조정가능한 양자화 스케일 인자를 이용할 수 있다는 것이다.
본 발명의 또 다른 특징 및 이점은 영상을 포함하는 DCT 블록들의 AC 계수합계에 대하여 조정가능한 양자화 스케일 인자를 이용할 수 있다는 것이다.
본 발명의 또 다른 특징 및 이점은 프레임들간의 비트 레이트 및 왜곡에 대하여 조정가능한 양자화 스케일 인자를 이용할 수 있다는 것이다.
본 발명의 또 다른 특징 및 이점은 이전의 양자화 스케일 인자들에 대하여 조정가능한 양자화 스케일 인자를 이용할 수 있다는 것이다.
디지털 신호들의 디지털 송신을 용이하게 하고, 해당 이점들을 얻기 위하여, 통상적으로 몇몇의 신호 압축 형태를 사용할 필요가 있다. 결과적인 영상에서 고압축을 성취하기 위하여, 영상의 품질을 높게 유지하는 것도 또한 중요하다. 또한, 조밀한 하드웨어를 구현하기 위한 계산을 효율적으로 해야 하며, 이는 많은 애플리케이션들에 있어서 중요하다.
본 발명은 영상 압축 수행시의 영상 품질 및 계산 효율 모두를 고려한 품질 기반 시스템 또는 장치 및 영상 압축 방법을 제공한다. 타겟 비트 레이트를 유지하기 위한 목적에 기초하여, 적절한 가변 레이트 시스템의 비트 레이트를 제어하면 영상 품질을 유지하기 위한 목적을 성취하기가 어렵게 된다. 그 대신에, 본 발명은 품질에 기초한 레이트 제어 전략들을 다룬다. 품질 기반 영상 압축 시스템은 블록 레벨 또는 프레임 레벨상에 있을 수 있다. 블록 레벨 시스템은, 이 블록 레벨 시스템이 특정 블록들의 식별을 위하여 더 많은 오버헤드 비트들을 사용하기 때문에, 통상적으로 프레임 레벨 제어보다 프레임 당 더 많은 개수의 인코딩 비트들을 사용한다.
본 발명의 일 실시예를 상세히 설명하기 전에, 본 발명은 다음의 상세한 설명부에 설명되거나 도면에 예시되는 구성요소들의 배열 및 구조의 세부사항들로 본발명의 애플리케이션이 한정되지 않음을 이해하여야 한다. 본 발명은 다른 실시예들로 구현될 수 있고, 다양한 방식들로 수행될 수 있다. 또한, 여기에서 사용되는 문구 및 용어는 설명을 위한 것이며, 제한적인 것으로 간주해서는 안된다.
본 발명의 영상 압축 기술은, 명칭이 "Contrast Sensitive Variance Based Adaptive Block Size DCT Image Compression" 으로 1999 년 11월 8 일에 출원되어 본 발명의 양수인에게 양도되며, 여기에 참조되는 계류중인 미국 특허 출원 제 09/436,085 호 에 기재되는 DCT 기술들에 기초한다. 통상, 디지털 영역에서 처리될 영상은 N ×N 사이즈의 오버래핑되지 않은 블록들의 어레이로 분할되는 화소 데이터로 이루어 진다. 각각의 블록에 대하여 2 차원 DCT를 수행할 수 있다. 2 차원 DCT 는 다음의 관계식에 의해 규정된다.
여기서,
x(m,n) 은 N ×M 블록내의 위치 (m,n) 에서의 화소이며, 그리고
X(k,l) 은 대응하는 DCT 계수이다.
화소 값들이 음이 아니므로, DCT 성분 X(0,0) 은 항상 양이며, 통상적으로최대 에너지를 가진다. 실제로, 대표적인 영상들에 있어서, 대부분의 변환 에너지는 X(0,0) 성분 주변에 집중된다. 이러한 에너지 밀집 특성으로 인해 매력적인 압축 방법으로 DCT 기술을 사용한다.
영상 압축 기술은 콘트라스트 적응형 코딩을 이용하여 추가적으로 비트 레이트를 감소시킨다. 대부분의 자연 영상들은 비교적 느리게 변화하는 사용빈도가 낮은 영역들, 및 오브젝트 경계 및 높은 콘트라스트 텍스쳐와 같은 사용빈도가 높은 영역들로 구성된다고 관찰하였다. 콘트라스트 적응형 코딩 방식들은 사용빈도가 높은 영역들에는 더 많은 비트들을 할당하고, 사용빈도가 낮은 영역들에는 적은 비트들을 할당함으로써 이러한 인자를 이용한다.
전술한 계류중인 특허출원 제 09/436,085 호에 기재된 바와 같이, 콘트라스트 적응형 코딩은 또한 블로킹 효과를 감소시키는데 유용하다. 블로킹 효과는 영상의 사용빈도가 높은 영역에서 더욱 인식하기 쉽다. 그러나, 더 작은 사이즈의 DCT 를 이용하는 경우에도, 블로킹 효과를 감소시킬 수 있음을 알 수 있다. 화소 당 비트 성능이 저하되는 경우에도, 2 ×2 DCT 를 사용하는 경우에는, 블로킹 효과가 시각적으로 눈에 보이지 않게 된다.
또한, 콘트라스트 적응형 방식들은 인터프레임 코딩 (시간 및 공간 처리) 대신에 인트라프레임 코딩 (공간 처리) 을 이용한다. 인터프레임 코딩은 본질적으로 더 많은 복잡한 처리 회로들 이외에 다수의 프레임 버퍼들을 필요로 한다. 많은 애플리케이션들에 있어서, 실제로 구현하기 위해서는 복잡성을 감소시켜야 한다. 또한, 인트라프레임 코딩은 시공간 코딩 방식을 브레이크 다운시키거나 불완전하게 수행하게 하는 상황에서 유용하게 된다. 예를 들어, 기계적인 셔터에 의해 통합 시간이 비교적 짧게 되므로, 초 당 24 프레임의 영화가 이러한 카테고리에 들어간다. 짧은 통합 시간은 일시적인 에일리어싱의 정도를 더 높게 한다. 프레임간의 상관 관계로는 저키(jerky) 가 되는 빠른 움직임을 브레이크 다운시킨다고 가정한다. 또한, 50 ㎐ 및 60 ㎐ 의 전력선 주파수를 포함하는 경우에, 인트라프레임 코딩을 표준화하기가 더 쉬워진다. 일반적으로, 텔레비젼은 50 ㎐ 또는 60 ㎐ 로 신호들을 송신한다. 디지털 접근방식인, 인트라프레임 방식을 사용하면 프레임 레이트 대 (versus) 공간 해상도를 트레이드 오프시킴에 의해 50 ㎐ 및 60 ㎐ 의 동작으로 적응시키거나, 초당 24 프레임의 영화로도 적응시킬 수 있다.
영상 처리를 위하여, 오버래핑되지 않은 블록들의 어레이로 분할되는 화소 데이터상에 DCT 동작을 수행한다. 여기에서 블록 사이즈들이 N ×N 의 사이즈로 설명되지만, 다양한 블록 사이즈들을 사용할 수 있음을 알 수 있다. 예를 들어, N ×M 블록 사이즈를 이용할 수 있으며, 여기서 N 및 M 은 정수이며, M 은 N 보다 더 크거나 N 보다 작다. 또 다른 중요한 특징은 블록이 N/i×N/i, N/i×N/j, N/i×M/j 등과 같이 적어도 하나의 서브-블록 레벨로 분할될 수 있다는 것이다. 또한, 여기서 설명되는 바와 같은 예시적인 블록 사이즈는 DCT 계수들의 해당 블록 및 서브-블록들의 가지는 16 ×16 화소 블록이다. 또한, 우수 또는 기수의 정수값들과 같은 다양한 다른 정수값들을 예를 들어 9 × 9 화소 블록에서 사용할 수 있음을 알 수 있다.
도 1 및 도 2 는 본 발명의 품질 기반 압축 시스템을 통합하는 영상 처리 시스템 (100) 을 나타낸다. 영상 처리 시스템 (100) 은 수신된 비디오 신호를 압축하는 인코더 (104) 를 구비한다. 압축된 신호는 송신 채널 (108) 을 통하여 송신되어, 디코더 (112) 에 의해 수신된다. 디코더 (112) 는 수신된 신호를 영상 샘플들로 디코딩한 후, 이를 디스플레이 한다.
통상, 영상은 처리용 화소 블록들로 분할된다. 칼라 신호는 RGB/YC1C2변환기 (116) 를 이용하여 RGB 공간으로부터 YC1C2공간으로 변환될 수 있으며, 여기서 Y 는 광도 즉, 휘도 성분이며, C1및 C2는 색도 즉, 칼라 성분이다. 칼라에 대한 눈의 공간 감도가 낮기 때문에, 많은 시스템들은 4 개의 인자에 의해 수직 및 수평 방향들로 C1및 C2성분들을 서브-샘플링한다. 그러나, 서브-샘플링을 반드시 할 필요는 없다. 4:4:4 포맷으로 알려진 풀 해상도 영상은 "디지털 영화"를 커버링하는 것으로 지칭되는 것과 같은 일부 애플리케이션들에서 매우 유용하게 되거나 필수적인 것이 될 수 있다. 실행가능한 2 개의 YC1C2표현은 YIQ 표현과 YUV 표현이며, 이들 모두는 당해분야에 공지되어 있다. 또한, YCbCr 로 공지된 YUV 표현의 편차를 이용할 수도 있다.
바람직한 실시예에서, Y, Cb, 및 Cr 성분들 각각은 서브-샘플링없이 처리된다. 따라서, 16 ×16 블록의 화소들의 각 성분이 인코더 (104) 에 입력된다. 예시를 위하여, Y 성분에 대한 인코더 (104) 를 나타내었다. 유사한 인코더들을 Cb 및 Cr 성분들에 사용할 수 있다. 인코더 (104) 는 비디오 압축에 대비하여 블록 사이즈 할당을 수행하는 블록 사이즈 할당 엘리먼트 (120) 를 구비한다. 이 블록 사이즈 할당 엘리먼트 (120) 는 블록내의 영상의 지각 특성들에 기초하여 16 ×16 블록을 분해할 것 인지를 결정한다. 블록 사이즈 할당 엘리먼트는 16 ×16 블록내의 활동에 따라 각각의 16 ×16 블록을 4 진 트리 방식의 더 작은 블록들로 세분한다. 블록 사이즈 할당 엘리먼트 (120) 는 PQR 데이터로 지칭되는 4 진 트리 데이터를 생성하며, 이는 1 과 21 비트 사이의 길이을 갖는다. 따라서, 16 ×16 블록을 분할하는 것으로 블록 사이즈 할당을 하기로 하면, PQR 데이터의 R 비트가 설정되고, 4 개로 분할된 8 ×8 블록에 대응하여 Q 데이터의 4 개의 부가적인 비트들이 후속한다. 임의의 8 ×8 블록들을 세분하는 것으로 블록 사이즈 할당을 하기로 하면, 세분된 각각의 8 ×8 블록에 대하여 P 데이터의 4 개의 부가적인 비트들이 부가된다.
도 3 을 참조하면, 블록 사이즈 할당 엘리먼트 (120) 의 동작의 세부사항들을 나타내는 흐름도가 제공된다. 블록을 세분하기 위한 결정에 있어서 블록의 편차를 메트릭으로서 사용한다. 단계 202 에서 시작하여, 16 ×16 블록의 화소들을 판독한다. 단계 204 에서, 16 ×16 블록의 편차 즉, v16 을 계산한다. 그 편차는 다음의 수학식에 의해 계산된다.
여기서, N = 16 이고, xi,j는 N ×N 블록내의 i 번째 행, j 번째 열에 있는 화소이다. 단계 206 에서, 블록의 평균값이 2 개의 소정값들내에 있는 경우에, 먼저 편차 임계값 T16 을 변경하여 새로운 임계값 T'16 을 제공한 후, 블록 편차를 새로운 임계값 T'16 과 비교한다.
편차 v16 이 임계값 T16 보다 작은 경우에, 단계 208에서, 16 ×16 블록의 개시 어드레스를 임시 저장장치에 기록하고, 16 ×16 블록을 세분하지 않을 것을 나타내기 위하여 PQR 데이터의 R 비트를 0 으로 설정한다. 그 후, 알고리즘은 다음의 16 ×16 블록의 화소들을 판독한다. 편차 v16 이 임계값 T16 보다 더 큰 경우에, 단계 210 에서, 16 ×16 블록을 4 개의 8 ×8 블록들로 세분할 것 임을 나타내기 위하여 PQR 데이터의 R 비트를 1 로 설정한다.
단계 212 에 나타낸 바와 같이, i=1:4 인 4 개의 8 ×8 블록은 순차적으로 더 세분되는 것으로 간주된다. 단계 214 에서, 각 8 ×8 블록에 대하여, 편차 v8i를 계산한다. 단계 216 에서, 블록의 평균값이 2 개의 소정값들내에 있는 경우에, 먼저 편차 임계값 T8 를 변경하여 새로운 임계값 T'8 을 제공한 후, 블록 편차를 이 새로운 임계값과 비교한다.
편차 v8i이 임계값 T8 보다 작은 경우에, 단계 218 에서, 8 ×8 블록의 개시 어드레스를 임시 저장장치에 기록하고, 대응하는 Q 비트 즉, Qi 를 0 으로 설정한다. 그 후, 다음의 8 ×8 블록을 처리한다. 편차 v8i이 임계값 T8 보다 더 큰 경우에, 단계 220 에서, 8 ×8 블록을 4 개의 4 ×4 블록들로 세분할 것 임을나타내기 위하여 대응하는 Q 비트 즉, Qi를 1 로 설정한다.
단계 222 에 나타낸 바와 같이, i=1:4 인 4 개의 4 ×4 블록은 순차적으로 더 세분되는 것으로 간주된다. 단계 224에서, 각 4 ×4 블록에 대하여, 편차 v4ij를 계산한다. 단계 226 에서, 블록의 평균값이 2 개의 소정값들 내에 있는 경우에, 먼저 편차 임계값 T4 를 변경하여 새로운 임계값 T'4 를 제공한 후, 블록 편차를 이 새로운 임계값과 비교한다.
편차 v4ij가 임계값 T4 보다 작은 경우에, 단계 228 에서, 4 ×4 블록의 어드레스를 기록하고, 대응하는 P 비트 즉, Pij를 0 으로 설정한다. 그 후, 다음 4 ×4 블록을 처리한다. 편차 v4ij가 임계값 T4 보다 더 큰 경우에, 단계 230 에서, 4 ×4 블록을 4 개의 2 ×2 블록블로 세분할 것임을 나타내기 위하여 대응하는 P 비트 즉, Pij를 1 로 설정한다. 또한, 4 개의 2 ×2 블록들의 어드레스를 임시 저장장치에 기록한다.
임계값 T26, T8, 및 T4 는 소정의 상수일 수 있다. 이는 고정된 것으로 이해해야 한다. 선택적으로, 적응형 또는 소프트 결정을 구현할 수도 있다. 예를 들어, 소프트 결정이 2N ×2N 블록들의 평균 화소값에 따라 편차들에 대한 임계값을 변경시키며, 여기서 N 은 8, 4, 또는 2 일 수 있다. 따라서, 평균 화소값들의 함수를 임계값들로 사용할 수 있다.
예시를 위하여, 다음의 예를 생각해 보자. Y 성분에 대한 소정의 편차임계값들을 각각 16 ×16, 8 ×8, 및 4 ×4 블록들에 대하여 50, 110, 및 880 으로 설정한다. 즉, T16 = 50, T8 = 1100, 및 T4 = 880 이다. 평균 값들의 범위는 80 내지 100 으로 한다. 16 ×16 블록에 대하여 계산된 편차는 60 이라고 가정한다. 평균값 60 은 T16 보다 더 크고, 평균값 90 은 80 과 100 사이에 있기 때문에, 16 ×16 블록을 4 개의 8 ×8 서브-블록들로 세분한다. 8 ×8 블록들에 대하여 계산된 편차를 1180, 935, 980,및 1210 으로 가정한다. 2 개의 8 ×8 블록들은 T8 을 초과하는 편차들을 가지므로, 이러한 2 개의 블록들을 추가적으로 세분하여 전체적으로는 8 개의 4 ×4 서브-블록들을 생성한다. 마지막으로, 대응하는 평균값들 90. 120, 110, 115 에 대하여, 8 개의 4 ×4 블록들의 편차들은 620, 630, 670, 610, 590, 525, 930, 및 690 으로 가정한다. 첫 번째 4 ×4 블록의 평균값이 (80, 100) 범위내에 있으므로, 그 임계값을 880 보다 작은 T'4 = 200 으로 낮춘다. 따라서, 7 번째 4 ×4 블록을 포함하여 이러한 4 ×4 블록을 세분한다. 결과적인 블록 사이즈 할당을 도 4a 에 나타내었다. 대응하는 4 진 트리 분해도를 도 4b 에 나타내었다. 또한, 이러한 블록 사이즈 할당에 의해 생성된 PQR 데이터를 도 4c 에 나타내었다.
유사한 처리를 칼라 성분 C1및 C2에 대한 블록 사이즈들을 할당하는데 사용한다. 칼라 성분들을 수평으로, 수직으로, 또는 수평 및 수직으로 10 진화할 수 있다.
또한, 블록 사이즈 할당을, 가장 큰 블록 (본 실시예에서는 16 ×16블록) 을먼저 평가하는 톱다운 접근방식으로 설명하였지만, 그 대신에 보텀업 방식을 사용할 수도 있다. 보텀업 접근방식은 가장 작은 블록 (본 실시예에서는 2 ×2 블록) 을 먼저 평가한다.
도 1 을 다시 참조하면, 선택된 블록들의 어드레스들에 따라 PQR 데이터를 DCT 엘리먼트 (124) 에 제공한다. DCT 엘리먼트 (124) 는 PQR 데이터를 사용하여 선택된 블록상에서 적절한 사이즈의 이산 코사인 변환들을 수행한다. 단지 선택된 블록들만을 DCT 처리해야 한다.
영상 처리 시스템 (100) 은 DCT들의 DC 계수들내의 리던던시를 감소시키기 위하여 선택적으로 DQT 엘리먼트 (128) 를 구비할 수도 있다. DC 계수는 각 DCT 블록의 상부 좌측 코너에서 만나게 된다. 통상, DC 계수들은 AC 계수들과 비교하여 크다. 또한, 사이즈가 불일치하여 효과적인 가변 길이 코더를 설계하기가 어렵게 된다. 따라서, DC 계수들내의 리던던시를 감소시키는 것이 유리하다.
DQT 엘리먼트 (128) 는 한 번에 2 ×2 블록을 취하여, DC 계수들에 대하여 2-D DCT를 수행한다. 4 ×4 블록들 내의 2 ×2 블록으로 부터 개시하여, 4 개의 DC 계수들에 대하여 2-D DCT를 수행한다. 이러한 2 ×2 DCT 를 4 개의 DC 계수들에 대한 차분 4 진 트리 변환 즉, DQT 라 한다. 다음으로, 8 ×8 블록 내의 3 개의 인접 DC 계수들에 따른 DQT의 DC 계수를 사용하여 다음 레벨의 DQT 를 계산한다. 마지막으로, 16 ×16 블록내의 4 개의 8 ×8 블록들의 DC 계수들을 사용하여 DQT 를 계산한다. 따라서, 16 ×16 블록에 있어서, 하나의 실제 DC계수가 존재하고, 그 나머지는 DCT 및 DQT 에 대응하는 AC 계수들이다.
양자화를 위하여 변환 계수들 (DCT 및 DQT) 을 양자화기에 제공한다. 바람직한 실시예에서, DCT 계수들을 FWM (frequency weighting mask) 들 및 양자화 스케일 인자를 이용하여 양자화 한다. FWM 은 입력 DCT 계수들의 블록과 동일한 치수의 주파수 가중값들의 테이블이다. 주파수 가중값 테이블은 서로 다른 DCT 계수들에 대하여 서로 다른 가중값들을 인가한다. 상기 가중값들은 인간의 시각 또는 광학 시스템에 더욱 민감한 주파수량을 가지는 입력 샘플들을 엠퍼사이즈 하도록 그리고 상기 시각 또는 광학 시스템에 덜 민감한 주파수량을 가지는 샘플들을 디-엠퍼사이즈 하도록 설계된다. 또한, 가중값들을 가시 거리 등과 같은 인자들에 기초하여 설계할 수도 있다.
가중값들을 경험 데이터에 기초하여 선택한다. 8 ×8 DCT 계수들에 대한 가중 마스크들을 설계하는 방법이, 여기에 참조되는 ISO/IEC JTC1 CD 10918, "Digital compression and encoding of continuous-tone still images - part 1 : Requirements and guidelines", International Standards Organization, 1994 에 기재되어 있다. 통상, 2 개의 FWM을 설계하며, 하나는 휘도 성분, 나머지 하나는 색도 성분에 관한 것이다. 2 ×2, 4 ×4 블록 사이즈의 FWM 테이블은 10 진화함으로써 얻어지며, 16 ×16 블록 사이즈의 FWM 테이블은 8 ×8 블록 값들을 보간함으로써 얻어진다. 스케일 인자는 양자화된 계수들의 비트 레이트 및 품질를 제어한다.
따라서, 각각의 DCT 계수는 다음식에 따라 양자화된다.
여기서 DCT(i,j) 는 입력 DCT 계수이며, fwm(i,j) 는 주파수 가중 마스크, q 는 스케일 인자, 및 DCT q(i,j) 는 양자화된 계수이다. DCT 계수의 부호에 따라, 각괄호 (brace) 내부의 첫 번째 항을 라운드 업 또는 라운드 다운시킨다. 또한, DQT 계수들을 적절한 가중 마스크를 이용하여 양자화한다. 그러나, 다수의 테이블 또는 마스크들을 사용할 수 있고, 이를 Y, Cb, 및 Cr 성분들 각각에 적용할 수도 있다.
그 후, 화소 데이터 및 주파수 가중 마스크들의 블록을 양자화 스케일 인자 엘리먼트에 의해 스케일링한다. 바람직한 실시예에서는, 평균 비트 레이트들에 대응하는 32 개의 스케일 인자들이 존재한다. MPEG2 와 같은 다른 압축 방법들과는 달리, 버퍼 상태 및 타겟 비트 레이트 대신에, 처리된 영상의 품질에 기초하여 평균 비트 레이트를 제어한다. 바람직한 실시예에서, 특정 양자화 스케일 엘리먼트를 선택기 (130) 의해 미리 선택한다. 그러나, 본 발명은 양자화 스케일 엘리먼트를 미리 선택할 필요가 없다.
하나의 블록 기반 실시예에서, 양자화 스케일 인자는 콘트라스트 (132) 에 기초한다. 인간의 시각 시스템은 낮은 콘트라스트 영역들 보다 높은 콘트라스트 영역들에 더욱 민감한다고 알려져 있다. 콘트라스트에 기초하는 양자화 스케일 인자는 비트 레이트와 양자화기 스케일 인자 사이의 소정의 관계를 이용한다. 일 실시예에서, BSA 함수는 콘트라스트에 기초하여 M ×N 블록을 서브-블록들로 분할하여, 높은 콘트라스트 블록들은 더 많이 세분하고, 낮은 콘트라스트 블록들은 적게 세분한다. 본 발명은 평균 세기에 대한 편차의 제곱근 비율로서 콘트라스트를 양자화한다. 특히, 다음의 관계식에 의해 주어진 바와 같이, 양자화 스케일 인자를 BSA 에 따라 선택한다.
여기서, Ri는 i 번째 블록 타입의 비트수이며,는 i 번째 블록 타입의 편차이며, pi는 블록 사이즈 할당 함수로부터 얻어진 바와 같이 i 번째 블록 타입의 백분율이다. 양자화 스케일 인자를 비트 레이트 및 양자화기 스케일 인자 사이의 소정의 관계를 이용하여 결정한다.
비트 레이트와 양자화기 스케일 인자 사이의 관계를 도 5 에 나타낸다. 일 군의 영상들을 평가하여 화소를 표현하는데 필요한 평균 비트수를 결정함으로써, 비트 레이트와 양자화기 스케일 인자 사이의 관계를 미리 결정한다. 도시된 바와 같이, 양자화기 스케일 인자는, 화소 당 평균 비트수가 감소함에 따라 증가한다. 따라서, Ri 의 대응값에 대하여 특정 스케일 인자 Q 를 선택할 수도있다.
또 다른 블록 기반 실시예에서, 양자화기 스케일 인자는 DCT 의 계수 합계 (136) 에 기초하여 선택된다. 통상, 계수 카운트 시스템 및 방법은 오버헤드의 블록 당 일 비트를 필요로 한다. 양자화기 스케일 인자 방법 (300) 을 도 6 에 나타내었다. 블록 사이즈 할당후에, N ×N 블록의 데이터를 구비하는 데이터의 슬라이스를 선택한다 (단계 304). 바람직한 실시예에서, 데이터의 슬라이스는 16 행 ×16 열의 블록들의 화소 데이터를 포함한다. 도 3 에 대하여 설명한 바와 같이, 데이터의 블록에서 DCT를 수행 (단계 308) 하며, 추가적인 서브-블록들을 지정할 수 있다. 데이터의 각각의 블록에 대한 임계값을 결정한다 (단계 312). 임계값은 임의의 처리 단계에서 결정될 수 있다. 바람직한 실시예에서, 임계값을 경험적으로 미리 결정한다. 그 후, 크기에 있어서 소정의 임계값을 초과하는 AC 계수들의 개수를 다음의 관계식에 의해 결정한다 (단계 316).
여기서, T 는 임계값이고, X(k,l) 은 N ×N 블록내의 위치 (k,l) 에서의 DCT 계수를 나타내며, M 은 임계값을 초과하는 DCT 의 N ×N 블록내의 AC 계수들의 개수이다. 그 후, 임계값 T를 초과하는 AC 계수들의 개수에 따라 스케일 인자를 할당한다 (단계 320).
슬라이스내의 데이터의 제 1 블록을 평가하고 스케일 인자를 할당한 후에,상기 슬라이스내의 N ×N 데이터의 다음 블록을 선택한다 (단계 324). 스케일 인자를 증가시키고 (단계 328), 또 다른 DCT를 수행한다 (단계 332). 이전의 DCT 와 새로운 DCT 사이의 MSE (mean square error) 를 결정한다 (단계 336). 그 후, 스케일 인자를 감소시키고 (단계 340), 또 다른 DCT를 수행한다 (단계 344). 이전의 DCT 와 새로운 DCT 사이의 MSE를 다시 한 번 결정한다 (단계 348). 2 개의 MSE를 비교하고, 더 낮은 MSE 와 연관된 양자화기 인자를 데이터의 블록에 할당한다 (단계 352). 그 후, 상기 슬라이스내의 데이터의 각 블록에 대하여 사이클을 반복한다. 슬라이스내의 각 데이터 블록에 대하여 양자화기를 할당한 후에, 데이터의 다음 슬라이스를 선택하고, 사이클을 계속 반복한다 (단계 360).
또 다른 블록 기반 실시예에서, 양자화기 스케일 인자는 레이트 왜곡 (134) 에 기초한 양자화기 스케일러 (400) 이며, 이는 도 7 에 도시되어 있다. 통상, 레이트 왜곡 양자화기는 계수 카운트 양자화기와 유사한 방식으로 동작하지만, 얼마나 많은 스케일 인자들을 정밀하게 조사하느냐에 따라 더 많은 오버헤드 비트들을 필요로 한다. 블록 사이즈 할당후에, N ×N 블록들의 데이터를 구비하는 데이트의 슬라이스를 선택한다 (단계 404). 바람직한 실시예에서, 데이터의 슬라이스는 16 행 ×16 열의 화소 데이터의 블록들을 구비한다. 도 3 에 대하여 설명한 바와 같이, 데이터의 블록에서 DCT 를 수행하고 (단계 408), 추가적인 서브-블록들을 지정할 수 있다. 데이터의 각각의 블록에 대한 임계값을 임의의 처리 단계에서 다시 한 번 결정한다 (단계 412). 또한, 평균 왜곡 D 및 화소 당 평균 비트 레이트 R 을 결정한다 (단계 416). 그 후, 계수 카운트 방법에 대하여 설명한 바와 같은 관계식을 이용하여, 크기에 있어서 소정의 임계값 (M) 을 초과하는 AC 계수들의 개수를 결정한다 (단계 420). 그 후, 임계값 T 를 초과하는 AC 계수들의 개수에 따라 스케일 인자를 할당한다 (단계 424).
슬라이스내의 제 1 블록의 데이터를 평가하고, 스케일 인자를 할당한 후에, 슬라이스내의 N ×N 데이터의 다음 블록을 선택한다 (단계 428). 이전 블록의 스케일 인자로부터 스케일 인자를 증가시키고 (단계 432), 또 다른 DCT를 수행한다 (단계 436). 이전의 DCT 와 새로운 DCT 사이의 MSE를 결정한다 (단계 440). 단계 440 에서 MSE 레이트와 연관되는 양자화기 스케일 인자에 대응하는 화소 당 평균 비트 레이트 R 과 평균 왜곡 D 를 결정한다 (단계 444).
그 후, 이전 블록의 스케일 인자로부터 스케일 인자를 감소시키고 (단계 448), 또 다른 DCT를 수행한다 (단계 452). 이전의 DCT 와 새로운 DCT 사이의 MSE 를 다시 한 번 결정한다 (단계 456). 단계 456 에서의 MSE 레이트와 연관된 양자화기 스케일 인자에 대응하여 화소 당 평균 비트 레이트 R 과 평균 왜곡 D 를 결정한다 (단계 460). 2 개의 평균 왜곡 레이트 D 사이의 차이와 2 개의 화소 당 비트 레이트 R 사이의 차이를 결정한다 (단계 464). 그 후, 다음식에 의해 화소 레이트의 변화율과 평균 왜곡 레이트의 변화율을 취하여 2 개의 스케일 인자들을 결정한다 (단계 468).
현재 블록에 대하여 최대 절대 비율을 가지는 스케일 인자를 선택한다 (단계 472). 그 후, 슬라이스 내의 각 테이터 블록에 대하여 사이클을 반복한다 (단계 476). 슬라이스 내의 각 데이터 블록에 대하여 양자화기를 할당한 후, 다음 데이터 슬라이스를 선택하고, 사이클을 계속 반복한다 (단계 480).
또한, 프레임 단위로 양자화기 스케일 인자를 선택할 수 있다. 그러나, 프레임 기반 레이트 제어는 통상적으로 상술된 블록 기반 레이트 제어보다 낮은 평균 비트 레이트들을 성취한다. 또한, 비트 전송은 블록 단위와는 반대로, 프레임 단위로 발생하기 때문에, 프레임 기반 레이트 제어는 더 많은 버퍼들을 사용해야 한다.
프레임별 양자화기의 실시예에서, 양자화 스케일 인자는 다양한 블록 사이즈 할당의 밀도에 기초한다 (도 1 의 블록 144). 영상의 전체 프레임에 대한 양자화기 스케일 인자를 영상의 시각 품질에 관련되는 메트릭에 기초하여 결정한다. 시각 품질은 소정의 프레임에 대하여 16 ×16 블록의 개수와 8 ×8 블록의 개수를 결정함으로써 추정된다. 즉, 소정의 프레임이 16 ×16 블록들 보다 8 ×8 블록들을 더 많이 가지는 경우에, 영상은 더욱 더 복잡한 것으로 간주된다. 따라서, 더욱 복잡한 영상은 통상적으로 품질을 유지하기 위하여 더욱 정밀한 양자화를 필요로 한다. 반대로, 소정의 프레임이 8 ×8 블록들보다 16 ×16 블록들을 더많이 가지는 경우에, 영상은 덜 복잡한 것으로 간주된다. 따라서, 낮은 양자화기 스케일 인자를 사용하여, 시각 품질을 계속 유지한다. 따라서, 각 프레임에 대하여 BSA 알고리즘을 수행하고, 스케일 인자는 다음식에 기초한다.
여기서, n16은 프레임내의 16 ×16 블록들의 개수를 나타내고, n8은 프레임내의 8 ×8 블록들의 개수를 나타내고, 그리고 L 은 임계값을 초과하는 비율을 나타낸다. 바람직한 실시예에서, 임계값을 경험적으로 미리 결정한다. 그 후, 스케일 인자를 소정의 프레임에 대하여 8 ×8 블록들의 개수와 L 값에 기초하여 선택한다.
선택적으로, 프레임 기반 양자화기 스케일 인자는 이전 프레임의 양자화기 스케일 인자 (148) 에 기초할 수 있다. 이 실시예에서, 현재의 프레임은 이전 프레임의 스케일 인자, 이전 프레임 + 1의 스케일 인자 인덱스에 대응하는 스케일 인자, 및 이전 프레임 - 1 의 스케일 인자 인덱스에 대응하는 스케일 인자를 이용하여 압축된다. 현재 프레임을 압축하는 동안에, 상술된 프레임별 시각 품질 방법에 관하여 기술된 바와 같이, BSA 정보로부터 실제 스케일 인자를 결정한다. 현재 프레임의 실제 스케일 인자에 가장 가까운 스케일 인자에 대응하여 압축된 출력을 결정하고, 이를 대응하는 스케일 인자에 따라 사용한다. 즉,
여기서, q(Sn-1) 은 이전 프레임에 대한 스케일 인자의 인덱스를 나타내고, q(Sn-1+ 1) 은 이전 프레임 + 1 에 대한 후보 인덱스 스케일 인자를 나타내고, q(Sn-1- 1) 은 이전 프레임 - 1 에 대한 후보 인덱스 스케일 인자를 나타내고, 그리고 qn은 현재 프레임에 대한 실제 스케일 인자를 나타낸다.
다시 도 1 및 도 2 를 참조하면, 지그재그 스캔 직렬화기 (156) 에 양자화된 계수들을 제공한다. 직렬화기 (156) 는 양자화된 계수들의 블록들을 지그재그 방식으로 스캔하여 양자화된 계수들의 직렬화된 스트림을 생성한다. 또한, 많은 서로 다른 지그재그 스캐닝 패턴들 뿐만 아니라 지그재그 이외의 패턴들을 선택할 수도 있다. 다른 사이즈들을 사용할 수 있지만, 바람직한 기술로는 지그재그 스캐닝을 위하여 8 ×8 블록 사이즈를 사용한다.
지그재그 스캔 직렬화기 (156) 를 양자화기 (132, 136, 140, 144, 또는 148) 전후로 배치할 수 있다. 통상적으로, 최종 결과들은 동일하다.
임의의 경우에 있어서, 양자화된 계수들의 스트림을 가변 길이 코더 (156) 에 제공한다. 가변 길이 코더 (156) 는 0 의 동작 길이 인코딩과 이에 후속하여 허프만 인코딩을 이용할 수 있다. 이 기술은 전술한 미국 특허 제 5,021,891 호, 제 5,107,345 호, 및 제 5,452,104 호에 상세히 기재되어 있고, 여기서 간략화된다. 동작 길이 코더는 양자화된 계수들을 취하고, 0 이 아닌 계수들로부터 0 을 분리한다. 0 값들은 동작-길이 값들로 지칭되며, 허프만 인코딩된다. 0 이 아닌 값들은 개별적으로 허프만 인코딩된다.
또한, 양자화된 계수들의 허프만 코딩을 변경할 수 있고, 이를 바람직한 실시예에 사용한다. 여기서, 지그재그 스캐닝 이후에, 동작-길이 코더는 각 8 ×8 블록내의 동작-길이/사이즈 쌍을 결정한다. 그 후, 이러한 동작-길이/사이즈 쌍을 허프만 인코딩한다.
허프만 코드들은 영상의 측정 확률 또는 이론적인 확률 중 어느 하나로부터 설계된다. 대부분의 자연 영상들은 사용빈도가 적거나 비교적 느리게 변화하는 영역들, 그리고 오브젝트 경계들 및 높은 콘트라스트 텍스쳐와 같은 사용빈도가 많은 영역들로 이루어 진다고 관찰하였다. DCT 와 같은 주파수-영역 변환을 이용하는 허프만 코더들은, 사용빈도가 높은 영역들에는 더 많은 비트들을 할당하고 사용빈도가 적은 영역들에는 더 적은 비트들을 할당함으로써 이러한 특징들을 이용한다. 통상, 허프만 코더들은 탐색 테이블을 이용하여 동작-길이 및 0 이 아닌 값들을 코드화한다. 원하는 바와 따라 1 개 또는 2 개의 테이블을 사용할 수도 있지만, 통상적으로 다수의 테이블이 사용되며, 본 발명에서는 3 개의 테이블을 사용한다.
인코더 (104) 에 의해 생성된 압축 영상 신호를 버퍼 (160) 를 사용하여 일시적으로 저장한 후, 송신 채널 (108) 을 이용하여 디코더 (112) 로 송신한다. 또한, 블록 사이즈 할당 정보를 포함하는 PQR 데이터를 디코더 (112) 에 제공한다.디코더 (112) 는 동작-길이 값들과 0 이 아닌 값들을 디코딩하는 가변 길이 디코더 (168) 및 버퍼 (164) 를 구비한다.
이 가변 길이 디코더 (168) 의 출력을 사용중인 스캔 방식에 따라 계수들을 배열하는 역 지그재그 스캔 직렬화기 (172) 에 제공한다. 역 지그재그 스캔 직렬화기 (172) 는 PQR 데이터를 수신하고 합성 계수 블록으로 계수들을 적절하게 배열하는 것을 도와 준다.
양자화기 스케일 인자 및 주파수 가중 마스크들의 사용에 따른 처리를 원상 복구하기 위하여, 합성 블록을 선택기 (174) 을 이용하여 인코더 (104) 에 사용되는 양자화기에 대응하는 역 양자화기 (176, 178, 180, 182, 또는 184) 에 제공한다.
그 후, 차분 4 진 트리 변환이 적용된 경우, 계수 블록을 IDQT 엘리먼트 (186) 와 이에 후속하는 IDCT 엘리먼트 (190) 로 제공한다. 다른 방법으로는, 계수 블록을 IDCT 엘리먼트 (190) 에 직접 제공할 수도 있다. IDQT 엘리먼트 (186) 와 IDCT 엘리먼트 (190) 는 계수들을 역 변환하여 화소 데이터의 블록을 생성한다. 그 후, 화소 데이터를 보간하고, RGB 형태로 변환하고, 그리고 미래의 표시를 위하여 저장해야 한다.
따라서, 화소 편차에 기초하여 블록 사이즈 할당을 수행하는 영상 압축 시스템 및 방법을 제공할 수 있다. 편차 기반 블록 사이즈 할당은 몇몇 이점들을 제공한다. 블록 사이즈들을 결정한 후에 이산 코사인 변환을 수행하기 때문에, 효과적으로 계산을 수행할 수 있다. 선택된 블록들상에서만 계산 집중적인 변환을 수행할 수 있다. 또한, 화소 값들의 편차가 수학적으로 계산하기 간편하므로, 블록 선택 처리가 효과적으로 된다. 편차 기반 블록 사이즈 할당의 또 다른 이점은 인식가능하게 기준화된다는 점이다. 화소 편차는 블록내의 활동에 대한 측정값이며, 이는 에지, 텍스쳐 등의 존재를 나타낸다. 이는 평균 화소 값들과 같은 측정값들보다 더 나은 블록의 세부사항들을 포착하기 쉽게 한다. 따라서, 본 발명의 편차 기반 방식은 더 많은 에지들을 가지는 영역들에는 더 작은 블록들을 할당하고, 사용빈도가 적은 영역들에는 더 큰 블록들을 할당한다. 그 결과, 재구성된 영상의 품질을 높게 할 수 있다.
또 다른 이점은 영상 품질의 제어시에 명료성 및 정밀도를 더 크게 하여, 일부 양자화 스케일 인자들과 관련된 비트 레이트에 상관없이 블록 사이즈 할당을 행할 수 있다는 것이다. 품질 기반 양자화 스케일 인자를 고려하여, 영상 압축은 실제 가변 비트 레이트로 행해진다. 이는 영상 압축 시스템으로 하여금 단지 현저한 가시도 임계값 보다 큰 모든 영역들의 세부사항들을 유지할 수 있게 한다. 또한, 편차 기반 영상 압축은, MPEG (Moving Picture Experts Group) 압축 기술들과 같은 방법들과는 달리, 인식 가능한 영상 품질의 저하를 작게한다. 특히, 이는 디지털 영화 영역의 애플리케이션들에 있어서 중요하다.
디지털 비디오의 수요가 증가함에 따라서, 프라이버시가 심각하게 위협받고 있다. 디저털 워터마킹은 저작권 침해, 및 소득 손실을 방지하기 위한 중요한 필수수단이다. 워터마킹은 인식가능하게 현저한 영상 영역들에서 행해지므로, 편차 기반 블록 사이즈 할당은 워터마킹에 사용하기 위한 적합한 후보가 된다.
당업자가 본 발명을 제작하거나 사용할 수 있도록 바람직한 실시예들을 상술하였다. 당업자라면 이러한 실시예들을 다양하게 변경시킬 수 있음을 알 수 있고, 여기서 규정된 일반 원리들은 본 발명의 창의력을 사용하지 않고도 다른 실시예들에 적용할 수 있다. 따라서, 본 발명은 여기에 나타내는 실시예들로 한정되는 것이 아니라, 여기에 개시된 원리 및 신규한 특징들과 일치하는 가장 넓은 범위를 부여하는 것이다.
본 발명의 다른 특징 및 이점을 다음의 청구범위에서 설명한다.

Claims (73)

  1. 화소 데이터를 구비하는 디지털 영상을 압축하는 방법에 있어서,
    화소 데이터의 블록을 판독하는 단계;
    블록 사이즈 할당을 행하여 화소의 블록들을 화소 데이터의 서브-블록들로 분할하는 단계;
    상기 화소 데이터의 서브-블록들을 대응하는 주파수 영역 표현들로 변환하는 단계; 및
    상기 주파수 영역 표현들을 데이터의 스트림으로 스케일링하는 단계를 포함하며,
    상기 스케일링 단계는 상기 영상의 품질과 관련되는 품질 메트릭에 기초하는 것을 특징으로 하는 방법.
  2. 제 1 항에 있어서,
    상기 스케일링 단계는, 주파수 가중 마스크가 인간의 시각 시스템에 더 민감한 상기 영상의 부분들을 엠퍼사이즈하고, 인간의 시각 시스템에 덜 민감한 상기 영상의 부분들을 보다 작게 엠퍼사이즈하도록, 상기 화소 데이터의 서브-블록들에 상기 주파수 가중 마스크를 제공하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  3. 제 1 항에 있어서,
    상기 스케일링 단계는 상기 영상의 품질에 기초하여 상기 화소 데이터의 서브-블록들을 양자화하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  4. 제 1 항에 있어서,
    상기 품질 메트릭은 신호 대 잡음비인 것을 특징으로 하는 방법.
  5. 제 1 항에 있어서,
    상기 변환 단계는 이산 코사인 변환을 수행하는 것을 특징으로 하는 방법.
  6. 제 1 항에 있어서,
    상기 변환 단계는 이산 코사인 변환과 이에 후속하는 차분 4 진 트리 변환 (Differential Quad-tree Transform) 을 수행하는 것을 특징으로 하는 방법.
  7. 제 5 항에 있어서,
    상기 스케일링 단계는 블록 단위로 행해지는 것을 특징으로 하는 방법.
  8. 제 7 항에 있어서,
    상기 스케일링 단계는 상기 화소 데이터의 서브-블록의 콘트라스트에 기초하는 것을 특징으로 하는 방법.
  9. 제 7 항에 있어서,
    상기 스케일링 단계는 크기에 있어 소정의 임계값을 초과하는 서브-블록내의 AC 계수들의 개수에 기초하는 것을 특징으로 하는 방법.
  10. 제 7 항에 있어서,
    상기 스케일링 단계는 상기 서브-블록의 자승 평균 오차에 기초하는 것을 특징으로 하는 방법.
  11. 제 5 항에 있어서,
    상기 스케일링 단계는 프레임 단위로 행해지는 것을 특징으로 하는 방법.
  12. 제 11 항에 있어서,
    상기 스케일링 단계는 프레임 당 블록 사이즈 할당의 개수 및 크기에 기초하는 것을 특징으로 하는 방법.
  13. 제 11 항에 있어서,
    상기 스케일링 단계는 이전의 프레임의 스케일링 인자에 기초하는 것을 특징으로 하는 방법.
  14. 제 1 항에 있어서,
    상기 블록 사이즈 할당 단계는,
    상기 화소 데이터 블록에 대하여 화소 값들의 편차를 결정하는 단계;
    상기 편차와 임계값을 비교하는 단계;
    상기 비교 단계의 결과에 기초하여 상기 블록을 세분할 것 인지를 결정하는 단계;
    상기 블록을 세분하기로 결정하는 경우에, 소정의 기준을 만족시킬 때까지 각 서브-블록에 대하여 편차 결정 단계, 비교 단계, 및 세분 결정 단계를 반복하는 단계; 및
    추가적으로 세분되지 않는 각각의 블록 또는 서브-블록을 할당 블록 사이즈로 지정하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  15. 제 14 항에 있어서,
    상기 세분 결정 단계는, 상기 편차가 상기 임계값보다 더 큰 경우에, 세분될 블록을 요청하는 것을 특징으로 하는 방법.
  16. 제 15 항에 있어서,
    상기 임계값은 미리 결정되는 것을 특징으로 하는 방법.
  17. 제 15 항에 있어서,
    상기 임계값은 평가되는 상기 블록 또는 서브-블록의 평균 화소 값들의 함수인 것을 특징으로 하는 방법.
  18. 제 15 항에 있어서,
    상기 임계값은 각각의 세분 레벨을 변경시키는 것을 특징으로 하는 방법.
  19. 제 14 항에 있어서,
    상기 편차 결정 단계, 비교 단계, 및 세분 결정 단계를 더 이상 반복하지 않기 위한 상기 소정의 기준은, 사전 선택된 화소 데이터의 최소 블록 사이즈에 기초하는 것을 특징으로 하는 방법.
  20. 제 1 항에 있어서,
    상기 계수 데이터를 데이터의 스트림으로 스케일링하는 단계는 상기 계수 데이터를 지그재그 스캐닝하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  21. 제 20 항에 있어서,
    상기 지그재그 스캐닝 단계는 8 ×8 화소 블록 사이즈를 이용하여 수행하는 것을 특징으로 하는 방법.
  22. 제 1 항에 있어서,
    상기 스케일링 단계는 송신에 대비하여 상기 데이터의 스트림을 데이터의 직렬화된 스트림으로 코딩하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  23. 제 22 항에 있어서,
    상기 코딩 단계는 허프만 코더를 구비하는 것을 특징으로 하는 방법.
  24. 제 23 항에 있어서,
    상기 허프만 코더는 다수의 탐색 테이블들을 이용하여 동작-길이 및 0 이 아닌 값들을 코딩하는 것을 특징으로 하는 방법.
  25. 제 24 항에 있어서,
    3 개의 탐색 테이블을 가지는 것을 특징으로 하는 방법.
  26. 제 1 항에 있어서,
    상기 블록 사이즈 할당 단계는 상기 영상의 인식 특성들에 기초하는 것을 특징으로 하는 방법.
  27. 화소 데이터를 압축하기 위한 품질 기반 영상 압축 시스템에 있어서,
    화소의 블록들을 화소 데이터의 서브-블록들로 분할하는 블록 사이즈 할당 수단;
    상기 화소 데이터의 서브-블록들을 대응하는 주파수 영역 표현들로 변환하는 변환 수단; 및
    상기 영상의 품질과 관련되는 품질 메트릭에 기초하여, 상기 주파수 영역 표현들을 데이터의 스트림으로 스케일링하는 스케일링 수단을 구비하는 것을 특징으로 하는 시스템.
  28. 제 27 항에 있어서,
    상기 스케일링 수단은, 주파수 가중 마스크가 인간의 시각 시스템에 더 민감한 상기 영상의 부분들을 엠퍼사이즈하고, 인간의 시각 시스템에 덜 민감한 상기 영상의 부분들을 보다 작게 엠퍼사이즈하도록, 상기 화소 데이터의 서브-블록들에 대하여 주파수 가중 마스크 수단을 더 구비하는 것을 특징으로 하는 시스템.
  29. 제 27 항에 있어서,
    상기 스케일링 수단은 상기 영상의 품질에 기초하여 상기 화소 데이터의 서브-블록들을 양자화하는 양자화기를 더 구비하는 것을 특징으로 하는 시스템.
  30. 제 27 항에 있어서,
    상기 품질 메트릭은 신호 대 잡음비인 것을 특징으로 하는 시스템.
  31. 제 27 항에 있어서,
    상기 변환 수단은 이산 코사인 변환을 수행하는 것을 특징으로 하는 시스템.
  32. 제 27 항에 있어서,
    상기 변환 수단은 이산 코사인 변환과 이에 후속하는 차분 4 진 트리 변환을 수행하는 것을 특징으로 하는 시스템.
  33. 제 31 항에 있어서,
    상기 스케일링 수단은 블록 단위로 상기 데이터를 스케일링하는 것을 특징으로 하는 시스템.
  34. 제 33 항에 있어서,
    상기 스케일링 수단은 상기 화소 데이터의 서브-블록의 콘트라스트에 기초하는 것을 특징으로 하는 시스템.
  35. 제 33 항에 있어서,
    상기 스케일링 수단은 크기에 있어 소정의 임계값을 초과하는 서브-블록내의 AC 계수들의 개수에 기초하는 것을 특징으로 하는 시스템.
  36. 제 33 항에 있어서,
    상기 스케일링 수단은 상기 서브-블록의 자승 평균 오차에 기초하는 것을 특징으로 하는 시스템.
  37. 제 31 항에 있어서,
    상기 스케일링 수단은 프레임 단위로 동작하는 것을 특징으로 하는 시스템.
  38. 제 37 항에 있어서,
    상기 스케일링 수단은 프레임 당 블록 사이즈 할당의 개수 및 크기에 기초하는 것을 특징으로 하는 시스템.
  39. 제 37 항에 있어서,
    상기 스케일링 수단은 이전 프레임의 스케일링 인자에 기초하는 것을 특징으로 하는 시스템.
  40. 제 27 항에 있어서,
    상기 블록 사이즈 할당 수단은, 상기 화소 데이터의 블록에 대하여 화소값들의 편차를 결정하고; 상기 편차와 임계값을 비교하고; 상기 비교 결과에 기초하여 상기 블록을 세분할 것 인지를 결정하고; 상기 블록을 세분하기로 결정한 경우에, 소정의 기준을 만족시킬때 까지 각각의 세분된 블록에 대하여, 편차 결정 단계, 임계값과 비교하는 단계, 및 세분 결정 단계를 반복하고; 그리고 더 이상 세분되지 않는 각각의 블록 또는 서브-블록을 할당 블록 사이즈로 지정하는 것을 특징으로하는 시스템.
  41. 제 40 항에 있어서,
    상기 세분 결정은, 상기 편차가 상기 임계값보다 더 큰 경우에, 세분될 블록을 요청하는 것을 특징으로 하는 시스템.
  42. 제 41 항에 있어서,
    상기 임계값은 미리 결정되는 것을 특징으로 하는 시스템.
  43. 제 41 항에 있어서,
    상기 임계값은 평가되는 상기 블록 또는 서브-블록의 평균 화소 값들의 함수인 것을 특징으로 하는 시스템.
  44. 제 41 항에 있어서,
    상기 임계값은 각각의 세분 레벨을 변경시키는 것을 특징으로 하는 시스템.
  45. 제 40 항에 있어서,
    더 이상 세분하지 않기 위한 상기 소정의 기준은, 화소 데이터의 사전 선택된 최소 블록 사이즈에 기초하는 것을 특징으로 하는 시스템.
  46. 제 27 항에 있어서,
    상기 스케일링 수단은 지그재그 스캐너를 더 구비하는 것을 특징으로 하는 시스템.
  47. 제 46 항에 있어서,
    상기 지그재그 스캐너는 상기 지그재그 스캐너에 대하여 8 ×8 화소 블록 사이즈를 이용하는 것을 특징으로 하는 시스템.
  48. 제 47 항에 있어서,
    상기 스케일링 수단은 송신에 대비하여 상기 데이터의 스트림을 데이터의 직렬화된 스트림으로 코딩하는 코더를 더 구비하는 것을 특징으로 하는 시스템.
  49. 제 48 항에 있어서,
    상기 코더는 허프만 코더인 것을 특징으로 하는 시스템.
  50. 제 49 항에 있어서,
    상기 허프만 코더는 다수의 탐색 테이블들을 이용하여 동작-길이 및 0 이 아닌 값들을 코딩하는 것을 특징으로 하는 시스템.
  51. 제 50 항에 있어서,
    3 개의 탐색 테이블을 가지는 것을 특징으로 하는 시스템.
  52. 제 27 항에 있어서,
    상기 블록 사이즈 할당 수단은 상기 영상의 인식특성들에 기초하는 것을 특징으로 하는 시스템.
  53. 화소 데이터를 구비하는 디지털 영상을 압축하는 방법에 있어서,
    화소 데이터의 블록을 판독하는 단계;
    블록 사이즈 할당을 행하여 화소의 블록들을 화소 데이터의 서브-블록들로 분할하는 단계;
    상기 화소 데이터의 서브-블록들을 대응하는 주파수 영역 표현들로 변환하는 단계; 및
    상기 주파수 영역 표현들을 데이터의 스트림으로 스케일링하는 단계를 포함하며,
    상기 스케일링 단계는 상기 영상의 품질과 관련되는 품질 메트릭에 기초하며; 인간의 시각 시스템에 더 민감한 상기 영상의 부분들을 엠퍼사이즈하고 인간의 시각 시스템에 덜 민감한 상기 영상의 부분들을 보다 작게 엠퍼사이즈하도록 상기 화소 데이터의 서브-블록들에 대하여 주파수 가중 마스크를 제공하는 단계와, 상기 영상의 품질에 기초하여 상기 영상 데이터의 서브-블록들을 양자화하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  54. 제 53 항에 있어서,
    상기 품질 메트릭은 신호 대 잡음비인 것을 특징으로 하는 방법.
  55. 제 53 항에 있어서,
    상기 변환 단계는 이산 코사인 변환을 수행하는 것을 특징으로 하는 방법.
  56. 제 53 항에 있어서,
    상기 변환 단계는 이산 코사인 변환과 이에 후속하는 차분 4 진 트리 변환을 수행하는 것을 특징으로 하는 방법.
  57. 제 53 항에 있어서,
    상기 스케일링 단계는 블록 단위로 수행되는 것을 특징으로 하는 방법.
  58. 제 57 항에 있어서,
    상기 스케일링 단계는 상기 화소 데이터의 서브-블록의 콘트라스트에 기초하는 것을 특징으로 하는 방법.
  59. 제 57 항에 있어서,
    상기 스케일링 단계는 크기에 있어 소정의 임계값을 초과하는 서브 블록내의AC 계수들의 개수에 기초하는 것을 특징으로 하는 방법.
  60. 제 57 항에 있어서,
    상기 스케일링 단계는 상기 서브-블록의 자승 평균 오차에 기초하는 것을 특징으로 하는 방법.
  61. 제 55 항에 있어서,
    상기 스케일링 단계는 프레임 단위로 수행되는 것을 특징으로 하는 방법.
  62. 제 61 항에 있어서,
    상기 스케일링 단계는 프레임 당 블록 사이즈 할당의 개수 및 크기에 기초하는 것을 특징으로 하는 방법.
  63. 제 61 항에 있어서,
    상기 스케일링 단계는 이전의 프레임의 스케일링 인자에 기초하는 것을 특징으로 하는 방법.
  64. 화소 데이터를 압축하기 위한 품질 기반 영상 압축 시스템에 있어서,
    화소의 블록들을 화소 데이터의 서브-블록들로 분할하는 블록 사이즈 할당 수단;
    상기 화소 데이터의 서브-블록들을 대응하는 주파수 영역 표현들로 변환하는 변환 수단; 및
    상기 주파수 영역 표현들을 데이터의 스트림으로 스케일링 하는 스케일링 수단을 구비하며,
    상기 스케일링 수단은 상기 영상의 품질과 관련되는 품질 메트릭에 기초하며; 인간의 시각 시스템에 더 민감한 상기 영상의 부분들을 엠퍼사이즈하고 인간의 시각 시스템에 덜 민감한 상기 영상의 부분들을 더 작게 엠퍼사이즈하도록, 상기 화소 데이터의 서브-블록들에 대하여 주파수 가중 마스크 수단과, 상기 영상의 품질에 기초하여 상기 화소 데이터의 서브-블록들을 양자화하는 양자화기를 더 구비하는 것을 특징으로 하는 시스템.
  65. 제 64 항에 있어서,
    상기 품질 메트릭은 신호 대 잡음비인 것을 특징으로 하는 시스템.
  66. 제 64 항에 있어서,
    상기 변환 수단은 이산 코사인 변환을 수행하는 것을 특징으로 하는 시스템.
  67. 제 64 항에 있어서,
    상기 변환 수단은 이산 코사인 변환과 이에 후속하는 차분 4 진 트리 변환을 수행하는 것을 특징으로 하는 시스템.
  68. 제 67 항에 있어서,
    상기 스케일링 수단은 블록 단위로 상기 데이터를 스케일링 하는 것을 특징으로 하는 시스템.
  69. 제 67 항에 있어서,
    상기 스케일링 수단은 상기 화소 데이터의 서브-블록의 콘트라스트에 기초하는 것을 특징으로 하는 시스템.
  70. 제 67 항에 있어서,
    상기 스케일링 수단은 크기에 있어 소정의 임계값을 초과하는 서브-블록내의 AC 계수들의 개수에 기초하는 것을 특징으로 하는 시스템.
  71. 제 67 항에 있어서,
    상기 스케일링 수단은 상기 서브-블록의 자승 평균 오차에 기초하는 것을 특징으로 하는 시스템.
  72. 제 67 항에 있어서,
    상기 스케일링 수단은 프레임 단위로 동작하는 것을 특징으로 하는 시스템.
  73. 제 72 항에 있어서,
    상기 스케일링 수단은 프레임 당 블록 사이즈 할당의 개수 및 크기에 기초하는 것을 특징으로 하는 시스템.
KR1020027009710A 2000-01-28 2001-01-26 품질기반 영상압축 KR100788220B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/494,192 US6600836B1 (en) 2000-01-28 2000-01-28 Quality based image compression
US09/494,192 2000-01-28
PCT/US2001/002751 WO2001056298A1 (en) 2000-01-28 2001-01-26 Quality based image compression

Publications (2)

Publication Number Publication Date
KR20030005171A true KR20030005171A (ko) 2003-01-17
KR100788220B1 KR100788220B1 (ko) 2007-12-26

Family

ID=23963428

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027009710A KR100788220B1 (ko) 2000-01-28 2001-01-26 품질기반 영상압축

Country Status (15)

Country Link
US (3) US6600836B1 (ko)
EP (1) EP1252773A1 (ko)
JP (1) JP5107495B2 (ko)
KR (1) KR100788220B1 (ko)
CN (2) CN101018336B (ko)
AR (2) AR029032A1 (ko)
AU (1) AU784084B2 (ko)
CA (1) CA2398386C (ko)
HK (1) HK1053213A1 (ko)
MX (1) MXPA02007274A (ko)
MY (2) MY127241A (ko)
NZ (1) NZ520291A (ko)
TW (1) TW517501B (ko)
WO (1) WO2001056298A1 (ko)
ZA (1) ZA200205897B (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012046979A2 (ko) * 2010-10-06 2012-04-12 에스케이텔레콤 주식회사 주파수 마스크 테이블을 이용한 주파수변환 블록 부호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
US9628224B2 (en) 2013-10-22 2017-04-18 Samsung Electronics Co., Ltd Device and method for optimizing compression level of HARQ signal

Families Citing this family (89)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001006274A1 (en) 1999-07-20 2001-01-25 Qualcomm Incorporated Method for determining a change in a communication signal and using this information to improve sps signal reception and processing
DE10022331A1 (de) * 2000-05-10 2001-11-15 Bosch Gmbh Robert Verfahren zur Transformationscodierung von Bewegtbildsequenzen
US7168074B1 (en) * 2000-09-29 2007-01-23 Intel Corporation Runtime prediction framework for CPU intensive applications
US6870963B2 (en) 2001-06-15 2005-03-22 Qualcomm, Inc. Configurable pattern optimizer
US6735254B2 (en) * 2001-06-29 2004-05-11 Qualcomm, Inc. DCT compression using Golomb-Rice coding
US7483581B2 (en) 2001-07-02 2009-01-27 Qualcomm Incorporated Apparatus and method for encoding digital image data in a lossless manner
US7058677B1 (en) * 2001-07-17 2006-06-06 Vixs, Inc. Method and apparatus for selectible quantization in an encoder
US7630563B2 (en) * 2001-07-19 2009-12-08 Qualcomm Incorporated System and method for decoding digital image and audio data in a lossless manner
AU2002335743A1 (en) * 2001-09-14 2003-04-01 The Regents Of The University Of Michigan Audio distributor
CN1589575A (zh) * 2001-11-21 2005-03-02 皇家飞利浦电子股份有限公司 改进的位面压缩方法
US7280700B2 (en) * 2002-07-05 2007-10-09 Microsoft Corporation Optimization techniques for data compression
KR101233236B1 (ko) * 2002-07-29 2013-02-14 퀄컴 인코포레이티드 디지털 이미지 인코딩
US6975773B1 (en) * 2002-07-30 2005-12-13 Qualcomm, Incorporated Parameter selection in data compression and decompression
FR2846835B1 (fr) * 2002-11-05 2005-04-15 Canon Kk Codage de donnees numeriques combinant plusieurs modes de codage
US7177441B2 (en) * 2002-12-09 2007-02-13 International Business Machines Corporation System and method for secret communication
WO2004080081A1 (en) * 2003-03-03 2004-09-16 Koninklijke Philips Electronics N.V. Video encoding
HUP0301368A3 (en) * 2003-05-20 2005-09-28 Amt Advanced Multimedia Techno Method and equipment for compressing motion picture data
US7697608B2 (en) * 2004-02-03 2010-04-13 Sony Corporation Scalable MPEG video/macro block rate control
US8116374B2 (en) 2004-05-07 2012-02-14 Broadcom Corporation Method and system for generating a transform size syntax element for video decoding
US7801383B2 (en) * 2004-05-15 2010-09-21 Microsoft Corporation Embedded scalar quantizers with arbitrary dead-zone ratios
US20060008167A1 (en) * 2004-07-06 2006-01-12 Qing Yu Digital camera having picture quality setting
DE602005018796D1 (de) * 2004-09-16 2010-02-25 Thomson Licensing Verfahren und vorrichtung zur schnelllaufentscheidung für interframes
US8780957B2 (en) * 2005-01-14 2014-07-15 Qualcomm Incorporated Optimal weights for MMSE space-time equalizer of multicode CDMA system
MX2007011084A (es) * 2005-03-10 2007-11-15 Qualcomm Inc Clasificacion de contenido para procesamiento multimedia.
US7995656B2 (en) * 2005-03-10 2011-08-09 Qualcomm Incorporated Scalable video coding with two layer encoding and single layer decoding
US7567722B2 (en) * 2005-03-22 2009-07-28 Qualcomm Incorporated Dynamically scaled file encoding
US8422546B2 (en) 2005-05-25 2013-04-16 Microsoft Corporation Adaptive video encoding using a perceptual model
EP3229472B1 (en) 2005-09-26 2020-07-01 Mitsubishi Electric Corporation Moving image coding apparatus
US8879857B2 (en) * 2005-09-27 2014-11-04 Qualcomm Incorporated Redundant data encoding methods and device
US8654848B2 (en) 2005-10-17 2014-02-18 Qualcomm Incorporated Method and apparatus for shot detection in video streaming
US20070206117A1 (en) * 2005-10-17 2007-09-06 Qualcomm Incorporated Motion and apparatus for spatio-temporal deinterlacing aided by motion compensation for field-based video
US8948260B2 (en) * 2005-10-17 2015-02-03 Qualcomm Incorporated Adaptive GOP structure in video streaming
US20070171280A1 (en) * 2005-10-24 2007-07-26 Qualcomm Incorporated Inverse telecine algorithm based on state machine
US7912123B2 (en) 2006-03-01 2011-03-22 Streaming Networks (Pvt.) Ltd Method and system for providing low cost robust operational control of video encoders
US9131164B2 (en) * 2006-04-04 2015-09-08 Qualcomm Incorporated Preprocessor method and apparatus
US8130828B2 (en) * 2006-04-07 2012-03-06 Microsoft Corporation Adjusting quantization to preserve non-zero AC coefficients
US7995649B2 (en) * 2006-04-07 2011-08-09 Microsoft Corporation Quantization adjustment based on texture level
US8059721B2 (en) 2006-04-07 2011-11-15 Microsoft Corporation Estimating sample-domain distortion in the transform domain with rounding compensation
US20070237237A1 (en) * 2006-04-07 2007-10-11 Microsoft Corporation Gradient slope detection for video compression
US7974340B2 (en) 2006-04-07 2011-07-05 Microsoft Corporation Adaptive B-picture quantization control
US8503536B2 (en) 2006-04-07 2013-08-06 Microsoft Corporation Quantization adjustments for DC shift artifacts
US8711925B2 (en) 2006-05-05 2014-04-29 Microsoft Corporation Flexible quantization
KR101345294B1 (ko) * 2006-08-09 2013-12-27 삼성전자주식회사 영상의 양자화 장치 및 방법
US8374295B2 (en) * 2006-09-18 2013-02-12 Mediatek Inc. Method of scaling input data and mobile device utilizing the same
JP4274234B2 (ja) * 2006-12-04 2009-06-03 ソニー株式会社 圧縮データ量制御方法及び画像データ圧縮装置
US8238424B2 (en) 2007-02-09 2012-08-07 Microsoft Corporation Complexity-based adaptive preprocessing for multiple-pass video compression
US8498335B2 (en) 2007-03-26 2013-07-30 Microsoft Corporation Adaptive deadzone size adjustment in quantization
US8243797B2 (en) 2007-03-30 2012-08-14 Microsoft Corporation Regions of interest for quality adjustments
US8442337B2 (en) 2007-04-18 2013-05-14 Microsoft Corporation Encoding adjustments for animation content
US8331438B2 (en) * 2007-06-05 2012-12-11 Microsoft Corporation Adaptive selection of picture-level quantization parameters for predicted video pictures
DE102008030212A1 (de) * 2007-10-18 2009-04-23 Stego-Holding Gmbh Heizvorrichtung und Wärmetauscher
US8189933B2 (en) 2008-03-31 2012-05-29 Microsoft Corporation Classifying and controlling encoding quality for textured, dark smooth and smooth video content
US8897359B2 (en) 2008-06-03 2014-11-25 Microsoft Corporation Adaptive quantization for enhancement layer video coding
US8325796B2 (en) 2008-09-11 2012-12-04 Google Inc. System and method for video coding using adaptive segmentation
US8634456B2 (en) * 2008-10-03 2014-01-21 Qualcomm Incorporated Video coding with large macroblocks
US8503527B2 (en) 2008-10-03 2013-08-06 Qualcomm Incorporated Video coding with large macroblocks
CN101510950B (zh) * 2008-10-10 2011-05-18 慧帝科技(深圳)有限公司 一种影像处理装置和方法
JP5208043B2 (ja) * 2009-04-16 2013-06-12 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
US9083986B2 (en) * 2009-05-01 2015-07-14 Broadcom Corporation Method and system for adaptive rate video compression and transmission
KR101624649B1 (ko) * 2009-08-14 2016-05-26 삼성전자주식회사 계층적인 부호화 블록 패턴 정보를 이용한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
MX353107B (es) 2010-04-09 2017-12-19 Mitsubishi Electric Corp Dispositivo codificador de imagen en movimiento y dispositivo decodificador de imagen en movimiento.
US20110289128A1 (en) * 2010-05-24 2011-11-24 Chih-Ta Star Sung Method of performing discrete cosine transform
JP5479225B2 (ja) * 2010-05-27 2014-04-23 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
US8488890B1 (en) * 2010-06-11 2013-07-16 Nvidia Corporation Partial coverage layers for color compression
US9172960B1 (en) * 2010-09-23 2015-10-27 Qualcomm Technologies, Inc. Quantization based on statistics and threshold of luminanceand chrominance
CN106412591B (zh) 2011-01-13 2019-09-06 佳能株式会社 图像编码装置和方法以及图像解码装置和方法
US9154799B2 (en) 2011-04-07 2015-10-06 Google Inc. Encoding and decoding motion via image segmentation
JP6265414B2 (ja) * 2011-06-28 2018-01-24 日本電気株式会社 映像符号化装置及び映像復号装置
US10091513B2 (en) 2011-09-29 2018-10-02 Texas Instruments Incorporated Perceptual three-dimensional (3D) video coding based on depth information
US9262670B2 (en) 2012-02-10 2016-02-16 Google Inc. Adaptive region of interest
US8848261B1 (en) * 2012-02-15 2014-09-30 Marvell International Ltd. Method and apparatus for using data compression techniques to increase a speed at which documents are scanned through a scanning device
CN103313046B (zh) * 2012-03-06 2019-06-14 中兴通讯股份有限公司 一种残差的表示方法和熵编码输入装置
CN102724381B (zh) * 2012-06-15 2014-04-02 杭州电子科技大学 基于jpeg压缩原理的票据类图像压缩方法
TW201419865A (zh) * 2012-11-13 2014-05-16 Hon Hai Prec Ind Co Ltd 影像切割系統及方法
JP2014116733A (ja) 2012-12-07 2014-06-26 Canon Inc 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
IN2013MU01146A (ko) * 2013-03-26 2015-04-24 Tektronix Inc
JP6221704B2 (ja) * 2013-12-05 2017-11-01 Nttエレクトロニクス株式会社 符号化装置及びブロックサイズ選択方法
CN103745443B (zh) * 2014-01-10 2017-06-13 北京优纳科技有限公司 提高图像质量的方法和设备
US9392272B1 (en) 2014-06-02 2016-07-12 Google Inc. Video coding using adaptive source variance based partitioning
US9578324B1 (en) 2014-06-27 2017-02-21 Google Inc. Video coding using statistical-based spatially differentiated partitioning
US9311342B1 (en) * 2015-02-09 2016-04-12 Sony Corporation Tree based image storage system
US10963581B2 (en) 2015-05-20 2021-03-30 Board Of Regents, The University Of Texas System Systems and methods for secure file transmission and cloud storage
CN106297611B (zh) 2015-06-05 2021-08-10 北京智谷睿拓技术服务有限公司 显示控制方法和装置
CN106291953B (zh) 2015-06-05 2019-01-08 北京智谷睿拓技术服务有限公司 显示控制方法和装置
CN106297610B (zh) 2015-06-05 2020-03-17 北京智谷睿拓技术服务有限公司 显示控制方法和装置
WO2018008678A1 (ja) * 2016-07-08 2018-01-11 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 復号装置、符号化装置、復号方法及び符号化方法
CN107645662B (zh) * 2017-10-19 2020-06-12 电子科技大学 一种彩色图像压缩方法
EP3732881A1 (en) * 2018-02-17 2020-11-04 Google LLC Image compression and decompression using controlled quality loss
CN110659379B (zh) * 2019-09-24 2023-05-23 中南林业科技大学 一种基于深度卷积网络特征的可搜索加密图像检索方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1318969C (en) * 1987-06-25 1993-06-08 Shoji Mizuno Encoding of a picture signal in consideration of contrast in each picture and decoding corresponding to the encoding
JP2507104B2 (ja) * 1989-12-21 1996-06-12 松下電器産業株式会社 画像デ―タ圧縮装置
US5107345A (en) 1990-02-27 1992-04-21 Qualcomm Incorporated Adaptive block size image compression method and system
US5113256A (en) 1991-02-08 1992-05-12 Zenith Electronics Corporation Method of perceptually modeling a video image signal
KR0167367B1 (ko) * 1991-06-04 1999-03-20 하비 피. 화이트 적응블록크기 영상압축방법 및 시스템
US5452101A (en) * 1991-10-24 1995-09-19 Intel Corporation Apparatus and method for decoding fixed and variable length encoded data
US5231484A (en) 1991-11-08 1993-07-27 International Business Machines Corporation Motion video compression system with adaptive bit allocation and quantization
JP3360844B2 (ja) * 1992-02-04 2003-01-07 ソニー株式会社 ディジタル画像信号の伝送装置およびフレーム化方法
WO1993018611A1 (de) 1992-03-09 1993-09-16 Siemens Aktiengesellschaft Verfahren zur bildadaptiven regelung der länge eines quantisierungsintervalls bei der bilddatenreduktion
JP3093458B2 (ja) * 1992-07-23 2000-10-03 株式会社東芝 可変レート符・復号化装置
JPH06188742A (ja) * 1992-12-22 1994-07-08 Mitsubishi Electric Corp 変換符号化/復号化装置
JP2882287B2 (ja) * 1994-08-22 1999-04-12 日本電気株式会社 動画像符号化装置
US5629780A (en) 1994-12-19 1997-05-13 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Image data compression having minimum perceptual error
JPH08205140A (ja) * 1995-01-31 1996-08-09 Canon Inc 画像圧縮装置
AU705914B2 (en) * 1995-04-25 1999-06-03 Koninklijke Philips Electronics N.V. Device and method for coding video pictures
JP3651706B2 (ja) * 1995-10-27 2005-05-25 株式会社東芝 動画像符号化装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012046979A2 (ko) * 2010-10-06 2012-04-12 에스케이텔레콤 주식회사 주파수 마스크 테이블을 이용한 주파수변환 블록 부호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
WO2012046979A3 (ko) * 2010-10-06 2012-05-31 에스케이텔레콤 주식회사 주파수 마스크 테이블을 이용한 주파수변환 블록 부호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
CN103155565A (zh) * 2010-10-06 2013-06-12 Sk电信有限公司 使用频率掩蔽表编码频率转换块的方法和设备以及使用该方法和设备编码/解码视频的方法和设备
CN103155565B (zh) * 2010-10-06 2016-01-20 Sk电信有限公司 使用频率掩蔽表编码频率转换块的方法和设备以及使用该方法和设备编码/解码视频的方法和设备
US9473773B2 (en) 2010-10-06 2016-10-18 Sk Telecom Co., Ltd. Method and apparatus for encoding frequency transformed block using frequency mask table, and method and apparatus for encoding/decoding video using same
US9497461B2 (en) 2010-10-06 2016-11-15 Sk Telecom Co., Ltd. Method and apparatus for encoding frequency transformed block using frequency mask table, and method and apparatus for encoding/decoding video using same
US9628224B2 (en) 2013-10-22 2017-04-18 Samsung Electronics Co., Ltd Device and method for optimizing compression level of HARQ signal

Also Published As

Publication number Publication date
CN101018336A (zh) 2007-08-15
AU784084B2 (en) 2006-02-02
MXPA02007274A (es) 2003-02-12
AR058948A2 (es) 2008-03-05
CN1419787A (zh) 2003-05-21
NZ520291A (en) 2004-06-25
US20070071335A1 (en) 2007-03-29
MY141154A (en) 2010-03-15
ZA200205897B (en) 2003-11-05
CN101018336B (zh) 2012-04-04
CA2398386C (en) 2012-02-28
CN1303820C (zh) 2007-03-07
WO2001056298A1 (en) 2001-08-02
AU3460701A (en) 2001-08-07
MY127241A (en) 2006-11-30
US6600836B1 (en) 2003-07-29
US20030202707A1 (en) 2003-10-30
CA2398386A1 (en) 2001-08-02
AR029032A1 (es) 2003-06-04
KR100788220B1 (ko) 2007-12-26
EP1252773A1 (en) 2002-10-30
TW517501B (en) 2003-01-11
HK1053213A1 (en) 2003-10-10
JP5107495B2 (ja) 2012-12-26
US7136534B2 (en) 2006-11-14
US7460723B2 (en) 2008-12-02
JP2003521178A (ja) 2003-07-08

Similar Documents

Publication Publication Date Title
KR100788220B1 (ko) 품질기반 영상압축
CA2389410C (en) Variance based adaptive block size dct image compression
KR100932412B1 (ko) 구성가능한 패턴 옵티마이저
KR100926381B1 (ko) Golomb-rice 코딩을 사용한 dct 압축
AU2002315160A1 (en) Configurable pattern optimizer
JP2004528791A (ja) インターフレーム符号化方法および装置

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
FPAY Annual fee payment

Payment date: 20121129

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20131129

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20141128

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150930

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20161125

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170929

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20180928

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190924

Year of fee payment: 13