JP2005049794A - データ埋め込み装置及びデータ抽出装置 - Google Patents

データ埋め込み装置及びデータ抽出装置 Download PDF

Info

Publication number
JP2005049794A
JP2005049794A JP2003284306A JP2003284306A JP2005049794A JP 2005049794 A JP2005049794 A JP 2005049794A JP 2003284306 A JP2003284306 A JP 2003284306A JP 2003284306 A JP2003284306 A JP 2003284306A JP 2005049794 A JP2005049794 A JP 2005049794A
Authority
JP
Japan
Prior art keywords
data
embedding
embedded
code
error
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2003284306A
Other languages
English (en)
Other versions
JP4527369B2 (ja
Inventor
Yoshiteru Tsuchinaga
義照 土永
Takashi Ota
恭士 大田
Masanao Suzuki
政直 鈴木
Masakiyo Tanaka
正清 田中
Yuzuru Mizuno
譲 水野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2003284306A priority Critical patent/JP4527369B2/ja
Priority to DE602004010204T priority patent/DE602004010204T2/de
Priority to EP04251453A priority patent/EP1503369B1/en
Priority to EP06020736.2A priority patent/EP1744304B1/en
Priority to US10/802,168 priority patent/US7974846B2/en
Publication of JP2005049794A publication Critical patent/JP2005049794A/ja
Application granted granted Critical
Publication of JP4527369B2 publication Critical patent/JP4527369B2/ja
Priority to US13/099,687 priority patent/US8340973B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/018Audio watermarking, i.e. embedding inaudible data in the audio signal

Abstract

【課題】埋め込みデータの伝送容量を大きくすることができる技術を提供する。
【解決手段】人の音声生成過程に基づく音声符号化方式で符号化された音声符号に埋め込み対象のデータを埋め込むデータ埋め込み装置であって、前記音声符号毎に、音声符号に前記データを埋め込むか否かを判定する埋め込み判定手段と、前記埋め込み判定手段によって前記データを埋め込むと判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された2以上のパラメータ符号に前記データを埋め込む埋め込み手段とを含む。
【選択図】図12

Description

【技術分野】
【0001】
本発明は、データに埋め込み対象のデータを埋め込むデータ埋め込み技術,及びデータから埋め込み対象のデータを抽出するデータ抽出技術に関する。
【0002】
例えば、本発明は、インターネットの爆発的な普及を背景に、パケット音声通信やディジタル音声蓄積などを適用領域とするディジタル音声信号処理技術に関する。音声符号化技術で圧縮されたディジタルコードに対して、データフォーマットの規格準拠を保ちつつ、音声品質を損なうことなく一部を任意のデータと置き換えるデータ埋込み技術に関する。
【背景技術】
【0003】
近年、コンピュータやインターネットが普及する中で、マルチメディアコンテンツ(静止画、動画、オーディオ、音声など)に特殊なデータを埋め込む「電子透かし技術」が注目を集めている。このような技術は、主に、著作権の保護を目的として、コンテンツに作成者や販売者などの名前を埋め込み、不正コピーやデータの改ざんなどを防止するために使用される。その他、コンテンツに関する関連情報や付加情報を埋め込んで利用者のコンテンツ利用時における利便性を高めることを目的として用いられる。
【0004】
音声通信の分野でも音声に対してこのような任意の情報を埋め込み、伝送または蓄積する試みが行われている。図1に概念図を示す。図1において、符号器は、入力音声を音声符号に符号化する際に、音声以外の任意のデータ系列を音声符号に埋め込み、復号器へ伝送する。このとき、データの埋め込みを音声符号のフォーマットを変えずに音声符号自体に行う。このため、音声符号の情報量は増加しない。復号器では、埋め込まれた任意のデータ系列を音声符号から読み出すとともに通常の音声符号の復号処理により再生音声を出力する。
【0005】
以上の構成により、伝送量を増加させることなく音声とは別に任意のデータを伝送することが可能となる。また、データが埋め込まれていることを知らない第3者にとっては通常の音声通信としか認識されない。データの埋め込み方法としては、さまざまな方法が提案されている。
【0006】
本願発明に関連する先行技術として、例えば、下記の特許文献1乃至4に開示される技術がある。
【特許文献1】
特開2003−99077号公報
【特許文献2】
特表2002−521739号公報
【特許文献3】
特開2002−258881号公報
【特許文献4】
WO01/039175号公報
【考案の開示】
【発明が解決しようとする課題】
【0007】
上述した音声符号に対するデータ埋め込み・抽出技術では、音声符号に対して多くのデータを埋め込むことが望まれている。また、データの埋め込みによって音声劣化が発生しないことが望まれている。さらに、復号側で正確な埋め込みデータを得られることが望まれている。
【0008】
本発明の目的の一つは、埋め込みデータの伝送容量を大きくすることができる技術を提供することである。
【0009】
また、本発明の目的の一つは、データの埋め込みによる音声劣化の発生を抑えることができる技術を提供することである。
【0010】
また、本発明の目的の一つは、データの受信側で正確な埋め込みデータを得ることができる技術を提供することである。
【課題を解決するための手段】
【0011】
本発明の第1の発明の第1の態様は、人の音声生成過程に基づく音声符号化方式で符号化された音声符号に埋め込み対象のデータを埋め込むデータ埋め込み装置であって、
前記音声符号毎に、音声符号に前記データを埋め込むか否かを判定する埋め込み判定手段と、
前記埋め込み判定手段によって前記データを埋め込むと判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された2以上のパラメータ符号に前記データを埋め込む埋め込み手段と
を含むデータ埋め込み装置である。
【0012】
第1の発明の第2の態様は、人の音声生成過程に基づく音声符号化方式で符号化された音声符号に埋め込まれているデータを抽出する埋め込みデータ抽出装置であって、
前記音声符号毎に、音声符号にデータが埋め込まれているか否かを判定する抽出判定手段と、
前記抽出判定手段によってデータが埋め込まれていると判定されたフレームの音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された2以上のパラメータ符号に夫々埋め込まれているデータを抽出する抽出手段と
を含むデータ抽出装置である。
【0013】
第1の発明の第3の態様は、人の音声生成過程に基づく音声符号化方式で符号化された音声符号に対するデータの埋め込み処理及び抽出処理を行うデータ埋め込み/抽出装置であって、
データを埋め込むべき音声符号毎に、その音声符号に前記データを埋め込むか否かを判定する埋め込み判定手段と、
前記埋め込み判定手段によって前記データを埋め込むと判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された2以上のパラメータ符号に前記データを埋め込む埋め込み手段と、
データを抽出すべき音声符号毎に、音声符号にデータが埋め込まれているか否かを判定する抽出判定手段と、
前記抽出判定手段によってデータが埋め込まれていると判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された2以上のパラメータ符号に夫々埋め込まれているデータを抽出する抽出手段と
を含むデータ埋め込み/抽出装置である。
【0014】
また、第1の発明は、第1〜3の態様と同様の特徴を持つ、データ埋め込み方法,データ抽出方法,データ埋め込み/抽出方法として特定することができる。
【0015】
本発明の第2の発明における第1の態様は、埋め込み対象データに対するエラー検出用データを作成する作成手段と、
前記埋め込み対象データ及び前記エラー検出用データを他のデータに埋め込む埋め込み手段とを含むデータ埋め込み装置である。
【0016】
第2の発明における第2の態様は、埋め込み対象データに対するエラー検出用データを作成する作成手段と、
前記埋め込み対象データと前記エラー検出用データとからデータブロックを構成するブロック構成手段と、
前記データブロックを他のデータに埋め込む埋め込み手段と
を含むデータ埋め込み装置である。
【0017】
第2の発明における第3の態様は、埋め込み対象データに対するエラー検出用データを作成する作成手段と、
前記埋め込み対象データ及び前記エラー検出用データを他のデータに埋め込む埋め込み手段と、
前記埋め込み対象データ及び前記エラー検出用データが埋め込まれた他のデータをネットワークを介してデータ受信装置に送信する手段と
を含むデータ送信装置である。
【0018】
第2の発明において、埋め込み手段は、埋め込み対象データ及びエラー検出用データ(エラー検出信号)を、これらから構成されるデータブロック(大ブロック)単位、或いはデータブロック(大ブロック)を所定数に分割して得られる分割ブロック(小ブロック)単位で、他のデータ(データ系列)に埋め込むように構成することができる。データ系列は、例えば、音声が音声符号化方式により符号化された音声符号であり、例えば、各分割ブロックは1フレームに対する音声符号に対して埋め込まれる。
【0019】
第2の発明における第4の態様は、データ送信装置からネットワークを介して受信されるデータに埋め込まれている埋め込み対象のデータ,及びこの埋め込み対象のデータに対するエラー検出用データを抽出する手段と、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
を含むデータ抽出装置である。
【0020】
第2の発明における第5の態様は、データ送信装置からネットワークを介して受信されるデータに埋め込まれている埋め込み対象のデータ,及びこの埋め込み対象のデータに対するエラー検出用データを抽出する抽出手段と、
抽出された埋め込み対象のデータ及びエラー検出用データを含むデータブロックを復元する復元手段と、
復元されたデータブロックに含まれる埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
を含むデータ抽出装置である。
【0021】
第2の発明における第6の態様は、データ送信装置からネットワークを介して受信されるデータに埋め込まれている第1のデータブロックを抽出する抽出手段と、
抽出された複数の第1のデータブロックを結合し、埋め込み対象のデータ,及びこの埋め込み対象のデータに対するエラー検出用データを含む第2のデータブロックを復元する復元手段と、
復元された第2のデータブロックに含まれる埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
を含むデータ抽出装置である。
【0022】
第2の発明における第7の態様は、データ送信装置からネットワークを介してデータを受信する手段と、
受信されるデータに埋め込まれている埋め込み対象のデータ,及びこの埋め込み対象のデータに対するエラー検出用データを抽出する手段と、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
を含むデータ受信装置である。
【0023】
第2の発明における第8の態様は、埋め込み対象データに対するエラー検出用データを作成する作成手段と、
前記埋め込み対象データ及び前記エラー検出用データを他のデータに埋め込む埋め込み手段と、
前記他のデータをネットワークを介して当該他のデータを受信すべき装置へ送信する手段と、
データをネットワークを介して受信する手段と、
受信されるデータに埋め込まれている埋め込み対象のデータ,及びこの埋め込み対象のデータに対するエラー検出用データを抽出する手段と、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データの送信元の装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、を備え、
前記埋め込み手段は、前記再送要求を送信するためのデータを受け取り、所定の再送要求を前記他のデータに埋め込む通信装置である。
【0024】
また、第2の発明は、上述した装置発明と同様の特徴を持つ方法の発明として特定することができる。
【発明の効果】
【0025】
本発明によれば、埋め込みデータの伝送容量を大きくすることができる。
【0026】
また、本発明によれば、データの埋め込みによる音声劣化の発生を抑えることができる。
【0027】
また、本発明によれば、データの受信側で正確な埋め込みデータを得ることができる。
【発明を実施するための最良の形態】
【0028】
以下、図面を参照して本発明を実施するための最良の形態について説明する。以下の実施の形態の構成は例示であり、本発明は実施の形態の構成に限定されない。
【0029】
〔第1の発明〕
最初に、本発明の第1の発明に係るデータ埋め込み・抽出技術について説明する。
【0030】
〈第1の発明の経緯〉
近年主流の音声符号化方式の一つとして、CELP(Code Excited Linear Prediction)方式がある。このCELP方式で符号化された音声符号に任意の情報を埋め込む方法として、本願出願人が既に特許出願したデータ埋め込み・抽出に係る技術(特願2002−26958号(以下、「基本技術」と称する)がある。基本技術の特徴は以下の通りである。・符号化データのフォーマットの変更なく、任意データの埋込みが可能
・再生音質への影響を小さく抑えながら、任意のデータを埋め込むことが可能
・再生音質への影響を考慮しながら埋込みデータ量を調整可能。
・CELP方式がベースであれば特定の方式に限定されることなく、幅広い方式に適用可能。
【0031】
以下、基本技術について説明する。まず、基本技術の基盤技術としてのCELP方式について説明する。図2は、基本技術の処理概要(CELP音声符号化方式の符号・復号処理の流れ)を示す図である。CELP方式は、人間の音声生成モデルに基づく分析により、入力音声からパラメータを抽出して伝送する高圧縮音声符号化技術である。近年のディジタル携帯電話、インターネット電話といった通信システムで採用されているITU-T G.729方式や3GPP AMR方式等の音声符号化方式は、このCELP方式をベースとしている。
【0032】
図2において、符号器は、CELP符号器と多重部とを備える。CELP符号器は、入力音声を符号化し、複数のパラメータ符号(LSP符号、ピッチラグ符号、固定符号帳符号、ゲイン符号)を求める。多重部は、CELP符号器から出力される複数のパラメータ符号を多重化し、音声符号として出力する。復号器は、分離部とCELP復号器とを備える。分離部は、符号器からの音声符号を複数のパラメータ符号に分離する。CELP復号器は、分離部で分離された各パラメータ符号の復号及び音声の再生を行う。
【0033】
図3は、CELP符号器の構成例を示すブロック図である。CELP符号器は、入力信号(入力音声)を一定長のフレーム単位で符号化する。CELP符号器は、先ず、入力信号を線形予測分析(LPC分析)して線形予測係数(LPC係数)を求める。LPC係数は、人間の発声における声道特性を全極型の線形フィルタで近似した係数である。この情報は通常LSP(線スペクトル対)などに変換されてから量子化される。
【0034】
次に、CELP符号器は、音源信号の抽出を行う。CELPでは、音源信号をLPC係数で構成されるLPC合成フィルタに入力することで再生音声を生成する。したがって、CELP符号器は、音源信号の抽出を、符号帳に格納された複数の音源候補の中からLPC合成フィルタに通した時の再生音声と入力音声との誤差が最小になる最適な系列(音源ベクトル)を探索することで行う。
【0035】
選択された音源信号は、その格納場所を表す符号帳のインデックスとして伝送される。通常、符号帳は、音源の周期性(ピッチ)を表現するための適応符号帳と、雑音成分を表現するための固定符号帳(雑音符号帳)との2種類で構成される。この場合、適応符号帳のインデックス(ピッチラグ符号)と、固定符号帳のインデックス(固定符号帳符号)とがパラメータ符号としてそれぞれ求められる。このとき、各音源ベクトルの振幅調整のための利得(ゲイン符号(適応符号帳ゲイン及び固定符号帳ゲイン))もパラメータ符号として求められる。抽出された各パラメータ符号は、多重部で、図4に示すような標準フォーマットに準拠する形式で1つに多重され、音声符号として復号器側へ伝送される。
【0036】
一方、復号器側では、伝送されてきた音声符号が各パラメータに分離され、これらのパラメータに基づく再生音声が生成される。図5は、CELP復号器の構成例を示すブロック図である。CELP復号器は、音声生成系を擬似した処理により音声を再生する。具体的には、復号器は、音源系列を指定するインデックス(ピッチラグ符号,及び固定符号帳符号)と利得情報(ゲイン符号)にて音源信号を生成する。
【0037】
そして、CELP復号器は、音源信号を線形予測係数(LPC係数)で構成されるLPC合成フィルタに通して、音声を生成(再生)する。即ち、LPC合成フィルタは、入力される音源信号に対し、LSP符号が復号されたLPC係数を用いたフィルタリング処理を行い、フィルタを通過した信号を再生信号として出力する。このような処理は次式〈1〉で表される。
【0038】
Srp=HR=H(gpP+gcC)・・・〈1〉
但し、Srp:再生信号、R:音源信号、H:LPC合成フィルタ、gp:適応符号語ゲイン、P:適応符号語、gc:固定符号語ゲイン、C:固定符号語である。
【0039】
次に、基本技術におけるデータの埋め込み・抽出処理について説明する。図6は、データ埋め込み処理が適用されたCELP方式の符号・復号処理の基本処理概念図を示す図である。図6に示すように、符号器側に設けられる埋め込み処理部,及び復号器側に設けられる抽出処理部は、音声符号に含まれる伝送パラメータを対象として、データの埋め込み又は抽出を行う。
【0040】
即ち、埋め込み処理部は、CELP符号器から出力される複数のパラメータ符号のうちの特定のパラメータ符号に対し、埋め込み対象のデータを埋め込む。その後、多重部は、データが埋め込まれたパラメータ符号を含む複数のパラメータ符号を多重化し、データが埋め込まれた音声符号として出力する。この音声符号は、復号器側へ伝送される。
【0041】
復号器側では、分離部が音声符号を複数のパラメータ符号に分離する。抽出処理部は、複数のパラメータ符号のうちの特定のパラメータ符号に埋め込まれているデータを抽出する。その後、複数のパラメータ符号は、CELP復号器に入力され、CELP復号器は、複数のパラメータ符号を復号し、音声を再生する。
【0042】
次に、埋め込み処理部及び抽出処理部について説明する。前述したように、CELP符号器で符号化されるディジタルコード(パラメータ符号)は、音声生成系の特徴パラメータと対応している。この特徴に着目すると、各パラメータの状態を把握することができる。
【0043】
音源信号の2種類の符号語、即ちピッチ音源に対応する適応符号語と雑音音源に対応する固定符号語とに着目すると、これらに対する各利得(ゲイン)が各符号語の寄与度を示すファクタとみなすことができる。つまり、利得が小さい場合には、これに対応する符号語の寄与度が小さくなる。
【0044】
そこで、各音源符号語に対応するゲインを判定パラメータとして定義する。そして、埋め込み処理部は、ゲインがある閾値以下になる場合には、対応する音源符号語の寄与度が小さいので、この音源符号語のインデックス(ピッチラグ符号又は固定符号帳符号)を、埋め込み対象パラメータとして、埋め込み対象の任意のデータ系列に置き換える。このようにして、データの埋め込み処理が行われる。これによって、データの置き換え(埋め込み)による音質への影響を小さく抑えることができる。また、閾値の制御によって、再生音質への影響を考慮しながら埋込みデータ量を調整することができる。
【0045】
また、上述した手法によれば、閾値の初期値のみを符号器側及び復号器側の双方で予め定義しておけば、判定パラメータおよび埋め込み対象パラメータのみで、埋込みデータの有無の判定,埋込み場所の特定,および埋込みデータの書込み/読出しが可能となる。さらに、埋込み対象のデータに制御コード(例えば、閾値の変更)を定義しておけば、別経路で付加情報(制御コード)を伝送しなくても、閾値の変更などを行うことができ、埋込みデータの伝送量を調整することができる。
【0046】
図7及び図8は、固定符号帳ゲインが判定パラメータとして規定され、且つ固定符号帳インデックス(固定符号帳符号)が埋め込み対象パラメータとして規定された場合のデータ埋め込み・抽出処理の概念を説明する図である。
【0047】
図7に示すように、音声符号に対するデータの埋め込み処理は、埋め込み対象のパラメータ符号M(Mは自然数)bitを、任意のデータ系列のMbit分で置き換えることにより実施される。一方、図8に示すように、データ抽出処理は、埋め込み処理とは反対に、埋め込み対象パラメータのMbit分を切り出すことで実施される。なお、切り出された任意のデータ系列は、パラメータの一つとして復号器へ入力される。
【0048】
図9は、データの埋め込み処理部の構成例を示すブロック図である。図9に示すように、埋め込み処理部には、CELP符号器からのLSP符号,ピッチラグ符号,固定符号,及びゲイン符号が入力される。埋め込み処理部は、埋め込み制御部と、スイッチS1とを有している。埋め込み制御部は、制御パラメータ(判定パラメータ)として、ゲイン符号が入力されるように構成されている。埋め込み制御部は、ゲインが所定の閾値を越えているか否かを判定し、この判定結果に基づく制御信号をスイッチS1に与える。これによって、埋め込み制御部は、スイッチS1の切片を、固定符号側(端点A)と埋め込みデータ側(端点B)との一方に切り替える。
【0049】
即ち、埋め込み制御部は、ゲインが所定の閾値を越えている場合には、端点Aを選択し、固定符号を出力する。これに対し、埋め込み制御部は、ゲインが所定の閾値を越えていない場合には、端点Bを選択し、埋め込みデータ系列を出力する。このように、埋め込み制御部は、スイッチS1の切換えを行い、埋め込み対象のパラメータ符号(固定符号)を任意のデータで置き換えるかどうかを制御する。したがって、埋め込み処理がオフの場合には、データの置き換えが行われず、そのままのパラメータ符号が出力される。
【0050】
図10は、データの抽出処理部の構成例を示すブロック図である。抽出処理部は、抽出制御部と、スイッチS2とを有している。抽出処理部には、分離部からのLSP符号,ピッチラグ符号,固定符号,及びゲイン符号が入力される。抽出制御部には、埋め込み制御部と同様に、制御パラメータ(判定パラメータ)として、ゲイン符号が入力される。
【0051】
抽出制御部は、ゲインが所定の閾値(埋め込み制御部との間で同期がとられている)を越えているか否かを判定し、この判定結果に基づいて、スイッチS2をオン/オフする制御信号をスイッチS2に与える。即ち、抽出制御部は、ゲインが所定の閾値を越えている場合には、スイッチS2をオフにする。これに対し、ゲインが所定の閾値を越えていない場合には、抽出制御部は、スイッチS2をオンにする。これによって、固定符号としての埋め込みデータが、分岐線から出力される。このようにして、埋め込みデータが抽出される。 このように、抽出処理部は、抽出制御部によるスイッチS2の切換制御によって、抽出処理のオン/オフをフレーム毎に制御する。抽出制御部は、上記した埋め込み制御部と同じ構成を持つ。従って、埋め込み処理と抽出処理は、常に同期して動作する。
【0052】
以上のように、基本技術によれば、音声の符号化フォーマットを変更することなく、任意のデータを埋込むことができる。つまり、通信/蓄積の用途で必須の互換性を損なうことなく、かつユーザに知られることなく、ID情報や他メディアの情報を音声情報に埋め込んで伝送/蓄積することができる。
【0053】
加えて、基本技術によれば、利得、適応/固定符号帳などのCELPに共通したパラメータにて、制御仕様を規定する。このため、特定の方式に限定されることなく、幅広い方式に適用できる。例えば、VoIP向けのG.729や移動体通信向けのAMRなどに適用することができる。
【0054】
ところで、基本技術では、固定符号ゲインおよび適応符号ゲインを音声品質への寄与度として捉え、判定パラメータとして用いている。音声は、一般的に雑音性の強い子音部では固定符号ゲインが大きくなり、ピッチ性の強い母音部では適応符号ゲインが大きくなる特性を持っている。したがって、入力音声における各ゲインの変化を捉えることで、音声品質への影響のない部分(区間)へのデータ埋め込みを可能としている。
【0055】
しかしながら、入力音声に背景雑音が重畳される背景雑音環境下ではこれが問題となる。背景雑音が重畳された音声では、音声成分が背景雑音の成分によってマスクされる。このため、上記で述べたゲインパラメータの特性が鈍ってくる。これはSNR(Signal to Noise Ratio:入力音声パワーに対する背景雑音パワーの割合)が大きくなるほど強くなる。従って、基本技術では音声の特性を正確に捉えることができず、埋め込み区間の誤判定による音質の劣化を引き起こす可能性がある。
【0056】
また、このような音質の劣化が回避されるように制御閾値を調整すると、埋め込み可能フレームとして判定される頻度が大幅に低下する。このため、背景雑音下でのデータ埋め込み率が大幅に低下する。
【0057】
図11は、G.729方式に基本技術を適用した場合の背景雑音種に対する埋め込みデータ伝送レートを示す図である。背景雑音レベルが大きくなるほど、データ伝送レートが大幅に低下し、特に高雑音条件では正確な判定が全くできなくなる。このため、データ埋め込みが不可能となることが分かる。(図11中のクリーン:背景雑音なし、低雑音:SNR≧10dB、中雑音:5dB<SNR<10dB、高雑音:SNR≦5dB。埋め込み伝送レートは、入力音声データの60%が非音声区間として算出)
以上のように、基本技術では、背景雑音環境下において、埋め込み判定性能が低下し、埋め込み区間の誤判定による音質劣化を引き起こす可能性がある。また、これを回避しようとした場合には、データ埋め込み性能が大幅に低下してしまう。
【0058】
第1の発明は、上述したような基本技術における問題を解決するための試みであり、背景雑音環境下においても音声品質への大きな影響を与えることなく安定したデータ埋め込み性能を提供することを目的とする。
【0059】
〈第1の発明の概要〉
次に、第1の発明の概要について説明する。図12は、第1の発明に係るデータ埋め込み部の構成例を示す図であり、図13は、第1の発明に係るデータ抽出部の構成例を示す図である。
【0060】
第1の発明の特徴は、次の通りである。
(A)データ埋め込み/抽出の制御パラメータ(判定パラメータ)としてLSP符号、ピッチラグ符号、固定符号、ゲイン符号の複数のパラメータ(符号化パラメータ)を使用する。
(B)ピッチラグ符号、固定符号、LSP符号の複数のパラメータ符号に対してデータ埋め込みを行う。
(C)データ埋め込みを行った後の過去のパラメータ符号を用いて、データ埋め込み/抽出の判定制御を行う。
【0061】
以下、第1の発明における処理の流れを順に説明する。
【0062】
(データ埋め込み処理)
図12に示すような、第1の発明に係る埋め込み処理部10は、図6に示すような符号器の埋め込み処理部として適用される。埋め込み処理部10は、所定の制御パラメータ(判定パラメータ)を用いて、所定のパラメータ符号(埋め込み対象パラメータ)にデータを埋め込むか否かを判定する埋め込み制御部11と、埋め込み制御部11による制御に従ってパラメータ符号と埋め込みデータ系列との一方を選択するスイッチ12と、埋め込み制御部11に過去の判定パラメータを与えるための遅延素子群13とを備えている。
【0063】
詳細には、埋め込み処理部10は、CELP符号器(図6)から出力されるLSP符号,ピッチラグ符号,固定(又は雑音)符号,及びゲイン符号が夫々入力される複数の入力端子IT11,IT12,IT13,IT14を有している。また、埋め込み処理部10は、LSP符号又は埋め込みデータを出力する出力端子OT11と、ピッチラグ符号又は埋め込みデータを出力する出力端子OT12と、固定符号又は埋め込みデータを出力する出力端子OT13と、ゲイン符号を出力する出力端子OT14とを有している。各出力端子OT1〜OT4から出力されるパラメータ符号又は埋め込みデータは、多重部(図6)に入力される。さらに、埋め込み処理部10は、埋め込みデータ系列の入力端子IT15を有している。
【0064】
スイッチ12は、各入力端子IT11,IT12,IT13と、各出力端子OT11,OT12,OT13との間に介在するスイッチS11,S12,S13とからなる。各スイッチS11,S12,S13は、埋め込みデータ側の各端点A1,A2,A3と、入力端子側(パラメータ符号側)の各端点B1,B2,B3との一方を選択し、選択した側の入力端子から入力されるパラメータ符号又は埋め込みデータを出力端子側へ伝送する。スイッチ12(各スイッチS11,S12,S13)の選択(切替)動作は、埋め込み制御部11によって制御される。
【0065】
遅延素子群13は、LSP符号(又は埋め込みデータ),ピッチラグ符号(又は埋め込みデータ),固定符号(又は埋め込みデータ),及びゲイン符号が夫々入力される遅延素子13−1〜13−4から構成されている。各遅延素子13−1〜13−4は、入力されたパラメータ符号(又は埋め込みデータ)を、一定時間(所定数のフレーム分)だけ遅延させた後、埋め込み制御部11に入力する。
【0066】
埋め込み制御部11は、遅延素子群13を介して入力される複数のパラメータ符号(LSP符号,ピッチラグ符号,固定符号,及びゲイン符号)を判定パラメータとして受け取る。埋め込み制御部11は、判定パラメータに基づいて、埋め込み処理を行うか否かを判定する。埋め込み制御部11は、埋め込み処理を行うと判定した場合には、スイッチ12に対し、各スイッチS11〜S13が各端点A1〜A3を選択するための制御信号を与える。これに対し、埋め込み制御部11は、埋め込み処理を行わないと判定した場合には、スイッチ12に対し、各スイッチS11〜S13が各端点B1〜B3を選択するための制御信号を与える。
【0067】
以上の構成により、埋め込み処理部10は、次の機能を備える。CELP符号器から出力されるLSP符号、ピッチラグ符号、固定符号、及びゲイン符号は、埋め込み処理部10に入力される。
【0068】
スイッチ12(各スイッチS11〜S13)は、埋め込み制御部11からの制御信号に従った端点間の切り替え動作を行う。これによって、LSP符号、ピッチラグ符号、固定符号から埋め込みデータ系列への置き換え、即ちデータの埋め込みが行われる。このとき、埋め込みデータ系列は、各パラメータ符号のビット数(情報量)に従って分割され、対応するパラメータ符号と置き換えられる。このように、LSP符号,ピッチラグ符号,及び固定符号が埋め込み対象パラメータとして使用される。
【0069】
埋め込みが行われない場合には、データの置き換えが行われない。即ち、各入力端子IT1〜IT4から入力された各パラメータ符号は、そのままで各出力端子OT1〜OT4から出力される。
【0070】
埋め込み制御部11には、埋め込み処理が終了した後の各パラメータ符号が入力される。このとき、遅延素子群13により、一定時間(一定フレーム)遅れた過去のパラメータ符号が入力される。埋め込み制御部11は、LSP、ピッチラグ、固定符号語、ゲインの各パラメータを判定パラメータとして用いて埋め込み判定を行い、判定結果を制御信号としてスイッチ12へ出力する。
【0071】
なお、上述した各スイッチS11〜S13の開閉動作は、埋め込み対象パラメータの増減に応じて個別に制御されるように構成されていても良い。この場合、後述する抽出処理部の各スイッチの開閉動作は、各スイッチS11〜S13の開閉動作に同期するように動作する。
【0072】
(データ抽出処理)
図13に示すような、第1の発明に係る抽出処理部20は、図6に示すような復号器の抽出処理部として適用される。抽出処理部20は、所定の制御パラメータ(判定パラメータ)を用いて、所定のパラメータ符号(抽出対象パラメータ)からデータを抽出するか否かを判定する抽出制御部21と、抽出処理部21による制御に応じて埋め込みデータの切り出し/切り出し停止を選択するスイッチ22と、抽出制御部21に過去の判定パラメータを与えるための遅延素子群23とを備えている。
【0073】
詳細には、抽出処理部20は、分離部(図6)から出力されるLSP符号(又は埋め込みデータ),ピッチラグ符号(又は埋め込みデータ),固定(又は雑音)符号(又は埋め込みデータ),及びゲイン符号が夫々入力される複数の入力端子IT21,IT22,IT23,IT24を有している。また、抽出処理部20は、各入力端子IT21,IT22,IT23,IT24からそれぞれ入力された複数のパラメータ符号をそれぞれ出力する各出力端子OT21,OT22,OT23,OT24を有している。これらの出力端子OT21〜OT24から出力される複数のパラメータ符号は、CELP復号器(図6)に入力される。さらに、抽出処理部21は、スイッチ22によって切り出された埋め込みデータを出力する出力端子OT25を有している。
【0074】
スイッチ22は、各入力端子IT21,IT22,IT23から入力される各パラメータ符号を出力端子OT25へ出力/出力停止するためのスイッチS21,S22,23からなる。各スイッチS21,S22,S23は、閉状態になると、各入力端子IT21,IT22,IT23から各出力端子OT21,OT22,OT23へ向けて伝送される各パラメータ符号を分岐させてOT25へ向けて伝送する。一方、各スイッチS21,S22,S23が開状態になると、各入力端子IT21〜IT23から入力される各パラメータ符号は対応する各出力端子OT21〜OT23のみから出力される状態となる。スイッチ22(各スイッチS21,S22,S23)の開閉動作は、抽出制御部21によって制御される。
【0075】
遅延素子群23は、LSP符号(又は埋め込みデータ),ピッチラグ符号(又は埋め込みデータ),固定符号(又は埋め込みデータ),及びゲイン符号が夫々入力される遅延素子23−1〜23−4から構成されている。各遅延素子23−1〜23−4は、入力されたパラメータ符号(又は埋め込みデータ)を、一定時間(所定数のフレーム分)だけ遅延させた後、抽出制御部21に入力する。
【0076】
抽出制御部21は、遅延素子群23を介して入力される複数のパラメータ符号(LSP符号,ピッチラグ符号,固定符号,及びゲイン符号)を判定パラメータとして受け取る。抽出制御部21は、判定パラメータに基づいて、抽出処理を行うか否かを判定する。抽出制御部21は、抽出処理を行うと判定した場合には、スイッチ22に対し、各スイッチS21〜S23を閉じるための制御信号を与える。これに対し、抽出制御部21は、抽出処理を行わないと判定した場合には、スイッチ22に対し、各スイッチS21〜S23を開くための制御信号を与える。
【0077】
以上の構成を持つ抽出処理部20は、次の機能を持つ。送信(埋め込み)側から抽出処理部20に入力された各パラメータ符号は、抽出制御部21に入力される。このとき、抽出制御部21には、埋め込み側と同様に、遅延素子群23によって、一定時間(一定フレーム)過去のパラメータ符号が入力される。
【0078】
抽出制御部21は、埋め込み制御部11と同じ構成を有し、LSP、ピッチラグ、固定符号語、ゲインからなる複数のパラメータを用いてデータを抽出するか否かの判定を行い、判定結果を制御信号としてスイッチ22へ出力する。
【0079】
スイッチ22は、抽出制御部21から出力された制御信号に応じた切替(開閉)動作を行い、埋め込み対象パラメータの夫々からのデータの抽出(切り出し)を制御する。このとき、埋め込み対象パラメータ符号の夫々からは、その応じたビット数(情報量)に従ってデータ系列が切り出され、切り出されたデータ系列が合成され、抽出データ系列としてOT25から出力される。
【0080】
上述したように、埋め込み処理部11を含む符号器(送信側)と抽出処理部21を含む復号器(受信側)とは、同期をとって動作する。即ち、上述した埋め込みデータ系列の埋め込み処理及び抽出処理は同期をとって行われる。
【0081】
《第1の発明の作用》
次に、第1の発明の作用を、その特徴毎に説明する。
【0082】
(特徴(A)による作用)
第1の発明では、特徴(A)として、音源信号の寄与度を表すゲインに加え、信号の周波数概形を現すLSP、ピッチ周期を表すピッチラグ、再生信号レベルでの信号パワー等のパラメータを、埋め込み/抽出の判定閾値として用いる。これによって、背景雑音環境下において、基本技術よりもさらに正確な埋め込み判定が可能となる。特にLSPは音声特有のフォルマント特性を表わすパラメータであり、背景雑音による影響を受けにくく、埋め込み判定パラメータとして最も適している。
【0083】
(特徴(B)による作用)
第1の発明では、特徴(B)として、判定パラメータとして使用される少なくとも一つのパラメータを含む複数のパラメータ符号にデータを埋め込む。これによって、フレーム当りのデータ埋め込み量が増加する。従って、背景雑音環境下での埋め込み頻度の低下による埋め込み伝送レートの低下を抑制することができる。
【0084】
(特徴(C)による作用)
第1の発明では、特徴(C)として、埋め込み処理を行った後の過去のパラメータ符号を埋め込み/抽出の判定パラメータとして用いる。これによって、埋め込み側と抽出側の同期を保障することができる。また、抽出の制御用パラメータを追加することなく、送信側で埋め込んだデータを受信側で正常に抽出することができる。
【0085】
〈第1の発明の実施例〉
次に、図面を参照して、本発明の第1の発明の実施例について説明する。実施例の構成は例示であり、第1の発明は、実施例の構成に限定されない。
【0086】
《第1実施例》
図14は、第1の発明の第1実施例の構成例を示す図である。第1の実施例として、ITU-T G.729の音声符号化方式(G.729方式)に対し、第1の発明に係る埋め込み方式を適用した場合の符号器30(データ埋め込み側)について説明する。
【0087】
図14において、符号器30は、G.729符号器31と、符号器31の後段に設けられる埋め込み処理部32と、埋め込み処理部33の後段に設けられる多重部33とを備えている。
【0088】
(G.729の概要)
図15は、G.729方式の諸元を示す表(表1)と、伝送パラメータと量子化ビット割当を示す表(表2)とを示す図である。G.729では、フレーム長10ms(80サンプル)の入力信号を80ビットで符号化する。G.729は、基本的にCELP方式をベースとしている。特徴としては、固定符号帳として4本のパルスで構成される代数符号帳を用いている。したがって、伝送パラメータは、LSP、ピッチラグ、代数符号(代数符号帳インデックス)、及びゲインである。
【0089】
(埋め込み対象パラメータ)
図16は、G.729方式の音声符号の構成、及び実施例における埋め込み対象パラメータの説明図である。第1実施例では、代数符号SCB#COD(34bit(17+17bit))と、ピッチラグ符号LAG#COD(13bit(8+5bit))と、18bitで構成されるLSP符号LSP#CODの一部(5bit)を埋め込み対象として、データの埋め込みが行われる。
【0090】
ここで、LSP符号の一部の5bitについて説明する。G.729のLSP量子化器(符号器31に含まれている)は、MA予測を用いて予測した10個のLSP予測値と実際のLSPとの誤差を2段構成の量子化テーブルでベクトル量子化する構成を持つ。従って、LSP符号の18bitは、図16に示すように、MA予測係数の切り替え情報MODE(1bit)、1段目の量子化テーブルのインデックスIdx1(7bit)、2段目の低次側の量子化テーブルのインデックスIdx2#low(5bit)、2段目の高次側の量子化テーブルのインデックスIdx2#high(5bit)で構成される。予備検討の結果、代数符号、ピッチラグ符号に加え、LSPの2段目の高次側の量子化テーブルのインデックスidx2#highは、非音声区間において品質への影響が小さいことが解った。このため、当該5bitを埋め込み対象とする。
【0091】
従って、本実施例では、G.729の音声符号の1フレームを構成する80bit中の52bitにデータを埋め込む。
【0092】
(データ埋め込み処理)
第1実施例では、会話音声品質への影響が小さい非音声区間のフレームが埋め込み対象フレームと規定され、この埋め込み対象フレームにデータが埋め込まれる。非音声区間の検出には、VAD(Voice Active Detector)技術を適用することができる。VADは、入力信号から求められる複数のパラメータを分析して、その区間(信号)が音声区間か非音声区間であるかを判定する技術である(例えば、特許文献3及び4より周知)。
【0093】
図14に示す埋め込み制御部34は、VADを含み、VADによる判定結果が非音声区間である場合には、埋め込み制御部34は、スイッチSW1の各スイッチSW11,SW12,SW13の夫々を、埋め込みデータ系列IN#DAT側の各端点A11,A12,A13側に切り替えて埋め込み処理を行う。これに対し、埋め込み制御部34は、VADによる判定結果が音声区間である場合には、スイッチSW1を各端点B11,B12,B13側に切り替えて、データの埋め込みを行わない。
【0094】
第1実施例に適用されるVADは、区間判定用(埋め込み判定用)の入力パラメータとして、LSP、ピッチラグ、及び再生信号(全伝送パラメータから生成する)を必要とする。つまり、LSP、ピッチラグ、代数符号(固定符号)、ゲインのすべての伝送パラメータが埋め込み・抽出処理の制御に必要となる。
【0095】
従って、埋め込み対象パラメータ(LSP、ピッチラグ、代数符号)が制御用パラメータに含まれることを考慮する必要がある。以下、データ埋め込み処理について図14を用いて順に説明する。
【0096】
先ず、入力音声信号IN#SIG(n)が、フレーム毎(80サンプル)に、G.729符号器31に入力される。ここで、入力音声信号IN#SIG(n)は、8kHzサンプリング16bitのリニアPCM信号である。また、図14における“n”は現フレームのフレーム番号である。G.729符号器31は、入力音声信号IN#SIG(n)を符号化して、符号化パラメータ(パラメータ符号)であるLSP符号LSP#COD(n),ピッチラグ符号LAG#COD(n),代数符号SCB#COD(n),及びゲイン符号GAIN#COD(n)を出力する。また、G.729符号器31は、符号化処理の過程で生成されるLPC合成フィルタ出力LOCAL#OUT(n)を埋め込み制御部34へ出力する。ここでG.729符号器31による符号化処理は、G.729規格に基づく符号化処理と同じである。
【0097】
埋め込み制御部34は、現フレームnの音声符号にデータを埋め込むかどうかの判定を行う。上述したように、埋め込み制御部34はVADを含む。埋め込み制御部34は、入力されたLSP,ピッチラグ,再生信号の各パラメータを分析して非音声区間(のフレーム)を検出し、スイッチSW1へ埋め込み制御信号を出力する。なお、埋め込み制御部34は、フレームが音声区間か非音声区間かを入力パラメータに基づいて判定するための閾値を予め有している。
【0098】
検出結果が非音声区間(のフレーム)の場合には、埋め込み制御部34は、スイッチSW1を各端点A11〜A13側に設定し、埋め込み対象符号であるLSP#COD(n)の一部、LAG#COD(n)、SCB#COD(n)を埋め込みデータ系列IN#DATで置き換えて、LSP#COD(n)’、LAG#COD(n)’、SCB#COD(n)’として多重部33に出力する。
【0099】
ここで、埋め込み処理と抽出処理との同期を保障するためには、埋め込み制御に用いる符号化パラメータとして埋め込みを施された後の符号化パラメータ(パラメータ符号)を使用する必要がある。そこで、第1実施例では、図14に示すように、1フレーム分の遅延を発生する遅延素子35−1,35−2,35−3が設けられ、1フレーム分過去のLSP符号 LSP#COD’(n-1),ピッチラグ符号LAG#COD’(n-1),及び再生信号LOCAL#OUT#SIG(n-1)が埋め込み制御部34(VAD)に入力される。
【0100】
多重部33は、入力された各符号化パラメータ(LSP#COD’(n)、LAG#COD’(n)、SCB#COD’(n),GAIN#COD(n))を、図16に示した構成で多重化し、第nフレームのG.729音声符号G.729#COD(n)として復号器側へと出力する。
【0101】
(G.729符号器のメモリ状態更新)
さらに、符号器30は、符号器と復号器の同期を保障するために、埋め込み処理が施された後の伝送パラメータを用いて状態更新を行う。具体的には、図14に示すように、埋め込みが施された後の伝送パラメータ(LSP#COD’(n)、LAG#COD’(n)、SCB#COD’(n))がG.729符号器31へ入力されて音源信号が生成され、適応符号帳及びLPC合成フィルタ(例えば図3参照)のメモリ更新が行われる。状態更新は、G.729規格本来の処理と同じである。また、この過程で生成される再生信号LOCAL#OUT#SIG(n)は、前述したように、次フレームの埋め込み制御用パラメータとして埋め込み制御部33へ向けて出力される。
【0102】
《第2実施例》
図17は、第1の発明の第2実施例の構成例を示す図である。第2実施例は、ITU-T G.729音声符号化方式に第1の発明の埋め込み方式を適用した場合の復号器(データ抽出側)の例である。第2実施例では、第1実施例によってG.729音声符号に埋め込まれたデータの抽出を行う。以下、データ抽出処理について図16を用いて順に説明する。
【0103】
図17において、復号器40は、分離部41と、分離部41の後段に設けられる抽出処理部42と、抽出処理部42の後段に設けられるG.729復号器43とを備えている。
【0104】
符号器側(例えば符号器30)から伝送されてくる、G.729の音声符号G.729#COD(n)は、分離部41に入力される。分離部41は、音声符号G.729#COD(n)を複数のパラメータ符号(LSP#COD’(n)、LAG#COD’(n)、SCB#COD’(n)、GAIN#COD(n))に分離し、抽出処理部42に入力する。
【0105】
抽出処理部42は、抽出制御部44と、スイッチSW2(スイッチSW21,SW22,SW23)と、各遅延素子45−1,45−2,45−3を備えている。抽出制御部44は、現フレームnの音声符号からデータを抽出するかどうかの判定を行う。
【0106】
ここで、抽出制御部44は、第1実施例の埋め込み制御部34とまったく同じ構成を持ち、各遅延素子45−1,45−2,45−3を通過した1フレーム過去のLSP符号LSP#COD’(n-1)、ピッチラグ符号LAG#COD’(n-1)、再生信号LOCAL#OUT#SIG(n-1)の各パラメーが入力される。抽出制御部44は、入力される各パラメータを用いて、VADにより非音声区間を検出し、スイッチSW2へ抽出制御信号を出力する。即ち、抽出制御部44は、検出結果が非音声区間の場合には、スイッチSW2(各スイッチSW21,SW22,SW23)を閉じて、埋め込み対象符号であるLSP#COD’(n)の一部、LAG#COD’(n)、SCB#COD’(n)を抽出データ系列OUT#DATとして出力する。
【0107】
G.729復号器43は、分離部41から出力され、且つ抽出処理部42を通過した各パラメータ符号を受け取る。G.729復号器43は、各パラメータ符号を復号化して第nフレームの再生信号OUT#SIG(n)を出力する。ここでG.729復号器43による復号化処理は、G.729規格本来の処理と同じである。また復号化処理の過程で生成されるLPC合成フィルタ出力LOCAL#OUT(n)を抽出制御部44へ向けて出力する。
【0108】
《実施例の作用及び効果》
図18は、基本技術に係る方法と第1の発明に係る方法とのデータ埋め込み性能を比較した結果を示す図である。図18では、音声符号/復号方式として、G.729が適用されている。
【0109】
第1の発明によれば、複数のパラメータに同時にデータ埋め込みを行うことにより、1フレーム当りの埋め込みデータ量が増加する。これによって、クリーンな音声条件での伝送レートが向上している。
【0110】
さらに、第1の発明によれば、埋め込み判定パラメータとして複数のパラメータが用いられる。これによって、背景雑音下での埋め込み制御の精度が向上する。従って、基本技術で問題となっていた背景雑音条件下での埋め込み伝送レートが大幅に増加している。特に、基本技術において埋め込みが不可能であった高雑音条件でもデータ埋め込みが可能となる。
【0111】
さらに、第1の発明によれば、音声への影響が小さい非音声区間を判定し、この非音声区間のフレームにおける音声符号に対して埋め込みを行う。これによって、データ埋め込みによる音声品質の劣化はほとんど生じない。
【0112】
以上のように、第1の発明によれば、データ埋め込みの基本性能を向上すると共に、背景雑音条件下でのデータ埋め込み性能を大幅に改善することが可能となる。
【0113】
データ埋め込み方式は、携帯電話等の通信システムにも適用可能であり、使用される実環境では背景雑音の影響を考慮することは重要である。本発明は実環境下での性能を向上させるものであり、データ埋め込み方式の製品への適用において大きな効果がある。
【0114】
なお、本発明は、上述したような符号器(埋め込み処理部)と復号器(抽出処理部)との双方の構成を備える音声符号/復号装置(音声CODEC(データ符号/復号装置))として構成することができる。
【0115】
〔第2の発明〕
次に、本発明の第2の発明に係るデータ埋め込み技術について説明する。第2の発明は、マルチメディアコンテンツ(静止画、動画、オーディオ、音声等)などのディジタルデータ系列に対して、その一部を別の任意のデータと置き換えることにより実現されるデータ埋め込み技術に関する。
【0116】
このようなデータ埋込み技術では、伝送ビット系列に影響を与えることなく、別の任意の情報を埋め込むことができる。このため、例えば、ディジタル画像に著作権情報を埋め込んで不正コピーを防ぐ、音声符号化により圧縮された音声符号にID情報を埋め込んで通話の秘匿性を向上させるなどの「電子透かし技術」として、近年重要性が高まっている。
【0117】
〈第2の発明の経緯〉
次に、第2の発明の経緯について説明する。
【0118】
《CELP》
近年、広く普及している携帯電話や、徐々に普及しつつあるインターネット電話では、回線を有効利用するため、音声は符号化により圧縮され、音声符号として送受信される。このような音声符号化技術において、低ビットレートでも音声品質が優れている符号化方式として、符号励振線形予測(Code Excited Linear Prediction:CELP)方式が知られている。ITU-T(International Telecommunication Union-Telecommunication sector)のG.729方式、3GPP(3rd Generation Partnership Project)のAMR(Adaptive Multi Rate)方式のような、多くの音声符号化規格で、CELPをベースとした符号化方式が採用されている。
【0119】
CELPについて簡単に説明する。CELPは、1985年にM.R.Schroder氏とB.S.Atal氏によって発表された音声符号化方式である。CELPは、人間の音声生成モデルに基づいて入力音声からパラメータを抽出し、パラメータを符号化して伝送する。これによって、、高能率の情報圧縮が実現される。図19は、音声の生成モデルを示す図である。音声は、音源(声帯)で発生された音源信号が調音系(声道)に入力され、声道において声道特性が付加された後、最終的に唇から音声波形となって出力される。
【0120】
図20は、CELPに基づく符号器・復号器の処理の流れを示す図である。CELP符号器は、前述の音声生成モデルに基づいて入力音声を分析し、入力音声を声道特性を表す線形予測係数(Linear Predictor Coefficients:LPC係数)と、音源信号とに分離する。更に、符号器は、音源信号から、この音源信号の周期成分を表す適応符号帳(Adaptive CodeBook:ACB)ベクトル、非周期成分を表す固定符号帳(Stochastic CodeBook:SCB)ベクトル、及び両ベクトルの利得(ゲイン)を抽出する。以上が、パラメータ抽出処理である。符号化処理では、LPC係数、ACBベクトル、SCBベクトル、ACB利得、SCB利得のそれぞれが符号化される。多重化処理では、符号化処理によって符号化された複数の符号が多重化された音声符号が生成される。音声符号は、復号器へ伝送される。
【0121】
一方、復号器は、分離処理において、符号器からの音声符号を、LPC係数、ACBベクトル、SCBベクトル、ACB利得、SCB利得の各符号に分離する。また、復号器は、復号処理において、各符号を復号する。そして、復号器は、音声合成処理において、復号処理で復号された各パラメータから音声を合成する。
【0122】
図21は、CELPに基づく符号器の構成例を示すブロック図である。CELPでは、入力音声を一定長のフレーム単位で符号化する。まず、線形予測分析(LPC分析)により、入力音声からLPC係数を求める。このLPC係数は、声道特性を全極型の線形フィルタで近似した際のフィルタ係数である。次に、音源信号の抽出を行う。音源信号の抽出には、合成による分析(Analysis by Synthesis:AbS)手法が用いられる。
【0123】
CELPでは、音源信号を、LPC係数で構成されるLPC合成フィルタに入力することで音声を再生する。従って、適応符号帳に格納された複数のACBベクトル、雑音符号帳に格納された複数のSCBベクトル、及び両ベクトルの利得により構成される音源候補から、LPC合成フィルタによって音声を合成した際に入力音声との誤差が最小になる符号帳の組み合わせを探索し、ACBベクトル、SCBベクトル、ACB利得、SCB利得を抽出する。以上の操作により抽出された各パラメータは符号化され、LPC符号、ACB符号、SCB符号、ACB利得符号、及びSCB利得符号が得られる。得られた複数の符号は多重化され、音声符号として復号器側へ伝送される。
【0124】
図22は、CELPに基づく復号器の構成例を示すブロック図である。復号器では、伝送された音声符号が各パラメータ符号(LPC符号、ACB符号、SCB符号、ACB利得符号、及びSCB利得符号)に分離される。次に、ACB符号、SCB符号、ACB利得符号、及びSCB利得符号が復号化されて音源信号が生成される。そして、音源信号がLPC符号を復号して得られるLPC係数によって構成されるLPC合成フィルタに入力され、音声が再生・出力される。
【0125】
《データ埋め込み技術》
上述したように、近年、画像・音声といったマルチメディアコンテンツなどのディジタルデータ系列に任意のデータを埋め込む「データ埋め込み技術」が注目を集めている。データ埋め込み技術は、人間の知覚の特性を利用し、マルチメディアコンテンツ自体に、品質に影響を与えることなく別の任意の情報を埋め込む技術である。データ埋め込み技術については、図1を用いて説明した通りである。
【0126】
データ埋め込み技術の一つとして、上述した基本技術(特願2002-26958)がある。基本技術では、音声符号に含まれる伝送パラメータを対象にデータの埋め込み・抽出が行われる。図23は、固定符号帳を埋め込み対象とした場合の基本技術におけるデータ埋め込み・抽出の処理フローを示す。基本技術では、CELP符号器から出力されたパラメータ符号に対して、データ埋め込みが実施される。その後、パラメータ符号が多重化され、データが埋め込まれた音声符号としてCELP復号器側へ伝送される。CELP復号器側では、伝送された音声符号は符号化パラメータに分離され、抽出処理部で埋め込まれたデータが抽出される。その後、CELP復号器へパラメータ符号が入力され再生音声への復号処理が行われる。
【0127】
前述したように、CELPにて符号化された伝送パラメータは音声生成系の特徴パラメータと対応している。この特徴に着目すると、各パラメータの状態を把握することができる。音源信号の2種類の符号、ピッチ音源に対応する適応符号帳ベクトルと雑音音源に対応する固定符号帳ベクトルとに着目すると、これらの利得を各符号帳ベクトルの寄与度を示すファクタとみなすことができる。つまり、利得が小さい場合には対応する符号帳ベクトルの寄与度が小さくなる。そこで、利得を判定パラメータとして定義し、ある閾値以下になる場合は対応する音源符号帳ベクトルの寄与度が小さいと判断して、音源符号帳ベクトルの符号を任意のデータ系列で置き換えることで、データ埋め込みを行う。これにより、データ置き換えによる音質への影響を小さく抑えながら、任意のデータを埋め込むことが可能となる。
【0128】
図24及び図25は、判定パラメータを固定符号帳利得、埋め込みパラメータを固定符号帳符号とした場合のデータ埋め込み・抽出処理の概念図である。埋め込み処理は、図24に示すように、判定パラメータが閾値以下の場合において、埋め込み対象のパラメータ符号を任意のデータ系列で置き換えることにより実施される。
【0129】
一方、図25に示すように、データ抽出処理は、判定パラメータが閾値以下の場合において、埋め込み処理とは反対に、埋め込み対象パラメータを切り出すことで実施される。ここで、判定パラメータの閾値として、埋め込み側と抽出側とで同じ閾値が用いられる。すなわち、埋め込み判定と抽出判定は同じパラメータ、同じ閾値を用いる。これにより、埋め込み処理と抽出処理は、常に同期して動作する。
【0130】
以上のように、基本技術によれば、符号化フォーマットを変更することなく、任意のデータを埋め込むことができる。つまり、通信/蓄積の用途で必須の互換性を損なうことなく、かつユーザに知られることなく、著作権情報やID情報、あるいは他のメディアの情報を音声情報に埋め込んで伝送/蓄積することができる。加えて、利得、適応/固定符号帳符号などCELPに共通したパラメータにて、埋め込み・抽出制御を行うため、特定の方式に限定されることなく、幅広い方式に適用できる。
【0131】
ところで、基本技術によるデータ埋め込み・抽出方式では、伝送される音声符号を対象に判定に用いるパラメータ、判定閾値、データ埋め込み対象パラメータを送受双方で予め定義し、双方で等しい閾値および判定パラメータを用いてデータの埋め込み及び抽出を行う。つまり、送受双方で伝送パラメータが同期している(同じ状態にある)ことが絶対条件である。
【0132】
しかしながら、伝送路で音声符号にエラー(ビット誤りまたはフレーム消失)が挿入された場合、同期状態が保持できなくなり、受信側で埋め込みデータを正常に抽出することができなくなる。特に、CELP方式のように、過去フレームの状態が現フレームに影響する符号化方式では、伝送パラメータがしばらくの間(数〜数十フレーム程度)正常値に戻らない。
【0133】
従って、その間に受信した音声符号にデータが埋め込まれていたかどうかを正確に判定して抽出することが困難となる。また、受信できたとしても、埋め込みデータにエラーが含まれている可能性がある。
【0134】
音声符号化方式としては、このような伝送路に対し、音声品質の極端な劣化を防ぐため、誤り隠蔽技術が適用されている。しかし、このような誤り隠蔽技術は、過去のパラメータなどを利用して現在のパラメータを生成するものであり、失われたパラメータを元に修復するわけではない。つまり、埋め込みデータにとって音声符号の誤りは大きな問題となる。特に、データが送受信側の双方で完全に一致することを求められるもの(例えばID情報など)であった場合、その影響は大きい。
【0135】
上記した問題を解決する手段として、埋め込みデータにエラー検出信号を付加し、受信側でエラーを検出した場合に送信側にデータの再送を要求することによって、データを確実に送受信するという方法が考えられる。例えば、埋め込み対象となるビット数がMbit/frameであった場合、MbitのうちNbitにデータを埋め込み、残り(M−N)bitに対してエラー検出信号を埋め込む(M及びNは自然数)。こうすることで、受信側では埋め込みデータのエラーの有無を検出することができる。そして、エラーが検出された場合には、予め定めておいた再送コマンドを音声符号に埋め込んで送信側に送るなどの方法により、再送を要求する。このように、エラー検出機能を付加し、エラーを検出した際は再送を行うことで、埋め込みデータを確実に送受信することが期待できる。
【0136】
なお、エラー検出信号としては、シーケンス番号やチェックサム、或いはCRC(Cyclic Redundancy Check(巡回冗長検査))符号といった技術が公知である。以下に、これらのエラー検出アルゴリズムを簡単に説明する。
【0137】
《シーケンス番号》
シーケンス番号が適用される場合には、送信側でデータブロックの1単位ごとに0,1,3…と連続した番号を付加して送信し、受信側でその番号をチェックすることで、データの連続性をチェックする。例えば、受信されたシーケンス番号が0,1,2,4…という順番であった場合には、“3”というシーケンス番号のデータブロックが消失したことがわかる。
【0138】
しかし、シーケンス番号によるチェックでは、データブロック内の一部のビットにエラーが生じた場合をチェックすることはできない。また、シーケンス番号にxbit(xは自然数)を割り当てた場合、2ブロック未満の連続したブロックの消失を検出することは可能であるが、それ以上の連続したブロック消失を確実に検出することはできない。この理由を図26を用いて説明する。
【0139】
今、シーケンス番号に2bitが確保されており、00→01→10→11→00…と推移していくものとする。また、網掛けが施されているデータブロックが消失したブロックであることを示す。このとき、図26(1)のように、消失ブロック数が4ブロック未満の場合であれば、シーケンス番号の推移の不連続性によって、ブロックが消失したことを検出し、消失したブロックを特定できる。例えば、図26(1)では“01”が消失している。このため、00→01→10→…と推移すべきシーケンス番号が、00→10→…となる。従って、“01”のブロックが消失したことがわかる。
【0140】
しかし、図26(2)のように、消失ブロック数が4ブロックであった場合には、シーケンス番号推移の連続性は保たれる。このため、ブロック消失があったことを検出できない。
【0141】
更に、図26(3)のように、消失ブロック数が5ブロック以上であった場合を考えると、消失ブロック数が2xの整数倍でなければ、シーケンス番号推移が不連続になるのでブロック消失が生じたことは検出可能である。だが、図26(3)を見ると、シーケンス番号は00→10と、図26(1)と全く同じように推移している。つまり、実際には5ブロック消失しているにもかかわらず、1ブロックの消失と判断してしまう虞がある。この問題を解消するには、シーケンス番号にできるだけ多くのビットを割り当てることが有効である。しかし、そうすると、データ本体に割り当てるビット数が少なくなり、データ転送速度が低下する。
【0142】
《チェックサム》
チェックサムとは、ブロック内のデータをビットごとに分割し、各ビットを数値とみなして合計を取ったものである。例えば、“1011”という4bitのデータがあった場合、チェックサムは、1+0+1+1=3より、3となる。送信側は、このチェックサムをデータに付加して送信し、受信側では、送られてきたチェックサムと、データから計算したチェックサムとを比較し、エラーの有無を調査する。例えば、上の例の4bitデータのうち、伝送路エラーによって上位1bitが“1”から“0”に反転した場合(つまり、“0011”となった場合)には、送られてきたチェックサムが“3”であるのに対し、受信側で計算するチェックサムは“2”となる。従って、伝送路でデータにエラーが生じたことを検出できる。
【0143】
しかし、チェックサムでは、上述の通り、データの一部のエラーはチェック可能であるが、データブロックそのものが消失した場合については検出できない。
【0144】
更に、チェックサムには、2bit以上のビットエラーを検出できない可能性があるという脆弱性がある。具体的には、ビットエラーにより「“0”から“1”に反転したビットの数」と、「“1”から“0”に反転したビットの数」とが同じであった場合には、エラーを検出できない。例えば、“1011”という4bitのデータの上位2bitが伝送路エラーにより“0111”となった場合には、受信側で計算するチェックサムは“3”となる。この場合には、ビットが誤っているにも関わらず、チェックサムは等しくなる。従って、エラーを検出することができない。
【0145】
《CRC符号》
CRCは、生成多項式と呼ばれる予め定められた多項式を用いた誤り検出アルゴリズムである。具体的には、データ多項式をP(x)、生成多項式をG(x)、生成多項式の最高次数をnとした場合、CRC符号は、P(x)・xn÷G(x)の余りとして定義される。つまり、CRC符号は、生成多項式より1次少ない多項式となる。なお、ここで除算を行う際に生じる減算には排他的論理和を用いる。送信側は、CRC符号をデータに付加して送信する。受信側では送られてきたデータと生成多項式とを用いてCRC符号を計算し、送られてきたCRC符号と比較する。このようにして、エラーの有無を調査する。以下にCRC符号算出の一例を示す。
【0146】
今、データを“1011”とすると、データの多項式P(x)は、P(x)=x3+x+1となる。生成多項式G(x)として、G(x)=x3+1を与えると、CRC符号は、
P’(x)・xn÷G(x)=(x3+x+1)・x3÷(x3+1)=x3+x 余りx
より、“010”となる。そして、このCRC符号C(x)をデータに付加して送信する。
【0147】
受信側では、送られてきたデータから送信側と同様にしてCRC符号を求め、C(x)と比較して、エラーをチェックする。例えば、送信中に伝送路エラーが生じて、上位1bitが反転したデータ(すなわち、“0011”) を受信した場合、受信側で計算されるCRC符号は、
P’(x)・xn÷G(x)=(x+1)・x3÷(x3+1)=x+1 余り x+1
より、CRC符号は“011”となり、送られてきたCRC符号と異なる。これによって、エラーがあったことを検出することができる。同様に、チェックサムでは検出できない上位2bitの反転の場合(“0111”)についても求めてみると、
P’(x)・xn÷G(x)=(x2+x+1)・x3÷(x3+1)=x2+x+1 余り x2+x+1
より、CRC符号は“111”となり、やはり送られてきたCRC符号と異なる。このため、エラーを検出することができる。
【0148】
以上より、CRC符号はチェックサムでは検出できない可能性のある2bit以上のエラーも検出することが可能である。具体的には、生成多項式がn次であった場合、nbit未満のエラーであれば、確実に検出することが可能である。しかし、言い換えれば、検出できるエラービット数を増やすために、生成多項式のビット数を増やす必要がある。そうすると、CRC符号に割り当てるビット数も増加し、データ本体以外に割り当てるビット数が増える。このため、エラー耐性が向上する一方でデータ転送速度が低下する。更に、CRCでは、チェックサムと同様に、データブロックそのものが消失した場合についてはエラーを検出することができない。
【0149】
以上から、エラーを正確に検出するためには、シーケンス番号などのブロック消失検出アルゴリズムと、CRC符号などのビットエラー検出アルゴリズムを併用する必要があると考えられる。しかし、この場合には、エラー検出信号に多くのビットを割り当てる必要がある。
【0150】
例えば、ITU-T G.729符号化方式の固定符号帳34bit/frameにデータを埋め込む場合を考える。このとき、図27に示すように、シーケンス番号4bit、CRC符号8bitをエラー検出信号として割り当てた場合には、16フレーム未満の連続フレーム消失と、8bit未満のビットエラーを検出することができる。しかし、埋め込みデータ本体の割り当てビット数が22bitと少なくなり、データ転送速度がエラー検出なしの場合に比べて約35%低下してしまう。
【0151】
この問題に鑑み、データ本体の割り当てビットを増やすために、エラー検出信号をシーケンス番号1bitとパリティービット(1bitのチェックサム)などとした場合には、データ転送速度は改善される。しかし、2フレーム以上の連続したフレーム消失や、2bit以上のビットエラーに対応できない場合があるなど、エラー検出能力が弱まる。
【0152】
このように、エラー検出能力とデータ転送速度はトレードオフの関係にあり、データ転送速度を維持したままエラー検出能力を高めることは困難である。
【0153】
第2の発明は、上述した問題に鑑み、データ受信側で正確な埋め込みデータを得ることができる技術を提供することを目的とする。また、第2の発明は、データ転送速度を低下させることなくエラー検出能力を高めることを目的とする。
【0154】
〈第2の発明の概要〉
次に、第2の発明の概要を説明する。第2の発明は、データ転送速度を維持したままエラー検出能力を高める手段として、埋め込みデータとエラー検出信号とで、1フレームに対するデータ埋め込みが可能なビット数より大きいデータブロック(以降、「大ブロック(第2のデータブロック)」と呼ぶ)を構成し、大ブロックを1フレーム毎の埋め込みサイズに合わせて「小ブロック(第1のデータブロック)」に分割して送受信を行うことを特徴とする。
【0155】
図28に第2の発明の原理図を示し、以下に各処理について説明する。図28(1)は、データ送信側(符号器100側)の原理を示し、図28(2)はデータ受信側(復号器110側)の原理を示す。
【0156】
図28(1)に示すように、符号器100は、音声符号器101と、データ埋め込み部102と、データブロック構成部103とを備え、データブロック構成部103は、大ブロック構成部104と、小ブロック構成部105とを含む。
【0157】
音声符号器101は、入力される音声を符号化し、データ埋め込み部に渡す。
【0158】
データブロック構成部103には、送信データ(埋め込み対象のデータ系列)が入力される。大ブロック構成部104は、送信データから大ブロックを生成し、小ブロック構成部105に入力する。小ブロック構成部105は、大ブロックから複数の小ブロックを生成し、各小ブロックをデータ埋め込み部102に送る。
【0159】
図29は、大ブロック及び小ブロックの構成方法の説明図である。図29に示すように、大ブロック構成部104は、送信データとしての埋め込みデータにエラー検出信号を付加した大ブロックを生成し、小ブロック構成部105に渡す。小ブロック構成部105は、大ブロックを1フレームに夫々対応する所定数の小ブロック1〜n(nは自然数)に分割することによって、複数の小ブロックを生成する。
【0160】
データ埋め込み部102は、データブロック構成部103からの各小ブロックを1フレーム分の音声符号に埋め込み、データが埋め込まれた音声符号として送信する。
【0161】
図28(2)に示すように、復号器110は、データ抽出部111と、音声復号器112と、データブロック復元部113と、データブロック検証部114とを備える。
【0162】
データ抽出部111には、符号器側から伝送されてきた音声符号が入力される。データ抽出部111は、音声符号から小ブロックを抽出し、データブロック復元部113に送るとともに、音声復号器112に音声符号を渡す。
【0163】
音声復号器112は、音声符号の復号及び音声の再生処理を行い、音声を出力する。
【0164】
データブロック復元部113は、データ抽出部111から与えられる小ブロックを蓄積し、大ブロックを復元するための複数の小ブロックが揃ったら、これらの小ブロックから大ブロックを復元し、データブロック検証部114へ送る。
【0165】
図30は、大ブロックの復元方法の説明図である。データブロック復元部113は、例えば、大ブロックを構成すべき複数の小ブロック1〜nを例えば到着順に統合することで、大ブロックを復元する。但し、データブロック復元部113は、小ブロックの受信順に拘わらず、複数の小ブロックに分割される前と同じ内容の大ブロックを復元するように構成することができる。
【0166】
データブロック検証部114は、大ブロックから埋め込みデータとエラー検出信号を分離し、エラー検出信号を用いてエラーの有無を調査する。このとき、データブロック検証部114は、エラーがなければ大ブロック中の埋め込みデータ部分を受信データとして出力し、エラーがあった場合は、大ブロックを破棄し、データの再送要求を行う。
【0167】
このように、大ブロック及び小ブロックを用いることにより、エラー検出能力の高い(すなわち、ビット数を多く必要とする)エラー検出信号を付加しても、データブロック全体に対するエラー検出信号の割合が小さくなる。従って、結果として、データ転送速度の低下を抑えることが可能となる。
【0168】
〈実施例〉
以下、図面を参照して第2の発明の実施例について説明する。実施例の構成は例示であり、第2の発明は、実施例の構成に限定されない。
【0169】
《実施例1》
第2の発明の具体的な実施方法として、第2の発明をG.729符号化方式に対して適用した例を以下に示す。図31は、実施例1の構成図を示し、図32に実施例1におけるデータブロックの構成の一例を示す。以下に各処理について詳細に説明する。
【0170】
なお、実施例1において埋め込み対象とするパラメータは、固定符号帳符号34bit/frameのみとする。但し、第2の発明は、埋め込み対象パラメータを固定符号帳符号に限るものではなく、適応符号帳符号などの他のパラメータを対象としても良いし、また、複数のパラメータを埋め込み対象として規定することもできる。
【0171】
図31には、実施例1に係る音声CODEC120,130が示されている。各音声CODEC120,130は、同じ構成を持ち、図28(1)及び(2)に示すような符号器100及び復号器110としての構成を併せ持つ。即ち、各音声CODEC120,130は、音声符号器101と、データ埋め込み部102と、データブロック構成部103と、データ抽出部111と、音声復号器112と、データブロック復元部113と、データブロック検証部114とを備えている。
【0172】
データ送信側(例えば音声CODEC120)では、音声符号器101は、入力音声を符号化する。符号化の方法は通常の符号化と同じである(G.729符号化方式で音声を符号化する)。音声符号器101は、入力音声から得られた複数のパラメータ符号(LPC符号,適応符号帳符号,固定符号帳符号,適応符号帳利得符号,及び固定符号帳利得符号)をデータ埋め込み部102に入力する。
【0173】
データブロック構成部103は、データ抽出部111が再送要求(後述)を受信した場合は、再送要求されたデータで、そうでない場合には、送信データからデータを取り出して大ブロックを構成する。このため、データブロック構成部103Aは、再送用のデータを蓄積しておくバッファを有している。
【0174】
大ブロックの構成方法(データ本体及びエラー検出信号へのビット配分)は任意である。例えば、図32に示すように、5フレーム分の固定符号帳符号にあたる170bitで、データ本体158bit、シーケンス番号4bit、CRC符号8bitというビット配分で大ブロックを構成する。データブロック構成部103は、大ブロックを、1フレーム分である34bitずつの5つの小ブロックに分割し、各小ブロックをデータ埋め込み部102へ送る。
【0175】
データ埋め込み部102は、音声符号器101から入力される音声符号パラメータを用いてデータを埋め込み可能なフレームか否かをフレーム毎に判定する。なお、埋め込み判定に用いるパラメータや判定方法は任意である。例えば、基本技術のように、固定符号帳利得を判定パラメータとし、利得が閾値以下だった場合はデータを埋め込むように構成することができる。
【0176】
データ埋め込み部102は、埋め込み可能と判定した場合には、固定符号帳符号を小ブロックを構成するビット例に置換することで、データを埋め込む。さらに、データ埋め込み部102は、複数のパラメータ符号(小ブロックに置換されたパラメータ符号を含む)が多重化された音声符号を生成し、送信する。
【0177】
但し、後述するデータブロック検証部114にて、データエラーが検出された場合には、データ埋め込み部102は、データブロック検証部114からの大ブロックエラー信号を受け取る。この場合、データ埋め込み部102は、再送要求を優先し、大ブロックの再送要求信号で固定符号帳符号を置き換えて送信する。なお、再送要求信号(のビットパターン)は、予め定められ、データ埋め込み部102に予め用意されている。
【0178】
なお、データ埋め込み部102は、埋め込み不可能と判定した場合は、そのフレームについてデータの埋め込み処理を行うことなく、音声符号器101からの複数のパラメータ符号が多重化された音声符号をデータ受信側へ送信する。
【0179】
データ受信側(例えば音声CODEC130)では、データ抽出部111にて、受信した音声符号が複数のパラメータ符号に分離され、これらのうちの少なくとも一つのパラメータ符号を用いてデータが埋め込まれているか否かを判定する。判定パラメータは任意であるが、データ送信側と同じ判定パラメータ及び閾値を用いる。当該実施例では、固定符号帳利得が判定パラメータとして使用され、固定符号帳利得が所定の閾値以下だった場合には、データが埋め込まれていると判定される。
【0180】
データ抽出部111は、データが埋め込まれていると判定する場合には、固定符号帳符号を埋め込みデータ(小ブロック)とみなして取り出し、データブロック復元部113に送る。但し、データ抽出部111は、取り出したデータが再送要求信号である(再送要求のビットパターンを示す)場合には、データを再送するために、データブロック構成部103に再送要求を送る。これによって、データブロック構成部103は、再送要求に対応する大ブロックを構成する複数の小ブロックをデータ埋め込み部102に渡す。
【0181】
データブロック復元部113は、データ抽出部111からの小ブロックを蓄積し、小ブロックが所定数(ここでは5つ)揃い次第、これらの小ブロックを受信順に並べて大ブロックを復元し、データブロック検証部114に送る。
【0182】
データブロック検証部114は、大ブロックを受け取ると、大ブロックを埋め込みデータ(データ本体),シーケンス番号及びCRC符号に分離し、シーケンス番号とCRC符号とにより、エラーをチェックする。エラーチェックの結果、エラーがなければ、データブロック検証部114は、データ本体を受信データとして出力する。一方、エラーチェックの結果、エラーがあった場合には、データブロック検証部114は、大ブロック(データ本体)を破棄し、再送要求のために、データ埋め込み部102にエラーが生じたことを通知する。これよって、データ埋め込み部102は、データブロック構成部103からの小ブロックの埋め込みに優先して、再送要求信号の埋め込み処理を行う。
【0183】
なお、データ抽出部111は、データの抽出/非抽出に関係なく、入力された音声符号を複数のパラメータ符号に分離し、音声復号器112に入力する。音声復号器112は、入力された複数のパラメータ符号を元に、通常の復号方法によって音声を再生し、出力する(G.729復号化方式で音声を復号・再生する)。
【0184】
上述した動作は、音声CODEC130がデータ送信側となり、音声CODEC120がデータ受信側となる場合でも同様である。
【0185】
《実施例1の作用及び効果》
以上のように、実施例1によれば、埋め込みデータにシーケンス番号やCRC符号といったエラー検出信号を付加することで、伝送路などで生じるエラーを検出することが可能である。そして、エラーが生じた場合には、再送要求がデータ送信側に送られ、データの再送が行われる。これによって、確実にデータを送受信することが可能となる。
【0186】
更に、1フレームより大きいデータブロックを構成し、それを分割して送信することで、エラー検出信号の付加によるデータ転送速度の低下を抑えると共に、高いエラー検出能力を得ることが可能となる。
【0187】
具体的には、1フレーム34bitごとにシーケンス番号4bit、CRC符号8bitを付加した場合では、上述したように、データ本体へのビット割り当ては22bitとなり、エラー検出なしの場合に比べてデータ転送速度が35%低下する。
【0188】
これに対し、実施例1では、5フレーム(=170bit)からなる大ブロックに対して、シーケンス番号4bitとCRC符号8bitを付加するので、データ本体に158bit割り当てることができる。つまり、平均すると31.6bit/frameの割合でデータを送受信することができる。すなわち、エラー検出なしの34bit/frameの場合と比較して、約7%の転送速度の低下に抑えることが可能となる。
【0189】
なお、実施例1では、音声符号化方式としてG.729を用いたが、これに限るものではなく、例えば3GPP AMR符号化方式を用いることなどにも適用可能である。
【0190】
《実施例2》
図33は、第2の発明の実施例2による音声CODEC140及び150の構成例を示す図である。各音声CODEC140,150は、実施例1(図31)におけるデータ埋め込み部102,データブロック構成部103,データブロック復元部113の代わりにデータ埋め込み部102A,データブロック構成部103A,データブロック復元部113Aを備え、且つデータ抽出部111とデータブロック復元部113Aとの間に小ブロック検証部115が挿入されている点で、実施例1と異なる。
【0191】
図34は、実施例2におけるデータブロック(大ブロック及び小ブロック)の構成方法の説明図である。実施例2におけるデータブロック構成部103Aは、埋め込みデータ(データ本体)153bitと、シーケンス番号4bitと、CRC符号8bitとで大ブロック165bitを生成する。データブロック構成部103Aは、大ブロックをフレーム毎の小ブロック(33bit)に分割した後、各小ブロックに簡易的なエラー検出信号としてのパリティービット(1bitのチェックサム)を付加する。実施例2では、このようなパリティービットが付加された各小ブロックがデータ埋め込み部102Aに与えられる。
【0192】
データ埋め込み部102Aは、データ埋め込み判定、音声符号に対する小ブロックの埋め込み動作については、実施例1と同じ構成を持つ。さらに、データ埋め込み部102Aは、小ブロック検証部115から小ブロックエラーの通知を受け取るように構成されており、小ブロックエラーを受け取った場合には、対応する小ブロックの再送要求信号を小ブロックの代わりに埋め込む。
【0193】
小ブロック検証部115は、データ抽出部111から小ブロックを受け取るように構成されており、小ブロックに付加されているパリティービット(チェックサム)を用いてパリティーチェックを行う。このとき、チェック結果がOKであれば、当該小ブロックをデータブロック復元部112に送り、NG(エラー)であれば、小ブロックエラーをデータ埋め込み部102Aに通知する。
【0194】
以上の点を除き、実施例2は、実施例1とほぼ同様である。なお、実施例2では、小ブロック毎のエラー検出にパリティービットを用いているが、その他のエラー検出アルゴリズムを用いても良い。また、小ブロックのエラー検出信号のビット数も1bitでなくてもよい(所定のビット数を設定できる)。また、小ブロックのエラー検出に複数のエラー検出アルゴリズムを併用しても良い。
【0195】
以下、実施例2の動作について説明する。データ送信側(例えば音声CODEC140)では、音声符号器101が入力音声を符号化する。符号化の方法は通常の符号化と同じである。音声符号器101は、入力音声から得られた複数のパラメータ符号(LPC符号,適応符号帳符号,固定符号帳符号,適応符号帳利得符号,及び固定符号帳利得符号)をデータ埋め込み部102Aに入力する。
【0196】
データブロック構成部103Aは、自身に入力される送信データから大ブロックを構成する。ここに、大ブロックの構成方法(ビット配分)は任意である。例えば、図34に示したように、大ブロックのビット数を165bitと規定し、データ本体153bit、シーケンス番号4bit、CRC符号8bitという配分で構成することができる。
【0197】
データブロック構成部103Aは、このようにして構成された大ブロックを33bitの5つのブロックに分割し、分割した33bitごとに1bitずつのパリティービットを付加して、音声符号の1フレーム分である34bitずつの5つの小ブロックを構成し、各小ブロックをデータ埋め込み部102Aへ送る。
【0198】
また、データブロック構成部103Aは、データ抽出部111から大ブロックの再送要求と、小ブロックの再送要求との夫々を受信するように構成されている。データブロック構成部103Aは、大ブロックの再送要求を受信した場合には、この再送要求に対応する大ブロックを構成する各小ブロック(再送用の大ブロック)をデータ埋め込み部102Aに送り、小ブロックの再送要求を受信した場合には、この再送要求に対応する小ブロック(再送用の小ブロック)をデータ埋め込み部102Aに送る。このため、データブロック構成部103Aは、再送用のデータを蓄積しておくバッファを有している。
【0199】
データ埋め込み部102Aは、音声符号パラメータを用いて埋め込み可能なフレームか否かを判定する。なお、判定に用いるパラメータや判定方法は任意である。例えば、基本技術のように、固定符号帳利得を判定パラメータとし、利得が閾値以下だった場合はデータを埋め込み、そうでない場合にはデータを埋め込まないようにする方法などを適用することができる。
【0200】
データ埋め込み部102Aは、埋め込み可能と判定した場合は、音声符号器101から入力される固定符号帳符号を、データブロック構成部103Aからの小ブロックで置換する。そして、複数のパラメータ符号が多重化された音声符号を生成し、データ受信側へ送信する。但し、データブロック検証部114又は小ブロック検証部115にて、大ブロック又は小ブロックのデータエラーが検出された場合には、大ブロック又は小ブロックの再送要求を優先し、対応する再送要求信号で固定符号帳を置き換えて送信する。
【0201】
大ブロック及び小ブロックの各再送要求信号のビットパターンは、予め定めておく。大ブロック及び小ブロックの再送要求信号の夫々は、大ブロック及び小ブロックの識別情報を含むように構成することができる。
【0202】
また、データ埋め込み処理部102Aは、埋め込み不可能と判定した場合は、そのフレームの音声符号に対する埋め込み処理を行わず、音声符号器101からの複数のパラメータ符号で音声符号を生成し、データ受信側に送信する。
【0203】
データ受信側(例えば音声CODEC150)では、データ抽出部111は、音声符号を受信し、受信した音声符号パラメータを用いてデータが埋め込まれているか否かを判定する。判定パラメータは任意であるが、データ送信側と同じ判定パラメータ及び閾値を用いる。データ抽出部111は、データが埋め込まれていると判定する場合には、固定符号帳符号をデータとみなして取り出し、小ブロック検証部115に送る。但し、データ抽出部111は、取り出したデータが(大ブロック又は小ブロックの)再送要求信号だった場合は、データを再送するために、データブロック構成部103Aに再送要求信号を送る。
【0204】
小ブロック検証部115は、小ブロックを受け取ると、パリティービットによるエラーチェックを行う。エラーチェックの結果、エラーがなければ小ブロックをデータブロック復元部113に送信する。エラーがあった場合は、小ブロックを破棄し、再送要求のため、小ブロックにエラーがあったことをデータ埋め込み部102Aに通知する。
【0205】
データブロック復元部113は、小ブロックが所定数(ここでは5つ)揃い次第、大ブロックを復元し、データブロック検証部114に送る。ここで、データブロック復元部113Aは、小ブロック検証部115で小ブロックエラーが検出された場合には、小ブロックエラー信号を受け取るように構成されている。この場合、データブロック復元部113Aは、エラーとなった小ブロックが再送され、大ブロックを復元するための複数の小ブロックが揃うまで、対応する大ブロックの復元を中止又は後回しにする。
【0206】
データ検証部114は、データブロック復元部113Aからの大ブロックを、データ本体,シーケンス番号,及びCRC符号に分離し、シーケンス番号とCRC符号とにより、エラーをチェックする。エラーチェックの結果、エラーがなければ、データ検証部114は、データ本体を受信データとして出力する。これに対し、エラーがあった場合には、データ検証部114は、当該データを破棄し、再送要求のために、データ埋め込み部102Aに大ブロックでエラーが生じたことを通知する。
【0207】
なお、データ抽出部111は、データの抽出/非抽出に関係なく、入力された音声符号を複数のパラメータ符号に分離し、音声復号器112に入力する。音声復号器112は、入力された複数のパラメータ符号を元に、通常の復号方法によって音声を再生し、出力する(G.729復号化方式で音声を復号・再生する)。
【0208】
上述した動作は、音声CODEC150がデータ送信側となり、音声CODEC140がデータ受信側となる場合でも同様である。
【0209】
《実施例2の作用及び効果》
実施例1では、実際にエラーを検出した際、どの小ブロックがエラーを生じているのかが判断できないため、大ブロックを構成する小ブロックの全てを再送する必要がある。つまり、たとえエラーが1bitのみのような軽微なものであっても、音声符号5フレーム分のデータを再送しなければならず、再送ペナルティーが大きい。
【0210】
これに対し、実施例2では、小ブロック毎にパリティービットを付加する。これによって、データ本体に割り当てることのできるビット数は実施例1に比べて小さくなる。しかし、フレームあたり1bitなどの軽微なエラーであれば、その小ブロックのみを再送すればよく、再送を行う際のペナルティーを抑えることが可能となる。
【0211】
具体的には、実施例2では、5フレーム170bitからなる大ブロックに対し、シーケンス番号4bit、CRC符号8bit、パリティービット5bit(1bit×5frame)を付加する。このため、データ本体に153bitを割り当てることができる。つまり、30.6bit/frameの割合でデータの送受信を行うことができる。即ち、エラー検出なしとした場合の34bit/frameと比較して、10%の転送速度の低下に抑えることができる。更に、パリティービットで検出可能な軽微なエラーの場合などであれば、エラーに対する再送ペナルティーを実施例1に比べて抑えることができる。
【0212】
〈第1の発明と第2の発明との組み合わせ〉
上述した第1の発明と第2の発明とは、それぞれの発明の目的を逸脱しない範囲で適宜組み合わせることができる。例えば、第2の発明において、第1の発明において説明した埋め込み判定パラメータ及び埋め込み対象パラメータを適用することができる。即ち、第1の発明における埋め込み処理部や抽出処理部を、第2の発明におけるデータ埋め込み部やデータ抽出部に組み込むことができる。
【0213】
〔その他〕
上述した実施形態は、次の発明を開示する。以下に示す発明は、適宜組み合わせることが可能である。
(付記1)
人の音声生成過程に基づく音声符号化方式で符号化された音声符号に埋め込み対象のデータを埋め込むデータ埋め込み装置であって、
前記音声符号毎に、音声符号に前記データを埋め込むか否かを判定する埋め込み判定手段と、
前記埋め込み判定手段によって前記データを埋め込むと判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された2以上のパラメータ符号に前記データを埋め込む埋め込み手段と
を含むデータ埋め込み装置。
(付記2)
前記埋め込み判定手段は、前記音声符号化方式で規定されたフレーム毎に、そのフレームが音声区間のフレームか非音声区間のフレームかを判定し、
前記埋め込み手段は、非音声区間のフレームと判定されたフレームの音声符号に対して前記埋め込み処理を行う
付記1記載のデータ埋め込み装置。
(付記3)
音声符号に埋め込まれているデータを抽出する埋め込みデータ抽出装置であって、
前記音声符号毎に、音声符号にデータが埋め込まれているか否かを判定する抽出判定手段と、
前記抽出判定手段によってデータが埋め込まれていると判定されたフレームの音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された2以上のパラメータ符号に夫々埋め込まれているデータを抽出する抽出手段と
を含むデータ抽出装置。
(付記4)
前記抽出判定手段は、前記音声符号に対する音声符号化方式で規定されたフレーム毎に、そのフレームが音声区間のフレームか非音声区間のフレームかを判定し、
前記抽出手段は、非音声区間のフレームと判定されたフレームの音声符号に対して前記抽出処理を行う
付記3記載のデータ抽出装置。
(付記5)
音声符号に対するデータの埋め込み処理及び抽出処理を行うデータ埋め込み/抽出装置であって、
データを埋め込むべき音声符号毎に、その音声符号に前記データを埋め込むか否かを判定する埋め込み判定手段と、
前記埋め込み判定手段によって前記データを埋め込むと判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された2以上のパラメータ符号に前記データを埋め込む埋め込み手段と、
データを抽出すべき音声符号毎に、音声符号にデータが埋め込まれているか否かを判定する抽出判定手段と、
前記抽出判定手段によってデータが埋め込まれていると判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された2以上のパラメータ符号に夫々埋め込まれているデータを抽出する抽出手段と
を含むデータ埋め込み/抽出装置。
(付記6)
音声符号に埋め込み対象のデータを埋め込むデータ埋め込み方法であって、
前記音声符号毎に、音声符号に前記データを埋め込むか否かを判定し、
前記データを埋め込むと判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された2以上のパラメータ符号に前記データを埋め込む
ことを含むデータ埋め込み方法。
(付記7)
前記音声符号に対する音声符号化方式で規定されたフレーム毎に、そのフレームが音声区間のフレームか非音声区間のフレームかを判定し、
非音声区間のフレームと判定されたフレームの音声符号に対して前記埋め込み処理を行う
付記6記載のデータ埋め込み方法。
(付記8)
音声符号に埋め込まれているデータを抽出する埋め込みデータ抽出方法であって、
前記音声符号毎に、音声符号にデータが埋め込まれているか否かを判定し、
データが埋め込まれていると判定されたフレームの音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された2以上のパラメータ符号に夫々埋め込まれているデータを抽出する
ことを含むデータ抽出方法。
(付記9)
前記音声符号の音声符号化方式で規定されたフレーム毎に、そのフレームが音声区間のフレームか非音声区間のフレームかを判定し、
非音声区間のフレームと判定されたフレームの音声符号に対して前記抽出処理を行う
付記8記載のデータ抽出方法。
(付記10)
人の音声生成過程に基づく音声符号化方式で符号化された音声符号に対するデータの埋め込み処理及び抽出処理を行うデータ埋め込み/抽出方法であって、
データを埋め込むべき音声符号毎に、その音声符号に前記データを埋め込むか否かを判定し、
前記データを埋め込むと判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された2以上のパラメータ符号に前記データを埋め込み、
データを抽出すべき音声符号毎に、音声符号にデータが埋め込まれているか否かを判定し、
データが埋め込まれていると判定された音声符号を構成する複数のパラメータ符号のうち、埋め込み対象パラメータ符号として規定された2以上のパラメータ符号に夫々埋め込まれているデータを抽出する
ことを含むデータ埋め込み/抽出方法。
(付記11)
埋め込み対象データに対するエラー検出用データを作成する作成手段と、
前記埋め込み対象データ及び前記エラー検出用データを他のデータに埋め込む埋め込み手段と、
前記埋め込み対象データ及び前記エラー検出用データが埋め込まれた他のデータをネットワークを介してデータ受信装置に送信する手段と
を含むデータ送信装置。
(付記12)
データ送信装置からネットワークを介して受信されるデータに埋め込まれている埋め込み対象のデータ,及びこの埋め込み対象のデータに対するエラー検出用データを抽出する手段と、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
を含むデータ抽出装置。
(付記13)
データ送信装置からネットワークを介して受信されるデータに埋め込まれている埋め込み対象のデータ,及びこの埋め込み対象のデータに対するエラー検出用データを抽出する抽出手段と、
抽出された埋め込み対象のデータ及びエラー検出用データを含むデータブロックを復元する復元手段と、
復元されたデータブロックに含まれる埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
を含むデータ抽出装置。
(付記14)
データ送信装置からネットワークを介して受信されるデータに埋め込まれている第1のデータブロックを抽出する抽出手段と、
抽出された複数の第1のデータブロックを結合し、埋め込み対象のデータ,及びこの埋め込み対象のデータに対するエラー検出用データを含む第2のデータブロックを復元する復元手段と、
復元された第2のデータブロックに含まれる埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
を含むデータ抽出装置。
(付記15)
データ送信装置からネットワークを介してデータを受信する手段と、
受信されるデータに埋め込まれている埋め込み対象のデータ,及びこの埋め込み対象のデータに対するエラー検出用データを抽出する手段と、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
を含むデータ受信装置。
(付記16)
埋め込み対象データに対するエラー検出用データを作成する作成手段と、
前記埋め込み対象データ及び前記エラー検出用データを他のデータに埋め込む埋め込み手段と、
前記他のデータをネットワークを介して当該他のデータを受信すべき装置へ送信する手段と、
データをネットワークを介して受信する手段と、
受信されるデータに埋め込まれている埋め込み対象のデータ,及びこの埋め込み対象のデータに対するエラー検出用データを抽出する手段と、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データの送信元の装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、を備え、
前記埋め込み手段は、前記再送要求を送信するためのデータを受け取り、所定の再送要求を前記他のデータに埋め込む
通信装置。
(付記17)
データ送信装置からネットワークを介して受信されるデータに埋め込まれている埋め込み対象のデータ,及びこの埋め込み対象のデータに対するエラー検出用データを抽出し、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックし、
前記チェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する
ことを含むデータ抽出方法。
(付記18)
データ送信装置からネットワークを介して受信されるデータに埋め込まれている埋め込み対象のデータ,及びこの埋め込み対象のデータに対するエラー検出用データを抽出し、
抽出された埋め込み対象のデータ及びエラー検出用データを含むデータブロックを復元し、
復元されたデータブロックに含まれる埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックし、
前記チェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する
ことを含むデータ抽出方法。
(付記19)
データ送信装置からネットワークを介して受信されるデータに埋め込まれている第1のデータブロックを抽出し、
抽出された複数の第1のデータブロックを結合し、埋め込み対象のデータ,及びこの埋め込み対象のデータに対するエラー検出用データを含む第2のデータブロックを復元し、
復元された第2のデータブロックに含まれる埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックし、
前記チェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する
ことを含むデータ抽出方法。
(付記20)
通信装置が、
埋め込み対象データに対するエラー検出用データを作成し、
前記埋め込み対象データ及び前記エラー検出用データを他のデータに埋め込み、
前記他のデータをネットワークを介して当該他のデータを受信すべき装置へ送信し、
データをネットワークを介して受信し、
受信されるデータに埋め込まれている埋め込み対象のデータ,及びこの埋め込み対象のデータに対するエラー検出用データを抽出し、
抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックし、
前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データの送信元の装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力し、
前記再送要求を送信するためのデータに応じて、所定の再送要求を前記他のデータに埋め込む
ことを含むデータ埋め込み及び抽出方法。
【産業上の利用可能性】
【0214】
本発明は、データ埋め込み及び/又は抽出技術を適用する分野に広く適用することができる。例えば、音声通信の分野において、符号器側で音声符号に対してデータを埋め込んで伝送し、復号器側で音声符号からデータを抽出するために適用することができる。
【0215】
特に、本発明は、ディジタル移動無線システムやVoIP(Voice over Internet Protocol)に代表されるパケット音声伝送システムなどあらゆる領域に適用されている音声符号化(圧縮)技術に適用することができ、伝送ビット系列に影響なく、著作権やID情報を埋め込むことで通話の秘匿性を向上させる電子透かしや機能拡張技術としてその需要、および重要性が高まっている。
【図面の簡単な説明】
【0216】
【図1】データ埋め込み技術を適用した音声符号化方式を示す図
【図2】CELP音声符号化方式の符号・復号処理の流れを示す図
【図3】CELP方式の符号器のブロック図
【図4】CELP方式の音声符号の構成図
【図5】CELP方式の復号器のブロック図
【図6】音声符号へのデータ埋め込みの概念図
【図7】音声符号からの埋め込みデータ抽出の概念図
【図8】データ埋め込みを適用したCELP方式の符号・復号処理の流れを示す図
【図9】データ埋め込み処理部の構成例を示す図
【図10】データ抽出処理部の構成例を示す図
【図11】基本技術における背景雑音種に対する埋め込みデータ伝送レートの説明図
【図12】第1の発明に係るデータ埋め込み処理部の構成例を示す図
【図13】第1の発明に係るデータ抽出処理部の構成例を示す図
【図14】第1の発明に係るG.729方式の音声符号の構成図
【図15】G.729の説明図
【図16】第1の発明の第1実施例の構成図(G.729音声符号へのデータ埋め込み)
【図17】第1の発明の第2実施例の構成図(G.729音声符号からのデータ抽出)
【図18】基本技術と第1の発明との性能比較の説明図
【図19】音声生成モデルの説明図
【図20】CELP符号・復号処理の流れを示す図
【図21】CELPに基づく符号器のブロック図
【図22】CELPに基づく復号器のブロック図
【図23】基本技術におけるデータ埋め込み・抽出処理の流れを示す図
【図24】基本技術におけるデータ埋め込みの概念図
【図25】基本技術におけるデータ抽出の概念図
【図26】シーケンス番号を用いたエラー検出の例を示す図
【図27】1フレームごとにエラー検出信号を付加した場合の例を示す図
【図28】第2の発明の原理図
【図29】第2の発明における大ブロック及び小ブロックの構成方法の説明図
【図30】第2の発明における大ブロックの復元方法の説明図
【図31】第2の発明の実施例1の構成図
【図32】第2の発明の実施例1における大ブロック及び小ブロックの構成方法の説明図
【図33】第2の発明の実施例2の構成図
【図34】第2の発明の実施例2における大ブロック及び小ブロックの構成方法の説明図
【符号の説明】
【0217】
10,32 埋め込み処理部(データ埋め込み装置)
11,34 埋め込み制御部(埋め込み判定手段)
12,SW1 スイッチ(埋め込み手段)
13,35 遅延素子
20,42 抽出処理部(データ抽出装置)
21,44 抽出制御部(抽出判定手段)
22,SW2 スイッチ(抽出手段)
23,45 遅延素子
30 符号器(データ送信装置)
31 G.729符号器
33 多重部
40 復号器(データ受信装置)
41 分離部
43 G.729復号器
100 符号器(データ送信装置)
101 音声符号器
102,102A データ埋め込み部(埋め込み手段)
103,103A データブロック構成部(作成手段)
104 大ブロック構成部
105 小ブロック構成部
110 復号器(データ受信装置)
111 データ抽出部(抽出手段)
112 音声復号器
113,113A データブロック復元部(復元手段)
114 データブロック検証部(チェック手段)
115 小ブロック検証部(第2チェック手段)
120,130,140,150 音声CODEC(データ埋め込み/抽出装置)

Claims (5)

  1. 音声符号に埋め込み対象のデータを埋め込むデータ埋め込み装置であって、
    前記音声符号毎に、音声符号に前記データを埋め込むか否かを判定する埋め込み判定手段と、
    前記埋め込み判定手段によって前記データを埋め込むと判定された音声符号を構成する複数のパラメータ符号のうち、2以上のパラメータ符号に前記データを埋め込む埋め込み手段と
    を含むデータ埋め込み装置。
  2. 音声符号に埋め込まれているデータを抽出する埋め込みデータ抽出装置であって、
    前記音声符号毎に、音声符号にデータが埋め込まれているか否かを判定する抽出判定手段と、
    前記抽出判定手段によってデータが埋め込まれていると判定されたフレームの音声符号を構成する複数のパラメータ符号のうち、2以上のパラメータ符号に夫々埋め込まれているデータを抽出する抽出手段と
    を含むデータ抽出装置。
  3. 埋め込み対象データに対するエラー検出用データを作成する作成手段と、
    前記埋め込み対象データ及び前記エラー検出用データを他のデータに埋め込む埋め込み手段とを含むデータ埋め込み装置。
  4. データ送信装置からネットワークを介して受信されるデータに埋め込まれている埋め込み対象のデータ,及びこの埋め込み対象のデータに対するエラー検出用データを抽出する手段と、
    抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
    前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データ送信装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、
    を含むデータ抽出装置。
  5. 埋め込み対象データに対するエラー検出用データを作成する作成手段と、
    前記埋め込み対象データ及び前記エラー検出用データを他のデータに埋め込む埋め込み手段と、
    前記他のデータをネットワークを介して当該他のデータを受信すべき装置へ送信する手段と、
    データをネットワークを介して受信する手段と、
    受信されるデータに埋め込まれている埋め込み対象のデータ,及びこの埋め込み対象のデータに対するエラー検出用データを抽出する手段と、
    抽出された埋め込み対象のデータとエラー検出用データとを用いて当該埋め込み対象のデータに対するエラーの有無をチェックするチェック手段と、
    前記チェック手段によるチェックの結果、埋め込み対象のデータにエラーがない場合には、当該埋め込み対象のデータを出力し、当該埋め込み対象のデータにエラーがある場合には、前記データの送信元の装置へ当該埋め込み対象のデータの再送要求を送信するためのデータを出力する手段と、を備え、
    前記埋め込み手段は、前記再送要求を送信するためのデータを受け取り、所定の再送要求を前記他のデータに埋め込む
    通信装置。
JP2003284306A 2003-07-31 2003-07-31 データ埋め込み装置及びデータ抽出装置 Expired - Fee Related JP4527369B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2003284306A JP4527369B2 (ja) 2003-07-31 2003-07-31 データ埋め込み装置及びデータ抽出装置
DE602004010204T DE602004010204T2 (de) 2003-07-31 2004-03-12 Vorrichtung zur Dateneinbettung und Vorrichtung zur Datenextraktion
EP04251453A EP1503369B1 (en) 2003-07-31 2004-03-12 Data embedding device and data extraction device
EP06020736.2A EP1744304B1 (en) 2003-07-31 2004-03-12 Data embedding device and data extraction device
US10/802,168 US7974846B2 (en) 2003-07-31 2004-03-17 Data embedding device and data extraction device
US13/099,687 US8340973B2 (en) 2003-07-31 2011-05-03 Data embedding device and data extraction device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003284306A JP4527369B2 (ja) 2003-07-31 2003-07-31 データ埋め込み装置及びデータ抽出装置

Publications (2)

Publication Number Publication Date
JP2005049794A true JP2005049794A (ja) 2005-02-24
JP4527369B2 JP4527369B2 (ja) 2010-08-18

Family

ID=33535716

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003284306A Expired - Fee Related JP4527369B2 (ja) 2003-07-31 2003-07-31 データ埋め込み装置及びデータ抽出装置

Country Status (4)

Country Link
US (2) US7974846B2 (ja)
EP (2) EP1503369B1 (ja)
JP (1) JP4527369B2 (ja)
DE (1) DE602004010204T2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008199629A (ja) * 2007-02-15 2008-08-28 Avaya Technology Llc 暗号化の存在下での信号ウォーターマーキング
JP2010530154A (ja) * 2007-05-29 2010-09-02 イントラソニックス ソシエテ パール アクシオン デ ラ レスポンサビリテ リミテ 音声信号中に埋め込まれた隠れデータの回復
JP2014511153A (ja) * 2011-02-07 2014-05-12 クゥアルコム・インコーポレイテッド 透かし入り信号を符号化し検出するための機器
JP2014087566A (ja) * 2012-10-31 2014-05-15 Universal Entertainment Corp 通信用lsi及び遊技機
JP2014087567A (ja) * 2012-10-31 2014-05-15 Universal Entertainment Corp 通信用lsi及び遊技機
US9767822B2 (en) 2011-02-07 2017-09-19 Qualcomm Incorporated Devices for encoding and decoding a watermarked signal

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2634511T3 (es) * 2004-07-23 2017-09-28 Iii Holdings 12, Llc Aparato de codificación de audio y procedimiento de codificación de audio
US20060227968A1 (en) * 2005-04-08 2006-10-12 Chen Oscal T Speech watermark system
JP4753668B2 (ja) * 2005-08-30 2011-08-24 京セラ株式会社 通信装置及び通信方法
CN1992583A (zh) * 2005-12-29 2007-07-04 朗迅科技公司 用于使用二进制奇偶校验来重建丢失分组的方法
US7908147B2 (en) * 2006-04-24 2011-03-15 Seiko Epson Corporation Delay profiling in a communication system
DE102007007627A1 (de) * 2006-09-15 2008-03-27 Rwth Aachen Steganographie in digitalen Signal-Codierern
WO2008114432A1 (ja) * 2007-03-20 2008-09-25 Fujitsu Limited データ埋め込み装置、データ抽出装置、及び音声通信システム
WO2011080597A1 (en) * 2010-01-04 2011-07-07 Kabushiki Kaisha Toshiba Method and apparatus for synthesizing a speech with information
US9237172B2 (en) * 2010-05-25 2016-01-12 Qualcomm Incorporated Application notification and service selection using in-band signals
US8880404B2 (en) * 2011-02-07 2014-11-04 Qualcomm Incorporated Devices for adaptively encoding and decoding a watermarked signal
US9418671B2 (en) * 2013-08-15 2016-08-16 Huawei Technologies Co., Ltd. Adaptive high-pass post-filter
PL3385948T3 (pl) * 2014-03-24 2020-01-31 Nippon Telegraph And Telephone Corporation Sposób kodowania, koder, program i nośnik zapisu
CN109064379B (zh) * 2018-07-25 2023-06-06 成都亚信网络安全产业技术研究院有限公司 一种数字水印的标注方法及检验方法和装置
US20230043682A1 (en) * 2021-07-28 2023-02-09 Digital Voice Systems, Inc. Reducing Perceived Effects of Non-Voice Data in Digital Speech

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001005472A (ja) * 1999-06-23 2001-01-12 Victor Co Of Japan Ltd 著作権情報埋め込み方法及びその情報の検出方法
JP2001202089A (ja) * 2000-01-19 2001-07-27 M Ken Co Ltd 音声データに透かし情報を埋め込む方法、透かし情報埋め込み装置、透かし情報検出装置、透かし情報が埋め込まれた記録媒体、及び透かし情報を埋め込む方法を記録した記録媒体
WO2001067671A2 (en) * 2000-03-06 2001-09-13 Meyer Thomas W Data embedding in digital telephone signals
JP2002175089A (ja) * 2000-12-05 2002-06-21 Victor Co Of Japan Ltd 情報付加方法及び付加情報読み出し方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6788800B1 (en) * 2000-07-25 2004-09-07 Digimarc Corporation Authenticating objects using embedded data
US5822432A (en) * 1996-01-17 1998-10-13 The Dice Company Method for human-assisted random key generation and application for digital watermark system
US5915027A (en) 1996-11-05 1999-06-22 Nec Research Institute Digital watermarking
GB2340351B (en) 1998-07-29 2004-06-09 British Broadcasting Corp Data transmission
JP3878482B2 (ja) 1999-11-24 2007-02-07 富士通株式会社 音声検出装置および音声検出方法
US6985589B2 (en) * 1999-12-02 2006-01-10 Qualcomm Incorporated Apparatus and method for encoding and storage of digital image and audio signals
US8355525B2 (en) * 2000-02-14 2013-01-15 Digimarc Corporation Parallel processing of digital watermarking operations
AU2001277147B2 (en) * 2000-07-25 2006-05-18 Digimarc Corporation Authentication watermarks for printed objects and related applications
WO2002023468A1 (en) * 2000-09-11 2002-03-21 Digimarc Corporation Authenticating and measuring quality of service of multimedia signals using digital watermark analyses
US6892175B1 (en) * 2000-11-02 2005-05-10 International Business Machines Corporation Spread spectrum signaling for speech watermarking
JP3849116B2 (ja) 2001-02-28 2006-11-22 富士通株式会社 音声検出装置及び音声検出プログラム
JP2003099077A (ja) * 2001-09-26 2003-04-04 Oki Electric Ind Co Ltd 電子透かし埋込装置、抽出装置及び方法
US20030101049A1 (en) * 2001-11-26 2003-05-29 Nokia Corporation Method for stealing speech data frames for signalling purposes
US7035700B2 (en) * 2002-03-13 2006-04-25 The United States Of America As Represented By The Secretary Of The Air Force Method and apparatus for embedding data in audio signals
US7069211B2 (en) * 2003-04-30 2006-06-27 Motorola, Inc. Method and apparatus for transferring data over a voice channel

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001005472A (ja) * 1999-06-23 2001-01-12 Victor Co Of Japan Ltd 著作権情報埋め込み方法及びその情報の検出方法
JP2001202089A (ja) * 2000-01-19 2001-07-27 M Ken Co Ltd 音声データに透かし情報を埋め込む方法、透かし情報埋め込み装置、透かし情報検出装置、透かし情報が埋め込まれた記録媒体、及び透かし情報を埋め込む方法を記録した記録媒体
WO2001067671A2 (en) * 2000-03-06 2001-09-13 Meyer Thomas W Data embedding in digital telephone signals
JP2003526274A (ja) * 2000-03-06 2003-09-02 メイヤー,トーマス,ダブリュー ディジタル電話信号へのデータの埋め込み
JP2002175089A (ja) * 2000-12-05 2002-06-21 Victor Co Of Japan Ltd 情報付加方法及び付加情報読み出し方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008199629A (ja) * 2007-02-15 2008-08-28 Avaya Technology Llc 暗号化の存在下での信号ウォーターマーキング
JP2013017233A (ja) * 2007-02-15 2013-01-24 Avaya Technology Llc 暗号化の存在下での信号ウォーターマーキング
JP2010530154A (ja) * 2007-05-29 2010-09-02 イントラソニックス ソシエテ パール アクシオン デ ラ レスポンサビリテ リミテ 音声信号中に埋め込まれた隠れデータの回復
JP2014511153A (ja) * 2011-02-07 2014-05-12 クゥアルコム・インコーポレイテッド 透かし入り信号を符号化し検出するための機器
US9767823B2 (en) 2011-02-07 2017-09-19 Qualcomm Incorporated Devices for encoding and detecting a watermarked signal
US9767822B2 (en) 2011-02-07 2017-09-19 Qualcomm Incorporated Devices for encoding and decoding a watermarked signal
JP2014087566A (ja) * 2012-10-31 2014-05-15 Universal Entertainment Corp 通信用lsi及び遊技機
JP2014087567A (ja) * 2012-10-31 2014-05-15 Universal Entertainment Corp 通信用lsi及び遊技機

Also Published As

Publication number Publication date
DE602004010204T2 (de) 2008-10-02
EP1503369A3 (en) 2005-07-27
EP1503369A2 (en) 2005-02-02
US20050023343A1 (en) 2005-02-03
US8340973B2 (en) 2012-12-25
EP1503369B1 (en) 2007-11-21
US7974846B2 (en) 2011-07-05
US20110208514A1 (en) 2011-08-25
EP1744304A3 (en) 2007-06-20
JP4527369B2 (ja) 2010-08-18
EP1744304B1 (en) 2013-05-22
EP1744304A2 (en) 2007-01-17
DE602004010204D1 (de) 2008-01-03

Similar Documents

Publication Publication Date Title
JP4527369B2 (ja) データ埋め込み装置及びデータ抽出装置
KR100563293B1 (ko) 음성 복호화에서 음성 프레임 오류 은폐를 위한 방법 및시스템
KR101290425B1 (ko) 소거된 스피치 프레임을 복원하는 시스템 및 방법
CA3008321C (en) Encoder, decoder and method for encoding and decoding audio content using parameters for enhancing a concealment
US10504525B2 (en) Adaptive forward error correction redundant payload generation
WO2009049671A1 (en) Scalable coding with partial eror protection
EP1617417A1 (en) Voice coding/decoding method and apparatus
JP4758687B2 (ja) 音声パケット送信方法、音声パケット受信方法、それらの方法を用いた装置、プログラム、および記録媒体
Montminy et al. Improving the performance of ITU-T G. 729A for VoIP
KR100591544B1 (ko) VoIP 시스템을 위한 프레임 손실 은닉 방법 및 장치
KR20040050810A (ko) 부가 음성 데이터를 이용한 패킷 손실 복구 방법 및 이를이용한 송수신기
EP1387351B1 (en) Speech encoding device and method having TFO (Tandem Free Operation) function
Licai et al. Information hinding based on GSM full rate speech coding
JP4347323B2 (ja) 音声符号変換方法及び装置
KR20050024651A (ko) 패킷 망에서의 프레임 손실 은닉 방법 및 장치
Geiser et al. Steganographic Packet Loss Concealment forWireless VoIP
JP4060317B2 (ja) 双方向通信システム、通信機、および通信制御方法
JP4330303B2 (ja) 音声符号変換方法及び装置
JP4900402B2 (ja) 音声符号変換方法及び装置
JPWO2003021573A1 (ja) コーデック

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080917

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090309

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090721

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091021

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20091030

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100511

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100603

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

Free format text: PAYMENT UNTIL: 20130611

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130611

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees