JP3989788B2 - Code amount control apparatus and program - Google Patents
Code amount control apparatus and program Download PDFInfo
- Publication number
- JP3989788B2 JP3989788B2 JP2002215463A JP2002215463A JP3989788B2 JP 3989788 B2 JP3989788 B2 JP 3989788B2 JP 2002215463 A JP2002215463 A JP 2002215463A JP 2002215463 A JP2002215463 A JP 2002215463A JP 3989788 B2 JP3989788 B2 JP 3989788B2
- Authority
- JP
- Japan
- Prior art keywords
- band
- priority
- bit
- control unit
- code amount
- 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 - Fee Related
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、圧縮画像信号を含むビットストリームの符号量を制御する符号量制御装置に関する。
【0002】
【従来の技術】
画像データの次世代の高能率符号化方式として、ISO(国際標準化機構)やITU−T(国際電気通信連合電気通信標準化部門)によって、JPEG2000(Joint Photographic Experts Group 2000)方式が策定されている。JPEG2000方式は、現在主流のJPEG(Joint Photographic Experts Group)方式と比べて優れた機能を有するものであり、直交変換としてDWT(離散ウェーブレット変換;Discrete Wavelet Transform)を採用し、エントロピー符号化に、ビットプレーン符号化を伴うEBCOT(Embedded Block Coding with Optimized Truncation)と称する方法を採用する点に特徴がある。
【0003】
以下、図23に示す圧縮符号化装置(エンコーダ)100を参照しつつ、JPEG2000方式の圧縮符号化手順を概説する。
【0004】
この圧縮符号化装置100に入力する画像信号は、DCレベルシフト部102で必要に応じてDCレベル変換を施された後に、色空間変換部103に出力される。次に、色空間変換部103は、DCレベルシフト部102から入力する信号の色空間を変換する。次に、タイリング部104は、色空間変換部103から入力する画像信号を、複数の矩形状の「タイル」と称する領域成分に分割してDWT部105に出力する。DWT部105は、タイリング部104から入力する画像信号に対してタイル単位で整数型または実数型のDWTを施し、その結果得られる変換係数を出力する。DWTでは、2次元画像信号に対して、高域成分(高周波数成分)と低域成分(低周波数成分)とに分割する1次元フィルタが垂直方向と水平方向の順に適用される。JPEG2000の基本方式では、垂直方向と水平方向との双方向に低域側に分割した帯域成分のみを再帰的に帯域分割していくオクターブ分割方式が採用されている。またその再帰的に帯域分割した回数は、分解レベル(decomposition level)と呼ばれる。
【0005】
図24は、オクターブ分割方式に従って、分解レベル3のDWTを施された2次元画像120を示す模式図である。分解レベル1では、2次元画像120は、垂直方向と水平方向とに前述の1次元フィルタを順次適用することで、HH1,HL1,LH1およびLL1(図示せず)の4つの帯域成分に分割される。ここで、「H」は高域成分を、「L」は低域成分をそれぞれ示している。例えば、HL1は、分解レベル1における水平方向の高域成分Hと垂直方向の低域成分Lとからなる帯域成分である。その表記法を一般化して、「XYn」(X,YはH,Lの何れか;nは1以上の整数)は、分解レベルnにおける水平方向の帯域成分Xと垂直方向の帯域成分Yとからなる帯域成分を指すものとする。
【0006】
次に、分解レベル2では、低域成分LL1は、HH2,HL2,LH2およびLL2(図示せず)に帯域分割される。更に、分解レベル3では、低域成分LL2は、HH3,HL3,LH3およびLL3に帯域分割される。以上で生成された帯域成分HH1〜LL3を配列したのが図24である。
【0007】
次に、量子化部106は、DWT部105から出力された変換係数を、必要に応じてスカラー量子化する機能を有する。また量子化部106は、ROI部107による指定領域(ROI;Region Of Interest)の画質を優先させるビットシフト処理を行う機能も有している。尚、可逆(ロスレス)変換を行う場合には、量子化部106でのスカラー量子化は行われない。JPEG2000方式では、この量子化部106でのスカラー量子化と後述するポスト量子化(truncation)との2種類の量子化手段が用意されている。
【0008】
次に、量子化部106から出力された変換係数は、上述のEBCOTに従って、係数ビットモデリング部108と算術符号化部109とで順次、ブロックベースのエントロピー符号化を施され、符号量制御部110でレートを制御される。具体的には、係数ビットモデリング部108は、入力する変換係数の帯域成分を32×32や64×64程度の「コードブロック」と称する領域に分割し、更に、各コードブロックを、各ビットの2次元配列で構成される複数のビットプレーンに分解する。
【0009】
図25は、複数のコードブロック121,121,121,…に分解された2次元画像120を示す模式図である。また、図26は、このコードブロック121を構成するn枚のビットプレーン1220〜122n-1(n:自然数)を示す模式図である。図26に示すように、コードブロック121中の1点の変換係数の2進値123が"011…0"である場合、この2進値123を構成するビットは、それぞれ、ビットプレーン122n-1,122n-2,122n-3,…,1220に属するように分解される。図中のビットプレーン122n-1は、変換係数の最上位ビット(MSB)のみからなる最上位ビットプレーンを表し、ビットプレーン1220は、その最下位ビット(LSB)のみからなる最下位ビットプレーンを表している。
【0010】
更に、係数ビットモデリング部108は、各ビットプレーン122k(k=0〜n−1)内の各ビットのコンテクスト(context)判定を行い、図27に示すように、各ビットの有意性(判定結果)に応じて、ビットプレーン122kを3種類の符号化パス、すなわち、SIGパス( SIGnificance propagation pass ),MRパス( Magnitude Refinement pass ),CLパス( CLeanup pass )に分解する。各符号化パスに関するコンテクスト判定のアルゴリズムは、EBCOTで定められている。それによれば、「有意である」とは、これまでの符号化処理において注目係数がゼロでないとわかっている状態のことを意味し、「有意で無い」とは、係数値がゼロであるか、或いはゼロである可能性がある状態のことを意味する。
【0011】
係数ビットモデリング部108は、SIGパス(有意な係数が周囲にある有意でない係数の符号化パス)、MRパス(有意な係数の符号化パス)およびCLパス(SIGパス,MRパスに該当しない残りの係数情報の符号化パス)の3種類の符号化パスでビットプレーン符号化を実行する。ビットプレーン符号化は、最上位ビットプレーンから最下位ビットプレーンにかけて、各ビットプレーンのビットを4ビット単位で走査し、有意な係数が存在するか否かを判定することで行われる。有意で無い係数(0ビット)のみで構成されるビットプレーンの数はパケットヘッダに記録され、有意な係数が最初に出現したビットプレーンから実際の符号化が開始される。その符号化開始のビットプレーンはCLパスのみで符号化され、当該ビットプレーンよりも下位のビットプレーンは、上記3種類の符号化パスで順次符号化される。
【0012】
次に、算術符号化部109は、MQコーダを用いて、係数ビットモデリング部108からの係数列に対して、コンテクストの判定結果に基づいて符号化パス単位で算術符号化を実行する。尚、この算術符号化部109で、係数ビットモデリング部108から入力する係数列の一部を算術符号化させないバイパス処理を行うモードもある。
【0013】
次に、符号量制御部110は、算術符号化部109が出力した符号列の下位ビットプレーンを切り捨てるポスト量子化を行うことで、最終符号量を制御する。そして、ビットストリーム生成部111は、符号量制御部110が出力した符号列と付加情報(ヘッダ情報,レイヤー構成,スケーラビリティ,量子化テーブルなど)とを多重化したビットストリームを生成し、圧縮画像として出力する。
【0014】
【発明が解決しようとする課題】
上記した圧縮符号化装置100では、レート・歪み最適化(R-D optimization)を用いて、符号化レートに対する歪量を最適化するように最終符号量などを制御していた。レート・歪み最適化は、上記算術符号化の段階で計算される各符号化パスにおける歪量などを利用して行われる。レート・歪み最適化のアルゴリズムについては、「David S. Taubman and Michael W. Marcellin, "JPEG2000 IMAGE COMPRESSION FUNDAMENTALS, STANDARDS AND PRACTICE," Kluwer Academic Publishers」の文献(以下、参考文献Aと呼ぶ。)に開示される。
【0015】
一方、デジタルカメラなどのデジタル機器では、圧縮済みの画像データの画質、画像サイズ、符号量およびスケーラビリティ(階層性)などを変更する場合がある。かかる場合には、トランスコーダを用いて、圧縮画像の符号量やスケーラビリティなどを変更していた。JPEG2000方式では圧縮画像信号を復号化せずに、そのスケーラビリティや符号量などを変更できるが、従来のJPEGベースライン方式では、一旦、圧縮画像信号を復号化した後で、そのスケーラビリティと符号量を変更し、圧縮符号化を実行しなければならないため、演算量が多く且つリアルタイム性が低い。
【0016】
よって、JPEG2000方式のトランスコーダを用いることで、圧縮符号化装置100で生成されたビットストリーム中の圧縮符号化データのスケーラビリティや符号量などを少ない演算量で変更することができる。しかしながら、JPEG2000方式のトランスコーダは、圧縮符号化装置100で算出された歪量を知ることができないため、レート・歪み最適化を用いてビットストリームの符号量制御を容易に行うことができないという問題がある。たとえレート・歪み最適化を用いた符号量制御を行うトランスコーダが実現可能だとしても、その符号量制御処理の演算量は多大となり、そのリアルタイム性は低くなる。
【0017】
以上の問題などに鑑みて本発明が課題とするところは、圧縮符号化データを含むビットストリームの符号量制御を、レートに対する歪みを抑制し得るように、少ない演算量で且つ高速に実行し得る符号量制御装置を提供する点にある。
【0018】
【課題を解決するための手段】
上記課題を解決するため、請求項1に係る発明は、ウェーブレット変換により画像信号を高域成分と低域成分とに再帰的に帯域分割して複数の帯域成分の変換係数を算出し、該変換係数をエントロピー符号化して圧縮された圧縮画像データの符号量を制御する符号量制御装置であって、前記圧縮画像データの前記各帯域成分のうち、所定の帯域成分の2次元合成フィルタ係数のノルムを基準として、かつ、再帰的に帯域分割された回数に応じて、設定された優先度につき、該優先度に対応するビット数だけ当該帯域成分をビットシフトすると共に、ビットシフトした前記帯域成分から、目標画質に合わせて符号化対象を選択する画質制御部、を備えることを特徴としている。
【0019】
請求項2に係る発明は、ウェーブレット変換により画像信号を高域成分と低域成分とに再帰的に帯域分割して複数の帯域成分の変換係数を算出し、該変換係数をエントロピー符号化して圧縮された圧縮画像データの符号量を制御する符号量制御装置であって、前記圧縮画像データの前記各帯域成分に対して、前記低域成分に再帰的に帯域分割された回数に応じて設定された優先度に対応するビット数だけ当該帯域成分をビットシフトすると共に、ビットシフトした前記帯域成分から、目標画質に合わせて符号化対象を選択する画質制御部、を備え、前記画質制御部は、人間の視覚特性を考慮した重み付けをされた前記優先度を用いる機能を有するものである。
【0020】
請求項3に係る発明は、請求項1または2記載の符号量制御装置であって、前記画質制御部は、前記符号化対象を前記ビットプレーン単位で決定する機能を有するものである。
【0021】
請求項4に係る発明は、請求項1〜3の何れか1項に記載の符号量制御装置であって、前記画質制御部は、前記符号化対象を前記符号化パス単位で決定する機能を有するものである。
【0022】
次に、請求項5に係る発明は、ウェーブレット変換により画像信号を高域成分と低域成分とに再帰的に帯域分割して複数の帯域成分の変換係数を算出し、該変換係数をエントロピー符号化して圧縮された圧縮画像データの符号量を制御する符号量制御装置であって、前記圧縮画像データの前記各帯域成分のうち、所定の帯域成分の2次元合成フィルタ係数のノルムを基準として、かつ、再帰的に帯域分割された回数に応じて、設定された優先度につき、該優先度に対応するビット数だけ当該帯域成分をビットシフトすると共に、ビットシフトした前記帯域成分の符号化データを所定の走査順序で並べ替えて生成した符号列から、目標符号量に適合する切り捨て点を算出し、当該切り捨て点よりも前の前記符号列を出力させるように制御する符号量制御部、を備えることを特徴としている。
【0023】
請求項6に係る発明は、請求項5記載の符号量制御装置であって、前記符号量制御部は、前記符号化データを、前記優先度の高い順に且つ同一の前記優先度においては高域側から低域側に向けた前記走査順序で並べ替えて前記符号列を生成するものである。
【0024】
請求項7に係る発明は、請求項1〜6の何れか1項に記載の符号量制御装置であって、前記圧縮画像データの前記各帯域成分に対して、前記低域成分に再帰的に帯域分割された回数に応じて設定された優先度に対応するビット数だけ当該帯域成分をビットシフトすると共に、ビットシフトした前記帯域成分を複数のレイヤーに分割するように制御するレイヤー分割制御部、を更に備えたものである。
【0025】
そして、請求項8に係る発明は、請求項7記載の符号量制御装置であって、前記レイヤー分割制御部は、人間の視覚特性を考慮した重み付けをされた前記優先度を用いる機能を有するものである。
【0026】
次に、請求項9に係る発明は、ウェーブレット変換により画像信号を高域成分と低域成分とに再帰的に帯域分割して複数の帯域成分の変換係数を算出し、該変換係数をエントロピー符号化して圧縮された圧縮画像データの符号量を制御するためのプログラムであって、前記圧縮画像データの前記各帯域成分のうち、所定の帯域成分の2次元合成フィルタ係数のノルムを基準として、かつ、再帰的に帯域分割された回数に応じて、設定された優先度につき、該優先度に対応するビット数だけ当該帯域成分をビットシフトすると共に、ビットシフトした前記帯域成分から、目標画質に合わせて符号化対象を選択する画質制御部として、マイクロプロセッサを機能させることを特徴としている。
【0027】
請求項10に係る発明は、ウェーブレット変換により画像信号を高域成分と低域成分とに再帰的に帯域分割して複数の帯域成分の変換係数を算出し、該変換係数をエントロピー符号化して圧縮された圧縮画像データの符号量を制御するためのプログラムであって、前記圧縮画像データの前記各帯域成分に対して、前記低域成分に再帰的に帯域分割された回数に応じて設定された優先度に対応するビット数だけ当該帯域成分をビットシフトすると共に、ビットシフトした前記帯域成分から、目標画質に合わせて符号化対象を選択する画質制御部として、マイクロプロセッサを機能させ、前記画質制御部は、人間の視覚特性を考慮した重み付けをされた前記優先度を用いるように前記マイクロプロセッサを機能させるものである。
【0028】
請求項11に係る発明は、請求項9または10記載のプログラムであって、前記画質制御部は、前記符号化対象を前記ビットプレーン単位で決定するように前記マイクロプロセッサを機能させるものである。
【0029】
請求項12に係る発明は、請求項9〜11の何れか1項に記載のプログラムであって、前記画質制御部は、前記符号化対象を前記符号化パス単位で決定するように前記マイクロプロセッサを機能させるものである。
【0030】
次に、請求項13に係る発明は、ウェーブレット変換により画像信号を高域成分と低域成分とに再帰的に帯域分割して複数の帯域成分の変換係数を算出し、該変換係数をエントロピー符号化して圧縮された圧縮画像データの符号量を制御するためのプログラムであって、前記圧縮画像データの前記各帯域成分のうち、所定の帯域成分の2次元合成フィルタ係数のノルムを基準として、かつ、再帰的に帯域分割された回数に応じて、設定された優先度につき、該優先度に対応するビット数だけ当該帯域成分をビットシフトすると共に、ビットシフトした前記帯域成分の符号化データを所定の走査順序で並べ替えて生成した符号列から、目標符号量に適合する切り捨て点を算出し、当該切り捨て点よりも前の前記符号列を出力させるように制御する符号量制御部として、マイクロプロセッサを機能させることを特徴としている。
【0031】
請求項14に係る発明は、請求項13記載のプログラムであって、前記符号量制御部は、前記符号化データを、前記優先度の高い順に且つ同一の前記優先度においては高域側から低域側に向けた前記走査順序で並べ替えて前記符号列を生成するように前記マイクロプロセッサを機能させるものである。
【0032】
請求項15に係る発明は、請求項9〜14の何れか1項に記載のプログラムであって、前記圧縮画像データの前記各帯域成分に対して、前記低域成分に再帰的に帯域分割された回数に応じて設定された優先度に対応するビット数だけ当該帯域成分をビットシフトすると共に、ビットシフトした前記帯域成分を複数のレイヤーに分割するように制御するレイヤー分割制御部として、前記マイクロプロセッサを機能させるものである。
【0033】
そして、請求項16に係る発明は、請求項15記載のプログラムであって、前記レイヤー分割制御部は、人間の視覚特性を考慮した重み付けをされた前記優先度を用いるように前記マイクロプロセッサを機能させるものである。
【0034】
【発明の実施の形態】
以下、本発明の実施形態について説明する。
【0035】
符号量制御装置の構成.
図1は、本発明の実施形態に係る符号量制御装置の概略構成を示す機能ブロック図である。この符号量制御装置(トランスコーダ)1は、大容量の記憶装置2、この記憶装置2に対してデータの読出しと書出しの制御を行うMMU(メモリ管理部)3、ビット切り捨て制御部4、多重化部5、優先度テーブル6およびレイヤー分割制御部7を備えて構成される。
【0036】
尚、この符号量制御装置1を構成する処理部4,5,6および7の全部または一部は、ハードウェアで構成されてもよいし、マイクロプロセッサを機能させるプログラムで構成されていてもよい。
【0037】
この符号量制御装置1のMMU3は、JPEG2000方式で圧縮符号化された圧縮符号化データを含む入力ビットストリームを記憶装置2に一時記憶した後に、その符号量を制御する制御信号CS1,CS2に従って、記憶装置2からデータODを読み出して多重化部5に出力する。多重化部5は、データODを多重化し、出力ビットストリームとして出力する。
【0038】
図2は、図1に示した符号量制御装置1におけるビット切り捨て制御部4の概略構成を示す機能ブロック図である。ビット切り捨て制御部4は、目標画質に合わせて符号化対象を選択する画質制御部10と、目標符号量(最終符号量)に合わせて符号量を制御する符号量制御部11とを備えている。また、符号量制御部11は、MMU3から供給される入力ビットストリームのデータ構造情報DSに基づいて、画質制御部10で選択された符号化対象から、目標符号量に適合する切り捨て点を算出し、当該切り捨て点よりも前の符号列を読み出させる読出制御信号CS1を生成し、MMU3に供給する。
【0039】
また、図1に示すレイヤー分割制御部7は、MMU3から供給される入力ビットストリームのデータ構造情報DSに基づいて、複数のレイヤーに分割した出力ビットストリームを生成させるための読出制御信号CS2を生成し、MMU3に出力する。
【0040】
そして、優先度テーブル6は、入力ビットストリームに含まれる圧縮符号化データの各帯域成分に対して、JPEG2000方式に従って低域成分に再帰的に帯域分割された回数に応じて設定される優先度を格納しており、その優先度データPS1,PS2を、ビット切り捨て制御部4とレイヤー分割制御部7とに供給している。
【0041】
以上の構成を有する符号量制御装置1の構成と動作について以下に詳説する。
【0042】
優先度設定処理(第1実施例).
上記優先度テーブル6に記録する優先度の設定方法の第1実施例について説明する。本発明では、優先度は、各帯域成分(サブバンド)に対して、低域成分に再帰的に帯域分割された回数に応じて決定される。本実施例では、分解レベルn(n:1以上の整数)における帯域成分HHnの優先度は「n−1」、帯域成分HLnおよびLHnの優先度は「(n−1)+1」、帯域成分LLnの優先度は「(n−1)+2」にそれぞれ決定される。例えば、図24に示す帯域成分HH1の優先度は「0」、帯域成分LL3の優先度は「4」に設定される。図3は、オクターブ分割方式に従って帯域分割した2次元画像25を示す模式図である。各帯域成分に優先度「0」,「1」,「2」,「3」,「4」の何れかが付されている。
【0043】
優先度テーブル6には、帯域成分HHn,HLn,LHn,LLnのそれぞれに対応する優先度の情報が記録されており、画質制御部10,符号量制御部11およびレイヤー分割制御部7は、この優先度テーブル6から取得した優先度データPS1,PS2に従って、各帯域成分に対して優先度を設定する。具体的には、各帯域成分においてエントロピー符号化された変換係数(以下、単に「変換係数」と呼ぶ。)を、優先度に対応するビット数だけシフトさせることで、各変換係数に対して優先度が設定される。尚、このビットシフト処理では、必ずしも、各変換係数に対して実際にビットシフト演算を施す必要は無く、変換係数の各ビットの位置を仮想的にシフトさせればよい。この場合、変換係数の各ビットが属するビットプレーンの位置は変わらない。
【0044】
図4は、ビットシフトによる優先度設定処理を説明するための図である。図3に示した例では、帯域成分LL3の優先度は「4」であるから、該当する変換係数26は4ビット左シフトされている。また、優先度「3」を設定された帯域成分HL3,LH3の変換係数26,26は、3ビット左シフトされ、優先度「2」を設定された帯域成分HH3,HL2,LH2の変換係数26,26,26は、2ビット左シフトされ、優先度「1」を設定された帯域成分HH2,HL1,LH1の変換係数26,26,26は、1ビット左シフトされる。このとき、図5に示すように、ビットシフト前の2次元画像25Aの変換係数は、前述の左ビットシフト処理によって2次元画像25Bで示す変換係数に変化する。例えば、帯域成分LL3の変換係数値(=4)は、4ビットの左シフトにより、4×24=64に変換される。
【0045】
次に、以上のように優先度を設定する理由(理論的背景)を以下に説明する。
【0046】
上述した従来のレート・歪み最適化(R-D optimization)の方法では、歪測度を利用した最適化処理が行われていた。David S. Taubmanらによる前記参考文献Aによれば、歪測度Di (z)は次式(1)に従って算出される。
【0047】
【数1】
【0048】
上式(1)中、zは、ビット切り捨て点(bit truncation point);oyi K[i,j][j]は、K[i,j]番目のビットプレーンで逆量子化されたコードブロックのj番目のサンプル値(係数値);yi[j]は、当該コードブロックのj番目のサンプル値(係数値);Gb[i]は、サブバンドb[i]に対応する合成フィルタ係数のノルムの二乗であって、当該サブバンドbに依存する歪モデルの重み係数を示している。尚、説明の便宜上、上式(1)に示した記号の表記法は、前記参考文献Aでのそれとは若干異なる。
【0049】
レート・歪み最適化では、この歪測度Di (z)のサブバンドb[i]における総和量を最小にするような最適化処理が行われる。サブバンドbの重み係数Gbは、画像の歪みを低減させるための重み付けを表している。
【0050】
サブバンドbの重み係数Gbは、次式(2)に従って算出される。
【0051】
【数2】
【0052】
ここで、上式(2)中、sb[n]は、サブバンドbの1次元合成フィルタ係数を示している。また、記号||x||は、ベクトルxに関するノルムを示す。
【0053】
前記参考文献Aに記載される数式(4.39)と(4.40)によれば、分解レベル1における低域成分L1の1次元合成フィルタ係数sL[1][n]と、同分解レベルにおける高域成分H1の1次元合成フィルタ係数sH[1][n]とは、次式(3)に従って算出される。
【0054】
【数3】
【0055】
ここで、上式(3)中、g0[n]は、画像信号を帯域分割する順変換フィルタのローパス・フィルタ係数、g1[n]は、そのハイパス・フィルタ係数をそれぞれ示している。
【0056】
また、分解レベルd(d=1,2,…,D)における低域成分Ldの1次元合成フィルタ係数sL[d][n]と、同分解レベルにおける高域成分Hdの1次元合成フィルタ係数sH[d][n]とは、次式(4)に従って算出される。
【0057】
【数4】
【0058】
そして、分解レベルdにおける低域成分Ldの1次元合成フィルタ係数のノルムの二乗は、次式(5)に従って算出される。
【0059】
【数5】
【0060】
高域成分の1次元合成フィルタ係数のノルムの二乗も、上式(5)と同様にして算出することができる。
【0061】
次に、分解レベルd(d=1,2,…,D;Dは整数)における帯域成分LLD,HLd,LHd,HHdの2次元合成フィルタ係数は、上記1次元合成フィルタ係数の積で表現することができ、帯域成分bの2次元の重み係数Gbも、1次元の重み係数の積で表現することができる。具体的には、2次元合成フィルタ係数と2次元の重み係数とは、次式(6)に従って算出される。
【0062】
【数6】
【0063】
上式(6)中、添字LL[D]はサブバンドLLDを示し,HL[d],LH[d]およびHH[d]はそれぞれサブバンドHLd,LHdおよびHHdを表している。
【0064】
重み係数Gbの平方根がノルムである。以下の表1〜表4に、2次元の重み係数Gbに関する計算結果を示す。表1に、(9,7)フィルタ(9×7タップのフィルタ)の各帯域成分のノルムの二乗の数値を、表2には、表1に対応するノルムの数値をそれぞれ示す。また、表3に、(5,3)フィルタ(5×3タップのフィルタ)の各帯域成分のノルムの二乗の数値を、表4には、表3に対応するノルムの数値をそれぞれ示す。
【0065】
【表1】
【0066】
【表2】
【0067】
【表3】
【0068】
【表4】
【0069】
更に、分解レベル1における低域成分LL1のノルムをαで表すとき、このノルムαを用いて、各帯域成分について図6に示すような値を設定する。図6に示す2次元画像27は、オクターブ分割方式に従って帯域分割された2次元画像120を示す図である。分解レベルn(n:1以上の整数)における帯域成分HHnの設定値は「2n-3×α」、帯域成分HLnおよびLHnの設定値は「2n-2×α」、帯域成分LLnの設定値は「2n-1×α」にそれぞれ設定される。従って、例えば、帯域成分LH1の設定値は「2-1×α」に設定されている。
【0070】
上記設定値と、表2と表4に示したノルムの数値とを比較すれば、両者は概ね近似する。例えば、表2の場合(α=1.96591)、図6に示す各帯域成分の「設定値(対応する帯域成分)」は、約0.49(HH1)、約0.98(HL1,LH1)、約1.96(HL2,LH2,HH3)、約3.93(HL3,LH3)、約7.86(LL3)となり、これら設定値は、表2に示したノルムの数値と近似していることが分かる。
【0071】
また、図6において、帯域成分LL1のノルムをα=2に丸め込み、各帯域成分の設定値を1ビット左シフトした値、すなわち、全ての設定値に21を乗算した2の巾乗値の指数は、図3に示した優先度の値に一致することが分かる。よって、第1実施例のように各帯域成分に優先度を設定することは、近似的に、レート・歪み最適化で使用するフィルタのノルム(重み係数の平方根)を各帯域成分のサンプル値(変換係数値)に乗算することに等しい。従って、本実施例の優先度は画像の歪みを低減させ得るように設定されるものである。
【0072】
優先度設定処理(第2実施例).
次に、優先度設定方法の第2実施例について説明する。本実施例では、各帯域成分の上記重み係数Gbの平方根であるノルムを、最も高い分解レベルにおける最低域成分LLのノルムで除算した値を2の巾乗値に丸め込み、その2の巾乗値の指数の絶対値を、優先度として設定する。具体的には、最も高い分解レベルnの最低域成分LLnのノルムをαとし、その他の帯域成分のノルムをxとし、2の巾乗に丸め込む変数yに関する関数をR[y]とし、変数yの2の巾乗2mの指数mを算出する関数をm=I[2m]とし、変数yに関する絶対値を|y|とするとき、優先度pは、p=|I[R[x/α]]|、に従って算出される。
【0073】
以下の表5に、上記表2に示した(9,7)フィルタのノルムを用いて算出した優先度を示す。ここで、最も高い分解レベルは5であり、α=33.92493、である。また、図7に、表5に示した優先度を記した2次元画像28を示す帯域分割図を示す。尚、表中の「×」は、当該帯域成分の優先度は計算されていないことを意味する。
【0074】
【表5】
【0075】
また、以下の表6に、上記表4に示した(5,3)フィルタのノルムを用いて算出した優先度を示す。
【0076】
【表6】
【0077】
上記第1実施例では、各帯域成分の変換係数を優先度のビット数だけ左シフトさせて優先度を設定していたが、本第2実施例では、各帯域成分の変換係数を優先度のビット数だけ右シフトさせる処理が実行される。但し、変換係数のビット長を拡大させるように右ビットシフト処理が実行される。図8は、図7に示す優先度のビット数だけ右シフトされた帯域成分の変換係数29,29,…を示す模式図である。
【0078】
優先度設定処理(第3実施例).
次に、人間の視覚特性を考慮した第3実施例に係る優先度設定方法について説明する。数百万画素程度の高解像度の画像について上記第2実施例で示した優先度を適用した場合、復号画像の画質は客観評価では良いが、人間の視覚評価では必ずしも良いとは限らない。そこで、本実施例の優先度設定方法は、人間の視覚特性を考慮した重み付けをされた優先度を採用するものである。これにより、高い表示画質の圧縮画像を生成することが可能になる。
【0079】
前記参考文献AのChapter 16には、CSF(human visual system Contrast Sensitivity Function)に基づいた重み付けMSE(Weighted Mean Squared Error;WMSE)が記載されている。この記載によれば、人間の視覚評価を改善するために、上式(1)を次式(7)に修正するのが望ましい。
【0080】
【数7】
【0081】
ここで、上式(7)中、Wb[i] csfは、サブバンドb[i]の"energy weighting factor"と呼ばれており、Wb[i] csfの推奨数値は、「ISO/IEC JTC 1/SC 29/WG1(ITU-T SG8) N2406, "JPEG 2000 Part 1 FDIS (includes COR 1, COR 2, and DCOR3)," 4 December 2001」の文献(以下、参考文献Bと呼ぶ。)に記載されている。図9〜図11に、参考文献Bに記載される"energy weighting factor"の数値を示す。
【0082】
図9〜図11中の"level"および "Lev"は分解レベルを、"Comp"は輝度成分Yと色差成分Cb,Crをそれぞれ示しており、"Viewing distance(視距離)"が1000,1700,2000,3000,4000の例が示されている。また、"Viewing distance 1000", "Viewing distance 1700", "Viewing distance 2000", "Viewing distance 3000", "Viewing distance 4000"は、それぞれ、100dpi,170dpi,200dpi,300dpi,400dpiのディスプレイまたは印刷物を10インチ離れて見たときの視距離を意味する。
【0083】
図9〜図11に示す数値を用いて、上式(7)の重み付け係数の平方根(Wb[i] csf・Gb[i])1/2を計算した。その計算結果を、以下の表7〜表18に示す。表7〜表9は、図9に示す数値を用いて計算した(9,7)フィルタの白黒用数値、表10〜表12は、図10と図11に示す数値を用いて計算した(9,7)フィルタのカラー用数値を、表13〜表15は、図9に示す数値を用いて計算した(5,3)フィルタの白黒用数値を、表16〜表18は、図10と図11に示す数値を用いて計算した(5,3)フィルタのカラー用数値をそれぞれ示している。
【0084】
【表7】
【0085】
【表8】
【0086】
【表9】
【0087】
【表10】
【0088】
【表11】
【0089】
【表12】
【0090】
【表13】
【0091】
【表14】
【0092】
【表15】
【0093】
【表16】
【0094】
【表17】
【0095】
【表18】
【0096】
次に、上記表7〜表18に示す数値を用いて、上記第2実施例で述べたのと同じ手順で各帯域成分の優先度を算出した。すなわち、最も高い分解レベルnの最低域成分LLnの数値をαとし、その他の帯域成分の数値をxとし、2の巾乗に丸め込む変数yに関する関数をR[y]とし、変数yの2の巾乗2mの指数mを算出する関数をm=I[2m]とし、変数yに関する絶対値を|y|とするとき、優先度pは、p=|I[R[x/α]]|、に従って算出される。
【0097】
優先度の値を、以下の表19〜表30に示す。表19,表20,表21,表22,表23,表24,表25,表26,表27,表28,表29および表30の優先度は、それぞれ、上記した表7,表8,表9,表10,表11,表12,表13,表14,表15,表16,表17および表18の数値を用いて算出されたものである。
【0098】
【表19】
【0099】
【表20】
【0100】
【表21】
【0101】
【表22】
【0102】
【表23】
【0103】
【表24】
【0104】
【表25】
【0105】
【表26】
【0106】
【表27】
【0107】
【表28】
【0108】
【表29】
【0109】
【表30】
【0110】
本実施例では、上記第2実施例と同じように、以上の表19〜表30に示す優先度のビット数だけ右シフトさせることで、各帯域成分の変換係数に対して優先度が設定される。これにより、人間の視覚特性を考慮した優先度を設定できる。
【0111】
画質制御処理.
次に、図2に示した画質制御部10の構成と処理内容について説明する。図12は、この画質制御部10の概略構成を示す機能ブロック図である。
【0112】
この画質制御部10は、目標画質(高画質,標準画質,低画質など)に基づいて、複数の画質パラメータ群から当該目標画質に適した画質パラメータQPを選択して出力する画質パラメータ選択部31と、符号化対象を決定する符号化対象判定部30とを備えている。符号化対象判定部30は、優先度テーブル6から取得した優先度データPS1に従って、入力ビットストリームに含まれる圧縮画像データの各帯域成分に対して上述の優先度を設定する。また符号化対象判定部30は、設定した優先度に従って、前記画質パラメータQPで指定される目標画質に合わせて符号化対象を決定し、走査領域情報SAを生成出力する。
【0113】
以下、符号化対象判定部30における符号化対象の決定方法について説明する。図13は、優先度に応じてビットシフトされた変換係数33,33,…を例示する模式図である。各変換係数33は優先度に応じてビットシフトされている。また、変換係数33の各ビットに付した番号0,1,…,10は、当該ビットが属するビットプレーンの番号を示している。ここで、LSB番号=0,MSB番号=10、である。
【0114】
符号化対象判定部30は、画質パラメータQPに従って符号化終了ライン32を設定し、当該符号化終了ライン32よりも上位ビットを符号化対象に決定し、そのライン32よりも下位ビットを符号化対象から外すように走査領域情報SAを生成する。これにより符号化対象を効率的に選別することが可能になる。この結果、走査領域情報SAを受けた符号量制御部11は、各コードブロックにおいて、符号化終了ライン32よりも上位のビットプレーンのみを走査し、そのライン32よりも下位のビットプレーンを切り捨てることになる。
【0115】
符号化対象判定部30は、更に、画質パラメータQPに従って、符号化パス単位で符号化対象を決定することができる。画質パラメータQPは、符号化対象のビットプレーンの制限と、符号化対象の符号化パス(CLパス,SIGパスおよびMRパス)の制限とを示すパラメータ群を含んでいる。以下の表31に、2048×2560画素の解像度をもつ画像に適した画質パラメータQPを例示する。尚、最低域のサブバンドの解像度を128×128画素よりも小さくする必要があるため、5以上の分解レベルが必要である。
【0116】
【表31】
【0117】
表31において「ビットプレーン数」は、図13に示した符号化終了ライン32よりも下位ビットの切り捨て対象のビットプレーンの数を、「パス名」は、符号化対象の中の最終符号化パスを、「最大パス数」は、符号化対象の符号化パス数の上限をそれぞれ表している。
【0118】
図13と表31を適用した場合の処理例を以下に説明する。図14に、帯域成分LL5の変換係数33として"000110101112=21510"を例示する(Y2は2進値Yを、X10は10進値Xを表すものとする)。表31に示す通り、帯域成分LL5における最終符号化パスはCLパス、最大パス数は17に制限されている。
【0119】
図14に示す変換係数の7番目ビットは、SIGパスまたはCLパスに属するようにコンテクスト判定がなされている。8番目〜10番目の上位ビットは、0ビットのみで構成されるビットプレーンに属する場合はタグツリー(Tag tree)と称する方式で符号化されており、既に符号化パスが開始している場合はSIGパスまたはCLパスで符号化されている。7番目ビットが符号化開始パス(CLパス)に属する場合、6番目ビットを含む下位ビットは、MRパスに属するようにコンテクスト判定される。一般に、符号化開始のビットプレーンよりも下位のビットプレーンは、符号化効率の観点から、SIGパス,MRパスおよびCLパスの順番で符号化されている。よって、最大パス数は17に制限されているため、7番目ビットのCLパスから1番目ビットのSIGパス迄の計17パスが符号化対象になる。但し、1番目ビットはMRパスに属するため符号化対象に入らない。従って、下位2ビットは切り捨てられ、切り捨て後の値は"000110101002=21210"となる。この値がミッドポイントで逆量子化されれば、"000110101102=21410"となる。
【0120】
次に、図15に、帯域成分LL5の変換係数33として"000000011112=1510"を例示する。変換係数の3番目ビットは、SIGパスまたはCLパスに属する。4番目〜10番目の上位ビットは、0ビットのみで構成されるビットプレーンに属する場合はタグツリー(Tag tree)で符号化されており、既に符号化パスが開始している場合はSIGパスまたはCLパスで符号化されている。3番目ビットが符号化開始パス(CLパス)に属する場合、2番目ビットを含む下位ビットはMRパスに属し、3番目ビットのCLパスから0番目ビットのCLパス迄の計10パスが符号化対象になる。切り捨て後の値は"000000011112=1510"となり、この値が逆量子化されれば、"000000011112=1510"となる。
【0121】
次に、図16に、帯域成分HH2の変換係数33として"000010111112=9510"を例示する。表31に示す通り、帯域成分HH2における最終符号化パスはSIGパス、最大パス数は14に制限されている。また下位3ビットのビットプレーンは切り捨てられる。
【0122】
変換係数の6番目ビットは、SIGパスまたはCLパスに属する。7番目〜10番目の上位ビットは、0ビットのみで構成されるビットプレーンに属する場合はタグツリー(Tag tree)で符号化されており、既に符号化パスが開始している場合はSIGパスまたはCLパスで符号化されている。6番目ビットが符号化開始パス(CLパス)に属する場合、5番目ビットを含む下位ビットはMRパスに属する。また、3番目ビットプレーンのSIGパス迄しか符号化しないという制限のため、6番目ビットのCLパスから4番目ビットのSIGパス迄の8パスが符号化対象になるが、3番目ビットはMRパスに属するため符号化対象に入らない。従って、切り捨て後の値は"000010100002=8010"となり、この値がミッドポイントで逆量子化されれば、"000010110002=8810"となる。
【0123】
尚、各ビットプレーンが、SIGパス,MRパスおよびCLパスの順番で符号化されているのは、SIGパスの歪みに対する符号化効率が最も高いからである。図17に、各符号化パスにおけるレート・歪み特性を示す。R−D曲線中、点P1〜P2の部分がSIGパス,点P2〜P3の部分がMRパス、点P3〜P4の部分がCLパスを示している。各符号化パスにおけるレート(符号量)に対する歪みの比率ΔDSIG/ΔRSIG,ΔDMR/ΔRMR,ΔDCL/ΔRCLをみれば、SIGパスにおける曲線勾配が最も急であり、符号化効率が最も高いことが分かる。
【0124】
以上のように、本実施形態に係る画質制御処理では、優先度に応じてビットシフトした変換係数に対して、変換係数を符号化対象とするか否かが決定される。符号化対象のみが選択されるため、歪みの少ない高画質の圧縮画像を生成し得るように、符号量を効率良く制御することが可能である。
【0125】
符号量制御処理.
次に、図2に示した符号量制御部11の処理内容について説明する。符号量制御部11は、入力ビットストリームに含まれる圧縮符号化データの容量の小計を、帯域成分単位,ビットプレーン単位および符号化パス単位で算出する。
【0126】
前記符号量制御部11は、以下に説明する走査順序で並べ替えて生成した符号列から、目標符号量に適合するように切り捨て点(truncation point)を算出する。次に、符号量制御部11は、その符号列のうち切り捨て点よりも前の符号列を読出すように読出制御信号CS1をMMU3に出力する。
【0127】
図18と図19は、前記走査順序と切り捨て点の一例を説明するための図である。図18と図19には、図13に示したのと同じ規則で、優先度に応じてビットシフトされた変換係数33,33,…が表示されている。
【0128】
図18の矢印に示すように、変換係数33,33,…は、ビットプレーン単位または符号化パス単位で、優先度の高い順に(上位ビットから下位ビットに向けて)且つ同一の優先度においては高域側から低域側に向けた走査順序で並べ替えられる。一般に、下位のビットプレーンを符号化する程にMRパスの割合が増えて圧縮効率が下がる傾向にある。よって、圧縮効率を向上させるために出来るだけ多くのSIGパスを符号化すべく、同一の優先度においては高域側から低域側に向けた走査順序を採用している。
【0129】
そして、符号量制御部11は、実際の符号量(バイト数)が目標符号量(バイト数)以下になる条件を満たすように切り捨て点を決定し、当該切り捨て点以降の符号列に含まれる下位ビットプレーンを切り捨てる。これにより、圧縮符号化データの符号量制御を、各サブバンドに設定した優先度に従って効率的に行うことができる。ここで、図19に示すように、目標符号量に合わせてサブバンドHL3の2番目ビットプレーンが切り捨て点として決定された場合、矢印で示す部分のビットが切り捨てられることになる。
【0130】
図20は、ビットプレーン単位で並べ替えられた符号列を示す図、図21は、符号化パス単位で並べ替えられた符号列を示す図である。図20では、各ビットプレーンに対して、サブバンドを示す符号LL5,HL5,…と、ビットプレーン番号10,9,…とが付されている。サブバンドHL3の2番目ビットプレーンに付されたライン44以降のビットプレーンが切り捨てられる。
【0131】
また、図21では、各符号化パスに対して、符号化パスの種類を示す符号CL,SIG,MRと、サブバンドを示す符号LL5,HL5,…と、ビットプレーン番号10,9,…とが付されている。サブバンドHL3の2番目ビットプレーンのMRパスに付されたライン44以降のビットプレーンが切り捨てられる。
【0132】
以上のように本実施形態に係る符号量制御処理によれば、レート・歪み最適化処理のために各符号化パスにおける歪量を利用せずに済み、リアルタイム性が高く、オーバーヘッドが低い高効率の符号量制御を実現できる。
【0133】
レイヤー分割処理.
次に、図2に示したレイヤー分割制御部7の動作を以下に説明する。レイヤー分割制御部7は、優先度テーブル6から取得した優先度データPS2を用いて、入力ビットストリームに含まれる圧縮符号化データを優先度に対応するビット数だけビットシフトした符号列に変換し、その符号列を複数のレイヤー(マルチ・レイヤー)に分割させる制御機能を有している。
【0134】
以下、レイヤー分割処理について説明する。MMU3は、入力ビットストリームを大容量の記憶装置2に一時的に記憶させる。レイヤー分割制御部7は、MMU3から圧縮符号化データのデータ構造情報DSを取得する。次いで、レイヤー分割制御部7は、優先度テーブル6から優先度データPS2を取得し、この優先度データPS2に含まれる優先度に従って、圧縮符号化データの各帯域成分の変換係数を所定ビット数だけシフトさせる。これにより、各帯域成分の変換係数に対して優先度が設定される。優先度の設定方法としては、上記した第1実施例、第2実施例および第3実施例の方法を採用すればよい。
【0135】
図22は、優先度に対応するビット数だけシフトされた変換係数45,45,…を例示する模式図である。各帯域成分LL5〜HH1の変換係数45,45,…は、優先度のビット数だけ右ビットシフト或いは左ビットシフトされている。また、各変換係数44の各ビットに付した番号0,1,…,10は、当該ビットが属するビットプレーンの番号を示している。ここで、LSB番号=0,MSB番号=10、である。
【0136】
次に、レイヤー分割制御部7は、レイヤー分割情報に基づき、ビットシフトした符号化データを、ビットプレーン単位或いは符号化パス単位で複数のレイヤーにグループ分けするように分割位置を決定する。レイヤー分割情報としては、シングル・レイヤーとマルチ・レイヤーとの何れかを選択させる選択情報や、ビットプレーン単位または符号化パス単位でレイヤー分割位置を指定する情報などが含まれる。図22の例では、圧縮符号化データを5枚のレイヤー0〜レイヤー4にビットプレーン単位で分割する分割位置が示されている。そして、レイヤー分割制御部7は、その分割位置に従ってレイヤー単位でデータを読出す旨の読出制御信号CS2をMMU3に供給する。MMU3は、読出制御信号CS2に従って、記憶装置2に記憶されたデータODを、上位レイヤーから下位レイヤーにかけて順番に読出して、多重化部5に出力する。
【0137】
以上のレイヤー分割処理では、優先度は、各帯域成分を当該優先度に対応するビット数だけビットシフトして設定される。このようにビットシフトした帯域成分を複数のレイヤーに分割することで、レートに対する歪みを低減し得るように、ビットプレーン単位或いは符号化パス単位で複数のレイヤーを効率的に生成することが可能である。従って、必ずしも、上述のレート・歪み最適化を用いてレイヤー分割処理を行う必要は無く、歪みを低減し得るようにリアルタイム性の高いレイヤー分割処理を行うことが可能になる。
【0138】
【発明の効果】
以上の如く、本発明の請求項1に係る符号量制御装置および請求項9に係るプログラムによれば、各帯域成分は優先度に対応するビット数だけシフトされ、シフトするビット数に応じて帯域成分の優先度が定まることから、圧縮画像の目標画質に合わせて符号化対象を効率的に指定し、少ない演算量で高速な符号量制御を行うことが可能になる。
【0139】
請求項2および請求項10によれば、人間の視覚評価に適した、高い表示画質を実現するように符号量制御を行うことが可能となる。
【0140】
請求項3および請求項11によれば、目標画質に合わせてビットプレーン単位で符号量を細かく且つ効率的に制御できる。
【0141】
請求項4および請求項12によれば、目標画質に合わせて符号化パス単位で符号量を細かく且つ効率的に制御できる。
【0142】
請求項5,6および請求項13,14によれば、圧縮符号化データの符号量制御を、当該圧縮符号化データを復号化せずに、各帯域成分に設定した優先度に従って効率的に行うことが可能である。また、必ずしも、レート・歪み最適化を用いなくても、歪みを抑制し得るようにリアルタイム性の高い符号量制御を行うことが可能である。
【0143】
請求項7および請求項15によれば、優先度に応じてビットシフトした帯域成分を複数のレイヤーに分割するため、レートに対する歪みを低減し得るように複数のレイヤーを効率的に生成することが可能である。
【0144】
請求項8および請求項16によれば、人間の視覚評価に適した、高い表示画質を有する圧縮画像を生成することが可能となる。
【図面の簡単な説明】
【図1】本発明の実施形態に係る符号量制御装置の概略構成を示す機能ブロック図である。
【図2】図1に示した符号量制御装置におけるビット切り捨て制御部の概略構成を示す機能ブロック図である。
【図3】オクターブ分割方式に従って帯域分割した2次元画像を示す模式図である。
【図4】ビットシフトによる優先度設定処理を説明するための図である。
【図5】ビットシフトされた変換係数を例示する図である。
【図6】ウェーブレット変換によって帯域分割した2次元画像を示す模式図である。
【図7】ウェーブレット変換によって帯域分割した2次元画像を示す模式図である。
【図8】図7に示す優先度に応じて右ビットシフトされた帯域成分の変換係数を示す模式図である。
【図9】 Energy weighting factorの数値テーブルを示す図である。
【図10】 Energy weighting factorの数値テーブルを示す図である。
【図11】 Energy weighting factorの数値テーブルを示す図である。
【図12】本実施形態に係る画質制御部の概略構成を示す機能ブロック図である。
【図13】優先度に応じてビットシフトされた変換係数を例示する模式図である。
【図14】帯域成分LL5の変換係数の処理例を説明するための図である。
【図15】帯域成分LL5の変換係数の処理例を説明するための図である。
【図16】帯域成分HH2の変換係数の符号化処理例を説明するための図である。
【図17】レート・歪み特性の曲線を示す図である。
【図18】走査順序の一例を説明するための図である。
【図19】切り捨て点の一例を説明するための図である。
【図20】ビットプレーン単位で並べ替えられた符号列を示す図である。
【図21】符号化パス単位で並べ替えられた符号列を示す図である。
【図22】複数のレイヤーに分割された符号化データを例示する模式図である。
【図23】JPEG2000方式による圧縮符号化装置の概略構成を示す機能ブロック図である。
【図24】オクターブ分割方式に従って帯域分割された2次元画像を示す模式図である。
【図25】複数のコードブロックに分解された2次元画像を示す模式図である。
【図26】コードブロックを構成する複数枚のビットプレーンを示す模式図である。
【図27】3種類の符号化パスを示す模式図である。
【符号の説明】
1 符号量制御装置
2 記憶装置
3 MMU
4 ビット切り捨て制御部
5 多重化部
6 優先度テーブル
7 レイヤー分割制御部
10 画質制御部
11 符号量制御部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a code amount control apparatus for controlling the code amount of a bit stream including a compressed image signal.
[0002]
[Prior art]
As a next-generation high-efficiency encoding system for image data, the ISO (International Organization for Standardization) and ITU-T (International Telecommunication Union Telecommunication Standardization Sector) have developed the JPEG 2000 (Joint Photographic Experts Group 2000) system. The JPEG2000 system has superior functions compared to the current mainstream JPEG (Joint Photographic Experts Group) system, adopts DWT (Discrete Wavelet Transform) as orthogonal transform, and uses bit for entropy coding. It is characterized in that a method called EBCOT (Embedded Block Coding with Optimized Truncation) with plain coding is adopted.
[0003]
Hereinafter, the JPEG2000 format compression encoding procedure will be outlined with reference to the compression encoding apparatus (encoder) 100 shown in FIG.
[0004]
The image signal input to the
[0005]
FIG. 24 is a schematic diagram showing a two-
[0006]
Next, at the
[0007]
Next, the
[0008]
Next, the transform coefficient output from the
[0009]
FIG. 25 is a schematic diagram illustrating a two-
[0010]
Further, the coefficient
[0011]
The coefficient
[0012]
Next, the
[0013]
Next, the code
[0014]
[Problems to be solved by the invention]
In the
[0015]
On the other hand, in a digital device such as a digital camera, the image quality, image size, code amount, scalability (hierarchy), and the like of compressed image data may be changed. In such a case, the code amount and scalability of the compressed image are changed using a transcoder. In the JPEG2000 system, the scalability and code amount can be changed without decoding the compressed image signal. However, in the conventional JPEG baseline method, after the compressed image signal is once decoded, the scalability and code amount are changed. Since the change and compression encoding must be executed, the amount of calculation is large and the real-time property is low.
[0016]
Therefore, by using a JPEG2000 transcoder, it is possible to change the scalability, the code amount, and the like of the compressed encoded data in the bitstream generated by the
[0017]
In view of the above problems and the like, the present invention has a problem that the code amount control of a bitstream including compressed encoded data can be executed with a small amount of computation and high speed so that distortion with respect to the rate can be suppressed. The point is to provide a code amount control device.
[0018]
[Means for Solving the Problems]
In order to solve the above-mentioned problem, the invention according to
[0019]
The invention according to claim 2The amount of code of compressed image data that is compressed by entropy encoding the transform coefficient by calculating the transform coefficient of multiple band components by recursively dividing the image signal into high and low frequency components by wavelet transform ControlA code amount control device comprising:For each band component of the compressed image data, the band component is bit-shifted by the number of bits corresponding to the priority set according to the number of times the band is recursively divided into the low-frequency component, and the bit An image quality control unit that selects an encoding target in accordance with a target image quality from the shifted band component,The image quality control unit has a function of using the priority weighted in consideration of human visual characteristics.
[0020]
The invention according to
[0021]
The invention according to a fourth aspect is the code amount control apparatus according to any one of the first to third aspects, wherein the image quality control unit has a function of determining the encoding target in units of the encoding pass. It is what you have.
[0022]
Next, the invention according to
[0023]
The invention according to
[0024]
The invention according to
[0025]
The invention according to
[0026]
Next, the invention according to
[0027]
The invention according to
[0028]
The invention according to
[0029]
A twelfth aspect of the invention is the program according to any one of the ninth to eleventh aspects, in which the image quality control unit determines the encoding target in units of the encoding pass. Is to function.
[0030]
Next, an invention according to claim 13 is that the image signal is recursively divided into a high-frequency component and a low-frequency component by wavelet transform to calculate transform coefficients of a plurality of band components, and the transform coefficients are entropy-coded. A program for controlling the amount of code of compressed image data compressed by compression, wherein each band component of the compressed image dataOf which the norm of the two-dimensional synthesis filter coefficient of the predetermined band component is a reference, andDepending on the number of times the band was recursively split,Set priorityPer priorityThe band component is bit-shifted by the number of bits corresponding to, and the truncation point that matches the target code amount is calculated from the code string generated by rearranging the encoded data of the band-shifted band component in a predetermined scanning order. In addition, a microprocessor is made to function as a code amount control unit that controls to output the code string before the cut-off point.
[0031]
The invention according to
[0032]
The invention according to claim 15 is the program according to any one of
[0033]
The invention according to claim 16 is the program according to claim 15, wherein the layer division control unit functions the microprocessor to use the priority weighted in consideration of human visual characteristics. It is something to be made.
[0034]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described.
[0035]
Configuration of code amount control device.
FIG. 1 is a functional block diagram showing a schematic configuration of a code amount control apparatus according to an embodiment of the present invention. The code amount control device (transcoder) 1 includes a large-
[0036]
Note that all or part of the
[0037]
The
[0038]
FIG. 2 is a functional block diagram showing a schematic configuration of the bit
[0039]
1 generates a read control signal CS2 for generating an output bitstream divided into a plurality of layers, based on the data structure information DS of the input bitstream supplied from the
[0040]
The priority table 6 indicates the priority set according to the number of times the band components of the compression-coded data included in the input bitstream are recursively band-divided into low-frequency components according to the JPEG2000 system. The priority data PS1 and PS2 are stored and supplied to the bit
[0041]
The configuration and operation of the code
[0042]
Priority setting process (first embodiment).
A first embodiment of the priority setting method recorded in the priority table 6 will be described. In the present invention, the priority is determined for each band component (subband) according to the number of times the band is recursively divided into low frequency components. In this embodiment, the priority of the band component HHn at the decomposition level n (n: an integer of 1 or more) is “n−1”, the priority of the band components HLn and LHn is “(n−1) +1”, and the band component. The priority of LLn is determined as “(n−1) +2”. For example, the priority of the band component HH1 shown in FIG. 24 is set to “0”, and the priority of the band component LL3 is set to “4”. FIG. 3 is a schematic diagram showing a two-
[0043]
The priority table 6 records priority information corresponding to each of the band components HHn, HLn, LHn, and LLn. The image
[0044]
FIG. 4 is a diagram for explaining priority setting processing by bit shift. In the example shown in FIG. 3, since the priority of the band component LL3 is “4”, the corresponding
[0045]
Next, the reason (theoretical background) for setting the priority as described above will be described below.
[0046]
In the above-described conventional rate / distortion optimization (R-D optimization) method, an optimization process using a distortion measure has been performed. According to the above reference A by David S. Taubman et al.i (z)Is calculated according to the following equation (1).
[0047]
[Expression 1]
[0048]
In the above formula (1), z is a bit truncation point; oyi K [i, j][J] is the jth sample value (coefficient value) of the code block dequantized by the K [i, j] th bitplane; yi[J] is the j-th sample value (coefficient value) of the code block; Gb [i]Is the square of the norm of the synthesis filter coefficient corresponding to the subband b [i], and indicates the weighting coefficient of the distortion model depending on the subband b. For convenience of explanation, the notation of the symbol shown in the above formula (1) is slightly different from that in the reference A.
[0049]
For rate / distortion optimization, this distortion measure Di (z)Optimization processing is performed so as to minimize the total amount in the subband b [i]. Weighting factor G for subband bbRepresents weighting for reducing image distortion.
[0050]
Weighting factor G for subband bbIs calculated according to the following equation (2).
[0051]
[Expression 2]
[0052]
Here, in the above equation (2), sb[N] indicates a one-dimensional synthesis filter coefficient of subband b. The symbol || x || indicates a norm related to the vector x.
[0053]
According to the equations (4.39) and (4.40) described in the reference A, the one-dimensional synthesis filter coefficient s of the low-frequency component L1 at the decomposition level 1L [1][N] and the one-dimensional synthesis filter coefficient s of the high-frequency component H1 at the same decomposition levelH [1][N] is calculated according to the following equation (3).
[0054]
[Equation 3]
[0055]
Here, in the above formula (3), g0[N] is a low-pass filter coefficient of a forward transform filter for dividing an image signal into bands, g1[N] indicates the high-pass filter coefficient, respectively.
[0056]
Further, the one-dimensional synthesis filter coefficient s of the low frequency component Ld at the decomposition level d (d = 1, 2,..., D).L [d][N] and the one-dimensional synthesis filter coefficient s of the high-frequency component Hd at the same decomposition levelH [d][N] is calculated according to the following equation (4).
[0057]
[Expression 4]
[0058]
Then, the square of the norm of the one-dimensional synthesis filter coefficient of the low frequency component Ld at the decomposition level d is calculated according to the following equation (5).
[0059]
[Equation 5]
[0060]
The square of the norm of the one-dimensional synthesis filter coefficient of the high-frequency component can be calculated in the same manner as the above equation (5).
[0061]
Next, the two-dimensional synthesis filter coefficients of the band components LLD, HLd, LHd, and HHd at the decomposition level d (d = 1, 2,..., D; D is an integer) are expressed by the product of the one-dimensional synthesis filter coefficients. The two-dimensional weighting factor G of the band component bbCan also be expressed as a product of one-dimensional weighting factors. Specifically, the two-dimensional synthesis filter coefficient and the two-dimensional weighting coefficient are calculated according to the following equation (6).
[0062]
[Formula 6]
[0063]
In the above formula (6), the subscript LL [D] indicates the subband LLD, and HL [d], LH [d], and HH [d] indicate the subbands HLd, LHd, and HHd, respectively.
[0064]
Weight coefficient GbIs the norm. Tables 1 to 4 below show the two-dimensional weighting factor GbThe calculation result about is shown. Table 1 shows the numerical value of the norm of each band component of the (9, 7) filter (9 × 7 tap filter), and Table 2 shows the numerical value of the norm corresponding to Table 1. Table 3 shows the norm square value of each band component of the (5, 3) filter (5 × 3 tap filter), and Table 4 shows the norm value corresponding to Table 3.
[0065]
[Table 1]
[0066]
[Table 2]
[0067]
[Table 3]
[0068]
[Table 4]
[0069]
Furthermore, when the norm of the low-frequency component LL1 at the
[0070]
If the set value is compared with the norm values shown in Tables 2 and 4, they are approximately approximate. For example, in the case of Table 2 (α = 1.96591), the “set value (corresponding band component)” of each band component shown in FIG. 6 is about 0.49 (HH1), about 0.98 (HL1, LH1), It is about 1.96 (HL2, LH2, HH3), about 3.93 (HL3, LH3), and about 7.86 (LL3), and these set values are close to the norm values shown in Table 2. I understand.
[0071]
In FIG. 6, the norm of the band component LL1 is rounded to α = 2, and the set value of each band component is shifted to the left by 1 bit, that is, all set values are 21It can be seen that the exponent of the power value of 2 multiplied by 2 matches the priority value shown in FIG. Therefore, setting the priority to each band component as in the first embodiment approximately means that the norm (square root of the weighting factor) of the filter used in the rate / distortion optimization is the sample value of each band component ( Equivalent to multiplying (conversion coefficient value). Accordingly, the priority of the present embodiment is set so as to reduce image distortion.
[0072]
Priority setting process (second embodiment).
Next, a second embodiment of the priority setting method will be described. In the present embodiment, the weight coefficient G of each band componentbA value obtained by dividing the norm, which is the square root of, by the norm of the lowest frequency component LL at the highest decomposition level is rounded to a power value of 2, and the absolute value of the exponent of the power value of 2 is set as the priority. Specifically, the norm of the lowest band component LLn of the highest decomposition level n is α, the norm of the other band component is x, a function related to a variable y rounded to the power of 2 is R [y], and the
[0073]
Table 5 below shows the priority calculated using the norm of the (9, 7) filter shown in Table 2 above. Here, the highest decomposition level is 5, and α = 33.4923. FIG. 7 shows a band division diagram showing the two-
[0074]
[Table 5]
[0075]
Table 6 below shows the priority calculated using the norm of the (5, 3) filter shown in Table 4 above.
[0076]
[Table 6]
[0077]
In the first embodiment, the priority is set by shifting the conversion coefficient of each band component to the left by the number of priority bits, but in the second embodiment, the conversion coefficient of each band component is set to the priority. A process of shifting right by the number of bits is executed. However, the right bit shift process is executed so as to increase the bit length of the transform coefficient. FIG. 8 is a schematic diagram showing band
[0078]
Priority setting process (third embodiment).
Next, a priority setting method according to the third embodiment in consideration of human visual characteristics will be described. When the priority shown in the second embodiment is applied to a high-resolution image of about several million pixels, the image quality of the decoded image is good for objective evaluation, but not necessarily good for human visual evaluation. Therefore, the priority setting method of this embodiment employs a weighted priority in consideration of human visual characteristics. This makes it possible to generate a compressed image with high display quality.
[0079]
Chapter 16 of the reference A describes a weighted mean squared error (WMSE) based on CSF (human visual system contrast sensitivity function). According to this description, in order to improve human visual evaluation, it is desirable to modify the above equation (1) into the following equation (7).
[0080]
[Expression 7]
[0081]
Here, in the above formula (7), Wb [i] csfIs called the “energy weighting factor” of subband b [i] and Wb [i] csfThe recommended value for is the ISO /
[0082]
9 to 11, “level” and “Lev” indicate the decomposition level, “Comp” indicates the luminance component Y and the color difference components Cb and Cr, respectively, and “Viewing distance” is 1000 and 1700. , 2000, 3000, 4000 examples are shown. "
[0083]
Using the numerical values shown in FIGS. 9 to 11, the square root (Wb [i] csf・ Gb [i])1/2Was calculated. The calculation results are shown in Tables 7 to 18 below. Tables 7 to 9 are calculated using the numerical values shown in FIG. 9 (9, 7), and black and white values for the filter. Tables 10 to 12 are calculated using the numerical values shown in FIGS. 10 and 11 (9 7) Filter color values, Tables 13 to 15 calculated using the values shown in FIG. 9, (5, 3) Filter black and white values, Tables 16 to 18 are shown in FIG. The numerical values for the color of the (5, 3) filter calculated using the numerical values shown in FIG.
[0084]
[Table 7]
[0085]
[Table 8]
[0086]
[Table 9]
[0087]
[Table 10]
[0088]
[Table 11]
[0089]
[Table 12]
[0090]
[Table 13]
[0091]
[Table 14]
[0092]
[Table 15]
[0093]
[Table 16]
[0094]
[Table 17]
[0095]
[Table 18]
[0096]
Next, using the numerical values shown in Tables 7 to 18, the priority of each band component was calculated in the same procedure as described in the second embodiment. That is, the numerical value of the lowest band component LLn of the highest decomposition level n is α, the numerical values of the other band components are x, the function relating to the variable y rounded to the power of 2 is R [y], and the variable y of 2 Width power 2mA function for calculating an index m of m = I [2m] And the absolute value for the variable y is | y |, the priority p is calculated according to p = | I [R [x / α]] |.
[0097]
The priority values are shown in Table 19 to Table 30 below. The priorities of Table 19, Table 20, Table 21, Table 22, Table 23, Table 24, Table 25, Table 26, Table 27, Table 28, Table 29, and Table 30 are shown in Tables 7, 8, and 8, respectively. Table 9, Table 10, Table 11, Table 12, Table 13, Table 14, Table 15, Table 16, Table 17, and Table 18 are used for calculation.
[0098]
[Table 19]
[0099]
[Table 20]
[0100]
[Table 21]
[0101]
[Table 22]
[0102]
[Table 23]
[0103]
[Table 24]
[0104]
[Table 25]
[0105]
[Table 26]
[0106]
[Table 27]
[0107]
[Table 28]
[0108]
[Table 29]
[0109]
[Table 30]
[0110]
In the present embodiment, as in the second embodiment, the priority is set for the conversion coefficient of each band component by shifting right by the number of bits of the priority shown in Tables 19 to 30 above. The Thereby, the priority which considered the human visual characteristic can be set.
[0111]
Image quality control processing.
Next, the configuration and processing contents of the image
[0112]
The image
[0113]
Hereinafter, a method for determining an encoding target in the encoding
[0114]
The encoding
[0115]
The encoding
[0116]
[Table 31]
[0117]
In Table 31, “Number of bit planes” indicates the number of bit planes subject to truncation of lower bits than the encoding
[0118]
An example of processing when FIG. 13 and Table 31 are applied will be described below. FIG. 14 shows “00011010111” as the
[0119]
The context determination is performed so that the seventh bit of the transform coefficient shown in FIG. 14 belongs to the SIG path or the CL path. If the 8th to 10th upper bits belong to a bit plane composed of only 0 bits, they are encoded by a method called a tag tree, and the encoding pass has already started. It is encoded by SIG pass or CL pass. When the seventh bit belongs to the encoding start pass (CL pass), the lower-order bits including the sixth bit are context-determined so as to belong to the MR pass. In general, bit planes lower than the encoding start bit plane are encoded in the order of the SIG pass, MR pass, and CL pass from the viewpoint of encoding efficiency. Therefore, since the maximum number of passes is limited to 17, a total of 17 passes from the 7th bit CL pass to the 1st bit SIG pass are to be encoded. However, since the first bit belongs to the MR path, it does not enter the encoding target. Therefore, the lower 2 bits are truncated, and the value after truncation is "000110101002= 212Ten"If this value is dequantized at midpoint," 000110101102= 214Ten"Become.
[0120]
Next, FIG. 15 shows “00000001111” as the
[0121]
Next, FIG. 16 shows “00001011111” as the
[0122]
The sixth bit of the transform coefficient belongs to the SIG path or CL path. The seventh to the tenth upper bits are encoded with a tag tree if they belong to a bit plane consisting of only 0 bits, and if the encoding pass has already started, the SIG pass or Encoded with CL path. When the sixth bit belongs to the encoding start pass (CL pass), the lower bits including the fifth bit belong to the MR pass. Also, because of the limitation that encoding is performed only up to the SIG pass of the third bit plane, 8 passes from the CL pass of the 6th bit to the SIG pass of the 4th bit are encoded, but the 3rd bit is the MR pass. Because it belongs to, it does not enter the encoding target. Therefore, the value after truncation is "000010100002= 80Ten"If this value is dequantized at midpoint," 000010110002= 88Ten"Become.
[0123]
Each bit plane is encoded in the order of the SIG pass, MR pass, and CL pass because the encoding efficiency with respect to the distortion of the SIG pass is the highest. FIG. 17 shows rate / distortion characteristics in each coding pass. Point P in the RD curve1~ P2Is the SIG path, point P2~ PThreeIs the MR path, point PThree~ PFourIndicates the CL path. Ratio of distortion ΔD to rate (code amount) in each coding passSIG/ ΔRSIG, ΔDMR/ ΔRMR, ΔDCL/ ΔRCLAs can be seen, the curve slope in the SIG path is the steepest and the coding efficiency is the highest.
[0124]
As described above, in the image quality control processing according to the present embodiment, it is determined whether or not the transform coefficient is to be encoded with respect to the transform coefficient bit-shifted according to the priority. Since only the encoding target is selected, it is possible to efficiently control the code amount so that a high-quality compressed image with little distortion can be generated.
[0125]
Code amount control processing.
Next, processing contents of the code
[0126]
The code
[0127]
18 and 19 are diagrams for explaining an example of the scanning order and the cut-off points. 18 and 19 show transform coefficients 33, 33,... Bit-shifted according to priority according to the same rules as shown in FIG.
[0128]
As shown by the arrows in FIG. 18, the
[0129]
Then, the code
[0130]
20 is a diagram illustrating a code string rearranged in units of bit planes, and FIG. 21 is a diagram illustrating a code string rearranged in units of coding passes. In FIG. 20, codes LL5, HL5,... Indicating subbands and
[0131]
21, for each coding pass, codes CL, SIG, MR indicating the type of coding pass, codes LL5, HL5,... Indicating subbands,
[0132]
As described above, according to the code amount control process according to the present embodiment, it is not necessary to use the distortion amount in each encoding pass for the rate / distortion optimization process, and the real time performance is high and the overhead is low. Can be realized.
[0133]
Layer division processing.
Next, the operation of the layer
[0134]
Hereinafter, the layer division process will be described. The
[0135]
FIG. 22 shows the transform coefficient shifted by the number of bits corresponding to the priority.45, 45FIG. Conversion coefficient of each band component LL5 to HH145, 45,... Are right bit shifted or left bit shifted by the number of priority bits. Further,
[0136]
Next, the layer
[0137]
In the layer division processing described above, the priority is set by shifting each band component by the number of bits corresponding to the priority. By dividing the bit-shifted band component into a plurality of layers in this way, it is possible to efficiently generate a plurality of layers in bit plane units or coding pass units so that distortion with respect to the rate can be reduced. is there. Therefore, it is not always necessary to perform the layer division processing using the above-described rate / distortion optimization, and it is possible to perform the layer division processing with high real-time property so that the distortion can be reduced.
[0138]
【The invention's effect】
As described above, according to the code amount control apparatus according to the first aspect of the present invention and the program according to the ninth aspect, each band component is shifted by the number of bits corresponding to the priority, and the band according to the number of bits to be shifted. Since the priority of the components is determined, it is possible to efficiently specify the encoding target in accordance with the target image quality of the compressed image and perform high-speed code amount control with a small amount of calculation.
[0139]
According to the second and tenth aspects, it is possible to perform the code amount control so as to realize a high display image quality suitable for human visual evaluation.
[0140]
According to the third and eleventh aspects, the code amount can be finely and efficiently controlled in bit plane units according to the target image quality.
[0141]
According to the fourth and twelfth aspects, the code amount can be finely and efficiently controlled for each coding pass in accordance with the target image quality.
[0142]
According to the fifth, sixth, and thirteenth and fourteenth aspects, the code amount control of the compression encoded data is efficiently performed according to the priority set for each band component without decoding the compression encoded data. It is possible. In addition, it is possible to perform code amount control with high real-time characteristics so that distortion can be suppressed without necessarily using rate / distortion optimization.
[0143]
According to the seventh and fifteenth aspects, since the band component bit-shifted according to the priority is divided into a plurality of layers, the plurality of layers can be efficiently generated so as to reduce distortion with respect to the rate. Is possible.
[0144]
According to the eighth and sixteenth aspects, it is possible to generate a compressed image having high display image quality suitable for human visual evaluation.
[Brief description of the drawings]
FIG. 1 is a functional block diagram showing a schematic configuration of a code amount control apparatus according to an embodiment of the present invention.
FIG. 2 is a functional block diagram showing a schematic configuration of a bit truncation control unit in the code amount control apparatus shown in FIG. 1;
FIG. 3 is a schematic diagram illustrating a two-dimensional image obtained by band division according to an octave division method.
FIG. 4 is a diagram for explaining priority setting processing by bit shift.
FIG. 5 is a diagram illustrating bit-shifted transform coefficients.
FIG. 6 is a schematic diagram showing a two-dimensional image obtained by band division by wavelet transform.
FIG. 7 is a schematic diagram showing a two-dimensional image obtained by band division by wavelet transform.
8 is a schematic diagram showing band component conversion coefficients that are right-bit shifted in accordance with the priorities shown in FIG.
FIG. 9 is a diagram illustrating a numerical table of energy weighting factors.
FIG. 10 is a diagram showing a numerical table of energy weighting factors.
FIG. 11 is a diagram showing a numerical table of energy weighting factors.
FIG. 12 is a functional block diagram illustrating a schematic configuration of an image quality control unit according to the present embodiment.
FIG. 13 is a schematic view illustrating conversion coefficients bit-shifted according to priority.
FIG. 14 is a diagram for explaining a processing example of a transform coefficient of band component LL5.
FIG. 15 is a diagram for explaining a processing example of a transform coefficient of band component LL5.
FIG. 16 is a diagram for explaining an example of encoding processing of transform coefficients of band component HH2.
FIG. 17 is a diagram showing a curve of rate / distortion characteristics.
FIG. 18 is a diagram for explaining an example of a scanning order.
FIG. 19 is a diagram for explaining an example of truncation points;
FIG. 20 is a diagram illustrating code strings rearranged in units of bit planes.
FIG. 21 is a diagram illustrating code strings that are rearranged in units of coding passes.
FIG. 22 is a schematic diagram illustrating encoded data divided into a plurality of layers.
FIG. 23 is a functional block diagram showing a schematic configuration of a compression encoding apparatus according to the JPEG2000 system.
FIG. 24 is a schematic diagram showing a two-dimensional image band-divided according to an octave division method.
FIG. 25 is a schematic diagram showing a two-dimensional image decomposed into a plurality of code blocks.
FIG. 26 is a schematic diagram showing a plurality of bit planes constituting a code block.
FIG. 27 is a schematic diagram showing three types of encoding passes.
[Explanation of symbols]
1 Code amount control device
2 storage devices
3 MMU
4-bit truncation control unit
5 Multiplexer
6 Priority table
7 Layer division controller
10 Image quality control unit
11 Code amount control unit
Claims (16)
前記圧縮画像データの前記各帯域成分のうち、所定の帯域成分の2次元合成フィルタ係数のノルムを基準として、かつ、再帰的に帯域分割された回数に応じて、設定された優先度につき、該優先度に対応するビット数だけ当該帯域成分をビットシフトすると共に、ビットシフトした前記帯域成分から、目標画質に合わせて符号化対象を選択する画質制御部、
を備えることを特徴とする符号量制御装置。The amount of code of compressed image data that is compressed by entropy encoding the transform coefficient by calculating the transform coefficient of multiple band components by recursively dividing the image signal into high and low frequency components by wavelet transform A code amount control device for controlling
Among the respective band components of the compressed image data, based on the norm of the two-dimensional synthesis filter coefficients in a predetermined band component, and, recursively according to the number of times which is band-divided, per set priority, the An image quality control unit that bit-shifts the band component by the number of bits corresponding to the priority, and selects an encoding target in accordance with the target image quality from the band-shifted band component,
A code amount control apparatus comprising:
前記圧縮画像データの前記各帯域成分に対して、前記低域成分に再帰的に帯域分割された回数に応じて設定された優先度に対応するビット数だけ当該帯域成分をビットシフトすると共に、ビットシフトした前記帯域成分から、目標画質に合わせて符号化対象を選択する画質制御部、
を備え、
前記画質制御部は、人間の視覚特性を考慮した重み付けをされた前記優先度を用いる機能を有する、符号量制御装置。 The amount of code of compressed image data that is compressed by entropy encoding the transform coefficient by calculating the transform coefficient of multiple band components by recursively dividing the image signal into high and low frequency components by wavelet transform A code amount control device for controlling
For each band component of the compressed image data, the band component is bit-shifted by the number of bits corresponding to the priority set according to the number of times the band is recursively divided into the low-frequency component, and the bit An image quality control unit that selects an encoding target in accordance with a target image quality from the shifted band component,
With
The code quality control device, wherein the image quality control unit has a function of using the priority weighted in consideration of human visual characteristics.
前記画質制御部は、前記符号化対象を前記符号化パス単位で決定する機能を有する、符号量制御装置。The code amount control apparatus according to any one of claims 1 to 3,
The image quality control unit is a code amount control device having a function of determining the encoding target in units of the encoding pass.
前記圧縮画像データの前記各帯域成分のうち、所定の帯域成分の2次元合成フィルタ係数のノルムを基準として、かつ、再帰的に帯域分割された回数に応じて、設定された優先度につき、該優先度に対応するビット数だけ当該帯域成分をビットシフトすると共に、ビットシフトした前記帯域成分の符号化データを所定の走査順序で並べ替えて生成した符号列から、目標符号量に適合する切り捨て点を算出し、当該切り捨て点よりも前の前記符号列を出力させるように制御する符号量制御部、
を備えることを特徴とする符号量制御装置。The amount of code of compressed image data that is compressed by entropy encoding the transform coefficient by calculating the transform coefficient of multiple band components by recursively dividing the image signal into high and low frequency components by wavelet transform A code amount control device for controlling
Among the respective band components of the compressed image data, based on the norm of the two-dimensional synthesis filter coefficients in a predetermined band component, and, recursively according to the number of times which is band-divided, per set priority, the The band component is bit-shifted by the number of bits corresponding to the priority, and a truncation point that matches the target code amount is generated from a code string generated by rearranging the bit-shifted encoded data of the band component in a predetermined scanning order. And a code amount control unit for controlling to output the code string before the truncation point,
A code amount control apparatus comprising:
前記符号量制御部は、前記符号化データを、前記優先度の高い順に且つ同一の前記優先度においては高域側から低域側に向けた前記走査順序で並べ替えて前記符号列を生成する、符号量制御装置。The code amount control device according to claim 5,
The code amount control unit rearranges the encoded data in the order of higher priority and in the same priority, in the scanning order from the high frequency side to the low frequency side to generate the code string. Code amount control device.
前記圧縮画像データの前記各帯域成分に対して、前記低域成分に再帰的に帯域分割された回数に応じて設定された優先度に対応するビット数だけ当該帯域成分をビットシフトすると共に、ビットシフトした前記帯域成分を複数のレイヤーに分割するように制御するレイヤー分割制御部、
を更に備える符号量制御装置。The code amount control device according to any one of claims 1 to 6,
For each band component of the compressed image data, the band component is bit-shifted by the number of bits corresponding to the priority set according to the number of times the band is recursively divided into the low-frequency component, and the bit A layer division control unit for controlling the shifted band component to be divided into a plurality of layers;
A code amount control device further comprising:
前記レイヤー分割制御部は、人間の視覚特性を考慮した重み付けをされた前記優先度を用いる機能を有する、符号量制御装置。The code amount control device according to claim 7,
The layer division control unit has a function of using the priority weighted in consideration of human visual characteristics.
前記圧縮画像データの前記各帯域成分のうち、所定の帯域成分の2次元合成フィルタ係数のノルムを基準として、かつ、再帰的に帯域分割された回数に応じて、設定された優先度につき、該優先度に対応するビット数だけ当該帯域成分をビットシフトすると共に、ビットシフトした前記帯域成分から、目標画質に合わせて符号化対象を選択する画質制御部として、
マイクロプロセッサを機能させることを特徴とするプログラム。The amount of code of compressed image data that is compressed by entropy encoding the transform coefficient by calculating the transform coefficient of multiple band components by recursively dividing the image signal into high and low frequency components by wavelet transform A program for controlling
Among the respective band components of the compressed image data, based on the norm of the two-dimensional synthesis filter coefficients in a predetermined band component, and, recursively according to the number which has been band-split, per set priority, the As an image quality control unit that bit-shifts the band component by the number of bits corresponding to the priority, and selects an encoding target in accordance with the target image quality from the band-shifted band component,
A program characterized by causing a microprocessor to function.
前記圧縮画像データの前記各帯域成分に対して、前記低域成分に再帰的に帯域分割された回数に応じて設定された優先度に対応するビット数だけ当該帯域成分をビットシフトすると共に、ビットシフトした前記帯域成分から、目標画質に合わせて符号化対象を選択する画質制御部として、
マイクロプロセッサを機能させ、
前記画質制御部は、人間の視覚特性を考慮した重み付けをされた前記優先度を用いるように前記マイクロプロセッサを機能させることを特徴とするプログラム。 The amount of code of compressed image data that is compressed by entropy encoding the transform coefficient by calculating the transform coefficient of multiple band components by recursively dividing the image signal into high and low frequency components by wavelet transform A program for controlling
For each band component of the compressed image data, the band component is bit-shifted by the number of bits corresponding to the priority set according to the number of times the band is recursively divided into the low-frequency component, and the bit As an image quality control unit that selects an encoding target in accordance with the target image quality from the shifted band component,
Make the microprocessor work,
The image quality control unit, a program in which said to function the microprocessor to use the priority that has been weighted in consideration of human visual characteristics.
前記圧縮画像データの前記各帯域成分のうち、所定の帯域成分の2次元合成フィルタ係数のノルムを基準として、かつ、再帰的に帯域分割された回数に応じて、設定された優先度につき、該優先度に対応するビット数だけ当該帯域成分をビットシフトすると共に、ビットシフトした前記帯域成分の符号化データを所定の走査順序で並べ替えて生成した符号列から、目標符号量に適合する切り捨て点を算出し、当該切り捨て点よりも前の前記符号列を出力させるように制御する符号量制御部として、
マイクロプロセッサを機能させることを特徴とするプログラム。The amount of code of compressed image data that is compressed by entropy encoding the transform coefficient by calculating the transform coefficient of multiple band components by recursively dividing the image signal into high and low frequency components by wavelet transform A program for controlling
Among the respective band components of the compressed image data, based on the norm of the two-dimensional synthesis filter coefficients in a predetermined band component, and, recursively according to the number of times which is band-divided, per set priority, the The band component is bit-shifted by the number of bits corresponding to the priority, and a truncation point that matches the target code amount is generated from a code string generated by rearranging the bit-shifted encoded data of the band component in a predetermined scanning order. As a code amount control unit that controls to output the code string before the truncation point,
A program characterized by causing a microprocessor to function.
前記符号量制御部は、前記符号化データを、前記優先度の高い順に且つ同一の前記優先度においては高域側から低域側に向けた前記走査順序で並べ替えて前記符号列を生成するように前記マイクロプロセッサを機能させるプログラム。14. The program according to claim 13, wherein
The code amount control unit rearranges the encoded data in the order of higher priority and in the same priority, in the scanning order from the high frequency side to the low frequency side to generate the code string. A program for causing the microprocessor to function.
前記圧縮画像データの前記各帯域成分に対して、前記低域成分に再帰的に帯域分割された回数に応じて設定された優先度に対応するビット数だけ当該帯域成分をビットシフトすると共に、ビットシフトした前記帯域成分を複数のレイヤーに分割するように制御するレイヤー分割制御部として、
前記マイクロプロセッサを機能させるプログラム。The program according to any one of claims 9 to 14,
For each band component of the compressed image data, the band component is bit-shifted by the number of bits corresponding to the priority set according to the number of times the band is recursively divided into the low-frequency component, and the bit As a layer division control unit for controlling the shifted band component to be divided into a plurality of layers,
A program for causing the microprocessor to function.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002215463A JP3989788B2 (en) | 2002-07-24 | 2002-07-24 | Code amount control apparatus and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002215463A JP3989788B2 (en) | 2002-07-24 | 2002-07-24 | Code amount control apparatus and program |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2004064115A JP2004064115A (en) | 2004-02-26 |
JP2004064115A5 JP2004064115A5 (en) | 2005-10-27 |
JP3989788B2 true JP3989788B2 (en) | 2007-10-10 |
Family
ID=31937490
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002215463A Expired - Fee Related JP3989788B2 (en) | 2002-07-24 | 2002-07-24 | Code amount control apparatus and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3989788B2 (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4045544B2 (en) | 2003-04-14 | 2008-02-13 | ソニー株式会社 | Encoding apparatus and encoding method |
JP4599080B2 (en) | 2004-04-02 | 2010-12-15 | ソニー株式会社 | Image encoding method, imaging apparatus, and computer program |
JP4789148B2 (en) * | 2005-09-06 | 2011-10-12 | 株式会社メガチップス | Compression encoding apparatus, compression encoding method and program |
US7916961B2 (en) * | 2005-09-06 | 2011-03-29 | Megachips Corporation | Compression encoder, compression encoding method and program |
JP5469127B2 (en) * | 2011-05-30 | 2014-04-09 | 富士フイルム株式会社 | Image data encoding apparatus, operation control method thereof, and program thereof |
CN114095727B (en) * | 2021-11-17 | 2023-08-04 | 安徽大学 | JPEG image coding optimization method based on evolution calculation |
-
2002
- 2002-07-24 JP JP2002215463A patent/JP3989788B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004064115A (en) | 2004-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5034018B2 (en) | Compression encoding apparatus, compression encoding method and program | |
JP4489605B2 (en) | Compression encoding apparatus, compression encoding method and program | |
US7792375B2 (en) | Rate control system | |
JP4191592B2 (en) | Compression encoding apparatus, compression encoding method and program | |
JP4789148B2 (en) | Compression encoding apparatus, compression encoding method and program | |
JP4273996B2 (en) | Image encoding apparatus and method, and image decoding apparatus and method | |
US10205951B2 (en) | Method of signalling motion information for efficient scalable video compression | |
JP4114534B2 (en) | Image coding apparatus and method | |
WO2001016764A1 (en) | System and method for transmitting a digital image over a communication network | |
JP3989788B2 (en) | Code amount control apparatus and program | |
JP4135617B2 (en) | Image coding apparatus and method | |
JP3989999B2 (en) | Data compression system | |
JP3989787B2 (en) | Compression encoding apparatus, compression encoding method and program | |
JP2004166254A (en) | Image encoder and method, program and recording medium | |
JP4532518B2 (en) | Image processing apparatus and image processing method | |
JP3989786B2 (en) | Compression encoding apparatus, compression encoding method and program | |
JP4166530B2 (en) | Image processing device | |
JP2000201353A (en) | Image encoding method, image encoder and storage medium in which image encoding program is stored | |
JP4379527B2 (en) | Encoding apparatus and method | |
JP4367113B2 (en) | Image coding apparatus and method | |
Omaki et al. | Embedded zerotree wavelet based algorithm for video compression | |
JP2002135781A (en) | Image encoding apparatus, image decoding apparatus methods for them and recording medium | |
AU2003260192B2 (en) | Method of signalling motion information for efficient scalable video compression | |
Lee et al. | DOCUMENT CODEC BASED ON SEGMENTATION AND BITPLANE CODING | |
Choraś | JPEG 2000 Image Coding Standard-A Review and Applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050719 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050719 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070306 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070424 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070622 |
|
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: 20070717 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070718 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100727 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3989788 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050719 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100727 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110727 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120727 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120727 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150727 Year of fee payment: 8 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |