KR20030014680A - 고속 로버스트 데이터 압축 방법 및 시스템 - Google Patents

고속 로버스트 데이터 압축 방법 및 시스템 Download PDF

Info

Publication number
KR20030014680A
KR20030014680A KR1020027016392A KR20027016392A KR20030014680A KR 20030014680 A KR20030014680 A KR 20030014680A KR 1020027016392 A KR1020027016392 A KR 1020027016392A KR 20027016392 A KR20027016392 A KR 20027016392A KR 20030014680 A KR20030014680 A KR 20030014680A
Authority
KR
South Korea
Prior art keywords
path
quantizers
nodes
cost
data stream
Prior art date
Application number
KR1020027016392A
Other languages
English (en)
Inventor
트로바토카렌아이.
Original Assignee
코닌클리케 필립스 일렉트로닉스 엔.브이.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 코닌클리케 필립스 일렉트로닉스 엔.브이. filed Critical 코닌클리케 필립스 일렉트로닉스 엔.브이.
Publication of KR20030014680A publication Critical patent/KR20030014680A/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/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • 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/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • 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
    • 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

Abstract

비디오 압축 프로세스는 최적화 문제를 구성 공간에서의 경로 최적화 문제로서 셋업하고 구성 공간을 통한 최소 코스트 경로를 발견함으로써 데이터 스트림을 압축하기 위한 양자화기들의 최적의 선택을 가속시킨다. 프로세스는 개선된 경로가 발견될 때까지 최저 코스트 미완성 경로부터 시작하여, 미완성된 경로들의 코스트들이 종지 상태 미만에 있는 동안 이들 미완성된 경로들을 사용하여 계속될 수 있다. 프로세스는 시간이 만기될 때까지 혹은 모든 유용한 가능성들이 고갈될 때까지, 시간제한된 프로세스에 대해서, 더 계속될 수도 있다.

Description

고속 로버스트 데이터 압축 방법 및 시스템{Fast robust data compression method and system}
대량의 데이터를 저장하고 전송하는 것은 늘 야기되는 문제이다. 예를 들면, 디지털 비디오의 데이터량은 방대하며, 용장적 및 중요하지 않은 정보를 폐기하는 실용적인 방법들이 없었다면 대부분의 장치들의 저장 및 전송 용량들은 이 디지털 비디오의 데이터량으로 포화될 것이다. 이것이 데이터 압축의 비지니스이며, 상당히 정확하게 예측될 수 있는 데이터 스트림에 관한 정보를 저장 혹은 전송함에 있어 전혀 무리를 주지 않는다. 예측이 100% 정확하다면, 압축 방법은 "무손실"이라 한다. 예측이 100% 미만으로 정확하다면, 이를 "유실"이라 한다.
데이터 스트림의 압축은 또한 다른 환경에서도 사용된다. 예를 들면, 이미지들은 유실 압축될 수 있다. 하나의 공지된 유형의 이미지 압축으로서JPEG(Joint Photographic Experts Group)는 이웃하는 화소들간 상관을 이용하여 이들의 값들을 예측하고 그러므로써, 소정의 질적인 수준으로 저장 혹은 전송되어야 하는 데이터량을 감소시킨다. 이 외 많은 다른 유실 이미지 압축 방법들이 있다.
규정에 의해서 유실성 체계들은 이들의 압축전의 것들을 완전히 무왜곡으로 나타낼 수는 없다. 많은 압축 체계들에서는, 허용되는 최대 왜곡 수준을 미리 선택하고 이를 제공하는데 필요한 최소 데이터량을 저장 혹은 전송하는 것이 가능하다. 대안으로, 비트 레이트를 미리 선택하여 명시된 "비트 버짓(bit-budget)"에 대해 왜곡을 최소화할 수 있다.
왜곡은 데이터 압축 유형에 따르며 주관적인 기준을 포함할 수 있는 개념이다. 예를 들면, 소정의 압축/압축해제 사이클에서 입은 왜곡 정도는 부분적으로는 사람의 시각계의 관점에 따른다. 예를 들면, 사람들은 예로서 휘도(이미지의 부분들의 상대적인 명암)와 동일한 디테일로 색을 볼 수 없다. 결국, 인지되는 화질에 보다 기여하는 것보다는 인지되는 화질에 최소한으로 기여하는 것들은 폐기되게 하여 데이터 스트림을 왜곡하는 것이 압축에 최적의 방법이다. (명백히, 화질에 아무것도 기여하는 않은 데이터, 즉 이들은 용장성 데이터이므로 이 리스트의 최상부를 점할 것이다). 이 압축 방식은 "레이트 왜곡 압축"에 대해 "최적의 비트 할당"이라 하는 "최적화 문제"를 규정한다. 최적화를 규정하는 주관적인 개념 외에도, 그 외 최적화에 보다 구체적인 관점들이 있다. 예를 들면, 데이트 스트림의 일부분들을 희생시켜 다른 부분들에 인핸스먼트를 행하여 전체적인 최적을 달성함으로써, 평균 왜곡을 최소화하는 것을 선택할 수도 있을 것이다. 대안으로, 데이터 스트림의 모든 명시된 부분의 최대 왜곡을 최소화할 수도 있을 것이다. 따라서, 최적화를 규정하는 것은 복잡하고 진보되어 가는 개념이므로, 본 명세서에선 임의의 특정의 메트릭을 지칭하는 것으로 하였다.
그간 비디오 데이터는 인지에 거의 왜곡이 없이 압축하는데 있어 최상의 후보인 것으로 알려져 왔다. 이와 같이 말하는 기술적인 사항은 원 데이터가 매우 낮은 엔트로피를 갖는다고 하는 것, 즉, 시간 혹은 공간적으로 어떤 주어진 부분이 시간 및 공간적으로 이 외의 다른 부분들로부터 높은 확률을 갖고 예측이 가능하다는 것이다. 예를 들면, 고속의 비디오 시퀀스에서도, 제1 프레임은 다음 프레임과 거의 유사한 경향이 있다.
비디오를 콤팩트하게 규정하는 매우 다양한 서로 다른 방법들이 나와 있다. 예를 들면, 비디오 프레임은 이전 프레임으로부터 이동된 이미지의 세그먼트들의 각각과, 움직임 데이터만으로부터 프레임을 재구성함으로써 손실된 디테일만을 포함하는 "차이" 프레임에 의해서 규정될 수 있다. 이 기술을 사용하는 압축 방법들을 움직임 보상 비디오 코더(MCVC; Motion Compensated Video Coder)라 한다. 조합된 데이터 스트림은 비디오의 연속한 프레임들에서의 많은 변화가 색 및 휘도의 필드들을 점진적으로 시프트함으로써 특징화할 수 있기 때문에 매우 콤팩트해질 수 있다.
비디오 데이터를 압축하는 많은 서로 상이한 방법들을 함께 사용할 수도 있다. 또한, 오디오, 정지 이미지, 및 그 외 다른 류의 데이터를 압축하는 많은 방법들이 있다. 시간 혹은 공간적으로 이웃한 신호의 부분들로부터 정보를 수집하는소위 이들 예측 방법들에 있어서는 최적화 문제가 복잡해질 수 있다. 원 데이터를 나타내는 어떤 심볼로 이 데이터를 대치하는 것은 어떠한 압축 방법에서든 본연의 것이다. 예를 들면, 하나의 데이텀을 디지털 데이터로 변환하였을 때, 전송기(혹은 저장장치)는 정밀도와 폐기 간에 절충을 해결해야 한다. 정밀도가 클수록 더 많은 데이터가 필요하다. 이것은 서로 상이한 "양자화기들"간 단순한 예시적 선택이다. 최근에 데이터 압축 문제들은 훨신 더 복잡한 선택들을 포함한다. 예를 들면, 비디오 프레임의 부분의 이동을 전송함으로써 비디오 스트림을 나타내는 MCVC에서, 양자화기들의 선택은 움직임 벡터들로 효과적으로 나타낼 수 있는 부분의 크기를 선택하는 것을 포함한다. 한 프레임을 움직임 부분들로 분할하는 방법의 선택에 따라서 다음 연속되는 프레임에 대한 예측값이 영향을 받는다. 결과는 데이터 스트림의 한 부분에 대한 양자화기들의 선택들에 따라 데이터 스트림의 다른 부분들의 왜곡(혹은 비트 레이트)에 영향을 미치는 계획 문제가 원 데이터를 심볼들로 변환하는 시간적 혹은 공간적인 방법들의 연속적인 선택들로부터 비롯되는 왜곡량으로 인해 복잡해진다는 것이다.
일부 비디오 압축 방법들에서, 이러한 압축 문제들에 의한 최적화 문제를 해결하기 위해서 동적 프로그래밍(DP; dynamic programming)이라 하는 툴의 사용이 제시되었다. DP가 로버스트(즉, 항시 작용된다)하긴 하지만, 계산 집약적이다. 결과는 최적의 질이 악화되거나 최적화 계산 코스트가 높아질 수밖에 없다는 것이다. 따라서, 종래 기술에서 보다 낮은 계산 오버헤드로 레이트 왜곡 계산 방법들에 의한 최적화 문제를 해결하는 방법들의 필요성이 있다.
본 발명은 데이터 압축에 관한 것으로, 특히 최적의 양자화기들의 선택을 시도하는 보다 효율적인 압축 프로세스들을 형성하고자 하는 압축 방법들에 관한 것이다.
도 1은 본 발명의 예시 목적으로 가정한 이미지 압축 방법에 있어서의 경로 최적화 문제를 도시한 도면.
도 2는 본 발명을 설명하기 위해서 경로 계획 문제를 해결함에 있어 제1 단계를 도시한 도면.
도 3은 도 1의 경로 계획 문제를 해결함에 있어 제2 단계를 도시한 도면.
도 4는 도 1의 경로 계획 문제를 해결함에 있어 제3 단계를 도시한 도면.
도 5는 도 1의 경로 계획 문제를 해결함에 있어 최종의 단계를 도시한 도면.
도 6은 본 발명의 실시예에 따른 데이터 압축을 수행하는 장치를 나타내는 블록도.
도 7은 본 발명의 실시예에 따른 압축을 수행하는 방법을 나타낸 흐름도.
요약하면, 비디오 압축 프로세스는 방향성 그래프에서 최적화 문제를 경로 최적화 문제로서 셋업하고 이 방향성 그래프를 통해 최소 코스트 경로를 발견함으로써 데이터 스트림을 압축하는 양자화기들의 선택들을 최적화한다. 방향성 그래프는 구성 공간(configuration space)으로서 간주될 수도 있다. 프로세스는 시작 노드(또는 "상태")부터 시작하여 경로가 종지로 완료될 때까지 공간을 통해 최소 코스트 웨이브들을 전파시킨다. 프로세스는 다음 경로가 완료될 때까지, 최소 코스트의 미완성의 경로부터 시작하는, 부분적인 경로들을 사용하여 계속될 수도 있다. 보다 낮은 코스트의 부분적인 혹은 미완성된 경로를 비교하여 최적인 것이 사용될 수 있다. 프로세스는 또한 시간이 만기되거나 최적 경로에 기여할 수 있는 모든 가능성들이 고갈될 때까지, 시간 제한된 프로세스에 대해 계속될 수 있다.
압축 방법은 데이터 스트림의 유실 압축시 레이트 혹은 왜곡을 최적화하는 양자화기들을 선택하는 경우에 야기되는 제약된 최적화 문제에 착수한다. 종래의 기술처럼, 이 방법은 주어진 최대 왜곡에 대해 최소의 비트 레이트 혹은 주어진 최대 비트 레이트에 대해 최소의 왜곡을 선택함으로써 레이트 왜곡의 최적화를 시도한다. 그러나, 본 발명에 따라서, 이 최적화 문제는 몇 가지 잇점이 있게 하는 A* 경로 계획으로서 알려진 경로 최적화를 사용하여 해결된다. 먼저, 동적 프로그래밍과는 반대로, 전체적인 최적의 경로를 향한 경로를 안내하는 용인되는 발견적 방법(최적 추정)을 사용하므로 시간이 제한된 환경에서 근사 최적 경로들의 연속적인개선이 얻어지게 한다. 두 번째로, 남김없이 전개함이 없이 모든 가능한 경로들을 최적화할 수 있고 그러므로써 동적 프로그래밍보다 계산면에서 보다 효율적으로 된다.
일반적으로, 본 발명에 따라서, 양자화기들의 최적화는 경로 최적화 문제로 전환되고, 이 문제는 이어서 A* 경로 계획을 사용하여 해결된다. A* 경로 계획은 전부를 여기 개시되는 것으로 하여 참고로 여기 각각이 포함되는 다음을 포함하는 많은 공보에 기술되어 있다.
5,220,497 : 고속 차량을 제어하는 방법 및 장치(Method and apparatus for controlling high speed vehicles);
5,083,256, 발명의 명칭 : 천이 변화를 갖는 경로 계획(Path-planning with transition changes);
4,949,277, 발명의 명칭 : 차분 버딩-움직이는 방해물들 및 목표물을 갖는 경로 계획을 위한 방법 및 장치(Differential budding: method and apparatus for path-planning with moving obstacles and goals);
5,870,303, 발명의 명칭 : 차량의 조정을 제어하는 방법 및 장치(Method and apparatus for controlling maneuvers of a vehicle)
5,808,887, 발명의 명칭 : 경로 계획의 애니메이션(Animation of path-panning);
5,696,674, 발명의 명칭 : 변화하는 공간에서의 계획된 경로의 컴퓨터 애니메이션(Computer animation of planned path in changing space);
5,539,646, 발명의 명칭 : 감소된 통신 요건들을 갖는 트래픽 모니터링 시스템(Traffic monitoring system with reduced communications requirements).
상기 특허들은 공간 변화 메트릭을 사용하여, 버딩(budding)에 의해 구성 공간을 통해 코스트 웨이브들을 전파시킴으로써 결정된다. 버딩이란 구성 공간 내 소정의 노드의 각각의 이웃부터 목적지에(혹은 시작부터 소정의 노드의 이웃들까지) 도달하는 총 코스트를 계산하는 프로세스를 말한다. 버딩은 그 지점까지 발견된 최소 코스트 경로 상에 있는 노드의 이웃들에 대해 항시 수행된다. 따라서, 버딩 프로세스는 구성 공간을 통한 최소 코스트의 웨이브들을 전파시키는 것으로서 기술할 수도 있다. 이 프로세스는 최적 비트 할당 문제가 상기 특허 문헌에 기술된 바와 같이 구성 공간 내 경로 계획 문제를 규정하기 때문에 본 경우에 적용될 수 있다.
압축 환경에서 양자화기들의 최적화가 어떻게 하여 경로 계획 문제를 야기하는지를 이해하기 위해서, 간단한 이미지 압축 문제를 고찰한다. 이미지는 일부 임의의 압축 프로토콜에 따라 좌측과 우측의 두 개의 반들로 분할된다. 일부 임의의 요건에 따라서, 문제는 이미지의 최소 왜곡으로 이미지를 어떤 소정의 수의 비트들 N로 압축할 수 있게 하는 양자화기들을 선택하는 것이다. 각 측은 선택 혹은 양자화기를 갖는데, 한 선택은 단일의 비트로 화소들의 휘도를 나타내며 또 다른 선택은 두 개의 비트의 휘도를 나타낸다. 1비트 양자화기에 의해서는 이미지 왜곡은 더 클 수 있는데, 그러나 필요한 데이터량은 더 낮아진다. 2비트 양자화기의 경우엔, 왜곡은 더 낮아지지만 필요한 데이터량은 더 많아진다.
상기 예에서, 최적화 문제는 총 비트 수가 N 미만이 되게 하고 왜곡을 최소화할 수 있게 하는 이미지의 각 측에 대해 양자화를 찾는 문제일 뿐이다. 왜곡은 공지의 기술들에 따라 계산될 수 있다. 이들 기술들은 사람인 관찰자들에게 더 명백한 왜곡의 유형들이 사람 관찰자들에게 보다 뚜렷한 왜곡의 유형들보다는 전체 이미지(혹은 비디오) 왜곡을 계산함에 있어 가중치가 덜 부여되도록 사람의 인지상의 성향들을 고려하도록 발전되었다. 이 외에 평균 제곱 오차와 같은 수치 기술들도 채용될 수 있다. 이미지의 왜곡을 계산하는 것에 대해서는 주제가 원숙한 기술적 대상이고 본 발명과는 직접적으로 관계가 없으므로 본 명세서에선 더 이상 전개하지 않는다.
빈 공간을 보여주는 조명이 없는 룸으로 열린 문의 이미지처럼 이미지의 좌측이 대부분이 매우 어둡다면, 흑색 혹은 백색으로서 화소들의 휘도를 나타내게 되는 것인 이미지의 이 좌측을 단일 비트로 부호화한 경우 거의 유실되는 것은 없다고 할 수 있다. 우측에 대해선, 문의 특징들은 휘도의 2비트 표현으로 가능한 4 단계 등급의 휘도를 사용함으로써 보다 효과적으로 나타낼 수 있다. 그래서 명백히, 좌측 화소들엔 1비트를 사용하고 우측의 화소들엔 2비트를 사용함에 따라 왜곡은 그 반대인 경우보다 덜 하게 된다. 경로 계획 문제는 노드들의 맵으로 나타낼 수 있고, 이 맵에서 각 노드는 이미지의 영역에 양자화기의 할당을 나타낸다. 경로는 하나를 통과해야 하고 단지 한 노드는 이미지의 좌측에 해당하고 단지 한 노드는 이미지의 우측에 해당한다. 경로를 플롯하는 방법의 선택에 따라 이미지 영역의 화소들을 저장하는데 필요한 비트 수 및 압축된 이미지 내 왜곡에 관한 어떤코스트가 된다. 이 예에서, 경로 최적화 문제는 허용되는 최대 비트 수 N 미만으로 하면서 최저 왜곡으로 되는 경로를 선택하는 것이다.
A* 경로 계획은 시작점과 종지점을 포함하는 토폴로지를 사용해서 알고리즘의 초기화부터 시작하여 이러한 경로 최적화 문제를 해결한다. 간단한 예에서, 이것은 앞에서 언급한 것들보다는 노드들이 두 개 추가된 것이다. 노드들은 허용된 경로들로 서로 연결된다. 간단한 이미지 압축예의 문제에서, 이미지의 좌측에 대해 1비트 양자화기 및 2비트 양자화기를 나타내는 노드는 연결되지 않고, 좌측에 대해 1비트 양자화기를 나타내는 노드는 우측에 대해 영자화기들을 나타내는 양 노드들에 연결될 것이다. A* 알고리즘은 비유적으로 각 노드에서 모든 이웃한 노드들로 한 단계 나와 지금까지의 단계들로부터 비롯된 총 왜곡 및 필요한 총 비트들을 계산한다. 이것을, 이웃하는 노드들을 전개하는 것 혹은 최소(왜곡) 코스트의 웨이브들을 전파시키는 것이라 한다. 총 왜곡 값들은 힙(heap)으로서 알려진 컴퓨터 소프트웨어 요소에 의해 관리된다. 힙은 총 왜곡 값들을 분류하여 최소의 왜곡이 항시 힙의 상단에 있게 한다. 일단 모든 이웃한 노드들이 전개되었으면, 알고리즘은 필요한 총 비트 수가 문제에 의해 부과된 범위보다 작다면, 힙의 상단에 있는 값에 대응하는 노드로 이동한다(즉, 최소 왜곡을 유발하는 선택의 가장 낮은 노드). 총 비트 수가 더 크다면, 다음 "힙의 상단"의 노드가 선택된다. 이어서 알고리즘은 모든 새로운 이웃들을 전개시켜, 현재 노드에 의해 규정된 양자화 값에 대응하는 왜곡을 포함하는 누적된 왜곡을 힙에 저장한다. 이어서 힙의 상단에 있는 노드를 선택하여 이의 이웃들을 전개시킨다. 이것은 현재의 노드가 이전에 전개되었던 노드임을 의미할 수도 있고 혹은 현재의 노드가 첫회의 전개에서 선택된 노드를 따르는 경로를 밀어낼 것임을 의미한다. 이 프로세스는 종지 노드에 도달할 때까지 계속되고, 종지 노드 지점에서 프로세스는 완료된 것으로 선언될 수 있다. 이 잠정적인 최종의 결과는 통상 최적에 가까운 경로이며 시간제약된 문제에서 새로운 경로들을 전개하는데 있어서 시간이 충분하지 않을 경우엔 최종의 결과로 사용될 수 있다. 그렇지 않다면, 근 최적은 제쳐두고, 아마도 현 최적 경로보다 낮은 왜곡을 가진 또 다른 경로가 발견될 때까지 추가 경로들이 전개될 수 있다. 일단 힙 상단의 왜곡 값이 목적지에서의 근 최적 왜곡과 동일하면 경로엔 전혀 향상은 없을 수 있다. 따라서, 고갈적인 탐색은 필요하지 않으면서도 최적의 경로가 확실히 발견될 수 있다.
전술한 통상의 이미지 압축 문제에서, 노드에 대응하는 왜곡은 이 외는 다른 어떤 노드가 경로를 따른 지점으로서 선택되었는지 여부에 의해 영향을 받지 않았다. 보다 실질적인 레이트 왜곡 압축 문제들에서는 의존성이 늘상 일어난다. 이러한 양자화기들을 의존성 양자화기들이라 한다. 예를 들면, "양자화기"라는 용어는 본 명세서에서 크기 스케일들의 양자화만이 아니라 이미지 혹은 비디오 시퀀스의 데이터를 부호화하는 과정에서 이 이미지 혹은 비디오 시퀀스를 모델링하는데 사용되는 모든 방법들을 지칭한다. 따라서, 예를 들면, 움직임 보상 모델링에서 이미지 혹은 비디오 프레임의 쿼드 트리 분해의 선택을 지칭할 수도 있다. 또한, 물론, 본 발명은 경로 계획을 규정하는 양자화 문제가 어떤 특징을 갖는 한, 이미지들 및 비디오 시퀀스들을 모델링하는 여러 가지 방법들을 고찰한다. 이들은 노드들간에 허용된 천이들을 갖는 노드들로 구성된 방향성 그래프에 의해 경로 공간이 규정된다는 것과, 천이들에 대해 코스트가 계산될 수 있다는 것과, 코스트가 단조로 누적되고(증가 혹은 감소로) 혹은 천이들 간에 제로로 남아있으며 코스트는 평가된 이전 노드들의 함수이다라는 것을 포함한다. 이들 요건이 만족되면, A* 알고리즘이 구현될 수 있고 전술한 결과들이 자동으로 얻어진다.
본 발명을 보다 완전하게 이해할 수 있게 다음의 도면들을 참조하여, 바람직한 실시예에 따라 본 발명을 설명한다. 도면에서, 도시된 상세는 예시적인 것이고 본 발명의 바람직한 실시예의 예시적인 설명을 위한 것일 뿐이고, 본 발명의 원리 및 개념적인 면들의 설명에 가장 유용하고 쉽게 이해될 수 있을 것으로 생각되는 것을 제공하기 위해서 제시된 것이다. 이러한 면에서, 본 발명의 기본적인 이해에 필요한 것보다는 상세하게 본 발명의 구조적인 상세를 보일려고 하지 않았으며 도면에 취해진 설명은 이 기술에 숙련된 자들에게 본 발명의 몇 가지 형태들을 실제로 실현할 수 있는 방법을 명백하게 한다.
도 1은 발명의 요약에서 다룬 통상의 예에 의한 그래프(90)를 도시한 것이다. 블록들(10, 20, 30, 40)은 노드들을 나타낸다. 블록(10)은 좌측의 비트들을 부호화하는데 사용되는 1비트 양자화기의 선택을 나타내며 블록(20)은 우측에 비트들을 부호화하는데 사용되는 1비트 양자화기의 선택을 나타낸다. 블록(30)은 좌측의 비트들을 부호화하는데 사용되는 2비트 양자화기의 선택을 나타내며 블록(40)은 우측에 비트들을 부호화하는데 사용되는 2비트 양자화기의 선택을 나타낸다. 시작 노드(S) 및 종지 노드(E)는 각각 최적화 문제의 시작 노드 및 종지 노드를 표시하기 위해 규정된 것이다. 10 내지 40, S 및 E를 포함하는 각각의 노드는 일부 이 기술에서 "천이"이라고도 지칭하는 방향성 선분에 의해 다른 노드에 연결된다. 천이들(45, 50, 55, 60, 65, 70, 75)을 나타내는 선들은 화살표들로 나타낸 바와 같이 좌측에서 우측 방향들로만 진행이 허용되게 한 방향으로 되어 있다. 각 노드(10-40)는 왜곡 코스트에 관계된다. 발명의 요약에 기술된 바와 같이, 각 노드(10-40)는 대응하는 이미지 부분(L, R)을 부호화하기 위한 비트 요건에도 관계된다. 지금까지 필요로 된 총 비트들은 노드 내에 저장된다.
그래프(90) 및 힙(도시없음)을 초기화한 후에(제로 왜곡(코스트) 및 제로 "비트 요건"을 갖는 시작 노드(S)에서), A* 알고리즘은 이웃한 노드들(10, 30) 각각에 의해 시작한다. 노드에 대한 총 비트 요건이 명기된 상한 미만이면, 총 왜곡( 및 노드에의 포인터)은 보다 낮은 총 왜곡에 대응하는 것이 상위로 올라가는 힙에 저장된다. 보다 낮은 왜곡에 대응하는 노드가 노드 10이라면, 이의 이웃한 노드들(20, 40)은 다음으로 전개될 것이며, 즉 왜곡 및 비트 레이트들은 노드 10에 대응하는 기본 왜곡 및 비트 레이트에 계산되어 부가되는 것에 대응한다. 따라서, 노드(20)는 노드들(10, 30) 및 S의 총합인 왜곡을 가질 것이며 노드(40)도 마찬가지이다. 또한, 비트 레이트들의 총합들도 계산될 것이다. 이들 모두가 비트 레이트 버짓 미만이면, 총 왜곡들의 값들은 힙에 저장될 것이다. 그렇지 않다면, 비트 버짓 내의 경로에 대응하는 왜곡 값만이 힙에 저장될 것이다. 각각의 노드 내에는, 최상의 "패런트(parent)" 노드에의 포인트가 유지된다. 패런트는 최소의 코스트를 부여한 노드이다. 이 예에서, 패런트들은 각 노드의 좌측으로 가게 되어 있고, 81 내지 85로 표시되어 있다. 최종의 경로는 E에서 S로 거슬러 올라간 후 반대로 가서 최적의 경로를 제공한다. 두 개의 최종 결과들이 비트 버짓 내에 있다고 할 때, 이들 두 개의 최종 결과들 중 더 낮은 것이 잠정적인 최적화된 경로가 될 것이다.
최적화 문제는 압축 조작에 있어 시간적 제한을 가질 수 있다고 한바 있다. 제한 시간 내에 남은 시간이 있다면, 이 총 왜곡이 E에서의 왜곡보다 작을 경우 노드(30)의 이웃이 전개될 수 있다. 가정에 의한 예에서, 천이들(70, 80)에 대응하는 레이트 및 왜곡은 천이들(50, 75)에 대한 천이들과 동일하지만, 그러나 일반적으로 이것은 압축 문제에 따라서는 그렇지 않을 수도 있다. 프로세스는 노드(10)에 대해서 계속되고 그 결과로 노드들(20, 40)에서의 값들은 향상되지 않으므로 이들은 힙에 더해지지 않는다. 이 예에선 노드(40)를 더 낮은 것이라 하고, 보다 낮은 총 왜곡 노드가 다음에 전개할 것이다. 60이 천이 코스트(제로)를 갖기 때문에, E에 도달한다. 이것은 탐색 종료를 나타내는 것일 수 있다. 힙 내에 노드(40)보다 작은 값들을 갖는 다른 값들이 있다면, 탐색은 더욱 진행할 수도 있을 것이다. 이 경우에, 종지 노드가 우선하게 되고 천이들(55, 60)은 어떠한 증분되는 레이트 혹은 왜곡에도 연관되지 않으므로 탐색은 곧바로 E로 가서 노드(20) 혹은 (40)에 도달하게 됨에 유의한다. 본 경우에는 두 개의 가능한 시작 천이들 각각에 대해 가능한 전개가 단지 하나가 있지만, 행해질 수 있는 한, 많은 탐색들 후에, 최소의 총 왜곡 코스트를 제공하는 패런트 노드가 선택된다.
여기서 완전히 개시된 것으로 하여 참고로 여기 포함시키는 "Method and device for optimal bit allocation between different sources of information in digital video compression" 명칭의 미국특허 5,778,192에 개시된 도 2는, 비디오 압축에서 확인된 최소 코스트 경로 탐색 문제를 예시한 것이다. 도 2는 레벨 3까지 전개되게 하는 쿼드트리 구조를 사용하여 블록이 분할된 32화소 x 32화소의 이미지 블록에 대해 허용된 양자화기들의 선택들을 나타내는 복수 레벨의 트렐리스를 나타낸 것이다. 즉, 8x8, 16x16, 및 32x32의 세그먼트들이 가능하다. 쿼드트리구조는 흰색의 오벌(oval)들(115, 120, 125)에 해당하고, 그 각각은 흑색의 점들로 표시된 한 세트의 노드들, 예를 들면 110, 130, 140을 지칭한다. 도면이 지나치게 번잡해지지 않도록 오벌들 및 노드들 중 단지 대표적인 것들에만 참조부호를 표시하였음에 유의한다. 각 세트에 단지 두 개의 노드들(110, 111, 112, 130, 140)을 나타내었으나, 개수는 임의의 수의 노드들일 수 있고, 그 각각은 서로 다른 레벨들의 개개의 블록들에 대해 용인되는 상태값들의 수에 대응한다. 즉, 각 노드는 비디오 스트림의 특정한 면에 대한 양자화기의 선택에 대응한다. 상기 특허에서 다루어진 방법은 움직임 보상 방법이다. 이 방법에서, 보조 노드들, 시작(S), 및 종지(Z)는 움직임 벡터들의 미분 펄스 부호 변조(DPCM)를 시작하여 레이트/왜곡 관점에서 가장 작은 총 코스트를 가진 경로를 선택하는데 사용된다.
상기 특허에서 다루어진 바와 같이, 목적은 최소의 총 레이트/왜곡 코스트에 대응하는 트렐리스를 통해 경로를 확인하는 것이다. 경로는 허용된 천이들, 예를 들면, 100, 101, 102로 이루어져야 한다. 이 결과로 각종의 서로 상이한 종류의 데이터간에 사용가능한 비트 버짓을 할당하게 되는 문제로 된다. 전술한 특허로부터의 예에서, 특정한 종류의 압축 방법에 연루된 3가지 중요한 유형들의 데이터, 즉 분할, 움직임 벡터들, 및 예측 에러가 있다. 본 발명의 이해의 목적상, 많은 압축 방법들을 트렐리스로서 나타낼 수 없을지라도 많은 압축 방법들이 이러한 그래프 탐색 문제들을 야기하기 때문에 압축 방법의 상세는 중요하지 않다. 복잡한 최적화 문제는, 특정 유형의 데이터에 대한 1비트를 폐기함으로써 겪게 되는 왜곡량이 일부 다른 유형의 데이터를 나타내는 또 다른 비트를 폐기함으로써 겪게 되는왜곡량과 동일하지 않다는 사실에 의해 생기는 어려움 때문에 기인한다. 기본적인 목적은 레이트 왜곡 면에서 소정의 프레임 혹은 비디오 시퀀스를 최적으로 부호화하는 것이다. 즉, 소정의 부호화 방식의 비트 버짓이 주었을 때, 최적으로 비트들을 할당함으로써 최소의 가능한 왜곡으로 될 것이므로 그 반대도 성립한다. 본 발명의 목적상, 부호화 방식의 상세 및 이에 기인한 그래프 탐색 문제의 상세는 그래프 탐색 문제가 다음의 특징을 갖는 한 중요하지 않다.
경로 공간의 토폴로지는 한 세트의 노드들간의 일부 허용되는 천이들을 가진 이들 한 세트의 노드들로 구성되는 방향성 그래프를 규정한다. 일부 노드들은 다른 노드들로부터는 도달할 수 없을 수도 있고 순환 접속이 가능할 수 있다.
최적화할 코스트는 각각의 천이마다 규정될 수 있다. 코스트는 네가티브이어서는 안 된다.
각 노드에서의 코스트는 경로 내 포함된 이전의 노드들의 함수일 수 있다.
코스트는 단조로 증가 혹은 감소해야 한다.
시작 및 적어도 하나의 목적지 혹은 종지 상태가 있어야 하는데, 그러나 이들은 전술한 간단한 예에서처럼 임의로 정해질 수 있다.
이제 도 3을 참조하면, 먼저 시작 노드(S)의 이웃이 전개된다. 이것은 최소 코스트 웨이브의 계단식 전파에서 제1 단계이다. 비트 레이트 및 왜곡은 시작 노드(S)의 이웃을 둘러싸고 있는 각각의 천이(147, 148, 145, 146, 149, 151)마다 계산된다. 모든 왜곡 값들은 힙(5)에 저장된다. 레이트 또한 계산되며, 각 노드에 저장된다. 각 노드에서 시작으로의 포인터 또한 부가된다. 노드(130)로의천이(145)가 비트 레이트 상한 하에 유지된 최소의 왜곡 코스트에 대응한다고 할 때, 노드(130)는 도 4에 도시한 바와 같이 노드(130)의 이웃이 전개되게 힙의 상부로 올라갈 것이며 코스트들 및 레이트들이 새로운 세트의 천이들(173) 각각마다 계산된다. 또한, "최상의 경로" 패런트도 확인된다. 이 도면에서, 도시를 간단하게 하기 위해서 패런트 화살표들은 생략하였다. 이 프로세스는 도 5에 도시한 바와 같이, 종지 노드(Z)에 도달하는 최종의 최적화된 경로(210)가 발견될 때까지 계속된다. 다시, 프로세스는 소정의 시점에서 다른 제약들이 방해하지 않는다면 보다 포괄적인 최적의 것을 발견하기 위해서 남아있는 최저 총 코스트 노드부터 시작하여 계속될 수 있다. 그것에서 총 코스트는 Z의 것보다는 적지 않다.
도 6은 데이터 스트림에 대한 프로세스들을 구현하는 장치를 도시한 것이다. 데이터 소스(310)는 본 발명에 따라 양자화기들을 최적화하는 압축 알고리즘을 구현하도록 프로그램된 프로세서(300)에 데이터 스트림을 인가한다. 이어서 프로세서는 압축된 비디오 데이터 스트림(320)을 출력한다.
도 7은 압축 프로세스에 시간 제한 혹은 처리 자원 제한을 부과하는 환경에서 데이터 스트림이 압축되는 프로세스를 도시한 흐름도이다. 단계 S10에서 새로운 세트의 데이터를 받아들인다. 예를 들면, 비디오 프레임이 단계 S10에서 처리를 위해 받아들여질 수도 있을 것이다. 이어서 단계 S15에서 타이머(혹은 처리 자원 수량자(quantifier)) 작동이 개시된다. 이어서, 단계 S20에서 타이머는 시간 만료에 대해 체크되고 시간이 남아있다면(혹은 처리 자원들), 단계 S25에서 전술한 최적 경로 알고리즘에 따라 새로운 최적 경로가 전파된다. 이어서 흐름은 단계S10에서 새로운 데이터 세트를 입력하도록 되돌아간다. 단계 S20에서 타이머 시간이 종료되었으면, 단계 S25의 각 반복에서 발견된 후보 경로들 중 최상의(최소 코스트) 경로가 단계 S30에서 확인된다. 이어서, 단계 S35에서, 데이터는 단계 S30에서 확인된 양자화기들에 따라 압축되고, 압축된 데이터는 출력되며, 프로세스는 다시 단계 S10으로 흐른다.
본 발명은 전술한 예시된 실시예들의 상세로 한정되지 않으며 본 발명은 이의 정신 혹은 근본적인 속성들에서 일탈함이 없이 다른 구체적인 형태들로 실현될 수 있음을 이 기술에 숙련된 자들에겐 명백할 것이다. 그러므로, 본 실시예들은 모든 면에서 예시적인 것이고 제한적인 것은 아닌 것으로 간주되어야 하고 본 발명의 범위는 전술한 기재내용이 아닌 첨부한 청구범위에 의해 나타나 있고 청구범위의 등가물의 의미 및 범위 내의 모든 변경들은 본 발명에 포괄되게 한 것이다.

Claims (22)

  1. 비디오 혹은 이미지를 압축하는 방법에 있어서,
    데이터 압축 프로세스의 최적 비트 할당 문제를 모델링하는 구성 공간을 규정하는 단계로서, 상기 구성 공간은 노드들 및 상기 노드들 간의 천이들을 규정하고, 상기 노드들은 데이터 스트림의 각각의 특징들에 대한 각각의 양자화기들의 선택에 대응하며, 경로가 한 세트의 천이들에 의해서 규정되고 상기 천이들 각각은 상기 노드들의 각각의 노드들에서 상기 세트중 또다른 하나에 접속되며, 상기 경로는 시작 노드 및 종지 노드를 결합하고 상기 세트의 상기 천이들의 코스트들의 합에 대응하는 총 코스트를 갖는, 상기 구성 공간을 규정하는 단계;
    최저 발견된 코스트의 제1 경로가 상기 시작 노드 및 상기 종지 노드를 결합하는 상기 구성 공간을 통해 식별되게, 공간 변화 메트릭에 응답하여, 버딩(budding)에 의해 상기 구성 공간을 통해서 최소 코스트 웨이브들을 전파하는 단계; 및
    상기 데이터 압축 프로세스에 의해 압축되도록 제1 세트의 데이터에, 상기 제1 경로 상에 놓이는 상기 노드들에 대응하는 양자화기들을 적용하는 단계를 포함하는 압축 방법.
  2. 제 1 항에 있어서,
    최저 발견된 코스트의 제2 경로가 식별되게 상기 전파하는 단계를 반복하고상기 데이터 압축 프로세스에 의해 압축되도록 제2 세트의 데이터를 압축하는데 상기 적용하는 단계를 반복하는 단계를 더 포함하는 압축 방법.
  3. 비디오 혹은 이미지 압축 방법에 있어서,
    데이터 압축 프로세스의 최적 비트 할당 문제를 모델링하는 구성 공간을 규정하는 단계로서, 상기 구성 공간은 노드들 및 상기 노드들 간의 천이들을 규정하고, 상기 노드들은 데이터 스트림의 각각의 특징들에 대한 각각의 양자화기들의 선택에 대응하며, 경로가 한 세트의 천이들에 의해서 규정되고 상기 천이들 각각은 상기 노드들의 각각의 노드들에서 상기 세트중 또다른 하나에 접속되며, 상기 경로는 시작 노드 및 종지 노드를 결합하고 상기 세트의 상기 천이들의 코스트들의 합에 대응하는 총 코스트를 갖는, 상기 구성 공간을 규정하는 단계;
    최저 발견된 코스트의 제1 경로가 상기 시작 노드 및 상기 종지 노드를 결합하는 상기 구성 공간을 통해 식별되게, 공간 변화 메트릭에 응답하여, 버딩(budding)에 의해 상기 구성 공간을 통해서 최소 코스트 웨이브들을 전파하는 단계;
    최저 발견된 코스트의 제2 경로가 식별되게 상기 전파하는 단계를 반복하는 단계; 및
    상기 제1 및 제2 경로들의 상기 코스트들을 비교하고, 상기 데이터 압축 프로세스에 의해 압축되도록 입력 데이터를 압축하는데, 상기 제1 및 제2 경로들 중 더 낮은 코스트 경로 상에 놓이는 상기 노드들에 대응하는 상기 양자화기들을 적용하는 단계를 포함하는 압축 방법.
  4. 제 3 항에 있어서,
    상기 반복하는 및 상기 비교하는 단계는 최적의 최소 코스트 경로를 발견하기 위한 허용된 시간 간격에 근거하여 조건적으로 수행되는 압축 방법.
  5. 제 3 항에 있어서,
    상기 입력 비디오 데이터는 비디오 데이터를 포함하고, 상기 코스트는 상기 비디오 데이터의 이미지들의 왜곡 및 상기 적용하는 단계로부터 결과로 얻어지는 데이터 스트림의 비트 레이트 중 하나인 압축 방법.
  6. 데이터 압축 장치에 있어서,
    원(raw) 데이터 스트림을 수신하여 압축된 데이터 스트림을 출력하도록 접속된 프로세서(300)를 포함하고;
    상기 프로세서는 데이터 압축 프로세스의 최적 비트 할당 문제를 모델링하는 구성 공간의 노드들을 버딩함으로써 최적의 양자화기들을 결정하도록 프로그램되고, 상기 노드들은 데이터 스트림의 각각의 특징들에 대한 각각의 양자화기들의 선택에 대응하며, 경로가 한 세트의 천이들에 의해 규정되고 상기 천이들 각각은 상기 노드들의 각각의 노드들에서 상기 세트의 또다른 하나에 접속되고, 상기 경로는 시작 노드 및 종지 노드를 결합하며 상기 세트의 상기 천이들의 코스트들의 합에대응하는 총 코스트를 갖고;
    상기 버딩은 최저 발견된 코스트의 경로가 상기 시작 노드와 상기 종지 노드를 결합하는 상기 구성 공간을 통해서 확인되게 공간 변화 메트릭에 응답하여 상기 구성 공간을 통해 최소 코스트 웨이브들을 전파하는 것을 포함하며;
    상기 프로세서는 상기 원 데이터를 압축함에 있어 최소 코스트의 상기 경로 상에 놓이는 상기 노드들에 대응하는 상기 양자화기들을 적용하도록 프로그램되는 데이터 압축 장치.
  7. 데이터 압축 장치에 있어서,
    원 데이터 스트림을 수신하여 압축된 데이터 스트림을 출력하도록 접속된 프로세서(300)를 포함하고,
    상기 프로세서는 데이터 압축 프로세스의 최적 비트 할당 문제를 모델링하는 구성 공간의 노드들을 버딩함으로써 최적의 양자화기들을 결정하도록 프로그램되고, 상기 노드들은 데이터 스트림의 각각의 특징들에 대한 각각의 양자화기들의 선택에 대응하며, 경로가 한 세트의 천이들에 의해 규정되고 상기 천이들 각각은 상기 노드들의 각각의 노드들에서 상기 세트의 또다른 것에 접속되고, 상기 경로는 시작 노드 및 종지 노드를 결합하며 상기 세트의 상기 천이들의 코스트들의 합에 대응하는 총 코스트를 갖고;
    상기 버딩은 최저 발견된 코스트의 제 1 경로가 상기 시작 노드와 상기 종지 노드를 결합하는 상기 구성 공간을 통해 식별되게 공간 변화 메트릭에 응답하여 상기 구성 공간을 통해 최소 코스트 웨이브들을 전파하는 것을 포함하며;
    상기 프로세서는, 최저 발견된 코스트의 제2 경로를 식별하고, 상기 제1 및 제2 경로들의 상기 코스트들을 비교하여, 상기 원 데이터를 압축함에 있어 상기 제1 및 제2 경로들중 더 낮은 코스트 경로상에 놓이는 상기 노드들에 대응하는 상기 양자화기들을 적용하도록 추가의 코스트 웨이브들을 또한 전파하도록 프로그램되는, 데이터 압축 장치.
  8. 디지털 데이터 압축에서 최적의 레이트/왜곡 수행을 위해 비트들을 할당하는 방법에 있어서,
    상기 디지털 데이터 압축에 따라서 데이터 스트림의 부분들의 세트의 각각에 대해 양자화기들의 상호접속된 선택들의 세트를 결정하는 단계;
    상기 선택들중 시작 선택을 규정하고 모든 필요한 양자화기들을 규정하는 경로가 발견될 때까지 상기 시작 선택으로 시작하여 최소 코스트 웨이브들을 전파하는 단계; 및
    상기 경로에 의해 규정된 상기 양자화기 선택들중 적어도 일부에 기초하여 데이터 압축을 구현하는 단계를 포함하는 비트 할당 방법.
  9. 제 8 항에 있어서,
    상기 결정 단계는 비디오 데이터 스트림의 부분들의 세트의 각각에 대해 양자화기들의 상호접속된 선택들의 세트를 결정하는 단계를 포함하는 비트 할당 방법.
  10. 제 9 항에 있어서,
    상기 양자화기들은 비디오 이미지의 쿼드트리 분해를 포함하는 비트 할당 방법.
  11. 제 9 항에 있어서,
    상기 양자화기들은 움직임 벡터 필드를 나타내기 위한 양자화기를 포함하는 비트 할당 방법.
  12. 제 8 항에 있어서,
    상기 양자화기들은 상기 데이터 스트림내의 값들 간의 차이들을 양자화하기 위한 양자화기를 포함하는 비트 할당 방법.
  13. 디지털 데이터 압축에서 최적의 레이트/왜곡 수행을 위해 비트들을 할당하는 장치에 있어서,
    상기 디지털 데이터 압축에 따라서 데이터 스트림의 부분들의 세트의 각각에 대해 양자화기들의 상호접속된 선택들의 세트를 결정하도록 데이터 스트림에 연결되고 프로그램된 프로세서를 포함하고,
    상기 프로세서는 상기 선택들중 시작 선택을 규정하고 모든 필요한 양자화기들을 규정하는 경로가 발견될 때까지 상기 시작 선택으로 시작하여 최소 코스트 웨이브들을 전파하도록 또한 프로그램되고;
    상기 프로세서는 상기 경로에 의해 규정된 상기 양자화기 선택들 중 적어도 일부에 기초하여 데이터 압축 프로세스를 구현하도록 또한 프로그램되는 비트 할당 장치.
  14. 제 13 항에 있어서,
    상기 데이터 스트림은 비디오 데이터 스트림인 비트 할당 장치.
  15. 제 14 항에 있어서,
    상기 양자화기들은 비디오 이미지의 쿼드트리 분해를 포함하는 비트 할당 장치.
  16. 제 14 항에 있어서,
    상기 양자화기들은 움직임 벡터 필드를 나타내기 위한 양자화기를 포함하는 비트 할당 장치.
  17. 제 13 항에 있어서,
    상기 양자화기들은 상기 데이터 스트림내의 값들 간의 차이들을 양자화하기 위한 양자화를 포함하는 비트 할당 장치.
  18. 디지털 데이터 압축에서 최적의 레이트/왜곡 수행을 위해 비트들을 할당하는 장치에 있어서,
    상기 디지털 데이터 압축에 따라서 데이터 스트림의 부분들의 세트의 각각에 대해 양자화기들의 상호접속된 선택들의 세트를 결정하도록 데이터 스트림(310)에 연결되고 프로그램된 프로세서(300)를 포함하고,
    상기 프로세서는 상기 선택들중 시작 선택을 규정하고 모든 필요한 양자화기들을 규정하는 제1 경로가 발견될 때까지 상기 시작 선택으로 시작하여 최소 코스트 웨이브들을 전파하도록 또한 프로그램되고;
    상기 프로세서는 모든 필요한 양자화기들을 규정하는 제2 경로가 발견될 때까지 최저 코스트 미완성 경로로 시작하여 최소 코스트 웨이브들을 전파하도록 또한 프로그램되고;
    상기 프로세서는 상기 제1 및 제2 경로들중 최저 코스트 경로에 의해 규정된 상기 양자화기 선택들중 적어도 일부에 기초하여 데이터 압축 프로세스를 구현하도록 또한 프로그램되는 비트 할당 장치.
  19. 제 18 항에 있어서,
    상기 데이터 스트림은 비디오 데이터 스트림인 비트 할당 장치.
  20. 제 19 항에 있어서,
    상기 양자화기들은 비디오 이미지의 쿼드트리 분해를 포함하는 비트 할당 장치.
  21. 제 19 항에 있어서,
    상기 양자화기들은 움직임 벡터 필드를 나타내기 위한 양자화기를 포함하는 비트 할당 장치.
  22. 제 18 항에 있어서,
    상기 양자화기들은 상기 데이터 스트림내의 값들 간의 차이들을 양자화하기 위한 양자화기를 포함하는 비트 할당 장치.
KR1020027016392A 2001-03-30 2002-03-20 고속 로버스트 데이터 압축 방법 및 시스템 KR20030014680A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/823486 2001-03-30
US09/823,486 US6909746B2 (en) 2001-03-30 2001-03-30 Fast robust data compression method and system

Publications (1)

Publication Number Publication Date
KR20030014680A true KR20030014680A (ko) 2003-02-19

Family

ID=25238901

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027016392A KR20030014680A (ko) 2001-03-30 2002-03-20 고속 로버스트 데이터 압축 방법 및 시스템

Country Status (6)

Country Link
US (1) US6909746B2 (ko)
EP (1) EP1378125A2 (ko)
JP (1) JP2004532558A (ko)
KR (1) KR20030014680A (ko)
CN (1) CN1460382A (ko)
WO (1) WO2002080570A2 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100612829B1 (ko) * 2001-07-07 2006-08-18 삼성전자주식회사 그래픽 애니메이션 데이터의 키 부호화 장치와 그 방법
AU2002343740A1 (en) * 2001-11-16 2003-06-10 California Institute Of Technology Data compression method and system
US7460722B2 (en) * 2002-01-11 2008-12-02 Canon Kabushiki Kaisha Encoding of digital data with determination of sample path
US7971735B2 (en) * 2006-02-16 2011-07-05 Fasteners For Retail, Inc. Merchandising system
US20080161941A1 (en) * 2006-12-29 2008-07-03 Motorola, Inc. Graph-theoretic technique of analyzing and optimizing policy deployment
US8902972B2 (en) * 2008-04-11 2014-12-02 Qualcomm Incorporated Rate-distortion quantization for context-adaptive variable length coding (CAVLC)
US8379851B2 (en) * 2008-05-12 2013-02-19 Microsoft Corporation Optimized client side rate control and indexed file layout for streaming media
US8290298B2 (en) * 2009-01-20 2012-10-16 Mitsubishi Electric Research Laboratories, Inc. Method for temporally editing videos
US8290297B2 (en) * 2009-01-20 2012-10-16 Mitsubishi Electric Research Laboratories, Inc. Method for editing images and videos

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3853616T2 (de) * 1987-11-20 1995-11-30 Philips Electronics Nv Verfahren und Gerät zur Wegplanung.
US5103306A (en) * 1990-03-28 1992-04-07 Transitions Research Corporation Digital image compression employing a resolution gradient
US5825929A (en) * 1995-10-05 1998-10-20 Microsoft Corporation Transformation block optimization method
US5778192A (en) 1995-10-26 1998-07-07 Motorola, Inc. Method and device for optimal bit allocation between different sources of information in digital video compression
TW364107B (en) 1996-03-25 1999-07-11 Trw Inc Method and system for three-dimensional compression of digital video signals
KR100215451B1 (ko) 1996-05-29 1999-08-16 윤종용 임의형태 물체를 포함한 동화상의 부호화 및 복호화시스템
US6252989B1 (en) * 1997-01-07 2001-06-26 Board Of The Regents, The University Of Texas System Foveated image coding system and method for image bandwidth reduction
FR2778039B1 (fr) 1998-04-27 2000-07-21 Canon Kk Codage et decodage de signal numerique

Also Published As

Publication number Publication date
JP2004532558A (ja) 2004-10-21
US6909746B2 (en) 2005-06-21
US20020141497A1 (en) 2002-10-03
EP1378125A2 (en) 2004-01-07
CN1460382A (zh) 2003-12-03
WO2002080570A3 (en) 2003-02-06
WO2002080570A2 (en) 2002-10-10

Similar Documents

Publication Publication Date Title
KR101133321B1 (ko) 비트스트림 파티션을 이용한 비디오 압축 방법
US5150209A (en) Hierarchical entropy coded lattice threshold quantization encoding method and apparatus for image and video compression
Ramstad Shannon mappings for robust communication
JP3725250B2 (ja) 輪郭符号化方法
Chen et al. Rate-distortion optimal motion estimation algorithms for motion-compensated transform video coding
JPH09507347A (ja) 4分木構造walsh変換ビデオ/イメージ符号化
CN112203093A (zh) 一种基于深度神经网络的信号处理方法
KR100922510B1 (ko) 영상의 부호화 및 복호화 방법, 장치 및 그 애플리케이션
KR20030014680A (ko) 고속 로버스트 데이터 압축 방법 및 시스템
JPH11187407A (ja) 画像符号化装置および画像符号化方法、提供媒体、画像復号装置および画像復号方法、並びに学習装置および学習方法
Venkat et al. Lossless video compression using bayesian networks and entropy coding
KR100362969B1 (ko) 영상 압축 시스템에 있어서 템플릿 패턴 코딩을 이용한가변 블록 사이즈 움직임 보상 장치
JP3075049B2 (ja) 画像符号化装置
KR100613106B1 (ko) 나무구조벡터양자화(tsvq)에 기반하는 부호화를 위한 인덱스할당방법
KR100216600B1 (ko) 영상 신호 벡터 양자화기를 위한 다중 부호어 전송 방법
KR0178207B1 (ko) 벡터 부호화 시스템에서의 고속 패턴 매칭 장치 및 그 방법
Chen et al. Variable Block-size Image Coding by Resource Planning
EP0527947A1 (en) A hierarchical entropy coded lattice threshold quantization encoding method and apparatus for image and video compression
Vasconcelos Library-based image coding using vector quantization of the prediction space
KR970003105B1 (ko) 적응적인 패턴 양자화를 이용한 영상 부호화 장치 및 양자화 패턴 선정 방법
KR100207388B1 (ko) 적응적인 벡터 양자화를 이용한 영상 부호화 시스템
KR20030083916A (ko) 양자화계수를 결정하는 방법
KR100203286B1 (ko) 트리 소거 알고리즘을 이용한 가변블럭 운동 추정 및 보상 방법과 그 장치
CN115880379A (zh) 语义可伸缩图像编码方法、系统、设备及存储介质
Lai et al. Coding of image sequences using variable size block matching and vector quantization with gray-level segmentation and background memory

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid