JP2000138934A - ファイルサイズが制限されたjpeg符号化装置、方法および記録媒体 - Google Patents

ファイルサイズが制限されたjpeg符号化装置、方法および記録媒体

Info

Publication number
JP2000138934A
JP2000138934A JP11307669A JP30766999A JP2000138934A JP 2000138934 A JP2000138934 A JP 2000138934A JP 11307669 A JP11307669 A JP 11307669A JP 30766999 A JP30766999 A JP 30766999A JP 2000138934 A JP2000138934 A JP 2000138934A
Authority
JP
Japan
Prior art keywords
array
coefficients
frequency
bits
equal
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
JP11307669A
Other languages
English (en)
Inventor
Ratnaker Biresh
ラトナカー ヴィレッシュ
Victor Ivashin
アイバシン ビクター
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Publication of JP2000138934A publication Critical patent/JP2000138934A/ja
Withdrawn legal-status Critical Current

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/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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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
    • 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/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream

Abstract

(57)【要約】 【課題】 所定のしきい値よりも小さく、ジグザグスキ
ャンにおいて所定の番号よりも後に出現する係数を0に
設定することにより、現存するJPEGファイルまたは
DCT係数の大きさを減少させて所定のビット量におさ
める技術である。 【解決手段】 カットオフ番号は賢い節減値計算法で選
択される。この方法は、Savings[1]、…、Savings[63]
の節減値の配列に適切な節減値を埋めることで実装され
る。Savings[n]の値は、まさに、n+1からnまでしきい
値と比較されて処理されるカットオフ番号を減らすこと
で節減できるビット数である。0ではない係数が0にさ
れたとき、0の二つの連なり(0でない係数の前方と後
方と)が、単一の長い0の連なりに複合されることによ
りビットが節減される。節減されるビットの正確な数
は、前と後の0の連なりを符号化するのに必要なビット
を加算し、複合した0の連なりを符号化するのに必要な
ビットを減算することで計算できる。ある特別な場合
(0が16個以上連なる、ブロックの最後という状態)
は、計算の際、考慮しなければならない。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は一般的には画像圧縮
の技術に関し、特に、情報の欠落が最小限となるよう
に、すでに圧縮されたファイルの大きさを、さらに減少
させて、所定のビット量におさめる技術に関する。
【0002】
【従来の技術】JPEG(Joint Photographic Experts
Group)のような圧縮標準の出現により、多くのデジタ
ル画像システムおよび応用製品がJPEG圧縮形式にお
いてのみコンテンツを生成し保全するようになってい
る。例えば、Epson PhotoPC 600、Kodak DC-10などの多
くのデジタル静止画像カメラ(DSC)においては、カ
メラのとらえた画像はすぐにカメラ内部で圧縮され、カ
メラの記録システムにJPEGファイルとして(対応す
る微小の画像とともに)記録される。カメラ内部の制約
により、微小な画像(これもまたJPEG形式)はある
特定の大きさ未満になるように制限される。したがっ
て、カメラによる大きさの制限を超えた画像は、大きさ
を小さくしなければならない。
【0003】現状の技術においては、カメラに基づいた
画像圧縮の技術によれば、係数の値に関係なく高周波の
係数のいくらかを単純に0に設定する手順を圧縮処理に
取り込むことで、とらえた画像の大きさを小さくしカメ
ラの制限に適合するようにする。高周波の係数は低周波
の係数に比べて重要度の低い情報を搬送している。よっ
て、高周波の係数を0にしても、その係数の大きさが大
きいときを除けば、通常は問題にはならない。高周波の
係数の大きさが大きいときは、高周波の係数を0にする
と重要な情報が失われてしまう。
【0004】圧縮中に量子化されたいくつかの係数の大
きさを小さくして圧縮画像の大きさを小さくするための
他の技術が米国特許5754696号に提案されてい
る。ジグザグスキャンの順序における量子化されたDC
T係数の各ブロックに関して、本技術は2つの可能性を
考慮する。すなわち、(1)係数をそのまま符号化す
る、(2)しきい値を超える低周波係数(すなわち、ジ
グザグスキャンにおけるある順番の前にあわられ、その
大きさがあるしきい値を超えた係数)の大きさを小さく
させる、ということである。この様に係数の大きさを小
さくすることによってビットレートを小さくできる係数
(特に、ハフマン符号化モデルにおいて定義されている
ような大きさの階級が、大きさ減少の結果として変化す
る係数)の場合、当該技術ではその係数を小さくしたま
まにする。
【0005】本技術はむしろ効率の悪い技術である。低
周波係数は最も重要な係数として知られており、低周波
係数を小さくすることは画像の質を悪化させることにな
る。さらに、本技術で減少されるファイルサイズは0で
はない程度のサイズ減少の部類に属し、質を大きく犠牲
にした割にそのサイズ減少の程度は小さい。
【0006】
【発明が解決しようとする課題】よって、本発明の課題
は、圧縮されたファイルサイズをさらに減少させること
に関連する上記の問題点を克服することである。
【0007】本発明の他の課題は、情報の欠落を最小限
にして、しきい値と比較して処理する方法によって、よ
り小さな圧縮ファイルサイズを保証する符号化技術を提
供することである。
【0008】本発明のさらに他の課題は、ジグザグスキ
ャンにおいて選択されたカットオフ番号の後にあり、そ
の大きさがあるしきい値未満である係数の大きさを減少
させることで、よりサイズの小さな圧縮ファイルを生成
する、JPEGのような変換に基づいた圧縮処理におい
て用いられる符号化技術を提供することである。
【0009】本発明のさらに他の課題は、洗練された節
減計算法によってカットオフ番号を選ぶことで、よりサ
イズの小さな圧縮ファイルを生成する、JPEGのよう
な変換に基づいた圧縮処理において用いられる符号化技
術を提供することである。
【0010】本発明のさらに他の課題は、係数値0が続
く長さを増やすことでよりサイズの小さな圧縮ファイル
を生成して、質をあまり犠牲にせずに比較的大きいサイ
ズ減少を可能とする、JPEGのような変換に基づいた
圧縮処理において用いられる符号化技術を提供すること
である。
【0011】
【課題を解決するための手段】本発明は、符号化技術を
用いて、周波数により順序付けられた係数の第1配列か
ら周波数により順序付けられた係数の第2配列を生成す
る装置および方法を提供する。係数の第2配列は、周波
数により順序付けられた係数の前記第1配列に対応する
所定のしきい値の配列を設け、周波数により順序付けら
れた係数の第1配列におけるカットオフの番号を決定
し、第1配列の各周波数係数のなかで、決定されたカッ
トオフの番号以上の番号を有し、かつ対応するしきい値
以下の大きさである前記第1配列の周波数係数の各々を
0にすることで、生成される。
【0012】発明の他の特徴においては、カットオフの
番号を決定する工程はさらに、節減できる値の配列を生
成する工程を備え、節減できる値は第1配列における各
番号に対応する。この場合、各々の節減できる値は、対
応する番号n以上の番号を有し、かつ対応するしきい値
T[n]以下の大きさである前記第1配列の前記周波数係
数の全てを0にすることにより節減できるビット数を示
す。
【0013】好適には、節減できる値の配列における各
々の節減できる値は増加するビット数であり、しかも、
各々の節減できる値は、n+1以上の番号を有し、かつ
しきい値T[n+1]以下の大きさである前記第1配列の
前記周波数係数の全てを0にした場合に比べて、n以上
の番号を有し、かつしきい値T[n]以下の大きさである
前記第1配列の前記周波数係数の全てを0に設定するこ
とにより、さらに節減できるビット数を示す。
【0014】本発明によれば、所定の数と最終ブロック
状態よりも長い0の連なりを計算にいれる場合に、節減
できる値の配列における節減できる値の各々は、n番目
の係数の前にある0の連なりを符号化するために必要な
ビット数とn番目の係数の後にある0の連なりを符号化
するために必要なビット数とを加算し、n番目の係数の
前と後の0の連なりを含む複合された、所定の数と最終
ブロック状態よりも長い0の連なりを符号化するために
必要なビット数を減算することにより計算される。
【0015】本発明のさらなる特徴によれば、周波数に
より順序付けられた係数の第1配列が、圧縮されたビッ
トストリームに符号化された時に、所定のビット量を超
え、周波数により順序付けられた係数の第2配列が、圧
縮されたビットストリームに符号化された時に、所定の
ビット量におさまる。
【0016】本発明の符号化技術は、デジタル静止画像
カメラのような画像装置あるいはコンピュータシステム
のようなシステムに適用できる。さらに本技術は、ソフ
トウェア、ハードウェアまたはそれらの組み合わせによ
っても実装できる。もし、本技術が全部または一部にお
いてソフトウェアで実装されれば、そのソフトウェアが
メモリ、ディスクまたは回線上の信号のような処理回路
が読める媒体に記録されていてもよい。
【0017】本発明の完全な理解に伴う他の目的や効果
は、添付の図面とともに本発明の実施の形態や特許請求
の範囲を参照することにより明らかに理解される。
【0018】
【発明の実施の形態】JPEGは、離散コサイン変換
(DCT)をその基本機能として用いており、市場にお
ける消費者のデジタル静止画像カメラに、もっとも広
く、用いられている圧縮方法である。このような理由
で、本発明の符号化技術をJPEGに関して説明する。
しかし、本発明の符号化技術はJPEGに限定されるも
のではなく、離散サイン変換、離散ハダマード(hadama
rd)変換およびウェーブレット変換を含む、他の線形変
換を基本機能として用いる圧縮アルゴリズムにも拡張で
きる。
【0019】まず、JPEGの圧縮と再生の処理の概観
を示す。JPEGはDCTを用いて静止画像データを、
空間表現すなわちピクセルドメインの表現から、より効
率的にデータを符号化できる圧縮表現すなわち周波数ド
メインの表現に変換する。ここで開示される符合化技術
はDCTの特性に有利なように設計されている。
【0020】JPEGの圧縮及び再生の処理を図1に図
式的に表現する。圧縮処理はエンコーダ11においてな
され、ブロックごとになされる。各ブロックのサイズは
典型的には8×8であるが、他のサイズのブロックを用
いても良い。図1に示すように、圧縮されていない静止
画像12は、ラスタ−ブロックコンバータ13により8
×8のピクセルのブロックに分解される。これらのブロ
ックは前方の8×8DCT14により変換され、対応す
る8×8DCTブロックが生成される。サンプルf(i ,
j)の空間ドメインの8×8ブロックに対応する8×8D
CTブロックF(u , v)は以下の数式(1)〜(3)のよ
うに計算される。
【0021】
【数1】
【0022】前方の8×8DCT14からの出力の後、
前方の量子化器15において、64素子の量子化テーブ
ルQを用いて、64個のDCT係数の各々は均一に量子
化される。量子化テーブルQは、視覚的には重要ではな
い情報を欠落させるように経験的に導出される。本圧縮
処理では、圧縮中に生じる損失は、F(u , v)からFQ(u,
v)への量子化により生じるものである。ただし、Qは8
×8量子化テーブルである。また、FQ(u , v)は以下の
とおりである。
【0023】
【数2】
【0024】量子化の後、各ブロックにおけるDCTデ
ータは「ジグザグ」順序に組み込まれる。「ジグザグ」
順序は、低周波係数(0でない可能性が高い)を高周波
係数(0である可能性が高い)よりも前に配置すること
によりエントロピ符号化を容易にする。ハフマンエンコ
ーダ16においてデータはハフマン符号化され、さらに
データが圧縮される。このハフマン符号化処理におい
て、JPEGアルゴリズムは、係数のシーケンスをスキ
ャンして0の連なりを探すことにより、量子化されたD
CT係数の各8×8ブロックを、圧縮する。なお、各8
×8ブロックは、C(0)、C(1)、…、C(63)のようにJP
EGジグザグ順序により識別される。4ビットの変数rr
rrを用いて0の連続する数を表し、C(n)を用いて次の0
ではない係数を表し、変数ssssを用いてC(n)を符号化す
るのに必要なビット数を表し、JPEG圧縮処理は、rr
rr 、ssss、…の形式のデータのシーケンスを生成す
る。データのシーケンスにおけるrrrr 、ssssのサブシ
ーケンスと各々の0ではない係数の圧縮コードはハフマ
ンエンコーダ16で利用できるハフマンテーブルから得
られ、記録かつ/または送信されるJPEG圧縮ビット
ストリームあるいはJPEGファイル17が生成され
る。さらに、値が16以上のrrrrは、まず、ちょうど1
6個の0(ハフマンテーブルにおいて特定の記号R16
となる)の組み合わせに分解され、そして16未満の最
後のrrrrが後に続く。さらに、他の特定の記号(EO
B)は、最後の0でない係数がC(63)ではないとき
に、“End−Of−Block”(ブロックの最後)
を符号化するのに用いられる。
【0025】再生において、画像はデコーダ18におい
て対称的な逆処理を用いて圧縮されたビットストリーム
から再構築される。JPEG再生処理はハフマンデコ−
ダ19において圧縮されたビットストリームを復号化す
ることにより始まる。ハフマンデコ−ダ19はハフマン
テーブルにアクセスし、量子化されたDCT係数の8×
8ブロックを再生する。係数は逆ジグザグ処理を用いて
並べ替えられ、ブロックは逆量子化器20に与えられ
る。次の段階で、8×8逆離散コサイン変換器(IDC
T)21はDCT係数の8×8ブロックを用いて、ピク
セルの8×8ブロックのストリームを生成する。ブロッ
ク−ラスタコンバータ22は、これらのブロックを変換
して再生静止画像23を得る。IDCTは係数F(u , v)
をピクセルf(i , j)に変換できる。正確には、
【0026】
【数3】
【0027】しかし、再生処理は量子化係数FQを実際
には用いるため、fの近似値fQが以下のように得られ
る。
【0028】
【数4】
【0029】本発明のファイルサイズが制限されたJP
EG符号化装置(FSBJT)の技術はハフマンデコ−
ダ19の出力に適用される。すなわち、ハフマンデコ−
ダ19において存在するJPEGファイルの圧縮された
ビットストリームを復号化することにより得られる量子
化されたDCT係数の8×8ブロックに符号化技術は作
用する。この点については、画像の元のピクセルドメイ
ン表現から、あるサイズのJPEGファイルが生成され
るという場合と、本技術とは異なるという点は留意すべ
きである。後者の場合、多くのことを行うことができ
る。例えば、DCT量子化器を適切に選び、JPEGフ
ァイルが所定のサイズの制限を超えないことを保証する
ことができる。しかし、前者の場合では、DCTがすで
に適用され量子化がすでになされているため、自由度が
ほとんどない。本発明によれば、他のJPEGファイル
からあるJPEGファイルを生成する場合、最初のデー
タは量子化されたDCT係数である。
【0030】図2を参照して、所定のビット量Bを超え
る現存のJPEGファイルからビット量Bにおさまる
「新たな」JPEGファイルを生成する処理を説明す
る。図2において、図式的に示したとおり、現存のJP
EGファイル17aの圧縮されたビットストリームはハ
フマンデコーダ19に供給され、量子化DCT係数の8
×8ブロックが再生される。
【0031】これらの係数のブロックは、ファイルサイ
ズが制限されたJPEG符号化装置31に入力され、当
該JPEG符号化装置において符号化が行われる。符号
化技術はある量子化された係数を選択的に0にする。D
CTデータを符号化した後はハフマンエンコーダ16に
入力され「新たな」JPEGファイルが生成される。
【0032】符号化により現存のJPEGファイルのサ
イズは小さくなり、情報の欠落が最小限になるように、
あるビット量Bにおさまる。本発明の一つの実施形態に
おいて、本技術は制約されたビット量Bを超えたJPE
Gファイルに作用し、ビット量Bにおさまる他のJPE
Gファイルを生成する。他の実施形態においては、本技
術は最初はサイズの制限を満足していたものの、ドメイ
ン圧縮操作がファイルに適用された結果としてBを超え
たJPEGファイルにも用いることができる。
【0033】量子化されたDCT係数から、より圧縮さ
れたビットストリームを生成する一つの方法は単純に、
シーケンスのなかで最高の順番の0ではない係数から、
0ではない係数を0に設定することから始め、ビット量
Bにおさまるまで順番を下げていくことである。この方
法の問題は、高位の大きな値の係数を有するブロックが
存在しうることである。これらの係数を0にすること
は、画像に目で見てわかる障害となる。
【0034】本発明は、小さい値の係数のみ選択的に0
に変換し、大きな値の係数はその順番に関係なく0に変
換しない、優れたアルゴリズムを採用することでこの問
題を解消する。これを達成するためには、基礎をなすア
ルゴリズムは所定のしきい値のテーブルまたは配列を用
いる。なお、所定のしきい値は、量子化されたDCT係
数の係数の番号に対応している。すなわち、C(63)の全
ての係数に対応する第1しきい値があり、C(62)の全て
の係数に対応する第2しきい値があり、以下同様であ
る。ある特定の順番の係数にしきい値がある場合は、そ
の順番の各係数(各8×8ブロックの一つ)は対応する
しきい値と比較される大きさを有し、もしその大きさが
対応するしきい値以下ならば、その大きさは0に設定さ
れる。使用されるしきい値のセットは、予め計算された
テーブル、T[1],…,T[63]である。このテーブルを予め
計算する方法は、所望の実施形態において多くのテスト
画像を用いていくつかの可能なしきい値テーブルをFS
BJTに用いて、最良の平均的な質をもたらすテーブル
を選ぶことである。
【0035】この方法を実施する、可能な「トライアン
ドエラー」の試行は、まず63番目の係数のみをしきい
値と比較して処理し、ビット量Bにおさまるかを決定す
るビットの合計を再演算することである。もし、ビット
の合計がBにおさまらないならば、さらに62番目の係
数をしきい値と比較して処理し、ビット量Bにおさまる
かを決定するビットの合計を再演算する。この処理は、
ビット量Bにおさまるまで、必要な番号の係数をしきい
値と比較して処理し続ける。この試行はとても時間がか
かることがある。
【0036】本発明のアルゴリズムはこの「トライアン
ドエラー」を採用せず、替わりに、ビット量Bにおさめ
るためには、63番目から始め、いくつの係数の番号を
しきい値と比較して処理しなければならないかを、さら
により効率的に決定する方法を提供する。これは、デー
タの第1パスを生成して、ある番号以上の全ての係数を
しきい値と比較して処理することにより節減されるビッ
ト数を含む節減テーブルを埋めることにより、節減でき
る値の配列を生成することによりなされる。この節減テ
ーブルからカットオフ(1−64)が決定される。なお
カットオフは、Bにおさめるために、しきい値と比較さ
れて処理されるべき係数の番号を示す。そして、カット
オフ以上の全ての係数はしきい値と比較されて処理され
る。例えば、もしカットオフが61ならば、61番目、
62番目、63番目の係数の各々がしきい値と比較され
て処理される。カットオフが64とはしきい値と比較さ
れて処理される係数がないことを示し、カットオフの最
小値は1であるためDC係数(ジグザグ指標は0)はし
きい値と比較されて処理されないことに留意すべきであ
る。カットオフが決定されれば、適切な係数がデータの
第2パスでしきい値と比較されて処理される。DCT係
数の各ブロックはJPEG標準によって符号化される。
その結果のサイズはビット量Bにおさまることが保証さ
れている(後述するある極端な例を除く)。
【0037】FSBJTのアルゴリズムを詳細に説明す
るために、まず量子化されたDCT係数の圧縮ブロック
を説明するために用いる表記法を定義する。ブロックB
は構成要素{B.DC, B.num, B.zz[ ], B.val[ ], B.ssss
[ ]}を有する。B.DCはブロックのDC値であり、FS
BJTによりしきい値と比較されて処理されることはな
い。B.numはブロックにおける0ではないAC係数の個
数である。B.zz[ ], B.val[ ], B.ssss[ ]は配列であ
り、各々は、ジグザグの指標(1、…、63の範囲の値
をとる)、係数の値、ブロックにおける0ではないAC
係数のssss値である。指標が1、…、B.numの範囲であ
る配列の内容のみが有意である。さらに、サブシーケン
スの表現の簡便のために、B.zz[0]は常に0であるとす
る。
【0038】FSBJTにおける主要な処理は、「節減
できる値を埋める(FillSavings)」といわれるもので
ある。FillSavingsの役割は、Savings[1]、…、Savings
[63]の配列に適切な値を埋めることである。Savings[n]
の値は、まさに、n+1からnまで「しきい値と比較され
て処理されるカットオフ番号」を減らすことで節減でき
るビット数である。FillSavingsの動作を擬似コードに
て説明する。FillSavingsにおいて用いられる主要な思
想は、0ではない係数を0に設定した時は、0の二つの
連なり(0でない係数の前方と後方と)が、単一の長い
0の連なりに複合されることによりビットが節減される
というものである。節減されるビットの正確な数は、前
と後の0の連なりを符号化するのに必要なビットを加算
し、複合した0の連なりを符号化するのに必要なビット
を減算することで計算できる。ある特別な状況(0が1
6個以上連なる、ブロックの最後という状態)は、注意
深く計算において考慮しなければならない。H(X)という
表記は、ここでは、ACハフマンテーブルにおける表記
Xの符号の長さを示すために用いる。ただし、XはR1
6、EOB、あるいは16以下のランレングス(rrrr)
とssss値(これも16以下)を複合することにより形成
されたrrrrssss(rrrrssss=rrrr<<4|ssss)であ
る。ここで擬似コードを以下に示す。
【0039】 Procedure Fillsavings Initialize each Savings[n] to 0,1≦n≦63 for each block B last := B.zz[B.num] //lastは常に(ジグザグ順序における) //最後の0ではない係数を示す。
【0040】 for i :=B.num downto 1 n := B.zz[i] //ここでSavings[n]の更新を行う。
【0041】 If(|B.val[i]|>T[n]) then next := i //次の0ではない係数の位置を保存。
【0042】 else //この係数はしきい値と比較されて処理されるときは //0になる。Savings[n]に前方の連なりの長さを符号化 //するのに必要なビットを加算する。
【0043】 rrrr := n- B.zz[i-1]-1 //前方の連なりの長さ ssss := B.ssss[i] while(rrrr≧16)do Savings[n] := Savings[n]+H(R16) rrrr := rrrr - 16 Savings[n] := Savings[n]+H(rrrrssss)+ ssss if (n=last) then //次の0の連なりがない。
【0044】 if (n=63) then //カットオフをn+1からnまで減じる //際の、このブロックにおける特別な //EOBを説明する。
【0045】 Savings[n]:=Savings[n]-H(EOB) last := B.zz[i-1] else rrrr := B.zz[next]-n-1 //前方の //連なり //の長さ ssss := B.ssss[next] while(rrrr≧16)do Savings[n] := Savings[n]+H(R16) rrrr := rrrr - 16 Savings[n]:=Savings[n]+H(rrrrssss) rrrr := B.zz[next]- B.zz[i-1]-1 // rrrrは新たに組み合わされた //連なりの長さ while(rrrr≧16)do Savings[n] := Savings[n]-H(R16) rrrr := rrrr - 16 Savings[n] := Savings[n]-H(rrrrssss) 図3は本発明の符号化処理を示すフローチャートであ
る。目標となるサイズをビットで表現したものをBとす
ると、処理は、所定のしきい値T[1],…,T[63]が設定さ
れるステップ301で開始する。次に、処理"FillTabl
e"が適用され、テーブルSavings[1]、…、Savings[63]
における、各カットオフ値に対応する正確な増加する節
減できるビットを得る(ステップ302)。ステップ3
03において、変数BaをJPEG画像の現在の符号化
された大きさをビットで表現したものとする。この実施
形態では、あるJPEGファイルに圧縮ドメイン操作を
施した結果として量子化されたDCT係数が得られ、B
aは実際にハフマン符号化を通じて決定する必要がある
ことに留意しなければならない。この場合は、FillTabl
e(ステップ302)においてなされる計算はステップ
303における符号化と複合してデータを単一のパスに
することができる。
【0046】次に、ステップ304において、変数BT
を初期化してBaにする。なお、BTはしきい値と比較
し処理した後の符号化されたサイズを示す。ステップ3
05において、しきい値と比較し処理するカットオフ
(変数“CutOff”と記載する)を初期化して64とする
(つまり、しきい値と比較して処理するものはない)。
ステップ306からステップ309までのループにおい
て、CutOffはBTがB未満になるまで減じられる。これ
は、以下のようにして行われる。ステップ306におい
て、現在のBTの値がBと比較される。もし、BTがB以
下ならば、ループから外れて符号化ステップ310に処
理が進む。さもなければ、CutOffはステップ307にお
いて1まで減じられる。次に、ステップ308におい
て、CutOffが0まで減じられたかを判定する。この場合
は、しきい値との比較及び処理によっては目標のビット
量Bにはおさまらず、本アルゴリズムにおいては、エラ
ーを報告する。本実施の形態では、しきい値T[1],…,T
[63]を増加してFSBJTを再度行うか、あるいは、エ
ラーメッセージを表示することで、エラーを取り扱う。
ステップ309において、符号化されたサイズBTの計
算値は、Savings[CutOff]を減算することで更新され、
ループはステップ306に戻る。
【0047】ステップ306において、BTが目標値B
を超えないことが確認されると、nがCutOff以上で|C
(n)|がT[n]以下である係数C(n)のそれぞれをしきい値
と比較して処理しつつ、量子化された係数が符号化され
る(ステップ310)。ステップ311において、新た
に符号化されたビット表現のサイズをBcに設定する。S
avings[ ]テーブルの値は正確なので、Bcは正確にBT
と等しくなければならない。しかし、「FillSavings」
による計算に含まれない小さなビットがあることがあ
る。これらは、JPEGにおいて使用されるパッドバイ
トである。符号化されたビットストリーム中のバイト列
の境界において0xFFが現れれば常に、ビットストリーム
において特別なバイト(0x00)を挿入する必要がJ
PEGの仕様においてはある。しかし、これらの詰め込
まれたバイトはとても少ない。ビット値1の長い列は典
型的にはあまりないハフマン符号に対応しているためで
ある。普通にFSBJTを実行すれば、所望よりも若干
小さいビット目標Bから開始することで容易に解決され
る。しかし、万全を期して、ステップ312のチェック
を含める。ステップ312においては、Bcは目標値B
と比較される。BcがB以下ならば、目標は達成され、
アルゴリズムは成功して終了する。さもなければ、ステ
ップ313に処理が進む。ステップ313においては、
検出されたパッドビットの量を少し超えた量だけビット
量Bが減じられ、ステップ304に戻る。
【0048】本発明の符号化技術はデジタル静止画像カ
メラ(DSC)を含む様々なデジタル画像装置により実
装される。デジタル静止画像カメラ(DSC)のブロッ
ク図を図4に示す。マイクロプロセサ制御の操作のもと
で、DSC40は、画像をとらえアナログ電気信号に変
換するチャージカップルドデバイス(CCD)イメージ
センサ41を有する。アナログ信号はブロック42にお
いて処理されてデジタル化され、その後、デジタル画像
がブロック44においてデジタル処理されている間にデ
ジタル画像は一時的にフレームバッファ43に記録され
る。ブロック44におけるデジタル画像処理は圧縮と再
生とを含んだいくつかの機能を備え、本発明の符号化技
術もまた含みうる。圧縮と再生の機能ばかりでなく符号
化技術もカメラのソフトウェアパッケージに組み込まれ
た命令のプログラムを実行するプロセサまたは適切なハ
ードウェア回路によって実行される。画像データは処理
ブロック44と圧縮された画像データを記録するカメラ
内の記録部45との間転送される。ユーザが操作する制
御器46はこの転送を制御するのに使用される。画像記
録部45はコンパクトマグネティックまたはソリッドス
テートの記録媒体を含んだDSC40から取り外し可能
あるいは固定される一つ以上の様々な適切な記録媒体を
備えることができ、取り外し可能な大容量PCMCIA
フォーマットのハードディスクカードまたはフラッシュ
メモリカードも備えることができる。
【0049】DSC40はアナログ出力47とデジタル
出力48とを備え、それらを通じてDSC内部あるいは
外部機器に画像データが送信される。非圧縮画像データ
はアナログ出力47を介してDSC40内のLCDスク
リーン49またはVCRやTVモニタのような外部機器
に出力される。圧縮されていようといまいと、画像デー
タはデジタル出力48を通じて、本発明に従い処理さ
れ、および/または表示される多目的デジタルコンピュ
ータのようなデジタル機器に送信されうる。
【0050】図5は、DSC40、様々なコンピュータ
構成要素そして他の周辺機器との関係をあらわすコンピ
ュータシステムを示す。コンピュータシステムは、およ
そ番号50で示されているが、メインフレーム、パーソ
ナルコンピュータまたはラップトップコンピュータのよ
うな適切な種類のものにできる。
【0051】コンピュータシステム50は、慣用のマイ
クロプロセサとすることもできる中央処理ユニット(C
PU)51、情報を一時的に記録するランダムアクセス
メモリ(RAM)52、情報を長期間記録するリードオ
ンリーメモリ(ROM)53を備える。これらの構成要
素の各々はバス54に結合されている。コンピュータシ
ステム50の操作は典型的にはオペレーティングシステ
ムのソフトウェアにより制御、統制されている。オペレ
ーティングシステムはシステムメモリに組み込まれCP
U51にて実行されるが、システム資源の割り当てを制
御するとともに、処理、メモリ管理、ネットワーキン
グ、I/O機能などの様々な機能を実行し、コンピュー
タシステム50の操作を調和させる。
【0052】ディスケットドライブ56もコントローラ
55によりバス54に結合され、ディスケットドライブ
56にはディスケット57のような不揮発性の記録装置
を挿入してもいい。同様に、コントローラ58はバス5
4と、コンパクトディスク(CD) ROM60を受け
入れるように構成されているCD ROMドライブ59
と、を連結する。ハードディスク61はディスクコント
ローラ63によりバス54に連結される固定ディスクド
ライブ62の一部として備えられる。
【0053】本発明の符号化技術のためのプログラム命
令はRAM52またはROM53に記録してもよく、あ
るいは記録装置57、60、61に記録してもよく、C
PU51に転送されて実行される。より上位概念で言え
ば、CPU51に命令を与えられる任意の記録媒体にこ
のような命令を記録すればいい。上記の記載に加え、プ
ロセサが読める他の一般的な形式、例えば、光ディスク
のような光媒体、磁気テープのような磁気媒体、パンチ
カードのような穴のパターンのある物理的媒体、PRO
M、EPROM、EEPROMまたはFLASH−EP
ROMのような様々なPROM、他のメモリチップやカ
ートリッジ、または搬送波(後述)を含む。
【0054】本発明により処理される画像データは上記
の一つ以上の記録媒体に記録してもいい。さらに、外部
画像原から入力画像64はコンピュータ50により記録
及び/または処理するためにスキャナ65によりデジタ
ル化される。DSC40により、とらえられ、デジタル
化され、圧縮された画像は前記のようにコンピュータ5
0に送信される。
【0055】画像データとコンピュータ命令もまた離れ
た場所からコンピュータ50へ送信し、コンピュータ5
0から送信される。このために、コンピュータ50は、
交信インタフェース66を備える。当該交信インタフェ
ース66によって、コンピュータシステム50は直接接
続、モデムまたはワイヤレス交信を通じて一つ以上の様
々なネットワーク67と他のシステムとの交信を可能に
する。ネットワーク67は、ローカルエリアネットワー
ク(LANs)、インターネット、オンラインサービス
を含む。どのような構成の場合であっても、様々な形式
の情報を表すデータストリームを搬送する電気的、電磁
気的、または光学的な信号を交信インタフェース66は
送る。これらの信号は、コンピュータシステム50へ、
そしてコンピュータシステム50からデータを搬送し、
本発明の符号化技術のためのプログラムコードを送信す
る搬送波の典型的な形式となる。このように受信された
プログラムコードはCPU51により実行される。この
ようなコードは後で実行されるために受信または記録さ
れている。
【0056】データの入出力を容易にするために、コン
ピュータシステム50はさらにユーザ入力装置68を備
える。ユーザ入力装置68は例えばキーボードやマウス
を備えてもいい。これらの装置68はコントローラ69
を通じてバス54に連結される。モニタディスプレイ7
1とプリンタ72が、データを参照及び印刷するために
設けられる。
【0057】上記のように、本発明の符号化技術は特に
デジタルカメラ40および/またはコンピュータシステ
ム50により実装されるのによく適している。しかし、
本符号化技術は、他のデジタル画像処理装置によっても
実装できる。さらに、本符号化技術は、ハードウェア、
ソフトウェアまたはそれらの組み合わせを用いて実装で
きる。それに留意すると、本発明の技術を表現するのに
用いられたブロック図とフローチャートとは、ある特定
の機能とその関係の作用を示していることが理解され
る。これらの機能ブロックの境界は記載上の便宜のため
に、ここにおいて任意に定義される。特定の機能とその
関係が適切に形成されている限り、かわりの境界を定義
することもできる。同様に、本発明の符号化アルゴリズ
ムの特徴を表現するのに用いられた擬似コードは、文法
やある特定のプログラミング言語を表してはいない。む
しろ、図や図中の説明(擬似コードを含む)は当該分野
における当業者が回路を設計し、またはソフトウェアの
コードを書いて、要求される処理を達成するために必要
な機能情報を提示したものである。ブロック図に表され
た各機能は、例えばソフトウェア命令、デジタル信号処
理回路のような等価回路、用途特定集積回路(ASI
C)またはそれらの組み合わせにより実装してもよい。
【0058】特定の実施形態により本発明を説明してき
たが、さらに多くの代替、改良、変形が可能であること
は以上の説明から当該分野における当業者には明らかで
ある。本発明は、特許請求の範囲及びその本質的部分に
包摂される全ての代替、改良、実施例、変形を含むこと
を意図している。
【図面の簡単な説明】
【図1】JPEGの圧縮及び再生の処理を示すブロック
図である。
【図2】本発明の符号化処理を示すブロック図である。
【図3】本発明の符号化技術を示すフローチャートであ
る。
【図4】本発明が組み込まれるデジタル静止画像カメラ
(DSC)のブロック図である。
【図5】デジタル画像を本発明によって処理するのみな
らず、デジタル画像を取り込み、見ることにおいて用い
られる種々の構成要素間の関係を表したコンピュータシ
ステムのブロック図である。
【符号の説明】
11 エンコーダ 12 非圧縮静止画像 13 ラスタ−ブロックコンバータ 14 8×8DCT 15 前方量子化器 16 ハフマンエンコーダ 17 JPEGファイル 18 デコーダ 19 ハフマンデコ−ダ 20 逆量子化器 21 8×8逆離散コサイン変換器(IDCT) 22 ブロック−ラスタコンバータ 23 再生静止画像 31 JPEG符号化装置 40 DSC 41 チャージカップルドデバイス(CCD)イメージ
センサ 42 アナログ信号処理およびA/D変換 43 フレームバッファ 44 デジタル画像処理 45 記録部 46 制御器 47 D/A変換およびアナログ出力 48 デジタル出力 49 LCDスクリーン 50 コンピュータシステム 51 中央処理ユニット(CPU) 52 ランダムアクセスメモリ(RAM) 53 リードオンリーメモリ(ROM) 54 バス 55 コントローラ 56 ディスケットドライブ 57 ディスケット 58 コントローラ 59 CD ROMドライブ 60 コンパクトディスク(CD)ROM 61 ハードディスク 62 固定ディスクドライブ 63 ディスクコントローラ 64 入力画像 65 スキャナ 66 交信インタフェース 67 ネットワーク 68 ユーザ入力装置 69 コントローラ 71 モニタディスプレイ 72 プリンタ

Claims (36)

    【特許請求の範囲】
  1. 【請求項1】 周波数により順序付けられた係数の第1
    配列から周波数により順序付けられた係数の第2配列を
    生成する方法において、 周波数により順序付けられた係数の前記第1配列におけ
    る各係数に対応する所定のしきい値の配列を設ける工程
    と、 周波数により順序付けられた係数の前記第1配列におけ
    るカットオフの番号を決定する決定工程と、 前記第1配列の各周波数係数のなかで、前記決定された
    カットオフの番号以上の番号を有し、かつ対応するしき
    い値以下の大きさである前記第1配列の周波数係数の各
    々を0に設定し、周波数により順序付けられた係数の第
    2配列を生成する工程と、を備えた方法。
  2. 【請求項2】 請求項1に記載の方法であって、 前記決定工程はさらに、節減できる値の配列を生成する
    工程を備え、 節減できる値は前記第1配列における各番号に対応し、 各々の節減できる値は、対応する番号(n)以上の番号
    を有し、かつ対応するしきい値T[n]以下の大きさであ
    る前記第1配列の前記周波数係数の全てを0にすること
    により節減できるビット数を示す、方法。
  3. 【請求項3】 請求項2に記載の方法であって、 前記節減できる値の配列における各々の節減できる値
    は、増加するビット数であり、しかも、各々の節減でき
    る値は、 n+1以上の番号を有し、かつしきい値T[n+1]以下
    の大きさである前記第1配列の前記周波数係数の全てを
    0にした場合に比べて、 n以上の番号を有し、かつしきい値T[n]以下の大きさ
    である前記第1配列の前記周波数係数の全てを0にする
    ことにより、さらに節減できるビット数を示す、 周波数により順序付けられた係数の配列を生成する方
    法。
  4. 【請求項4】 請求項2に記載の方法であって、 所定の数と最終ブロック状態よりも長い0の連なりを計
    算にいれる場合に、 前記節減できる値の配列における節減できる値の各々
    は、 n番目の係数の前にある0の連なりを符号化するために
    必要なビット数とn番目の係数の後にある0の連なりを
    符号化するために必要なビット数とを加算し、n番目の
    係数の前と後の0の連なりを含む複合された、所定の数
    と最終ブロック状態よりも長い0の連なりを符号化する
    ために必要なビット数を減算することにより計算され
    る、方法。
  5. 【請求項5】 請求項1に記載の方法であって、 周波数により順序付けられた係数の前記第1配列が、圧
    縮されたビットストリームに符号化された時に、所定の
    ビット量を超え、 周波数により順序付けられた係数の前記第2配列が、圧
    縮されたビットストリームに符号化された時に、所定の
    ビット量におさまる、方法。
  6. 【請求項6】 所定のビット量を超える第1のJPEG
    ファイルから前記所定のビット量におさまる第2のJP
    EGファイルを生成する方法において、 前記第1のJPEGファイルから周波数により順序付け
    られた係数の第1配列を再生する工程と、 周波数により順序付けられた係数の前記第1配列におけ
    る係数に対応する所定のしきい値の配列を設ける工程
    と、 節減できる値の配列を生成することにより、周波数によ
    り順序付けられた係数の前記第1配列におけるカットオ
    フの番号を決定する工程と、 前記第1配列の各周波数係数のなかで、前記決定された
    カットオフの番号以上の番号を有し、かつ対応するしき
    い値以下の大きさである前記第1配列の周波数係数の各
    々を0に設定し、周波数により順序付けられた係数の第
    2配列を生成する工程と、 を備え、 前記節減できる値は前記第1配列における各番号に対応
    し、 各々の前記節減できる値は、対応する番号(n)以上の
    番号を有し、かつ対応するしきい値T[n]以下の大きさ
    である前記第1配列の前記周波数係数の全てを0にする
    ことにより節減できるビット数を示す、方法。
  7. 【請求項7】 請求項6に記載の方法であって、 前記節減できる値の配列における各々の節減できる値は
    増加するビット数であり、しかも、各々の節減できる値
    は、 n+1以上の番号を有し、かつしきい値T[n+1]以下
    の大きさである前記第1配列の前記周波数係数の全てを
    0にした場合に比べて、 n以上の番号を有し、かつしきい値T[n]以下の大きさ
    である前記第1配列の前記周波数係数の全てを0にする
    ことにより、さらに節減できるビット数を示す、方法。
  8. 【請求項8】 請求項6に記載の方法であって、 所定の数と最終ブロック状態よりも長い0の連なりを計
    算にいれる場合に、 前記節減できる値の配列における各々の節減できる値
    は、 n番目の係数の前にある0の連なりを符号化するために
    必要なビット数とn番目の係数の後にある0の連なりを
    符号化するために必要なビット数とを加算し、n番目の
    係数の前と後の0の連なりを含む複合された、所定の数
    と最終ブロック状態よりも長い0の連なりを符号化する
    ために必要なビット数を減算することにより計算され
    る、方法。
  9. 【請求項9】 周波数により順序付けられた係数の第1
    配列から周波数により順序付けられた係数の第2配列を
    生成する方法を実行する手段を備えた画像装置であっ
    て、 前記方法を実行する手段は前記画像装置とハードウェア
    により実行可能な少なくとも一つの命令のプログラムを
    備え、前記方法が、 周波数により順序付けられた係数の前記第1配列におけ
    る各係数に対応する所定のしきい値の配列を設ける工程
    と、 周波数により順序付けられた係数の前記第1配列におけ
    るカットオフの番号を決定する決定工程と、 前記第1配列の各周波数係数のなかで、前記決定された
    カットオフの番号以上の番号を有し、かつ対応するしき
    い値以下の大きさである前記第1配列の周波数係数の各
    々を0にすることで、周波数により順序付けられた係数
    の第2配列を生成する工程と、 を備える画像装置。
  10. 【請求項10】請求項9に記載の画像装置であって、前
    記決定工程はさらに、節減できる値の配列を生成する工
    程を備え、 節減できる値は前記第1配列における各番号に対応し、 各々の節減できる値は、対応する番号(n)以上の番号
    を有し、かつ対応するしきい値T[n]以下の大きさであ
    る前記第1配列の前記周波数係数の全てを0にすること
    により節減できるビット数を示す、画像装置。
  11. 【請求項11】 請求項10に記載の画像装置であっ
    て、 前記節減できる値の配列における各々の節減できる値
    は、増加するビット数であり、しかも、各々の節減でき
    る値は、 n+1以上の番号を有し、かつしきい値T[n+1]以下
    の大きさである前記第1配列の前記周波数係数の全てを
    0にした場合に比べて、 n以上の番号を有し、かつしきい値T[n]以下の大きさ
    である前記第1配列の前記周波数係数の全てを0にする
    ことにより、さらに節減できるビット数を示す、画像装
    置。
  12. 【請求項12】 請求項10に記載の画像装置であっ
    て、 所定の数と最終ブロック状態よりも長い0の連なりを計
    算にいれる場合に、 前記節減できる値の配列における各々の節減できる値
    は、 n番目の係数の前にある0の連なりを符号化するために
    必要なビット数とn番目の係数の後にある0の連なりを
    符号化するために必要なビット数とを加算し、n番目の
    係数の前と後の0の連なりを含む複合された、所定の数
    と最終ブロック状態よりも長い0の連なりを符号化する
    ために必要なビット数を減算することにより計算され
    る、画像装置。
  13. 【請求項13】 請求項9に記載の画像装置であって、 周波数により順序付けられた係数の前記第1配列が、圧
    縮されたビットストリームに符号化された時に、所定の
    ビット量を超え、 周波数により順序付けられた係数の前記第2配列が、圧
    縮されたビットストリームに符号化された時に、所定の
    ビット量におさまる、画像装置。
  14. 【請求項14】周波数により順序付けられた係数の複数
    の第1ブロックから周波数により順序付けられた係数の
    複数の第2ブロックを生成するデジタルカメラにおい
    て、 光を取得し、当該光をアナログ画像信号に変換するセン
    サと、 前記アナログ画像信号を空間ドメインにおけるデジタル
    画像に変換するアナログ−デジタルコンバータと、 前記デジタル画像を圧縮して、空間ドメイン表現から第
    1線形変換に基づく圧縮ファイル表現にするデジタル画
    像プロセサと、 を備え、 前記デジタル画像プロセサは、 周波数により順序付けられた係数の複数の前記第1ブロ
    ックを、前記第1線形変換に基づく圧縮ファイルから再
    生し、 周波数により順序付けられた係数の複数の前記第1ブロ
    ックにおける各係数番号に対応する所定のしきい値の配
    列を設け、 節減できる値の配列を生成することによって、周波数に
    より順序付けられた係数の複数の前記第1ブロックにお
    けるカットオフの番号を決定し、 前記節減できる値は複数の前記第1ブロックにおける各
    番号に対応し、 各々の前記節減できる値は、対応する番号(n)以上の
    番号を有し、かつ対応するしきい値T[n]以下の大きさ
    である複数の前記第1ブロックの前記周波数係数の全て
    を0にすることにより節減できるビット数を示し、 前記第1ブロックの各周波数係数のなかで、前記決定さ
    れたカットオフの番号以上の番号を有し、かつ対応する
    しきい値以下の大きさである前記第1ブロックの周波数
    係数の各々を0にすることで、周波数により順序付けら
    れた係数の複数の前記第2ブロックを生成する、デジタ
    ルカメラ。
  15. 【請求項15】 請求項14に記載のデジタルカメラで
    あって、 前記節減できる値の配列における各節減できる値は増加
    するビット数であり、しかも、各節減できる値は、 n+1以上の番号を有し、かつしきい値T[n+1]以下
    の大きさである前記複数の第1配列の前記周波数係数の
    全てを0にした場合に比べて、 n以上の番号を有し、かつしきい値T[n]以下の大きさ
    である前記第1配列の前記周波数係数の全てを0にする
    ことにより、さらに節減できるビット数を示す、デジタ
    ルカメラ。
  16. 【請求項16】 請求項14に記載のデジタルカメラで
    あって、 所定の数と最終ブロック状態よりも長い0の連なりを計
    算にいれる場合に、 前記節減できる値の配列における各節減できる値は、 n番目の係数の前にある0の連なりを符号化するために
    必要なビット数とn番目の係数の後にある0の連なりを
    符号化するために必要なビット数とを加算し、n番目の
    係数の前と後の0の連なりを含む複合された、所定の数
    と最終ブロック状態よりも長い0の連なりを符号化する
    ために必要なビット数を減算することにより計算され
    る、デジタルカメラ。
  17. 【請求項17】 周波数により順序付けられた係数の第
    1配列から周波数により順序付けられた係数の第2配列
    を生成する方法を実行する手段を備えたシステムであっ
    て、 前記方法を実行する手段は前記システム及びハードウェ
    アにより実行可能な少なくとも一つの命令のプログラム
    を備え、前記方法が、 周波数により順序付けられた係数の前記第1配列におけ
    る各係数に対応する所定のしきい値の配列を設ける工程
    と、 周波数により順序付けられた係数の前記第1配列におけ
    るカットオフの番号を決定する決定工程と、 前記第1配列の各周波数係数のなかで、前記決定された
    カットオフの番号以上の番号を有し、かつ対応するしき
    い値以下の大きさである前記第1配列の周波数係数の各
    々を0に設定することで、周波数により順序付けられた
    係数の第2配列を生成する工程と、を備えるシステム。
  18. 【請求項18】 請求項17に記載のシステムであっ
    て、 前記決定工程はさらに、節減できる値の配列を生成する
    工程を備え、 節減できる値は前記第1配列における各番号に対応し、 各々の節減できる値は、対応する番号(n)以上の番号
    を有し、かつ対応するしきい値T[n]以下の大きさであ
    る前記第1配列の前記周波数係数の全てを0にすること
    により節減できるビット数を示す、システム。
  19. 【請求項19】 請求項18に記載のシステムであっ
    て、 前記節減できる値の配列における各節減できる値は増加
    するビット数であり、しかも、各節減できる値は、 n+1以上の番号を有し、かつしきい値T[n+1]以下
    の大きさである前記第1配列の前記周波数係数の全てを
    0に設定した場合に比べて、 n以上の番号を有し、かつしきい値T[n]以下の大きさ
    である前記第1配列の前記周波数係数の全てを0に設定
    することにより、さらに節減できるビット数を示す、シ
    ステム。
  20. 【請求項20】 請求項18に記載のシステムであっ
    て、 所定の数と最終ブロック状態よりも長い0の連なりを計
    算にいれる場合に、 前記節減できる値の配列における各々の節減できる値
    は、 n番目の係数の前にある0の連なりを符号化するために
    必要なビット数とn番目の係数の後にある0の連なりを
    符号化するために必要なビット数とを加算し、n番目の
    係数の前と後の0の連なりを含む複合された、所定の数
    と最終ブロック状態よりも長い0の連なりを符号化する
    ために必要なビット数を減算することにより計算され
    る、システム。
  21. 【請求項21】 請求項17に記載のシステムであっ
    て、 周波数により順序付けられた係数の前記第1配列が、圧
    縮されたビットストリームに符号化された時に、所定の
    ビット量を超え、 周波数により順序付けられた係数の前記第2配列が、圧
    縮されたビットストリームに符号化された時に、所定の
    ビット量におさまる、システム。
  22. 【請求項22】 周波数により順序付けられた係数の第
    1配列から周波数により順序付けられた係数の第2配列
    を生成するデジタル信号処理回路において、 周波数により順序付けられた係数の前記第1配列におけ
    る各係数に対応する所定のしきい値の配列を設ける手段
    と、 周波数により順序付けられた係数の前記第1配列におけ
    るカットオフの番号を決定する決定手段と、 前記第1配列の各周波数係数のなかで、前記決定された
    カットオフの番号以上の番号を有し、かつ対応するしき
    い値以下の大きさである前記第1配列の周波数係数の各
    々を0にすることで、周波数により順序付けられた係数
    の第2配列を生成する手段と、 を備えた周波数により順序付けられた係数の配列を生成
    するデジタル信号処理回路。
  23. 【請求項23】 請求項22に記載のデジタル信号処理
    回路であって、 前記決定工程はさらに、節減できる値の配列を生成する
    手段を備え、 節減できる値は前記第1配列における各番号に対応し、 各々の節減できる値は、対応する番号(n)以上の番号
    を有し、かつ対応するしきい値T[n]以下の大きさであ
    る前記第1配列の前記周波数係数の全てを0にすること
    により節減できるビット数を示す、デジタル信号処理回
    路。
  24. 【請求項24】 請求項23に記載のデジタル信号処理
    回路であって、 前記節減できる値の配列における各々の節減できる値は
    増加するビット数であり、しかも、各節減できる値は、 n+1以上の番号を有し、かつしきい値T[n+1]以下
    の大きさである前記第1配列の前記周波数係数の全てを
    0に設定した場合に比べて、 n以上の番号を有し、かつしきい値T[n]以下の大きさ
    である前記第1配列の前記周波数係数の全てを0に設定
    することにより、さらに節減できるビット数を示す、デ
    ジタル信号処理回路。
  25. 【請求項25】 請求項23に記載のデジタル信号処理
    回路であって、 所定の数と最終ブロック状態よりも長い0の連なりを計
    算にいれる場合に、 前記節減できる値の配列における各節減できる値は、 n番目の係数の前にある0の連なりを符号化するために
    必要なビット数とn番目の係数の後にある0の連なりを
    符号化するために必要なビット数とを加算し、n番目の
    係数の前と後の0の連なりを含む複合された、所定の数
    と最終ブロック状態よりも長い0の連なりを符号化する
    ために必要なビット数を減算することにより計算され
    る、デジタル信号処理回路。
  26. 【請求項26】 請求項22に記載のデジタル信号処理
    回路であって、 周波数により順序付けられた係数の前記第1配列が、圧
    縮されたビットストリームに符号化された時に、所定の
    ビット量を超え、 周波数により順序付けられた係数の前記第2配列が、圧
    縮されたビットストリームに符号化された時に、所定の
    ビット量におさまる、デジタル信号処理回路。
  27. 【請求項27】 周波数により順序付けられた係数の第
    1配列から周波数により順序付けられた係数の第2配列
    を処理回路に生成させるための命令のプログラムを記録
    した、処理回路により読み取り可能な媒体であって、 前記プログラムは、 周波数により順序付けられた係数の前記第1配列におけ
    る各係数に対応する所定のしきい値の配列を設ける命令
    と、 周波数により順序付けられた係数の前記第1配列におけ
    るカットオフの番号を決定する決定命令と、 前記第1配列の各周波数係数のなかで、前記決定された
    カットオフの番号以上の番号を有し、かつ対応するしき
    い値以下の大きさである前記第1配列の周波数係数の各
    々を0にすることで、周波数により順序付けられた係数
    の第2配列を生成する命令と、 を備えた処理回路により読み取り可能な媒体。
  28. 【請求項28】 請求項27に記載の処理回路により読
    み取り可能な媒体であって、 前記決定命令はさらに、節減できる値の配列を生成する
    命令を備え、 当該節減できる値は前記第1配列における各番号に対応
    し、 各節減できる値は、対応する番号(n)以上の番号を有
    し、かつ対応するしきい値T[n]以下の大きさである前
    記第1配列の前記周波数係数の全てを0にすることによ
    り節減できるビット数を示す、処理回路により読み取り
    可能な媒体。
  29. 【請求項29】 請求項28に記載の処理回路により読
    み取り可能な媒体であって、 前記節減できる値の配列における各節減できる値は増加
    するビット数であり、しかも、各節減できる値は、 n+1以上の番号を有し、かつしきい値T[n+1]以下
    の大きさである前記第1配列の前記周波数係数の全てを
    0にした場合に比べて、 n以上の番号を有し、かつしきい値T[n]以下の大きさ
    である前記第1配列の前記周波数係数の全てを0にする
    ことにより、さらに節減できるビット数を示す、処理回
    路により読み取り可能な媒体。
  30. 【請求項30】 請求項28に記載の処理回路により読
    み取り可能な媒体であって、 所定の数と最終ブロック状態よりも長い0の連なりを計
    算にいれる場合に、 前記節減できる値の配列における各々の節減できる値
    は、 n番目の係数の前にある0の連なりを符号化するために
    必要なビット数とn番目の係数の後にある0の連なりを
    符号化するために必要なビット数とを加算し、n番目の
    係数の前と後の0の連なりを含む複合された、所定の数
    と最終ブロック状態よりも長い0の連なりを符号化する
    ために必要なビット数を減算することにより計算され
    る、処理回路により読み取り可能な媒体。
  31. 【請求項31】 請求項27に記載の処理回路により読
    み取り可能な媒体であって、 周波数により順序付けられた係数の前記第1配列が、圧
    縮されたビットストリームに符号化された時に、所定の
    ビット量を超え、 周波数により順序付けられた係数の前記第2配列が、圧
    縮されたビットストリームに符号化された時に、所定の
    ビット量におさまる、処理回路により読み取り可能な媒
    体。
  32. 【請求項32】 周波数により順序付けられた係数の第
    1配列から周波数により順序付けられた係数の第2配列
    を生成する方法を実行するコンピュータにより実行可能
    な命令のプログラムを送信するために符号化された搬送
    波であって、前記プログラムは、 周波数により順序付けられた係数の前記第1配列におけ
    る各係数に対応する所定のしきい値の配列を設ける命令
    と、 周波数により順序付けられた係数の前記第1配列におけ
    るカットオフの番号を決定する決定命令と、 前記第1配列の周波数係数の各々のなかで、前記決定さ
    れたカットオフの番号以上の番号を有し、かつ対応する
    しきい値以下の大きさである前記第1配列の周波数係数
    の各々を0にすることで、周波数により順序付けられた
    係数の第2配列を生成する命令と、を備えた搬送波。
  33. 【請求項33】 請求項32に記載の搬送波であって、 前記決定命令はさらに、節減できる値の配列を生成する
    命令を備え、 当該節減できる値は前記第1配列における各番号に対応
    し、 各節減できる値は、対応する番号(n)以上の番号を有
    し、かつ対応するしきい値T[n]以下の大きさである前
    記第1配列の前記周波数係数の全てを0にすることによ
    り節減できるビット数を示す、搬送波。
  34. 【請求項34】 請求項33に記載の搬送波であって、 前記節減できる値の配列における各節減できる値は増加
    するビット数であり、しかも、各節減できる値は、 n+1以上の番号を有し、かつしきい値T[n+1]以下
    の大きさである前記第1配列の前記周波数係数の全てを
    0にした場合に比べて、 n以上の番号を有し、かつしきい値T[n]以下の大きさ
    である前記第1配列の前記周波数係数の全てを0にする
    ことにより、さらに節減できるビット数を示す、搬送
    波。
  35. 【請求項35】 請求項33に記載の搬送波であって、 所定の数と最終ブロック状態よりも長い0の連なりを計
    算にいれる場合に、 前記節減できる値の配列における各々の節減できる値
    は、 n番目の係数の前にある0の連なりを符号化するために
    必要なビット数とn番目の係数の後にある0の連なりを
    符号化するために必要なビット数とを加算し、n番目の
    係数の前と後の0の連なりを含む複合された、所定の数
    と最終ブロック状態よりも長い0の連なりを符号化する
    ために必要なビット数を減算することにより計算され
    る、搬送波。
  36. 【請求項36】 請求項32に記載の搬送波であって、 周波数により順序付けられた係数の前記第1配列が、圧
    縮されたビットストリームに符号化された時に、所定の
    ビット量を超え、 周波数により順序付けられた係数の前記第2配列が、圧
    縮されたビットストリームに符号化された時に、所定の
    ビット量におさまる、搬送波。
JP11307669A 1998-10-29 1999-10-28 ファイルサイズが制限されたjpeg符号化装置、方法および記録媒体 Withdrawn JP2000138934A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/183,552 US6233359B1 (en) 1998-10-29 1998-10-29 File size bounded JPEG transcoder (FSBJT)
US09/183552 1998-10-29

Publications (1)

Publication Number Publication Date
JP2000138934A true JP2000138934A (ja) 2000-05-16

Family

ID=22673294

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11307669A Withdrawn JP2000138934A (ja) 1998-10-29 1999-10-28 ファイルサイズが制限されたjpeg符号化装置、方法および記録媒体

Country Status (2)

Country Link
US (1) US6233359B1 (ja)
JP (1) JP2000138934A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002009440A1 (en) * 2000-07-24 2002-01-31 Canon Kabushiki Kaisha Image encoding apparatus and method, image display apparatus and method, image processing system and image sensing apparatus

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100371130B1 (ko) * 1996-05-28 2003-02-07 마쯔시다덴기산교 가부시키가이샤 화상예측 복호화 장치 및 그 방법과 화상예측 부호화 장치및 그 방법
JPH10336647A (ja) * 1997-06-04 1998-12-18 Nikon Corp 画像圧縮装置および画像圧縮処理プログラムを記録したコンピュータ読み取り可能な記録媒体
JP3070683B2 (ja) * 1998-11-13 2000-07-31 日本電気株式会社 画像伝送方法およびその方法を用いた画像伝送装置
WO2001003431A1 (fr) * 1999-07-05 2001-01-11 Hitachi, Ltd. Procede et dispositif d'enregistrement video, procede et dispositif de reproduction video, et support d'enregistrement
US6934417B2 (en) * 2000-12-22 2005-08-23 Texas Instruments Incorporated Transcoding scheme for assistance in image transformations
DE10108581B4 (de) * 2001-02-22 2009-08-27 Mri Devices Daum Gmbh Material für die Kernspintomographie
FR2825224A1 (fr) * 2001-05-22 2002-11-29 Canon Kk Procede et dispositif de compression et ou d'indexation d'images numeriques
AU2002359541A1 (en) * 2001-11-30 2003-06-17 Zaxel Systems, Inc. Image-based rendering for 3d object viewing
JP3880862B2 (ja) * 2002-01-29 2007-02-14 富士フイルムホールディングス株式会社 撮像装置
US7245769B2 (en) * 2002-02-12 2007-07-17 Visioprime Archival of transformed and compressed data
US6931159B2 (en) 2002-02-28 2005-08-16 Nokia Corporation Size reduction method and device for compressed images
DE60330198D1 (de) * 2002-09-04 2009-12-31 Microsoft Corp Entropische Kodierung mittels Anpassung des Kodierungsmodus zwischen Niveau- und Lauflängenniveau-Modus
FR2844935B1 (fr) * 2002-09-25 2005-01-28 Canon Kk Transcodage de donnees numeriques
US6895410B2 (en) * 2003-05-02 2005-05-17 Nokia Corporation Method and apparatus for providing a multimedia data stream
JP4217657B2 (ja) * 2003-07-30 2009-02-04 キヤノン株式会社 画像処理方法、プログラム、記憶媒体及び装置
KR100575984B1 (ko) * 2003-12-06 2006-05-02 삼성전자주식회사 휴대용 단말기의 섬네일 영상 데이터 서비스 방법
US20060008167A1 (en) * 2004-07-06 2006-01-12 Qing Yu Digital camera having picture quality setting
US7444030B2 (en) * 2004-11-12 2008-10-28 Micron Technology, Inc. Image encoding with dynamic buffer-capacity-level-based compression adjustment
JP2007043495A (ja) * 2005-08-03 2007-02-15 Fujitsu Ltd 画像処理装置及び画像処理方法
US7747097B2 (en) * 2006-06-16 2010-06-29 Seiko Epson Corporation Method for simple hardware implementation of JPEG size limiter
GB0708440D0 (en) * 2007-05-02 2007-06-06 Film Night Ltd Data transmission
US8270739B2 (en) 2007-12-03 2012-09-18 Ecole De Technologie Superieure System and method for quality-aware selection of parameters in transcoding of digital images
CN101842811B (zh) * 2007-11-02 2012-05-23 高等技术学校 用于预测经过通过缩放以及质量控制参数的改变而转换的图像的文件大小的系统和方法
US8155455B2 (en) * 2008-03-10 2012-04-10 Mediatek Inc. Image capturing system and method thereof
US8179974B2 (en) 2008-05-02 2012-05-15 Microsoft Corporation Multi-level representation of reordered transform coefficients
US8406307B2 (en) 2008-08-22 2013-03-26 Microsoft Corporation Entropy coding/decoding of hierarchically organized data
US8300961B2 (en) * 2008-12-12 2012-10-30 Ecole De Technologie Superieure Method and system for low complexity transcoding of images with near optimal quality
JP5844263B2 (ja) 2009-10-05 2016-01-13 ビーマル イメージング リミテッドBeamr Imaging Ltd. デジタル画像を再圧縮するための装置および方法
WO2011135558A1 (en) 2010-04-29 2011-11-03 I.C.V.T. Ltd Apparatus and methods for re-compression having a monotonic relationship between extent of comprission and quality of compressed image
FR2963525B1 (fr) * 2010-07-29 2012-09-07 Myriad France Telephone mobile comprenant un serveur de diffusion en flux avec des moyens de commande de la transformation d'un fichier avant sa diffusion
WO2012035534A2 (en) 2010-09-17 2012-03-22 I.C.V.T Ltd. Downsizing an encoded image
US9014471B2 (en) 2010-09-17 2015-04-21 I.C.V.T. Ltd. Method of classifying a chroma downsampling error
US9532080B2 (en) 2012-05-31 2016-12-27 Sonic Ip, Inc. Systems and methods for the reuse of encoding information in encoding alternative streams of video data
US9357210B2 (en) 2013-02-28 2016-05-31 Sonic Ip, Inc. Systems and methods of encoding multiple video streams for adaptive bitrate streaming
US9661331B2 (en) 2013-03-18 2017-05-23 Vantrix Corporation Method and apparatus for signal encoding realizing optimal fidelity
US9338450B2 (en) 2013-03-18 2016-05-10 Ecole De Technologie Superieure Method and apparatus for signal encoding producing encoded signals of high fidelity at minimal sizes
US10609405B2 (en) 2013-03-18 2020-03-31 Ecole De Technologie Superieure Optimal signal encoding based on experimental data
KR20150107259A (ko) * 2014-03-13 2015-09-23 삼성전자주식회사 영상 처리 방법 및 이를 지원하는 전자 장치
US11019365B2 (en) * 2015-07-30 2021-05-25 Zhejiang Dahua Technology Co., Ltd. Methods and systems for image compression

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5253078A (en) 1990-03-14 1993-10-12 C-Cube Microsystems, Inc. System for compression and decompression of video data using discrete cosine transform and coding techniques
US5838834A (en) * 1991-11-07 1998-11-17 Canon Kabushiki Kaisha Image processing apparatus and method for quantizing image data and quantization errors using single quantizing unit and pluralities of quantization tables
JP3161172B2 (ja) * 1993-08-06 2001-04-25 ミノルタ株式会社 符号化装置
JP3163880B2 (ja) 1993-12-16 2001-05-08 松下電器産業株式会社 画像圧縮符号化装置
CA2118880A1 (en) * 1994-03-11 1995-09-12 Kannan Ramchandran Jpeg/mpeg decoder-compatible optimized thresholding for image and video signal compression
US5461422A (en) * 1994-05-23 1995-10-24 Industrial Technology Research Institute Quantizer with automatic pre-threshold
US6002801A (en) * 1995-04-18 1999-12-14 Advanced Micro Devices, Inc. Method and apparatus for improved video decompression by selection of IDCT method based on image characteristics
WO1996034496A2 (en) 1995-04-25 1996-10-31 Philips Electronics N.V. Device and method for coding video pictures
US5778102A (en) 1995-05-17 1998-07-07 The Regents Of The University Of California, Office Of Technology Transfer Compression embedding
US5706216A (en) 1995-07-28 1998-01-06 Reisch; Michael L. System for data compression of an image using a JPEG compression circuit modified for filtering in the frequency domain
US5774597A (en) 1995-09-05 1998-06-30 Ge Medical Systems, Inc. Image compression and decompression using overlapped cosine transforms

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002009440A1 (en) * 2000-07-24 2002-01-31 Canon Kabushiki Kaisha Image encoding apparatus and method, image display apparatus and method, image processing system and image sensing apparatus
US7079696B2 (en) 2000-07-24 2006-07-18 Canon Kabushiki Kaisha Image encoding apparatus and method, image display apparatus and method, image processing system and image sensing apparatus

Also Published As

Publication number Publication date
US6233359B1 (en) 2001-05-15

Similar Documents

Publication Publication Date Title
JP2000138934A (ja) ファイルサイズが制限されたjpeg符号化装置、方法および記録媒体
US7312730B2 (en) Variable length coding method and variable length decoding method
US6560369B1 (en) Conversion of wavelet coded formats depending on input and output buffer capacities
EP0447247A2 (en) Image encoding method and apparatus
US6330369B1 (en) Method and apparatus for limiting data rate and image quality loss in lossy compression of sequences of digital images
JP2001136526A (ja) 画像処理方法及びその装置及び記憶媒体
JP4081741B2 (ja) ROIsの符号化方法とシステム
JP2004032698A (ja) 差動映像圧縮方法及びその装置
JP2000151973A (ja) 情報処理装置およびその方法、並びに、記憶媒体
JP3048033B2 (ja) 画像情報符号化処理装置及び画像情報通信装置
JP3197425B2 (ja) 符号化及び復号装置及びその方法
US20040107399A1 (en) Image processing apparatus and method therefor
JP2000059612A (ja) 画像処理装置及びその方法
JP2000032458A (ja) 画像圧縮法
JPH1188183A (ja) ウェーブレット変換装置およびその方法並びにウェーブレット逆変換装置およびその方法並びに画像符号化装置およびその方法並びに画像復号化装置およびその方法
JP3136523B2 (ja) 画像変換装置
JP2000083214A (ja) 画像処理装置及び方法
JP2000232650A (ja) 画像処理方法、画像処理装置および記録媒体
JPH07222152A (ja) 画像処理装置及びそれにおける圧縮データ制御方法
JPH10136362A (ja) データ圧縮装置およびディジタルビデオ信号処理装置
JP2004120110A (ja) 符号化装置と符号化方法及び符号化プログラム
JP2000032462A (ja) 画像情報符号化処理装置及び画像情報符号化処理方法
JPH1188889A (ja) 帯域幅に制限があるビデオデータ通信用のビデオ圧縮
JP2004304589A (ja) 画像符号化装置及び画像符号化方法
JPH04230184A (ja) 記録再生装置

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20070109