(57)【要約】【課題】出現頻度の低いシンボルを符号化の対象から除外することにより、符号化効率を向上させる。【解決手段】制限付き正規化部２１０は、複数の正規化係数のうち、信号線１０１から供給された複数の入力値の絶対値のうちの最大値に最も近い正規化係数を選択して、その選択された正規化係数により複数の入力値を正規化する。量子化部２２０は、制限付き正規化部２１０から出力された複数の正規化値を量子化することによって、複数の量子化値を生成する。符号表保持部２３０は、複数の量子化値に対する出現確率が小さいほど長い符号長の可変長符号が複数の量子化値の組合せごとに割り当てられた符号表を保持する。符号出力部３００は、量子化部２２０により生成された複数の量子化値の全てが零である場合には、符号表保持部２３０に保持された符号表に含まれる複数の量子化値に対応する可変長符号を多重化部２４０に出力する。【選択図】図２
2011082878.tif 000002
【特許請求の範囲】
【請求項１】
入力信号における複数の入力値の絶対値のうちの最大値に最も近い正規化係数と前記最大値よりも大きい正規化係数のうち前記最大値に最も近い正規化係数とのいずれか一方により前記複数の入力値を除算することによって複数の正規化値を算出する正規化部と、
前記複数の正規化値を量子化することによって複数の量子化値を生成する量子化部と、
前記複数の量子化値に対する出現確率が小さいほど長い符号長の可変長符号が割り当てられた符号表を保持する符号表保持部と、
前記複数の量子化値の全てが零である場合には他の前記複数の量子化値の組合せに割り当てられた前記可変長符号を前記符号表に基づいて出力する符号出力部と
を具備する符号化装置。
【請求項２】
前記符号出力部は、前記複数の量子化値の全てが零である場合には前記符号表における前記複数の量子化値の組合せのうち１つのみ零以外の値である複数の量子化値に対応する前記可変長符号を前記符号表に基づいて出力する請求項１記載の符号化装置。
【請求項３】
前記符号出力部は、
前記複数の量子化値の全てが零である場合には前記符号表における前記複数の量子化値の組合せのうちいずれか１つの組合せを選択して前記選択された組合せの複数の量子化値に置き換える量子化値置換部と、
前記量子化値置換部から出力された前記複数の量子化値を前記符号表に基づいて前記可変長符号を生成することによって符号化する符号化部と
を備える請求項１記載の符号化装置。
【請求項４】
前記符号表保持部は、前記符号表としてハフマン符号の符号表を保持する請求項１記載の符号化装置。
【請求項５】
前記正規化部は、ほぼ零である正規化係数が含まれた前記正規化係数により前記複数の入力値を除算する請求項１記載の符号化装置。
【請求項６】
複数の量子化値の全てが零である前記複数の量子化値に対応する可変長符号を含まない符号表を保持する符号表保持部と、
前記複数の量子化値に対する出現確率に応じて生成された前記符号表に基づいて可変長符号を前記複数の量子化値に復号する復号部と、
前記復号部により復号された前記複数の量子化値が逆量子化されることによって生成された複数の正規化値と当該複数の正規化値に対応する正規化係数とに基づいて入力信号における複数の入力値として複数の出力値を生成する逆正規化部と
を具備する復号装置。
【請求項７】
入力信号における複数の入力値の絶対値のうちの最大値に最も近い正規化係数と前記最大値よりも大きい正規化係数のうち前記最大値に最も近い正規化係数とのいずれか一方により前記複数の入力値を除算することによって複数の正規化値を算出する正規化部と、前記複数の正規化値を量子化することによって複数の量子化値を生成する量子化部と、前記複数の量子化値に対する出現確率が小さいほど長い符号長の可変長符号が割り当てられた符号表を保持する符号表保持部と、前記複数の量子化値の全てが零である場合には他の前記複数の量子化値の組合せに割り当てられた前記可変長符号を前記符号表に基づいて出力する符号出力部とを備える符号化装置と、
前記符号化装置における前記符号表と同一の符号表を保持する符号表保持部と、前記符号化装置から出力された前記可変長符号を前記同一の符号表に基づいて前記複数の量子化値に復号する復号部と、前記復号部により復号された前記複数の量子化値が逆量子化されることによって生成された複数の正規化値と当該複数の正規化値に対応する前記正規化係数とに基づいて前記複数の入力値として複数の出力値を生成する逆正規化部とを備える復号装置と
を具備する情報処理システム。
【請求項８】
複数の量子化値に対する出現確率が小さいほど長い符号長の可変長符号が割り当てられた符号表を保持する符号表保持部を備える符号化装置における符号化方法であって、
入力信号における複数の入力値の絶対値のうちの最大値に最も近い正規化係数と前記最大値よりも大きい正規化係数のうち前記最大値に最も近い正規化係数とのいずれか一方により前記複数の入力値を除算することによって複数の正規化値を算出する正規化手順と、
前記複数の正規化値を量子化することによって複数の量子化値を生成する量子化手順と、
前記複数の量子化値の全てが零である場合には他の前記複数の量子化値の組合せに割り当てられた前記可変長符号を前記符号表に基づいて出力する符号出力手順と
を具備する符号化方法。
【請求項９】
複数の量子化値に対する出現確率が小さいほど長い符号長の可変長符号が割り当てられた符号表を保持する符号表保持部を備える符号化装置において、
入力信号における複数の入力値の絶対値のうちの最大値に最も近い正規化係数と前記最大値よりも大きい正規化係数のうち前記最大値に最も近い正規化係数とのいずれか一方により前記複数の入力値を除算することによって複数の正規化値を算出する正規化手順と、
前記複数の正規化値を量子化することによって複数の量子化値を生成する量子化手順と、
前記複数の量子化値の全てが零である場合には他の前記複数の量子化値の組合せに割り当てられた前記可変長符号を前記符号表に基づいて出力する符号出力手順と
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システムに関し、特に可変長符号により符号化を行う符号化装置、これに対応する復号装置、および、符号化処理方法ならびに当該方法をコンピュータに実行させるプログラムに関する。
【背景技術】
【０００２】
従来、画像や音声などの情報を符号化することによって、その情報量を圧縮する符号化装置が数多く存在する。例えば、量子化データの生起確率に対応する出現頻度に基づいて作成されたハフマン符号表を参照して、量子化データの符号化を行う符号化装置が提案されている（例えば、特許文献１参照。）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平７−２１２２４３号公報（図１）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述の従来技術では、量子化データの出現頻度に基づいて作成されたハフマン符号表を参照して量子化データを符号化することによって、その符号化された量子化データのデータ量を圧縮することができる。このような符号化装置においては、符号の割当て対象となる量子化データに対応するシンボルの出現頻度が小さいものほど、符号長が長い符号が割り当てられる。このため、出現頻度が極めて低いシンボルに対しては、その出現頻度に応じた長い符号長が割り当てられることから、符号化効率が低下する場合がある。
【０００５】
本発明はこのような状況に鑑みてなされたものであり、出現頻度の低いシンボルを符号化の対象から除外することにより、符号化効率を向上させることを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、上記課題を解決するためになされたものであり、その第１の側面は、入力信号における複数の入力値の絶対値のうちの最大値に最も近い正規化係数と上記最大値よりも大きい正規化係数のうち上記最大値に最も近い正規化係数とのいずれか一方により上記複数の入力値を除算することによって複数の正規化値を算出する正規化部と、上記複数の正規化値を量子化することによって複数の量子化値を生成する量子化部と、上記複数の量子化値に対する出現確率が小さいほど長い符号長の可変長符号が割り当てられた符号表を保持する符号表保持部と、上記複数の量子化値の全てが零である場合には他の上記複数の量子化値の組合せに割り当てられた上記可変長符号を上記符号表に基づいて出力する符号出力部とを具備する符号化装置およびその処理方法ならびに当該方法をコンピュータに実行させるプログラムである。これにより、符号化単位である複数の量子化値の全てが零である場合には、それ以外の他の複数の量子化値の組合せに割り当てられた可変長符号を符号表に基づいて出力させるという作用をもたらす。
【０００７】
また、この第１の側面において、上記符号出力部は、上記複数の量子化値の全てが零である場合には上記符号表における上記複数の量子化値の組合せのうち１つのみ零以外の値である複数の量子化値に対応する上記可変長符号を上記符号表に基づいて出力するようにしてもよい。これにより、符号出力部により、複数の量子化値の全てが零である場合には、符号表に示された複数の量子化値の組合せのうち、１つのみ零以外の値である複数の量子化値に対応する可変長符号を符号表に基づいて出力させるという作用をもたらす。
【０００８】
また、この第１の側面において、上記符号出力部は、上記複数の量子化値の全てが零である場合には上記符号表における上記複数の量子化値の組合せのうちいずれか１つの組合せを選択して上記選択された組合せの複数の量子化値に置き換える量子化値置換部と、上記量子化値置換部から出力された上記複数の量子化値を上記符号表に基づいて上記可変長符号を生成することによって符号化する符号化部とを備えるようにしてもよい。これにより、量子化値置換部により、符号表に示された複数の量子化値の組合せのうち、無作為に選択された組合せの複数の量子化値に置き換えさせるという作用をもたらす。
【０００９】
また、この第１の側面において、上記符号表保持部は、上記符号表としてハフマン符号の符号表を保持するようにしてもよい。これにより、符号出力部において複数の量子化値に対応するハフマン符号を符号表に基づいて出力させるという作用をもたらす。
【００１０】
また、この第１の側面において、上記正規化部は、ほぼ零である正規化係数が含まれた上記正規化係数により上記複数の入力値を除算するようにしてもよい。これにより、正規化部において、ほぼ零に設定された正規化係数により複数の入力値を除算させるという作用をもたらす。
【００１１】
また、本発明の第２の側面は、複数の量子化値の全てが零である上記複数の量子化値に対応する可変長符号を含まない符号表を保持する符号表保持部と、上記複数の量子化値に対する出現確率に応じて生成された上記符号表に基づいて可変長符号を上記複数の量子化値に復号する復号部と、上記復号部により復号された上記複数の量子化値が逆量子化されることによって生成された複数の正規化値と当該複数の正規化値に対応する正規化係数とに基づいて入力信号における複数の入力値として複数の出力値を生成する逆正規化部とを具備する復号装置である。これにより、全てが零である複数の量子化値がシンボルとして含まれていない符号表に基づいて、可変長符号を複数の量子化値に復号させるという作用をもたらす。
【００１２】
また、本発明の第３の側面は、入力信号における複数の入力値の絶対値のうちの最大値に最も近い正規化係数と上記最大値よりも大きい正規化係数のうち上記最大値に最も近い正規化係数とのいずれか一方により上記複数の入力値を除算することによって複数の正規化値を算出する正規化部と、上記複数の正規化値を量子化することによって複数の量子化値を生成する量子化部と、上記複数の量子化値に対する出現確率が小さいほど長い符号長の可変長符号が割り当てられた符号表を保持する符号表保持部と、上記複数の量子化値の全てが零である場合には他の上記複数の量子化値の組合せに割り当てられた上記可変長符号を上記符号表に基づいて出力する符号出力部とを備える符号化装置と、上記符号化装置における上記符号表と同一の符号表を保持する符号表保持部と、上記符号化装置から出力された上記可変長符号を上記同一の符号表に基づいて上記複数の量子化値に復号する復号部と、上記復号部により復号された上記複数の量子化値が逆量子化されることによって生成された複数の正規化値と当該複数の正規化値に対応する上記正規化係数とに基づいて上記複数の入力値として複数の出力値を生成する逆正規化部とを備える復号装置とを具備する情報処理システムである。これにより、符号化装置において、符号化単位である複数の量子化値の全てが零である場合には、それ以外の他の複数の量子化値の組合せに割り当てられた可変長符号を符号表に基づいて出力させ、復号装置において、その可変長符号が符号化装置における符号表と同一の符号表に基づいて復号された複数の出力値を複数の入力値として生成させるという作用をもたらす。
【発明の効果】
【００１３】
本発明によれば、出現頻度の低いシンボルを符号化の対象から除外することにより、符号化効率を向上させることができるという優れた効果を奏し得る。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施の形態における情報処理システム１００の一構成例を示すブロック図である。
【図２】本発明の第１の実施の形態における符号化装置２００の一構成例を示すブロック図である。
【図３】本発明の第１の実施の形態における量子化値置換部３１０の一構成例を示すブロック図である。
【図４】本発明の第１の実施の形態における復号装置４００の一構成例を示すブロック図である。
【図５】本発明の第１の実施の形態における情報処理システム１００の動作例に関する概念図である。
【図６】従来のハフマン符号の符号表に関する図である。
【図７】図６で述べた条件により生成されたハフマン符号に関する図である。
【図８】本発明の第１の実施の形態における符号表保持部２３０および４３０に保持された符号表に関する図である。
【図９】図８で述べた条件により生成されたハフマン符号に関する図である。
【図１０】本発明の第１の実施の形態における符号化装置２００の符号化方法の処理手順例を示すフローチャートである。
【図１１】本発明の第１の実施の形態における復号装置４００の復号方法の処理手順例を示すフローチャートである。
【図１２】本発明の第１の実施の形態における情報処理システム１００による量子化値の置換に起因する誤差に関する概念図である。
【図１３】本発明の第２の実施の形態における情報処理システム１００による複数の量子化値の置換に起因する誤差に関する概念図である。
【図１４】本発明の第３の実施の形態におけるハフマン符号生成装置５００の一構成例を示すブロック図である。
【図１５】本発明の第３の実施の形態におけるハフマン符号生成装置５００の符号生成方法における処理手順例を示すフローチャートである。
【発明を実施するための形態】
【００１５】
以下、本発明を実施するための形態（以下、実施の形態と称する）について説明する。説明は以下の順序により行う。
１．第１の実施の形態（可変長符号化：全てが零である複数の量子化値を置換する例）
２．第２の実施の形態（可変長符号化：量子化値の置換に起因する誤差を低減する例）
３．第３の実施の形態（符号表生成処理：全てが零である複数の量子化値をシンボルから除外するハフマン符号の生成例）
【００１６】
＜１．第１の実施の形態＞
［情報処理システムの構成例］
図１は、本発明の第１の実施の形態における情報処理システム１００の一構成例を示すブロック図である。情報処理システム１００は、入力信号を符号化してその符号化された符号化データをネットワーク１１０に出力する符号化装置２００と、そのネットワーク１１０から伝送された符号化データを復号する復号装置４００とを備えている。
【００１７】
符号化装置２００は、画像または音声などの情報を含む入力信号における入力値を正規化および量子化して、その量子化された量子化値に対して可変長符号を割り当てることによって、符号化データを生成するものである。この符号化装置２００は、例えば、入力信号としての音響信号を周波数成分に変換して、その変換された周波数成分を正規化する。そして、符号化装置２００は、その正規化された周波数成分を量子化して、その量子化された量子化値をハフマン符号により符号化することによって、符号化データを生成する。
【００１８】
また、この符号化装置２００は、復号装置４００からの要求に応じて、ネットワーク１１０を介して復号装置４００に伝送するために、その符号化データを時間分割により多重化した符号列（ビットストリーム）を符号列出力線２０９に出力する。なお、符号化装置２００は、特許請求の範囲に記載の符号化装置２００の一例である。
【００１９】
ネットワーク１１０は、符号化装置２００と復号装置４００との間で通信を行うための通信網である。このネットワーク１１０は、符号化装置２００から出力された符号化列を、符号列入力線４０１を介して復号装置４００に伝送する。
【００２０】
復号装置４００は、符号列入力線４０１からの符号列を復号することによって、入力信号を復元するものである。この復号装置４００は、例えば、符号化データと、その符号化データを復号するための符号化情報とを分離して、その符号化データを復号することによって量子化値を生成する。そして、この復号装置４００は、その量子化値を逆量子化および逆正規化することによって音響信号の周波数成分を生成して、その生成された周波数成分を時間領域の信号に変換する。なお、復号装置４００は、特許請求の範囲に記載の復号装置の一例である。
【００２１】
このように、情報処理システム１００は、符号化装置２００において入力信号を符号化することによって、その入力信号の情報量が圧縮された符号化データを生成することができる。そして、情報処理システム１００は、復号装置４００においてその符号化データを復号することによって、入力信号を復元することができる。
【００２２】
これにより、情報処理システム１００は、入力信号を符号化データに変換することによって、情報量が圧縮された入力信号をネットワーク１１０に送信することができるため、ネットワーク１１０に対する負荷を軽減することができる。なお、情報処理システム１００は、特許請求の範囲に記載の信号処理システムの一例である。次に、情報処理システム１００における符号化装置２００の構成例について図面を参照して以下に説明する。
【００２３】
［符号化装置２００の構成例］
図２は、本発明の第１の実施の形態における符号化装置２００の一構成例を示すブロック図である。符号化装置２００は、制限付き正規化部２１０と、量子化部２２０と、符号表保持部２３０と、多重化部２４０と、符号出力部３００とを備える。また、符号出力部３００は、量子化値置換部３１０および符号化部３２０を備える。ここでは、信号線１０１を介して、入力信号における複数の入力値として、一定の周波数範囲ごとに分割された音響信号の周波数成分が順次供給されることを想定する。ここにいう複数の入力値とは、１つの符号を割り当てる符号化単位のことである。
【００２４】
制限付き正規化部２１０は、予め定められた複数の正規化係数に基づいて信号線１０１からの音響信号の周波数成分を一定の周波数範囲ごとに正規化することによって、その周波数範囲における複数の正規化値を算出するものである。すなわち、制限付き正規化部２１０は、複数の入力値を正規化するための所定数の正規化係数のうち、複数の入力値の絶対値の大きさに基づいて１つの正規化係数を選択して、その選択された正規化係数により複数の入力値を除算する。
【００２５】
この制限付き正規化部２１０は、複数の正規化係数のうち、例えば、一定の周波数範囲ごとの各周波数成分の絶対値のうちの最大値に最も近い正規化係数のみを選択するように制限する。このように正規化係数の選択を制限することによって、複数の量子化値の全てが零となる確率を低減することができる。
【００２６】
また、この制限付き正規化部２１０は、例えば、一定の周波数範囲ごとの各周波数成分の絶対値のうちの最大値よりも大きい正規化係数のうち、その最大値に最も近い正規化係数のみを選択するように制限する。この例では、複数の入力値の絶対値のうちの最大値に最も近い正規化係数であっても、その正規化係数が最大値よりも小さいときには、その最大値に最も近い正規化係数の次に大きな正規化係数を選択する。この場合においても、複数の量子化値の全てが零となる確率を低減することができる。
【００２７】
また、この制限付き正規化部２１０は、その選択された正規化係数により、複数の入力値である周波数範囲における各周波数成分を除算する。また、制限付き正規化部２１０は、信号線２１９を介して、その除算された周波数範囲における各周波数成分を、複数の正規化値として量子化部２２０に供給する。これとともに、制限付き正規化部２１０は、信号線２１８を介して、復号装置４００における復号処理の際に必要となるため、除算に用いた正規化係数を多重化部２４０に供給する。なお、制限付き正規化部２１０は、特許請求の範囲に記載の情報処理システムおよび符号化装置における正規化部の一例である。
【００２８】
量子化部２２０は、制限付き正規化部２１０からの周波数範囲ごとの複数の正規化値を量子化するものである。すなわち、この量子化部２２０は、複数の正規化値を量子化することによって、符号化単位である複数の量子化値を生成する。この量子化部２２０は、周波数範囲ごとに設定される量子化精度情報によって決定される量子化ステップ数により、周波数範囲における複数の正規化値の各々を離散値に変換する。
【００２９】
また、量子化部２２０は、信号線２２９を介して、その変換された離散値である整数値を、量子化値として量子化値置換部３１０に供給する。これとともに、量子化部２２０は、信号線２２８を介して、復号装置４００における復号処理の際に必要となる周波数範囲ごとの量子化精度情報を多重化部２４０に供給する。なお、量子化部２２０は、特許請求の範囲に記載の情報処理システムおよび符号化装置における量子化部の一例である。
【００３０】
符号表保持部２３０は、周波数範囲に含まれる複数の量子化値における組合せの出現確率が小さいほど、長い符号長の可変長符号が複数の量子化値の組合せごとに割り当てられた符号表を保持するものである。この符号表保持部２３０は、例えば、可変長符号の符号表として、ハフマン符号の符号表を保持する。
【００３１】
この符号表保持部２３０に保持された符号表には、複数の量子化値の組合せに割り当てられたハフマン符号が示されている。また、この符号表には、量子化値の全てが零である複数の量子化値にハフマン符号が割り当てられていない。すなわち、この符号表には、量子化値の全てが零である複数の量子化値に対応するハフマン符号が含まれていない。また、符号表保持部２３０は、保持している符号表を量子化値置換部３１０および符号化部３２０に出力する。なお、符号表保持部２３０は、特許請求の範囲に記載の情報処理システムおよび符号化装置における符号表保持部の一例である。
【００３２】
符号出力部３００は、符号表保持部２３０に保持された符号表に基づいて量子化部２２０からの複数の量子化値を可変長符号に変換して、その変換された可変長符号を符号化データとして出力するものである。この符号出力部３００は、複数の量子化値の全てが零である場合には、他の複数の量子化値の組合せに割り当てられた可変長符号を、符号表保持部２３０の符号表に基づいて出力する。
【００３３】
また、符号出力部３００は、全てが零でない複数の量子化値が量子化部２２０から供給された場合には、符号表保持部２３０に保持された符号表に基づいて、その複数の量子化値の組合せに対応する可変長符号を出力する。なお、符号出力部３００は、特許請求の範囲に記載の符号出力部の一例である。
【００３４】
量子化値置換部３１０は、量子化値の全てが零である複数の量子化値が量子化部２２０から供給された場合には、符号表保持部２３０の符号表に示された複数の量子化値の組合せのうち、いずれか１つの組合せに置き換えるものである。すなわち、量子化値置換部３１０は、全てが零である複数の量子化値が供給された場合には、それ以外の他の組合せの複数の量子化値であって、符号表保持部２３０に保持された符号表における複数の量子化値に、全てが零である複数の量子化値を置き換える。
【００３５】
この量子化値置換部３１０は、例えば、複数の量子化値の全てが零である場合には、符号表における複数の量子化値の組合せのうち、いずれか１つの組合せを無作為に選択して、その選択された組合せの複数の量子化値に置き換える。あるいは、この量子化値置換部３１０は、例えば、複数の量子化値を置き換えるたびに、直前に置き換えた複数の量子化値とは異なる組合せの複数の量子化値になるように置き換える。このように量子化値置換部３１０を設けるのは、制限付き正規化部２１０による正規化係数の選択を制限することによって、全てが零となる複数の量子化値の出現確率を低減させることはできるが、出現確率を完全に「０」にすることはできないためである。
【００３６】
また、量子化値置換部３１０は、全てが零である複数の量子化値以外の他の複数の量子化値の組合せが量子化部２２０から供給された場合には、量子化部２２０からの複数の量子化値をそのまま符号化部３２０に供給する。なお、量子化値置換部３１０は、特許請求の範囲に記載の量子化値置換部３１０の一例である。
【００３７】
符号化部３２０は、量子化値置換部３１０から出力された複数の量子化値を符号表保持部２３０における符号表に基づいて可変長符号を生成することによって、複数の量子化値を符号化するものである。すなわち、この符号化部３２０は、符号表保持部２３０に保持された符号表を参照して、量子化値置換部３１０から供給された複数の量子化値に対応するハフマン符号を生成する。また、符号化部３２０は、その生成されたハフマン符号を、符号化データとして多重化部２４０に出力する。なお、符号化部３２０は、特許請求の範囲に記載の符号化部の一例である。
【００３８】
多重化部２４０は、符号化部３２０からの符号化データと、制限付き正規化部２１０からの正規化係数と、量子化部２２０からの量子化精度情報とを、周波数範囲ごとに関係付けて時間分割により１つの符号列に多重化するものである。この多重化部２４０は、その多重化された符号列を符号列出力線２０９に出力する。
【００３９】
このように、量子化値置換部３１０を設けることによって、全てが零である複数の量子化値が量子化部２２０により生成された場合であっても、符号表に示された複数の量子化値に置き換えることができる。これにより、全てが零である複数の量子化値を符号化する対象から除外することができるため、符号長の長いハフマン符号の生成を抑制することができる。次に、量子化値置換部３１０の構成について図面を参照して簡単に以下に説明する。
【００４０】
［量子化値置換部３１０の構成例］
図３は、本発明の第１の実施の形態における量子化値置換部３１０の一構成例を示すブロック図である。量子化値置換部３１０は、シンボル判定部３１１と、乱数発生部３１２と、シンボル決定部３１３と、量子化値出力部３１４とを備える。この例では、符号表保持部２３０に保持されている符号表が、シンボル判定部３１１およびシンボル決定部３１３に出力されている。
【００４１】
シンボル判定部３１１は、信号線２２９を介して量子化部２２０から供給される複数の量子化値であるシンボルが符号表保持部２３０における符号表に含まれているか否かを判定するものである。すなわち、このシンボル判定部３１１は、信号線２２９からの複数の量子化値の組合せが、符号表保持部２３０に保持された符号表における複数の量子化値の組合せに含まれているか否かを判定する。
【００４２】
また、シンボル判定部３１１は、信号線２２９からの複数の量子化値の組合せが符号表に含まれている場合には、その複数の量子化値をシンボルとしてそのまま量子化値出力部３１４に供給する。これに対して、シンボル判定部３１１は、信号線２２９からの複数の量子化値の組合せが符号表に含まれていない場合には、乱数を発生するための乱数発生信号を生成して、その生成された乱数発生信号を乱数発生部３１２に供給する。
【００４３】
すなわち、このシンボル判定部３１１は、信号線２２９からの複数の量子化値の全てが零でない場合にはその複数の量子化値をそのまま量子化値出力部３１４に出力し、複数の量子化値の全てが零である場合には乱数発生信号を乱数発生部３１２に供給する。
【００４４】
乱数発生部３１２は、シンボル判定部３１１から供給された乱数発生信号に従って、符号表保持部２３０の符号表に示されたシンボル数に制限された乱数値を発生させるものである。この乱数発生部３１２は、その発生された乱数値をシンボル決定部３１３に出力する。
【００４５】
シンボル決定部３１３は、符号表保持部２３０の符号表における複数の量子化値の組合せの各々に対応する複数のシンボルのうち、乱数発生部３１２から出力された乱数値に基づいて、いずれか１つのシンボルを決定するものである。このシンボル決定部３１３は、例えば、乱数発生部３１２から出力された乱数値とシンボルとの対応関係を示す対応表を保持しておき、その対応表に基づいて乱数発生部３１２からの乱数値に対応するシンボルを決定する。また、シンボル決定部３１３は、符号表保持部２３０に保持された符号表を参照して、その決定されたシンボルに対応する複数の量子化値を量子化値出力部３１４に出力する。
【００４６】
量子化値出力部３１４は、シンボル判定部３１１から供給された複数の量子化値、または、シンボル決定部３１３から供給された複数の量子化値のうちいずれか一方を選択して、信号線３１９を介して符号化部３２０に供給するものである。この量子化値出力部３１４は、シンボル判定部３１１から複数の量子化値が供給された場合には、その複数の量子化値を選択して信号線３１９に出力する。
【００４７】
また、この量子化値出力部３１４は、シンボル決定部３１３から複数の量子化値が供給された場合には、その複数の量子化値を選択して信号線３１９に出力する。すなわち、量子化値出力部３１４は、量子化部２２０からの複数の量子化値の組合せと異なるものに置き換えられた複数の量子化値を信号線３１９に出力する。
【００４８】
このように、乱数発生部３１２を設けることによって、複数の量子化値の全てが零である場合には、符号表における複数の量子化値の組合せのうち、いずれか１つの組合せを無作為に選択することができる。このため、量子化値置換部３１０により、全てが零である複数の量子化値を、その無作為に選択された組合せの複数の量子化値に置き換えることができる。これにより、一定の複数の量子化値に置き換えることによって生じる誤差が周期性を有する場合において、復号装置４００により復号された出力信号に特定の周波数成分が含まれることによる聴覚ノイズの影響を軽減することができる。次に、符号化装置２００により生成された符号列を復号する復号装置４００の構成例について図面を参照して以下に説明する。
【００４９】
［復号装置４００の構成例］
図４は、本発明の第１の実施の形態における復号装置４００の一構成例を示すブロック図である。復号装置４００は、分離部４１０と、復号部４２０と、符号表保持部４３０と、逆量子化部４４０と、逆正規化部４５０とを備える。ここでは、図１に示したネットワーク１１０を介して符号化装置２００から出力された符号列が符号列入力線４０１に供給されることを想定する。
【００５０】
分離部４１０は、信号線４０１から供給される符号列を、符号化データ、正規化係数および量子化精度情報に分離するものである。また、分離部４１０は、その分離された符号化データを、信号線４１９を介して復号部４２０に供給する。これとともに、分離部４１０は、その符号化データに対応する量子化精度情報および正規化係数を、信号線４１７および４１８を介して、逆量子化部４４０および逆正規化部４５０にそれぞれ供給する。
【００５１】
復号部４２０は、符号表保持部４３０に保持された符号表を参照して、分離部４１０からの符号化データである可変長符号に対応する複数の量子化値を生成するものである。すなわち、この復号部４２０は、符号表保持部４３０における複数の量子化値に対する出現確率に応じて生成された符号表に基づいて、可変長符号を複数の量子化値に復号する。また、復号部４２０は、その復号された複数の量子化値を逆量子化部４４０に供給する。なお、復号部４２０は、特許請求の範囲に記載の情報処理システムおよび復号装置における復号部の一例である。
【００５２】
符号表保持部４３０は、図２に示した符号化装置２００における符号表保持部２３０に保持された符号表と同一の符号表を保持するものである。すなわち、この符号表保持部４３０は、複数の量子化値の全てが零である複数の量子化値がシンボルとして含まれていない符号表を保持する。また、符号表保持部４３０は、その保持している符号表を復号部４２０に出力する。なお、符号表保持部４３０は、特許請求の範囲記載の情報処理システムおよび復号装置における符号表保持部の一例である。
【００５３】
逆量子化部４４０は、信号線４１８から供給される量子化精度情報に基づいて復号部４２０からの複数の量子化値を逆量子化することによって、複数の正規化値を生成するものである。この逆量子化部４４０は、その生成された正規化値を逆正規化部４５０に供給する。
【００５４】
逆正規化部４５０は、信号線４１７から供給される正規化係数に基づいて逆量子化部４４０からの複数の正規化値を逆正規化することによって、複数の出力値を生成するものである。この逆正規化部４５０は、信号線４１７からの正規化値係数を、逆量子化部４４０からの複数の正規化値に乗算することによって、複数の出力値を算出する。すなわち、この逆正規化部４５０は、復号部４２０により復号された複数の量子化値が逆量子化されることによって生成された複数の正規化値と、その複数の正規化値に対応する正規化係数とに基づいて、複数の出力値を生成する。
【００５５】
また、逆正規化部４５０は、その生成された複数の出力値を、復元された入力信号における複数の入力値として信号線４０９に出力する。そして、信号線４０９に出力された複数の出力値は、例えば、周波数領域から時間領域の音響信号に変換される。なお、逆正規化部４５０は、特許請求の範囲に記載の情報処理システムおよび復号装置における逆正規化部の一例である。
【００５６】
このように、復号装置４００は、符号化装置２００における符号表保持部２３０に保持された符号表と同一の符号表を保持することによって、符号化装置２００により生成された符号列を入力信号に復元することができる。次に、情報処理システム１００の動作の概要について図面を参照して以下に説明する。
【００５７】
［情報処理システム１００の動作例］
図５は、本発明の第１の実施の形態における情報処理システム１００の動作例に関する概念図である。図５（ａ）および（ｂ）は、符号化装置２００において信号線１０１からの２つの入力値が正規化および量子化された例を示す概念図である。図５（ｃ）は、符号表保持部２３０および４３０に保持された符号表におけるシンボルを示す図である。図５（ｄ）および（ｅ）は、復号装置４００において符号化データが逆量子化および逆正規化された例を示す概念図である。また、ここでは、入力信号における符号化単位である複数の入力値として、２つの入力値が、制限付き正規化部２１０に供給されることを想定する。
【００５８】
この例では、入力値および出力値の範囲を「−４．０」乃至「４．０」とし、正規化係数を「４．０」、「２．０」および「１．０」とし、量子化精度情報を「１」、すなわち、量子化値を「−１」、「０」、「１」とする。また、量子化部２２０では、正規化値が「０．５」以上のときに量子化値を「１」とし、正規化値が「０．５」未満、かつ、「−０．５」より大きいときに量子化値を「０」とし、正規化値が「−０．５」以下のときに量子化値を「−１」とする。また、逆量子化部４４０では、量子化値を実数に変換するものとする。
【００５９】
図５（ａ）には、符号化単位である２つの入力値として振幅値Ａ６１１およびＢ６１２が示されている。ここでは、縦軸を振幅値の大きさＶとしている。また、縦軸には、正規化係数Ｎに対応する値が示されている。
【００６０】
振幅値Ａ６１１およびＢ６１２は、符号化すべき情報としての入力値であり、それぞれ「１．８」および「−０．４」を示す。このとき、制限付き正規化部２１０により、２つの振幅値Ａ６１１およびＢ６１２の絶対値のうちの最大値（１．８）に最も近い正規化係数（２．０）が、振幅値Ａ６１１およびＢ６１２を正規化するための正規化係数として選択される。また、その他の正規化係数の選択例として、制限付き正規化部２１０により、その最大値（１．８）よりも大きい正規化係数（２．０および４．０）のうち、その最大値（１．８）に最も近い正規化係数（２．０）を選択させるようにしてもよい。
【００６１】
なお、従来技術では、量子化値の出現確率分布が「０」近傍において大きくなるように正規化係数を「２．０」より大きい「４．０」を選択する場合がある。これに対し、本発明の実施の形態では、入力信号における複数の入力値の絶対値のうちの最大値に最も近い正規化係数と、その最大値よりも大きい正規化係数のうちその最大値に最も近い正規化係数とのいずれか一方を選択することを必須条件とする。
【００６２】
図５（ｂ）には、符号化装置２００により算出される正規化値Ａ６２１およびＢ６２２と、量子化値Ａ６３１およびＢ６３２とが示されている。ここでは、縦軸を正規化値の大きさＮＶとしている。また、縦軸には、３つの量子化値に対応する値が示されている。
【００６３】
正規化値Ａ６２１およびＢ６２２は、制限付き正規化部２１０によって選択された正規化係数（２．０）により、振幅値Ａ６１１およびＢ６１２が除算された値であり、それぞれ「０．９」および「−０．２」を示す。なお、制限付き正規化部２１０により、複数の入力値のうちの最大値に最も近い正規化係数が選択される場合において、その最大値よりも小さい正規化係数が選択されたときは、正規化値の値域が「−１．０」乃至「１．０」の範囲を超える。そのため、「−１．０」乃至「１．０」の範囲に収まるように正規化値を補正する必要がある。例えば、正規化値Ａ６２１またはＢ６２２が「１．０」よりも大きな値をとる場合には、これらの正規化値を「１．０」として扱うように補正する。
【００６４】
量子化値Ａ６３１および量子化値Ｂ６３２は、量子化部２２０により正規化値Ａ６２１およびＢ６２２が量子化された値であり、それぞれ「１」および「０」を示す。
【００６５】
図５（ｃ）には、量子化値Ａ６３１およびＢ６３２の組合せに対するシンボルの有無を表わす２次元の組合せ表６４０が示されている。ここでは、２つの量子化値Ａ６３１およびＢ６３２の組合せを１つのシンボルとして符号化することを想定している。
【００６６】
組合せ表６４０に示された丸印は、量子化値Ａ６３１およびＢ６３２の組合せが、符号表保持部２３０および４３０の符号表にシンボルとして存在することを意味する。すなわち、量子化値Ａ６３１およびＢ６３２の組合せに対し符号が割り当てられていることを意味する。
【００６７】
組合せ表６４０に示された罰点は、量子化値Ａ６３１およびＢ６３２の組合せが、符号表保持部２３０および４３０の符号表にシンボルとして存在しないことを意味する。すなわち、量子化値Ａ６３１およびＢ６３２の組合せに対して、符号が割り当てられていることを意味する。
【００６８】
このように、符号表保持部２３０および４３０に保持された符号表には、出現確率の極めて低い、量子化値Ａ６３１およびＢ６３２の両者が「０」である複数の量子化値に対して符号が割り当てられていない。すなわち、符号表保持部２３０および４３０には、量子化値の全てが零である複数の量子化値がシンボルとして含まれていない符号表が保持されている。
【００６９】
この例では、組合せ表６４０において、量子化値Ａ６３１が「１」、量子化値Ｂ６３２が「０」である組合せに丸印が示されているため、これらの複数の量子化値Ａ６３１および量子化値Ｂ６３２は符号化される。そして、復号装置４００において、符号化装置２００における符号表と同一の符号表により復号される。
【００７０】
図５（ｄ）には、復号装置４００における量子化値Ａ６５１およびＢ６５２と、正規化値Ａ'６６１およびＢ'６６２とが示されている。ここでは、縦軸を正規化値の大きさＮＶ'としている。また、縦軸には、３つの量子化値に対応する値が示されている。
【００７１】
量子化値Ａ６５１および量子化値Ｂ６５２は、復号部４２０において符号表に基づいて復号された値であり、それぞれ「１」および「０」を示す。このように、復号装置４００によって復号された量子化値Ａ６５１および量子化値Ｂ６５２は、符号化装置２００により生成された量子化値Ａ６３１およびＢ６３２と同じ値が保存される。
【００７２】
正規化値Ａ'６６１およびＢ'６６２は、逆量子化部４４０において量子化値Ａ６５１および量子化値Ｂ６５２が逆量子化された値であり、それぞれ「１．０」および「０．０」を示す。
【００７３】
図５（ｅ）には、２つの出力値として振幅値Ａ'６７１およびＢ'６７２が示されている。ここでは、縦軸を振幅値の大きさＶ'としている。また、縦軸には、正規化係数Ｎに対応する値が示されている。
【００７４】
振幅値Ａ'６７１およびＢ'６７２は、逆正規化部４５０において正規化値Ａ'６６１およびＢ'６６２に対し正規化係数（２．０）をそれぞれ乗算することによって算出された出力値であり、それぞれ「２．０」および「０．０」を示す。
【００７５】
このように、制限付き正規化部２１０を設けることによって、３つの正規化係数のうち、複数の入力値である振幅値Ａ６１１およびＢ６１２の絶対値のうちの最大値に最も近い正規化係数のみを選択することができる。これにより、振幅値Ａ６１１およびＢ６１２の両者が「０．５」未満、かつ、「−０．５」よりも大きい場合を除き、いずれか一方の量子化値が「１」となるため、量子化値の両方が「０」となる複数の量子化値に対する出現確率を低減させることができる。このため、全てが零である複数の量子化値を他の複数の量子化値に置き換えることに起因する誤差の発生を抑制することができる。
【００７６】
また、従来技術のように、量子化値「０」の出現確率を高くするために、必要に応じて敢えて大きな正規化係数に設定することを抑制することによって、量子化値の全てが「０」となる複数の量子化値の出現確率を従来に比べて低減させることができる。すなわち、複数の入力値の絶対値のうちの最大値に最も近い正規化係数、または、最大値よりも大きい正規化係数のうち最大値に最も近い正規化係数の選択を必須条件とすることにより、全てが零となる複数の量子化値の出現頻度を低下させることができる。
【００７７】
なお、振幅値Ａ６１１およびＢ６１２の両者が「０．５」未満、かつ、「−０．５」よりも大きい場合であっても、量子化値置換部３１０において量子化値の全てが「０」である複数の量子化値を、他の組合せの複数の量子化値に置き換えられる。このため、量子化値の全てが「０」となる複数の量子化値に対応するシンボルを符号表から除外することができる。ここで、符号表保持部２３０および４３０におけるハフマン符号の符号表について図面を参照して以下に説明する。
【００７８】
［従来のハフマン符号の符号表の例］
図６は、従来のハフマン符号の符号表に関する図である。図６（ａ）は、量子化値Ａおよび量子化値Ｂの組合せ表８４１を示す図である。この組合せ表８４１には、量子化値Ａおよび量子化値Ｂの組合せに対応する９つのシンボルＳ１乃至Ｓ９が示されている。この例では、シンボルＳ１およびＳ２の出現確率に対応する出現頻度を「８」とし、シンボルＳ３およびＳ４の出現頻度を「４」とし、シンボルＳ５乃至Ｓ８の出現頻度を「２」とし、シンボルＳ９の出現頻度を「１」とする。
【００７９】
図６（ｂ）は、図６（ａ）に述べたシンボルＳ１乃至Ｓ９の出現頻度に基づいて生成されるハフマン木構造の例を示す図である。このハフマン木構造に示すように、シンボルＳ１乃至Ｓ９に対応するハフマン符号として、それぞれ「０１」、「１０」、「００１」、「１１０」、「００００」、「０００１」、「１１１０」、「１１１１０」および「１１１１１」が割り当てられる。
【００８０】
図７は、図６で述べた条件により生成されたハフマン符号に関する図である。ここでは、図６（ａ）に示したシンボル８４２ごとに、符号８４３と、符号長８４４と、出現頻度８４５とが示されている。例えば、シンボル８４２におけるシンボルＳ１には、「０１」の符号８４３が割り当ている。この符号の符号長８４４が「２」ビットであり、その出現頻度８４５が「８」である。
【００８１】
この例において、最大符号長は、５ｂｉｔ（ビット）である。また、平均符号長は、２．８８（＝（２×８×２＋３×４×２＋４×２×３＋５×２×１＋５×１×１）／（８×２＋４×２＋２×４＋１×１））ビットである。なお、この平均符号化長は、シンボル８４２ごとの符号長８４４および出現頻度８４５の乗算値に対する総和を、出現頻度８４５の総和により減算することによって算出される。
【００８２】
このように、ハフマン符号では、出現確率に対応する出現頻度が小さいシンボルほど、符号長の長い可変長符号を割り当てる。一般的には、量子化値ＡおよびＢの両者が「０」となるシンボルＳ９の出現頻度は極めて小さいため、シンボルＳ９の符号長が長くなってしまう。このため、無音の音響信号などが入力信号として入力された場合には、量子化値ＡおよびＢの両者が「０」となるシンボルＳ９が生成されるため、符号化効率が著しく低下する。これに対し、符号表保持部２３０および４３０に保持された符号表について図面を参照して以下に説明する。
【００８３】
［符号表保持部２３０および４３０に保持された符号表の例］
図８は、本発明の第１の実施の形態における符号表保持部２３０および４３０に保持された符号表に関する図である。図８（ａ）は、量子化値ＡおよびＢの組合せ表６４１を示す図である。この組合せ表６４１は、図５（ｃ）に示された組合せ表６４０に対応する。この組合せ表６４１には、量子化値Ａおよび量子化値Ｂの組合せに対応する８つのシンボルＳ１乃至Ｓ８が示されている。ここでは、シンボルＳ１およびＳ２の出現頻度を「８」とし、シンボルＳ３およびＳ４の出現頻度を「４」とし、シンボルＳ５乃至Ｓ８の出現頻度を「２」とする。
【００８４】
図８（ｂ）は、図８（ａ）に述べたシンボルＳ１乃至Ｓ８の出現頻度に基づいて生成されるハフマン木構造の例を示す図である。このハフマン木構造に示すように、シンボルＳ１乃至Ｓ８に対応するハフマン符号として、それぞれ「０１」、「１０」、「００１」、「１１０」、「００００」、「０００１」、「１１１０」および「１１１１」が割り当てられる。
【００８５】
図９は、図８で述べた条件により生成されたハフマン符号に関する図である。ここでは、図８（ａ）に示したシンボル６４２ごとに、符号６４３と、符号長６４４と、出現頻度６４５とが示されている。例えば、シンボル６４２におけるシンボルＳ１には、「０１」の符号６４３が割り当ている。この符号の符号長６４４が「２」ビットであり、その出現頻度６４５が「８」である。また、符号表保持部２３０に保持された符号表には、シンボル６４２に対応する複数の量子化値の組合せと、そのシンボル６４２に対応する符号６４３が示されている。
【００８６】
この例において、最大符号長は、図７で述べた従来の符号表よりも小さい、４ビットである。また、平均符号長も、２．７５（＝（２×８×２＋３×４×２＋４×２×４）／（８×２＋４×２＋２×４）ビットと従来の符号表よりも小さい値となる。
【００８７】
このように、量子化値ＡおよびＢの両者が全て「０」であるシンボルを符号化対象から除外することによって、最大符号長および平均符号長を短くすることができるため、符号化効率を向上させることができる。すなわち、符号長が最も長い符号であって、全てが零である複数の量子化値に対応する符号の生成を抑制することによって、符号化効率の低下を抑制することができる。
【００８８】
［情報処理システム１００の動作例］
次に本発明の第１の実施の形態における情報処理システム１００の動作について図面を参照して説明する。
【００８９】
図１０は、本発明の第１の実施の形態における符号化装置２００の符号化方法の処理手順例を示すフローチャートである。ここでは、符号表保持部２３０には、全てが零である複数の量子化値を符号化の対象から除外されたハフマン符号の符号表が保持されていることを想定する。
【００９０】
まず、制限付き正規化部２１０により、予め定められた正規化係数のうち、入力信号における複数の入力値の絶対値のうちの最大値に最も近い正規化係数が選択される（ステップＳ９１１）。なお、このとき、入力信号における複数の入力値の絶対値のうちの最大値よりも大きい正規化係数のうち、最大値に最も近い正規化係数が選択されるようにしてもよい。
【００９１】
そして、制限付き正規化部２１０により、その選択された正規化係数により複数の入力値を除算することによって、複数の正規化値が算出される（ステップＳ９１２）。このとき、制限付き正規化部２１０により、その正規化係数が多重化部２４０に供給される。なお、ステップＳ９１１およびＳ９１２は、特許請求の範囲に記載の正規化手順の一例である。
【００９２】
そして、量子化部２２０により、制限付き正規化部２１０において算出された複数の正規化値を量子化精度情報に基づいて量子化することによって、複数の量子化値が生成される（ステップＳ９１３）。このとき、量子化部２２０により、その量子化精度情報が多重化部２４０に供給される。なお、ステップＳ９１３は、特許請求の範囲に記載の量子化手順の一例である。
【００９３】
この後、量子化値置換部３１０により、量子化部２２０から出力された複数の量子化値の全てが零であるか否かが判断される（ステップＳ９１４）。そして、複数の量子化値の全てが零でない場合には、量子化値置換部３１０により、量子化部２２０からの複数の量子化値がそのまま符号化部３２０に出力される。
【００９４】
一方、複数の量子化値の全てが零である場合には、量子化値置換部３１０により、符号表保持部２３０に保持された符号表における複数の量子化値の組合せのいずれかに置き換えられる（ステップＳ９１５）。このとき、量子化値の全てが零である複数の量子化値を符号表保持部２３０の符号表に示された複数の量子化値に置き換えるたびに、直前に置き換えた複数の量子化値と同一の複数の量子化値に置き換えることを抑制するようにしてもよい。
【００９５】
続いて、符号化部３２０により、量子化値置換部３１０から出力された複数の量子化値に対応するハフマン符号を符号表に基づいて出力することによって、その複数の量子化値が符号化される（ステップＳ９１６）。すなわち、符号出力部３００により、複数の量子化値の全てが零である場合には、他の複数の量子化値の組合せに割り当てられた可変長符号であるハフマン符号が、符号表保持部２３０に保持された符号表に基づいて出力される。なお、ステップＳ９１４乃至Ｓ９１６は、特許請求の範囲に記載の符号出力手順の一例である。
【００９６】
そして、多重化部２４０により、符号出力部３００からのハフマン符号と、制限付き正規化部２１０からの正規化係数と、量子化部２２０からの量子化精度情報とを関連付けて多重化することによって符号列が生成される（ステップＳ９１７）。すなわち、多重化部２４０により、多重化処理が行われる。
【００９７】
図１１は、本発明の第１の実施の形態における復号装置４００の復号方法の処理手順例を示すフローチャートである。ここでは、符号表保持部４３０には、図１０で述べた符号表保持部２３０に保持された符号表と同一の符号表が保持されていることを想定する。
【００９８】
まず、分離部４１０により、分離処理が行われることによって、符号化装置２００において生成された符号列が、符号化データであるハフマン符号と、これに対応する量子化精度情報および正規化係数とに分離される（ステップＳ９２１）。そして、復号部４２０により、分離部４１０において分離された符号化データが、符号表保持部４３０に保持された符号表を参照して、複数の量子化に復号される（ステップＳ９２２）。
【００９９】
この後、逆量子化部４４０により、逆量子化処理が行われることによって、復号部４２０において復号された複数の量子化値が、分離部４１０からの量子化精度情報に基づいて複数の正規化値に変換される（ステップＳ９２３）。そして、逆正規化部４５０により、逆正規化処理が行われることによって、逆量子化部４４０において変換された複数の正規化値と、分離部４１０からの正規化係数とに基づいて複数の出力値が生成される（ステップＳ９２４）。
【０１００】
このように、本発明の第１の実施の形態では、複数の量子化値の全てが零である場合には、それ以外の他の複数の量子化値の組合せに対応するハフマン符号を出力することができる。これにより、符号化装置２００における最大符号長および平均符号長を短くすることができるため、符号化効率を向上させることができる。ここで、全てが零である複数の量子化値を他の組合せの複数の量子化値に置き換えることによって生じる誤差について以下に図面を参照して説明する。
【０１０１】
［複数の量子化値の置換により生じる誤差の例］
図１２は、本発明の第１の実施の形態における情報処理システム１００による量子化値の置換に起因する誤差に関する概念図である。ここでは、情報処理システム１００の動作条件などについては、図５で述べたものと同様であるため、ここでの詳細な説明を省略する。
【０１０２】
図１２（ａ）には、制限付き正規化部２１０に供給された入力値として、振幅値Ａ６１３およびＢ６１４が示されている。この例では、振幅値Ａ６１３およびＢ６１４の両者が「０．０」であることを想定している。このとき、制限付き正規化部２１０により、２つの振幅値Ａ６１３およびＢ６１４の絶対値のうちの最大値（０．０）に対する３つの正規化係数の差分絶対値が算出される。そして、制限付き正規化部２１０により、これらの算出された差分絶対値のうち、最小値となる差分絶対値（１．０）に対応する正規化係数（１．０）、すなわち、最大値に最も近い正規化係数が選択される。
【０１０３】
図１２（ｂ）には、符号化装置２００における正規化値Ａ６２３およびＢ６２４と、量子化値Ａ６３３およびＢ６３４とが示されている。この正規化値Ａ６２３およびＢ６２４の両者は、それぞれ「０．０」を示す。また、量子化値Ａ６３３およびＢ６３４の両者は、量子化部２２０において正規化値Ａ６２１およびＢ６２２が量子化されることによって、それぞれ「０」を示す。このため、量子化値置換部３１０により、量子化値Ａ６３３およびＢ６３４が、それぞれ「−１」および「０」の組合せのシンボルに置き換えられる。
【０１０４】
図１２（ｃ）には、量子化値Ａ６３３およびＢ６３４の組合せに対するシンボルの有無を表わす２次元の組合せ表６４１が示されている。この組合せ表６４１において、量子化値Ａ６３３が「−１」であり、量子化値Ｂ６３４が「０」である組合せのシンボルＳ７に対応する符号として、図９に示された符号（１１１０）が符号化データとして出力される。そして、復号装置４００において、符号化装置２００における符号表保持部２３０の符号表と同一の符号表により、符号化データ（１１１０）が復号される。
【０１０５】
図１２（ｄ）には、復号装置４００における量子化値Ａ'６５３およびＢ６５４と、正規化値Ａ'６６３およびＢ'６６４とが示されている。この量子化値Ａ'６５３および量子化値Ｂ６５４は、復号部４２０において符号化データが復号されることにより、それぞれ「−１」および「０」を示す。ここで、復号装置４００により復号された量子化値Ａ'６５３には、量子化値置換部３１０による置換によって「−１」の誤差ｅ１が生じる。
【０１０６】
また、正規化値Ａ'６６３およびＢ'６６４は、逆量子化部４４０において量子化値Ａ'６５３および量子化値Ｂ６５４が逆量子化されることによって、それぞれ「１．０」および「０．０」を示す。
【０１０７】
図１２（ｅ）には、出力値として振幅値Ａ'６７３およびＢ'６７４が示されている。この振幅値Ａ'６７３およびＢ'６７４は、逆正規化部４５０において正規化値Ａ'６６３およびＢ'６６４に正規化係数（１．０）が乗算されることによって、それぞれ「１．０」および「０．０」を示す。ここで、振幅値Ａ'６７３には、量子化値置換部３１０による置換に起因する「−１．０」の誤差ｅ２が生じる。
【０１０８】
このように、振幅値Ａ６１３およびＢ６１４の両者が「０．５」未満、かつ、「−０．５」よりも大きい場合には、量子化値Ａ６３３およびＢ６３４の両者が、それぞれ「０」となる。このため、量子化値置換部３１０により、量子化値Ａ６３３およびＢ６３４が、他の量子化値Ａ'６５３およびＢ６５４の組合せに置き換えられるため、上述のとおり、出力値である振幅値Ａ'６７３に誤差ｅ２が生じる。
【０１０９】
また、この例では、符号表における複数の量子化値の組合せのうち、１つのみ零以外の値「−１」である複数の量子化値に置き換えられたため、誤差ｅ２は、１つの出力値である振幅値Ａ'６７３にのみ生じる。したがって、複数の量子化値の全てが零である場合には、符号出力部３００において１つのみ零以外の値である複数の量子化値に対応する可変長符号を符号表に基づいて出力することによって、誤差ｅ２の生じる出力値を最小限にすることができる。これにより、複数の量子化値の置換に伴う複数の出力値に生じる誤差を低減することができる。
【０１１０】
なお、無音の音響信号のように信号レベルの低い入力信号が符号化装置２００に入力された場合などに、振幅値Ａ６１３およびＢ６１４の両者が「０．５」未満、かつ、「−０．５」よりも大きくなる。このため、出力値が誤差ｅ２だけ若干大きくなったとしても、これによる影響は大きくない。しかしながら、量子化値置換部３１０による量子化値の置換に起因する誤差ｅ２によって聴覚上の影響が現われてしまう場合もある。これに対し、誤差ｅ２を低減するように改良したものが第２の実施の形態である。
【０１１１】
＜２．第２の実施の形態＞
［量子化値の置換に起因する誤差を低減する例］
図１３は、本発明の第２の実施の形態における情報処理システム１００による複数の量子化値の置換に起因する誤差に関する概念図である。ここでの情報処理システム１００における符号化装置２００の基本構成は、図２に示した符号化装置２００と同様のものである。また、本発明の第２の実施の形態の情報処理システム１００における復号装置４００の構成も、図４に示した復号装置４００と同様のものである。
【０１１２】
この例では、制限付き正規化部２１０において選択される正規化係数を、図５に示した「４．００」、「２．００」および「１．００」に加えて、「０．５０」および「０．２５」をさらに追加する場合を想定する。これ以外の他の動作条件は、図５で述べたものと同様であるため、ここでの説明を省略する。また、図１３（ｂ）乃至（ｄ）は、図１２（ｂ）乃至（ｄ）と同様のものであるため、ここでの説明を省略する。
【０１１３】
図１３（ａ）には、図１２（ａ）と同様に、入力値として振幅値Ａ６１３およびＢ６１４が示されている。この振幅値Ａ６１３およびＢ６１４の両者は、それぞれ「０．００」を示す。このとき、制限付き正規化部２１０により、２つの振幅値Ａ６１３およびＢ６１４の絶対値のうちの最大値（０．００）に最も近い正規化係数（０．２５）が、振幅値Ａ６１３およびＢ６１４を正規化するための正規化係数として選択される。
【０１１４】
図１３（ｅ）には、出力値として振幅値Ａ'７７３およびＢ'７７４が示されている。この振幅値Ａ'７７３およびＢ'７７４は、逆正規化部４５０において正規化値Ａ'６６３およびＢ'６６４に正規化係数（０．２５）が乗算されることによって、それぞれ「０．２５」および「０．００」を示す。この例では、振幅値Ａ'７７３には、量子化値置換部３１０による全てが零である複数の量化値の置換に起因する「−０．２５」の誤差ｅ３が生じる。
【０１１５】
このように、最小の正規化係数の大きさを「１．００」から「０．２５」に小さくすると、正規化係数の個数が増えるため、復号装置４００に正規化係数を伝送するために割り当てるビット数が増加し、伝送すべき情報量が多くなってしまう場合がある。しかしながら、制限付き正規化部２１０における最小の正規化係数の大きさを小さくすることによって、図１２に示した誤差ｅ２に比べて、第２の実施の形態における誤差ｅ３を低減することができる。すなわち、本発明の第２の実施の形態では、正規化係数の最小値がほぼ零に設定された正規化係数により複数の入力値を除算することによって、伝送すべき情報量が増えしまうが、全てが零である複数の量子化値の置換により生じる誤差を低減することができる。
【０１１６】
＜３．第３の実施の形態＞
［ハフマン符号生成装置の構成例］
次に、本発明の第１および第２の実施の形態における情報処理システム１００の符号化処理および復号処理に用いられるハフマン符号表を予め生成するハフマン符号生成装置５００について説明する。このハフマン符号生成部５００には、本発明の第１および第２の実施の形態における符号化装置２００による処理を想定し、符号化装置２００を構成する制限付き正規化部２１０、量子化部２２０および量子化置換部３１０と同様の構成が含まれる。ここで、このハフマン符号生成部５００の構成について図面を参照して以下に説明する。
【０１１７】
図１４は、本発明の第３の実施の形態におけるハフマン符号生成装置５００の一構成例を示すブロック図である。ハフマン符号生成装置５００は、サンプルデータ供給部５１０と、制限付き正規化部５２０と、量子化部５３０と、量子化値置換部５４０と、出現頻度算出部５５０と、ハフマン符号生成部５６０と、符号表保持部５７０とを備える。これらの制限付き正規化部５２０、量子化部５３０および量子化値置換部５４０は、図２に示した制限付き正規化部２１０、量子化部２２０および量子化値置換部３１０と同様のものであるため、ここでの説明を省略する。
【０１１８】
サンプルデータ供給部５１０は、ハフマン符号の符号表を生成するためのサンプルデータを供給するものである。このサンプルデータ供給部５１０は、符号化装置２００によって符号化される入力信号として想定されるサンプルデータを制限付き正規化部５２０に供給する。
【０１１９】
出現頻度算出部５５０は、量子化値置換部５４０から出力される複数の量子化値の組合せであるシンボルごとの出現頻度を算出するものである。この出現頻度算出部５５０は、量子化値置換部５４０において全てが零である複数の量子化値が他の組合せの複数の量子化値に置き換えられるため、全てが零である複数の量子化値の出現頻度を「０」と算出する。この出現頻度算出部５５０は、その算出された出現頻度をハフマン符号生成部５６０に供給する。
【０１２０】
ハフマン符号生成部５６０は、出現頻度算出部５５０からのシンボルごとの出現頻度に応じてハフマン符号を生成するものである。このハフマン符号生成部５６０は、出現頻度の小さいシンボルほど、符号長の長いハフマン符号を割り当てる。また、ハフマン符号生成部５６０は、シンボルごとに割り当てられたハフマン符号をハフマン符号表として符号表保持部５７０に供給する。
【０１２１】
符号表保持部５７０は、ハフマン符号生成部５６０から供給されたハフマン符号表を保持するものである。この符号表保持部５７０に保持されたハフマン符号表が、符号化装置２００における符号表保持部２３０と、復号装置４００における符号表保持部４３０とに転送される。
【０１２２】
このように、量子化値置換部５４０を設けることによって、全てが零である複数の量子化値を他の組合せの複数の量子化値に置き換えることができるため、全てが零である複数の量子化値を符号表におけるシンボルから除外することができる。次にハフマン符号生成装置５００の動作例について図面を参照して以下に説明する。
【０１２３】
［ハフマン符号生成装置５００の動作例］
図１５は、本発明の第３の実施の形態におけるハフマン符号生成装置５００の符号生成方法における処理手順例を示すフローチャートである。
【０１２４】
まず、制限付き正規化部５２０により、複数の正規化係数のうち、サンプルデータ供給部５１０から供給された複数の入力値の絶対値における最大値との差分絶対値が最小となる正規化係数が選択される（ステップＳ９３１）。そして、制限付き正規化部５２０により、その選択された正規化係数により複数の入力値を除算することによって、複数の正規化値が算出される（ステップＳ９３２）。そして、量子化部５３０により、制限付き正規化部５２０において算出された複数の正規化値を量子化精度情報に基づいて量子化することによって、複数の量子化値が生成される（ステップＳ９３３）。
【０１２５】
この後、量子化値置換部５４０により、量子化部５３０から出力された複数の量子化値の全てが零であるか否かが判断される（ステップＳ９３４）。そして、複数の量子化値の全てが零でない場合には、量子化値置換部５４０により、量子化部２２０からの複数の量子化値がそのまま符号化部３２０に出力される。一方、複数の量子化値の全てが零である場合には、量子化値置換部５４０により、それ以外の他の組合せの複数の量子化値に置き換えられる（ステップＳ９３５）。
【０１２６】
続いて、出現頻度算出部５５０により、量子化値置換部５４０からの複数の量子化値の組合せに対する出現頻度が算出される（ステップＳ９３６）。このようにして、サンプルデータ供給部５１０からのサンプルデータが終了するまで、ステップＳ９３１乃至Ｓ９３６の処理が繰り返される。また、サンプルデータ供給部からのサンプルデータが終了した場合（ステップＳ９３７）には、ハフマン符号生成部５６０により、複数の量子化値の組合せごとの出現頻度に応じてハフマン符号が生成される（ステップＳ９３８）。そして、ハフマン符号生成部５６０により、ハフマン符号の符号表が生成されて、符号表保持部５７０に保持される（ステップＳ９３９）。
【０１２７】
このように、本発明の第３の実施の形態では、全てが零である複数の量子化値を他の組合せの複数の量子化値に置き換えることによって、全てが零である複数の量子化値がシンボルとして含まれない符号表を作成することができる。
【０１２８】
このように、本発明の実施の形態によれば、全てが零である複数の量子化値を符号化対象から除外することによって、最大符号長および平均符号長を短縮することができる。
【０１２９】
なお、本発明の実施の形態では、情報処理システム１００の入力信号として音響信号を例に説明したが、画像信号を入力信号として情報システム１００に入力するようにしてもよい。
【０１３０】
また、本発明の実施の形態では、符号化装置２００における符号表保持部２３０にハフマン符号の符号表を保持しておく例について説明したが、符号化装置２００にハフマン符号生成装置５００を設けるようにしてもよい。例えば、符号化装置２００に加えて量子化値置換部５４０、出現頻度算出部５５０およびハフマン符号生成部５６０をさらに設ける。
【０１３１】
なお、本発明の実施の形態は本発明を具現化するための一例を示したものであり、本発明の実施の形態において明示したように、本発明の実施の形態における事項と、特許請求の範囲における発明特定事項とはそれぞれ対応関係を有する。同様に、特許請求の範囲における発明特定事項と、これと同一名称を付した本発明の実施の形態における事項とはそれぞれ対応関係を有する。ただし、本発明は実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において実施の形態に種々の変形を施すことにより具現化することができる。
【０１３２】
また、本発明の実施の形態において説明した処理手順は、これら一連の手順を有する方法として捉えてもよく、また、これら一連の手順をコンピュータに実行させるためのプログラム乃至そのプログラムを記憶する記録媒体として捉えてもよい。この記録媒体として、例えば、ＣＤ（Compact Disc）、ＭＤ（MiniDisc）、ＤＶＤ（Digital Versatile Disk）、メモリカード、ブルーレイディスク（Blu-ray Disc（登録商標））等を用いることができる。
【符号の説明】
【０１３３】
１００  情報処理システム
２００  符号化装置
２１０、５２０  制限付き正規化部
２２０、５３０  量子化部
２３０、４３０  符号表保持部
２４０  多重化部
３００  符号出力部
３１０、５４０  量子化値置換部
３１１  シンボル判定部
３１２  乱数発生部
３１３  シンボル決定部
３１４  量子化値出力部
３２０  符号化部
４００  復号装置
４１０  分離部
４２０  復号部
４４０  逆量子化部
４５０  逆正規化部
５００  ハフマン符号生成装置
５１０  サンプルデータ供給部
５５０  出現頻度算出部
５６０  ハフマン符号生成部
５７０  符号表保持部
【図１】
2011082878.tif 000003
【図２】
2011082878.tif 000004
【図３】
2011082878.tif 000005
【図４】
2011082878.tif 000006
【図５】
2011082878.tif 000007
【図６】
2011082878.tif 000008
【図７】
2011082878.tif 000009
【図８】
2011082878.tif 000010
【図９】
2011082878.tif 000011
【図１０】
2011082878.tif 000012
【図１１】
2011082878.tif 000013
【図１２】
2011082878.tif 000014
【図１３】
2011082878.tif 000015
【図１４】
2011082878.tif 000016
【図１５】
2011082878.tif 000017