(57)【要約】  ディジタル画像を表現するための画像表現形式は、連続的な画像ブロックを表現するビットストリームとして記憶された画像情報であり、それぞれのブロックが、１つかまたはそれ以上の成分を備え、それぞれの成分が、１つかまたはそれ以上のデータユニットを備え、それぞれのデータユニットが、基底関数の係数のハフマン符号化ストリームとして表現され、０次係数が、対応する成分の以前の０次係数との差分として表現される、前記画像情報と、ブロック情報テーブルと、を備え、前記ブロック情報テーブルが、前記ビットストリーム内のそれぞれの画像ブロックに含まれる特定の次数の最初の係数へのインジケータと、画像ブロックの前記特定の次数の隣接する係数間のビットストリーム内に存在するビット数を指示する情報と、それぞれの成分の少なくとも第１のデータユニットの０次係数であり、前記０次係数が、非差分形式で表現された前記０次係数と、を備える。
2007514345.tif 000002
【特許請求の範囲】
【請求項１】
ディジタル画像を処理するための方法であって、
ディジタル画像を圧縮形式で提供するステップであって、該ディジタル画像は連続的な画像ブロックを表現するビットストリームとして表現され、それぞれの前記ブロックは１つかまたはそれ以上の成分を備え、それぞれの前記成分は１つかまたはそれ以上のデータユニットを備え、それぞれの前記データユニットは基底関数の係数のハフマン符号化ストリームとして表現され、０次係数が、対応する成分の以前の０次係数との差分として表現され、
ブロック情報テーブルが、
前記ビットストリーム内のそれぞれの画像ブロックに含まれる１つの０次係数または１次係数へのインジケータと、
前記画像ブロックの隣接するデータユニットにおける０次または１次の係数間のビットストリーム内に存在するビット数を示す情報と、
それぞれの成分の少なくとも１つのデータユニットの０次係数であって、非差分形式で表現された０次係数とを備えたステップと、
少なくとも１つの画像ブロックのそれぞれのデータユニットごとに、該データユニットの前記０次係数にアクセスし、かつ、データユニットの係数を１つもハフマン符号化しないかあるいは予め定められた数だけハフマン符号化し、ビットストリーム内の隣接するデータユニットにおける係数間のビット数に関するブロック情報テーブル内の情報を用いて、ビットストリーム内における次の０次係数または１次係数へジャンプすることによって、残りの係数をスキップし、それによって、低減された一組のハフマン符号化係数が復号化されるステップと、
を備えた方法。
【請求項２】
前記ディジタル画像が圧縮形式で提供され、前記ブロック情報テーブル内のインジケータは、静的位置から係数までのビットオフセットを示す、請求項１に記載の方法。
【請求項３】
前記ディジタル画像が圧縮形式で提供され、前記ブロック情報テーブル内のインジケータは、ビットストリームランドマークから係数までのビットオフセットを示し、前記ディジタル画像が、さらに、それぞれのビットストリームランドマークがどの画像ブロック内に配置されているかという情報を提供するリストによって表現された、請求項１に記載の方法。
【請求項４】
前記ディジタル画像が圧縮形式で提供され、前記ブロック情報テーブルは、ビットストリーム内において以前の画像ブロックの０次係数との差分として表現された０次係数ごとに、非差分形式で表現された０次係数を備えた、請求項１から請求項３のいずれか一項に記載の方法。
【請求項５】
前記ディジタル画像が圧縮形式で提供され、前記ブロック情報テーブルは、非差分形式で表現されたそれぞれの０次係数を備えた、請求項１から請求項３のいずれか一項に記載の方法。
【請求項６】
前記復号化された画像ブロックをデータ処理装置に提供するステップをさらに備え、それによって、前記画像または画像部分が小さなスケーリングで提供される、請求項１から請求項５のいずれか一項に記載の方法。
【請求項７】
前記復号化された画像ブロックに画像処理を施すための計算を実行するステップをさらに備えた、請求項１から請求項６のいずれか一項に記載の方法。
【請求項８】
前記計算が実行されたときに、該実行された計算の結果を画面上に提供するステップをさらに備えた、請求項７に記載の方法。
【請求項９】
ハフマン復号化される前記データユニットに含まれる係数の数は、より大きな数の係数に対応する復号化される画像ブロックを近似するのに使用される、請求項１から請求項８のいずれか一項に記載の方法。
【請求項１０】
ハフマン復号化される予め定められた数の係数は、４個、９個、１３個、１８個、または、２４個である、請求項１から請求項９のいずれか一項に記載の方法。
【請求項１１】
前記ビットストリームは、ディジタル画像をＪＰＥＧ形式で表現する、請求項１から請求項１０のいずれか一項に記載の方法。
【請求項１２】
ディジタル画像を表現するための画像表現形式であって、
前記画像表現形式は、
連続的な画像ブロックを表現するビットストリームとして記憶された画像情報であって、それぞれの前記ブロックは１つかまたはそれ以上の成分を備え、それぞれの前記成分は１つかまたはそれ以上のデータユニットを備え、それぞれの前記データユニットは基底関数の係数のハフマン符号化ストリームとして表現され、０次係数が、対応する成分の以前の０次係数との差分として表現される画像情報と、
ブロック情報テーブルとを備え、
前記ブロック情報テーブルは、
前記ビットストリーム内のそれぞれの画像ブロックに含まれる１つの０次係数または１次係数へのインジケータと、
前記画像ブロックの隣接するデータユニットにおける０次または１次の係数間のビットストリーム内に存在するビット数を示す情報と、
それぞれの成分の少なくとも１つのデータユニットの０次係数であって、非差分形式で表現された０次係数とを備えたことを特徴とする画像表現形式。
【請求項１３】
前記ブロック情報テーブル内のインジケータは、静的位置から係数までのビットオフセットを示す、請求項１２に記載の画像表現形式。
【請求項１４】
前記ブロック情報テーブル内のインジケータは、ビットストリームランドマークから係数までのビットオフセットを示し、前記画像表現形式は、さらに、それぞれのビットストリームランドマークがどの画像ブロック内に配置されているかという情報を提供するリストを備えた、請求項１２に記載の画像表現形式。
【請求項１５】
前記ブロック情報テーブルは、前記ビットストリーム内において以前の画像ブロックの０次係数との差分として表現された０次係数ごとに非差分形式で表現された０次係数を備えた、請求項１２から請求項１４のいずれか一項に記載の画像表現形式。
【請求項１６】
前記ブロック情報テーブルは、非差分形式で表現されたそれぞれの０次係数を備えた、請求項１２から請求項１４のいずれか一項に記載の画像表現形式。
【請求項１７】
前記ビットストリームは、前記ディジタル画像をＪＰＥＧ形式で表現する、請求項１２から請求項１６のいずれか一項に記載の画像表現形式。
【請求項１８】
生画像データを圧縮ディジタル画像表現に符号化するための方法であって、
前記生画像データの特定のサイズを有する画像ブロックを任意の順序で読むステップを備え、
前記画像ブロックごとに、
前記画像ブロックを１つかまたはそれ以上の成分の１つかまたはそれ以上のデータユニットに変換するステップであって、それぞれのデータユニットの表現を基底関数の係数として生成するステップと、
前記係数の量子化された近似値を計算するステップと、
少なくともいくつかの量子化された係数を連続的な画像ブロックの係数のストリームとして表現するステップと、
係数の前記ストリームをハフマン符号化するステップであって、０次係数が、対応する成分の以前の０次係数との差分として表現されるステップと、
係数の前記ハフマン符号化ストリームをビットストリームに記憶するステップと、
前記ビットストリーム内においてそれぞれの画像ブロックの１つの０次係数または１次係数へのインジケータをブロック情報テーブルに記憶するステップと、
前記画像ブロックの隣接するデータユニットにおける０次または１次の係数間の前記ビットストリーム内に存在するビット数を示す情報をブロック情報テーブルに記憶するステップと、
それぞれの成分の少なくとも１つのデータユニットの０次係数をブロック情報テーブルに記憶するステップであって、前記０次係数が非差分形式で表現されたステップと、を備えた方法。
【請求項１９】
前記ブロック情報テーブル内の前記インジケータは、静的位置から係数までのビットオフセットのインジケータとして記憶される、請求項１８に記載の方法。
【請求項２０】
前記ブロック情報テーブル内の前記インジケータは、ビットストリームランドマークから係数までのビットオフセットのインジケータとして記憶され、前記画像表現形式は、それぞれのビットストリームランドマークがどの画像ブロック内に配置されているかという情報を提供するリストをさらに備えた、請求項１８に記載の方法。
【請求項２１】
０次係数が、ビットストリーム内において以前の画像ブロックの０次係数との差分として表現された０次係数ごとに非差分形式で記憶され、かつ、表現された、請求項１８から請求項２０のいずれか一項に記載の方法。
【請求項２２】
それぞれの０次係数は、非差分形式で記憶され、かつ、表現された、請求項１８から請求項２０のいずれか一項に記載の画像表現形式。
【請求項２３】
前記ビットストリームは、前記ディジタル画像をＪＰＥＧ形式で表現する、請求項１８から請求項２２のいずれか一項に記載の方法。
【請求項２４】
ＪＰＥＧ圧縮ディジタル画像を解析する方法であって、前記ＪＰＥＧ圧縮ディジタル画像は、ビットストリームとして表現され、前記ビットストリームは連続的な画像ブロックを表現し、それぞれの前記ブロックは１つかまたはそれ以上の成分を備え、それぞれの前記成分は１つかまたはそれ以上のデータユニットを備え、それぞれの前記データユニットは基底関数の係数のハフマン符号化ストリームとして表現され、０次係数が、対応する成分の以前の０次係数との差分として表現される方法あって、
前記ビットストリームを順次に通過させるステップを備え、
前記ビットストリームを通過させるときに、
それぞれの前記画像ブロックの１つの０次係数または１次係数へのインジケータをブロック情報テーブルに記憶するステップと、
０次係数を復号化し、それぞれの成分の少なくとも１つのデータユニットの０次係数を前記ブロック情報テーブルに記憶するステップであって、前記０次係数が非差分形式で表現されたステップと、
前記画像ブロックの隣接するデータユニットにおける０次または１次の係数間のビットストリーム内に存在するビット数を示す情報をブロック情報テーブルに記憶するステップと、を備え、
一連のビットストリームエントリーによって表現された非０次係数であり、前記ビットストリーム内のデータユニットの非０次係数を通過させるステップは、
前記ビットストリーム内でそれに続く所定数のビットのビットシーケンスを参照するステップと、
前記ビットシーケンスにおける少なくとも第１のビットストリームエントリーのカテゴリーおよびゼロランレングスを決定するために、並びに、第１のビットストリームエントリーのビット長を決定するために、テーブルを検索するステップと、
決定されたビット長に対応するビットストリーム内のビット数をスキップするステップと、
隣接するデータユニットにおける０次または１次の係数間の前記ビットストリーム内に存在するビット数に関する情報を収集するために、スキップされたビット数の総数を計算するステップと、
前記データユニットのすべての係数が通過するまでにあるいはブロックシンボルの終点に到達するまでに通過した係数の総数を計算するステップと、を備えた方法。
【請求項２５】
参照されるそれぞれの前記ビットシーケンスは、１６ビットからなる、請求項２４に記載の方法。
【請求項２６】
テーブルを検索するステップは、ビットシーケンスの最初の８ビットからなる第１のテーブルを検索するステップを備えた、請求項２５に記載の方法。
【請求項２７】
前記第１のテーブル検索は、前記第１のビットストリームエントリーのビット長および通過する係数の数に関する情報をもたらし、あるいは、第２のテーブル検索のための情報をもたらす、請求項２６に記載の方法。
【請求項２８】
前記テーブルを検索するステップは、前記第１のビットストリームエントリーのビット長および通過する係数の数を決定するために、前記ビットシーケンスの最後の８ビットからなる第２のテーブルを検索するステップをさらに備えた、請求項２７に記載の方法。
【請求項２９】
前記ブロック情報テーブル内の前記インジケータは、静的位置から係数までのビットオフセットのインジケータとして記憶される、請求項２４から請求項２８のいずれか一項に記載の方法。
【請求項３０】
前記ブロック情報テーブル内の前記インジケータは、ビットストリームランドマークから係数までのビットオフセットのインジケータとして記憶され、前記画像表現形式は、それぞれのビットストリームランドマークがどの画像ブロック内に配置されているかという情報を提供するリストをさらに備えた、請求項２４から請求項２８のいずれか一項に記載の方法。
【請求項３１】
前記０次係数は、前記ビットストリーム内において以前の画像ブロックの０次係数との差分として表現された０次係数ごとに非差分形式で記憶され、かつ、表現された、請求項２４から請求項３０のいずれか一項に記載の方法。
【請求項３２】
それぞれの前記０次係数は、非差分形式で記憶され、かつ、表現された、請求項２４から請求項３０のいずれか一項に記載の方法。
【請求項３３】
２つのディジタル画像をつなぎ合わせるための方法であって、
前記２つのディジタル画像間の空間的関係を決定するステップと、
前記２つのディジタル画像間の空間的関係に基づいて、前記２つのディジタル画像内に存在するディジタル画像情報の画像ブロックにインデックスを割り当てるステップと、
前記割り当てられたインデックスに基づいて、連続的な画像ブロックを表現するビットストリームを形成するステップであって、それぞれの前記ブロックは１つかまたはそれ以上の成分を備え、それぞれの前記成分は１つかまたはそれ以上のデータユニットを備え、それぞれの前記データユニットは基底関数の係数のハフマン符号化ストリームとして表現されるステップと、
前記画像ブロックの位置に基づいて、前記画像ブロックごとの画像ブロック情報をブロック情報テーブルに記憶するステップとを備え、
前記画像ブロック情報は、
前記ビットストリーム内のそれぞれの前記画像ブロックに含まれる１つの０次係数または１次係数へのインジケータと、
前記画像ブロックの隣接するデータユニットにおける０次または１次の係数間のビットストリーム内に存在するビット数を示す情報と、
それぞれの前記成分の少なくとも１つのデータユニットの０次係数であって、非差分形式で表現された０次係数と、を備えたことを特徴とする方法。
【請求項３４】
ディジタル画像を表現するための画像表現形式であって、
連続的な画像ブロックを表現するビットストリームとして記憶された画像情報であって、それぞれの前記ブロックは１つかまたはそれ以上の成分を備え、それぞれの前記成分は１つかまたはそれ以上のデータユニットを備え、それぞれの前記データユニットは基底関数の係数のハフマン符号化ストリームとして表現され、０次係数が、対応する成分の以前の０次係数との差分として表現される画像情報と、
前記ビットストリームに関連して記憶されたビットストリーム情報であって、前記画像ブロック内に存在するそれぞれの前記データユニットのビット数を示す情報を備えたビットストリーム情報と、を備えた画像表現形式。
【請求項３５】
前記ビットストリーム情報は圧縮されている、請求項３４に記載の画像表現形式。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディジタル画像を処理する方法に関し、また、ディジタル画像を表示するための画像表現形式に関する。本発明は、さらに、生画像データを圧縮ディジタル画像表現に符号化するための方法、および、ＪＰＥＧ圧縮ディジタル画像を解析する方法に関する。
【背景技術】
【０００２】
今日の社会においては、膨大な量の情報が、毎日、生成されている。多くの情報は、画像の形で提供されている。さらに、大部分の情報は、例えばインターネット上で電子的に記憶および提供される。一方、インターネットへの無線接続の利用が、増加しており、この場合、データ転送速度は、比較的に低い。したがって、情報をきわめて小さくまとめた形で提供することが必要である。これは、画像の場合、とりわけ重要なことである。なぜなら、画素のアレイとして記憶された通常のディジタル画像は、きわめて大きなデータセットとして表現されるからである。
【０００３】
さらに、カメラを内蔵した携帯電話は、益々、普及しつつある。したがって、携帯電話は、ディジタル画像を処理することができなければならない。画像を処理する携帯電話またはその他のハンドヘルド装置は、限られたメモリ空間および限られた処理能力しか持たない。したがって、画像処理が、そのような装置上で実行されなければならない場合、メモリ空間および処理能力をあまり必要としないように、ディジタル画像は、効率的かつ理知的に記憶されなければならない。
【０００４】
これらの理由から、画像を圧縮することに大きな関心が持たれている。画像を圧縮する一般的な方法は、ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）標準である。ＪＰＥＧ標準は、ＣＣＩＴＴ勧告Ｔ．８１に定義されている。
【０００５】
しかしながら、明確にしておくために、ＪＰＥＧ標準に基づいた画像ファイル形式について、以下に簡単に説明する。
【０００６】
ＪＰＥＧ標準は、非可逆ベースライン符号化方式を定義しており、その非可逆ベースライン符号化方式は、ＤＣＴ変換、および、より少ない量のデータに変換された画像を提供するための拡張符号化方式に基づくものである。ディジタル画像をＪＰＥＧファイル形式に変換する場合、画像のＤＣＴ変換および量子化がなされ、画像の色空間モデルのそれぞれの成分は、個々にＤＣＴ変換される。すべての色成分は、ブロックとして表現され、それらのブロックは、順々に処理される。ＤＣＴ変換されたブロックは、画像の認識にあまり影響を及ぼすことのない情報の基底関数を廃棄するために、しきい値処理され、かつ、量子化される。各ブロックに含まれる各成分の０次係数（ＤＣ係数）は、ハフマン符号化を用いて、先行するＤＣ係数との差分として記憶される。より高い高次係数（ＡＣ係数）が、連続的に配列され、そのシーケンスは、ジグザグ順序によってアレイから得られる。ＡＣ係数は、ゼロランレングス符号化され、さらに、ハフマン符号化によって符号化される。
【０００７】
ＪＰＥＧファイル形式は、ディジタル画像の記憶容量を相当に減少させる標準的な圧縮を生成するために開発されたものである。したがって、ＪＰＥＧファイル形式は、画像の操作に適したものではない。ディジタル画像を処理したい場合、ディジタル画像を空間領域表現に逆変換することが最も都合が良い。しかしながら、携帯電話のような小さな記憶空間しか有していない装置で画像を処理する場合、空間領域において表現された大きな記憶容量を必要とするディジタル画像は、処理することができないことがある。
【０００８】
欧州特許第１０３７１６５号は、ＪＰＥＧ形式で記憶されたディジタル画像を操作するための方法を説明している。ＪＰＥＧ画像のビットストリームは、ビットストリーム内における画像領域の位置を識別するために、プレスキャンされる。これらの位置の中で指定されたものは、容易にアクセスするために、プレスキャンテーブルに記憶され、それによって、画像の一部分を操作しなければならないとき、全ビットストリームを復号化することを必要とせずに、選択された画像領域にアクセスすることができる。しかしながら、それにもかかわらず、メモリをあまり必要とせずに、画像処理の速度をさらに増加させる必要がある。
【発明の開示】
【発明が解決するための手段】
【０００９】
本発明の目的は、容易に解析および／または操作することのできる圧縮画像を提供することである。本発明のさらなる目的は、いくつかのディジタル画像をつなぎ合わせて（stitch）容易に圧縮画像表現形式にすることを可能にすることである。
【００１０】
本発明のこれらのおよびその他の目的は、本発明の第１の形態によれば、ディジタル画像を処理する方法によって達成される。この方法は、
ディジタル画像を圧縮された形式で提供するステップを具備し、
ディジタル画像は連続的な画像ブロックを表現するビットストリームとして表現され、それぞれのブロックは１つかまたはそれ以上の成分を備え、それぞれの成分は１つかまたはそれ以上のデータユニットを備え、それぞれのデータユニットは基底関数の係数のハフマン符号化ストリームとして表現され、０次係数は対応する成分の以前の０次係数との差分として表現され、
ブロック情報テーブルは、
ビットストリーム内のそれぞれの画像ブロックに含まれる１つの０次係数または１次係数へのインジケータと、
画像ブロックの隣接するデータユニットにおける０次または１次の係数間のビットストリーム内に存在するビット数を指示する情報と、
それぞれの成分の少なくとも１つのデータユニットの０次係数であって、非差分形式で表現された前記０次係数とを備える。
【００１１】
この方法は、さらに、少なくとも１つの画像ブロックのそれぞれのデータユニットごとに、
データユニットの０次係数にアクセスし、かつ、データユニットの係数を１つもハフマン符号化しないかあるいは予め定められた数だけハフマン符号化し、ビットストリーム内で隣接するデータユニットにおける係数間のビット数に関するブロック情報テーブル内の情報を用いて、ビットストリーム内における次の０次係数または１次係数へジャンプすることによって、残りの係数をスキップし、それによって、低減された一組のハフマン符号化係数が復号化されるステップを備える。
【００１２】
本出願の内容においては、「画像ブロック」という用語は、画像の空間的な部分を表現するものと解釈されるべきであり、前記ブロックは、様々な色モデル成分からの情報を有してもよい。それぞれの画像ブロックは、色モデル成分ごとに、１つかまたはそれ以上の組の係数として表現されてもよい。
【００１３】
本発明の第２の形態によれば、これらの目的は、ディジタル画像を表現するための画像表現形式によって達成される。この画像表現形式は、
連続的な画像ブロックを表現するビットストリームとして記憶された画像情報であって、それぞれのブロックは１つかまたはそれ以上の成分を備え、それぞれの成分は１つかまたはそれ以上のデータユニットを備え、それぞれのデータユニットは基底関数の係数のハフマン符号化ストリームとして表現され、０次係数は対応する成分の以前の０次係数との差分として表現される画像情報と、
ブロック情報テーブルとを備え、
前記ブロック情報テーブルは、
前記ビットストリーム内のそれぞれの画像ブロックに含まれる１つの０次係数または１次係数へのインジケータと、
画像ブロックの隣接するデータユニットにおける０次または１次の係数間のビットストリーム内に存在するビット数を指示する情報と、
それぞれの成分の少なくとも１つのデータユニットの０次係数であって、前記０次係数が非差分形式で表現された０次係数とを備える。
【００１４】
本発明の第３の形態によれば、生画像データを圧縮ディジタル画像表現に符号化するための方法が提供される。この方法は、
生画像データの特定のサイズの画像ブロックを任意の順序で読み出すステップを備え、
また、画像ブロックごとに、
画像ブロックを１つかまたはそれ以上の成分の１つかまたはそれ以上のデータユニットに変換するステップであり、前記変換するステップが、それぞれのデータユニットの表現を基底関数の係数として生成する、前記変換するステップと、
前記係数の量子化された近似値を計算するステップと、
少なくともいくつかの量子化された係数を連続的な画像ブロックの係数のストリームとして表現するステップと、
係数の前記ストリームをハフマン符号化するステップであって、０次係数が、対応する成分の以前の０次係数との差分として表現されるハフマン符号化ステップと、
係数の前記ハフマン符号化ストリームをビットストリームに記憶するステップと、
ビットストリーム内のそれぞれの画像ブロックの１つの０次係数または１次係数へのインジケータをブロック情報テーブルに記憶するステップと、
画像ブロックの隣接するデータユニットにおける０次または１次の係数間のビットストリーム内に存在するビット数を指示する情報をブロック情報テーブルに記憶するステップと、
それぞれの成分の少なくとも１つのデータユニットの０次係数をブロック情報テーブルに記憶するステップであって、前記０次係数が非差分形式で表現された記憶ステップと、を備える。
【００１５】
本発明の第４の形態によれば、ＪＰＥＧ圧縮ディジタル画像を解析する方法が提供される。ＪＰＥＧ圧縮ディジタル画像は、ビットストリームとして表現され、前記ビットストリームは連続的な画像ブロックを表現し、それぞれのブロックは１つかまたはそれ以上の成分を備え、それぞれの成分は１つかまたはそれ以上のデータユニットを備え、それぞれのデータユニットは基底関数の係数のハフマン符号化ストリームとして表現され、０次係数は対応する成分の以前の０次係数との差分として表現される。この方法は、
ビットストリームを連続的に進むステップを備え、
ビットストリームをステッピングするときに、
それぞれの画像ブロックの１つの０次係数または１次係数へのインジケータをブロック情報テーブルに記憶するステップと、
０次係数を復号化し、それぞれの成分の少なくとも１つのデータユニットの０次係数をブロック情報テーブルに記憶するステップであって、前記０次係数が非差分形式で表現されているステップと、
画像ブロックの隣接するデータユニットにおける０次または１次の係数間のビットストリーム内に存在するビット数を指示する情報をブロック情報テーブルに記憶するステップと、を備える。非０次係数が、一連のビットストリームエントリーによって表現される、ビットストリーム内のデータユニットの前記非０次係数をステッピングするステップは、
ビットストリーム内の予め定められた数のそれに続くビットのビットシーケンスを参照するステップと、
ビットシーケンスにおける少なくとも第１のビットストリームエントリーのカテゴリーおよびゼロランレングスを決定するために、並びに、第１のビットストリームエントリーのビット長を決定するために、テーブルを検索するステップと、
決定されたビット長に対応するビットストリーム内のビット数をスキップするステップと、
隣接するデータユニットにおける０次または１次の係数間のビットストリーム内に存在するビット数に関する情報を収集するために、スキップされたビット数の数を合計するステップと、
データユニットのすべての係数をステップするまでにあるいはブロックシンボルの終点に到達するまでにステップされた係数の数を合計するステップと、を備える。
【００１６】
本発明の第５の形態によれば、２つのディジタル画像をつなぎ合わせるための方法が提供される。この方法は、
２つのディジタル画像間の空間的関係を決定するステップと、
２つのディジタル画像間の空間的関係に基づいて、２つのディジタル画像内に存在するディジタル画像情報の画像ブロックにインデックスを割り当てるステップと、
割り当てられたインデックスに基づいて、連続的な画像ブロックを表現するビットストリームを形成するステップであって、それぞれのブロックは１つかまたはそれ以上の成分を備え、それぞれの成分は１つかまたはそれ以上のデータユニットを備え、それぞれのデータユニットは基底関数の係数のハフマン符号化ストリームとして表現されるステップと、
画像ブロックの位置に基づいて、画像ブロックごとの画像ブロック情報をブロック情報テーブルに記憶するステップとを備え、
前記画像ブロック情報は、
前記ビットストリーム内のそれぞれの画像ブロックに含まれる１つの０次係数または１次係数へのインジケータと、
画像ブロックの隣接するデータユニットにおける０次または１次の係数間のビットストリーム内に存在するビット数を指示する情報と、
それぞれの成分の少なくとも１つのデータユニットの０次係数であって、非差分形式で表現された０次係数とを備える。
【００１７】
本発明の少なくともいくつかの形態によって、ディジタル画像は、小さな記憶空間しか必要としない画像表現形式で表現され、それにもかかわらず、圧縮された表現形式によるディジタル画像は、容易に処理されることが可能である。これは、携帯電話のような小さな記憶空間および小さな処理能力しか備えていない用途においてとりわけ有益である。本発明は、ディジタル画像を圧縮された形式で記憶するのを可能にするが、依然として、リアルタイムに処理および操作され、そして、画面上に表示される。本発明による画像表現形式および画像を処理するための方法により、画像は、小さなスケーリングで、あるいは、低い解像度で、きわめて迅速に提供される。画像ブロックの０次係数を記憶することは、以前の０次係数に関する情報を用いて０次係数を計算しなくてもよいことを意味する。さらに、所望のどのような数の非０次係数が、復号化されてもよい。ビットストリーム内の残りの非０次係数は、迅速にスキップすることができる。なぜなら、ブロック情報テーブルが、隣接するデータユニットの係数間のビット長に関する情報を提供し、次のデータユニットへの迅速なアクセスを可能にするからである。これは、低減されたスケーリングで画像を迅速に復号化できることを意味する。なぜなら、画像ブロック内の次のデータユニットの開始点または次の画像ブロックの開始点を見つけるために、ビットストリーム内の非０次係数を復号化しなくてもよいからである。したがって、画像表現形式は、ディジタル画像への迅速なアクセスを可能にする。
【００１８】
それぞれの画像ブロックの１つの０次係数または１次係数へのインジケータを記憶することは、係数のハフマン符号化ストリームをストリームの開始点から復号化することを必要とせずに、画像の或る部分への迅速なアクセスを提供する。それに代え、画像ブロックは、インジケータを用いて、直接にアクセスされてもよい。さらに、それぞれの成分の少なくとも１つのデータユニットの０次係数は、ブロック情報テーブルにおいて、非差分形式で表現される。したがって、係数のハフマン符号化ストリームからの値を計算しなくてもよい。これは、ディジタル画像の一部分を提供および操作するのを可能にし、そして、それは、圧縮画像表現形式によるものである。なぜなら、画像の一部分は、無作為にアクセスおよび解析されてもよいからである。
【００１９】
本発明による画像表現形式によれば、ディジタル画像を最小のサイズに圧縮しようとする目的は、幾分妨げられる。したがって、ディジタル画像のサイズは、最適に圧縮はされないが、その代わりに、画像の或る部分を迅速に検索するのを可能にするために、係数のハフマン符号化ストリームに関する何らかのさらなる情報が、個々に記憶される。とりわけ、非０次係数の部分だけをハフマン復号化することによって、また、より小さなサイズのブロックを計算するために、４×４のようなより小さなブロックに適合させられた逆離散コサイン変換を用いて、画像または画像部分を別のスケーリングできわめて迅速に復号化することが可能である。画像表現形式は、ＪＰＥＧ画像に容易に変換することができる。なぜなら、この画像表現形式は、ＪＰＥＧ画像形式にきわめて類似しているからである。したがって、画像がさらなる操作を必要としなければ、ＪＰＥＧ画像への変換を実行し、かつ、インジケータおよび係数の記憶された値を除去することが可能である。
【００２０】
係数のハフマン符号化ストリームは、ブロック情報テーブルに個々に記憶された０次係数を備えなくてもよい。しかしながら、係数のハフマン符号化ストリームは、いずれにせよ、すべての係数を備えてもよい。画像表現形式が、別の画像形式に変換されなければならない場合、これは都合が良いことかもしれない。なぜなら、ビットストリーム自身が、その後に、別の画像形式で直接に使用される場合があるからである。
【００２１】
「ブロック情報テーブル」という用語は、厳密にテーブルと解釈されるべきではなく、ただ単に、記憶された情報が制御された形で記憶されることであり、記憶された情報のテーブル内における位置は情報が表現する画像内における空間的な位置に関係づけられると解釈されるべきである。したがって、ブロック情報テーブルは、例えば、いくつかのリストまたはテーブルに分割されてもよい。さらに、「係数のハフマン符号化ストリーム」は、ストリーム全体がハフマン符号化されることを必ずしも意味するとは限らない。ストリームは、係数の生データと混合されたハフマン符号を備えてもよい。例えば、ＪＰＥＧ圧縮ファイルにおいては、係数のゼロランレングスおよびカテゴリーは、ハフマン符号化され、カテゴリー内の係数の値は、非圧縮ビットによって記述される。
【００２２】
インジケータおよび係数をブロック情報テーブルに記憶することによって、画像情報を記憶する明確な構造が、得られる。
【００２３】
画像ブロックは、例えば、３つの色モデル成分、すなわち、１つの輝度成分および２つの色成分を備えてもよい。ディジタル画像を１つの輝度成分および２つの色成分で表現することは、色成分が、目で認識のできる情報がほとんど失われることなく、より低い解像度で表現されてもよいことを意味する。したがって、ディジタル画像内の情報の初期圧縮は、３つの色成分のようなディジタル画像の表現に関連して達成されてもよい。そのような圧縮を用いて、それぞれの画像ブロックは、例えば、輝度成分のための４つのデータユニットと、それぞれの色成分ごとに１つのデータユニットとを備えてもよい。データユニットは、係数のハフマン符号化ストリーム内に順々に並べられる。
【００２４】
本発明の第６の形態によれば、ディジタル画像を表現するための画像表現形式が提供される。この画像表現形式は、
連続的な画像ブロックを表現するビットストリームとして記憶された画像情報であって、それぞれのブロックは１つかまたはそれ以上の成分を備え、それぞれの成分は１つかまたはそれ以上のデータユニットを備え、それぞれのデータユニットは基底関数の係数のハフマン符号化ストリームとして表現され、０次係数は対応する成分の以前の０次係数との差分として表現される画像情報と、
ビットストリームに関連して記憶されたビットストリーム情報であって、前記ビットストリーム情報は画像ブロック内に存在するそれぞれのデータユニットのビット数を示す情報を備えたビットストリーム情報と、を備える。
【００２５】
この画像表現形式は、比較的に小さな記憶空間しか必要としない。画像表現形式は、本発明の第２の形態の画像表現形式に基づいてブロック情報テーブルを迅速に生成するのを可能にするビットストリーム情報しか保持しない。したがって、本発明の第６の形態によるこの画像表現形式は、長時間にわたり画像を記憶するのに適したものである。画像がアクセスされる場合、ビットストリーム情報は、ビットストリームを迅速に解析してブロック情報テーブルを生成するのに使用されてもよい。画像ブロック内のそれぞれのデータユニットのビット数を示す情報が、データユニットに迅速にアクセスするのに使用されてもよい。データユニットにアクセスしているとき、インジケータが生成されてもよく、隣接するデータユニットの０次または１次の係数間のビット数を示す情報が収集されてもよく、それぞれの成分の少なくとも１つの０次係数を非差分形式で記憶するために、０次係数が復号化されてもよい。
【００２６】
ビットストリーム情報は圧縮されてもよい。これは、第６の形態の画像表現形式をきわめて効率的に記憶することができることを意味する。
【００２７】
ブロック情報テーブル内のインジケータは、静的位置から前記特定の次数の係数までのビットオフセットを示してもよい。静的位置は、例えば、ビットストリームの開始点であってもよい。したがって、インジケータは、それぞれの画像ブロック内の特定のビット位置へのポインタとして実現される。これは、それぞれの画像ブロックを迅速に検索することができることを意味し、それによって、係数のハフマン符号化ストリームの特定の部分へのアクセスを迅速化することができる。
【００２８】
あるいは、ブロック情報テーブル内のインジケータは、ビットストリームランドマークから係数までのビットオフセットを示してもよい。そして、画像表現形式は、それぞれのビットストリームランドマークがどの画像ブロック内に配置されているかという情報を提供するリストを備えてもよい。このようにして、インジケータのビットオフセットをより少ないビット数によって記憶することができる。なぜなら、ビットストリームランドマークからのビットオフセットは、ほとんどの場合、静的位置からのビットオフセットよりも小さいからである。これは、より少ないメモリを用いてインジケータを記憶することができることを意味する。その代わりに、リストは、それぞれのランドマークがどの画像ブロック内に配置されているかという情報を提供する必要がある。したがって、特定の画像ブロックが、アクセスされる場合、その特定の画像ブロックの前に存在する最後のビットストリームランドマークを探し出すために、まず最初に、検査がリストにおいてなされる。そして、関連するビットストリームランドマークおよびそのランドマークからのビットオフセットに関する情報が、ビットストリーム内の所望の画像ブロックを探し出すのに使用される。
【００２９】
インジケータは、画像ブロックの０次または１次の係数をポイントしてもよい。インジケータが、０次係数をポイントしている場合、データユニットの開始点は、容易にアクセスされる。そして、０次係数が、非差分形式でブロック情報テーブルにすでに記憶されていても、非０次係数にアクセスするためには、０次係数が、復号化される必要がある。インジケータが、１次係数をポイントしている場合には、非０次係数は、直接にアクセスされてもよい。
【００３０】
さらに、隣接するデータユニットの係数間のビットストリーム内に存在するビット数を示す情報は、どのような組み合わせの０次係数と１次係数との間のビット数を示してもよい。この情報は、ビットストリーム内においてデータユニットから隣接するデータユニットへ迅速にジャンプするのに使用されてもよい。上述したように、データユニットに関する情報は、０次係数にアクセスすることによってか、あるいは、０次係数がブロック情報テーブルからわかる場合には、１次係数に直接にアクセスすることによって、容易にアクセスされる。したがって、ビット数を指示する情報は、０次係数へのビット数を指示するか、あるいは、１次係数へのビット数を示してもよい。同様に、画像表現形式は、それが０次係数かまたは１次係数からのビット数を示すのに都合が良いように構造化される。
【００３１】
また、インジケータは、画像ブロック内に存在するどのようなデータユニット内の係数をポイントしてもよい。そして、隣接するデータユニット間のビット数に関する情報は、画像ブロック内のいずれかのデータユニットにアクセスするのに使用されてもよい。さらに、インジケータが示すデータユニットの０次係数は、好ましくは、ブロック情報テーブルに記憶される。成分のその他のデータユニットの０次係数は、ビットストリーム内に記憶された０次係数間の差分に関する情報を用いて計算されてもよい。インジケータが画像ブロックの第１のデータユニット内の０次係数または１次係数を示すことは、都合の良いことである。したがって、画像ブロックの開始点が、インジケータによって直接にアクセスされる。
【００３２】
ブロック情報テーブルは、ビットストリーム内において以前の画像ブロックの０次係数との差分として表現された０次係数ごとに非差分形式で表現された０次係数を備えてもよい。これは、それぞれの画像ブロックが独立してアクセスされてもよいことを意味する。なぜなら、ブロック情報テーブルは、以前の画像ブロックに依存するものとしてビットストリーム内に提供されたすべての情報を提供するからである。特定の実施形態によれば、ブロック情報テーブルは、ビットストリームランドマークから係数までのビットオフセットを示すインジケータ、および、ビットストリーム内において以前の画像ブロックの０次係数との差分として表現された係数ごとの非差分形式による０次係数だけを備える。この実施形態は、小さなサイズのブロック情報テーブルを提供し、それは、記憶容量が限られている場合に有益である。
【００３３】
あるいは、ブロック情報テーブルは、非差分形式で表現されたそれぞれの０次係数を備える。これは、ビットストリーム内において０次係数が画像ブロック内のデータユニットの０次係数との差分として表現されたデータユニットごとに０次係数を計算しなくてもよいことを意味する。したがって、画像ブロックに関する情報により迅速にアクセスすることができる。しかしながら、より多くの情報が、ブロック情報テーブル内に必要とされる。
【００３４】
さらに、ビットストリームは、ディジタル画像をＪＰＥＧ形式で表現してもよい。したがって、通常のＪＰＥＧ圧縮画像またはすでに圧縮されたＪＰＥＧ画像は、画像の特定の部分に迅速にアクセスし、その部分を操作し、および／または、解析するための付加的な情報に関連づけられてもよい。
【００３５】
本発明の第１の形態の方法の実施形態によれば、方法は、さらに、復号化された画像ブロックをデータ処理装置またはデータ表示装置に提供するステップを備え、それによって、画像または画像部分は、低減されたスケーリングで表示される。データ処理装置またはデータ表示装置は、例えば、画面、プリンタ、または、画像処理を実行するためのハードウェアユニットであってもよい。画像または画像部分は、例えば画面上に迅速に提供されてもよい。なぜなら、この方法は、画面上に表示するために、ディジタル画像の関連する部分をきわめて迅速に復号化するからである。これは、いらいらさせる待ち時間をユーザが経験することなく、画像をユーザに提供することができることを意味する。
【００３６】
この方法は、さらに、復号化された画像ブロックに画像処理を施すための計算を実行するステップを備えてもよい。このように、画像は、低減された一組のハフマン符号化係数しか復号化されないので、少ない計算しか必要としない。したがって、画像処理は、比較的に迅速に実行されることが可能である。
【００３７】
この方法は、さらに、計算が実行されたときに、実行された計算の結果を画面上に表示するステップを備えてもよい。この方法は、画像が選択されたときに、圧縮形式で記憶された画像をリアルタイムに表示するステップ、および、画像をリアルタイムに操作するステップを提供する。なぜなら、この方法は、画像の関連する部分にきわめて迅速にアクセスし、かつ、それらをわずかな量のデータに復号化することを提供し、それによって、操作を迅速に実行および提供することができるからである。さらに、この方法は、携帯電話のような小さなメモリ空間しか持たない装置上における画像の操作を定義および実行するのを可能にする。
【００３８】
本発明の第１の形態に従った方法の実施例によれば、ハフマン復号化されたデータユニットの係数の数は、より大きな数の係数に対応する復号化された画像ブロックを近似するのに使用される。近似は、ハフマン復号化係数がより多くの係数を表現するのを可能にし、それによって、より低い品質の画像が、生成されてもよく、あるいは、より少ない画像ブロック当たりの画素を有するより小さい画像が、生成されてもよい。近似は、画像の最も細かな部分を失うが、画像の品質は、それにもかかわらず、満足できるものである。なぜなら、画像が粗いという特徴は、それぞれのデータユニット内の最初の係数によって表現されるからである。
【００３９】
ハフマン復号化される係数の予め定められた数は、例えば、４、９、１３、１８、または、２４であってもよい。４または２４の係数が、それぞれ、復号化される場合、復号化された係数は、それぞれ、８×８画素から２×２画素および４×４画素までのそれぞれの画像ブロックのスケーリングを表現する。９、１３、または、１８の係数が、ハフマン復号化される場合、復号化された係数は、４×４画素の画像ブロックの表現を近似するのに使用されてもよい。復号化される係数のこれらの数は、とりわけ都合が良い。なぜなら、９、１３、および、１８の係数の直後に続く係数は、４×４画素の画像ブロックに関する情報として使用されなくてもよいからである。
【００４０】
本発明の第２の形態の画像表現形式の実施形態によれば、インジケータ、隣接するデータユニットの係数間のビット数を指示する情報、および、非差分形式で表現された０次係数は、ブロック情報テーブル内の１つのストリーム内に記憶される。別の実施形態においては、インジケータ、係数の値、および、画像情報が、別個のメモリ領域に記憶される。
【００４１】
本発明の第４の形態に従った方法の実施例によれば、参照されるそれぞれのビットシーケンスは、１６ビットを備える。これは、とりわけ、ビットストリームエントリーの形式に都合が良い。非０係数を符号化するビットストリームエントリーは、２つの部分からなる。第１の部分は、ハフマン符号化され、かつ、ゼロランレングスおよび現在の係数の値のカテゴリーを符号化する。第２の部分は、現在の係数の値を表現するデータである。したがって、ビットストリームエントリーの第１の部分は、エントリー（ゼロランレングス＋１つの係数）によってどれだけの係数が符号化されたか、および、ビットストリームエントリーがどれだけのビットからなるかという情報を保持する。ビットストリームエントリーの第１の部分は、多くても１６ビット長であるので、１６ビットを参照するのに都合が良い。したがって、１６ビットを同時に参照するとき、それぞれのビットシーケンスは、常に、１つのビットストリームエントリーの少なくとも第１の部分を備え、したがって、１６ビットは、ビットストリームエントリーによって符号化される係数の数およびビットストリームエントリーの長さに関する情報を保持する。
【００４２】
テーブルを検索するステップは、ビットシーケンスの最初の８ビットからなる第１のテーブルを検索するステップを備えてもよい。テーブル検索が、１６ビットに対して同時になされる場合、６５，５３６エントリーを備えたテーブルが必要とされ、きわめて多くのメモリを使用する。さらに、最も一般的なビットストリームエントリーの第１の部分は、８ビットかまたはそれよりも短い。したがって、最初の８ビットをテーブル検索するステップは、ほとんどの場合、ビットストリームエントリーに関する必要な情報を与える。
【００４３】
第１のテーブル検索は、第１のビットストリームエントリーのビット長およびステップされる係数の数に関する情報をもたらしてもよく、あるいは、第２のテーブル検索のための情報をもたらしてもよい。このように、第１のテーブル検索は、ビットストリームエントリーに関する必要な情報をもたらし、あるいは、ビットシーケンスの最後の８ビットを用いてビットストリームエントリーの第１の部分を解析するための情報をもたらす。
【００４４】
テーブルを検索するステップは、さらに、第１のビットストリームエントリーのビット長および辿られる係数の数を決定するために、ビットシーケンスの最後の８ビットからなる第２のテーブルを検索するステップを備えてもよい。第２のテーブル検索が必要とされる場合、第１のテーブル検索は、最初の８ビットに応じて第２の検索において使用されるべきテーブルへのポインターをもたらしてもよい。第２のテーブル検索には、少数の異なるテーブルしか必要としない。なぜなら、ビットストリームエントリーの第１の部分が、８ビットよりも長い場合、最初の８ビットの組み合わせは、わずかしか存在しないからである。したがって、２つのステップによってテーブルを検索する場合、それぞれのビットシーケンスの第１のビットストリームエントリーを解析するのに必要とされるような多くのテーブルエントリーは、必要ではない。
【００４５】
本発明の第５の形態の方法の実施形態によれば、１つのディジタル画像のいくつかの画像ブロックは、その他のディジタル画像からの情報によって操作される。画像ブロック内の内容が、両方のディジタル画像において描画される場合、この操作は、２つのディジタル画像からの画像ブロックの結果を混合するステップを構成してもよい。これは、２つのディジタル画像をお互いにより滑らかにつなぎ合わせることができることを意味する。
【００４６】
さらなる実施形態によれば、第１のディジタル画像の一部分の画像ブロックは、まず最初に処理され、残りの画像の画像ブロックは、非圧縮形式で一時的に記憶される。そして、これらの後者の画像ブロックは、第２のディジタル画像の画像ブロックが処理される前に、第２のディジタル画像の操作を計算するのに使用されてもよい。
【００４７】
さらに、つなぎ合わせられた画像は、画像表現形式のインジケータを用いてつなぎ合わせられた画像の画像ブロックに順次にアクセスすることによって、そして、対応する以前の０次係数との差分として表現された０次係数を備えた連続的な画像ブロックを得るためにハフマン符号化係数のストリームを記憶することによって、ＪＰＥＧ形式のような別の画像圧縮形式に変換されてもよい。したがって、小さなメモリ容量しか必要とせずに、ディジタル画像をつなぎ合わせ、かつ、操作することができ、つなぎ合わせが、完了すれば、その画像は、きわめて良好に圧縮された表現形式に変換されてもよい。
【発明を実施するための最良の形態】
【００４８】
ここで、添付の図面を参照して、例としての本発明をさらに詳細に説明する。
【００４９】
以下の説明においては、ＪＰＥＧ圧縮に基づいて画像の圧縮を説明するが、その他の変換を用いたその他の圧縮が、試みられてもよい。本発明の保護範囲は、ＪＰＥＧ圧縮に決して限定されないことに注意されたい。
【００５０】
ここで、図１を参照して、ディジタル画像を圧縮するための方法を説明する。まず最初に、ステップ１０において、ディジタル画像は、ＹＵＶ色モデルによって表現され、画像に含まれるそれぞれの画素は、３つの成分、すなわち、輝度Ｙおよび２つの色成分ＵおよびＶを有する。２つの色成分ＵおよびＶは、色特徴を表現し、それらの最も細かな部分は、人間の目が認識するのは難しい。したがって、これらの成分は、輝度成分よりも低い解像度で表現されてもよい。ここで定義される画像ブロックの一例である１６×１６画素ブロックの画像は、それぞれが８×８画素からなる４つのＹデータユニット、８×８画素からなる１つのＵデータユニット、および、８×８画素からなる１つのＶデータユニットによって表現されてもよい。これは、ディジタル画像のＲＧＢ表現と比較して、データセットを５０％だけ圧縮したことに相当する。しかしながら、４つのＵデータユニットおよび４つのＶデータユニットが、使用されてもよく、この場合には、ＲＧＢ表現と比較して、圧縮は得られない。
【００５１】
画像は、個々の１６×１６画像ブロックとして、何らかの順序で処理される。それぞれの成分のそれぞれのデータユニットは、ステップ１２において、離散コサイン変換（ＤＣＴ）を用いて変換される。それぞれの成分のそれぞれのデータユニットは、６４画素を備えるので、ＤＣＴは、ＤＣＴの基底関数ごとに６４個の係数を生成する。これらの係数は、１つの０次係数（ＤＣ係数）および６３個のより高い次数の係数（ＡＣ係数）を備える。
【００５２】
次に、ステップ１４において、それぞれのデータユニットの係数のしきい値処理されかつ量子化された近似値が、生成される。しきい値処理されかつ量子化された近似値は、正規化マトリックスに基づいた値で係数を除算することによってそれぞれの係数をスケーリングおよびトランケーションすることによって、達成される。これは、認識する重要性があまりないと決定された基底関数ごとの係数が小さな重みを与えられ、そして、多くの係数が値０（ゼロ）を得ることを意味する。
【００５３】
そして、係数は、ジグザグ順序を用いて、係数のストリーム内に並べ替えられる。標準ＪＰＥＧ圧縮によれば、ＤＣ係数は、同じ色成分の先行するデータユニットに含まれる先行するＤＣ係数との差分として表現され、その差分が、ハフマン符号化される。ＡＣ係数は、符号化されたゼロランレングスであり、さらに、ハフマン符号化によって符号化され、ハフマン符号化されたＤＣ係数の直後に記憶される。データユニットに残されたゼロ値を有するＡＣ係数だけしか存在しない場合、エンドオブブロックコードが、係数のストリーム内に挿入される。したがって、連続的なデータユニットおよび画像ブロックのハフマン符号化された係数からなるビットストリームが得られる。本発明の実施形態によれば、ステップ１６において、ハフマン符号化された係数は、標準ＪＰＥＧ圧縮の場合と同様にして計算される。ビットストリームは、ディジタル画像の圧縮された表現を構成する。
【００５４】
しかしながら、ゼロランレングス符号化およびハフマン符号化が、使用されるので、それぞれのデータユニットの長さは、未知である。したがって、ビットストリームが、ビットストリームの開始点からデータユニットの開始点まで復号化されるまで、データユニットの開始点は、未知である。さらに、ＤＣ係数の表現は、先行するＤＣ係数に依存するので、先行するＤＣ係数が、以前の係数のハフマン符号化されたストリームを復号化することによって決定されていなければ、データユニットのＤＣ係数は、未知である。
【００５５】
画像に含まれる特定のブロックを迅速に検索するのを可能にするために、かつ、それによって、特定のブロックの操作および／または解析を可能にするために、ステップ１８において、ブロック情報テーブルが、生成され、それぞれの画像ブロックへのインジケータ、特定の次数の隣接する係数間のビットストリーム内に含まれるビット数を指示する情報、および、それぞれの画像ブロックに含まれるそれぞれの色成分のＤＣ係数を備え、ＤＣ係数は、非差分形式で表現される。
【００５６】
本発明の別の実施形態によれば、ハフマン符号化された係数のビットストリームは、異なる内容を有してもよく、あるいは、異なる形で記憶されてもよい。例えば、以前の画像ブロックに依存するＤＣ係数は、ブロック情報テーブルにすでに記憶されているので、それらは、ビットストリーム内に存在しなくてもよい。
【００５７】
さらに、画像ブロックに関するすべての情報は、ブロック情報テーブルからわかり、そのブロック情報テーブルは、その他の画像ブロックに依存するＤＣ係数およびビットストリーム内に存在する画像ブロックへのインジケータを含む。したがって、ビットストリームは、特定のシーケンスの画像ブロックとして表現されなくてもよく、あるいは、それどころか、１つのストリーム内に記憶されなくてもよい。
【００５８】
したがって、本発明の一実施形態によれば、情報は、テーブル内におけるブロック情報の位置が画像のどの部分をそれが表現するかを特定するような形で、ブロック情報テーブルに記憶される。また、ブロック情報は、それが表現する位置がその他のブロック情報とともに記憶されるような形で、記憶されてもよい。それどころか、画像ブロックごとの係数のハフマン符号化されたストリームは、ブロック情報に結合された状態で記憶されてもよい。また、記憶されたブロック情報は、ブロックが符号化されているかどうかを決定するための機構を有してもよく、それによって、例えば、非符号化ブロックを黒ブロックとして処理するのを可能にする。
【００５９】
したがって、係数のハフマン符号化されたストリームのパッケージおよびブロック情報テーブルは、小さな記憶容量しか必要としないディジタル画像の表現を構成し、それと同時に、全画像を復号化することを必要とせずに、画像の特定の部分を解析および操作するのを可能にする。また、これは、画像を非線形に圧縮するのを可能にし、この場合には、ブロックが圧縮される順序は、重要なことではない。
【００６０】
ここで、図２ａを参照すると、圧縮画像表現形式の構造が示される。画像ブロックを読み込みあるいは書き込むためのランダムアクセスが、装置によって必要とされるのであれば、ブロック情報テーブルは、装置のＲＡＭに記憶されてもよい。図２ｂに示されるように、ブロック情報テーブル３０およびハフマン符号化された係数のビットストリーム３６は、別個のメモリ空間に記憶されてもよい。ブロック情報テーブル３０は、インジケータ３１、隣接するデータユニットにおける０次または１次の係数間のビットストリーム内に含まれるビット数を指示する情報３２、および、非差分形式で記憶されたＤＣ係数３３を備える。そして、ブロック情報テーブル３０のインジケータ３１は、ビットストリーム３６内に存在する特定の次数の画像ブロックの最初の係数への指示を備える。
【００６１】
図２ｃに示される変形のように、ブロック情報テーブル３０′は、ビットストリーム３６′へのヘッダーまたは特別のマーカーとして、記憶されてもよく、そのビットストリーム３６′は、標準ＪＰＥＧ形式を構成してもよい。
【００６２】
また、情報が、ビットストリームのヘッダーに記憶されている場合、そのヘッダーは、ブロック情報テーブルに必要とされるすべての情報を備えなくてもよいことがわかる。その代わりに、ヘッダーは、ブロック情報テーブルをきわめて迅速に生成するのを可能にする情報を備えてもよい。したがって、ビットストリーム３６′のヘッダーは、それぞれのデータユニットの長さに関する情報だけを保持してもよい。そして、画像にアクセスするとき、ブロック情報テーブルが、迅速に生成され、ＲＡＭに書き込まれてもよい。データユニットの長さを用いて、ブロック情報テーブルに必要とされる情報が、迅速にアクセスされてもよい。それぞれの画像ブロックの開始点へのインジケータを生成し、ＤＣ係数を復号化および記憶し、そして、隣接するデータユニットにおける０次または１次の係数間のビットストリーム内に含まれるビット数を指示する情報を更新しながら、データユニットが、辿られる。
【００６３】
それどころか、このヘッダーは、記憶空間を節減するために、圧縮されてもよく、例えば、ハフマン符号化されてもよい。長さ情報は、わずかしか変化しない値を有する。したがって、ＤＣ係数の符号化に対応するような形で長さをハフマン符号化することは、情報を相当に圧縮する。ファイルの相当な圧縮は、ファイルが空間的に効率的な形式で記憶されてもよいことを意味し、それと同時に、ブロック情報テーブルが迅速に生成されるのを可能にする。そして、画像が、アクセスされたとき、ヘッダーが、復号化される。
【００６４】
しかしながら、本発明は、画像を表現するこれらの説明されたやり方に決して限定されないことに注意されたい。
【００６５】
インジケータ３１は、画像ブロックの最初の０次係数をポイントしてもよい。しかしながら、０次係数は、ブロック情報テーブル内に提供されるので、０次係数にアクセスする必要はない。したがって、その代わりに、インジケータ３１は、画像ブロックの最初の１次係数をポイントしてもよい。インジケータは、ビットストリーム内における静的位置から画像ブロック内における特定の次数の係数までのビットオフセットとして実施されてもよい。好ましくは、インジケータは、ビットストリームの開始点から係数までのビットオフセットに関する情報を提供する。
【００６６】
あるいは、インジケータ３１は、ビットストリームランドマークから係数までのビットオフセットを指示してもよい。インジケータ３１が、ビットストリームの開始点からのビットオフセットを指示する場合、２Ｍバイトよりも大きなサイズを有するビットストリームは、４バイトによって表現されるインジケータを必要とする。ビットストリームランドマークは、インジケータ３１が２バイトによって表現されてもよいように、ビットストリーム内に配置されてもよい。オフセットが、例えば、６５，５３６ビット（２バイトによって表現される最も大きな数）よりも大きくなれば、ビットストリームランドマークが、配置される。ビットストリームランドマークは、順に番号が付される。ビットストリームランドマークのリストが生成され、それぞれのビットストリームランドマークがどの画像ブロックに存在するかについての情報を提供する。画像ブロックが、インジケータを用いてアクセスされる場合、そのアクセスは、２つのステップによってなされる。まず最初に、アクセスされるべき画像ブロックの前に存在する、ビットストリーム内の最も近くに配置されたビットストリームランドマークの数を探し出すために、ビットストリームランドマークのリストにおいて、比較がなされる。そして、ビットストリームの開始点からの画像ブロックのビットオフセットが、（ビットストリームランドマークの数）×６５，５３６＋インジケータによって提供されるビットオフセットとして計算されてもよい。当然ながら、ビットストリームランドマーク間には、どのようなビット数でも使用されてよい。
【００６７】
特定の次数の隣接する係数間のビット数を指示する情報は、画像ブロック内の特定のデータユニットに迅速にアクセスするのに使用されてもよい。データユニットがどこから開始するかを知るために、以前のデータユニットを復号化しなくてもよい。有利には、これは、以下でより詳細に説明するように、少ない一組の復号化された係数として画像ブロックを迅速に復号化するのに使用されてもよい。
【００６８】
ブロック情報テーブルは、データユニットごとに非差分形式で表現されたＤＣ係数を備えてもよい。これは、いずれかのデータユニットのＤＣ係数を計算しなくてもよいことをもたらす。しかしながら、その代わりに、ブロック情報テーブルは、以前の画像ブロックのＤＣ係数との差分としてビットストリーム内において表現されたＤＣ係数だけを備えてもよい。画像ブロックが、成分ごとにいくつかのデータユニットを備える場合、それぞれの成分の第１のデータユニットのＤＣ係数を記憶すればよいだけである。これは、ブロック情報テーブルが記憶空間をあまり必要としないことを意味する。
【００６９】
また、圧縮画像表現形式の構造は、すでに圧縮されたＪＰＥＧファイルから開始することによって、得られてもよい。そして、それぞれの画像ブロックへのインジケータ、特定の次数の隣接する係数間のビット数を指示する情報、および、それぞれの画像ブロックのそれぞれの成分ごとの非差分形式によるＤＣ係数を決定するために、ＪＰＥＧファイルが、復号化される。したがって、インデックスおよびＤＣ係数が、ブロック情報テーブルに記憶され、係数のハフマン符号化ストリームが、そのまま保持される。その代わりに、そのようなＪＰＥＧ画像のＡＣ係数は、新しいメモリ空間にコピーされてもよく、それによって、ＪＰＥＧ画像のすべての情報は、装置に記憶された元々のＪＰＥＧ画像を保持しなくても、アクセス可能なものとなる。
【００７０】
このようにして生成された画像表現形式は、ＪＰＥＧファイルに画像処理を直接に施すのを可能にする。
【００７１】
ここで、画像表現形式を生成するためにＪＰＥＧ画像を解析するための特定の方法を説明する。この方法は、必要な情報を収集するために、ビットストリームを順次に通過させる（step through）ことを備える。ビットストリームを通過させるとき、それぞれの画像ブロックへのインジケータ、特定の次数の隣接する係数間のビットストリーム内に含まれるビット数を指示する情報、および、それぞれの成分の少なくとも第１のデータユニットのＤＣ係数は、ブロック情報テーブルに記憶される。
【００７２】
ビットストリームを通過させるとき、成分ごとのＤＣ係数が、復号化され、次のＤＣ係数を決定するのを可能にするために、最後の係数が、一時的に記憶される。
【００７３】
図３を参照して、ビットストリーム内に含まれるデータユニットのＡＣ係数を通過させることを説明する。解析は、次のデータユニットがどこから開始するか、および、ＤＣ係数間のビット数、または、隣接するデータユニットの最初のＡＣ係数をただ単に決定したいにすぎない。したがって、ＡＣ係数を復号化することは必要ではない。
【００７４】
ＡＣ係数のビットストリームエントリーは、２つの部分からなる。第１の部分は、いくつのゼロ係数が現在の係数に先行するか、および、現在の係数の値がどのカテゴリーに入るかを符号化するハフマン符号である。カテゴリーは、ビットストリームエントリーの第２の部分のビット数を決定し、その第２の部分は、係数の実際の値を符号化する。したがって、ビットストリームエントリーの第１の部分を解析することによって、ビットストリームエントリーによって符号化された係数の数およびビットストリームエントリーによって使用されたビット数が、決定されてもよい。
【００７５】
ステップ２０において、ＡＣ係数を通過させることは、ビットストリーム内に存在する予め定められた数のビットからなるビットシーケンスを参照することを備える。好ましくは、ビットシーケンスは、１６個のビットからなる長さを有し、いずれかのビットストリームエントリーの最も長い第１の部分に対応する。したがって、１回に１６ビットを参照することによって、必要とされる情報は、常に、少なくとも１つのビットストリームエントリーごとに収集されてもよい。情報は、ステップ２２において、テーブルを検索することによって収集される。したがって、テーブル検索は、ビットシーケンス内に存在する少なくとも第１のビットストリームエントリーのビット長と、ハフマン符号によって符号化される係数の数とをもたらす。そして、ステップ２４において、決定されたビット長に対応するビット数が、スキップされる。ステップ２６において、スキップされたビットの総数が、計算され、ステップ２８において、スキップされた係数の総数が、計算される。エンドオブブロックシンボルに到達し、また、データユニットの最大数の係数が、スキップされたならば、処理は、ステップ２０に戻り、新しいビットシーケンスが、参照される。
【００７６】
ステップ２２におけるテーブル検索は、２つのステップにおいて実行されてもよい。まず最初に、テーブル検索は、ビットシーケンス内の最初の８ビットに対してなされる。この検索は、通常のＪＰＥＧ画像のほとんどの検索においてハフマン符号の第１の部分を決定するのに十分なものである。第１のテーブル検索が、第１のハフマン符号の第１の部分を決定するのに十分なものであれば、この時点において、最後の８ビットは、さらには解析されない。ハフマン符号の第１の部分が、８ビットよりも長ければ、さらなるテーブル検索が、必要である。そして、第１のテーブル検索は、新しいテーブルへのポインターをもたらし、最後の８ビットの検索がなされなければならない。ポインターは、ビットシーケンスの最初の８ビットに依存する。そして、第２のテーブル検索が、ハフマン符号のビット数とスキップされる係数の数とを決定する。第２のテーブル検索は、異なるテーブルにおいて、あるいは、同じテーブルの異なる部分において、なされてもよい。８ビットよりも長いハフマン符号の最初の８ビットは、ほんの少数の変形しか存在しない。したがって、第２のテーブルにおけるエントリーの数は、限られ、６５，５３６（すなわち、１６ビットシーケンスの最大総数）よりもかなり少ない。
【００７７】
あるいは、ステップ２２におけるテーブル検索は、１つのステップにおいて実行される。そして、テーブル検索は、１６ビット符号に対して実行される。このテーブル検索は、場合によっては、２つかまたはそれ以上のハフマン符号に関する情報をもたらしてもよい。したがって、ビットシーケンスが、いくつかのハフマン符号の第１の部分を備える場合、これらのハフマン符号は、同時にスキップされてもよい。また、８ビットを検索しているとき、いくつかのハフマン符号を同時にスキップすることも可能である。しかしながら、必要な情報を８ビットで提供するほど十分に短いハフマン符号は、ほんの少数しか存在しない。
【００７８】
ここで、図４を参照して、この画像表現形式によって記憶されたディジタル画像の特定の部分を読み込む方法を説明する。
【００７９】
まず最初に、ステップ４０において、画像における対象の位置または領域が、定められる。そして、ステップ４２において、定められた位置または領域に対応する適切な１つの画像ブロックまたは複数の画像ブロックが、左上角からそれぞれ右および下へのずれを一連の画像ブロックにただ単に相関させることによって決定される。その後に、ステップ４４において、ビットストリーム内の適切な１つの画像ブロックまたは複数の画像ブロックが、ブロック情報テーブルを検索することによって、決定される。さらに、ステップ４６において、適切な１つの画像ブロックまたは複数の画像ブロックのＤＣ係数が、ブロック情報テーブルから検索される。次に、ステップ４８において、ビットストリーム内の位置が、アクセスされ、ステップ５０において、この位置に存在する画像ブロックが、検索されたＤＣ係数を用いて、復号化される。
【００８０】
ここで、図５を参照して、画像表現形式で記憶されたディジタル画像を処理および操作するための方法を説明する。ディジタル画像の処理および操作は、それを携帯電話において実行してユーザにリアルタイムに表示することができるほど迅速なものである。したがって、ユーザは、実行されるべき操作を定義し、そして、それらが数秒以内に実行されるのを見ることができる。
【００８１】
まず最初に、ユーザは、表示されるべき画像または画像部分を定義してもよい。画面上に表示するために画像を迅速に復号化するのを可能にするために、少ない一組のハフマン符号化係数だけが、データユニットごとに復号化される。少ない一組の係数は、低い解像度で画像を近似するのに使用されてもよく、あるいは、より少ない画素で画像を表示するのに使用されてもよい。復号化されるＡＣ係数の数は、適切には、一つもなくてもよく、８×８画素の画像ブロックを１画素または４画素に減少させ、画像ブロックを２×２画素または２４画素に減少させ、画像ブロックを４×４画素に減少させる。画像ブロックを４×４画素に減少させる場合、４×４画素の画像ブロックを近似するために、より少ない数のＡＣ係数が、復号化されてもよい。したがって、例えば、９個、１３個、または、１８個の係数が、復号化されてもよい。それぞれの画像ブロックの主要な情報は、最初の係数に配置されるので、非復号化係数において失われた情報は、それほど意義のあるものではない。
【００８２】
この画像表現形式のおかげで、少ない一組のハフマン符号化係数は、画像または画像部分を表示するために、きわめて迅速に検索され、復号化されることが可能である。まず最初に、ステップ６０において、復号化されるべき画像ブロックが、決定される。ステップ６２において、それぞれの画像ブロックが、ブロック情報テーブル内のインジケータを用いて、アクセスされる。また、ステップ６４において、それぞれの成分の第１のデータユニットのＤＣ係数が、ブロック情報テーブルによって提供される。そして、ステップ６６において、所望の数のＡＣ係数が、復号化される。その後に、ステップ６８において、画像ブロックの次のデータユニットが、例えば、隣接するデータユニット内に存在する最初のＡＣ係数間のビット数を指示する情報を使用して、残りのＡＣ係数をスキップすることによって、迅速に検索される。ここで、次のデータユニットが、復号化されてもよい。このように、画像は、画面上に表示するために、きわめて迅速に復号化され、ユーザをいらいらさせる待ち時間を減少させる。これは、携帯電話のような小さな処理能力および小さな記憶空間を備えた装置を使用する場合にとりわけ有益である。
【００８３】
そして、ユーザは、画面上に表示される画像に施されるべき操作を定義してもよい。ここで、操作に必要とされる計算が、少ない一組のハフマン復号化係数に施されてもよい。したがって、計算をより迅速に実行することができ、ユーザが長い待ち時間を経験することなく、結果を画面上にリアルタイムに表示することができる。
【００８４】
ここで、図６〜図９を参照して、２つのディジタル画像を圧縮された画像ファイル形式につなぎ合わせるための方法を説明する。図６には、この方法の概略を説明するフローチャートが、示される。図７には、画像をつなぎ合わせる概略図が示され、図８〜図９は、カメラを内蔵した携帯電話のような画像を取り込むための装置でこの方法が実施される場合の様々なステップからなる方法を示す。
【００８５】
まず最初に、ステップ１００において、第１のディジタル画像２００が、取り込まれ、ディジタル画像の内容は、図８のカメラのファインダー内に示される。そして、取り込まれた画像は、レンズ補正をなすために、また、補正された画像をシリンダ上に投影するために、変換される。このように、取り込まれた画像は、パノラマ画像を生成するために、別の画像とつなぎ合わせられるように適合させられる。そして、ステップ１０２において、このディジタル画像２００の部分Ｂは、図１を参照して説明したような圧縮画像表現形式に圧縮され、画像ブロックは、画像内におけるそれらの現在の空間的な位置に基づいて、画像内における位置のインデックスを割り当てられる。ステップ１０４において、画像の他方の部分Ａが、後に実行されるべき混合処理のために、記憶される。ユーザが、パノラマ画像を生成したいのであれば、パノラマの方向が、画像を取り込むための装置において定義されてもよい。そして、取り込まれた第１のディジタル画像２００の中のパノラマの方向に最も近い部分が、混合のために記憶された部分として、記憶される。
【００８６】
第２の画像が、取り込まれるとき、ステップ１０６において、第１の画像のこの部分Ａが、カメラのファインダー内に表示されてもよい。第１のディジタル画像２００の部分は、ファインダー上の第１のレイヤに表示されてもよく、第２の画素のすべては、透明であり、そのために、カメラによって観察されかつファインダー上の第２のレイヤに表示される物体空間は、図９に示されるように、第１のディジタル画像部分の背後にあるように感じられるかもしれない。パノラマが、右側方向に作成される場合、第１のディジタル画像の最も右側の部分は、ファインダーの最も左側の部分に表示される。カメラ自身が、上述したように、レンズ補正および円筒投影をリアルタイムに実行するのであれば、第１の画像の記憶された部分Ａは、ファインダー内に簡単に表示されてもよい。しかしながら、カメラによって補正がリアルタイムに実行されない場合、ファインダー内に表示される物体空間をより良好に収容するために、部分Ａは、ファインダー内の最も左側の位置に配置されるように逆変換される。したがって、ステップ１０８において、ユーザは、第１および第２のディジタル画像における対応する物体をファインダー内の重なり合った領域に配置する第２の画像２０２を取り込むように案内される。そして、取り込まれた画像は、レンズ補正をなすために、また、補正された画像をシリンダ上に投影するために、変換される。
【００８７】
ここで、第２のディジタル画像は、第１のディジタル画像の部分Ａに本質的に対応する部分Ｃを備える。したがって、ステップ１１０において、カメラは、２つのディジタル画像をお互いに容易に相関させることができ、それによって、２つの画像をお互いに正しくつなぎ合わせることができる。当然ながら、２つのディジタル画像間の相関は、どのような形で得られてもよい。例えば、コンピュータユニットが、計算して２つの画像間の相関を探し出してもよく、あるいは、相関は、例えば、重なり合った領域が存在しない場合、ユーザによって定義されてもよい。相関は、お互いに対しての画像のずれを決定する。
【００８８】
次に、ステップ１１２において、混合のために記憶された部分Ａが、相関に基づいて、第２の画像に混合される。そして、ステップ１１４において、第２の画像の部分Ｄが、決定されたずれに基づいて、画像ブロックの正しいインデックスによって、図１を参照して説明したような圧縮画像表現形式に圧縮される。さらに、ステップ１１６において、さらなる画像がパノラマに取り込まれるときに実行される混合処理のために、第２の画像のもう１つの部分Ｅが、非圧縮形式で記憶される。図７からわかるように、取り込まれた２つの画像のお互いに対してのずれのために、部分Ｅは、画像情報をまったく保持しない部分を備えるかもしれない。したがって、画像部分Ｅの記憶は、記憶された画素がずれのために画像データまたは未知の情報を表現するかどうかを決定するためのメカニズムを有する。この情報は、後に、混合によって使用され、また、相関処理において使用されてもよい。
【００８９】
そして、ステップ１１８において、さらなる画像をすでにつなぎ合わせた画像につなぎ合わせるために、ステップ１０６〜１１６が、必要であれば、反復される。最後に付加される画像は、それの全体が、図１を参照して説明したような画像表現形式に圧縮される。
【００９０】
次に、２つかまたはそれ以上のディジタル画像から形成することのできる最も大きな長方形の画像が、決定され、左上角の長方形の中に完全に収容された第１の画像ブロックが、決定される。そして、ステップ１２０において、画像表現形式が、連続的なブロックの係数のハフマン符号化ストリームを入力し、決定されたブロックから開始し、決定された最も大きな長方形の画像全体を左から右へかつ上から下へ移動することによって、つなぎ合わせられた画像のＪＰＥＧ画像ファイルに変換される。このようにして、つなぎ合わせられた大きな画像が、ＪＰＥＧ画像ファイル形式で表現される。ここで、つなぎ合わせられたディジタル画像は、カメラを含む携帯電話の画面上に表示されてもよい。
【００９１】
つなぎ合わせるための方法が、一連のものとして説明され、この方法においては、第１のディジタル画像が、まず最初に、圧縮画像ファイル形式に圧縮され、その後に、第２のディジタル画像が、この圧縮画像表現形式に付加されたが、圧縮画像表現形式が２つの画像を圧縮画像表現形式に直接に取り込むことによって生成されてもよいこと、あるいは、２つのディジタル画像がそれぞれ圧縮画像ファイル表現形式で表現されかつ圧縮画像表現形式による表現を介して１つの大きな画像につなぎ合わせられてもよいことを考えることもできる。
【００９２】
ここで、画像のつなぎ合わせとは対照的に、ＪＰＥＧベースライン符号化画像をクロッピングする方法を説明する。まず最初に、ＪＰＥＧ画像が、ハフマン符号化データを復号化することによって解析される。この復号化中に、それぞれの画像ブロックへのインジケータおよびデータユニット間に含まれるビット数を指示する情報が、ブロック情報テーブルに記憶される。さらに、それぞれの画像ブロック内に存在するそれぞれの色成分の第１のデータユニットのＤＣ係数が、計算され、ブロック情報テーブルに記憶される。ここで、ＪＰＥＧ画像をクロッピングして、新しいＪＰＥＧベースライン符号化表現の画像部分にすることが、まず最初に、クロッピングするのを阻止すべき領域を決定することによって、実行される。この領域のそれぞれの行における最も左側の画像ブロックの場合、ＤＣ係数の新しい差分が、ブロック情報テーブル内のＤＣ係数情報を用いて計算されなければならない。その後に、残りの行の表現は、コピーされるべきビット長を決定するためにブロック情報テーブル内のインデックスを用いて、元々のＪＰＥＧ画像のハフマン符号化データから新しいＪＰＥＧ画像へビットごとにただ単にコピーされてもよい。したがって、コピーされた新しいＪＰＥＧ画像をきわめて容易に生成することができる。
【００９３】
ＪＰＥＧ画像のクロッピングが、その代わりに、画像の非圧縮表現に実行されなければならない場合、領域内の画像ブロックが、ブロック情報テーブル内のインデックスを用いて、判定され、かつ、画像の非圧縮表現における正しいに位置に復号化される。復号化は、ブロック情報テーブル内のＤＣ係数を用いて実行され、それによって、ハフマン符号化データ全体は、この場合、復号化されなくてもよい。
【００９４】
さらに、ＪＰＥＧ画像は、画像を処理することによって、操作されてもよく、そして、画像情報は、ＤＣＴ係数として表現される。ＪＰＥＧ画像を、ここで説明された画像表現形式に変換することによって、操作が、画像ブロックに施されてもよく、そして、それらの画像ブロックは、ＤＣＴ係数として表現される。したがって、マトリックス処理を用いて、画像は、例えば、回転させられてもよく、あるいは、スケーリングされてもよい。
【００９５】
ここで説明された好ましい実施形態は決して限定するものではないこと、また、添付の特許請求の範囲に定義される保護範囲内において、多くの別の実施形態が可能であることが強調されるべきである。
【図面の簡単な説明】
【００９６】
【図１】本発明の実施形態によるディジタル画像を圧縮するための方法のフローチャートである。
【図２ａ】本発明の実施形態による画像表現形式の概略図である。
【図２ｂ】本発明の実施形態による画像表現形式の概略図である。
【図２ｃ】本発明の実施形態による画像表現形式の概略図である。
【図３】ビットストリーム内のデータユニットを解析する方法のフローチャートである。
【図４】圧縮画像ファイル形式で記憶されたディジタル画像の特定の部分を読み込むための方法のフローチャートである。
【図５】本発明の実施形態による圧縮画像ファイル形式で記憶されたディジタル画像を操作するためにデータユニットを復号化するための方法のフローチャートである。
【図６】本発明の実施形態による圧縮画像ファイル形式として２つのディジタル画像をつなぎ合わせるための方法のフローチャートである。
【図７】２つのディジタル画像をつなぎ合わせる概略図である。
【図８】ディジタル画像を取り込み、そして、圧縮画像ファイル形式としてディジタル画像をつなぎ合わせるための装置のスクリーンショットである。
【図９】ディジタル画像を取り込み、そして、圧縮画像ファイル形式としてディジタル画像をつなぎ合わせるための装置のスクリーンショットである。
【図１】
2007514345.tif 000003
【図２ａ】
2007514345.tif 000004
【図２ｂ】
2007514345.tif 000005
【図２ｃ】
2007514345.tif 000006
【図３】
2007514345.tif 000007
【図４】
2007514345.tif 000008
【図５】
2007514345.tif 000009
【図６】
2007514345.tif 000010
【図７】
2007514345.tif 000011
【図８】
2007514345.tif 000012
【図９】
2007514345.tif 000013
【国際調査報告】
2007514345.tif 000014
2007514345.tif 000015
2007514345.tif 000016