(57)【特許請求の範囲】
【請求項１】
３次元形状データの一部を、透かし埋め込み部分として選択し、前記透かし埋め込み部分を構成する頂点から必要個数の頂点を選択し、これを複製した新たな頂点から、透かし用の３次元形状データを構成する第１のステップ、前記透かし用の形状を構成する各面の向きを元の３次元形状データの対応する面の向きの逆向きに反転させる第２のステップ、元の３次元形状データの埋め込み部分に第２のステップで得られた透かし用の形状を配置し両者を結合する第３のステップ、透かし用の形状と前記埋め込み部分の重複する頂点を除く第４のステップからなる３次元形状モデルへの電子透かし埋め込み方法。
【請求項２】
請求項１に記載の３次元形状モデルへの電子透かし埋め込み方法において、
前記第１から第４のステップの後に、透かし用の形状の表面属性を、埋め込み部分の面の表面属性と同一に設定する第５のステップを加えた３次元形状モデルへの電子透かし埋め込み方法。
【請求項３】
複数のポリゴン頂点で構成されそれらの頂点により定義される各ポリゴン面ごとに、面の向きを表す法線ベクトル属性を有する、陰面消去処理により表示される３次元形状モデリングデータを記録したコンピュータ読取可能な記録媒体であって、
前記３次元形状モデリングデータは、３次元形状データと、透かし用形状データとを含んで構成され、
前記３次元形状データは、その一部に、透かし用形状データを構成するポリゴン頂点のいくつかを共有する透かし埋め込み部分とされる形状データ部分を含んでいるものであって、
前記透かし用形状を構成する各ポリゴン面は、前記透かし埋め込み部分と共有する辺から構成される面であって、その面の法線ベクトルとは逆向きの法線ベクトル属性を持つような、透かし埋め込み部分を構成するポリゴン面と必ず対応するように構成されること
を特徴とする３次元形状モデリングデータを記録したコンピュータ読取可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、３次元形状モデルデータの中に著作権表示情報などを埋め込む電子透かしの手法に関する。近年、３次元形状を表現するデジタルデータをインターネットやＣＤ−ＲＯＭ媒体を通じて、配信、配布する技術の産業への利用が増えてきており、本願発明はそのような分野で利用可能である。
【０００２】
【従来技術】
インターネット上での電子博物館のように、文字や画像、音声に加え、３次元形状のデジタルデータを配信する事例が増加している。このようなデータは、画像などと同様に、不正なコピーが容易にできてしまうため、所有権を保護するための手段が望まれている。
【０００３】
現在では、３次元形状モデルのデータファイルに、著作権情報をテキストコメントとして埋め込むことが一般的な方法として行われているが、テキストで埋め込まれた情報はテキストエディターなどによって簡単に除去することが出来る。また、３次元形状の編集ソフトウェアに読み込んだ後、別形式のファイルフォーマットで保存した場合も、テキストコメントとして埋め込まれた著作権情報が除去されてしまう場合が多い。このような状況で、３次元形状モデルを不正コピーなどの盗用から保護する有効な手段は存在していなかった。
【０００４】
【発明が解決しようとする課題】
本発明はこのような問題点を考慮してなされたものであり、その目的とするところは、３次元形状モデルデータに対して不可視の電子透かしの埋め込みを可能とする方法を提供しようとするものである。目的に応じて適切な情報を埋め込むことにより、データの作成者の証明、作成者に無断でデータを複製して２次利用する行為への牽制、などが可能となる。
【０００５】
【課題を解決するための手段】
図１は、上記課題を解決するために考案した本発明の方法を流れ図で表したものである。すなわち本発明の方法は、３次元形状データの一部を、透かし埋め込み部分として選択し、前記透かし埋め込み部分を構成する頂点から必要個数の頂点を選択し、これを複製した新たな頂点から、透かし用の３次元形状データを構成する第１のステップ（Ｓ１）、前記透かし用の形状を構成する各面の向きを元の３次元形状データの対応する面の向きの逆向きに反転させる第２のステップ（Ｓ２）、元の３次元形状データの埋め込み部分に透かし用の形状を配置し両者が同一ノードとなるように結合する第３のステップ（Ｓ３）、透かし用の形状と前記埋め込み部分の重複する頂点を除く第４のステップ（Ｓ４）、からなることを特徴とする３次元形状モデルへの電子透かしの埋め込み方法である。
【０００６】
本発明の方法では、第１のステップにおいて、透かし埋め込み部分から必要個数選択した頂点と同一の座標値をもつ頂点から透かし用３次元形状データを作成する。このとき、ワイヤーフレームモデルで表示した時透かしが現れないようにするために、作成した透かし用形状データを構成する線分の中に透かし埋め込み部分からはみ出すものができないよう構成する。言い換えると、作成した透かし用形状データに、埋め込み部分には存在しなかった辺（図形要素として定義された線分、またはそのような線分の連なり）ができないように構成する。
【０００７】
コンピュータグラフィックス（以下ＣＧ）のレンダリング計算では、隠面消去と呼ばれる処理が行われる。ＣＧオブジェクトの各面について表向きか裏向きかを判定して裏向きの面は不可視とする。面の向きの判定は、図１１に示すように面の法線ベクトルNと視線ベクトルVとの内積の符号で判定される。すなわち内積が正（NとVのなす角が鋭角）なら表向き、内積が負（NとVのなす角が鈍角）なら裏向きである。表向きの面のより手前に他の表向きの面が無ければ、その面は表示される。本発明の方法では、この原理を利用して、第２のステップにおいて、透かし用形状の構成要素の各面の法線ベクトルは、それが貼り付けられる面と反対の法線ベクトルを持つように定義する。
【０００８】
第３のステップは、元の３次元形状の透かし埋め込み部分と埋め込まれた透かし用形状を、同一ノードとすることにより、透かしを埋め込んだ３次元形状モデルが、３次元モデリングツールに読込まれても、シーングラフ上で透かしの存在が知覚されないようにするための処置である。
【０００９】
前記第４のステップで、透かし用の形状と埋め込み部分の形状の座標値の重複する頂点を除くことにより、埋め込んだ透かしデータにデータ加工に対する耐性を持たせることになる。これはどういうことかというと、３次元モデルデータの利用者が、何らかの方法であるいは偶然により、透かし用形状データを抽出することができた場合に、抽出した透かし用形状部分を除去しようとしても、透かし用形状は元の３次元形状データと１つ以上の頂点を共有しているので、必ず元の３次元形状データの一部が損なわれることになるため、透かし用形状だけを除去することはできないということである。こうして結果的に、元の３次元形状の透かし埋め込み部分と幾つかの頂点を共有していて、透かし用形状を構成する各面は、前記透かし埋め込み部分に、同一の辺（共有する辺）から構成される逆向きの面が必ず存在するように定義された透かし用形状が作成される。
【００１０】
本発明の、好ましい他の実施態様として、前記本発明の方法の第１から第４のステップの後に、透かし用の形状の表面属性を、埋め込む面形状のそれと同一に設定する第５のステップを加えた方法が可能である。この手順を図１０の流れ図に示した。第５のステップ（Ｓ５）を加えることにより、透かし用形状がさらに認識されにくくなり、より好ましい。
【００１１】
また、第２の発明は、複数のポリゴン頂点で構成されそれらの頂点により定義される各ポリゴン面ごとに、面の向きを表す法線ベクトル属性を有する、陰面消去処理により表示される３次元形状モデリングデータを記録したコンピュータ読取可能な記録媒体であって、前記３次元形状モデリングデータは、３次元形状データと、透かし用形状データとを含んで構成され、前記３次元形状データは、その一部に、透かし用形状データを構成するポリゴン頂点のいくつかを共有する透かし埋め込み部分とされる形状データ部分を含んでいるものであって、前記透かし用形状を構成する各ポリゴン面は、前記透かし埋め込み部分と共有する辺から構成される面であって、その面の法線ベクトルとは逆向きの法線ベクトル属性を持つような、透かし埋め込み部分を構成するポリゴン面と必ず対応するように構成されることを特徴とする３次元形状モデリングデータを記録したコンピュータ読取り可能な記録媒体である。このような透かし用形状は、もちろん、第１の発明の方法によって作成することができるが、その他の方法で作成してもよい。
【００１２】
【発明の実施の形態】
以下、本発明の方法の実施の形態を具体例により説明してゆく。
【００１３】
（元の３次元形状）電子透かしを埋め込み、不正コピーを抑止したい3次元形状モデルを図２の様な形状とする。ここでは、透かしを、手前のメッシュをかけた面、すなわち頂点(1,1,1)(-1,1,1)(-1,-1,1)(1,-1,1)で定義される面１００に埋め込むことし、この面１００のポリゴンの構成例を図３に示す。図３では多数の小さな四角形ポリゴンで構成されている。図３で示される図形が、この場合の埋め込み部分に相当する。
【００１４】
（透かし用形状の作成）電子透かしとして埋め込む透かし形状の作成手順を以下に記す。まず、電子透かしとして３次元形状に埋め込む情報を用意する。埋め込む情報は図４のような、３次元形状データの作成者、著作権者を表す文字、あるいはロゴ、図形でもよい。このような情報を適当な多角形図形に置き換る。この時、ワイヤーフレーム表示した場合に透かしが現れないようにするために、図５に示すように、埋め込む情報を、図３のポリゴンの頂点と同じ座標値の頂点を持つ多角形図形に置き換える。この作業は、例えば、ＣＧ制作作業者が通常使用する３次元形状モデリングシステム上で対話的に行うことが可能である。図６は、このようにして、埋め込む情報を、全ての頂点および辺が面１００のメッシュと一致するような多角形図形に置き換えたところを示している。図６の多角形図形を透かし用形状２００とする。
【００１５】
（法線ベクトルの反転）作成した透かし用形状２００を、元の３次元形状データの裏面に貼り付けるために、透かし用形状２００を構成する多角形の面の法線ベクトルを反転させる。この反転は、具体的には、多角形の面を定義する頂点列の並びを逆順にして面を再定義するか、あるいは、当該面の法線ベクトルとしての属性を書き換えるかする。どちらを行うかは採用する３次元グラフィックシステムの３次元形状モデルの記述様式に依存するが、いずれの場合でも、法線ベクトルの反転は、一定のアルゴリズムとして記述できるので、プログラムによる自動処理が可能である。
【００１６】
（透かし形状の結合）作成した透かし用形状２００は、埋め込む面１００をメッシュ状に構成する図３のポリゴンの頂点と同じ座標値の頂点から構成されており、法線ベクトルがそれらのポリゴンと逆方向なので、面１００の裏面に貼り付けられた形で定義されたことになる。次に、この透かし用形状２００が、３次元グラフィックシステム上で、常に面１００と共に表示されるようにするため、面１００（面１００を構成する図３の多数のポリゴン集合）と透かし用形状２００をシーングラフで同一のノードとして結合させる（再定義する）。
【００１７】
ここでいうノードとはグラフィックスシステムが扱う一つの図形単位であって、グラフィックスシステムは、ある画面を表示する際に、１つのノード単位に表示対象とするかしないかを制御する。同一のノードとして結合する具体的やり方は採用するグラフィックスシステムの３次元形状モデルの記述様式に依存するが、これも一定の手順で記述できる。
【００１８】
（透かし用形状の埋め込み）面１００の多数のポリゴンの頂点と、透かし用形状２００の頂点で座標値が重複しているものがいくつかある。これら重複する頂点の片方を除去し、残った頂点で必要な図形を再定義する。こうすることにより、万一、法線ベクトルの向きに関して図形を抽出することにより透かし形状図形の全部または一部が抽出された場合に、抽出した図形を削除した時、元の図形にも必ず損なわれる部分が生じるようになる。
【００１９】
（透かし用形状の表面属性設定）最後に、透かし用形状２００の鏡面反射光、拡散反射光、環境光などを、元の３次元形状と同じ値、属性値に設定する。こうすることにより、透かし用形状２００の存在がいっそう認識されにくくなる。
【００２０】
このようにして図６の透かし用形状２００を、元の形状の面１００に埋め込んだ様子を図８に示す。図８のレンダリング結果を図９に示す。図９（ａ）は、面の表（Z>1）に視点がある場合である。この場合では、透かし用形状２００は、面の裏側に位置しており、法線も視線方向と逆になっているので、表示されない。また、図９（ｂ）は、面の裏（Z<1）に視点がある場合である。この場合では、図９（ａ）と逆になっているので、透かし形状のみ表示される。また、ワイヤーフレーム表示した場合、視線をどちらの方向にとっても、ポリゴンメッシュのみが表示される。
【００２１】
元の３次元形状図形への部分的改変に対して、透かしの耐性を向上させるためには、埋め込み部分を複数箇所選択して、透かし用形状を、各埋め込み部分毎に作成して埋め込めばよい（複数箇所の埋め込み部分が互いに合同な形状であれば、透かし用形状の作成は１度ですむ）。
【００２２】
本発明の方法で挿入した透かし情報を確認するには、面の向きに拘わらずに全ての図形を透過度５０％程度でレンダリングして表示する特別なビュワーを用いる。このビュワーでは、透かし用形状を埋め込んだ部分は、（元の３次元形状と面が重なっており）透過度が異なってくるため、透かしとして埋め込んだ情報が浮き上がってみえる。このようなビュワーシステムは一般に市販されていないが、３次元ＣＧ技術に熟知した者であれば作成することは可能である。
【００２３】
以上、本発明の方法を図２の元の３次元形状データと図６の透かし用形状２００の場合についての具体例で説明した。この具体例では埋め込み部分である面１００（実際には多数の小ポリゴンの集合）は、一つの平面を形成しているが、一般には、透かしを埋め込む、埋め込み部分は単一平面でなくてもよい。言い換えれば、埋め込み部分を構成する図形を形成する各頂点は、同一平面上にある必要はない。本発明の本質的アイデアは、埋め込み部分の図形を構成する頂点から必要個数の頂点を使って、埋め込み部分とは逆向きの面を持つ、透かし用形状を構成することだからである（このような構成は３次元形状モデリングシステム上で対話的に作成できる。あるいは、埋め込み部分のデータを与えて自動的に構成する専用プログラムを作成することも可能である）。従って、透かし用形状はワイヤーフレーム表示では検知することはできない。ただし、透かし形状は、一般には、埋め込み部分が決まらないと作成することはできない。
【００２４】
本発明の方法で作成された３次元形状モデリングデータおよびこれを記録した記録媒体には、透かし埋め込み部分を構成する面と、その面の頂点を用いて逆方向の法線ベクトルを持つよう定義した面で構成される透かし用形状が含まれる。
【００２５】
【発明の効果】
以上詳しく説明したように、本発明の方法によれば、３次元形状モデルに簡単な手順で不可視の透かしを埋め込むことができる。３次元形状モデルデータに電子透かしを挿入する簡単で実用的な方法はこれまでにない。したがって本発明は、インターネット上の電子カタログのように、３次元形状のデジタルデータを配信する場合等において、データの作成者の証明、作成者に無断でデータを複製して２次利用する行為への牽制、などが可能となり、不正コピーの抑止および所有権の保護の手段として利用できる極めて実用性のある、画期的な発明である。
【図面の簡単な説明】
【図１】  本発明の方法の手順を説明する流れ図である。
【図２】  ３次元形状モデルの例である。
【図３】  埋め込み部分である面１００の拡大図である。
【図４】  電子透かしとして埋め込む文字図形情報である。
【図５】  透かし用形状２００の作成過程を説明する図である。
【図６】  作成された透かし用形状２００である。
【図７】  法線を反転した透かし用形状２００である。
【図８】  透かし用形状２００を面１００に埋め込んだ状態を示す図である。
【図９】  透かし用形状２００を埋め込んだ図形のレンダリング結果である。
【図１０】本発明の方法の手順を説明する流れ図である。
【図１１】面の法線ベクトルと面の表裏の判定方法を説明する図である。
【符号の説明】
１００  実施例の3次元形状の透かし埋め込み部分
２００  透かし用形状
【図１】
0004287013.tif 000002
【図２】
0004287013.tif 000003
【図３】
0004287013.tif 000004
【図４】
0004287013.tif 000005
【図５】
0004287013.tif 000006
【図６】
0004287013.tif 000007
【図７】
0004287013.tif 000008
【図８】
0004287013.tif 000009
【図９】
0004287013.tif 000010
【図１０】
0004287013.tif 000011
【図１１】
0004287013.tif 000012