JP2005045797A - 画像データの伝送に要する帯域幅を縮小するための方法及び装置 - Google Patents

画像データの伝送に要する帯域幅を縮小するための方法及び装置 Download PDF

Info

Publication number
JP2005045797A
JP2005045797A JP2004211100A JP2004211100A JP2005045797A JP 2005045797 A JP2005045797 A JP 2005045797A JP 2004211100 A JP2004211100 A JP 2004211100A JP 2004211100 A JP2004211100 A JP 2004211100A JP 2005045797 A JP2005045797 A JP 2005045797A
Authority
JP
Japan
Prior art keywords
image data
data
pixel
image
receiving
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
JP2004211100A
Other languages
English (en)
Inventor
Eric Jeffrey
ジェフリー エリック
Rai Barinder Singh
シング ライ バリンダー
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 JP2005045797A publication Critical patent/JP2005045797A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • 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
    • H04N19/423Methods 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 characterised by memory arrangements
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

【課題】画像データの伝送に要する帯域幅を縮小するための方法及び装置。
【解決手段】表示装置に画像データを伝送するのに要する帯域幅を縮小するための方法及び装置に関する発明である。画像データは表示装置に表示する画像を定義する複数の画素を表わし、且つ画像データはデータストリームで伝送され、データは所定の画素成分の順番になっていると想定する。この方法は、データストリームから画像データを受け取るステップと、表示装置がアクセスできるようにメモリに画像データのいくらかを選択的に保持するが残りを放棄することによって画像データを変換するステップとを有する。
【選択図】 図13

Description

本発明は、一般的には、画像データの伝送に要する帯域幅を縮小するための方法及び装置に関し、より具体的には、JPEG復号化されたブロックインタリー型データの伝送のに要する帯域幅を縮小するための方法及び装置に関する発明である。
「コンピュータシステム」という表現は、今日では、幅広く様々な装置に用いられている。メインフレームコンピュータ、パーソナルコンピュータ、パーソナルデジタルアシスタント、携帯電話はほんの数少ない例である。コンピュータシステムにおいて、CRTやLCDといった表示装置にCPUを結合するためにグラフィックスコントローラ(「GC」)が広く採用されている。GCは、普通、CPUが実行しなくてもいいように、テキスト及び画像の表示に関係する一定の専用機能を実行するために使用される。一般に、GCは、画像のクロッピングやスケーリングといった画像変換操作を実行する能力を有する。さらに、GCは、圧縮されたデータを送受信するためにデータ圧縮/解凍プログラム(CODEC)を有していることがある。
インターネットなどで、画像データをコンピュータシステム間で伝送するとき、大量の伝送容量又は「帯域幅」が必要となる。このために、画像データを伝送するのに要する時間はかなり長くなる可能性がある。さらに、画像データの転送によってネットワークが混雑して、他のデータの伝送が遅くなる。この問題に対する一つの解決法は、データを伝送する前に圧縮することである。静止画像を圧縮するために広く使われている方法はJoint Photographic Experts Group(JPEG)によって開発されたもので、この方法で圧縮されたファイルは「JPEGファイル」と呼ばれたり、又は「JPEGフォーマット」になっていると言われる。JPEGの標準には変形やバージョンがあるが、説明を簡単にするために、そうした変形やバージョンを含めるために本書ではこの頭辞語を大体の意味で使用している。画像データは、JPEGファイルに圧縮される前に、グループ又は「ブロック」に先ず変換及び分割されなければならない。さらに、画像データのブロックは、圧縮される前に、交互に又は「インタリーブ状」の順序に配列される。コンピュータシステムはJPEGファイルを受け取ったとき、先ずそのファイルを解凍しなければ表示できない。その上、画像データは、解凍後、ブロックインタリーブ状の順序になっている(「JPEG復号化されたブロックインターリーブ型データ」と呼ぶ)から、変換操作だけでなくグループ化しなす操作もしなければならない。CODECを有するGCを備えるコンピュータシステムにおいて、GCは、データ圧縮及び解凍だけでなく、その他の所要操作も実行する。
画像データの圧縮によって、ネットワークがデータを転送するスピードが大きく改善される。さらに、圧縮及び解凍をGCを用いて処理することによってそうしたタスクからCPUが開放されるから、CPUは他の仕事を実行することができる。しかしながら、画像データがGCで解凍されると、データの量が大幅に増える。さらに、GC内のモジュール間で画像データを伝送するのに要する帯域幅の量が非常に大きくなる。解凍された画像は保持されて、表示される前にメモリから読み出されるのが普通だから、これらの操作でかなりな帯域幅の量が消費される。従って、解凍された画像データの処理はGCにとって有意な負荷になるから、それが原因でGCが消費する電力が増える。加えて、高メモリ帯域幅を必要とするためにメモリアクセスのボトルネックが生じ、そのために他の装置のメモリアクセス時間が長びく。とりわけ、CPUがメモリにタイミングよくアクセスできなくなる。明らかに、解凍された画像データをGCがメモリとの間で転送するのに要するメモリ帯域幅の量を縮小する能力を有する方法又は装置が望ましい。
このように、画像データの伝送に要する帯域幅を縮小するための方法及び装置、より具体的に言えば、JPEG復号化されたブロックインタリーブ型データの伝送に要する帯域幅を縮小するための方法及び装置に対するニーズがある。
本発明は、画像データを表示装置に伝送するのに要する帯域幅を縮小するための方法及び装置に関するものである。画像データは表示装置に表示するための画像を定義する複数の画素を表わし、また画像データはデータストリームとして伝送され、データは所定の画素成分の順番になっている。この方法は、データストリームから画像データを受け取るステップと、表示装置がアクセスできるようにメモリに画像データのうちのいくらかを選択的に保持する一方、画像データの残りを放棄することによって、画像データを受け取ると変換するステップとを有する。
発明の目的、構成、効果については、添付の図面と共に、以下に述べる発明の詳細な説明を考慮すれば、容易に理解できる。
以下、本発明の実施形態を図面に基づいて説明する。
本発明は、画像データの伝送に要する帯域幅を縮小するための方法及び装置に関し、より具体的には、JPEG復号化されたブロックインタリーブ型データを伝送するのに要する帯域幅を縮小するための方法及び装置に関するものである。添付の図面に示した、本発明の好適な実施例について詳細に説明する。可能な限り、図面と説明とで、同じ又は同じような部品には同じ参照番号を用いている。
表示装置の画像は、「画素」として知られる小さな個別要素の配列から形成されている。輝度及びカラーといった各画素の属性は数値で表わされ、普通は、コンピュータシステムに不可欠なバイナリ形式で表わされる。従って、画像はデータのバイナリ要素の配列と考えることもできる。説明の便宜上、またこの技術分野におけるこの用語の使い方に合わせて、本書では「画素」という用語を用いて、時には表示装置の表示素子のことを、また時にはコンピュータシステム内に保持及びコンピュータシステム内で操作されると共にそうした表示素子の属性を定義しているデータのバイナリ要素のことを、またさらに時にはその両方のことを言っているが、この用語のしかるべき意味は文脈から明らかである。
図1に示すのは、画素の属性を数値表現に用いることのできる2個の24ビットデータワードである。データワード20はRGBカラーモデルによって画素を定義し、データワード22はYCRBカラーモデルを用いて画素を定義している。カラーモデルでは、或る特定の色域内で個々の色を指定するのに3次元デカルト座標系(x、y、z)が使用される。LCDやCRTに表示できる色域を定義するのにRGBモデルが広く採用されているのに対し、画像データは圧縮方法が施される前のYCRBカラーモデルに従って表わされるのが一般的である。RGBモデルにおいて、各原色(赤、緑、青)は一つの軸を表わし、所望の色を生成するために3原色が合わされる。24ビットワードを用いて画素を定義する場合には、1個の画素を定義するのに使用するバイナリ値を形成するために3バイト(8ビット)が、原色毎に一つずつ、連結される。24ビットのYCRBカラーモデルを採用すると、8ビットが1個のY(輝度)値を定義し、8ビットずつがCR(クロミナンス赤)とCB(クロミナンス青)の色差値を定義する。
図2に示すのは、表示装置24上のラスタスキャンパターンである。表示装置24の画素は一般的にラスタスキャンパターンに従って更新又は「リフレッシュ」される。配列の最上部走査線26の左端の画素から始まって、表示装置24の画素が左から右に画素ごとに更新される。最上行の画素が全てリフレッシュされてから、配列の上から2番目の行の画素がまた左端の画素から始まって更新される。ラスタスキャンパターンは、配列の中の全ての行が更新されるまで、連続して下がっていく各行に対して続けられる。
各画素配列は、普通、フレームと呼ばれる。フレームの中の画素はラスタ順に表示されるから、画素はメモリにラスタ順に保持されるのが普通である。その上、コンピュータシステムの構成要素間で又は構成要素内でフレームが伝送されるとき、転送されるのはしばしば画素のラスタストリームである。従って、表示装置の画素の行と列との座標位置をしばしばメモリ内の又はデータストリーム内の相対位置に基づいて決定することができる。対照して、JPEG復号化されたブロックインタリーブ型データとして保持された又はストリームになったデータは、以下に説明するように、ラスタ順になっていない。
表示される前にフレームに施されることがある一つの操作はクロッピング操作である。オリジナルフレーム26とクロッピングされたフレーム28とを図3に示す。各フレームは複数の画素30からなり、各画素は正方形で表わされている。或る特定の画素30の座標位置がフレームの上部と左側の数字で与えられている。画像がクロッピングされる量はクロッピングパラメータ集合によって決められる。具体的に言えば、クロッピングパラメータはオリジナルフレーム26からどのエリアが除去されるか定義し、座標値を用いて指定することができる。例えば、クロッピングパラメータは水平及び垂直方向の始めの画素(start pixel)と終わりの画素(stop pixel)で構わない。例えば、オリジナルフレーム26で、4個の画素に等しい距離がフレームの上下及び左右から除去されるとしたら、始めの画素の座標は(4,4)で、終わりの画素の座標は(15,15)である。
図4に、表示装置24に表示される前にクレームに施される別の操作を示す。具体的に、図4に示すのはスケーリング操作である。画像がスケーリングされる量は倍率によって決まる。例えば、クロッピングされたフレーム28をオリジナルサイズの四分の一に縮小する場合、倍率は二分の一である。数あるアルゴリズムのどれを用いて画像を縮小しても構わない。二分の一の倍率を用いて単純な線形アルゴリズムに従って画像を縮小すると、画素30の行が一行置きに放棄され、一行の中で画素が一個置きに放棄される。この線形アルゴリズムと二分の一の倍率を用いてクロップされたフレーム28を縮小すると、クロッピング及び縮小されたフレーム32が生まれる。画素30と放棄されない行に入っている画素の行のマッピングを説明するために、図4にフレーム28の2個の模式的画素の座標((1,10)及び(11,2))と縮小されたフレーム32におけるこれらの画素の位置を示す。
述べたように、数あるスケーリングアルゴリズムのうち任意の一つを用いて画像を縮小して構わない。上記の単純な線形アルゴリズムは画素を放棄するが、全てのアルゴリズムがこの性質をもっているわけではない。図5に別の方法を示す。この方法では、表示装置に表示される前に、クロッピングされたフレーム28が縮小される。図4と同様に、図5はクロッピングされたフレーム28と縮小されたフレーム33を示している。縮小されたフレーム33はクロッピングされたクレームの四分の一の大きさである。単純な線形アルゴリズムによって生成されている図4の縮小フレーム32とは違って、図5の縮小フレーム33は、クロッピングされた(オリジナル)フレーム28の中のどの画素30も放棄しない又はオリジナルフレームの中の画素のどれも直接使用しないアルゴリズムを用いて生成されている。縮小フレーム33の中の各画素30の属性を定義する数値が、オリジナルフレーム28の中の4個の画素の平均値(average value)を計算して生み出され、その後その平均値が縮小フレーム33における各縮小された画素に使用される。例えば、オリジナルフレーム28の中の座標(0,0)(0,1)(1,0)(1,1)を有する画素30を合計し、その和を4で割り、その商が縮小フレーム33で座標(0,0)を有する画素30の値として割り当てられる。縮小フレーム33の中の各画素の値が同様に計算される。オリジナルフレームをスケーリングするのに他のアルゴリズムを採用しても構わないことが分かる。
フレームのクロッピングかスケーリングかいずれかを又はその両方を行なってフレームの大きさを変える操作のことを本書では「次元変換」というフレーズを用いて表現している。この表現によって、クロッピング、スケーリング、及び技術分野で今現在知られている又は今後知られるようになるその他の類似の操作のための任意のアルゴリズムを含むつもりである。
図6に、本発明の背景(context)を理解するのに役立つと考える画素フレームの別の図を示す。述べたように、表示装置上のRGB画素の属性を定義する数値を3バイトワードで表現することができ、1バイトが各カラー成分を表わす。図6に、画素成分の3個の「フレーム」が示されている。すなわち、画素のR成分の全てがRフレーム内のそれぞれの座標位置に表示され、G成分の全てがGフレーム内に表示され、B成分の全てがBフレーム内に表示されている。図4に示したようなコンポーネント画像は時には「画素平面(pixel plane)」と呼ばれる。他のカラーモデルで表わされた画像で類似の画素平面を形成してもいい。
図1〜6によって説明した背景を考慮して、JPEGファイルの作成を図7に説明する。JPEGファイルの作成は込み入ったプロセスで、ここで細かく説明しない。むしろ、本発明の背景を理解するのに最も重要と考えるプロセスの態様に限定して説明する。一般的に言って、JPEGファイルの作成は、例えば、64x48画素の大きさを有するRGB画像から始まる。図7はRGB画像をR、G、Bのコンポーネント画像38又は画素平面に分離する第1ステップ36(SEP)を説明している。コンポーネント画像38は図6の画素平面に対応し、3原色カラー成分の各々に対して1個の画素平面38が作成される。第2ステップ40(CSC)はR、G、Bの画素平面38をY、CR、CBの画素平面42に変換する。以下にさらに説明するように、サンプリングのステップ44(SAM)で、Y、CR、CB画素平面42がサンプリングされる。
画素平面42はいろいろな方法でサンプリングすることができ、特定のサンプリング方法は時には「サンプリングフォーマット」と呼ばれる。サンプリングフォーマットが4個の連続画素からなるグループをどのようにサンプリングするか定義し、NY:NCR:NCBと指定することができる。例えば、サンプリングフォーマットが4:4:4だとしたら、4個の連続画素からなる各グループにおいて、Y,CR,CBの画素平面から、Y,CR,CB成分が各々4個ずつサンプリングされる。言い換えれば、4:4:4のサンプリングフォーマットは結果として画素成分の100%サンプリングになる。サンプリングフォーマットが4:2:2の場合には、画素成分Y成分の100%サンプリングになるが、CR及びCB成分は50%しかサンプリングされない。
ステップ44のサンプリングをさらに図8に説明している。表示しているサンプリングは4:2:2のサンプリングフォーマットである。図8は、サンプリング前の「オリジナル」Y,CR,CB画素平面42と、サンプリングから生まれたY,CR,CB画素平面46,47,48とを示している。Y,CR,CB画素平面42の第1行の画素成分にP0,P1,P2,P3,P4,P5,P6,P7の番号が付いているとしよう。さらに、各画素を正方形で表わし、サンプリング後の画素を正方形の中の円で示すとしよう。各行は、従って、各々4個の連続画素成分からなる2個のグループから構成されている。Y画素平面42では、各グループの成分全てがサンプリングされる。しかしながら、CR及びCB画素平面42では、第1グループの4画素の中の画素成分P0とP2だけがサンプリングされ、第2グループではP4及びP6だけがサンプリングされる。Y,CR,CB画素平面46,47,48は、4:2:2のサンプリングフォーマットを用いてY,CR,CB画素平面全体をサンプリングした結果を示している。
サンプリング後のCR及びCB画素平面47及び48は画素成分ブロック42の半分の大きさであることに注目。圧縮前にサンプリングすることによりフレームを表わすファイルの大きさを縮小することができる。オリジナルフレームの中の情報のいくらかを放棄するので、その放棄された情報は失われ、回復することはできない。従って、サンプリング後のフレームを表示する場合、放棄された情報の値を推定する何らかの手段を採用しなければならない。例えば、P0のサンプリング後の画素成分CB又はCRをP0及びその次の連続画素P1の両方に用いても構わない。
4:1:1のサンプリングフォーマットを採用した場合には、CR及びCB平面48内の4個の画素からなる各グループから画素成分P0とP4だけがサンプリングされるが、ここでもYブロック48からは画素成分全てがサンプリングされる。当業者ならば、4:2:2のサンプリングフォーマットでP1及びP3といった、4画素のグループの中の他の画素をサンプリングしても構わないことが分かる。4:2:2のサンプリングフォーマットはあくまで模式的で、4:4:4又は4:1:1フォーマットなど、他のサンプリングフォーマットも可能である。
述べたように、図8はステップ44におけるY,CR,CB画素平面42のサンプリングを説明する図である。説明のために、図7のサンプリングは4:2:2のサンプリングフォーマットを採用している、つまり、画素平面42が8x8の画素平面48よりも大きいことを除けば、ステップ44で起きるサンプリングは図8に示したサンプリングと同じである。サンプリングのステップ44の結果、サンプリング後のY,CR,CB画素平面46,47,48がそれぞれ生まれる。ステップ50(DIV)で、サンプリング後のY,CR,CB画素平面46,47,48が各々、ブロックに分割される。その際、ブロックは8x8ブロックが好ましい。ブロック分割後の画素平面には52,53,54の番号が付けられる。これについて図9にさらに詳細に示す。
図9において、ブロック分割後の画素平面52は48個のブロック(8x6)から構成される64x48画素平面で、ブロック分割画素平面46から形成されている。各ブロックは8x8の画素マトリックスからなる。同様に、画素平面53及び54は24個のブロック(4x6)から構成される32x48画素平面で、ブロック分割画素平面47及び48からそれぞれ形成されている。
再び図7に戻ると、各ブロックはステップ55(ENC)でJPEG符号化される、つまり、各ブロックはJPEG方法に従って別々に圧縮される。ステップ56(SAA)で、圧縮された画素成分ブロックが選択されJPEGファイル58に配列される。その一部を図9にかなり詳細に表示している。データ境界を示すために様々なマーカー(未表示)がJPEGファイル58の中に挿入される。JPEGファイル58は、以下に説明するように、「ブロックインタリーブ型フォーマット」になっていると言われる。
図9に示すように、JPEGファイル58は正則パターン配列になった画素平面52,53,54に基づいたブロックから構成される。具体的に言えば、JPEGファイル58は、Y画素平面52から2個のシーケンシャルブロック、その次にCR及びCB画素平面53,54の各々から1個のブロックという構成になっている。全ての平面から全てのブロックが選択されるまで、このパターンが繰り返される。図9は、4:2:2のサンプリングフォーマットを採用したとき、ブロックがどのようにインタリーブするか説明したものである。使用するサンプリングフォーマットが異なると、それに応じてブロックインタリーブ型フォーマットが修正されることが分かるだろう。
図10は、JPEGファイル58がどのように解凍され、表示装置に表示するために処理されるかを説明する図である。図10に示すJPEGファイル58は、ネットワークで受け取られたデータストリーム又はメモリから検索されたデータストリームで構わない。ステップ67(IDN)で、圧縮されたデータの各ブロックが識別され、ステップ68(DEC)で、符号化された各データブロックが解凍される。その際、CODECを用いて解凍されるのが好ましい。Y,CR,CB画素成分70〜73の代表的なブロックを出力として解凍順に表示している。表示した画素成分ブロックはJPRGファイルのわずかな一部分にしかすぎない。さらに、当業者ならば、4:2:2のサンプリングフォーマットの場合、表示されているブロック70〜73がコード化された最小単位、つまり「MCU」であることが分かるだろう。解凍後のJPEGファイル全体だけでなく、ブロック70〜73もブロックインタリーブ型フォーマットになっていることも分かるだろう。解凍後のJPEGファイルはラスタフォーマットではなく、しかも画素ではなく画素成分から構成されているから、JPEGファイルを表示装置にスキャンするための正しいフォーマットに順序を並び替える必要がある。すなわち、解凍後のJPEGファイルを画素のラスタ順にアセンブルする必要がある。
ステップ75(WR)で、画素成分ブロック70〜73がタイプによって識別され、ラインバッファ74の中でそのタイプのブロック用に保存されるエリアに書き込まれる。図10に、Y画素ブロック70,71がラインバッファ74の上半分に書き込まれ、下半分にCR及びCB画素ブロック72,73が書き込まれることが表示されている。ラインバッファ74は、表示装置に2行の画素を形成するのに十分なブロックを保持できる程度の大きさのメモリである。つまり、4:2:2のサンプリングの場合、ラインバッファは4行のブロックを保持できる程度の大きさでなければならない。この例では、一行にYが8ブロックとCR及びCBが各々4ブロック必要である。サイズ要件の理由は、フレームの次元変換を行なう回路は画素の一行全体を必要とし、一行全体を提供するにはその行を保持するブロック全てを提供することによってしか他に方法がないからである。さらに、次元変換回路が一行のブロックを読み取っている間、ラインバッファ74には次の行のブロックを保持するためのスペースがなければならない。
ステップ76(FAA)で、或る特定の画素に対応する個々の画素成分がラインバッファ74内のそれぞれのロケーションからフェッチされ、画素にアセンブルされる。ステップ76で、画素はラインバッファからシーケンシャルにフェッチされないで、或る特定の順番でフェッチされる。具体的に言えば、アセンブル後の画素として次の処理ステップに送られるときラスタ順になっているように、ステップ76で画素成分はラスタ順にフェッチされる。ステップ78(DT)で、アセンブル後の画素に対してクロッピングやスケーリングといった次元変換操作が行なわれる。ステップ78で受け取った画素はラスタ順になっているから、表示装置における各画素の行と列の座標位置は暗に分かっているので、ステップ78で採用される次元変換アルゴリズムはこの情報を用いる。ステップ80(CSC)で、画素がYCRBからRGBモデルに変換され、フレームバッファメモリ82に書き込まれる。フレームバッファ82の画素は、表示装置に必要なRGBフォーマット及びラスタ順になっている。
図11は、JPEGファイル58によって表わされた画像を解凍及び表示するためのコンピュータシステムを表示している。コンピュータシステムには、CPU84、GC86、及びLCD89がある。GC86は公知の次元変換回路88及び色空間変換回路90を備えている。図11で、CPU84はJPEGファイル58をFIFOメモリ92に書き込み、FIFOメモリ92はバッファリングのために用いられる。FIFO92から、JPEGファイル58がCODEC94に送られる。表示したGC86には埋め込みメモリ96がある。メモリ96の一部はラインバッファとして取っておき、その他の部分はフレームバッファ96として取っておかれる。CODEC94はJPEGファイル58を解凍し、その出力をラインバッファ74に書き込む。次元変換回路88はラインバッファ74に保持された成分ブロックから画素成分を読み取る。次元変換回路88は、画素成分をシーケンシャルに読み出すのではなく、ラスタ順に読み出す。次元変換回路88は、画素成分を画素にアセンブルし、クロッピング又はスケーリングといった任意の望ましい次元変換操作を実行した後、画素を色空間変換回路90に送る。色空間変換回路90は画素をRGBフォーマットに変換してフレームバッファ82に書き込む。LCDインタフェース回路98は画素をフレームバッファ82から読み出してLCD98に送る。
CODEC94からラインバッファ74に解凍されたJPEGファイルを転送するにはかなりの量のメモリ帯域幅がなければならない。例えば、ラインバッファまでのデータパスの幅が32ビットで、圧縮時に4:2:2のサンプリングフォーマットを採用し、さらに各画素成分に8ビットを要するとしたら、解凍された640x480画素の画像をラインバッファ74に転送するには230,400の書き込み操作を要する。さらに、次元変換回路88がファイルをラインバッファ74から読み出すにはさらに別の230,400の書き込み操作を要する。従って、解凍された画像データをCODEC94から次元変換回路88に転送するには合計460,800の読み書き操作を要する。所要のメモリ帯域幅が高くなると電力消費が増える。この操作に要するメモリ帯域幅の量を減らすことが望ましいことは明らかである。
図12に、本発明による、JPEG復号化されたブロックインタリーブ型データを伝送するのに要する帯域幅を縮小するための方法100の好適な実施例を示す。方法100を説明する目的で、各画素は3バイト(3原色成分各々に1バイトずつ)で数値表現されていると想定する。しかしながら、画素をもっと多い成分又は少ない成分で表わすことができ、また成分を表わす単位は8ビットのバイトに限られるものではなく、任意のビット数で表わせることが分かるだろう。ステップ102(レシーブ)で、CODECから画像データをデータ要素のストリームとして受け取る。各データ要素は、画素を定義するのに必要な複数の画素成分の中の一個、例えば、3個、つまりY,CR,CB画素成分の中の1個を表わすバイトであるのが好ましい。もしくは、各データ要素が画素を定義するのに必要な画素成分の全てを表わしていても構わない。ステップ104(トランスフォーム)で、画像データのいくつかが選択及び保持される一方、その他の画像データが放棄されるように、受け取った画像データに次元変換操作が行なわれる。次元変換された後の画像を表示するのに必要な画像データが保持され、画像を表示するのに必要としない画像データが放棄されるのが好ましい。例えば、画像のクロッピングされた部分に対応するデータ要素は放棄される。別の例として、縮小された画像に表われないデータ要素は放棄される。
図13は、本発明により、JPEGファイル58を解凍及び伝送し、そのファイルが表わす画像を表示するのに要する帯域幅を縮小するためのコンピュータシステムの好適な実施例を説明する図である。JPEGファイル58はJPEGフォーマットになっているが、他のファイルフォーマットも可能である。コンピュータシステムにはCPU84、GC186、LCD89がある。GC186には、本発明により、JPEG復号化されたブロックインタリーブ型データをアンダーサンプリングするための次元変換回路190がある。さらに、GC186には埋め込みメモリがあるが、メモリが埋め込み型であるというのは不可欠なことではない。別の実施例で、メモリ196はオフチップとして配置されている。図13で、CPU84はJPEGファイル58をFIFO92に書き込む。FIFO92はバッファリング目的で使用されている。FIFO92から、JPEGファイル58はCODEC94に送られ、そこで解凍される。CODEC94はブロックインタリーブ型フォーマットのY,CR,CB画素成分を次元変換回路190に書き込む。画素単位で次元変換操作を行なう公知の次元変換回路88と違って、次元変換回路190は次元変換操作を画素成分単位で実行する。
次元変換回路190には、画像データストリームを受け取る受信モジュール(未表示)がある。受信モジュールには、JPEGコーデック94から受け取った画素成分ごとに成分タイプ及び(x、y)座標値を計算するマッピングロジックがある。一つの好適な実施例では、入ってくる画素成分を数えるのにバイトカウンタを用いており、カウント数が64に達すると、回路が8x8ブロック全体の成分を受け取ったことを認識する。次元変換回路190は、次の成分、つまり65番目のバイトはタイプが異なる成分であることを判定するためにカウント数が64に達したという事実も利用する。さらに、次元変換回路190には、x座標値を記録するのに用いられる水平カウンタ(未表示)と、y座標値を記録するのに用いられる垂直カウンタ(未表示)とがある。
次元変換回路190は次元変換モジュール(未表示)も有する。次元変換モジュールは、クロッピングやスケーリングといった次元変換操作を行なうのに各画素成分の計算された(x、y)座標値を用いる。データストリーム内の或る特定のデータ要素をラインバッファ74に書き込むべきかどうか判定するのに各画素成分の座標値を用いる。ラインバッファ74のどこに画素成分を書き込むべきか判定するのに計算された成分タイプを用いる。一つの実施例では、ラインバッファ74の前半にY成分が書き込まれ、後半にCR及びCB成分ブロックが書き込まれる。
ラインバッファ74から、色空間変換回路202(CSC)によって画素成分がフェッチされ、画素に配列される。色空間変換回路202から、画素がフレームバッファ82に送られる。LCDインタフェース98がフレームバッファ82から画素を読み出し、読み出した画素をLCD89に供給する。
本発明の顕著な特徴は、GC内の所要メモリ帯域幅の量を著しく削減できることである。これにより、同様に、電力消費がかなり削減される。メモリ帯域幅が削減される量はクロッピング及びスケーリングの程度により異なる。例えば、画像が半分に縮小される場合には、最終画像に現れるのはオリジナル画像の画素数の四分の一だけになる。従って、公知の装置及び方法と比べ、本発明では回数にして四分の一の読み書き操作しか要らない。
上記の明細書で用いた用語及び表現は説明として用いており、限定として用いてはいない。また、表示及び説明した構成又はその一部と同等のものを除外するつもりはない。発明の範囲は、以下の特許請求の範囲によってのみ定義並びに限定されるものである。
画素の属性を表わすデータワードのブロック図。 表示装置のラスタスキャンパターンの正面図。 オリジナルの正面図及びクロッピングされたフレーム。 図3のクロッピングされたフレームの正面図及び縮小されたフレーム。 図3のクロッピングされたフレームの正面図及び別の縮小されたフレーム。 画素平面集合としてのフレームの斜視図。 JPEGファイルの作成を説明するブロック図。 サンプリングのステップを説明する画素平面集合の正面図。 サンプリング及びブロック分割された画素平面集合及びブロックインタリーブ型JPEGファイルの一部分。 JPEGファイルの表示準備を説明するブロック図。 JPEGファイルを解凍及び表示するためのコンピュータシステムのブロック図。 本発明による、表示装置に画像データを伝送するのに要する帯域幅を縮小するための方法のフローチャート。 本発明による、JPEGファイルを解凍及び表示するためのコンピュータシステムのブロック図。
符号の説明
20・・・データワード
22・・・データワード
24・・・表示装置
26・・・オリジナルフレーム
28・・・クロッピングされたフレーム
30・・・画素

Claims (34)

  1. 画像データを表示装置に伝送するためのシステムの伝送要件を軽減するための方法であって、画像データは表示装置に表示する画像を定義する複数の画素を表わし、画像データはデータストリームで伝送され、所定の画素成分の順番になっており、
    データストリームから画像データを受け取るステップと、
    表示装置がアクセスできるようにメモリに画像データのいくらかを選択的に保持するが残りを放棄することによって画像データを受け取ると変換するステップとを有することを特徴とする方法。
  2. 請求項1において、前記画像データ受信ステップは一回目に表示の一行に対応する第1データ要素を受け取ることを含み、前記画像データを選択的に保持するステップは前記一回目の後の二回目に前記第1データ要素を保持することを含み、前記受信ステップはさらに前記二回目の後の三回目に同じ前記行に対応する第2データ要素を受け取ることを含むことを特徴とする方法。
  3. 請求項2において、前記データ要素は画素であることを特徴とする方法。
  4. 請求項2において、前記データ要素は画素成分であることを特徴とする方法。
  5. 請求項1において、前記画像データ受信ステップでは前記第1及び第2データ要素を連続して受け取ることを特徴とする方法。
  6. 請求項5において、前記データ要素は画素であることを特徴とする方法。
  7. 請求項5において、前記データ要素は画素成分であることを特徴とする方法。
  8. 請求項1において、前記画像データ受信ステップは画像データをCODECから受け取ることを特徴とする方法。
  9. 請求項1において、前記データストリームはJPEG復号化されたブロックインタリーブ型データからなることを特徴とする方法。
  10. 請求項1において、前記画像データを受け取ると変換するステップは画像をクロッピングすることを含むことを特徴とする方法。
  11. 請求項1において、前記画像データを受け取ると変換するステップは画像をスケーリングすることを含むことを特徴とする方法。
  12. 画像データを表示装置に伝送するためのシステムの伝送要件を軽減するための装置であって、画像データは表示装置に表示する画像を定義する複数の画素を表わし、画像データはデータストリームで伝送され、所定の画素成分順になっており、
    データストリームから画像データを受け取るようになっている受信モジュールと、
    表示装置がアクセスできるようにメモリに画像データのいくらかを選択的に保持するが残りを放棄することによって画像データを受け取ると変換するようになっている変換モジュールとを備えることを特徴とする装置。
  13. 請求項12において、前記受信モジュールは一回目に表示の一行に対応する第1データ要素を受け取るようになり、前記変換モジュールは前記一回目の後の二回目に前記第1データ要素を選択的に保持するようになり、前記受信モジュールはさらに前記二回目の後の三回目に同じ前記行に対応する第2データ要素を受け取るようになっていることを特徴とする装置。
  14. 請求項13において、前記データ要素は画素であることを特徴とする装置。
  15. 請求項13において、前記データ要素は画素成分であることを特徴とする装置。
  16. 請求項12において、前記受信モジュールは前記第1及び第2データ要素を連続して受け取るようになっていることを特徴とする装置。
  17. 請求項16において、前記データ要素は画素であることを特徴とする装置。
  18. 請求項16において、前記データ要素は画素成分であることを特徴とする装置。
  19. 請求項12において、前記受信モジュールは画像データをCODECから受け取るようになっていることを特徴とする装置。
  20. 請求項12において、前記データストリームはJPEG復号化されたブロックインタリーブ型データからなることを特徴とする装置。
  21. 請求項12において、前記変換モジュールは画像をクロッピングするようになっていることを特徴とする装置。
  22. 請求項12において、前記変換モジュールは画像をスケーリングするようになっていることを特徴とする装置
  23. 請求項12において、前記装置はグラフィックスコントローラに実施されていることを特徴とする装置。
  24. 画像データを表示装置に伝送するためのシステムの伝送要件を軽減するための方法を実行するために機械で実行する命令プログラムを実装している機械可読媒体であって、画像データは表示装置に表示する画像を定義する複数の画素を表わし、画像データはデータストリームで伝送され、所定の画素成分順になっており、この方法は、
    データストリームから画像データを受け取るステップと、
    表示装置がアクセスできるようにメモリに画像データのいくらかを選択的に保持するが残りを放棄することによって画像データを受け取ると変換するステップとを有することを特徴とする機械可読媒体。
  25. 請求項24において、前記画像データ受信ステップは一回目に表示の一行に対応する第1データ要素を受け取ることを含み、前記画像データを選択的に保持するステップは前記一回目の後の二回目に前記第1データ要素を保持することを含み、前記受信ステップはさらに前記二回目の後の三回目に同じ前記行に対応する第2データ要素を受け取ることを含むことを特徴とする機械可読媒体。
  26. 請求項25において、前記データ要素は画素であることを特徴とする機械可読媒体。
  27. 請求項25において、前記データ要素は画素成分であることを特徴とする機械可読媒体。
  28. 請求項24において、前記画像データ受信ステップは前記第1及び第2データ要素を連続して受け取ることを含むことを特徴とする装置。
  29. 請求項28において、前記データ要素は画素であることを特徴とする機械可読媒体。
  30. 請求項28において、前記データ要素は画素成分であることを特徴とする機械可読媒体。
  31. 請求項24において、前記画像データ受信ステップは画像データをCODECから受け取ることを特徴とする機械可読媒体。
  32. 請求項24において、前記データストリームはJPEG復号化されたブロックインタリーブ型データからなることを特徴とする機械可読媒体。
  33. 請求項24において、前記画像データを受け取ると変換するステップは画像をクロッピングすることを含むことを特徴とする機械可読媒体。
  34. 請求項24において、前記画像データを受け取ると変換するステップは画像をスケーリングすることを含むことを特徴とする機械可読媒体。
JP2004211100A 2003-07-23 2004-07-20 画像データの伝送に要する帯域幅を縮小するための方法及び装置 Withdrawn JP2005045797A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/625,753 US7346220B2 (en) 2003-07-23 2003-07-23 Method and apparatus for reducing the bandwidth required to transmit image data

Publications (1)

Publication Number Publication Date
JP2005045797A true JP2005045797A (ja) 2005-02-17

Family

ID=34080264

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004211100A Withdrawn JP2005045797A (ja) 2003-07-23 2004-07-20 画像データの伝送に要する帯域幅を縮小するための方法及び装置

Country Status (2)

Country Link
US (1) US7346220B2 (ja)
JP (1) JP2005045797A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008219848A (ja) * 2007-03-07 2008-09-18 Taiwan Semiconductor Manufacturing Co Ltd 画像ファイルの復号表示回路及び画像表示方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050169365A1 (en) * 2004-02-02 2005-08-04 Clark Adam L. Data encoding using multi-dimensional redundancies
US20090135916A1 (en) * 2007-11-26 2009-05-28 Mediatek Inc. Image processing apparatus and method
KR101905621B1 (ko) * 2012-02-16 2018-10-11 삼성전자 주식회사 카메라의 프레임 이미지 전송 장치 및 방법
US9262511B2 (en) * 2012-07-30 2016-02-16 Red Lambda, Inc. System and method for indexing streams containing unstructured text data

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5193003A (en) * 1989-08-15 1993-03-09 Sony Corporation Apparatus for decoding digital video data with small memory requirement
US5227863A (en) * 1989-11-14 1993-07-13 Intelligent Resources Integrated Systems, Inc. Programmable digital video processing system
KR930002776B1 (ko) * 1990-12-13 1993-04-10 삼성전자 주식회사 온스크린 디스플레이에 있어서 로우버퍼의 데이타 저장방법 및 그 제어장치
US5806072A (en) * 1991-12-20 1998-09-08 Olympus Optical Co., Ltd. Electronic imaging apparatus having hierarchical image data storage structure for computer-compatible image data management
US5359694A (en) * 1992-07-27 1994-10-25 Teknekron Communications Systems, Inc. Method and apparatus for converting image data
US5237646A (en) * 1992-10-13 1993-08-17 Hewlett-Packard Company Pixel image enhancement employing a reduced template memory store
KR100363588B1 (ko) * 1993-03-25 2003-02-17 세이코 엡슨 가부시키가이샤 화상처리장치
US5809174A (en) * 1993-04-13 1998-09-15 C-Cube Microsystems Decompression processor for video applications
JPH0750752A (ja) * 1993-08-06 1995-02-21 Fuji Xerox Co Ltd 画像密度変換方法及び装置
US5671440A (en) * 1994-08-08 1997-09-23 Eastman Kodak Company Color image data reorientation and format conversion system
US6002411A (en) * 1994-11-16 1999-12-14 Interactive Silicon, Inc. Integrated video and memory controller with data processing and graphical processing capabilities
US6067098A (en) * 1994-11-16 2000-05-23 Interactive Silicon, Inc. Video/graphics controller which performs pointer-based display list video refresh operation
US5845015A (en) * 1995-10-12 1998-12-01 Sarnoff Corporation Method and apparatus for resizing images using the discrete cosine transform
US5977947A (en) * 1996-08-19 1999-11-02 International Business Machines Corp. Method and apparatus for resizing block ordered video image frames with reduced on-chip cache
US5859651A (en) * 1996-08-19 1999-01-12 International Business Machines Corporation Method and apparatus for block data transfer to reduce on-chip storage for interpolative video resizing
JP4086341B2 (ja) * 1997-06-06 2008-05-14 キヤノン株式会社 画像処理装置およびその方法
US6151074A (en) * 1997-09-30 2000-11-21 Texas Instruments Incorporated Integrated MPEG decoder and image resizer for SLM-based digital display system
JP3748489B2 (ja) * 1998-03-11 2006-02-22 キヤノン株式会社 画像処理装置、画像処理方法及びコンピュータ読み取り可能な記憶媒体
US6563535B1 (en) * 1998-05-19 2003-05-13 Flashpoint Technology, Inc. Image processing system for high performance digital imaging devices
US6415058B2 (en) 1998-10-27 2002-07-02 Hewlett-Packard Company System for compression of digital images comprising low detail areas
US6559826B1 (en) * 1998-11-06 2003-05-06 Silicon Graphics, Inc. Method for modeling and updating a colorimetric reference profile for a flat panel display
US6624828B1 (en) * 1999-02-01 2003-09-23 Microsoft Corporation Method and apparatus for improving the quality of displayed images through the use of user reference information
WO2000055771A1 (en) * 1999-03-17 2000-09-21 Gioia Sandra L System for specifying building upgrade options and determining building cost
JP4496574B2 (ja) * 1999-11-15 2010-07-07 セイコーエプソン株式会社 画像処理装置、記憶装置、画像処理システムおよび画像処理方法
US20020135585A1 (en) * 2000-02-01 2002-09-26 Dye Thomas A. Video controller system with screen caching
EP1146745B1 (en) * 2000-03-08 2019-09-04 Mitsubishi Denki Kabushiki Kaisha Coding device and coding method
WO2001091039A1 (en) 2000-05-23 2001-11-29 Compression Engine Technologies, Inc. Memory-efficient image compression
EP1306712B1 (en) * 2000-06-16 2006-12-13 Sharp Kabushiki Kaisha Projection type image display device
US6573901B1 (en) * 2000-09-25 2003-06-03 Seiko Epson Corporation Video display controller with improved half-frame buffer
JP2002135596A (ja) 2000-10-23 2002-05-10 Matsushita Electric Ind Co Ltd 画像処理装置、画像処理方法および画像データ転送方法
AUPR192700A0 (en) * 2000-12-06 2001-01-04 Canon Kabushiki Kaisha Storing coding image data in storage of fixed memory size
EP1262939B1 (en) * 2001-05-31 2012-02-01 Nokia Corporation Method and apparatus for updating a frame buffer with reduced power consumption
KR20040012952A (ko) * 2001-06-22 2004-02-11 마츠시타 덴끼 산교 가부시키가이샤 화상 표시 장치 및 전자기기
JP2004165733A (ja) 2002-11-08 2004-06-10 Matsushita Electric Ind Co Ltd 画像変換装置及び画像変換方法並びに記録媒体
US7391913B2 (en) * 2003-09-18 2008-06-24 Arcsoft, Inc. JPEG processing engine for low profile systems
US7421130B2 (en) * 2004-06-25 2008-09-02 Seiko Epson Corporation Method and apparatus for storing image data using an MCU buffer

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008219848A (ja) * 2007-03-07 2008-09-18 Taiwan Semiconductor Manufacturing Co Ltd 画像ファイルの復号表示回路及び画像表示方法
US7848581B2 (en) 2007-03-07 2010-12-07 Taiwan Semiconductor Manufacturing Company, Ltd. System and method for decoding and viewing of image files

Also Published As

Publication number Publication date
US7346220B2 (en) 2008-03-18
US20050018910A1 (en) 2005-01-27

Similar Documents

Publication Publication Date Title
JP2006014341A (ja) Mcuバッファを用いて画像データを格納するための方法及び装置
JP4151684B2 (ja) 符号化装置、符号化方法および符号化プログラム、並びに撮像装置
US6348925B1 (en) Method and apparatus for block data transfer to reduce on-chip storage for interpolative video resizing
EP1978749B1 (en) Compression of multidimensional look-up tables for colour space conversion
AU2018233015B2 (en) System and method for image processing
EP2787738B1 (en) Tile-based compression for graphic applications
KR100818034B1 (ko) 데이터 전송 방법, 회로 장치 및 데이터 전송 장치
JP2005045797A (ja) 画像データの伝送に要する帯域幅を縮小するための方法及び装置
US7386178B2 (en) Method and apparatus for transforming the dimensions of an image
JP4270169B2 (ja) ラインバッファを使わずに画像を次元変換するための方法並びに装置
JP2004509528A (ja) DCTインタフェースのためのRGB色空間とYCrCb色空間との間のデータ転送
US11189006B2 (en) Managing data for transportation
JP2003348355A (ja) 画像処理装置及びその制御方法
JPH0488749A (ja) 画像処理装置
JPH0531974A (ja) 画像処理装置
KR100474916B1 (ko) 썸네일 영상 생성 장치 및 그 방법
JPH08123939A (ja) 画像処理装置
JP4274187B2 (ja) 表示データ伸張方法、表示データ圧縮伸張方法、表示データ伸張装置および表示データ圧縮伸張装置
JP2007213251A (ja) 画像補正処理装置及び画像補正処理方法
US20140300628A1 (en) Tile-based compression and decompression for graphic applications
JPS63192171A (ja) カラー画像処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070330

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20070403

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080715

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080805

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081028

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20081224