(57)【要約】【課題】音声または画像を表すサンプル列に冗長なサンプルが含まれている場合に、それらサンプル列に圧縮符号化を施した場合の圧縮率を向上させ、かつ、圧縮符号化および復号化を経たサンプル列の表わす音声または画素の再生品質の低下を従来よりも小さくする。【解決手段】音声または画像を表すサンプル列の圧縮符号化を行う際に、それらサンプル列に不使用サンプルが含まれている場合には、圧縮符号化処理の前処理となるデータ変換処理（ＤＣＴなど）を施した場合にその出力データ列の任意の位置のデータが所定値となるように、それら不使用サンプルの値を書き換えた後に上記データ変換処理および圧縮符号化処理を実行する。【選択図】図１
2011135213.tif 000002
【特許請求の範囲】
【請求項１】
波形を表わす１次元または２次元のサンプル列と前記サンプル列を構成するサンプルのうち前記波形の再生の際に使用されないサンプルを示すマスクデータとを受け取り、圧縮符号化処理の前処理となるデータ変換処理を前記サンプル列に施した場合に得られる出力データ列において前記マスクデータの示すサンプル数を上限として前記出力データ列にて所定の位置を占めるデータが所定値となるように、前記マスクデータの示すサンプルの値を書き換える処理を前記サンプル列に施すデータ書き換え部と、
前記データ書き換え部による書き換えが行われたサンプル列に前記データ変換処理を施し、その変換結果である出力データ列を圧縮符号化処理を実行する後段回路へ出力するデータ変換部と、
を有することを特徴とするデータ変換回路。
【請求項２】
前記データ変換部は、
前記サンプル列に対して離散コサイン変換を施し、各周波数成分の重みを表わす変換係数の配列を前記出力データ列として得る処理を前記データ変換処理として実行し、
前記データ書き換え部は、
高周波側の変換係数が前記マスクデータの示すサンプルの個数分だけゼロとなるように前記マスクデータの表すサンプルについての新たなサンプル値を算出し、当該サンプル値を用いて前記サンプル列を書き換える
ことを特徴とする請求項１に記載のデータ変換回路。
【請求項３】
前記データ変換部は、
前記サンプル列に対して離散コサイン変換を施し、各周波数成分の重みを表わす変換係数の配列を前記出力データ列として得る処理を前記データ変換処理として実行し、
前記データ書き換え部は、
前記サンプル列の行または列単位でその中央から両端に向けて対称にサンプルが並ぶように前記マスクデータの示すサンプルのサンプル値を書き換える
ことを特徴とする請求項１に記載のデータ変換回路。
【請求項４】
コンピュータを、
波形を表わす１次元または２次元のサンプル列と前記サンプル列を構成するサンプルのうち前記波形の再生の際に使用されないサンプルを示すマスクデータとを受け取り、圧縮符号化処理の前処理となるデータ変換処理を前記サンプル列に施した場合に得られる出力データ列において前記マスクデータの示すサンプル数を上限として前記出力データ列にて所定の位置を占めるデータが所定値となるように、前記マスクデータの示すサンプルの値を書き換える処理を前記サンプル列に施すデータ書き換え部と、
前記データ書き換え部による書き換えが行われたサンプル列に前記データ変換処理を施し、その変換結果である出力データ列を圧縮符号化処理を実行する後段回路へ出力するデータ変換部、
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データや音声データの変換技術に関し、特に、画像データや音声データの冗長性を低減させることを目的として圧縮符号化等の前段で行われるデータ変換技術に関する。
【背景技術】
【０００２】
画像データや音声データの一例としては、音声波形を一定のサンプリング間隔でサンプリングして得られる一次元サンプル列や、画像を複数の画素に分割し各画素の色や階調等を表わすサンプル（画素値）の二次元配列で当該画像を表わしたものが挙げられる。これらサンプル列は、何らかの波形（例えば、音声データであれば音波形、画像データであれば水平または垂直方向の階調等の移り変わりを表わす波形）を表わすものであるから「波形データ」とも呼ばれる。これら波形データをインターネット等の電気通信回線経由で伝送することで音声や画像の伝送が実現されるのであるが、波形データのデータサイズは一般に大きく、そのままの状態では伝送に適さない。そこで、何らかの圧縮符号化を施してデータ量を低減させることが一般に行われている。以下、音声や画像を表す波形データに圧縮符号化を施して得られるデータのことを「圧縮符号化データ」と呼ぶ。
【０００３】
この種の圧縮符号化技術の一例としては、ＪＰＥＧ（Joint Photographic Experts
Group）が挙げられる。ＪＰＥＧとは、画像データの圧縮符号化技術の一つである。このＪＰＥＧでは、圧縮符号化対象の画像データを８×８画素（ピクセル）の処理単位ブロックに分割し、処理単位ブロック毎に周波数領域のデータに変換するデータ変換処理（例えば、離散コサイン変換（Discrete Cosine Transform）：以下、ＤＣＴ）が施される。このデータ変換処理は、圧縮符号化対象のデータの冗長性を低減させるために行われる処理である。そして、データ変換処理の処理結果である８×８の変換係数列の各要素を所定の量子化係数で量子化し、さらに、直流成分から高周波成分へ向けてジグザグにスキャンしつつ可変長符号化（例えば、ハフマン符号化等）を施すことで圧縮符号化が実現される。ここで、量子化とは、量子化対象のデータを上記量子化係数で除算し、その除算結果の小数部を切り捨てて整数部のみを当該データの量子化後の値とする演算である。このＪＰＥＧ方式の圧縮符号化処理により得られた圧縮符号化データの復号を行う際には、可変長符号化の逆演算である可変長符号復号化、量子化の逆演算である逆量子化、および上記データ変換処理の逆演算である逆データ変換処理を順次行えば良い。ただし、ＪＰＥＧ方式の圧縮符号化では量子化において情報の損失が生じているため、圧縮符号化データを復号しても圧縮符号化前の波形データを完全には復元できない。このように、圧縮符号化前のデータを完全には復元することができない圧縮符号化は「非可逆圧縮符号化」と呼ばれている。このような非可逆圧縮符号化の他に、圧縮符号化前のデータを完全に復元することができる可逆圧縮符号化技術も勿論ある。可逆圧縮符号化技術は非可逆圧縮符号化技術に比較して圧縮率が低いため、圧縮符号化対象の画像データの用途等に応じて、これら二種類の圧縮符号化技術の使い分けが行われている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−１２８１７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、音声や画像を表す波形データには、その再生の際には使用されないサンプル（以下、不使用サンプル）が含まれている場合がある。このような不使用サンプルの一例としては、音声に対してその再生の際に無音とすべき区間（以下、ミュート区間）が設定されている場合にそのミュート区間に属するものが挙げられる。また、画像の一部を他の画像で覆って再生すべきこと（或いは透明とすべきこと）が指示されている場合には、他の画像で覆われる画素（或いは、透明とする画素）を表わすサンプルも上記不使用サンプルに該当する。このような不使用サンプルは、音声や画像の再生の際には使用されないのであるから、本来的には冗長なものである。そこで、従来は、圧縮符号化における圧縮率が高くなることを期待して上記不使用サンプルの値を他のサンプルの平均値等に書き換えた後に圧縮符号化を行うことが多かったのであるが、必ずしも圧縮率が高まるとは限らず、また、圧縮符号化および復号化を経たデータにしたがって画像や音声を再生した場合にその画質や音質（再生品質）が大きく低下する場合があった。例えば、画像を表すサンプル列に対して上記のような書き換えを行うと、平均値に書き換えられたサンプルと処理単位ブロック内で最大（或いは最小）の値を有するサンプルとが隣接する場合があり、これらサンプルの境界で擬似エッジが生じる場合がある、といった具合である。
本発明は上記課題に鑑みて為されたものであり、音声を表す一次元サンプル列や画像を表す二次元サンプル列に冗長なサンプルが含まれている場合に、それらサンプル列に圧縮符号化を施した場合の圧縮率を向上させ、かつ、圧縮符号化および復号化を経たサンプル列の表わす音声または画素の再生品質の低下を従来よりも小さくする技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために本発明は、波形を表わす１次元または２次元のサンプル列と前記サンプル列を構成するサンプルのうち前記波形の再生の際に使用されないサンプルを示すマスクデータとを受け取り、圧縮符号化処理の前処理となるデータ変換処理を前記サンプル列に施した場合に得られる出力データ列において前記マスクデータの示すサンプル数を上限として前記出力データ列にて所定の位置を占めるデータが所定値となるように、前記マスクデータの示すサンプルの値を書き換える処理を前記サンプル列に施すデータ書き換え部と、前記データ書き換え部による書き換えが行われたサンプル列に前記データ変換処理を施し、その変換結果である出力データ列を圧縮符号化処理を実行する後段回路へ出力するデータ変換部とを有することを特徴とするデータ変換回路を提供する。なお、本発明の別の態様においては、ＣＰＵ（Central Processing Unit）などのコンピュータを上記データ書き換え部および上記データ変換部として機能させることを特徴とするプログラムを提供しても良い。
【０００７】
このようなデータ変換回路を、非可逆圧縮符号化回路（例えば、量子化と可変長符号化とを組み合わせた圧縮符号化を行う回路）の前段に設け、可変長符号化における符号化アルゴリズムの内容に応じて上記所定値およびその所定値を設定するデータの位置を定めるようにすれば、音声を表わす一次元サンプル列や画像を表す二次元サンプル列の圧縮率を向上させることができる。例えば、上記可変長符号化において、連続するゼロをその連続長で符号化するゼロランレングス符号化を併用した符号化アルゴリズムが採用されている場合には、上記所定値をゼロとし、出力データ列にてゼロが連続して現れる（例えば、所謂ジグザグスキャンの逆順にゼロが連続して現れる）ようにサンプル列の書き換えを行うことで従来よりも圧縮率を高めることができる。また、不使用サンプルについて、その書き換え後の値をどのように定めるのかについては種々の態様が考えられる。例えば、マスクデータの示す不使用サンプルの各々の値を変数とし、これら変数を含むサンプル列と上記所定値を所定の位置に設定した出力データ列との関係を数式化し、それらの数式を連立方程式と見立てて解くことでそれら変数を算出する態様や、上記連立方程式を表わす行列の対称性を利用して上記各変数の値を定める態様が考えられる。
【０００８】
上記圧縮符号化データの復号を行う復号装置の構成としては、可変長符号化処理の逆演算である可変長符号復号処理を実行する可変長符号復号部、量子化の逆演算である逆量子化処理を実行する逆量子化部、および上記データ変換処理の逆演算である逆量子化処理を実行する逆データ変換部を組み合わせたものが考えられる。ここで、量子化処理および逆量子化処理による影響を無視すると、上記復号装置の出力サンプル列は、上記データ書き換え部による書き換え処理を経たサンプル列に等しいものとなる。つまり、上記復号装置の出力サンプル列は、マスクデータの示すサンプル（すなわち、不使用サンプル）については圧縮符号化前のサンプル列（すなわち、データ書き換え処理を施す前のサンプル列）におけるものとは値が大きく異なっている可能性があるものの、他のサンプルについてはデータ書き換え処理を施す前のサンプル列におけるものとほぼ同じ値（量子化による影響があるため、完全に同じ値になるとは限らない）となっている。復号装置の出力サンプル列の表わす音声または画像の再生の際には不使用サンプルは使用されないため、不使用サンプルの値が元のサンプル列におけるものと大きく異なっていたとしても、再生される音声の音質や再生される画像の画質に特段の影響が生じることはない。つまり、本発明によれば、音声や画像を表すサンプル列に冗長なサンプルが含まれている場合に、それら冗長なサンプルの値を適宜書き換えることで、そのサンプル列に対して圧縮符号化を施した場合の圧縮率を向上させ、さらに、圧縮符号化および復号化を経たサンプル列の示す音声（或いは画像）の再生品質の劣化を従来よりも小さくすることが可能になるのである。
【０００９】
特許文献１は、離散コサイン変換を経た変換係数列のうち圧縮率に応じた個数の高周波数成分をゼロに書き換えることで任意の圧縮率での圧縮符号化を実現する技術である。この特許文献１に開示された技術では、ゼロに書き換える高周波成分の個数が多いほど高い圧縮率が得られる。しかし、特許文献１に開示された技術では、離散コサイン変換により得られた変換係数列に対して圧縮率に応じた個数の変換係数をゼロに書き換える処理を施している。このため、当該処理により得られた変換係数列に対して離散コサイン変換の逆演算を施すと、不使用サンプル以外のサンプルについても元の値が復号されるとは限らず、復号後のサンプル列の表す音声や画像の再生品質が大きく劣化することを免れることはできない。つまり、特許文献１に開示された技術では、本発明の課題を解決することはできず、本発明とは異なるものである。
【図面の簡単な説明】
【００１０】
【図１】本発明の第１実施形態に係るデータ変換回路を有する圧縮符号化装置１０Ａを含み、音声データの非可逆圧縮符号化伝送を行うシステムの一例を示す図である。
【図２】圧縮符号化装置１０Ａのデータ書き換え部１１０Ａに入力される一次元サンプル列Ｘ０と、同データ書き換え部１１０Ａから出力される一次元サンプル列Ｘ１の関係を示す図である。
【図３】本発明の第２実施形態に係る圧縮符号化装置１０Ｂを含み、画像データの非可逆圧縮符号化伝送を行うシステムの一例を示す図である。
【図４】同圧縮符号化装置１０Ｂのデータ書き換え部１１０Ｂが実行するデータ書き換え処理の流れを示すフローチャートである。
【図５】同圧縮符号化装置１０ＢのＤＣＴ演算部１２０Ｂによる変換係数の出力順（ジグザグスキャン）を示す図である。
【図６】本発明の第３実施形態に係る圧縮符号化装置１０Ｃを含み、画像データの非可逆圧縮符号化伝送を行うシステムの一例を示す図である。
【図７】同圧縮符号化装置１０Ｃのデータ書き換え部１１０Ｃが実行するデータ書き換え処理の流れを示すフローチャートである。
【図８】同圧縮符号化装置１０Ｃへ入力される画像データおよびマスクデータの一例を示す図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照しつつ本発明の実施形態について説明する。
（Ａ：第１実施形態）
図１は、音声データの非可逆圧縮符号化伝送を行うシステムの構成例を示す図である。
図１に示すように、このシステムは、圧縮符号化装置１０Ａ、復号装置２０Ａおよび再生装置３０Ａを含んでいる。圧縮符号化装置１０Ａは、音声データに非可逆圧縮符号化を施して非可逆圧縮符号化データを生成する。ここで、音声データとは、音声波形を所定のサンプリング間隔でサンプリングして得られる一次元サンプル列である。図１に示すシステムでは、圧縮符号化装置１０Ａにより生成される非可逆圧縮符号化データをＣＤ−ＲＯＭ（Compact Disk-Read Only Memory）などの記録媒体に書き込んで配布したり、インターネットなどの電気通信回線経由のダウンロードで配布したりすることで音声データの非可逆圧縮符号化伝送が実現される。復号装置２０Ａは、圧縮符号化装置１０Ａから出力される非可逆圧縮符号化データの復号を行い、その復号結果である一次元サンプル列（音声データ）を再生装置３０Ａに与える。そして、再生装置３０Ａは、復号装置２０Ａから与えられる音声データの表わす音波形を音として再生する。
【００１２】
図１に示すように圧縮符号化装置１０Ａには、圧縮符号化の対象となる音声データの他に、マスクデータが入力される。このマスクデータは、前述したミュート区間を示すデータである。このマスクデータの具体例としては、音声データの先頭を時刻の起算点とした場合におけるミュート区間の開始時刻および終了時刻を示すデータ（ミュート区間が複数ある場合には、各ミュート区間の開始時刻および終了時刻を示すデータの配列）が挙げられる。このマスクデータは圧縮符号化装置１０Ａが備える可逆圧縮符号化部１５０Ａによって可逆圧縮符号化データに変換され、上記非可逆圧縮符号化データとともに復号装置２０Ａに伝送される。ここで、可逆圧縮符号化部１５０Ａが実行する可逆圧縮符号化処理の符号化アルゴリズムとしては公知のものを適宜用いるようにすれば良い。図１に示すように復号装置２０Ａは、上記可逆圧縮符号化データの復号化（すなわち、可逆圧縮符号化部１５０Ａが実行する演算の逆演算）を行う可逆圧縮符号復号部２４０Ａを有しており、この可逆圧縮符号復号部２４０Ａによって上記可逆圧縮符号化データの復号を行いマスクデータを復元する。このようにして復元されたマスクデータは、図１に示すように再生装置３０Ａに与えられ、上記非可逆圧縮符号化データを復号して得られる音声データの再生の際に利用される。より詳細に説明すると、再生装置３０Ａでは、復号装置２０Ａから出力される音声データに応じた音声の再生を行う際に、ミュート区間が無音となるようにマスクデータにしたがって音量の調整が行われるのである。
【００１３】
図１に示すようにマスクデータは、データ変換回路（より正確には、データ書き換え部１１０Ａ）にも与えられる。このマスクデータは、音声データの圧縮符号化における圧縮率の向上、および圧縮符号化および復号化を経た音声データの表わす音声の再生品質の劣化を従来よりも小さくすることの実現に利用され、この点に本実施形態の特徴がある。以下では、本実施形態の特徴を顕著に示す圧縮符号化装置１０Ａを中心に説明する。
【００１４】
圧縮符号化装置１０Ａは、図１に示すように、可逆圧縮符号化部１５０Ａの他に、各々電子回路で構成されたデータ変換回路と非可逆圧縮符号化回路とを含んでいる。
図１に示すように、データ変換回路は、データ書き換え部１１０ＡとＤＣＴ演算部１２０Ａとを含んでいる。データ書き換え部１１０Ａは、圧縮符号化対象として与えられる一次元サンプル列に不使用サンプル（本実施形態では、マスクデータの示すミュート区間に属するサンプル）が含まれているか否かをマスクデータを参照して判定し、含まれている場合には、当該不使用サンプルの値を後段の非可逆圧縮符号化回路にて行われる処理に適した値に書き換えて出力する。本実施形態にて不使用サンプルをどのような値に書き換えるのかについては後に詳細に説明する。ＤＣＴ演算部１２０Ａは、データ書き換え部１１０Ａによって不使用サンプルの書き換えが行われた一次元サンプル列を所定サンプル数ずつの処理単位ブロックに区切り、その処理単位ブロック毎に離散コサイン変換を施し、その変換結果である変換係数列を非可逆圧縮符号化回路に出力する。なお、処理単位ブロックの大きさ（すなわち、処理単位ブロックを何個のサンプルで構成するのか）については、データ変換回路の演算能力との関係で適宜定めるようにすれば良い。
【００１５】
非可逆圧縮符号化回路は量子化部１３０と可変長符号化部１４０を含んでおり、従来のものと何ら変るところはない。量子化部１３０は、ＤＣＴ演算部１２０Ａから出力されるデータに量子化を施して可変長符号化部１４０に出力する。一方、可変長符号化部１４０は、量子化部１３０による量子化を経たデータ列に対してゼロランレングス符号化を併用した可変長符号化（例えば、ハフマン符号化や算術符号化などのエントロピ符号化）を施し、出現頻度が高い値ほど符号長の短い符号に変換して出力する。このようにして得られる可変長符号の配列が非可逆圧縮符号化データとなるのである。
【００１６】
このように、本実施形態では、非可逆圧縮符号化回路にてゼロランレングス符号化を併用した可変長符号化が行われるため、ＤＣＴ演算部１２０Ａから出力される変換係数列において、連続して現れるゼロの数が多ければ多いほどゼロランレングス符号化の効果により高い圧縮率が得られる。上記一次元サンプル列に不使用サンプルが含まれていないのであれば、上記変換係数列はＤＣＴ演算により一意に定まるため、その変換係数列にて連続してゼロが現れるか否かはその一次元サンプル列がどのようなものであるのかに依存し圧縮率の調整をすることはできない。しかし、圧縮符号化対象の一次元サンプル列に不使用サンプルが含まれている場合には、変換係数列にて連続して現れるゼロの個数が多くなるように、それら不使用サンプルの値を適宜書き換えることで圧縮率を高めることができる。具体的には、ＤＣＴ演算の処理対象となる処理単位ブロックにＮ個のサンプルが含まれており、そのうちのＭ（Ｍ＜Ｎ）個が不使用サンプルである場合には、これらＭ個の不使用サンプルを適宜書き換えることによって、この処理単位ブロックにＤＣＴを施して得られる変換係数列（ＤＣＴは可逆変換であるから、Ｎ個の変換係数からなるデータ列）に含まれるＭ個の変換係数を任意の値（本実施形態では、０）とすることができる。図１のデータ書き換え部１１０Ａは、ＤＣＴ演算部１２０Ａから出力される変換係数列において連続して現れるゼロの数が多くなるように不使用サンプルを書き換える処理を実行するのである。以下、データ書き換え部１１０Ａが実行する書き換え処理の具体的な処理内容について説明する。
【００１７】
以下、ＤＣＴ演算の処理単位ブロックＸがＮ個のサンプルｘｋ（ｋ＝１〜Ｎ）で構成されており、そのうちの２個（ｘｉとｘｊ）が不使用サンプルであるとする。処理単位ブロックＸと、この処理単位ブロックＸにＤＣＴ演算を施して得られる変換係数列Ｙ＝（ｙ１、・・・ｙＮ）Ｔとの間には、Ｙ＝ＡＸの関係がある。なお、行列ＡはＤＣＴ演算を表わすＮ次正方行列であって、その第ｋ行第ｎ列成分ａｋｎは以下の数１で表わされる（ただし、数１の右辺のｓｋはスケーリングのための定数であって、ｋ＝１のときｓｋ＝２の平方根の逆数、ｋ≠１のときｓｋ＝１）。
【数１】
2011135213.tif 000003
【００１８】
ここで、変換係数列Ｙの第ｐ成分および第ｑ成分を固定値ｕおよびｖにしたとする。すると、ｕおよびｖと、不使用サンプル（ｘｉおよびｘｊ）との間には、以下の数２に示す関係がある。
【数２】
2011135213.tif 000004
【００１９】
数２に示す各式の左辺ｕおよびｖは固定値（例えば、０）である。また、数２のａｐｎおよびａｑｎ（ｎ＝１〜Ｎ）は数１にしたがって算出される固定値であり、ｘｎ（ｎ≠ｉ、ｊ）も固定値である。したがって、数２はｘｉおよびｘｊを未知数とする二元連立方程式である。データ書き換え部１１０Ａは、この連立方程式を解くことで不使用サンプルの書き換え後の値を求め、このようにして求まる値で不使用サンプルの値を書き換えるのである。例えば、変換係数列Ｙの連続する２個の高周波成分（すなわち、変換係数列Ｙの末尾の２個）をゼロとする場合は、データ書き換え部１１０Ａはｕ＝ｖ＝０、ｐ＝Ｎ−１、ｑ＝Ｎとして、数２に示す連立方程式を解き、この連立方程式の解で不使用サンプルｘｉおよびｘｊを書き換えた処理単位ブロックのサンプル列をＤＣＴ演算部１２０Ａに与えるのである。なお、連立方程式を解くためのアルゴリズムとしては、掃き出し法などの周知のものを用いるようにすれば良い。
以上がデータ書き換え部１１０Ａの実行するデータ書き換え処理の内容である。
【００２０】
圧縮符号化装置１０Ａによって生成された非可逆圧縮符号化データは復号装置２０Ａへと伝送され、この復号装置２０Ａによって一次元サンプル列（音声データ）に復号される。図１に示すように、復号装置２０Ａは、前述した可逆圧縮符号復号部２４０Ａの他に、可変長符号復号部２１０、逆量子化部２２０、および逆ＤＣＴ演算部２３０Ａを含んでいる。可変長符号復号部２１０は可変長符号化部１４０における符号化演算の逆演算を実行するものであり、逆量子化部２２０は量子化部１３０における量子化演算の逆演算を実行するものである。そして、逆ＤＣＴ演算部２３０ＡはＤＣＴ演算部１２０Ａが実行する演算の逆演算を実行するものである。このように、復号装置２０Ａの構成は、離散コサイン変換、量子化および可変長符号化を併用した従来の圧縮符号化方式により非可逆圧縮符号化されたデータの復号を行う従来の復号装置の構成となんら変るところはない。
【００２１】
図２は、圧縮符号化装置１０Ａによる圧縮符号化前の音声データ（一次元サンプル列）Ｘ０と、データ書き換え処理を経た一次元サンプル列Ｘ１の一例を示す図である。一次元サンプル列Ｘ１と一次元サンプル列Ｘ０とを対比すると、不使用サンプルについては前述したデータ書き換え処理によって大きく異なる値に書き換えられている可能性があるものの、その他のサンプルの値は等しくなっている。復号装置２０から再生装置３０へ与えられる一次元サンプル列は、量子化および逆量子化による影響（所謂量子化誤差）を除けば、一次元サンプル列Ｘ１と等しいものとなる。再生装置３０Ａでは、復号装置２０Ａから与えられる一次元サンプル列にしたがって音声の再生が行われるのであるが、マスクデータにしたがって音量の調整が行われるため、同マスクデータの示すミュート区間に属する不使用サンプルが再生に使用されることはない。このため、上記データ書き換え処理によって不使用サンプルの値が大きく異なるものに書き換えられていたとしても、再生音の聴感に特段の影響が現れることはない。つまり、本実施形態によれば、圧縮符号化対象の音声データ（一次元サンプル列）に冗長な要素が含まれている場合に、復号側に改変を加えることなく圧縮符号化の際の圧縮率を向上させ、さらに、圧縮符号化および復号を経た音声データの再生品質の劣化を従来よりも小さくすることができるのである。
【００２２】
（Ｂ：第２実施形態）
次いで、本発明の第２実施形態について説明する。
図３は、画像データ（本実施形態では、８ビットモノクロ画像データ）の非可逆圧縮符号化伝送を行うシステムの構成例を示す図である。ここで画像データとは、画像を複数の画素の配列で表現した場合における各画素の階調を表わす画素値（サンプル値）を配列した二次元サンプル列であり、８ビットモノクロ画像データとは、各画素の階調を８ビットの数値で表わす画像データである。図３に示すように、このシステムは圧縮符号化装置１０Ｂ、復号装置２０Ｂおよび再生装置３０Ｂを含んでいる。圧縮符号化装置１０Ｂは、二次元サンプル列（画像データ）に非可逆圧縮符号化を施して非可逆圧縮符号化データを生成し、この非可逆圧縮符号化データを復号装置２０Ｂへ伝送する。図３の復号装置２０Ｂは、非可逆圧縮符号化データの復号を行い、その復号結果である二次元サンプル列（画像データ）を再生装置３０Ｂに与える。そして、図３の再生装置３０Ｂは、復号装置２０Ｂから与えられる画像データの表わす画像を液晶ディスプレイなどの表示装置に表示させるものである。
【００２３】
図３に示すシステムにおいても、圧縮符号化装置１０Ｂには、非可逆圧縮符号化の対象となる画像データの他に、マスクデータが入力される。本実施形態のマスクデータは、圧縮符号化装置１０Ｂへ入力される画像データを構成するサンプル（画素）のうち、他の画像によって覆われる（或いは背景色を透過させるために透明とされる）もの（すなわち、不使用サンプル）を示すデータである。このようなマスクデータの一例としては、上記画像データを構成する複数の画素の各々に対応付けて“０”（使用されない画素であることを示す値）と“１”（使用される画素であることを示す値）をマトリクス状に配列したものが考えられる。
【００２４】
図３に示すように圧縮符号化装置１０Ｂは、マスクデータに可逆圧縮符号化を施して可逆圧縮符号化データを生成する可逆圧縮符号化部１５０Ｂを有しており、この可逆圧縮符号化部１５０Ｂにより生成される可逆圧縮符号化データは、前述した非可圧縮符号化データとともに復号装置２０Ｂへ伝送される。また、圧縮符号化装置１０Ｂへ入力されるマスクデータは、前述した第１実施形態におけるものと同様に、画像データの圧縮符号化における圧縮率の向上等に利用される。図３に示すように、復号装置２０Ｂは、可逆圧縮符号化データの復号を行いマスクデータを復元する可逆圧縮符号復号部２４０Ｂを有している。この可逆圧縮符号復号部２４０Ｂにより復元されたマスクデータは再生装置３０Ｂに与えられ、復号装置２０Ｂにより復号された画像データに応じた画像の再生を行う際に、画素単位で表示／非表示の制御を行う際に使用される。
【００２５】
圧縮符号化装置１０Ｂのデータ変換回路は、データ書き換え部１１０ＢとＤＣＴ演算部１２０Ｂとで構成されている。データ書き換え部１１０Ｂは、圧縮符号化対象として与えられる二次元サンプル列に不使用サンプルが含まれているか否かをマスクデータを参照して判定し、含まれている場合には、当該不使用サンプルを後段の非可逆圧縮符号化回路にて行われる処理に適した値に書き換えて出力するデータ書き換え処理（図４参照）を実行する。このデータ書き換え処理の詳細については後に明らかにする。
【００２６】
ＤＣＴ演算部１２０Ｂは、データ書き換え部１１０Ｂにより不使用サンプルの書き換えが行われた二次元サンプル列にＤＣＴを施し、二次元の変換係数列を生成する。一般に、Ｎ次正方行列で表わされる二次元サンプル列に対するＤＣＴは、このサンプル列の各列に対して、前掲数１に示すａｋｎを第ｋ行第ｎ列成分とするＮ次正方行列である変換行列Ａを左から乗算した後に、その乗算結果であるＮ次元正方行列の各行に同変換行列Ａの転置行列ＡＴを右から乗算することで実現される。したがって、二次元サンプル列Ｘと変換係数列Ｙとの間には、以下の数３に示す関係があり、ＤＣＴ演算部１２０Ｂは、以下の数３に示す演算を行って変換係数列Ｙを算出する。なお、数３において行列ＡＴは変換行列Ａの転置行列である。そして、ＤＣＴ演算部１２０Ｂは、変換係数列Ｙの要素を直流成分から順に図５に示すようにジグザグにスキャンし、このスキャン順に量子化部１３０へ出力する。このようにしてＤＣＴ演算部１２０Ｂから出力される変換係数列は量子化部１３０による量子化および可変長符号化部１４０による可変長符号化を経て非可逆圧縮符号化データに変換され、復号装置２０Ｂへ伝送される。
【数３】
2011135213.tif 000005
【００２７】
復号装置２０Ｂでは、前述した第１実施形態と同様に、可変長符号復号部２１０による復号および逆量子化部２２０による逆量子化が上記非可逆圧縮符号化データに施される。そして、復号装置２０Ｂの逆ＤＣＴ演算部２３０Ｂは、逆量子化部２２０から順次与えられるデータを前述したジグザグスキャン（図５参照）の逆順に配列して変換係数列Ｙ´を復元し、この変換係数列Ｙ´に対して数３の逆演算（すなわち、以下の数４に示す演算）を施して二次元サンプル列Ｘ´を復元して再生装置３０Ｂへ出力する。なお、数４においてＡ−１は変換行列Ａの逆行列であり、（ＡＴ）−１は行列ＡＴの逆行列である。
【数４】
2011135213.tif 000006
【００２８】
ＤＣＴ演算部１２０Ｂは変換係数列の要素を図５に示す順に出力するのであるから、当該変換係数列が図５に示すスキャン順に連続してゼロが現れるようなものとなっていれば（例えば、図５に示すスキャン順に高周波成分がゼロとなっている）、ゼロランレングス符号化の効果により高い圧縮率が得られると期待される。このため、本実施形態のデータ書き換え部１１０Ｂは、ＤＣＴ演算部１２０Ｂによる演算を経た変換係数列を図５に示すスキャン順で走査した場合にその高周波成分が連続してゼロとなるようにするデータ書き換え処理を実行するように構成されているのである。以下、離散コサイン変換の処理単位ブロックが４×４サンプルであり、数５に示すように当該処理単位ブロック内に不使用サンプルｘ´ｉｊが６個含まれている場合において、変換係数列Ｙの６個の高周波成分ｙ´ｉｊに任意の値（例えば、ゼロ）を設定する場合を例にとって、データ書き換え部１１０Ｂが実行するデータ書き換え処理の内容を説明する。なお、本実施形態では、処理単位ブロックを４×４サンプルとしたが、この処理単位ブロックの大きさについてはデータ変換回路の演算能力との関係で適宜定めるようにすれば良く、例えば、８×８サンプル等であっても勿論良い。
【数５】
2011135213.tif 000007
【００２９】
Ｗ＝ＡＸとおくと、前掲数３はＹ＝ＷＡＴと表わすことができる。データ書き換え部１１０Ｂは、Ｗ＝ＡＸおよびＹ＝ＷＡＴの各式を利用して不使用サンプルｘ´ｉｊの値を確定する。図４は、データ書き換え部１１０Ｂが実行するデータ書き換え処理の流れを示すフローチャートである。図４に示すように、データ書き換え部１１０Ｂは、まず、処理単位ブロックＸ内の不使用サンプルの値が全て一意に確定したか否かを判定し（ステップＳＡ１００）、その判定結果がＮｏである間、ステップＳＡ１１０〜ステップＳＡ１４０の処理を実行する。本動作例では、処理単位ブロックには６個の不使用サンプルが含まれており、当該データ書き換え処理の開始時点では、何れの不使用サンプルの値も確定していないのであるからステップＳＡ１００の判定結果はＮｏになり、ステップＳＡ１１０の処理が実行される。
【００３０】
ステップＳＡ１１０では、データ書き換え部１１０Ｂは、ＷとＸの互いに対応する列にについて、「値が未確定の要素が４個、かつ、値が確定済みの要素が４個」という条件（以下、条件Ａ）を満たすものがあるか否かを判定する。そして、データ書き換え部１１０Ｂは、ステップＳＡ１１０の判定結果がＹｅｓである場合には、ステップＳＡ１２０の処理を実行した後にステップＳＡ１３０の処理を実行し、ステップＳＡ１１０の判定結果がＮｏである場合には、ステップＳＡ１２０の処理を実行することなくステップＳＡ１３０の処理を実行する。このステップＳＡ１１０の判定を行うのは、上記条件Ａを満たす列については、後述するステップＳＡ１２０の処理を実行することにより、それらの列の未確定要素を確定することができるからである。
【００３１】
当該データ書き換え処理の開始時点では、Ｗに関しては全ての要素が未確定である。一方、Ｘについては、数５に示すように第４列の要素は全て値が確定しているから、Ｘの第４列とＷの第４列とが上記条件Ａを満たす。したがって、ステップＳＡ１１０の判定結果はＹｅｓになり、ＸおよびＷの各々の第４列に関してステップＳＡ１２０の処理が実行される。このステップＳＡ１２０では、データ書き換え部１１０Ｂは、ステップＳＡ１１０にて条件Ａを満たすと判定されたＸおよびＷの列の関係を利用して、それらの列の未確定要素の値を算出する。具体的には、データ書き換え部１１０Ｂは、Ｘの第４列とＷの第４列とについて以下の数６に示す演算を行うことにより上記４つの未確定要素の値を算出する。
【数６】
2011135213.tif 000008
【００３２】
図４のステップＳＡ１３０では、データ書き換え部１１０Ｂは、ＷとＹの互いに対応する行について上記条件Ａを満たすものがあるか否かを判定する。そして、データ書き換え部１１０Ｂは、ステップＳＡ１３０の判定結果がＮｏである場合には、即座にステップＳＡ１００以降の処理を繰り返し実行し、ステップＳＡ１３０の判定結果がＹｅｓである場合には、ステップＳＡ１４０の処理を実行した後にステップＳＡ１００以降の処理を繰り返し実行する。第４列の各要素の値が確定したＷとＹとでは、各々の第４行が上記条件Ａを満たす。ｗ４４、ｙ´４２、ｙ´４３およびｙ´４４の４つが値の確定した要素であり、ｙ４１、ｗ４１、ｗ４２、およびｗ４３の４つが未確定の要素だからである。したがって、本動作例ではステップＳＡ１３０の判定結果はＹｅｓになり、ステップＳＡ１４０の処理が実行される。
【００３３】
ステップＳＡ１４０では、データ書き換え部１１０Ｂは、ステップＳＡ１３０にて条件Ａを満たすと判定されたＹおよびＷの行の関係を利用して、それらの行の未確定要素の値を算出する。Ｗの第４行とＹの第４行との間には、以下の数７に示す関係があり、データ書き換え部１１０Ｂは、数７に示す４本の方程式のうちのｙ´４２＝・・・、ｙ´４３＝・・・およびｙ´４４＝・・・という３本の方程式からｗ４１、ｗ４２、およびｗ４３を掃き出し法等により算出する。そして、データ書き換え部１１０Ｂは、このようにして求まるｗ４１、ｗ４２、およびｗ４３と、ｗ４４と、を数７に示す４本の方程式のうちのｙ４１＝・・・という方程式の右辺に代入してｙ４１を算出する。
【数７】
2011135213.tif 000009
【００３４】
以降、データ書き換え部１１０Ｂは、ステップＳＡ１００の判定結果がＹｅｓになるまで、ステップＳＡ１１０〜ステップＳＡ１４０の処理を繰り返し実行する。例えば、２度目に実行されるステップＳＡ１１０の処理では、ＷとＸの第２列について判定結果がＹｅｓとなり、ステップＳＡ１２０の処理が実行される。第４行の各要素の値が全て確定したＷとＸとの関係では各々の第２列が上記条件Ａを満たす（ｗ１２、ｗ２２、ｗ３２およびｘ´２２の４つが未確定の要素であり、ｘ１２、ｘ３２、ｘ４２およびｗ４２の４つが確定済みの要素）からである。Ｗの第２列とＸの第２列との間には、以下の数８に示す関係があり、上記２度目に実行されるステップＳＡ１２０では、データ書き換え部１１０Ｂは、数８の４本の方程式のうちのｗ４２＝・・・という式からｘ´２２を算出し、このようにして求まるｘ´２２と、確定値であるｘ１２、ｘ３２およびｘ４２とをｗ１２＝・・・、ｗ２２＝・・・、およびｗ３２＝・・・という３本の方程式の各々の右辺に代入することにより、ｗ１２、ｗ２２およびｗ３２の各々を算出する。
【数８】
2011135213.tif 000010
【００３５】
そして、処理単位ブロックを表す二次元サンプル列ＸについてステップＳＡ１００の判定結果がＹｅｓになると、データ書き換え部１１０ＢはステップＳＡ１５０の処理を実行する。このステップＳＡ１５０では、データ書き換え部１１０ＢはステップＳＡ１１０〜ステップＳＡ１４０までの処理で算出した値で二次元サンプルＸの各不使用サンプルを書き換え、その書き換え後の二次元サンプル列ＸをＤＣＴ演算部１２０Ｂに出力する。
以上がデータ書き換え部１１０Ｂの実行するデータ書き換え処理の内容である。
【００３６】
上記データ書き換え処理を経た二次元サンプル列はＤＣＴ演算部１２０Ｂによって変換係数列Ｙに変換され、この変換係数列Ｙを構成する各変換係数は図５に示すジグザグスキャンのスキャン順に量子化部１３０に出力され、以降、量子化部１３０による量子化および可変長符号化部１４０による可変長符号化（ゼロランレングス符号化を併用した可変長符号化）を経て非可逆圧縮符号化データに変換される。なお、本実施形態の演算手法によれば、不使用サンプルの値が全て確定するのと同時に、変換係数列Ｙの算出も完了するのであるから、この変換係数列ＹをＤＣＴ演算部１２０Ｂへ引渡し、ＤＣＴ演算部１２０Ｂではジグザグスキャンのみを実行するようにしても勿論良い。
【００３７】
このように数５のｙ´ｉｊが全てゼロとなるように上記データ書き換え処理を行うことによって、ゼロランレングス符号化の効果により上記圧縮符号化データの圧縮率が従来よりも向上するのである。一方、復号装置２０Ｂにおいては、前述した第１実施形態と同様に、不使用サンプルについては圧縮符号化前の値とは大きく異なる値に復号される可能性があるものの、不使用サンプル以外のサンプルについてはその圧縮符号化前とほぼ等しい値に復号される。不使用サンプルについては再生装置３０Ｂにおける画像の再生の際には使用されない（表示されない）ため、特段の影響が生じることはなく、不使用サンプルを他のサンプルの平均値で置き換えて圧縮符号化する場合のような擬似エッジが生じることもない。
【００３８】
このように本実施形態によれば、画像データのような二次元サンプル列の圧縮符号化においても、その二次元サンプル列に使用されない冗長な要素が含まれている場合に、復号側に改変を加えることなく圧縮率を向上させることが可能になり、また、圧縮符号化および復号化を経た画像データの再生品質の劣化を従来よりも小さくすることが可能になる。なお、本実施形態では、圧縮符号化対象の画像データがモノクロ画像データである場合について説明したが、カラー画像データであっても勿論良い。例えば、各画素の色をＲ（Red
）、Ｇ（Green）、およびＢ(Blue)の各色成分の強度で表わすＲＧＢ画像データが圧縮符号化の対象である場合には、そのＲＧＢ画像データを各色成分の画像データに分解し（或いは、さらにＹＵＶ等の他の表色系の画像データに変換し）、それら色成分の各々についてデータ書き換え処理、データ変換処理、量子化処理および可変長符号化処理を施して圧縮符号化データを生成するようにすれば良い。
【００３９】
（Ｃ：第３実施形態）
次いで本発明の第３実施形態について説明する。
本実施形態は、前述した第２実施形態と同様に画像データ（二次元サンプル列）についての圧縮符号化を行うものであるが、変換行列Ａの対称性を利用してより少ない演算量でデータ書き換え処理を実現している点に特徴がある。より詳細に説明すると、離散コサイン変換の変換行列Ａは、以下の数９に示す対称性を有しており、本実施形態ではこの対称性を利用してデータ書き換え処理の演算量を削減するのである。
【数９】
2011135213.tif 000011
【００４０】
図６は、本発明の第３実施形態に係るデータ変換回路を含む圧縮符号化装置１０Ｃを有し、画像データの圧縮符号化伝送を行うシステムの構成例を示す図である。図６と図３とを対比すれば明らかように、本実施形態は、圧縮符号化装置１０Ｂに代えて圧縮符号化装置１０Ｃを設けた点が第２実施形態と異なり、この圧縮符号化装置１０Ｃは、データ書き換え部１１０Ｂに代えてデータ書き換え部１１０Ｃを有している点が圧縮符号化装置１０Ｂと異なる。
以下、第２実施形態との相違点であるデータ書き換え部１１０Ｃを中心に説明する。
【００４１】
データ書き換え部１１０Ｃは、前述したデータ書き換え部１１０Ｂと同様に、圧縮符号化対象として与えられる二次元サンプル列に不使用サンプルが含まれている場合に、当該不使用サンプルを非可逆圧縮符号化回路にて行われる処理に適した値に書き換えて出力するデータ書き換え処理を実行する。ただし、データ書き換え部１１０Ｃが実行するデータ書き換え処理では、変換行列Ａの対称性を利用して演算量を削減することができるようにその処理手順が工夫されている点に特徴がある。以下では、データ書き換え部１１０Ｃが実行するデータ書き換え処理（すなわち、二次元サンプル列についてのデータ書き換え処理）の説明に先立って、一次元サンプル列Ｘ＝｛ｘ１、ｘ２・・・ｘＮ｝Ｔのデータ書き換えを例にとって、変換行列Ａの対称性を利用して演算量を削減する手法を説明する。
【００４２】
変換行列Ａが数９に示す対称性を有している状況下で変換係数列Ｙ＝｛ｙ１、ｙ２・・・ｙＮ｝Ｔの第２Ｋ行目の成分（すなわち、ｙ２ｋ）をゼロとするには、一次元サンプル列Ｘについて、その中央から前後に向う方向に対称となるように（すなわち、ｘＮ／２−ｋ＝ｘＮ／２＋ｋとなるように）要素の書き換えを行えば良い。このような書き換えが常に可能であるとは限らないが、ＸにてＮ／２個以上のサンプルが使用されておらず、かつ、中心から見て対称の位置にある要素の何れか（すなわち、ｘＮ／２＋ｋとｘＮ／２−ｋのいずれか一方）が不使用サンプルであれば、上記のような書き換えが可能となる。上記不使用サンプルをその対称の位置にあるサンプルで書き換えれば良いからある。このような書き換えを行うことによって変換係数列Ｙにて現れるゼロの個数を増加させ、この変換系数列Ｙに対する圧縮符号化（量子化と可変長符号化を併用した圧縮符号化）の圧縮率を向上させることができると期待される。ここで注目すべき点は、本実施形態においては、第１実施形態とは異なり連立方程式を解くことなく不使用サンプルのサンプル値の書き換えを行うことが可能な点である。つまり、本実施形態によれば連立方程式を解く演算の分だけ、第１実施形態に比較して演算量を削減することができるのである。
以上が一次元サンプル列に対する本実施形態のデータ書き換え処理の内容である。
【００４３】
二次元サンプル列について本実施形態のデータ書き換え処理を行う場合には、その二次元サンプル列の各行および各列について上記のような書き換えを行うことが考えられるため、行方向についてのみ書き換えを行った場合、列方向についてのみ書き換えを行った場合、行方向および列方向の両者について書き換えを行った場合の３つの場合があり得る。例えば、左右方向に折り返せば変換係数列Ｙの第ｉ行第２ｊ列成分をゼロにすることができ、上下方向に折り返せば第２ｉ行第ｊ列成分をゼロにすることができる。そして、上下左右に折り返せば変換係数列Ｙの要素は第２ｉ＋１行第２ｊ＋１列成分以外を除いて全てゼロになるため、変換係数列Ｙの要素の３／４をゼロとすることができる。以下、２５６×２５６画素の８ビットモノクロ画像（図８（Ａ）参照：図８（Ａ）では線画で表現されているが、実際にはミニトマトが実っている様子を撮像した自然画像）を圧縮符号化の対象とし、この画像に対して図８（Ｂ）に示すマスク（図８（Ｂ）では、マスクされる画素が塗りつぶしで表現されている）が適用される場合を例にとって、データ書き換え部１１０Ｃが実行するデータ書き換え処理について説明する。
【００４４】
図７は、本実施形態のデータ書き換え部１１０Ｃが実行するデータ書き換え処理の流れを示すフローチャートである。図７に示すデータ書き換え処理は、前述した図４のデータ書き換え処理と同様に離散コサイン変換の実行単位となる処理単位ブロック（８×８サンプルのブロック）毎に実行される処理である。データ書き換え部１１０Ｃは、図７に示すように、まず、処理単位ブロックに含まれている不使用サンプルを所定値に書き換える初期化処理を実行する（ステップＳＢ１００）。上記所定値としてどのような値を用いるのかについては種々の態様が考えられる。例えば、サンプル値としては現れ得ない値（例えば、負の値）を上記所定値とする態様や、処理単位ブロックに含まれる不使用サンプル以外のサンプルの平均値を上記所定値とする態様などである。本実施形態では、後者の態様（処理単位ブロックに含まれる不使用サンプル以外のサンプルの平均値を上記所定値とする態様）が採用されている。
【００４５】
次いで、データ書き換え部１１０Ｃは、処理単位ブロックを４×４画素の小ブロックに分割し（ステップＳＢ１１０）、それら小ブロックの全てが不使用ブロックであるか否かを判定する（ステップＳＢ１２０）。不使用ブロックとは、当該ブロックに含まれるサンプル（本実施形態では、４×４＝１６個のサンプル）の全てが不使用サンプルであるものをいう。データ書き換え部１１０Ｃは、小ブロックに含まれる１６個のサンプルの各々について不使用サンプルであるか否かをマスクデータを参照して判定することで、その小ブロックが不使用ブロックであるか否かを判定することができる。また、以下では不使用ブロックではない小ブロック（すなわち、不使用サンプルではないサンプルを少なくとも１つ有する小ブロック）を「使用ブロック」と呼ぶ。なお、本実施形態では、処理単位ブロックを構成する各小ブロックについての「不使用ブロック」であるか否かの判定を、マスクデータを参照して行った。しかし、ステップＳＢ１００の初期化処理において不使用サンプルのサンプル値を負の値等のサンプル値としては現れ得ない値に書き換えている場合には、マスクデータを参照することなく「不使用ブロック」であるか否かの判定を行うことができる。
【００４６】
ステップＳＢ１２０の判定結果がＹｅｓである場合（すなわち、４つの小ブロックの全てが不使用ブロックである場合）は、データ書き換え部１１０Ｃは処理単位ブロックを表す二次元サンプル列の全てのサンプルを０に書き換えてＤＣＴ演算部１２０Ｂへ出力する（ステップＳＢ１３０）。この場合は、数３を参照すれば明らかように全ての要素が０である８×８の変換係数列Ｙが得られることとなる。
【００４７】
ステップＳＢ１２０の判定結果がＮｏである場合は、データ書き換え部１１０Ｃは、処理単位ブロックに含まれている不使用ブロックの数が３であるのか、２であるのか、それとも１または０であるのか、を判定する（ステップＳＢ１４０）。不使用ブロックの数が１または０である場合には、データ書き換え部１１０Ｃは特段の処理を行うことなく当該データ書き換え処理を終了する。このため、不使用ブロックの数が１または０である場合には、初期化処理にて不使用サンプルに所定値が設定された二次元サンプル列がＤＣＴ演算部１２０Ｂに与えられることになる。なお、ステップＳＢ１００の初期化処理において、不使用サンプルのサンプル値を負の値等のサンプル値としては現れ得ない値に書き換えている場合には、さらにそれら不使用サンプルのサンプル値を、処理単位ブロック（或いは当該不使用サンプルが属する小ブロック）に属する不使用サンプル以外のサンプルのサンプル値の平均値に書き換えた後にＤＣＴ演算部１２０Ｂに与えるようにすれば良い（不使用ブロックが２個または３個である場合に実行するコピー処理においても同様）。
【００４８】
４つの小ブロックのうちの３つが不使用ブロックである場合は、データ書き換え部１１０Ｃは、残りの小ブロック（すなわち、使用ブロック）を左右反転して右隣或いは左隣の不使用ブロックにコピーした後、さらに、それら２つの小ブロックを上下反転して上または下側に並んでいる２個の未使用ブロックにコピーする（ステップＳＢ１５０）。その結果、処理単位ブロックを表わすサンプル列Ｘは数１０に示すものに書き換えられることとなり、このサンプル列Ｘに対して離散コサイン変換を施すと、数１１に示す変換係数列Ｙが得られることとなる。数１１を参照すれば明らかように、この変換係数列Ｙにおいては３／４の要素（変換係数）がゼロとなっている。
【数１０】
2011135213.tif 000012
【数１１】
2011135213.tif 000013
【００４９】
４つの小ブロックのうちの２つが不使用ブロックである場合は、データ書き換え部１１０Ｃは、これら不使用ブロックの並び方に応じて使用ブロックを不使用ブロックにコピーする（ステップＳＢ１６０）。より詳細に説明すると、不使用ブロックが２つである場合は、それら２つの不使用ブロックは、横に並んでいるか（ケース１）、縦に並んでいるか（ケース２）、または斜めに並んでいるか（ケース３）の何れかである。ケース１の場合は、データ書き換え部１１０Ｃは、横に並んでいる２つの使用ブロックを縦方向に反転して不使用ブロックにコピーする。その結果、処理単位ブロックを表わすサンプル列Ｘは数１２に示すものに書き換えられることとなり、このサンプル列Ｘに対して離散コサイン変換を施すことにより、数１３に示す変換係数列Ｙが得られるのである。なお、詳細な説明は省略するが、上述したケース２の場合は、縦に並んでいる２つの小ブロックを横に反転してコピーすれば良く、ケース３の場合は、縦横どちらの方向にコピーしても良い。
【数１２】
2011135213.tif 000014
【数１３】
2011135213.tif 000015
【００５０】
以上のようにして得られる変換係数列Ｙに対して量子化および可変長符号化を施すことにより非可逆圧縮符号化データが得られるのである。ここで、量子化係数を１０として量子化を行った後の情報量を量子化後の変換係数の数値の度数分布で見積もると、その情報量は約８２７３９ビットとなり、ＰＳＮＲ（Peak signal-to-noise ratio）は４０．４６デシベルとなった。ＰＳＮＲは画質を表わす指標であり、値が大きいほど画質が良いことを示す。これに対して、マスクされる部分の画素値をマスクされない部分の画素値の平均値で置き換えて離散コサイン変換を施し、その後、量子化および可変長符号化を施す従来の圧縮符号化方式では、上記情報量は約８３４７９ビット、ＰＳＮＲ＝４０．４１デシベルとなった。また、図８（Ｃ）は、従来の方式の圧縮符号化および復号化を経た画像データの表す不使用サンプル以外のサンプル（描画に使用される画素）のうち、圧縮符号化前の画像（以下、原画像）におけるものとの誤差が本実施形態におけるものよりも大きいものの分布（図８（Ｃ）では、該当画素をハッチングで表示）を表わした図であり、図８（Ｄ）は、本実施形態の方式のほうが誤差が大きいものの分布（ハッチングで表示）を表わした図である。不使用サンプル以外のサンプルについて、圧縮前の画像と、圧縮符号化および復号化を経た画像について誤差を求めたところ、従来方式の方が誤差の絶対値が小さい画素（サンプル）が１９９サンプル、本実施形態による方式の方が誤差の絶対値が小さいサンプルが３１０サンプルとなっており、本実施形態の方式による方が誤差の大きい画素が少なくなっていた。このように、本実施形態によれば従来の圧縮符号化方式に比較して情報量の削減および再生品質の向上を計ることができるのである。
【００５１】
以上説明したように変換行列Ａが何らかの対称性を有しているのであれば、圧縮符号化対象のサンプル列に含まれる不使用サンプルの値を連立方程式を解くことなく書き換えることが可能になり、演算量を削減することができる。加えて、本実施形態においても復号側に何らの改変を加える必要はないことは言うまでも無い。つまり、本実施形態によれば、圧縮符号化の対象となる画像データ（二次元サンプル列）に不使用サンプルが含まれている場合に、復号側に改変を加えることなく圧縮率を向上させ、圧縮符号化および復号化を経た画像データの再生品質の劣化を従来よりも小さくすることが可能になる。
【００５２】
（Ｄ：変形）
以上本発明の各実施形態について説明したが、これら実施形態に以下に述べる変形を加えても勿論良い。
（１）上述した各実施形態では、音声データ或いは画像データの非可逆圧縮符号化（量子化と可変長符号化とを併用した非可逆圧縮符号化）の前処理に本発明を適用したが、音声データ或いは画像データの可逆圧縮符号化（例えば、量子化を省略し可変長符号化のみを行う圧縮符号化）の前処理に本発明を適用しても勿論良い。
【００５３】
（２）上述した第１実施形態（或いは第２実施形態）では、ＤＣＴ演算部１２０Ａ（或いは、ＤＣＴ演算部１２０Ｂ）の出力データ列の高周波成分が不使用サンプルのサンプル数と同じ数だけ連続して０になるように当該ＤＣＴ演算部へ入力されるサンプル列に含まれる不使用サンプルの値を書き換えた。これは、ＤＣＴ演算部の後段で実行される圧縮符号化処理に、ゼロランレングス符号化を併用した可変長符号化が含まれており、上記のように連続して現れるゼロの個数を多くすることで圧縮率の向上が期待されたからである。ＤＣＴ演算部の後段で実行される符号化アルゴリズムが、上記ゼロランレングス符号化を併用した可変長符号化とは異なるものである場合には、上記不使用サンプルの書き換えを行うことでＤＣＴ演算部の出力データ列の任意の位置のデータを任意の値に書き換えることができるのであるから、上記符号化アルゴリズムの特徴に応じて高い圧縮率が得られるように不使用サンプルの書き換えを行えば良い。
【００５４】
（３）上述した第１実施形態（或いは第２実施形態）では、ＤＣＴ演算部１２０Ａ（或いは、ＤＣＴ演算部１２０Ｂ）の出力データ列の高周波成分が不使用サンプルのサンプル数と同じ数だけ連続して０になるように当該ＤＣＴ演算部へ入力されるサンプル列に含まれる不使用サンプルの値を書き換えた。しかし、上記出力データ列にて予め定められた値となるデータ数が上記不使用サンプルのサンプル数より少なくなるようにしても勿論良い。このような場合には、上記任意の値を設定するデータの個数と不使用サンプルのサンプル数の差分に応じた個数の不使用サンプルを、使用されるサンプルの平均値で置き換える等した後に残りの不使用サンプルの値を算出するようにすれば良い。要は、不使用サンプルの個数を上限としてＤＣＴ演算部の出力データ列にて所定の位置を占めるデータが所定の値となるように、それら不使用サンプルの値を書き換えるような態様であれば良い。
【００５５】
（４）上述した実施形態では、本発明の特徴を顕著に示すデータ変換処理を実行するデータ変換回路（例えば、データ書き換え部１１０ＡとＤＣＴ演算部１２０Ａとからなるデータ変換回路や、データ書き換え部１１０Ｂ（或いはデータ書き換え部１１０Ｃ）とＤＣＴ演算部１２０Ｂとからなるデータ変換回路）が圧縮符号化装置に予め組み込まれていた。しかし、上記各データ変換回路を単体で提供するようにしても勿論良い。これらデータ変換回路と、量子化を実行する量子化部および可変長符号化を実行する可変長符号化部とを組み合わせ、これら各回路をケーブルで接続して図１や図３、或いは図６に示す構成とすることで上記各実施形態の圧縮符号化装置を構成することができるからである。また、既存の圧縮符号化装置が有するデータ変換回路（例えばＤＣＴのみを実行する回路）を上記各データ変換回路と交換することで、既存の圧縮符号化装置に上記各実施形態の圧縮符号化装置と同一の機能を付与することが可能になる。
【００５６】
（５）上述した各実施形態では、本発明の特徴を顕著に示すデータ変換処理を実行するデータ変換回路が圧縮符号化装置に組み込まれていた。しかし、ＣＰＵ等のコンピュータをデータ書き換え部１１０ＡおよびＤＣＴ演算部１２０Ａ（或いは、データ書き換え部１１０ＢおよびＤＣＴ演算部１２０Ｂ、或いは、データ書き換え部１１０ＣおよびＤＣＴ演算部１２０Ｂ）として機能させることを特徴とするプログラムを提供しても良い。例えば、ＣＤ−ＲＯＭなどのコンピュータ読み取り可能な記録媒体に上記プログラムを書き込んで配布したり、インターネットなどの電気通信回線経由のダウンロードにより上記プログラムを配布するのである。このようにして配布されるプログラムを一般的なコンピュータにインストールし、そのプログラムにしたがって上記コンピュータを作動させることによって、そのコンピュータに上記各実施形態のデータ変換回路と同一の機能を実現させることが可能になる。
【符号の説明】
【００５７】
１０Ａ，１０Ｂ，１０Ｃ…圧縮符号化装置、１１０Ａ，１１０Ｂ，１１０Ｃ…データ書き換え部、１２０Ａ，１２０Ｂ…ＤＣＴ演算部、１３０…量子化部、１４０…可変長符号化部、１５０Ａ，１５０Ｂ…可逆圧縮符号化部、２０Ａ，２０Ｂ…復号装置、２１０…可変長符号復号部、２２０…逆量子化部、２３０Ａ、２３０Ｂ…逆ＤＣＴ演算部、２４０Ａ，２４０Ｂ…可逆圧縮符号復号部、３０Ａ，３０Ｂ…再生装置。
【図１】
2011135213.tif 000016
【図２】
2011135213.tif 000017
【図３】
2011135213.tif 000018
【図４】
2011135213.tif 000019
【図５】
2011135213.tif 000020
【図６】
2011135213.tif 000021
【図７】
2011135213.tif 000022
【図８】
2011135213.tif 000023