(57)【特許請求の範囲】
【請求項１】
透かし情報を原一次元データに埋め込む方法であって、
（ａ）特定の絶対値を有する正負の値を不規則的に取る特定の正負系列と、前記原一次元データと、を乗算する演算と等価な演算を行うことによってスペクトル拡散を実行し、これによって、第１の拡散一次元データを生成する工程と、
（ｂ）前記第１の拡散一次元データに関して直交変換を行う工程と、
（ｃ）前記直交変換で得られた変換係数の特定の周波数成分の値を、前記透かし情報と対応付けるように調整する工程と、
（ｄ）前記調整済みの周波数成分を逆直交変換することによって、第２の拡散一次元データを生成する工程と、
（ｅ）前記特定の正負系列を用いて前記第２の拡散一次元データをスペクトル逆拡散することによって、前記透かし情報が埋め込まれた電子透かし一次元データを生成する工程と、
を備える電子透かしの埋め込み方法。
【請求項２】
請求項１記載の電子透かしの埋め込み方法であって、
前記工程（ａ）および工程（ｅ）は、特定の周波数発生鍵に応じて前記特定の正負系列を発生する工程をそれぞれ含む、
電子透かしの埋め込み方法。
【請求項３】
請求項１または２記載の電子透かしの埋め込み方法であって、
前記直交変換は、前記第１の拡散一次元データの中の２Ｍ個（Ｍは２以上の整数）のデータで構成される各フレーム毎に、所定の窓関数を用いた変換を行う変形離散コサイン変換であり、
前記第１の拡散一次元データは、隣接するフレームがＭ個のデータ区間ずつ互いにずれた位置を取るように、前記変形離散コサイン変換において複数のフレームに区分される、
電子透かしの埋め込み方法。
【請求項４】
請求項３記載の電子透かしの埋め込み方法であって、
前記透かし情報と対応付けられる前記特定の周波数成分は、ほぼＭ／２に相当する周波数成分である、
電子透かしの埋め込み方法。
【請求項５】
請求項１ないし４のいずれかに記載の電子透かしの埋め込み方法であって、
前記工程（ｃ）は、
（ｉ）所定の整数ｋd で前記特定の周波数成分を量子化することによって第１の量子化値を生成する工程と、
（ｉｉ）前記第１の量子化値の最下位ビットを前記透かし情報のビット値と対応付けるように調整することによって第２の量子化値を生成する工程と、
（ｉｉｉ）前記第２の量子化値に前記所定の整数ｋd を乗じることによって前記調整済みの周波数成分を生成する工程と、
を含む、電子透かしの埋め込み方法。
【請求項６】
透かし情報を原一次元データに埋め込む装置であって、
特定の絶対値を有する正負の値を不規則的に取る特定の正負系列と、前記原一次元データと、を乗算する演算と等価な演算を行うことによってスペクトル拡散を実行し、これによって、第１の拡散一次元データを生成するスペクトル拡散部と、
前記第１の拡散一次元データに関して直交変換を行う直交変換部と、
前記直交変換で得られた変換係数の特定の周波数成分の値を、前記透かし情報と対応付けるように調整する埋め込み部と、
前記調整済みの周波数成分を逆直交変換することによって、第２の拡散一次元データを生成する逆変換部と、
前記特定の正負系列を用いて前記第２の拡散一次元データをスペクトル逆拡散することによって、前記透かし情報が埋め込まれた電子透かし一次元データを生成する逆拡散部と、
を備える電子透かしの埋め込み装置。
【請求項７】
請求項６記載の電子透かしの埋め込み装置であって、
前記スペクトル拡散部は、特定の周波数発生鍵に応じて前記特定の正負系列を発生する正負系列発生部を含む、
電子透かしの埋め込み装置。
【請求項８】
請求項６または７記載の電子透かしの埋め込み装置であって、
前記直交変換部は、前記第１の拡散一次元データの中の２Ｍ個（Ｍは２以上の整数）のデータで構成される各フレーム毎に、所定の窓関数を用いた変形離散コサイン変換を実行し、
前記第１の拡散一次元データは、隣接するフレームがＭ個のデータ区間ずつ互いにずれた位置を取るように、前記変形離散コサイン変換において複数のフレームに区分される、
電子透かしの埋め込み装置。
【請求項９】
請求項８記載の電子透かしの埋め込み装置であって、
前記透かし情報と対応付けられる前記特定の周波数成分は、ほぼＭ／２に相当する周波数成分である、
電子透かしの埋め込み装置。
【請求項１０】
請求項６ないし９のいずれかに記載の電子透かしの埋め込み装置であって、
前記埋め込み部は、
所定の整数ｋd で前記特定の周波数成分を量子化することによって第１の量子化値を生成する量子化部と、
前記第１の量子化値の最下位ビットを前記透かし情報のビット値と対応付けるように調整することによって第２の量子化値を生成するビット調整部と、
前記第２の量子化値に前記所定の整数ｋd を乗じることによって前記調整済みの周波数成分を生成する逆量子化部と、
を含む、電子透かしの埋め込み装置。
【請求項１１】
透かし情報を原一次元データに埋め込むためのコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
特定の絶対値を有する正負の値を不規則的に取る特定の正負系列と、前記原一次元データと、を乗算する演算と等価な演算を行うことによってスペクトル拡散を実行し、これによって、第１の拡散一次元データを生成するスペクトル拡散機能と、
前記第１の拡散一次元データに関して直交変換を行う直交変換機能と、
前記直交変換で得られた変換係数の特定の周波数成分の値を、前記透かし情報と対応付けるように調整する埋め込み機能と、
前記調整済みの周波数成分を逆直交変換することによって、第２の拡散一次元データを生成する逆変換機能と、
前記特定の正負系列を用いて前記第２の拡散一次元データをスペクトル逆拡散することによって、前記透かし情報が埋め込まれた電子透かし一次元データを生成する逆拡散機能と、
をコンピュータに実現させるためのコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１２】
透かし情報が埋め込まれた電子透かし一次元データを記録したコンピュータ読み取り可能な記録媒体であって、
特定の絶対値を有する正負の値を不規則的に取る特定の正負系列と、前記原一次元データと、を乗算する演算と等価な演算を行うことによってスペクトル拡散を実行し、これによって、第１の拡散一次元データを生成し、
前記第１の拡散一次元データに関して直交変換を行い、
前記直交変換で得られた変換係数の特定の周波数成分の値を、前記透かし情報と対応付けるように調整し、
前記調整済みの周波数成分を逆直交変換することによって、第２の拡散一次元データを生成し、
前記特定の正負系列を用いて前記第２の拡散一次元データをスペクトル逆拡散することによって、前記透かし情報が埋め込まれた電子透かし一次元データを生成する、
ことによって生成された前記電子透かし一次元データを記録したコンピュータ読み取り可能な記録媒体。
【請求項１３】
透かし情報が埋め込まれた電子透かし一次元データから前記透かし情報を抽出する方法であって、
（ａ）特定の絶対値を有する正負の値を不規則的に取る特定の正負系列と、前記電子透かし一次元データと、を乗算する演算と等価な演算を行うことによってスペクトル拡散を実行し、これによって、第１の拡散電子透かし一次元データを生成する工程と、
（ｂ）前記第１の拡散電子透かし一次元データに関して直交変換を行う工程と、
（ｃ）前記直交変換で得られた変換係数の特定の周波数成分の値から、前記特定の周波数成分の値に対応付けられた前記透かし情報を抽出する工程と、
を備える電子透かしの抽出方法。
【請求項１４】
透かし情報が埋め込まれた電子透かし一次元データから前記透かし情報を抽出する装置であって、
特定の絶対値を有する正負の値を不規則的に取る特定の正負系列と、前記電子透かし一次元データと、を乗算する演算と等価な演算を行うことによってスペクトル拡散を実行し、これによって、第１の拡散電子透かし一次元データを生成するスペクトル拡散部と、
前記第１の拡散電子透かし一次元データに関して直交変換を行う直交変換部と、
前記直交変換で得られた変換係数の特定の周波数成分の値から、前記特定の周波数成分の値に対応付けられた前記透かし情報を抽出するデコード部と、
を備える電子透かしの抽出装置。
【請求項１５】
透かし情報が埋め込まれた電子透かし一次元データから前記透かし情報を抽出するためのコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
特定の絶対値を有する正負の値を不規則的に取る特定の正負系列と、前記電子透かし一次元データと、を乗算する演算と等価な演算を行うことによってスペクトル拡散を実行し、これによって、第１の拡散電子透かし一次元データを生成するスペクトル拡散機能と、
前記第１の拡散電子透かし一次元データに関して直交変換を行う直交変換機能と、
前記直交変換で得られた変換係数の特定の周波数成分の値から、前記特定の周波数成分の値に対応付けられた前記透かし情報を抽出するデコード機能と、
をコンピュータに実現させるためのコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１６】
透かし情報が埋め込まれた電子透かし一次元データを記録したコンピュータ読み取り可能な記録媒体であって、
特定の絶対値を有する正負の値を不規則的に取る特定の正負系列と、前記電子透かし一次元データと、を乗算する演算と等価な演算を行うことによってスペクトル拡散を実行し、これによって、第１の拡散電子透かし一次元データを生成し、
前記第１の拡散電子透かし一次元データに関して直交変換を行い、
前記直交変換で得られた変換係数の特定の周波数成分の値から、前記特定の周波数成分の値に対応付けられた前記透かし情報を抽出する、
ことによって前記透かし情報が抽出可能な前記電子透かし一次元データを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、電子透かし技術に関し、特に、音声データなどの一次元データに透かし情報を埋め込む技術、および、透かし情報が埋め込まれた一次元データから透かし情報を抽出する技術に関する。
【０００２】
【従来の技術】
デジタル音声データを生成する方法として、ＰＣＭ（PCM：Pulse Code Modulation）が良く用いられている。ＰＣＭでは、まずアナログ音声信号を標本化し、量子化した後に、線形パルス符号化を行うことによってデジタル音声データが生成される。通常の音楽ソフトは、サンプリングレート４４．１ｋＨｚ、量子化幅１６ビットのＰＣＭによりデジタル化されていることが多い。この方法によると、人間の可聴周波数帯域の音声を良好に再現できるため、非常に高い音質を保ったままで音声をデジタル化することができる。
【０００３】
ところで、デジタル音声データは容易に完全な形式で複製できる（すなわち、忠実な再現性を有している）という特徴がある。このような音声データの忠実な再現性はデジタル化の大きな利点である反面、その著作権保護の重要性がより一層高まってくる。この対策として、近年では、いわゆる「電子透かし」が利用されている。電子透かしは、人間が知覚できない形式で、著作権情報などの透かし情報を音声データの中に電子的に埋め込む技術である。
【０００４】
【発明が解決しようとする課題】
しかし、従来の電子透かし技術では、透かし情報の埋め込みに起因する雑音が大きいため、例えば音楽ソフトでは音質がかなり劣化してしまい、高品質なデータには適していないという問題があった。また、透かし情報の秘匿性が低く、第三者が透かし情報を比較的容易に抽出できてしまうという問題もあった。このような問題は、音声データへの電子透かしに限らず、計測データや、デジタル制御のフィードバック信号等の他の種々の一次元データに電子透かしを行う場合にも共通する問題であった。
【０００５】
この発明は、従来技術における上述の課題を解決するためになされたものであり、透かし情報の埋め込みに起因する雑音の発生を緩和することができ、また、透かし情報の秘匿性が高い技術を提供することを目的とする。
【０００６】
【課題を解決するための手段およびその作用・効果】
上述の課題の少なくとも一部を解決するため、本発明では、透かし情報を原一次元データに埋め込む際に、まず、特定の絶対値を有する正負の値を不規則的に取る特定の正負系列と、前記原一次元データと、を乗算する演算と等価な演算を行うことによってスペクトル拡散を実行し、これによって、第１の拡散一次元データを生成する。次に、前記第１の拡散一次元データに関して直交変換を行う。そして、前記直交変換で得られた変換係数の特定の周波数成分の値を、前記透かし情報と対応付けるように調整する。また、前記調整済みの周波数成分を逆直交変換することによって、第２の拡散一次元データを生成する。そして、前記特定の正負系列を用いて前記第２の拡散一次元データをスペクトル逆拡散することによって、前記透かし情報が埋め込まれた電子透かし一次元データを生成する。
【０００７】
上記発明によれば、透かし情報を埋め込む前に、原一次元データに対して特定の正負系列を用いたスペクトル拡散を行っているので、この特定の正負系列を知らなければ、電子透かし一次元データから透かし情報を抽出することは困難である。従って、スペクトル拡散を行うことによって、透かし情報の秘匿性を高めることができる。また、本発明では、直交変換係数の特定の周波数成分の値を透かし情報と対応付けているので、逆直交変換された一次元データにおいて発生する透かし情報による雑音を緩和することができれる。
【０００８】
なお、前記特定の正負系列は、特定の周波数発生鍵に応じて発生させることが好ましい。
【０００９】
こうすれば、特定の正負系列のすべてを保存しておく必要がなく、周波数発生鍵を保存しておけば、同一のスペクトル拡散／逆拡散処理を実行することができる。
【００１０】
なお、前記直交変換は、前記第１の拡散一次元データの中の２Ｍ個（Ｍは２以上の整数）のデータで構成される各フレーム毎に、所定の窓関数を用いた変換を行う変形離散コサイン変換であり、
前記第１の拡散一次元データは、隣接するフレームがＭ個のデータ区間ずつ互いにずれた位置を取るように、前記変形離散コサイン変換において複数のフレームに区分されるようにしてもよい。
【００１１】
このような変形離散コサイン変換を用いると、フレーム歪みを小さく抑えることができるので、雑音の発生をさらに緩和することができる。
【００１２】
また、前記透かし情報と対応付けられる前記特定の周波数成分は、ほぼＭ／２に相当する周波数成分であることが好ましい。
【００１３】
こうすれば、雑音の発生をさらに緩和することができる。
【００１４】
なお、特定の周波数成分への透かし情報の埋め込みは、
所定の整数ｋd で前記特定の周波数成分を量子化することによって第１の量子化値を生成し、
前記第１の量子化値の最下位ビットを前記透かし情報のビット値と対応付けるように調整することによって第２の量子化値を生成し、
前記第２の量子化値に前記所定の整数ｋd を乗じることによって前記調整済みの周波数成分を生成する、ことによって実行するようにしてもよい。
【００１５】
整数ｋd の値を大きくすれば、電子透かし一次元データに或る程度のビット誤りが生じても、正しい透かし情報を抽出できる可能性が高まるという利点がある。
【００１６】
一方、本発明において、透かし情報が埋め込まれた電子透かし一次元データから前記透かし情報を抽出する際には、まず、特定の絶対値を有する正負の値を不規則的に取る特定の正負系列と、前記電子透かし一次元データと、を乗算する演算と等価な演算を行うことによってスペクトル拡散を実行し、これによって、第１の拡散電子透かし一次元データを生成する。次に、前記第１の拡散電子透かし一次元データに関して直交変換を行う。そして、前記直交変換で得られた変換係数の特定の周波数成分の値から、前記特定の周波数成分の値に対応付けられた前記透かし情報を抽出する。
【００１７】
こうすれば、上述した埋め込み処理によって埋め込まれた透かし情報を一次元データから抽出することが可能である。
【００１８】
なお、本発明の態様としては、以下のような種々のものがある。
（ａ）透かし情報を原一次元データに埋め込む方法。
（ｂ）透かし情報を原一次元データに埋め込む装置。
（ｃ）透かし情報を原一次元データに埋め込むためのコンピュータプログラムを記録した記録媒体。
（ｄ）透かし情報が埋め込まれた電子透かし一次元データを記録した記録媒体。
（ｅ）透かし情報を電子透かし一次元データから抽出する方法。
（ｆ）透かし情報を電子透かし一次元データから抽出する装置。
（ｇ）透かし情報を電子透かし一次元データから抽出するためのコンピュータプログラムを記録した記録媒体。
【００１９】
【発明の他の態様】
この発明は、以下のような他の態様も含んでいる。第１の態様は、コンピュータに上記の発明の各工程または各部の機能を実現させるコンピュータプログラムを通信経路を介して供給するプログラム供給装置としての態様である。こうした態様では、プログラムをネットワーク上のサーバなどに置き、通信経路を介して、必要なプログラムをコンピュータにダウンロードし、これを実行することで、上記の方法や装置を実現することができる。
【００２０】
【発明の実施の形態】
Ａ．装置の全体構成：
以下、本発明の実施の形態を実施例に基づいて説明する。図１は、本発明の一実施例としての電子透かし処理装置の構成を示すブロック図である。この電子透かし処理装置は、ＣＰＵ２２と、ＲＯＭおよびＲＡＭを含むメインメモリ２４と、フレームメモリ２６と、キーボード３０と、マウス３２と、表示装置３４と、ハードディスク３６と、モデム３８と、これらの各要素を接続するバス４０と、を備えるコンピュータである。なお、図１では各種のインターフェイス回路は省略されている。モデム３８は、図示しない通信回線を介してコンピュータネットワークに接続されている。コンピュータネットワークの図示しないサーバは、通信回線を介してコンピュータプログラムを画像処理装置に供給するプログラム供給装置としての機能を有する。
【００２１】
メインメモリ２４には、電子透かし埋め込み部４２と、電子透かし抽出部４４との機能をそれぞれ実現するためのコンピュータプログラムが格納されている。これらの各部４２，４４の機能については後述する。
【００２２】
これらの各部４２，４４の機能を実現するコンピュータプログラムは、フレキシブルディスクやＣＤ−ＲＯＭ等の、コンピュータ読み取り可能な記録媒体に記録された形態で提供される。コンピュータは、その記録媒体からコンピュータプログラムを読み取って内部記憶装置または外部記憶装置に転送する。あるいは、通信経路を介してコンピュータにコンピュータプログラムを供給するようにしてもよい。コンピュータプログラムの機能を実現する時には、内部記憶装置に格納されたコンピュータプログラムがコンピュータのマイクロプロセッサによって実行される。また、記録媒体に記録されたコンピュータプログラムをコンピュータが読み取って直接実行するようにしてもよい。
【００２３】
この明細書において、コンピュータとは、ハードウェア装置とオペレーションシステムとを含む概念であり、オペレーションシステムの制御の下で動作するハードウェア装置を意味している。また、オペレーションシステムが不要でアプリケーションプログラム単独でハードウェア装置を動作させるような場合には、そのハードウェア装置自体がコンピュータに相当する。ハードウェア装置は、ＣＰＵ等のマイクロプロセッサと、記録媒体に記録されたコンピュータプログラムを読み取るための手段とを少なくとも備えている。コンピュータプログラムは、このようなコンピュータに、上述の各手段の機能を実現させるプログラムコードを含んでいる。なお、上述の機能の一部は、アプリケーションプログラムでなく、オペレーションシステムによって実現されていても良い。
【００２４】
なお、この発明における「記録媒体」としては、フレキシブルディスクやＣＤ−ＲＯＭ、光磁気ディスク、ＩＣカード、ＲＯＭカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置（ＲＡＭやＲＯＭなどのメモリ）および外部記憶装置等の、コンピュータが読取り可能な種々の媒体を利用できる。
【００２５】
Ｂ．透かし情報の埋め込み処理：
図２は、電子透かし埋め込み部４２の機能を示すブロック図である。電子透かし埋め込み部４２は、第１のＰＮ系列発生部５２と、第１の乗算器５４と、フレーム抽出部５６と、ＭＤＣＴ部（変形離散コサイン変換部）５８と、埋め込み部６０と、ＩＭＤＣＴ部（変形離散コサイン逆変換部）６２と、フレーム再生部６４と、第２の乗算器６６と、第２のＰＮ系列発生部６８と、の機能を有している。
【００２６】
なお、第１のＰＮ系列発生部５２と第１の乗算器５４は、スペクトル拡散を行うスペクトル拡散部に相当する。また、フレーム抽出部５６とＭＤＣＴ部５８は、直交変換を行う直交変換部に相当し、ＩＭＤＣＴ部６２とフレーム再生部６４は逆交変換を行う逆変換部に相当する。さらに、第２の乗算器６６と第２のＰＮ系列発生部６８は、スペクトル逆拡散を行う逆拡散部に相当する。
【００２７】
ＰＮ系列発生部５２，６８は、＋１と−１の値をランダムに取る２値のＰＮ系列（正負系列）ｇ（ｔ）を発生する。ＰＮ系列ｇ（ｔ）のランダムなパターンは、ＰＮ系列発生部５２，６８に入力されるＰＮ系列発生鍵ｋs （ｋs は整数）の値に応じて決定される。すなわち、ＰＮ系列発生鍵ｋs の値が同一であれば、２つのＰＮ系列発生部５２，６８は同一のパターンを有するＰＮ系列ｇ（ｔ）を発生する。ＰＮ系列発生部５２，６８としては、例えば、Ｃ言語の標準の疑似乱数発生関数を利用することができ、この際、ＰＮ系列発生鍵ｋs は乱数発生の種（seed）として関数に入力される。また、発生した乱数の最下位ビットが１のときにはそのビット値「１」をそのままＰＮ系列ｇ（ｔ）として出力し、一方、最下位ビットが０のときには−１をＰＮ系列ｇ（ｔ）として出力する。こうすれば、＋１と−１の値をランダムに取る２値のＰＮ系列ｇ（ｔ）を生成することができる。
【００２８】
ＰＮ系列発生鍵ｋs を用いる理由は次の通りである。すなわち、スペクトル拡散に用いられるＰＮ系列は、一般に膨大な量になる。しかも、透かし情報を抽出するためには，このＰＮ列と同一のものが必要になるので、ＰＮ系列の全体を完全に保持（保存）しておく必要がある。そこで、本実施例では、疑似乱数発生器（例えばＣ言語の標準関数である疑似乱数発生関数）を利用し、それに乱数鍵ｋs を設定して乱数を発生させることによって、膨大な量のＰＮ系列全体を保持すること無しに、同一のＰＮ系列を発生できるようにしている。
【００２９】
図３は、透かし情報の埋め込み処理の手順を示すフローチャートである。ステップＳ１では、第１の乗算器５４が、原音声信号ｓ（ｔ）にＰＮ系列ｇ（ｔ）を乗算することによって第１の拡散音声信号ｘ（ｔ）を生成する。この演算は、次の数式１で示される。
【００３０】
【数１】
0003986150.tif 000002
【００３１】
数式１で示される演算は、一般にスペクトル拡散の直接拡散方式と呼ばれている処理に相当する。図４は、スペクトル拡散の原理を示す説明図である。図４（ａ）は原音声信号ｓ（ｔ）を示し、図４（ｂ）はＰＮ系列ｇ（ｔ）を、また、図４（ｃ）は第１の拡散音声信号ｘ（ｔ）を示している。原音声信号ｓ（ｔ）は、例えばアナログ音声信号をサンプリングレート４４．１ｋＨｚ、量子化幅１６ビットでデジタル化して得られたデジタル音声信号である。本実施例において使用されるＰＮ系列ｇ（ｔ）（図４（ｂ））は、原音声信号ｓ（ｔ）のサンプリング周波数と等しい周波数で変化する信号である。従って、これらの信号ｓ（ｔ），ｇ（ｔ）を乗算することによって得られる第１の拡散音声信号ｘ（ｔ）（図４（ｃ））は、原音声信号ｓ（ｔ）と等しい周波数を有しており、一部の信号値の符号が原音声信号ｓ（ｔ）から反転している信号である。なお、図４（ｄ）に示すように、同一のＰＮ系列ｇ（ｔ）を第１の拡散音声信号ｘ（ｔ）に再度乗算すると、原音声信号ｓ（ｔ）を再現することができる。この理由は、ＰＮ系列ｇ（ｔ）は＋１と−１を取る２値信号なので、同一のＰＮ系列ｇ（ｔ）を２乗した値ｇ2（ｔ）は１に等しくなるからである。このように、ＰＮ系列ｇ（ｔ）を再度乗ずる処理は、「逆拡散」と呼ばれている。
【００３２】
ところで、スペクトル拡散は、主に通信分野において利用されている技術である。但し、通信分野では、原信号ｓ（ｔ）としてはデジタル変調された変調信号が用いられる。また、ＰＮ系列ｇ（ｔ）としては、原信号ｓ（ｔ）の周波数の数十倍以上の高周波数の系列が使用されるので、拡散信号ｘ（ｔ）のスペクトル分布は原信号ｓ（ｔ）に比べて数十倍以上に拡散される。送信器は拡散信号ｘ（ｔ）を発信し、受信器は図４（ｄ）に示すように、受信した拡散信号ｘ（ｔ）に同一のＰＮ信号ｇ（ｔ）を乗算することによって原信号ｓ（ｔ）を再生する。通信経路で混入した妨害波や干渉波のスペクトル分布は、逆拡散によって数十倍に拡散されるので、スペクトル拡散通信は妨害波や干渉波の排除能力を高めることができる。
【００３３】
本実施例では、ＰＮ系列ｇ（ｔ）が原音声信号ｓ（ｔ）のサンプリング周波数と等しい周波数で変化するので、厳密な意味ではスペクトル分布は拡散されていない。しかし、この明細書では「スペクトル拡散」という用語を、通常よりも広い意味で用いており、ＰＮ系列ｇ（ｔ）が原音声信号ｓ（ｔ）のサンプリング周波数と等しい周波数で変化する場合にも、「スペクトル拡散」と呼んでいる。なお、本発明による処理においても、ＰＮ系列ｇ（ｔ）の周波数を原音声信号ｓ（ｔ）のサンプリング周波数の整数倍に設定することが可能である。
【００３４】
図４（ａ）〜（ｄ）に示すスペクトル拡散および逆拡散は、ＰＮ系列ｇ（ｔ）を鍵として用いて、原音声信号ｓ（ｔ）を暗号化および復号化しているものと考えることができる。従って、スペクトル拡散を行うことによって、音声信号に埋め込まれる透かし情報の秘匿性を高めることができる。この点についてはさらに後述する。
【００３５】
図３のステップＳ２では、フレーム抽出部５６が第１の拡散音声信号ｘ（ｔ）の中からｉ番目（初期値はｉ＝１）のフレームを抽出し、ＭＤＣＴ部５８がそのフレームについて変形離散コサイン変換（ＭＤＣＴ）を実行する。ここで、「フレーム」とは、変形離散コサイン変換の対象となる信号区間を意味しており、本実施例では１フレームに２Ｍ個（Ｍは２以上の整数）の信号値が含まれる。ｉ番目のフレームにおけるＭＤＣＴ係数Ｘi（ｋ） は次の数式２で与えられる。
【００３６】
【数２】
0003986150.tif 000003
【００３７】
ここで、ｋは周波数を示す整数値である。また、数式２の右辺の窓関数ｗ（ｎ）とＭＤＣＴ基底ｃ（ｋ，ｎ）は、それぞれ数式３と数式４で与えられる。
【００３８】
【数３】
0003986150.tif 000004
【００３９】
【数４】
0003986150.tif 000005
【００４０】
数式２から解るように、各フレームの２Ｍ個の信号値ｘ（ｎ＋ｉＭ）は、Ｍ個の変換係数Ｘi（ｋ） （ｋ＝０〜（Ｍ−１））に変換される。なお、ｋ＝０の変換係数Ｘi （０）は直流成分、それ以外の変換係数Ｘi （ｋ）（ｋ≠０）は交流成分と呼ばれている。
【００４１】
図５は、変形離散コサイン変換に使用されるフレームと窓関数ｗ（ｎ）との関係を示す説明図である。図５には、隣接する２つのフレームの位置関係と、各フレームに適用される窓関数ｗ（ｎ）の形状とが示されている。このように、各フレームは、Ｍ個分の信号値ｘ（ｔ）に相当する区間ずつ順次ずれた位置に設定されるので、隣接する２つのフレームには、共通するＭ個の信号値ｘ（ｔ）が含まれている。従って、１フレームに含まれる実効的（実質的）な信号値の個数はＭである。
【００４２】
窓関数ｗ（ｎ）は、各フレームの中央でピークを有する正弦関数である。なお、窓関数ｗ（ｎ）としては、正弦関数以外の関数を用いることも可能であり、一般には、変形離散コサイン変換とその逆変換とを可逆的に行えるような任意の関数を使用することができる。
【００４３】
なお、変形離散コサイン変換の代わりに、他の種々の直交変換（離散コサイン変換（ＤＣＴ）、離散フーリエ変換（ＤＦＴ）、アダマール変換等）を利用することができる。他の直交変換では、フレーム（「ブロック」とも呼ばれる）が互いに重複しないように設定される。一方、変形離散コサイン変換では、隣接するフレームが部分的に重複するようにフレームが設定されるので、周波数分離度を高くすることができ、かつ、フレーム歪み（ブロック歪み）を抑制することができるという利点がある。従って、変形離散コサイン変換を利用すると、他の直交変換を利用した場合に比べて、透かし情報の埋め込みに起因する音質の劣化を低減することができる。
【００４４】
図３のステップＳ３〜Ｓ６では、埋め込み部６０によって、変換係数の特定の周波数成分に透かし情報が埋め込まれる。透かし情報は複数のビットで構成されており、以下では、透かし情報の各ビットを「透かしビットｂi 」と呼ぶ。透かしビットｂi の埋め込みの際には、周波数鍵ｋf とスケール鍵ｋd とが使用される。周波数鍵ｋf は、１フレーム分のＭ個のＭＤＣＴ係数Ｘi（ｋ） （ｋ＝０〜（Ｍ−１））の中で、透かしビットｂi が埋め込まれる特定の周波数成分Ｘi （ｋf ）の周波数を示す整数である。周波数鍵ｋf としては、０〜Ｍの範囲から好ましい整数値が予め選択される。また、スケール鍵ｋd は、ＭＤＣＴ係数Ｘi （ｋf ）の量子化を行う際の量子化幅であり、０以外の任意の正の整数に設定される。周波数鍵ｋf とスケール鍵ｋd の好ましい値については後述する。
【００４５】
ステップＳ３では、次の数式５で示されるように、周波数鍵ｋf で特定される周波数成分Ｘi（ｋf）をスケール鍵ｋd で除算し、小数点以下を切り捨てることによって、整数値ｅi （「量子化値」と呼ぶ）を求める。
【００４６】
【数５】
0003986150.tif 000006
【００４７】
ステップＳ４では、量子化値ｅi と埋め込みビットｂi が、次の２つの条件のうちのいずれか一方を満足するか否かが判断される。
【００４８】
［条件１］ｅi が奇数でかつｂi ＝０，
［条件２］ｅi が偶数でかつｂi ＝１。
【００４９】
条件１，２のいずれか一方が成立する場合には、次の数式６で示されるように、ＭＤＣＴ係数Ｘi（ｋf）をスケール鍵ｋd で除算し、小数点以下を切り上げた値を量子化値ｅi として採用する（ステップＳ５）。
【００５０】
【数６】
0003986150.tif 000007
【００５１】
一方、上記条件１，２がいずれも成立しない場合には、ステップＳ３で得られた量子化値ｅi がそのまま採用される。この結果、透かしビットｂi が０ならば量子化値ｅi が偶数（最下位ビットが０）に設定され、透かしビットｂi が１ならば量子化値ｅi が奇数（最下位ビットが１）に設定される。すなわち、ステップＳ３〜Ｓ５の処理では、ＭＤＣＴ係数Ｘi （ｋf ）の量子化値ｅi が透かしビットｂi に対応付けられるように量子化値ｅi が調整されており、この結果、量子化値ｅi の中に透かしビットｂi が埋め込まれる。
【００５２】
なお、ＭＤＣＴ係数Ｘi（ｋf）をスケール鍵ｋd で除算した値Ｘi（ｋf）／ｋd が小数部を含まず、整数である場合には、ステップＳ５で切り上げを行っても量子化値ｅi がステップＳ３の値と変わらない。従って、ステップＳ５の処理としては、切り上げの代わりに、ステップＳ３で得られた量子化値ｅi に１を加算するか、または、１を減算する演算を採用するようにしてもよい。
【００５３】
図６は、ステップＳ３〜Ｓ５の処理内容を示す説明図である。図６の右側に示されているように、スケール鍵ｋd の範囲にわたるＭＤＣＴ係数Ｘi（ｋf）に対する量子化値ｅi は、透かしビットｂi が０であれば切り上げによって得られ、一方、透かしビットｂi が１であれば切り捨てによって得られる。なお、図６の左側の「丸め範囲」は、比較のために、四捨五入で量子化値ｅi が奇数となる範囲を示したものである。
【００５４】
図３のステップＳ６では、次の数式７に示されるように、透かしビットｂi が埋め込まれた量子化値ｅi にスケール鍵ｋd を乗ずることによって逆量子化を行い、透かしビットｂi が埋め込まれたＭＤＣＴ係数Ｘ'i（ｋf）を生成する。
【００５５】
【数７】
0003986150.tif 000008
【００５６】
なお、上記ステップＳ３の処理は、変換係数の特定の周波数成分Ｘi（ｋf）をスケール鍵ｋd で量子化する量子化部としての機能に対応している。また、ステップＳ４，Ｓ５の処理は、量子化値ｅi の最下位ビットを透かしビットｂi と対応付けるように調整するビット調整部としての機能に対応している。さらに、ステップＳ６の処理は、透かしビットが埋め込まれた量子化値ｅi にスケール鍵ｋd を乗じることによって逆量子化を行う逆量子化部としての機能に対応している。
【００５７】
ステップＳ７では、透かしビットｂi が埋め込まれた周波数成分Ｘ'i（ｋf ）を含む１フレーム分のＭＤＣＴ係数Ｘ'i（ｋf ）（ｋ＝０〜（Ｍ−１））に関して、ＩＭＤＣＴ部６２（図２）が変形離散コサイン逆変換を実行する。なお、透かしビットｂi が埋め込まれた周波数成分Ｘ'i（ｋf ）以外のＭＤＣＴ係数Ｘ'i（ｋ）（ｋ≠ｋf ）の値は、ステップＳ２で得られたＭＤＣＴ係数Ｘi（ｋ） と同じである。変形離散コサイン逆変換は、次の数式８で表される。
【００５８】
【数８】
0003986150.tif 000009
【００５９】
なお、逆変換に用いられる窓関数ｗ（ｎ）と基底ｃ（ｋ、ｎ）は、順変換と同じものである。
【００６０】
ステップＳ７では、さらに、フレーム再生部６４が次の数式９に従って、時系列信号としての第２の拡散音声信号ｘ'i（ｔ）を生成する。
【００６１】
【数９】
0003986150.tif 000010
【００６２】
ここで、ｘ'i-1（ｎ＋Ｍ）は（ｉ−１）番目のフレームの逆変換信号、ｘ'i（ｎ）はｉ番目のフレームの逆変換信号であり、ｘ'i-1（ｎ＋Ｍ）とｘ'i（ｎ）は互いに重複する区間（図５）の信号である。
【００６３】
ステップＳ８では、全フレームへの透かし情報の埋め込みが終了したか否かが判断され、終了していなければステップＳ９でｉをインクリメントしてステップＳ２に戻る。一方、全フレームへの透かし情報の埋め込みが終了すると、ステップＳ８からステップＳ１０に移行し、第２の乗算器６６が第２の拡散音声信号ｘ'i（ｔ）にＰＮ系列ｇ（ｔ）を乗ずることによって、スペクトル逆拡散を行う。この結果、透かし情報が埋め込まれた音声信号ｓ’（ｔ）が得られる。以下では、この音声信号ｓ’（ｔ）を「電子透かし音声信号」と呼ぶ。
【００６４】
本実施例では、１フレーム分の電子透かし音声信号ｓ’（ｔ）に１ビットの透かし情報が埋め込まれており、また、１フレームは実質的にＭ個の信号値で構成されている。従って、透かし情報の埋め込み割合Ｂｒは、次の数式１０で与えられる。
【００６５】
【数１０】
0003986150.tif 000011
【００６６】
ここで、ｆs は原音声信号ｓ（ｔ）のサンプリング周波数である。
【００６７】
なお、透かし情報がＮビットで構成されている場合には、Ｎフレーム分の音声信号区間に１つの透かし情報を埋め込むことができる。従って、Ｎビットの透かし情報は、Ｎフレーム毎に繰り返し埋め込まれる。
【００６８】
こうして得られた電子透かし音声信号ｓ’（ｔ）は種々の形態で配布することができる。例えば、通信回線を介して電子透かし音声信号ｓ’（ｔ）を伝送することが可能である。また、ＣＤ−ＲＯＭやＤＶＤなどの音楽専用の記録媒体や、コンピュータ読み取り可能な記録媒体などに収納された形で配布することも可能である。このとき、電子透かし音声信号ｓ’（ｔ）を変調したり、圧縮したりすることも可能である。特に、電子透かし音声信号ｓ’（ｔ）がコンピュータ読み取り可能な記録媒体に収納されている場合には、その記録媒体から電子透かし音声信号ｓ’（ｔ）を読み出して、透かし情報を抽出することができる。
【００６９】
なお、上述したように、透かし情報は、ＭＤＣＴ係数に埋め込まれた後に逆直交変換されるので、透かし情報に起因する音質劣化は従来に比べて低く抑えられる。透かし情報の埋め込みと音質劣化との関係については、さらに後述する。
【００７０】
Ｃ．透かし情報の抽出処理：
図７は、電子透かし抽出部４４（図１）の機能を示すブロック図である。電子透かし抽出部４４は、ＰＮ系列発生部７２と、乗算器７４と、フレーム抽出部７６と、ＭＤＣＴ部７８と、デコード部８０と、の機能を有している。ＰＮ系列発生部７２は、図２に示したＰＮ系列発生部５２，６８と同じものであり、ＰＮ系列発生鍵ｋs の値に応じた特定のＰＮ系列ｇ（ｔ）を発生する。また、乗算器７４、フレーム抽出部７６、および、ＭＤＣＴ部７８も、図２に示す乗算器５４、フレーム抽出部５６、および、ＭＤＣＴ部５８とそれぞれ同じ構成と機能を有している。
【００７１】
図８は、透かし情報の抽出処理の手順を示すフローチャートである。ステップＳ１１では、乗算器７４が、埋込み時と同一のＰＮ系列ｇ（ｔ）を用いて電子透かし音声信号ｓ’（ｔ）をスペクトル拡散することによって、拡散音声信号ｘ’（ｔ）を生成する。この処理は、次の数式１１で表される。
【００７２】
【数１１】
0003986150.tif 000012
【００７３】
ここでは、ＰＮ系列ｇ（ｔ）が、ｇ2（ｔ）＝１となる性質（図４（ｄ）参照）を有していることを利用している。
【００７４】
ステップＳ１２では、フレーム抽出部７６が、拡散音声信号ｘ’（ｔ）の中からｉ番目（初期値はｉ＝１）のフレームを抽出し、ＭＤＣＴ部７８がそのフレームについて変形離散コサイン変換を実行する。ステップＳ１３では、デコード部８０が、１フレーム分のＭＤＣＴ係数Ｘ'i（ｋ）の中から、埋め込み時に用いた周波数鍵ｋf で特定される周波数成分Ｘ'i（ｋf ）を抽出し、さらに、次の数式１２に従って、その周波数成分Ｘ'i（ｋf ）をスケール鍵ｋd で量子化した量子化値ｅ'iを求める。
【００７５】
【数１２】
0003986150.tif 000013
【００７６】
ここで、演算子Round()は、四捨五入によって整数値を得る演算を示す。
【００７７】
なお、変形離散コサイン変換は可逆変換なので、数式１２の右辺のかっこ内の値「Ｘ'i（ｋf）/ｋd」は通常は整数になり、丸め演算を行う必要は無い．ただし、第三者が不正な波形処理を行った場合などのように、何らかの原因でビット誤りが生じた場合には、スケール鍵ｋd で除算した値「Ｘ'i（ｋf）/ｋd」が正しい整数値とならないことがある。この場合にも、数式１０のように、この値「Ｘ'i（ｋf）/ｋd」を四捨五入することによって、電子透かし音声信号ｓ’（ｔ）の変形による透かし情報の抽出誤りを訂正することができる可能性がある。すなわち、四捨五入を行うことによって透かし情報の誤り耐性が向上する。この誤り耐性は、スケール鍵ｋd が大きいほど大きい。例えば、スケール鍵ｋd を大きな値に設定すれば、電子透かし音声信号ｓ’（ｔ）がある程度大きな変形を受けても、透かし情報を正しく抽出することができる。一方、後で詳述するように、スケール鍵ｋd が大きくなるほど音質劣化が増大する傾向にある。すなわち、スケール鍵ｋd をより小さな値にすれば、電子透かし音声信号ｓ’（ｔ）の変形による透かし情報の消失の可能性は高くなるが、音質劣化はより少なくなる。
【００７８】
図８のステップＳ１４では、デコード部８０が、量子化値ｅ'iの値に応じて透かしビットｂoiを復元する。すなわち、量子化値ｅ'iが偶数の場合には透かしビットｂoiが０であると決定し、奇数の場合には透かしビットｂoiが１であると決定する。ステップＳ１５では、全フレームからの透かし情報の抽出が終了したか否かが判断され、終了していなければ、ステップＳ１６においてパラメータｉをインクリメントしてステップＳ１２に戻る。一方、全フレームからの透かし情報の抽出が終了すると、処理を終了する。この結果、複数ビットで構成される透かし情報が抽出される。なお、複数ビットで構成される正しい透かし情報が１回抽出されたときに、図８の処理を直ちに終了するようにしてもよい。
【００７９】
なお、透かしの抽出処理に用いられるＰＮ系列が、埋め込み処理に用いられたＰＮ系列と異なる場合には、電子透かし抽出部４４の乗算器７４から出力される信号は、埋め込み処理部４２において透かし情報が埋め込まれた拡散音声信号ｘ’（ｔ）とは異なる信号となる。従って、この場合には、正しい透かし情報を復元することができない。すなわち、本実施例では、スペクトル拡散を利用することによって、透かし情報の秘匿性が高められている。特に、本実施例では、透かし情報の埋込みが音質に与える影響を少なくするために、特定の周波数の変換係数に埋込みを施しているので、スペクトル拡散を用いない場合には、第三者が透かし情報を抽出することは比較的容易である。一方、ＰＮ系列を用いたスペクトル拡散を行うと、そのＰＮ系列を一種の暗号化／復号化の鍵として使用できるので、音声データなどの一次元データに埋め込まれた透かし情報の秘匿性を高めることができるという利点がある。
【００８０】
Ｄ．埋込み周波数の最適化：
以下では、透かし情報の埋込みによる音質への影響を検討する。まず、ＭＤＣＴ係数への透かし情報の埋込みにより生じた量子化誤差δi （ｋ）を、次の数式１３で定義する。
【００８１】
【数１３】
0003986150.tif 000014
【００８２】
ここで、Ｘi（ｋ） は埋め込み前の係数値、Ｘ'i（ｋ）は埋め込み後の係数値である。上記実施例では周波数鍵ｋf で特定される周波数成分に埋め込みを行ったので、次の数式１４で示されるように、ｋ＝ｋf 以外の周波数成分の量子化誤差δi （ｋ）はゼロである。
【００８３】
【数１４】
0003986150.tif 000015
【００８４】
但し、量子化誤差δｉ（ｋf ）の値は周波数鍵ｋf の値に依存せず、その絶対値｜δｉ（ｋf ）｜はスケール鍵ｋd 以下である。
【００８５】
各フレームの音声信号ｘｉ（ｎ）に生じる埋込みの影響Ｄｉ（ｎ）は、上記数式８（逆変換の式）と数式１４とから、次の数式１５で与えられる。
【００８６】
【数１５】
0003986150.tif 000016
【００８７】
したがって、透かし情報の埋込みが音声信号に与える影響（すなわち雑音成分）Ｄ（ｎ）は、次の数式１６で与えられる。
【００８８】
【数１６】
0003986150.tif 000017
【００８９】
また、デジタル音声信号値に生じる誤差は、次の数式１７に示すように、Ｄ（ｎ）を整数化した値で与えられる。
【００９０】
【数１７】
0003986150.tif 000018
【００９１】
ところで、ＭＤＣＴ係数の特定の周波数成分Ｘi（ｋf）に透かし情報の埋込みを行うことは、図９に示すように、狭帯域の雑音干渉δｉ（ｋf ）を与えることと等価である。従って、透かし情報に起因する雑音の帯域幅は、音声復元時にはＭ倍（Ｍは１フレームに含まれる信号値の実質個数）に拡大され、この結果、透かし情報の雑音電力は非常に小さくなると考えられる。
【００９２】
ところで、一般に、音質の客観的な評価尺度として使用される基本的なものに信号対量子化雑音比ＳＮＲがある。ＳＮＲ［ｄＢ］の評価式は、入力音声信号Ｓｏ（ｍ）とその量子化誤差Ｅｒ（ｍ）を用いて次の数式１８のように定義される。
【００９３】
【数１８】
0003986150.tif 000019
【００９４】
本実施例では、ＳＮＲを改良して主観評価との対応関係を向上したＳＮＲseg （セグメンタルＳＮＲ）を用いる。ＳＮＲseg は次の数式１９で与えられる。
【００９５】
【数１９】
0003986150.tif 000020
【００９６】
ここで、Ｎf は測定区間のフレーム数を表し、ＳＮＲf は、ｆ番目のフレームにおけるＳＮＲである。以下に示す測定例では、１フレームの長さを３２ｍｓとした。また、誤差のない音声フレーム、すなわちＳＮＲf ＝∞の音声フレームを除外して測定した。
【００９７】
図１０は、実際にデジタル音声信号を用いて周波数鍵ｋf の値と信号対量子化雑音比ＳＮＲseg との関係を求めた結果を示すグラフである。ここでは、１フレームに含まれる信号値の実質的な個数Ｍ（すなわち１フレーム分の変換係数の数）を２５６とした。また、スケール鍵ｋd とＰＮ系列発生鍵ｋs （図２）はいずれも１とした。図１０の結果から、ｋf ＝１２７または１２８のときの波形歪みが他の場合と比べて非常に少ないことがわかる。この理由は、上記数式１５，１７に示したように、周波数鍵ｋf の違いによる雑音成分Ｄｉ（ｎ）への影響が、ＭＤＣＴ基底ｃ（ｋ，ｎ）とデジタル化の丸め処理とに起因しているからであると考えられる。このように、１フレームに含まれる実質的な信号値の個数Ｍが２５６のときには、周波数鍵ｋf の値を１２７または１２８とすれば、音質の劣化が最小限に抑えられる。一般には、周波数鍵ｋf の値を、１フレームに含まれる音声信号値の実質的な個数Ｍの約１／２の値とすることが好ましい。
【００９８】
なお、１フレーム中に複数の透かしビットを埋め込むことも可能である。例えば、ｋf ＝１２７および１２８の２つの周波数成分に透かしビットを埋め込むようにしてもよい。この明細書において「特定の周波数成分に埋め込む」とは、このように、１フレーム中に複数の透かしビットを埋め込む場合も含んでいる。但し、１フレーム中に埋め込まれる透かし情報のビット数が増加するほど音質が劣化する傾向にある。
【００９９】
Ｅ．実験結果：
音質の高さに価値がある音楽ソフトに透かし情報の埋込みを行う場合には、埋込みによって音質が劣化しないことが重要である。そこで、実際に高品質の音楽データに透かし情報の埋込みを行って、音質に与える影響を調べた。この実験では、クラシックと、ジャズと、ダンスの３種類の音楽を、サンプリング周波数４４．１ｋＨｚ、量子化幅１６ビットで量子化した原音声信号ｓ（ｔ）を用いた。ただし、音楽ソフトは通常ステレオであるが、その片側成分のみに埋込みを行った。
【０１００】
この実験では、Ｍ＝２５６に設定したので、透かし情報の埋め込み量Ｂｒは、上記数式１０から約１７２ビット／秒である。この埋込みを施した再生音声信号と埋込みのない再生音声信号の音質を比較検討した。
【０１０１】
図１１は、スケール鍵ｋd を固定し、周波数鍵ｋf を変化させてクラシック音楽に埋込みを施した場合のＳＮＲseg を示すグラフである。ここでは、ｋd ＝２，ｋs ＝１（ｋs はＰＮ系列発生鍵）とした。図１１においても、周波数鍵ｋf の値が１２８付近のときに最高音質が得られている。図１２は、ＰＮ系列発生鍵ｋs の値を２とすることによって、図１１とは異なる変化パターンを有するＰＮ系列を発生させ、また、スケール鍵ｋd を図１１と同じ値に設定した場合の結果である。図１２においても、図１０や図１１と同様に、周波数鍵ｋf の値が１２８付近のときに最高音質が得られている。
【０１０２】
図１３は、クラシック音楽に透かし情報を埋め込んだ音声信号に対して、異なるＰＮ系列発生鍵ｋs を用いて透かし情報の検出を試みた場合の検出率を示すグラフである。ここでは、透かし情報の埋め込み時のスケール鍵ｋd を２、周波数鍵ｋf を１２８、ＰＮ系列発生鍵ｋs を１２８とした。図１３の結果から、正しいＰＮ系列発生鍵ｋs （＝１２８）で生成したＰＮ系列で復号すると、検出率は１であり、透かし情報を完全に復号できるが、ＰＮ系列発生鍵ｋs が他の異なった値のときには検出率が０．５となる。検出率が０．５のときは、０と１のビットがランダムに出現するので透かし情報を正しく検出できない。このように、本実施例の電子透かし技術によれば、埋め込みに用いたＰＮ系列ｇ（ｔ）が暗号化の鍵として機能しており、透かし情報に関して高い秘匿性を確保できる。しかし、埋め込みに用いたＰＮ系列ｇ（ｔ）と相関の高いＰＮ系列を偶然に用いた場合には、透かし情報が不正に発見されてしまうことも考えられる。したがって、ＰＮ系列ｇ（ｔ）としては、相関の高い系列を容易に生成できないようなものを用いることが望ましい。この意味からは、Ｃ言語の標準関数のように一般に入手が容易なＰＮ系列発生部を使用することは好ましくなく、一般に入手が困難なＰＮ系列発生部を使用することが好ましい。
【０１０３】
図１４は、周波数鍵ｋf を１２８の一定値とし、スケール鍵ｋd を変化させた場合の音質の変化に示すグラフである。図１４から、スケール鍵ｋd を増大させると復元音声の音質を示すＳＮＲseg が低下することがわかる。高音質を維持するためには、スケール鍵ｋd を１〜３程度の比較的小さな値にすることが好ましい。一方、電子透かし音声信号から透かし情報を確実に検出するためには、スケール鍵ｋd をなるべく大きな値にすることが好ましい。なお、音楽ソフトの商品的価値を失わないように（すなわち音質を過度に劣化させないように）デジタルコピーした場合には、スケール鍵ｋd が小さな値であっても正しい透かし情報を取り出すことは可能である。一方、音質劣化（損失圧縮）した音声信号からも透かし情報を取り出したいときには、スケール鍵ｋd を大きな値に設定すれば良い。
【０１０４】
図１５は、透かし情報の埋込みのない再生音声波形と、埋込みのある再生音声波形と、それらの差分波形とを示す説明図である。これら波形は、ジャズにおけるピアノの演奏音に相当する部分である。図１５（ｃ）に示す差分波形から、図１５（ａ）と（ｂ）の波形にほとんど差異がないことがわかる。
【０１０５】
このように、上記実施例によれば、音楽ソフトの音質を損なわずに高い秘匿性を持つ透かし情報を埋め込むことができる。また、上記実施例では、原音声信号をＭＤＣＴ変換して得られた変換係数の特定の周波数成分に透かし情報を埋め込んでいるので、原音声信号ｓ（ｔ）のサンプリング周波数がどのような値であっても、透かし情報を埋め込んだり、抽出したりすることが可能である。換言すれば、上記実施例の電子透かし技術は、高音質の音声データにも、低音質の音声データにも適用することが可能である。
【０１０６】
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【０１０７】
（１）上記実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。例えば、図２に示した電子透かし埋め込み部４２の構成や、図７に示した電子透かし抽出部４４の構成をハードウェア回路で実現することも可能である。
【０１０８】
（２）上記実施例では、ＰＮ系列ｇ（ｔ）として、＋１と−１の２値をランダムに取る系列を使用していたが、ＰＮ系列ｇ（ｔ）の絶対値としては１以外の整数値ｐを用いることも可能である。すなわち、一般には、特定の絶対値ｐを有する正負の値を不規則的に取る正負系列を用いることができる。但し、この場合には、図２の第２の乗算器６６の出力ｘ’（ｔ）・ｇ（ｔ）を整数値ｐの２乗で除算することによって、電子透かし音声信号ｓ’（ｔ）を生成する。
【０１０９】
（３）スペクトル拡散の演算としては、ＰＮ系列（正負系列）を原音声信号に乗算する演算と等価な他の種々の演算を用いることができる。例えば、０レベルと１レベルをランダムにとる２値系列を用いた論理演算を行うことによって、スペクトル拡散を実現することも可能である。この場合には、原音声信号の各ビットが入力される複数のＥＸＯＲ（排他的論理和）回路を設け、これらの複数のＥＸＯＲ回路に２値系列を共通に入力することによって、ＰＮ系列を原音声信号に乗算する演算と等価な演算を実現することができる。すなわち、複数のＥＸＯＲ回路に２値系列の０レベルが入力される場合には、原音声信号がそのまま出力されるので、原音声信号に＋１を乗算した場合と等価な演算が実現される。一方、複数のＥＸＯＲ回路に２値系列の１レベルが入力される場合には、原音声信号の各ビットが反転されて出力されるので、原音声信号に−１を乗算した場合と等価な演算が実現される。また、こうしてスペクトル拡散された拡散音声信号に関して、同一の２値系列を用いて再度ＥＸＯＲ回路で処理を行えば、原音声信号を再現することができる。
【図面の簡単な説明】
【図１】本発明の第１実施例としての電子透かし処理装置の構成を示すブロック図。
【図２】電子透かし埋め込み部４２の機能を示すブロック図。
【図３】透かし情報の埋め込み処理の手順を示すフローチャートである。
【図４】スペクトル拡散の原理を示す説明図。
【図５】変形離散コサイン変換に使用されるフレームと窓関数ｗ（ｎ）との関係を示す説明図。
【図６】ステップＳ３〜Ｓ５の処理内容を示す説明図。
【図７】電子透かし抽出部４４の機能を示すブロック図。
【図８】透かし情報の抽出処理の手順を示すフローチャート。
【図９】透かし情報に起因する雑音の影響を示す説明図。
【図１０】周波数鍵ｋf の値と信号対量子化雑音比ＳＮＲseg との関係を示すグラフ。
【図１１】周波数鍵ｋf の値と信号対量子化雑音比ＳＮＲseg との関係を示すグラフ。
【図１２】周波数鍵ｋf の値と信号対量子化雑音比ＳＮＲseg との関係を示すグラフ。
【図１３】埋め込み時と異なるＰＮ系列発生鍵ｋs を用いて透かし情報の検出を試みた場合の検出率を示すグラフ。
【図１４】スケール鍵ｋd を変化させた場合の音質の変化に示すグラフ。
【図１５】透かし情報の埋込みのない再生音声波形と、埋込みにある再生音声波形と、それらの差分波形とを示すグラフ。
【符号の説明】
２２…ＣＰＵ
２４…メインメモリ
２６…フレームメモリ
３０…キーボード
３２…マウス
３４…表示装置
３６…ハードディスク
３８…モデム
４０…バス
４２…電子透かし埋め込み部部
４４…電子透かし抽出部
５２…ＰＮ系列発生部
５４…乗算器
５６…フレーム抽出部
５８…ＭＤＣＴ部
６０…埋め込み部
６２…ＩＭＤＣＴ部
６４…フレーム再生部
６６…乗算器
６８…ＰＮ系列発生部
７２…ＰＮ系列発生部
７４…乗算器
７６…フレーム抽出部
７８…ＭＤＣＴ部
８０…デコード部
【図１】
0003986150.tif 000021
【図２】
0003986150.tif 000022
【図３】
0003986150.tif 000023
【図４】
0003986150.tif 000024
【図５】
0003986150.tif 000025
【図６】
0003986150.tif 000026
【図７】
0003986150.tif 000027
【図８】
0003986150.tif 000028
【図９】
0003986150.tif 000029
【図１０】
0003986150.tif 000030
【図１１】
0003986150.tif 000031
【図１２】
0003986150.tif 000032
【図１３】
0003986150.tif 000033
【図１４】
0003986150.tif 000034
【図１５】
0003986150.tif 000035