(57)【特許請求の範囲】
【請求項１】
データをビットシーケンスに変換し、前記ビットシーケンスのビット数が奇数である時に、前記ビットシーケンスの末尾に１ビットを充填し、その値として０又は１を付与するステップＡと、
前記ビットシーケンスの配列順序に沿って前記ビットシーケンスから毎回に２ビットの値を抽出して１組とし、Ｍ個のビット値組を取得し、ビット値組毎における前の１ビットの値を当該ビット値組における第１のビット値とし、後の１ビットの値を当該ビット値組における第２のビット値とするステップＢと、
前記データのキャリアである矩形画像をＰ個の同じ大きさの正方形画像ブロックに分割し、
0006453461.tif 000008
であり、その中の前からＭ個の正方形画像ブロックを抽出し、当該Ｍ個の正方形画像ブロックにおける正方形画像ブロックのそれぞれが第１の対角線及び第２の対角線を有するようにするステップＣと、
前記Ｍ個の正方形画像ブロックにおける正方形画像ブロックそれぞれの第１の対角線及び第２の対角線での各画素の階調値を検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスを取得し、画素階調値シーケンス毎の転倒数パリティーを検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーを取得するステップＤと、
対角線毎の画素階調値シーケンスの転倒数パリティーで１ビットの値を表し、前記Ｍ個の正方形画像ブロックが前記Ｍ個のビット値組と一対一対応し、正方形画像ブロック毎の第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが当該正方形画像ブロックの対応するビット値組の第１のビット値及び第２のビット値とそれぞれに対応する原則に従って、前記Ｍ個の正方形画像ブロックにおける正方形画像ブロックそれぞれの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致するか否かを検出し、一致しないと、当該正方形画像ブロックに対して、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致するように画素位置調整を行うステップＥとを含むことを特徴とするデータ隠蔽方法。
【請求項２】
正方形画像ブロックに対して画素位置調整を行う方法として、
当該正方形画像ブロックにおいて第１の対角線の画素階調値シーケンスの転倒数パリティーの表す値のみが当該正方形画像ブロックの対応するビット値組における第１のビット値と一致しない時に、当該第１の対角線から階調値が同等でなく、差分値が最も小さい２つの画素を抽出し、これら２つの画素を入れ替えて、当該第１の対角線の画素階調値シーケンスの転倒数パリティーを変化させるステップＥ１と、
当該正方形画像ブロックにおいて第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値のみが当該正方形画像ブロックの対応するビット値組における第２のビット値と一致しない時に、当該第２の対角線から階調値が同等でなく、差分値が最も小さい２つの画素を抽出し、これら２つの画素を入れ替えて、当該第２の対角線の画素階調値シーケンスの転倒数パリティーを変化させるステップＥ２と、
当該正方形画像ブロックにおいて第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致しない時のステップＥ３とがあり、このステップＥ３は、
当該正方形画像ブロックの第１の対角線及び第２の対角線から画素を１つずつ抽出し、これら２つの画素を入れ替えるステップＥ３−１と、
入れ替えた後に、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが全て変化したか否かを検出し、変化しない場合、今回の入れ替えを放棄しステップＥ３−１へ戻り、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが全て変化するまで繰り返しするステップＥ３−２とを含むことを特徴とする請求項１に記載のデータ隠蔽方法。
【請求項３】
正方形画像ブロックの第１の対角線及び第２の対角線から画素を１つずつ抽出する原則は、抽出した２つの画素の階調値の差の小さい方から大きい方への順に従って、階調値の差が最も小さい２つの画素から抽出し始めることを特徴とする請求項２に記載のデータ隠蔽方法。
【請求項４】
前記正方形画像ブロックの大きさをＷ×Ｗとすると、Ｗは偶数であり、且つ
0006453461.tif 000009
であることを特徴とする請求項１に記載のデータ隠蔽方法。
【請求項５】
画像をデータキャリアとするデータ送信方法であって、
請求項１〜４のいずれか１項に記載のデータ隠蔽方法に含まれるステップを含み、前記データ隠蔽方法を含むステップの後に、
前記データのキャリアである矩形画像及びその秘密キーを送信するステップＦをさらに含み、前記秘密キーは、請求項１に記載の大きさとビット数を含むことを特徴とするデータ送信方法。
【請求項６】
請求項５に記載のデータ送信方法で送信されるデータの抽出方法において、
受信されたデータのキャリアである矩形画像及びその秘密キーを読み取り、前記秘密キーは、請求項１に記載の大きさとビット数を含み、前記ビット数をＮとするステップ１と、
前記矩形画像をＰ個の前記大きさを有する正方形画像ブロックに分割し、その中の前からＭ個の正方形画像ブロックを抽出し、Ｍは（Ｎ＋１）／２を整数へと丸めた値であるようにするステップ２と、
前記Ｍ個の正方形画像ブロックにおける正方形画像ブロックそれぞれの第１の対角線及び第２の対角線での各画素の階調値を検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスを取得し、画素階調値シーケンス毎の転倒数パリティーを検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーを取得するステップ３と、
対角線毎の画素階調値シーケンスの転倒数パリティーが１ビットの値を表す原則で、前記Ｍ個の正方形画像ブロックにおける各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表すビットの値を各正方形画像ブロックの順序に配列して、ビットシーケンスを取得し、前記ビット数が奇数である時に、取得したビットシーケンスの最後の１ビットを取り除くステップ４と、
取得したビットシーケンスをデータに還元するステップ５とを含むことを特徴とするデータの抽出方法。
【請求項７】
データをビットシーケンスに変換し、前記ビットシーケンスのビット数が奇数である時に、前記ビットシーケンスの末尾に１ビットを充填し、その値として０又は１を付与するためのデータ変換モジュールと、
前記ビットシーケンスの配列順序に沿って前記ビットシーケンスから毎回に２ビットの値を抽出して１組とし、Ｍ個のビット値組を取得し、ビット値組毎における前の１ビットの値を当該ビット値組における第１のビット値とし、後の１ビットの値を当該ビット値組における第２のビット値とするためのビット組み分けモジュールと、
前記データのキャリアである矩形画像をＰ個の同じ大きさの正方形画像ブロックに分割し、 であり、その中の前からＭ個の正方形画像ブロックを抽出し、当該Ｍ個の正方形画像ブロックにおける正方形画像ブロックのそれぞれが第１の対角線及び第２の対角線を有するようにするための画像分割モジュールと、
前記Ｍ個の正方形画像ブロックにおける正方形画像ブロックそれぞれの第１の対角線及び第２の対角線での各画素の階調値を検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスを取得し、画素階調値シーケンス毎の転倒数パリティーを検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーを取得するための画像ブロック検出モジュールと、
対角線毎の画素階調値シーケンスの転倒数パリティーで１ビットの値を表し、前記Ｍ個の正方形画像ブロックが前記Ｍ個のビット値組と一対一対応し、正方形画像ブロック毎の第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが当該正方形画像ブロックの対応するビット値組の第１のビット値及び第２のビット値とそれぞれ対応する原則に従って、前記Ｍ個の正方形画像ブロックにおける正方形画像ブロックそれぞれの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致するか否かを検出し、一致しないと、当該正方形画像ブロックに対して、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致するように画素位置調整を行うための画像ブロック調整モジュールとを含むことを特徴とするデータ隠蔽システム。
【請求項８】
前記画像ブロック調整モジュールは、正方形画像ブロックに対して画素位置調整を行う場合、
当該正方形画像ブロックにおいて第１の対角線の画素階調値シーケンスの転倒数パリティーの表す値のみが当該正方形画像ブロックの対応するビット値組における第１のビット値と一致しない時に、当該第１の対角線から階調値が同等でなく、差分値が最も小さい２つの画素を抽出し、これら２つの画素を入れ替えて、当該第１の対角線の画素階調値シーケンスの転倒数パリティーを変化させ、
当該正方形画像ブロックにおいて第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値のみが当該正方形画像ブロックの対応するビット値組における第２のビット値と一致しない時に、当該第２の対角線から階調値が同等でなく、差分値が最も小さい２つの画素を抽出し、これら２つの画素を入れ替えて、当該第２の対角線の画素階調値シーケンスの転倒数パリティーを変化させ、
当該正方形画像ブロックにおいて第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致しない時に、次のような、
当該正方形画像ブロックの第１の対角線及び第２の対角線から画素を１つずつ抽出し、これら２つの画素を入れ替えるステップと、
入れ替えた後に、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが全て変化したか否かを検出し、変化しない場合、今回の入れ替えを放棄し、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが全て変化するまで、再度に当該正方形画像ブロックの第１の対角線及び第２の対角線から画素を１つずつ抽出して入れ替えるステップとを含むことを特徴とする請求項７に記載のデータ隠蔽システム。
【請求項９】
画像ブロック調整モジュールの正方形画像ブロックの第１の対角線及び第２の対角線から画素を１つずつ抽出する原則は、抽出した２つの画素の階調値の差の小さい方から大きい方への順に従って、階調値の差が最も小さい２つの画素から抽出し始めることを特徴とする請求項７に記載のデータ隠蔽システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ隠蔽技術分野に関し、特に、データ隠蔽方法及び隠蔽システムに関する。
【背景技術】
【０００２】
近年、モバイルインターネットや４Ｇ等の通信技術の急速な発展に伴って、情報の伝送はますます便利になってきたが、同時に、データ伝送の安全機密性等の問題も生じた。暗号化伝送は、従来の解決方法であったが、それも同時に、秘密キーの管理が複雑し、システムの効率が低くなり、傍受者に気付かれやすい等の問題があった。データ隠蔽技術は、伝送すべき秘密データを通常のファイルキャリアの内容に隠蔽させ、さらに公衆伝送チャネルを介してこれらの秘密データが隠蔽された通常ファイルキャリアを受信者へ伝送し、受信者が対応するデータ抽出方法により通常ファイルキャリアに隠蔽させた秘密データを取得することによって、それらの問題をよく解決できる。このようなデータ隠蔽伝送方式は、ネットワークの傍受者に気付かれることを回避でき、システムの効率へ影響を与えず、同時に秘密キーの管理の複雑性を低減できる下で、データ伝送の安全機密性を向上する。
【０００３】
マルチメディア処理技術の急速な発展に伴って、画像、ビデオ、オーディオ等のマルチメディアファイルがデータ隠蔽伝送のキャリアファイルとして、一般にもっと容易に編集及び処理される。特に、スマートフォン、iＰＡＤ（登録商標）、デジタルカメラ等の全面的な応用に伴って、画像の採集もますます容易になり、画像をデータキャリアとして用いてデータ隠蔽伝送を行うことが既に最もよく見える一つのデータ隠蔽伝送方式となっている。しかし、従来の画像に基づくデータ隠蔽伝送方式は、データを隠蔽した後のキャリア画像の画質を保証した下で、画像中に隠蔽可能なデータ量がそれほど大きくなくて、画像に基づくデータ隠蔽伝送方式のデータ隠蔽伝送における適用性に影響を与えている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の解決しようとする技術問題は、画像をデータ隠蔽キャリアとして用いて、画像の画質を保証した下で画像に隠蔽させるデータ量を向上するデータ隠蔽方法及び隠蔽システムを提供することにある。
【課題を解決するための手段】
【０００５】
本発明は次のように実現される。
【０００６】
データ隠蔽方法は、次のようなステップを含んでいる。
【０００７】
ステップＡ：データをビットシーケンスに変換し、前記ビットシーケンスのビット数が奇数である時に、前記ビットシーケンスの末尾に１ビットを充填し、その値として０又は１を付与する；
ステップＢ：前記ビットシーケンスの配列順序に沿って前記ビットシーケンスから毎回に２ビットの値を抽出して１組とし、Ｍ個のビット値組を取得し、ビット値組毎における前の１ビットの値を当該ビット値組における第１のビット値とし、後の１ビットの値を当該ビット値組における第２のビット値とする；
ステップＣ：前記データのキャリアである矩形画像をＰ個の同じ大きさの正方形画像ブロックに分割し、ここで
0006453461.tif 000002
【０００８】
であり、その中の前からＭ個の正方形画像ブロックを抽出し、当該Ｍ個の正方形画像ブロックにおける正方形画像ブロックのそれぞれが第１の対角線及び第２の対角線を有する；
ステップＤ：前記Ｍ個の正方形画像ブロックにおける正方形画像ブロックそれぞれの第１の対角線及び第２の対角線での各画素の階調値を検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスを取得し、画素階調値シーケンス毎の転倒数パリティーを検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーを取得する；
ステップＥ：対角線毎の画素階調値シーケンスの転倒数パリティーで１ビットの値を表し、前記Ｍ個の正方形画像ブロックが前記Ｍ個のビット値組と一対一対応し、正方形画像ブロック毎の第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが当該正方形画像ブロックの対応するビット値組の第１のビット値及び第２のビット値とそれぞれに対応する原則に従って、前記Ｍ個の正方形画像ブロックにおける正方形画像ブロックそれぞれの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致するか否かを検出し、一致しないと、当該正方形画像ブロックに対して、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致するように画素位置調整を行う。
【０００９】
さらに、前記Ｍは素数ではない。
【００１０】
さらに、正方形画像ブロックに対して画素位置調整を行う方法は次のようである。
【００１１】
ステップＥ１：当該正方形画像ブロックにおいて第１の対角線の画素階調値シーケンスの転倒数パリティーの表す値のみが当該正方形画像ブロックの対応するビット値組における第１のビット値と一致しない時に、当該第１の対角線から階調値が同等でなく、差分値が最も小さい２つの画素を抽出し、これら２つの画素を入れ替わって、当該第１の対角線の画素階調値シーケンスの転倒数パリティーを変化させ、
ステップＥ２：当該正方形画像ブロックにおいて第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値のみが当該正方形画像ブロックの対応するビット値組における第２のビット値と一致しない時に、当該第２の対角線から階調値が同等でなく、差分値が最も小さい２つの画素を抽出し、これら２つの画素を入れ替わって、当該第２の対角線の画素階調値シーケンスの転倒数パリティーを変化させ、
ステップＥ３：当該正方形画像ブロックにおいて第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致しない時に、次のようなステップを含む。
【００１２】
ステップＥ３−１：当該正方形画像ブロックの第１の対角線及び第２の対角線から画素を１つずつ抽出し、これら２つの画素を入れ替わる；
ステップＥ３−２：入れ替わった後に、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが全て変化したか否かを検出し、変化しないと、今回の入れ替わりを放棄しステップＥ３−１へ戻り、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが全て変化するまで繰り返しする。
【００１３】
さらに、正方形画像ブロックの第１の対角線及び第２の対角線から画素を１つずつ抽出する原則は、抽出した２つの画素の階調値の差の小さい方から大きい方への順に従って、階調値の差が最も小さい２つの画素から抽出し始める。
【００１４】
さらに、前記正方形画像ブロックの大きさをＷ×Ｗとすると、Ｗは偶数であり、且つ
0006453461.tif 000003
【００１５】
である。
【００１６】
画像をデータキャリアとするデータ送信方法であって、上記のようないずれかデータ隠蔽方法に含まれるステップを含み、前記データ隠蔽方法の含んだステップの後に、さらに次のようなステップを含む。
【００１７】
ステップＦ：前記データのキャリアである矩形画像及びその秘密キーを送信し、前記秘密キーは、請求項１に記載の大きさとビット数を含む。
【００１８】
上記データ送信方法で送信されるデータの抽出方法は、次のようなステップを含んでいる。
【００１９】
ステップ１：受信されたデータのキャリアである矩形画像及びその秘密キーを読み取り、前記秘密キーは、請求項１に記載の大きさとビット数を含み、前記ビット数をＮとする；
ステップ２：前記矩形画像をＰ個の前記大きさを有する正方形画像ブロックに分割し、その中の前からＭ個の正方形画像ブロックを抽出し、Ｍは（Ｎ＋１）／２を整数へと丸めた値である；
ステップ３：前記Ｍ個の正方形画像ブロックにおける正方形画像ブロックそれぞれの第１の対角線及び第２の対角線での各画素の階調値を検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスを取得し、画素階調値シーケンス毎の転倒数パリティーを検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーを取得する；
ステップ４：対角線毎の画素階調値シーケンスの転倒数パリティーが１ビットの値を表す原則で、前記Ｍ個の正方形画像ブロックにおける各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表すビットの値を各正方形画像ブロックの順序に配列して、ビットシーケンスを取得し、前記ビット数が奇数である時に、取得したビットシーケンスの最後の１ビットを取り除く；
ステップ５：取得したビットシーケンスをデータに還元する。
【００２０】
データ隠蔽システムは、
データをビットシーケンスに変換し、前記ビットシーケンスのビット数が奇数である時に、前記ビットシーケンスの末尾に１ビットを充填し、その値として０又は１を付与するためのデータ変換モジュールと、
前記ビットシーケンスの配列順序に沿って前記ビットシーケンスから毎回に２ビットの値を抽出して１組とし、Ｍ個のビット値組を取得し；ビット値組毎における前の１ビットの値を当該ビット値組における第１のビット値とし、後の１ビットの値を当該ビット値組における第２のビット値とするためのビット組み分けモジュールと、
前記データのキャリアである矩形画像をＰ個の同じ大きさの正方形画像ブロックに分割し、
0006453461.tif 000004
【００２１】
であり、その中の前からＭ個の正方形画像ブロックを抽出し、当該Ｍ個の正方形画像ブロックにおける正方形画像ブロックのそれぞれが第１の対角線及び第２の対角線を有するようにするための画像分割モジュールと、
前記Ｍ個の正方形画像ブロックにおける正方形画像ブロックそれぞれの第１の対角線及び第２の対角線での各画素の階調値を検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスを取得し、画素階調値シーケンス毎の転倒数パリティーを検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーを取得するための画像ブロック検出モジュールと、
対角線毎の画素階調値シーケンスの転倒数パリティーで１ビットの値を表し、前記Ｍ個の正方形画像ブロックが前記Ｍ個のビット値組と一対一対応し、正方形画像ブロック毎の第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが当該正方形画像ブロックの対応するビット値組の第１のビット値及び第２のビット値とそれぞれ対応する原則に従って、前記Ｍ個の正方形画像ブロックにおける正方形画像ブロックそれぞれの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致するか否かを検出し、一致しないと、当該正方形画像ブロックに対して、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致するように画素位置調整を行うための画像ブロック調整モジュールとを含む。
【００２２】
さらに、前記画像ブロック調整モジュールは、正方形画像ブロックに対して画素位置調整を行う場合、
当該正方形画像ブロックにおいて第１の対角線の画素階調値シーケンスの転倒数パリティーの表す値のみが当該正方形画像ブロックの対応するビット値組における第１のビット値と一致しない時に、当該第１の対角線から階調値が同等でなく、差分値が最も小さい２つの画素を抽出し、これら２つの画素を入れ替わって、当該第１の対角線の画素階調値シーケンスの転倒数パリティーを変化させ、
当該正方形画像ブロックにおいて第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値のみが当該正方形画像ブロックの対応するビット値組における第２のビット値と一致しない時に、当該第２の対角線から階調値が同等でなく、差分値が最も小さい２つの画素を抽出し、これら２つの画素を入れ替わって、当該第２の対角線の画素階調値シーケンスの転倒数パリティーを変化させ、
当該正方形画像ブロックにおいて第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致しない時に、次のようなステップを含む。
【００２３】
当該正方形画像ブロックの第１の対角線及び第２の対角線から画素を１つずつ抽出し、これら２つの画素を入れ替わり、
入れ替わった後に、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが全て変化したか否かを検出し、変化しないと、今回の入れ替わりを放棄し、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが全て変化するまで、再度に当該正方形画像ブロックの第１の対角線及び第２の対角線から画素を１つずつ抽出して入れ替わる。
【００２４】
さらに、前記画像ブロック調整モジュールの正方形画像ブロックの第１の対角線及び第２の対角線から画素を１つずつ抽出する原則は、抽出した２つの画素の階調値の差の小さい方から大きい方への順に従って、階調値の差が最も小さい２つの画素から抽出し始める。
【発明の効果】
【００２５】
従来技術と比べて、本発明によると、正方形画像ブロックのそれぞれはその２本の対角線の画素階調値シーケンスの転倒数パリティーによって２ビットのデータを隠蔽することができ、そうすると、画像中に隠蔽されるデータ量は、画像の分割された画像ブロックの数の２倍となる。さらに、正方形画像ブロックを画素位置調整した時、当該正方形画像ブロックの第１の対角線及び第２の対角線での多くとも２つの画素の階調値しか調整する必要がないため、画像の画質に対する影響が小さく、画像画質を保証する。
【図面の簡単な説明】
【００２６】
【図１】本発明の提供するデータ隠蔽方法の流れ模式図である。
【図２】本発明の提供するデータ隠蔽方法におけるビット組み分けの模式図である。
【図３】本発明の提供するデータ隠蔽方法における画像分割の模式図である。
【図４】正方形画像ブロック及びその対角線の模式図である。
【図５】本発明の提供する上記データ送信方法で送信したデータの抽出方法の流れ模式図である。
【図６】本発明の提供するデータ隠蔽システムの構成模式図である。
【発明を実施するための最良の形態】
【００２７】
以下、本発明の目的、技術案及び利点をもっと明瞭化するために、図面及び実施例を組み合せて、本発明についてさらに詳しく説明する。
【００２８】
従来の画像に基づくデータ隠蔽伝送方式に存在する隠蔽データの容量が小さい等の問題を解決するために、本発明の提出するデータ隠蔽方法は、画像をデータキャリアとし、送信端で秘密データをビットシーケンスに変換した後に、ビットシーケンスにおけるビット毎の値を画像に隠蔽して、秘密データが隠蔽された画像を取得し、受信端へ送信し、受信端では対応秘密キーによって画像から隠蔽した秘密データを抽出できる。
【００２９】
図１に示すように、本発明は、一種のデータ隠蔽方法を提供し、次のようなステップを含んでいる。
【００３０】
ステップＡ：データをビットシーケンスに変換し、前記ビットシーケンスのビット数が奇数である時に、前記ビットシーケンスの末尾に１ビットを充填し、その値として０又は１を付与する。
【００３１】
ステップＢ：前記ビットシーケンスの配列順序に沿って前記ビットシーケンスから毎回に２ビットの値を抽出して１組とし、Ｍ個のビット値組を取得し、ビット値組毎における前の１ビットの値を当該ビット値組における第１のビット値とし、後の１ビットの値を当該ビット値組における第２のビット値とする。
【００３２】
ビットは、コンピューターで最も小さい記憶単位であり、０又は１でビットの値を表し、コンピューターはビットシーケンスによりデータを表す。本発明では、矩形画像を若干の正方形画像ブロックに分割し、正方形画像ブロックそれぞれに２ビットのデータを隠蔽する方式によりデータを隠蔽しようとする。従って、ビットシーケンスにおける各ビットを上記方式で組み分け、組毎に２ビットの値を含む。図２に示すように、１番目のビット値組に含まれる第１ビットと第２ビットの値は、それぞれ１と１であり、その中、第１ビットの値は１番目のビット値組における第１のビット値であり、２番目のビットの値は１番目のビット値組における第２のビット値であり；２番目のビット値組に含まれる第３ビットと第４ビットの値は、それぞれ０と１であり、その中、第３ビットの値は２番目のビット値組における第１のビット値であり、第４ビットの値は２番目のビット値組における第２のビット値であり；続いてくる各ビット値組についてはこのように類推される。ビット数が奇数である時に、最後の１組が１ビットの値しか含んでいないため、このような場合に、計算の便宜上、ビットシーケンスの末尾に１ビットを充填し、当該充填したビットの値を０又は１として、最後の１ビット値組に２つのビット値が含まれるようにし、画像から隠蔽したデータを抽出する時、充填したビットの値を除去すればよい。
【００３３】
ステップＣ：前記データのキャリアである矩形画像をＰ個の同じ大きさの正方形画像ブロックに分割し、
0006453461.tif 000005
【００３４】
であり、その中の前からＭ個の正方形画像ブロックを抽出し、当該Ｍ個の正方形画像ブロックにおける正方形画像ブロックのそれぞれが第１の対角線及び第２の対角線を有する。図３に示すように、矩形画像をＰ個の正方形画像ブロックに分割し、即ち当該Ｐ個の正方形画像ブロックは１枚の完全な前記矩形画像を構成する。前記のように、本発明では、矩形画像を若干の正方形画像ブロックに分割し、正方形画像ブロックそれぞれに２ビットのデータを隠蔽しようとする。即ち、正方形画像ブロック毎に１ビット値組のデータを隠蔽するため、分割された正方形画像ブロックの数は少なくともステップＢで分けられたビット値組の数に達するはずである。即ち
0006453461.tif 000006
【００３５】
である。Ｍ個の正方形画像ブロックだけで当該Ｍ個のビット値組のデータを隠蔽できるため、前からＭ個の正方形画像ブロックを抽出すればよい。一般に、図３に示すように、矩形画像の開始位置（右上角のように）から始めて、順に前からＭ個の正方形画像ブロックを抽出することができる。図３は１種の比較的に好ましい分割結果を示しており、矩形画像の長さと幅はいずれも正方形画像ブロックの幅の整数倍であり、当該矩形画像はちょうどＰ個の正方形画像ブロックに分割される。しかし多くの場合、正方形画像ブロックの大きさが決まった後に、矩形画像の長さ及び／又は幅が正方形画像ブロックの幅の整数倍でない時、矩形画像を分割すると、その長さ及び／又は幅方向の末端には一部の当該大きさの正方形画像を形成するには足りない区域が残留されてしまい、データの隠蔽や抽出に実質的な影響を与えることはない。
【００３６】
ステップＤ：前記Ｍ個の正方形画像ブロックにおける正方形画像ブロックそれぞれの第１の対角線及び第２の対角線での各画素の階調値を検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスを取得し、画素階調値シーケンス毎の転倒数パリティーを検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーを取得する。図４に示すように、１つの正方形画像ブロックの模式図である。図において、左上角から右下角までの対角線を当該正方形画像ブロックの第１の対角線であると定義し、右上角から左下角までの対角線を当該正方形画像ブロックの第２の対角線であると定義する。第１の対角線及び第２の対角線での各画素の階調値を検出することによって、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスが得られる。対角線毎の画素階調値シーケンスはいずれもそのパリティーを有し、ビットの値が１か０かのどちらかであり、またシーケンスの転倒数パリティーが奇か偶かのどちらかであるため、１本の対角線の画素階調値シーケンスの転倒数パリティーは１ビットの値を表すことができ、正方形画像ブロック毎に２本の対角線を有して、２ビットの値を表すことができる。従って、現在の場合に当該Ｍ個の正方形画像ブロックにおける正方形画像ブロックそれぞれの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表すビットの値を後に確定できるように、正方形画像ブロックそれぞれの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーを検出する必要がある。
【００３７】
ステップＥ：対角線毎の画素階調値シーケンスの転倒数パリティーで１ビットの値を表し、前記Ｍ個の正方形画像ブロックが前記Ｍ個のビット値組と一対一対応し、正方形画像ブロック毎の第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが当該正方形画像ブロックの対応するビット値組の第１のビット値及び第２のビット値とそれぞれに対応する原則に従って、前記Ｍ個の正方形画像ブロックにおける正方形画像ブロックそれぞれの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致するか否かを検出し、一致しないと、当該正方形画像ブロックに対して、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致するように画素位置調整を行う。仮に、１本の対角線の画素階調値シーケンスの転倒数パリティーが奇であると、表すビットの値は１であり、パリティーが偶であると、表すビットの値は０であると定義する。図４を例にして、当該正方形画像ブロックが図２に示す２番目のビット値組に対応していると想定すると、当該正方形画像ブロックの第１の対角線の画素階調値シーケンスの転倒数パリティーは偶であり、第２の対角線の画素階調値シーケンスの転倒数パリティーは奇であるはずである。検出により、当該正方形画像ブロックの第１、第２の対角線の画素階調値シーケンスの転倒数パリティーがそれぞれに偶及び奇であると、当該正方形画像ブロックの第１、第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致することを表し、当該正方形画像ブロックは調整する必要がない。さもないと、当該正方形画像ブロックを調整する必要があることを表す。当該正方形画像ブロックを調整する時に、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致するように、当該正方形画像ブロックを画素位置調整すればよい。具体的に、正方形画像ブロックに対して画素位置調整を行う方法は、次のようである。
【００３８】
ステップＥ１：当該正方形画像ブロックにおいて第１の対角線の画素階調値シーケンスの転倒数パリティーの表す値のみが当該正方形画像ブロックの対応するビット値組における第１のビット値と一致しない時に、当該第１の対角線から階調値が同等でなく、差分値が最も小さい２つの画素を抽出し、これら２つの画素を入れ替わって、当該第１の対角線の画素階調値シーケンスの転倒数パリティーを変化させる。
【００３９】
ステップＥ２：当該正方形画像ブロックにおいて第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値のみが当該正方形画像ブロックの対応するビット値組における第２のビット値と一致しない時に、当該第２の対角線から階調値が同等でなく、差分値が最も小さい２つの画素を抽出し、これら２つの画素を入れ替わって、当該第２の対角線の画素階調値シーケンスの転倒数パリティーを変化させる。
【００４０】
ステップＥ１とステップＥ２では、第１の対角線又は第２の対角線から２つの画素を抽出して入れ替わりさえすればよく、且つ２つの画素を抽出する時に最小歪み原則（即ち抽出したのは階調値の差が最も小さい２つの画素である）に従うようにしたため、入れ替わった後に歪みを最大限に抑え、調整後の画像画質への影響も最小になる。
【００４１】
ステップＥ３：当該正方形画像ブロックにおいて第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致しない時に、次のようなステップを含む。
【００４２】
ステップＥ３−１：当該正方形画像ブロックの第１の対角線及び第２の対角線から画素を１つずつ抽出し、これら２つの画素を入れ替わる。
【００４３】
ステップＥ３−２：入れ替わった後に、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが全て変化したか否かを検出し、変化しないと、今回の入れ替わりを放棄しステップＥ３−１へ戻り、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが全て変化するまで繰り返しする。
【００４４】
ステップＥ３では、第１の対角線及び第２の対角線上で画素を１個ずつ取り出して入れ替わればよいため、対角線毎に１画素の階調を変化させばよいことに相当し、これにより、調整後の矩形画像全体の歪みが抑え、調整後の画像画質が保証される。調整後の矩形画像の画質への影響をさらに低減させるために、正方形画像ブロックの第１の対角線及び第２の対角線から画素を１つずつ抽出して入れ替わる時に一定の原則に従うべきである。即ち、抽出した２つの画素の階調値の差の小さい方から大きい方への順に従って、階調値の差が最も小さい２つの画素から抽出し始める。 階調値の差とは、当該正方形画像ブロックにおける第１の対角線上の画素と第２の対角線上の画素の階調値の差を意味する。１つの正方形画像ブロックの第１の対角線及び第２の対角線上にはいずれも若干の画素があり、２本の対角線のそれぞれには、必ず２つの画素の階調値の差がこの２本の対角線上の他の画素の階調値の差よりも小さいような画素が１つずつ存在するはずである。この２つの画素から始めて、この２つの画素を入れ替わり、入れ替わった後に当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致するか否かを検出するべきであり、一致すると、当該正方形画像ブロックに対する調整を完了し、まだ一致しないと、前記の原則で定義された順に従って、一致するまで、当該正方形画像ブロックの第１の対角線及び第２の対角線から画素を抽出して入れ替わり続ける。階調値の最も接近した２つの画素から入れ替わり始めるため、初めに入れ替わった後画像画質への影響は最小であるが、以降の毎回入れ替わりの画像画質への影響は次第に増えていく。これから分かるように、このような画像画質への影響が小さい方から大きくなる画素の入れ替わり方式によると、調整後の画像画質への影響を最大限に低減するに寄与できる。
【００４５】
Ｍ個の正方形画像ブロックにおける全ての正方形画像ブロックがいずれも調整され上記条件に該当したら、データの隠蔽過程が完了される。
【００４６】
本発明は、さらに１種の画像をデータキャリアとするデータ送信方法を提供しており、上記のいずれか１種のデータ隠蔽方法に含まれるステップを含み、データ隠蔽方法の含んだステップの後に、さらに、データのキャリアである矩形画像及びその秘密キーを送信するステップＦを含む。その中の秘密キーは、矩形画像が分割されてなる正方形画像ブロックの大きさ及びデータが変換されてなるビットシーケンスのビット数を含んでいる。
【００４７】
秘密キーは、受信端が矩形画像を受信した後にデータの抽出する時に用いられる。秘密キーにおける大きさは、受信した矩形画像をどのように区分けするかを確定するためのものである。即ち、当該大きさに従って区分けを行い、矩形画像を若干の当該大きさを有する正方形画像ブロックに区分け、区分けしてなる若干の正方形画像ブロックは共同に前述の矩形画像を構成する。そして、ビット数は、データを隠蔽する時に、ビットシーケンスに対して充填を行ったか否かを確定するためのものであり、もしビットシーケンスのビット数が奇数であると、充填があることを表し、還元後のビットシーケンスの末尾のビットを取り除くべきである。
【００４８】
図５に示すように、本発明は、さらに１種の上記データ送信方法で送信されるデータの抽出方法を提供しており、次のようなステップを含んでいる。
【００４９】
ステップ１：受信されたデータのキャリアである矩形画像及びその秘密キーを読み取り、その中の秘密キーは、矩形画像が区分けしてなる正方形画像ブロックの大きさ及びデータが変換されてなるビットシーケンスのビット数を含み、ビット数をＮとする。
【００５０】
ステップ２：前記矩形画像をＰ個の前記大きさを有する正方形画像ブロックに区分けし、その中の前からＭ個の正方形画像ブロックを抽出し、Ｍは（Ｎ＋１）／２を整数との丸めた値である。前述したデータ隠蔽方法における原理の記述に従って、当該大きさによって矩形画像を区分けすると、得られる正方形画像ブロックの数Ｐは（Ｎ＋１）／２の整数部分よりも小さくないことになり、また当該整数部分がちょうどデータ隠蔽方法のステップにおけるビット値組の数であるため、データ隠蔽方法のステップＣによって、前からＭ個の正方形画像ブロックのみがデータを隠蔽しているため、前からＭ個の正方形画像ブロックを抽出すればよい。
【００５１】
ステップ３：前記Ｍ個の正方形画像ブロックにおける正方形画像ブロックそれぞれの第１の対角線及び第２の対角線での各画素の階調値を検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスを取得し、画素階調値シーケンス毎の転倒数パリティーを検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーを取得する。
【００５２】
ステップ４：対角線毎の画素階調値シーケンスの転倒数パリティーが１ビットの値を表す原則で、前記Ｍ個の正方形画像ブロックにおける各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表すビットの値を各正方形画像ブロックの順序に配列して、ビットシーケンスを取得し、前記ビット数が奇数である時に、取得したビットシーケンスの最後の１ビットを取り除く。対角線毎の画素階調値シーケンスの転倒数パリティーで１ビットの値を表す原則は、データ隠蔽方法のステップＥにおける前記の対応原則と一致すべきである。秘密キーにおけるビット数はデータ隠蔽時に充填ビットがあるか否かを確定するためのものに過ぎず、充填ビットがあるか否かを確定するにはビット数のパリティーを確定すればよく、ビット数の具体的数値を確定する必要がないため、秘密キーにおけるビット数をビット数のパリティーに取り替えてもよく、両者は同等な役割がある。
【００５３】
ステップ５：取得したビットシーケンスをデータに還元する。
【００５４】
図６に示すように、本発明のさらに提供しているデータ隠蔽システムは、
データをビットシーケンスに変換し、前記ビットシーケンスのビット数が奇数である時に、前記ビットシーケンスの末尾に１ビットを充填し、その値として０又は１を付与するためのデータ変換モジュール１と、
前記ビットシーケンスの配列順序に沿って前記ビットシーケンスから毎回に２ビットの値を抽出して１組とし、Ｍ個のビット値組を取得し、ビット値組毎における前の１ビットの値を当該ビット値組における第１のビット値とし、後の１ビットの値を当該ビット値組における第２のビット値とするためのビット組み分けモジュール２と、
前記データのキャリアである矩形画像をＰ個の同じ大きさの正方形画像ブロックに区分けし、
0006453461.tif 000007
【００５５】
であり、その中の前からＭ個の正方形画像ブロックを抽出し、当該Ｍ個の正方形画像ブロックにおける正方形画像ブロックのそれぞれが第１の対角線及び第２の対角線を有するようにするための画像区分けモジュール３と、
前記Ｍ個の正方形画像ブロックにおける正方形画像ブロックそれぞれの第１の対角線及び第２の対角線での各画素の階調値を検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスを取得し、画素階調値シーケンス毎の転倒数パリティーを検出して、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーを取得するための画像ブロック検出モジュール４と、
対角線毎の画素階調値シーケンスの転倒数パリティーで１ビットの値を表し、前記Ｍ個の正方形画像ブロックが前記Ｍ個のビット値組と一対一対応し、正方形画像ブロック毎の第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが当該正方形画像ブロックの対応するビット値組の第１のビット値及び第２のビット値とそれぞれ対応する原則に従って、前記Ｍ個の正方形画像ブロックにおける正方形画像ブロックそれぞれの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致するか否かを検出し、一致しないと、当該正方形画像ブロックに対して、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致するように画素位置調整を行うための画像ブロック調整モジュール５とを含む。
【００５６】
画像ブロック調整モジュール５は、正方形画像ブロックに対して画素位置調整を行う場合、
当該正方形画像ブロックにおいて第１の対角線の画素階調値シーケンスの転倒数パリティーの表す値のみが当該正方形画像ブロックの対応するビット値組における第１のビット値と一致しない時に、当該第１の対角線から階調値が同等でなく、差分値が最も小さい２つの画素を抽出し、これら２つの画素を入れ替わって、当該第１の対角線の画素階調値シーケンスの転倒数パリティーを変化させ、
当該正方形画像ブロックにおいて第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値のみが当該正方形画像ブロックの対応するビット値組における第２のビット値と一致しない時に、当該第２の対角線から階調値が同等でなく、差分値が最も小さい２つの画素を抽出し、これら２つの画素を入れ替わって、当該第２の対角線の画素階調値シーケンスの転倒数パリティーを変化させ、
当該正方形画像ブロックにおいて第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値が当該正方形画像ブロックの対応するビット値組における第１のビット値及び第２のビット値とそれぞれ一致しない時に、次のようなステップを含む。
【００５７】
当該正方形画像ブロックの第１の対角線及び第２の対角線から画素を１つずつ抽出し、これら２つの画素を入れ替わり、
入れ替わった後に、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが全て変化したか否かを検出し、変化しないと、今回の入れ替わりを放棄し、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが全て変化するまで、再度に当該正方形画像ブロックの第１の対角線及び第２の対角線から画素を１つずつ抽出して入れ替わる。
【００５８】
画像ブロック調整モジュール５の正方形画像ブロックの第１の対角線及び第２の対角線から画素を１つずつ抽出する原則は、抽出した２つの画素の階調値の差の小さい方から大きい方への順に従って、階調値の差が最も小さい２つの画素から抽出し始める。
【００５９】
以下、２値画像データを例に挙げて本発明のデータ隠蔽、送信、受信及び抽出過程を説明する。
【００６０】
送信すべきデータが２値画像であり、当該２値画像の大きさが３２０×２４０であると想定する。前記のように、まず、当該２値画像をビットシーケンスに変換する必要がある。ラスタースキャン方式で当該２値画像をスキャンすることができ、当該２値画像における各画素の階調をビット値に変換し、順序によってビットシーケンスを構成する。当該ビットシーケンスは７６８００個のビット値を含む。そして、ビットシーケンスを配列順序に沿って毎回に２ビット値を抽出して１組とすることによって、順序に配列した３８４００組のビット値に分けられる。当該２値画像のキャリアである矩形画像について、当該矩形画像の大きさと２値画像のビットシーケンスの位置数に基づいて、矩形画像を適宜数量の同じ大きさの正方形画像ブロックに区分けする必要がある。前述原理に基づき、正方形画像ブロックの数量は３８４００組より小さくないはずである。ビットシーケンスを組み分けし、矩形画像をブロック化した後に、矩形画像から前の３８４００個の正方形画像ブロックを抽出し、この３８４００個の正方形画像ブロックは、左の方から右の方へ、上の方から下の方への順序に配列される。当該３８４００個の正方形画像ブロックと前述３８４００個のビット値組は配列順序に沿って一対一対応する。即ち、１番目の正方形画像ブロック（左上角の正方形画像ブロック）は１番目のビット値組と対応し、２番目の正方形画像ブロックは２番目のビット値組と対応し、３８４００番目の正方形画像ブロックは３８４００番目のビット値組と対応する。同時に、正方形画像ブロック毎の第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーは、当該正方形画像ブロックの対応するビット値組の第１のビット値及び第２のビット値とそれぞれ対応する。
【００６１】
ビットシーケンスを組み分けし、矩形画像のブロック化が完了した後、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーをそれぞれ検出する。階調値シーケンスの転倒数パリティーが奇である対角線がビット値１を表すと定義し、階調値シーケンスの転倒数パリティーが偶である対角線の表すビット値が０であると定義する。前述原則に従って正方形画像ブロック毎の第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーが当該正方形画像ブロックの対応するビット値組の第１のビット値及び第２のビット値とそれぞれ対応するか否かを検出し、それぞれ対応しないと、全ての正方形画像ブロックを調整済ますまで、前述調整方法に従って対応する正方形画像ブロックを調整して、それぞれを対応させる。
【００６２】
図４に示す正方形画像ブロックが、図２に示すビットシーケンスにおける２番目のビット値組に対応する正方形画像ブロック、即ち図３における２番目の正方形画像ブロックであると想定する。当該正方形画像ブロックの大きさは１６×１６であり、左上角から右下角までの対角線は当該正方形画像ブロックの第１の対角線であり、右上角から左下角までの対角線は当該正方形画像ブロックの第２の対角線である。図２、図３、図４を合わせて参照すると、２番目のビット値組の第１のビット値は０であり、第２のビット値は１である。すると、当該正方形画像ブロックにおける第１の対角線の画素階調値シーケンスの転倒数パリティーは０であり、第２の対角線の画素階調値シーケンスの転倒数パリティーは１であるはずである。当該正方形画像ブロックは次のような４種の場合がある。一、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーがそれぞれ偶と奇であると、当該正方形画像ブロックは調整する必要がない。二、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーがそれぞれ偶と偶であると、当該正方形画像ブロックの第２の対角線での画素の配列順序を調整して、第２の対角線の画素階調値シーケンスの転倒数パリティーを奇に変化させる必要がある。調整時に、当該第２の対角線上のいずれか２つの階調値の同等でない画素を入れ替わると、その画素階調値シーケンスの転倒数パリティーを変えることができるが、最大限に調整後の画像歪みを抑えるためには、当該対角線上の階調値が同等でなく、差分値が最も小さい２つの画素を入れ替わるべきである。三、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーがそれぞれ奇と奇であると、当該正方形画像ブロックの第１の対角線上の画素の配列順序を調整して、第１の対角線の画素階調値シーケンスの転倒数パリティーを偶に変化させる必要があり、調整方法は２番目の場合の記述通りで、さらに贅言しない。四、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーがそれぞれ奇と偶であると、第１の対角線及び第２の対角線から１画素をそれぞれ抽出して入れ替わり、抽出時に、当該正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーがそれぞれ偶と奇であるまで、抽出する２つの画素の階調値の差の小さい方から大きい方への順に従って、階調値の差が最も小さい２つの画素から抽出し始まる。
【００６３】
データを矩形画像に隠蔽した後に、送信端はデータを隠蔽した矩形画像及び秘密キーを送信することができる。秘密キーには、２値画像データが変換されたビットシーケンスのビット数と、当該矩形画像を区分けしてなる正方形画像ブロックの大きさとが含まれ、さらに変換時の関連パラメタ、例えば２値画像の大きさを含むことができる。受信端が矩形画像を受信した後に、秘密キーにおける大きさによって矩形画像をブロック化し、区分けして取得した各正方形画像ブロックの配列順序に従って前から３８４００個の正方形画像ブロックを抽出する。そして、これら３８４００個の正方形画像ブロックにおける正方形画像ブロックそれぞれの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーを検出し、データを隠蔽する時の対応原則に従って、各正方形画像ブロックの第１の対角線及び第２の対角線の画素階調値シーケンスの転倒数パリティーの表す値を確定し、その後に各値を順序に配列して、ビットシーケンスを取得する。同時に、秘密キーにおけるビット数のパリティーによってデータをビットシーケンスに変換した時に充填ビットがあるか否かを判断する。奇数であると、充填ビットがあり、配列して得たビットシーケンスの最後の１位置を除去する。当該２値画像の大きさが３２０×２４０、即ち画素の総数が７６８００であるため、秘密キーにおけるビット数は７６８００で、偶数である。従って、充填ビットがなく、得られたビットシーケンスは元の２値画像が変換して得られるビットシーケンスであり、当該ビットシーケンスにおける値それぞれがいずれも２値画像における１つの対応する画素の値を代表しており、そうすると、秘密キーにおける２値画像の大きさ３２０×２４０に基づいて、当該ビットシーケンスをさらに２値画像に還元させやすい。
【００６４】
以上は本発明の好ましい実施例に過ぎず、本発明を限定するものではない。本発明の精神及び原則内でのいかなる改正、同等取替え及び改善等は、いずれも本発明の保護範囲に含まれることである。
【図１】
0006453461.tif 000010
【図２】
0006453461.tif 000011
【図３】
0006453461.tif 000012
【図４】
0006453461.tif 000013
【図５】
0006453461.tif 000014
【図６】
0006453461.tif 000015