JP3840807B2 - Hierarchical data generation apparatus and method, data restoration apparatus and method, hierarchical data generation and restoration system and method - Google Patents

Hierarchical data generation apparatus and method, data restoration apparatus and method, hierarchical data generation and restoration system and method Download PDF

Info

Publication number
JP3840807B2
JP3840807B2 JP18442698A JP18442698A JP3840807B2 JP 3840807 B2 JP3840807 B2 JP 3840807B2 JP 18442698 A JP18442698 A JP 18442698A JP 18442698 A JP18442698 A JP 18442698A JP 3840807 B2 JP3840807 B2 JP 3840807B2
Authority
JP
Japan
Prior art keywords
layer
data
signal value
value
hierarchical
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
JP18442698A
Other languages
Japanese (ja)
Other versions
JP2000022548A (en
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP18442698A priority Critical patent/JP3840807B2/en
Publication of JP2000022548A publication Critical patent/JP2000022548A/en
Application granted granted Critical
Publication of JP3840807B2 publication Critical patent/JP3840807B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
この発明は、階層データの生成装置および方法、データ復元装置および方法、階層データの生成復元システムおよび方法ディジタル情報信号から階層構造データを生成する符号化装置および方法、階層構造データからディジタル情報信号を復号する復号装置および方法、並びに符号化および復号を行うデータ処理装置に関する。
【0002】
【従来の技術】
解像度の異なる複数の階層の画像信号を生成するための階層符号化が知られている。すなわち、高解像度画像信号を第1の階層としてこれより解像度が低い第2の階層の画像信号、第2の階層の画像信号より階層が低い第3の画像信号、・・・・を形成する符号化(階層符号化と称される)が提案されている。この符号化によれば、複数の画像信号を一つの伝送路(通信路、記録媒体)を介して伝送し、受信側では、複数の階層とそれぞれ対応する画像モニタによって、画像データを再生することができる。
【0003】
より具体的には、標準解像度ビデオ信号、高解像度ビデオ信号、コンピュータディスプレイの画像データ、画像データベースを高速検索するための低解像度ビデオ信号等が異なる解像度のビデオ信号である。また、解像度の高低以外に、画像の拡大、縮小(所謂電子ズーム)に対しても階層符号化を適用することができる。画像の拡大、縮小は、例えばビデオゲームのアプリケーションにおいてしばしば使用される機能である。
【0004】
従来の階層符号化では、第1階層(入力)画像信号と画素数が第1階層の画像信号に対して1/4の第2階層の画像信号を形成する場合、第1階層の画像信号を1/4に間引き、第2階層の画像信号を形成すると共に、第2階層の画像信号から補間された第1階層の補間信号と入力画像信号との差分値を計算し、この差分値を伝送している。このように、従来の階層符号化では、差分値の画素数は、入力画像信号の画素数と等しく、さらに、第2階層の信号を伝送するので、伝送データ量が元のデータ量より増大するのが普通であった。5階層の例では、画素数に関して、256+64+16+4+1=341となり、各画素当たりのビット数を同一とすると、341/256≒1.33倍にデータ量が増加する。
【0005】
一方、本願出願人は、データ量の増大を抑制することができる階層符号化を既に提案している。この階層符号化について、3階層を例にして図1を参照して説明する。すなわち、階層構造データは、入力画像データで構成される第1階層データDL1と、これより解像度が低い第2階層データDL2と、第2階層より解像度が低い第3階層データDL3から構成されるものである。
【0006】
図1において最も下に、入力画像データによって構成される第1階層データDL1の部分的画像(4×4画素)が示されている。この部分的画像を画素ブロックと称する。図1において、一つの正方形が一つの画素を表している。この第1階層の(2×2画素)の4個の画素毎に合計値または平均値が計算される。例えばX1,X2,X3,X4の合計値Y1(=X1+X2+X3+X4)または平均値Y1(=1/4・(X1+X2+X3+X4))が計算される。従って、(4×4画素)と対応する部分が(2×2画素)になる。このように計算された合計値または平均値によって第2階層データDL2が構成される。第2階層では、(2×2画素)が画素ブロックである。
【0007】
次に第2階層の空間的に隣接する(2×2)の4個の画素の合計値または平均値を計算する。例えば、合計値Z1(=Y1+Y2+Y3+Y4)または平均値Z1(=1/4・(Y1+Y2+Y3+Y4)が計算される。このように計算された合計値または平均値によって、第3階層データDL3が構成される。第3階層データDL3は、入力画像の画素ブロックに対応する1画素の集合である。図1から分かるように、階層が変化するに従って、画素数が1/4、1/16、・・・と減少する。言い換えると、画像の面積が一定とすると、解像度が同様の割合で低下する。画素間の距離が一定であれば、画像の大きさが同様の割合で縮小する。このように、符号化処理は、第1階層から順により上位の階層に向かってなされる。
【0008】
上述の平均値により上位の階層の画像を形成する階層符号化は、複数の階層の画像データを伝送する場合に、伝送画素数が増大しない利点がある。図1の例では、括弧を付した画素を伝送する代わりに上位階層のデータを伝送すれば良い。例えば第1階層の画素データX4の代わりに第2階層のデータY4を伝送すれば良い。また、第2階層の画素データY4の代わりに第3階層のデータZ1を伝送すれば良い。すなわち、第1階層の画素ブロック毎の1画素(図1では、合計4画素)の伝送を省略し、その省略された画素の代わりにY1,Y2,Y3,Z1を伝送する。
【0009】
復号処理について説明すると、第3階層データDL3は、受信データから得ることができる。第2階層のデータ中で伝送が省略された画素データ例えばY4は、合計値を用いる場合では、Y4=Z1−(Y1+Y2+Y3)で求めることができる。また、平均値を用いる場合では、Y4=4Z1−(Y1+Y2+Y3)として求められる。さらに、第1階層のデータ中で伝送が省略された画素データ例えばX4は、X4=Y1−(X1+X2+X3)またはX4=4Y1−(X1+X2+X3)として求められる。このように、復号時には、第3階層から順により下位の階層に向かってなされる。なお、伝送を省略する画素の位置は、右下コーナーの位置に限定されるものではない。
【0010】
上述した階層符号化において、画素値が8ビットのデータである場合、平均演算または加算によって生成される値が10ビットとなる。データ量が増加することを防止する目的で、合計値の下位側の2ビットまたは小数点以下に相当する桁を四捨五入あるいは切り捨てによって、上位8ビットに丸める処理を行っている。より下位の階層の伝送を省略した画素を復元する時に、符号化時の丸めによる誤差は、復元された画素値の下位2ビットに重畳される。図1の例では、第2階層の画素データY4を復元する時に、Y4の下位2ビットに誤差が重畳される。さらに、第1階層の画素データX4を復元する時には、復元されたY4の下位2ビットに重畳された誤差が上位側へ2ビットシフトされる。このように、復号時には、下位階層になるほど、誤差が重畳される2ビットが上位側にシフトする。5階層の場合では、最下位の第1階層において、復元された画素データのMSB(Most Significant Bit)および2番目の上位ビットに誤差が重畳される。
【0011】
下位の階層になるほど、誤差の影響がこのように上位側にシフトすることは、下位の階層になるほど、復号誤差が増大する問題を生じる。この問題を解決する一つの方法は、1画素当たりのビット長を上位階層ほど長くする方法である。図1の例では、第1階層データDL1は、8ビット/1画素とされ、第2階層データDL2は、10ビット/1画素とされ、第3階層データDL3は、12ビット/1画素とされる。上位画素に関する値は、下位階層4画素の合計値(10ビット)である(または上位から8ビット目と9ビット目との間に小数点が位置する平均値であるとみなせる)。但し、復号画像を表示する時には、上位8ビットに丸めた値を用いる。この方法は、全データ量(全ビット量)が元の画像データの1.08倍に増大する。この増加の程度は、各階層のデータを全て伝送する時の増加率1.33より少なくできる。
【0012】
【発明が解決しようとする課題】
上述したように、上位階層ほどビット長を拡張する方法は、発生データの増加率を抑えることができるが、実際のデータ処理においては、必ずしも扱い易いとは言えない。例えばビット長の長い上位階層ほど演算等のデータ処理に要する時間が長くなり、高速処理を阻害する。第5階層は、第1階層のビット長(8ビット)の2倍のビット長(16ビット)となる。他の問題としては、階層構造のデータを半導体記憶装置、磁気ディスクなど各種の記憶装置に記憶する場合には、階層毎にビット長が異なるために、データ構造の複雑な再構成処理を必要としたり、記憶装置側における特別な対応が必要とされる問題が生じる。
【0013】
従って、この発明の目的は、データ量の増加率が小さく、復号時の誤差が小さく、実際のデータ処理が扱い易い階層データの生成装置および方法、データ復元装置および方法、階層データの生成復元システムおよび方法を提供することにある。
【0014】
【課題を解決するための手段】
請求項1の発明は、上述した課題を解決するために、入力データから第1の階層データと第1の階層データより上位の第2の階層データとの少なくとも2階層からなる階層構造データを生成する階層データの生成装置において、
第1の階層の複数の信号値の演算結果を丸めることによって、第2の階層の信号値を生成すると共に、丸めにより生じる誤差を示すコードを生成する信号値生成手段と、
第1の階層の複数の信号値の内の1個の信号値を第2の階層の信号値によって置き換えてデータ量を圧縮する置き換え手段とを有し、
置き換え手段が発生する信号値およびコードを出力することを特徴とする階層データの生成装置である。
【0015】
請求項7の発明は、第1の階層の複数の信号値の演算結果を丸めることによって、より上位の第2の階層の信号値を生成すると共に、丸めにより生じる誤差を示すコードを生成し、第1の階層の複数の信号値の内の1個の信号値を第2の階層の信号値によって置き換えてデータ量を圧縮するようにした少なくとも2階層の階層構造データを受け取り、階層構造のデータから、第1および第2の階層データを復元するデータ復元装置であって、
第2の階層の信号値とコードとから演算結果または演算結果に近似した値を復元する手段と、
復元された演算結果または演算結果に近似した値と、第2の階層の信号値で置き換えられたもの以外の第1の階層の信号値とによって、第2の階層の信号値で置き換えられた第1の階層の信号値を復元する手段とを有することを特徴とするデータ復元装置である。
【0016】
請求項8の発明は、入力データから第1の階層データと第1の階層データより上位の第2の階層データとの少なくとも2階層からなる階層構造データを生成し、階層構造データを受け取り、階層構造データから第1および第2の階層データをそれぞれ復元する階層データの生成復元システムにおいて、
第1の階層の複数の信号値の演算結果を丸めることによって、第2の階層の信号値を生成すると共に、丸めにより生じる誤差を示すコードを生成する信号値生成手段と、
第1の階層の複数の信号値の内の1個の信号値を第2の階層の信号値によって置き換えてデータ量を圧縮する置き換え手段と、
置き換え手段が発生する信号値およびコードを伝送または記憶する手段と、
受信または再生した第2の階層の信号値とコードとから演算結果または演算結果に近似した値を復元する手段と、
復元された演算結果または演算結果に近似した値と、第2の階層の信号値で置き換えられたもの以外の第1の階層の信号値とによって、第2の階層の信号値で置き換えられた第1の階層の信号値を復元する手段とを有することを特徴とする階層データの生成復元システムである。
【0017】
請求項9の発明は、入力データから第1の階層データと第1の階層データより上位の第2の階層データとの少なくとも2階層からなる階層構造データを生成する階層データの生成方法において、
第1の階層の複数の信号値の演算結果を丸めることによって、第2の階層の信号値を生成すると共に、丸めにより生じる誤差を示すコードを生成するステップと、
第1の階層の複数の信号値の内の1個の信号値を第2の階層の信号値によって置き換えてデータ量を圧縮するステップとを有し、
置き換え手段が発生する信号値およびコードを出力することを特徴とする階層データの生成方法である。
【0018】
請求項10の発明は、第1の階層の複数の信号値の演算結果を丸めることによって、より上位の第2の階層の信号値を生成すると共に、丸めにより生じる誤差を示すコードを生成し、第1の階層の複数の信号値の内の1個の信号値を第2の階層の信号値によって置き換えてデータ量を圧縮するようにした少なくとも2階層の階層構造データを受け取り、階層構造データから、第1および第2の階層データを復元するデータ復元方法であって、
第2の階層の信号値とコードとから演算結果または演算結果に近似した値を復元するステップと、
復元された演算結果または演算結果に近似した値と、第2の階層の信号値で置き換えられたもの以外の第1の階層の信号値とによって、第2の階層の信号値で置き換えられた第1の階層の信号値を復元するステップとを有することを特徴とするデータ復元方法である。
【0019】
請求項11の発明は、入力データから第1の階層データと第1の階層データより上位の第2の階層データとの少なくとも2階層からなる階層構造データを生成し、階層構造データを受け取り、階層構造データから第1および第2の階層データをそれぞれ復元する階層データの生成復元方法において、
第1の階層の複数の信号値の演算結果を丸めることによって、第2の階層の信号値を生成すると共に、丸めにより生じる誤差を示すコードを生成するステップと、
第1の階層の複数の信号値の内の1個の信号値を第2の階層の信号値によって置き換えてデータ量を圧縮するステップと、
置き換え手段が発生する信号値およびコードを伝送または記憶するステップと、
受信または再生した第2の階層の信号値とコードとから演算結果または演算結果に近似した値を復元するステップと、
復元された演算結果または演算結果に近似した値と、第2の階層の信号値で置き換えられたもの以外の第1の階層の信号値とによって、第2の階層の信号値で置き換えられた第1の階層の信号値を復元するステップとを有することを特徴とする階層データの生成復元方法である。
【0020】
この発明によれば、各階層のデータを並列的に伝送するのと比較してデータ量の増加を抑えることができ、また、画素値を丸めるだけの処理と比較して丸めの誤差により復元画像の画質が劣化することを防止できる。この発明では、合計値、平均値のような演算結果を丸めることによって、8ビット固定長の画素値を形成できる。従って、画素値のビット長が階層毎に異なるデータを扱うのと比較して、データの取り扱いが容易で、階層間で統一した取り扱いが可能となる。
【0021】
【発明の実施の形態】
以下、この発明の一実施形態について説明する。一実施形態は、階層符号化の方法である。一例として最下位階層データ(入力画像データ)DL1は、1画素が8ビットの画像データである。カラー画像の場合では、例えば輝度データ、2個の色差データの各コンポーネント毎に処理される。また、この一実施形態は、下位階層の隣接4画素の画素値の合計値によりその上位階層における画素を生成し、下位階層の隣接4画素の内の1画素は、生成した上位階層の画素によって置き換え、全階層データが併存する場合に比してデータ量を圧縮する階層符号化に対してこの発明を適用したものである。
【0022】
図2は、一実施形態の符号化処理を示すものである。第1階層(原画像データ)データDL1の隣接する4画素の合計値T12が演算される。例えば図1に示す第1階層データDL1の隣接4画素の合計値T12=X1+X2+X3+X4が生成される。合計値T12は、10ビット長である。第1階層では、4×4画素が画素ブロックを構成する。なお、合計値は、上位から8ビット目と9ビット目との間に小数点が位置する平均値ともみなせるので、合計値を平均値と置き換えても以下の説明が同様に成立する。
【0023】
合計値T12が8ビット長に丸められることによって、第2階層データDL2(Y1,Y2,Y3,・・・)が生成される。丸め処理としては、切り捨て、または四捨五入を用いることができる。切り捨ては、下位2ビットを取り除く丸め処理であり、四捨五入は、上位から9ビット目が1である時に、8ビット目に1を加え、9ビット目が0である時に8ビット目に1を加えない処理である。さらに、第1階層の隣接4画素毎の所定位置の1画素例えばX4は、第2階層データの画素値Y1に置き換えられるもの、すなわち、伝送または記憶されない被置換画素値である。
【0024】
合計値T12と、それを丸めた第2階層データDL2の画素値Yiとの差分値S12が演算される。差分値S12は、丸めによる誤差を示す。この場合、8ビットの画素値Yiを左に2ビットシフトし、その下位側に2ビット(0)を付加することによって、画素値Yiを10ビットデータとして扱う。T12−Yi=S12によって、差分値S12が求まる。差分値S12は、極性を示す符号ビット(斜線を付す)と2ビットとの計3ビットのコードである。データ量を圧縮するために、差分値を付加コードC12へ符号化する。この符号化処理は、四捨五入によって丸めを行った時に必要である。若し、丸めが切り捨てであれば、差分値が2ビットとなり、差分値を付加コードに符号化することが不要である。
【0025】
上述した四捨五入を行う時には、差分値S12としては、4個の値しか発生しない。従って、4個の差分値は、
111→00,000→01,001→10,010→11
のように2ビットの付加コードC12へ変換される。
【0026】
このように、第2階層の画素データと付加コードC12とが生成される。第2階層データDL2中の2×2画素(画素ブロック)毎の1画素例えばY4は、第3階層データの画素値Z1に置き換えられるもの、すなわち、伝送または記憶されない被置換画素値である。第2階層の画素ブロック毎に合計値T23が演算される。例えばT23=Y1+Y2+Y3+Y4である。合計値T23は、10ビット長である。合計値T23が8ビット長に丸められることによって、第3階層データDL3(Z1,Z2,Z3,・・・)が生成される。丸め処理としては、切り捨て、または四捨五入を用いることができる。
【0027】
合計値T23と、それを丸めた第3階層データDL3の画素値Ziとの差分値S23(丸めの誤差)が演算される。この場合、8ビットの画素値Ziを2ビット左にシフトしし、その下位側に2ビット(0)を付加することによって、画素値Ziを10ビットデータとして扱う。T23−Zi=S23によって、差分値S23が求まる。差分値S23は、極性を示す符号ビット(斜線を付す)と2ビットとの計3ビットのコードである。四捨五入による丸めを行っている時には、データ量を圧縮するために、差分値を付加コードC23へ符号化する。このように、第3階層の画素データと付加コードC23とが生成される。第3階層は、最上位階層であるので、第3階層データDL3の画素値は、全て伝送または記憶される。
【0028】
上述したこの発明の一実施形態による符号化により発生するデータ量について説明する。一例として、5階層構造データの場合に、伝送または記録される全画素は、図3に示すものとなる。図3では、各画素に付される番号が階層を表している。第1階層の16×16画素の領域において、各階層データの隣接する2×2画素で構成される領域の右下コーナーの1画素が上位階層の画素データに置き換えられる。それによって、階層構造のデータのデータ量は、画素データについては、元のデータ量と等しい。このデータ量は、16×16×8=2048ビットである。また、階層数が4の場合の階層構造のデータは、図3の8×8画素の領域を単位とするデータ構造を有し、階層数が3の場合の階層構造のデータは、図3の4×4画素の領域を単位とするデータ構造を有する。
【0029】
図3から分かるように、各階層の2×2画素の隣接4画素毎に一つの付加コードが必要とされる。付加コードは、画素値と異なり、上位階層の付加コードと置き換えることができない。従って、付加コード(2ビット)のデータ量の合計は、第1階層から順に、8×8×2+4×4×2+2×2×2+2=170ビットである。画素データおよび付加ビットのデータ量を合計したものは、2048+170=2218ビットである。データ量の増加率は、2218÷2048≒1.08である。すなわち、一実施形態の処理は、上位階層ほど2ビットずつビット長を拡張した場合と同じデータ量の増加率である。なお、付加コードは、伝送または記憶がされない下位の画素値を復元するのに使用されるので、より上位の階層のデータとして扱われる。例えば、付加コードC12は、第2階層のデータとして扱われ、付加コードC23は、第3階層のデータとして扱われる。
【0030】
次に、階層符号化されたデータを復号する処理、すなわち、上位階層の画素値で置き換えられた下位階層の画素値の復元処理について図4を参照して説明する。3階層の例について説明すると、最上位階層(第3階層)から下位階層に向かって順に復号処理がなされる。
【0031】
第3階層の符号化データには、画素データと付加コードC23とが含まれる。2ビットの付加コードC23を復号処理によって、3ビットの差分値S23に変換する。差分値は、2を補数とするコードであって、斜線で示す符号ビットを有する。第2階層の画素ブロック(隣接する4画素)の合計値T23が復元される。例えば第3階層の画素値Z1を左に2ビットシフトして、下位2ビットに0を加えた値と差分値S23とを加算することによって、10ビットの合計値T23が復元される。
【0032】
第2階層の画素ブロックがY1〜Y4で構成される時には、T23=Y1+Y2+Y3+Y4である。従って、Y4=T23−(Y1+Y2+Y3)の演算によって、上位階層の画素値に置き換えられた第2階層の画素値Y4を復元することができる。この処理を全ての画素値が揃っている最上位階層(第3階層)とその下位階層(第2階層)との間において行う。それによって、第2階層の被置換画素値を復元することができる。
【0033】
同様にして、第2階層の画素データと付加コードC12とを使用して、上位階層の画素値と置き換えられた第1階層の画素値を復元する。まず、付加コードC12を差分値S12に復号する。差分値S12と、下位側に2ビットの0を付加した第2階層の画素値Yiとを合計することによって、合計値T12を復元する。合計値T12から、第1階層の画素ブロックの実際に記録または伝送される3画素の画素値を減算する。それによって、第2階層の画素値に置き換えられた第1階層の画素値を復元することができる。このように、階層を順次下位側へ移動しながら復号処理を行うことによって、各階層の被置換画素値を上位階層から順に復号することができる。
【0034】
上述したこの発明の一実施形態では、画素値は、丸め処理によって、全て8ビット/画素に揃えられており、付加コードも全て2ビット固定長である。従って、上位階層では、画素値のビット長を2ビットずつ拡張する方法と比較して、画素値および付加コードのデータ処理が容易である。例えば階層間の演算において、常に最大10ビットの処理で済むので、上位階層ほど処理時間が長くなることがなく、また、各階層間における演算回路として同一構成のものを使用することができる。このことは、符号化および復号の処理機能をハードウエアで実現する上で非常に有利である。
【0035】
さらに、半導体記憶装置、磁気ディスクなどの各種記憶装置にこの発明による階層構造データを記憶する場合には、画素値コードと付加コードとがそれぞれ固定長のデータであるために扱いやすい利点がある。例えば、4個の付加コードをまとめて8ビットとして扱ったり、その逆に各2ビットの付加コードへ分解することが容易であり、また、画素値と同一のフォーマットで記憶することが可能である。
【0036】
この発明の一実施形態の階層符号化のハードウエアについて、3階層の場合の構成例を図5に示す。1で示す入力端子に対して入力画像データ、すなわち、最下位の第1階層データDL1が供給される。走査変換部2は、画像ブロックを構成する隣接する4画素ごとに、画素値(例えば8ビット/1画素)をセレクタ3およびラッチ部4へ出力する。走査変換分布2は、バッファメモリで構成される。セレクタ3は、上位階層の画素値に置き換えられる一つの被置換画素値以外の3個の画素値を選択して記憶部5に供給する。記憶部5は、選択された画素値を記憶する。記憶部5は、より具体的には、画像通信におけるフレームメモリのようなバッファ用半導体メモリ、画像データベースにおける磁気ディスク、光ディスク、半導体メモリ等である。必要に応じて記憶部5が画像通信、画像データベース等の処理装置に組み込まれている。
【0037】
ラッチ部4は、第1階層データの隣接する4画素を演算ユニット6に供給する。演算ユニット6は、4個の画素値の合計値T12(10ビット)を生成する。合計値T12が丸めユニット7および減算器8に供給される。なお、合計値は、上位から8ビット目と9ビット目との間に小数点が位置する平均値であるとみなせるので、合計値に代えて平均値を扱う場合も、以下の説明が成り立つ。
【0038】
丸めユニット7は、合計値T12を四捨五入によって8ビットの第2階層の画素値に変換する。この画素値がゲート9に供給されると共に、シフト回路10を介して減算器8に供給される。シフト回路10によって画素値Y1を2ビット左にシフトし、下位2ビットに0を付加したものが減算器8へ供給される。減算器8は、合計値T12からシフト回路10からの第2階層の画素値を減算する。例えばT12=X1+X2+X3+X4の場合、減算器8は、T12−Y1=S12の差分値を発生する。
【0039】
減算器8からの差分値S12が符号化部11に供給される。符号化部11は、四捨五入を行う時に、3ビットの差分値S12を2ビットの付加コードC12に符号化する。付加コードC12は、記憶部5に記憶される。
【0040】
ゲート9は、丸めユニット7から順に発生する第2階層データDL2中で、第3階層の画素値によって置き換えられる被置換画素値例えばY4を記憶部5に供給しない。第2階層の隣接する4画素の残りの3画素の値は、ゲート9を介して記憶部5に記憶される。また、丸めユニット7からの順に発生する第2階層データDL2の各画素値が順にラッチ部14の各ラッチに取り込まれる。ラッチ部14からの第2階層の隣接4画素(画素ブロック)のデータが演算ユニット16に供給される。
【0041】
演算ユニット16は、第2階層の隣接する4画素の値の合計値T23を発生する。演算ユニット16からの合計値T23が丸めユニット17および減算器18に供給される。丸めユニット17が四捨五入によって第3階層データDL3を発生する。第3階層データDL3は、最上位階層であるために、間引かれずに記憶部5に記憶される。
【0042】
減算器18では、合計値T23と、シフト回路20によりシフトされ、下位2ビットに0が付加された第3階層の画素値が減算され、丸め誤差を表す差分値S23が生成される。差分値S23が符号化部21により2ビットの付加コードC23へ変換される。付加コードC23が記憶部5に記憶される。このように、第3階層までの符号化がなされ、記憶部5には、各階層の画素データと付加コードC12およびC23が記憶される。
【0043】
階層構造のデータを生成する符号化装置は、図5に示す構成のハードウエアに限らず、他の構成も可能である。例えば第1階層の画素ブロック(4×4画素)を走査変換によって同時化し、並列に設けた4個の演算ユニットの各ユニットに対して、隣接する4画素をそれぞれ供給し、第2階層データDL2の4画素を同時に生成するようにしても良い。この並列構成は、ハードウエアの規模が大きくなるが、高速の処理が可能である。また、生成された各階層のデータを表示部によって表示するようにしても良い。
【0044】
次に、図6を参照して上位階層の画素値で置き換えられた下位階層の被置換画素値を復元する構成の一例について説明する。記憶部31から第3階層データDL3と付加コードC23が読出される。記憶部31と記憶部5とが同一のものであっても良い。記憶部31から第3階層データDL3が出力されると共に、シフト回路32を介して加算器33に供給される。シフト回路32は、画素値を左に2ビットシフトし、下位側に2ビットの0を付加する。
【0045】
付加コードC23が復号部34によって差分値S23に変換される。復号部34は、符号化部21と逆の変換を行う。3ビットの差分値S23がシフト回路32の出力の下位側に加算される。加算器33によって、合計値T23が計算される。合計値T23が逆演算ユニット35に供給される。
【0046】
逆演算ユニット35には、上位階層の画素値に置き換えられていない第2階層のデータがラッチ37a、37b、37cを介して記憶部31から供給される。すなわち、隣接する4画素のうちの3画素が逆演算ユニット35に供給される。逆演算ユニット35は、合計値T23と3画素の画素値とを使用して第2階層の被置換画素値を復元する。例えばY4=T23−(Y1+Y2+Y3)によって被置換画素値Y4が復元される。復元された画素値を含む第2階層データDL2が出力される。
【0047】
第1階層データDL1中の被置換画素値は、第2階層データDL2の被置換画素値と同様に復元される。加算器43は、シフト回路42によって左に2ビットシフトされ、下位2ビットに0が付加された画素値と、復号部44からの差分データS13とを加算し、合計値T23を出力する。シフト回路42には、セレクタ48で選択された第2階層の画素データが供給される。第2階層の画素データとしては、記憶部31から読出されたものと、上述したように、第3階層データを使用して復元されたものとの両者が含まれる。セレクタ48は、合計値を復元するのに使用する画素値を選択する。例えば画素値Y1、Y2、Y3が記憶部31から読出され、画素値Y4が逆演算ユニット35から発生する。復元された合計値T13が逆演算ユニット45に供給される。
【0048】
逆演算ユニット45には、隣接する4画素の内で、第2階層の画素値に置き換えられていない第1階層の3画素の画素値がラッチ47a、47b、47cを介して記憶部31から供給される。逆演算ユニット45は、第1階層データ中の被置換画素値を復元する。例えばX4=T13−(X1+X2+X3)によって、被置換画素値X4が復元される。復元された被置換画素値を含む第1階層データDL1が出力される。
【0049】
なお、上述した図5に示す階層構造データ生成装置(符号化装置)と図6に示す階層構造データ復元装置(復号装置)とは、構成要素を共用するようにしても良い。さらに、ハードウエアに限らず、ハードウエアまたはハードウエアとソフトウェアの組み合わせによって、処理を行うことも可能である。
【0050】
図7のフローチャートは、ソフトウェア処理により階層構造データを生成するための処理を示す。図7では、合計値の代わりに平均値を生成し、平均値を上位階層の画素値を生成するようにしている。例えば第2階層の画素値Y1は、Y1=1/4(X1+X2+X3+X4)によって生成される。この演算は、X1〜X4の合計値を2ビット右へシフトすることでなされる。
【0051】
ステップST1では、最下位階層のデータが入力される。次のステップST2において、隣接する4画素値の合計値が計算される。ステップST3では、合計値の下位2ビットが丸められる。ステップST4において、丸め誤差が計算される。丸め誤差は、合計値と丸めた値との差分値である。丸め誤差(差分値)から付加コードを生成する(ステップST5)。
【0052】
ステップST6では、丸めた値を2ビット右へシフトした値、すなわち、上位階層データを生成し、上位階層データによって下位階層の1画素値を置き換える。ステップST7では、最下位階層の画素ブロック内の処理が終了したかどうかが決定される。処理が終了してないと決定されると、隣接4画素の組が更新される(ステップST8)。そして、ステップST2に戻って上述した処理が繰り返される。
【0053】
ステップST7において、該当画素ブロック内の処理が終了したと決定されると、ステップST9において、最上位階層であるか否かが決定される。最上位階層でないと決定されると、処理の対象の階層が上昇される(ステップST10)。そして、ステップST2に戻って上述した処理が繰り返される。
【0054】
ステップST9において、最上位階層であると決定されると、ステップST11において、全画素ブロックの処理が終了したか否かが決定される。全画素ブロックの処理が未了と決定されると、画素ブロックが更新される(ステップST12)。そして、ステップST2に戻って上述した処理が繰り返される。ステップST11において、全画素ブロックの処理が終了したと決定されると、階層構造データの生成処理が終了する。
【0055】
図8のフローチャートは、ソフトウェア処理により、下位階層の被置換画素値を復元するための処理を示す。最初のステップST21では、付加コードから丸め誤差を復元する。ステップST22では、上位階層画素値を4倍とする。丸め誤差と4倍とされた上位階層画素値から上位階層合計値を復元する(ステップST23)。ステップST24では、上位階層合計値と、下位階層の3画素値とから下位階層の被置換画素値を復元する。該当画素ブロック内の処理が終了したか否かが決定される(ステップST25)。処理が終了してないと決定されると、隣接4画素の組が更新される(ステップST26)。そして、ステップST22に戻って上述した処理が繰り返される。
【0056】
ステップST25において、該当画素ブロック内の処理が終了したと決定されると、ステップST27において、最下位階層であるか否かが決定される。最下位階層でないと決定されると、処理の対象の階層が下降される(ステップST28)。そして、ステップST21に戻って上述した処理が繰り返される。
【0057】
ステップST27において、最下位階層であると決定されると、ステップST29において、全画素ブロックの処理が終了したか否かが決定される。全画素ブロックの処理が未了と決定されると、画素ブロックが更新される(ステップST30)。そして、ステップST21に戻って上述した処理が繰り返される。ステップST29において、全画素ブロックの処理が終了したと決定されると、階層構造データにおける下位階層データの復元処理が終了する。
【0058】
なお、画素ブロックは、最上位階層の1画素に対応する下位階層の領域である。3階層の場合では、第1階層の4×4画素の領域、第2階層の2×2画素の領域がそれぞれ画素ブロックである。但し、画素ブロックの定義を全画面としても良い。その場合では、ステップST11、ST29(全画素ブロックの終了?)およびステップST12、ST30(画素ブロックの更新)が不要である。
【0059】
以上の説明では、隣接する4画素の画素値の合計値または平均値によって,上位階層の画素値を生成している。しかしながら、4個以外の個数の画素値を使用しても良く、また、隣接していない複数の画素値を使用しても良く、さらに、加重平均その他のより複雑な演算によって上位階層画素値を生成しても良い。また、上述した説明では、下位階層の被置換画素値を完全に復元可能なように、差分値を生成し、この差分値を付加コードに変換している。しかしながら、上位階層画素値の生成方法、データ量の圧縮方法、階層数を考慮して、ある程度の誤差の発生を許容するような付加コードを生成しても良い。さらに、この発明は、画像データに限らず、ディジタル音声データのような他のディジタル情報信号に対しても適用することができる。
【0060】
【発明の効果】
この発明によれば、全階層のデータを併存させる方法と比して、データの増加率が抑えながら、誤差の発生を防止することができる。また、この発明では、各階層データの画素値のビット長が一定長であるので、データを扱い易く、階層間で処理時間が異なる不都合を回避することができる。
【図面の簡単な説明】
【図1】この発明が適用可能な階層構造データを説明するための略線図である。
【図2】この発明による階層構造データの生成処理を説明するための略線図である。
【図3】この発明において伝送または記憶される画素値の配置を示す略線図である。
【図4】この発明による階層構造データにおいて被置換画素値の復元処理を説明するための略線図である。
【図5】この発明による階層構造データの生成を行うための構成の一例を示すブロック図である。
【図6】この発明による階層構造データにおいて被置換画素値の復元処理を行うための構成の一例を示すブロック図である。
【図7】この発明による階層構造データの生成方法を説明するためのフローチャートである。
【図8】この発明による階層構造データにおいて被置換画素値の復元方法を説明するためのフローチャートである。
【符号の説明】
DL1・・・第1階層データ、DL2・・・第2階層データ、DL3・・・第3階層データ、T12,T23・・・合計値、S12,S23・・・差分値、C12,C23・・・付加コード、5,31・・・記憶部、6,16・・・演算ユニット、7,17・・・丸めユニット、35,45・・・逆演算ユニット
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an apparatus and method for generating hierarchical data, an apparatus and method for restoring data, a system and method for generating and restoring hierarchical data, an encoding apparatus and method for generating hierarchical structure data from a digital information signal, and a digital information signal from hierarchical structure data. The present invention relates to a decoding apparatus and method for decoding, and a data processing apparatus for performing encoding and decoding.
[0002]
[Prior art]
Hierarchical coding for generating image signals of a plurality of layers having different resolutions is known. That is, a code that forms a high resolution image signal as a first layer, a second layer image signal having a lower resolution, a third image signal having a lower layer than the second layer image signal,... (Referred to as hierarchical coding) has been proposed. According to this encoding, a plurality of image signals are transmitted via a single transmission path (communication path, recording medium), and on the receiving side, image data is reproduced by an image monitor corresponding to each of the plurality of hierarchies. Can do.
[0003]
More specifically, a standard resolution video signal, a high resolution video signal, image data of a computer display, a low resolution video signal for high-speed search of an image database, and the like are video signals having different resolutions. In addition to high and low resolution, hierarchical encoding can be applied to image enlargement and reduction (so-called electronic zoom). Image scaling is a function often used in video game applications, for example.
[0004]
In the conventional hierarchical coding, when forming a second layer image signal of 1/4 the first layer (input) image signal and the number of pixels of the first layer image signal, the first layer image signal is Thinning out to 1/4 forms a second layer image signal, calculates a difference value between the input signal and the first layer interpolation signal interpolated from the second layer image signal, and transmits this difference value is doing. As described above, in the conventional hierarchical coding, the number of pixels of the difference value is equal to the number of pixels of the input image signal, and further, since the signal of the second layer is transmitted, the transmission data amount is increased from the original data amount. It was normal. In the example of five layers, the number of pixels is 256 + 64 + 16 + 4 + 1 = 341, and if the number of bits per pixel is the same, the data amount increases to 341 / 256≈1.33 times.
[0005]
On the other hand, the applicant of the present application has already proposed hierarchical encoding that can suppress an increase in the amount of data. This hierarchical coding will be described with reference to FIG. That is, the hierarchical structure data includes first hierarchical data DL1 composed of input image data, second hierarchical data DL2 having a lower resolution, and third hierarchical data DL3 having a lower resolution than the second hierarchical data. It is.
[0006]
In the lowermost part of FIG. 1, a partial image (4 × 4 pixels) of the first layer data DL1 constituted by input image data is shown. This partial image is referred to as a pixel block. In FIG. 1, one square represents one pixel. A total value or an average value is calculated for every four pixels in the first layer (2 × 2 pixels). For example, a total value Y1 (= X1 + X2 + X3 + X4) or an average value Y1 (= 1/4 · (X1 + X2 + X3 + X4)) of X1, X2, X3, and X4 is calculated. Therefore, the portion corresponding to (4 × 4 pixels) is (2 × 2 pixels). The second hierarchy data DL2 is configured by the total value or the average value calculated in this way. In the second layer, (2 × 2 pixels) is a pixel block.
[0007]
Next, a total value or an average value of four (2 × 2) spatially adjacent pixels in the second layer is calculated. For example, the total value Z1 (= Y1 + Y2 + Y3 + Y4) or the average value Z1 (= 1/4 · (Y1 + Y2 + Y3 + Y4) is calculated. The third layer data DL3 is configured by the total value or the average value calculated in this way. The third layer data DL3 is a set of one pixel corresponding to the pixel block of the input image, as can be seen from Fig. 1, as the layer changes, the number of pixels is 1/4, 1/16, ... In other words, if the area of the image is constant, the resolution decreases at the same rate, and if the distance between the pixels is constant, the size of the image is reduced at the same rate. The process is performed from the first hierarchy toward the higher hierarchy in order.
[0008]
Hierarchical coding that forms an image of a higher hierarchy with the above average value has an advantage that the number of transmission pixels does not increase when transmitting image data of a plurality of hierarchies. In the example of FIG. 1, instead of transmitting pixels with parentheses, upper layer data may be transmitted. For example, the second layer data Y4 may be transmitted instead of the first layer pixel data X4. Further, the third layer data Z1 may be transmitted instead of the second layer pixel data Y4. That is, transmission of one pixel (four pixels in FIG. 1 in total) for each pixel block in the first layer is omitted, and Y1, Y2, Y3, and Z1 are transmitted instead of the omitted pixels.
[0009]
Explaining the decoding process, the third layer data DL3 can be obtained from the received data. In the case of using the total value, pixel data, for example Y4, whose transmission is omitted in the second layer data, can be obtained by Y4 = Z1− (Y1 + Y2 + Y3). Moreover, when using an average value, it calculates | requires as Y4 = 4Z1- (Y1 + Y2 + Y3). Furthermore, pixel data, for example, X4, whose transmission is omitted in the first layer data, is obtained as X4 = Y1- (X1 + X2 + X3) or X4 = 4Y1- (X1 + X2 + X3). Thus, at the time of decoding, it is made from the third hierarchy toward the lower hierarchy in order. Note that the position of the pixel for which transmission is omitted is not limited to the position of the lower right corner.
[0010]
In the above-described hierarchical encoding, when the pixel value is 8-bit data, the value generated by averaging or addition is 10 bits. In order to prevent the amount of data from increasing, the lower 2 bits of the total value or the digits corresponding to the decimal point are rounded to the upper 8 bits by rounding off or rounding down. When restoring a pixel from which transmission in a lower layer is omitted, an error due to rounding at the time of encoding is superimposed on the lower two bits of the restored pixel value. In the example of FIG. 1, when restoring the pixel data Y4 of the second hierarchy, an error is superimposed on the lower 2 bits of Y4. Furthermore, when restoring the pixel data X4 of the first hierarchy, the error superimposed on the lower 2 bits of the restored Y4 is shifted by 2 bits to the upper side. Thus, at the time of decoding, 2 bits on which an error is superimposed are shifted to the upper side as the lower layer is reached. In the case of five layers, an error is superimposed on the MSB (Most Significant Bit) and the second upper bit of the restored pixel data in the lowest first layer.
[0011]
The shift of the influence of the error to the higher side as the lower layer occurs causes a problem that the decoding error increases as the lower layer. One method for solving this problem is a method in which the bit length per pixel is increased as the upper layer is increased. In the example of FIG. 1, the first layer data DL1 is 8 bits / 1 pixel, the second layer data DL2 is 10 bits / 1 pixel, and the third layer data DL3 is 12 bits / 1 pixel. The The value related to the upper pixel is the total value (10 bits) of the lower layer 4 pixels (or can be regarded as an average value in which the decimal point is located between the 8th and 9th bits from the upper level). However, when a decoded image is displayed, a value rounded to upper 8 bits is used. In this method, the total data amount (total bit amount) increases to 1.08 times the original image data. The degree of this increase can be less than the increase rate of 1.33 when all the data of each layer is transmitted.
[0012]
[Problems to be solved by the invention]
As described above, the method of extending the bit length as the upper layer can suppress the increase rate of generated data, but it is not necessarily easy to handle in actual data processing. For example, an upper layer having a longer bit length requires a longer time for data processing such as computation, and hinders high-speed processing. The fifth layer has a bit length (16 bits) that is twice the bit length (8 bits) of the first layer. Another problem is that when hierarchical data is stored in various storage devices such as semiconductor storage devices and magnetic disks, the bit length differs from layer to layer, which requires complex reconstruction processing of the data structure. Or a problem that requires special handling on the storage device side arises.
[0013]
Accordingly, an object of the present invention is to provide a hierarchical data generation apparatus and method, a data restoration apparatus and method, and a hierarchical data generation and restoration system, in which an increase rate of the data amount is small, an error in decoding is small, and actual data processing is easy to handle. And to provide a method.
[0014]
[Means for Solving the Problems]
In order to solve the above-described problem, the invention according to claim 1 generates hierarchical structure data including at least two layers of first layer data and second layer data higher than the first layer data from input data. In the hierarchical data generation device
Signal value generation means for generating a signal value of the second layer by rounding the operation result of the plurality of signal values of the first layer and generating a code indicating an error caused by the rounding;
Replacement means for compressing the amount of data by replacing one signal value of the plurality of signal values of the first layer with the signal value of the second layer,
A hierarchical data generating apparatus is characterized in that a signal value and a code generated by a replacement means are output.
[0015]
The invention of claim 7 generates a signal value of a higher layer of the second layer by rounding a calculation result of a plurality of signal values of the first layer, and generates a code indicating an error caused by the rounding, Receiving at least two layers of hierarchical structure data in which one signal value of a plurality of signal values of the first layer is replaced with a signal value of the second layer to compress the data amount; A data restoration device for restoring the first and second hierarchical data,
Means for restoring the operation result or a value approximated to the operation result from the signal value and code of the second layer;
The first calculation result replaced with the signal value of the second layer by the restored calculation result or the value approximated to the calculation result and the signal value of the first layer other than the one replaced with the signal value of the second layer A data restoration apparatus comprising: means for restoring a signal value of one layer.
[0016]
The invention of claim 8 generates hierarchical structure data comprising at least two layers of first hierarchical data and second hierarchical data higher than the first hierarchical data from the input data, receives the hierarchical structural data, In a hierarchical data generation / restoration system for restoring first and second hierarchical data from structural data,
Signal value generation means for generating a signal value of the second layer by rounding the operation result of the plurality of signal values of the first layer and generating a code indicating an error caused by the rounding;
Replacement means for compressing the amount of data by replacing one signal value of a plurality of signal values of the first layer with a signal value of the second layer;
Means for transmitting or storing signal values and codes generated by the replacement means;
Means for restoring a calculation result or a value approximate to the calculation result from the signal value and code of the second layer received or reproduced;
The first calculation result replaced with the signal value of the second layer by the restored calculation result or the value approximated to the calculation result and the signal value of the first layer other than the one replaced with the signal value of the second layer A hierarchical data generation / restoration system comprising means for restoring signal values of one hierarchy.
[0017]
The invention of claim 9 is a hierarchical data generation method for generating hierarchical structure data composed of at least two layers of first layer data and second layer data higher than the first layer data from input data.
Generating a signal value of the second layer by rounding a calculation result of the plurality of signal values of the first layer, and generating a code indicating an error caused by the rounding;
Replacing one signal value of a plurality of signal values of the first layer with a signal value of the second layer to compress the data amount,
A hierarchical data generation method characterized in that a signal value and a code generated by a replacement means are output.
[0018]
The invention of claim 10 generates a signal value of a higher-order second layer by rounding a calculation result of a plurality of signal values of the first layer, and generates a code indicating an error caused by the rounding, Receiving at least two layers of hierarchical structure data in which one signal value of a plurality of signal values of the first layer is replaced with a signal value of the second layer to compress the data amount, and from the hierarchical structure data A data restoration method for restoring the first and second hierarchical data,
Restoring the operation result or a value approximated to the operation result from the signal value and the code of the second layer;
The first calculation result replaced with the signal value of the second layer by the restored calculation result or the value approximated to the calculation result and the signal value of the first layer other than the one replaced with the signal value of the second layer And a step of restoring a signal value of one layer.
[0019]
The invention of claim 11 generates hierarchical structure data comprising at least two layers of first hierarchical data and second hierarchical data higher than the first hierarchical data from the input data, receives the hierarchical structural data, In the generation and restoration method of hierarchical data for restoring the first and second hierarchical data respectively from the structure data,
Generating a signal value of the second layer by rounding a calculation result of the plurality of signal values of the first layer, and generating a code indicating an error caused by the rounding;
Replacing one signal value of a plurality of signal values of the first layer with a signal value of the second layer to compress the data amount;
Transmitting or storing signal values and codes generated by the replacement means;
Restoring the operation result or a value approximated to the operation result from the received or reproduced second layer signal value and code;
The first calculation result replaced with the signal value of the second layer by the restored calculation result or the value approximated to the calculation result and the signal value of the first layer other than the one replaced with the signal value of the second layer A method of generating and restoring hierarchical data, comprising: restoring a signal value of one hierarchy.
[0020]
According to the present invention, it is possible to suppress an increase in the amount of data compared to transmitting data of each layer in parallel, and to restore a restored image due to a rounding error compared to a process of simply rounding pixel values. Image quality can be prevented from deteriorating. In the present invention, a pixel value having an 8-bit fixed length can be formed by rounding calculation results such as a total value and an average value. Therefore, compared with handling data in which the bit length of the pixel value is different for each layer, it is easier to handle the data, and it is possible to handle it uniformly among the layers.
[0021]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment of the present invention will be described. One embodiment is a method of hierarchical coding. As an example, the lowest hierarchy data (input image data) DL1 is image data in which one pixel is 8 bits. In the case of a color image, for example, each component of luminance data and two color difference data is processed. Further, in this embodiment, a pixel in the upper layer is generated based on the total value of the pixel values of the adjacent four pixels in the lower layer, and one pixel in the adjacent four pixels in the lower layer is determined by the generated upper layer pixel. The present invention is applied to hierarchical coding that compresses the amount of data compared to the case where replacement and all hierarchical data coexist.
[0022]
FIG. 2 shows an encoding process according to an embodiment. A total value T12 of four adjacent pixels of the first layer (original image data) data DL1 is calculated. For example, a total value T12 = X1 + X2 + X3 + X4 of four adjacent pixels of the first layer data DL1 shown in FIG. 1 is generated. The total value T12 is 10 bits long. In the first hierarchy, 4 × 4 pixels constitute a pixel block. Note that the total value can be regarded as an average value in which the decimal point is located between the 8th and 9th bits from the top, so that the following description holds true even if the total value is replaced with the average value.
[0023]
The second layer data DL2 (Y1, Y2, Y3,...) Is generated by rounding the total value T12 to an 8-bit length. Rounding off can be rounded down or rounded off. Rounding off is a rounding process that removes the lower 2 bits. Rounding off adds 1 to the 8th bit when the 9th bit from the top is 1, and adds 1 to the 8th bit when the 9th bit is 0. There is no processing. Further, one pixel, for example, X4, at a predetermined position for every four adjacent pixels in the first layer is a pixel value Y1 that is replaced with the pixel value Y1 of the second layer data, that is, a pixel value to be replaced that is not transmitted or stored.
[0024]
A difference value S12 between the total value T12 and the pixel value Yi of the second hierarchical data DL2 obtained by rounding the total value T12 is calculated. The difference value S12 indicates an error due to rounding. In this case, the pixel value Yi is treated as 10-bit data by shifting the 8-bit pixel value Yi to the left by 2 bits and adding 2 bits (0) to the lower side. The difference value S12 is obtained by T12-Yi = S12. The difference value S12 is a code of 3 bits in total, that is, a sign bit indicating a polarity (shaded) and 2 bits. In order to compress the data amount, the difference value is encoded into the additional code C12. This encoding process is necessary when rounding is performed by rounding off. If rounding is rounded down, the difference value is 2 bits, and it is not necessary to encode the difference value into an additional code.
[0025]
When the rounding is performed, only four values are generated as the difference value S12. Therefore, the four difference values are
111 → 00,000 → 01,001 → 10,010 → 11
As shown in FIG.
[0026]
In this way, the pixel data of the second layer and the additional code C12 are generated. One pixel for every 2 × 2 pixels (pixel block) in the second hierarchy data DL2, for example, Y4, is a pixel value to be replaced with the pixel value Z1 of the third hierarchy data, that is, a replacement pixel value that is not transmitted or stored. A total value T23 is calculated for each pixel block in the second layer. For example, T23 = Y1 + Y2 + Y3 + Y4. The total value T23 is 10 bits long. The third layer data DL3 (Z1, Z2, Z3,...) Is generated by rounding the total value T23 to an 8-bit length. Rounding off can be rounded down or rounded off.
[0027]
A difference value S23 (rounding error) between the total value T23 and the pixel value Zi of the third hierarchical data DL3 obtained by rounding the total value T23 is calculated. In this case, the pixel value Zi is handled as 10-bit data by shifting the 8-bit pixel value Zi to the left by 2 bits and adding 2 bits (0) to the lower side. The difference value S23 is obtained by T23−Zi = S23. The difference value S23 is a code of 3 bits in total, that is, a sign bit indicating a polarity (shaded) and 2 bits. When rounding is performed by rounding off, the difference value is encoded into the additional code C23 in order to compress the data amount. In this way, the third-layer pixel data and the additional code C23 are generated. Since the third hierarchy is the highest hierarchy, all the pixel values of the third hierarchy data DL3 are transmitted or stored.
[0028]
The amount of data generated by the encoding according to the embodiment of the present invention described above will be described. As an example, in the case of five-layer structure data, all the pixels transmitted or recorded are as shown in FIG. In FIG. 3, the number assigned to each pixel represents a hierarchy. In the area of 16 × 16 pixels in the first layer, one pixel in the lower right corner of the region composed of adjacent 2 × 2 pixels in each layer data is replaced with pixel data in the upper layer. Accordingly, the data amount of the hierarchical data is equal to the original data amount for the pixel data. The amount of data is 16 × 16 × 8 = 2048 bits. The hierarchical structure data when the number of hierarchies is 4 has a data structure in units of 8 × 8 pixel areas in FIG. 3, and the hierarchical structure data when the number of hierarchies is 3 is shown in FIG. It has a data structure with a 4 × 4 pixel area as a unit.
[0029]
As can be seen from FIG. 3, one additional code is required for every 4 adjacent pixels of 2 × 2 pixels in each layer. Unlike the pixel value, the additional code cannot be replaced with an upper layer additional code. Therefore, the total data amount of the additional code (2 bits) is 8 × 8 × 2 + 4 × 4 × 2 + 2 × 2 × 2 + 2 = 170 bits in order from the first layer. The total amount of pixel data and additional bits is 2048 + 170 = 2218 bits. The increase rate of the data amount is 2218 ÷ 2048≈1.08. In other words, the processing of one embodiment is the same data rate increase rate as when the bit length is expanded by 2 bits in the upper layer. Since the additional code is used to restore lower pixel values that are not transmitted or stored, it is treated as higher layer data. For example, the additional code C12 is treated as second-layer data, and the additional code C23 is treated as third-layer data.
[0030]
Next, a process of decoding hierarchically encoded data, that is, a process of restoring a lower-layer pixel value replaced with an upper-layer pixel value will be described with reference to FIG. An example of three layers will be described. Decoding processing is sequentially performed from the highest layer (third layer) to the lower layer.
[0031]
The encoded data of the third layer includes pixel data and an additional code C23. The 2-bit additional code C23 is converted into a 3-bit difference value S23 by a decoding process. The difference value is a code having 2's complement and has a sign bit indicated by hatching. The total value T23 of the pixel blocks (adjacent four pixels) in the second layer is restored. For example, the 10-bit total value T23 is restored by shifting the pixel value Z1 of the third hierarchy to the left by 2 bits and adding the value obtained by adding 0 to the lower 2 bits and the difference value S23.
[0032]
When the pixel block of the second hierarchy is composed of Y1 to Y4, T23 = Y1 + Y2 + Y3 + Y4. Therefore, the pixel value Y4 of the second layer replaced with the pixel value of the upper layer can be restored by the calculation of Y4 = T23− (Y1 + Y2 + Y3). This process is performed between the highest layer (third layer) where all pixel values are aligned and its lower layer (second layer). Thereby, the replacement pixel value of the second hierarchy can be restored.
[0033]
Similarly, the pixel value of the first layer replaced with the pixel value of the upper layer is restored using the pixel data of the second layer and the additional code C12. First, the additional code C12 is decoded into the difference value S12. The sum T12 is restored by summing the difference value S12 and the pixel value Yi of the second layer with 2-bit 0 added to the lower side. From the total value T12, the pixel value of the three pixels actually recorded or transmitted in the pixel block of the first layer is subtracted. Thereby, the pixel value of the first layer replaced with the pixel value of the second layer can be restored. In this way, by performing the decoding process while sequentially moving the hierarchy to the lower side, it is possible to sequentially decode the pixel values to be replaced in each hierarchy from the upper hierarchy.
[0034]
In the above-described embodiment of the present invention, the pixel values are all adjusted to 8 bits / pixel by the rounding process, and all the additional codes have a fixed length of 2 bits. Therefore, in the upper layer, the pixel value and additional code data processing is easier than the method of extending the bit length of the pixel value by 2 bits. For example, in processing between hierarchies, processing of a maximum of 10 bits is always required, so that the processing time does not become longer as the upper hierarchies, and the arithmetic circuit having the same configuration can be used between the hierarchies. This is very advantageous in realizing the encoding and decoding processing functions by hardware.
[0035]
Further, when hierarchical structure data according to the present invention is stored in various storage devices such as a semiconductor storage device and a magnetic disk, there is an advantage that the pixel value code and the additional code are each fixed-length data and are easy to handle. For example, four additional codes can be handled together as 8 bits, or conversely, can be easily decomposed into 2-bit additional codes, and can be stored in the same format as the pixel values. .
[0036]
FIG. 5 shows an example of the configuration of the hierarchical coding hardware according to an embodiment of the present invention in the case of three layers. Input image data, that is, the lowest first layer data DL1 is supplied to the input terminal indicated by 1. The scan conversion unit 2 outputs a pixel value (for example, 8 bits / 1 pixel) to the selector 3 and the latch unit 4 for every four adjacent pixels constituting the image block. The scan conversion distribution 2 is composed of a buffer memory. The selector 3 selects three pixel values other than one replaced pixel value to be replaced with the upper layer pixel value and supplies the selected pixel value to the storage unit 5. The storage unit 5 stores the selected pixel value. More specifically, the storage unit 5 is a buffer semiconductor memory such as a frame memory in image communication, a magnetic disk in an image database, an optical disk, a semiconductor memory, or the like. The storage unit 5 is incorporated in a processing device such as image communication or an image database as necessary.
[0037]
The latch unit 4 supplies the four adjacent pixels of the first layer data to the arithmetic unit 6. The arithmetic unit 6 generates a total value T12 (10 bits) of the four pixel values. The total value T12 is supplied to the rounding unit 7 and the subtracter 8. Since the total value can be regarded as an average value in which the decimal point is located between the 8th and 9th bits from the top, the following explanation is valid even when the average value is used instead of the total value.
[0038]
The rounding unit 7 converts the total value T12 into a 2-bit pixel value of 8 bits by rounding off. This pixel value is supplied to the gate 9 and also supplied to the subtracter 8 via the shift circuit 10. The shift circuit 10 shifts the pixel value Y1 to the left by 2 bits, and adds 0 to the lower 2 bits to be supplied to the subtracter 8. The subtracter 8 subtracts the pixel value of the second layer from the shift circuit 10 from the total value T12. For example, when T12 = X1 + X2 + X3 + X4, the subtracter 8 generates a difference value of T12−Y1 = S12.
[0039]
The difference value S12 from the subtracter 8 is supplied to the encoding unit 11. The encoding unit 11 encodes the 3-bit difference value S12 into a 2-bit additional code C12 when rounding off. The additional code C12 is stored in the storage unit 5.
[0040]
The gate 9 does not supply to the storage unit 5 the pixel value to be replaced, for example, Y4 that is replaced by the pixel value of the third hierarchy in the second hierarchy data DL2 that is generated sequentially from the rounding unit 7. The values of the remaining three pixels of the adjacent four pixels in the second hierarchy are stored in the storage unit 5 via the gate 9. In addition, each pixel value of the second hierarchical data DL2 generated in order from the rounding unit 7 is taken into each latch of the latch unit 14 in order. Data of adjacent four pixels (pixel blocks) in the second hierarchy from the latch unit 14 is supplied to the arithmetic unit 16.
[0041]
The arithmetic unit 16 generates a total value T23 of the values of adjacent four pixels in the second layer. The total value T23 from the arithmetic unit 16 is supplied to the rounding unit 17 and the subtracter 18. The rounding unit 17 generates the third hierarchy data DL3 by rounding off. The third layer data DL3 is stored in the storage unit 5 without being thinned out because it is the highest layer.
[0042]
The subtracter 18 subtracts the total value T23 and the pixel value of the third layer shifted by the shift circuit 20 and having 0 added to the lower 2 bits, thereby generating a difference value S23 representing a rounding error. The difference value S23 is converted into a 2-bit additional code C23 by the encoder 21. The additional code C23 is stored in the storage unit 5. In this way, encoding up to the third layer is performed, and the storage unit 5 stores pixel data of each layer and additional codes C12 and C23.
[0043]
The encoding device that generates the hierarchical data is not limited to the hardware having the configuration shown in FIG. 5, and other configurations are possible. For example, pixel blocks (4 × 4 pixels) in the first layer are synchronized by scan conversion, and four adjacent pixels are supplied to each of four arithmetic units provided in parallel, and second layer data DL2 These four pixels may be generated simultaneously. This parallel configuration increases the scale of hardware, but enables high-speed processing. Further, the generated data of each layer may be displayed on the display unit.
[0044]
Next, an example of a configuration for restoring the replaced pixel value in the lower layer replaced with the pixel value in the upper layer will be described with reference to FIG. Third layer data DL3 and additional code C23 are read from storage unit 31. The storage unit 31 and the storage unit 5 may be the same. The third hierarchy data DL3 is output from the storage unit 31 and supplied to the adder 33 via the shift circuit 32. The shift circuit 32 shifts the pixel value to the left by 2 bits and adds 2 bits of 0 to the lower side.
[0045]
The additional code C23 is converted into the difference value S23 by the decoding unit 34. The decoding unit 34 performs a conversion reverse to that of the encoding unit 21. The 3-bit difference value S23 is added to the lower side of the output of the shift circuit 32. The adder 33 calculates a total value T23. The total value T23 is supplied to the inverse operation unit 35.
[0046]
The inverse operation unit 35 is supplied from the storage unit 31 via the latches 37a, 37b, and 37c with the data of the second layer that has not been replaced with the pixel values of the upper layer. That is, three of the four adjacent pixels are supplied to the inverse operation unit 35. The inverse operation unit 35 uses the total value T23 and the pixel value of 3 pixels to restore the replacement pixel value of the second hierarchy. For example, the replacement pixel value Y4 is restored by Y4 = T23− (Y1 + Y2 + Y3). Second layer data DL2 including the restored pixel value is output.
[0047]
The replacement pixel value in the first hierarchy data DL1 is restored in the same manner as the replacement pixel value in the second hierarchy data DL2. The adder 43 adds the pixel value shifted by 2 bits to the left by the shift circuit 42 and having 0 added to the lower 2 bits and the difference data S13 from the decoding unit 44, and outputs a total value T23. The shift circuit 42 is supplied with the pixel data of the second hierarchy selected by the selector 48. The pixel data of the second hierarchy includes both the data read from the storage unit 31 and the data restored using the third hierarchy data as described above. The selector 48 selects a pixel value used for restoring the total value. For example, pixel values Y 1, Y 2, Y 3 are read from the storage unit 31, and a pixel value Y 4 is generated from the inverse operation unit 35. The restored total value T13 is supplied to the inverse operation unit 45.
[0048]
The inverse arithmetic unit 45 is supplied from the storage unit 31 via the latches 47a, 47b, and 47c with the pixel values of the three pixels in the first layer that are not replaced with the pixel values in the second layer among the four adjacent pixels. Is done. The inverse operation unit 45 restores the replacement pixel value in the first hierarchical data. For example, the replacement pixel value X4 is restored by X4 = T13− (X1 + X2 + X3). First hierarchical data DL1 including the restored pixel value to be replaced is output.
[0049]
Note that the above-described hierarchical structure data generation apparatus (encoding apparatus) shown in FIG. 5 and the hierarchical structure data restoration apparatus (decoding apparatus) shown in FIG. 6 may share components. Furthermore, the processing can be performed not only by hardware but also by hardware or a combination of hardware and software.
[0050]
The flowchart of FIG. 7 shows a process for generating hierarchical structure data by software processing. In FIG. 7, an average value is generated instead of the total value, and a pixel value of an upper layer is generated from the average value. For example, the pixel value Y1 of the second hierarchy is generated by Y1 = 1/4 (X1 + X2 + X3 + X4). This calculation is performed by shifting the total value of X1 to X4 to the right by 2 bits.
[0051]
In step ST1, the lowest hierarchy data is input. In the next step ST2, the total value of the adjacent four pixel values is calculated. In step ST3, the lower 2 bits of the total value are rounded. In step ST4, a rounding error is calculated. The rounding error is a difference value between the total value and the rounded value. An additional code is generated from the rounding error (difference value) (step ST5).
[0052]
In step ST6, a value obtained by shifting the rounded value to the right by 2 bits, that is, upper layer data is generated, and one pixel value of the lower layer is replaced with the upper layer data. In step ST7, it is determined whether or not the processing in the pixel block of the lowest hierarchy has been completed. If it is determined that the processing has not ended, the set of adjacent four pixels is updated (step ST8). And it returns to step ST2 and the process mentioned above is repeated.
[0053]
If it is determined in step ST7 that the processing in the pixel block has been completed, it is determined in step ST9 whether or not it is the highest layer. If it is determined that it is not the highest hierarchy, the hierarchy to be processed is raised (step ST10). And it returns to step ST2 and the process mentioned above is repeated.
[0054]
If it is determined in step ST9 that it is the highest hierarchy, it is determined in step ST11 whether or not the processing of all pixel blocks has been completed. When it is determined that all the pixel blocks have not been processed, the pixel block is updated (step ST12). And it returns to step ST2 and the process mentioned above is repeated. If it is determined in step ST11 that the processing of all the pixel blocks has been completed, the hierarchical structure data generation processing ends.
[0055]
The flowchart of FIG. 8 shows a process for restoring a replacement pixel value in a lower layer by software processing. In the first step ST21, the rounding error is restored from the additional code. In step ST22, the upper layer pixel value is quadrupled. The upper layer total value is restored from the upper layer pixel value that is four times the rounding error (step ST23). In step ST24, the pixel value to be replaced in the lower layer is restored from the total value of the upper layer and the three pixel values in the lower layer. It is determined whether or not the processing in the pixel block has been completed (step ST25). If it is determined that the processing is not completed, the set of adjacent four pixels is updated (step ST26). And it returns to step ST22 and the process mentioned above is repeated.
[0056]
If it is determined in step ST25 that the processing in the pixel block has been completed, it is determined in step ST27 whether or not it is the lowest hierarchy. If it is determined that it is not the lowest hierarchy, the hierarchy to be processed is lowered (step ST28). And it returns to step ST21 and the process mentioned above is repeated.
[0057]
If it is determined in step ST27 that it is the lowest hierarchy, it is determined in step ST29 whether or not the processing of all pixel blocks has been completed. When it is determined that all the pixel blocks have not been processed, the pixel block is updated (step ST30). And it returns to step ST21 and the process mentioned above is repeated. If it is determined in step ST29 that the processing of all the pixel blocks has been completed, the restoration processing of the lower hierarchical data in the hierarchical structure data ends.
[0058]
The pixel block is a lower layer area corresponding to one pixel of the highest layer. In the case of three layers, the 4 × 4 pixel region in the first layer and the 2 × 2 pixel region in the second layer are pixel blocks, respectively. However, the definition of the pixel block may be full screen. In that case, steps ST11 and ST29 (end of all pixel blocks?) And steps ST12 and ST30 (update of pixel blocks) are unnecessary.
[0059]
In the above description, the pixel value of the upper layer is generated by the total value or the average value of the pixel values of the four adjacent pixels. However, a number of pixel values other than four may be used, or a plurality of pixel values that are not adjacent to each other may be used. It may be generated. In the above description, a difference value is generated and converted into an additional code so that the replacement pixel value in the lower layer can be completely restored. However, an additional code that allows the generation of a certain amount of error may be generated in consideration of the generation method of the upper layer pixel value, the data amount compression method, and the number of layers. Furthermore, the present invention can be applied not only to image data but also to other digital information signals such as digital audio data.
[0060]
【The invention's effect】
According to the present invention, it is possible to prevent the occurrence of errors while suppressing the data increase rate as compared with the method of coexisting data of all layers. In addition, according to the present invention, since the bit length of the pixel value of each hierarchical data is a fixed length, it is easy to handle the data, and it is possible to avoid the disadvantage that the processing time differs between the hierarchical levels.
[Brief description of the drawings]
FIG. 1 is a schematic diagram for explaining hierarchical structure data to which the present invention is applicable.
FIG. 2 is a schematic diagram for explaining hierarchical structure data generation processing according to the present invention;
FIG. 3 is a schematic diagram showing an arrangement of pixel values transmitted or stored in the present invention.
FIG. 4 is a schematic diagram for explaining restoration processing of a replacement pixel value in hierarchical structure data according to the present invention.
FIG. 5 is a block diagram showing an example of a configuration for generating hierarchical structure data according to the present invention.
FIG. 6 is a block diagram showing an example of a configuration for performing replacement processing of a replacement pixel value in hierarchical structure data according to the present invention.
FIG. 7 is a flowchart for explaining a method of generating hierarchical structure data according to the present invention.
FIG. 8 is a flowchart illustrating a method for restoring a pixel value to be replaced in hierarchical structure data according to the present invention.
[Explanation of symbols]
DL1... First layer data, DL2... Second layer data, DL3... Third layer data, T12, T23... Total value, S12, S23.・ Additional code, 5, 31 ... storage unit, 6, 16 ... arithmetic unit, 7, 17 ... rounding unit, 35, 45 ... inverse arithmetic unit

Claims (11)

入力データから第1の階層データと上記第1の階層データより上位の第2の階層データとの少なくとも2階層からなる階層構造データを生成する階層データの生成装置において、
第1の階層の複数の信号値の演算結果を丸めることによって、第2の階層の信号値を生成すると共に、上記丸めにより生じる誤差を示すコードを生成する信号値生成手段と、
上記第1の階層の複数の信号値の内の1個の信号値を上記第2の階層の信号値によって置き換えてデータ量を圧縮する置き換え手段とを有し、
上記置き換え手段が発生する信号値および上記コードを出力することを特徴とする階層データの生成装置。
In a hierarchical data generation apparatus that generates hierarchical structure data including at least two layers of first hierarchical data and second hierarchical data higher than the first hierarchical data from input data,
A signal value generation means for generating a signal value of the second layer by rounding a calculation result of the plurality of signal values of the first layer, and generating a code indicating an error caused by the rounding;
Replacement means for compressing the amount of data by replacing one signal value of the plurality of signal values of the first layer with the signal value of the second layer,
An apparatus for generating hierarchical data, characterized in that the signal value generated by the replacement means and the code are output.
請求項1において、
上記出力される信号値およびコードを記憶する記憶手段をさらに有することを特徴とする階層データの生成装置。
In claim 1,
A hierarchical data generation apparatus, further comprising storage means for storing the output signal value and code.
請求項1において、
上記演算結果が合計値または平均値であることを特徴とする階層データの生成装置。
In claim 1,
The hierarchical data generating apparatus, wherein the calculation result is a total value or an average value.
請求項1において、
上記演算結果を丸める処理が四捨五入または切り捨てであることを特徴とする階層データの生成装置。
In claim 1,
A hierarchical data generation apparatus, wherein the process of rounding the operation result is rounding off or rounding down.
請求項1において、
上記誤差を示すコードが演算結果と丸められた後の上記第2の階層の信号値の差分値であることを特徴とする階層データの生成装置。
In claim 1,
An apparatus for generating hierarchical data, wherein the code indicating the error is a difference value between the signal value of the second hierarchy after the calculation result and the operation result are rounded.
請求項5において、
さらに、上記差分値をより少ないビットの付加コードへ変換することを特徴とする階層データの生成装置。
In claim 5,
Further, the hierarchical data generating apparatus is characterized in that the difference value is converted into an additional code having fewer bits.
第1の階層の複数の信号値の演算結果を丸めることによって、より上位の第2の階層の信号値を生成すると共に、丸めにより生じる誤差を示すコードを生成し、第1の階層の複数の信号値の内の1個の信号値を第2の階層の信号値によって置き換えてデータ量を圧縮するようにした少なくとも2階層の階層構造データを受け取り、階層構造のデータから、第1および第2の階層データを復元するデータ復元装置であって、
上記第2の階層の信号値と上記コードとから上記演算結果または上記演算結果に近似した値を復元する手段と、
復元された上記演算結果または上記演算結果に近似した値と、上記第2の階層の信号値で置き換えられたもの以外の上記第1の階層の信号値とによって、上記第2の階層の信号値で置き換えられた上記第1の階層の信号値を復元する手段とを有することを特徴とするデータ復元装置。
By rounding the calculation result of the plurality of signal values of the first layer, a signal value of the higher second layer is generated, and a code indicating an error caused by the rounding is generated. Receiving at least two layers of hierarchical data in which one of the signal values is replaced with a signal value of the second layer to compress the amount of data, and the first and second layers are received from the hierarchical data. A data restoration device for restoring the hierarchical data of
Means for restoring the calculation result or a value approximated to the calculation result from the signal value of the second layer and the code;
The signal value of the second layer by the restored operation result or a value approximated to the operation result and the signal value of the first layer other than those replaced with the signal value of the second layer And a means for restoring the signal value of the first layer replaced by the data level.
入力データから第1の階層データと上記第1の階層データより上位の第2の階層データとの少なくとも2階層からなる階層構造データを生成し、階層構造データを受け取り、階層構造データから第1および第2の階層データをそれぞれ復元する階層データの生成復元システムにおいて、
第1の階層の複数の信号値の演算結果を丸めることによって、第2の階層の信号値を生成すると共に、上記丸めにより生じる誤差を示すコードを生成する信号値生成手段と、
上記第1の階層の複数の信号値の内の1個の信号値を上記第2の階層の信号値によって置き換えてデータ量を圧縮する置き換え手段と、
上記置き換え手段が発生する信号値および上記コードを伝送または記憶する手段と、
受信または再生した上記第2の階層の信号値と上記コードとから上記演算結果または上記演算結果に近似した値を復元する手段と、
復元された上記演算結果または上記演算結果に近似した値と、上記第2の階層の信号値で置き換えられたもの以外の上記第1の階層の信号値とによって、上記第2の階層の信号値で置き換えられた上記第1の階層の信号値を復元する手段とを有することを特徴とする階層データの生成復元システム。
Generating hierarchical structure data composed of at least two layers of first hierarchical data and second hierarchical data higher than the first hierarchical data from the input data, receiving the hierarchical structural data, In the hierarchical data generation / restoration system for restoring the second hierarchical data,
A signal value generation means for generating a signal value of the second layer by rounding a calculation result of the plurality of signal values of the first layer, and generating a code indicating an error caused by the rounding;
Replacement means for replacing one signal value of the plurality of signal values of the first hierarchy with the signal value of the second hierarchy to compress the data amount;
Means for transmitting or storing the signal value generated by the replacement means and the code;
Means for restoring the calculation result or a value approximate to the calculation result from the signal value of the second layer received or reproduced and the code;
The signal value of the second layer by the restored operation result or a value approximated to the operation result and the signal value of the first layer other than those replaced with the signal value of the second layer And a means for restoring the signal value of the first hierarchy replaced with the hierarchical data generation / restoration system.
入力データから第1の階層データと上記第1の階層データより上位の第2の階層データとの少なくとも2階層からなる階層構造データを生成する階層データの生成方法において、
第1の階層の複数の信号値の演算結果を丸めることによって、第2の階層の信号値を生成すると共に、上記丸めにより生じる誤差を示すコードを生成するステップと、
上記第1の階層の複数の信号値の内の1個の信号値を上記第2の階層の信号値によって置き換えてデータ量を圧縮するステップとを有し、
上記置き換え手段が発生する信号値および上記コードを出力することを特徴とする階層データの生成方法。
In a hierarchical data generation method for generating hierarchical structure data composed of at least two layers of first hierarchical data and second hierarchical data higher than the first hierarchical data from input data,
Generating a signal value of the second layer by rounding a calculation result of the plurality of signal values of the first layer, and generating a code indicating an error caused by the rounding;
Replacing one signal value of the plurality of signal values of the first hierarchy with the signal value of the second hierarchy to compress the data amount,
A method for generating hierarchical data, comprising: outputting a signal value generated by the replacement means and the code.
第1の階層の複数の信号値の演算結果を丸めることによって、より上位の第2の階層の信号値を生成すると共に、丸めにより生じる誤差を示すコードを生成し、第1の階層の複数の信号値の内の1個の信号値を第2の階層の信号値によって置き換えてデータ量を圧縮するようにした少なくとも2階層の階層構造データを受け取り、階層構造データから、第1および第2の階層データを復元するデータ復元方法であって、
上記第2の階層の信号値と上記コードとから上記演算結果または上記演算結果に近似した値を復元するステップと、
復元された上記演算結果または上記演算結果に近似した値と、上記第2の階層の信号値で置き換えられたもの以外の上記第1の階層の信号値とによって、上記第2の階層の信号値で置き換えられた上記第1の階層の信号値を復元するステップとを有することを特徴とするデータ復元方法。
By rounding the calculation result of the plurality of signal values of the first layer, a signal value of the higher second layer is generated, and a code indicating an error caused by the rounding is generated. Receiving at least two layers of hierarchical structure data in which one of the signal values is replaced with a signal value of the second layer to compress the data amount, and the first and second layers are received from the hierarchical structure data. A data restoration method for restoring hierarchical data,
Restoring the calculation result or a value approximated to the calculation result from the signal value of the second layer and the code;
The signal value of the second layer by the restored operation result or a value approximated to the operation result and the signal value of the first layer other than those replaced with the signal value of the second layer And a step of restoring the signal value of the first layer replaced by step (1).
入力データから第1の階層データと上記第1の階層データより上位の第2の階層データとの少なくとも2階層からなる階層構造データを生成し、階層構造データを受け取り、階層構造データから第1および第2の階層データをそれぞれ復元する階層データの生成復元方法において、
第1の階層の複数の信号値の演算結果を丸めることによって、第2の階層の信号値を生成すると共に、上記丸めにより生じる誤差を示すコードを生成するステップと、
上記第1の階層の複数の信号値の内の1個の信号値を上記第2の階層の信号値によって置き換えてデータ量を圧縮するステップと、
上記置き換え手段が発生する信号値および上記コードを伝送または記憶するステップと、
受信または再生した上記第2の階層の信号値と上記コードとから上記演算結果または上記演算結果に近似した値を復元するステップと、
復元された上記演算結果または上記演算結果に近似した値と、上記第2の階層の信号値で置き換えられたもの以外の上記第1の階層の信号値とによって、上記第2の階層の信号値で置き換えられた上記第1の階層の信号値を復元するステップとを有することを特徴とする階層データの生成復元方法。
Generating hierarchical structure data composed of at least two layers of first hierarchical data and second hierarchical data higher than the first hierarchical data from the input data, receiving the hierarchical structural data, In the hierarchical data generation / restoration method for restoring the second hierarchical data,
Generating a signal value of the second layer by rounding a calculation result of the plurality of signal values of the first layer, and generating a code indicating an error caused by the rounding;
Replacing one signal value of the plurality of signal values of the first layer with the signal value of the second layer to compress the data amount;
Transmitting or storing the signal value generated by the replacement means and the code;
Restoring the calculation result or a value approximate to the calculation result from the signal value of the second layer received or reproduced and the code;
The signal value of the second layer by the restored operation result or a value approximated to the operation result and the signal value of the first layer other than those replaced with the signal value of the second layer And a step of restoring the signal value of the first layer replaced by the step of generating hierarchical data.
JP18442698A 1998-06-30 1998-06-30 Hierarchical data generation apparatus and method, data restoration apparatus and method, hierarchical data generation and restoration system and method Expired - Fee Related JP3840807B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18442698A JP3840807B2 (en) 1998-06-30 1998-06-30 Hierarchical data generation apparatus and method, data restoration apparatus and method, hierarchical data generation and restoration system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18442698A JP3840807B2 (en) 1998-06-30 1998-06-30 Hierarchical data generation apparatus and method, data restoration apparatus and method, hierarchical data generation and restoration system and method

Publications (2)

Publication Number Publication Date
JP2000022548A JP2000022548A (en) 2000-01-21
JP3840807B2 true JP3840807B2 (en) 2006-11-01

Family

ID=16152957

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18442698A Expired - Fee Related JP3840807B2 (en) 1998-06-30 1998-06-30 Hierarchical data generation apparatus and method, data restoration apparatus and method, hierarchical data generation and restoration system and method

Country Status (1)

Country Link
JP (1) JP3840807B2 (en)

Also Published As

Publication number Publication date
JP2000022548A (en) 2000-01-21

Similar Documents

Publication Publication Date Title
JP2646169B2 (en) Video compression and decompression methods
US8941514B2 (en) Image coding and decoding system using variable length coding and variable length decoding
JP2861890B2 (en) Color image display
KR100601743B1 (en) Image processing device and method, and transmission medium, transmission method and image format
KR100325492B1 (en) Hierarchical Encoding / Decoding Apparatus and Method of Digital Image Signal
JPS5955688A (en) Method of compressing data flow continuously transmitting between television transmitter and television receiver and system for executing same method
JP4332246B2 (en) Image processing apparatus, method, and recording medium
US5991445A (en) Image processing apparatus
CN1182730C (en) Image encoding/decoding by eliminating color components in pixels
JP3840807B2 (en) Hierarchical data generation apparatus and method, data restoration apparatus and method, hierarchical data generation and restoration system and method
KR20060059769A (en) Method for coding vector refinement for using vectors of base layer picturs and decoding method using the vector refinement
JP2002064821A (en) Method for compressing dynamic image information and its system
JP3337160B2 (en) Image processing method and image processing apparatus
JP2000165873A (en) Compression method for moving picture information and its system
JP3748115B2 (en) Image data decoding apparatus and image data decoding method
JP3807117B2 (en) Hierarchical data generation apparatus and method, hierarchical data generation and restoration system and method
JPH1023426A (en) Picture predicting method and picture coding method
JP2758159B2 (en) Image compression / decompression device
JP3356338B2 (en) Image processing apparatus and image processing method
JP3381007B2 (en) Image processing apparatus and image processing method
JP2000004436A (en) Picture processing unit, picture processing method, transmission medium and transmission method
JPH06178119A (en) Image encoder
JPS63296564A (en) Bit plane predicting coding method
JPS6242558B2 (en)
JPH10145778A (en) Image conversion method and image encoding method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050310

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060710

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060731

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

Free format text: PAYMENT UNTIL: 20100818

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110818

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110818

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120818

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120818

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130818

Year of fee payment: 7

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