(57)【要約】【課題】  電子透かし情報の埋め込み伝送において、音声信号が音として放音されたときの聴感上の違和感が少なく、かつ、頑健性を高める。【解決手段】  埋め込み装置１００の埋め込み雑音合成部１２０は、埋め込み先の合成音声信号と同様のスペクトラムエンベロープを有する埋め込み雑音信号を電子透かし情報のシンボルを示す擬似雑音信号を用いて合成する。加算器１３０は、元の合成音声信号に埋め込み雑音信号を加算し、埋め込み済み合成音声信号とする。抽出装置２００では、埋め込み済み合成音声信号の複素スペクトラム列を生成し、この複素スペクトラム列の振幅を平坦化する。そして、平坦化された複素スペクトラム列と所定のシンボルを示す擬似雑音信号の複素スペクトラム列との相互相関係数に基づきシンボルを判定する。【選択図】図１
2010169766.tif 000002
【特許請求の範囲】
【請求項１】
埋め込み対象である電子透かし情報のシンボルを示す擬似雑音信号を生成する擬似雑音生成手段と、
埋め込み先である音声信号と同様のスペクトラムエンベロープを有する埋め込み雑音信号を前記擬似雑音信号を用いて合成する埋め込み雑音合成手段と、
前記埋め込み雑音信号を前記音声信号に加算して出力する加算手段と
を具備することを特徴とする電子透かし情報の埋め込み装置。
【請求項２】
音声合成手段が出力する合成音声信号を埋め込み先とし、前記埋め込み雑音合成手段は、前記音声合成手段から音声信号のスペクトラムエンベロープを示すスペクトラムエンベロープデータを取得し、このスペクトラムエンベロープデータを用いて前記埋め込み雑音信号を合成することを特徴とする請求項１に記載の電子透かし情報の埋め込み装置。
【請求項３】
前記擬似雑音生成手段は、各々音声の発声者の各グループに対応付けられた擬似雑音信号を生成する機能を備え、前記音声合成手段から音声合成に用いる音声素片の発声者が属するグループに関する通知を受け、前記シンボルを示す擬似雑音信号として、前記音声合成手段から通知されたグループに対応付けられた擬似雑音信号を生成することを特徴とする請求項１に記載の電子透かし情報の埋め込み装置。
【請求項４】
電子透かし情報の埋め込まれた音声信号に時間／周波数変換を施し、スペクトラム列を生成する時間／周波数変換手段と、
前記時間／周波数変換手段により生成されたスペクトラム列の振幅を平坦化するスペクトラム振幅平坦化手段と、
前記スペクトラム振幅平坦化手段により振幅が平坦化されたスペクトラム列と、所定のシンボルを示す擬似雑音信号のスペクトラム列との相互相関係数を算出する相関算出手段と、
前記相関算出手段により算出される相互相関係数に基づき、前記音声信号に埋め込まれた電子透かし情報のシンボルを判定するシンボル判定手段と
を具備することを特徴とする電子透かし情報の抽出装置。
【請求項５】
前記電子透かし情報の埋め込まれた音声信号の発声者が複数の発声者のグループのいずれに属するかを判定する音声認識手段と、
前記複数の発声者のグループの各グループに対応付けられた擬似雑音信号のスペクトラム列を生成する機能を備え、前記所定のシンボルを示す擬似雑音信号のスペクトラム列として、前記音声認識手段が判定したグループに対応付けられた擬似雑音信号のスペクトラム列を生成する手段と
を具備することを特徴とする請求項４に記載の電子透かし情報の抽出装置。
【請求項６】
コンピュータを、
埋め込み対象である電子透かし情報のシンボルを示す擬似雑音信号を生成する擬似雑音生成手段と、
埋め込み先である音声信号と同様のスペクトラムエンベロープを有する埋め込み雑音信号を前記擬似雑音信号を用いて合成する埋め込み雑音合成手段と、
前記埋め込み雑音信号を前記音声信号に加算して出力する加算手段と
して機能させることを特徴とするプログラム。
【請求項７】
コンピュータを、
電子透かし情報の埋め込まれた音声信号に時間／周波数変換を施し、スペクトラム列を生成する時間／周波数変換手段と、
前記時間／周波数変換手段により生成されたスペクトラム列の振幅を平坦化するスペクトラム振幅平坦化手段と、
前記スペクトラム振幅平坦化手段により振幅が平坦化されたスペクトラム列と、所定のシンボルを示す擬似雑音信号のスペクトラム列との相互相関係数を算出する相関算出手段と、
前記相関算出手段により算出される相互相関係数に基づき、前記音声信号に埋め込まれた電子透かし情報のシンボルを判定するシンボル判定手段と
して機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、音声信号を対象とした電子透かし情報の埋め込みおよび抽出を行う装置およびプログラムに関する。
【背景技術】
【０００２】
音声合成プログラムや歌唱合成プログラムが普及した今日、これらのプログラムにより合成された音声や歌唱音声についても著作者の権利を保護する需要が高まっている。このような需要に応える技術として、電子透かし情報の埋め込み技術がある。この技術により、音声合成プログラム等が合成した音声等に電子透かし情報が埋め込まれるようになると、著作権の保護に役立つ他、例えば音声合成プログラム等により合成された音声等が犯罪に利用されたような場合に、その音声等に埋め込まれた電子透かし情報をその音声等の出所の推定に役立てることができると考えられる。また、音声合成プログラム等により合成される音声等に電子透かし情報が埋め込まれれば、そのような音声等の犯罪への利用を躊躇させることが可能になると考えられる。これまで音声信号に電子透かし情報を埋め込む技術として、例えば特許文献１に開示のものがある。この特許文献１に開示の技術は、合成音声の音声素片毎に、振幅、位相あるいはピッチを電子透かし情報に基づいて変調するものである。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−２９５８７８号公報
【特許文献２】特許第３６５９３２１号
【特許文献３】特表２００４−５２６２０７号公報
【特許文献４】特開２００７−２４０５６４号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、特許文献１に開示の技術は、音声の合成過程において電子透かし情報の埋め込みを行うことができる利点があるが、周波数領域での人間の聴覚に対する考慮がなされておらず、電子透かし情報の埋め込まれた音声が放音されるとき聴感上の違和感を生じさせる可能性がある。また、この技術のように、音声素片の振幅、位相等の変調により電子透かし情報の埋め込みを行った場合、音声信号が伝送される過程において受ける減衰や帯域制限により、抽出装置側において音声信号から電子透かし情報を抽出することが困難になる場合がある。
【０００５】
この発明は、以上説明した事情に鑑みてなされたものであり、音として放音された場合の聴感上の違和感を少なくすることができ、かつ、頑健性に優れた電子透かし情報の埋め込み伝送技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
この発明は、埋め込み対象である電子透かし情報のシンボルを示す擬似雑音信号を生成する擬似雑音生成手段と、埋め込み先である音声信号と同様のスペクトラムエンベロープを有する埋め込み雑音信号を前記擬似雑音信号を用いて合成する埋め込み雑音合成手段と、前記埋め込み雑音信号を前記音声信号に加算して出力する加算手段とを具備することを特徴とする電子透かし情報の埋め込み装置を提供する。
【０００７】
また、この発明は、電子透かし情報の埋め込まれた音声信号（以下、便宜上、埋め込み済み音声信号という）に時間／周波数変換を施し、スペクトラム列を生成する時間／周波数変換手段と、前記時間／周波数変換手段により生成されたスペクトラム列の振幅を平坦化するスペクトラム振幅平坦化手段と、前記スペクトラム振幅平坦化手段により振幅が平坦化されたスペクトラム列と、所定のシンボルを示す擬似雑音信号のスペクトラム列との相互相関係数を算出する相関算出手段と、前記相関算出手段により算出される相互相関係数に基づき、前記音声信号に埋め込まれた電子透かし情報のシンボルを判定するシンボル判定手段とを具備することを特徴とする電子透かし情報の抽出装置を提供する。
【０００８】
この発明によれば、埋め込み装置では、音声信号と同様のスペクトラムエンベロープを持った埋め込み雑音信号を生成し、これを音声信号に加算して埋め込み済み音声信号として出力するので、埋め込み済み音声信号が音として放音されたときの聴感上の違和感を少なくすることができる。また、この発明では、電子透かし情報のシンボルを示す情報として、広い帯域にスペクトラムを持った擬似雑音信号を利用し、埋め込み先である音声信号の広い帯域にシンボルを示す情報を分散させて伝送するので、高い頑健性が得られる。また、抽出装置２００側では、埋め込み済み音声信号のスペクトラム列の振幅を平坦化してから、埋め込み済み音声信号のスペクトラム列とシンボルを示す擬似雑音信号のスペクトラム列との相互相関係数を求め、その相互相関係数に基づいてシンボルの判定を行う。従って、埋め込む済み音声信号の伝送過程のおいて埋め込み済み音声信号の一部の周波数帯域のスペクトラムに減衰が与えられる状況下においても、安定してシンボルの抽出を行うことができる。
【０００９】
なお、この発明のように電子透かし情報を埋め込み先の音声信号の広い帯域に分散させて伝送する技術としては、特許文献２に開示の技術と特許文献３に開示の技術がある。しかし、特許文献２に開示の技術は、埋め込み先であるデジタルデータにフーリエ変換を施し、フーリエ変換により得られた各周波数成分を各周波数成分が属する帯域と埋め込み対象である付加情報のビットとに基づいて変調（振幅変調、位相変調）するものである。この技術は、本発明のように、擬似雑音信号を用いて、埋め込み先である音声信号と同様のスペクトラムエンベロープを持った埋め込み雑音信号を合成するものではない。また、特許文献３は、電子透かし情報の埋め込み先である情報信号に対し、電子透かし情報を示す基本数列を畳み込んで畳み込み数列を生成し、この畳み込み数列を情報信号と混合するものである。この技術も、本発明のように、擬似雑音信号を用いて、埋め込み先である音声信号と同様のスペクトラムエンベロープを持った埋め込み雑音信号を合成するものではない。
【図面の簡単な説明】
【００１０】
【図１】この発明の第１実施形態による電子透かし情報の埋め込み装置１００を含む音声合成装置の構成を示すブロック図である。
【図２】同埋め込み装置１００の各部の処理内容を示す図である。
【図３】同実施形態による電子透かし情報の抽出装置２００の構成を示すブロック図である。
【図４】同抽出装置２００の各部の処理内容を示す図である。
【図５】この発明の第２実施形態を適用した歌唱合成装置の構成を示すブロック図である。
【図６】同歌唱合成装置における歌唱合成プログラム６４の構成を示すブロック図である。
【図７】同歌唱合成装置における透かし埋め込みプログラム６７の構成を示すブロック図である。
【図８】同実施形態における抽出装置２００Ａの構成を示すブロック図である。
【発明を実施するための形態】
【００１１】
＜第１実施形態＞
図１は、この発明の第１実施形態による電子透かし情報の埋め込み装置１００を含む音声合成装置の構成を示すブロック図である。この音声合成装置は、音声合成部１０と、本実施形態による埋め込み装置１００とにより構成されている。音声合成部１０は、入力されるテキスト情報に基づいて音声信号を合成する装置である。埋め込み装置１００は、音声合成部１０が出力する合成音声信号を用いて、電子透かし情報が埋め込まれた音声信号を合成し、この合成した音声信号を元の合成音声信号に加算し、埋め込み済み合成音声信号として出力する装置である。なお、音声合成装置またはその一部である埋め込み装置１００は、電子透かし情報の埋め込まれた合成音声信号を生成する処理または音声信号に電子透かし情報を埋め込む処理を実行する専用のハードウェアとして実現してもよいし、そのような処理をコンピュータに実行させるコンピュータプログラムとして実現してもよい。
【００１２】
本実施形態による埋め込み装置１００は、擬似雑音生成部１１０と、埋め込み雑音合成部１２０と、加算器１３０とにより構成されている。ここで、擬似雑音生成部１１０は、２値のシンボル（すなわち、ｂｉｔ）を示すＭ系列、Ｇｏｌｄ系列等の一定符号長の擬似雑音信号を各々生成する機能を有している。これらの擬似雑音はＤＣを除いたナイキスト周波数までの全ての帯域でフラットな振幅特性を持つ。従って、電子透かしを入力音声信号の帯域より狭いかつ特定の帯域のみに挿入したい場合には、予め同擬似雑音をローパスフィルタあるいはバンドパスフィルタを用いて帯域制限した信号を埋込に使用することで実現が可能である
【００１３】
擬似雑音生成部１１０は、埋め込み装置１００が合成音声信号への電子透かし情報の埋め込みを行う場合に、埋め込み対象である電子透かし情報を示すシンボル列を事前に取得し、同シンボル列を構成する各シンボルに対応した擬似雑音信号を順次生成する。好ましい態様において、擬似雑音生成部１１０は、シンボル“０”に対応した擬似雑音信号およびシンボル“１”に対応した擬似雑音信号として、＋１または−１の信号の羅列であって、互いに無相関のまたは相互相関係数が極めて低い別個の擬似雑音信号を生成する。他の好ましい態様では、擬似雑音生成部１１０は、ある内容の擬似雑音信号をシンボル“０”に対応した擬似雑音信号として生成し、このシンボル“０”に対応した擬似雑音信号を極性反転したものをシンボル“１”に対応した擬似雑音信号として生成する。すなわち、この態様において、シンボル“０”に対応した擬似雑音信号とシンボル“１”に対応した擬似雑音信号は負の相関を持つ。擬似雑音信号は、音として出力されたときの聴感上の影響を少なくし、かつ、後述する抽出装置２００でのシンボルの抽出を容易にするため、広い周波数帯域に亙って振幅スペクトラムがフラットな信号であることが好ましく、そのためには擬似雑音信号の符号長は十分な長さを持っていることが必要である。また、擬似雑音信号は、音声合成部１０が出力する合成音声信号のスペクトラム分布との相互相関が低いスペクトラム分布を持つもの、理想的には合成音声信号のスペクトラムの周波数とは異なる周波数にスペクトラムを有するものであることが好ましい。
【００１４】
なお、電子透かし情報の埋め込み伝送の信頼性を高めるために、電子透かし情報を示すシンボル列を誤り訂正符号化し、この電子透かし情報の誤り訂正符号列を擬似雑音生成部１１０に与えるようにしてもよい。また、電子透かし情報の秘匿性を高めるために、電子透かし情報を示すシンボル列を暗号化し、暗号化されたシンボル列を擬似雑音生成部１１０に与えるようにしてもよい。
【００１５】
埋め込み雑音合成部１２０は、擬似雑音生成部１１０が出力する電子透かし情報の各シンボルに対応した擬似雑音信号を用いて音声合成部１０が出力する合成音声信号と同様のスペクトラムエンベロープを持った埋め込み雑音信号を合成する装置である。図２は、この埋め込み雑音合成部１２０の処理内容を示す図である。以下、図１および図２を参照し、埋め込み雑音合成部１２０の各部について説明する。
【００１６】
窓掛け部１２１は、音声合成部１０が出力する合成音声信号のサンプルｘｐ（ｎ）の列を１ハーフフレーム当たりＮサンプル（Ｎ＝Ｍ／２）のハーフフレームｘｐ（ｎ）（ｎ＝０〜Ｎ−１）に区切る処理と、現時点から１／２ハーフフレーム（Ｎ／２サンプル）遅れた位置から始まる２ハーフフレーム（＝１フレーム）分のサンプルｘｐ（ｎ）（ｎ＝０〜２Ｎ−１）に窓関数を乗じて時間／周波数変換部１２２に供給する処理を繰り返す。図２では、窓掛け部１２１がハーフフレームＨＦ３まで合成音声信号のサンプルｘｐ（ｎ）の列を区切ったとき、ハーフレームＨＦ３の中央からハーフフレームＨＦ１の中央までの２ハーフフレーム（＝１フレーム）分のサンプル列ｘｐ（ｎ）（ｎ＝０〜２Ｎ−１）に窓関数を乗じて時間／周波数変換部１２２に供給する例が示されている。
【００１７】
時間／周波数変換部１２２は、１フレーム（２Ｎサンプル）分の窓掛け済みのサンプル列が供給される都度、そのサンプル列に２Ｎ点ＦＦＴ（Fast Fourier Transform；高速フーリエ変換）を施し、２Ｎ個の複素スペクトラムの列を生成する。絶対値算出部１２３は、時間／周波数変換部１２２が１フレーム分のサンプル列から生成する各複素スペクトラムについて、各々の実部の２乗と虚部の２乗の和の平方根を演算することにより、複素スペクトラムの絶対値、すなわち、振幅スペクトラムを算出する。
【００１８】
スペクトラムエンベロープ算出部１２４は、絶対値算出部１２３が出力する１フレーム分の振幅スペクトラムの列を周波数軸上に並べたときの各振幅スペクトラムのエンベロープ、すなわち、スペクトラムエンベロープを算出する。時間／周波数逆変換部１２５は、スペクトラムエンベロープ算出部１２４が算出したスペクトラムエンベロープに２Ｎ点ＩＦＦＴ（Inverse Fast Fourier Transform；逆高速フーリエ変換）等の時間／周波数逆変換を施し、時間領域の２Ｎ個のフィルタ係数の列ｆ（ｎ）（ｎ＝−Ｎ〜Ｎ−１）を生成する。この時間領域のフィルタ係数列は、時間軸上において時間ｔ＝０を対称軸として対称な偶関数のサンプル列である。
【００１９】
以上のように、埋め込み雑音合成部１２０における窓掛け部１２１から時間／周波数逆変換部１２５までの各要素からなる部分は、音声合成部１０が１ハーフフレーム分の合成信号のサンプル列を出力する毎に、過去１フレーム分の合成音声信号のスペクトラムエンベロープに対応した時間領域の情報であるフィルタ係数列を出力する。
【００２０】
畳み込み部１２６は、擬似雑音生成部１１０が出力する擬似雑音信号のサンプル列に時間／周波数逆変換部１２５が出力するフィルタ係数列を畳み込む。さらに詳述すると、本実施形態において、擬似雑音生成部１１０は、音声合成部１０が１ハーフフレーム（Ｎサンプル）分の合成信号のサンプル列を出力し、埋め込み雑音合成部１２０の時間／周波数逆変換部１２５が１フレーム（２Ｎサンプル）分の合成音声信号のスペクトラムエンベロープに対応したフィルタ係数列を出力するのに同期し、１シンボルフレーム（Ｎサンプル）分の擬似雑音信号のサンプル列を出力する。畳み込み部１２６は、時間／周波数逆変換部１２５が２Ｎサンプルからなるフィルタ係数列ｆ（ｎ）（ｎ＝−Ｎ〜Ｎ−１）を出力した場合に、１シンボルフレーム（Ｎサンプル）分の擬似雑音信号のサンプル列とそのフィルタ係数列ｆ（ｎ）（ｎ＝−Ｎ〜Ｎ−１）との畳み込み演算を行い、畳み込み演算結果である３Ｎ−１個のサンプルの列を生成する。
【００２１】
具体的には、１シンボルフレーム（Ｎサンプル）分の擬似雑音信号のサンプル列に対する１フレーム（２Ｎサンプル）分のフィルタ係数列ｆ（ｎ）（ｎ＝−Ｎ〜Ｎ−１）の位相関係をずらしながら擬似雑音信号のＮ個のサンプル列の各々とそれらに対応するフィルタ係数との乗算を行うとともにＮ個の乗算結果の加算を行い、１個の畳み込み演算結果を生成する動作を繰り返す。図２に示す例では、フィルタ係数列ｆ（ｎ）（ｎ＝−Ｎ〜Ｎ−１）における最後尾のフィルタ係数ｆ（Ｎ−１）が擬似雑音信号のサンプル列ＰＮ２の先頭のサンプルと対向している状態からフィルタ係数列ｆ（ｎ）（ｎ＝−Ｎ〜Ｎ）における先頭のフィルタ係数ｆ（−Ｎ）が擬似雑音信号のサンプル列ＰＮ２の最後尾のサンプルとが対向している状態になるまでフィルタ係数列ｆ（ｎ）（ｎ＝−Ｎ〜Ｎ−１）の位相を１サンプルずつシフトしつつ、擬似雑音信号のＮ個のサンプル列の各々とそれらに対応するフィルタ係数との乗算およびＮ個の乗算結果の加算を繰り返す様子が示されている。なお、擬似雑音信号のサンプルと対向するフィルタ係数ｆ（ｎ）がない場合には、０値がフィルタ係数の代わりに擬似雑音信号のサンプルに乗算される。
【００２２】
そして、畳み込み部１２６は、１フレーム（２Ｎサンプル）分のフィルタ係数列と１シンボルフレーム分の擬似雑音信号のサンプル列とが発生する毎にこのような畳み込み演算を実行し、各畳み込み演算において得られる３Ｎ−１個のサンプルの列の最後尾に０値サンプルを１個追加して３Ｎ個のサンプルの列とする。そして、このようにして得られる各３Ｎ個のサンプルの各列を、先行するサンプル列の最後尾のＮ個のサンプルと後続のサンプル列の先頭のＮサンプルとを互いにオーバラップさせて出力する。その際、オーバラップ部分は各畳み込む演算結果を加算して１つの出力サンプルとする。図２には、先行する擬似雑音信号のサンプル列ＰＮ２に対する３Ｎサンプル分の畳み込み演算結果と後続の擬似雑音信号のサンプル列ＰＮ３に対する３Ｎサンプル分の畳み込み演算結果とがＮサンプル（＝１シンボルフレーム）だけオーバラップして出力される様子が示されている。
【００２３】
このような畳み込み演算が行われることにより、周波数軸上において合成音声信号のスペクトラムエンベロープと同様なスペクトラムエンベロープを持ち、かつ、時間軸上におけるスペクトラムエンベロープの変化が緩和されたサンプル列が得られる。ここで、時間／周波数逆変換部１２５が出力するフィルタ係数列ｆ（ｎ）（ｎ＝−Ｎ〜Ｎ−１）は、前述した通り、時間軸上において時間ｔ＝０を対称軸として対称な偶関数のサンプル列であるので、このフィルタ係数列の畳み込みを行うフィルタ処理は、直線位相特性を持つ。従って、畳み込み部１２６によるフィルタ処理では、位相歪みは発生しない。
【００２４】
なお、以上の説明では、時間領域においてフィルタ係数列ｆ（ｎ）（ｎ＝−Ｎ〜Ｎ−１）と擬似雑音信号のサンプル列との畳み込み演算を行ったが、この畳み込み演算を次のような周波数領域の操作に置き換えてもよい。
ａ１．フィルタ係数列ｆ（ｎ）（ｎ＝−Ｎ〜Ｎ−１）の後にＮ−１個の０値サンプルを追加して３Ｎ−１個のフィルタ係数列とし、この３Ｎ−１個のフィルタ係数列に３Ｎ−１点ＦＦＴを施して、３Ｎ−１個のフーリエ変換係数を生成する。
ｂ１．畳み込み演算の対象となる１シンボルフレーム（Ｎサンプル）分の擬似雑音信号のサンプル列の後に２Ｎ−１個の０値サンプルを追加して、３Ｎ−１個のサンプル列とし、この３Ｎ−１個のサンプル列に３Ｎ−１点ＦＦＴを施して、３Ｎ−１個のフーリエ変換係数を生成する。
ｃ１．上記ａ１．により得られる３Ｎ−１個のフーリエ変換係数と上記ｂ１．により得られる３Ｎ−１個のフーリエ変換係数とを同一周波数に対応したもの同士乗算し、乗算結果である３Ｎ−１個のフーリエ変換係数にＩＦＦＴを施し、時間領域の３Ｎ−１個のサンプルの列を生成する。
ｄ１．上記ａ１．〜ｃ１．が繰り返される毎に得られる３Ｎ−１個のサンプルの列の最後尾に１個の０値サンプルを追加して３Ｎ個のサンプルの列とし、先行するサンプル列と後続のサンプル列を時間軸上においてＮサンプルだけオーバラップさせて出力する。
【００２５】
ゲイン算出部１２７は、次式に従い、乗算器１２８に供給するゲインαを算出し、乗算器１２８はこのゲインαを畳み込み部１２６が出力するサンプル列に乗算し、埋め込み雑音信号のサンプル列として出力する。
α＝√｛（Ｐｓ／Ｐｗ）１０−ＳＷＲ／１０｝                    ……（１）
ここで、Ｐｓは、１フレーム分の合成音声信号の平均パワー、具体的には絶対値算出部１２３により算出された全ての振幅スペクトラムの平均２乗和である。また、Ｐｗは、擬似雑音生成部１１０が出力する擬似雑音信号の平均パワーである。そして、ＳＷＲは、埋め込み先である合成音声信号のパワーを基準とした埋め込み雑音信号のパワーの減衰量の目標値であり、例えば２０ｄＢである。
【００２６】
以上のように、埋め込み雑音合成部１２０は、音声合成部１０が出力する合成音声信号と同様のスペクトラムエンベロープを有し、かつ、合成音声信号よりもＳＷＲだけ平均パワーの減衰した埋め込み雑音信号を擬似雑音信号を用いて合成する。加算器１３０は、この埋め込み雑音信号を合成音声信号と加算し、埋め込み済み合成音声信号として出力する。以上が本実施形態による埋め込み装置１００を備えた音声合成装置の詳細である。
【００２７】
図３は、本実施形態による電子透かし情報の抽出装置２００の構成を示すブロック図である。また、図４は抽出装置２００の各部の処理内容を示す図である。この抽出装置２００は、本実施形態による埋め込み装置１００から出力された埋め込み済み合成音声信号から電子透かし情報のシンボル列を抽出するものである。
【００２８】
バッファ２１０は、埋め込み済み合成音声信号を蓄積する装置である。前述した埋め込み装置１００により出力された埋め込み済み合成音声信号のサンプル列は、例えばアナログ信号に変換された後、音として空気中に放音され、図示しない収音装置により収音されてデジタル化され、バッファ２１０に蓄積される。あるいは、埋め込み済み合成音声信号のサンプル列は、一旦、何らかの記録媒体に記録され、その記録媒体から読み出されてバッファ２１０に蓄積される場合もあり得る。
【００２９】
バッファ２１０内の埋め込み済み合成音声信号のサンプル列は、古いものから順に読み出され、窓掛け部２１１の処理を経て時間／周波数変換部２１２に供給される。なお、バッファ２１０から埋め込み済み合成音声信号のサンプル列を読み出す手段については後述する。
【００３０】
窓掛け部２１１は、埋め込み装置１００の窓掛け部１２１と同様の構成のものであり、バッファ２１０から読み出される埋め込み済み合成音声信号のサンプルｘｐ’（ｎ）の列を先頭から順にＮサンプルのハーフフレームに区切る処理と、現時点までに区切った最新の１ハーフフレーム（１シンボルフレーム）分のオーディオサンプルｘｐ’（ｎ）（ｎ＝０〜Ｎ−１）に窓関数を乗じて時間／周波数変換部２１２に供給する処理を繰り返す。
【００３１】
時間／周波数変換部２１２は、埋め込み装置１００の時間／周波数変換部１２２と同様の構成のものであり、１ハーフフレーム分の窓掛け済みのサンプル列が供給される都度、そのサンプル列にＦＦＴを施し、複素スペクトラム列を生成する。スペクトラム振幅平坦化部２１３は、時間／周波数変換部２１２が１ハーフフレーム分のサンプル列から生成する各複素スペクトラムについて、各々の振幅が１となるように実部と虚部の大きさを調整する。具体的には、各複素スペクトラムについて、実部と虚部の２乗和の平方根（すなわち、複素スペクトラムの振幅値（絶対値））を求め、実部と虚部をこの平方根により除算する。
【００３２】
擬似雑音生成部２２０は、埋め込み装置１００の擬似雑音生成部１１０が生成するものと同様なシンボル“０”に対応した擬似雑音信号とシンボル“１”に対応した擬似雑音信号を生成する機能を備えている。ここで、擬似雑音信号は、広い周波数帯域に亙ってフラットな振幅スペクトラム、具体的には振幅が１である振幅スペクトラムを有している。時間／周波数変換部２２１は、シンボル“０”に対応した擬似雑音信号とシンボル“１”に対応した擬似雑音信号の各々にＦＦＴを施し、シンボル“０”に対応した擬似雑音信号の複素スペクトラム列とシンボル“１”に対応した擬似雑音信号の複素スペクトラム列とを生成する。複素共役化部２２２は、シンボル“０”に対応した擬似雑音信号の複素スペクトラム列とシンボル“１”に対応した擬似雑音信号の複素スペクトラム列の各複素スペクトラムについて、各々の虚部の符号を反転し、元の複素スペクトラムと複素共役をなす複素スペクトラムに変換する。
【００３３】
相関算出部２３０は、スペクトラム振幅平坦化部２１３から出力された複素スペクトラム列の各複素スペクトラムと、複素共役化部２２２の処理を経たシンボル“０”に対応した擬似雑音信号の複素スペクトラム列の各複素スペクトラムとを同一周波数に対応したもの同士乗算し、各乗算結果にＩＦＦＴを施して時間領域のサンプル列に変換する。そして、その中で最も高いピーク値を第１の相互相関係数として出力する。同様に、相関算出部２３０は、スペクトラム振幅平坦化部２１３から出力された複素スペクトラム列の各複素スペクトラムと、複素共役化部２２２の処理を経たシンボル“１”に対応した擬似雑音信号の複素スペクトラム列の各複素スペクトラムとを同一周波数に対応したもの同士乗算し、各乗算結果にＩＦＦＴを施して時間領域のサンプル列に変換する。そして、その中で最も高いピーク値を第２の相互相関係数として出力する。
【００３４】
ここで、仮に窓掛け部２１１が埋め込み装置１００の窓掛け部１２１と同じ区切り位置において、バッファ２１０から読み出される合成音声信号をフレームに区切るとした場合、スペクトラム振幅平坦化部２１３から出力される複素スペクトラム列は、上述の畳み込み部１２６が出力した埋め込み雑音信号の複素スペクトラムの振幅を１にしたものと、上述の音声合成部１０が出力した合成音声信号の複素スペクトラムの振幅を１にしたものを含んでいる。
【００３５】
そして、スペクトラム振幅平坦化部２１３から出力される複素スペクトラム列がシンボル“０”に対応した擬似雑音信号から得られた埋め込み雑音信号の各複素スペクトラムであって振幅が１であるものを含む場合には、これらの各複素スペクトラムと複素共役化部２２２の処理を経たシンボル“０”に対応した擬似雑音信号の各複素スペクトラムとの乗算結果が各々１となる。この結果、第１の相互相関係数が大きな値となる。また、スペクトラム振幅平坦化部２１３から出力される複素スペクトラム列がシンボル“１”に対応した擬似雑音信号から得られた埋め込み雑音信号の各複素スペクトラムであって振幅が１であるものを含む場合には、これらの各複素スペクトラムと複素共役化部２２２の処理を経たシンボル“１”に対応した擬似雑音信号の各複素スペクトラムとの乗算結果が各々１となる。この結果、第２の相互相関係数が大きな値となる。なお、音声合成部１０が出力する合成音声信号の複素スペクトラムと、シンボル“０”および“１”に対応した各擬似雑音信号から得られる埋め込み雑音信号の各複素スペクトラムとの相互相関係数が低い場合、合成音声信号の複素スペクトラムの第１の相互相関係数および第２の相互相関係数に与える影響は少ない。
【００３６】
同期化制御部２３１は、以上説明した各部に同期探索フェーズでの動作を行わせ、その後、データ抽出フェーズでの動作を行わせる制御を行う。ここで、同期化制御部２３１は、同期探索フェーズでは、バッファ２１０内の埋め込み済み合成音声信号のサンプル列における読み出し開始位置を更新しつつ、バッファ２１０からサンプル列を繰り返し読み出し、窓掛け部２１１、時間／周波数変換部２１２、スペクトラム振幅平坦化部２１３、擬似雑音生成部２２０、時間／周波数変換部２２１、複素共役化部２２２および相関算出部２３０に上述した動作を行わせ、第１の相互相関係数および第２の相互相関係数を算出させる制御を繰り返す。この制御の過程において、窓掛け部２１１が埋め込み装置１００の窓掛け部１２１と同じ区切り位置において、バッファ２１０から読み出される合成音声信号をシンボルフレームに区切ると、その時点において、第１の相互相関係数または第２の相互相関係数が最大となる。これを以って同期化制御部２３１は、データ抽出フェーズでの制御に移行する。
【００３７】
同期化制御部２３１は、このデータ抽出フェーズでは、第１の相互相関係数または第２の相互相関係数の実部が最大となる区切り位置において窓掛け部２１１がバッファ２１０から読み出される合成音声信号をシンボルフレームに区切るようにバッファ２１０から合成音声信号のサンプル列を読み出し、窓掛け部２１１、時間／周波数変換部２１２、スペクトラム振幅平坦化部２１３、擬似雑音生成部２２０、時間／周波数変換部２２１、複素共役化部２２２および相関算出部２３０に上述した動作を行わせ、第１の相互相関係数および第２の相互相関係数を算出させる制御を繰り返す。シンボル判定部２３２は、相関算出部２３０が第１の相互相関係数および第２の相互相関係数を出力する毎に、第１の相互相関係数および第２の相互相関係数を比較し、第１の相互相関係数が第２の相互相関係数よりも大きければ埋め込み済み合成音声信号に埋め込まれたシンボルは“０”であると判定し、第２相互相関係数が第１の相互相関係数よりも大きければ埋め込み済み合成音声信号に埋め込まれたシンボルは“１”であると判定する。
以上が本実施形態による抽出装置２００の詳細である。
【００３８】
なお、以上説明した態様では、演算量を削減するために、抽出装置２００の窓掛け部２１１は埋め込み済み合成音声信号のサンプル列を１ハーフフレーム（Ｎサンプル）のサンプル列に区切って窓関数の乗算を行い、時間／周波数変換部２１２および２２１はＮ点のＦＦＴを実行した。しかし、演算量の削減よりも演算精度を重視する場合、窓掛け部２１１には、１ハーフフレーム分の埋め込み済み合成音声信号のサンプル列がバッファ２１０から読み出される都度、過去３ハーフフレーム分のサンプル列に対する窓関数の乗算を行わせ、時間／周波数変換部２１２および２２１には３Ｎ点のＦＦＴを実行させるようにしてもよい。
【００３９】
以上説明した本実施形態によれば次の効果が得られる。まず、埋め込み装置１００では、合成音声信号と同様のスペクトラムエンベロープを持った埋め込み雑音信号を生成し、これを合成音声信号に加算して埋め込み済み合成音声信号として出力するので、合成音声信号が音として放音されたときの聴感上の違和感を少なくすることができる。また、シンボルを示す埋め込み雑音信号は、広い周波数帯域に亙ってフラットな振幅スペクトラムを含む。そして、抽出装置２００側では、埋め込み済み合成音声信号の複素スペクトラム列の各複素スペクトラムの振幅を１に調整してから、埋め込み済み合成音声信号の複素スペクトラム列とシンボルを示す擬似雑音信号の複素スペクトラム列との乗算と周波数／時間変換操作を用いて相互相関係数を求め、その相互相関係数に基づいてシンボルの判定を行う。従って、埋め込む済み合成音声信号の伝送過程のおいて埋め込み済み合成音声信号の一部の周波数帯域のスペクトラムに減衰が与えられる状況下においても、安定してシンボルの抽出を行うことができる。
【００４０】
＜第２実施形態＞
本実施形態は、特許文献４に開示された歌唱合成装置に電子透かし情報の埋め込み装置としての機能を付加したものである。図５は、本実施形態による歌唱合成装置の構成を示すブロック図である。この歌唱合成装置は、音声を出力する機能を有するパーソナルコンピュータなどのコンピュータに対し、歌唱合成プログラムと透かし埋め込みプログラムをインストールしたものである。図５において、ＣＰＵ１は、この歌唱合成装置の各部を制御する制御中枢である。ＲＯＭ２は、ローダなど、この歌唱合成装置の基本的な動作を制御するための制御プログラムを記憶した読み出し専用メモリである。表示部３は、装置の動作状態や入力データおよび操作者に対するメッセージなどを表示するための装置である。操作部４は、ユーザからコマンドや各種の情報を受け取るための手段であり、キーボードやマウスなどの各種の操作子により構成されている。インタフェース群５は、ネットワークを介して他の装置との間でデータ通信を行うためのネットワークインタフェースや、磁気ディスクやＣＤ−ＲＯＭなどの外部記憶媒体との間でデータの授受を行うためのドライバなどにより構成されている。ＨＤＤ（ハードディスク装置）６は、各種のプログラムやデータベースなどの情報を記憶するための不揮発性記憶装置である。ＲＡＭ７は、ＣＰＵ１によってワークエリアとして使用される揮発性メモリである。ＣＰＵ１は、操作部４を介して与えられる指令に従い、ＨＤＤ６内のプログラムをＲＡＭ７にロードして実行する。サウンドシステム８は、この歌唱合成装置において合成された音声を出力する手段であり、合成音声のサンプルデータであるデジタル音声信号をアナログ音声信号に変換するＤ／Ａ変換器と、このアナログ音声信号を増幅するアンプと、このアンプの出力信号を音として出力するスピーカ等により構成されている。
【００４１】
ＨＤＤ６に記憶される情報として、曲編集プログラム６１と、曲データ６２と、音声素片データベース６３と、歌唱合成プログラム６４と、透かし埋め込みプログラム６７と、透かし埋め込み済み歌唱データ６８がある。曲データ６２は、曲を構成する一連の音符を表す音符データと、音符に合わせて発声する歌詞を表す歌詞データと、曲に音楽的表情を与えるためのダイナミックス情報等のその他の情報からなるデータであり、曲毎に編集されてＨＤＤ６に格納される。曲編集プログラム６１は、曲データを編集するためにＣＰＵ１によって実行されるプログラムである。好ましい態様において、この曲編集プログラム６１は、ピアノの鍵盤の画像からなるＧＵＩ（グラフィカルユーザインタフェース）を表示部３に表示させる。ユーザは、表示部３に表示された鍵盤における所望の鍵の画像を操作部４の操作により指定し、また、その音符に合わせて発声する歌詞を操作部４の操作により入力することができる。曲編集プログラム６１は、このようにして、音符とその音符に合わせて発声する歌詞に関する情報をユーザから操作部４を介して受け取り、音符毎に音符データと歌詞データとを曲データ６２としてＨＤＤ６内に格納する。さらにユーザは操作部４の操作によりダイナミックス情報等を曲データ６２に追加することができる。なお、このように曲データ６２の全てを操作部４の操作により入力させるのではなく、歌唱合成装置に鍵盤を接続し、ユーザによる鍵盤の操作を検知することにより音符データを生成し、この音符データに対応させる歌詞を操作部４の操作により入力させるようにしてもよい。
【００４２】
１個の音符に対応した音符データは、音符の発生時刻、音高、音符の長さを示す各情報を含んでいる。歌詞データは、音符に合わせて発音すべき歌詞を音符毎に定義したデータである。曲データ６２は、曲の開始からの発生順序に合わせて、個々の音符に対応した音符データと歌詞データとを時系列的に並べたものであり、曲データ６２内において音符データと歌詞データは音符単位で対応付けられている。
【００４３】
歌唱合成プログラム６４は、この曲データ６２に従って、歌唱音を合成させる処理をＣＰＵ１に実行させるプログラムである。また、透かし埋め込みプログラム６７は、歌唱合成プログラムの実行により得られる歌唱音を示す歌唱データに対し、例えば歌唱曲の創作者を特定する情報や創作年月日等の著作権情報を示すシンボル列を埋め込む処理をＣＰＵ１に実行させるプログラムである。本実施形態による歌唱合成装置は、歌唱合成プログラム６４と透かし埋め込みプログラム６７を同時に実行可能な構成となっている。好ましい態様において、歌唱合成プログラム６４、曲編集プログラム６１および透かし埋め込みプログラム６７は、例えばインターネット内のサイトからインタフェース群５の中の適当なものを介してダウンロードされ、ＨＤＤ６にインストールされる。また、他の態様において、歌唱合成プログラム６４等は、ＣＤ−ＲＯＭ、ＭＤなどのコンピュータ読み取り可能な記憶媒体に記憶された状態で取引される。この態様では、インタフェース群５の中の適当なものを介して記憶媒体から歌唱合成プログラム６４等が読み出され、ＨＤＤ６にインストールされる。
【００４４】
音声素片データベース６３は、ＣＶ（子音から母音への遷移部）、ＶＶ（母音から他の母音への遷移部）、ＶＣ（母音から子音への遷移部）などの音素から音素への遷移部分（Ａｒｔｉｃｕｌａｔｉｏｎ）や母音Ｖの伸ばし音（Ｓｔａｔｉｏｎａｒｙ）など、歌声の素材となる各種の音声素片を示す音声素片データの集合体である。これらの音声素片データは、実際の人間が発した音声波形から抽出された音声素片に基づいて作成されたデータである。音声素片データベース６３では、男性歌手、女性歌手、澄んだ声の歌手、ハスキーな声の歌手など、声質の異なった歌手毎に、各歌手の歌唱音声波形から得られた音声素片データのグループが用意されている。歌唱合成プログラム６４による歌唱合成の際、ユーザは、操作部４の操作により、以上のような各種の音声素片データのグループの中から歌唱合成に使用する音声素片データのグループを選択することができる。本実施形態では、歌唱合成プログラム６４とともに透かし埋め込みプログラム６７が実行されるとき、ユーザが選択した音声素片データのグループを特定する情報が歌唱合成プログラム６４から透かし埋め込みプログラム６７に引き渡されるようになっている。
【００４５】
各音声素片データは、音声素片の波形を示す波形データを含んでいる。この波形データは、音声素片の波形を所定のサンプリングレートでサンプリングしたサンプル列に対し、上記第１実施形態において窓掛け部１２１および時間／周波数変換部１２２が行ったようなフレームへの分割、窓掛け処理およびＦＦＴを行うことにより得られたフレーム毎の振幅スペクトラム列および位相スペクトラム列を含む。また、各音声素片データは、音声素片を構成する音素の種類と各音素の開始時刻を示すセグメンテーションデータを含む。
【００４６】
本実施形態では、音声素片データに含まれる波形データにピッチ変換を施して利用することにより、任意のメロディに対応した歌唱音声を合成する。このピッチ変換を行うために、その対象である波形データのピッチに関する情報が必要である。そこで、本実施形態では、歌唱合成の際のピッチ変換の便宜のため、音声素片の波形のピッチがフレーム毎に算出され、各フレームにおけるピッチを示す素片ピッチデータが音声素片データの一部として音声素片データベース６３に格納される。
【００４７】
さらに本実施形態では、歌唱合成および電子透かし情報の埋め込み処理の便宜のため、上記素片ピッチデータに加えて、音声素片の振幅スペクトラムのエンベロープがフレーム毎に求められ、各フレームにおけるスペクトラムエンベロープを示すスペクトラムエンベロープデータが音声素片データの一部として音声素片データベース６３に格納される。
【００４８】
図６は歌唱合成プログラム６４の構成を示すブロック図である。図６に示すように、歌唱合成プログラム６４は、各々所定の機能を実現するプログラムである歌唱合成スコア生成部６４１と、素片選択部６４２と、ピッチ変換部６４３と、素片連結部６４４とにより構成されている。なお、本実施形態では、ＣＰＵ１が歌唱合成スコア生成部６４１等に相当する各プログラムを実行することにより歌唱音声の合成を行うが、これらの各プログラムを複数のプロセッサが分担して並列実行するように構成してもよい。また、歌唱合成スコア生成部６４１等の各プログラムの一部を電子回路により構成してもよい。
【００４９】
図６において、歌唱合成スコア生成部６４１は、操作部４の操作により指定された曲データ６２から歌唱合成スコア６５０を生成するプログラムである。この歌唱合成スコア６５０は、音韻データトラック６５１と、ピッチデータトラック６５２と、ダイナミックス等のその他の合成パラメータのデータトラック６５３とにより構成される。これらの各データトラックは、時間軸を共通にするものである。音韻データトラック６５１は、１曲分の歌唱音声を合成するのに使用する複数の音声素片と、それらの各音声素片の時間軸上における位置（具体的には音声素片の開始タイミングおよび継続時間）を示すデータトラックである。ピッチデータトラック６５２は、合成すべき歌唱音声のピッチを示すデータトラックである。その他のデータトラック６５３は、ダイナミックス情報などのピッチ以外の合成パラメータを曲の進行に合わせて時系列化したデータトラックである。
【００５０】
歌唱合成スコア生成部６４１は、音韻データトラック６５１を生成するための手段として、音素列／音声素片変換手段と、タイミング合わせ手段とを有している。音素列／音声素片変換手段は、歌詞データが示す音素列を音声素片の列に変換する。通常、音素列において子音−母音−子音というように音韻が変化する場合、音素列／音声素片変換手段は、子音から母音への遷移部分の音声素片ＣＶと、母音の伸ばし音の音声素片Ｖと、母音から子音への遷移部分の音声素片ＶＣとを用いて、ＣＶ−Ｖ−ＶＣなる音声素片列を構成する。例えば歌詞データが示す音素列が［ｓａ−ｉ−ｔａ］である場合、音素列／音声素片変換手段は、これを＃ｓ、ｓ−ａ、ａ、ａ−ｉ、ｉ、ｉ−ｔ、ｔ−ａ、ａ＃という音声素片の列に変換する。ここで、＃ｓは、無音から子音ｓへの遷移部分である音声素片、ｓ−ａは子音ｓから母音ａへの遷移部分である音声素片である。他の音声素片もこれと同じ表記方法による。なお、音素列において子音−母音−子音というように音韻が変化する場合において音符長が短い場合には、音素列／音声素片変換手段は、ＣＶ−ＶＣなる音声素片列への変換を行ってもよい。
【００５１】
タイミング合わせ手段は、歌詞データから得られた各音声素片の発生時刻を決定し、それらの時刻において各音声素片を発生させることを示す音韻データトラック６５１を生成する。その際、歌唱合成スコア生成部６４１は、発生させる音声素片の音声素片データ内のセグメンテーションデータを参照して、音声素片における母音部分の開始時刻を求め、音符データが示すノートオンタイミングにおいて音声素片における母音部分の開始されるように各音声素片の発生時刻を決定する。
【００５２】
歌唱合成スコア生成部６４１は、基本的には音符データに従い、また、ビブラートやポルタメント、レガートの指示がある場合にはそれに従い、ピッチデータトラック６５２を生成する。ただし、ピッチデータトラックを音符データ通りのものにすると、ピッチの変化が階段状になり、不自然な歌唱音声になるので、本実施形態では、音符の切り換わり区間においてピッチが自然な動きをするように、ピッチデータトラック６５２が示すピッチに変化を与える。その他のデータトラック６５３は、曲データ６２に含まれるダイナミックス情報等に基づいて作成される。
【００５３】
素片選択部６４２、ピッチ変換部６４３および素片連結部６４４は、歌唱合成スコア６５０に従って歌唱音声の波形を示すデジタル音声信号を生成する役割を担っている。ここで、歌唱合成スコア６５０からデジタル音声信号を生成する処理は、１曲分の歌唱合成スコア６５０の生成が完了した後に開始するようにしても良いし、歌唱合成スコア６５０の生成開始から少し遅れて開始されるようにしても良い。
【００５４】
素片選択部６４２は、歌唱合成スコア６５０の音韻データトラック６５１において指定されている音声素片の音声素片データを音声素片データベース６３からロードし、その波形データをピッチ変換部６４３に引き渡すプログラムである。本実施形態における素片選択部６４２は、音声素片データに含まれる波形データをピッチ変換部６４３に引き渡す際に、その継続時間長を歌唱合成スコア６５０において指定された音声素片の継続時間長に合わせる機能を備えている。
【００５５】
ピッチ変換部６４３は、ピッチデータトラック６５２において指定されたピッチに対応した波形データとなるように、素片選択部６４２から引き渡された音声素片の波形データのピッチ変換を行うプログラムである。さらに詳述すると、例えば音声素片の波形データがフレーム毎に振幅スペクトラム列および位相スペクトラム列を含むとともにスペクトラムエンベロープデータを含む場合、ピッチ変換部６４３は、ピッチデータトラック６５２において指定されたピッチに対応するように、各フレームにおけるスペクトラムエンベロープを周波数軸方向に伸長または圧縮する。その際、基音および倍音に相当する周波数の近傍は、元のスペクトラムの概形が保たれるように、非線形な圧縮または伸長を行い、ピッチ変換後の振幅スペクトラムとする。また、ピッチ変換後においてもピッチ変換前のスペクトラムエンベロープが維持されるように、非線形な圧縮または伸張を経た振幅スペクトラムのレベル調整を行う。位相スペクトラムに関しては、元の位相スペクトラムをそのままピッチ変換後の位相スペクトラムとしてもよいが、振幅スペクトラムの周波数軸方向の圧縮または伸張に合わせて補正を行ったものをピッチ変換後の位相スペクトラムとする方が好ましい。
【００５６】
素片連結部６４４は、フレーム毎にピッチ変換部６４３の処理を経た波形データを時間領域のデジタル音声信号に変換し、１／２フレームずつオーバラップさせて繋ぎ合わせ、歌唱データとして出力するプログラムである。本実施形態では、歌唱合成プログラム６４とともに透かし埋め込みプログラム６７が実行されるとき、素片連結部６４４は、歌唱データと、各フレームにおけるスペクトラムエンベロープを示すスペクトラムエンベロープデータと、各フレームにおける平均エネルギーＰｓを示す情報を透かし埋め込みプログラム６７に引き渡すようになっている。
なお、以上説明した歌唱合成プログラム６４の詳細については特許文献４を参照されたい。
【００５７】
図７は透かし埋め込みプログラム６７の構成を示すブロック図である。なお、この図において、上記第１実施形態の埋め込み装置１００の各部と対応する部分には共通の符号が使用されている。図７において、上記第１実施形態と同様、擬似雑音生成部１１０Ａは、電子透かし情報（例えば著作権情報）のシンボル列を構成するシンボル“０”および“１”に対応した各擬似雑音信号を生成するものである。ここで、擬似雑音信号は、そのスペクトラムが歌唱データのスペクトラムと干渉しないように、歌唱データのスペクトラムとの相互相関の低いものであることが望まれる。そして、歌唱データのスペクトラム分布は、歌唱データの合成に用いる音声素片データの発声者に依存する。そこで、本実施形態における擬似雑音生成部１１０Ａは、例えば男性の音声素片データのグループ、女性の音声素片データのグループ等の音声素片データのグループ毎に、それらの音声素片データのスペクトラムとの干渉が少なく、それらの音声素片データを用いて合成された歌唱データに埋め込むのに適した擬似雑音信号を記憶している。擬似雑音生成部１１０Ａは、歌唱合成に用いられる音声素片データのグループを特定する情報を歌唱合成プログラム６４から受け取り、シンボルの歌唱データへの埋め込み時には、埋め込み対象であるシンボルを示す擬似雑音信号であって、歌唱合成プログラム６４からの情報が示すグループのために用意された擬似雑音信号を埋め込み雑音合成部１２０Ａに出力する。
【００５８】
埋め込み雑音合成部１２０Ａは、上記第１実施形態における埋め込み雑音合成部１２０から窓掛け部１２１、時間／周波数変換部１２２、絶対値算出部１２３、スペクトラムエンベロープ算出部１２４を削除した構成となっている。本実施形態における時間／周波数逆変換部１２５は、歌唱合成プログラム６４の素片連結部６４４（図６参照）がフレーム毎に出力するスペクトラムエンベロープデータを受け取り、このスペクトラムエンベロープデータにＩＦＦＴを施し、畳み込み部１２６に供給するフィルタ係数列を生成する。また、ゲイン算出部１２７は、同素片連結部６４４がフレーム毎に出力する歌唱音声の平均エネルギーＰｓを示す情報を受け取り、前掲式（１）にこの平均エネルギーＰｓを代入することにより乗算器１２８に供給するゲインαを算出する。他の点は、上記第１実施形態における埋め込み雑音合成部１２０と同様である。
【００５９】
埋め込み雑音合成部１２０Ａは、以上の構成により、フレーム毎に歌唱データと同じスペクトラムエンベロープを持った埋め込み雑音信号を埋め込み対象のシンボルを示す擬似雑音信号を用いて合成する。そして、加算器１３０は、この埋め込み雑音信号を歌唱データに加算し、埋め込み済み歌唱データ６８としてＨＤＤ６に格納する。ユーザは、このＨＤＤ６に格納された埋め込み済み歌唱データ６８をインタフェース群５を介して例えばインターネット上のサーバにアップロードし、あるいは何らかの記録媒体に記録することができる。
【００６０】
図８は、以上説明した歌唱合成装置によって出力された埋め込み済み歌唱データから電子透かし情報（例えば著作権情報）を抽出する抽出装置２００Ａの構成を示すブロック図である。この抽出装置２００Ａは、上記第１実施形態における抽出装置２００の擬似雑音生成部２２０を擬似雑音生成部２２０Ａに置き換え、さらに音声認識部２４０を追加した構成となっている。擬似雑音生成部２２０Ａは、例えば男性の音声素片データのグループ、女性の音声素片データのグループ等の音声素片データのグループ毎に、上記透かし埋め込みプログラム６７の擬似雑音生成部１１０Ａが記憶しているものと同じ擬似雑音信号を記憶している。音声認識部２４０は、バッファ２１０に蓄積された埋め込み済み歌唱データに音声認識処理を施し、埋め込み済み歌唱データがいずれのグループの音声素片データを用いて合成されたかを判定し、該当するグループを擬似雑音生成部２２０Ａに通知する。擬似雑音生成部２２０Ａは、埋め込み対象であるシンボルを示す擬似雑音信号として、音声認識部２４０から通知されたグループのものを選択し、時間／周波数変換部２２１に供給する。他の点は、上記第１実施形態における抽出装置２００と同様である。
【００６１】
本実施形態によれば、上記第１実施形態の効果に加えて、さらに次の効果が得られる。まず、透かし埋め込みプログラム６７に関しては、歌唱合成プログラム６４が出力するスペクトラムエンベロープデータや平均エネルギーＰｓに関する情報を利用して埋め込み雑音信号を合成するので、埋め込み雑音信号の合成のための演算量を少なくすることができるという効果が得られる。また、歌唱合成に用いられる音声素片のスペクトラムと干渉しないスペクトラム分布を持った擬似雑音信号を生成して歌唱データに埋め込むようにしているので、抽出装置２００Ａ側において安定して電子透かし情報の抽出を行うことができるという効果が得られる。
【００６２】
＜他の実施形態＞
以上、この発明の第１および第２実施形態を説明したが、この発明には、他にも各種の実施形態が考えられる。例えば次の通りである。
【００６３】
（１）上記第１および第２実施形態では、電子透かし情報の抽出時に、擬似雑音生成部２２０または２２０Ａが出力する擬似雑音信号を時間／周波数変換部２２１および複素共役化部２２２に処理させるようにした。しかし、予め各種の擬似雑音信号を生成して、時間／周波数変換部２２１および複素共役化部２２２に処理させた結果得られる複素スペクトラム列をメモリに記憶させておき、電子透かし情報の抽出時には、このメモリに記憶された複素スペクトラム列を相関算出部２３０に供給するように構成してもよい。この態様では、抽出装置２００から時間／周波数変換部２２１および複素共役化部２２２を削除することができる。
【００６４】
（２）上記第２実施形態では、歌唱合成装置に同実施形態による電子透かし情報の埋め込み機能を持たせたが、歌唱ではない通常の話声を合成する音声合成装置に同実施形態による電子透かし情報の埋め込み機能を持たせてもよい。
【００６５】
（３）上記第１および第２実施形態において、抽出装置２００側において埋め込み済み合成信号から電子透かし情報のシンボルを抽出する際の時間精度を高めるために、埋め込み装置１００側において電子透かし情報であるデータシンボルを示す擬似雑音信号とともに抽出装置２００側において内容が既知である同期用のパイロットシンボルを示す擬似雑音信号を合成音声信号に埋め込むようにしてもよい。この場合、抽出装置２００側では、埋め込み済み合成音声信号内においてパイロットシンボルを示す擬似雑音信号が埋め込まれた区間を探索する制御を行い、この探索により求めた区間から電子透かし情報であるデータシンボルを抽出すればよい。パイロットシンボルを示す擬似雑音信号を合成音声信号に埋め込む態様に関しては各種考えられるが、例えば帯域分割を利用してもよい。この態様では、埋め込み装置１００側では、データシンボルを示す擬似雑音信号およびパイロットシンボルを示す擬似雑音信号を互いにオーバラップしない高域と低域に帯域制限し、帯域制限された両擬似雑音信号を合成音声信号に埋め込んで伝送する。そして、抽出装置２００側では、埋め込み済み合成音声信号を高域と低域に分割し、一方の帯域の埋め込み済み合成音声信号内においてパイロットシンボル列の所在区間を探索し、他方の帯域の埋め込み済み合成音声信号においてパイロットシンボル列の所在区間に対応する区間からデータシンボルの抽出を行うのである。
【符号の説明】
【００６６】
１０……音声合成部、１００……埋め込み装置、２００，２００Ａ……抽出装置、１１０，２２０，１１０Ａ，２２０Ａ……擬似雑音生成部、１２０，１２０Ａ……埋め込み雑音合成部、１２１，２１１……窓掛け部、１２２，２１２，２２１……時間／周波数変換部、１２３……絶対値算出部、１２４……スペクトラムエンベロープ算出部、１２５……時間／周波数逆変換部、１２６……畳み込み部、１２７……ゲイン算出部、１２８……乗算器、１３０……加算器、２１０……バッファ、２１３……スペクトラム振幅平坦化部、２３１……同期化制御部、２３２……シンボル判定部、２４０……音声認識部、６４……歌唱合成プログラム、６７……透かし埋め込みプログラム、６８……埋め込み済み歌唱データ、６３……音声素片データベース、６４１……歌唱合成スコア生成部、６４２……素片選択部、６４３……ピッチ変換部、６４４……素片連結部、６５０……歌唱合成スコア。
【図１】
2010169766.tif 000003
【図２】
2010169766.tif 000004
【図３】
2010169766.tif 000005
【図４】
2010169766.tif 000006
【図５】
2010169766.tif 000007
【図６】
2010169766.tif 000008
【図７】
2010169766.tif 000009
【図８】
2010169766.tif 000010