JP4315431B2 - 直交変換器、逆直交変換器、直交変換方法及び逆直交変換方法 - Google Patents

直交変換器、逆直交変換器、直交変換方法及び逆直交変換方法 Download PDF

Info

Publication number
JP4315431B2
JP4315431B2 JP2003385188A JP2003385188A JP4315431B2 JP 4315431 B2 JP4315431 B2 JP 4315431B2 JP 2003385188 A JP2003385188 A JP 2003385188A JP 2003385188 A JP2003385188 A JP 2003385188A JP 4315431 B2 JP4315431 B2 JP 4315431B2
Authority
JP
Japan
Prior art keywords
dimensional
processing
orthogonal transformation
inverse orthogonal
input data
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
Application number
JP2003385188A
Other languages
English (en)
Other versions
JP2005149099A (ja
JP2005149099A5 (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2003385188A priority Critical patent/JP4315431B2/ja
Publication of JP2005149099A publication Critical patent/JP2005149099A/ja
Publication of JP2005149099A5 publication Critical patent/JP2005149099A5/ja
Application granted granted Critical
Publication of JP4315431B2 publication Critical patent/JP4315431B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Complex Calculations (AREA)
  • 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

本発明は、画像データを圧縮するために使用される直交変換器、圧縮された画像データを伸張するために使用される直交変換器に関する。
多値の画像を示すカラー画像データを符号化する方式として、例えばJPEG(Joint Photographic Experts Group)という符号化方式が標準化されている。この方式の基本的な構成を図7に示す。この例では、直交変換器として離散コサイン変換器を用いた場合を示している。
図7は、符号化器及び復号化器の構成の一例を示す図である。図7に示すように、符号化器は、離散コサイン変換器301と、量子化器302と、エントロピー符号化器303とから構成されている。
図7に示す構成において、原画像X300はn×n画素のブロックに分割された後に、離散コサイン変換器301に入力され、離散コサイン変換器301が離散コサイン変換(以下、DCT)を行なう。離散コサイン変換器301の出力Yは量子化器302で量子化される。
量子化器302の出力Zは、エントロピー符号化器303に入力されて符号化される。エントロピー符号化器303で符号化されたデータは、伝送路又は記録媒体304を介して復号器に入力される。
一方、復号器は、エントロピー復号器305と、逆量子化器306と、逆離散コサイン変換器307とから構成されている。
伝送路又は記録媒体304を介して復号器に入力された符号化データは、エントロピー復号器305で復号される。その出力Z’は逆量子化器306で逆量子化される。逆量子化器306の出力Y’は逆離散コサイン変換器307に入力され、逆離散コサイン変換器307が逆離散コサイン変換(以下、IDCT)を行なう。そして、逆離散コサイン変換器307から結果である再構成画像X’が出力される。
ここで、8×8画素のブロックを入力するDCTは、一般に以下の式(1)、式(2)によって表される。これらの式に従いxijからyklを求めるDCTは2次元離散コサイン変換(以下、2D−DCT)と呼ばれる。
Figure 0004315431
但し、
Figure 0004315431
である。
また、式(1)は1次元離散コサイン変換(以下、1D−DCT)を用いて以下の2つの式(3)、式(4)で表現することができる。
Figure 0004315431
このDCTをハードウェアで処理しなければならないJPEG(画像圧縮符号化処理)の適用例として、例えば複写機やディジタルカメラ等がある。またDCTをハードウェアで実現する場合、2D−DCTを利用すると、その回路は複雑になって回路規模も大きくなる。
一方、1D−DCTの回路は、2D−DCTの回路よりも回路構成が簡単になり、回路規模も小さくなる。また、1D−DCTには乗算回数の少ない高速なアルゴリズムが存在するため、1D−DCTを利用したDCTを行なうことが多い。このような1D−DCTを利用したDCTの例が特許文献1に記載されている。
図8は、1D−DCTを利用した離散コサイン変換器の一例を示す図である。この離散コサイン変換器は、MUX101と、カウンタ(Counter)102と、1次元離散コサイン変換器103と、記憶装置104とから構成されている。ここで、カウンタ102は、1次元離散コサイン変換器103で、行方向と列方向のどちらの処理が行なわれているかを表すラウンド(Round)と、1次元離散コサイン変換器103の処理対象が何行目又は何列目であるかを保持するカウント(Count)とから構成されている。
この離散コサイン変換器を用いて入力画素データ100をDCT係数105に変換する処理は大略以下のようになる。
まず、離散コサイン変換器にはn×n画素の入力画素データ100が入力される。そして、MUX101がカウンタ102のラウンドの値に応じて出力するデータを選択する。例えば、ラウンドが“0”の時には入力画素データ100を選択し、ラウンドが“1”の時には記憶装置104に保存している計算結果を選択する。
次に、1次元離散コサイン変換器103は、MUX101で選択されたデータに対して1D−DCTを行なう。そして、カウンタ102のラウンドが“0”の時には、その結果を記憶装置104に一時保存する。また、ラウンドが“1”の時には、DCT係数105を離散コサイン変換器の出力とする。
このように、1D−DCTを利用した離散コサイン変換器では、式(4)の計算結果を記憶装置104に保存することが必要となり、この記憶装置にはRAM(Random Access Memory)が使用されることが多い。そのため、式(4)の計算結果zilは全て同じビット数で表現されているほうが望ましい。
また、式(3)の計算と式(4)の計算には、同じ1次元離散コサイン変換器103を使用するため、式(3)の計算結果yuvと式(4)の計算結果zilは同じビット数で表現する必要がある。
つまり、式(3)の計算結果と式(4)の計算結果とを全て同じビット数で表現すると都合がよい。これらの計算結果を表現するためのビット数は、ハードウェアリソース等の制限の範囲内で自由に決定することができる。
但し、計算結果の整数部に割り当てるビット数は、DCT係数の中で最もダイナミックレンジの大きな係数に合わせる必要がある。そして、小数部に残りのビットを割り当てることで、DCTの演算中のデータを表現している。
一方、IDCTについてもDCTと同様であり、IDCTは1次元逆離散コサイン変換(以下、1D−IDCT)を利用し、1D−IDCTの計算結果は全て同じビット数で表現すると都合が良い。尚、これらの計算結果を表現するためのビット数は、ハードウェアリソース等の制限の範囲内で自由に決定することができる。
但し、計算結果の整数部に割り当てるビット数は、DCT係数の中で最もダイナミックレンジの大きな係数に合わせる必要がある。そして、小数部に残りのビットを割り当てることで、IDCTの演算中のデータを表現している。
また、JPEGを適用したディジタルカメラでは、ユーザが画質をある程度選択できるようになっており、ユーザが選択した画質に適する量子化値が量子化器302に設定される。そして、画像データを超高画質で圧縮したい場合には、量子化器302に量子化値として全て“1”が設定されることが考えられる。
このような場合に、離散コサイン変換器301と逆離散コサイン変換器307とで演算精度が異なると問題となる。つまり、離散コサイン変換器301と逆離散コサイン変換器307での誤差は、その演算中に扱う必要がある無理数を有限ビット数で表現するために発生する。
従来、1D−DCTを利用してDCTを行なう場合、DCT係数の整数部に割り当てるビット数は、最もダイナミックレンジの大きな係数に合わせる必要があった。そのため、ダイナミックレンジの小さな係数では整数部の上位数ビットが“0”となり、その係数の精度は十分ではないことがある。従って、この係数が原因となりDCTの演算精度が低くなるという問題があった。
また同様に、1D−IDCTを利用してIDCTを行なう場合も、ダイナミックレンジの小さな係数の精度が原因となりIDCTの演算精度が低くなるという問題があった。
上述のDCTとIDCTの演算誤差を小さくするためには、その演算中のデータが十分な精度の小数部をもっている必要があるが、演算中のデータをIEEE等で標準化されている浮動小数点形式で表現するとなると、回路規模が増大することになり、あまり現実的ではない。
特開2001-78190号公報
上述したように、1次元直交変換を利用して直交変換を行なう場合、整数部に割り当てるビット数は、最もダイナミックレンジの大きな係数に合わせる必要がある。そのため、ダイナミックレンジの小さな係数では整数部の上位数ビットが“0”となり、その係数の精度は十分ではないことがある。従って、この係数が原因となり直交変換の演算精度が低くなるという問題がある。
また同様に、1次元逆直交変換を利用して逆直交変換を行なう場合にも、ダイナミックレンジの小さな係数の精度が原因となり逆直交変換の演算精度が低くなるという問題がある。
本発明は、上記問題点を解決するためになされたもので、回路規模を大幅に増大させることなく、従来よりも演算精度の高い直交変換器及び逆直交変換器を提供することを目的とする。
本発明は、1次元直交変換を用いてn×n要素の2次元入力データを直交変換する直交変換器であって、n×n要素の2次元入力データに対して1次元直交変換処理を行なう際に、該処理対象を表す情報を保持する保持手段と、前記保持手段に保持された情報に基づき、ダイナミックレンジの小さな直交変換係数の小数部により多くのビットを割り当てる様に、適応的に演算を変えて1次元直交変換処理を行なう1次元直交変換手段と、を有し、前記処理対象を表す情報は、前記n×n要素の2次元入力データに対して行方向及び列方向のどちらの方向に前記1次元直交変換処理を行なっているかを表すラウンドの値と、前記1次元直交変換処理が前記n×n要素の2次元入力データの何行目又は何列目を処理しているかを表すカウントの値であり、前記1次元直交変換手段は、前記ラウンドの値及び前記カウントの値に応じて前記1次元直交変換処理におけるシフト演算のシフト数を適応的に変えることを特徴とする。
また、本発明は、1次元逆直交変換を用いてn×n要素の2次元入力データを逆直交変換する逆直交変換器であって、n×n要素の2次元入力データに対して1次元逆直交変換処理を行なう際に、該処理対象を表す情報を保持する保持手段と、前記保持手段に保持された情報に基づき、ダイナミックレンジの小さな直交変換係数の小数部により多くのビットを割り当てる様に、適応的に演算を変えて1次元逆直交変換処理を行なう1次元逆直交変換手段と、を有し、前記処理対象を表す情報は、前記n×n要素の2次元入力データに対して行方向及び列方向のどちらの方向に前記1次元逆直交変換処理を行なっているかを表すラウンドの値と、前記1次元逆直交変換処理が前記n×n要素の2次元入力データの何行目又は何列目を処理しているかを表すカウントの値であり、前記1次元逆直交変換手段は、前記ラウンドの値及びカウントの値に応じて前記1次元逆直交変換処理におけるシフト演算のシフト数を適応的に変えることを特徴とする。
本発明によれば、2次元入力データに対する離散コサイン変換又は逆離散コサイン変換のそれぞれの演算において、最適な演算ビット精度を得ることができる。
以下、図面を参照しながら発明を実施するための最良の形態について詳細に説明する。
実施例1における直交変換器として離散コサイン変換器を例に挙げ、図1、図2、図3を用いて離散コサイン変換器の構成及び処理について説明する。
図1は、実施例1による離散コサイン変換器の一例を示す図である。図2は、実施例1による離散コサイン変換器の処理手順を示すフローチャートである。また、図3は実施例1による離散コサイン変換器の構成要素である1次元離散コサイン変換器のデータフローの一例を示す図である。尚、従来手法の説明で用いた図8と同じ構成要素については同じ符号を付けている。
図1に示すように、離散コサイン変換器は、MUX101と、カウンタ102と、1次元離散コサイン変換器103と、記憶装置104とで構成されている。ここで、カウンタ102は、1次元離散コサイン変換器103で、行方向と列方向のどちらの処理が行なわれているかを表すラウンドと、1次元離散コサイン変換器103の処理対象が何行目又は何列目であるかを保持するカウントとから構成されている。
上述の離散コサイン変換器を用いて、入力画素データ100にDCTを適用してDCT係数105に変換する処理手順を図2に沿って説明する。
まず、離散コサイン変換器にn×n画素の入力画素データ100が入力される。すると、ステップS100で、カウンタ102のラウンドの値を“0”に初期化し、ステップS101で、カウンタ102のカウントの値を“0”に初期化する。
次に、MUX101がカウンタ102のラウンドの値に応じて、出力するデータを選択する。ここで、ラウンドの値が“0”の時には入力画素データ100を選択し、ラウンドの値が“1”の時には記憶装置104に一時保存しているデータを選択する。
次に、ステップS102で、1次元離散コサイン変換器103は、カウンタ102からラウンドの値とカウントの値を入力する。詳しい説明は後述するが、これらの値によって適応的に演算を変えるものである。そして、1次元離散コサイン変換器103は、MUX101で選択されたデータに対して1D−DCTを行なう。次に、カウンタ102のラウンドの値が“0”の時にはその結果を記憶装置104に保存し、ラウンドの値が“1”の時にはDCT係数105を出力する。
上述したステップS102での1次元離散コサイン変換器103の処理が終了すると、ステップS103へ進み、カウンタ102のカウントの値をインクリメントする。そして、ステップS104において、カウンタ102のカウントの値が画素数nと等しいか否かを判定する。ここで、カウントの値がnと等しくない、即ち全ての画素を処理していない場合にはステップS102に戻り、上述した処理を繰り返す。
また、上述のステップS104で、カウントの値がnと等しい、即ち全ての画素を処理した場合にはステップS105へ進み、カウンタ102のラウンドの値をインクリメントする。そして、ステップS106において、ラウンドの値が“2”と等しいか否かを判定する。ここで、ラウンドの値が“2”と等しくない、即ちDCT係数105を出力していない場合にはステップS101に戻り、上述した処理を繰り返す。また、ラウンドの値が“2”と等しい、即ちDCT係数105を出力した場合には、この離散コサイン変換器の処理を終了する。
次に、1次元離散コサイン変換器103の処理の一例を図3に示すデータフローを用いて説明する。
1次元離散コサイン変換器103は、1ラウンド目(ラウンドの値が“0”の時)にはn×n画素の入力画素データ100を1行づつ処理し、また2ラウンド目(ラウンドの値が“1”の時)には記憶装置104に保存されたn×nデータを1列づつ処理する。尚、以下の説明では、n=8であるとし、n×n画素の入力画素データ100の各画素はそれぞれ8ビットの整数値で表現されているものと仮定する。
図3中で、xi (i=0,1,…,7)が入力であり、yi (i=0,1,…,7)が出力である。ここで、yi はそれぞれ15ビットで表現するものと仮定する。また、αi (i=0,1,…,5)は小数値であり、実施例1では1ビットの整数部と12ビットの小数部とで構成されるものとする。
1ラウンド目の入力xi をデータフローに従って処理すると、加算によって整数部を表現するために必要なビット数は1ビット増える。また、αi によって小数部に必要なビット数が決まる。そのため、出力yi を表現するために必要なビット数は表1の(a)欄のようになる。
Figure 0004315431
表1中では、yi の整数部のビット数をI(yi )、小数部のビット数をF(yi)で表している。しかし、yi はそれぞれ15ビットで表現するものと仮定しているので、yi に割り当てることのできるビット数は表1の(b)欄のようになる。
そのため、出力の最終段でシフト演算と丸めを行ない、yi の総ビット数が15ビットとなるように処理する。例えば、i=0のときには左に4ビットシフトを行なう。また、i=1のときには右に8ビットシフトして丸めを行ない、更に右に1ビットシフトしてyi の総ビット数が15ビットになるように処理する。
このようなシフト演算のシフト数は処理対象となっている行によって必要なシフト数が異なる。また、2ラウンド目でのシフト演算のシフト数とも異なるため、カウンタ102から入力されるラウンドの値とカウントの値とに応じて適応的にシフト数を変えなければならない。
1ラウンド目の出力yi の表現形式は各行とも表1のようになるため、記憶装置104に保存するn×n要素のデータの表現形式は以下の表2のようになる。但し、表2では、I(yi )・F(yi)の形式で表している。
Figure 0004315431
次に、2ラウンド目には記憶装置104に保存されたn×n要素のデータが処理の対象となり、このラウンドではn×n要素のデータを1列づつ処理する。入力xi をデータフローに従って処理すると、出力yi を表現するために必要なビット数が決まる。ここで、出力yi は15ビットで表現すると仮定しているため、1ラウンド目と同様に、シフト演算と丸めによってyi の総ビット数が15ビットとなるようにする。
このようなシフト演算のシフト数は処理対象となっている列によって必要なシフト数が異なる。また、1ラウンド目でのシフト演算のシフト数とも異なるため、カウンタ102から入力されるラウンドの値とカウントの値とに応じて適応的にシフト数を変えなければならない。
上述したようにして、2ラウンド目の処理が終了し、求まったDCT係数105の表現形式は表3のようになる。
Figure 0004315431
従来手法の直交変換器(離散コサイン変換器)であれば、直交変換係数(DCT係数)の整数部に割り当てられるビット数はどの係数についても同じであり、これは最もダイナミックレンジの大きな係数を表現するために必要なビット数であった。つまり、記憶装置104に保持されるデータの表現形式は全て整数部12ビット、小数部3ビットであり、直交変換係数(DCT係数105)の表現形式は全て整数部15ビット、小数部0ビットであった。そのため、ダイナミックレンジの小さな係数の小数部に割り当てるビット数が少なくなり、直交変換(DCT)の演算精度が低くなっていた。
これに対して、実施例1による直交変換器(離散コサイン変換器)では、上述のように直交変換係数(DCT係数)の整数部はどの係数についても最小限のビット数で表すことができるため、ダイナミックレンジの小さな係数には、より多くのビットを小数部に割り当てることができ、直交変換(DCT)の演算精度を高くすることができる。
実施例2における逆直交変換器として逆離散コサイン変換器を例に挙げ、図4、図5、図6を用いて逆離散コサイン変換器の構成及び処理について説明する。
図4は、実施例2による逆離散コサイン変換器の一例を示す図である。図5は、実施例2による逆離散コサイン変換器の処理手順を示すフローチャートである。また、図6は実施例2による逆離散コサイン変換器の構成要素である1次元逆離散コサイン変換器のデータフローの一例を示す図である。尚、実施例1の説明で用いた図1〜図3と同じ構成要素については同じ符号を付けている。
図4に示すように、逆離散コサイン変換器は、MUX101と、カウンタ102と、1次元逆離散コサイン変換器203と、記憶装置104とで構成されている。ここで、カウンタ102は、1次元逆離散コサイン変換器203で、行方向と列方向のどちらの処理が行なわれているかを表すラウンドと、1次元逆離散コサイン変換器203の処理対象が何行目又は何列目であるかを保持するカウントとから構成されている。
上述の逆離散コサイン変換器を用いて、DCT係数200にIDCTを適用して再構成画素データ205に変換する処理手順を図5に沿って説明する。
まず、逆離散コサイン変換器にn×n要素のDCT係数200が入力される。すると、ステップS200で、カウンタ102のラウンドの値を“0”に初期化し、ステップS201でカウンタ102のカウントの値を“0”に初期化する。
次に、MUX101がカウンタ102のラウンドの値に応じて、出力するデータを選択する。ここで、ラウンドの値が“0”の時にはDCT係数200を選択し、ラウンドの値が“1”の時には記憶装置104に一時保存しているデータを選択する。
次に、ステップS202で、1次元逆離散コサイン変換器203は、カウンタ102からラウンドの値とカウントの値を入力する。詳しい説明は後述するが、これらの値によって適応的に演算を変えるものである。そして、1次元逆離散コサイン変換器203は、MUX101で選択されたデータに対して1D−IDCTを行なう。次に、カウンタ102のラウンドの値が“0”の時にはその結果を記憶装置104に保存し、ラウンドの値が“1”の時には再構成画素データ205を出力する。
上述したステップS202での1次元逆離散コサイン変換器203の処理が終了すると、ステップS203へ進み、カウンタ102のカウントの値をインクリメントする。そして、ステップS204において、カウンタ102のカウントの値が要素数nと等しいか否かを判定する。ここで、カウントの値がnと等しくない、即ち全ての要素を処理していない場合にはステップS202に戻り、上述した処理を繰り返す。
また、上述のステップS204で、カウントの値がnと等しい、即ち全ての要素を処理した場合にはステップS205へ進み、カウンタ102のラウンドの値をインクリメントする。そして、ステップS206において、ラウンドの値が“2”と等しいか否かを判定する。ここで、ラウンドの値が“2”と等しくない、即ち再構成画素データ205を出力していない場合にはステップS201に戻り、上述した処理を繰り返す。また、ラウンドの値が“2”と等しい、即ち再構成画素データ205を出力した場合には、この逆離散コサイン変換器の処理を終了する。
次に、1次元逆離散コサイン変換器203の処理の一例を図6に示すデータフローを用いて説明する。
1次元逆離散コサイン変換器203は、1ラウンド目(ラウンドの値が“0”の時)にはn×n要素のDCT係数200を1行づつ処理し、また2ラウンド目(ラウンドの値が“1”の時)には記憶装置104に保存されたn×n要素のデータを1列づつ処理する。尚、以下の説明ではn=8であるとし、n×n要素のDCT係数200は、それぞれ15ビットで表現されているものと仮定し、表現形式は表3のようになっているものとする。また、出力xi は再構成画素データであるため、8ビットで表現するものとする。また、βi (i=0,1,…,5)は小数値であり、実施例2では2ビットの整数部と12ビットの小数部とで構成されるものとする。
1ラウンド目の入力yi をデータフローに従って処理すると、加算によって整数部を表現するために必要なビット数が増える。また、βi によって小数部を表現するために必要なビット数が増える。しかし、1D−IDCTは1D−DCTの逆変換であるため、出力xi の整数部に必要となるビット数は実際には表2で示した表現形式で十分である。そこで、出力の最終段でシフト演算と丸めを行ない、出力xi を表2の表現形式に合わせて記憶装置104に保存する。このとき、実施例1と同様に、シフト演算のシフト数は1ラウンド目と2ラウンド目では異なる。また、処理対象となっている行によっても必要なシフト数が異なるため、カウンタ102から入力されるラウンドの値とカウントの値とに応じて適応的にシフト数を変えなければならない。
次に、2ラウンド目には記憶装置104に保存されたn×n要素のデータが処理の対象となり、このラウンドではn×n要素のデータを1列づつ処理する。やはり、加算と乗算により整数部のビット数と小数部のビット数は増加するが、出力xi は再構成画素データであるため、出力の最終段で、カウンタ102から入力されるラウンドの値とカウントの値とに応じたシフト演算と丸めを行ない、8ビットの整数とする。
従来手法の逆直交変換器(逆離散コサイン変換器)であれば、直交変換係数(DCT係数)の整数部に割り当てられるビット数はどの係数についても同じであり、これは最もダイナミックレンジの大きな係数を表現するために必要なビット数であった。つまり、直交変換係数(DCT係数205)の表現形式は全て整数部15ビット、小数部0ビットであり、記憶装置104に保持されるデータの表現形式は全て整数部12ビット、小数部3ビットであった。そのため、ダイナミックレンジの小さな係数の小数部に割り当てるビット数が少なくなり、逆直交変換(IDCT)の演算精度が低くなっていた。
これに対して、実施例2による逆直交変換器(逆離散コサイン変換器)では、上述のように直交変換係数(DCT係数205)の整数部はどの係数についても最小限のビット数で表しているため、ダイナミックレンジの小さな係数には、より多くのビットを小数部に割り当てることができ、逆直交変換(IDCT)の演算精度を高くすることができる。
尚、本発明は複数の機器(例えば、ホストコンピュータ,インターフェース機器,リーダ,プリンタなど)から構成されるシステムに適用しても、1つの機器からなる装置(例えば、複写機,ファクシミリ装置など)に適用しても良い。
また、本発明の目的は前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPU若しくはMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
この場合、記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
このプログラムコードを供給するための記録媒体としては、例えばフロッピー(登録商標)ディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
更に、記録媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
実施例1による離散コサイン変換器の一例を示す図である。 実施例1による離散コサイン変換器の処理手順を示すフローチャートである。 実施例1による離散コサイン変換器の構成要素である1次元離散コサイン変換器のデータフローの一例を示す図である。 実施例2による逆離散コサイン変換器の一例を示す図である。 実施例2による逆離散コサイン変換器の処理手順を示すフローチャートである。 実施例2による逆離散コサイン変換器の構成要素である1次元逆離散コサイン変換器のデータフローの一例を示す図である。 符号化器及び復号化器の構成の一例を示す図である。 1D−DCTを利用した離散コサイン変換器の一例を示す図である。
符号の説明
100 入力画素データ
101 MUX(選択器)
102 カウンタ(Counter)
103 1次元離散コサイン変換器
104 記憶装置
105 DCT係数
200 DCT係数
203 1次元逆離散コサイン変換器
205 再構成画素データ
300 原画像X
301 離散コサイン変換器
302 量子化器
303 エントロピー符号化器
304 伝送路又は記録媒体
305 エントロピー復号器
306 逆量子化器
307 逆離散コサイン変換器
308 再構成画像X’

Claims (6)

  1. 1次元直交変換を用いてn×n要素の2次元入力データを直交変換する直交変換器であって、
    n×n要素の2次元入力データに対して1次元直交変換処理を行なう際に、該処理対象を表す情報を保持する保持手段と、
    前記保持手段に保持された情報に基づき、ダイナミックレンジの小さな直交変換係数の小数部により多くのビットを割り当てる様に、適応的に演算を変えて1次元直交変換処理を行なう1次元直交変換手段と、
    を有し、
    前記処理対象を表す情報は、前記n×n要素の2次元入力データに対して行方向及び列方向のどちらの方向に前記1次元直交変換処理を行なっているかを表すラウンドの値と、前記1次元直交変換処理が前記n×n要素の2次元入力データの何行目又は何列目を処理しているかを表すカウントの値であり、
    前記1次元直交変換手段は、前記ラウンドの値及び前記カウントの値に応じて前記1次元直交変換処理におけるシフト演算のシフト数を適応的に変えることを特徴とする直交変換器。
  2. 前記1次元直交変換手段は、前記ラウンドの値及び前記カウントの値に応じたシフト演算と丸め演算を行なうことを特徴とする請求項1に記載の直交変換器。
  3. 1次元逆直交変換を用いてn×n要素の2次元入力データを逆直交変換する逆直交変換器であって、
    n×n要素の2次元入力データに対して1次元逆直交変換処理を行なう際に、該処理対象を表す情報を保持する保持手段と、
    前記保持手段に保持された情報に基づき、ダイナミックレンジの小さな直交変換係数の小数部により多くのビットを割り当てる様に、適応的に演算を変えて1次元逆直交変換処理を行なう1次元逆直交変換手段と、
    を有し、
    前記処理対象を表す情報は、前記n×n要素の2次元入力データに対して行方向及び列方向のどちらの方向に前記1次元逆直交変換処理を行なっているかを表すラウンドの値と、前記1次元逆直交変換処理が前記n×n要素の2次元入力データの何行目又は何列目を処理しているかを表すカウントの値であり、
    前記1次元逆直交変換手段は、前記ラウンドの値及びカウントの値に応じて前記1次元逆直交変換処理におけるシフト演算のシフト数を適応的に変えることを特徴とする逆直交変換器。
  4. 前記1次元逆直交変換手段は、前記ラウンドの値及び前記カウントの値に応じたシフト演算と丸め演算を行なうことを特徴とする請求項3に記載の逆直交変換器。
  5. 1次元直交変換を用いてn×n要素の2次元入力データを直交変換する直交変換器にて実行される直交変換方法であって、
    保持手段が、n×n要素の2次元入力データに対して1次元直交変換処理を行なう際に、該処理対象を表す情報を保持する工程と、
    1次元直交変換手段が、前記保持する工程で保持した情報に基づき、ダイナミックレンジの小さな直交変換係数の小数部により多くのビットを割り当てる様に、適応的に演算を変えて1次元直交変換処理を行なう工程と、
    を有し、
    前記処理対象を表す情報は、前記n×n要素の2次元入力データに対して行方向及び列方向のどちらの方向に前記1次元直交変換処理を行なっているかを表すラウンドの値と、前記1次元直交変換処理が前記n×n要素の2次元入力データの何行目又は何列目を処理しているかを表すカウントの値であり、
    前記1次元直交変換を行なう工程では、前記ラウンドの値及びカウントの値に応じて前記1次元直交変換処理におけるシフト演算のシフト数を適応的に変えることを特徴とする直交変換方法。
  6. 1次元逆直交変換を用いてn×n要素の2次元入力データを逆直交変換する逆直交変換器にて実行される逆直交変換方法であって、
    保持手段が、n×n要素の2次元入力データに対して1次元逆直交変換処理を行なう際に、該処理対象を表す情報を保持する工程と、
    1次元逆直交変換手段が、前記保持する工程で保持した情報に基づき、ダイナミックレンジの小さな直交変換係数の小数部により多くのビットを割り当てる様に、適応的に演算を変えて1次元逆直交変換処理を行なう工程と、
    を有し、
    前記処理対象を表す情報は、前記n×n要素の2次元入力データに対して行方向及び列方向のどちらの方向に前記1次元逆直交変換処理を行なっているかを表すラウンドの値と、前記1次元逆直交変換処理が前記n×n要素の2次元入力データの何行目又は何列目を処理しているかを表すカウントの値であり、
    前記1次元逆直交変換を行なう工程では、前記ラウンドの値及びカウントの値に応じて前記1次元逆直交変換処理におけるシフト演算のシフト数を適応的に変えることを特徴とする逆直交変換方法。
JP2003385188A 2003-11-14 2003-11-14 直交変換器、逆直交変換器、直交変換方法及び逆直交変換方法 Expired - Fee Related JP4315431B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003385188A JP4315431B2 (ja) 2003-11-14 2003-11-14 直交変換器、逆直交変換器、直交変換方法及び逆直交変換方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003385188A JP4315431B2 (ja) 2003-11-14 2003-11-14 直交変換器、逆直交変換器、直交変換方法及び逆直交変換方法

Publications (3)

Publication Number Publication Date
JP2005149099A JP2005149099A (ja) 2005-06-09
JP2005149099A5 JP2005149099A5 (ja) 2006-11-30
JP4315431B2 true JP4315431B2 (ja) 2009-08-19

Family

ID=34693345

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003385188A Expired - Fee Related JP4315431B2 (ja) 2003-11-14 2003-11-14 直交変換器、逆直交変換器、直交変換方法及び逆直交変換方法

Country Status (1)

Country Link
JP (1) JP4315431B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4772607B2 (ja) * 2006-07-10 2011-09-14 パナソニック株式会社 2次元直交変換装置、2次元直交変換方法および撮像システム
AU2007292481B2 (en) * 2006-09-05 2013-08-29 Cook Medical Technologies Llc Apparatus suitable for performing mucosal resection

Also Published As

Publication number Publication date
JP2005149099A (ja) 2005-06-09

Similar Documents

Publication Publication Date Title
CN102007489B (zh) 逆向离散余弦变换的计算期间的误差减少
KR100360013B1 (ko) 현상 표시 변환 데이터의 디지털 처리 방법 및 시스템
US7474805B2 (en) Efficient scaling in transform domain
US8600183B2 (en) Optimized method and system for entropy coding
JP2000032461A (ja) 画像符号化方法、画像復号方法及び装置及びコンピュ―タプログラム製品
CN103947206A (zh) 基于区域的图像压缩
US7284026B2 (en) Hadamard transformation method and device
US7379500B2 (en) Low-complexity 2-power transform for image/video compression
KR20040005962A (ko) 버터플라이 프로세서를 이용하여 이산 코사인 변환을인코딩하고 계산하는 장치 및 방법
US5838825A (en) Apparatus for decompressing image data which has been compressed using a linear transform
US7444030B2 (en) Image encoding with dynamic buffer-capacity-level-based compression adjustment
KR100545445B1 (ko) 스케일링 항, 초기 중지 및 정밀도 세분을 이용한 고속 이산 변환 방법
JP4315431B2 (ja) 直交変換器、逆直交変換器、直交変換方法及び逆直交変換方法
US20030091240A1 (en) Method and apparatus for progressive JPEG image decoding
US6766341B1 (en) Faster transforms using scaled terms
US20050084169A1 (en) Image processing apparatus that can generate coded data applicable to progressive reproduction
US7421139B2 (en) Reducing errors in performance sensitive transformations
JP2004518199A (ja) コーディング
JP2006033161A (ja) 符号化処理装置
US7430332B2 (en) Approximations used in performance sensitive transformations which contain sub-transforms
JP4241517B2 (ja) 画像符号化装置及び画像復号装置
US7733249B2 (en) Method and system of compressing and decompressing data
JP2845098B2 (ja) 多値画像圧縮符号の復号方法および装置
US20020027558A1 (en) Data transfer apparatus and method
JP2006065678A (ja) データ変換装置およびその方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061018

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061018

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080327

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080919

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090130

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090206

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: 20090515

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090518

R150 Certificate of patent or registration of utility model

Ref document number: 4315431

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120529

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120529

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130529

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140529

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees