(57)【要約】【課題】埋め込みデータの伝送容量を大きくすることができる技術を提供する。【解決手段】人の音声生成過程に基づく音声符号化方式で符号化された音声符号に埋め込み対象のデータを埋め込むデータ埋め込み装置であって、前記音声符号毎に、音声符号に前記データを埋め込むか否かを判定する埋め込み判定手段と、前記埋め込み判定手段によって前記データを埋め込むと判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された２以上のパラメータ符号に前記データを埋め込む埋め込み手段とを含む。【選択図】図１２
2005049794.tif 000002
【特許請求の範囲】
【請求項１】
音声符号に埋め込み対象のデータを埋め込むデータ埋め込み装置であって、
前記音声符号毎に、音声符号に前記データを埋め込むか否かを判定する埋め込み判定手段と、
前記埋め込み判定手段によって前記データを埋め込むと判定された音声符号を構成する複数のパラメータ符号のうち、２以上のパラメータ符号に前記データを埋め込む埋め込み手段と
を含むデータ埋め込み装置。
【請求項２】
音声符号に埋め込まれているデータを抽出する埋め込みデータ抽出装置であって、
前記音声符号毎に、音声符号にデータが埋め込まれているか否かを判定する抽出判定手段と、
前記抽出判定手段によってデータが埋め込まれていると判定されたフレームの音声符号を構成する複数のパラメータ符号のうち、２以上のパラメータ符号に夫々埋め込まれているデータを抽出する抽出手段と
を含むデータ抽出装置。
【請求項３】
埋め込み対象データに対するエラー検出用データを作成する作成手段と、
前記埋め込み対象データ及び前記エラー検出用データを他のデータに埋め込む埋め込み手段とを含むデータ埋め込み装置。
【請求項４】
データ送信装置からネットワークを介して受信されるデータに埋め込まれている埋め込み対象のデータ，及びこの埋め込み対象のデータに対するエラー検出用データを抽出する手段と、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
を含むデータ抽出装置。
【請求項５】
埋め込み対象データに対するエラー検出用データを作成する作成手段と、
前記埋め込み対象データ及び前記エラー検出用データを他のデータに埋め込む埋め込み手段と、
前記他のデータをネットワークを介して当該他のデータを受信すべき装置へ送信する手段と、
データをネットワークを介して受信する手段と、
受信されるデータに埋め込まれている埋め込み対象のデータ，及びこの埋め込み対象のデータに対するエラー検出用データを抽出する手段と、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データの送信元の装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、を備え、
前記埋め込み手段は、前記再送要求を送信するためのデータを受け取り、所定の再送要求を前記他のデータに埋め込む
通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データに埋め込み対象のデータを埋め込むデータ埋め込み技術，及びデータから埋め込み対象のデータを抽出するデータ抽出技術に関する。
【０００２】
例えば、本発明は、インターネットの爆発的な普及を背景に、パケット音声通信やディジタル音声蓄積などを適用領域とするディジタル音声信号処理技術に関する。音声符号化技術で圧縮されたディジタルコードに対して、データフォーマットの規格準拠を保ちつつ、音声品質を損なうことなく一部を任意のデータと置き換えるデータ埋込み技術に関する。
【背景技術】
【０００３】
近年、コンピュータやインターネットが普及する中で、マルチメディアコンテンツ(静止画、動画、オーディオ、音声など)に特殊なデータを埋め込む「電子透かし技術」が注目を集めている。このような技術は、主に、著作権の保護を目的として、コンテンツに作成者や販売者などの名前を埋め込み、不正コピーやデータの改ざんなどを防止するために使用される。その他、コンテンツに関する関連情報や付加情報を埋め込んで利用者のコンテンツ利用時における利便性を高めることを目的として用いられる。
【０００４】
音声通信の分野でも音声に対してこのような任意の情報を埋め込み、伝送または蓄積する試みが行われている。図１に概念図を示す。図１において、符号器は、入力音声を音声符号に符号化する際に、音声以外の任意のデータ系列を音声符号に埋め込み、復号器へ伝送する。このとき、データの埋め込みを音声符号のフォーマットを変えずに音声符号自体に行う。このため、音声符号の情報量は増加しない。復号器では、埋め込まれた任意のデータ系列を音声符号から読み出すとともに通常の音声符号の復号処理により再生音声を出力する。
【０００５】
以上の構成により、伝送量を増加させることなく音声とは別に任意のデータを伝送することが可能となる。また、データが埋め込まれていることを知らない第３者にとっては通常の音声通信としか認識されない。データの埋め込み方法としては、さまざまな方法が提案されている。
【０００６】
本願発明に関連する先行技術として、例えば、下記の特許文献１乃至４に開示される技術がある。
【特許文献１】
特開２００３−９９０７７号公報
【特許文献２】
特表２００２−５２１７３９号公報
【特許文献３】
特開２００２−２５８８８１号公報
【特許文献４】
ＷＯ０１／０３９１７５号公報
【考案の開示】
【発明が解決しようとする課題】
【０００７】
上述した音声符号に対するデータ埋め込み・抽出技術では、音声符号に対して多くのデータを埋め込むことが望まれている。また、データの埋め込みによって音声劣化が発生しないことが望まれている。さらに、復号側で正確な埋め込みデータを得られることが望まれている。
【０００８】
本発明の目的の一つは、埋め込みデータの伝送容量を大きくすることができる技術を提供することである。
【０００９】
また、本発明の目的の一つは、データの埋め込みによる音声劣化の発生を抑えることができる技術を提供することである。
【００１０】
また、本発明の目的の一つは、データの受信側で正確な埋め込みデータを得ることができる技術を提供することである。
【課題を解決するための手段】
【００１１】
本発明の第１の発明の第１の態様は、人の音声生成過程に基づく音声符号化方式で符号化された音声符号に埋め込み対象のデータを埋め込むデータ埋め込み装置であって、
前記音声符号毎に、音声符号に前記データを埋め込むか否かを判定する埋め込み判定手段と、
前記埋め込み判定手段によって前記データを埋め込むと判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された２以上のパラメータ符号に前記データを埋め込む埋め込み手段と
を含むデータ埋め込み装置である。
【００１２】
第１の発明の第２の態様は、人の音声生成過程に基づく音声符号化方式で符号化された音声符号に埋め込まれているデータを抽出する埋め込みデータ抽出装置であって、
前記音声符号毎に、音声符号にデータが埋め込まれているか否かを判定する抽出判定手段と、
前記抽出判定手段によってデータが埋め込まれていると判定されたフレームの音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された２以上のパラメータ符号に夫々埋め込まれているデータを抽出する抽出手段と
を含むデータ抽出装置である。
【００１３】
第１の発明の第３の態様は、人の音声生成過程に基づく音声符号化方式で符号化された音声符号に対するデータの埋め込み処理及び抽出処理を行うデータ埋め込み／抽出装置であって、
データを埋め込むべき音声符号毎に、その音声符号に前記データを埋め込むか否かを判定する埋め込み判定手段と、
前記埋め込み判定手段によって前記データを埋め込むと判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された２以上のパラメータ符号に前記データを埋め込む埋め込み手段と、
データを抽出すべき音声符号毎に、音声符号にデータが埋め込まれているか否かを判定する抽出判定手段と、
前記抽出判定手段によってデータが埋め込まれていると判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された２以上のパラメータ符号に夫々埋め込まれているデータを抽出する抽出手段と
を含むデータ埋め込み／抽出装置である。
【００１４】
また、第１の発明は、第１〜３の態様と同様の特徴を持つ、データ埋め込み方法，データ抽出方法，データ埋め込み／抽出方法として特定することができる。
【００１５】
本発明の第２の発明における第１の態様は、埋め込み対象データに対するエラー検出用データを作成する作成手段と、
前記埋め込み対象データ及び前記エラー検出用データを他のデータに埋め込む埋め込み手段とを含むデータ埋め込み装置である。
【００１６】
第２の発明における第２の態様は、埋め込み対象データに対するエラー検出用データを作成する作成手段と、
前記埋め込み対象データと前記エラー検出用データとからデータブロックを構成するブロック構成手段と、
前記データブロックを他のデータに埋め込む埋め込み手段と
を含むデータ埋め込み装置である。
【００１７】
第２の発明における第３の態様は、埋め込み対象データに対するエラー検出用データを作成する作成手段と、
前記埋め込み対象データ及び前記エラー検出用データを他のデータに埋め込む埋め込み手段と、
前記埋め込み対象データ及び前記エラー検出用データが埋め込まれた他のデータをネットワークを介してデータ受信装置に送信する手段と
を含むデータ送信装置である。
【００１８】
第２の発明において、埋め込み手段は、埋め込み対象データ及びエラー検出用データ(エラー検出信号)を、これらから構成されるデータブロック(大ブロック)単位、或いはデータブロック(大ブロック)を所定数に分割して得られる分割ブロック(小ブロック)単位で、他のデータ(データ系列)に埋め込むように構成することができる。データ系列は、例えば、音声が音声符号化方式により符号化された音声符号であり、例えば、各分割ブロックは１フレームに対する音声符号に対して埋め込まれる。
【００１９】
第２の発明における第４の態様は、データ送信装置からネットワークを介して受信されるデータに埋め込まれている埋め込み対象のデータ，及びこの埋め込み対象のデータに対するエラー検出用データを抽出する手段と、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
を含むデータ抽出装置である。
【００２０】
第２の発明における第５の態様は、データ送信装置からネットワークを介して受信されるデータに埋め込まれている埋め込み対象のデータ，及びこの埋め込み対象のデータに対するエラー検出用データを抽出する抽出手段と、
抽出された埋め込み対象のデータ及びエラー検出用データを含むデータブロックを復元する復元手段と、
復元されたデータブロックに含まれる埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
を含むデータ抽出装置である。
【００２１】
第２の発明における第６の態様は、データ送信装置からネットワークを介して受信されるデータに埋め込まれている第１のデータブロックを抽出する抽出手段と、
抽出された複数の第１のデータブロックを結合し、埋め込み対象のデータ，及びこの埋め込み対象のデータに対するエラー検出用データを含む第２のデータブロックを復元する復元手段と、
復元された第２のデータブロックに含まれる埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
を含むデータ抽出装置である。
【００２２】
第２の発明における第７の態様は、データ送信装置からネットワークを介してデータを受信する手段と、
受信されるデータに埋め込まれている埋め込み対象のデータ，及びこの埋め込み対象のデータに対するエラー検出用データを抽出する手段と、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
を含むデータ受信装置である。
【００２３】
第２の発明における第８の態様は、埋め込み対象データに対するエラー検出用データを作成する作成手段と、
前記埋め込み対象データ及び前記エラー検出用データを他のデータに埋め込む埋め込み手段と、
前記他のデータをネットワークを介して当該他のデータを受信すべき装置へ送信する手段と、
データをネットワークを介して受信する手段と、
受信されるデータに埋め込まれている埋め込み対象のデータ，及びこの埋め込み対象のデータに対するエラー検出用データを抽出する手段と、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データの送信元の装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、を備え、
前記埋め込み手段は、前記再送要求を送信するためのデータを受け取り、所定の再送要求を前記他のデータに埋め込む通信装置である。
【００２４】
また、第２の発明は、上述した装置発明と同様の特徴を持つ方法の発明として特定することができる。
【発明の効果】
【００２５】
本発明によれば、埋め込みデータの伝送容量を大きくすることができる。
【００２６】
また、本発明によれば、データの埋め込みによる音声劣化の発生を抑えることができる。
【００２７】
また、本発明によれば、データの受信側で正確な埋め込みデータを得ることができる。
【発明を実施するための最良の形態】
【００２８】
以下、図面を参照して本発明を実施するための最良の形態について説明する。以下の実施の形態の構成は例示であり、本発明は実施の形態の構成に限定されない。
【００２９】
〔第１の発明〕
最初に、本発明の第１の発明に係るデータ埋め込み・抽出技術について説明する。
【００３０】
〈第１の発明の経緯〉
近年主流の音声符号化方式の一つとして、ＣＥＬＰ(Code Excited Linear Prediction)方式がある。このＣＥＬＰ方式で符号化された音声符号に任意の情報を埋め込む方法として、本願出願人が既に特許出願したデータ埋め込み・抽出に係る技術(特願２００２−２６９５８号(以下、「基本技術」と称する)がある。基本技術の特徴は以下の通りである。・符号化データのフォーマットの変更なく、任意データの埋込みが可能
・再生音質への影響を小さく抑えながら、任意のデータを埋め込むことが可能
・再生音質への影響を考慮しながら埋込みデータ量を調整可能。
・ＣＥＬＰ方式がベースであれば特定の方式に限定されることなく、幅広い方式に適用可能。
【００３１】
以下、基本技術について説明する。まず、基本技術の基盤技術としてのＣＥＬＰ方式について説明する。図２は、基本技術の処理概要(ＣＥＬＰ音声符号化方式の符号・復号処理の流れ)を示す図である。ＣＥＬＰ方式は、人間の音声生成モデルに基づく分析により、入力音声からパラメータを抽出して伝送する高圧縮音声符号化技術である。近年のディジタル携帯電話、インターネット電話といった通信システムで採用されているITU-T G.729方式や3GPP AMR方式等の音声符号化方式は、このＣＥＬＰ方式をベースとしている。
【００３２】
図２において、符号器は、ＣＥＬＰ符号器と多重部とを備える。ＣＥＬＰ符号器は、入力音声を符号化し、複数のパラメータ符号(ＬＳＰ符号、ピッチラグ符号、固定符号帳符号、ゲイン符号)を求める。多重部は、ＣＥＬＰ符号器から出力される複数のパラメータ符号を多重化し、音声符号として出力する。復号器は、分離部とＣＥＬＰ復号器とを備える。分離部は、符号器からの音声符号を複数のパラメータ符号に分離する。ＣＥＬＰ復号器は、分離部で分離された各パラメータ符号の復号及び音声の再生を行う。
【００３３】
図３は、ＣＥＬＰ符号器の構成例を示すブロック図である。ＣＥＬＰ符号器は、入力信号(入力音声)を一定長のフレーム単位で符号化する。ＣＥＬＰ符号器は、先ず、入力信号を線形予測分析(ＬＰＣ分析)して線形予測係数(ＬＰＣ係数)を求める。ＬＰＣ係数は、人間の発声における声道特性を全極型の線形フィルタで近似した係数である。この情報は通常ＬＳＰ(線スペクトル対)などに変換されてから量子化される。
【００３４】
次に、ＣＥＬＰ符号器は、音源信号の抽出を行う。ＣＥＬＰでは、音源信号をＬＰＣ係数で構成されるＬＰＣ合成フィルタに入力することで再生音声を生成する。したがって、ＣＥＬＰ符号器は、音源信号の抽出を、符号帳に格納された複数の音源候補の中からＬＰＣ合成フィルタに通した時の再生音声と入力音声との誤差が最小になる最適な系列(音源ベクトル)を探索することで行う。
【００３５】
選択された音源信号は、その格納場所を表す符号帳のインデックスとして伝送される。通常、符号帳は、音源の周期性(ピッチ)を表現するための適応符号帳と、雑音成分を表現するための固定符号帳(雑音符号帳)との２種類で構成される。この場合、適応符号帳のインデックス(ピッチラグ符号)と、固定符号帳のインデックス(固定符号帳符号)とがパラメータ符号としてそれぞれ求められる。このとき、各音源ベクトルの振幅調整のための利得(ゲイン符号(適応符号帳ゲイン及び固定符号帳ゲイン))もパラメータ符号として求められる。抽出された各パラメータ符号は、多重部で、図４に示すような標準フォーマットに準拠する形式で１つに多重され、音声符号として復号器側へ伝送される。
【００３６】
一方、復号器側では、伝送されてきた音声符号が各パラメータに分離され、これらのパラメータに基づく再生音声が生成される。図５は、ＣＥＬＰ復号器の構成例を示すブロック図である。ＣＥＬＰ復号器は、音声生成系を擬似した処理により音声を再生する。具体的には、復号器は、音源系列を指定するインデックス(ピッチラグ符号，及び固定符号帳符号)と利得情報(ゲイン符号)にて音源信号を生成する。
【００３７】
そして、ＣＥＬＰ復号器は、音源信号を線形予測係数(ＬＰＣ係数)で構成されるＬＰＣ合成フィルタに通して、音声を生成(再生)する。即ち、ＬＰＣ合成フィルタは、入力される音源信号に対し、ＬＳＰ符号が復号されたＬＰＣ係数を用いたフィルタリング処理を行い、フィルタを通過した信号を再生信号として出力する。このような処理は次式〈１〉で表される。
【００３８】
Ｓrp＝ＨＲ＝Ｈ(ｇpＰ＋ｇcＣ)・・・〈１〉
但し、Ｓrp：再生信号、Ｒ：音源信号、Ｈ：ＬＰＣ合成フィルタ、ｇp：適応符号語ゲイン、Ｐ：適応符号語、ｇc：固定符号語ゲイン、Ｃ：固定符号語である。
【００３９】
次に、基本技術におけるデータの埋め込み・抽出処理について説明する。図６は、データ埋め込み処理が適用されたＣＥＬＰ方式の符号・復号処理の基本処理概念図を示す図である。図６に示すように、符号器側に設けられる埋め込み処理部，及び復号器側に設けられる抽出処理部は、音声符号に含まれる伝送パラメータを対象として、データの埋め込み又は抽出を行う。
【００４０】
即ち、埋め込み処理部は、ＣＥＬＰ符号器から出力される複数のパラメータ符号のうちの特定のパラメータ符号に対し、埋め込み対象のデータを埋め込む。その後、多重部は、データが埋め込まれたパラメータ符号を含む複数のパラメータ符号を多重化し、データが埋め込まれた音声符号として出力する。この音声符号は、復号器側へ伝送される。
【００４１】
復号器側では、分離部が音声符号を複数のパラメータ符号に分離する。抽出処理部は、複数のパラメータ符号のうちの特定のパラメータ符号に埋め込まれているデータを抽出する。その後、複数のパラメータ符号は、ＣＥＬＰ復号器に入力され、ＣＥＬＰ復号器は、複数のパラメータ符号を復号し、音声を再生する。
【００４２】
次に、埋め込み処理部及び抽出処理部について説明する。前述したように、ＣＥＬＰ符号器で符号化されるディジタルコード(パラメータ符号)は、音声生成系の特徴パラメータと対応している。この特徴に着目すると、各パラメータの状態を把握することができる。
【００４３】
音源信号の２種類の符号語、即ちピッチ音源に対応する適応符号語と雑音音源に対応する固定符号語とに着目すると、これらに対する各利得(ゲイン)が各符号語の寄与度を示すファクタとみなすことができる。つまり、利得が小さい場合には、これに対応する符号語の寄与度が小さくなる。
【００４４】
そこで、各音源符号語に対応するゲインを判定パラメータとして定義する。そして、埋め込み処理部は、ゲインがある閾値以下になる場合には、対応する音源符号語の寄与度が小さいので、この音源符号語のインデックス(ピッチラグ符号又は固定符号帳符号)を、埋め込み対象パラメータとして、埋め込み対象の任意のデータ系列に置き換える。このようにして、データの埋め込み処理が行われる。これによって、データの置き換え(埋め込み)による音質への影響を小さく抑えることができる。また、閾値の制御によって、再生音質への影響を考慮しながら埋込みデータ量を調整することができる。
【００４５】
また、上述した手法によれば、閾値の初期値のみを符号器側及び復号器側の双方で予め定義しておけば、判定パラメータおよび埋め込み対象パラメータのみで、埋込みデータの有無の判定，埋込み場所の特定，および埋込みデータの書込み／読出しが可能となる。さらに、埋込み対象のデータに制御コード(例えば、閾値の変更)を定義しておけば、別経路で付加情報(制御コード)を伝送しなくても、閾値の変更などを行うことができ、埋込みデータの伝送量を調整することができる。
【００４６】
図７及び図８は、固定符号帳ゲインが判定パラメータとして規定され、且つ固定符号帳インデックス(固定符号帳符号)が埋め込み対象パラメータとして規定された場合のデータ埋め込み・抽出処理の概念を説明する図である。
【００４７】
図７に示すように、音声符号に対するデータの埋め込み処理は、埋め込み対象のパラメータ符号Ｍ(Ｍは自然数)bitを、任意のデータ系列のＭbit分で置き換えることにより実施される。一方、図８に示すように、データ抽出処理は、埋め込み処理とは反対に、埋め込み対象パラメータのＭbit分を切り出すことで実施される。なお、切り出された任意のデータ系列は、パラメータの一つとして復号器へ入力される。
【００４８】
図９は、データの埋め込み処理部の構成例を示すブロック図である。図９に示すように、埋め込み処理部には、ＣＥＬＰ符号器からのＬＳＰ符号，ピッチラグ符号，固定符号，及びゲイン符号が入力される。埋め込み処理部は、埋め込み制御部と、スイッチＳ１とを有している。埋め込み制御部は、制御パラメータ(判定パラメータ)として、ゲイン符号が入力されるように構成されている。埋め込み制御部は、ゲインが所定の閾値を越えているか否かを判定し、この判定結果に基づく制御信号をスイッチＳ１に与える。これによって、埋め込み制御部は、スイッチＳ１の切片を、固定符号側(端点Ａ)と埋め込みデータ側(端点Ｂ)との一方に切り替える。
【００４９】
即ち、埋め込み制御部は、ゲインが所定の閾値を越えている場合には、端点Ａを選択し、固定符号を出力する。これに対し、埋め込み制御部は、ゲインが所定の閾値を越えていない場合には、端点Ｂを選択し、埋め込みデータ系列を出力する。このように、埋め込み制御部は、スイッチＳ１の切換えを行い、埋め込み対象のパラメータ符号(固定符号)を任意のデータで置き換えるかどうかを制御する。したがって、埋め込み処理がオフの場合には、データの置き換えが行われず、そのままのパラメータ符号が出力される。
【００５０】
図１０は、データの抽出処理部の構成例を示すブロック図である。抽出処理部は、抽出制御部と、スイッチＳ２とを有している。抽出処理部には、分離部からのＬＳＰ符号，ピッチラグ符号，固定符号，及びゲイン符号が入力される。抽出制御部には、埋め込み制御部と同様に、制御パラメータ(判定パラメータ)として、ゲイン符号が入力される。
【００５１】
抽出制御部は、ゲインが所定の閾値(埋め込み制御部との間で同期がとられている)を越えているか否かを判定し、この判定結果に基づいて、スイッチＳ２をオン／オフする制御信号をスイッチＳ２に与える。即ち、抽出制御部は、ゲインが所定の閾値を越えている場合には、スイッチＳ２をオフにする。これに対し、ゲインが所定の閾値を越えていない場合には、抽出制御部は、スイッチＳ２をオンにする。これによって、固定符号としての埋め込みデータが、分岐線から出力される。このようにして、埋め込みデータが抽出される。  このように、抽出処理部は、抽出制御部によるスイッチＳ２の切換制御によって、抽出処理のオン／オフをフレーム毎に制御する。抽出制御部は、上記した埋め込み制御部と同じ構成を持つ。従って、埋め込み処理と抽出処理は、常に同期して動作する。
【００５２】
以上のように、基本技術によれば、音声の符号化フォーマットを変更することなく、任意のデータを埋込むことができる。つまり、通信／蓄積の用途で必須の互換性を損なうことなく、かつユーザに知られることなく、ＩＤ情報や他メディアの情報を音声情報に埋め込んで伝送／蓄積することができる。
【００５３】
加えて、基本技術によれば、利得、適応／固定符号帳などのＣＥＬＰに共通したパラメータにて、制御仕様を規定する。このため、特定の方式に限定されることなく、幅広い方式に適用できる。例えば、ＶｏＩＰ向けのＧ．７２９や移動体通信向けのＡＭＲなどに適用することができる。
【００５４】
ところで、基本技術では、固定符号ゲインおよび適応符号ゲインを音声品質への寄与度として捉え、判定パラメータとして用いている。音声は、一般的に雑音性の強い子音部では固定符号ゲインが大きくなり、ピッチ性の強い母音部では適応符号ゲインが大きくなる特性を持っている。したがって、入力音声における各ゲインの変化を捉えることで、音声品質への影響のない部分(区間)へのデータ埋め込みを可能としている。
【００５５】
しかしながら、入力音声に背景雑音が重畳される背景雑音環境下ではこれが問題となる。背景雑音が重畳された音声では、音声成分が背景雑音の成分によってマスクされる。このため、上記で述べたゲインパラメータの特性が鈍ってくる。これはＳＮＲ(Signal to Noise Ratio:入力音声パワーに対する背景雑音パワーの割合)が大きくなるほど強くなる。従って、基本技術では音声の特性を正確に捉えることができず、埋め込み区間の誤判定による音質の劣化を引き起こす可能性がある。
【００５６】
また、このような音質の劣化が回避されるように制御閾値を調整すると、埋め込み可能フレームとして判定される頻度が大幅に低下する。このため、背景雑音下でのデータ埋め込み率が大幅に低下する。
【００５７】
図１１は、Ｇ．７２９方式に基本技術を適用した場合の背景雑音種に対する埋め込みデータ伝送レートを示す図である。背景雑音レベルが大きくなるほど、データ伝送レートが大幅に低下し、特に高雑音条件では正確な判定が全くできなくなる。このため、データ埋め込みが不可能となることが分かる。(図１１中のクリーン：背景雑音なし、低雑音：ＳＮＲ≧１０dB、中雑音：５dB＜ＳＮＲ＜１０dB、高雑音：ＳＮＲ≦５dB。埋め込み伝送レートは、入力音声データの６０％が非音声区間として算出)
以上のように、基本技術では、背景雑音環境下において、埋め込み判定性能が低下し、埋め込み区間の誤判定による音質劣化を引き起こす可能性がある。また、これを回避しようとした場合には、データ埋め込み性能が大幅に低下してしまう。
【００５８】
第１の発明は、上述したような基本技術における問題を解決するための試みであり、背景雑音環境下においても音声品質への大きな影響を与えることなく安定したデータ埋め込み性能を提供することを目的とする。
【００５９】
〈第１の発明の概要〉
次に、第１の発明の概要について説明する。図１２は、第１の発明に係るデータ埋め込み部の構成例を示す図であり、図１３は、第１の発明に係るデータ抽出部の構成例を示す図である。
【００６０】
第１の発明の特徴は、次の通りである。
(Ａ)データ埋め込み／抽出の制御パラメータ(判定パラメータ)としてＬＳＰ符号、ピッチラグ符号、固定符号、ゲイン符号の複数のパラメータ(符号化パラメータ)を使用する。
(Ｂ)ピッチラグ符号、固定符号、ＬＳＰ符号の複数のパラメータ符号に対してデータ埋め込みを行う。
(Ｃ)データ埋め込みを行った後の過去のパラメータ符号を用いて、データ埋め込み／抽出の判定制御を行う。
【００６１】
以下、第１の発明における処理の流れを順に説明する。
【００６２】
(データ埋め込み処理)
図１２に示すような、第１の発明に係る埋め込み処理部１０は、図６に示すような符号器の埋め込み処理部として適用される。埋め込み処理部１０は、所定の制御パラメータ(判定パラメータ)を用いて、所定のパラメータ符号(埋め込み対象パラメータ)にデータを埋め込むか否かを判定する埋め込み制御部１１と、埋め込み制御部１１による制御に従ってパラメータ符号と埋め込みデータ系列との一方を選択するスイッチ１２と、埋め込み制御部１１に過去の判定パラメータを与えるための遅延素子群１３とを備えている。
【００６３】
詳細には、埋め込み処理部１０は、ＣＥＬＰ符号器(図６)から出力されるＬＳＰ符号，ピッチラグ符号，固定(又は雑音)符号，及びゲイン符号が夫々入力される複数の入力端子ＩＴ１１,ＩＴ１２,ＩＴ１３,ＩＴ１４を有している。また、埋め込み処理部１０は、ＬＳＰ符号又は埋め込みデータを出力する出力端子ＯＴ１１と、ピッチラグ符号又は埋め込みデータを出力する出力端子ＯＴ１２と、固定符号又は埋め込みデータを出力する出力端子ＯＴ１３と、ゲイン符号を出力する出力端子ＯＴ１４とを有している。各出力端子ＯＴ１〜ＯＴ４から出力されるパラメータ符号又は埋め込みデータは、多重部(図６)に入力される。さらに、埋め込み処理部１０は、埋め込みデータ系列の入力端子ＩＴ１５を有している。
【００６４】
スイッチ１２は、各入力端子ＩＴ１１,ＩＴ１２,ＩＴ１３と、各出力端子ＯＴ１１,ＯＴ１２,ＯＴ１３との間に介在するスイッチＳ１１,Ｓ１２,Ｓ１３とからなる。各スイッチＳ１１,Ｓ１２,Ｓ１３は、埋め込みデータ側の各端点Ａ１,Ａ２,Ａ３と、入力端子側(パラメータ符号側)の各端点Ｂ１,Ｂ２,Ｂ３との一方を選択し、選択した側の入力端子から入力されるパラメータ符号又は埋め込みデータを出力端子側へ伝送する。スイッチ１２(各スイッチＳ１１,Ｓ１２,Ｓ１３)の選択(切替)動作は、埋め込み制御部１１によって制御される。
【００６５】
遅延素子群１３は、ＬＳＰ符号(又は埋め込みデータ)，ピッチラグ符号(又は埋め込みデータ)，固定符号(又は埋め込みデータ)，及びゲイン符号が夫々入力される遅延素子１３−１〜１３−４から構成されている。各遅延素子１３−１〜１３−４は、入力されたパラメータ符号(又は埋め込みデータ)を、一定時間(所定数のフレーム分)だけ遅延させた後、埋め込み制御部１１に入力する。
【００６６】
埋め込み制御部１１は、遅延素子群１３を介して入力される複数のパラメータ符号(ＬＳＰ符号，ピッチラグ符号，固定符号，及びゲイン符号)を判定パラメータとして受け取る。埋め込み制御部１１は、判定パラメータに基づいて、埋め込み処理を行うか否かを判定する。埋め込み制御部１１は、埋め込み処理を行うと判定した場合には、スイッチ１２に対し、各スイッチＳ１１〜Ｓ１３が各端点Ａ１〜Ａ３を選択するための制御信号を与える。これに対し、埋め込み制御部１１は、埋め込み処理を行わないと判定した場合には、スイッチ１２に対し、各スイッチＳ１１〜Ｓ１３が各端点Ｂ１〜Ｂ３を選択するための制御信号を与える。
【００６７】
以上の構成により、埋め込み処理部１０は、次の機能を備える。ＣＥＬＰ符号器から出力されるＬＳＰ符号、ピッチラグ符号、固定符号、及びゲイン符号は、埋め込み処理部１０に入力される。
【００６８】
スイッチ１２(各スイッチＳ１１〜Ｓ１３)は、埋め込み制御部１１からの制御信号に従った端点間の切り替え動作を行う。これによって、ＬＳＰ符号、ピッチラグ符号、固定符号から埋め込みデータ系列への置き換え、即ちデータの埋め込みが行われる。このとき、埋め込みデータ系列は、各パラメータ符号のビット数(情報量)に従って分割され、対応するパラメータ符号と置き換えられる。このように、ＬＳＰ符号，ピッチラグ符号，及び固定符号が埋め込み対象パラメータとして使用される。
【００６９】
埋め込みが行われない場合には、データの置き換えが行われない。即ち、各入力端子ＩＴ１〜ＩＴ４から入力された各パラメータ符号は、そのままで各出力端子ＯＴ１〜ＯＴ４から出力される。
【００７０】
埋め込み制御部１１には、埋め込み処理が終了した後の各パラメータ符号が入力される。このとき、遅延素子群１３により、一定時間(一定フレーム)遅れた過去のパラメータ符号が入力される。埋め込み制御部１１は、ＬＳＰ、ピッチラグ、固定符号語、ゲインの各パラメータを判定パラメータとして用いて埋め込み判定を行い、判定結果を制御信号としてスイッチ１２へ出力する。
【００７１】
なお、上述した各スイッチＳ１１〜Ｓ１３の開閉動作は、埋め込み対象パラメータの増減に応じて個別に制御されるように構成されていても良い。この場合、後述する抽出処理部の各スイッチの開閉動作は、各スイッチＳ１１〜Ｓ１３の開閉動作に同期するように動作する。
【００７２】
(データ抽出処理)
図１３に示すような、第１の発明に係る抽出処理部２０は、図６に示すような復号器の抽出処理部として適用される。抽出処理部２０は、所定の制御パラメータ(判定パラメータ)を用いて、所定のパラメータ符号(抽出対象パラメータ)からデータを抽出するか否かを判定する抽出制御部２１と、抽出処理部２１による制御に応じて埋め込みデータの切り出し／切り出し停止を選択するスイッチ２２と、抽出制御部２１に過去の判定パラメータを与えるための遅延素子群２３とを備えている。
【００７３】
詳細には、抽出処理部２０は、分離部(図６)から出力されるＬＳＰ符号(又は埋め込みデータ)，ピッチラグ符号(又は埋め込みデータ)，固定(又は雑音)符号(又は埋め込みデータ)，及びゲイン符号が夫々入力される複数の入力端子ＩＴ２１,ＩＴ２２,ＩＴ２３,ＩＴ２４を有している。また、抽出処理部２０は、各入力端子ＩＴ２１,ＩＴ２２,ＩＴ２３,ＩＴ２４からそれぞれ入力された複数のパラメータ符号をそれぞれ出力する各出力端子ＯＴ２１,ＯＴ２２,ＯＴ２３,ＯＴ２４を有している。これらの出力端子ＯＴ２１〜ＯＴ２４から出力される複数のパラメータ符号は、ＣＥＬＰ復号器(図６)に入力される。さらに、抽出処理部２１は、スイッチ２２によって切り出された埋め込みデータを出力する出力端子ＯＴ２５を有している。
【００７４】
スイッチ２２は、各入力端子ＩＴ２１,ＩＴ２２,ＩＴ２３から入力される各パラメータ符号を出力端子ＯＴ２５へ出力／出力停止するためのスイッチＳ２１,Ｓ２２,２３からなる。各スイッチＳ２１,Ｓ２２,Ｓ２３は、閉状態になると、各入力端子ＩＴ２１,ＩＴ２２,ＩＴ２３から各出力端子ＯＴ２１,ＯＴ２２,ＯＴ２３へ向けて伝送される各パラメータ符号を分岐させてＯＴ２５へ向けて伝送する。一方、各スイッチＳ２１,Ｓ２２,Ｓ２３が開状態になると、各入力端子ＩＴ２１〜ＩＴ２３から入力される各パラメータ符号は対応する各出力端子ＯＴ２１〜ＯＴ２３のみから出力される状態となる。スイッチ２２(各スイッチＳ２１,Ｓ２２,Ｓ２３)の開閉動作は、抽出制御部２１によって制御される。
【００７５】
遅延素子群２３は、ＬＳＰ符号(又は埋め込みデータ)，ピッチラグ符号(又は埋め込みデータ)，固定符号(又は埋め込みデータ)，及びゲイン符号が夫々入力される遅延素子２３−１〜２３−４から構成されている。各遅延素子２３−１〜２３−４は、入力されたパラメータ符号(又は埋め込みデータ)を、一定時間(所定数のフレーム分)だけ遅延させた後、抽出制御部２１に入力する。
【００７６】
抽出制御部２１は、遅延素子群２３を介して入力される複数のパラメータ符号(ＬＳＰ符号，ピッチラグ符号，固定符号，及びゲイン符号)を判定パラメータとして受け取る。抽出制御部２１は、判定パラメータに基づいて、抽出処理を行うか否かを判定する。抽出制御部２１は、抽出処理を行うと判定した場合には、スイッチ２２に対し、各スイッチＳ２１〜Ｓ２３を閉じるための制御信号を与える。これに対し、抽出制御部２１は、抽出処理を行わないと判定した場合には、スイッチ２２に対し、各スイッチＳ２１〜Ｓ２３を開くための制御信号を与える。
【００７７】
以上の構成を持つ抽出処理部２０は、次の機能を持つ。送信(埋め込み)側から抽出処理部２０に入力された各パラメータ符号は、抽出制御部２１に入力される。このとき、抽出制御部２１には、埋め込み側と同様に、遅延素子群２３によって、一定時間(一定フレーム)過去のパラメータ符号が入力される。
【００７８】
抽出制御部２１は、埋め込み制御部１１と同じ構成を有し、ＬＳＰ、ピッチラグ、固定符号語、ゲインからなる複数のパラメータを用いてデータを抽出するか否かの判定を行い、判定結果を制御信号としてスイッチ２２へ出力する。
【００７９】
スイッチ２２は、抽出制御部２１から出力された制御信号に応じた切替(開閉)動作を行い、埋め込み対象パラメータの夫々からのデータの抽出(切り出し)を制御する。このとき、埋め込み対象パラメータ符号の夫々からは、その応じたビット数(情報量)に従ってデータ系列が切り出され、切り出されたデータ系列が合成され、抽出データ系列としてＯＴ２５から出力される。
【００８０】
上述したように、埋め込み処理部１１を含む符号器(送信側)と抽出処理部２１を含む復号器(受信側)とは、同期をとって動作する。即ち、上述した埋め込みデータ系列の埋め込み処理及び抽出処理は同期をとって行われる。
【００８１】
《第１の発明の作用》
次に、第１の発明の作用を、その特徴毎に説明する。
【００８２】
(特徴(Ａ)による作用)
第１の発明では、特徴(Ａ)として、音源信号の寄与度を表すゲインに加え、信号の周波数概形を現すＬＳＰ、ピッチ周期を表すピッチラグ、再生信号レベルでの信号パワー等のパラメータを、埋め込み／抽出の判定閾値として用いる。これによって、背景雑音環境下において、基本技術よりもさらに正確な埋め込み判定が可能となる。特にＬＳＰは音声特有のフォルマント特性を表わすパラメータであり、背景雑音による影響を受けにくく、埋め込み判定パラメータとして最も適している。
【００８３】
(特徴(Ｂ)による作用)
第１の発明では、特徴(Ｂ)として、判定パラメータとして使用される少なくとも一つのパラメータを含む複数のパラメータ符号にデータを埋め込む。これによって、フレーム当りのデータ埋め込み量が増加する。従って、背景雑音環境下での埋め込み頻度の低下による埋め込み伝送レートの低下を抑制することができる。
【００８４】
(特徴(Ｃ)による作用)
第１の発明では、特徴(Ｃ)として、埋め込み処理を行った後の過去のパラメータ符号を埋め込み／抽出の判定パラメータとして用いる。これによって、埋め込み側と抽出側の同期を保障することができる。また、抽出の制御用パラメータを追加することなく、送信側で埋め込んだデータを受信側で正常に抽出することができる。
【００８５】
〈第１の発明の実施例〉
次に、図面を参照して、本発明の第１の発明の実施例について説明する。実施例の構成は例示であり、第１の発明は、実施例の構成に限定されない。
【００８６】
《第１実施例》
図１４は、第１の発明の第１実施例の構成例を示す図である。第１の実施例として、ITU-T G.729の音声符号化方式(G.729方式)に対し、第１の発明に係る埋め込み方式を適用した場合の符号器３０(データ埋め込み側)について説明する。
【００８７】
図１４において、符号器３０は、G.729符号器３１と、符号器３１の後段に設けられる埋め込み処理部３２と、埋め込み処理部３３の後段に設けられる多重部３３とを備えている。
【００８８】
(G.729の概要)
図１５は、G.729方式の諸元を示す表(表１)と、伝送パラメータと量子化ビット割当を示す表(表２)とを示す図である。G.729では、フレーム長１０ｍｓ(８０サンプル)の入力信号を８０ビットで符号化する。G.729は、基本的にＣＥＬＰ方式をベースとしている。特徴としては、固定符号帳として４本のパルスで構成される代数符号帳を用いている。したがって、伝送パラメータは、ＬＳＰ、ピッチラグ、代数符号(代数符号帳インデックス)、及びゲインである。
【００８９】
(埋め込み対象パラメータ)
図１６は、G.729方式の音声符号の構成、及び実施例における埋め込み対象パラメータの説明図である。第１実施例では、代数符号SCB#COD(３４bit(１７+１７bit))と、ピッチラグ符号LAG#COD(１３bit(８+５bit))と、１８bitで構成されるＬＳＰ符号LSP#CODの一部(５bit)を埋め込み対象として、データの埋め込みが行われる。
【００９０】
ここで、ＬＳＰ符号の一部の５bitについて説明する。G.729のＬＳＰ量子化器(符号器３１に含まれている)は、ＭＡ予測を用いて予測した１０個のＬＳＰ予測値と実際のＬＳＰとの誤差を２段構成の量子化テーブルでベクトル量子化する構成を持つ。従って、ＬＳＰ符号の１８bitは、図１６に示すように、ＭＡ予測係数の切り替え情報MODE(１bit)、１段目の量子化テーブルのインデックスIdx1(７bit)、２段目の低次側の量子化テーブルのインデックスIdx2#low(５bit)、２段目の高次側の量子化テーブルのインデックスIdx2#high(５bit)で構成される。予備検討の結果、代数符号、ピッチラグ符号に加え、ＬＳＰの２段目の高次側の量子化テーブルのインデックスidx2#highは、非音声区間において品質への影響が小さいことが解った。このため、当該５bitを埋め込み対象とする。
【００９１】
従って、本実施例では、G.729の音声符号の１フレームを構成する８０bit中の５２bitにデータを埋め込む。
【００９２】
(データ埋め込み処理)
第１実施例では、会話音声品質への影響が小さい非音声区間のフレームが埋め込み対象フレームと規定され、この埋め込み対象フレームにデータが埋め込まれる。非音声区間の検出には、ＶＡＤ(Voice Active Detector)技術を適用することができる。ＶＡＤは、入力信号から求められる複数のパラメータを分析して、その区間(信号)が音声区間か非音声区間であるかを判定する技術である(例えば、特許文献３及び４より周知)。
【００９３】
図１４に示す埋め込み制御部３４は、ＶＡＤを含み、ＶＡＤによる判定結果が非音声区間である場合には、埋め込み制御部３４は、スイッチＳＷ１の各スイッチＳＷ１１,ＳＷ１２,ＳＷ１３の夫々を、埋め込みデータ系列IN#DAT側の各端点Ａ１１,Ａ１２,Ａ１３側に切り替えて埋め込み処理を行う。これに対し、埋め込み制御部３４は、ＶＡＤによる判定結果が音声区間である場合には、スイッチＳＷ１を各端点Ｂ１１,Ｂ１２,Ｂ１３側に切り替えて、データの埋め込みを行わない。
【００９４】
第１実施例に適用されるＶＡＤは、区間判定用(埋め込み判定用)の入力パラメータとして、ＬＳＰ、ピッチラグ、及び再生信号(全伝送パラメータから生成する)を必要とする。つまり、ＬＳＰ、ピッチラグ、代数符号(固定符号)、ゲインのすべての伝送パラメータが埋め込み・抽出処理の制御に必要となる。
【００９５】
従って、埋め込み対象パラメータ(ＬＳＰ、ピッチラグ、代数符号)が制御用パラメータに含まれることを考慮する必要がある。以下、データ埋め込み処理について図１４を用いて順に説明する。
【００９６】
先ず、入力音声信号IN#SIG(n)が、フレーム毎(80サンプル)に、G.729符号器３１に入力される。ここで、入力音声信号IN#SIG(n)は、８kHzサンプリング１６bitのリニアＰＣＭ信号である。また、図１４における“ｎ”は現フレームのフレーム番号である。G.729符号器３１は、入力音声信号IN#SIG(n)を符号化して、符号化パラメータ(パラメータ符号)であるＬＳＰ符号LSP#COD(n)，ピッチラグ符号LAG#COD(n)，代数符号SCB#COD(n)，及びゲイン符号GAIN#COD(n)を出力する。また、G.729符号器３１は、符号化処理の過程で生成されるＬＰＣ合成フィルタ出力LOCAL#OUT(n)を埋め込み制御部３４へ出力する。ここでG.729符号器３１による符号化処理は、G.729規格に基づく符号化処理と同じである。
【００９７】
埋め込み制御部３４は、現フレームｎの音声符号にデータを埋め込むかどうかの判定を行う。上述したように、埋め込み制御部３４はＶＡＤを含む。埋め込み制御部３４は、入力されたＬＳＰ，ピッチラグ，再生信号の各パラメータを分析して非音声区間(のフレーム)を検出し、スイッチＳＷ１へ埋め込み制御信号を出力する。なお、埋め込み制御部３４は、フレームが音声区間か非音声区間かを入力パラメータに基づいて判定するための閾値を予め有している。
【００９８】
検出結果が非音声区間(のフレーム)の場合には、埋め込み制御部３４は、スイッチＳＷ１を各端点Ａ１１〜Ａ１３側に設定し、埋め込み対象符号であるLSP#COD(n)の一部、LAG#COD(n)、SCB#COD(n)を埋め込みデータ系列IN#DATで置き換えて、LSP#COD(n)’、LAG#COD(n)’、SCB#COD(n)’として多重部３３に出力する。
【００９９】
ここで、埋め込み処理と抽出処理との同期を保障するためには、埋め込み制御に用いる符号化パラメータとして埋め込みを施された後の符号化パラメータ(パラメータ符号)を使用する必要がある。そこで、第１実施例では、図１４に示すように、１フレーム分の遅延を発生する遅延素子３５−１,３５−２,３５−３が設けられ、１フレーム分過去のＬＳＰ符号 LSP#COD’(n-1)，ピッチラグ符号LAG#COD’(n-1)，及び再生信号LOCAL#OUT#SIG(n-1)が埋め込み制御部３４(ＶＡＤ)に入力される。
【０１００】
多重部３３は、入力された各符号化パラメータ(LSP#COD’(n)、LAG#COD’(n)、SCB#COD’(n),GAIN#COD(n))を、図１６に示した構成で多重化し、第ｎフレームのG.729音声符号G.729#COD(n)として復号器側へと出力する。
【０１０１】
(G.729符号器のメモリ状態更新)
さらに、符号器３０は、符号器と復号器の同期を保障するために、埋め込み処理が施された後の伝送パラメータを用いて状態更新を行う。具体的には、図１４に示すように、埋め込みが施された後の伝送パラメータ(LSP#COD’(n)、LAG#COD’(n)、SCB#COD’(n))がG.729符号器３１へ入力されて音源信号が生成され、適応符号帳及びＬＰＣ合成フィルタ(例えば図３参照)のメモリ更新が行われる。状態更新は、G.729規格本来の処理と同じである。また、この過程で生成される再生信号LOCAL#OUT#SIG(n)は、前述したように、次フレームの埋め込み制御用パラメータとして埋め込み制御部３３へ向けて出力される。
【０１０２】
《第２実施例》
図１７は、第１の発明の第２実施例の構成例を示す図である。第２実施例は、ITU-T G.729音声符号化方式に第１の発明の埋め込み方式を適用した場合の復号器(データ抽出側)の例である。第２実施例では、第１実施例によってG.729音声符号に埋め込まれたデータの抽出を行う。以下、データ抽出処理について図１６を用いて順に説明する。
【０１０３】
図１７において、復号器４０は、分離部４１と、分離部４１の後段に設けられる抽出処理部４２と、抽出処理部４２の後段に設けられるG.729復号器４３とを備えている。
【０１０４】
符号器側(例えば符号器３０)から伝送されてくる、G.729の音声符号G.729#COD(n)は、分離部４１に入力される。分離部４１は、音声符号G.729#COD(n)を複数のパラメータ符号(LSP#COD’(n)、LAG#COD’(n)、SCB#COD’(n)、GAIN#COD(n))に分離し、抽出処理部４２に入力する。
【０１０５】
抽出処理部４２は、抽出制御部４４と、スイッチＳＷ２(スイッチＳＷ２１,ＳＷ２２,ＳＷ２３)と、各遅延素子４５−１,４５−２,４５−３を備えている。抽出制御部４４は、現フレームｎの音声符号からデータを抽出するかどうかの判定を行う。
【０１０６】
ここで、抽出制御部４４は、第１実施例の埋め込み制御部３４とまったく同じ構成を持ち、各遅延素子４５−１,４５−２,４５−３を通過した１フレーム過去のＬＳＰ符号LSP#COD’(n-1)、ピッチラグ符号LAG#COD’(n-1)、再生信号LOCAL#OUT#SIG(n-1)の各パラメーが入力される。抽出制御部４４は、入力される各パラメータを用いて、ＶＡＤにより非音声区間を検出し、スイッチＳＷ２へ抽出制御信号を出力する。即ち、抽出制御部４４は、検出結果が非音声区間の場合には、スイッチＳＷ２(各スイッチＳＷ２１,ＳＷ２２,ＳＷ２３)を閉じて、埋め込み対象符号であるLSP#COD’(n)の一部、LAG#COD’(n)、SCB#COD’(n)を抽出データ系列OUT#DATとして出力する。
【０１０７】
G.729復号器４３は、分離部４１から出力され、且つ抽出処理部４２を通過した各パラメータ符号を受け取る。G.729復号器４３は、各パラメータ符号を復号化して第ｎフレームの再生信号OUT#SIG(n)を出力する。ここでG.729復号器４３による復号化処理は、G.729規格本来の処理と同じである。また復号化処理の過程で生成されるＬＰＣ合成フィルタ出力LOCAL#OUT(n)を抽出制御部４４へ向けて出力する。
【０１０８】
《実施例の作用及び効果》
図１８は、基本技術に係る方法と第１の発明に係る方法とのデータ埋め込み性能を比較した結果を示す図である。図１８では、音声符号／復号方式として、G.729が適用されている。
【０１０９】
第１の発明によれば、複数のパラメータに同時にデータ埋め込みを行うことにより、１フレーム当りの埋め込みデータ量が増加する。これによって、クリーンな音声条件での伝送レートが向上している。
【０１１０】
さらに、第１の発明によれば、埋め込み判定パラメータとして複数のパラメータが用いられる。これによって、背景雑音下での埋め込み制御の精度が向上する。従って、基本技術で問題となっていた背景雑音条件下での埋め込み伝送レートが大幅に増加している。特に、基本技術において埋め込みが不可能であった高雑音条件でもデータ埋め込みが可能となる。
【０１１１】
さらに、第１の発明によれば、音声への影響が小さい非音声区間を判定し、この非音声区間のフレームにおける音声符号に対して埋め込みを行う。これによって、データ埋め込みによる音声品質の劣化はほとんど生じない。
【０１１２】
以上のように、第１の発明によれば、データ埋め込みの基本性能を向上すると共に、背景雑音条件下でのデータ埋め込み性能を大幅に改善することが可能となる。
【０１１３】
データ埋め込み方式は、携帯電話等の通信システムにも適用可能であり、使用される実環境では背景雑音の影響を考慮することは重要である。本発明は実環境下での性能を向上させるものであり、データ埋め込み方式の製品への適用において大きな効果がある。
【０１１４】
なお、本発明は、上述したような符号器(埋め込み処理部)と復号器(抽出処理部)との双方の構成を備える音声符号／復号装置(音声ＣＯＤＥＣ(データ符号／復号装置))として構成することができる。
【０１１５】
〔第２の発明〕
次に、本発明の第２の発明に係るデータ埋め込み技術について説明する。第２の発明は、マルチメディアコンテンツ(静止画、動画、オーディオ、音声等)などのディジタルデータ系列に対して、その一部を別の任意のデータと置き換えることにより実現されるデータ埋め込み技術に関する。
【０１１６】
このようなデータ埋込み技術では、伝送ビット系列に影響を与えることなく、別の任意の情報を埋め込むことができる。このため、例えば、ディジタル画像に著作権情報を埋め込んで不正コピーを防ぐ、音声符号化により圧縮された音声符号にID情報を埋め込んで通話の秘匿性を向上させるなどの「電子透かし技術」として、近年重要性が高まっている。
【０１１７】
〈第２の発明の経緯〉
次に、第２の発明の経緯について説明する。
【０１１８】
《ＣＥＬＰ》
近年、広く普及している携帯電話や、徐々に普及しつつあるインターネット電話では、回線を有効利用するため、音声は符号化により圧縮され、音声符号として送受信される。このような音声符号化技術において、低ビットレートでも音声品質が優れている符号化方式として、符号励振線形予測(Code Excited Linear Prediction：ＣＥＬＰ)方式が知られている。ITU-T(International Telecommunication Union-Telecommunication sector)のG.729方式、3GPP(3rd Generation Partnership Project)のAMR(Adaptive Multi Rate)方式のような、多くの音声符号化規格で、ＣＥＬＰをベースとした符号化方式が採用されている。
【０１１９】
ＣＥＬＰについて簡単に説明する。ＣＥＬＰは、1985年にM.R.Schroder氏とB.S.Atal氏によって発表された音声符号化方式である。ＣＥＬＰは、人間の音声生成モデルに基づいて入力音声からパラメータを抽出し、パラメータを符号化して伝送する。これによって、、高能率の情報圧縮が実現される。図１９は、音声の生成モデルを示す図である。音声は、音源(声帯)で発生された音源信号が調音系(声道)に入力され、声道において声道特性が付加された後、最終的に唇から音声波形となって出力される。
【０１２０】
図２０は、ＣＥＬＰに基づく符号器・復号器の処理の流れを示す図である。ＣＥＬＰ符号器は、前述の音声生成モデルに基づいて入力音声を分析し、入力音声を声道特性を表す線形予測係数(Linear Predictor Coefficients：ＬＰＣ係数)と、音源信号とに分離する。更に、符号器は、音源信号から、この音源信号の周期成分を表す適応符号帳(Adaptive CodeBook：ＡＣＢ)ベクトル、非周期成分を表す固定符号帳(Stochastic CodeBook：ＳＣＢ)ベクトル、及び両ベクトルの利得(ゲイン)を抽出する。以上が、パラメータ抽出処理である。符号化処理では、ＬＰＣ係数、ＡＣＢベクトル、ＳＣＢベクトル、ＡＣＢ利得、ＳＣＢ利得のそれぞれが符号化される。多重化処理では、符号化処理によって符号化された複数の符号が多重化された音声符号が生成される。音声符号は、復号器へ伝送される。
【０１２１】
一方、復号器は、分離処理において、符号器からの音声符号を、ＬＰＣ係数、ＡＣＢベクトル、ＳＣＢベクトル、ＡＣＢ利得、ＳＣＢ利得の各符号に分離する。また、復号器は、復号処理において、各符号を復号する。そして、復号器は、音声合成処理において、復号処理で復号された各パラメータから音声を合成する。
【０１２２】
図２１は、ＣＥＬＰに基づく符号器の構成例を示すブロック図である。ＣＥＬＰでは、入力音声を一定長のフレーム単位で符号化する。まず、線形予測分析(ＬＰＣ分析)により、入力音声からＬＰＣ係数を求める。このＬＰＣ係数は、声道特性を全極型の線形フィルタで近似した際のフィルタ係数である。次に、音源信号の抽出を行う。音源信号の抽出には、合成による分析(Analysis by Synthesis：ＡｂＳ)手法が用いられる。
【０１２３】
ＣＥＬＰでは、音源信号を、ＬＰＣ係数で構成されるＬＰＣ合成フィルタに入力することで音声を再生する。従って、適応符号帳に格納された複数のＡＣＢベクトル、雑音符号帳に格納された複数のＳＣＢベクトル、及び両ベクトルの利得により構成される音源候補から、ＬＰＣ合成フィルタによって音声を合成した際に入力音声との誤差が最小になる符号帳の組み合わせを探索し、ＡＣＢベクトル、ＳＣＢベクトル、ＡＣＢ利得、ＳＣＢ利得を抽出する。以上の操作により抽出された各パラメータは符号化され、ＬＰＣ符号、ＡＣＢ符号、ＳＣＢ符号、ＡＣＢ利得符号、及びＳＣＢ利得符号が得られる。得られた複数の符号は多重化され、音声符号として復号器側へ伝送される。
【０１２４】
図２２は、ＣＥＬＰに基づく復号器の構成例を示すブロック図である。復号器では、伝送された音声符号が各パラメータ符号(ＬＰＣ符号、ＡＣＢ符号、ＳＣＢ符号、ＡＣＢ利得符号、及びＳＣＢ利得符号)に分離される。次に、ＡＣＢ符号、ＳＣＢ符号、ＡＣＢ利得符号、及びＳＣＢ利得符号が復号化されて音源信号が生成される。そして、音源信号がＬＰＣ符号を復号して得られるＬＰＣ係数によって構成されるＬＰＣ合成フィルタに入力され、音声が再生・出力される。
【０１２５】
《データ埋め込み技術》
上述したように、近年、画像・音声といったマルチメディアコンテンツなどのディジタルデータ系列に任意のデータを埋め込む「データ埋め込み技術」が注目を集めている。データ埋め込み技術は、人間の知覚の特性を利用し、マルチメディアコンテンツ自体に、品質に影響を与えることなく別の任意の情報を埋め込む技術である。データ埋め込み技術については、図１を用いて説明した通りである。
【０１２６】
データ埋め込み技術の一つとして、上述した基本技術(特願2002-26958)がある。基本技術では、音声符号に含まれる伝送パラメータを対象にデータの埋め込み・抽出が行われる。図２３は、固定符号帳を埋め込み対象とした場合の基本技術におけるデータ埋め込み・抽出の処理フローを示す。基本技術では、ＣＥＬＰ符号器から出力されたパラメータ符号に対して、データ埋め込みが実施される。その後、パラメータ符号が多重化され、データが埋め込まれた音声符号としてＣＥＬＰ復号器側へ伝送される。ＣＥＬＰ復号器側では、伝送された音声符号は符号化パラメータに分離され、抽出処理部で埋め込まれたデータが抽出される。その後、ＣＥＬＰ復号器へパラメータ符号が入力され再生音声への復号処理が行われる。
【０１２７】
前述したように、ＣＥＬＰにて符号化された伝送パラメータは音声生成系の特徴パラメータと対応している。この特徴に着目すると、各パラメータの状態を把握することができる。音源信号の２種類の符号、ピッチ音源に対応する適応符号帳ベクトルと雑音音源に対応する固定符号帳ベクトルとに着目すると、これらの利得を各符号帳ベクトルの寄与度を示すファクタとみなすことができる。つまり、利得が小さい場合には対応する符号帳ベクトルの寄与度が小さくなる。そこで、利得を判定パラメータとして定義し、ある閾値以下になる場合は対応する音源符号帳ベクトルの寄与度が小さいと判断して、音源符号帳ベクトルの符号を任意のデータ系列で置き換えることで、データ埋め込みを行う。これにより、データ置き換えによる音質への影響を小さく抑えながら、任意のデータを埋め込むことが可能となる。
【０１２８】
図２４及び図２５は、判定パラメータを固定符号帳利得、埋め込みパラメータを固定符号帳符号とした場合のデータ埋め込み・抽出処理の概念図である。埋め込み処理は、図２４に示すように、判定パラメータが閾値以下の場合において、埋め込み対象のパラメータ符号を任意のデータ系列で置き換えることにより実施される。
【０１２９】
一方、図２５に示すように、データ抽出処理は、判定パラメータが閾値以下の場合において、埋め込み処理とは反対に、埋め込み対象パラメータを切り出すことで実施される。ここで、判定パラメータの閾値として、埋め込み側と抽出側とで同じ閾値が用いられる。すなわち、埋め込み判定と抽出判定は同じパラメータ、同じ閾値を用いる。これにより、埋め込み処理と抽出処理は、常に同期して動作する。
【０１３０】
以上のように、基本技術によれば、符号化フォーマットを変更することなく、任意のデータを埋め込むことができる。つまり、通信／蓄積の用途で必須の互換性を損なうことなく、かつユーザに知られることなく、著作権情報やＩＤ情報、あるいは他のメディアの情報を音声情報に埋め込んで伝送／蓄積することができる。加えて、利得、適応／固定符号帳符号などＣＥＬＰに共通したパラメータにて、埋め込み・抽出制御を行うため、特定の方式に限定されることなく、幅広い方式に適用できる。
【０１３１】
ところで、基本技術によるデータ埋め込み・抽出方式では、伝送される音声符号を対象に判定に用いるパラメータ、判定閾値、データ埋め込み対象パラメータを送受双方で予め定義し、双方で等しい閾値および判定パラメータを用いてデータの埋め込み及び抽出を行う。つまり、送受双方で伝送パラメータが同期している(同じ状態にある)ことが絶対条件である。
【０１３２】
しかしながら、伝送路で音声符号にエラー(ビット誤りまたはフレーム消失)が挿入された場合、同期状態が保持できなくなり、受信側で埋め込みデータを正常に抽出することができなくなる。特に、ＣＥＬＰ方式のように、過去フレームの状態が現フレームに影響する符号化方式では、伝送パラメータがしばらくの間(数〜数十フレーム程度)正常値に戻らない。
【０１３３】
従って、その間に受信した音声符号にデータが埋め込まれていたかどうかを正確に判定して抽出することが困難となる。また、受信できたとしても、埋め込みデータにエラーが含まれている可能性がある。
【０１３４】
音声符号化方式としては、このような伝送路に対し、音声品質の極端な劣化を防ぐため、誤り隠蔽技術が適用されている。しかし、このような誤り隠蔽技術は、過去のパラメータなどを利用して現在のパラメータを生成するものであり、失われたパラメータを元に修復するわけではない。つまり、埋め込みデータにとって音声符号の誤りは大きな問題となる。特に、データが送受信側の双方で完全に一致することを求められるもの(例えばＩＤ情報など)であった場合、その影響は大きい。
【０１３５】
上記した問題を解決する手段として、埋め込みデータにエラー検出信号を付加し、受信側でエラーを検出した場合に送信側にデータの再送を要求することによって、データを確実に送受信するという方法が考えられる。例えば、埋め込み対象となるビット数がＭbit/frameであった場合、ＭbitのうちＮbitにデータを埋め込み、残り(Ｍ−Ｎ)bitに対してエラー検出信号を埋め込む(Ｍ及びＮは自然数)。こうすることで、受信側では埋め込みデータのエラーの有無を検出することができる。そして、エラーが検出された場合には、予め定めておいた再送コマンドを音声符号に埋め込んで送信側に送るなどの方法により、再送を要求する。このように、エラー検出機能を付加し、エラーを検出した際は再送を行うことで、埋め込みデータを確実に送受信することが期待できる。
【０１３６】
なお、エラー検出信号としては、シーケンス番号やチェックサム、或いはＣＲＣ(Cyclic Redundancy Check(巡回冗長検査))符号といった技術が公知である。以下に、これらのエラー検出アルゴリズムを簡単に説明する。
【０１３７】
《シーケンス番号》
シーケンス番号が適用される場合には、送信側でデータブロックの１単位ごとに０,１,３…と連続した番号を付加して送信し、受信側でその番号をチェックすることで、データの連続性をチェックする。例えば、受信されたシーケンス番号が０,１,２,４…という順番であった場合には、“３”というシーケンス番号のデータブロックが消失したことがわかる。
【０１３８】
しかし、シーケンス番号によるチェックでは、データブロック内の一部のビットにエラーが生じた場合をチェックすることはできない。また、シーケンス番号にｘbit(ｘは自然数)を割り当てた場合、２ｘブロック未満の連続したブロックの消失を検出することは可能であるが、それ以上の連続したブロック消失を確実に検出することはできない。この理由を図２６を用いて説明する。
【０１３９】
今、シーケンス番号に２bitが確保されており、００→０１→１０→１１→００…と推移していくものとする。また、網掛けが施されているデータブロックが消失したブロックであることを示す。このとき、図２６(１)のように、消失ブロック数が４ブロック未満の場合であれば、シーケンス番号の推移の不連続性によって、ブロックが消失したことを検出し、消失したブロックを特定できる。例えば、図２６(１)では“０１”が消失している。このため、００→０１→１０→…と推移すべきシーケンス番号が、００→１０→…となる。従って、“０１”のブロックが消失したことがわかる。
【０１４０】
しかし、図２６(２)のように、消失ブロック数が４ブロックであった場合には、シーケンス番号推移の連続性は保たれる。このため、ブロック消失があったことを検出できない。
【０１４１】
更に、図２６(３)のように、消失ブロック数が５ブロック以上であった場合を考えると、消失ブロック数が２xの整数倍でなければ、シーケンス番号推移が不連続になるのでブロック消失が生じたことは検出可能である。だが、図２６(３)を見ると、シーケンス番号は００→１０と、図２６(１)と全く同じように推移している。つまり、実際には５ブロック消失しているにもかかわらず、１ブロックの消失と判断してしまう虞がある。この問題を解消するには、シーケンス番号にできるだけ多くのビットを割り当てることが有効である。しかし、そうすると、データ本体に割り当てるビット数が少なくなり、データ転送速度が低下する。
【０１４２】
《チェックサム》
チェックサムとは、ブロック内のデータをビットごとに分割し、各ビットを数値とみなして合計を取ったものである。例えば、“１０１１”という４bitのデータがあった場合、チェックサムは、１＋０＋１＋１＝３より、３となる。送信側は、このチェックサムをデータに付加して送信し、受信側では、送られてきたチェックサムと、データから計算したチェックサムとを比較し、エラーの有無を調査する。例えば、上の例の４bitデータのうち、伝送路エラーによって上位１bitが“１”から“０”に反転した場合(つまり、“００１１”となった場合)には、送られてきたチェックサムが“３”であるのに対し、受信側で計算するチェックサムは“２”となる。従って、伝送路でデータにエラーが生じたことを検出できる。
【０１４３】
しかし、チェックサムでは、上述の通り、データの一部のエラーはチェック可能であるが、データブロックそのものが消失した場合については検出できない。
【０１４４】
更に、チェックサムには、２bit以上のビットエラーを検出できない可能性があるという脆弱性がある。具体的には、ビットエラーにより「“０”から“１”に反転したビットの数」と、「“１”から“０”に反転したビットの数」とが同じであった場合には、エラーを検出できない。例えば、“１０１１”という４bitのデータの上位２bitが伝送路エラーにより“０１１１”となった場合には、受信側で計算するチェックサムは“３”となる。この場合には、ビットが誤っているにも関わらず、チェックサムは等しくなる。従って、エラーを検出することができない。
【０１４５】
《ＣＲＣ符号》
ＣＲＣは、生成多項式と呼ばれる予め定められた多項式を用いた誤り検出アルゴリズムである。具体的には、データ多項式をＰ(ｘ)、生成多項式をＧ(ｘ)、生成多項式の最高次数をｎとした場合、ＣＲＣ符号は、Ｐ(ｘ)・ｘn÷Ｇ(ｘ)の余りとして定義される。つまり、ＣＲＣ符号は、生成多項式より１次少ない多項式となる。なお、ここで除算を行う際に生じる減算には排他的論理和を用いる。送信側は、ＣＲＣ符号をデータに付加して送信する。受信側では送られてきたデータと生成多項式とを用いてＣＲＣ符号を計算し、送られてきたＣＲＣ符号と比較する。このようにして、エラーの有無を調査する。以下にＣＲＣ符号算出の一例を示す。
【０１４６】
今、データを“１０１１”とすると、データの多項式Ｐ(ｘ)は、Ｐ(ｘ)＝ｘ3＋ｘ＋１となる。生成多項式Ｇ(ｘ)として、Ｇ(ｘ)＝ｘ3＋１を与えると、ＣＲＣ符号は、
Ｐ’(ｘ)・ｘn÷Ｇ(ｘ)＝(ｘ3＋ｘ＋１)・ｘ3÷(ｘ3＋１)＝ｘ3＋ｘ 余りｘ
より、“０１０”となる。そして、このＣＲＣ符号Ｃ(ｘ)をデータに付加して送信する。
【０１４７】
受信側では、送られてきたデータから送信側と同様にしてＣＲＣ符号を求め、Ｃ(ｘ)と比較して、エラーをチェックする。例えば、送信中に伝送路エラーが生じて、上位１bitが反転したデータ(すなわち、“００１１”) を受信した場合、受信側で計算されるＣＲＣ符号は、
Ｐ’(ｘ)・ｘn÷Ｇ(ｘ)＝(ｘ＋１)・ｘ3÷(ｘ3＋１)＝ｘ＋１ 余り ｘ＋１
より、ＣＲＣ符号は“０１１”となり、送られてきたＣＲＣ符号と異なる。これによって、エラーがあったことを検出することができる。同様に、チェックサムでは検出できない上位２bitの反転の場合(“０１１１”)についても求めてみると、
Ｐ’(ｘ)・ｘn÷Ｇ(ｘ)＝(ｘ2＋ｘ＋１)・ｘ3÷(ｘ3＋１)＝ｘ2＋ｘ＋１ 余り ｘ2＋ｘ＋１
より、ＣＲＣ符号は“１１１”となり、やはり送られてきたＣＲＣ符号と異なる。このため、エラーを検出することができる。
【０１４８】
以上より、ＣＲＣ符号はチェックサムでは検出できない可能性のある２bit以上のエラーも検出することが可能である。具体的には、生成多項式がｎ次であった場合、ｎbit未満のエラーであれば、確実に検出することが可能である。しかし、言い換えれば、検出できるエラービット数を増やすために、生成多項式のビット数を増やす必要がある。そうすると、ＣＲＣ符号に割り当てるビット数も増加し、データ本体以外に割り当てるビット数が増える。このため、エラー耐性が向上する一方でデータ転送速度が低下する。更に、ＣＲＣでは、チェックサムと同様に、データブロックそのものが消失した場合についてはエラーを検出することができない。
【０１４９】
以上から、エラーを正確に検出するためには、シーケンス番号などのブロック消失検出アルゴリズムと、ＣＲＣ符号などのビットエラー検出アルゴリズムを併用する必要があると考えられる。しかし、この場合には、エラー検出信号に多くのビットを割り当てる必要がある。
【０１５０】
例えば、ITU-T G.729符号化方式の固定符号帳３４bit/frameにデータを埋め込む場合を考える。このとき、図２７に示すように、シーケンス番号４bit、ＣＲＣ符号８bitをエラー検出信号として割り当てた場合には、１６フレーム未満の連続フレーム消失と、８bit未満のビットエラーを検出することができる。しかし、埋め込みデータ本体の割り当てビット数が２２bitと少なくなり、データ転送速度がエラー検出なしの場合に比べて約３５％低下してしまう。
【０１５１】
この問題に鑑み、データ本体の割り当てビットを増やすために、エラー検出信号をシーケンス番号１bitとパリティービット(１bitのチェックサム)などとした場合には、データ転送速度は改善される。しかし、２フレーム以上の連続したフレーム消失や、２bit以上のビットエラーに対応できない場合があるなど、エラー検出能力が弱まる。
【０１５２】
このように、エラー検出能力とデータ転送速度はトレードオフの関係にあり、データ転送速度を維持したままエラー検出能力を高めることは困難である。
【０１５３】
第２の発明は、上述した問題に鑑み、データ受信側で正確な埋め込みデータを得ることができる技術を提供することを目的とする。また、第２の発明は、データ転送速度を低下させることなくエラー検出能力を高めることを目的とする。
【０１５４】
〈第２の発明の概要〉
次に、第２の発明の概要を説明する。第２の発明は、データ転送速度を維持したままエラー検出能力を高める手段として、埋め込みデータとエラー検出信号とで、１フレームに対するデータ埋め込みが可能なビット数より大きいデータブロック(以降、「大ブロック(第２のデータブロック)」と呼ぶ)を構成し、大ブロックを１フレーム毎の埋め込みサイズに合わせて「小ブロック(第１のデータブロック)」に分割して送受信を行うことを特徴とする。
【０１５５】
図２８に第２の発明の原理図を示し、以下に各処理について説明する。図２８(１)は、データ送信側(符号器１００側)の原理を示し、図２８(２)はデータ受信側(復号器１１０側)の原理を示す。
【０１５６】
図２８(１)に示すように、符号器１００は、音声符号器１０１と、データ埋め込み部１０２と、データブロック構成部１０３とを備え、データブロック構成部１０３は、大ブロック構成部１０４と、小ブロック構成部１０５とを含む。
【０１５７】
音声符号器１０１は、入力される音声を符号化し、データ埋め込み部に渡す。
【０１５８】
データブロック構成部１０３には、送信データ(埋め込み対象のデータ系列)が入力される。大ブロック構成部１０４は、送信データから大ブロックを生成し、小ブロック構成部１０５に入力する。小ブロック構成部１０５は、大ブロックから複数の小ブロックを生成し、各小ブロックをデータ埋め込み部１０２に送る。
【０１５９】
図２９は、大ブロック及び小ブロックの構成方法の説明図である。図２９に示すように、大ブロック構成部１０４は、送信データとしての埋め込みデータにエラー検出信号を付加した大ブロックを生成し、小ブロック構成部１０５に渡す。小ブロック構成部１０５は、大ブロックを１フレームに夫々対応する所定数の小ブロック１〜ｎ(ｎは自然数)に分割することによって、複数の小ブロックを生成する。
【０１６０】
データ埋め込み部１０２は、データブロック構成部１０３からの各小ブロックを１フレーム分の音声符号に埋め込み、データが埋め込まれた音声符号として送信する。
【０１６１】
図２８(２)に示すように、復号器１１０は、データ抽出部１１１と、音声復号器１１２と、データブロック復元部１１３と、データブロック検証部１１４とを備える。
【０１６２】
データ抽出部１１１には、符号器側から伝送されてきた音声符号が入力される。データ抽出部１１１は、音声符号から小ブロックを抽出し、データブロック復元部１１３に送るとともに、音声復号器１１２に音声符号を渡す。
【０１６３】
音声復号器１１２は、音声符号の復号及び音声の再生処理を行い、音声を出力する。
【０１６４】
データブロック復元部１１３は、データ抽出部１１１から与えられる小ブロックを蓄積し、大ブロックを復元するための複数の小ブロックが揃ったら、これらの小ブロックから大ブロックを復元し、データブロック検証部１１４へ送る。
【０１６５】
図３０は、大ブロックの復元方法の説明図である。データブロック復元部１１３は、例えば、大ブロックを構成すべき複数の小ブロック１〜ｎを例えば到着順に統合することで、大ブロックを復元する。但し、データブロック復元部１１３は、小ブロックの受信順に拘わらず、複数の小ブロックに分割される前と同じ内容の大ブロックを復元するように構成することができる。
【０１６６】
データブロック検証部１１４は、大ブロックから埋め込みデータとエラー検出信号を分離し、エラー検出信号を用いてエラーの有無を調査する。このとき、データブロック検証部１１４は、エラーがなければ大ブロック中の埋め込みデータ部分を受信データとして出力し、エラーがあった場合は、大ブロックを破棄し、データの再送要求を行う。
【０１６７】
このように、大ブロック及び小ブロックを用いることにより、エラー検出能力の高い(すなわち、ビット数を多く必要とする)エラー検出信号を付加しても、データブロック全体に対するエラー検出信号の割合が小さくなる。従って、結果として、データ転送速度の低下を抑えることが可能となる。
【０１６８】
〈実施例〉
以下、図面を参照して第２の発明の実施例について説明する。実施例の構成は例示であり、第２の発明は、実施例の構成に限定されない。
【０１６９】
《実施例１》
第２の発明の具体的な実施方法として、第２の発明をG.729符号化方式に対して適用した例を以下に示す。図３１は、実施例１の構成図を示し、図３２に実施例１におけるデータブロックの構成の一例を示す。以下に各処理について詳細に説明する。
【０１７０】
なお、実施例１において埋め込み対象とするパラメータは、固定符号帳符号３４bit/frameのみとする。但し、第２の発明は、埋め込み対象パラメータを固定符号帳符号に限るものではなく、適応符号帳符号などの他のパラメータを対象としても良いし、また、複数のパラメータを埋め込み対象として規定することもできる。
【０１７１】
図３１には、実施例１に係る音声ＣＯＤＥＣ１２０,１３０が示されている。各音声ＣＯＤＥＣ１２０,１３０は、同じ構成を持ち、図２８(１)及び(２)に示すような符号器１００及び復号器１１０としての構成を併せ持つ。即ち、各音声ＣＯＤＥＣ１２０,１３０は、音声符号器１０１と、データ埋め込み部１０２と、データブロック構成部１０３と、データ抽出部１１１と、音声復号器１１２と、データブロック復元部１１３と、データブロック検証部１１４とを備えている。
【０１７２】
データ送信側(例えば音声ＣＯＤＥＣ１２０)では、音声符号器１０１は、入力音声を符号化する。符号化の方法は通常の符号化と同じである(G.729符号化方式で音声を符号化する)。音声符号器１０１は、入力音声から得られた複数のパラメータ符号(ＬＰＣ符号，適応符号帳符号，固定符号帳符号，適応符号帳利得符号，及び固定符号帳利得符号)をデータ埋め込み部１０２に入力する。
【０１７３】
データブロック構成部１０３は、データ抽出部１１１が再送要求(後述)を受信した場合は、再送要求されたデータで、そうでない場合には、送信データからデータを取り出して大ブロックを構成する。このため、データブロック構成部１０３Ａは、再送用のデータを蓄積しておくバッファを有している。
【０１７４】
大ブロックの構成方法(データ本体及びエラー検出信号へのビット配分)は任意である。例えば、図３２に示すように、５フレーム分の固定符号帳符号にあたる１７０bitで、データ本体１５８bit、シーケンス番号４bit、ＣＲＣ符号８bitというビット配分で大ブロックを構成する。データブロック構成部１０３は、大ブロックを、１フレーム分である３４bitずつの５つの小ブロックに分割し、各小ブロックをデータ埋め込み部１０２へ送る。
【０１７５】
データ埋め込み部１０２は、音声符号器１０１から入力される音声符号パラメータを用いてデータを埋め込み可能なフレームか否かをフレーム毎に判定する。なお、埋め込み判定に用いるパラメータや判定方法は任意である。例えば、基本技術のように、固定符号帳利得を判定パラメータとし、利得が閾値以下だった場合はデータを埋め込むように構成することができる。
【０１７６】
データ埋め込み部１０２は、埋め込み可能と判定した場合には、固定符号帳符号を小ブロックを構成するビット例に置換することで、データを埋め込む。さらに、データ埋め込み部１０２は、複数のパラメータ符号(小ブロックに置換されたパラメータ符号を含む)が多重化された音声符号を生成し、送信する。
【０１７７】
但し、後述するデータブロック検証部１１４にて、データエラーが検出された場合には、データ埋め込み部１０２は、データブロック検証部１１４からの大ブロックエラー信号を受け取る。この場合、データ埋め込み部１０２は、再送要求を優先し、大ブロックの再送要求信号で固定符号帳符号を置き換えて送信する。なお、再送要求信号(のビットパターン)は、予め定められ、データ埋め込み部１０２に予め用意されている。
【０１７８】
なお、データ埋め込み部１０２は、埋め込み不可能と判定した場合は、そのフレームについてデータの埋め込み処理を行うことなく、音声符号器１０１からの複数のパラメータ符号が多重化された音声符号をデータ受信側へ送信する。
【０１７９】
データ受信側(例えば音声ＣＯＤＥＣ１３０)では、データ抽出部１１１にて、受信した音声符号が複数のパラメータ符号に分離され、これらのうちの少なくとも一つのパラメータ符号を用いてデータが埋め込まれているか否かを判定する。判定パラメータは任意であるが、データ送信側と同じ判定パラメータ及び閾値を用いる。当該実施例では、固定符号帳利得が判定パラメータとして使用され、固定符号帳利得が所定の閾値以下だった場合には、データが埋め込まれていると判定される。
【０１８０】
データ抽出部１１１は、データが埋め込まれていると判定する場合には、固定符号帳符号を埋め込みデータ(小ブロック)とみなして取り出し、データブロック復元部１１３に送る。但し、データ抽出部１１１は、取り出したデータが再送要求信号である(再送要求のビットパターンを示す)場合には、データを再送するために、データブロック構成部１０３に再送要求を送る。これによって、データブロック構成部１０３は、再送要求に対応する大ブロックを構成する複数の小ブロックをデータ埋め込み部１０２に渡す。
【０１８１】
データブロック復元部１１３は、データ抽出部１１１からの小ブロックを蓄積し、小ブロックが所定数(ここでは５つ)揃い次第、これらの小ブロックを受信順に並べて大ブロックを復元し、データブロック検証部１１４に送る。
【０１８２】
データブロック検証部１１４は、大ブロックを受け取ると、大ブロックを埋め込みデータ(データ本体)，シーケンス番号及びＣＲＣ符号に分離し、シーケンス番号とＣＲＣ符号とにより、エラーをチェックする。エラーチェックの結果、エラーがなければ、データブロック検証部１１４は、データ本体を受信データとして出力する。一方、エラーチェックの結果、エラーがあった場合には、データブロック検証部１１４は、大ブロック(データ本体)を破棄し、再送要求のために、データ埋め込み部１０２にエラーが生じたことを通知する。これよって、データ埋め込み部１０２は、データブロック構成部１０３からの小ブロックの埋め込みに優先して、再送要求信号の埋め込み処理を行う。
【０１８３】
なお、データ抽出部１１１は、データの抽出/非抽出に関係なく、入力された音声符号を複数のパラメータ符号に分離し、音声復号器１１２に入力する。音声復号器１１２は、入力された複数のパラメータ符号を元に、通常の復号方法によって音声を再生し、出力する(G.729復号化方式で音声を復号・再生する)。
【０１８４】
上述した動作は、音声ＣＯＤＥＣ１３０がデータ送信側となり、音声ＣＯＤＥＣ１２０がデータ受信側となる場合でも同様である。
【０１８５】
《実施例１の作用及び効果》
以上のように、実施例１によれば、埋め込みデータにシーケンス番号やＣＲＣ符号といったエラー検出信号を付加することで、伝送路などで生じるエラーを検出することが可能である。そして、エラーが生じた場合には、再送要求がデータ送信側に送られ、データの再送が行われる。これによって、確実にデータを送受信することが可能となる。
【０１８６】
更に、１フレームより大きいデータブロックを構成し、それを分割して送信することで、エラー検出信号の付加によるデータ転送速度の低下を抑えると共に、高いエラー検出能力を得ることが可能となる。
【０１８７】
具体的には、１フレーム３４bitごとにシーケンス番号４bit、ＣＲＣ符号８bitを付加した場合では、上述したように、データ本体へのビット割り当ては２２bitとなり、エラー検出なしの場合に比べてデータ転送速度が３５％低下する。
【０１８８】
これに対し、実施例１では、５フレーム(＝１７０bit)からなる大ブロックに対して、シーケンス番号４bitとＣＲＣ符号８bitを付加するので、データ本体に１５８bit割り当てることができる。つまり、平均すると３１．６bit/frameの割合でデータを送受信することができる。すなわち、エラー検出なしの３４bit/frameの場合と比較して、約７％の転送速度の低下に抑えることが可能となる。
【０１８９】
なお、実施例１では、音声符号化方式としてG.729を用いたが、これに限るものではなく、例えば3GPP AMR符号化方式を用いることなどにも適用可能である。
【０１９０】
《実施例２》
図３３は、第２の発明の実施例２による音声ＣＯＤＥＣ１４０及び１５０の構成例を示す図である。各音声ＣＯＤＥＣ１４０,１５０は、実施例１(図３１)におけるデータ埋め込み部１０２，データブロック構成部１０３，データブロック復元部１１３の代わりにデータ埋め込み部１０２Ａ，データブロック構成部１０３Ａ，データブロック復元部１１３Ａを備え、且つデータ抽出部１１１とデータブロック復元部１１３Ａとの間に小ブロック検証部１１５が挿入されている点で、実施例１と異なる。
【０１９１】
図３４は、実施例２におけるデータブロック(大ブロック及び小ブロック)の構成方法の説明図である。実施例２におけるデータブロック構成部１０３Ａは、埋め込みデータ(データ本体)１５３bitと、シーケンス番号４bitと、ＣＲＣ符号８bitとで大ブロック１６５bitを生成する。データブロック構成部１０３Ａは、大ブロックをフレーム毎の小ブロック(３３bit)に分割した後、各小ブロックに簡易的なエラー検出信号としてのパリティービット(１bitのチェックサム)を付加する。実施例２では、このようなパリティービットが付加された各小ブロックがデータ埋め込み部１０２Ａに与えられる。
【０１９２】
データ埋め込み部１０２Ａは、データ埋め込み判定、音声符号に対する小ブロックの埋め込み動作については、実施例１と同じ構成を持つ。さらに、データ埋め込み部１０２Ａは、小ブロック検証部１１５から小ブロックエラーの通知を受け取るように構成されており、小ブロックエラーを受け取った場合には、対応する小ブロックの再送要求信号を小ブロックの代わりに埋め込む。
【０１９３】
小ブロック検証部１１５は、データ抽出部１１１から小ブロックを受け取るように構成されており、小ブロックに付加されているパリティービット(チェックサム)を用いてパリティーチェックを行う。このとき、チェック結果がＯＫであれば、当該小ブロックをデータブロック復元部１１２に送り、ＮＧ(エラー)であれば、小ブロックエラーをデータ埋め込み部１０２Ａに通知する。
【０１９４】
以上の点を除き、実施例２は、実施例１とほぼ同様である。なお、実施例２では、小ブロック毎のエラー検出にパリティービットを用いているが、その他のエラー検出アルゴリズムを用いても良い。また、小ブロックのエラー検出信号のビット数も１bitでなくてもよい(所定のビット数を設定できる)。また、小ブロックのエラー検出に複数のエラー検出アルゴリズムを併用しても良い。
【０１９５】
以下、実施例２の動作について説明する。データ送信側(例えば音声ＣＯＤＥＣ１４０)では、音声符号器１０１が入力音声を符号化する。符号化の方法は通常の符号化と同じである。音声符号器１０１は、入力音声から得られた複数のパラメータ符号(ＬＰＣ符号，適応符号帳符号，固定符号帳符号，適応符号帳利得符号，及び固定符号帳利得符号)をデータ埋め込み部１０２Ａに入力する。
【０１９６】
データブロック構成部１０３Ａは、自身に入力される送信データから大ブロックを構成する。ここに、大ブロックの構成方法(ビット配分)は任意である。例えば、図３４に示したように、大ブロックのビット数を１６５bitと規定し、データ本体１５３bit、シーケンス番号４bit、ＣＲＣ符号８bitという配分で構成することができる。
【０１９７】
データブロック構成部１０３Ａは、このようにして構成された大ブロックを３３bitの５つのブロックに分割し、分割した３３bitごとに１bitずつのパリティービットを付加して、音声符号の１フレーム分である３４bitずつの５つの小ブロックを構成し、各小ブロックをデータ埋め込み部１０２Ａへ送る。
【０１９８】
また、データブロック構成部１０３Ａは、データ抽出部１１１から大ブロックの再送要求と、小ブロックの再送要求との夫々を受信するように構成されている。データブロック構成部１０３Ａは、大ブロックの再送要求を受信した場合には、この再送要求に対応する大ブロックを構成する各小ブロック(再送用の大ブロック)をデータ埋め込み部１０２Ａに送り、小ブロックの再送要求を受信した場合には、この再送要求に対応する小ブロック(再送用の小ブロック)をデータ埋め込み部１０２Ａに送る。このため、データブロック構成部１０３Ａは、再送用のデータを蓄積しておくバッファを有している。
【０１９９】
データ埋め込み部１０２Ａは、音声符号パラメータを用いて埋め込み可能なフレームか否かを判定する。なお、判定に用いるパラメータや判定方法は任意である。例えば、基本技術のように、固定符号帳利得を判定パラメータとし、利得が閾値以下だった場合はデータを埋め込み、そうでない場合にはデータを埋め込まないようにする方法などを適用することができる。
【０２００】
データ埋め込み部１０２Ａは、埋め込み可能と判定した場合は、音声符号器１０１から入力される固定符号帳符号を、データブロック構成部１０３Ａからの小ブロックで置換する。そして、複数のパラメータ符号が多重化された音声符号を生成し、データ受信側へ送信する。但し、データブロック検証部１１４又は小ブロック検証部１１５にて、大ブロック又は小ブロックのデータエラーが検出された場合には、大ブロック又は小ブロックの再送要求を優先し、対応する再送要求信号で固定符号帳を置き換えて送信する。
【０２０１】
大ブロック及び小ブロックの各再送要求信号のビットパターンは、予め定めておく。大ブロック及び小ブロックの再送要求信号の夫々は、大ブロック及び小ブロックの識別情報を含むように構成することができる。
【０２０２】
また、データ埋め込み処理部１０２Ａは、埋め込み不可能と判定した場合は、そのフレームの音声符号に対する埋め込み処理を行わず、音声符号器１０１からの複数のパラメータ符号で音声符号を生成し、データ受信側に送信する。
【０２０３】
データ受信側(例えば音声ＣＯＤＥＣ１５０)では、データ抽出部１１１は、音声符号を受信し、受信した音声符号パラメータを用いてデータが埋め込まれているか否かを判定する。判定パラメータは任意であるが、データ送信側と同じ判定パラメータ及び閾値を用いる。データ抽出部１１１は、データが埋め込まれていると判定する場合には、固定符号帳符号をデータとみなして取り出し、小ブロック検証部１１５に送る。但し、データ抽出部１１１は、取り出したデータが(大ブロック又は小ブロックの)再送要求信号だった場合は、データを再送するために、データブロック構成部１０３Ａに再送要求信号を送る。
【０２０４】
小ブロック検証部１１５は、小ブロックを受け取ると、パリティービットによるエラーチェックを行う。エラーチェックの結果、エラーがなければ小ブロックをデータブロック復元部１１３に送信する。エラーがあった場合は、小ブロックを破棄し、再送要求のため、小ブロックにエラーがあったことをデータ埋め込み部１０２Ａに通知する。
【０２０５】
データブロック復元部１１３は、小ブロックが所定数(ここでは５つ)揃い次第、大ブロックを復元し、データブロック検証部１１４に送る。ここで、データブロック復元部１１３Ａは、小ブロック検証部１１５で小ブロックエラーが検出された場合には、小ブロックエラー信号を受け取るように構成されている。この場合、データブロック復元部１１３Ａは、エラーとなった小ブロックが再送され、大ブロックを復元するための複数の小ブロックが揃うまで、対応する大ブロックの復元を中止又は後回しにする。
【０２０６】
データ検証部１１４は、データブロック復元部１１３Ａからの大ブロックを、データ本体，シーケンス番号，及びＣＲＣ符号に分離し、シーケンス番号とＣＲＣ符号とにより、エラーをチェックする。エラーチェックの結果、エラーがなければ、データ検証部１１４は、データ本体を受信データとして出力する。これに対し、エラーがあった場合には、データ検証部１１４は、当該データを破棄し、再送要求のために、データ埋め込み部１０２Ａに大ブロックでエラーが生じたことを通知する。
【０２０７】
なお、データ抽出部１１１は、データの抽出/非抽出に関係なく、入力された音声符号を複数のパラメータ符号に分離し、音声復号器１１２に入力する。音声復号器１１２は、入力された複数のパラメータ符号を元に、通常の復号方法によって音声を再生し、出力する(G.729復号化方式で音声を復号・再生する)。
【０２０８】
上述した動作は、音声ＣＯＤＥＣ１５０がデータ送信側となり、音声ＣＯＤＥＣ１４０がデータ受信側となる場合でも同様である。
【０２０９】
《実施例２の作用及び効果》
実施例１では、実際にエラーを検出した際、どの小ブロックがエラーを生じているのかが判断できないため、大ブロックを構成する小ブロックの全てを再送する必要がある。つまり、たとえエラーが１bitのみのような軽微なものであっても、音声符号５フレーム分のデータを再送しなければならず、再送ペナルティーが大きい。
【０２１０】
これに対し、実施例２では、小ブロック毎にパリティービットを付加する。これによって、データ本体に割り当てることのできるビット数は実施例１に比べて小さくなる。しかし、フレームあたり１bitなどの軽微なエラーであれば、その小ブロックのみを再送すればよく、再送を行う際のペナルティーを抑えることが可能となる。
【０２１１】
具体的には、実施例２では、５フレーム１７０bitからなる大ブロックに対し、シーケンス番号４bit、ＣＲＣ符号８bit、パリティービット５bit(１bit×５frame)を付加する。このため、データ本体に１５３bitを割り当てることができる。つまり、３０．６bit/frameの割合でデータの送受信を行うことができる。即ち、エラー検出なしとした場合の３４bit/frameと比較して、１０％の転送速度の低下に抑えることができる。更に、パリティービットで検出可能な軽微なエラーの場合などであれば、エラーに対する再送ペナルティーを実施例１に比べて抑えることができる。
【０２１２】
〈第１の発明と第２の発明との組み合わせ〉
上述した第１の発明と第２の発明とは、それぞれの発明の目的を逸脱しない範囲で適宜組み合わせることができる。例えば、第２の発明において、第１の発明において説明した埋め込み判定パラメータ及び埋め込み対象パラメータを適用することができる。即ち、第１の発明における埋め込み処理部や抽出処理部を、第２の発明におけるデータ埋め込み部やデータ抽出部に組み込むことができる。
【０２１３】
〔その他〕
上述した実施形態は、次の発明を開示する。以下に示す発明は、適宜組み合わせることが可能である。
（付記１）
人の音声生成過程に基づく音声符号化方式で符号化された音声符号に埋め込み対象のデータを埋め込むデータ埋め込み装置であって、
前記音声符号毎に、音声符号に前記データを埋め込むか否かを判定する埋め込み判定手段と、
前記埋め込み判定手段によって前記データを埋め込むと判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された２以上のパラメータ符号に前記データを埋め込む埋め込み手段と
を含むデータ埋め込み装置。
（付記２）
前記埋め込み判定手段は、前記音声符号化方式で規定されたフレーム毎に、そのフレームが音声区間のフレームか非音声区間のフレームかを判定し、
前記埋め込み手段は、非音声区間のフレームと判定されたフレームの音声符号に対して前記埋め込み処理を行う
付記１記載のデータ埋め込み装置。
（付記３）
音声符号に埋め込まれているデータを抽出する埋め込みデータ抽出装置であって、
前記音声符号毎に、音声符号にデータが埋め込まれているか否かを判定する抽出判定手段と、
前記抽出判定手段によってデータが埋め込まれていると判定されたフレームの音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された２以上のパラメータ符号に夫々埋め込まれているデータを抽出する抽出手段と
を含むデータ抽出装置。
（付記４）
前記抽出判定手段は、前記音声符号に対する音声符号化方式で規定されたフレーム毎に、そのフレームが音声区間のフレームか非音声区間のフレームかを判定し、
前記抽出手段は、非音声区間のフレームと判定されたフレームの音声符号に対して前記抽出処理を行う
付記３記載のデータ抽出装置。
（付記５）
音声符号に対するデータの埋め込み処理及び抽出処理を行うデータ埋め込み／抽出装置であって、
データを埋め込むべき音声符号毎に、その音声符号に前記データを埋め込むか否かを判定する埋め込み判定手段と、
前記埋め込み判定手段によって前記データを埋め込むと判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された２以上のパラメータ符号に前記データを埋め込む埋め込み手段と、
データを抽出すべき音声符号毎に、音声符号にデータが埋め込まれているか否かを判定する抽出判定手段と、
前記抽出判定手段によってデータが埋め込まれていると判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された２以上のパラメータ符号に夫々埋め込まれているデータを抽出する抽出手段と
を含むデータ埋め込み／抽出装置。
（付記６）
音声符号に埋め込み対象のデータを埋め込むデータ埋め込み方法であって、
前記音声符号毎に、音声符号に前記データを埋め込むか否かを判定し、
前記データを埋め込むと判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された２以上のパラメータ符号に前記データを埋め込む
ことを含むデータ埋め込み方法。
（付記７）
前記音声符号に対する音声符号化方式で規定されたフレーム毎に、そのフレームが音声区間のフレームか非音声区間のフレームかを判定し、
非音声区間のフレームと判定されたフレームの音声符号に対して前記埋め込み処理を行う
付記６記載のデータ埋め込み方法。
（付記８）
音声符号に埋め込まれているデータを抽出する埋め込みデータ抽出方法であって、
前記音声符号毎に、音声符号にデータが埋め込まれているか否かを判定し、
データが埋め込まれていると判定されたフレームの音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された２以上のパラメータ符号に夫々埋め込まれているデータを抽出する
ことを含むデータ抽出方法。
（付記９）
前記音声符号の音声符号化方式で規定されたフレーム毎に、そのフレームが音声区間のフレームか非音声区間のフレームかを判定し、
非音声区間のフレームと判定されたフレームの音声符号に対して前記抽出処理を行う
付記８記載のデータ抽出方法。
（付記１０）
人の音声生成過程に基づく音声符号化方式で符号化された音声符号に対するデータの埋め込み処理及び抽出処理を行うデータ埋め込み／抽出方法であって、
データを埋め込むべき音声符号毎に、その音声符号に前記データを埋め込むか否かを判定し、
前記データを埋め込むと判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された２以上のパラメータ符号に前記データを埋め込み、
データを抽出すべき音声符号毎に、音声符号にデータが埋め込まれているか否かを判定し、
データが埋め込まれていると判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された２以上のパラメータ符号に夫々埋め込まれているデータを抽出する
ことを含むデータ埋め込み／抽出方法。
（付記１１）
埋め込み対象データに対するエラー検出用データを作成する作成手段と、
前記埋め込み対象データ及び前記エラー検出用データを他のデータに埋め込む埋め込み手段と、
前記埋め込み対象データ及び前記エラー検出用データが埋め込まれた他のデータをネットワークを介してデータ受信装置に送信する手段と
を含むデータ送信装置。
（付記１２）
データ送信装置からネットワークを介して受信されるデータに埋め込まれている埋め込み対象のデータ，及びこの埋め込み対象のデータに対するエラー検出用データを抽出する手段と、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
を含むデータ抽出装置。
（付記１３）
データ送信装置からネットワークを介して受信されるデータに埋め込まれている埋め込み対象のデータ，及びこの埋め込み対象のデータに対するエラー検出用データを抽出する抽出手段と、
抽出された埋め込み対象のデータ及びエラー検出用データを含むデータブロックを復元する復元手段と、
復元されたデータブロックに含まれる埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
を含むデータ抽出装置。
（付記１４）
データ送信装置からネットワークを介して受信されるデータに埋め込まれている第１のデータブロックを抽出する抽出手段と、
抽出された複数の第１のデータブロックを結合し、埋め込み対象のデータ，及びこの埋め込み対象のデータに対するエラー検出用データを含む第２のデータブロックを復元する復元手段と、
復元された第２のデータブロックに含まれる埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
を含むデータ抽出装置。
（付記１５）
データ送信装置からネットワークを介してデータを受信する手段と、
受信されるデータに埋め込まれている埋め込み対象のデータ，及びこの埋め込み対象のデータに対するエラー検出用データを抽出する手段と、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
を含むデータ受信装置。
（付記１６）
埋め込み対象データに対するエラー検出用データを作成する作成手段と、
前記埋め込み対象データ及び前記エラー検出用データを他のデータに埋め込む埋め込み手段と、
前記他のデータをネットワークを介して当該他のデータを受信すべき装置へ送信する手段と、
データをネットワークを介して受信する手段と、
受信されるデータに埋め込まれている埋め込み対象のデータ，及びこの埋め込み対象のデータに対するエラー検出用データを抽出する手段と、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データの送信元の装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、を備え、
前記埋め込み手段は、前記再送要求を送信するためのデータを受け取り、所定の再送要求を前記他のデータに埋め込む
通信装置。
（付記１７）
データ送信装置からネットワークを介して受信されるデータに埋め込まれている埋め込み対象のデータ，及びこの埋め込み対象のデータに対するエラー検出用データを抽出し、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックし、
前記チェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する
ことを含むデータ抽出方法。
（付記１８）
データ送信装置からネットワークを介して受信されるデータに埋め込まれている埋め込み対象のデータ，及びこの埋め込み対象のデータに対するエラー検出用データを抽出し、
抽出された埋め込み対象のデータ及びエラー検出用データを含むデータブロックを復元し、
復元されたデータブロックに含まれる埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックし、
前記チェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する
ことを含むデータ抽出方法。
（付記１９）
データ送信装置からネットワークを介して受信されるデータに埋め込まれている第１のデータブロックを抽出し、
抽出された複数の第１のデータブロックを結合し、埋め込み対象のデータ，及びこの埋め込み対象のデータに対するエラー検出用データを含む第２のデータブロックを復元し、
復元された第２のデータブロックに含まれる埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックし、
前記チェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する
ことを含むデータ抽出方法。
（付記２０）
通信装置が、
埋め込み対象データに対するエラー検出用データを作成し、
前記埋め込み対象データ及び前記エラー検出用データを他のデータに埋め込み、
前記他のデータをネットワークを介して当該他のデータを受信すべき装置へ送信し、
データをネットワークを介して受信し、
受信されるデータに埋め込まれている埋め込み対象のデータ，及びこの埋め込み対象のデータに対するエラー検出用データを抽出し、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックし、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データの送信元の装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力し、
前記再送要求を送信するためのデータに応じて、所定の再送要求を前記他のデータに埋め込む
ことを含むデータ埋め込み及び抽出方法。
【産業上の利用可能性】
【０２１４】
本発明は、データ埋め込み及び／又は抽出技術を適用する分野に広く適用することができる。例えば、音声通信の分野において、符号器側で音声符号に対してデータを埋め込んで伝送し、復号器側で音声符号からデータを抽出するために適用することができる。
【０２１５】
特に、本発明は、ディジタル移動無線システムやＶｏＩＰ(Voice over Internet Protocol)に代表されるパケット音声伝送システムなどあらゆる領域に適用されている音声符号化(圧縮)技術に適用することができ、伝送ビット系列に影響なく、著作権やＩＤ情報を埋め込むことで通話の秘匿性を向上させる電子透かしや機能拡張技術としてその需要、および重要性が高まっている。
【図面の簡単な説明】
【０２１６】
【図１】データ埋め込み技術を適用した音声符号化方式を示す図
【図２】ＣＥＬＰ音声符号化方式の符号・復号処理の流れを示す図
【図３】ＣＥＬＰ方式の符号器のブロック図
【図４】ＣＥＬＰ方式の音声符号の構成図
【図５】ＣＥＬＰ方式の復号器のブロック図
【図６】音声符号へのデータ埋め込みの概念図
【図７】音声符号からの埋め込みデータ抽出の概念図
【図８】データ埋め込みを適用したＣＥＬＰ方式の符号・復号処理の流れを示す図
【図９】データ埋め込み処理部の構成例を示す図
【図１０】データ抽出処理部の構成例を示す図
【図１１】基本技術における背景雑音種に対する埋め込みデータ伝送レートの説明図
【図１２】第１の発明に係るデータ埋め込み処理部の構成例を示す図
【図１３】第１の発明に係るデータ抽出処理部の構成例を示す図
【図１４】第１の発明に係るG.729方式の音声符号の構成図
【図１５】G.729の説明図
【図１６】第１の発明の第１実施例の構成図(G.729音声符号へのデータ埋め込み)
【図１７】第１の発明の第２実施例の構成図(G.729音声符号からのデータ抽出)
【図１８】基本技術と第１の発明との性能比較の説明図
【図１９】音声生成モデルの説明図
【図２０】ＣＥＬＰ符号・復号処理の流れを示す図
【図２１】ＣＥＬＰに基づく符号器のブロック図
【図２２】ＣＥＬＰに基づく復号器のブロック図
【図２３】基本技術におけるデータ埋め込み・抽出処理の流れを示す図
【図２４】基本技術におけるデータ埋め込みの概念図
【図２５】基本技術におけるデータ抽出の概念図
【図２６】シーケンス番号を用いたエラー検出の例を示す図
【図２７】１フレームごとにエラー検出信号を付加した場合の例を示す図
【図２８】第２の発明の原理図
【図２９】第２の発明における大ブロック及び小ブロックの構成方法の説明図
【図３０】第２の発明における大ブロックの復元方法の説明図
【図３１】第２の発明の実施例１の構成図
【図３２】第２の発明の実施例１における大ブロック及び小ブロックの構成方法の説明図
【図３３】第２の発明の実施例２の構成図
【図３４】第２の発明の実施例２における大ブロック及び小ブロックの構成方法の説明図
【符号の説明】
【０２１７】
１０,３２  埋め込み処理部(データ埋め込み装置)
１１,３４  埋め込み制御部(埋め込み判定手段)
１２，ＳＷ１  スイッチ(埋め込み手段)
１３,３５  遅延素子
２０,４２  抽出処理部(データ抽出装置)
２１,４４  抽出制御部(抽出判定手段)
２２,ＳＷ２  スイッチ(抽出手段)
２３,４５  遅延素子
３０  符号器(データ送信装置)
３１  Ｇ．７２９符号器
３３  多重部
４０  復号器(データ受信装置)
４１  分離部
４３  Ｇ．７２９復号器
１００  符号器(データ送信装置)
１０１  音声符号器
１０２,１０２Ａ  データ埋め込み部(埋め込み手段)
１０３,１０３Ａ  データブロック構成部(作成手段)
１０４  大ブロック構成部
１０５  小ブロック構成部
１１０  復号器(データ受信装置)
１１１  データ抽出部(抽出手段)
１１２  音声復号器
１１３,１１３Ａ  データブロック復元部(復元手段)
１１４  データブロック検証部(チェック手段)
１１５  小ブロック検証部(第２チェック手段)
１２０,１３０,１４０,１５０  音声ＣＯＤＥＣ(データ埋め込み／抽出装置)
【図１】
2005049794.tif 000003
【図２】
2005049794.tif 000004
【図３】
2005049794.tif 000005
【図４】
2005049794.tif 000006
【図５】
2005049794.tif 000007
【図６】
2005049794.tif 000008
【図７】
2005049794.tif 000009
【図８】
2005049794.tif 000010
【図９】
2005049794.tif 000011
【図１０】
2005049794.tif 000012
【図１１】
2005049794.tif 000013
【図１２】
2005049794.tif 000014
【図１３】
2005049794.tif 000015
【図１４】
2005049794.tif 000016
【図１５】
2005049794.tif 000017
【図１６】
2005049794.tif 000018
【図１７】
2005049794.tif 000019
【図１８】
2005049794.tif 000020
【図１９】
2005049794.tif 000021
【図２０】
2005049794.tif 000022
【図２１】
2005049794.tif 000023
【図２２】
2005049794.tif 000024
【図２３】
2005049794.tif 000025
【図２４】
2005049794.tif 000026
【図２５】
2005049794.tif 000027
【図２６】
2005049794.tif 000028
【図２７】
2005049794.tif 000029
【図２８】
2005049794.tif 000030
【図２９】
2005049794.tif 000031
【図３０】
2005049794.tif 000032
【図３１】
2005049794.tif 000033
【図３２】
2005049794.tif 000034
【図３３】
2005049794.tif 000035
【図３４】
2005049794.tif 000036