JP3976353B2 - ディジタル・カメラ - Google Patents

ディジタル・カメラ Download PDF

Info

Publication number
JP3976353B2
JP3976353B2 JP50555199A JP50555199A JP3976353B2 JP 3976353 B2 JP3976353 B2 JP 3976353B2 JP 50555199 A JP50555199 A JP 50555199A JP 50555199 A JP50555199 A JP 50555199A JP 3976353 B2 JP3976353 B2 JP 3976353B2
Authority
JP
Japan
Prior art keywords
look
pixel
address
data
ram
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.)
Expired - Lifetime
Application number
JP50555199A
Other languages
English (en)
Other versions
JP2002508909A5 (ja
JP2002508909A (ja
Inventor
アチャーヤ,ティンク
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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of JP2002508909A publication Critical patent/JP2002508909A/ja
Publication of JP2002508909A5 publication Critical patent/JP2002508909A5/ja
Application granted granted Critical
Publication of JP3976353B2 publication Critical patent/JP3976353B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/004Predictors, e.g. intraframe, interframe coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

発明の背景
1. 発明の分野
本発明は、画像圧縮ならびにコンピュータ・グラフィックに関する。より具体的には、本発明は画像処理ならびに画像圧縮を実行するためのアーキテクチャおよび方法に関する。
2. 従来技術の説明
ディジタル・カメラ等の小型ないしは携帯用の装置における画像圧縮は、データの記憶ならびに処理に関する要件を軽減しつつ、画質を許容可能な範囲に維持することを目的とする。記憶ならびに処理に関する要件が軽減されると、処理を実行するVLSI(超大規模集積回路)チップがよりコンパクトになり、カメラの総合的な消費電力も抑えられる。静止画像ならびに動画ビデオの伝送または記憶のためのビット・レートの低減は、画像を取り込み、それをPC(パーソナル・コンピュータ)または、より高度なデータ処理システムにダウンロードするための処理速度を高める。
画像圧縮テクニックは、VLSI等のハードウェアにより実行されるか、あるいはそれに代えてソフトウェアにより実行されるかによらず、「損失性」のテクニックと「非損失性」のテクニックに分類される。非損失性圧縮の場合は、圧縮画像を復元したとき、圧縮前のオリジナルの画像を再現することができる。つまり、圧縮比が画像のエントロピーに依存する非損失性圧縮は高い圧縮比を達成できない。したがって、オリジナルの画像情報をより多く保持することから演算負荷が高い。これに対して損失性圧縮では、オリジナルの画像の近似しか提供されない。換言すれば、損失性圧縮を使用した場合、非損失性テクニックと比較して高い圧縮比が得られるが画質の劣化がある。この種の損失性テクニックの1つ、「予測符号化」(ディジタル・パルス・コード変調(DPCM)とも呼ばれ、周知の技術である)と呼ばれるテクニックは、連続するピクセルの値を、すでに処理済みの隣接ピクセルの属性を線形合成することによって予測する。これにおいては、オリジナルの画像ピクセルと対応する予測済みピクセルの間の差として定義される誤差ピクセルが用いられる。この誤差ピクセルは量子化され、その後、バイナリ値にエンコードされる。伝統的に、量子化は符号化と区別して行われており、それが処理回路ないしはソフトウェア・アルゴリズムの複雑化を助長している。
この種の演算集約テクニックによって必要となるVLSI回路は、ディジタル・カメラ等の画像圧縮が望まれる携帯型小型装置に望ましいとされる程度を超える。つまり、これらのテクニックを実現する一方で電力を節約し、かつ圧縮テクニックの精度を保持する、よりシンプルなアーキテクチャが望まれている。
発明の要旨
量子化済みコードを用意している第1のルックアップ・テーブル、そのコードの長さを備えている第2のルックアップ・テーブル、および、これらのルックアップ・テーブルをインデクスするためのアドレスを生成する予測符号化回路を備える画像圧縮装置が開示されている。
【図面の簡単な説明】
本発明における方法および装置の目的、特徴ならびに利点は、以下の図面を参照した説明から明らかになろう。
図1は、本発明の一実施形態のブロック図である。
図2は、本発明の第2の実施形態に従ったブロック図である。
図3は、本発明の第3の実施形態に従ったブロック図である。
図4は、本発明の一態様で実施するシステムのブロック図である。
発明の詳細な説明
以下、図面を参照して本発明の実施形態を説明する。ただし、この実施形態は、発明の特徴を説明するための一例であり、本発明を限定するものと解釈すべきではないことを理解されたい。実施形態の説明は、基本的にブロック図またはフローチャートを参照して行う。フローチャートについては、フローチャート内の各ブロックが、方法においてはステップを、装置においては当該方法のステップを実行するための装置要素を表すものとする。対応する装置要素をハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせによって構成するかは、実装仕方による。
図1は、本発明の一実施形態を示すブロック図である。
図1は、ルックアップ・テーブル・ベースの画像圧縮システムを表している。図1に示したシステムは、いくつかの点で従来の画像圧縮システムと明確に区別することができる。第1は、特殊な予測符号化または適応型逆相関回路が使用されていること、第2は、量子化とバイナリ符号化を統合された形で実行するために、ルックアップ・テーブルを使用することである。従来技術のシステムに、量子化ならびに符号化を統合したルックアップ・テーブルを使用するものはなく、以下説明する予測符号化に基づくルックアップ・テーブルを使用しているものもない。図1に示した装置は、ルックアップ・テーブルがRAM(ランダム・アクセス・メモリ)として実装可能である点、および回路を使用する従来技術のシステムに比較してより安価であり、より消費電力が低いという点において有利である。なお図1には、ルックアップ・テーブル圧縮の具体化を一例で示したが、これは単なる例示に過ぎない。当業者であれば、このルックアップ・テーブル・アーキテクチャを任意の画像ないしはデータ圧縮システムに適合させることは容易であろう。
図1においては、入力として、スケーリング・デバイスもしくはその他の画像取り込みデバイス、または画像情報の通信を行うようにセットアップされたポートからのピクセル・データPiが示されている。ピクセル・データPiは、圧縮が行われる画像内でピクセルを決めるのに関連する値(1ないし複数)を表す。これは、R(レッド)、G(グリーン)およびB(ブルー)のカラー・プレーン成分といった、カラーを表す単一の値もしくはそれらの値をグループ化した値とすることができる。通常、各Piは、ピクセル「成分」(R、G、またはB)であり、隣接成分により互いに補間され、スクリーンのレンダリングが可能な単一のRGB混合ピクセルを形成する。ピクセル成分の混合は、一般に、画像が最終的にディスプレイまたはプリンタに対して出力されるとき行われる。
8ビット符号なしの値として示されているそれぞれのPiは、差分回路100に入力される。差分回路100は、直前の予測済みピクセル成分P’i−1とオリジナルのピクセル成分Piの差を演算する。差分回路100は、予測符号化ならびに画像圧縮の分野では「誤差」またはデルタ値と呼ばれる9ビット符号付きの値Δ=Pi−P’i−1を生成し、出力する。後述するが、各ピクセル成分Piは、予測符号化回路によって提供される直前の予測済みピクセル成分P’i−1を有する(各成分には直前の成分から予測した予測済みの成分が対応している)。この直前の予測済みピクセル成分P’i−1が差分回路に供給され、次のピクセル成分Piのために使用される。
予測済みピクセル成分Pi’は、直前に参照した隣接ピクセル成分を一次結合で関連付けることによって生成される。予測符号化においては、任意数の隣接ピクセル成分を使用してピクセル成分値の予測を行うことができる。たとえば、一次元予測符号化は、北側に隣接するピクセル(同一列の1つ手前の行のピクセル)または西側に隣接するピクセル(同一行の1つ手前の列のピクセル)のいずれか一方を使用する。二次元予測符号化は、たとえば、北側と西側に隣接するピクセルを両方とも使用する。図1に示した実施形態は、西側に隣接するピクセルに基づく一次元予測符号化を採用している。
予測符号化回路10は、次のように動作する。差分回路100はPiとP’i−1の間の差を表す9ビット符号付きの値Δを生成する。この「誤差」値Δは、ルックアップ・テーブル(LUT)110のアドレスとして使用される。LUT110は、逆量子化値を演算するためのルックアップ・テーブルである。LUT110は、所定のΔすなわち誤差に対する量子化値ならびに逆量子化値の両方をストアすることができる。LUT110の出力は、「復元後の」誤差値Δ’であり、図1に示した誤差回復回路で使用する。
LUT110から出力された復元後誤差値Δ’は、量子化し、その後それを逆量子化した結果である。たとえば、誤差値Δ=96が量子化値12を有する(96を量子化した結果12になる)とする。この量子化値12は、逆量子化すると復元後誤差Δ’として、たとえば98となる。これが量子化損失であり、これによって圧縮が可能になる。ルックアップ・テーブルの作成に使用されている量子化式は、96や98といった複数の値を1つの量子化値12にマッピングする。逆量子化の際には、上述の例を用いれば、この量子化値「12」が誤差値96を量子化して得られたか、98を量子化して得られたかによらず、値12の逆量子化によって常に値98が生成される。
この誤差は、すなわち誤差値をより小さな値のセットに量子化することに起因する誤差は、回復メカニズムを適用しない限り、ピクセルの1つの行全体にわたって伝播する可能性がある。誤差回復回路15は、直前のピクセル成分値をフィードバックし、次の予測済みピクセル成分に対応する次の復元後誤差値Δ’に加えることによって、この誤差の伝播の低減を試みている。
加法回路160は、復元後誤差値Δ’に直前に予測したピクセルP’i−1を加える。加算後の値Δ’+P’i−1は、レジスタ・ブロック170に入力され、次のΔ’の加算の準備が整うまで、そこにストアされ、保持される。またこの直前の予測済みピクセル成分P’i−1は、差分回路100にも入力され、現在のピクセル成分Piから減じられる。加法回路160およびレジスタ・ブロックからなる誤差回復回路15は、基本的に復元プロセス、すなわち前方向画像圧縮プロセスの逆プロセスである。つまり、前者ではオリジナルの入力ピクセル成分値を使用して予測演算を行っているが、それに代えて復元(逆量子化)後のピクセル成分を使用し、次に続く予測済みの値を求めている。これは、受信側において(つまり圧縮間に)行われる予測をシミュレートしている。この結果、各成分に関する量子化誤差が特定ピクセルに限局される。
前述したように、予測符号化回路10は、各ピクセル成分Piに対して誤差値Δを生成する。第2のLUT120は、統合された態様で量子化と符号化を実行する。ここでも再び例としてΔ=96が量子化値12を有すると仮定する。LUT120には、可能性のある範囲すべてにわたるΔ値が、量子化値およびそのキーワード(エンコード済み)をインデクスするためのアドレスとしてストアされている。
第3のLUT130は、長さ情報をストアし、8ビットのピクセル成分を前提としたとき、4ビットを使用して各コードワードのサイズを出力する。LUT120によって与えられるコードワードは、特定の誤差値Δに関する量子化値と等価なバイナリ・コードである。パッキング回路150は、LUT130から与えらるサイズ情報とLUT120によって与えられるバイナリ・コードワードの両方を使用することにより、他のコンポーネントまたはデバイスに対するデータ伝送のためにコードワードを配列し、順番に並べることができる。パッキング回路によって送出されるコードワードは、圧縮画像を表現する充分な情報を含み、その後の復元により、全画像に対応するPi値のセットして予測符号化回路に渡されたオリジナルの取り込み画像にわずかな変更が加わったバージョンの画像を取り出すことができる。
図1に示した例においては、西側に隣接するピクセル成分を使用する一次元予測符号化が用いられている。このため、特定の行jの最初のピクセル成分P1はもっとも西側となり、P1には、直前の予測済みピクセル成分P0’がない。したがって、各行の最初のピクセルP1は、直接パッキング回路に供給されて、そのままエンコードされる必要がある。このオペレーションを可能にするため、最初のピクセル成分のエンコードを行うときはP1を選択し、P1の後のその行の残りのピクセルについてはLUT120から与えられるコードワードを選択するためのマルチプレクサ140が備わる。マルチプレクサ140によって選択された値、つまりLUT120からのコードワードまたはP1は、パッキング回路150によってパックされる。次に示す表1は、ある行の最初の4ピクセル分のピクセル成分P1、P2、P3、およびP4に関する値の一例である。
Figure 0003976353
最初のピクセル成分P1は、値96を有する。レジスタ・ブロック170は新しいピクセル行の開始時にクリアされるので、差分回路100にはそこから0が供給される。したがって、最初のピクセルに関する値Δ、Δ’、およびP’i−1はすべて96になる。P’は、i=2となるまで、実際には出力されない。
次のピクセル成分P2は、値13を有する。Δの値は、P2−P’1=13−96=−83である。Δ’は、逆量子化の値であり、−83に対して値が求められ、たとえば−84となる。P’2はΔ’+P’1=−84+96=−12となる。同様にして、i=3、4、...に対する値を求めることができる。
変形実施形態の一例として、一次元符号化に代えて二次元予測符号化を使用してもよい。二次元予測符号化は、北側と西側に隣接するピクセルを両方とも使用し、アプローチに関しては、ルックアップ・テーブルを介する部分は類似となるが、フィードバック回路を介する部分は異なったものになる。この種の二次元予測符号化システムを図5に示す。
上記の演算を行う予測符号化回路10は、ルックアップ・テーブル、つまりLUT110を使用するという点において有利である。この種のルックアップ・テーブルは、ASICないしはその他のより複雑な専用回路が与える機能を併せ持つので、それによって予測符号化回路を大幅に簡素化する。LUT110は、次の表2に示したように、2列からなる表とすることができる。
Figure 0003976353
このようにLUT110は、値Δをアドレスとして使用し、対応する値Δ’をルックアップする、RAM等によるシンプルなアドレス可能なメモリとすることができる。この種のRAMルックアップ・テーブルは、同様な機能を従来の方法により実行する場合に用いられる量子化ならびに逆量子化回路に比較すると廉価である。ポータブル・ディジタル・カメラによるスチル画像取り込み等のアプリケーションにおいては、量子化および逆量子化をあらかじめ好ましく作成し、すべての取り込み画像に対して同じテーブルの値を使用するようにもできる。
以上に加えて図1に示した画像圧縮装置は、バイナリ/コードワードの符号化という複雑なプロシージャが回避される点においても有利である。バイナリ/コードワードの符号化においては、ある種のバイナリ形式、たとえば1の補数等により値が表現され、よく知られたホフマン符号化等の符号化スキームを使用してさらに符号化される。この種の符号化は、ビットワイズで実行され、そのため、可能性としてはCMOS内に実装されたラッチやロジック・ゲートが使用される。このバイナリ/コードワードの符号化よりさらに複雑なのは、量子化のプロシージャである。量子化は、第1のセットの値をそれより小さい値のセットにマッピングする。画像圧縮においては、各種の式によって量子化がなされるが、その演算は、データ処理システムによっては容易になしえるが、小型のポータブル画像処理システムにとっては複雑すぎる。ディジタル・カメラ等の画像処理システムでは、数学的にかなり過酷なビジュアル応答等を表現する式を演算できることが要求される。カメラは、誤差すなわちデルタ値xと量子化値yに関係するこの種の式の演算を単に行うというだけでなく、圧縮を速くする迅速かつ効率的な方法によりそれを行わなければならない。高速圧縮によってディジタル・カメラは、それほどの間を置くことなく、次の写真を「撮る」つまり、次の画像を取り込むことが可能になる。これも同じことであるが、コンピュータ・システムにおいては、その処理パワーにより、また場合によっては専用ビデオ圧縮チップがそれに加わることによって、画像の圧縮を短時間に処理し得るが、ディジタル・カメラにポータブルかつ高コスト効果という条件を付するのであれば、こういった能力をあまり期待できない。つまり、画像圧縮スチル・カメラの焦点は、処理ステップ数ならびにその複雑性を抑えることに当てられることになる。本発明の各種実施形態ならびにその変形に従ったあらかじめ作成済みのルックアップ・テーブルは、この最終目的を達成することができる。
図2は、本発明の第2の実施形態に従ったブロック図である。
図2には、画像圧縮を実行するためのパイプライン・アーキテクチャが示されている。図1に示した予測符号化回路10は、好ましくはピクセルの「成分」(R、G、またはB)に対して作用する。その点に関して図2には、図1に示した予測符号化回路10に似ている。ピクセルのR成分すなわちレッドのカラー・プレーン成分を操作する第1の予測符号化回路210が示されている。同様に、220として示されている第2の予測符号化回路は、ピクセルのG成分すなわちグリーンのカラー・プレーン成分を操作し、230として示されている第3の予測符号化回路は、ピクセルのB成分すなわちブルーのカラー・プレーン成分を操作する。この実施形態においては、マルチプレクサ205が備わり、3つの出力ラインのいずれか1つを選択して入ってきたピクセル成分をそれに乗せる。2本の選択ラインTAG1およびTAG0は、成分のルーティングを行う2ビットのタグ情報に使用される。以下述べるように、ピクセル成分の順序は、復元の間のそれらの適切に混合できる。さらにこの実施形態は、各カラー成分について予測符号化の個別実行を保証する。つまりレッド・カラー値は、レッドの誤差値から予測され、グリーンはグリーンから、という形になる。これは、予測時に「カラー」をマッチングさせることによって予測符号化の生成を促進する。マルチプレクサは、異なるピクセル成分を検出するためのR、G、およびBセンサが個別に備わる場合には省略しても良い。そういったシステムは、複数の成分を同時に処理できるので有利である。各予測符号化回路210、220、および230は、単一セットのLUT、すなわち第1のLUT「f」240および第2のLUT「長さ」250からなるセットにアクセスすることができる。図1を参照して説明したように、LUT240はRAMないしはその他のメモリによるルックアップ・テーブルであり、インデクス用アドレス、すなわち予測符号化回路によって生成される誤差値を受け付ける。あらかじめ作成済みのLUT240は、このアドレスを使用して、2ステップの量子化および符号化プロセスを暗黙のうちに包含するコードワード等価値を与えることができる。LUT250は、各インデクス用アドレス、すなわち予測符号化回路によって生成された誤差値に対応して、各コードワードの合計ビット数を示す長さ情報をパッキング回路に提供する。
LUT240とLUT250を同時にインデクスするようにそれぞれの予測符号化回路を構成すると、単一ピクセルのカラー・プレーン成分の処理をパイプラインとする必要がなくなり、真のパラレル形式で処理することができる。これは、ほとんどの伝統的な画像検出において、R、G、およびB成分に対して検出時のビット数が等しく割り当てられていることから可能である。この条件に当てはまらないシステムにおいては、パラレル・アーキテクチャを修正し、それぞれの成分に対応する3つの個別サブテーブルを有するLUTを備えてもよいが、等しいビット数となるように各成分を変換することもできる。どのような方法を用いたとしても、たとえば画像処理システムが、8ビットのR成分、8ビットのG成分、および8ビットのB成分を生成する場合には、可能性のあるすべての誤差値(−255から+255までの範囲)に対応するコードワードの生成は、長さ2N+1−1のテーブルが1つあれば充分である。長さLUTに関してもこれと同じことが言える。
各カラー・プレーン成分ごとにテーブルを分ける必要性はないが、各成分の誤差値に関して、その値がセンサの取り込みあるいは入力による、いずれのR、G、またはB成分を表しているかを識別することは重要である。これは、取り込みデバイス自体への記録のためだけでなく、ピクセルの再構成およびディスプレイ、プリンタもしくはその他の出力デバイスへのラスター化において、R、G、B成分を適切に「混合」し、ピクセルの最終色度を作り出すことを可能にする上でも望まれる。たとえば復元時に、ブルー(B)成分値がレッド(R)の予測に使用されたと仮定すると、結果として得られる混合カラーが、その画像のオリジナルのカラーを正しく表現しない可能性がある。パッキング回路は、それぞれの予測符号化回路によって与えられる誤差値に付随する「TAG」情報を使用することによって、R、G、Bコードワードを任意の望ましい順序に並べることができるため、適切な組み合わせが保証される。TAG情報(TAG0およびTAG1)は、単純にR、G、またはBを識別する2ビットのシーケンスであり、変更を受けることなくLUTの出力まで渡される。TAG情報は、インデクス・プロセスを複雑化させることのないように、最初に分離し、個別の信号ラインに沿って渡すことができる。
1つの実施形態においては、ピクセルをイメージ・センサの外に送出するとき、特定のパターン、たとえば当分野では周知の、次に示すバイエル・パターンに従ってピクセルの順序を設定する。
Figure 0003976353
上に例示したバイエル・パターンは、各偶数行にレッド・ピクセル(R)とグリーン・ピクセル(G1−偶数列グリーン)が交互に配置され、これらだけに対して、パッキング回路によって認識される00(R)および01(G)のダグがそれぞれ付けられる。同様に奇数行は、G2ピクセルとBピクセルが交互に配置され、これらだけに対して、10(G2−奇数行グリーン)および11(B)のダグがそれぞれ付けられる。パッキング・ユニットは、偶数行内においてはRおよびG1のコードワードを交互に、奇数行においてはG2およびBのコードワードを交互にパッキングする。これらのタグは、コードワードのカラーを識別するために使用される。ただし、このタグは、実際にパッキングされたビット・ストリーム内には包含されない。なお、グリーン・ピクセルの処理は奇数行と偶数行で異なり、このためそれぞれがG1およびG2として識別され、タグ01および10が付けられることに注意されたい。
図2を参照して説明したパラレル・アーキテクチャは、LUTベースの画像圧縮を完全に利用しており、2つのテーブルのみを使用して3つのカラー・プレーン成分すべての処理を行っている。この種の予測符号化画像圧縮スキームの1つの特徴は、カラー変換が存在しないことである。このスキームは、特定のカラー空間に依存しない。ディジタル・カメラの画像センサは、R、G、B成分の原理で動作することから、YUV(Y=ルミナンス、U=カラー、V=クロミナンス)あるいはCMYK(シアン、マゼンタ、イエロ、ブラック)等の他のカラー・フォーマットに変換することなく、R、G、Bに対して画像圧縮を実行することができる。
図3は、本発明の第3の実施形態に従ったブロック図である。
この図3は、画像取り込みデバイスの内部的な画像処理ならびに圧縮コンポーネントをブロック図で示している。CMOSまたはCCDセンサ等のセンサ300は、適当なソースからカラー/強度値を表すピクセル成分を生成する。センサ300によって生成された10ビットのピクセル値は、取り込みインターフェース310に送られる。ディジタル・カメラ・アプリケーションにおけるセンサ300は、一般に1つのエリアまたはロケーションにある1つの「センス」からR、G、またはBのいずれかの成分を検出する。これらの成分は、表示または出力を目的として再構成するとき、互いに補間されてより高次(16ビット、24ビット等)のコンポジット・ピクセルを形成することができる。取り込みインターフェース310は、CMOSセンサによって生成された画像を取り込み、各ピクセルごとにピクセルのカラー成分を識別するTAGを付加する。TAGはそれぞれ2ビットであり、たとえば、00はR(レッド)、01はG1(偶数行グリーン)、10はG2(奇数行グリーン)、11はB(ブルー)に対応する。
ピクセルの順序ならびにG1とG2の関係は、図2を参照した説明において前述したとおりである。一方、CMOS(相補形金属酸化膜半導体)ないしはCCD(電荷結合素子)において、センサ面内のいくつかのピクセル・セルが照明条件に対して適切に応答しないことは極く一般的なことである。この結果、それらのセルから生成されたピクセル値が不完全となることがある。これらのピクセルは「デッド・ピクセル」と呼ばれている。「ピクセル置換」ユニット315は、同じ行内の直前の有効ピクセルによって各デッド・ピクセルを置換する。
RAMテーブル316は、センサから供給されるデッド・ピクセルの行インデクスと列インデクスからなる。このRAMテーブル316は、取り込み画像に関してデッド・ピクセルの位置を識別するとき使用される。コンパンディングおよびガンマ補正モジュール325は、ルックアップ・テーブル・ベースのコンバータであり、センサからのオリジナルの10ビット(10bとラベル付け)のピクセルを、たとえば補間により8ビットのピクセル値に変換する。このアーキテクチャにおいては、コンパンディングおよびガンマ補正が単一テーブルのルックアップ・オペレーションに統合されている。ガンマ補正は、出力表示デバイスにおいて正しいカラー・ルミナンスおよびコントラストを達成するために必要とされる。コンパンディングおよびガンマ補正モジュール325にはRAMテーブル326が付随しており、コンパンディングテーブルのエントリが収められている。これには、それぞれのカラー・プレーンについて、(210=)1024個の8ビットのエントリがある。
続いて、空間スケーリング・ユニット327が使用されてオリジナルの画像が縮小される。ただし、オリジナルの画像のサイズがM×Nのとき、2:1スケーリング・オペレーションによってM/2×N/2に、4:1スケーリング・オペレーションによってM/4×N/4にそれぞれ画像サイズが縮小される。これにより画像が大きく望ましくないとき、それをコンパクトにすることができる。空間スケーリング・ユニット327にはRAM328が付随しており、スケーリング・オペレーションの間の中間記憶装置として使用される。たとえば、4:1のスケーリング・オペレーションは、2:1のスケーリング・オペレーションを連続して2回適用することによって具体化することができる。
スケーリングが行われたピクセル成分データは、次にDPCMユニット330およびエントロピー・エンコーダ335に渡される。DPCMユニット330およびエントロピー・エンコーダ335は、RAM332およびRAM334が、量子化ならびにバイナリ符号化の実行に充分な4つの情報を含んでいることから、従来技術の画像処理システムにおける場合に比べて実質的に複雑性が低い。DPCMユニット330およびエントロピー・エンコーダ335は、スケーリング済みのピクセル・データが渡されると誤差値を生成し、その後この誤差値はコードワードにパッキングされる(詳細については図1の説明を参照されたい)。エントロピー・エンコーダ335は、個別のブロックとして図示されているが、実際にはDPCMユニット330から「分離」されているわけではなく、テーブルのルックアップに基づいて統合されている。量子化ならびにコードワード情報を有するRAM332および、コードワードの長さ情報を有するRAM334の使用によって、図1に示したパッキング回路150に類似のパッキング・ユニット340は、各種の長さ(3〜16ビット)を取り得るコードワード・データをバイト単位で正しく配列することができる。データ・パッキング・ユニット340は、16ビットのコードワード・データを生成し、それをDMAコントローラに渡す。DMAコントローラは、コンパンディングおよびガンマ補正モジュール325からコンパンディングデータを、ピクセル置換ユニット315からピクセル置換データを、DPCMユニット330から9ビットの量子化データを受け取り、統計、あるいはセンサ・アライメント等の各種目的のために使用する。このデータの長さは、バス360を介して、それに接続された他のユニット、モジュールおよびデバイスによって要求されたデータを転送できるように統一すべきである。重要なことは、DMAコントローラ350が、正しい内部アドレスを用いてデータ・パッキング・ユニット340からのパッキング済みのコードワード・データがバス360を介して適正に通信されるように準備も行うことであり、それによって正しいデータが正しい送り先に届けられる。バス・テクノロジー、アドレッシング・プロトコル、およびDMAコントローラについては、このシステム設計の分野において周知であり、望ましいアプリケーションに適合するように修正/特化は容易である。
RAMテーブル316、326、328、332、および334のそれぞれは、バス360とダイレクトに通信し、それぞれのデータをロードし、その後必要に応じて修正することができる。これらのテーブルにデータをプリロードすることにより、特に量子化ならびに符号化については、数学演算用の内部回路が大幅に省略され、低コストのメモリ・ユニットに置き換えられる。
図4は、本発明を実施するシステムの一例のブロック図である。
図示したコンピュータ・システム410は、PC(パーソナル・コンピュータ)等の任意の汎用ないしは専用コンピュータあるいはデータ処理装置であり、カメラ430に接続されている。カメラ430は、被写体440のセンサ画像を取り込むために使用される、ディジタル・カメラ、ディジタル・ビデオ・カメラ、あるいは任意の画像取り込みデバイスないしは画像取り込みシステムとすることができる。基本的に取り込み画像は、ROM、RAM、または固定ディスク等の記憶デバイスとすることができる画像メモリ・ユニット434内に効果的にストアされるように、画像圧縮回路432によって圧縮される。ほとんどのディジタル・カメラにおいて画像は、まずストアされ、その後ダウンロードされる。これによってカメラ430は、付加的な遅れなしで次の被写体を撮ることができる。
本発明のこの実施形態における画像処理は、次のように動作する。最初に、画像圧縮テーブルの作成がまだ完了していなければ、コンピュータ・システム410を使用してその作成が行われる。望ましい量子化の式ないしは方法に従った画像圧縮テーブルの作成は、PentiumTM(Intel Corporationの製品)等のプロセッサ412および、命令アドレスおよび結果のデータのストア/ロードに使用されるRAM等のメモリ411を使用して達成される。画像圧縮テーブルの作成に使用されるアプリケーションは、C++等の言語を用いて記述されたソースから作成された実行可能ファイルとすることができる。この実行可能ファイルの命令は、量子化誤差値、コードワード等価値の演算、およびこれらの値ならびにその他の値をテーブルにインデクスするために必要な命令に対応しており、ディスク418ないしはメモリ411にストアされている。画像圧縮テーブルを作成するための演算マシンのプログラムについては、当業者であれば明らかであろう。
コンピュータ・システム410は、プロセッサとメモリの間で情報の転送を行うシステム・バス413、およびI/Oバス415をつなぐブリッジ414を備える。I/Oバス415には、ディスプレイ・アダプタ416、ディスク418等の各種のI/Oデバイスおよび、シリアル・ポート等のI/Oポート417が接続されている。本発明には、この種の多くのI/Oデバイス、バスおよびブリッジを組み合わせて使用することができ、ここに示した組み合わせは、こういった可能性のある組み合わせの単なる一例に過ぎない。
テーブルの作成が完了すると、I/Oポート417を介してそれが送られ、画像圧縮回路432によって使用されるRAMまたはメモリとして画像圧縮回路432内にロードされる。一度ロードされたこのテーブルは、その後画像圧縮回路432によって使用可能になる。
センサは、画像、たとえば被写体440の画像を取り込むとき、各ピクセルについてR、G、またはB成分のいずれか1つを取り込み、その後これらのピクセル値が画像圧縮回路432に送られる。画像圧縮回路432は、ICおよびその他のコンポーネントからなり、予測符号化等の画像圧縮スキームを実行する。画像圧縮回路432は、予測符号化式に従って初期誤差値を演算し、その後、対応する量子化誤差値ならびにコードワード等価値の両方をルックアップして誤差値を求め、それを画像メモリ・ユニット434にストアする。画像圧縮テーブル内の値をルックアップすることにより、カメラは、量子化の演算ならびにビットごとの符号化のためのステップを実行する必要がない。誤差値の量子化ならびに符号化を実行するために使用される回路の追加が回避されることから、カメラの総合的なコストが抑えられる。すべてのピクセル成分の処理が終了すると、カメラ430は次の画像を取り込むことができる。ユーザないしはアプリケーションから画像のダウンロードが希望され、あるいは要求されたとき、画像メモリ・ユニット内にパッキングされたデータ(コードワード)としてストアされている圧縮画像が画像メモリ・ユニット434からI/Oポート417に向けて転送される。I/Oポート417は、図示したバス・ブリッジ階層構造(I/Oバス415からブリッジ414へ、さらにシステム・バス413へという階層)を使用し、コードワード・ピクセルをメモリ411に一時的にストアし、あるいはそのオプションとしてディスク418にストアする。
圧縮画像は、プロセッサ412を使用して実行する適切なアプリケーション・ソフトウェア(またはハードウェア)によって復元される。画像圧縮テーブルがこのコンピュータ・システム上で作成されていることから、コードワードに対応する実際の誤差値に戻すための「ルックアップ」にそれを再使用することができる。誤差値は、逆予測符号化(または他の対応する画像復元スキーム)において、復元された画像450を生成するために使用される。復元された画像450は、続いて、ディスプレイ・アダプタ416を使用して、コンピュータ・システム410に接続されたモニタ420上に見えるようにレンダリングされる。前述したように、復元された画像は、ある種の補間方法によって相互に混合されたコンポジットR、G、およびB値を有し、したがってより高いビット解像度の画像を生成し得る。
ここで説明した実施形態は、単に本発明の原理を例示するものであり、本発明の範囲を限定するものと考えるべきではない。むしろ本発明の原理は、広範なシステムに適用されてここに説明した利点ならびに他の利点を達成し、あるいは同様に他の目的を満たすものである。

Claims (3)

  1. 画像センサによって生成された複数のピクセルデータを含む画像データを取り込む画像取り込み器と、
    デッド・ピクセルを識別するデータを記憶する第1のRAMを備え、前記取り込まれた画像データ内のデッド・ピクセルを所定の有効ピクセルに置換するピクセル置換器と、
    コンパンディングテーブルのエントリを保持する第2のRAMを備え、前記ピクセル置換器から出力された画像データの各ピクセルデータを所定ビットのピクセルデータに変換するコンパンディング及びガンマ補正器と、
    前記コンパンディング及びガンマ補正器の出力に結合したスケーリング器であって、画像データのサイズを調整するスケーリング器と、
    前記スケーリング器に結合するとともに、量子化ならびに符号化のために使用される第3、第4のRAMであって、量子化されたコードワード情報を保持する第3のRAMと、コードワードの長さ情報を保持する第4のRAMと、2つの近接ピクセル間の差分を出力するDPCM器とを含んだデータ圧縮器であって、画像データを圧縮して出力するデータ圧縮器と、
    前記ピクセル置換器の出力データ、前記コンパンディング及びガンマ補正器の出力データ、前記DPCM器の出力データ及び前記データ圧縮器の出力データを受け、所定の宛先に送り出すDMAコントローラと、
    前記DMAコントローラに接続するバスであるとともに、前記第1、第2、第3及び第4のRAMのそれぞれとダイレクトに通信できるよう当該それぞれのRAMに直接接続するバスと、
    前記バスと結合し、前記第1、第2、第3及び第4のRAMにデータをプリロードする手段と、
    を備えたディジタル・カメラ。
  2. 請求項1記載のディジタル・カメラにおいて、
    前記データ圧縮器のDPCM器が、
    単一のアドレスによってインデクスされたとき量子化したコードを出力するように構成された第1のルックアップ・テーブル、
    前記単一のアドレスによってインデクスされたとき、前記コードの長さを与えるように構成された第2のルックアップ・テーブル、及び
    前記第1のルックアップ・テーブルおよび前記第2のルックアップ・テーブルに結合するとともに該第1のルックアップ・テーブルおよび前記第2のルックアップ・テーブルに前記単一のアドレスを出力するために、該単一のアドレスを生成するよう構成された予測符号化回路とを備え、この予測符号化回路が
    入力ピクセル値と予測したピクセル値の差によって、前記単一のアドレスを発生するように構成された差分回路、
    前記差分回路に結合され、この差分回路からの単一のアドレスによってインデクスされて逆量子化したコードを出力するよう構成された第3のルックアップ・テーブル、及び
    この第3のルックアップ・テーブルから出力された前記逆量子化されたコードと直前の予測ピクセル値との和を、次の予測のために、その時点まで保持していた該直前の予測ピクセル値に代えて、更新保持するレジスタであって、前記差分回路が前記単一のアドレスを発生することができるよう、その保持している予測ピクセル値を該差分回路に出力するレジスタと
    を備え、前記第1及び第3のルックアップ・テーブルが前記第3のRAMに、前記第2のルックアップ・テーブルが前記第4のRAMに保持されていることを特徴とするディジタル・カメラ。
  3. 請求項1記載のディジタル・カメラにおいて、
    前記データ圧縮器のDPCM器は、
    各アドレスに対して量子化したコードを出力するように構成された第1のルックアップ・テーブル、
    前記各アドレスに対して前記量子化したコードのサイズ情報を与えるように構成された第2のルックアップ・テーブル、
    前記第1のルックアップ・テーブルおよび前記第2のルックアップ・テーブルと通信する第1の予測符号化回路であって、その第1の予測符号化回路は、前記第1のルックアップ・テーブルおよび前記第2のルックアップ・テーブルにアドレスを与え、そのアドレスは、ピクセルのレッド・カラー・プレーン成分における、それに対応する誤差値に応答した信号とする第1の予測符号化回路、
    前記第1のルックアップ・テーブルおよび前記第2のルックアップ・テーブルと通信する第2の予測符号化回路であって、その第2の予測符号化回路は、前記第1のルックアップ・テーブルおよび前記第2のルックアップ・テーブルにアドレスを与え、そのアドレスは、ピクセルのグリーン・カラー・プレーン成分における、それに対応する誤差値に応答した信号とする第2の予測符号化回路、
    前記第1のルックアップ・テーブルおよび前記第2のルックアップ・テーブルと通信する第3の予測符号化回路であって、その第3の予測符号化回路は、前記第1のルックアップ・テーブルおよび前記第2のルックアップ・テーブルにアドレスを与え、そのアドレスは、ピクセルのブルー・カラー・プレーン成分における、それに対応する誤差値に応答した信号とする第3の予測符号化回路、
    各アドレスに対して、エラー回復において用いられる逆量子化したコードを与える第3のルックアップ・テーブル、
    とを備え、前記第1及び第3のルックアップ・テーブルが前記第3のRAMに、前記第2のルックアップ・テーブルが第4のRAMに保持されていることを特徴とするディジタル・カメラ。
JP50555199A 1997-06-30 1998-06-05 ディジタル・カメラ Expired - Lifetime JP3976353B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/885,415 US6694061B1 (en) 1997-06-30 1997-06-30 Memory based VLSI architecture for image compression
US08/885,415 1997-06-30
PCT/US1998/011576 WO1999000763A1 (en) 1997-06-30 1998-06-05 A memory based vlsi architecture for image compression

Publications (3)

Publication Number Publication Date
JP2002508909A JP2002508909A (ja) 2002-03-19
JP2002508909A5 JP2002508909A5 (ja) 2005-12-08
JP3976353B2 true JP3976353B2 (ja) 2007-09-19

Family

ID=25386858

Family Applications (1)

Application Number Title Priority Date Filing Date
JP50555199A Expired - Lifetime JP3976353B2 (ja) 1997-06-30 1998-06-05 ディジタル・カメラ

Country Status (9)

Country Link
US (1) US6694061B1 (ja)
JP (1) JP3976353B2 (ja)
KR (1) KR100359181B1 (ja)
CN (1) CN1139044C (ja)
AU (1) AU7953998A (ja)
DE (1) DE19882508T1 (ja)
GB (1) GB2342245B (ja)
TW (1) TW393853B (ja)
WO (1) WO1999000763A1 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6636167B1 (en) * 2000-10-31 2003-10-21 Intel Corporation Method of generating Huffman code length information
WO2004017287A2 (en) * 2002-08-19 2004-02-26 Koninklijke Philips Electronics N.V. Video circuit
US7266151B2 (en) * 2002-09-04 2007-09-04 Intel Corporation Method and system for performing motion estimation using logarithmic search
US20040042551A1 (en) * 2002-09-04 2004-03-04 Tinku Acharya Motion estimation
US20040057626A1 (en) * 2002-09-23 2004-03-25 Tinku Acharya Motion estimation using a context adaptive search
US7136533B2 (en) * 2002-12-19 2006-11-14 Hewlett-Packard Development Company, L.P. Color image compression with adaptive prediction
US7236181B2 (en) * 2003-08-03 2007-06-26 Realtek Semiconductor Corp. Apparatus for color conversion and method thereof
JP4470485B2 (ja) * 2003-12-25 2010-06-02 株式会社ニコン 固定ビット長の予測差分圧縮データを生成する画像圧縮装置および画像圧縮プログラム、画像伸張装置および画像伸張プログラム、並びに電子カメラ
US7656561B2 (en) * 2004-05-31 2010-02-02 Phase One A/S Image compression for rapid high-quality imaging
TWI252045B (en) * 2005-01-20 2006-03-21 Via Tech Inc Video decoding device and method thereof for combining inverse quantization and inverse zig-zag scan
JP4321496B2 (ja) * 2005-06-16 2009-08-26 ソニー株式会社 画像データ処理装置、画像データ処理方法およびプログラム
US8121435B2 (en) * 2008-03-31 2012-02-21 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for resolution switching
US20090244633A1 (en) * 2008-03-31 2009-10-01 Konica Minolta Systems Laboratory, Inc. Systems and Methods for Color Data Compression
US8155436B2 (en) * 2008-03-31 2012-04-10 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for color data compression
US20090244601A1 (en) * 2008-03-31 2009-10-01 Konica Minolta Systems Laboratory, Inc. Systems and Methods for Color Data Compression
CN102014285B (zh) * 2009-11-10 2012-10-03 钰创科技股份有限公司 多次dpcm讯号编码装置及方法
US20150279055A1 (en) * 2014-03-28 2015-10-01 Nikos Kaburlasos Mipmap compression
KR102025494B1 (ko) * 2018-05-30 2019-09-25 주식회사 아이닉스 베이어 영상 압축을 위한 시각적 무손실 압축 기법에 기반한 장치 및 그 방법
US20230421173A1 (en) * 2022-06-27 2023-12-28 Ati Technologies Ulc Huffman Packing for Delta Compression

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4725885A (en) * 1986-12-22 1988-02-16 International Business Machines Corporation Adaptive graylevel image compression system
US4995059A (en) 1988-01-14 1991-02-19 Canon Kabushiki Kaisha Predictive coding device
US4965580A (en) * 1988-09-26 1990-10-23 Mitsubishi Denki Kabushiki Kaisha Quantizer and inverse-quantizer
JP2925157B2 (ja) 1989-02-28 1999-07-28 キヤノン株式会社 データ記憶装置
JP2876258B2 (ja) 1991-01-23 1999-03-31 株式会社リコー デジタル電子スチルカメラ
WO1993014600A1 (en) * 1992-01-21 1993-07-22 Supermac Technology Method and apparatus for compression and decompression of color image data
US5325126A (en) 1992-04-01 1994-06-28 Intel Corporation Method and apparatus for real time compression and decompression of a digital motion video signal

Also Published As

Publication number Publication date
KR100359181B1 (ko) 2002-11-01
AU7953998A (en) 1999-01-19
WO1999000763A1 (en) 1999-01-07
CN1272930A (zh) 2000-11-08
GB2342245B (en) 2001-12-05
KR20010020563A (ko) 2001-03-15
GB2342245A (en) 2000-04-05
CN1139044C (zh) 2004-02-18
US6694061B1 (en) 2004-02-17
DE19882508T1 (de) 2002-07-11
JP2002508909A (ja) 2002-03-19
GB9929954D0 (en) 2000-02-09
TW393853B (en) 2000-06-11

Similar Documents

Publication Publication Date Title
JP3976353B2 (ja) ディジタル・カメラ
US6285796B1 (en) Pseudo-fixed length image compression scheme
US6009201A (en) Efficient table-lookup based visually-lossless image compression scheme
JP3989009B2 (ja) フォワード変換装置及びインバース変換装置
JP3830009B2 (ja) データ処理システム及び色変換方法
CN1168290C (zh) 电视和静止双模工作的数字相机
US6301392B1 (en) Efficient methodology to select the quantization threshold parameters in a DWT-based image compression scheme in order to score a predefined minimum number of images into a fixed size secondary storage
US5583656A (en) Methods and apparatus for attaching compressed look-up table (LUT) representations of N to M-dimensional transforms to image data and for processing image data utilizing the attached compressed LUTs
JP2009273035A (ja) 画像圧縮装置、画像伸張装置及び画像処理装置
US20110200263A1 (en) Image encoder and image decoder
US11445160B2 (en) Image processing device and method for operating image processing device
US6404927B1 (en) Control point generation and data packing for variable length image compression
KR100834439B1 (ko) 그래픽 데이터 압축 및 복원 장치와 그 방법
US20210250575A1 (en) Image processing device
KR20200065367A (ko) 이미지 처리 장치 및 프레임 버퍼 컴프레서
EP0605892A1 (en) Methods and apparatus for processing image data utilizing stored compressed look-up table (LUT) representations of N to M-dimensional transforms
TWI795480B (zh) 用於執行資料解壓縮的影像處理裝置及用於執行資料壓縮的影像處理裝置
JP2002247376A (ja) 画像処理装置
JPH03252271A (ja) カラースキャナ
JPH07298259A (ja) 画像データ処理装置
JPH07193816A (ja) 画像データ圧縮装置及び方法
JP2002044460A (ja) 画像入力方法および装置
JPH11237869A (ja) 画像データを記録した記録媒体および画像処理装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050520

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050520

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060411

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060711

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060926

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061221

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070522

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070619

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100629

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150