(57)【特許請求の範囲】
【請求項１】
オリジナルＭＩＤＩデータに対して透かしデータを埋め込む透かし情報埋め込み装置であって、
前記オリジナルＭＩＤＩデータから特定のパラメータを有し且つ前記透かしデータの埋め込みの対象となる対象イベントを抽出する対象イベント抽出手段と、
この対象イベント抽出手段により抽出された前記対象イベントの数と前記透かしデータとに基づきターゲットヒストグラムを算出するターゲットヒストグラム算出手段と、
前記対象イベント抽出手段により抽出された前記対象イベントを前記特定のパラメータに基づき分類してヒストグラムを算出するヒストグラム算出手段と、
このヒストグラム算出手段で算出された前記ヒストグラムと前記ターゲットヒストグラムとを比較して、前記ヒストグラムが前記ターゲットヒストグラムに等しくなるように前記対象イベントのパラメータを変更して前記透かしデータを埋め込むパラメータ変更手段とを備えたことを特徴とする透かし情報埋め込み装置。
【請求項２】
オリジナルＭＩＤＩデータに対して透かしデータを埋め込む透かし情報埋め込み方法であって、
透かしデータ埋め込み側の対象イベント抽出手段と、ターゲットヒストグラム算出手段と、ヒストグラム算出手段と、パラメータ変更手段とを備え、
前記対象イベント抽出手段によって前記オリジナルＭＩＤＩデータから特定のパラメータを有し且つ前記透かしデータの埋め込みの対象となる対象イベントを抽出する対象イベント抽出ステップと、
この対象イベント抽出ステップにより抽出された前記対象イベントの数と前記透かしデータとに基づいて、前記ターゲットヒストグラム算出手段によってターゲットヒストグラムを算出するターゲットヒストグラム算出ステップと、
前記対象イベント抽出ステップにより抽出された前記対象イベントを前記特定のパラメータに基づき分類し、前記ヒストグラム算出手段によってヒストグラムを算出するヒストグラム算出ステップと、
このヒストグラム算出ステップで算出された前記ヒストグラムと前記ターゲットヒストグラムとを比較して、前記パラメータ変更手段によって前記ヒストグラムが前記ターゲットヒストグラムに等しくなるように前記対象イベントのパラメータを変更して前記透かしデータを埋め込むパラメータ変更ステップとを有したことを特徴とする透かし情報埋め込み方法。
【請求項３】
請求項１に記載の透かし情報埋め込み装置によって透かしデータが埋め込まれたＭＩＤＩデータから前記透かしデータを読み出す透かし情報読み出し装置であって、
前記ＭＩＤＩデータから特定のパラメータを有する対象イベントを抽出する対象イベント抽出手段と、
この対象イベント抽出手段により抽出された前記対象イベントを前記特定のパラメータに基づき分類してヒストグラムを算出するヒストグラム算出手段と、
このヒストグラム算出手段で算出された前記ヒストグラムに基づいて、前記特定のパラメータ毎のヒストグラム値を相互に比較することで前記透かしデータを読み出す透かしデータ読み出し手段とを備えたことを特徴とする透かし情報読み出し装置。
【請求項４】
請求項２に記載の透かし情報埋め込み方法によって透かしデータが埋め込まれたＭＩＤＩデータから前記透かしデータを読み出す透かし情報読み出し方法であって、
透かしデータ読み出し側の対象イベント抽出手段と、ヒストグラム算出手段と、透かしデータ読み出し手段とを備え、
前記対象イベント抽出手段によって前記ＭＩＤＩデータから特定のパラメータを有する対象イベントを抽出する対象イベント抽出ステップと、
この対象イベント抽出ステップにより抽出された前記対象イベントを前記特定のパラメータに基づき分類して、前記ヒストグラム算出手段によってヒストグラムを算出するヒストグラム算出ステップと、
このヒストグラム算出ステップで算出された前記ヒストグラムに基づいて、前記透かしデータ読み出し手段によって前記特定のパラメータ毎のヒストグラム値を相互に比較することで前記透かしデータを読み出す透かしデータ読み出しステップとを有したことを特徴とする透かし情報読み出し方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、通信カラオケなどの演奏情報として使用されるＭＩＤＩデータに対して、ＭＩＤＩデータの不正コピーや不正利用を防止するために、著作権などの制作者に関する情報を透かし情報（digital watermark）として記録する透かし情報埋め込み装置及び透かし情報埋め込み方法と、その透かし情報を読み出す透かし情報読み出し装置及び透かし情報読み出し方法に関する。
【０００２】
【従来の技術】
近年、画像データや音声データ等のコンテンツデータがデジタル化され、ＣＤ−ＲＯＭ等の記録媒体に記録されて配布されるようになり、さらにインターネットなどのネットワークを介して送受信されるようになったことから、コンテンツデータの不正コピーやコピーしたものを著作権者に無許可で販売する等の不正利用が問題になっている。
【０００３】
とくに、通信カラオケなどの演奏情報として使用されるＭＩＤＩデータは、それ自身が音楽情報として利用されているので個々のＭＩＤＩデータに対して著作権が発生しており、これを守る必要がある。また、最近では、業務用だけではなく家庭用の通信カラオケとして、インターネットなどで曲データ（ＭＩＤＩデータ）を送信し、この曲データを家庭用のパソコン上で作動させるためのソフトシンセサイザなども登場している。このような家庭用の通信カラオケでは、曲データ（ＭＩＤＩデータ）を一旦受信した後では何度でも繰り返し使用することができるように、曲データをハードディスク等に格納することができる。
【０００４】
したがって、曲データ（ＭＩＤＩデータ）を不正にコピーしたり、コピーしたデータを権利者に無断で商業的に利用することも可能な状態になっている。
【０００５】
そこで、ＭＩＤＩデータに対しても、このような不正利用を防止するための手段として、コンテンツデータに著作権などの制作者に関する情報を透かし情報（digital watermark）として記録する電子透かし埋め込み方法が研究開発されている。
【０００６】
この電子透かしに必要な条件としては、（１）無理に取り去ろうとするとコンテンツデータが壊れてしまうように透かし情報を埋め込むこと（コンテンツデータに著作権を示す透かし情報が残り続けること）、（２）コンテンツデータのどこに透かし情報が埋め込まれているのか分かりにくいこと、（３）透かし情報を埋め込んでもコンテンツデータはオリジナルの状態を留めておくこと等がある。
【０００７】
これらの条件を満たす電子透かし技術として、従来の通信カラオケなどにおけるＭＩＤＩデータを配信するシステムでは、ＭＩＤＩデータに含まれるノートイベントやコントロールイベントに着目し、これらのイベントのデータの一部を音楽クオリティを劣化させないように他のデータに置き換えることによって、電子透かしとしていた。この方法では、ＭＩＤＩイベントの持つ時間情報を基準にして透かしデータを埋め込む順番を決定していた。
【０００８】
また、エラーを修正するためにＲＳ符号のようなエラー訂正技術を利用して、透かしデータが消えにくくなるようにしていた。
【０００９】
【発明が解決しようとする課題】
しかしながら、ＭＩＤＩイベントには全く等しい時間情報を持ったものが複数存在している場合がある。このような場合には、透かしデータを埋め込む順番を確定するために、時間情報以外の情報を時間情報と併用して埋め込む順番を決定するなどの対策を講じることが考えられる。しかし、時間情報が故意に変化させられたような場合には、全く同じ時間情報を持っていたＭＩＤＩイベントが異なる時間情報を持つことになり、透かしデータを埋め込む順番を決定する基準が変わってまうことになるので、期待される順序でＭＩＤＩイベントから透かしデータを読み出すことができないという問題が生じていた。
【００１０】
上記に伴って、ＭＩＤＩイベントが消失したような場合には、データを読み出す同期がくるうことになり、エラー訂正が有効に機能せず、透かしデータを読み出すこと
ができなくなるという問題点もあった。
【００１１】
本発明は上記事情に鑑みてなされたものであり、その目的は、ＭＩＤＩイベントの時間情報に依存せずに透かしデータを埋め込むことのできる透かし情報埋め込み装置及び透かし情報埋め込み方法と、その透かし情報を読み出す透かし情報読み出し装置及び透かし情報読み出し方法を提供することにある。
【００１２】
【課題を解決するための手段】
上記目的を達成するために、請求項１に記載の発明である透かし情報埋め込み装置は、オリジナルＭＩＤＩデータに対して透かしデータを埋め込む透かし情報埋め込み装置であって、
前記オリジナルＭＩＤＩデータから特定のパラメータを有し且つ前記透かしデータの埋め込みの対象となる対象イベントを抽出する対象イベント抽出手段と、
この対象イベント抽出手段により抽出された前記対象イベントの数と前記透かしデータとに基づきターゲットヒストグラムを算出するターゲットヒストグラム算出手段と、
前記対象イベント抽出手段により抽出された前記対象イベントを前記特定のパラメータに基づき分類してヒストグラムを算出するヒストグラム算出手段と、
このヒストグラム算出手段で算出された前記ヒストグラムと前記ターゲットヒストグラムとを比較して、前記ヒストグラムが前記ターゲットヒストグラムに等しくなるように前記対象イベントのパラメータを変更して前記透かしデータを埋め込むパラメータ変更手段とを備えたことを特徴とする。
【００１３】
この請求項１の発明によれば、時間情報に依存することなく透かしデータを埋め込むことができるとともに、透かしの埋め込まれたＭＩＤＩデータに、ノイズによってエラーが発生したり、一部のイベントの加工や削除を行ったとしても、データ読み出しの同期がとれなくなることにはならないので、通常の誤り訂正技術によってエラーを抑制することができる。
【００１４】
請求項２に記載の発明である透かし情報埋め込み方法は、オリジナルＭＩＤＩデータに対して透かしデータを埋め込む透かし情報埋め込み方法であって、
透かしデータ埋め込み側の対象イベント抽出手段と、ターゲットヒストグラム算出手段と、ヒストグラム算出手段と、パラメータ変更手段とを備え、
前記対象イベント抽出手段によって前記オリジナルＭＩＤＩデータから特定のパラメータを有し且つ前記透かしデータの埋め込みの対象となる対象イベントを抽出する対象イベント抽出ステップと、
この対象イベント抽出ステップにより抽出された前記対象イベントの数と前記透かしデータとに基づいて、前記ターゲットヒストグラム算出手段によってターゲットヒストグラムを算出するターゲットヒストグラム算出ステップと、
前記対象イベント抽出ステップにより抽出された前記対象イベントを前記特定のパラメータに基づき分類し、前記ヒストグラム算出手段によってヒストグラムを算出するヒストグラム算出ステップと、
このヒストグラム算出ステップで算出された前記ヒストグラムと前記ターゲットヒストグラムとを比較して、前記パラメータ変更手段によって前記ヒストグラムが前記ターゲットヒストグラムに等しくなるように前記対象イベントのパラメータを変更して前記透かしデータを埋め込むパラメータ変更ステップとを有したことを特徴とする。
【００１５】
この請求項２の発明によれば、時間情報に依存することなく透かしデータを埋め込むことができるとともに、透かしの埋め込まれたＭＩＤＩデータに、ノイズによってエラーが発生したり、一部のイベントの加工や削除を行ったとしても、データ読み出しの同期がとれなくなることにはならないので、通常の誤り訂正技術によってエラーを抑制することができる。
【００１６】
請求項３に記載の発明である透かし情報読み出し装置は、請求項１に記載の透かし情報埋め込み装置によって透かしデータが埋め込まれたＭＩＤＩデータから前記透かしデータを読み出す透かし情報読み出し装置であって、
前記ＭＩＤＩデータから特定のパラメータを有する対象イベントを抽出する対象イベント抽出手段と、
この対象イベント抽出手段により抽出された前記対象イベントを前記特定のパラメータに基づき分類してヒストグラムを算出するヒストグラム算出手段と、
このヒストグラム算出手段で算出された前記ヒストグラムに基づいて、前記特定のパラメータ毎のヒストグラム値を相互に比較することで前記透かしデータを読み出す透かしデータ読み出し手段とを備えたことを特徴とする。
【００１７】
この請求項３の発明によれば、上述した透かし情報埋め込み装置によって埋め込まれた透かし情報を読み出すことができる。
【００１８】
請求項４に記載の発明である透かし情報読み出し方法は、請求項２に記載の透かし情報埋め込み方法によって透かしデータが埋め込まれたＭＩＤＩデータから前記透かしデータを読み出す透かし情報読み出し方法であって、
透かしデータ読み出し側の対象イベント抽出手段と、ヒストグラム算出手段と、透かしデータ読み出し手段とを備え、
前記対象イベント抽出手段によって前記ＭＩＤＩデータから特定のパラメータを有する対象イベントを抽出する対象イベント抽出ステップと、
この対象イベント抽出ステップにより抽出された前記対象イベントを前記特定のパラメータに基づき分類して、前記ヒストグラム算出手段によってヒストグラムを算出するヒストグラム算出ステップと、
このヒストグラム算出ステップで算出された前記ヒストグラムに基づいて、前記透かしデータ読み出し手段によって前記特定のパラメータ毎のヒストグラム値を相互に比較することで前記透かしデータを読み出す透かしデータ読み出しステップとを有したことを特徴とする。
【００１９】
この請求項４の発明によれば、上述した透かし情報埋め込み方法によって埋め込まれた透かし情報を読み出すことができる。
【００２０】
【発明の実施の形態】
以下、本発明に係る透かし情報埋め込み装置の一実施形態を図面に基づいて説明する。
【００２１】
図１に示すように、本実施形態の透かし情報埋め込み装置１は、オリジナルＭＩＤＩデータから特定のパラメータを有する対象イベントを抽出する対象イベント抽出手段２と、この対象イベント抽出手段２で抽出された対象イベントの数と、透かしデータとに基づいて、ターゲットヒストグラムを算出するターゲットヒストグラム算出手段３と、対象イベント抽出手段２で抽出された対象イベントを特定のパラメータに基づいて分類してヒストグラムを算出するヒストグラム算出手段４と、このヒストグラム算出手段４で算出されたヒストグラムとターゲットヒストグラムとを比較して、異なるときには対象イベントのパラメータの値を変更するパラメータ変更手段５とを含むことを特徴とする。
【００２２】
次に、本実施形態の透かし情報埋め込み装置による透かし情報の埋め込み処理について、図２のフローチャートに基づいて説明する。
【００２３】
図２に示すように、まず透かし情報の埋め込めまれるオリジナルＭＩＤＩデータが入力されると、オリジナルＭＩＤＩデータの中から透かし情報の埋め込み対象となる対象イベントを抽出する（Ｓ２０１）。ＭＩＤＩデータのイベントにはノートオンイベント、ノートオフイベント、ピッチベンドイベント、プログラムチェンジイベント、エクスプレッションイベントなどのさまざまなイベントがあるので、どのイベントを対象イベントとしてもよい。
【００２４】
次に、対象イベントが抽出されたら、この抽出された対象イベントのイベント数を計算する（Ｓ２０２）。そして、この計算されたイベント数と透かしデータとに基づいてターゲットヒストグラムを算出する（Ｓ２０３）。
【００２５】
このターゲットヒストグラムの一例を図３に示す。図３のターゲットヒストグラムにおいて、Ｈ［Ｎ］はスレショルドレベルを表す平均的な値が設定され、残りのＨ［０］〜Ｈ［Ｎ−１］は埋め込もうとしている透かしデータの値が表されている。すなわち、Ｈ［０］〜Ｈ［Ｎ−１］の値とＨ［Ｎ］との値をそれぞれ比較し、Ｈ［Ｎ］より大きいときにはデータ「１」を表すとし、小さいときにはデータ「０」を表すとすることによって、Ｈ［０］〜Ｈ［Ｎ−１］の値で透かしデータの値を表している。
【００２６】
例えば、図３に示すヒストグラムでは、透かしデータ(０１１０)２（２進数）を埋め込む場合のヒストグラムを示したものであり、透かしデータが４ビットなのでＮ＝４となる。したがって、Ｈ［４］の値よりも大きいＨ［１］とＨ［２］はデータ「１」を表し、Ｈ［４］の値よりも小さいＨ［０］とＨ［３］はデータ「０」を表すことになり、図３のヒストグラムでは４ビットの透かしデータ(０１１０)２が表されることになる。
【００２７】
次に、このターゲットヒストグラムにおける最大値ＨＬとスレショルドレベルＴｈの計算方法について説明する。
【００２８】
まず、透かしデータにおける「１」の数をＮｈ、ステップＳ２０２で計算された対象イベントの数をＮｅとすると、最大値ＨＬは
ＨＬ＝Ｎｅ／（Ｎｈ＋０．５）
によって計算することができる。例えば、対象イベント数Ｎｅ＝２５０、４ビットの透かしデータが(０１１０)２である場合には「１」の数Ｎｈ＝２となるので、  ＨＬ＝２５０／（２＋０．５）＝１００
と求めることができる。また、スレショルドレベルＴｈは
Ｔｈ＝ＨＬ／２
によって求めることができるので、
Ｔｈ＝１００／２＝５０
と求めることができる。
【００２９】
このようにして、透かしデータを表現したターゲットヒストグラムを計算することができる。
【００３０】
次に、ステップＳ２０１で抽出された対象イベントを、特定のパラメータに基づいて分類し、オリジナルのＭＩＤＩデータのヒストグラムを計算する（Ｓ２０４）。
【００３１】
まず、抽出された対象イベントの特定のパラメータに注目し、そのパラメータの値を、透かしデータのビット数がＮの場合にはＮ＋１で割った余りをＩndexとして分類する。このＩndexは
Ｉndex=(ＭＩＤＩイベントのパラメータ)% (N+1)
によって表される。そして、次にＩndexが等しくなる対象イベントの数を計算してＨ［０］〜Ｈ［Ｎ］の値を求める。例えば、パラメータとしてノートオンイベントのベロシティに注目した場合には、ベロシティは７ビットで表されるので、０から１２７までの値をもつことになる。この値を透かしデータのビット数が４である場合には５（＝Ｎ＋１）で割った余りをＩndexとして分類し、同じ余りになった対象イベントの数を計算してＨ［０］〜Ｈ［Ｎ］の値を求める。
【００３２】
ここで、Ｎ＝４のときのヒストグラムの一例を図４に示す。図４に示すヒストグラムでは、余りが０になった対象イベント数Ｈ［０］が６８、余りが１になった対象イベント数Ｈ［１］が５０、・・・、余りが４になった対象イベント数Ｈ［４］が２８になっていることを示している。
【００３３】
このようにして、ヒストグラムとターゲットヒストグラムとが計算されたら、これらのヒストグラムを比較して等しいか否かを判断する（Ｓ２０５）。
【００３４】
そして、等しくなかったときには、ヒストグラムがターゲットヒストグラムに近づくように、対象イベントのパラメータの値を変更する（Ｓ２０６）。
【００３５】
例えば、図４のヒストグラムではＩndex＝０のヒストグラムの値Ｈ［０］が図３のＨ［０］＝０の値に近づくようにパラメータ、例えばベロシティの値を変更する。
【００３６】
そして、パラメータの値が変更されたら、再びステップＳ２０４に戻ってヒストグラムの計算を行い、ステップＳ２０５でターゲットヒストグラムとの比較を行う。この処理をヒストグラムがターゲットヒストグラムに等しくなるまで繰り返し行い、等しくなったときに透かし情報の埋め込み処理は終了する。
【００３７】
また、図５に示すように、Ｈ［０］〜Ｈ［Ｎ−１］の変更量を小さくしても、スレショルドレベルＴｈとの大小によって、４ビットの透かしデータ(０１１０)２を埋め込むことができる。この場合にはパラメータの変更量が少ないので、透かしデータを埋め込んだことによるオリジナルの楽曲クオリティの劣化を少なくすることができる。
【００３８】
このように、パラメータを変更してヒストグラムをターゲットヒストグラムに変更することによって、パラメータに透かしデータを埋め込むことができる。したがって、時間情報に依存することなく透かしデータを埋め込むことができる。
【００３９】
また、透かしの埋め込まれたＭＩＤＩデータに、ノイズによってエラーが発生したり、一部のイベントの加工や削除を行ったとしても、データ読み出しの同期が狂うことがないので、通常の誤り訂正技術によってエラーの伝搬を抑制することができる。
【００４０】
次に、本発明に係る透かし情報読み出し装置の一実施形態を図面に基づいて説明する。
【００４１】
図６に示すように、本実施形態の透かし情報読み出し装置１は、ＭＩＤＩデータから特定のパラメータを有する対象イベントを抽出する対象イベント抽出手段６２と、この対象イベント抽出手段６２で抽出された対象イベントをパラメータに基づいて分類してヒストグラムを算出するヒストグラム算出手段６３と、このヒストグラム算出手段６３で算出されたヒストグラムに基づいて、透かしデータを読み出す透かしデータ読み出し手段６４とを含んでいる。
【００４２】
次に、本実施形態の透かし情報読み出し装置による透かし情報の読み出し処理について説明する。
【００４３】
まず透かし情報の埋め込めまれているＭＩＤＩデータが入力されると、ＭＩＤＩデータの中から透かし情報の埋め込まれている対象イベントを抽出する。
【００４４】
そして、対象イベントが抽出されたら、対象イベントのパラメータに基づいて、ＭＩＤＩデータのヒストグラムを計算する。このヒストグラムの計算は、透かし情報の埋め込み処理において行われたヒストグラムの計算と同様の計算が行われるので、詳しい説明は省略する。
【００４５】
このヒストグラムの計算では、図２のステップＳ２０４と同様にヒストグラムを計算して、図３に示すヒストグラムが計算結果として得られる。
【００４６】
したがって、Ｈ［０］〜Ｈ［Ｎ−１］の値とＨ［Ｎ］の値とを比較し、透かしデータを埋め込んだときと同様に、Ｈ［０］〜Ｈ［Ｎ−１］の値とＨ［Ｎ］の値との大小によって透かしデータを読み出すことができる。
【００４７】
例えば、図３ではＨ［４］の値よりも大きい値を示すＨ［１］とＨ［２］はデータ「１」を表し、Ｈ［４］の値よりも小さいＨ［０］とＨ［３］はデータ「０」を表すことになる。したがって、埋め込まれていた透かしデータは(０１１０)２であると読み出すことができる。
【００４８】
このように、対象イベントをパラメータに基づいて分類してヒストグラムを計算することによって、埋め込まれていた透かしデータを読み出すことができる。
【００４９】
【発明の効果】
以上説明したように、本発明の透かし情報埋め込み装置及びその方法によれば、時間情報に依存することなく透かしデータを埋め込むことができるとともに、透かしの埋め込まれたＭＩＤＩデータに、ノイズによってエラーが発生したり、一部のイベントの加工や削除を行ったとしても、データ読み出しでの同期のずれが発生しないので通常の誤り訂正技術によってエラーの伝搬を抑制することができる。
また、本発明の透かし情報読み出し装置及びその方法によれば、上述した透かし情報埋め込み装置によって埋め込まれた透かし情報を読み出すことができる。
【図面の簡単な説明】
【図１】本発明による透かし情報埋め込み装置の一実施形態の構成を示すブロック図である。
【図２】図１に示す透かし情報埋め込み装置による透かしデータの埋め込み処理を説明するためのフローチャートである。
【図３】図１に示す透かし情報埋め込み装置により算出されたターゲットヒストグラムの一例を示す図である。
【図４】図１に示す透かし情報埋め込み装置により算出されたヒストグラムの一例を示す図である。
【図５】図１に示す透かし情報埋め込み装置により算出されたヒストグラムの一例を示す図である。
【図６】本発明による透かし情報読み出し装置の一実施形態の構成を示すブロック図である。
【符号の説明】
１  透かし情報埋め込み装置
２、６２  対象イベント抽出手段
３  ターゲットヒストグラム算出手段
４、６３  ヒストグラム算出手段
５  パラメータ変更手段
６１  透かし情報読み出し装置
６４  透かしデータ読み出し手段
【図１】
0003692902.tif 000002
【図２】
0003692902.tif 000003
【図３】
0003692902.tif 000004
【図４】
0003692902.tif 000005
【図５】
0003692902.tif 000006
【図６】
0003692902.tif 000007