(57)【要約】【課題】スクランブル化処理と可視透かし埋め込み処理とについての組み合わせ及び処理順序を選択自在とすることにより、画像の使用目的等に応じて画質劣化レベルを細かく設定することができるようにする。【解決手段】スクランブル化手段２７によるスクランブル化処理と可視透かし埋め込み手段２８による可視透かし埋め込み処理とについての組み合わせ及び処理順序を指定可能とし、指定された組み合わせ及び処理順序に基づいて、スクランブル化手段２７によるスクランブル化処理と可視透かし埋め込み手段２８による可視透かし埋め込み処理とを実行するようにした。これにより、スクランブル化処理と可視透かし埋め込み処理とについての組み合わせ及び処理順序を選択自在とすることができるので、画像の使用目的等に応じて画質劣化レベルを細かく設定することができる。【選択図】        図１０
2004236231.tif 000002
【特許請求の範囲】
【請求項１】
画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段を備える画像符号化装置において、
前記圧縮符号化手段により量子化された離散ウェーブレット変換係数に対し、データのスクランブル化を行うスクランブル化手段と、
前記圧縮符号化手段により量子化された離散ウェーブレット変換係数に対し、可視透かしを埋め込む可視透かし埋め込み手段と、
前記スクランブル化手段によるスクランブル化処理と前記可視透かし埋め込み手段による可視透かし埋め込み処理とについての組み合わせ及び処理順序を指定可能とする処理指定手段と、
を備え、
前記処理指定手段により指定された組み合わせ及び処理順序に基づいて、前記スクランブル化手段によるスクランブル化処理と前記可視透かし埋め込み手段による可視透かし埋め込み処理とを実行するようにしたことを特徴とする画像符号化装置。
【請求項２】
前記処理指定手段による指定により、前記スクランブル化手段によるスクランブル化処理を実行した後に、前記可視透かし埋め込み手段による可視透かし埋め込み処理を実行することを特徴とする請求項１記載の画像符号化装置。
【請求項３】
前記処理指定手段による指定により、前記可視透かし埋め込み手段による可視透かし埋め込み処理を実行した後に、前記スクランブル化手段によるスクランブル化処理を実行することを特徴とする請求項１記載の画像符号化装置。
【請求項４】
前記処理指定手段による指定により、前記スクランブル化手段によるスクランブル化処理を実行した後に、前記スクランブル化手段によるスクランブル化処理を再度実行することを特徴とする請求項１記載の画像符号化装置。
【請求項５】
前記スクランブル化手段は、量子化された離散ウェーブレット変換係数に対するスクランブルレベルが可変設定自在である、ことを特徴とする請求項１ないし４の何れか一記載の画像符号化装置。
【請求項６】
ビットプレーン化された離散ウェーブレット変換係数であるビット係数のビット位置の選択によりスクランブルレベルが可変設定自在である、ことを特徴とする請求項５記載の画像符号化装置。
【請求項７】
離散ウェーブレット変換係数のうちの離散ウェーブレット変換処理によるサブバンドの階層位置の選択によりスクランブルレベルが可変設定自在である、ことを特徴とする請求項５記載の画像符号化装置。
【請求項８】
離散ウェーブレット変換による符号化単位となる複数の矩形領域が集合しスクランブル化が施されるブロックの大きさの選択によりスクランブルレベルが可変設定自在である、ことを特徴とする請求項５記載の画像符号化装置。
【請求項９】
請求項１ないし８のいずれか一記載の画像符号化装置により圧縮符号化された符号データを取得し、当該符号データを復号する符号復号化装置において、
前記符号データ中に埋め込まれている可視透かしを除去する可視透かし除去手段と、
前記符号データのスクランブルを解除するスクランブル解除手段と、
前記画像符号化装置におけるスクランブル化手段によるスクランブル化処理と可視透かし埋め込み手段による可視透かし埋め込み処理とについての組み合わせ及び処理順序を取得する処理順序取得手段と、
を備え、
前記処理順序取得手段により取得した組み合わせ及び処理順序とは逆の順序で、前記可視透かし除去手段による可視透かし除去処理と前記スクランブル解除手段によるスクランブル解除処理とを実行するようにしたことを特徴とする符号復号化装置。
【請求項１０】
画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化機能を備える画像符号化装置が有するコンピュータにインストールされるか、あるいは解釈されて実行されるプログラムであって、前記コンピュータに、
前記圧縮符号化機能により量子化された離散ウェーブレット変換係数に対し、データのスクランブル化を行うスクランブル化機能と、
前記圧縮符号化機能により量子化された離散ウェーブレット変換係数に対し、可視透かしを埋め込む可視透かし埋め込み機能と、
前記スクランブル化機能によるスクランブル化処理と前記可視透かし埋め込み機能による可視透かし埋め込み処理とについての組み合わせ及び処理順序を指定可能とする処理指定機能と、
を実行させ、
前記処理指定機能により指定された組み合わせ及び処理順序に基づいて、前記スクランブル化機能によるスクランブル化処理と前記可視透かし埋め込み機能による可視透かし埋め込み処理とを前記コンピュータに実行させるようにしたことを特徴とするプログラム。
【請求項１１】
前記処理指定機能による指定により、前記スクランブル化機能によるスクランブル化処理を実行した後に、前記可視透かし埋め込み機能による可視透かし埋め込み処理を実行することを特徴とする請求項１０記載のプログラム。
【請求項１２】
前記処理指定機能による指定により、前記可視透かし埋め込み機能による可視透かし埋め込み処理を実行した後に、前記スクランブル化機能によるスクランブル化処理を実行することを特徴とする請求項１０記載のプログラム。
【請求項１３】
前記処理指定機能による指定により、前記スクランブル化機能によるスクランブル化処理を実行した後に、前記スクランブル化機能によるスクランブル化処理を再度実行することを特徴とする請求項１０記載のプログラム。
【請求項１４】
前記スクランブル化機能は、量子化された離散ウェーブレット変換係数に対するスクランブルレベルが可変設定自在である、ことを特徴とする請求項１０ないし１３の何れか一記載のプログラム。
【請求項１５】
ビットプレーン化された離散ウェーブレット変換係数であるビット係数のビット位置の選択によりスクランブルレベルが可変設定自在である、ことを特徴とする請求項１４記載のプログラム。
【請求項１６】
離散ウェーブレット変換係数のうちの離散ウェーブレット変換処理によるサブバンドの階層位置の選択によりスクランブルレベルが可変設定自在である、ことを特徴とする請求項１４記載のプログラム。
【請求項１７】
離散ウェーブレット変換による符号化単位となる複数の矩形領域が集合しスクランブル化が施されるブロックの大きさの選択によりスクランブルレベルが可変設定自在である、ことを特徴とする請求項１４記載のプログラム。
【請求項１８】
請求項１ないし８のいずれか一記載の画像符号化装置により圧縮符号化された符号データを取得し、当該符号データを復号する符号復号化装置が有するコンピュータにインストールされるか、あるいは解釈されて実行されるプログラムであって、前記コンピュータに、
前記符号データ中に埋め込まれている可視透かしを除去する可視透かし除去機能と、
前記符号データのスクランブルを解除するスクランブル解除機能と、
前記画像符号化装置におけるスクランブル化手段によるスクランブル化処理と可視透かし埋め込み手段による可視透かし埋め込み処理とについての組み合わせ及び処理順序を取得する処理順序取得機能と、
を実行させ、
前記処理順序取得機能により取得した組み合わせ及び処理順序とは逆の順序で、前記可視透かし除去機能による可視透かし除去処理と前記スクランブル解除機能によるスクランブル解除処理とを前記コンピュータに実行させるようにしたことを特徴とするプログラム。
【請求項１９】
画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化機能を備える画像符号化装置が有するコンピュータにインストールされるか、あるいは解釈されて実行されるプログラムであって、前記コンピュータに、
前記圧縮符号化機能により量子化された離散ウェーブレット変換係数に対し、データのスクランブル化を行うスクランブル化機能と、
前記圧縮符号化機能により量子化された離散ウェーブレット変換係数に対し、可視透かしを埋め込む可視透かし埋め込み機能と、
前記スクランブル化機能によるスクランブル化処理と前記可視透かし埋め込み機能による可視透かし埋め込み処理とについての組み合わせ及び処理順序を指定可能とする処理指定機能と、
を実行させ、
前記処理指定機能により指定された組み合わせ及び処理順序に基づいて、前記スクランブル化機能によるスクランブル化処理と前記可視透かし埋め込み機能による可視透かし埋め込み処理とを前記コンピュータに実行させるようにしたプログラムを記憶することを特徴とする記憶媒体。
【請求項２０】
前記処理指定機能による指定により、前記スクランブル化機能によるスクランブル化処理を実行した後に、前記可視透かし埋め込み機能による可視透かし埋め込み処理を実行するプログラムを記憶することを特徴とする請求項１９記載の記憶媒体。
【請求項２１】
前記処理指定機能による指定により、前記可視透かし埋め込み機能による可視透かし埋め込み処理を実行した後に、前記スクランブル化機能によるスクランブル化処理を実行するプログラムを記憶することを特徴とする請求項１９記載の記憶媒体。
【請求項２２】
前記処理指定機能による指定により、前記スクランブル化機能によるスクランブル化処理を実行した後に、前記スクランブル化機能によるスクランブル化処理を再度実行するプログラムを記憶することを特徴とする請求項１９記載の記憶媒体。
【請求項２３】
前記スクランブル化機能は、量子化された離散ウェーブレット変換係数に対するスクランブルレベルが可変設定自在であるプログラムを記憶することを特徴とする請求項１９ないし２２の何れか一記載の記憶媒体。
【請求項２４】
ビットプレーン化された離散ウェーブレット変換係数であるビット係数のビット位置の選択によりスクランブルレベルが可変設定自在であるプログラムを記憶することを特徴とする請求項２３記載の記憶媒体。
【請求項２５】
離散ウェーブレット変換係数のうちの離散ウェーブレット変換処理によるサブバンドの階層位置の選択によりスクランブルレベルが可変設定自在であるプログラムを記憶することを特徴とする請求項２３記載の記憶媒体。
【請求項２６】
離散ウェーブレット変換による符号化単位となる複数の矩形領域が集合しスクランブル化が施されるブロックの大きさの選択によりスクランブルレベルが可変設定自在であるプログラムを記憶することを特徴とする請求項２３記載の記憶媒体。
【請求項２７】
請求項１ないし９のいずれか一記載の画像符号化装置により圧縮符号化された符号データを取得し、当該符号データを復号する符号復号化装置が有するコンピュータにインストールされるか、あるいは解釈されて実行されるプログラムであって、前記コンピュータに、
前記符号データ中に埋め込まれている可視透かしを除去する可視透かし除去機能と、
前記符号データのスクランブルを解除するスクランブル解除機能と、
前記画像符号化装置におけるスクランブル化手段によるスクランブル化処理と可視透かし埋め込み手段による可視透かし埋め込み処理とについての組み合わせ及び処理順序を取得する処理順序取得機能と、
を実行させ、
前記処理順序取得機能により取得した組み合わせ及び処理順序とは逆の順序で、前記可視透かし除去機能による可視透かし除去処理と前記スクランブル解除機能によるスクランブル解除処理とを前記コンピュータに実行させるようにしたプログラムを記憶することを特徴とする記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像符号化装置、符号復号化装置、プログラム及び記憶媒体に関する。
【０００２】
【従来の技術】
近年、インターネットやパソコン等の普及・発展に伴い、インターネットを通じたデジタルデータの通信が幅広く行われるようになってきている。ここに、このようなデジタルデータの送信者は、そのデータを符号化して送信するようにしている。現に、プロバイダ等のデータ送信者（配布者）は、符号化された画像データを不特定多数の利用者に送信して配給するサービスを行っている。このようなサービスの一つとして、通信販売等に置ける商品紹介に関するようなデータを、インターネットを通じて利用者に配信することが考えられる。この場合、プロバイダに対して予め料金を支払っている利用者（閲覧資格者）が、その支払った金額に応じて、受信した符号化データを復号して閲覧できるサービスである。
【０００３】
しかしながら、このように不特定多数の人に符号化データを配信するサービスにおいては、閲覧資格者のみがその符号化されたデータを正しく復号できなければ意味がない。かといって、将来、プロバイダと契約して閲覧資格者となる可能性のある一般ユーザが、全く、その符号化された画像データを認識できないと、元々興味を引かず、その閲覧資格者数の増大を見込めない。
【０００４】
このようなことから、この種の符号データに関しては、不可視の電子透かしを埋め込む方法の他に、例えば、地紋縞模様のような可視透かしデータをデジタルデータ中に埋め込むマーキング技術がある。ネットワーク等を介して利用者に供給されるデジタルデータに何らかの付加情報が埋め込まれていることを明示するためには、可視透かしデータを用いるマーキング技術が適しているが、可視透かしデータが付加されたデジタルデータは、その一部が可視透かしデータにより隠されたり画質が低下するので、利用者は、可視透かしデータが除去されない限り、本来の元のデジタルデータを見ることはできない。そこで、例えば、可視透かしデータをデジタルデータに埋め込んで付加情報が埋め込まれていることを明示しつつ配信し、供給者に当該デジタルデータの対価を支払った正当な利用者にのみ、付加情報を除いたデジタルデータの使用を許可したいような場合がある（例えば、特許文献１参照）。
【０００５】
また、この種の符号データに関しては、スクランブル処理した符号データとして配信する一方、閲覧資格者には復号時にスクランブルを解除するためのソフトウェア等を配布しておくことで、閲覧資格者は復号時にはスクランブルを解除して本来の正常な画像を閲覧できるようにするスクランブル方式も広く用いられている。このようにスクランブル処理することで、閲覧資格のないユーザは、本来の画像としては見にくかったり多少判りにくくなったりするが、逆に、本来の画像を見たくなる等の宣伝効果が生じ、閲覧資格者数の増大を見込めることとなる。
【０００６】
このようなスクランブル方式に関しては、多数の提案例がある。そのうち、例えば、ラインローテーション、ラインバーミュテーション等のようにデータ列の並べ替えによって実現する方式と（例えば、特許文献２参照）、画像データのランダマイズ化（乱数暗号化）によって実現する方式と、その他の方式（例えば、色空間軸の回転方式）等がある（これらについては、例えば、特許文献３参照）。
【０００７】
また、近年においては、高精細画像を実現する画像圧縮方式の一つとして、高圧縮率でも高画質な画像を復元可能なＪＰＥＧ２０００という新しい方式が規格化されつつある。かかるＪＰＥＧ２０００においては、画像を矩形領域（タイル）に分割することにより、少ないメモリ環境下で圧縮伸長処理を行うことが可能である。すなわち、個々のタイルが圧縮伸長プロセスを実行する際の基本単位となり、圧縮伸長動作はタイル毎に独立に行うことができる。
【０００８】
【特許文献１】
特開２０００−１８４１７７公報
【特許文献２】
特開２００１−２１８１８４公報
【特許文献３】
特開２０００−１１５５８１公報
【０００９】
【発明が解決しようとする課題】
ところで、特許文献１，２，３に記載されているような可視透かしデータを埋め込む方式やスクランブル方式を組み合わせて用いたいような場合が考えられる。そのような場合には、単に方式を組み合わせるだけでなく、その処理順序も変更できるようにすれば便利である。
【００１０】
本発明の目的は、スクランブル化処理と可視透かし埋め込み処理とについての組み合わせ及び処理順序を選択自在とすることにより、画像の使用目的等に応じて画質劣化レベルを細かく設定することができるようにすることである。
【００１１】
【課題を解決するための手段】
請求項１記載の発明の画像符号化装置は、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段を備える画像符号化装置において、前記圧縮符号化手段により量子化された離散ウェーブレット変換係数に対し、データのスクランブル化を行うスクランブル化手段と、前記圧縮符号化手段により量子化された離散ウェーブレット変換係数に対し、可視透かしを埋め込む可視透かし埋め込み手段と、前記スクランブル化手段によるスクランブル化処理と前記可視透かし埋め込み手段による可視透かし埋め込み処理とについての組み合わせ及び処理順序を指定可能とする処理指定手段と、を備え、前記処理指定手段により指定された組み合わせ及び処理順序に基づいて、前記スクランブル化手段によるスクランブル化処理と前記可視透かし埋め込み手段による可視透かし埋め込み処理とを実行するようにした。
【００１２】
したがって、スクランブル化処理と可視透かし埋め込み処理とについての組み合わせ及び処理順序を選択自在とすることにより、画像の使用目的等に応じて画質劣化レベルを細かく設定することが可能になる。
【００１３】
請求項２記載の発明は、請求項１記載の画像符号化装置において、前記処理指定手段による指定により、前記スクランブル化手段によるスクランブル化処理を実行した後に、前記可視透かし埋め込み手段による可視透かし埋め込み処理を実行する。
【００１４】
したがって、このような符号データについて、可視透かしを除去せず、かつ、スクランブル化されたままで復号処理した場合には、画像は鮮明に見ることはできないが可視透かしは鮮明に読み取れる状態となる。
【００１５】
請求項３記載の発明は、請求項１記載の画像符号化装置において、前記処理指定手段による指定により、前記可視透かし埋め込み手段による可視透かし埋め込み処理を実行した後に、前記スクランブル化手段によるスクランブル化処理を実行する。
【００１６】
したがって、このような符号データについて、可視透かしを除去せず、かつ、スクランブル化されたままで復号処理した場合には、画像のみならず透かしもおぼろげにしか見えない状態となる。
【００１７】
請求項４記載の発明は、請求項１記載の画像符号化装置において、前記処理指定手段による指定により、前記スクランブル化手段によるスクランブル化処理を実行した後に、前記スクランブル化手段によるスクランブル化処理を再度実行する。
【００１８】
したがって、隠蔽レベルの高いスクランブル機能を発揮することが可能になる。
【００１９】
請求項５記載の発明は、請求項１ないし４の何れか一記載の画像符号化装置において、前記スクランブル化手段は、量子化された離散ウェーブレット変換係数に対するスクランブルレベルが可変設定自在である。
【００２０】
したがって、量子化された離散ウェーブレット変換係数に対するスクランブルレベルを可変設定自在とすることにより、スクランブルして提供する画像データの画質の劣化レベルを加減することができ、目的・用途に応じたスクランブル画像の提供が可能となる。
【００２１】
請求項６記載の発明は、請求項５記載の画像符号化装置において、ビットプレーン化された離散ウェーブレット変換係数であるビット係数のビット位置の選択によりスクランブルレベルが可変設定自在である。
【００２２】
したがって、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、画像データの閲覧に際してサブバンド機能等を利用することでサムネイル画像の提供が簡単に行えるが、例えば、ビット係数の上位ビットのデータをランダマイズ化によりスクランブルをかければ、解像度は変わらない状態で画像の形が崩れることによりボケたようなスクランブル、即ち、サムネイル画像への画質劣化の影響を与えやすいスクランブルを実現でき、ビット係数のビット位置の選択によりスクランブルレベルが可変設定自在となる。
【００２３】
請求項７記載の発明は、請求項５記載の画像符号化装置において、離散ウェーブレット変換係数のうちの離散ウェーブレット変換処理によるサブバンドの階層位置の選択によりスクランブルレベルが可変設定自在である。
【００２４】
したがって、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、解像度に関してサブバンド階層構造を有し、低階層のＬＬなるサブバンドが最も解像度の高い部分となるので、例えば、低階層のサブバンド部分のデータをランダマイズ化によりスクランブルをかければ、繊細なスクランブル、即ち、サムネイル画像への画質劣化の影響を与えにくいスクランブルを実現でき、離散ウェーブレット変換処理によるサブバンドの階層位置の選択によりスクランブルレベルが可変設定自在となる。
【００２５】
請求項８記載の発明は、請求項５記載の画像符号化装置において、離散ウェーブレット変換による符号化単位となる複数の矩形領域が集合しスクランブル化が施されるブロックの大きさの選択によりスクランブルレベルが可変設定自在である。
【００２６】
したがって、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、画像全体に限らず、符号化単位となる複数の矩形領域（タイル）を単位として処理が可能であるので、例えば、ランダマイズによるスクランブル化を行う領域を限定するブロックの大きさを大きくすると、雑然としたスクランブル画像となり、画像中で表現される元の形（画像全体像）が判り難くなるスクランブル、即ち、サムネイル画像への画質劣化の影響を与えやすいスクランブルを実現でき、スクランブル化が施されるブロックの大きさの選択によりスクランブルレベルが可変設定自在となる。
【００２７】
請求項９記載の発明の符号復号化装置は、請求項１ないし８のいずれか一記載の画像符号化装置により圧縮符号化された符号データを取得し、当該符号データを復号する符号復号化装置において、前記符号データ中に埋め込まれている可視透かしを除去する可視透かし除去手段と、前記符号データのスクランブルを解除するスクランブル解除手段と、前記画像符号化装置におけるスクランブル化手段によるスクランブル化処理と可視透かし埋め込み手段による可視透かし埋め込み処理とについての組み合わせ及び処理順序を取得する処理順序取得手段と、を備え、前記処理順序取得手段により取得した組み合わせ及び処理順序とは逆の順序で、前記可視透かし除去手段による可視透かし除去処理と前記スクランブル解除手段によるスクランブル解除処理とを実行するようにした。
【００２８】
したがって、請求項１ないし８のいずれか一記載の画像符号化装置により圧縮符号化された符号データを生成した際におけるスクランブル化処理と可視透かし埋め込み処理との組み合わせ及び処理順序とは逆の順序で、可視透かし除去処理とスクランブル解除処理とが行われることにより、元の画像データを復元することが可能になるので、このような機能を発揮するソフトウェア等の配布をコントロールすることで、特定の者に対してのみに元画像の閲覧を許可することが可能になる。
【００２９】
請求項１０記載の発明のプログラムは、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化機能を備える画像符号化装置が有するコンピュータにインストールされるか、あるいは解釈されて実行されるプログラムであって、前記コンピュータに、前記圧縮符号化機能により量子化された離散ウェーブレット変換係数に対し、データのスクランブル化を行うスクランブル化機能と、前記圧縮符号化機能により量子化された離散ウェーブレット変換係数に対し、可視透かしを埋め込む可視透かし埋め込み機能と、前記スクランブル化機能によるスクランブル化処理と前記可視透かし埋め込み機能による可視透かし埋め込み処理とについての組み合わせ及び処理順序を指定可能とする処理指定機能と、を実行させ、前記処理指定機能により指定された組み合わせ及び処理順序に基づいて、前記スクランブル化機能によるスクランブル化処理と前記可視透かし埋め込み機能による可視透かし埋め込み処理とを前記コンピュータに実行させるようにした。
【００３０】
したがって、スクランブル化処理と可視透かし埋め込み処理とについての組み合わせ及び処理順序を選択自在とすることにより、画像の使用目的等に応じて画質劣化レベルを細かく設定することが可能になる。
【００３１】
請求項１１記載の発明は、請求項１０記載のプログラムにおいて、前記処理指定機能による指定により、前記スクランブル化機能によるスクランブル化処理を実行した後に、前記可視透かし埋め込み機能による可視透かし埋め込み処理を実行する。
【００３２】
したがって、このような符号データについて、可視透かしを除去せず、かつ、スクランブル化されたままで復号処理した場合には、画像は鮮明に見ることはできないが可視透かしは鮮明に読み取れる状態となる。
【００３３】
請求項１２記載の発明は、請求項１０記載のプログラムにおいて、前記処理指定機能による指定により、前記可視透かし埋め込み機能による可視透かし埋め込み処理を実行した後に、前記スクランブル化機能によるスクランブル化処理を実行する。
【００３４】
したがって、このような符号データについて、可視透かしを除去せず、かつ、スクランブル化されたままで復号処理した場合には、画像のみならず透かしもおぼろげにしか見えない状態となる。
【００３５】
請求項１３記載の発明は、請求項１０記載のプログラムにおいて、前記処理指定機能による指定により、前記スクランブル化機能によるスクランブル化処理を実行した後に、前記スクランブル化機能によるスクランブル化処理を再度実行する。
【００３６】
したがって、隠蔽レベルの高いスクランブル機能を発揮することが可能になる。
【００３７】
請求項１４記載の発明は、請求項１０ないし１３の何れか一記載のプログラムにおいて、前記スクランブル化機能は、量子化された離散ウェーブレット変換係数に対するスクランブルレベルが可変設定自在である。
【００３８】
したがって、量子化された離散ウェーブレット変換係数に対するスクランブルレベルを可変設定自在とすることにより、スクランブルして提供する画像データの画質の劣化レベルを加減することができ、目的・用途に応じたスクランブル画像の提供が可能となる。
【００３９】
請求項１５記載の発明は、請求項１４記載のプログラムにおいて、ビットプレーン化された離散ウェーブレット変換係数であるビット係数のビット位置の選択によりスクランブルレベルが可変設定自在である。
【００４０】
したがって、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、画像データの閲覧に際してサブバンド機能等を利用することでサムネイル画像の提供が簡単に行えるが、例えば、ビット係数の上位ビットのデータをランダマイズ化によりスクランブルをかければ、解像度は変わらない状態で画像の形が崩れることによりボケたようなスクランブル、即ち、サムネイル画像への画質劣化の影響を与えやすいスクランブルを実現でき、ビット係数のビット位置の選択によりスクランブルレベルが可変設定自在となる。
【００４１】
請求項１６記載の発明は、請求項１４記載のプログラムにおいて、離散ウェーブレット変換係数のうちの離散ウェーブレット変換処理によるサブバンドの階層位置の選択によりスクランブルレベルが可変設定自在である。
【００４２】
したがって、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、解像度に関してサブバンド階層構造を有し、低階層のＬＬなるサブバンドが最も解像度の高い部分となるので、例えば、低階層のサブバンド部分のデータをランダマイズ化によりスクランブルをかければ、繊細なスクランブル、即ち、サムネイル画像への画質劣化の影響を与えにくいスクランブルを実現でき、離散ウェーブレット変換処理によるサブバンドの階層位置の選択によりスクランブルレベルが可変設定自在となる。
【００４３】
請求項１７記載の発明は、請求項１４記載のプログラムにおいて、離散ウェーブレット変換による符号化単位となる複数の矩形領域が集合しスクランブル化が施されるブロックの大きさの選択によりスクランブルレベルが可変設定自在である。
【００４４】
したがって、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、画像全体に限らず、符号化単位となる複数の矩形領域（タイル）を単位として処理が可能であるので、例えば、ランダマイズによるスクランブル化を行う領域を限定するブロックの大きさを大きくすると、雑然としたスクランブル画像となり、画像中で表現される元の形（画像全体像）が判り難くなるスクランブル、即ち、サムネイル画像への画質劣化の影響を与えやすいスクランブルを実現でき、スクランブル化が施されるブロックの大きさの選択によりスクランブルレベルが可変設定自在となる。
【００４５】
請求項１８記載の発明のプログラムは、請求項１ないし８のいずれか一記載の画像符号化装置により圧縮符号化された符号データを取得し、当該符号データを復号する符号復号化装置が有するコンピュータにインストールされるか、あるいは解釈されて実行されるプログラムであって、前記コンピュータに、前記符号データ中に埋め込まれている可視透かしを除去する可視透かし除去機能と、前記符号データのスクランブルを解除するスクランブル解除機能と、前記画像符号化装置におけるスクランブル化手段によるスクランブル化処理と可視透かし埋め込み手段による可視透かし埋め込み処理とについての組み合わせ及び処理順序を取得する処理順序取得機能と、を実行させ、前記処理順序取得機能により取得した組み合わせ及び処理順序とは逆の順序で、前記可視透かし除去機能による可視透かし除去処理と前記スクランブル解除機能によるスクランブル解除処理とを前記コンピュータに実行させるようにした。
【００４６】
したがって、請求項１ないし８のいずれか一記載の画像符号化装置により圧縮符号化された符号データを生成した際におけるスクランブル化処理と可視透かし埋め込み処理との組み合わせ及び処理順序とは逆の順序で、可視透かし除去処理とスクランブル解除処理とが行われることにより、元の画像データを復元することが可能になるので、このような機能を発揮するソフトウェア等の配布をコントロールすることで、特定の者に対してのみに元画像の閲覧を許可することが可能になる。
【００４７】
請求項１９記載の発明の記憶媒体は、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化機能を備える画像符号化装置が有するコンピュータにインストールされるか、あるいは解釈されて実行されるプログラムであって、前記コンピュータに、前記圧縮符号化機能により量子化された離散ウェーブレット変換係数に対し、データのスクランブル化を行うスクランブル化機能と、前記圧縮符号化機能により量子化された離散ウェーブレット変換係数に対し、可視透かしを埋め込む可視透かし埋め込み機能と、前記スクランブル化機能によるスクランブル化処理と前記可視透かし埋め込み機能による可視透かし埋め込み処理とについての組み合わせ及び処理順序を指定可能とする処理指定機能と、を実行させ、前記処理指定機能により指定された組み合わせ及び処理順序に基づいて、前記スクランブル化機能によるスクランブル化処理と前記可視透かし埋め込み機能による可視透かし埋め込み処理とを前記コンピュータに実行させるようにしたプログラムを記憶する。
【００４８】
したがって、スクランブル化処理と可視透かし埋め込み処理とについての組み合わせ及び処理順序を選択自在とすることにより、画像の使用目的等に応じて画質劣化レベルを細かく設定することが可能になる。
【００４９】
請求項２０記載の発明は、請求項１９記載の記憶媒体において、前記処理指定機能による指定により、前記スクランブル化機能によるスクランブル化処理を実行した後に、前記可視透かし埋め込み機能による可視透かし埋め込み処理を実行するプログラムを記憶する。
【００５０】
したがって、このような符号データについて、可視透かしを除去せず、かつ、スクランブル化されたままで復号処理した場合には、画像は鮮明に見ることはできないが可視透かしは鮮明に読み取れる状態となる。
【００５１】
請求項２１記載の発明は、請求項１９記載の記憶媒体において、前記処理指定機能による指定により、前記可視透かし埋め込み機能による可視透かし埋め込み処理を実行した後に、前記スクランブル化機能によるスクランブル化処理を実行するプログラムを記憶する。
【００５２】
したがって、このような符号データについて、可視透かしを除去せず、かつ、スクランブル化されたままで復号処理した場合には、画像のみならず透かしもおぼろげにしか見えない状態となる。
【００５３】
請求項２２記載の発明は、請求項１９記載の記憶媒体において、前記処理指定機能による指定により、前記スクランブル化機能によるスクランブル化処理を実行した後に、前記スクランブル化機能によるスクランブル化処理を再度実行するプログラムを記憶する。
【００５４】
したがって、隠蔽レベルの高いスクランブル機能を発揮することが可能になる。
【００５５】
請求項２３記載の発明は、請求項１９ないし２２の何れか一記載の記憶媒体において、前記スクランブル化機能は、量子化された離散ウェーブレット変換係数に対するスクランブルレベルが可変設定自在であるプログラムを記憶する。
【００５６】
したがって、量子化された離散ウェーブレット変換係数に対するスクランブルレベルを可変設定自在とすることにより、スクランブルして提供する画像データの画質の劣化レベルを加減することができ、目的・用途に応じたスクランブル画像の提供が可能となる。
【００５７】
請求項２４記載の発明は、請求項２３記載の記憶媒体において、ビットプレーン化された離散ウェーブレット変換係数であるビット係数のビット位置の選択によりスクランブルレベルが可変設定自在であるプログラムを記憶する。
【００５８】
したがって、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、画像データの閲覧に際してサブバンド機能等を利用することでサムネイル画像の提供が簡単に行えるが、例えば、ビット係数の上位ビットのデータをランダマイズ化によりスクランブルをかければ、解像度は変わらない状態で画像の形が崩れることによりボケたようなスクランブル、即ち、サムネイル画像への画質劣化の影響を与えやすいスクランブルを実現でき、ビット係数のビット位置の選択によりスクランブルレベルが可変設定自在となる。
【００５９】
請求項２５記載の発明は、請求項２３記載の記憶媒体において、離散ウェーブレット変換係数のうちの離散ウェーブレット変換処理によるサブバンドの階層位置の選択によりスクランブルレベルが可変設定自在であるプログラムを記憶する。
【００６０】
したがって、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、解像度に関してサブバンド階層構造を有し、低階層のＬＬなるサブバンドが最も解像度の高い部分となるので、例えば、低階層のサブバンド部分のデータをランダマイズ化によりスクランブルをかければ、繊細なスクランブル、即ち、サムネイル画像への画質劣化の影響を与えにくいスクランブルを実現でき、離散ウェーブレット変換処理によるサブバンドの階層位置の選択によりスクランブルレベルが可変設定自在となる。
【００６１】
請求項２６記載の発明は、請求項２３記載の記憶媒体において、離散ウェーブレット変換による符号化単位となる複数の矩形領域が集合しスクランブル化が施されるブロックの大きさの選択によりスクランブルレベルが可変設定自在であるプログラムを記憶する。
【００６２】
したがって、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、画像全体に限らず、符号化単位となる複数の矩形領域（タイル）を単位として処理が可能であるので、例えば、ランダマイズによるスクランブル化を行う領域を限定するブロックの大きさを大きくすると、雑然としたスクランブル画像となり、画像中で表現される元の形（画像全体像）が判り難くなるスクランブル、即ち、サムネイル画像への画質劣化の影響を与えやすいスクランブルを実現でき、スクランブル化が施されるブロックの大きさの選択によりスクランブルレベルが可変設定自在となる。
【００６３】
請求項２７記載の発明の記憶媒体は、請求項１ないし９のいずれか一記載の画像符号化装置により圧縮符号化された符号データを取得し、当該符号データを復号する符号復号化装置が有するコンピュータにインストールされるか、あるいは解釈されて実行されるプログラムであって、前記コンピュータに、前記符号データ中に埋め込まれている可視透かしを除去する可視透かし除去機能と、前記符号データのスクランブルを解除するスクランブル解除機能と、前記画像符号化装置におけるスクランブル化手段によるスクランブル化処理と可視透かし埋め込み手段による可視透かし埋め込み処理とについての組み合わせ及び処理順序を取得する処理順序取得機能と、を実行させ、前記処理順序取得機能により取得した組み合わせ及び処理順序とは逆の順序で、前記可視透かし除去機能による可視透かし除去処理と前記スクランブル解除機能によるスクランブル解除処理とを前記コンピュータに実行させるようにしたプログラムを記憶する。
【００６４】
したがって、請求項１ないし８のいずれか一記載の画像符号化装置により圧縮符号化された符号データを生成した際におけるスクランブル化処理と可視透かし埋め込み処理との組み合わせ及び処理順序とは逆の順序で、可視透かし除去処理とスクランブル解除処理とが行われることにより、元の画像データを復元することが可能になるので、このような機能を発揮するソフトウェア等の配布をコントロールすることで、特定の者に対してのみに元画像の閲覧を許可することが可能になる。
【００６５】
【発明の実施の形態】
本発明の実施の一形態を図１ないし図１６に基づいて説明する。
【００６６】
最初に、本発明の前提となる「階層符号化アルゴリズム」及び「ＪＰＥＧ２０００アルゴリズム」の概要について説明する。
【００６７】
図１は、ＪＰＥＧ２０００方式の基本となる階層符号化アルゴリズムを実現するシステムの機能ブロック図である。このシステムは、色空間変換・逆変換部１０１、２次元ウェーブレット変換・逆変換部１０２、量子化・逆量子化部１０３、エントロピー符号化・復号化部１０４、タグ処理部１０５の各機能ブロックにより構成されている。
【００６８】
このシステムが従来のＪＰＥＧアルゴリズムと比較して最も大きく異なる点の一つは変換方式である。ＪＰＥＧでは離散コサイン変換（ＤＣＴ：Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ）を用いているのに対し、この階層符号化アルゴリズムでは、２次元ウェーブレット変換・逆変換部１０２において、離散ウェーブレット変換（ＤＷＴ：Ｄｉｓｃｒｅｔｅ  Ｗａｖｅｌｅｔ  Ｔｒａｎｓｆｏｒｍ）を用いている。ＤＷＴはＤＣＴに比べて、高圧縮領域における画質が良いという長所を有し、この点が、ＪＰＥＧの後継アルゴリズムであるＪＰＥＧ２０００でＤＷＴが採用された大きな理由の一つとなっている。
【００６９】
また、他の大きな相違点は、この階層符号化アルゴリズムでは、システムの最終段に符号形成を行うために、タグ処理部１０５の機能ブロックが追加されていることである。このタグ処理部１０５で、画像の圧縮動作時には圧縮データが符号列データとして生成され、伸長動作時には伸長に必要な符号列データの解釈が行われる。そして、符号列データによって、ＪＰＥＧ２０００は様々な便利な機能を実現できるようになった。例えば、ブロック・ベースでのＤＷＴにおけるオクターブ分割に対応した任意の階層（デコンポジション・レベル）で、静止画像の圧縮伸長動作を自由に停止させることができるようになる（後述する図３参照）。
【００７０】
原画像の入出力部分には、色空間変換・逆変換１０１が接続される場合が多い。例えば、原色系のＲ（赤）／Ｇ（緑）／Ｂ（青）の各コンポーネントからなるＲＧＢ表色系や、補色系のＹ（黄）／Ｍ（マゼンタ）／Ｃ（シアン）の各コンポーネントからなるＹＭＣ表色系から、ＹＵＶあるいはＹＣｂＣｒ表色系への変換又は逆変換を行う部分がこれに相当する。
【００７１】
次に、ＪＰＥＧ２０００アルゴリズムについて説明する。
【００７２】
カラー画像は、一般に、図２に示すように、原画像の各コンポーネント１１１（ここではＲＧＢ原色系）が、矩形をした領域によって分割される。この分割された矩形領域は、一般にブロックあるいはタイルと呼ばれているものであるが、ＪＰＥＧ２０００では、タイルと呼ぶことが一般的であるため、以下、このような分割された矩形領域をタイルと記述することにする（図２の例では、各コンポーネント１１１が縦横４×４、合計１６個の矩形のタイル１１２に分割されている）。このような個々のタイル１１２（図２の例で、Ｒ００，Ｒ０１，…，Ｒ１５／Ｇ００，Ｇ０１，…，Ｇ１５／Ｂ００，Ｂ０１，…，Ｂ１５）が、画像データの圧縮伸長プロセスを実行する際の基本単位となる。したがって、画像データの圧縮伸長動作は、コンポーネント毎、また、タイル１１２毎に、独立に行われる。
【００７３】
画像データの符号化時には、各コンポーネント１１１の各タイル１１２のデータが、図１の色空間変換・逆変換部１０１に入力され、色空間変換を施された後、２次元ウェーブレット変換部１０２で２次元ウェーブレット変換（順変換）が施されて、周波数帯に空間分割される。
【００７４】
図３には、デコンポジション・レベル数が３の場合の、各デコンポジション・レベルにおけるサブバンドを示している。すなわち、原画像のタイル分割によって得られたタイル原画像（０ＬＬ）（デコンポジション・レベル０）に対して、２次元ウェーブレット変換を施し、デコンポジション・レベル１に示すサブバンド（１ＬＬ，１ＨＬ，１ＬＨ，１ＨＨ）を分離する。そして引き続き、この階層における低周波成分１ＬＬに対して、２次元ウェーブレット変換を施し、デコンポジション・レベル２に示すサブバンド（２ＬＬ，２ＨＬ，２ＬＨ，２ＨＨ）を分離する。順次同様に、低周波成分２ＬＬに対しても、２次元ウェーブレット変換を施し、デコンポジション・レベル３に示すサブバンド（３ＬＬ，３ＨＬ，３ＬＨ，３ＨＨ）を分離する。図３では、各デコンポジション・レベルにおいて符号化の対象となるサブバンドを、網掛けで表してある。例えば、デコンポジション・レベル数を３としたとき、網掛けで示したサブバンド（３ＨＬ，３ＬＨ，３ＨＨ，２ＨＬ，２ＬＨ，２ＨＨ，１ＨＬ，１ＬＨ，１ＨＨ）が符号化対象となり、３ＬＬサブバンドは符号化されない。
【００７５】
次いで、指定した符号化の順番で符号化の対象となるビットが定められ、図１に示す量子化・逆量子化部１０３で対象ビット周辺のビットからコンテキストが生成される。
【００７６】
この量子化の処理が終わったウェーブレット係数は、個々のサブバンド毎に、「プレシンクト」と呼ばれる重複しない矩形に分割される。これは、インプリメンテーションでメモリを効率的に使うために導入されたものである。図４に示したように、一つのプレシンクトは、空間的に一致した３つの矩形領域からなっている。更に、個々のプレシンクトは、重複しない矩形の「コード・ブロック」に分けられる。これは、エントロピー・コーディングを行う際の基本単位となる。
【００７７】
ウェーブレット変換後の係数値は、そのまま量子化し符号化することも可能であるが、ＪＰＥＧ２０００では符号化効率を上げるために、係数値を「ビットプレーン」単位に分解し、画素あるいはコード・ブロック毎に「ビットプレーン」に順位付けを行うことができる。
【００７８】
ここで、図５はビットプレーンに順位付けする手順の一例を示す説明図である。図５に示すように、この例は、原画像（３２×３２画素）を１６×１６画素のタイル４つで分割した場合で、デコンポジション・レベル１のプレシンクトとコード・ブロックの大きさは、各々８×８画素と４×４画素としている。プレシンクトとコード・ブロックの番号は、ラスター順に付けられており、この例では、プレンシクトが番号０から３まで、コード・ブロックが番号０から３まで割り当てられている。タイル境界外に対する画素拡張にはミラーリング法を使い、可逆（５，３）フィルタでウェーブレット変換を行い、デコンポジション・レベル１のウェーブレット係数値を求めている。
【００７９】
また、タイル０／プレシンクト３／コード・ブロック３について、代表的な「レイヤ」構成の概念の一例を示す説明図も図５に併せて示す。変換後のコード・ブロックは、サブバンド（１ＬＬ，１ＨＬ，１ＬＨ，１ＨＨ）に分割され、各サブバンドにはウェーブレット係数値が割り当てられている。
【００８０】
レイヤの構造は、ウェーブレット係数値を横方向（ビットプレーン方向）から見ると理解し易い。１つのレイヤは任意の数のビットプレーンから構成される。この例では、レイヤ０，１，２，３は、各々、１，３，１，３のビットプレーンから成っている。そして、ＬＳＢ（Ｌｅａｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ：最下位ビット）に近いビットプレーンを含むレイヤ程、先に量子化の対象となり、逆に、ＭＳＢ（Ｍｏｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ：最上位ビット）に近いレイヤは最後まで量子化されずに残ることになる。ＬＳＢに近いレイヤから破棄する方法はトランケーションと呼ばれ、量子化率を細かく制御することが可能である。
【００８１】
図１に示すエントロピー符号化・復号化部１０４では、コンテキストと対象ビットから確率推定によって、各コンポーネント１１１のタイル１１２に対する符号化を行う。こうして、原画像の全てのコンポーネント１１１について、タイル１１２単位で符号化処理が行われる。最後にタグ処理部１０５は、エントロピー符号化・復号化部１０４からの全符号化データを１本の符号列データに結合するとともに、それにタグを付加する処理を行う。
【００８２】
図６には、この符号列データの１フレーム分の概略構成を示している。この符号列データの先頭と各タイルの符号データ（ｂｉｔ  ｓｔｒｅａｍ）の先頭にはヘッダ（メインヘッダ（Ｍａｉｎ  ｈｅａｄｅｒ）、タイル境界位置情報等であるタイルパートヘッダ（ｔｉｌｅ  ｐａｒｔ  ｈｅａｄｅｒ））と呼ばれるタグ情報が付加され、その後に、各タイルの符号化データが続く。なお、メインヘッダ（Ｍａｉｎ  ｈｅａｄｅｒ）には、符号化パラメータや量子化パラメータが記述されている。そして、符号列データの終端には、再びタグ（ｅｎｄ  ｏｆ  ｃｏｄｅｓｔｒｅａｍ）が置かれる。また、図７は、符号化されたウェーブレット係数値が収容されたパケットをサブバンド毎に表わしたコードストリーム構造を示すものである。図７に示すように、タイルによる分割処理を行っても、あるいはタイルによる分割処理を行わなくても、同様のパケット列構造を持つことになる。
【００８３】
一方、符号化データの復号化時には、画像データの符号化時とは逆に、各コンポーネント１１１の各タイル１１２の符号列データから画像データを生成する。この場合、タグ処理部１０５は、外部より入力した符号列データに付加されたタグ情報を解釈し、符号列データを各コンポーネント１１１の各タイル１１２の符号列データに分解し、その各コンポーネント１１１の各タイル１１２の符号列データ毎に復号化処理（伸長処理）を行う。このとき、符号列データ内のタグ情報に基づく順番で復号化の対象となるビットの位置が定められるとともに、量子化・逆量子化部１０３で、その対象ビット位置の周辺ビット（既に復号化を終えている）の並びからコンテキストが生成される。エントロピー符号化・復号化部１０４で、このコンテキストと符号列データから確率推定によって復号化を行い、対象ビットを生成し、それを対象ビットの位置に書き込む。このようにして復号化されたデータは周波数帯域毎に空間分割されているため、これを２次元ウェーブレット変換・逆変換部１０２で２次元ウェーブレット逆変換を行うことにより、画像データの各コンポーネントの各タイルが復元される。復元されたデータは色空間変換・逆変換部１０１によって元の表色系の画像データに変換される。
【００８４】
以上が、「ＪＰＥＧ２０００アルゴリズム」の概要である。画像データの符号化に際しては、入力された画像データをウェーブレット変換した結果の離散ウェーブレット変換係数を量子化するまでは、可逆または非可逆な変換過程をとることができ、量子化の処理が終わった離散ウェーブレット変換係数からエントロピー符号化等の符号列データを生成するまでは可逆変換過程となる。また、符号データの復号化に際して、入力された（圧縮保存済みの）符号列データから離散ウェーブレット変換係数データ（または、量子化係数データ：可逆圧縮の場合は量子化しないため）を復号化するまでは、可逆変換過程をとることとなり、復号化した離散ウェーブレット変換係数データから画像データを生成するまでは可逆または非可逆な変換過程をとることができる。
【００８５】
［画像符号化装置、符号復号化装置］
以下、本発明の実施の一形態について説明する。本発明では、上述したＪＰＥＧ２０００アルゴリズムにおけるウェーブレット量子化係数（量子化された離散ウェーブレット変換係数）を使用して、ＪＰＥＧ２０００圧縮処理内で、ウェーブレット量子化係数への可視透かしの埋め込み及びスクランブル化を実行する画像符号化装置、埋め込まれた可視透かしの除去及びスクランブルの解除を実行する符号復号化装置への適用例を示す。なお、ここでは、ＪＰＥＧ２０００を代表とする画像圧縮伸長技術に関する例について説明するが、言うまでもなく、本発明は以下の説明の内容に限定されるものではない。
【００８６】
本実施の形態の画像符号化装置、符号復号化装置は、その一例として、インターネット等のネットワークを利用してプロバイダから各ユーザに画像データ（デジタルコンテンツ）を配布するシステム構成を想定しており、配布元となるプロバイダのコンピュータ（サーバコンピュータ）を画像符号化装置、配布先となる各ユーザのコンピュータ（クライアントコンピュータ）を符号復号化装置とする例である。
【００８７】
図８はこのようなシステムを示す概略システム構成図であり、プロバイダの画像符号化装置となるサーバコンピュータ１にはインターネット等のネットワーク２を介して各ユーザの符号復号化装置となるクライアントコンピュータ３が接続可能とされている。
【００８８】
図９は、これらのサーバコンピュータ１やクライアントコンピュータ３のハードウェア構成を概略的に示すブロック図である。図９に示すように、コンピュータ１，３は、当該コンピュータの主要部であって各部を集中的に制御するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）６を備えている。このＣＰＵ６には、ＢＩＯＳなどを記憶した読出し専用メモリであるＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）７と、各種データを書換え可能に記憶するＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）８とがバス９で接続されている。ＲＡＭ８は、各種データを書換え可能に記憶する性質を有していることから、ＣＰＵ６の作業エリアとして機能し、例えば入力バッファ等の役割を果たす。
【００８９】
さらにバス９には、各種のプログラムやデータを記憶するＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１０と、配布されたプログラムであるコンピュータソフトウェアを読み取るための機構としてＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）−ＲＯＭ１１を読み取るＣＤ−ＲＯＭドライブ１２と、コンピュータ１，３とネットワーク２との通信を司る通信制御装置１３と、キーボードやマウスなどの入力装置１４と、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）やＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）である表示装置１５と、イメージスキャナやデジタルカメラ等であって画像データを入力する画像入力装置１７とが、図示しないＩ／Ｏを介して接続されている。また、論理回路１６も、バス９を介してＣＰＵ６に接続されている。
【００９０】
また、図９に示すＣＤ−ＲＯＭ１１は、この発明の記憶媒体を実施するものであり、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や各種コンピュータソフトウェアが記憶されている。ＣＰＵ６は、ＣＤ−ＲＯＭ１１に記憶されているコンピュータソフトウェアをＣＤ−ＲＯＭドライブ１２で読み取り、ＨＤＤ１０にインストールする。
【００９１】
なお、記憶媒体としては、ＣＤ−ＲＯＭ１１のみならず、ＤＶＤなどの各種の光ディスク、各種光磁気ディスク、フレキシブル・ディスクなどの各種磁気ディスク等、半導体メモリ等の各種方式のメディアを用いることができる。また、通信制御装置１３を介してインターネットなどのネットワーク５からコンピュータソフトウェアをダウンロードし、ＨＤＤ１０にインストールするようにしてもよい。この場合に、送信側のサーバでコンピュータソフトウェアを記憶している記憶装置も、この発明の記憶媒体である。なお、コンピュータソフトウェアは、所定のＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）上で動作するものであってもよいし、その場合に後述の各種処理の一部の実行をＯＳに肩代わりさせるものであってもよいし、所定のアプリケーションソフトやＯＳなどを構成する一群のプログラムファイルの一部として含まれているものであってもよい。
【００９２】
このような構成のコンピュータ１，３のＨＤＤ１０には、コンピュータソフトウェアの一つとして、画像を処理する画像処理プログラムが記憶されている。この画像処理プログラムは本発明のプログラムを実施するものである。そして、この画像処理プログラムに基づいてＣＰＵ６が実行する処理により、コンピュータ１，３の各部における各種機能を実現する。なお、リアルタイム性が重要視される場合には、処理を高速化する必要がある。そのためには、論理回路１６の動作により、各部における各種機能を実現するようにするのが望ましい。
【００９３】
ここで、サーバコンピュータ１のＣＰＵ６又はクライアントコンピュータ３のＣＰＵ６が画像処理プログラムに基づいて実行する各種の演算処理のうち、本実施の形態の特長的な処理について以下に説明する。
【００９４】
［サーバコンピュータにおける画像符号化処理］
まず、サーバコンピュータ１のＣＰＵ６が実行する画像符号化処理について説明する。本実施の形態における画像符号化処理は、概略的には、ＪＰＥＧ２０００アルゴリズムに従って生成されたウェーブレット量子化係数に対し、スクランブル化及び可視透かしの埋め込みを実行するものである。
【００９５】
図１０に示すように、サーバコンピュータ１においては、画像符号化処理に際し、入力部２１、ウェーブレット変換部２２、係数量子化部２３、可逆圧縮符号化部２４、出力部２５、スクランブル化手段として機能するスクランブル化部２７、可視透かし埋め込み手段として機能する可視透かし埋め込み部２８の各機能が、ＣＰＵ６が画像処理プログラムに基づいて実行する各種の演算処理により実現される。
【００９６】
より詳細には、サーバコンピュータ１のＣＰＵ６は、画像処理プログラムに基づき、画像入力装置１７から処理対象となる画像データの入力を受付ける入力部２１、受付けた画像データに対して色空間変換等の処理を施した後、２次元ウェーブレット変換処理を行う２次元ウェーブレット変換部２２（図１に示す１０１、１０２に相当）、変換された離散ウェーブレット変換係数に対して効率のよい圧縮を行うためにそのダイナミックレンジを削減するポスト量子化等の非可逆な量子化処理を行う係数量子化部２３（図１に示す１０３に相当）、量子化されたウェーブレット量子化係数に対して前述のエントロピー符号化（係数モデリング＋算術符号化）等の可逆圧縮符号化処理を行う可逆圧縮符号化部２４（図１に示す１０４に相当）、符号化された符号データの並べ替え処理等を行い、必要箇所に出力する符号データ出力部２５（図１に示す１０５に相当）による圧縮符号化手段２６を実現する。
【００９７】
加えて、この圧縮符号化手段２６により可逆圧縮符号化される直前のデータ、ここでは、係数量子化部２３により量子化されたウェーブレット量子化係数をスクランブル化するスクランブル化部２７と、可視透かしデータを符号データ中に埋め込む可視透かし埋め込み部２８とが付加されている。
【００９８】
ここで、スクランブル化部２７でのスクランブル化処理について説明する。このスクランブル化部２７はランダマイズ化によりデータのスクランブル化を行うものである。即ち、スクランブル前の元のデータに対してハッシュ（Ｈａｓｈ）関数に基づくハッシュ変換を施して乱数暗号化（ランダマイズ化）することにより、スクランブル前の元のデータを解読できないようにするものである。このハッシュ関数は、引数を種（タネ）にして生成する一方向性の乱数発生関数であり、
性質１；出力値から入力値は推測できない
性質２；入力値が１ビットでも変わると、出力値は全面的に変化する
性質３；同じ出力になる異なる２つの入力の探索は現実的には不可能
なる性質を有している（出典；電子情報通信学会誌２０００年２月“公平性保証とプライバシー保護”佐古和恵）。
【００９９】
このようにハッシュ変換は、生成後のデータから元のデータを推定することが不可能であるため、データのスクランブル化に際してハッシュ変換を用いることにより、その解読を防止することができる。
【０１００】
また、スクランブル化されたデータを復号する際にパスワードを含む専用のソフトウェアにより元のデータへの復元を可能にするため、スクランブルデータとスクランブル前のデータとの差分値（ずらし量）をハッシュ関数を用いたランダマイズで復元できるように暗号化した電子透かしデータが、画像全体のスクランブル後のデータ（ここでは、量子化・スクランブル化されたウェーブレット量子化係数）中に埋め込まれる。
【０１０１】
ここで、ランダマイズで復元可能な暗号化の方法の一例を簡単に説明する。まず、ハッシュ変換の方法の一例を、
［変換結果データ］＝［変換元データ］＊［生成元］％［法：素数］
［変換元データ］＝［変換結果データ］−１＊［生成元］％［法：素数］
とした場合、その暗号化の例としては、
2004236231.tif 000003
が挙げられる。したがって、具体的なハッシュ変換例を例示すると、
［法：素数］＝１２７
［生成元］＝３
［変換元データ］＝０ｘ２００１０８３１（日付：２００１年８月３１日）
＜［変換結果データ］使用の変換＞
変換後ｄａｔａ：０ｘＥ０８３９８９４
＜［変換結果データ］−１使用の変換＞
変換後ｄａｔａ：０ｘＢ５Ｄ５ＡＤＥ５
［逆変換後データ］＝０ｘ２００１０８３１（日付：２００１年８月３１日）
となり、復元される。暗号化には、周知のＲＳＡなどの公開鍵方式を利用してもよい。
【０１０２】
ハッシュ変換を用いたスクランブル化処理時の元のデータからのずらし量（差分値）の決定方法の、より具体的な例について説明する。
【０１０３】
いま、
Ｒｋ＝Ｈａｓｈ（“パスワード”，“直前（ｋ−１）番目の処理済値”）の最下位ビットを除いた値
Ｐｋ＝Ｈａｓｈ（“パスワード”，“直前（ｋ−１）番目の処理済値”）の最下位ビット→ＯＮ：＊（−１），ＯＦＦ：＊（＋１）
とすると（Ｐｋに関する式中の処理済値とは、順次処理（画素の並び）における直前の処理結果（ずらし処理済みの量子化データ）である）、
（ずらし量）＝Ｒｋ＊（程度因子）＊Ｐｋ
で表される。具体的な数値例を示すと、表１に示すような量子化データの並びの場合、
【０１０４】
【表１】
2004236231.tif 000004
【０１０５】
ただし、表１中、▲１▼は処理順序Ｎｏ．▲２▼は元の量子化データ、▲３▼はスクラン
ブル用増減値（ずらし量）＊（程度因子：２）である。
【０１０６】
Ｒｋ＝Ｈａｓｈ（“パスワード”，（１１＋２＊２））＝７→３（最下位ビットを除いた値）
Ｐｋ＝Ｈａｓｈ（“パスワード”，（１１＋２＊２））＝７→−１（最下位ビットがＯＮ）
（ずらし量）＝３＊（程度因子：２）＊（−１）＝−６
となる。
【０１０７】
なお、スクランブル化部２７で乱数暗号化するデータの対象としては、離散ウェーブレット変換係数の最上位係数を避け、下位係数を主体に行うことが望ましい。上位係数ほど元の画像データに近いものであり、このような係数を対象にランダマイズすると、暗号化の程度が大きくなり、スクランブル画像から元の画像を全く想像できなくなってしまうからである。もっとも、最上位係数しかない場合には、最上位係数を乱数暗号化の対象とする。
【０１０８】
より具体的には、量子化としてビットプレーン化されたビット係数（離散ウェーブレット変換係数）の有意係数を対象としてスクランブル化すればよい。「ビット係数の有意係数」とは、例えば前述のＪＰＥＧ２０００アルゴリズム中で説明したようにビット表現した処理対象となるビットプレーン化された離散ウェーブレット変換係数を上位ビットから下位ビット方向に符号化する場合に、注目するビット係数が０でないことが判っている係数をいう。このようなビットプレーン化されたビット係数の有意係数を対象としてスクランブル化することで、効果的なスクランブルをかけることができる。
【０１０９】
この場合のスクランブル化処理例として、対象となるビット係数を反転させる方式（“０”→“１”に反転、又は、“１”→“０”に反転）を採ることができる。このようなビット係数反転方式を採る場合、その隣り桁（直上桁又は直下桁）のビット係数も併せて反転させることが望ましい。即ち、“０”→“１”に反転であれば、“１”→“０”に反転し、“１”→“０”に反転であれば、“０”→“１”に反転する。これは、スクランブル化により対象となるビット係数を反転させる場合には、そのビット係数の反転処理よりこの部分で極端に表示画像の明るさが変わってしまい画質劣化することがあるので、この画質劣化への影響を軽減・緩和させるためである。もっとも、この場合もあまりスクランブルをかけすぎると元の画像が判らなくなってしまうので、このような場合には、直下桁側の隣り桁のみ反転させることが望ましい。
【０１１０】
次に、可視透かし埋め込み部２８での可視透かし埋め込み処理について説明する。一方、可視透かし埋め込み部２８による可視透かしの埋め込みは、元の画像の内容が全く見えないように可視透かしデータであるダミー画像（例えば、丸秘フォント文字画像や地紋縞模様など）で置換するとともに、復号処理に際して、置換されたダミー画像データを元のデータ内容に復元するための電子透かしデータを埋め込む処理である。このように元の画像の内容が全く見えないようにダミー画像で置換することにより、結果として、当該元の画像部分の画質を劣化させ、当該デジタルコンテンツ全体の価値を下げるためのものである。よって、いわゆる地紋のように画像全体に付加する必要はなく、重要となる部分や目立つ部分、例えば、フォント形状領域等の限定された特定の領域で十分である。より具体的な例として、ここでは、例えば、ダミー画像（例えば、丸秘フォント文字画像や地紋縞模様など）で置換するとともに、置換前の元のデータとダミー画像データとの差分値（ずらし量）を復元できるように暗号化した電子透かしデータを、画像全体のデータ（ここでは、量子化されたウェーブレット量子化係数）中に埋め込むものである。
【０１１１】
例えば、図１１を参照して説明する。図１１は入力された元画像Ｏ（Ｏｒｇ）中の「元」で示す一部の指定された領域の元のデータｏ（ｉ．ｊ）（ｉ行ｊ列のピクセル値）を「丸秘」で示すダミー画像データｄ（ｉ．ｊ）（ｉ行ｊ列のピクセル値）で置換する例を模式的に示している。このようなケースでは、ダミー画像データｄ（ｉ．ｊ）と元のデータｏ（ｉ．ｊ）と入力されたパスワードとの論理演算値を電子透かし情報ｗ（ｉ．ｊ）と見倣す。即ち、
ｗ（ｉ．ｊ）←ｏ（ｉ．ｊ）＋ｄ（ｉ．ｊ）＋“パスワード”
（ただし、“＋”は排他的論理演算を表している）
となる。したがって、後述するようなパスワードを用いた復号時には、当該電子透かし情報を抽出し、
ｏ（ｉ．ｊ）←ｗ（ｉ．ｊ）＋ｄ（ｉ．ｊ）＋“パスワード”
なる論理演算を行うことにより元のデータの復元が可能となる。
【０１１２】
また、この可視透かし埋め込み部２８は、ダミー画像置換領域の元のデータに対しては、その改ざんを検出するための改ざん検出用データを電子透かしデータの一部として生成し埋め込む処理も行う。この改ざん検出用データ中には、オリジナル画像であることを識別するための識別コードも含まれ、電子透かしデータとして埋め込まれる。この結果、可視透かし埋め込み部２８はダミー画像から元のデータの復元用の可視透かし情報ｗ（ｉ．ｊ）は、改ざん検出用の可視透かしの埋め込み位置とダミー画像置換領域とは重複しない位置に埋め込むように埋め込み位置が設定される。
【０１１３】
ところで、本実施の形態においては、これらのスクランブル化部２７と可視透かし埋め込み部２８とは、入力部２１に対して画像データとともに所定のパスワード（英数字等による複数桁の暗証番号等）が入力された場合に、入力されたパスワードに応じて選択的に機能するように構成されている。より具体的には、入力されたパスワードに応じ、スクランブル化部２７によるスクランブル化処理と可視透かし埋め込み部２８による可視透かし埋め込み処理との処理順序を変更するものである。
【０１１４】
ここで、図１２は入力されたパスワードに応じて処理順序を選択するためのテーブルを示す模式図である。図１２に示すように、例えば、入力されたパスワードが“ＰａｓｓＷｏｒｄ１”であった場合の処理順序は「可視透かし埋め込み処理→スクランブル化処理」と、入力されたパスワードが“ＰａｓｓＷｏｒｄ２”であった場合の処理順序は「スクランブル化処理→可視透かし埋め込み処理」と、入力されたパスワードが“ＰａｓｓＷｏｒｄ３”であった場合の処理順序は「スクランブル化処理→スクランブル化処理」と、入力されたパスワードが“ＰａｓｓＷｏｒｄ４”であった場合の処理順序は「可視透かし埋め込み処理のみ」と、入力されたパスワードが“ＰａｓｓＷｏｒｄ５”であった場合の処理順序は「スクランブル化処理のみ」と、設定される。なお、本実施の形態においては、“ＰａｓｓＷｏｒｄ３”であった場合のように、スクランブル化部２７によるスクランブル化処理を二重に施すことにより、隠蔽レベルの高いスクランブル機能を発揮することも可能になっている。なお、複数の異なるスクランブル化処理を行うスクランブル化部２７を備えることにより、より隠蔽レベルの高いスクランブル機能を発揮することも可能である。また、パスワードが入力されない場合には、スクランブル化部２７及び可視透かし埋め込み部２８の処理を経ることなく、可逆圧縮符号化処理に移行する。ここに、処理指定手段が実現されている。
【０１１５】
そこで、サーバコンピュータ１において実行されるこのような画像符号化処理における情報埋め込み処理（可視透かし埋め込み処理、スクランブル化処理）を図１３に示す概略フローチャートを参照して説明する。図１３に示すように、前述したようなテーブルを用いて入力されたパスワードに応じた処理順序を取得する（ステップＳ１）と、続くステップＳ２〜Ｓ６において、取得した処理順序に従ってスクランブル化部２７によるスクランブル化処理と可視透かし埋め込み部２８による可視透かし埋め込み処理とを実行する。
【０１１６】
例えば、入力されたパスワードが“ＰａｓｓＷｏｒｄ１”であった場合には、最初の処理は「可視透かし埋め込み処理」であるから（ステップＳ２のＮ、ステップＳ３のＹ）、ウェーブレット量子化係数に対して可視透かし埋め込み部２８による可視透かし埋め込み処理を実行する（ステップＳ４）。そして、可視透かし埋め込み処理の次に実行する処理は「スクランブル化処理」であるから（ステップＳ２のＮ、ステップＳ３のＮ、ステップＳ５のＹ）、可視透かし埋め込み処理が実行されたウェーブレット量子化係数に対してスクランブル化部２７によるスクランブル化処理を実行する（ステップＳ６）。以上により、入力されたパスワードが“ＰａｓｓＷｏｒｄ１”であった場合の処理順序が全て終了したことになる（ステップＳ２のＹ）。
【０１１７】
順序が指定された処理が全て終了した場合には（ステップＳ２のＹ）、ステップＳ７に進み、処理順序を電子透かしデータの一部として生成して埋め込む処理を行う。
【０１１８】
このようにしてスクランブル化され、または、可視透かしデータが埋め込まれたウェーブレット量子化係数は、可逆圧縮符号化部２４によって可逆変換が施されるとともにタグ処理等が施され、ＨＤＤ１０等のメモリに記憶保持される。
【０１１９】
ここで、図１４は情報埋め込み処理（可視透かし埋め込み処理、スクランブル化処理）の処理順序に従って処理された画像イメージを例示的に示す説明図である。例えば、入力されたパスワードが“ＰａｓｓＷｏｒｄ１”であって「可視透かし埋め込み処理→スクランブル化処理」という順序で処理された場合には、プロバイダから閲覧許可されてそのための専用ソフトが配給されていない通常のＪＰＥＧ２０００アルゴリズムのみの復号化ソフトによる復号処理では、デジタルコンテンツ（画像）のみならず透かしもおぼろげにしか見えない状態となる（図１４（１）参照）。また、入力されたパスワードが“ＰａｓｓＷｏｒｄ２”であって「スクランブル化処理→可視透かし埋め込み処理」という順序で処理された場合には、プロバイダから閲覧許可されてそのための専用ソフトが配給されていない通常のＪＰＥＧ２０００アルゴリズムのみの復号化ソフトによる復号処理では、デジタルコンテンツ（画像）は鮮明に見ることはできないが可視透かしによる説明文等は鮮明に読み取れる状態となる（図１４（２）参照）。
【０１２０】
ここに、スクランブル化部２７によるスクランブル化処理と可視透かし埋め込み部２８による可視透かし埋め込み処理とについての組み合わせ及び処理順序を指定可能とし、指定された組み合わせ及び処理順序に基づいて、スクランブル化部２７によるスクランブル化処理と可視透かし埋め込み部２８による可視透かし埋め込み処理とを実行するようにした。これにより、スクランブル化処理と可視透かし埋め込み処理とについての組み合わせ及び処理順序を選択自在とすることが可能になるので、画像の使用目的等に応じて画質劣化レベルを細かく設定することが可能になる。
【０１２１】
なお、スクランブル化部２７による量子化データ（ウェーブレット量子化係数）のスクランブル処理に際しては、ＪＰＥＧ２０００の特徴を利用することにより、そのスクランブルレベル（したがって、画質劣化レベル）を任意に可変設定することができるので、プロバイダが提供する画像データの目的・用途に応じて適宜スクランブルレベルを設定することにより、画質劣化レベルを加減したスクランブル画像を提供することができる。
【０１２２】
このようなスクランブルレベルを可変設定する一例としては、ＪＰＥＧ２０００アルゴリズムにおける図５中に示したようなビットプレーン処理を利用することができる。つまり、ＪＰＥＧ２０００アルゴリズムによれば、画像データの閲覧に際してサブバンド機能等を利用することでサムネイル画像の提供が簡単に行えるが、例えば、ビットプレーンにおけるビット係数の上位ビットのデータをランダマイズ化によりスクランブルをかければ、解像度は変わらない状態で画像の形が崩れることによりボケたようなスクランブル、即ち、サムネイル画像への画質劣化の影響を与えやすいスクランブルを実現できる。よって、ビットプレーンにおけるビット係数のビット位置の選択によりスクランブルレベルが可変設定自在となる。
【０１２３】
スクランブルレベルを可変設定する他例としては、ＪＰＥＧ２０００アルゴリズムの離散ウェーブレット変換処理によるサブバンド構造を利用することができる。ＪＰＥＧ２０００アルゴリズムによれば、解像度に関して図３等に示したようなサブバンド階層構造を有し、低階層のＬＬなるサブバンドが最も解像度の高い部分となるので、例えば、低階層のサブバンド部分のデータをランダマイズ化によりスクランブルをかければ、繊細なスクランブル、即ち、サムネイル画像への画質劣化の影響を与えにくいスクランブルを実現できる。よって、離散ウェーブレット変換処理によるサブバンドの階層位置の選択によりスクランブルレベルが可変設定自在となる。
【０１２４】
スクランブルレベルを可変設定するさらに他例としては、ＪＰＥＧ２０００アルゴリズムにおける処理単位を利用することができる。ＪＰＥＧ２０００アルゴリズムによれば、図４等で前述したように、画像全体に限らず、符号化単位となる複数の矩形領域（タイル）を単位として処理が可能であるので、例えば、ランダマイズによるスクランブル化を行う領域を限定するブロックの大きさを大きくすると、雑然としたスクランブル画像となり、画像中で表現される元の形（画像全体像）が判り難くなるスクランブル、即ち、サムネイル画像への画質劣化の影響を与えやすいスクランブルを実現できる。よって、スクランブル化が施されるブロックの大きさの選択によりスクランブルレベルが可変設定自在となる。
【０１２５】
［クライアントコンピュータにおける画像符号化処理］
次に、クライアントコンピュータ３のＣＰＵ６が実行する符号復号化処理について説明する。本実施の形態のクライアントコンピュータ３は、プロバイダであるサーバコンピュータ１から配布される符号データをＪＰＥＧ２０００アルゴリズムの非可逆モードにより復号化し、かつ、スクランブルの解除及び可視透かしの除去を実行して元の画像データを復元するものである。
【０１２６】
図１５に示すように、クライアントコンピュータ３においては、符号復号化処理に際し、入力部３１、可逆圧縮符号の復号化部３２、ウェーブレット逆変換部３３、可視透かし除去手段である可視透かし除去部３５、スクランブル解除手段であるスクランブル解除部３６の各機能が、ＣＰＵ６が画像処理プログラムに基づいて実行する各種の演算処理により実現される。
【０１２７】
より詳細には、クライアントコンピュータ３のＣＰＵ６は、画像処理プログラムに基づき、サーバコンピュータ１からネットワーク２を通じて配布される前述のようにスクランブル化や可視透かしが埋め込まれた符号データの入力を受付ける入力部３１に対して、受付けた符号データに対してエントロピー復号化処理等の可逆圧縮符号の復号化処理を行う可逆圧縮符号の復号化部３２、２次元ウェーブレット逆変換等を行って元の画像データに復元する２次元ウェーブレット逆変換部３３（図１に示す１０３，１０２，１０１等に相当）による復号化手段３４を実現する。
【０１２８】
加えて、復号化部３２と２次元ウェーブレット逆変換部３３との間には、符号データ中に埋め込まれている可視透かしデータを除去する可視透かし除去部３５と、符号データのスクランブルを解除するスクランブル解除部３６とが付加されている。
【０１２９】
可視透かし除去部３５は、符号データ中に埋め込まれている電子透かしデータを解読し、解読された電子透かしデータ中の差分値データ等に基づく前述したような論理演算で、置換された元のデータｏ（ｉ，ｊ）を復元する。このような元のデータの復元に際しては、可視透かしデータの解読によりダミー画像データに外接する矩形領域（ダミー画像置換領域）の大きさで元のデータを復元することで、ダミー画像置換領域と、その外側の領域との境界部の移り変わりを滑らかにすることができる。そして、ダミー画像置換領域のダミー画像データをこの復元した元のデータで再置換して元に戻す。
【０１３０】
スクランブル解除部３６は、符号データ中に埋め込まれている電子透かしデータを解読し、解読された電子透かしデータ中の差分値データ等に基づき符号データのスクランブルを解除する。
【０１３１】
ここで、前述のハッシュ変換を用いたスクランブル化処理時の元のデータからのずらし量（差分値）の決定方法に対応する、クライアントコンピュータ３側での復号時の戻し量の決定方法の、具体的な例について説明する。
【０１３２】
いま、
Ｒｋ＝Ｈａｓｈ（“パスワード”，“復元前の直前（ｋ−１）番目の量子化データ値”）の最下位ビットを除いた値
Ｐｋ＝Ｈａｓｈ（“パスワード”，“復元前の（ｋ−１）番目の量子化データ値”）の最下位ビット→ＯＮ：＊（−１），ＯＦＦ：＊（＋１）
とすると（Ｐｋに関する式中の復元前の量子化データ値とは、順次処理（画素の並び）における直前の量子化データの復元前データ（ずらし状態のままの量子化データ）である）、
（戻し量）＝−（ずらし量）＝Ｒｋ＊（程度因子）＊Ｐｋ＊（−１）
で表される。具体的な数値例を示すと、前述の表１に示すような量子化データの並びの場合、前述のずらし量決定の場合と同様に、
Ｒｋ＝３（最下位ビットを除いた値）
Ｐｋ＝−１（最下位ビットがＯＮ）
（戻し量）＝−（ずらし量）＝３＊（程度因子：２）＊（−１）＊（−１）＝＋６
となる。
【０１３３】
ところで、本実施の形態においては、これらの可視透かし除去部３５とスクランブル解除部３６とは、入力部３１に対して符号データとともに閲覧を許可されたユーザであることを示す所定のパスワード（英数字等による複数桁の暗証番号等）が入力された場合に、電子透かしデータとして符号データに埋め込まれている処理順序を取得し、この処理順序とは逆の順序で可視透かし除去部３５による可視透かし除去処理とスクランブル解除部３６によるスクランブル解除処理とを実行するものである。
【０１３４】
そこで、クライアントコンピュータ３において実行されるこのような符号復号化処理における情報排除処理（可視透かし除去処理、スクランブル解除処理）を図１５に示す概略フローチャートを参照して説明する。図１５に示すように、入力されたパスワードが正しい場合には（ステップＳ１のＹ）、電子透かしデータとして符号データに埋め込まれている処理順序を取得し（ステップＳ１２：処理順序取得手段）、この処理順序とは逆の処理順序を設定し（ステップＳ１３）、続くステップＳ１４〜Ｓ１８において、取得した処理順序に従って可視透かし除去部３５による可視透かし除去処理とスクランブル解除部３６によるスクランブル解除処理とを実行する。
【０１３５】
例えば、取得した処理順序が「可視透かし埋め込み処理→スクランブル化処理」であった場合には、ここでの処理順序は、「スクランブル解除処理→可視透かし除去処理」のように設定される。したがって、最初の処理は「スクランブル解除処理」であるから（ステップＳ１４のＮ、ステップＳ１５のＮ、ステップＳ１７のＹ）、符号データに対してスクランブル解除部３６によるスクランブル解除処理を実行する（ステップＳ１８）。そして、スクランブル解除処理の次に実行する処理は「可視透かし除去処理」であるから（ステップＳ１４のＮ、ステップＳ１５のＹ）、スクランブル解除処理が実行された符号データに対して可視透かし除去部３５による可視透かし除去処理を実行する（ステップＳ１６）。以上により、元の画像データの閲覧が可能となる。
【０１３６】
ここに、画像符号化装置であるサーバコンピュータ１により圧縮符号化された符号データを生成した際におけるスクランブル化処理と可視透かし埋め込み処理との組み合わせ及び処理順序とは逆の順序で、可視透かし除去処理とスクランブル解除処理とが行われることにより、元の画像データを復元することが可能になるので、このような機能を発揮するソフトウェア等の配布をコントロールすることで、特定の者に対してのみに元画像の閲覧を許可することが可能になる。
【０１３７】
また、復号過程において、電子透かしデータ中に含まれる改ざん検出用のデータを利用することで、不当にダミー画像データを消去するような改ざんがあったか否かを発見することが可能となり、不正使用から保護することができる。特に、ダミー画像データを含む画像がオリジナル画像と識別できないような場合が発生しても、識別コードの有無により容易に識別可能となり、不正使用からの保護を強化することができる。
【０１３８】
【発明の効果】
請求項１記載の発明の画像符号化装置によれば、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段を備える画像符号化装置において、前記圧縮符号化手段により量子化された離散ウェーブレット変換係数に対し、データのスクランブル化を行うスクランブル化手段と、前記圧縮符号化手段により量子化された離散ウェーブレット変換係数に対し、可視透かしを埋め込む可視透かし埋め込み手段と、前記スクランブル化手段によるスクランブル化処理と前記可視透かし埋め込み手段による可視透かし埋め込み処理とについての組み合わせ及び処理順序を指定可能とする処理指定手段と、を備え、前記処理指定手段により指定された組み合わせ及び処理順序に基づいて、前記スクランブル化手段によるスクランブル化処理と前記可視透かし埋め込み手段による可視透かし埋め込み処理とを実行するようにしたことにより、スクランブル化処理と可視透かし埋め込み処理とについての組み合わせ及び処理順序を選択自在とすることができるので、画像の使用目的等に応じて画質劣化レベルを細かく設定することができる。
【０１３９】
請求項２記載の発明によれば、請求項１記載の画像符号化装置において、前記処理指定手段による指定により、前記スクランブル化手段によるスクランブル化処理を実行した後に、前記可視透かし埋め込み手段による可視透かし埋め込み処理を実行することにより、このような符号データについて、可視透かしを除去せず、かつ、スクランブル化されたままで復号処理した場合には、画像は鮮明に見ることはできないが可視透かしは鮮明に読み取れる状態となる。
【０１４０】
請求項３記載の発明によれば、請求項１記載の画像符号化装置において、前記処理指定手段による指定により、前記可視透かし埋め込み手段による可視透かし埋め込み処理を実行した後に、前記スクランブル化手段によるスクランブル化処理を実行することにより、このような符号データについて、可視透かしを除去せず、かつ、スクランブル化されたままで復号処理した場合には、画像のみならず透かしもおぼろげにしか見えない状態となる。
【０１４１】
請求項４記載の発明によれば、請求項１記載の画像符号化装置において、前記処理指定手段による指定により、前記スクランブル化手段によるスクランブル化処理を実行した後に、前記スクランブル化手段によるスクランブル化処理を再度実行することにより、隠蔽レベルの高いスクランブル機能を発揮することができる。
【０１４２】
請求項５記載の発明によれば、請求項１ないし４の何れか一記載の画像符号化装置において、前記スクランブル化手段は、量子化された離散ウェーブレット変換係数に対するスクランブルレベルが可変設定自在であることにより、スクランブルして提供する画像データの画質の劣化レベルを加減することができ、目的・用途に応じたスクランブル画像の提供ができる。
【０１４３】
請求項６記載の発明によれば、請求項５記載の画像符号化装置において、ビットプレーン化された離散ウェーブレット変換係数であるビット係数のビット位置の選択によりスクランブルレベルが可変設定自在であることにより、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、画像データの閲覧に際してサブバンド機能等を利用することでサムネイル画像の提供が簡単に行えるが、例えば、ビット係数の上位ビットのデータをランダマイズ化によりスクランブルをかければ、解像度は変わらない状態で画像の形が崩れることによりボケたようなスクランブル、即ち、サムネイル画像への画質劣化の影響を与えやすいスクランブルを実現でき、ビット係数のビット位置の選択によりスクランブルレベルが可変設定自在となる。
【０１４４】
請求項７記載の発明によれば、請求項５記載の画像符号化装置において、離散ウェーブレット変換係数のうちの離散ウェーブレット変換処理によるサブバンドの階層位置の選択によりスクランブルレベルが可変設定自在であることにより、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、解像度に関してサブバンド階層構造を有し、低階層のＬＬなるサブバンドが最も解像度の高い部分となるので、例えば、低階層のサブバンド部分のデータをランダマイズ化によりスクランブルをかければ、繊細なスクランブル、即ち、サムネイル画像への画質劣化の影響を与えにくいスクランブルを実現でき、離散ウェーブレット変換処理によるサブバンドの階層位置の選択によりスクランブルレベルが可変設定自在となる。
【０１４５】
請求項８記載の発明によれば、請求項５記載の画像符号化装置において、離散ウェーブレット変換による符号化単位となる複数の矩形領域が集合しスクランブル化が施されるブロックの大きさの選択によりスクランブルレベルが可変設定自在であることにより、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、画像全体に限らず、符号化単位となる複数の矩形領域（タイル）を単位として処理が可能であるので、例えば、ランダマイズによるスクランブル化を行う領域を限定するブロックの大きさを大きくすると、雑然としたスクランブル画像となり、画像中で表現される元の形（画像全体像）が判り難くなるスクランブル、即ち、サムネイル画像への画質劣化の影響を与えやすいスクランブルを実現でき、スクランブル化が施されるブロックの大きさの選択によりスクランブルレベルが可変設定自在となる。
【０１４６】
請求項９記載の発明の符号復号化装置によれば、請求項１ないし８のいずれか一記載の画像符号化装置により圧縮符号化された符号データを取得し、当該符号データを復号する符号復号化装置において、前記符号データ中に埋め込まれている可視透かしを除去する可視透かし除去手段と、前記符号データのスクランブルを解除するスクランブル解除手段と、前記画像符号化装置におけるスクランブル化手段によるスクランブル化処理と可視透かし埋め込み手段による可視透かし埋め込み処理とについての組み合わせ及び処理順序を取得する処理順序取得手段と、を備え、前記処理順序取得手段により取得した組み合わせ及び処理順序とは逆の順序で、前記可視透かし除去手段による可視透かし除去処理と前記スクランブル解除手段によるスクランブル解除処理とを実行するようにしたことにより、請求項１ないし８のいずれか一記載の画像符号化装置により圧縮符号化された符号データを生成した際におけるスクランブル化処理と可視透かし埋め込み処理との組み合わせ及び処理順序とは逆の順序で、可視透かし除去処理とスクランブル解除処理とを行うことで、元の画像データを復元することができるので、このような機能を発揮するソフトウェア等の配布をコントロールすることで、特定の者に対してのみに元画像の閲覧を許可することができる。
【０１４７】
請求項１０記載の発明のプログラムによれば、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化機能を備える画像符号化装置が有するコンピュータにインストールされるか、あるいは解釈されて実行されるプログラムであって、前記コンピュータに、前記圧縮符号化機能により量子化された離散ウェーブレット変換係数に対し、データのスクランブル化を行うスクランブル化機能と、前記圧縮符号化機能により量子化された離散ウェーブレット変換係数に対し、可視透かしを埋め込む可視透かし埋め込み機能と、前記スクランブル化機能によるスクランブル化処理と前記可視透かし埋め込み機能による可視透かし埋め込み処理とについての組み合わせ及び処理順序を指定可能とする処理指定機能と、を実行させ、前記処理指定機能により指定された組み合わせ及び処理順序に基づいて、前記スクランブル化機能によるスクランブル化処理と前記可視透かし埋め込み機能による可視透かし埋め込み処理とを前記コンピュータに実行させるようにしたことにより、スクランブル化処理と可視透かし埋め込み処理とについての組み合わせ及び処理順序を選択自在とすることができるので、画像の使用目的等に応じて画質劣化レベルを細かく設定することができる。
【０１４８】
請求項１１記載の発明によれば、請求項１０記載のプログラムにおいて、前記処理指定機能による指定により、前記スクランブル化機能によるスクランブル化処理を実行した後に、前記可視透かし埋め込み機能による可視透かし埋め込み処理を実行することにより、このような符号データについて、可視透かしを除去せず、かつ、スクランブル化されたままで復号処理した場合には、画像は鮮明に見ることはできないが可視透かしは鮮明に読み取れる状態となる。
【０１４９】
請求項１２記載の発明によれば、請求項１０記載のプログラムにおいて、前記処理指定機能による指定により、前記可視透かし埋め込み機能による可視透かし埋め込み処理を実行した後に、前記スクランブル化機能によるスクランブル化処理を実行することにより、このような符号データについて、可視透かしを除去せず、かつ、スクランブル化されたままで復号処理した場合には、画像のみならず透かしもおぼろげにしか見えない状態となる。
【０１５０】
請求項１３記載の発明によれば、請求項１０記載のプログラムにおいて、前記処理指定機能による指定により、前記スクランブル化機能によるスクランブル化処理を実行した後に、前記スクランブル化機能によるスクランブル化処理を再度実行することにより、隠蔽レベルの高いスクランブル機能を発揮することができる。
【０１５１】
請求項１４記載の発明によれば、請求項１０ないし１３の何れか一記載のプログラムにおいて、前記スクランブル化機能は、量子化された離散ウェーブレット変換係数に対するスクランブルレベルが可変設定自在であることにより、スクランブルして提供する画像データの画質の劣化レベルを加減することができ、目的・用途に応じたスクランブル画像の提供ができる。
【０１５２】
請求項１５記載の発明によれば、請求項１４記載のプログラムにおいて、ビットプレーン化された離散ウェーブレット変換係数であるビット係数のビット位置の選択によりスクランブルレベルが可変設定自在であることにより、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、画像データの閲覧に際してサブバンド機能等を利用することでサムネイル画像の提供が簡単に行えるが、例えば、ビット係数の上位ビットのデータをランダマイズ化によりスクランブルをかければ、解像度は変わらない状態で画像の形が崩れることによりボケたようなスクランブル、即ち、サムネイル画像への画質劣化の影響を与えやすいスクランブルを実現でき、ビット係数のビット位置の選択によりスクランブルレベルが可変設定自在となる。
【０１５３】
請求項１６記載の発明によれば、請求項１４記載のプログラムにおいて、離散ウェーブレット変換係数のうちの離散ウェーブレット変換処理によるサブバンドの階層位置の選択によりスクランブルレベルが可変設定自在であることにより、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、解像度に関してサブバンド階層構造を有し、低階層のＬＬなるサブバンドが最も解像度の高い部分となるので、例えば、低階層のサブバンド部分のデータをランダマイズ化によりスクランブルをかければ、繊細なスクランブル、即ち、サムネイル画像への画質劣化の影響を与えにくいスクランブルを実現でき、離散ウェーブレット変換処理によるサブバンドの階層位置の選択によりスクランブルレベルが可変設定自在となる。
【０１５４】
請求項１７記載の発明によれば、請求項１４記載のプログラムにおいて、離散ウェーブレット変換による符号化単位となる複数の矩形領域が集合しスクランブル化が施されるブロックの大きさの選択によりスクランブルレベルが可変設定自在であることにより、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、画像全体に限らず、符号化単位となる複数の矩形領域（タイル）を単位として処理が可能であるので、例えば、ランダマイズによるスクランブル化を行う領域を限定するブロックの大きさを大きくすると、雑然としたスクランブル画像となり、画像中で表現される元の形（画像全体像）が判り難くなるスクランブル、即ち、サムネイル画像への画質劣化の影響を与えやすいスクランブルを実現でき、スクランブル化が施されるブロックの大きさの選択によりスクランブルレベルが可変設定自在となる。
【０１５５】
請求項１８記載の発明のプログラムによれば、請求項１ないし８のいずれか一記載の画像符号化装置により圧縮符号化された符号データを取得し、当該符号データを復号する符号復号化装置が有するコンピュータにインストールされるか、あるいは解釈されて実行されるプログラムであって、前記コンピュータに、前記符号データ中に埋め込まれている可視透かしを除去する可視透かし除去機能と、前記符号データのスクランブルを解除するスクランブル解除機能と、前記画像符号化装置におけるスクランブル化手段によるスクランブル化処理と可視透かし埋め込み手段による可視透かし埋め込み処理とについての組み合わせ及び処理順序を取得する処理順序取得機能と、を実行させ、前記処理順序取得機能により取得した組み合わせ及び処理順序とは逆の順序で、前記可視透かし除去機能による可視透かし除去処理と前記スクランブル解除機能によるスクランブル解除処理とを前記コンピュータに実行させるようにしたことにより、請求項１ないし８のいずれか一記載の画像符号化装置により圧縮符号化された符号データを生成した際におけるスクランブル化処理と可視透かし埋め込み処理との組み合わせ及び処理順序とは逆の順序で、可視透かし除去処理とスクランブル解除処理とを行うことで、元の画像データを復元することができるので、このような機能を発揮するソフトウェア等の配布をコントロールすることで、特定の者に対してのみに元画像の閲覧を許可することができる。
【０１５６】
請求項１９記載の発明の記憶媒体によれば、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化機能を備える画像符号化装置が有するコンピュータにインストールされるか、あるいは解釈されて実行されるプログラムであって、前記コンピュータに、前記圧縮符号化機能により量子化された離散ウェーブレット変換係数に対し、データのスクランブル化を行うスクランブル化機能と、前記圧縮符号化機能により量子化された離散ウェーブレット変換係数に対し、可視透かしを埋め込む可視透かし埋め込み機能と、前記スクランブル化機能によるスクランブル化処理と前記可視透かし埋め込み機能による可視透かし埋め込み処理とについての組み合わせ及び処理順序を指定可能とする処理指定機能と、を実行させ、前記処理指定機能により指定された組み合わせ及び処理順序に基づいて、前記スクランブル化機能によるスクランブル化処理と前記可視透かし埋め込み機能による可視透かし埋め込み処理とを前記コンピュータに実行させるようにしたプログラムを記憶することにより、スクランブル化処理と可視透かし埋め込み処理とについての組み合わせ及び処理順序を選択自在とすることができるので、画像の使用目的等に応じて画質劣化レベルを細かく設定することができる。
【０１５７】
請求項２０記載の発明によれば、請求項１９記載の記憶媒体において、前記処理指定機能による指定により、前記スクランブル化機能によるスクランブル化処理を実行した後に、前記可視透かし埋め込み機能による可視透かし埋め込み処理を実行するプログラムを記憶することにより、このような符号データについて、可視透かしを除去せず、かつ、スクランブル化されたままで復号処理した場合には、画像は鮮明に見ることはできないが可視透かしは鮮明に読み取れる状態となる。
【０１５８】
請求項２１記載の発明によれば、請求項１９記載の記憶媒体において、前記処理指定機能による指定により、前記可視透かし埋め込み機能による可視透かし埋め込み処理を実行した後に、前記スクランブル化機能によるスクランブル化処理を実行するプログラムを記憶することにより、このような符号データについて、可視透かしを除去せず、かつ、スクランブル化されたままで復号処理した場合には、画像のみならず透かしもおぼろげにしか見えない状態となる。
【０１５９】
請求項２２記載の発明によれば、請求項１９記載の記憶媒体において、前記処理指定機能による指定により、前記スクランブル化機能によるスクランブル化処理を実行した後に、前記スクランブル化機能によるスクランブル化処理を再度実行するプログラムを記憶することにより、隠蔽レベルの高いスクランブル機能を発揮することができる。
【０１６０】
請求項２３記載の発明によれば、請求項１９ないし２２の何れか一記載の記憶媒体において、前記スクランブル化機能は、量子化された離散ウェーブレット変換係数に対するスクランブルレベルが可変設定自在であるプログラムを記憶することにより、スクランブルして提供する画像データの画質の劣化レベルを加減することができ、目的・用途に応じたスクランブル画像の提供ができる。
【０１６１】
請求項２４記載の発明によれば、請求項２３記載の記憶媒体において、ビットプレーン化された離散ウェーブレット変換係数であるビット係数のビット位置の選択によりスクランブルレベルが可変設定自在であるプログラムを記憶することにより、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、画像データの閲覧に際してサブバンド機能等を利用することでサムネイル画像の提供が簡単に行えるが、例えば、ビット係数の上位ビットのデータをランダマイズ化によりスクランブルをかければ、解像度は変わらない状態で画像の形が崩れることによりボケたようなスクランブル、即ち、サムネイル画像への画質劣化の影響を与えやすいスクランブルを実現でき、ビット係数のビット位置の選択によりスクランブルレベルが可変設定自在となる。
【０１６２】
請求項２５記載の発明によれば、請求項２３記載の記憶媒体において、離散ウェーブレット変換係数のうちの離散ウェーブレット変換処理によるサブバンドの階層位置の選択によりスクランブルレベルが可変設定自在であるプログラムを記憶することにより、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、解像度に関してサブバンド階層構造を有し、低階層のＬＬなるサブバンドが最も解像度の高い部分となるので、例えば、低階層のサブバンド部分のデータをランダマイズ化によりスクランブルをかければ、繊細なスクランブル、即ち、サムネイル画像への画質劣化の影響を与えにくいスクランブルを実現でき、離散ウェーブレット変換処理によるサブバンドの階層位置の選択によりスクランブルレベルが可変設定自在となる。
【０１６３】
請求項２６記載の発明によれば、請求項２３記載の記憶媒体において、離散ウェーブレット変換による符号化単位となる複数の矩形領域が集合しスクランブル化が施されるブロックの大きさの選択によりスクランブルレベルが可変設定自在であるプログラムを記憶することにより、画像データを１又は複数に分割した矩形領域毎に画素値を離散ウェーブレット変換、量子化及び符号化という手順で階層的に圧縮符号化する圧縮符号化手段（例えば、ＪＰＥＧ２０００アルゴリズム）によれば、画像全体に限らず、符号化単位となる複数の矩形領域（タイル）を単位として処理が可能であるので、例えば、ランダマイズによるスクランブル化を行う領域を限定するブロックの大きさを大きくすると、雑然としたスクランブル画像となり、画像中で表現される元の形（画像全体像）が判り難くなるスクランブル、即ち、サムネイル画像への画質劣化の影響を与えやすいスクランブルを実現でき、スクランブル化が施されるブロックの大きさの選択によりスクランブルレベルが可変設定自在となる。
【０１６４】
請求項２７記載の発明の記憶媒体によれば、請求項１ないし９のいずれか一記載の画像符号化装置により圧縮符号化された符号データを取得し、当該符号データを復号する符号復号化装置が有するコンピュータにインストールされるか、あるいは解釈されて実行されるプログラムであって、前記コンピュータに、前記符号データ中に埋め込まれている可視透かしを除去する可視透かし除去機能と、前記符号データのスクランブルを解除するスクランブル解除機能と、前記画像符号化装置におけるスクランブル化手段によるスクランブル化処理と可視透かし埋め込み手段による可視透かし埋め込み処理とについての組み合わせ及び処理順序を取得する処理順序取得機能と、を実行させ、前記処理順序取得機能により取得した組み合わせ及び処理順序とは逆の順序で、前記可視透かし除去機能による可視透かし除去処理と前記スクランブル解除機能によるスクランブル解除処理とを前記コンピュータに実行させるようにしたプログラムを記憶することにより、請求項１ないし８のいずれか一記載の画像符号化装置により圧縮符号化された符号データを生成した際におけるスクランブル化処理と可視透かし埋め込み処理との組み合わせ及び処理順序とは逆の順序で、可視透かし除去処理とスクランブル解除処理とを行うことで、元の画像データを復元することができるので、このような機能を発揮するソフトウェア等の配布をコントロールすることで、特定の者に対してのみに元画像の閲覧を許可することができる。
【図面の簡単な説明】
【図１】本発明の前提となるＪＰＥＧ２０００方式の基本となる階層符号化アルゴリズムを実現するシステムの機能ブロック図である。
【図２】原画像の各コンポーネントの分割された矩形領域を示す説明図である。
【図３】デコンポジション・レベル数が３の場合の、各デコンポジション・レベルにおけるサブバンドを示す説明図である。
【図４】プレシンクトを示す説明図である。
【図５】ビットプレーンに順位付けする手順の一例を示す説明図である。
【図６】符号列データの１フレーム分の概略構成を示す説明図である。
【図７】符号化されたウェーブレット係数値が収容されたパケットをサブバンド毎に表わしたコードストリーム構造を示す説明図である。
【図８】本発明の実施の一形態のシステムを示す概略システム構成図である。
【図９】サーバコンピュータやクライアントコンピュータのハードウェア構成を概略的に示すブロック図である。
【図１０】画像処理プログラムに基づいてサーバコンピュータのＣＰＵが実行する画像符号化処理により実現される機能を示す機能ブロック図である。
【図１１】ダミー画像データの置換例を示す模式図である。
【図１２】入力されたパスワードに応じて処理順序を選択するためのテーブルを示す模式図である。
【図１３】情報埋め込み処理（可視透かし埋め込み処理、スクランブル化処理）の流れを概略的に示すフローチャートである。
【図１４】情報埋め込み処理（可視透かし埋め込み処理、スクランブル化処理）の処理順序に従って処理された画像イメージを例示的に示す説明図である。
【図１５】画像処理プログラムに基づいてクライアントコンピュータのＣＰＵが実行する符号復号化処理により実現される機能を示す機能ブロック図である。
【図１６】情報排除処理（可視透かしデータ除去処理、スクランブル解除処理）の流れを概略的に示すフローチャートである。
【符号の説明】
１        画像符号化装置
３        符号復号化装置
１１      記憶媒体
２６      圧縮符号化手段
２７      スクランブル化手段
２８      可視透かし埋め込み手段
３５      可視透かし除去手段
３６      スクランブル解除手段
【図１】
2004236231.tif 000005
【図２】
2004236231.tif 000006
【図３】
2004236231.tif 000007
【図４】
2004236231.tif 000008
【図５】
2004236231.tif 000009
【図６】
2004236231.tif 000010
【図７】
2004236231.tif 000011
【図８】
2004236231.tif 000012
【図９】
2004236231.tif 000013
【図１０】
2004236231.tif 000014
【図１１】
2004236231.tif 000015
【図１２】
2004236231.tif 000016
【図１３】
2004236231.tif 000017
【図１４】
2004236231.tif 000018
【図１５】
2004236231.tif 000019
【図１６】
2004236231.tif 000020