(57)【要約】【課題】用途に応じて、元画像が認識可能な程度あるいはノイズ除去の困難さを調整可能に可視透かしを入れる。【解決手段】データ挿入部１５は、図示しないキーボードやマウスなどの手動操作装置の指定に基づき、あるいは、擬似的に生成した乱数に基づき、除算結果値の得られたブロックの中からノイズデータ挿入部分とする特定のブロックおよび特定の係数位置を決定する。データ挿入部１５は、ノイズデータの解除に必要なデータである解除用データの挿入位置を決定する。データ挿入部１５は、決定されたノイズデータ挿入ブロックにおけるノイズデータ挿入位置、決定された解除用データ挿入ブロックにおける解除用データの挿入位置に、それぞれ、ノイズデータを加算し、また解除用データのビットを埋め込む。【選択図】  図１
2008283479.tif 000002
【特許請求の範囲】
【請求項１】
所望の画像へ挿入すべき透かしデータを決定するステップと、
前記画像の圧縮符号化単位となるべきブロックを前記画像に設定するステップと、
前記透かしデータを挿入すべきブロックである透かしデータ挿入ブロックを設定するステップと、
前記ブロック毎に離散コサイン変換（ＤＣＴ）係数を算出するステップと、
前記ブロック毎に算出された離散コサイン変換係数の内、ＥＯＢ(End of Block）以外のＤＣＴ係数位置の中から、前記透かしデータを埋め込むべき１以上のＤＣＴ係数位置である透かしデータ挿入位置を、前記透かしデータ挿入ブロックの各々について決定するステップと、
前記透かしデータ挿入ブロックの各々における前記透かしデータ挿入位置および前記透かしデータの値を示すデータである解除用データを作成するステップと、
前記解除用データを挿入すべきブロックである解除用データ挿入ブロックを設定するステップと、
前記解除用データ挿入ブロックのＤＣＴ係数の内、ジグザグスキャン順に沿った前記ＥＯＢ以降の高周波数側のＤＣＴ係数位置の中から、前記解除用データを埋め込むべき１以上のＤＣＴ係数位置である解除用データ挿入位置を、前記解除用データ挿入ブロックの各々について決定するステップと、
前記透かしデータ挿入ブロックの各々について決定された前記透かしデータ挿入位置のＤＣＴ係数の各々を対応する量子化幅で除算した値である除算結果値を丸めた値である量子化代表値に、前記透かしデータを加算することで、前記画像に前記透かしデータを挿入するステップと、
前記解除用データ挿入ブロックの各々について決定された前記解除用データ挿入位置のＤＣＴ係数の各々を対応する量子化幅で除算した値である除算結果値を丸めた値である零の量子化代表値を、前記解除用データを構成するビットに応じた正または負の符号を有する零以外の値に変更することで、前記画像に前記解除用データを挿入するステップと、
を含む可逆的透かしデータ挿入方法。
【請求項２】
前記透かしデータは前記透かしデータ挿入位置ごとに無作為に決定される請求項１に記載の可逆的透かしデータ挿入方法。
【請求項３】
前記透かしデータは前記透かしデータ挿入位置の全てについて同一の値に決定される請求項１に記載の可逆的透かしデータ挿入方法。
【請求項４】
前記画像に設定された全てのブロックの特定のＤＣＴ係数位置の範囲を前記透かしデータ挿入位置に決定するステップをさらに含む請求項１〜３のいずれかに記載の可逆的透かしデータ挿入方法。
【請求項５】
前記画像に設定された全てのブロックの特定のＤＣＴ係数位置の範囲から無作為に選出された１以上のＤＣＴ係数位置を前記透かしデータ挿入位置に決定するステップをさらに含む請求項４に記載の可逆的透かしデータ挿入方法。
【請求項６】
前記画像に設定された全てのブロックの特定のＤＣＴ係数位置の範囲における特定の１以上のＤＣＴ係数位置を透かしデータ挿入位置に決定するステップをさらに含む請求項４に記載の可逆的透かしデータ挿入方法。
【請求項７】
前記特定のＤＣＴ係数位置の範囲は前記ＥＯＢよりも低周波数側に存在する請求項４〜６のいずれかに記載の可逆的透かしデータ挿入方法。
【請求項８】
前記解除用データ挿入ブロックを設定するステップは、前記ＥＯＢがジグザグスキャン順に沿った最高周波数位置以外の位置に存在するブロックである第１のＥＯＢ存在ブロックを前記解除用データ挿入ブロックに設定するステップを含み、
前記画像に前記解除用データを挿入するステップは、前記第１のＥＯＢ存在ブロックの各々について、前記ＥＯＢを、前記解除用データを構成するビットに応じて＋１または−１に変更するステップを含む請求項１〜７のいずれかに記載の可逆的透かしデータ挿入方法。
【請求項９】
前記解除用データ挿入ブロックを設定するステップは、
前記画像に設定された全てのブロックにおけるＤＣＴ係数のうち絶対値が最大となるＤＣＴ係数を特定するステップと、
特定されたＤＣＴ係数の値をＺとしたとき、前記ＥＯＢがジグザグスキャン順に沿った最高周波数位置に存在するブロックである第２のＥＯＢ存在ブロックを前記解除用データ挿入ブロックに設定するステップと、
を含み、
前記画像に前記解除用データを挿入するステップは、前記第２のＥＯＢ存在ブロックの各々について、前記ＥＯＢを、前記解除用データを構成するビットに応じて｜Ｚ｜＋１または−（｜Ｚ｜＋１）に変更することで、前記画像に前記解除用データを挿入するステップを含む請求項８に記載の可逆的透かしデータ挿入方法。
【請求項１０】
前記透かしデータ挿入ブロックを包含する近傍領域ブロックを設定するステップと、
前記近傍領域ブロックにおけるＤＣＴ係数を前記近傍領域ブロックの識別データを構成するビットに変更することで、前記近傍領域ブロックに前記近傍領域ブロックの識別データを挿入するステップと、
をさらに含む請求項１０に記載の可逆的透かしデータ挿入方法。
【請求項１１】
前記近傍領域ブロックに前記近傍領域ブロックの識別データを挿入するステップは、
前記近傍領域ブロックの内、最高周波数位置以外の位置にＥＯＢが存在するブロックについては、前記ＥＯＢを、前記識別データを構成するビットに応じて＋１または−１に変更するステップと、
前記近傍領域ブロックの内、最高周波数位置にＥＯＢが存在するブロックについては、前記画像に設定された全てのブロックにおけるＤＣＴ係数のうち絶対値が最大となるＤＣＴ係数を特定し、前記絶対値が最大となるＤＣＴ係数をＺとしたとき、前記ＥＯＢを、前記識別データのビットに応じて｜Ｚ｜＋１または−（｜Ｚ｜＋１）に変更するステップと、
前記近傍領域ブロックの内、ＥＯＢが存在しないブロックについては、前記識別データを挿入するための予備ブロックを前記近傍領域ブロック以外のブロックに設定し、前記予備ブロックのＥＯＢを、前記識別データを構成するビットに応じて＋１もしくは−１に変更するかまたは｜Ｚ｜＋１もしくは−（｜Ｚ｜＋１）に変更するステップと、
をさらに含む請求項１０に記載の可逆的透かしデータ挿入方法。
【請求項１２】
前記解除用データ挿入ブロックを設定するステップは、前記近傍領域ブロック以外のブロックを前記解除用データ挿入ブロックに設定する請求項１０または１１に記載の可逆的透かしデータ挿入方法。
【請求項１３】
請求項１〜１２のいずれかに記載の可逆的透かしデータ挿入方法をコンピュータに実行させるプログラム。
【請求項１４】
所望の画像へ挿入すべき透かしデータを決定する透かしデータ決定部と、
前記画像の圧縮符号化単位となるべきブロックを前記画像に設定するブロック設定部と、
前記透かしデータを挿入すべきブロックである透かしデータ挿入ブロックを設定する透かしデータ挿入ブロック設定部と、
前記ブロック毎に離散コサイン変換（ＤＣＴ）係数を算出するＤＣＴ係数算出部と、
前記ブロック毎に算出された離散コサイン変換係数の内、ＥＯＢ(End of Block）以外のＤＣＴ係数位置の中から、前記透かしデータを埋め込むべき１以上のＤＣＴ係数位置である透かしデータ挿入位置を、前記透かしデータ挿入ブロックの各々について決定する透かしデータ挿入位置決定部と、
前記透かしデータ挿入ブロックの各々における前記透かしデータ挿入位置および前記透かしデータの値を示すデータである解除用データを作成する解除用データ作成部と、
前記解除用データを挿入すべきブロックである解除用データ挿入ブロックを設定する解除用データ挿入ブロック設定部と、
前記解除用データ挿入ブロックのＤＣＴ係数の内、ジグザグスキャン順に沿った前記ＥＯＢ以降の高周波数側のＤＣＴ係数位置の中から、前記解除用データを埋め込むべき１以上のＤＣＴ係数位置である解除用データ挿入位置を、解除用データ挿入ブロックの各々について決定する解除用データ挿入位置決定部と、
前記透かしデータ挿入ブロックの各々について決定された前記透かしデータ挿入位置のＤＣＴ係数の各々を対応する量子化幅で除算した値である除算結果値を丸めた値である量子化代表値に、前記透かしデータを加算することで、前記画像に前記透かしデータを挿入する透かしデータ挿入部と、
前記解除用データ挿入ブロックの各々について決定された前記解除用データ挿入位置のＤＣＴ係数の各々を対応する量子化幅で除算した値である除算結果値を丸めた値である零の量子化代表値を、前記解除用データを構成するビットに応じた正または負の符号を有する零以外の値に変更することで、前記画像に前記解除用データを挿入する解除用データ挿入部と、
を含む可逆的透かしデータ挿入装置。
【請求項１５】
請求項１４に記載の可逆的透かしデータ挿入装置と、
前記可逆的透かしデータ挿入装置から出力された、前記透かしデータおよび前記解除用データの挿入された画像を入力する入力部と、
前記解除用データに基づき、前記透かしデータの埋め込まれたブロックおよびＤＣＴ係数位置ならびに前記ＤＣＴ係数位置における透かしデータの値を特定する前記透かしデータ特定部と、
前記データ挿入位置特定部の特定した各ブロックの各挿入位置における透かしデータの値に基づき、前記透かしデータ挿入位置における前記透かしデータ挿入前のＤＣＴ係数を復元するとともに、前記解除用データ挿入位置における前記解除用データ挿入前のＤＣＴ係数を復元するＤＣＴ係数復元部と、
を備える画像処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は圧縮符号化すべき画像データにノイズデータを埋め込むことで、復号側での画像データの不正利用防止を可能にする技術に関する。
【背景技術】
【０００２】
特許文献１では、入力された画像データをＪＰＥＧ２０００の非可逆モードに従い圧縮符号化する圧縮符号化手段に対して、この圧縮符号化手段による離散ウェーブレット変換処理後に量子化された離散ウェーブレット変換係数の一部の指定された領域のデータを、パスワード入力に基づき再置換可能にダミー画像データに置換して元のデータを見えなくするダミー画像置換手段を設けることで、入力された画像データをＪＰＥＧ２０００の非可逆モードに従い圧縮符号化する場合であっても、量子化処理の後は可逆的な処理となるので、その直前のデータである離散ウェーブレット変換処理後に量子化された離散ウェーブレット変換係数に置換処理を施してもそのダミー画像データも可逆的に完全に復号させることで、復号に際しては完全にダミー画像データの影響をなくすことが可能となる。
【０００３】
特許文献２では、画像記憶部は、送られてきた可視マークが埋め込まれた可視マーキング画像データを記憶し、マーキング処理部は、この可視マーキング画像から可視マークを除去し、さらに、一体不可分の処理により、同時並行的に非可視マークを埋め込んで、オリジナル画像データと視覚上変わらない非可視マーキングデータを生成する。断片画像生成部は、それぞれ一部に変更が加えられているが、交互に表示した場合に、オリジナル画像と同じに見えるｎ種類の断片画像データを生成する。画像表示部は、これらの断片画像データを時間間隔Ｔiで表示し、見本画像データとして利用者に示す。
【０００４】
ＪＰＥＧ（Joint Photographic Experts Group）圧縮では、オリジナル画像データを離散コサイン変換（ＤＣＴ）し、ビット配分を決定して量子化を行う。ベースライン方式の場合、量子化データをハフマン符号化により符号化して符号化データを得る。
【０００５】
この圧縮符号化された画像データに対して任意のデータを付加する技術として、ステガノグラフィ（Steganography）がある。ステガノグラフィは、付加情報（メッセージや画像など）を画像等に対して直接、重畳する処理を実行するものであり、例えば、画像情報の各画素の値を示すビット情報の最下位ビットにデータを入れたり、あるいはマクロブロックの量子化されたＹ成分のＤＣＴ係数を変更したり、あるいは量子化されたＤＣＴ係数の和をある値で割った余りで挿入データを表すなど、様々な態様のものがある。データの挿入により画質劣化が生じることがあるが、これを防止する技術としては、例えば、画像を埋め込む場所をＤＣＴ係数の最高周波数の位置にするものがある（特許文献３）。
【特許文献１】特開２００４−２２８８７６号公報
【特許文献２】特開２０００−１８４１７７号公報
【特許文献３】特開２００２−３３０２７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
特許文献１はＪＰＥＧ２０００を使う手法であり、最も普及しているＪＰＥＧでは利用できない。
【０００７】
特許文献２はハフマン符号表を画像データに偽装しているため、不自然なデータが本来の画像データの後ろに含まれてしまうので、可視透かしを除去するキーとなるデータを発見される可能性が高い。また、この手法では、元の画像が全く見えなくなってしまうので、画像の内容を全く知ることができない。そのため、特定の画像を探したくても、探しにくい。さらに、元の画像が見えるように透かしに画像を使う手法も言及されているが、透かし用の画像データ自身を拡張マーカに入れるなど、ファイルサイズの増加が問題となる。
【０００８】
特許文献３のようにすると、ＥＯＢ（End of Block）符号が消滅するため、符号化効率が低下し、ＪＰＥＧファイルが非常に大きくなる。
【０００９】
本発明は、ＪＰＥＧ形式の画像に、元画像が認識可能なように可視透かしを入れることを目的とする。また、本発明は、可視透かしの挿入の際、ファイルサイズの増大を可及的に抑えることを目的とする。また、本発明は、用途に応じて、元画像が認識可能な程度あるいはノイズ除去の困難さを調整可能に可視透かしを入れることを目的とする。
【課題を解決するための手段】
【００１０】
本発明に係る可逆的透かしデータ挿入方法は、所望の画像へ挿入すべき透かしデータを決定するステップと、画像の圧縮符号化単位となるべきブロックを画像に設定するステップと、透かしデータを挿入すべきブロックである透かしデータ挿入ブロックを設定するステップと、ブロック毎に離散コサイン変換（ＤＣＴ）係数を算出するステップと、ブロック毎に算出された離散コサイン変換係数の内、ＥＯＢ(End of Block）以外のＤＣＴ係数位置の中から、透かしデータを埋め込むべき１以上のＤＣＴ係数位置である透かしデータ挿入位置を、透かしデータ挿入ブロックの各々について決定するステップと、透かしデータ挿入ブロックの各々における透かしデータ挿入位置および透かしデータの値を示すデータである解除用データを作成するステップと、解除用データを挿入すべきブロックである解除用データ挿入ブロックを設定するステップと、解除用データ挿入ブロックのＤＣＴ係数の内、ジグザグスキャン順に沿ったＥＯＢ以降の高周波数側のＤＣＴ係数位置の中から、解除用データを埋め込むべき１以上のＤＣＴ係数位置である解除用データ挿入位置を、解除用データ挿入ブロックの各々について決定するステップと、透かしデータ挿入ブロックの各々について決定された透かしデータ挿入位置のＤＣＴ係数の各々を対応する量子化幅で除算した値である除算結果値を丸めた値である量子化代表値に、透かしデータを加算することで、画像に透かしデータを挿入するステップと、解除用データ挿入ブロックの各々について決定された解除用データ挿入位置のＤＣＴ係数の各々を対応する量子化幅で除算した値である除算結果値を丸めた値である零の量子化代表値を、解除用データを構成するビットに応じた正または負の符号を有する零以外の値に変更することで、画像に解除用データを挿入するステップと、を含む。
【００１１】
この発明によると、各ブロックのＤＣＴ係数に透かしデータを埋め込むことができる。埋め込む位置と値は任意に設定できるから、画像のノイズの顕在度とノイズ解析の困難度を変化させることができる。また、透かしデータの位置と値を示す解除用データも画像に埋め込むから、復号側で画像からその解除用データを識別し、ノイズを除去することができる。
【００１２】
透かしデータは透かしデータ挿入位置ごとに無作為に決定されてもよい。
【００１３】
こうすると、透かしデータが位置ごとにランダムになり、透かしデータの不正な解析や解除が困難になる。
【００１４】
透かしデータは透かしデータ挿入位置の全てについて同一の値に決定されてもよい。
【００１５】
こうすると、画像のノイズが規則な模様となって現れ、画像の視認性がある程度確保される。
【００１６】
画像に設定された全てのブロックの特定のＤＣＴ係数位置の範囲を透かしデータ挿入位置に決定するステップをさらに含んでもよい。
【００１７】
画像に設定された全てのブロックの特定のＤＣＴ係数位置の範囲から無作為に選出された１以上のＤＣＴ係数位置を透かしデータ挿入位置に決定するステップをさらに含んでもよい。
【００１８】
こうすると、画像のノイズが不規則な模様となって現れる。
【００１９】
画像に設定された全てのブロックの特定のＤＣＴ係数位置の範囲における特定の１以上のＤＣＴ係数位置を透かしデータ挿入位置に決定するステップをさらに含んでもよい。
【００２０】
特定のＤＣＴ係数位置の範囲はＥＯＢよりも低周波数側に存在することが好ましい。
【００２１】
こうすると、ＥＯＢの位置が透かしデータの挿入により高周波数側に移動したり、あるいはＥＯＢ自体が消滅することを防げ、画像ファイルが長大化するのを防げる。
【００２２】
解除用データ挿入ブロックを設定するステップは、ＥＯＢがジグザグスキャン順に沿った最高周波数位置以外の位置に存在するブロックである第１のＥＯＢ存在ブロックを解除用データ挿入ブロックに設定するステップを含み、画像に解除用データを挿入するステップは、第１のＥＯＢ存在ブロックの各々について、ＥＯＢを、解除用データを構成するビットに応じて＋１または−１に変更するステップを含んでもよい。
【００２３】
こうすると、ＥＯＢ自体が消滅することを防げ、画像ファイルが長大化するのを防げる。
【００２４】
解除用データ挿入ブロックを設定するステップは、画像に設定された全てのブロックにおけるＤＣＴ係数のうち絶対値が最大となるＤＣＴ係数を特定するステップと、特定されたＤＣＴ係数の値をＺとしたとき、ＥＯＢがジグザグスキャン順に沿った最高周波数位置に存在するブロックである第２のＥＯＢ存在ブロックを解除用データ挿入ブロックに設定するステップと、を含み、画像に解除用データを挿入するステップは、第２のＥＯＢ存在ブロックの各々について、ＥＯＢを、解除用データを構成するビットに応じて｜Ｚ｜＋１または−（｜Ｚ｜＋１）に変更することで、画像に解除用データを挿入するステップを含んでもよい。
【００２５】
こうすると、最高周波数位置にＥＯＢが存在した場合でも、解除用データを挿入でき、かつ、その値｜Ｚ｜＋１または−（｜Ｚ｜＋１）を他のブロックの値と大小比較することで、ＥＯＢに解除用データが挿入されていたことを復号側で識別できる。
【００２６】
透かしデータ挿入ブロックを包含する近傍領域ブロックを設定するステップと、近傍領域ブロックにおけるＤＣＴ係数を近傍領域ブロックの識別データを構成するビットに変更することで、近傍領域ブロックに近傍領域ブロックの識別データを挿入するステップと、をさらに含んでもよい。
【００２７】
こうすると、ブロックのノイズで文字、ロゴ、メッセージなどの可読符号を表現する際、ノイズのない領域とノイズのある領域とを区別するのが容易になる。
【００２８】
近傍領域ブロックに近傍領域ブロックの識別データを挿入するステップは、近傍領域ブロックの内、最高周波数位置以外の位置にＥＯＢが存在するブロックについては、ＥＯＢを、識別データを構成するビットに応じて＋１または−１に変更するステップと、近傍領域ブロックの内、最高周波数位置にＥＯＢが存在するブロックについては、画像に設定された全てのブロックにおけるＤＣＴ係数のうち絶対値が最大となるＤＣＴ係数を特定し、絶対値が最大となるＤＣＴ係数をＺとしたとき、ＥＯＢを、識別データのビットに応じて｜Ｚ｜＋１または−（｜Ｚ｜＋１）に変更するステップと、近傍領域ブロックの内、ＥＯＢが存在しないブロックについては、識別データを挿入するための予備ブロックを近傍領域ブロック以外のブロックに設定し、予備ブロックのＥＯＢを、識別データを構成するビットに応じて＋１もしくは−１に変更するかまたは｜Ｚ｜＋１もしくは−（｜Ｚ｜＋１）に変更するステップと、をさらに含んでもよい。
【００２９】
このように、識別データを、近傍領域ブロック自身に、あるいはそれ以外の予備領域に挿入、近傍領域とそれ以外の領域を復号側で識別させることができる。
【００３０】
なお、識別データを埋め込むブロックと、解除用データを埋め込むブロックとは、競合しないようにすることが好ましい。
【００３１】
すなわち、解除用データ挿入ブロックを設定するステップは、近傍領域ブロック以外のブロックを解除用データ挿入ブロックに設定することが好ましい。
【００３２】
上記の可逆的透かしデータ挿入方法をコンピュータに実行させるプログラムも本発明に含まれる。
【００３３】
本発明に係る可逆的透かしデータ挿入装置は、所望の画像へ挿入すべき透かしデータを決定する透かしデータ決定部と、画像の圧縮符号化単位となるべきブロックを画像に設定するブロック設定部と、透かしデータを挿入すべきブロックである透かしデータ挿入ブロックを設定する透かしデータ挿入ブロック設定部と、ブロック毎に離散コサイン変換（ＤＣＴ）係数を算出するＤＣＴ係数算出部と、ブロック毎に算出された離散コサイン変換係数の内、ＥＯＢ(End of Block）以外のＤＣＴ係数位置の中から、透かしデータを埋め込むべき１以上のＤＣＴ係数位置である透かしデータ挿入位置を、透かしデータ挿入ブロックの各々について決定する透かしデータ挿入位置決定部と、透かしデータ挿入ブロックの各々における透かしデータ挿入位置および透かしデータの値を示すデータである解除用データを作成する解除用データ作成部と、解除用データを挿入すべきブロックである解除用データ挿入ブロックを設定する解除用データ挿入ブロック設定部と、解除用データ挿入ブロックのＤＣＴ係数の内、ジグザグスキャン順に沿ったＥＯＢ以降の高周波数側のＤＣＴ係数位置の中から、解除用データを埋め込むべき１以上のＤＣＴ係数位置である解除用データ挿入位置を、解除用データ挿入ブロックの各々について決定する解除用データ挿入位置決定部と、透かしデータ挿入ブロックの各々について決定された透かしデータ挿入位置のＤＣＴ係数の各々を対応する量子化幅で除算した値である除算結果値を丸めた値である量子化代表値に、透かしデータを加算することで、画像に透かしデータを挿入する透かしデータ挿入部と、解除用データ挿入ブロックの各々について決定された解除用データ挿入位置のＤＣＴ係数の各々を対応する量子化幅で除算した値である除算結果値を丸めた値である零の量子化代表値を、解除用データを構成するビットに応じた正または負の符号を有する零以外の値に変更することで、画像に解除用データを挿入する解除用データ挿入部と、を含む。
【００３４】
本発明に係る画像処理システムは、上記に記載の可逆的透かしデータ挿入装置と、可逆的透かしデータ挿入装置から出力された、透かしデータおよび解除用データの挿入された画像を入力する入力部と、解除用データに基づき、透かしデータの埋め込まれたブロックおよびＤＣＴ係数位置ならびにＤＣＴ係数位置における透かしデータの値を特定する透かしデータ特定部と、データ挿入位置特定部の特定した各ブロックの各挿入位置における透かしデータの値に基づき、透かしデータ挿入位置における透かしデータ挿入前のＤＣＴ係数を復元するとともに、解除用データ挿入位置における解除用データ挿入前のＤＣＴ係数を復元するＤＣＴ係数復元部と、を備える。  
【発明の効果】
【００３５】
この発明によると、各ブロックのＤＣＴ係数に透かしデータを埋め込むことができる。埋め込む位置と値は任意に設定できるから、画像のノイズの顕在度とノイズ解析の困難度を変化させることができる。また、透かしデータの位置と値を示す解除用データも画像に埋め込むから、復号側で画像からその解除用データを識別し、ノイズを除去することができる。
【発明を実施するための最良の形態】
【００３６】
以下、添付した図面を参照し本発明の好ましい実施の形態を説明する。
【００３７】
＜第１実施形態＞
図１は本発明の好ましい実施形態に係るノイズデータ埋込装置付き画像圧縮符号化装置のブロック図である。詳細は省略するが、本実施形態で述べる画像圧縮符号化装置の各ブロックはマイコンその他の演算装置のプログラム制御によっても実現可能である。
【００３８】
画像データ作成部１１は、デジタルスチルカメラに内蔵されたアナログフロントエンドやパソコンのメディアリーダといった画像出力部１０から出力された被写体像を表すＲＧＢの各色毎の画像信号を入力し、これを、３×３行列による線形変換により、輝度を表す輝度信号（Ｙ）、「青み」成分を表す色差信号（Ｕ）及び「赤み」成分を表す色差信号（Ｖ）に変換し、このＹＵＶ画像データをＤＣＴ処理部１２に出力する。
【００３９】
ＹＵＶの色空間への変換には例えば、Ｙ＝０．２９９０Ｒ＋０．５８７０Ｇ＋０．１１４０Ｂ  Ｕ＝−０．１６８７Ｒ−０．３３１３Ｇ＋０．５０００Ｂ＋１２８  Ｖ＝０．５０００Ｒ−０．４１８７Ｇ−０．０８１３Ｂ＋１２８という変換式を用いることができる。
【００４０】
なお、白黒画像はＵ＝Ｖ＝０として考えればよく、本発明はカラー画像、白黒画像の両方に適用できる。
【００４１】
ＤＣＴ処理部１２は、画像データ作成部１１から入力された画像データを８×８要素からなる複数のブロック（ここでは説明の便宜上６４個のブロックとするが、何個でも可）に分割するブロック化を行い、ブロック毎にＤＣＴ（離散コサイン変換）を行う。ＤＣＴ処理部１２は、ＤＣＴ係数を格納した８×８のテーブル形式のＤＣＴ係数テーブルをブロック毎に作成し、量子化部１３に出力する。以下、ブロック毎に作成された８×８のテーブル形式のＤＣＴ係数を、単にブロックという。
【００４２】
量子化部１３は、ＤＣＴ処理部１２から出力されたブロック毎の各ＤＣＴ係数を、量子化表の対応する区間幅Q（量子化幅あるいは量子化ステップと呼ばれる）で割る。
【００４３】
データ挿入部１５は、図示しないキーボードやマウスなどの手動操作装置の指定に基づき、あるいは、擬似的に生成した乱数に基づき、除算結果値の得られたブロックの中からノイズデータ挿入ブロックとする特定のブロックおよび各ノイズデータ挿入ブロックにおけるノイズデータ挿入位置とする特定の係数位置を決定する。
【００４４】
図２〜５は、ノイズデータ挿入位置とする特定のブロック・特定の係数位置の４パターンを例示列挙している。
【００４５】
図２は、符号化部１４によるジグザグ符号化順のｍ＝６３番目の位置を除く特定のＤＣＴ係数位置ｋ（ここではｋ＝８）を、全てのブロックについてのノイズデータ挿入位置としていることを示す。ｋは８である必要はなく、その他の位置でもよい。なお、ＥＯＢ以降にノイズデータを挿入すると、ゼロランレングスが短くなり、符号化効率が低下するから、ＥＯＢよりも前に挿入するのが好ましい。この点については図５を用いて後述する。
【００４６】
図２の場合、埋め込むノイズデータの実際の値は、どのブロックについても一律同じ値であるか、ブロックごとに擬似的に生成した乱数とする。
【００４７】
図３は、４×４のブロックＢ（１）〜Ｂ（１６）で構成される画像につき、最高周波数位置を除く特定の係数位置候補Ｎ（Ｎは符号化部１４によるジグザグ符号化順に沿ったＤＣＴ係数位置のパラメータであり、Ｎ＝０、１、２、４）の中から、擬似的に発生した乱数に基づき、当該候補内におけるノイズデータ挿入位置とすべき係数位置ｎを、ブロックごとにランダムに決定していることを示す。ブロックごとの挿入係数位置は、候補に属すれば単数でも複数でもよい。
【００４８】
図３の場合、埋め込むノイズデータの実際の値は、全ブロック一律同じ値であるか、ブロックごとあるいは挿入係数位置ごとにランダムに決められた値とする。
【００４９】
ブロックごとに挿入位置がランダムに決められることで、ノイズの挿入位置の特定が困難になり、不正なノイズ解除を効果的に防げる。
【００５０】
図４では一例として、係数位置候補Ｎ＝０、１、２、４と設定されており、この候補内でｎがランダムに決定される。例えば、ブロックＢ（１）では、ｎ＝０がノイズデータ挿入位置に決定されており、ブロックＢ（２）では、ｎ＝１がノイズデータ挿入位置に決定されており、ブロックＢ（３）では、ｎ＝２がノイズデータ挿入位置に決定されており、ブロックＢ（２）では、ｎ＝４がノイズデータ挿入位置に決定されている。
【００５１】
ノイズデータ挿入位置となる係数位置は単数である必然性はなく、例えばブロックＢ（６）では、係数位置ｎ＝１および２がノイズデータ挿入位置に決定されている。
【００５２】
また、上記の係数位置候補の全組み合わせ（例えば、０と１、０と１と４などであり、そのパターン総数は、４！＝２４となる）を、挿入パターンとして予め記憶しておき、乱数に従って所望の挿入パターンをブロックごとにランダムに選択し、選択した挿入パターンの挿入係数位置にノイズデータを埋め込んでもよい。
【００５３】
挿入位置がランダムに決められることで、ノイズの挿入位置の特定が困難になり、不正なノイズ解除を効果的に防げる。
【００５４】
図４では、ノイズデータ挿入位置となる係数位置範囲０〜７の全てをノイズデータ挿入位置に決定している。
【００５５】
図４の場合、埋め込むノイズデータの実際の値は、一律同じ値であるか、ランダムに決められた値とする。
【００５６】
図５では、ＥＯＢ（エンドオブブロック、ブロック内の後続の量子化代表値は全てゼロであるという意味のコード）の位置を上限とし、ＥＯＢを超えない低周波数側の範囲に属する係数位置の全部または一部を挿入係数位置に決定している。
【００５７】
ＥＯＢはブロックによってその位置が変動するから、ＥＯＢにノイズデータを埋め込むと、そのノイズデータ挿入位置の特定が困難になるため、これは回避される。また、ＥＯＢよりも前にノイズデータを挿入すると、ゼロランレングスが短くならず、符号化効率が低下しないため好ましい。
【００５８】
さらに、例えば、空や白壁のような変化の少ないのっぺりとしたブロックの場合、ＥＯＢ位置は低周波数側に位置するから、この場合のノイズデータ挿入による画質変化は小さく、逆に、例えば、被写体や文字のエッジ部分のような変化の大きいブロックの場合、ＥＯＢ位置は高周波数側に位置するから、この場合のノイズデータ挿入による画質変化は大きくなり、画像の重要部分に対して特に強いノイズを加えることができる。
【００５９】
図５の場合、埋め込むノイズデータの実際の値は、一律同じ値であるか、ランダムに決められた値とする。
【００６０】
再び図１を参照すると、データ挿入部１５は、データ挿入ブロックの挿入位置にある量子化代表値に、ノイズデータを加算して埋め込む。
【００６１】
具体的には、データ挿入部１５は、ノイズデータ挿入ブロックのうち、ノイズデータを埋め込むべき係数位置であるk番目（符号化部１４によるジグザグ符号化順のm番目のこと）のＤＣＴ係数D(L,k)に対応する除算結果値D(L,k)/Q(L,k)を、予め設定した丸め方向（切り上げ、切捨てまたは四捨五入）に丸めた値であるオリジナルの量子化代表値R1(L,k)に、正または負の整数であるノイズデータを加算することで、ノイズデータの挿入が行われた量子化代表値R2(L, k)を得る。
【００６２】
例えば、図２４（ａ）に示すような、あるノイズデータ挿入ブロックのＥＯＢより低周波数側の係数位置k=０〜１１のオリジナル量子化代表値R1（６、３、４、１、５、２、１、２、２、０、１、１）に対し、図２４（ｂ）のような、各係数位置k=０〜１１に対応するノイズ「１０」を加算することで、図２４（ｃ）のような、ノイズ挿入後の量子化代表値R2を得る。
【００６３】
詳細は省略するが、Ｕ・Ｖ成分にも、Ｙ成分と同様にしてデータ挿入ができるのはいうまでもない。
【００６４】
データ挿入部１５は、ノイズデータの解除に必要なデータである解除用データの挿入ブロックおよび当該解除用データ挿入ブロックにおける解除用データを挿入するＤＣＴ係数位置を、所定の方式により決定し、決定されたブロックの解除用データの挿入位置ｌに、解除用データのデータビットを埋め込む。解除用データは、どのブロックのどの係数位置にどのような値のノイズが挿入されているかを示すビット列である。解除用データは、Ｍ−系列などを用いて予めランダム化（暗号化）されている。
【００６５】
図６および図７は、解除用データの挿入方式を示す。ここでは、画像の各ブロックのＥＯＢの位置に基づき、当該ブロックにおける解除用データのビットの挿入位置ｌと挿入する値を決めていく。
【００６６】
図６は、ノイズの挿入されたブロックに解除用データも挿入する形態である。図６（ａ）に示すように、あるブロックについて、当該ブロックの最高周波数位置（ｍ＝６３）にＥＯＢが存在しない場合、当該ブロックへの解除用データの挿入は行わない。これは、本実施形態では、ＥＯＢにより解除用データとノイズデータの挿入位置が区別されるためである。
【００６７】
図６（ｂ）に示すように、あるブロックについて、当該ブロックの最高周波数位置にＥＯＢが存在する場合、まず、画像中の全ブロックにおける最高周波数位置（ｍ＝６３）のＤＣＴ係数の量子化代表値をサーチし、全ブロックの全ＤＣＴ係数値のうち絶対値が最大となる量子化代表値を特定し、その値をＺとする。そして、当該ブロックの最高周波数位置のＥＯＢを、解除用データのビットが「０」であれば「｜Ｚ｜＋１」に、解除用データのビットが「１」であれば「−（｜Ｚ｜＋１）」に変更することで、解除用データの１ビットを当該ブロックの最高周波数位置ｌ＝６３に挿入する。あるいは、解除用データのビットが「０」であれば「−（｜Ｚ｜＋１）」に、解除用データのビットが「１」であれば「｜Ｚ｜＋１」に変更してもよい。要するに、解除用データのビットの「０」あるいは「１」と、｜Ｚ｜＋１に付加される正負の符号「｜Ｚ｜＋１」あるいは「−（｜Ｚ｜＋１）」との対応関係が１対１であればどちらでもよい。なお、これにより当該ブロックのＥＯＢは消滅するため、解除用データの挿入に必要があるときに限り、本方式を採用することが好ましい。
【００６８】
図６（ｃ）に示すように、あるブロックについて、当該ブロックの最高周波数位置以外の位置ｌにＥＯＢが存在する場合、当該ブロックの最高周波数位置のＥＯＢを、解除用データのビットが「０」であれば「１」に、解除用データのビットが「１」であれば「−１」に変更することで、解除用データの１ビットを当該ブロックの最高周波数位置に挿入する。なお、これにより当該ブロックのＥＯＢは１つ分高周波数側に移動する。
【００６９】
ただし、解除用データのビットが「０」であれば「−１」に、解除用データのビットが「１」であれば「＋１」に変更してもよい。要するに、ビットの「０」あるいは「１」と正負の符号「＋１」あるいは「−１」と対応関係が１対１であればどちらでもよい。
【００７０】
図７は、ノイズの挿入されているブロックおよび当該ブロックを囲む近傍領域以外に解除用データのビットを挿入する形態である。これは、図８のように、ノイズの挿入されたブロックで文字、ロゴ、メッセージなどの可読符号を表現する際に有用である。
【００７１】
まず、図７（ａ）に示すような、可読符号を挿入するブロックの指定を受け付け、指定された可読符号挿入ブロックおよびそれを囲む近傍領域（図中の矩形領域Ｔ）を決定する。かつ、矩形領域Ｔにノイズデータが挿入されたことを示すマーキングデータを挿入できない場合に備え、矩形領域Ｔ以外の任意の１または数個のブロックをマーキングデータの予備格納領域Ｓに決定する。予備格納領域Ｓは、画像の周辺部分であることが好ましい。
【００７２】
次に、図７（ｂ）〜（ｄ）のいずれかの方式で、矩形領域Ｔ内のブロックまたは予備格納領域Ｓのブロックに、ノイズデータが挿入されたブロックであるか否かを識別するマーキングデータを挿入する。
【００７３】
すなわち、図７（ｂ）に示すように、矩形領域Ｔ内のあるブロックについて、当該ブロックの最高周波数位置（ｍ＝６３）にＥＯＢが存在しない場合、当該ブロックへのマーキングデータの挿入は行わない。その代わり、当該ブロックにノイズデータが挿入されたことを示すマーキングデータは、矩形領域Ｔとは別の予備格納領域ＳのブロックのＥＯＢ位置に挿入する。マーキングデータの挿入の影響を極力避けるため、予備格納領域Ｓは画像端部に設けるとよい。そのデータ挿入方式は、図６（ａ）〜（ｃ）と同様にするが、この場合、解除用データの挿入と競合する可能性があるため、予備格納領域Ｓには、解除用データを挿入しないものとする。つまり、予備格納領域Ｓを設定した場合、解除用データ挿入ブロックは、予備格納領域Ｓ以外のブロックの中から決定される。
【００７４】
図７（ｃ）に示すように、矩形領域Ｔ内のあるブロックについて、当該ブロックの最高周波数位置にＥＯＢが存在する場合、まず、画像中の全ブロックにおける最高周波数位置（ｍ＝６３）のＤＣＴ係数の量子化代表値をサーチし、全ブロックの全ＤＣＴ係数値のうち絶対値が最大となる量子化代表値を特定し、その値をＺとする。そして、当該ブロックの最高周波数位置のＥＯＢを、マーキングデータのビットが「０」であれば「｜Ｚ｜＋１」に、マーキングデータのビットが「０」であれば「−（｜Ｚ｜＋１）」に変更することで、マーキングデータの１ビットを当該ブロックの最高周波数位置に挿入する。なお、これにより当該ブロックのＥＯＢは消滅する。あるいは、マーキングデータのビットが「０」であれば「−（｜Ｚ｜＋１）」に、マーキングデータのビットが「０」であれば「｜Ｚ｜＋１」に変更してもよい。要するに、ビットの「０」あるいは「１」と｜Ｚ｜＋１に付加される正負の符号「｜Ｚ｜＋１」あるいは「−（｜Ｚ｜＋１）」との対応関係が１対１であればどちらでもよい。
【００７５】
図７（ｄ）に示すように、あるブロックについて、当該ブロックの最高周波数位置以外の位置にＥＯＢが存在する場合、当該ブロックの最高周波数位置のＥＯＢを、マーキングデータのビットが「０」であれば「１」に、マーキングデータのビットが「１」であれば「−１」に変更することで、マーキングデータの１ビットを当該ブロックの最高周波数位置に挿入する。なお、これにより当該ブロックのＥＯＢは１つ分高周波数側に移動する。
【００７６】
ただし、マーキングデータのビットが「０」であれば「−１」に、マーキングデータのビットが「０」であれば「＋１」に変更してもよい。要するに、ビットの「０」あるいは「１」と正負の符号「＋１」あるいは「−１」と対応関係が１対１であればどちらでもよい。
【００７７】
データ挿入部１５は、ノイズデータも解除用データもマーキングデータも埋め込まないＤＣＴ係数D(L,n)(Lは０以上６３以下の任意の整数であり、かつn≠ｋ、ｌ)に対応する除算結果値D(L,n)/Q(L,n)については、その値の少数以下の桁を、四捨五入・切捨て・切り上げなどの丸め演算で丸めることで、データを埋め込まないオリジナルのＤＣＴ係数の量子化代表値R1(L,n)を決定する。
【００７８】
データ挿入部１５は、このようにして決定されたＤＣＴ係数の量子化代表値R1およびR2を格納した８×８のテーブル形式の量子化データテーブルを全てのブロックについて作成し、符号化部１４に出力する。
【００７９】
符号化部１４は、データ挿入部１５から出力されたブロック毎の量子化データテーブルをハフマン符号表などを用いてエントロピー符号化し、ビットストリームを出力する。この際、最高周波数の係数位置まで連続するゼロの量子化代表値の列の長さ（ゼロランレングス）を考慮した符号化を行なうことにより、ビット数が効果的に低減される。
【００８０】
符号化データにはＥＯＢ（エンドオブブロック）のコードが付加される。ここで、ＥＯＢとは、ブロック内の後続の量子化代表値は全てゼロであるという意味のコードである。
【００８１】
ＤＣＴを行って得られるＤＣＴ係数テーブルにおいては、左上に画質の劣化が顕在化しやすい低い空間周波数のＤＣＴ係数が配置され、右下に向かうほど画質の劣化が顕在化しにくい高い空間周波数のＤＣＴ係数が配置される。
【００８２】
符号化部１４によって符号化されたデータは、外部記録媒体やネットワークなどに出力される。
【００８３】
このようにしてデータを埋め込んだ画像データを、ＪＰＥＧファイルとして出力し、画像を必要とするユーザに提供する。
【００８４】
画像の提供を受けたユーザ側では、パソコンなどでＪＰＥＧファイルを復号化し、その画像を表示させる。
【００８５】
図９〜２１は、図２〜５のようにして決定されたノイズデータ挿入位置に、固定あるいはランダムの値のノイズが挿入された場合における、復号化画像の一例を示している。
【００８６】
図９は、各ブロックの係数位置ｍ＝１に、固定の値のノイズを挿入した場合における復号化画像の一例を示す。この場合、規則的な縦縞のパターンが現れる。これは、いずれのブロックにおいても、同じ位置に同じノイズが挿入されているからである。また、パターンが縦縞になるのは、ノイズを挿入する位置が、各ブロックのＸ方向（水平方向）に偏っているからである。
【００８７】
図１０は、各ブロックの係数位置ｍ＝１０に、固定の値のノイズを挿入した場合における復号化画像の一例を示す。この場合、規則的な横縞のパターンが現れる。パターンが横縞になるのは、ノイズを挿入する位置が、各ブロックのＹ方向（垂直方向）に偏っているからである。
【００８８】
図１１は、各ブロックの係数位置ｍ＝３９に、固定の値のノイズを挿入した場合における復号化画像の一例を示す。この場合、格子状の規則的なパターンが現れる。これは、係数位置がＸ方向・Ｙ方向にも偏っておらず、均等だからである。
【００８９】
図１２は、各ブロックの係数位置ｍ＝１に、ランダムな値のノイズを挿入した場合における復号化画像の一例を示す。この場合、Ｙ方向（垂直方向）に沿った不規則なパターンが現れる。パターンがは、いずれのブロックにおいても、同じ位置にノイズが挿入されているからである。また、Ｙ方向（垂直方向）に沿っているのは、ノイズを挿入する位置が、どのブロックも同じだからである。しかし、各ブロックに挿入されるノイズの値はランダムであるため、規則的な縞模様にはならない。
【００９０】
図１３は、各ブロックの係数位置ｍ＝１０に、ランダムな値のノイズを挿入した場合における復号化画像の一例を示す。この場合、Ｘ方向（水平方向）に沿った不規則なパターンが現れる。
【００９１】
図１４は、各ブロックの係数位置ｍ＝３９に、ランダムな値のノイズを挿入した場合における復号化画像の一例を示す。この場合、格子上の不規則なパターンが現れる。
【００９２】
図１５は、各ブロックの係数位置候補Ｎ＝０、１、２、４の内でのランダムな位置に固定値のノイズを挿入した場合における復号化画像の一例を示す。各ブロックでのノイズ挿入位置は異なるため、規則的なパターンは生じないが、ノイズの値は同じであるため、ノイズの強さは同じである。
【００９３】
図１６は、各ブロックの係数位置候補Ｎ＝０、１、２、４の内でのランダムな位置にランダムな値のノイズを挿入した場合における復号化画像の一例を示す。各ブロックでのノイズ挿入位置は異なるため、規則的なパターンは生じず、かつ、ノイズの値はランダムであるため、各ブロックで顕在化するノイズの強さも異なる。
【００９４】
図１７は、各ブロックの係数位置範囲Ｎ＝０〜１０のにランダムな値のノイズを挿入した場合における復号化画像の一例を示す。各ブロックでのノイズ挿入位置は同じ範囲であるため、規則的なブロック状のパターンが生じるが、ノイズの値はランダムであるため、各ブロックで顕在化するノイズの強さも異なる。
【００９５】
図１８は、各ブロックの係数位置範囲Ｎ＝５３〜６３にランダムな値のノイズを挿入した場合における復号化画像の一例を示す。各ブロックでのノイズ挿入位置は同じ範囲であるため、規則的なブロック状のパターンが生じるが、ノイズの値はランダムであるため、各ブロックで顕在化するノイズの強さも異なる。
【００９６】
図１９は、特定文字「ＦＦＳＦ」のパターンに相当する特定位置のブロックの係数位置範囲Ｎ＝０〜３０にランダムな値のノイズを挿入した場合における復号化画像の一例を示す。特定位置のブロックにノイズが挿入されるため、ノイズの顕在化したブロックにより文字が表現されるが、ノイズの値はランダムであるため、文字を構成する各ブロックのノイズの強さは異なる。
【００９７】
図２０は、特定文字「ＦＦＳＦ」のパターンに相当する特定位置のブロックの係数位置範囲Ｎ＝３０〜６０にランダムな値のノイズを挿入した場合における復号化画像の一例を示す。
【００９８】
図２１は、各ブロックの係数位置範囲Ｎ＝０〜ＥＯＢにランダムな値のノイズを挿入した場合における復号化画像の一例を示す。各ブロックでのノイズ挿入位置はＥＯＢまでであり、ＥＯＢに依存するため、不規則なブロック状のパターンが生じるが、ノイズの値はランダムであるため、各ブロックで顕在化するノイズの強さも異なる。
【００９９】
図２２（ａ）〜（ｄ）は、それぞれ、図２〜図５の方式で各画像にノイズを挿入したことによるファイルサイズの増加割合を示す。
【０１００】
＜第２実施形態＞
図２３は、本発明の好ましい実施形態に係るノイズ除去装置付き画像復号化装置１０２のブロック図である。詳細は省略するが、本実施形態で述べる装置の各ブロックはマイコンその他の演算装置のプログラム制御によっても実現可能である。
【０１０１】
入力部２０は、第１実施形態に係る画像圧縮符号化装置１０１の出力部１５から出力された画像データを、復号化部２１に入力する。入力部２０は、メディアリーダやネットワークアダプタなどで構成することができる。
【０１０２】
復号化部２１は、エントロピー符号化部１４の出力した符号化画像データのＤＣＴ係数D(m)をジグザグ順序に従ってエントロピー復号化する。
【０１０３】
復号化部２１は、各ブロックのマーキングデータに基づき、解除用データの挿入されているブロックを識別する。そして、解除用データの挿入された各ブロックから、解除用データのデータビットを取得し、このデータビットから解除用データを復元する。
【０１０４】
具体的には、復号化部２１は、任意の１ブロックについて、まずＥＯＢの有無を判別し、ＥＯＢがあれば、ＥＯＢの１つ低周波数側の位置に解除用データビットが挿入されていると判断する（図６（ｃ）参照）。そして、当該ＥＯＢの１つ低周波数側の位置ｍの係数の量子化代表値R(m)の符号が正であれば解除用データビット０が挿入されており、量子化代表値R(m)の符号が負であれば解除用データビット１が挿入されていることを識別する。
【０１０５】
ＥＯＢがなければ、全ブロックの係数値の絶対値の最大値をＭＡＸとして、当該ブロックｍ＝６３の値の絶対値Ｋとを比較し、Ｋ＝ＭＡＸ＋１であれば、ｍ＝６３の係数に解除用データビットが埋め込まれていると判断する（図６（ｂ）参照）。そして、当該係数が正であれば解除用データビット「０」が、当該係数が負であれば解除用データビット「１」が埋め込まれていると識別する。
【０１０６】
このように、図６の方式に従い、各ブロックについて、解除用データビットの挿入の有無を判別し、挿入されたデータビットを識別し、識別された各ビットを統合し、解除用データを復元する。ランダム化された解除用データを復元するための鍵情報は、別途復号化部２１に入力されているものとする。
【０１０７】
復号化部２１は、復元した解除用データから、ノイズ挿入ブロック、ノイズ挿入係数位置および埋め込まれたノイズ値を特定する。
【０１０８】
また、復号化部２１は、特定された位置における特定されたノイズ値を、各係数位置の量子化代表値R2から差し引き、ノイズ挿入前のオリジナルの量子化代表値R1に復元する。また、解除用データビットあるいはマーキングデータが埋め込まれていると識別された係数位置の量子化代表値を、全て「０」に戻すことで、解除用データあるいはマーキングデータ挿入前のＥＯＢを復元する。後は、復元された量子化代表値を逆ＤＣＴ変換し、画像データを復元する。復元された画像データは、ディスプレイなどの表示部２２に表示される。
【０１０９】
つまり、複合側で解除用データの特定ができれば、ノイズを解除したオリジナル画像の再生が可能である。
【０１１０】
画像圧縮符号化装置１０１と画像復号化装置１０２とは、ノイズデータの挿入と解除をそれぞれ行うシステムを構成するが、これらの装置は、同一ユーザが保有するのではなく、例えば、画像圧縮符号化装置１０１は画像コンテンツの提供者、画像復号化装置１０２は画像のエンドユーザが保有する。
【０１１１】
上記の復号化部２１の機能は、パソコンその他のコンピュータで実行されるプログラムによっても実現でき、画像コンテンツの提供者が、正式なエンドユーザのみに、上記の復号化部２１を実現するプログラムを配布して、ノイズの除去された画像を閲覧できるようにするとよい。
【図面の簡単な説明】
【０１１２】
【図１】ノイズデータ埋込装置付き画像圧縮符号化装置のブロック図
【図２】全てのブロックの特定のＤＣＴ係数位置ｋ（ｋ＝７）を、ノイズデータ挿入位置としていることを示す図
【図３】４×４のブロックＢ（１）〜Ｂ（１６）で構成される画像につき、擬似的に発生した乱数に基づき、当該候補内におけるノイズデータ挿入位置とすべき係数位置ｎがランダムに決定されていることを示す図
【図４】係数位置候補内でノイズデータ挿入位置とすべき係数位置ｎがランダムに決定決定されていることを示す図
【図５】ＥＯＢを超えない低周波数側の範囲に属する係数位置の全部または一部を挿入係数位置に決定されてことを示す図
【図６】ノイズの挿入されたブロックに解除用データのビットも挿入する形態を示す図
【図７】ノイズの挿入されているブロックおよび当該ブロックを囲む近傍領域以外に解除用データのビットを挿入する形態を示す図
【図８】ノイズの挿入されたブロックで文字、ロゴ、メッセージなどの可読符号を表現する形態を示す図
【図９】各ブロックの係数位置ｍ＝１に、固定の値のノイズを挿入した場合における復号化画像の一例を示す図
【図１０】各ブロックの係数位置ｍ＝１０に、固定の値のノイズを挿入した場合における復号化画像の一例を示す図
【図１１】各ブロックの係数位置ｍ＝３９に、固定の値のノイズを挿入した場合における復号化画像の一例を示す図
【図１２】各ブロックの係数位置ｍ＝１に、ランダムな値のノイズを挿入した場合における復号化画像の一例を示す図
【図１３】各ブロックの係数位置ｍ＝１０に、ランダムな値のノイズを挿入した場合における復号化画像の一例を示す図
【図１４】各ブロックの係数位置ｍ＝３９に、ランダムな値のノイズを挿入した場合における復号化画像の一例を示す図
【図１５】各ブロックの係数位置候補Ｎ＝０、１、２、４の内でのランダムな位置に固定値のノイズを挿入した場合における復号化画像の一例を示す図
【図１６】各ブロックの係数位置候補Ｎ＝０、１、２、４の内でのランダムな位置にランダムな値のノイズを挿入した場合における復号化画像の一例を示す図
【図１７】各ブロックの係数位置範囲Ｎ＝０〜１０のにランダムな値のノイズを挿入した場合における復号化画像の一例を示す図
【図１８】各ブロックの係数位置範囲Ｎ＝５３〜６３にランダムな値のノイズを挿入した場合における復号化画像の一例を示す図
【図１９】特定文字「ＦＦＳＦ」のパターンに相当する特定位置のブロックの係数位置範囲Ｎ＝０〜３０にランダムな値のノイズを挿入した場合における復号化画像の一例を示す図
【図２０】特定文字「ＦＦＳＦ」のパターンに相当する特定位置のブロックの係数位置範囲Ｎ＝３０〜６０にランダムな値のノイズを挿入した場合における復号化画像の一例を示す図
【図２１】各ブロックの係数位置範囲Ｎ＝０〜ＥＯＢにランダムな値のノイズを挿入した場合における復号化画像の一例を示す図
【図２２】図２〜図５の方式で各画像にノイズを挿入したことによるファイルサイズの増加割合を示す図
【図２３】ノイズ除去装置付き画像復号化装置のブロック図
【図２４】ノイズ加算の一例を示す図
【符号の説明】
【０１１３】
１２：ＤＣＴ処理部、１３：量子化部、１４：符号化部、１５：データ挿入部
【図１】
2008283479.tif 000003
【図２】
2008283479.tif 000004
【図３】
2008283479.tif 000005
【図４】
2008283479.tif 000006
【図５】
2008283479.tif 000007
【図６】
2008283479.tif 000008
【図７】
2008283479.tif 000009
【図８】
2008283479.tif 000010
【図９】
2008283479.tif 000011
【図１０】
2008283479.tif 000012
【図１１】
2008283479.tif 000013
【図１２】
2008283479.tif 000014
【図１３】
2008283479.tif 000015
【図１４】
2008283479.tif 000016
【図１５】
2008283479.tif 000017
【図１６】
2008283479.tif 000018
【図１７】
2008283479.tif 000019
【図１８】
2008283479.tif 000020
【図１９】
2008283479.tif 000021
【図２０】
2008283479.tif 000022
【図２１】
2008283479.tif 000023
【図２２】
2008283479.tif 000024
【図２３】
2008283479.tif 000025
【図２４】
2008283479.tif 000026