KR101006287B1 - 무손실 데이터 코더 및 디코더 시스템, 픽쳐 코더 시스템, 오디오 코더 및 디코더 시스템, 무손실 데이터 엔코딩 및 디코딩 방법, 무손실 오디오 엔코딩 방법, 다중 인수분해 가역 변환 방법, 및 컴퓨터 판독 가능 매체 - Google Patents

무손실 데이터 코더 및 디코더 시스템, 픽쳐 코더 시스템, 오디오 코더 및 디코더 시스템, 무손실 데이터 엔코딩 및 디코딩 방법, 무손실 오디오 엔코딩 방법, 다중 인수분해 가역 변환 방법, 및 컴퓨터 판독 가능 매체 Download PDF

Info

Publication number
KR101006287B1
KR101006287B1 KR1020030072958A KR20030072958A KR101006287B1 KR 101006287 B1 KR101006287 B1 KR 101006287B1 KR 1020030072958 A KR1020030072958 A KR 1020030072958A KR 20030072958 A KR20030072958 A KR 20030072958A KR 101006287 B1 KR101006287 B1 KR 101006287B1
Authority
KR
South Korea
Prior art keywords
reversible
transform
rotation
factorization
multiple factorization
Prior art date
Application number
KR1020030072958A
Other languages
English (en)
Other versions
KR20040045287A (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 KR20040045287A publication Critical patent/KR20040045287A/ko
Application granted granted Critical
Publication of KR101006287B1 publication Critical patent/KR101006287B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/0017Lossless audio signal coding; Perfect reconstruction of coded audio signal by transmission of coding error
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0212Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • Computational Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Acoustics & Sound (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Human Computer Interaction (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Discrete Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

무손실 및/또는 프로그레시브-무손실 데이터 코딩(예를 들어, 오디오 및/또는 이미지)을 위한 시스템 및 방법이 제공된다. 시스템 및 방법은 적어도 부분적으로 다중 인수분해 가역 변환에 기초하는 양자화된 계수를 제공하는 다중 인수분해 가역 변환 컴포넌트를 채용한다. 본 발명의 한 양태에 따르면, 다중 인수분해 가역 변환 컴포넌트는 N-포인트 MLT를 채용할 수 있다. 다중 인수분해 가역 변환 컴포넌트는 변조 스테이지, 전-FFT 회전 스테이지, 복소 FFT 스테이지 및 후-FFT 회전 스테이지를 포함할 수 있다.
무손실 데이터 코딩, 프로그레시브-무손실 데이터 코딩, 다중 인수분해 가역 변환, 양자화된 계수

Description

무손실 데이터 코더 및 디코더 시스템, 픽쳐 코더 시스템, 오디오 코더 및 디코더 시스템, 무손실 데이터 엔코딩 및 디코딩 방법, 무손실 오디오 엔코딩 방법, 다중 인수분해 가역 변환 방법, 및 컴퓨터 판독 가능 매체{A PROGRESSIVE TO LOSSLESS EMBEDDED AUDIO CODER(PLEAC) WITH MULTIPLE FACTORIZATION REVERSIBLE TRANSFORM}
도 1은 본 발명의 한 양태에 따른 무손실 데이터 코더 시스템의 블럭도.
도 2는 본 발명의 한 양태에 따른 상이한 인수분해 형식에 대하여 양자화 잡음 대 회전각을 나타낸 그래프.
도 3은 본 발명의 한 양태에 따른 8-포인트 MLT를 채용하는 다중 인수분해 가역 변환 컴포넌트의 블럭도.
도 4는 본 발명의 한 양태에 따른 무손실 데이터 디코더 시스템의 블럭도.
도 5는 본 발명의 한 양태에 따른 프로그레시브-무손실 데이터 코더 시스템의 블럭도.
도 6은 본 발명의 한 양태에 따른 프로그레시브-무손실 데이터 디코더 시스템의 블럭도.
도 7은 본 발명의 한 양태에 따른 프로그레시브-무손실 스테레오 오디오 코더 시스템의 블럭도.
도 8은 본 발명의 한 양태에 따른 예시적인 비트스트림의 블럭도.
도 9는 본 발명의 한 양태에 따른 프로그레시브-무손실 오디오 디코더 시스 템의 블럭도.
도 10은 본 발명의 한 양태에 따른 무손실 데이터 엔코딩 방법을 나타낸 흐름도.
도 11은 본 발명의 한 양태에 따른 무손실 데이터 디코딩 방법을 나타낸 흐름도.
도 12는 본 발명의 한 양태에 따른 프로그레시브-무손실 데이터 엔코딩 방법을 나타낸 흐름도.
도 13은 본 발명의 한 양태에 따른 프로그레시브-무손실 데이터 엔코딩 방법을 나타낸 흐름도.
도 14는 본 발명의 한 양태에 따른 다중 인수분해 가역 변환 방법을 나타낸 흐름도.
도 15는 본 발명이 기능할 수 있는 예시적인 운영 환경을 나타낸 도면.
<도면의 주요 부분에 대한 부호의 설명>
100 : 무손실 데이터 코더 시스템
110 : 다중 인수분해 가역 변환 컴포넌트
120 : 엔트로피 엔코더
310 : 변조 스테이지
320 : 전-FFT 회전 스테이지
330 : 복소 FFT 스테이지
340 : 후-FFT 회전 스테이지
410 : 엔트로피 디코더
420 : 역변환 컴포넌트
본 발명은 일반적으로 데이터 코딩에 관한 것으로, 더 상세하게는 오디오 및/또는 픽쳐 엔코딩 및/또는 디코딩을 용이하게 하는 시스템 및 방법에 관한 것이다.
컴퓨터 네트워크, 인터넷 및 디지탈 저장 수단의 광범위한 급증에 따라, 컴퓨터를 통해 입수할 수 있는 정보의 양은 현저하게 증가해왔다. 이와 같이 정보의 양이 증가함에 따라, 정보를 신속하게 전송하고, 정보를 효율적으로 저장할 필요가 있게 되었다. 데이터 압축은 정보의 효율적인 전송 및 저장을 용이하게 하는 기술이다.
데이터 압축은 정보를 표현하는 데에 필요한 공간의 양을 감소시키며, 다수의 정보 유형에 사용될 수 있다. 이미지, 텍스트, 오디오 및 비디오를 포함하는 디지탈 정보의 압축에 대한 요구는 계속 증가하고 있다. 전형적으로, 데이터 압축은 표준 컴퓨터 시스템에서 사용되지만, 셀룰러/디지탈 전화는 물론 디지탈 및 위성 텔레비젼 및 이에 한정되지 않는 그 외의 다른 기술들도 데이터 압축을 이용한다.
대량의 정보의 관리, 전송 및 처리에 대한 요구가 증가함에 따라, 이러한 데 이터의 압축에 대한 요구도 증가한다. 저장 디바이스의 용량이 상당히 증가되기는 했지만, 정보에 대한 요구가 용량 증가를 앞지르고 있다. 예를 들어, 압축되지 않은 디지탈 음원은 5 메가바이트의 공간을 필요로 하는 데에 반하여, 동일한 음악이 손실없이 압축되어 단 2.5 메가바이트의 공간만을 필요로 하게 될 수 있다. 따라서, 데이터 압축은 보다 더 많은 양의 정보를 전송하는 것을 용이하게 한다. 광대역, DSL, 케이블 모뎀 인터넷 등과 같은 전송 속도의 증가에도 불구하고, 압축되지 않은 정보로는 전송 한계에 쉽게 도달한다. 예를 들어, 압축되지 않은 음악을 DSL 회선을 통해 전송하는 데에는 10분이 소요된다. 그러나, 동일한 음악이 압축된 때에는 약 1분 내에 전송될 수 있으므로, 데이터 처리량에 10배의 이득을 제공한다.
일반적으로, 압축에는 무손실(lossless)과 손실(lossy)의 2가지 유형이 존재한다. 무손실 압축은 압축 후에 정확한 원본 데이터가 복구될 수 있게 하는 데에 반하여, 손실 압축은 압축 후에 복구된 데이터가 원본 데이터와는 다를 수 있게 한다. 손실 압축에서는 데이터 완전성이 어느 정도 손상되는 것이 허용되기 때문에, 손실 압축이 보다 더 양호한 압축률을 제공한다는 점에서, 2가지 압축 모드 간에 상충 관계가 존재한다. 데이터를 재구성하는 데에 실패할 경우 오디오 컨텐츠의 품질 및 분석에 막대한 영향을 미칠 수 있기 때문에, 무손실 압축은 중대한 오디오 레코딩에 사용될 수 있다. 손실 압축은 예를 들어 인간의 감각에 대해 어느 정도의 왜곡이나 잡음이 허용되는 소비자 음악 또는 중요하지 않은 오디오 레코딩에서 사용될 수 있다.
오디오 압축은 중대한 기술적인 문제이다. 현재 대부분의 웹 페이지는 디지 탈 음악을 호스팅하고 있고, 최근 디지탈 음악 재생 디바이스가 점점 더 보편화되고 있다.
또한, 오디오 파일을 엔코딩하기 위한 다수의 스킴이 존재한다. 이러한 스킴 중 몇몇은, 알려져 있는 인간의 음향 심리적(psycoacoustic)인 특성을 사용하여 오디오 파일을 마스킹(masking)함으로써, 보다 더 높은 압축률을 얻고자 한다. 음향 심리 코더(psycoacoustic coder)는, 하나 이상의 오디오 채널의 오디오 스펙트럼을, 인간의 청각의 주파수 선택성에 대해 최적화된 상이한 크기의 좁은 주파수 대역들로 분할함으로써, 인간 청각 마스킹(human auditory masking)을 유리하게 이용하도록 설계되어 있는 오디오 엔코더이다. 이것은 코딩 잡음을 예리하게 필터링하여, 코딩되는 오디오 신호의 주파수 컴포넌트에 매우 가까운 주파수로 유지되도록 하는 것을 가능하게 한다. 마스킹할 오디오 신호가 존재하지 않을 때마다 코딩 잡음의 레벨을 감소시킴으로써, 원본 신호의 음향 품질이 주관적으로 보존될 수 있다.
실제로, G.722.1 코더, MPEG-1 레이어 3 코더, MPEG-2 AAC 코더 및 MPEG-4 T/F 코더를 포함하는 거의 모든 최첨단 오디오 코더들은 음향 심리적 특성의 중요성을 인식하고, 오디오 파일을 코딩하는 데에 있어서 청각 마스킹 기술(auditory masking techniques)을 채용하고 있다. 특히, 오디오 파일 압축에서 인간의 음향 심리적 청각 특성을 사용하면, 인간의 귀에는 잘 들리지 않는 오디오 컴포넌트를 엔코딩하는 데에는 비트를 거의 사용하지 않을 수 있다. 반면에, 인간의 귀에 보다 더 민감하게 들리는 오디오 파일의 음향 심리적 컴포넌트를 엔코딩하는 데에는, 더 많은 비트가 사용될 수 있다. 이러한 음향 심리적 코딩은 주어진 비트레이트에서 엔코딩된 오디오의 품질을 크게 개선시킬 수 있게 한다.
전형적으로, 음향 심리적 특징은 아래와 같은 방식으로 오디오 코딩 스킴에 편입된다. 우선, 엔코더는 통상적으로 "중대 대역(critical band)"로 칭해지는 오디오 계수군의 청각 마스킹 임계값을 배타적으로 계산하여, "오디오 마스크(audio mask)"를 생성한다. 그 다음, 이 임계값은 예를 들어 계수의 양자화 스텝 사이즈(quantization step size)와 같은 소정의 형태로 디코더에 전송된다. 다음으로, 엔코더는 청각 마스크에 따라 오디오 계수를 양자화한다. 전형적으로, 청각 민감 계수(auditory sensitive coefficient), 즉 인간의 귀가 보다 더 민감하게 반응하는 것에 대해서, 보다 더 작은 양자화 스텝 사이즈가 사용된다. 전형적으로, 청각 비민감 계수(auditory insensitive coefficient), 즉 인간의 귀가 보다 덜 민감하게 반응하는 것에 대해서, 보다 더 큰 양자화 스텝 사이즈가 사용된다. 그러고나서, 양자화된 오디오 계수는 전형적으로 MPEG-4 AAC 양자화 & 코딩과 같은 허프만 코더(Huffman coder), MPEG-4 Twin VQ와 같은 벡터 양자화기(vector quantizer), 또는 MPEG-4 BSAC 코더와 같은 스케일링 가능한 비트평면 코더(scalable bitplane coder)를 통해 엔트로피 엔코딩(entropy encoding)된다.
전술한 종래의 오디오 코딩 스킴들 각각에 있어서, 청각 마스킹은 엔트로피 코딩 프로세스 전에 적용된다. 결과적으로, 마스킹 임계값은 오버헤드 정보(overhead information)로서 디코더에 전송된다. 그 결과, 주어진 비트레이트에서의 엔코딩된 오디오의 품질이 청각 마스킹 임계값 정보를 엔코딩하는 데에 요 구되는 비트의 범위까지 감소된다.
고성능 오디오 코덱은 디지탈 음악에 실제감을 부여한다. MP3, MPEG-4 오디오, RealTM 및 윈도우즈 미디어 오디오(WMATM)와 같은 보편적인 오디오 압축 기술은 통상 기본적으로 손실 압축이다. 보다 높은 압축률을 얻기 위해 오디오 파형이 왜곡된다. 레코딩/편집 스튜디오와 같이 품질이 중요한 어플리케이션에서는, 가능한 한 최고의 음질을 유지하는 것이 필수적이다. 즉, 오디오는 무손실로 압축되어야 한다. 통상적으로, 무손실 압축률은 제한되기 때문에, 무손실 압축된 비트스트림은 높은 압축률의 손실 비트스트림으로 스케일링(scaling)되는 것이 바람직하다. 대부분의 무손실 오디오 코딩 방식은 단순히 손실 오디오 코더에 의존하고, 잉여물(residue)을 더 엔코딩하는 것이다. 이러한 방식의 압축률은 종종 기초를 이루는 손실 코더에 좌우된다. 손실 코더에서의 양자화 잡음은 모델링하기가 어렵기 때문에, 이 방식은 무손실 오디오 코딩을 비효율적이게 한다. 또한, 이 방식은 기본 코더(base coder)와 잉여 코더(residue coder)를 필요로 하기 때문에, 더 복잡하다. 몇몇 다른 방식은 직접적으로 예측 필터(predictive coder)를 통해 무손실 오디오 코더를 구축하고, 예측 잉여(predictive residue)를 엔코딩한다. 그러나, 이 방식들은 양호한 압축률을 달성할 수 있지만, 현존하는 손실 오디오 코딩 구조와 호환될 수 없다. 무손실 코더의 압축률은 통상적으로 2~3:1로 다소 제한되기 때문에, 무손실 비트스트림을 스케일링하는 기능은 매우 유용하다. 예측 필터 에 기초하는 무손실 코더에 의해 생성된 비트스트림은 스케일링될 수 없다. 손실/잉여 코더는 손실 기초 계층(lossy base layer) 및 무손실 확장 계층(lossless enhancement layer)의 2 계층으로 비트스트림을 생성할 수 있다. 그러나, 스케일링은 손실 기초 계층의 범위를 넘지 못한다. 무손실 확장 계층에서의 스케일링이 더 요구되는 경우, 잉여 코더와 손실 코더의 설계를 일치시켜야 하며, 이것은 상당한 복잡함을 야기한다. 몇몇 다른 방식들은 직접적으로 예측 필터를 통해 무손실 오디오 코더를 구축하고 예측 잉여를 엔코딩한다. 양호한 압축률을 얻을 수 있긴 하지만, 이러한 방식은 현존하는 무손실 오디오 코딩 구조와 호환될 수 없다. 또한, 결과적인 비트스트림이 스케일링될 수 없다.
이하에서는, 본 발명의 몇몇 양태에 대한 기초적인 이해를 제공하기 위하여, 본 발명의 간략한 개요가 제공된다. 이 개요는 본 발명의 광범위한 개관은 아니다. 본 발명의 핵심적인/중요한 구성 요소를 지정하거나, 본 발명의 범위를 서술하기 위한 것이 아니다. 이 개요의 유일한 목적은 본 발명의 일부 기술적 사상을 나중에 제공될 발명의 상세한 설명에 대한 서론으로서 간략하게 제공하는 것이다.
본 발명은 무손실 및/또는 프로그레시브-무손실(progressive to loseless) 데이터 엔코딩을 위한 시스템 및 방법을 제공한다. 이 시스템 및 방법은 비가역적인 선형 변환(non-reversible linear transform)을 가능한 한 근접하게 모방하는 양자화된 계수를 제공하는 다중 인수분해 가역 변환 컴포넌트(multiple factorization reversible transform component)를 채용한다.
본 발명의 한 양태에 따르면, 다중 인수분해 가역 변환 컴포넌트 및 엔트로피 엔코더를 포함하는 무손실 데이터 코더 시스템이 제공된다. 시스템은 무손실 방식으로 데이터(예를 들어, 이미지, 픽쳐 및/또는 오디오)를 엔코딩할 수 있다. 시스템은 예를 들어 오디오 파형과 연관된 디지탈 입력을 (예를 들어, 아날로그 대 디지탈 컨버터로부터) 수신한다. 시스템은 예를 들어 광범위한 오디오 및/또는 문서 이미지 어플리케이션에 채용될 수 있으며, 이 어플리케이션은 디지탈 오디오 시스템, 분할 계층화된 이미지 시스템(segmented layered image system), 복사기(photocopier), 문서 스캐너, 광학적 특징 인식 시스템(optical character recognition system), PDA(Personal digital assistant), 팩스 기기, 디지탈 카메라, 디지탈 비디오 카메라 및/또는 비디오 게임을 포함하지만, 이들로 제한되는 것은 아니다.
통상적으로, 가역 변환 컴포넌트(들)는 정수 입력 신호(integer input signal)를 수신하고, 그 입력 신호에 대응하는 양자화된 계수의 출력을 제공한다. 이러한 변환에 의하면, 양자화된 계수로부터 입력 신호를 정확하게 복구할 수 있기 때문에, 이것은 가역적(reversible)인 것으로 칭해진다. 가역 변환에서, 입력 신호의 무손실 압축은, 역상관화되고 쉽게 압축되는 양자화된 계수의 무손실 압축으로 된다. 전형적으로, 가역 변환은 비가역 선형 변환으로부터의 청사진을 이용하여, 그리고 선형 변환의 실질적으로 모든 컴포넌트를 가역적인 것으로 함으로써 설계된다. 그러나, 이러한 설계 프로세스에서는, 가역 변환의 결과와 그 선형 변환 대응물 간의 차이인 양자화 잡음이 커질 수 있다.
본 발명의 한 양태에 따르면, 가역 변환의 양자화 잡음을 감소시키기 위하여, 선형 변환 컴포넌트를 다수의 가역 형식으로 인수분해할 수 있는 다중 인수분해 가역 변환 컴포넌트가 사용된다. 일례에서, 선형 회전 연산(linear rotation operation)은 4개의 상이한 가역 연산으로 인수화(factorizing)된다. 모든 연산의 핵심(core)은 3단계의 비선형 연산이다. 그러나, 입력/출력 변수의 쌍은 소정의 비선형 연산의 전후에 교환(swapping)될 수 있다. 입력/출력의 부호도 다른 경우에서처럼 변경될 수 있다. 부가적인 형태의 인수 분해는 실질적으로 동일한 회전각에 대하여 상이한 파라미터를 발생시키며, 그에 의해 가역 변환이 선형 비가역 변환을 (예를 들어 가능한 한 근접하게) 모방할 수 있게 한다.
본 발명의 한 양태에 따르면, 다중 인수분해 가역 변환 컴포넌트는 N-포인트 MLT에서 채용될 수 있다. MLT는 변조 스테이지, 전-FFT 회전 스테이지(pre-FFT rotation stage), 복소 FFT 스테이지(complex FFT stage) 및 후-FFT 회전 스테이지(post-FFT rotation stage)를 포함할 수 있다.
변조 스테이지 및 전-FFT 회전 스테이지는 다중 인수분해 회전 연산을 포함한다. 복소 FFT 스테이지의 핵심은 다중 인수분해 버터플라이 계산(multiple factorization butterfly calculation)인데, 이것은 다중 인수분해 회전에 의해 구현된다. 후-FFT 회전 스테이지의 핵심은 공액 회전 연산(conjugate rotation operation)인데, 이것은 정상 회전(normal rotation) 후 허수 부분의 부호를 바꾸는 것에 의해 구현될 수 있다.
엔트로피 엔코더는 양자화된 계수를 디지탈적으로 엔트로피 엔코딩하며, 임 의의 적합한 엔트로피 코딩 기술을 채용할 수 있다.
본 발명의 다른 양태는 다중 인수분해 가역 변환 컴포넌트 및 임베디드(embedded) 엔트로피 엔코더를 포함하는 프로그레시브-무손실 데이터 코더 시스템을 제공한다. 프로그레시브-무손실 데이터 코더 시스템은 오디오 및/또는 이미지를 코딩하는 데에 채용될 수 있다. 임베디드 엔트로피 엔코더(예를 들어, 고성능의 임베디드 엔트로피 코덱)와 결합된 다중 인수분해 가역 변환 컴포넌트는, 무손실 기능과 미립상 스케일링 가능한 프로그레시브 특성(fine granular scalability progressiveness)을 시스템에 제공한다. 시스템은 완전히 디코딩되는 경우 원본 파형(예를 들어 오디오)을 실질적으로 손실없이 복구하는 비트스트림을 생성하며, 무손실 압축을 용이하게 한다. 보다 높은 압축률이 요구되는 경우, 어플리케이션은 압축된 비트스트림의 부분집합을 추출하고, 손실 특징을 갖는 보다 더 높은 압축률의 비트스트림을 형성할 수 있다. 입도(granularity)를 단일 바이트로까지 낮춤으로써, 이러한 스케일링은 매우 큰 비트 레이트 범위 내에서 행해질 수 있다. 시스템의 프로그레시브-무손실 기능에 의하면, 어플리케이션은 매우 높은 압축률로부터 무손실까지의 범위 내에서 (예를 들어, 사용 가능한 대역폭 및/또는 사용자 선호에 기초하여) 요구되는 압축의 양과 요구되는 품질 사이에서 쉽게 균형을 유지할 수 있다.
임베디드 엔트로피 엔코더는 임의의 적합한 임베디드 엔트로피 엔코딩 기술을 채용할 수 있다. 일례에서, 임베디드 엔트로피 엔코더는, 이전의 코딩된 계수로부터 청각 마스킹 임계값을 유도하고 그 유도된 임계값을 사용하여 코딩의 차수 를 최적화하는, 완전히 스케일링 가능한(fully scalable) 음향 심리적 오디오 코더를 채용한다.
본 발명의 다른 양태는 가역 멀티플렉서, 다중 인수분해 가역 변환 컴포넌트(들), 임베디드 엔트로피 엔코더(들) 및 비트스트림 어셈블러를 포함하는 프로그레시브-무손실 오디오 코더 시스템을 제공한다. 시스템은 우선 가역 멀티플렉서를 통하는 입력 오디오 파형을 수신한다. 입력 오디오가 스테레오인 경우, 그 입력 오디오는 L+R과 L-R 컴포넌트로 분리된다. 그리고나서, 각각의 오디오 컴포넌트의 파형은 다중 인수분해 가역 변환 컴포넌트(들){예를 들어, 다중 인수분해 가역 MLT(modulated lapped transform)}에 의해 변환된다.
가역 멀티플렉서는 예를 들어 스테레오 오디오 입력을 수신한다. 가변 멀티플렉서는 스테레오 오디오 입력을 L+R과 L-R 컴포넌트로 분리하며, 여기에서 L과 R은 각각 좌측 및 우측 오디오 채널 상의 파형을 나타낸다. 입력 오디오가 모노인 경우, 가역 멀티플렉서는 오디오를 통과시킨다. 그리고나서, 각각의 컴포넌트는 개별적으로 엔코딩된다.
비트스트림 어셈블러는 임베디드 엔트로피 엔코더로부터 L+R 및 L-R 채널의 임베디드 비트스트림을 수신하고, 시스템의 최종 비트스트림을 형성한다. 따라서, 비트스트림 어셈블러는 다수의 타임슬롯 및 채널들 간에 사용가능한 코딩 비트레이트를 할당하고, 각각의 타임슬롯 및 채널의 임베디드 비트스트림을 할당된 비트레이트에 따라 절단하고, 최종의 압축된 비트스트림을 생성한다.
전술한 것과 그에 관련된 목적의 달성에 대하여, 본 발명의 몇몇 예시적인 양태가 이하의 상세한 설명 및 첨부된 도면과 관련하여 개시된다. 그러나, 이 양태들은 본 발명의 원리가 채용될 수 있는 다양한 방식 중의 일부만을 나타낸 것이며, 본 발명의 이러한 양태들과 그 등가물들을 전부 포함하도록 의도된 것이다. 이하의 본 발명에 대한 상세한 설명을 도면과 함께 숙지함으로써, 본 발명의 다른 이점과 신규한 특징들을 분명히 알 수 있을 것이다.
이하에서는, 본 발명의 첨부 도면들을 참조로 하여 설명되며, 도면들 전체에서 동일한 참조 번호는 동일한 구성요소를 나타내는 데에 사용된다. 이하에서는, 설명의 목적으로서, 본 발명의 완전한 이해를 제공하기 위하여 다수의 특정한 세부 사항이 제공된다. 그러나, 본 발명은 이러한 특정 세부 사항없이도 실시될 수 있다는 것은 분명할 것이다. 다른 경우에서, 본 발명을 쉽게 설명하기 위하여, 잘 알려져있는 구조와 장치들이 블럭도의 형식으로 도시된다.
본 명세서에서, "컴퓨터 컴포넌트"라는 용어는 하드웨어, 하드웨어와 소프트웨어의 결합, 소프트웨어, 또는 실행중인 소프트웨어와 같이 컴퓨터와 관련된 엔티티를 지칭하도록 의도된 것이다. 예를 들어, 컴퓨터 컴포넌트는 프로세서 상에서 실행중인 프로세스, 프로세서, 오브젝트, 실행파일(executable), 실행 스레드(thread of execution), 프로그램, 및/또는 컴퓨터일 수 있지만, 이들로 제한되는 것은 아니다. 예시를 위해, 서버상에서 실행중인 어플리케이션 및 서버의 양자 모두가 컴퓨터 컴포넌트일 수 있다. 하나 이상의 컴퓨터 컴포넌트가 프로세스 및/또는 실행 스레드 내에 상주할 수 있으며, 컴포넌트가 하나의 컴퓨터 상에 국부화되고/거나 둘 이상의 컴퓨터들 간에 분배될 수 있다.
도 1을 참조하여, 본 발명의 한 양태에 따른 무손실 데이터 코더 시스템(100)이 도시된다. 시스템은 다중 인수분해 가역 변환 컴포넌트(110) 및 엔트로피 엔코더(120)를 포함한다.
시스템(100)은 무손실로 데이터(예를 들어 이미지, 픽쳐 및/또는 오디오)를 엔코딩할 수 있다. 시스템(100)은 예를 들어 오디오 파형과 연관된 디지탈 입력을 (예를 들어, 아날로그 대 디지탈 컨버터로부터) 수신한다. 시스템(100)은 예를 들어 광범위한 오디오 및/또는 문서 이미지 어플리케이션에 채용될 수 있으며, 이 어플리케이션은 디지탈 오디오 시스템, 분할 계층화된 이미지 시스템, 복사기, 문서 스캐너, 광학적 특징 인식 시스템, PDA, 팩스 기기, 디지탈 카메라, 디지탈 비디오 카메라 및/또는 비디오 게임을 포함하지만, 이들로 제한되는 것은 아니다.
다중 인수분해 가역 변환 컴포넌트(110)는 입력 신호를 수신하고, 그 입력 신호에 대응하는 양자화된 계수의 출력을 제공한다. 다중 인수분해 가역 변환 컴포넌트(110)는 예를 들어 가역 MLT, 가역 DCT, 가역 DST 및/또는 가역 FFT를 채용할 수 있다.
예를 들어, 양자화된 계수의 출력은 적어도 부분적으로는 가역 MLT를 근거로 할 수 있다. 무손실 압축 효율은 가역 MLT와 그것의 비가역 대응 부분 간의 유사성에 의한 영향을 받는다. 그러므로, 가역 MLT는 그 변환 결과가 비가역 MLT의 결과를 (예를 들면 가능한 한 많이) 모방하도록 설계된다. 종래의 시스템에서, 가역 MLT는 선형 비가역 MLT를 참조하고 비가역 MLT의 실질적으로 모든 컴포넌트를 가역적인 것으로 함으로써 구축된다.
회전 연산은 DCT, DST, 및/또는 FFT와 같이 압축시에 통상적으로 사용되는 다른 비가역 변환은 물론, 비가역 MLT의 핵심 요소이다. 가역 MLT를 구축하기 위하여, 가역 회전이 구축된다.
Figure 112003038948627-pat00001
행렬
Figure 112003038948627-pat00002
는 가역 회전 연산을 나타내는 데에 사용된다. 전형적으로 가역 회전은 다음과 같은 특성을 갖는다.
a. 정수 입력
Figure 112003038948627-pat00003
에 대하여, 가역 회전의 결과
Figure 112003038948627-pat00004
는 양자화된 계수, 즉 정수값이어야 한다.
b. 적합한 역 연산(inverse operation)을 이용하면,
Figure 112003038948627-pat00005
로부터
Figure 112003038948627-pat00006
을 정확하게 복구할 수 있다.
c. 결과
Figure 112003038948627-pat00007
는 선형 회전의 결과와 매우 유사해야 한다. 정수 결과
Figure 112003038948627-pat00008
와 선형 회전 결과 간의 차이는 양자화 에러로서 정의된다.
통상적으로, 회전은 3단계의 비선형 연산으로 인수화될 수 있다.
Figure 112003038948627-pat00009
여기에서, c 0 = (cosθ-1)/sinθc 1 = sinθ 는 연산의 파라미터이다.
Figure 112003038948627-pat00010
은 정수화 연산(integerize operation)으로서, 플로팅 오퍼랜드(floating opernad)는 정수로 변환된다. 회전은 명확하게 가역적이므로, 중간 정수 변수 z가 단계 2에서 x' 및 y'로부터 (예를 들어 정확하게) 복구되고, 그 다음 단계 1에서 x' 및 z로부터 정수 입력 y가 복구되며, 마지막으로 단계 0에서 x 및 z로부터 정수 입력 x가 복구될 수 있다. 그리고, 표기를 단순화하기 위하여, 비선형 연산
Figure 112003038948627-pat00011
를 나타내기 위해 상부 삼각 행렬
Figure 112003038948627-pat00012
이 사용되고, 비선형 연산
Figure 112003038948627-pat00013
을 나타내기 위해 하부 삼각 행렬
Figure 112003038948627-pat00014
이 사용된다. 따라서, 수학식 2의 가역 회전 인수분해는 다음과 같이 표현될 수 있다.
Figure 112003038948627-pat00015
기본 가역 회전 연산이 가역 변환을 만족할 때 수학식 2의 인수분해를 채용하는 가역 변환은 컴팩트한 데이터 표현을 갖는 가역 변환을 생성한다. 그러나, 임의의 회전각 θ에서, 양자화 잡음은 상당히 클 수 있으며, 불량한 신호 표현을 유발할 수 있다.
본 발명의 한 양태에 따르면, 예를 들어 수학식 3에서 선형 변환, 예를 들어 선형 회전을 단일 가역 인수분해 형식으로 인수화하는 것을 대신하여, 다중 형식의 인수분해가 사용된다. 일례에서, 적합한 형식의 가역 인수분해는 하나 이상의 변환 파라미터에 기초하여 선택된다. 다중 인수분해를 이용하면, 훨씬 작은 양자화 잡음을 얻을 수 있으며, 따라서 가역 변환이 그 선형 변환 대응 부분을 가능한 한 가깝게 모방하도록 할 수 있다. 본 명세서에서는, 이 방식을 "다중 인수분해 가역 변환(multiple factorization reversible transform)"으로 칭한다.
예를 들어, 가역 회전은 3개의 부가적인 형식으로 인수분해될 수 있다.
Figure 112003038948627-pat00016
Figure 112003038948627-pat00017
Figure 112003038948627-pat00018
인수분해의 핵심은 여전히 수학식 3에 나타낸 3 단계의 비선형 연산이다. 그러나, 입력/출력 변수의 쌍은 비선형 연산의 전(수학식 5에서와 같이)과 후(수학식 4에서와 같이)에 교환될 수 있다. 일부 경우에서는 입력/출력의 부호도 변경될 수 있다. 부가적인 형태의 인수분해는 실질적으로 동일한 회전각 θ에 대하여 상이한 비선형 파라미터 c0 및 c1을 발생시켜, 가역 변환이 선형 비가역 변환을 (가능한 한 가깝게) 모방할 수 있게 한다.
Δx' 및 Δy'가 양자화 잡음을 나타내는 것으로 하자. 양자화 잡음은 가역 변환의 결과와 선형 비가역 변환의 결과 간의 차이이다. 본 발명의 한 양태에 따르면, 양자화 잡음 E[Δx'2] + E[Δy'2]의 평균 에너지를 최소화하는 가역 변환이 요구된다. 정수화 연산(integerize operation)은 {예를 들어 버림(truncation) 및/또는 반올림(rounding)에 기초하여} 양자화 잡음을 가역 변환에 도입한다. 수학식 4-6에서의 계수 교환 및 부호 변경 연산은 추가의 양자와 잡음을 도입하지 않는다. Δ가 단일 정수화 연산의 양자화 잡음을 나타내는 것으로 하자.
Figure 112003038948627-pat00019
가역 변환에서의 양자화 잡음은 다음과 같이 모델링될 수 있다.
Figure 112003038948627-pat00020
여기에서, Δ02는 비선형 단계 0-2에서의 양자화 잡음이다. 각 단계에서의 양자화 잡음이 독립적이며 균일하게 분포된 무작위 변수인 것으로 하고, E[Δ2]가 단일 정수화 연산의 양자화 잡음의 평균 에너지를 나타내는 것으로 하자. 양자화 잡음의 평균 에너지는 다음과 같이 계산될 수 있다.
Figure 112003038948627-pat00021
본 발명의 한 양태에 따라 수학식 3-6에 나타난 것과 같은 상이한 인수분해 형식에 대하여 양자화 잡음 대 회전각을 나타내는 그래프(200)가 도 2에 도시된다. "o"로 표시된 라인(210)은 수학식 3에 대응한다. "x"로 표시된 라인(220)은 수학식 4에 대응한다. "+"로 표시된 라인(230)은 수학식 5에 대응한다. "◇ "로 표시된 라인(230)은 수학식 6에 대응한다.
임의의 단일 인수분해에 의해, 양자화 잡음이 특정 회전각에서 커질 수 있음이 관찰될 수 있다. 상이한 인수분해 간을 전환함으로써, 더 상세하게는 회전각 (-0.25π, 0.25π), (-0.75π, -0.25π), (0.25π, 0.75π) 및 (0.75π, 1.25π) 각각에 대하여 인수분해 형식 3, 4, 5, 6을 사용함으로써, 양자화 잡음은 최대 3.2 E[Δ2]으로 제어될 수 있다. 일례에서는, 비록 양자화 잡음이 약간 커지기는 하지만, 복잡성을 감소시키기 위하여, 인수분해 형식 3-6의 부분집합이 사용된다. 예를 들어, 인수분해 형식 3은 회전각 (-0.5π, 0.5π)에 대하여 사용될 수 있고, 형 식 6은 회전각 (0.5π, 1.5π)에 대하여 사용될 수 있다. 이러한 경우에서, 양자화 잡음은 4E[Δ2]로 제한된다.
양자화 잡음을 감소시키기 위하여, 일례에서는 가장 가까운 정수로의 반올림이 정수화 연산으로서 행해질 수 있다. 다른 예에서는, 버림(truncation)이 정수화 연산으로서 행해질 수 있다. 그러나, 가장 가까운 정수로의 반올림은 보다 더 작은 단일 스텝 양자화 잡음 E[Δ2]을 갖기 때문에, 훨씬 더 작은 양자화 잡음과 훨씬 더 양호한 무손실 압축 성능을 유발한다.
가역 연산에서의 공통적인 연산은 비선형 연산에서의 승산 + 정수화 연산이며, 이것은
Figure 112003038948627-pat00022
의 형식이다. 가역 변환의 C/C++ 구현에서, 연산은 일반적으로 다음과 같이 구현된다.
Figure 112003038948627-pat00023
여기에서, y는 통상적으로 32 비트 정수이고, cf는 32 비트 정수 c에 의해 표현되는 부동수(floating number)이며, 숫자 cf는 다음과 같이 32 비트 정수 c와 관련된다.
Figure 112003038948627-pat00024
여기에서, SHIFT_INT는 시스템 상수로서, 일례에서는 24이다. 이것은 전체 가역 변환의 가장 계산 집약적인 연산(computational intensive operation)일 수 있다. x86 시스템 상에서, 이것은 인라인 어셈블리(inline assembly)로서 다음과 같이 구현될 수 있다.
Figure 112003038948627-pat00025
여기에서, SHIFT_REST = 32-SHIFT_INT이다. 이러한 연산만으로 예를 들어 10배만큼 구현을 가속화할 수 있다.
일례에서, 다중 인수분해 가역 변환 컴포넌트(110)는 윈도우 변조(window modulation)와 타입 Ⅳ 이산 코사인 변환(DCT)으로 인수화될 수 있는 가역 MLT를 채용할 수 있다. 이들 중 타입 Ⅳ 이산 코사인 변환(DCT)은 전-고속 퓨리에 변환(FFT) 회전, 복소 FFT, 및 후-FFT 회전 연산으로 더 인수화될 수 있으며, 이들 각각은 다중 인수화된 가역 회전에 더 기초할 수 있다.
도 3을 참조하여, 본 발명의 한 양태에 따라 8-포인트 MLT를 채용하는 다중 인수분해 가역 변환 컴포넌트(300)가 설명된다. MLT(300)는 변조 스테이지(310), 전-FFT 회전 스테이지(320), 복소 FFT 스테이지(330) 및 후-FFT 회전 스테이지(340)를 포함한다. 다중 인수분해 가역 변환 컴포넌트(300)는 다중 인수분해 가역 변환 컴포넌트(110)에 의해 채용될 수 있는 다중 인수분해 가역 변환 컴포넌트의 일례이다.
변조 스테이지(310) 및 전-FFT 회전 스테이지(320)는 가역적으로 구현될 수 있는 수학식 1에 개시된 것과 같은 회전 연산을 포함한다. 복소 FFT 스테이지(300)의 핵심은 버터플라이 연산(butterfly calculation)이다.
Figure 112003038948627-pat00026
여기에서, xc(i) 및 yc(i)는 복소수이다. 제1 행렬은 가역적으로 구현될 수 있는 복소 회전이다. 제2 행렬은 복소 멀티플렉서이다. 이 예에서, xc(i) 및 xc(j)의 실수 및 허수부에 대한 0.25π회전이 구현된다. 0.25π회전에 의해, 1/√2의 이득 인수(gain factor)가 존재하므로, 구현되는 가역 버터플라이는 다음과 같다.
Figure 112003038948627-pat00027
2의 절대 행렬식(absolute determinant)을 갖는 수학식 10의 버터플라이와는 달리, 수학식 11의 버터플라이의 절대 행렬식은 1이며, 이것은 데이터를 확대하지 않으므로, 무손실 압축 목적에 보다 더 적합하다. 버터플라이(수학식 11)에서, 출력 계수 yc(i) 및 yc(j)는 동등하게 가중되어, FFT 연산에서 캐스캐이드(cascade)될 수 있다.
후-FFT 회전 스테이지(340)의 핵심은 공액 회전 연산으로, 이것은 정상적인 회전 후에 허수부의 부호를 바꾸는 것에 의해 구현될 수 있다.
Figure 112003038948627-pat00028
수학식 12의 변환은 가역적으로 구현될 수 있음을 알 수 있을 것이다.
가역 회전은 1의 행렬식을 가지며, 계수를 교환하고 부호를 바꾸는 연산은 -1의 행렬식을 갖는다. 따라서, 전체 가역 MLT의 절대 행렬식은 1이다. 행렬식이 1인 변환은 신호 에너지를 보존하기 때문에, 가역 MLT의 양자화 잡음은 대체적으로 변환에서의 회전 횟수에 비례하며, N-포인트 MLT에 대하여 O(Nlog2N)E[Δ2]이다 (복소 FFT에서는 버터플라이 당 2 회전이 존재함에 유의해야 함). 이러한 구현은, 긴 일련의 비선형 연산에 의해 발생되는 양자화 잡음이 훨씬 더 큰 N-포인트 LU 변환을 통해 가역 MLT(또는 타입 Ⅳ DCT)를 인수화하는 것보다 더 바람직하다.
다시 도 1을 참조하면, 엔트로피 엔코더(120)는 양자화된 계수를 디지탈적으로 엔트로피 엔코딩한다. 엔트로피 엔코더(120)는 임의의 적합한 엔트로피 엔코딩 기술을 채용할 수 있다. 따라서, 본 발명에서 채용되는 임의의 적합한 엔트로피 엔코딩 기술은 이하의 특허청구범위 내에 포함되도록 의도된다.
도 1은 다중 인수분해 가역 변환 컴포넌트를 사용하는 무손실 데이터 코더 시스템(100)의 컴포넌트들을 나타내는 블럭도이다. 무손실 데이터 코더 시스템(100), 다중 인수분해 가역 변환 컴포넌트(110) 및/또는 엔트로피 엔코더(120)는 본 명세서에서 정의된 것과 같은 하나 이상의 컴퓨터 컴포넌트로서 구현될 수 있음을 알 것이다. 따라서, 본 발명에 따르면, 무손실 데이터 코더 시스템(100), 다중 인수분해 가역 변환 컴포넌트(110) 및/또는 엔트로피 엔코더(120)를 구현하도록 동작할 수 있는 컴퓨터 실행가능 컴포넌트는 컴퓨터 판독가능 매체 상에 저장될 수 있으며, 이러한 매체로는 ASIC(application specific integrated circuit), CD(compact disc), DVD(digital video disk), ROM(read only memory), 플로피 디스크, 하드 디스크, EEPROM(electrically erasable programmable read only memory) 및 메모리 스틱이 있지만 이들로 한정되는 것은 아니다.
다음으로, 도 4를 참조하여, 본 발명의 한 양태에 따른 무손실 데이터 디코더 시스템(400)이 설명된다. 시스템(400)은 엔트로피 디코더(410) 및 역변환 컴포넌트(inverse transform component, 420)를 포함한다.
엔트로피 디코더(410)는 비트스트림(예를 들어 대응하는 엔트로피 엔코더에 의해 생성됨)을 수신하고, 비트스트림을 디코딩한다. 따라서, 엔트로피 디코더(410)는 입력 비트스트림을 디지탈적으로 엔트로피 디코딩하고, 디코딩된 정보를 역변환 컴포넌트(420)에 제공한다.
역변환 컴포넌트(420)는 엔트로피 디코더(410)로부터의 출력값을 수신한다. 역변환 컴포넌트(420)는 엔트로피 디코더(410)로부터의 출력값을 변환하고, 출력값을 제공한다. 일례에서, 역변환 컴포넌트(420)는 다중 인수분해 가역 변환 컴포넌트(110)에서의 계산을 본질적으로 복귀시키기 위하여 역 가역 MLT(inverse reversible MLT)를 이용한다.
무손실 데이터 디코더 시스템(400), 엔트로피 디코더(410) 및/또는 역변환 컴포넌트(420)는 본 명세서에서 정의된 것과 같은 컴퓨터 컴포넌트일 수 있음을 알아야 한다.
도 5를 참조하여, 본 발명의 한 양태에 따른 프로그레시브-무손실 데이터 코더 시스템(500)이 설명된다. 시스템(500)은 다중 인수분해 가역 변환 컴포넌트(110) 및 임베디드 엔트로피 엔코더(510)를 포함한다.
프로그레시브-무손실 데이터 코더 시스템(500)은 오디오 및/또는 이미지를 코딩하기 위해 채용될 수 있다. 일례에서, 시스템(500)은 정상적인 음향 심리적 오디오 코더 내에서의 비가역 변환을 (가능한 한 가깝게) 모방하도록 설계된 가역 변환에 기초한다. 임베디드 엔트로피 엔코더(510)(예를 들어, 고성능 임베디드 엔트로피 코덱)와 결합된 다중 인수분해 가역 변환 컴포넌트(110)는 무손실 기능과 미립상 스케일링 가능한 프로그레시브 특성을 시스템(500)에 제공한다. 시스템(500)은, 완전히 디코딩된 때에 원본 오디오 파형을 실질적으로 손실없이 복구하는 비트스트림을 생성하며, 무손실 압축을 용이하게 한다. 보다 더 높은 압축률이 요구되는 경우, 어플리케이션은 압축된 비트스트림의 부분집합을 추출하여, 손실 특성을 갖는 보다 더 높은 압축률의 비트스트림을 형성할 수 있다. 이러한 스케일링은 매우 넓은 비트 레이트 범위에서 행해질 수 있으며, 또한 입도를 단일 바이트까지 낮출 수 있다. 시스템(500)의 프로그레시브-무손실 기능을 이용하면, 어플리케이션은 매우 높은 압축률로부터 무손실까지의 전 범위에서, (예를 들어, 이용가능한 대역폭 및/또는 사용자 선호에 기초하여) 요구되는 압축량과 원하는 오디오 품질 사이의 균형을 쉽게 유지할 수 있다.
임베디드 엔트로피 엔코더(510)는 임의의 적합한 임베디드 엔트로피 엔코딩 기술을 채용할 수 있다. 따라서, 본 발명에서 채용되는 임의의 적합한 임베디드 엔트로피 엔코딩 기술은 특허청구범위 내에 포함되도록 의도된다.
일례에서, 임베디드 엔트로피 엔코더(510)는, 이전에 코딩된 계수로부터 청각 마스킹 임계값을 유도하고 그 유도된 임계값을 사용하여 코딩의 차수를 최적화하는, 완전 스케일링 가능한 음향 심리적 오디오 코더를 채용한다. 음향 또는 청각 마스킹의 기본적인 배경 이론이 개론적으로 설명된다.
일반적으로, 청각 마스킹의 기본 배경 기술은, 인간은 주파수의 미세한 차이를 듣는 능력을 갖고 있지 않다는 것이다. 예를 들어, 1000㎐ 신호와 1001㎐ 신호 간의 차이를 식별하는 것은 매우 어렵다. 또한, 2개의 신호가 동시에 재생되는 경우에, 인간이 그러한 신호들을 구별해내기는 더 어려워진다. 또한, 연구에 따르면, 1000㎐의 신호는 인간이 1010㎐ 또는 1100㎐ 또는 990㎐의 신호를 듣는 능력에도 영향을 준다. 이러한 개념은 마스킹으로서 알려져 있다. 1000㎐ 신호가 강한 경우, 그 신호는 주변 주파수의 신호를 마스킹하여, 청취자가 들을 수 없게 한다. 또한, 인간의 청각 인지에 영향을 주는 2가지 다른 유형의 청각 마스킹이 있다. 특히, 이하에 설명되는 바와 같이, 일시적인 마스킹(temporal masking)과 잡음 마스킹도 인간의 청각 인지에 영향을 준다. 오디오 파일 내에서 마스킹 임계값 미만의 임의의 주파수 컴포넌트는 인간 청취자에 의해 인지되지 않을 것이므로 폐기될 수 있고, 따라서 이러한 개념은 오디오 압축을 향상시키는 데에 사용된다.
본 예에서, 임베디드 엔트로피 엔코더(510)는, 스케일링가능한 엔트로피 코 딩 프로세스와 혼합된 암시적인 청각 마스킹(implicit auditory masking)을 사용하는 완전 스케일링가능한 범용 오디오 코더(fully scalable generic audio coder)이다. 또한, 청각 마스킹 임계값은 디코더로부터 수신되는 것이 아니라, 이전에 코딩된 계수로부터 유도된다. 또한, 마스킹 임계값은, 청각 마스킹 임계값에 따라 오디오 계수를 양자화하는 것이 아니라, 계수가 엔코딩되는 차수를 제어하는 데에 사용된다. 특히, 보다 더 큰 컴포넌트는 오디오 에너지 레벨에 가장 크게 기여하는 계수이고, 보다 더 높은 청각 마스킹 임계값을 유발하기 때문에, 스케일링 가능한 코딩 동안에는, 보다 더 큰 오디오 계수가 먼저 엔코딩된다.
예를 들어, 다중 인수분해 가역 변환 컴포넌트(110)로부터 수신된 MLT 변환 계수는 다수의 섹션으로 분할된다. 이 섹션 분할 연산은 오디오 샘플링 레이트의 스케일링 가능성을 하용한다. 이러한 스케일링 가능성은 디코딩된 오디오 파일의 상이한 주파수 응답들이 요구되는 경우에 특히 유용하다. 예를 들어, 디코더와 연관된 하나 이상의 재생 스피커가 높은 주파수 응답을 갖지 않는 경우, 또는 디코더가 계산 전력 및/또는 시간을 세이브할 필요가 없는 경우에, MLT 변환 계수의 특히 높은 주파수 컴포넌트에 대응하는 하나 이상의 섹션은 폐기될 수 있다.
그 다음, MLT 변환 계수의 각각의 섹션은 임베디드 비트스트림으로 엔트로피 엔코딩되며, 이것은 이후의 스테이지에서 절단 및 재조립(reassemble)될 수 있다. 또한, 엔트로피 코더의 효율을 향상시키기 위하여, MLT 계수는 타임슬롯으로 칭해지는 다수의 연속적인 윈도우로 그룹화된다. 일례에서, 타임슬롯은 16개의 긴 MLT 윈도우 또는 128개의 짧은 MLT 윈도우로 이루어진다. 그러나, 본 기술 분야의 숙 련된 기술자라면, 윈도우의 수가 쉽게 변경될 수 있음을 분명히 알 것이다.
특히, 첫째로, 청각 마스킹은, 변환 계수를 양자화하여 변경하기 위해서가 아니라, 변환 계수가 엔코딩되는 차수를 결정하기 위하여 사용된다. 본 실시예에서, 임의의 청각 비민감 계수를 거칠게(coarsly) 코딩하는 대신에, 임베디드 엔트로피 코더(510)는 그러한 계수들을 이후의 스테이지에서 엔코딩한다. 청각 마스킹을 사용하여 코딩 컨텐츠가 아닌 코딩 차수를 조절하는 것에 의해, 임베디드 엔트로피 코더(510)는 오디오 입력을 무손실 엔코딩의 수준으로까지 엔트로피 엔코딩할 수 있다. 또한, 청각 마스킹에서의 약간의 부정확함은 소정의 오디오 계수가 나중에 엔코딩되게 하기 때문에, 오디오의 품질은 청각 마스킹에 대해 덜 민감해진다.
둘째로, 이 예에서, 청각 마스킹 임계값은 이전에 엔코딩된 계수로부터 유도되며, 임베디드 코더에 의해 점진적으로 정제된다 (예를 들어, "암시적 청각 마스킹"). 암시적인 청각 마스킹을 구현하는 데에 있어서, 변환 계수의 가장 중요한 부분(예를 들어, 상단 비트플레인)이 먼저 엔코딩된다. 이전에 코딩된 변환 계수에 기초하여, 예비 청각 마스킹 임계값이 계산된다. 디코더는 코딩된 변환 계수로부터 동일한 청각 마스킹 임계값을 자동적으로 유도하기 때문에, 청각 마스킹 임계값은 디코더로 보내질 필요가 없다. 또한, 계산된 청각 마스킹 임계값은 변환 계수의 어느 부분이 정제될지를 조절하는 데에 사용된다.
변환 계수의 다음 부분이 엔코딩되고 난 후, 새로운 집합의 청각 마스킹 임계값이 계산된다. 이 프로세스는 원하는 최종 기준이 만족될 때까지, 예를 들어 모든 변환 계수가 엔코딩될 때까지, 원하는 코딩 비트레이트에 도달될 때까지, 또는 원하는 코딩 품질에 도달될 때까지 반복된다. 이전에 코딩된 계수로부터 청각 마스킹 임계값을 유도함으로써, 정상적으로 청각 마스킹 임계값을 엔코딩하는 데에 요구되던 비트가 절약된다. 그 결과, 특히 코딩 비트레이트가 낮은 경우에, 코딩 품질이 향상된다.
다른 예에서, 임베디드 엔트로피 엔코더(510)는 청각 마스킹 임계값을 비트스트림의 헤드로서 전달하는 전형적인 코더를 채용한다.
따라서, 다중 인수분해 가역 변환 컴포넌트(110)에 의해 가역 변환이 행해지고 난 후, 다중 윈도우의 MLT 계수는 타임슬롯으로 그룹화된다. 그 다음, 각각의 타임슬롯의 계수는, 계수를 효율적으로 압축하는 것은 물론 출력 비트스트림이 임베딩 (예를 들어, 프로그레시브) 특성을 갖게 하는 임베디드 엔트로피 엔코더(510)에 의해 엔트로피 엔코딩되어, (예를 들어, 각각의 채널의) 비트스트림이 임의의 포인트에서 절단될 수 있게 한다.
시스템(500) 및/또는 임베디드 엔트로피 엔코더(510)가 본 명세서에서 정의된 것과 같은 컴퓨터 컴포넌트일 수 있음을 알 수 있을 것이다.
도 6을 참조하여, 본 발명의 한 양태에 따른 프로그레시브-무손실 데이터 디코더 시스템(600)이 설명된다. 시스템은 임베디드 엔트로피 디코더(610) 및 역변환 컴포넌트(420)를 포함한다.
임베디드 엔트로피 디코더(610)는 (예를 들어, 대응하는 엔트로피 엔코더에 의해 생성된) 비트스트림을 수신하고, 그 비트스트림을 디코딩한다. 따라서, 임베 디드 엔트로피 디코더(610)는 입력 비트스트림을 디지탈적으로 엔트로피 디코딩하고, 디코딩된 정보를 역변환 컴포넌트(420)에 제공한다.
역변환 컴포넌트(420)는 임베디드 엔트로피 디코더(610)로부터 출력값을 수신한다. 역변환 컴포넌트(420)는 임베디드 엔트로피 디코더(610)로부터의 출력값을 변환하고, 출력값을 제공한다. 일례에서, 역변환 컴포넌트(420)는 다중 인수분해 가역 변환 컴포넌트(110)에서의 계산을 본질적으로 복귀시키기 위하여, 역 가역 MLT를 이용한다.
프로그레시브-무손실 데이터 디코더 시스템(600) 및/또는 임베디드 엔트로피 디코더(610)는 본 명세서에서 정의된 것과 같은 컴퓨터 컴포넌트일 수 있음을 알 수 있을 것이다.
다음으로, 도 7을 참조하여, 본 발명의 한 양태에 따른 프로그레시브-무손실 스테레오 오디오 코더 시스템(700)이 설명된다. 시스템(700)은 가역 멀티플렉서(710), 다중 인수분해 가역 변환 컴포넌트(1101, 1102), 임베디드 엔트로피 엔코더(5101, 5102), 및 비트스트림 어셈블러(720)를 포함한다.
시스템(700)은 입력 오디오 파형을 수신하며, 이것은 가역 멀티플렉서(710)를 제일 먼저 통과한다. 입력 오디오가 스테레오인 경우, 그것은 L+R과 L-R 컴포넌트로 분리된다. 그리고나서, 각각의 오디오 컴포넌트의 파형은 다중 인수분해 가역 변환 컴포넌트(1101, 1102)에 의해 (예를 들어, 스위칭 윈도우를 사용하여) 변환된다. 일례에서, 윈도우 사이즈는 2048 또는 256 샘플일 수 있다. 다중 인수분 해 가역 변환 컴포넌트(1101, 1102) 이후에, 다수의 연속적인 윈도우의 MLT 계수는 타임슬롯으로 그룹화된다.
예를 들어, 타임슬롯은 16개의 긴 MLT 윈도우와 128개의 짧은 윈도우로 이루어질 수 있다. 그러므로, 타임슬롯은 32768 샘플로 이루어지며, 이는 입력 오디오가 44.1㎑에서 샘플링된 경우에는 약 0.74초이다. 그 다음, 타임슬롯 내의 계수는 임베디드 엔트로피 엔코더(5101, 5102)에 의해 엔트로피 엔코딩되며, 그 출력 비트스트림은 이후에 임의의 포인트에서 절단될 수 있다.
가역 멀티플렉서(710)는 예를 들어 스테레오 오디오 입력을 수신한다. 가역 멀티플렉서(710)는 종래의 기술을 사용하여 스테레오 오디오 입력을 L+R과 L-R 컴포넌트로 분리하며, 여기에서 L과 R은 각각 좌측과 우측의 오디오 채널 상의 파형을 나타낸다. 입력 오디오가 모노인 경우, 가역 멀티플렉서는 오디오를 통과시킨다. 그 다음, 각각의 컴포넌트가 개별적으로 엔코딩된다.
x 및 y가 좌측 및 우측 채널이고, x' 및 y'가 멀티플렉싱된 채널 L+R 및 L-R이라고 하면, 가역 멀티플렉서는 다음과 같은 비선형 형식으로 구현될 수 있다.
Figure 112003038948627-pat00029
다르게는, 다음과 같이 나타낼 수 있다.
Figure 112003038948627-pat00030
여기에서,
Figure 112003038948627-pat00031
은 정수화 연산을 나타낸다. 수학식 13은 정수 출력으로부터 정수 입력을 발생시키며, 정확하게 반전될 수 있다. 정수화 연산에서의 비선형성을 무시하면, 입력/출력 쌍 간의 관계는 다음과 같은 선형 변환을 통해 공식화될 수 있다.
Figure 112003038948627-pat00032
수학식 15의 변환의 행렬식은 -1이며, 이는 입력/출력 공간의 부피가 동일함을 의미한다.
예를 들어 0.25π의 회전 연산을 사용하는 가역 멀티플렉서의 대안적인 구현이 존재한다.
Figure 112003038948627-pat00033
그러나, 수학식 16의 형식을 갖는 가역 멀티플렉서는 2의 절대 행렬식을 가지며, 이는 데이터를 확대하고, 무손실 압축에 대해서는 덜 효율적이다. 0.25π의 회전 연산을 사용하는 가역 멀티플렉서는 3 정수화 연산을 필요로 하고, 3.2E[Δ2] 의 양자화 잡음을 갖는 데에 반하여, 수학식 13의 가역 멀티플렉서는 단 하나의 정수화 동작만을 가지며, 이것은 E[Δ2]의 양자화 잡음을 갖는다. 따라서, 이것은 보다 더 바람직한 구현이다. 수학식 13의 가역 멀티플렉서를 사용하면, L-R 및 L+R 채널은 동등화게 가중화되지 않으며, L-R 채널은 L+R 채널보다 4배 무거운 가중치를 전하게 된다. L-R 및 L+R 채널의 모든 양자화 계수가 단순히 엔코딩되기 때문에, 무손실 코딩에서 불균등 가중치는 문제가 되지 않는다. 무손실 비트스트림이 절단되는 경우에서, 이것은 1개의 비트평면으로 L+R 채널을 엔코딩함으로써 불균등한 가중치를 보상할 수 있다.
비트스트림 어셈블러(720)는 임베디드 엔트로피 엔코더(5101, 5102)로부터 L+R 및 L-R 채널의 임베디드 비트스트림을 수신한다. 비트스트림 어셈블러는 시스템(700)의 최종 비트스트림을 형성한다.
본 발명의 한 양태에 따른 예시적인 비트스트림(800)이 도 8에 도시되어 있다. 비트스트림(800)은 글로벌 헤더(810)를 포함하며, 그 다음에 제1 타임슬롯(8201) 내지 N번째 타임슬롯(820N)이 후속한다. 여기에서 N은 1 이상의 정수이다. 각각의 타임슬롯(820)은 L+R 및 L-R 채널의 압축된 비트스트림의 길이를 기록하는 타임슬롯 헤더(830)를 포함하며, 그 다음에 채널(840, 850)의 실제의 임베디드 비트스트림이 후속한다. 정확한 파형 재구성이 요구되는 경우에는, 전체 비트스트림이 디코딩될 것이다. 보다 더 높은 압축률이 요구되는 경우에는, 무손실로 엔코딩된 비트스트림으로부터 보다 더 높은 압축률을 형성하기 위한 부분집합 이 추출된다. 이것은 개별적인 타임슬롯의 L+R 및 L-R 채널의 임베디드 비트스트림을 절단함으로써 달성되므로, 연산은 매우 신속하게 수행될 수 있다. 또한, L-R 채널과 연관된 압축된 비트스트림을 제거함으로써, 압축된 오디오를 스테레오에서 모노로 변환하는 것도 가능하다.
다시 도 7을 참조하면, 비트스트림 어셈블러(720)는 다수의 타임슬롯 및 채널 간에 이용가능한 코딩 비트레이트를 할당하고, 할당된 비트레이트에 따라 각각의 타임슬롯 및 채널의 임베디드 비트스트림을 절단하고, 최종의 압축된 비트스트림을 생성한다.
시스템(700), 가역 멀티플렉서(710) 및/또는 비트스트림 어셈블러(720)는 본 명세서에서 정의된 것과 같은 컴퓨터 컴포넌트일 수 있음을 알 것이다.
다음으로, 도 9를 참조하여, 본 발명의 한 양태에 따른 프로그레시브-무손실 오디오 디코더 시스템(900)이 설명된다. 시스템(900)은 비트스트림 언어셈블러(bitstream unassembler, 910), 임베디드 엔트로피 디코더(6101, 6102), 역변환 컴포넌트(4201, 4201) 및 가역 디멀티플렉서(920)를 포함한다.
비트스트림 언어셈블러(910)는 입력 비트스트림을 {예를 들어, 대응하는 비트스트림 어셈블러(720)로부터} 수신한다. 비트스트림 언어셈블러는 L+R 채널과 L-R 채널을 분리하고, 분리된 채널을 임베디드 엔트로피 디코더(6101, 6102)에 제공한다.
임베디드 엔트로피 디코더(6101, 6102)는 비트스트림 언어셈블러(910)로부터 정보의 채널을 수신하고, 비트스트림을 디코딩한다. 따라서, 임베디드 엔트로피 디코더(6101, 6102)는 입력 비트스트림을 디지탈적으로 엔트로피 디코딩하고, 디코딩된 정보를 역변환 컴포넌트(4201, 4202)에 제공한다.
역변환 컴포넌트(4201, 4202)는 임베디드 엔트로피 디코더(6101, 6102 )로부터 출력값을 수신한다. 역변환 컴포넌트(4201, 4202)는 임베디드 엔트로피 디코더(6101, 6102)로부터의 출력값을 변환하고, 출력값을 제공한다. 일례에서, 역변환 컴포넌트(4201, 4202)는 다중 인수분해 가역 변환 컴포넌트(110)에서의 계산을 본질적으로 복귀시키기 위하여, 역 가역 MLT를 이용한다.
가역 디멀티플렉서(920)는 역변환 컴포넌트(4201, 4202)로부터의 출력을 수신하고, 출력을 스테레오 오디오 파형으로 디멀티플렉싱한다.
시스템(900), 비트스트림 언어셈블러(910) 및/또는 가역 디멀티플렉서(920)는 본 명세서에서 정의된 것과 같은 컴퓨터 컴포넌트일 수 있음을 알 수 있을 것이다.
간단히 도 10, 11, 12, 13 및 14를 참조하여, 본 발명에 따라 구현될 수 있는 방법이 설명된다. 설명을 간단히 하기 위하여, 일련의 블럭으로서 방법이 도시되고 설명되지만, 본 발명에 따르면 일부 블럭은 본 명세서에 개시된 것과 다른 순서로 발생하거나 다른 블럭들과 동시에 발생할 수 있으므로, 본 발명은 블럭의 순서에 의해 제한되지 않음을 알 수 있을 것이다. 또한, 본 발명에 따른 방법을 구 현하는 데에 있어서, 도시되어 있는 모든 블럭이 필요한 것은 아니다.
본 발명은 일반적으로 하나 이상의 컴포넌트에 의해 실행되는 프로그램 모듈과 같은 컴퓨터 실행가능 명령과 관련하여 설명될 수 있다. 일반적으로, 프로그램 모듈은 특정 테스크를 수행하거나 특정 요약 데이터 타입을 구현하는 루틴, 프로그램, 오브젝트, 데이터 구조 등을 포함한다. 전형적으로, 프로그램 모듈의 기능성은 다양한 실시예에서 필요에 따라 조합되거나 분리될 수 있다.
도 10을 참조하여, 본 발명의 한 양태에 따른 무손실 데이터 엔코딩(1000)의 방법이 설명된다. "1010"에서, 입력 신호(예를 들어, 오디오 및/또는 이미지)가 수신된다. "1020"에서, 적어도 부분적으로 다중 인수분해 가역 변환(예를 들어, 가역 MLT)에 기초하여, 입력 신호에 대응하는 양자화된 계수가 제공된다. 예를 들어, 가역 MLT는 수학식 3, 4, 5, 6, 9, 10 및/또는 11에 기초할 수 있다. 다중 인수분해 가역 변환은 변조 스테이지, 전-FFT 회전 스테이지, 복소 FFT 스테이지 및/또는 후-FFT 회전 스테이지를 포함한다. "1030"에서, 양자화된 계수는 엔트로피 엔코딩된다.
다음으로, 도 11을 참조하여, 본 발명의 한 양태에 따른 무손실 데이터 디코딩(1100)의 방법이 설명된다. "1110"에서, 디지탈적으로 엔트로피 엔코딩된 입력 비트스트림이 수신된다. "1120"에서, 비트스트림은 엔트로피 디코딩되고, 변환 계수가 제공된다. "1130"에서, 변환 계수의 역변환에 기초한 출력값이 제공된다. 역변환은 가역 MLT에 기초할 수 있다.
도 12를 참조하여, 본 발명의 한 양태에 따른 프로그레시브-무손실 데이터 엔코딩(1200)의 방법이 설명된다. "1210"에서, 입력 신호(예를 들어, 오디오 및/또는 이미지)가 수신된다. "1220"에서, 적어도 부분적으로 다중 인수분해 가역 변환(예를 들어, 가역 MLT)에 기초하여, 입력 신호에 대응하는 양자화된 계수가 제공된다. 예를 들어, 다중 인수분해 가역 변환은 수학식 3, 4, 5, 6, 9, 10 및/또는 11에 기초할 수 있다. 다중 인수분해 가역 변환은 변조 스테이지, 전-FFT 회전 스테이지, 복소 FFT 스테이지 및/또는 후-FFT 회전 스테이지를 포함한다. "1230"에서, 양자화된 계수의 임베디드 엔코딩에 기초하는 프로그레시브 비트스트림이 제공된다.
도 13을 참조하여, 본 발명의 한 양태에 따른 프로그레시브-무손실 오디오 엔코딩(1300)의 방법이 설명된다. "1310"에서 입력 신호가 수신된다. "1320"에서, 입력 신호는 {예를 들어, 가역 멀티플렉서(710)에 의해} 제1 컴포넌트(L+R)과 제2 컴포넌트(L-R)으로 분리된다.
"1330"에서, 적어도 부분적으로 다중 인수분해 가역 변환(예를 들어, 가역 MLT)에 기초하여, 제1 컴포넌트에 대응하는 양자화된 계수가 제공된다. 예를 들어, 가역 MLT는 수학식 3, 4, 5, 6, 9, 10 및/또는 11에 기초할 수 있다. 다중 인수분해 가역 변환은 변조 스테이지, 전-FFT 회전 스테이지, 복소 FFT 스테이지 및/또는 후-FFT 회전 스테이지를 포함한다. "1340"에서, 제1 컴포넌트에 연관된 양자화된 계수의 임베디드 엔코딩에 기초하는 프로그레시브 비트스트림이 제공된다.
"1350"에서, 적어도 부분적으로 다중 인수분해 가역 변환(예를 들어, 가역 MLT)에 기초하여, 제2 컴포넌트에 대응하는 양자화된 계수가 제공된다. 예를 들 어, 다중 인수분해 가역 변환은 수학식 3, 4, 5, 6, 9, 10 및/또는 11에 기초할 수 있다. 다중 인수분해 가역 변환은 변조 스테이지, 전-FFT 회전 스테이지, 복소 FFT 스테이지 및/또는 후-FFT 회전 스테이지를 포함한다. "1360"에서, 제2 컴포넌트에 연관된 양자화된 계수의 임베디드 엔코딩에 기초하여, 프로그레시브 비트스트림이 제공된다.
"1370"에서, 제1 및 제2 컴포넌트과 연관된 임베디드 엔트로피 엔코딩된 양자화된 계수의 프로그레시브 비트스트림은, {예를 들어, 비트스트림 어셈블러(720)에 의해} 출력 비트스트림으로 조합된다.
도 14를 참조하여, 본 발명의 한 양태에 따른 다중 인수분해 가역 변환(1400)의 방법이 설명된다. "1410"에서, 다중 인수분해 가역 변환 중 적어도 하나의 인수분해가 수행된다. "1420"에서, 적어도 부분적으로 변환의 파라미터에 기초하여, 최소량의 양자화 잡음을 발생시키는 인수분해가 선택된다. 예를 들어, 인수분해는 수학식 3, 4, 5, 6, 9, 10 및/또는 11에 기초할 수 있다. 인수분해는 전술한 바와 같은 변조 스테이지, 전-FFT 회전 스테이지, 복소 FFT 스테이지 및/또는 후-FFT 회전 스테이지를 포함할 수 있다.
본 발명의 다른 양태의 추가적인 설명을 제공하기 위하여, 도 15와 이하의 설명은 본 발명의 다른 양태들이 구현될 수 있는 적합한 운영 환경(1510)의 간단하고 개략적인 설명을 제공하도록 의도된 것이다. 본 발명은 일반적으로 하나 이상의 컴퓨터 또는 다른 디바이스에 의하여 실행되는 프로그램 모듈과 같은 컴퓨터 실행가능 명령과 관련하여 설명되지만, 본 기술 분야의 숙련된 기술자라면, 본 발명 은 다른 프로그램 모듈과 함께 구현될 수도 있고, 하드웨어와 소프트웨어의 조합으로서 구현될 수도 있음을 알 수 있을 것이다. 그러나, 일반적으로, 프로그램 모듈은 특정 태스크를 수행하거나 특정 데이터 타입을 구현하는 루틴, 프로그램, 오브젝트, 컴포넌트, 데이터 구조 등을 포함한다. 운영 환경(1510)은 적합한 운영 환경의 일례일 뿐이며, 본 발명의 사용 또는 기능의 범위로서 어떠한 제한을 제안하도록 의도된 것은 아니다. 본 발명에서 사용되는 데에 적합한 다른 알려진 컴퓨터 시스템, 환경 및/또는 구성은, 개인용 컴퓨터, 휴대형 또는 랩탑 디바이스, 멀티프로세서 시스템, 마이크로프로세서 기반 시스템, 프로그래밍가능한 소비자 전자 기기, 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터, 상기의 시스템 또는 디바이스들을 포함하는 분산된 컴퓨팅 환경 등을 포함하지만, 이들로 제한되는 것은 아니다.
도 15를 참조하면, 본 발명의 다양한 양태를 구현하기 위한 예시적인 환경(1510)은 컴퓨터(1512)를 포함한다. 컴퓨터(1512)는 프로세싱 유닛(1514), 시스템 메모리(1516) 및 시스템 버스(1518)를 포함한다. 시스템 버스(1518)는 시스템 메모리(1516) 등을 포함하는 시스템 컴포넌트를 프로세싱 유닛(1514)에 연결한다. 프로세싱 유닛(1514)은 여러가지의 이용가능한 프로세서 중 어느 것이라도 가능하다. 듀얼 마이크로프로세서 및 다른 멀티프로세서 아키텍쳐도 프로세싱 유닛(1514)으로서 채용될 수 있다.
시스템 버스(1518)는 여러가지의 이용가능한 버스 아키텍쳐 중 임의의 버스 아키텍쳐를 사용하는 메모리 버스 또는 메모리 컨트롤러, 주변 버스 또는 외부 버스 및/또는 로컬 버스를 포함하는 다양한 유형의 버스 구조물(들) 중 어느 것이라 도 가능하며, 16비트 버스, ISA(International Standard Architecture), MSA(Micro-Channel Architecture), EISA(Extended ISA), IDE(Intelligent Drive Electronics), VLB(Vesa Local Bus), PCI(Peripheral Component Interconnect), USB(Universal Serial Bus), AGP(Advanced Graphics Port), PCMCIA(Personal Computer Memory Card International Association) 버스, 및 SCSI(Small Computer Systems Interface)를 포함하지만, 이들로 제한되는 것은 아니다.
시스템 메모리(1516)는 휘발성 메모리(1520) 및 비휘발성 메모리(1522)를 포함한다. 기동 시 등에 컴퓨터(1512) 내의 엘리먼트들 간에서 정보를 전달하기 위한 기본 루틴을 포함하는 기본 입출력 시스템(BIOS)은 비휘발성 메모리(1522) 내에 저장된다. 예시적으로, 비휘발성 메모리(1522)는 ROM(Read Only Memory), PROM(Programmable ROM), EPROM(Electrically Programmable ROM), EEPROM(Electrically Erasble ROM) 또는 플래시 메모리를 포함할 수 있지만, 이들로 제한되는 것은 아니다. 휘발성 메모리(1520)는 외부 캐시 메모리의 역할을 하는 RAM(Random Acess Memory)을 포함한다. 예시적으로, RAM은 SRAM(Synchronous RAM), DRAM(Dynamic RAM), SDRAM(Synchronous DRAM), DDR SDRAM(Double Data Rate DRAM), ESDRAM(Enhanced SDRAM), SLDRAM(Synchlink DRAM), DRRAM(Direct Rambus RAM)과 같은 다양한 형태로 이용가능하지만, 이들로 제한되는 것은 아니다.
또한, 컴퓨터(1512)는 착탈 가능/착탈 불가능, 휘발성/비휘발성 컴퓨터 저장 매체를 포함한다. 도 15는 예를 들어 디스크 저장 장치(1524)를 도시하고 있다. 디스크 저장 장치(1524)는 마그네틱 디스크 드라이브, 플로피 디스크 드라이브, 테 이프 드라이브, 재즈 드라이브(Jaz drive), 집 드라이브(Zip drive), LS-100 드라이브, 플래시 메모리 카드 또는 메모리 스틱을 포함하지만, 이들로 제한되는 것은 아니다. 또한, 디스크 저장 장치(1524)는 저장 매체를 개별적으로 포함하거나, 다른 저장 매체와 함께 포함할 수 있는데, 이러한 저장 매체로는 CD-ROM, CD-R 드라이브(CD recordable drive), CD-RW 드라이브(CD Rewritable drive) 또는 DVD-ROM(digital versatile disk ROM)과 같은 광디스크 드라이브가 있지만, 이들로 제한되는 것은 아니다. 디스크 저장 디바이스(1524)가 시스템 버스(1518)에 용이하게 접속되도록 하기 위해, 전형적으로 탈착 가능 또는 탈착 불가능 인터페이스가 인터페이스(1526)로서 사용된다.
도 15는 적합한 운영 환경(1510)에서 설명된 기본 컴퓨터와 사용자 간의 매개물로서 기능하는 소프트웨어를 설명하고 있음을 알 것이다. 이러한 소프트웨어는 운영 시스템(1528)을 포함한다. 디스크 저장 장치(1524) 상에 저장될 수 있는 운영 시스템(1528)은 컴퓨터 시스템(1512)의 자원을 제어하고 할당하는 역할을 한다. 시스템 어플리케이션(1530)은 시스템 메모리(1516) 또는 디스크 저장 장치(1524)에 저장되어 있는 프로그램 모듈(1532) 및 프로그램 데이터(1534)를 통해 운영 시스템(1528)에 의한 자원의 관리를 유리하게 이용한다. 본 발명은 다양한 운영 시스템 또는 운영 시스템들의 조합에 의해 구현될 수 있음을 알 수 있을 것이다.
사용자는 입력 디바이스(들)(1536)를 통해 커맨드 또는 정보를 컴퓨터(1512)에 입력한다. 입력 디바이스(1536)는 마우스, 트랙볼, 스타일러스, 터치 패드, 키 보드, 마이크로폰, 조이스틱, 게임 패드, 위성 접시, 스캐너, TV 튜너 카드, 디지탈 카메라, 디지탈 비디오 카메라, 웹 카메라 등과 같은 포인팅 디바이스를 포함하지만, 이들로 제한되는 것은 아니다. 전술한 것과 그 이외의 입력 디바이스는 인터페이스 포트(들)(1538)를 지나서 시스템 버스(1518)를 통하여 프로세싱 유닛(1514)에 접속된다. 인터페이스 포트(들)(1538)는, 예를 들어 직렬 포트, 병렬 포트, 게임 포트 및 USB(Universal serial bus)를 포함한다. 출력 디바이스(들)(1540)은 입력 디바이스(들)(1536)와 동일한 유형의 포트 중 일부를 사용한다. 따라서, 예를 들어, USB 포트는 컴퓨터(1512)에 대한 입력을 제공하고, 컴퓨터(1512)로부터 출력 디바이스(1540)로 정보를 출력하는 데에 사용될 수 있다. 출력 어댑터(1542)는 다른 출력 디바이스들(1540) 중에서 전용 어댑터를 필요로 하는 모니터, 스피커 및 프린터와 같은 소정의 출력 디바이스(1540)가 존재함을 나타내기 위하여 제공된다. 출력 어댑터(1542)는 예를 들어 출력 디바이스(1540)와 시스템 버스(1518) 간에 접속의 수단을 제공하는 비디오 및 사운드 카드를 포함하지만, 이로 제한되는 것은 아니다. 다른 디바이스 및/또는 디바이스들의 시스템은 원격 컴퓨터(들)(1544)와 같은 입력 및 출력 기능을 제공함을 알아야 한다.
컴퓨터(1512)는 원격 컴퓨터(들)(1544)와 같은 하나 이상의 원격 컴퓨터에 대한 논리적 접속을 사용하는 네트워크 환경에서 동작할 수 있다. 원격 컴퓨터(들)(1544)은 개인용 컴퓨터, 서버, 라우터, 네트워크 PC, 워크스테이션, 마이크로프로세서 기반 기기, 피어 디바이스(peer device) 또는 다른 공통 네트워크 노드 등일 수 있으며, 전형적으로는 컴퓨터(512)와 관련하여 설명된 엘리먼트들 중 다수 또는 전부를 포함한다. 간단히 하기 위하여, 원격 컴퓨터(들)(1544)에는 메모리 저장 디바이스(1546)만이 도시되어 있다. 원격 컴퓨터(들)(1544)는 컴퓨터(512)에 대하여 네트워크 인터페이스(1548)를 통하여 논리적으로 접속되고, 통신 접속(1550)을 통하여 물리적으로 접속된다. 네트워크 인터페이스(1548)는 근거리 네트워크(LAN) 및 광역 네트워크(WAN)와 같은 통신 네트워크를 포함한다. LAN 기술은 FDDI(Fiber Distributed Data Interface), CDDI(Copper Distributed Data Interface), 이더넷/IEEE 802.3, 토큰 링/IEEE 802.5 등을 포함한다. WAN 기술은 포인트-대-포인트 링크, ISDN(Integrated Services Digital Networks) 및 그 변형과 같은 회로 스위칭 네트워크, 패킷 스위칭 네트워크, 및 DSL(Digital Subscriber Lines)을 포함하지만, 이들로 제한되는 것은 아니다.
통신 접속(들)(1550)은 네트워크 인터페이스(1548)를 버스(1518)에 접속하는 데에 채용되는 하드웨어/소프트웨어를 나타낸다. 간단히 나타내기 위하여 통신 접속(1550)이 컴퓨터(1512) 내부에 도시되어 있지만, 컴퓨터(1512) 외부에 있을 수도 있다. 네트워크 인터페이스(1548)에 대한 접속에 필요한 하드웨어/소프트웨어는 예를 들어 통상의 전화급 모뎀, 케이블 모뎀 및 DSL 모뎀을 포함하는 모뎀, ISDN 어댑터 및 이더넷 카드와 같은 내부 또는 외부 기술을 포함하지만, 이들로 제한되는 것은 아니다.
상기에서는 본 발명의 예들이 개시되었다. 물론, 본 발명을 설명하기 위해, 컴포넌트 또는 방법론의 모든 예상 가능한 조합을 개시하는 것은 불가능하지만, 본 기술 분야의 숙련된 기술자라면, 본 발명의 많은 다른 조합 및 치환이 가능함을 알 수 있을 것이다. 따라서, 본 발명은 첨부된 특허청구항의 범위 내에 포함되는 이러한 변경, 수정 및 변화를 모두 포함하도록 의도된 것이다. 또한, 상세한 설명이나 청구항에서 사용되는 "포함한다"라는 용어는 포괄적인 의미로 사용된 것이다.
본 발명에 따르면, 매우 높은 압축률로부터 무손실까지의 전 범위에서, 예를 들어 이용가능한 대역폭 및/또는 사용자 선호에 기초하여 요구되는 압축량과 원하는 오디오 품질 사이의 균형을 쉽게 유지할 수 있다.

Claims (54)

  1. 입력 신호를 수신하고, 상기 입력 신호에 대응하는 양자화된 계수(quantized coefficient)의 출력을 제공하는 다중 인수분해 가역 변환 컴포넌트(multiple factorization reversible transform component) - 상기 양자화된 계수의 출력은 다중 인수분해 가역 변환에 기초하고, 상기 다중 인수분해 가역 변환은 상기 변환의 가역 회전 파라미터에 기초하여 복수의 가역 형식 간에 절환함 - ; 및
    상기 양자화된 계수를 디지탈적으로 엔트로피 엔코딩하는 엔트로피 엔코더(entropy encoder)
    를 포함하는 무손실(loseless) 데이터 코더 시스템.
  2. 제1항에 있어서,
    상기 다중 인수분해 가역 변환은 다중 인수분해 가역 MLT(reversible modulated lapped transform)인 무손실 데이터 코더 시스템.
  3. 제2항에 있어서,
    상기 다중 인수분해 가역 MLT는 변조 스테이지, 전-FFT 회전 스테이지(pre-FFT rotation stage), 복소 FFT 스테이지(complex FFT stage) 및 후-FFT 회전 스테이지(post-FFT rotation stage)를 더 포함하는 무손실 데이터 코더 시스템.
  4. 제3항에 있어서,
    상기 변조 스테이지는, 다중 인수분해 가역 회전
    Figure 112003038948627-pat00034
    을 통해 구현되며, θ는 회전각인 무손실 데이터 코더 시스템.
  5. 제3항에 있어서,
    상기 전-FFT 회전 스테이지는, 다중 인수분해 가역 회전
    Figure 112003038948627-pat00035
    을 통해 구현되며, θ는 회전각인 무손실 데이터 코더 시스템.
  6. 제3항에 있어서,
    상기 복소 FFT는
    Figure 112008072589755-pat00036
    를 통해 구현되며,
    xc(i)는 상기 입력 신호의 제1 채널의 복소수 표현이고, xc(j)는 상기 입력 신호의 제2 채널의 복소수 표현이며, ω는 회전각이고,
    가역 복소 버터플라이(reversible complex butterfly)는, 상기 입력 신호의 2개의 채널의 실수부 및 허수부에 의해 형성되는 변수쌍에 대한 0.25π다중 인수분해 가역 회전을 먼저 행한 다음, 상기 제2 채널의 다중 인수분해 가역 복소 회전 ω을 행하는 것에 의해 구현되는 무손실 데이터 코더 시스템.
  7. 제3항에 있어서,
    상기 후-FFT 회전은
    Figure 112008072589755-pat00037
    을 통해 구현되고,
    θ는 회전각, x는 상기 입력 신호의 제1 채널, y는 상기 입력 신호의 제2 채널, x'는 상기 입력 신호의 제1 멀티플렉스 채널, y'는 상기 입력 신호의 제2 멀티플렉스 채널이고,
    다중 인수분해 가역 공액(conjugate) 회전은 다중 인수분해 가역 회전을 먼저 행한 다음, 허수부의 부호를 반전시키는 것에 의해 구현되는 무손실 데이터 코더 시스템.
  8. 제1항에 있어서,
    상기 다중 인수분해 가역 변환 컴포넌트는 복수의 기본 변환 컴포넌트(basic transform component)를 포함하고, 상기 기본 변환 컴포넌트 중 적어도 하나는 가역 회전인 무손실 데이터 코더 시스템.
  9. 제1항에 따른 무손실 데이터 코더 시스템을 채용하는 픽쳐(picture) 코더 시스템.
  10. 제1항에 따른 무손실 데이터 코더 시스템을 채용하는 오디오 코더 시스템.
  11. 삭제
  12. 입력 비트스트림을 디지탈적으로 엔트로피 디코딩하고, 변환 계수를 제공하는 엔트로피 디코더; 및
    상기 엔트로피 디코더로부터 상기 변환 계수를 수신하고, 상기 변환 계수의 역 가역 변조 중복 변환(inverse reversible mudulated lapped transform)에 기초하는 출력값을 제공하여 다중 인수분해 가역 변환으로부터의 계산을 복귀시키는 역변환 컴포넌트(inverse transform component)
    를 포함하고,
    상기 다중 인수분해 가역 변환은 양자화 잡음을 최소화하도록 상기 변환의 가역 회전 파라미터에 기초하여 절환되는 복수의 가역 형식을 사용하는,
    무손실 데이터 디코더 시스템.
  13. 제12항에 따른 무손실 데이터 디코더 시스템을 채용하는 픽쳐 디코더 시스템.
  14. 제12항에 따른 무손실 데이터 디코더 시스템을 채용하는 오디오 디코더 시스템.
  15. 입력 신호를 수신하고, 상기 입력 신호에 대응하는 양자화된 계수의 출력을 제공하는 다중 인수분해 가역 변환 컴포넌트 - 상기 양자화된 계수의 출력은 다중 인수분해 가역 변환에 기초하고, 상기 다중 인수분해 가역 변환은 상기 변환의 가역 회전 파라미터에 기초하여 복수의 가역 형식 간에 절환함 - ; 및
    상기 양자화된 계수를 프로그레시브 비트스트림(progressive bit stream)으로 디지탈적으로 엔트로피 엔코딩하는 임베디드 엔트로피 엔코더
    를 포함하는 프로그레시브-무손실(progressive to lossless) 데이터 코더 시스템.
  16. 제15항에 있어서,
    상기 다중 인수분해 가역 변환은, 가역 MLT, 가역 DCT, 가역 DST 및 가역 FFT 중 적어도 하나인 프로그레시브-무손실 데이터 코더 시스템.
  17. 제15항에 있어서,
    상기 다중 인수분해 가역 변환 컴포넌트는 복수의 기본 변환 컴포넌트를 포 함하는 프로그레시브-무손실 데이터 코더 시스템.
  18. 제17항에 있어서,
    상기 기본 변환 컴포넌트 중 적어도 하나는 가역 회전인 프로그레시브-무손실 데이터 코더 시스템.
  19. 제18항에 있어서,
    상기 가역 회전은
    Figure 112003038948627-pat00039
    를 통해 구현되며, θ는 회전각인 프로그레시브-무손실 데이터 코더 시스템.
  20. 제18항에 있어서,
    상기 가역 회전은
    Figure 112003038948627-pat00040
    를 통해 구현되며, θ는 회전각인 프로그레시브-무손실 데이터 코더 시스템.
  21. 제18항에 있어서,
    상기 가역 회전은
    Figure 112003038948627-pat00041
    를 통해 구현되며, θ는 회전각인 프로그레시브-무손실 데이터 코더 시스템.
  22. 제18항에 있어서,
    상기 가역 회전은
    Figure 112003038948627-pat00042
    를 통해 구현되며, θ는 회전각인 프로그레시브-무손실 데이터 코더 시스템.
  23. 제15항에 있어서,
    상기 다중 인수분해 가역 변환 컴포넌트는, 가역 버터플라이(reversible butterfly)
    Figure 112003038948627-pat00043
    를 이용하며, 여기에서 xc(i)는 상기 입력 신호의 제1 채널의 복소수 표현이고, yc(j)는 상기 입력 신호의 제2 채널의 복소수 표현이고, ω는 회전각인 프로그레시브-무손실 데이터 코더 시스템.
  24. 제15항에 있어서,
    상기 다중 인수분해 가역 변환 컴포넌트는, 가역 공액 회전
    Figure 112008072589755-pat00044
    을 이용하며, 여기에서 θ는 회전각, x는 상기 입력 신호의 제1 채널, y는 상기 입력 신호의 제2 채널, x'는 상기 입력 신호의 제1 멀티플렉스 채널, y'는 상기 입력 신호의 제2 멀티플렉스 채널인 프로그레시브-무손실 데이터 코더 시스템.
  25. 제15항에 있어서,
    상기 다중 인수분해 가역 변환 컴포넌트는 변조 스테이지, 전-FFT 회전 스테이지, 복소 FFT 스테이지 및 후-FFT 회전 스테이지를 더 포함하는 프로그레시브-무손실 데이터 코더 시스템.
  26. 제15항에 따른 프로그레시브-무손실 데이터 코더 시스템을 채용하는 픽쳐 코더 시스템.
  27. 제15항에 따른 프로그레시브-무손실 데이터 코더 시스템을 채용하는 오디오 코더 시스템.
  28. 프로그레시브적으로 엔코딩된 입력 비트스트림을 디지탈적으로 엔트로피 디코딩하고, 변환 계수를 제공하는 임베디드 엔트로피 디코더, 및
    상기 임베디드 엔트로피 디코더로부터 상기 변환 계수를 수신하고, 역 가역 변조 중복 변환에 기초하는 출력값을 제공하여 다중 인수분해 가역 변환으로부터의 계산을 복귀시키는 역변환 컴포넌트
    를 포함하고,
    상기 다중 인수분해 가역 변환은 양자화 잡음을 최소화하도록 상기 변환의 가역 회전 파라미터에 기초하여 절환되는 복수의 가역 형식을 사용하는,
    프로그레시브-무손실 데이터 디코더 시스템.
  29. 입력 오디오 파형을 수신하고, 상기 입력 오디오 파형을 제1 컴포넌트 및 제2 컴포넌트로 분리하는 가역 멀티플렉서;
    상기 제1 컴포넌트를 수신하고, 상기 제1 컴포넌트에 대응하는 양자화된 계수의 출력을 제공하는 제1 다중 인수분해 가역 변환 컴포넌트 - 상기 양자화된 계수의 출력은 변환의 가역 회전 파라미터에 기초하여 복수의 가역 형식 간에 절환하는 복수의 가역 형식에 기초함 - ;
    상기 제2 컴포넌트를 수신하고, 상기 제2 컴포넌트에 대응하는 양자화된 계수의 출력을 제공하는 제2 다중 인수분해 가역 변환 컴포넌트 - 상기 양자화된 계수의 출력은 변환의 가역 회전 파라미터에 기초하여 복수의 가역 형식 간에 절환하는 복수의 가역 형식에 기초함 - ;
    상기 제1 다중 인수분해 가역 변환 컴포넌트의 상기 양자화된 계수를 프로그레시브 비트스트림으로 디지탈적으로 엔트로피 엔코딩하는 제1 임베디드 엔트로피 엔코더;
    상기 제2 다중 인수분해 가역 변환 컴포넌트의 상기 양자화된 계수를 프로그레시브 비트스트림으로 디지탈적으로 엔트로피 엔코딩하는 제2 임베디드 엔트로피 엔코더; 및
    상기 제1 임베디드 엔트로피 엔코더 및 상기 제2 임베디드 엔트로피 엔코더의 상기 프로그레시브 비트스트림을, 프로그레시브 비트스트림으로 조립(assemble)하는 비트스트림 어셈블러
    를 포함하는 프로그레시브-무손실 스테레오 오디오 코더 시스템.
  30. 제29항에 있어서,
    상기 가역 멀티플렉서는
    Figure 112003038948627-pat00045
    를 통해 구현되며, x는 제1 컴포넌트, y는 제2 컴포넌트, x'는 제1 출력 컴포넌트, y'는 제2 출력 컴포넌트인 프로그레시브-무손실 스테레오 오디오 코더 시스템.
  31. 프로그레시브적으로 엔코딩된 입력 비트스트림을 제1 채널 및 제2 채널로 분해(unassemble)하는 비트스트림 언어셈블러(unassembler);
    프로그레시브적으로 엔코딩된 입력 비트스트림의 상기 제1 채널을 디지탈적으로 엔트로피 디코딩하고, 변환 계수를 제공하는 제1 임베디드 엔트로피 디코더;
    프로그레시브적으로 엔코딩된 입력 비트스트림의 상기 제2 채널을 디지탈적으로 엔트로피 디코딩하고, 변환 계수를 제공하는 제2 임베디드 엔트로피 디코더;
    상기 제1 임베디드 엔트로피 디코더로부터 상기 변환 계수를 수신하고, 역 가역 변환에 기초하는 출력값을 제공하여, 다중 인수분해 가역 변환으로부터의 계산을 복귀시키는 제1 역변환 컴포넌트 - 상기 다중 인수분해 가역 변환은 양자화 잡음을 최소화하도록 상기 변환의 가역 회전 파라미터에 기초하여 절환되는 복수의 가역 형식을 사용함 - ;
    상기 제2 임베디드 엔트로피 디코더로부터 상기 변환 계수를 수신하고, 역 가역 변환에 기초하는 출력값을 제공하여, 다중 인수분해 가역 변환으로부터의 계산을 복귀시키는 제2 역변환 컴포넌트 - 상기 다중 인수분해 가역 변환은 양자화 잡음을 최소화하도록 상기 변환의 가역 회전 파라미터에 기초하여 절환되는 복수의 가역 형식을 사용함 - ; 및
    상기 제1 역변환 컴포넌트 및 상기 제2 역변환 컴포넌트의 출력을 오디오 출력으로 조합하여, 다중 인수분해 가역 변환으로부터의 계산을 복귀시키는 가역 디멀티플렉서(demultiplexer) - 상기 다중 인수분해 가역 변환은 양자화 잡음을 최소화하도록 상기 변환의 가역 회전 파라미터에 기초하여 절환되는 복수의 가역 형식을 사용함 -
    를 포함하는 프로그레시브-무손실 오디오 디코더 시스템.
  32. 무손실 데이터 엔코딩 방법으로서,
    입력 신호를 수신하는 단계; 및
    상기 입력 신호에 대응하는 양자화된 계수를 제공하는 단계를 포함하고,
    상기 양자화된 계수는 다중 인수분해 가역 변환에 기초하고, 상기 다중 인수분해 가역 변환은 상기 변환의 가역 회전 파라미터에 기초하여 복수의 가역 형식 사이에서 절환하는, 무손실 데이터 엔코딩 방법.
  33. 제32항에 있어서,
    상기 양자화된 계수를 엔트로피 엔코딩하는 단계; 및
    상기 다중 인수분해 가역 변환이 변조 스테이지, 전-FFT 회전 스테이지, 복소 FFT 스테이지 및 후-FFT 회전 스테이지를 포함하는 것
    중 적어도 하나의 동작을 더 포함하는 무손실 데이터 엔코딩 방법.
  34. 디지탈적으로 엔트로피 엔코딩된 입력 비트스트림을 수신하는 단계;
    상기 입력 비트스트림을 엔트로피 디코딩하고, 변환 계수를 제공하는 단계; 및
    상기 변환 계수의 역변환에 기초하는 출력값을 제공하는 단계 - 상기 역변환은 역 가역 변조 중복 변환에 기초하여, 다중 인수분해 가역 변환으로부터의 계산을 복귀시키고, 상기 다중 인수분해 가역 변환은 양자화 잡음을 최소가 되도록 상기 변환의 가역 변환 파라미터에 기초하여 절환되는 복수의 가역 형식을 사용함 -
    를 포함하는 무손실 데이터 디코딩 방법.
  35. 입력 신호를 수신하는 단계;
    상기 입력 신호에 대응하는 양자화된 계수를 제공하는 단계 - 상기 양자화된 계수는 다중 인수분해 가역 변환에 기초하며, 상기 다중 인수분해 가역 변환은 상기 변환의 가역 회전 파라미터에 기초하여 복수의 가역 형식 간에 절환함 - ; 및
    상기 양자화된 계수를 임베디드 엔트로피 엔코딩하는 것에 기초하여, 프로그레시브 비트스트림을 제공하는 단계
    를 포함하는 프로그레시브-무손실 오디오 엔코딩 방법.
  36. 제35항에 있어서,
    상기 다중 인수분해 가역 변환이 변조 스테이지, 전-FFT 회전 스테이지, 복소 FFT 스테이지 및 후-FFT 회전 스테이지를 포함하는 것;
    상기 입력 신호를 제1 컴포넌트 및 제2 컴포넌트로 분리하는 단계; 및
    상기 제1 컴포넌트 및 상기 제2 컴포넌트와 연관된 상기 임베디드 엔트로피 엔코딩된 양자화된 계수의 출력 비트스트림을 조립하는 단계
    중 적어도 하나의 동작을 더 포함하는 프로그레시브-무손실 오디오 엔코딩 방법.
  37. 다중 인수분해 가역 변환의 적어도 2회의 인수분해 간에, 상기 변환의 가역 회전 파라미터에 기초하여, 절환하는 단계를 포함하는,
    다중 인수분해 가역 변환 방법.
  38. 삭제
  39. 제37항에 있어서,
    상기 다중 인수분해 가역 회전의 1회의 인수분해는
    Figure 112010031582431-pat00046
    를 통해 구현되며, θ는 회전각인 다중 인수분해 가역 변환 방법.
  40. 제39항에 있어서,
    상기 다중 인수분해 가역 회전의 1회의 인수분해는, -0.25π내지 0.25π범위 내의 회전각 θ에 대하여 구현되는 다중 인수분해 가역 변환 방법.
  41. 제39항에 있어서,
    상기 다중 인수분해 가역 회전의 1회의 인수분해는, -0.5π내지 0.5π범위 내의 회전각 θ에 대하여 구현되는 다중 인수분해 가역 변환 방법.
  42. 제37항에 있어서,
    상기 다중 인수분해 가역 회전의 1회의 인수분해는
    Figure 112010031582431-pat00047
    를 통해 구현되고, θ는 회전각인 다중 인수분해 가역 변환 방법.
  43. 제42항에 있어서,
    상기 다중 인수분해 가역 회전의 1회의 인수분해는, -0.75π내지 -0.25π범위 내의 회전각 θ에 대하여 구현되는 다중 인수분해 가역 변환 방법.
  44. 제37항에 있어서,
    상기 다중 인수분해 가역 회전의 1회의 인수분해는
    Figure 112010031582431-pat00048
    를 통해 구현되고, θ는 회전각인 다중 인수분해 가역 변환 방법.
  45. 제44항에 있어서,
    상기 다중 인수분해 가역 회전의 1회의 인수분해는, 0.25π내지 0.75π범위 내의 회전각 θ에 대하여 구현되는 다중 인수분해 가역 변환 방법.
  46. 제37항에 있어서,
    상기 다중 인수분해 가역 회전의 1회의 인수분해는
    Figure 112010031582431-pat00049
    를 통해 구현되고, θ는 회전각인 다중 인수분해 가역 변환 방법.
  47. 제46항에 있어서,
    상기 다중 인수분해 가역 회전의 1회의 인수분해는, 0.75π내지 1.25π범위 내의 회전각 θ에 대하여 구현되는 다중 인수분해 가역 변환 방법.
  48. 제46항에 있어서,
    상기 다중 인수분해 가역 회전의 1회의 인수분해는, 0.5π내지 1.5π범위 내의 회전각 θ에 대하여 구현되는 다중 인수분해 가역 변환 방법.
  49. 제37항에 있어서,
    상기 다중 인수분해 가역 변환은
    Figure 112010058268048-pat00050
    를 통해 구현되는 다중 인수분해 가역 복소 버터플라이고, xc(i)는 입력 신호의 제1 채널의 복소수 표현이고, xc(j)는 상기 입력 신호의 제2 채널의 복소수 표현이고, ω는 회전각이며,
    가역 복소 버터플라이는, 상기 입력 신호의 2개의 채널의 실수부와 허수부에 의해 형성되는 변수쌍에 대한 0.25π다중 인수분해 가역 회전을 먼저 행한 다음, 상기 제2 채널의 다중 인수분해 가역 복소 회전 ω을 행하는 것에 의해 구현되는 다중 인수분해 가역 변환 방법.
  50. 제37항에 있어서,
    상기 다중 인수분해 가역 변환은 다중 인수분해 가역 공액 회전
    Figure 112010058268048-pat00051
    에 의해 구현되고, θ는 회전각, x는 입력 신호의 제1 채널, y는 상기 입력 신호의 제2 채널, x'는 상기 입력 신호의 제1 멀티플렉스 채널, y'는 상기 입력 신호의 제2 멀티플렉스 채널이고,
    상기 다중 인수분해 가역 공액 회전은, 다중 인수분해 가역 회전을 먼저 행한 다음, 허수부의 부호를 반전시키는 것에 의해 구현되는 다중 인수분해 가역 변환 방법.
  51. 제37항에 있어서,
    상기 다중 인수분해 가역 변환은 가역 MLT, 가역 DCT, 가역 DST 및 가역 FFT 중 적어도 하나인 다중 인수분해 가역 변환 방법.
  52. 삭제
  53. 무손실 데이터 코더 시스템의 컴퓨터 실행가능 컴포넌트를 저장하는 컴퓨터 판독가능 저장 매체에 있어서,
    입력 신호를 수신하고, 상기 입력 신호에 대응하는 양자화된 계수의 출력을 제공하는 다중 인수분해 가역 변환 컴포넌트 - 상기 양자화된 계수의 출력은 다중 인수분해 가역 변환에 기초하고, 상기 다중 인수분해 가역 변환은 상기 변환의 가역 회전 파라미터에 기초하여 복수의 가역 형식 간에 절환함 - ; 및
    상기 양자화된 계수를 디지탈적으로 엔트로피 엔코딩하는 엔트로피 엔코더 컴포넌트
    를 포함하는 컴퓨터 판독가능 저장 매체.
  54. 입력 신호를 수신하는 수단;
    상기 입력 신호에 대응하는 양자화된 계수의 출력을 제공하는 수단 - 상기 양자화된 계수의 출력은 다중 인수분해 가역 변환에 기초하고, 상기 다중 인수분해 가역 변환은 양자화 잡음을 최소화하도록 상기 변환의 가역 회전 파라미터에 기초하여 복수의 가역 형식 간에 절환함 - ; 및
    상기 양자화된 계수를 엔트로피 엔코딩하는 수단
    을 포함하는 무손실 데이터 코더 시스템.
KR1020030072958A 2002-11-21 2003-10-20 무손실 데이터 코더 및 디코더 시스템, 픽쳐 코더 시스템, 오디오 코더 및 디코더 시스템, 무손실 데이터 엔코딩 및 디코딩 방법, 무손실 오디오 엔코딩 방법, 다중 인수분해 가역 변환 방법, 및 컴퓨터 판독 가능 매체 KR101006287B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/300,995 US7395210B2 (en) 2002-11-21 2002-11-21 Progressive to lossless embedded audio coder (PLEAC) with multiple factorization reversible transform
US10/300,995 2002-11-21

Publications (2)

Publication Number Publication Date
KR20040045287A KR20040045287A (ko) 2004-06-01
KR101006287B1 true KR101006287B1 (ko) 2011-01-06

Family

ID=32229885

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030072958A KR101006287B1 (ko) 2002-11-21 2003-10-20 무손실 데이터 코더 및 디코더 시스템, 픽쳐 코더 시스템, 오디오 코더 및 디코더 시스템, 무손실 데이터 엔코딩 및 디코딩 방법, 무손실 오디오 엔코딩 방법, 다중 인수분해 가역 변환 방법, 및 컴퓨터 판독 가능 매체

Country Status (7)

Country Link
US (1) US7395210B2 (ko)
EP (1) EP1422694A3 (ko)
JP (1) JP4374233B2 (ko)
KR (1) KR101006287B1 (ko)
CN (1) CN100442850C (ko)
AU (1) AU2003248196A1 (ko)
BR (1) BR0304611A (ko)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7536305B2 (en) 2002-09-04 2009-05-19 Microsoft Corporation Mixed lossless audio compression
WO2006025337A1 (ja) * 2004-08-31 2006-03-09 Matsushita Electric Industrial Co., Ltd. ステレオ信号生成装置およびステレオ信号生成方法
US8265929B2 (en) * 2004-12-08 2012-09-11 Electronics And Telecommunications Research Institute Embedded code-excited linear prediction speech coding and decoding apparatus and method
KR100745721B1 (ko) 2004-12-08 2007-08-03 한국전자통신연구원 임베디드 코드여기 선형예측 음성 부호화/복호화 장치 및그 방법
AU2005239628B2 (en) * 2005-01-14 2010-08-05 Microsoft Technology Licensing, Llc Reversible 2-dimensional pre-/post-filtering for lapped biorthogonal transform
EP1866911B1 (en) * 2005-03-30 2010-06-09 Koninklijke Philips Electronics N.V. Scalable multi-channel audio coding
KR100736086B1 (ko) * 2005-09-06 2007-07-06 삼성전자주식회사 엔트로피 코딩의 성능 향상 방법 및 장치, 상기 방법을이용한 비디오 코딩 방법 및 장치
US7983335B2 (en) * 2005-11-02 2011-07-19 Broadcom Corporation AVC I—PCM data handling and inverse transform in a video decoder
US8595281B2 (en) * 2006-01-11 2013-11-26 Qualcomm Incorporated Transforms with common factors
US8849884B2 (en) 2006-03-29 2014-09-30 Qualcom Incorporate Transform design with scaled and non-scaled interfaces
US20080059201A1 (en) * 2006-09-03 2008-03-06 Chih-Hsiang Hsiao Method and Related Device for Improving the Processing of MP3 Decoding and Encoding
MX2008012251A (es) 2006-09-29 2008-10-07 Lg Electronics Inc Metodos y aparatos para codificar y descodificar señales de audio basadas en objeto.
CN101484935B (zh) * 2006-09-29 2013-07-17 Lg电子株式会社 用于编码和解码基于对象的音频信号的方法和装置
CN101206860A (zh) * 2006-12-20 2008-06-25 华为技术有限公司 一种可分层音频编解码方法及装置
US8086465B2 (en) * 2007-03-20 2011-12-27 Microsoft Corporation Transform domain transcoding and decoding of audio data using integer-reversible modulated lapped transforms
US7991622B2 (en) * 2007-03-20 2011-08-02 Microsoft Corporation Audio compression and decompression using integer-reversible modulated lapped transforms
CN101046964B (zh) * 2007-04-13 2011-09-14 清华大学 基于重叠变换压缩编码的错误隐藏帧重建方法
US8185381B2 (en) * 2007-07-19 2012-05-22 Qualcomm Incorporated Unified filter bank for performing signal conversions
BRPI0816556A2 (pt) * 2007-10-17 2019-03-06 Fraunhofer Ges Zur Foerderung Der Angewandten Forsschung E V codificação de áudio usando downmix
WO2009096898A1 (en) * 2008-01-31 2009-08-06 Agency For Science, Technology And Research Method and device of bitrate distribution/truncation for scalable audio coding
TWI382768B (zh) * 2008-03-24 2013-01-11 Novatek Microelectronics Corp 具有執行重疊濾波以及核心轉換的運算方法及其裝置
US8386271B2 (en) 2008-03-25 2013-02-26 Microsoft Corporation Lossless and near lossless scalable audio codec
CN101609679B (zh) * 2008-06-20 2012-10-17 华为技术有限公司 嵌入式编解码方法和装置
JP2010009624A (ja) * 2009-10-07 2010-01-14 Ntt Docomo Inc 画像信号変換方法、画像信号逆変換方法、画像符号化装置、画像復号装置、画像符号化方法、画像復号方法、画像符号化プログラム、及び、画像復号プログラム
EP2561680B1 (en) * 2010-04-19 2020-07-15 BlackBerry Limited Methods and devices for reordered parallel entropy coding
KR101206000B1 (ko) 2010-12-31 2012-11-28 전자부품연구원 Mpeg-4 als vlsi 구현을 위한 저복잡도 가변 차수 단기 예측기
CN102103859B (zh) * 2011-01-11 2012-04-11 东南大学 一种数字音频编码、解码方法及装置
US20120320972A1 (en) * 2011-06-16 2012-12-20 Samsung Electronics Co., Ltd. Apparatus and method for low-complexity optimal transform selection
WO2013121793A1 (ja) * 2012-02-16 2013-08-22 日本放送協会 多チャネル音響システム、伝送装置、受信装置、伝送用プログラム、および受信用プログラム
GB201210373D0 (en) * 2012-06-12 2012-07-25 Meridian Audio Ltd Doubly compatible lossless audio sandwidth extension
CN105009207B (zh) * 2013-01-15 2018-09-25 韩国电子通信研究院 处理信道信号的编码/解码装置及方法
US20160171987A1 (en) * 2014-12-16 2016-06-16 Psyx Research, Inc. System and method for compressed audio enhancement
TWI709047B (zh) * 2015-06-15 2020-11-01 美商艾斯卡瓦公司 對其已使用主要資料篩而被無損減少的資料履行多維搜尋、內容相關擷取、及關鍵字為基的搜尋和擷取
CN105811995A (zh) * 2016-03-04 2016-07-27 广东工业大学 一种减少量化噪声的方法
CN114531600B (zh) * 2022-02-18 2023-10-03 阿里巴巴(中国)有限公司 变换单元、现场可编程门阵列、芯片、电子设备、片上系统

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3302229B2 (ja) * 1994-09-20 2002-07-15 株式会社リコー 符号化方法、符号化/復号方法及び復号方法
US6873734B1 (en) * 1994-09-21 2005-03-29 Ricoh Company Ltd Method and apparatus for compression using reversible wavelet transforms and an embedded codestream
JP2914226B2 (ja) * 1995-06-16 1999-06-28 日本電気株式会社 可逆変換を可能にするディジタル信号の変換符号化方式
US5999656A (en) * 1997-01-17 1999-12-07 Ricoh Co., Ltd. Overlapped reversible transforms for unified lossless/lossy compression
US6058215A (en) * 1997-04-30 2000-05-02 Ricoh Company, Ltd. Reversible DCT for lossless-lossy compression
JP4373006B2 (ja) * 1998-05-27 2009-11-25 マイクロソフト コーポレーション スケーラブル音声コーダとデコーダ
WO2001008001A1 (en) * 1999-07-23 2001-02-01 Trustees Of Boston University Integer discrete cosine transform using integer operations
US7013049B2 (en) * 2001-02-28 2006-03-14 Ricoh Company, Ltd. Image processing scheme
US6934676B2 (en) * 2001-05-11 2005-08-23 Nokia Mobile Phones Ltd. Method and system for inter-channel signal redundancy removal in perceptual audio coding
US6757648B2 (en) * 2001-06-28 2004-06-29 Microsoft Corporation Techniques for quantization of spectral data in transcoding
US7275036B2 (en) * 2002-04-18 2007-09-25 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for coding a time-discrete audio signal to obtain coded audio data and for decoding coded audio data
US7315822B2 (en) * 2003-10-20 2008-01-01 Microsoft Corp. System and method for a media codec employing a reversible transform obtained via matrix lifting

Also Published As

Publication number Publication date
CN100442850C (zh) 2008-12-10
JP2004173250A (ja) 2004-06-17
EP1422694A3 (en) 2017-05-10
AU2003248196A1 (en) 2004-06-10
BR0304611A (pt) 2004-08-31
US20040102963A1 (en) 2004-05-27
JP4374233B2 (ja) 2009-12-02
KR20040045287A (ko) 2004-06-01
EP1422694A2 (en) 2004-05-26
US7395210B2 (en) 2008-07-01
CN1503572A (zh) 2004-06-09

Similar Documents

Publication Publication Date Title
KR101006287B1 (ko) 무손실 데이터 코더 및 디코더 시스템, 픽쳐 코더 시스템, 오디오 코더 및 디코더 시스템, 무손실 데이터 엔코딩 및 디코딩 방법, 무손실 오디오 엔코딩 방법, 다중 인수분해 가역 변환 방법, 및 컴퓨터 판독 가능 매체
US9741354B2 (en) Bitstream syntax for multi-process audio decoding
RU2422987C2 (ru) Канальное кодирование на основе комплексного преобразования с частотным кодированием с расширенной полосой
EP1455345B1 (en) Method and apparatus for encoding and/or decoding digital data using bandwidth extension technology
US6934676B2 (en) Method and system for inter-channel signal redundancy removal in perceptual audio coding
KR100908114B1 (ko) 스케일러블 무손실 오디오 부호화/복호화 장치 및 그 방법
US20090279598A1 (en) Method, apparatus, and program for encoding digital signal, and method, apparatus, and program for decoding digital signal
US7991622B2 (en) Audio compression and decompression using integer-reversible modulated lapped transforms
JPH10285042A (ja) ビット率の調節可能なオーディオデータ符号化/復号化方法及び装置
US8086465B2 (en) Transform domain transcoding and decoding of audio data using integer-reversible modulated lapped transforms
JP2004199075A (ja) ビット率調節可能なステレオオーディオ符号化・復号化方法及びその装置
KR100750115B1 (ko) 오디오 신호 부호화 및 복호화 방법 및 그 장치
JP2003140692A (ja) 符号化装置及び復号化装置
JP2001242891A (ja) 符号化音声信号形式変換装置
Liebchen Mpeg-4 als-the standard for lossless audio coding
US6549147B1 (en) Methods, apparatuses and recorded medium for reversible encoding and decoding
US6463405B1 (en) Audiophile encoding of digital audio data using 2-bit polarity/magnitude indicator and 8-bit scale factor for each subband
Hans Optimization of digital audio for internet transmission
Auristin et al. New Ieee Standard For Advanced Audio Coding In Lossless Audio Compression: A Literature Review
Yang High fidelity multichannel audio compression
Fejzo et al. DTS-HD: Technical Overview of Lossless Mode of Operation
CN115410585A (zh) 音频数据编解码方法和相关装置及计算机可读存储介质
Reddy Implementation of AAC Encoder for Audio Broadcasting
Bhaskaran et al. Standards for Audio Compression

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 20131115

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141117

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151201

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20161129

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20181129

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20191127

Year of fee payment: 10