Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4143884B2 - 符号化装置および符号化方法、復号装置および復号方法、記録媒体、並びにデータ処理装置 - Google Patents
[go: Go Back, main page]

JP4143884B2 - 符号化装置および符号化方法、復号装置および復号方法、記録媒体、並びにデータ処理装置 - Google Patents

符号化装置および符号化方法、復号装置および復号方法、記録媒体、並びにデータ処理装置 Download PDF

Info

Publication number
JP4143884B2
JP4143884B2 JP28419999A JP28419999A JP4143884B2 JP 4143884 B2 JP4143884 B2 JP 4143884B2 JP 28419999 A JP28419999 A JP 28419999A JP 28419999 A JP28419999 A JP 28419999A JP 4143884 B2 JP4143884 B2 JP 4143884B2
Authority
JP
Japan
Prior art keywords
data
change
image
decoding
frequency distribution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP28419999A
Other languages
English (en)
Other versions
JP2001028546A (ja
Inventor
哲二郎 近藤
健司 田中
義教 渡邊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP28419999A priority Critical patent/JP4143884B2/ja
Priority to US09/413,983 priority patent/US6738492B1/en
Publication of JP2001028546A publication Critical patent/JP2001028546A/ja
Application granted granted Critical
Publication of JP4143884B2 publication Critical patent/JP4143884B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/467Embedding additional information in the video signal during the compression process characterised by the embedded information being invisible, e.g. watermarking

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Systems (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、符号化装置および符号化方法、復号装置および復号方法、記録媒体、並びにデータ処理装置に関し、特に、例えば、復号画像の画質の劣化を極力なくし、かつデータ量を増加せずに、画像に情報を埋め込むことができるようにする符号化装置および符号化方法、復号装置および復号方法、記録媒体、並びにデータ処理装置に関する。
【0002】
【従来の技術】
信号に対して、そのデータ量を増加させることなく、情報を埋め込む手法としては、例えば、ディジタルオーディオデータの最下位ビットや、下位2ビットなどを、埋め込む情報に変換するものなどがある。この手法は、ディジタルオーディオデータの下位ビットが、その音質にあまり影響を与えないことを利用し、その下位ビットを、単に、埋め込む情報に置き換えるものであり、従って、再生時には、情報が埋め込まれたディジタルオーディオデータは、その下位ビットを元に戻さずに、そのまま出力される。即ち、情報が埋め込まれた下位ビットを、元に戻すのは困難であり、また、下位ビットは、音質に、あまり影響を与えないことから、ディジタルオーディオデータは、情報が埋め込まれた状態で出力される。
【0003】
【発明が解決しようとする課題】
しかしながら、以上のような手法では、本来の信号と異なる信号が出力される。従って、信号がオーディオデータである場合には、その音質に、また、信号がビデオデータである場合には、その画質に、少なからず影響がある。
【0004】
本発明は、このような状況に鑑みてなされたものであり、画像の画質の劣化を極力なくし、かつデータ量を増加せずに、画像に情報を埋め込むことができるようにするものである。
【0005】
【課題を解決するための手段】
本発明の符号化装置は、第1のデータの少なくとも一部のデータの度数分布を求める度数分布算出手段と、度数分布に応じて、一部のデータの中から、第2のデータにしたがって変更する変更対象データを決定するとともに、変更対象データを変更する値である変更データを決定する決定手段と、第2のデータにしたがって、変更対象データを変更データに変更することにより、第1のデータに、第2のデータに関連するデータを埋め込む符号化手段とを備えることを特徴とする。
【0006】
この符号化装置には、第1および第2のデータを入力する入力手段をさらに設けることができる。
【0007】
決定手段には、一部のデータの中から、度数が最大のデータを、変更対象データとして決定させることができる。
【0008】
また、決定手段には、第1のデータがとり得る値のうち、度数が0の値を、変更データとして決定させることができる。
【0009】
さらに、決定手段には、複数の値を、変更データとして決定させることができる。
【0010】
第1のデータは、複数の画素データから構成される画像データとすることができる。
【0011】
本発明の符号化方法は、第1のデータの少なくとも一部のデータの度数分布を求める度数分布算出ステップと、度数分布に応じて、一部のデータの中から、第2のデータにしたがって変更する変更対象データを決定するとともに、変更対象データを変更する値である変更データを決定する決定ステップと、第2のデータにしたがって、変更対象データを変更データに変更することにより、第1のデータに、第2のデータに関連するデータを埋め込む符号化ステップとを備えることを特徴とする。
【0012】
本発明の第1の記録媒体は、第1のデータの少なくとも一部のデータの度数分布を求める度数分布算出ステップと、度数分布に応じて、一部のデータの中から、第2のデータにしたがって変更する変更対象データを決定するとともに、変更対象データを変更する値である変更データを決定する決定ステップと、第2のデータにしたがって、変更対象データを変更データに変更することにより、第1のデータに、第2のデータに関連するデータを埋め込む符号化ステップとを備えるプログラムが記録されていることを特徴とする。
【0013】
本発明の復号装置は、符号化データの少なくとも一部のデータの度数分布を求める度数分布算出手段と、度数分布に基づき、一部のデータの中から、第2のデータにしたがって変更された変更対象データと、その変更対象データを変更した値である変更データとを決定する決定手段と、変更データを、変更対象データに変更することにより、符号化データを、第1のデータに復号するとともに、符号化データに埋め込まれた第2のデータを復号する復号手段とを備えることを特徴とする。
【0014】
決定手段には、符号化データの中から、度数の変化が不連続になっているデータを、変更対象データまたは変更データとして決定させることができる。
【0015】
また、決定手段には、複数の値を、変更データとして決定させることができる。
【0016】
第1のデータは、複数の画素データから構成される画像データとすることができる。
【0017】
本発明の復号方法は、符号化データの少なくとも一部のデータの度数分布を求める度数分布算出ステップと、度数分布に基づき、一部のデータの中から、第2のデータにしたがって変更された変更対象データと、その変更対象データを変更した値である変更データとを決定する決定ステップと、変更データを、変更対象データに変更することにより、符号化データを、第1のデータに復号するとともに、符号化データに埋め込まれた第2のデータを復号する復号ステップとを備えることを特徴とする。
【0018】
本発明の第2の記録媒体は、符号化データの少なくとも一部のデータの度数分布を求める度数分布算出ステップと、度数分布に基づき、一部のデータの中から、第2のデータにしたがって変更された変更対象データと、その変更対象データを変更した値である変更データとを決定する決定ステップと、変更データを、変更対象データに変更することにより、符号化データを、第1のデータに復号するとともに、符号化データに埋め込まれた第2のデータを復号する復号ステップとを備えるプログラムが記録されていることを特徴とする。
【0019】
本発明のデータ処理装置は、第1のデータの少なくとも一部のデータの度数分布を求める第1の度数分布算出手段と、その度数分布に応じて、第1のデータの少なくとも一部のデータの中から、第2のデータにしたがって変更する変更対象データを決定するとともに、変更対象データを変更する値である変更データを決定する第1の決定手段と、第2のデータにしたがって、変更対象データを変更データに変更することにより、第1のデータに、第2のデータに関連するデータを埋め込み、符号化データとする符号化手段と、符号化データの少なくとも一部のデータの度数分布を求める第2の度数分布算出手段と、その度数分布に基づき、符号化データの少なくとも一部のデータの中から、変更対象データおよび変更データを決定する第2の決定手段と、変更データを、変更対象データに変更することにより、符号化データを、第1のデータに復号するとともに、符号化データに埋め込まれた第2のデータを復号する復号手段とを備えることを特徴とする。
【0020】
本発明の符号化装置および符号化方法、並びに第1の記録媒体においては、第1のデータの少なくとも一部のデータの度数分布が求められ、その度数分布に応じて、一部のデータの中から、第2のデータにしたがって変更する変更対象データが決定されるとともに、変更対象データを変更する値である変更データが決定される。そして、第2のデータにしたがって、変更対象データを変更データに変更することにより、第1のデータに、第2のデータに関連するデータが埋め込まれる。
【0021】
本発明の復号装置および復号方法、並びに第2の記録媒体においては、符号化データの少なくとも一部のデータの度数分布が求められ、その度数分布に基づき、一部のデータの中から、第2のデータにしたがって変更された変更対象データと、その変更対象データを変更した値である変更データとが決定される。そして、変更データを、変更対象データに変更することにより、符号化データが、第1のデータに復号されるとともに、符号化データに埋め込まれた第2のデータが復号される。
【0022】
本発明のデータ処理装置においては、第1のデータの少なくとも一部のデータの度数分布が求められ、その度数分布に応じて、第1のデータの少なくとも一部のデータの中から、第2のデータにしたがって変更する変更対象データが決定されるとともに、変更対象データを変更する値である変更データが決定される。そして、第2のデータにしたがって、変更対象データを変更データに変更することにより、第1のデータに、第2のデータに関連するデータが埋め込まれ、符号化データとされる。一方、符号化データの少なくとも一部のデータの度数分布が求められ、その度数分布に基づき、符号化データの少なくとも一部のデータの中から、変更対象データおよび変更データが決定される。そして、変更データを、変更対象データに変更することにより、符号化データが、第1のデータに復号されるとともに、符号化データに埋め込まれた第2のデータが復号される。
【0023】
【発明の実施の形態】
図1は、本発明を適用した画像伝送システム(システムとは、複数の装置が論理的に集合した物をいい、各構成の装置が同一筐体中にあるか否かは問わない)の一実施の形態の構成例を示している。
【0024】
この画像伝送システムは、符号化装置10および復号装置20で構成されており、符号化装置10は、符号化対象としての、例えば、画像を符号化して符号化データを出力し、復号装置20は、その符号化データを、元の画像に復号するようになされている。
【0025】
即ち、画像データベース1は、符号化すべき画像(例えば、ディジタル画像)を記憶している。そして、画像データベース1からは、そこに記憶されている画像が読み出され、埋め込み符号化器3に供給される。
【0026】
また、付加情報データベース2は、符号化対象の画像に埋め込むべき情報としての付加情報(ディジタルデータ)を記憶している。そして、付加情報データベース2からも、そこに記憶されている付加情報が読み出され、埋め込み符号化器3に供給される。
【0027】
埋め込み符号化器3では、画像データベース1からの画像、および付加情報データベース2からの付加情報が受信される。さらに、埋め込み符号化器3は、画像データベース1からの画像が有するエネルギの偏りを利用して復号を行うことができるように、その画像を、付加情報データベース2からの付加情報にしたがって符号化して出力する。即ち、埋め込み符号化器3は、画像が有するエネルギの偏りを利用して復号を行うことができるように、画像に付加情報を埋め込むことで、その画像を符号化し、符号化データを出力する。埋め込み符号化器3が出力する符号化データは、例えば、半導体メモリ、光磁気ディスク、磁気ディスク、光ディスク、磁気テープ、相変化ディスクなどでなる記録媒体4に記録され、あるいは、また、例えば、地上波、衛星回線、CATV(Cable Television)網、インターネット、公衆回線などでなる伝送媒体5を介して伝送され、復号装置20に提供される。
【0028】
復号装置20は、埋め込み復号器6で構成され、そこでは、記録媒体4または伝送媒体5を介して提供される符号化データが受信される。さらに、埋め込み復号器6は、その符号化データを、画像が有するエネルギの偏りを利用して、元の画像および付加情報に復号する。復号された画像は、例えば、図示せぬモニタに供給されて表示される。
【0029】
なお、付加情報としては、例えば、元の画像に関連するテキストデータや、音声データ、その画像を縮小した縮小画像等は勿論、元の画像に無関係なデータも用いることができる。
【0030】
次に、図1の埋め込み符号化器3における符号化(埋め込み符号化)、および埋め込み復号器6における復号(埋め込み復号)の原理について説明する。
【0031】
一般に、情報と呼ばれるものは、エネルギ(エントロピー)の偏り(普遍性)を有し、この偏りが、情報(価値ある情報)として認識される。即ち、例えば、ある風景を撮影して得られる画像が、そのような風景の画像であると人によって認識されるのは、画像(画像を構成する各画素の画素値など)が、その風景に対応したエネルギの偏りを有するからであり、エネルギの偏りがない画像は、雑音等にすぎず、情報としての利用価値はない。
【0032】
従って、価値ある情報に対して、何らかの操作を施し、その情報が有する本来のエネルギの偏りを、いわば破壊した場合でも、その破壊されたエネルギの偏りを元に戻すことで、何らかの操作が施された情報も、元の情報に戻すことができる。即ち、情報を符号化して得られる符号化データは、その情報が有する本来のエネルギの偏りを利用して、元の価値ある情報に復号することができる。
【0033】
ここで、情報が有するエネルギ(の偏り)を表すものとしては、例えば、相関性、連続性、相似性などがある。
【0034】
情報の相関性とは、その情報の構成要素(例えば、画像であれば、その画像を構成する画素やラインなど)どうしの相関(例えば、自己相関や、ある構成要素と他の構成要素との距離など)を意味する。例えば、画像の相関性を表すものとしては、画像のライン間の相関があり、この相関を表す相関値としては、例えば、2つのラインにおける、対応する各画素値の差分の2乗和等を用いることができる(この場合、相関値が小さいことは、ライン間の相関が大きいことを表し、相関値が大きいことは、ライン間の相関が小さいことを表す)。
【0035】
即ち、例えば、いま、図2に示すようなHライン102を有する画像101があった場合に、その上から1行目のライン(第1ライン)103と、他のラインとの相関は、一般に、図3(A)に示すように、第1ライン103との距離が近いライン(図2における画像101の上側のライン)ほど、第Mライン104についての相関201として示すように大きくなり、第1ライン103との距離が遠いライン(図2における画像の下側のライン)ほど、第Nライン105についての相関202として示すように小さくなる。従って、第1ライン103から近いほど、第1ライン103との相関が大きくなり、遠いほど相関が小さくなるという相関の偏りがある。
【0036】
そこで、いま、図2の画像101において、第1ライン103から比較的近い第Mライン104と、第1ライン103から比較的遠い第Nライン105との画素値を入れ替える操作を行い(1<M<N≦H)、その入れ替え後の画像101について、第1ライン103と、他のラインとの相関を計算値すると、それは、例えば、図3(B)に示すようになる。
【0037】
即ち、入れ替え後の画像101では、第1ライン103から近い第Mライン(入れ替え前の第Nライン105)との相関203が小さくなり、第1ライン103から遠い第Nライン(入れ替え前の第Mライン104)との相関204が大きくなる。
【0038】
従って、図3(B)では、第1ライン103から近いほど相関が大きくなり、遠いほど相関が小さくなるという相関性の偏りが破壊されている。しかしながら、画像については、一般に、第1ライン103から近いほど相関が大きくなり、遠いほど相関が小さくなるという相関性の偏りを利用することにより、破壊された相関性の偏りを復元することができる。即ち、図3(B)において、第1ライン103から近い第Mラインとの相関203が小さく、第1ライン103から遠い第Nラインとの相関204が大きいのは、画像101が有する本来の相関性の偏りからすれば、明らかに不自然であり(おかしく)、第Mラインと第Nラインとは入れ替えるべきである。そして、図3(B)における第Mラインと第Nラインとを入れ替えることで、図3(A)に示すような本来の相関性の偏りを有する画像、即ち、元の画像101を復号することができる。
【0039】
ここで、図2および図3で説明した場合においては、ラインの入れ替えが、画像の符号化を行うこととなる。また、その符号化に際し、埋め込み符号化器3では、例えば、何ライン目を移動するかや、どのラインどうしを入れ替えるかなどが、付加情報にしたがって決定されることになる。一方、埋め込み復号器6では、符号化後の画像、即ち、ラインの入れ替えられた画像を、その相関を利用して、ラインを元の位置に入れ替えることにより、元の画像に戻すことが、画像を復号することとなる。さらに、その復号に際し、埋め込み復号器6において、例えば、何ライン目を移動したかや、どのラインどうしを入れ替えたかなどを検出することが、画像に埋め込まれた付加情報を復号することになる。
【0040】
次に、情報の連続性についてであるが、例えば、画像のある1ラインについて注目した場合に、その注目ラインにおいて、図4(A)に示すような、画素値の変化パターンが連続している波形301が観察されたとすると、その注目ラインと離れた他のラインでは、注目ラインとは異なる画素値の変化パターンが観察される。従って、注目ラインと、その注目ラインと離れた他のラインとにおいては、画素値の変化パターンが異なり、連続性においても偏りがある。即ち、画像のある部分の画素値の変化パターンに注目すると、その注目部分に隣接する部分には、同様の画素値の変化パターンが存在し、注目部分から離れるにつれて、異なる画素値の変化パターンが存在するという連続性の偏りがある。
【0041】
そこで、いま、図4(A)に示した、画像のあるラインにおける、画素値の変化パターンが連続している波形301の一部を、例えば、図4(B)に示すように、離れたラインにおける波形302と入れ替える。
【0042】
この場合、画像の連続性の偏りが破壊される。しかしながら、近接する部分の画素値の変化パターンは連続しており、離れるほど、画素値の変化パターンが異なるという連続性の偏りを利用することにより、破壊された連続性の偏りを復元することができる。即ち、図4(B)において、波形の一部302の画素値の変化パターンが、他の部分の画素値の変化パターンに比較して大きく異なっているのは、波形が有する本来の連続性の偏りからすれば、明らかに不自然であり、他の部分の画素値の変化パターンと異なっている部分302は、他の部分の画素値の変化パターンと同様の波形に入れ替えるべきである。そして、そのような入れ替えを行うことで、連続性の偏りが復元され、これにより、図4(B)に示した波形から、図4(A)に示した元の波形を復号することができる。
【0043】
ここで、図4で説明した場合においては、波形の一部を、その周辺の画素値の変化パターンとは大きく異なる画素値の変化パターンの波形に入れ替えることが、画像の符号化を行うこととなる。また、その符号化に際し、埋め込み符号化器3では、例えば、波形のどの部分の画素値の変化パターンを入れ替えるのかや、画素値の変化パターンをどの程度大きく変化させるのかなどが、付加情報にしたがって決定されることになる。一方、埋め込み復号器6では、符号化後の信号、即ち、大きく異なる画素値の変化パターンを一部に有する波形を、周辺の画素値の変化パターンは連続しており、離れるほど、画素値の変化パターンが異なるという連続性の偏りを利用して、元の波形に戻すことが、その元の波形を復号することとなる。さらに、その復号に際し、埋め込み復号器6において、例えば、波形のどの部分の画素値の変化パターンが大きく変化していたのかや、画素値の変化パターンがどの程度大きく変化していたのかなどを検出することが、埋め込まれた付加情報を復号することになる。
【0044】
次に、情報の相似性についてであるが、例えば、風景を撮影した画像等の一部は、画像のフラクタル性(自己相似性)を利用して生成することができることが知られている。即ち、例えば、図5(A)に示すような、海401と森402を撮影した画像においては、海401全体の画素値の変化パターンと、その海401の一部の画素値の変化パターンとの相似性は高いが、それらの変化パターンと、海401から離れた森402の画素値の変化パターンとの相似性は低いという相似性の偏りがある。ここで、画像の相似性は、上述のように画素値の変化パターンを比較して考えるのではなく、エッジ形状を比較して考えても良い。
【0045】
そこで、いま、図5(A)に示した海401の一部403と、森402の一部404とを入れ替える。
【0046】
この場合、画像の相似性の偏りが破壊され、図5(B)に示すような画像が得られる。しかしながら、近接する部分の画素値の変化パターンは相似性が高く、離れるほど、画素値の変化パターンの相似性が低くなるという相似性の偏りを利用することにより、破壊された相似性の偏りを復元することができる。即ち、図5(B)において、海401の画像の一部が、海401と相似性の低い森402の画像の一部404になっていること、および森402の画像の一部が、森402と相似性の低い海401の画像の一部403となっていることは、画像が有する本来の相似性の偏りからすれば、明らかに不自然である。具体的には、図5(B)において、海401の画像の中の、森402の画像の一部404についての相似性は、海401の他の部分についての相似性に比較して極端に低くなっており、また、森402の画像の中の、海401の画像の一部403についての相似性も、森402の他の部分についての相似性に比較して極端に低くなっている。
【0047】
従って、画像が本来有する相似性の偏りからすれば、海401の画像の一部となっている、森402の画像の一部404と、森402の画像の一部となっている、海401の画像の一部403とは入れ替えるべきである。そして、そのような入れ替えを行うことで、画像の相似性の偏りが復元され、これにより、図5(B)に示した画像から、図5(A)に示した元の画像を復号することができる。
【0048】
ここで、図5で説明した場合においては、海401の画像の一部403と、森402の画像の一部404とを入れ替えることが、画像の符号化を行うこととなる。また、その符号化に際し、埋め込み符号化器3では、例えば、海401の画像のどの部分(画面上の位置)と、森402の画像のどの部分とを入れ替えるのかなどが、付加情報にしたがって決定されることになる。一方、埋め込み復号器6では、符号化後の信号、即ち、海401の一部が、森402の一部404となっているとともに、森402の一部が、海401の一部403となっている画像を、周辺の画素値の変化パターンの相似性は高く、離れるほど、画素値の変化パターンの相似性が低くなっていくという相似性の偏りを利用して、元の画像に戻すことが、その元の画像を復号することとなる。さらに、その復号に際し、埋め込み復号器6において、例えば、海の画像のどの部分と、森の画像のどの部分とが入れ替えられていたのかなどを検出することが、埋め込まれた付加情報を復号することになる。
【0049】
以上のように、埋め込み符号化器3において、符号化対象の画像が有するエネルギの偏りを利用して復号を行うことができるように、その画像を、付加情報にしたがって符号化して、符号化データを出力する場合には、埋め込み復号器6では、その符号化データを、画像が有するエネルギの偏りを利用することにより、復号のためのオーバヘッドなしで、元の画像および付加情報に復号することができる。
【0050】
また、符号化対象の画像には、付加情報が埋め込まれることで、その埋め込みの結果得られる画像は、元の画像と異なる画像とされ、人が価値ある情報として認識することのできる画像ではなくなることから、符号化対象の画像については、オーバヘッドなしの暗号化を実現することができる。
【0051】
さらに、完全可逆の電子透かしを実現することができる。即ち、従来の電子透かしでは、例えば、画質にあまり影響のない画素値の下位ビットが、電子透かしに対応する値に、単に変更されていたが、この場合、その下位ビットを、元の値に戻すことは困難である。従って、復号画像の画質は、電子透かしとしての下位ビットの変更により、少なからず劣化する。これに対して、符号化データを、元の画像が有するエネルギの偏りを利用して復号する場合には、劣化のない元の画像および付加情報を得ることができ、従って、付加情報を電子透かしとして用いることで、電子透かしに起因して復号画像の画質が劣化することはない。
【0052】
また、埋め込まれた付加情報は、符号化データから画像を復号することで取り出すことができるので、画像の符号化結果とともに、オーバヘッドなしでサイドインフォメーションを提供することができる。言い換えれば、付加情報を取り出すためのオーバヘッドなしで、その付加情報を画像に埋め込むことができるので、その埋め込みの結果得られる符号化データは、付加情報の分だけ圧縮(埋め込み圧縮)されているということができる。従って、例えば、ある画像の半分を符号化対象とするとともに、残りの半分を付加情報とすれば、符号化対象である半分の画像に、残りの半分の画像を埋め込むことができるから、この場合、画像は、単純には、1/2に圧縮されることになる。
【0053】
さらに、符号化データは、元の画像が有するエネルギの偏りという、いわば統計量を利用して復号されるため、誤りに対する耐性の強いものとなる。即ち、ロバスト性の高い符号化であるロバスト符号化(統計的符号化)を実現することができる。
【0054】
また、符号化データは、元の画像が有するエネルギの偏りを利用して復号されるため、そのエネルギの偏りに特徴があるほど、即ち、例えば、画像については、そのアクティビティが高いほど、あるいは、冗長性が低いほど、多くの付加情報を埋め込むことができる。ここで、上述したように、付加情報の埋め込みの結果得られる符号化データは、付加情報の分だけ圧縮されているということができるが、この圧縮という観点からすれば、符号化対象の情報が有するエネルギの偏りを利用して復号を行うことができるように、その情報を、付加情報にしたがって符号化する方式(埋め込み符号化方式)によれば、画像のアクティビティが高いほど、あるいは、画像の冗長性が低いほど、圧縮率が高くなる。この点、埋め込み符号化方式は、従来の符号化方式と大きく異なる(従来の符号化方式である、例えばMPEG(Moving Picture Experts Group)方式などでは、基本的に、画像のアクティビティが高いほど、あるいは、画像の冗長性が低いほど、圧縮率は低くなる)。
【0055】
さらに、例えば、上述したように、画像を符号化対象とする一方、付加情報として、画像とは異なるメディアの、例えば、音声を用いるようにすることで、音声をキーとして、画像の提供を行うようなことが可能となる。即ち、符号化装置10側において、例えば、契約者が発話した音声「開けゴマ」など付加情報として画像に埋め込んでおき、復号装置20側では、ユーザに、音声「開けゴマ」を発話してもらい、その音声と、画像に埋め込まれた音声とを用いて話者認識を行うようにする。このようにすることで、例えば、話者認識の結果、ユーザが契約者である場合にのみ、自動的に、画像を提示するようなことが可能となる。なお、この場合、付加情報としての音声は、いわゆる特徴パラメータではなく、音声波形そのものを用いることが可能である。
【0056】
また、例えば、音声を符号化対象とする一方、付加情報として、音声とは異なるメディアの、例えば、画像を用いるようにすることで、画像をキーとして、音声の提供を行うようなこと(例えば、顔認識後の音声応答)が可能となる。即ち、符号化装置10側において、例えば、ユーザへの応答としての音声に、そのユーザの顔の画像を埋め込み、復号装置20側では、ユーザの顔を撮影し、その結果得られる画像とマッチングする顔画像が埋め込まれている音声を出力するようにすることで、ユーザごとに異なる音声応答を行う音声応答システムを実現することが可能となる。
【0057】
さらに、音声に、音声を埋め込んだり、画像に、画像を埋め込んだりするような、あるメディアの情報に、それと同一メディアの情報を埋め込むようなことも可能である。あるいは、また、画像に、契約者の音声と顔画像を埋め込んでおけば、ユーザの音声と顔画像とが、画像に埋め込まれているものと一致するときのみ、その画像を提示するようにする、いわば二重鍵システムなどの実現も可能となる。
【0058】
また、例えば、テレビジョン放送信号を構成する、いわば同期した画像と音声のうちのいずれか一方に、他方を埋め込むようなことも可能であり、この場合、異なるメディアの情報どうしを統合した、いわば統合符号化を実現することができる。
【0059】
さらに、埋め込み符号化方式では、上述したように、情報には、そのエネルギの偏りに特徴があるほど、多くの付加情報を埋め込むことができる。従って、例えば、ある2つの情報について、エネルギの偏りに特徴がある方を適応的に選択し、その選択した方に、他方を埋め込むようにすることで、全体のデータ量を制御することが可能となる。即ち、2つの情報どうしの間で、一方の情報によって、他方の情報量を、いわば吸収するようなことが可能となる。そして、このように全体のデータ量を制御することができる結果、伝送路の伝送帯域や使用状況、その他の伝送環境にあったデータ量による情報伝送(環境対応ネットワーク伝送)が可能となる。
【0060】
また、例えば、画像に、その画像を縮小した画像を埋め込むことで(あるいは、音声に、その音声を間引いたものを埋め込むことで)、データ量を増加することなく、いわゆる階層符号化(下位階層の情報を少なくすることにより、上位階層の情報を生成する符号化)を実現することができる。
【0061】
さらに、例えば、画像に、その画像を検索するためのキーとなる画像を埋め込んでおくことで、そのキーとなる画像に基づいて、画像の検索を行うデータベースを実現することが可能となる。
【0062】
次に、図6は、画像の連続性を利用して元に戻すことができるように、画像に付加情報を埋め込む埋め込み符号化を行う場合の図1の埋め込み符号化器3の構成例を示している。
【0063】
画像データベース1から供給される画像は、フレームメモリ31に供給されるようになされており、フレームメモリ31は、画像データベース1からの画像を、例えば、フレーム単位で一時記憶するようになされている。
【0064】
CPU(Central Processing Unit)32は、プログラムメモリ33に記憶されたプログラムを実行することで、後述する埋め込み符号化処理を行うようになされている。即ち、CPU32は、プログラムメモリ33に記憶されているプログラムにしたがって、付加情報データベース2からメモリ34を介して供給される付加情報を受信し、その付加情報を、フレームメモリ31に記憶された画像に埋め込むようになされている。具体的には、CPU32は、フレームメモリ31に記憶された画像を構成する画素値を、メモリ34に記憶された付加情報にしたがって変更することで、その画素値に、付加情報を埋め込むようになされている。この付加情報が埋め込まれた画像は、符号化データとして出力されるようになされている。
【0065】
プログラムメモリ33は、例えば、ROM(Read Only Memory)やRAM(Random Access Memory)などで構成され、CPU32に、埋め込み符号化処理を行わせるためのコンピュータプログラムや必要なデータを記憶している。
【0066】
メモリ34は、付加情報データベース2が記憶している付加情報を読み出し、一時記憶するようになされている。出力バッファ35は、CPU32によって埋め込み符号化処理が行われることにより得られる符号化データを一時記憶して出力するようになされている。
【0067】
なお、フレームメモリ31は、複数のフレームを記憶することのできるように、複数バンクで構成されており、バンク切り替えを行うことで、フレームメモリ31では、画像データベース1から供給される画像の記憶、およびCPU32による埋め込み符号化処理の対象となっている画像の記憶を、同時に行うことができるようになされている。これにより、画像データベース1から供給される画像が、動画であっても、符号化データのリアルタイム出力を行うことができるようになされている。
【0068】
次に、図7は、図6の埋め込み符号化器3の機能的な構成例を示している。なお、この図7に示した機能的な構成は、CPU32がプログラムメモリ33に記憶されたコンピュータプログラムを実行することで実現されるようになされている。
【0069】
フレームメモリ31、メモリ34、または出力バッファ35それぞれは、図6で説明したものと同一のものである。
【0070】
度数分布算出部41は、フレームメモリ31に記憶された符号化対象の画像の画素値の度数分布(ヒストグラム)を、例えば、1フレーム単位で求め、変更対象画素値/変更値決定部42に供給するようになされている。変更対象画素値/変更値決定部42は、度数分布算出部41から供給される画素値の度数分布に基づき、フレームメモリ31に記憶された符号化対象の画像を構成する画素値の中から、付加情報にしたがって変更する画素値(以下、適宜、変更対象画素値という)を決定するとともに、その変更対象画素値を変更する値(以下、適宜、変更値という)を決定し、画素値変更部43に供給するようになされている。画素値変更部43は、フレームメモリ31に記憶された符号化対象のフレームを構成する画素値を、所定の順序としての、例えば、ラスタスキャン順で読み出し、その読み出した画素値が、変更対象画素値に一致しない場合には、そのまま出力バッファ35に供給して対応するアドレスに記憶させるようになされている。また、画素値変更部43は、読み出した画素値が、変更対象画素値に一致する場合には、メモリ34に記憶された付加情報を読み出し、その付加情報にしたがって、変更対象画素値を変更値に変更するか、またはそのままとし、出力バッファ35に供給して対応するアドレスに記憶させるようになされている。
【0071】
次に、図8のフローチャートを参照して、図7の埋め込み符号化器3において行われる埋め込み符号化処理について説明する。
【0072】
画像データベース1からは、そこに記憶されている画像が読み出され、フレームメモリ31に、順次供給されて記憶される。また、付加情報データベース2からは、そこに記憶されている付加情報が読み出され、メモリ34に、順次供給されて記憶される。
【0073】
一方、度数分布算出部41では、ステップS1において、フレームメモリ31に記憶された符号化対象の1フレームを構成する画素値が読み出され、その度数分布が算出される。
【0074】
ここで、図9に、実際の画像の画素値の度数分布を示す。なお、図9は、それぞれ8ビットが割り当てられたRGBコンポーネント信号で構成される1フレームの画像のRコンポーネントの度数分布を示している。Rコンポーネントには、ここでは、上述したように、8ビットが割り当てられおり、従って、0乃至255等の256の範囲の画素値をとり得るが、図9では、250以上の画素値となる画素は存在していない。さらに、図9から明らかなように、一般に、画像には、各画素値(ここでは、0乃至255それぞれの値)が、同じような数だけ存在するのではなく、多数存在する画素値もあれば、まったく存在しない画素値もある。しかしながら、画素値の度数分布の変化は、一般に連続している。
【0075】
度数分布算出部41で求められた画素値の度数分布は、変更対象画素値/変更値決定部42に供給される。変更対象画素値/変更値決定部42は、画素値の度数分布を受信すると、ステップS2に進み、その度数分布に基づき、フレームメモリ31に記憶された符号化対象の画像を構成する画素値の中から、変更対象画素値とするものを決定するとともに、その変更対象画素値を変更する値である変更値を決定する。即ち、変更対象画素値/変更値決定部42は、例えば、度数分布から、最も度数の高い画素値を検出し、それを、変更対象画素値として決定する。さらに、変更対象画素値/変更値決定部42は、度数分布から、度数が0になっている画素値を検出し、それを、変更値として決定する(度数が0になっている画素値が複数ある場合には、例えば、そのうちの1つを選択して、変更値として決定する)。
【0076】
ここで、本実施の形態では、変更対象画素値に、付加情報が埋め込まれる。そこで、埋め込むことのできる付加情報のデータ量を多くするために、最も度数の高い画素値を、変更対象画素値とするようにしている。従って、変更対象画素値とする画素値は、度数の最も高いものに限定されるものではない。
【0077】
変更対象画素値/変更値決定部42において、変更対象画素値および変更値が決定されると、その変更対象画素値および変更値は、画素値変更部43に供給される。
【0078】
画素値変更部43は、変更対象画素値および変更値を受信すると、ステップS3において、フレームメモリ31に記憶された符号化対象のフレームを構成する最も左上の画素値を読み出し、ステップS4に進む。ステップS4では、画素値変更部43において、ステップS4で読み出された画素値が変更対象画素値であるかどうかが判定され、変更対象画素値でないと判定された場合、ステップS5乃至S7をスキップして、ステップS8に進み、その画素値が、そのまま出力バッファ35に供給されて、対応するアドレスに書き込まれる。
【0079】
また、ステップS4において、ステップS4で読み出された画素値が変更対象画素値であると判定された場合、ステップS5に進み、画素値変更部43は、メモリ34から付加情報を読み出し、ステップS6に進む。ここで、ステップS5では、付加情報が、例えば、1ビット単位で読み出されるものとする。
【0080】
ステップS6では、画素値変更部43において、ステップS5で読み出された1ビットの付加情報が0または1のうちのいずれであるかが判定される。ステップS6において、付加情報が、0または1のうちの、例えば、0であると判定された場合、ステップS7をスキップして、ステップS8に進み、画素値変更部34において、変更対象画素値が、そのまま出力バッファ35に供給されて、対応するアドレスに書き込まれる。即ち、0である付加情報は、変更対象画素値を変更しないことで、その変更対象画素値を有する画素に埋め込まれる。
【0081】
また、ステップS6において、付加情報が、0または1のうちの、例えば、1であると判定された場合、ステップS7に進み、画素値変更部43において、変更対象画素値が変更値に変更され、ステップS8に進む。ステップS8では、画素値変更部43において、ステップS7で変更された変更値が、出力バッファ35に供給されて、対応するアドレスに書き込まれる。即ち、1である付加情報は、変更対象画素値を変更値に変更することで、その変更対象画素値を有していた画素に埋め込まれる。
【0082】
ステップS8の処理後は、ステップS9に進み、いま符号化対象とされているフレームの画素の読み出しがすべて終了したかどうかが判定される。ステップS9において、いま符号化対象とされているフレームの画素すべての読み出しが、まだ終了していないと判定された場合、ステップS3に戻り、ラスタスキャン順に、次に処理すべき画素値が読み出され、以下、同様の処理が繰り返される。
【0083】
また、ステップS9において、いま符号化対象とされているフレームの画素すべての読み出しが終了したと判定された場合、ステップS10に進み、出力バッファ35に記憶されている、付加情報が埋め込まれたフレームが、符号化データとして読み出されて出力される。そして、ステップS11に進み、フレームメモリ31に、次に処理すべきフレームが記憶されているかどうかが判定され、記憶されていると判定された場合、ステップS1に戻り、そのフレームを符号化対象として、同様の処理が繰り返される。
【0084】
また、ステップS11において、フレームメモリ31に、次に処理すべきフレームが記憶されていないと判定された場合、埋め込み符号化処理を終了する。
【0085】
以上のような埋め込み符号化処理によれば、ある1フレームの画像は、次のような符号化データに符号化される。
【0086】
即ち、例えば、符号化対象のフレームに、図10(A)において・で示すように、変更対象画素値が分布しているとすると、各変更対象画素値のうち、ラスタスキャン順で、0の付加情報に対応する位置にあるものは、そのままとされ、1の付加情報に対応する位置にあるものは、図10(B)において×で示すように、図10(A)のフレームには存在しない画素値、即ち、度数が0の画素値である変更値に変更される。
【0087】
以上のように、フレームメモリ31に記憶された画像を構成する画素値のうち、度数の最も高い画素値である変更対象画素値を、付加情報にしたがって、その画像に存在しない画素値である変更値に変更することにより、付加情報を埋め込む場合には、画像の連続性(画像を構成する画素値の度数分布の連続性)の偏りを利用して、変更値を、元の変更対象画素値に変更することで、元の画像を復号することができるとともに、付加情報を復号することができる。従って、画像の画質の劣化を極力なくし、かつデータ量を増加せずに、画像に付加情報を埋め込むことができる。
【0088】
即ち、変更値は、画像の連続性、つまり、ここでは、画像を構成する画素値の度数分布の連続性を利用することにより、オーバヘッドなしで、元の画素値(変更対象画素値)に復号する(戻す)こができ、さらに、変更値と変更対象画素値を検出することで、付加情報を復号することができる。従って、その結果得られる復号画像(再生画像)には、基本的に、付加情報を埋め込むことによる画質の劣化は生じない。
【0089】
なお、符号化対象のフレームに、存在しない画素値がない場合には、変更対象画素値を変更すると、その変更後の画素値と、符号化対象のフレームに最初から存在する画素値とを区別することが困難となる。そこで、図8の埋め込み符号化処理のステップS1において、度数分布を算出した後に、その度数分布から、フレームに、存在しない画素値がないことが判明した場合には、そのフレームには付加情報を埋め込まず、次のフレームを、符号化対象として、埋め込み符号化処理を行うのが望ましい。
【0090】
次に、図11は、図7の埋め込み符号化器3が出力する符号化データを、画像の連続性を利用して元の画像と付加情報に復号する図1の埋め込み復号器6の構成例を示している。
【0091】
符号化データ、即ち、付加情報が埋め込まれた画像(以下、適宜、埋め込み画像ともいう)は、入力バッファ51に供給されるようになされており、入力バッファ51は、埋め込み画像を、例えば、フレーム単位で一時記憶するようになされている。なお、入力バッファ51も、図6のフレームメモリ31と同様に構成され、バンク切り替えを行うことにより、埋め込み画像が、動画であっても、そのリアルタイム処理が可能となっている。
【0092】
CPU52は、プログラムメモリ53に記憶されたプログラムを実行することで、後述する埋め込み復号処理を行うようになされている。即ち、CPU52は、入力バッファ51に記憶された埋め込み画像を、画像の連続性を利用して元の画像と付加情報に復号するようになされている。具体的には、CPU52は、入力バッファ51に記憶された復号対象のフレームの画素値のうち、変更対象画素値と変更値とを検出することで、付加情報を復号し、さらに、変更値を変更対象画素値に変更することで、元の画像を復号するようになされている。
【0093】
プログラムメモリ53は、例えば、図6のプログラムメモリ33と同様に構成され、CPU52に、埋め込み復号化処理を行わせるためのコンピュータプログラムや必要なデータを記憶している。
【0094】
フレームメモリ54は、CPU52において復号された画像を、例えば、1フレーム単位で記憶して出力するようになされている。メモリ55は、CPU52で復号された付加情報を一時記憶して出力するようになされている。
【0095】
次に、図12は、図11の埋め込み復号器6の機能的な構成例を示している。なお、この図12に示した機能的な構成は、CPU52がプログラムメモリ53に記憶されたコンピュータプログラムを実行することで実現されるようになされている。
【0096】
入力バッファ51、フレームメモリ54、またはメモリ55それぞれは、図11で説明したものと同一のものである。
【0097】
度数分布算出部61は、入力バッファ51に記憶された復号対象の埋め込み画像のフレームを構成する画素値を読み出し、その度数分布を求めて、変更対象画素値/変更値決定部62に供給するようになされている。変更対象画素値/変更値決定部62は、度数分布算出部61からの画素値の度数分布に基づき、埋め込み画像を構成する画素値の中から、埋め込み符号化器3において変更対象画素値と変更値それぞれに決定された画素値を求め(決定し)、画素値変更部63に供給するようになされている。画素値変更部63は、変更対象画素値/変更値決定部62の出力から、変更対象画素値および変更値を認識し、入力バッファ51に記憶された復号対象の埋め込み画像のフレームの中の変更対象画素値および変更値を検出することで、その埋め込み画像に埋め込まれた付加情報を復号して、メモリ55に供給するようになされている。さらに、画素値変更部63は、埋め込み画像の中の変更値を変更対象画素値に変更することで、その埋め込み画像を、元の画像に復号し、フレームメモリ54に供給するようになされている。
【0098】
次に、図13のフローチャートを参照して、図12の埋め込み復号器6において行われる埋め込み復号処理について説明する。
【0099】
入力バッファ51では、そこに供給される埋め込み画像(符号化データ)が、例えば、1フレーム単位で順次記憶される。
【0100】
一方、度数分布算出部61では、ステップS21において、入力バッファ51に記憶された復号対象の埋め込み画像のフレームが読み出され、そのフレームを構成する画素値の度数分布が求められる。この度数分布は、変更対象画素値/変更値決定部62に供給される。
【0101】
変更対象画素値/変更値決定部62は、度数分布算出部61から度数分布を受信すると、ステップS22において、その度数分布に基づいて、埋め込み符号化器3において決定された変更対象画素値および変更値を求める。
【0102】
即ち、埋め込み画像に符号化された元の画像を構成する画素値が、例えば、図14(A)に示すような連続した度数分布を有していたとすると、埋め込み符号化器3では、度数の最も高い画素値P1が変更対象画素値として決定される。なお、図14では、画素値のとりうる範囲が、0乃至MAXとされており、また、元の画像は、画素値Pmin以下の画素および画素値Pmax以上の画素が存在しないものとなっている(0<Pmin<Pmax<MAX)。
【0103】
さらに、この場合、埋め込み符号化器3において、画素値Pmin以下の、元の画像に存在しないある画素値P2が変更値として決定され、埋め込み符号化が行われたとすると、その結果得られる埋め込み画像の画素値の度数分布は、例えば、図14(B)に示すようなものとなる。即ち、変更対象画素値P1の度数は、それに近い画素値(例えば、両隣の画素値)の度数に比較して極端に低くなり、変更値P2の度数は、逆に、それに近い画素値の度数に比較して極端に高くなる。
【0104】
その結果、例えば、画素値の小さいものから、画素値nの度数と画素値n+1の度数との差分(=画素値nの度数−画素値n+1の度数)(以下、適宜、度数差分という)を求めていくと、その度数差分は、変更対象画素値P1の付近(n=P1のときと、n+1=P1のとき)において、図15(A)に示すように、極端に大きくなった後、極端に小さくなる(不連続になる)。また、度数差分は、変更値P2の付近(n=P2のときと、n+1=P2のとき)において、図15(B)に示すように、極端に小さくなった後、極端に大きくなる(不連続になる)。
【0105】
従って、埋め込み符号化器3において決定された変更対象画素値および変更値は、度数差分をサーチしていくことで求めることができ、変更対象画素値/変更値決定部62では、そのようにして、埋め込み画像の画素値の度数分布に基づき、埋め込み符号化器3において決定された変更対象画素値および変更値を求めるようになされている。
【0106】
図13に戻り、変更対象画素値/変更値決定部62は、埋め込み符号化器3において決定された変更対象画素値および変更値を求めると、それらを、画素値変更部63に出力し、ステップS23に進む。
【0107】
ステップS23では、画素値変更部63において、入力バッファ51に記憶された復号対象の埋め込み画像のフレームを構成する最も左上の画素値が読み出され、ステップS24に進み、その画素値が判定される。ステップS24において、読み出された画素値が、変更対象画素値および変更値のいずれでもないと判定された場合、画素値変更部63は、ステップS28に進み、その画素値を、フレームメモリ54に供給し、対応するアドレスに記憶させる。ここで、変更対象画素値および変更値のいずれでもない画素には、付加情報は埋め込まれていないから、その復号は行われない(することができない)(する必要がない)。
【0108】
また、ステップS24において、読み出された画素値が、変更対象画素値であると判定された場合、ステップS25に進み、画素値変更部63は、メモリ55に、付加情報の復号結果として、0または1のうちの、変更対象画素値に対応する0を供給して記憶させる。そして、ステップS28に進み、画素値変更部63は、変更対象画素値を、そのまま、フレームメモリ54に供給し、対応するアドレスに記憶させる。
【0109】
さらに、ステップS24において、読み出された画素値が、変更値であると判定された場合、ステップS26に進み、画素値変更部63は、変更値を、変更対象画素値に変更し、これにより、元の画素値に復号して、ステップS27に進む。ステップS27では、画素値変更部63において、メモリ55に対して、付加情報の復号結果として、0または1のうちの、変更値に対応する1が供給されて書き込まれる。そして、ステップS28に進み、画素値変更部63は、変更対象画素値(ステップS26において、変更値を変更したもの)を、フレームメモリ54に供給し、対応するアドレスに記憶させる。
【0110】
ステップS28の処理後は、ステップS29に進み、いま復号対象とされている埋め込み画像のフレームの画素の読み出しがすべて終了したかどうかが判定される。ステップS29において、いま復号対象とされている埋め込み画像のフレームの画素すべての読み出しが、まだ終了していないと判定された場合、ステップS23に戻り、ラスタスキャン順に、次に処理すべき画素値が読み出され、以下、同様の処理が繰り返される。
【0111】
また、ステップS29において、いま復号対象とされている埋め込み画像の画素すべての読み出しが終了したと判定された場合、フレームメモリ54またはメモリ55にそれぞれ記憶された1フレームの復号画像または付加情報が読み出されて出力される。そして、ステップS30に進み、入力バッファ51に、次に処理すべき埋め込み画像のフレームが記憶されているかどうかが判定され、記憶されていると判定された場合、ステップS21に戻り、そのフレームを復号対象として、同様の処理が繰り返される。
【0112】
また、ステップS30において、入力バッファ51に、次に処理すべき埋め込み画像のフレームが記憶されていないと判定された場合、埋め込み復号処理を終了する。
【0113】
以上のように、付加情報が埋め込まれた画像である符号化データを、画像の連続性を利用して、元の画像と付加情報に復号するようにしたので、その復号のためのオーバヘッドがなくても、符号化データを、元の画像と付加情報に復号することができる。従って、その復号画像には、基本的に、付加情報を埋め込むことによる画質の劣化は生じない。
【0114】
なお、本実施の形態では、埋め込み符号化処理において、付加情報にしたがい、変更対象画素値を、そのままとする(変更対象画素値に変更する)か、または変更値に変更するようにしたが、符号化対象の画像に、存在しない画素値が2以上ある場合には、例えば、そのうちの2つを第1の変更値と第2の変更値とし、付加情報にしたがい、変更対象画素値を、第1の変更値に変更するか、または第2の変更値に変更するようにすることが可能である。ここで、変更対象画素値を、そのままとするか、または変更値に変更する場合には、符号化対象の画像に、存在しない画素値が1つあれば良いが、変更対象画素値を、第1または第2の変更値に変更する場合には、符号化対象の画像に、存在しない画素値が2以上ある必要がある。しかしながら、変更対象画素値を、第1または第2の変更値に変更する場合には、埋め込み画像には、変更対象画素値が存在しなくなるので、埋め込み復号器6において、埋め込み画像の度数分布から、より精度良く、変更対象画素値を求めることが可能となる。
【0115】
さらに、符号化対象の画像に、存在しない画素値が複数ある場合には、その複数の画素値をすべて変更値とし、付加情報にしたがい、変更対象画素値を、複数の変更値のうちのいずれかに変更するようにすることが可能である。この場合、1画素に、2ビット以上の付加情報を埋め込むことが可能となる。
【0116】
また、本実施の形態では、埋め込み符号化処理において、符号化対象の画像の画素値を、ラスタスキャン順に処理するようにしたが、その処理の順番は、ラスタスキャン順に限定されるものではない。即ち、度数分布を求める画素値を読み出すことができれば良いので、処理の順番は、列方向や斜め方向であってもかまわない。
【0117】
さらに、本実施の形態では、フレーム単位で度数分布を求めるようにしたが、度数分布は、その他、例えば、1フレームを幾つかのブロックに分けて、そのブロック単位で求めても良いし、複数フレーム単位で求めても良い。
【0118】
また、本実施の形態では、埋め込み復号器6において、埋め込み符号化器3で決定された変更対象画素値および変更値を求めるようにしたが、変更対象画素値および変更値は、僅かな量のデータであり、埋め込み画像に、オーバーヘッドとして含めるようにしても良い。
【0119】
さらに、埋め込み符号化の対象とする画像が、例えば、RGBコンポーネント信号で構成されるカラー画像などである場合には、RGBそれぞれについて、埋め込み符号化処理を施すことが可能である。
【0120】
また、付加情報として用いる情報は、特に限定されるものではなく、例えば、画像や、音声、テキスト、コンピュータプログラム、制御信号、その他のデータを付加情報として用いることが可能である。なお、画像データベース1の画像の一部を付加情報とし、残りを、フレームメモリ31への供給対象とすれば、その残りの部分に、付加情報とされた画像の一部分が埋め込まれるから、画像の圧縮が実現されることになる。
【0121】
さらに、本実施の形態では、付加情報を、画像に埋め込むようにしたが、付加情報は、その他、例えば、音声等の、値の度数分布の形状が連続性を有するメディアに埋め込むことが可能である。
【0122】
また、ここでは、画像に、付加情報そのものを埋め込むようにしたが、画像には、その他、例えば、付加情報の特徴量(例えば、付加情報のヒストグラムや、分散、ダイナミックレンジ等)を埋め込むようにすることも可能である。
【0123】
次に、図16は、図6の埋め込み符号化器3の第2の機能的な構成例を示している。なお、図中、図7における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。即ち、図16の埋め込み符号化器3は、差分計算部71が新たに設けられている他は、図7における場合と同様に構成されている。
【0124】
差分計算部71は、フレームメモリ31に記憶された符号化対象の画像を構成する各画素について、その画素と空間的または時間的に近接する画素を参照画素として、その参照画素との差分に対応する差分データを計算し、フレームメモリ31に記憶させるようになっている。
【0125】
即ち、差分計算部71は、例えば、符号化対象の画像を構成する各画素の画素値について、その左隣にある画素を参照画素として、その参照画素の画素値を減算し、その減算結果を、差分データとして、フレームメモリ31に記憶させるようになっている。従って、図16の実施の形態では、度数分布算出部41、変更対象画素値/変更値決定部42、および画素値変更部43において、そのような差分データでなる画像(差分画像)を対象に、上述したような埋め込み符号化処理が行われるようになっている。
【0126】
次に、図17のフローチャートを参照して、図16の埋め込み符号化器3における埋め込み符号化処理について説明する。
【0127】
図16の埋め込み符号化器3では、まず最初に、ステップS40において、差分計算部71が、フレームメモリ31に記憶された符号化対象の画像を構成する各画素の画素値について、その左隣にある画素の画素値を減算し、その減算結果を、差分データとして、フレームメモリ31に記憶させる。
【0128】
そして、ステップS41乃至S51において、図8のステップS1乃至S11における場合とそれぞれ同様の処理が行われ、これにより、差分データを対象として、図8で説明した場合と同様の埋め込み符号化処理が行われ、付加情報が埋め込まれる。
【0129】
以上のように、画素値そのものではなく、画素値から参照画素の画素値を減算した差分データに対して、付加情報を埋め込むことで、より効率的な埋め込み符号化を行うことが可能となる。
【0130】
即ち、上述した場合では、差分計算部71において、画像を構成する画素について、その隣接する画素を参照画素として、その参照画素を減算して得られる差分データを求めるようにしたが、隣接する画素どうしの差は、一般に小さいことから、差分データは、0付近に集中する。
【0131】
従って、差分データに付加情報を埋め込む場合には、変更対象画素値とされる最も度数の高い差分データの数は、画素値そのものに付加情報を埋め込む場合に比較して、膨大な個数となり、その結果、そのような膨大な数の差分データに対して、多量の付加情報を埋め込むことが可能となる。
【0132】
次に、図18は、図16の埋め込み符号化器3が出力する符号化データを復号する埋め込み復号器6の機能的な構成例を示している。なお、図中、図12における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。即ち、図18の埋め込み復号器6は、差分復元部81が新たに設けられている他は、図12における場合と同様に構成されている。
【0133】
差分復元部81は、フレームメモリ54に記憶された差分データでなる差分画像を、元の画像に復元するようになっている。即ち、差分復元部81は、フレームメモリ54に記憶された差分データについて、その差分データを求めるときに参照画素として用いた画素の画素値を加算し、その加算値を、元の画素値として、フレームメモリ54に書き込むようになっている。
【0134】
次に、図18の埋め込み復号器6による埋め込み復号処理について、図19のフローチャートを参照して説明する。
【0135】
図18の埋め込み復号器6では、ステップS61乃至S70において、図13のステップS21乃至S30における場合とそれぞれ同様の処理が、上述したような差分画像に付加情報を埋め込んで得られる符号化データを対象に行われる。但し、ステップS69からS70に進む間に、ステップS71において、差分復元部81は、フレームメモリ54に記憶された差分データを、元の画素値に復元し、フレームメモリ54に書き込む。
【0136】
即ち、図16の埋め込み符号化器3が出力する符号化データは、上述したように、差分データに、付加情報が埋め込まれたものであるから、そのような符号化データに対して、図13のステップS21乃至S28とそれぞれ同様のステップS61乃至S68の処理が施されることにより、フレームメモリ54には、差分データが書き込まれることになる。ステップS71では、差分復元部81において、その差分データに対して、それを求めるときに参照画素として用いた画素の画素値が加算され、その加算値が、元の画素値として、フレームメモリ54に書き込まれる。なお、フレームメモリ54に書き込まれた元の画素値は、画像の復号結果として出力される他、その右隣の画素についての差分データを復元する際の参照画素として用いられる。
【0137】
以上のような埋め込み復号処理によれば、上述したように、多量の付加情報が埋め込まれた画像を、元の画像と付加情報とに復号することができる。
【0138】
ところで、いま埋め込み符号化の対象とする符号化対象画素の画素値をAと、その左隣の画素である参照画素の画素値をBと、差分データをCと、それぞれ表すと、差分データは、式C=A−Bで表される。
【0139】
画素値どうしの単純な差分である差分データCは、符号化対象の画像を構成する画素がNビットで表されるとすると、最大でN+1ビットで表される値になる(例えば、画素が、0乃至255の範囲の8ビットで表されるとすると、そのような画素どうしの単純な差分は、−255乃至+255の範囲の値となり、その表現に、9ビットが必要となる)。この場合、差分データのビット数が、元の画素値のビット数よりも増加することになり、その結果、埋め込み符号化の対象とするデータ量が増加することがあり、好ましくない。
【0140】
そこで、例えば、図20に示すように表現される差分データを用いることにより、上述したようなビット数の増加を防止することができる。
【0141】
即ち、符号化対象の画素(画素値)Aが、参照画素(参照画素の画素値)B以下である場合には、符号化対象の画素Aから参照画素Bを減算し、その減算値を、そのまま差分データCとする。具体的には、例えば、符号化対象の画素値Aが200で、参照画素値Bが10である場合には、図20(A)に示すように、200−10=190が、差分データCとされる。
【0142】
一方、符号化対象の画素Aが、参照画素Bより大きい場合には、図20(B)に示すように、符号化対象の画素Aから参照画素Bを減算し、その減算値に、ある値を加算し、その加算結果を、差分データCとする。即ち、画素がNビットで表現されるとすると、符号化対象の画素Aから参照画素Bを減算して得られる減算値に、2Nを加算し、その加算結果を、差分データCとする。具体的には、例えば、画素が8ビットで表され、符号化対象の画素値Aが10で、参照画素値Bが200である場合には、図20(B)に示すように、10−200+28=66が、差分データCとされる。
【0143】
以上のような差分データCを求めるようにすることで、その差分データCのビット数は、元の画素のビット数と変わらない(元の画素がNビットで表現されるものであれば、差分データもNビットで表現することができる)。従って、埋め込み符号化の対象とするデータ量の増加を防止することができる。
【0144】
次に、以上のようにして差分データCを求めた場合には、その差分データCは、次のようにして、元の画素(符号化対象の画素)Aに復元することができる。
【0145】
即ち、まず、差分データCを参照画素Bと加算し、その加算値を求める。そして、いま、画素がNビットで表されるとすると、その加算値が2N−1以下である場合には、その加算値が、そのまま、元の画素Aの復元結果となる。
【0146】
一方、差分データCとを参照画素Bとの加算値が2N−1より大きい場合には、その加算値から、2Nを減算する。この場合、その減算値が、元の画素Aの復元結果となる。
【0147】
以上のようにすることで、ある画素Aと、他の画素Bとの差分を、そのビット数を増加させずに表現することができ、さらに、その差分を、元の画素Aに復元することができる。
【0148】
次に、図21のフローチャートを参照して、図16の差分計算部71において、図20で説明したような表現の差分データを求めさせるための差分計算処理について説明する。
【0149】
この場合、差分計算処理では、まず最初に、ステップS81において、符号化対象の画素の画素値Aが、参照画素の画素値B以上である(より大きい)かどうかが判定される。そして、ステップS81において、画素値Aが画素値B以上であると判定された場合、画素値Aから画素値Bが減算され、その減算値が、差分データCとして出力されて、フレームメモリ31に書き込まれる。
【0150】
一方、ステップS81において、画素値Aが画素値B以上でないと判定された場合(画素値Aが画素値Bよりも小さい場合)、ステップS84に進み、画素値Aから画素値Bが減算される。さらに、ステップS84では、画素値にNビットが割り当てられているとすると、その画素値Aから画素値Bを減算した減算値に、2Nが加算され、その加算値が、差分データCとして出力されて、フレームメモリ31に書き込まれる。
【0151】
次に、図22のフローチャートを参照して、図18の差分復元部81において、図20で説明したような表現の差分データCを、元の画素値Aに復元するための差分復元処理について説明する。
【0152】
この場合、差分復元処理では、まず最初に、ステップS91において、差分データCと、その差分データCを求めるときに参照画素として用いた画素(本実施の形態では、差分データに対応する画素の左隣の画素)の画素値Bとが加算され、その加算値A’が求められる。そして、ステップS92に進み、画素値にNビットが割り当てられているとすると、ステップS91で求められた加算値A’が、2N−1以下であるか否かが判定される。ステップS92において、加算値A’が、2N−1以下であると判定された場合、ステップS93に進み、加算値A’が、元の画素値Aとして出力され、フレームメモリ54に書き込まれる。
【0153】
一方、ステップS92において、加算値A’が、2N−1以下でないと判定された場合(加算値A’がNビットで表現される値より大きい場合)、ステップS94に進み、加算値A’から2Nが減算され、その減算値が、元の画素値Aとされる。そして、ステップS95に進み、差分復元部81において、その元の画素値Aが出力され、フレームメモリ54に書き込まれる。
【0154】
以上のような表現の差分データを用いることで、効率的な埋め込み符号化を、画素値の差分をとることによるデータ量の増加を防止して行うことが可能となる。
【0155】
即ち、上述したような表現の差分データを用いる場合には、その差分データは、0や2N−1付近に集中する。具体的には、図23(A)は、ある1フレームの画像の画素値の度数分布を示しているが、この画像について差分データを演算すると、その差分データの度数分布は、図23(B)に示すようになる。また、図24(A)は、他の1フレームの画像の画素値の度数分布を示しているが、この画像について差分データを演算すると、その差分データの度数分布は、図24(B)に示すようになる。なお、図23および図24における画素値には8ビットが割り当てられている。
【0156】
いずれにしても、隣接する画素どうしについては、一般に、その画素値が近い(連続している)ことから、それらの間の差は、一般に小さく、その結果、図20で説明した表現の差分データは、0や255(=28−1)付近に集中する。
【0157】
従って、この場合、画素値の差分をとることによるデータ量の増加を防止して、多量の付加情報を埋め込むことができる。即ち、差分データに付加情報を埋め込む場合には、変更対象画素値とされる最も度数の高い差分データの数は、画素値そのものに付加情報を埋め込む場合に比較して、膨大な個数となり(図23および図24の実施の形態では、差分データの度数分布において最も高い度数は、画素値の度数分布において最も高い度数の10倍近くになっている)、その結果、そのような膨大な数の差分データに対して、多数の付加情報を埋め込むことが可能となる。
【0158】
次に、図21で説明した差分計算処理によって差分データを求める場合や、図22に示した差分復元処理によって差分データを元の画素値に復元する場合には、画素値どうし等の大小関係を判断し、その判断結果によって、処理の分岐を行う必要がある。このような大小関係の判断および処理の分岐は、処理を行う上で、算術演算や論理演算に比較して時間を要するから、判断および処理の分岐を行わずに、上述のような表現の差分データを求めることができるのが望ましい。
【0159】
そこで、図25は、判断および処理の分岐を行わずに、上述のような表現の差分データを求める図16の差分計算部71の構成例を示している。なお、ここでは、符号化対象の画像を構成する画素に、例えば、8ビットが割り当てられているものとする。
【0160】
フレームメモリ31に記憶された符号化対象の画像を構成する画素のうち、差分データを求めるものである符号化対象画素は、演算器91に供給されるようになっており、また、その差分データを求めるのに参照画素として用いられるもの(本実施の形態では、符号化対象画素の左隣の画素)は、演算器92に供給されるようになっている。
【0161】
演算器91には、上述したように、符号化対象画素が供給される他、符号化対象画素に割り当てられているビット数Nで表される最大の数+1(=2N)(以下、適宜、ビット最大値という)も供給されるようになっている。即ち、本実施の形態では、符号化対象画素のビット数Nは8ビットであるから、演算器91には、(28−1)+1=256が供給されるようになっている。そして、演算器91は、符号化対象画素を、ビット最大値と加算し、その加算値を、演算器92に出力するようになっている。
【0162】
演算器92は、演算器91の出力から、参照画素を減算し、その減算値を、ANDゲート93の一方の入力端子に供給するようになっている。
【0163】
ANDゲート93の他方の入力端子には、ビット最大値−1(従って、Nビットで表される数の最大値(=2N-1))が、演算器92の出力の下位Nビットを除くビットをマスクするためのマスク値として供給されるようになっている。そして、ANDゲート93は、演算器92の出力と、マスク値とのビットごとの論理積を演算することにより、演算器92の出力の下位Nビットを抽出し、その下位Nビットを、符号化対象画素に対する差分データとして出力するようになっている。ここで、本実施の形態では、符号化対象画素のビット数Nは8ビットであるから、ANDゲート93には、255がマスク値として供給されるようになっており、従って、ANDゲート93では、演算器92の出力の下位8ビットが、差分データとして出力されるようになっている。
【0164】
次に、図26のフローチャートを参照して、図25の差分計算部71において行われる、符号化対象画素に対する差分データを求める差分計算処理について説明する。
【0165】
差分計算部71では、まず最初に、ステップS101において、演算器91が、符号化対象画素とビット最大値256(=28)とを加算し、その加算値を、演算器92に出力する。そして、ステップS102に進み、演算器92において、演算器91からの加算値から、参照画素が減算され、その減算値が、ANDゲート93に出力される。ANDゲート93では、ステップS103において、演算器92からの減算値が、マスク値(255)によってマスクされ(減算値とマスク値との、ビットごとの論理積が演算され)、これにより、演算器92が出力する減算値の下位Nビットが抽出される。この下位Nビットは、符号化対象画素に対する差分データとして出力されて、フレームメモリ31に書き込まれ、差分計算処理を終了する。
【0166】
なお、図26の差分計算処理は、フレームメモリ31に記憶された符号化対象の画素すべてを、順次、符号化対象画素として行われる。
【0167】
以上の差分計算処理によれば、符号化対象画素をdataと、参照画素をrefと、差分データをdiffと、それぞれ表すとき、式diff=(2N+data−ref)&(2N−1)にしたがって、Nビットの差分データdiffが求められることになる(&は、ビットごとの論理積を表す)。従って、判断や処理の分岐を行うことなく、差分データdiffを求めることができる。即ち、ビット数が増加しない差分データを、高速に求めることができる。
【0168】
次に、図27は、判断および処理の分岐を行わずに、上述のような表現の差分データを元の画素値に復元する図18の差分復元部81の構成例を示している。
【0169】
フレームメモリ54に記憶された差分データ、およびその差分データを求めるときに参照画素として用いた、既に復元された画素は、演算器101に供給されるようになっている。演算器101は、それらの差分データと参照画素とを加算し、ANDゲート102の一方の入力端子に供給するようになっている。
【0170】
ANDゲート102の他方の入力端子には、ビット最大値−1(従って、Nビットで表される数の最大値(=2N−1))が、演算器101の出力の下位Nビットを除くビットをマスクするためのマスク値として供給されるようになっている。そして、ANDゲート102は、演算器101の出力と、マスク値とのビットごとの論理積を演算することにより、演算器101の出力の下位Nビットを抽出し、その下位Nビットを、差分データを復元した復元画素として出力するようになっている。ここで、本実施の形態では、上述したように、ビット最大値は256(=28)であるから、ANDゲート102には、255がマスク値として供給されるようになっており、その結果、ANDゲート102では、演算器101の出力の下位8ビットが、復元画素として出力されるようになっている。
【0171】
次に、図28のフローチャートを参照して、図27の差分復元部81において行われる、差分データから元の画素値を復元する差分復元処理について説明する。
【0172】
差分復元部81では、まず最初に、ステップS111において、演算器101が、差分データと、参照画素とを加算し、その加算値を、ANDゲート102に供給する。ANDゲート102では、ステップS112において、演算器101からの加算値が、マスク値によってマスクされ(加算値とマスク値との、ビットごとの論理積が演算され)、これにより、演算器101が出力する加算値の下位Nビットが抽出される。この下位Nビットは、差分データを元の画素に復元した復元画素として出力されて、フレームメモリ54に書き込まれ、差分復元処理を終了する。
【0173】
なお、図28の差分復元処理は、フレームメモリ54に記憶された差分データすべてについて、順次行われる。
【0174】
以上の差分復元処理によれば、元の画素をdataと、参照画素をrefと、差分データをdiffと、それぞれ表すとき、式data=(diff+ref)&(2N−1)にしたがって、Nビットの元の画素dataが復元されることになる。従って、判断や処理の分岐を行うことなく、ビット数が増加していない差分データdiffを、元の画素dataに、高速に復元することができる。
【0175】
なお、本実施の形態では、CPU32または52に、コンピュータプログラムを実行させることで、埋め込み符号化処理または埋め込み復号処理をそれぞれ行うようにしたが、これらの処理は、それ専用のハードウェアによって行うことも可能である。
【0176】
さらに、本実施の形態では、ある画素についての差分データを求める場合において、その画素の左隣の画素を、参照画素として用いるようにしたが、その他、例えば、前のフレームの同一位置にある画素や、動き補償を行った後の前のフレームの同一位置にある画素等を、参照画素として用いることも可能である。
【0177】
また、差分データを求める画素の左隣の画素を参照画素として用いる場合には、最左端の画素については、例えば、その左隣に、画素値が0の画素があるものとして、差分データを求めるようにすることができる。
【0178】
次に、上述した一連の処理は、コンピュータに、プログラムをインストールして行わせることが可能である。
【0179】
そこで、図29を参照して、上述した一連の処理を実行するプログラムをコンピュータにインストールし、コンピュータによって実行可能な状態とするために用いられる、そのプログラムが記録されている記録媒体について説明する。
【0180】
プログラムは、図29(A)に示すように、コンピュータ601に内蔵されている記録媒体としてのハードディスク602や半導体メモリ603に予め記録しておくことができる。
【0181】
あるいはまた、プログラムは、図29(B)に示すように、フロッピーディスク611、CD-ROM(Compact Disc Read Only Memory)612,MO(Magneto optical)ディスク613,DVD(Digital Versatile Disc)614、磁気ディスク615、半導体メモリ616などの記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このような記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
【0182】
なお、プログラムは、上述したような記録媒体からコンピュータにインストールする他、図29(C)に示すように、ダウンロードサイト621から、ディジタル衛星放送用の人工衛星622を介して、コンピュータ601に無線で転送したり、LAN(Local Area Network)、インターネットといったネットワーク631を介して、コンピュータ601に有線で転送し、コンピュータ601において、内蔵するハードディスク602などにインストールすることができる。
【0183】
ここで、本明細書において、コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。
【0184】
また、プログラムは、1のコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
【0185】
次に、図30は、図29のコンピュータ601の構成例を示している。
【0186】
コンピュータ601は、図30に示すように、CPU(Central Processing Unit)642を内蔵している。CPU642には、バス641を介して、入出力インタフェース645が接続されており、CPU642は、入出力インタフェース645を介して、ユーザによって、キーボードやマウス等で構成される入力部647が操作されることにより指令が入力されると、それにしたがって、図29(A)の半導体メモリ603に対応するROM(Read Only Memory)643に格納されているプログラムを実行する。あるいは、また、CPU642は、ハードディスク602に格納されているプログラム、衛星622若しくはネットワーク631から転送され、通信部648で受信されてハードディスク602にインストールされたプログラム、ドライブ649に装着されたフロッピディスク611、CD-ROM612、MOディスク613、DVD614、若しくは磁気ディスク615から読み出されてハードディスク602にインストールされたプログラム、または半導体メモリ616から読み出されたプログラムを、RAM(Random Access Memory)644にロードして実行する。これにより、CPU642では、図8や、図13、図17、図19、図21、図22、図26、図28に示したフローチャートにしたがった処理が行われる。そして、CPU642は、その処理結果を、必要に応じて、例えば、入出力インタフェース645を介して、LCD(Liquid CryStal Display)等で構成される表示部646に出力し、あるいは通信部648から送信する。
【0187】
【発明の効果】
本発明の符号化装置および符号化方法、並びに第1の記録媒体によれば、第1のデータの少なくとも一部のデータの度数分布が求められ、その度数分布に応じて、一部のデータの中から、第2のデータにしたがって変更する変更対象データが決定されるとともに、変更対象データを変更する値である変更データが決定される。そして、第2のデータにしたがって、変更対象データを変更データに変更することにより、第1のデータに、第2のデータに関連するデータが埋め込まれる。従って、度数分布の連続性を利用することで、第1および第2のデータを復号することができる。
【0188】
本発明の復号装置および復号方法、並びに第2の記録媒体によれば、符号化データの少なくとも一部のデータの度数分布が求められ、その度数分布に基づき、一部のデータの中から、第2のデータにしたがって変更された変更対象データと、その変更対象データを変更した値である変更データとが決定される。そして、変更データを、変更対象データに変更することにより、符号化データが、第1のデータに復号されるとともに、符号化データに埋め込まれた第2のデータが復号される。従って、劣化のない第1および第2のデータを得ることが可能となる。
【0189】
本発明のデータ処理装置によれば、第1のデータの少なくとも一部のデータの度数分布が求められ、その度数分布に応じて、第1のデータの少なくとも一部のデータの中から、第2のデータにしたがって変更する変更対象データが決定されるとともに、変更対象データを変更する値である変更データが決定される。そして、第2のデータにしたがって、変更対象データを変更データに変更することにより、第1のデータに、第2のデータに関連するデータが埋め込まれ、符号化データとされる。一方、符号化データの少なくとも一部のデータの度数分布が求められ、その度数分布に基づき、符号化データの少なくとも一部のデータの中から、変更対象データおよび変更データが決定される。そして、変更データを、変更対象データに変更することにより、符号化データが、第1のデータに復号されるとともに、符号化データに埋め込まれた第2のデータが復号される。従って、第1のデータに、第2のデータを埋め込んだ符号化データを得て、さらに、その符号化データを、劣化のない第1および第2のデータに復号することが可能となる。
【図面の簡単な説明】
【図1】本発明を適用した画像伝送システムの一実施の形態の構成例を示すブロック図である。
【図2】符号化対象の画像を示す図である。
【図3】相関性を利用した符号化/復号を説明するための図である。
【図4】連続性を利用した符号化/復号を説明するための図である。
【図5】相似性を利用した符号化/復号を説明するための図である。
【図6】図1の埋め込み符号化器3のハードウェアの構成例を示すブロック図である。
【図7】図6の埋め込み符号化器3の機能的構成例を示すブロック図である。
【図8】埋め込み符号化処理を説明するためのフローチャートである。
【図9】実際の画像の画素値の度数分布を示す図である。
【図10】埋め込み符号化処理の結果を説明するための図である。
【図11】図1の埋め込み復号器6のハードウェアの構成例を示すブロック図である。
【図12】図11の埋め込み復号器6の機能的構成例を示すブロック図である。
【図13】埋め込み復号処理を説明するためのフローチャートである。
【図14】図13のステップS22の処理を説明するための図である。
【図15】図13のステップS22の処理を説明するための図である。
【図16】図6の埋め込み符号化器3の他の機能的構成例を示すブロック図である。
【図17】図16の埋め込み符号化器3が行う埋め込み符号化処理を説明するためのフローチャートである。
【図18】図11の埋め込み復号器6の他の機能的構成例を示すブロック図である。
【図19】図18の埋め込み復号器6が行う埋め込み復号処理を説明するためのブロック図である。
【図20】符号化対象画素について、参照画素との差分を表現する差分データを、ビット数を増加させることなく求める方法を説明するための図である。
【図21】図16の差分計算部71による差分計算処理を説明するためのフローチャートである。
【図22】図18の差分復元部81による差分復元処理を説明するためのフローチャートである。
【図23】差分データの度数分布を示す図である。
【図24】差分データの度数分布を示す図である。
【図25】図16の差分計算部71の構成例を示す図である。
【図26】図25の差分計算部71が行う差分計算処理を説明するためのフローチャートである。
【図27】図18の差分復元部81の構成例を示す図である。
【図28】図27の差分復元部81が行う差分復元処理を説明するためのフローチャートである。
【図29】本発明を適用した記録媒体を説明するための図である。
【図30】図29のコンピュータ601の構成例を示すブロック図である。
【符号の説明】
1 画像データベース, 2 付加情報データベース, 3 埋め込み符号化器, 4 記録媒体, 5 伝送媒体, 6 埋め込み復号器, 10 符号化装置, 20 復号装置, 31 フレームメモリ, 32 CPU, 33 プログラムメモリ, 34 メモリ, 35 出力バッファ, 41 度数分布算出部, 42 変更対象画素値/変更値決定部, 43 画素値変更部, 51 入力バッファ, 52 CPU, 53 プログラムメモリ, 54 フレームメモリ, 55 メモリ, 61 度数分布算出部, 62 変更対象画素値/変更値決定部, 63 画素値変更部, 71 差分計算部, 81 差分復元部, 91,92 演算器, 93 ANDゲート, 101 演算器, 102 ANDゲート, 601 コンピュータ, 602 ハードディスク,603 半導体メモリ, 611 フロッピーディスク, 612 CD-ROM,613 MOディスク, 614 DVD, 615 磁気ディスク, 616 半導体メモリ, 621 ダウンロードサイト, 622 衛星, 631 ネットワーク, 641 バス, 642 CPU, 643 ROM, 644 RAM, 645 入出力インタフェース, 646 表示部, 647 入力部, 648 通信部, 649 ドライブ

Claims (15)

  1. 第1のデータを、第2のデータにしたがって符号化する符号化装置であって、
    前記第1のデータの少なくとも一部のデータの度数分布を求める度数分布算出手段と、
    前記度数分布に応じて、前記一部のデータの中から、前記第2のデータにしたがって変更する変更対象データを決定するとともに、前記変更対象データを変更する値である変更データを決定する決定手段と、
    前記第2のデータにしたがって、前記変更対象データを前記変更データに変更することにより、前記第1のデータに、前記第2のデータに関連するデータを埋め込む符号化手段と
    を備えることを特徴とする符号化装置。
  2. 前記第1および第2のデータを入力する入力手段をさらに備える
    ことを特徴とする請求項1に記載の符号化装置。
  3. 前記決定手段は、前記一部のデータの中から、度数が最大のデータを、前記変更対象データとして決定する
    ことを特徴とする請求項1に記載の符号化装置。
  4. 前記決定手段は、前記第1のデータがとり得る値のうち、度数が0の値を、前記変更データとして決定する
    ことを特徴とする請求項1に記載の符号化装置。
  5. 前記決定手段は、複数の値を、前記変更データとして決定する
    ことを特徴とする請求項1に記載の符号化装置。
  6. 前記第1のデータは、複数の画素データから構成される画像データである
    ことを特徴とする請求項1に記載の符号化装置。
  7. 第1のデータを、第2のデータにしたがって符号化する符号化方法であって、
    前記第1のデータの少なくとも一部のデータの度数分布を求める度数分布算出ステップと、
    前記度数分布に応じて、前記一部のデータの中から、前記第2のデータにしたがって変更する変更対象データを決定するとともに、前記変更対象データを変更する値である変更データを決定する決定ステップと、
    前記第2のデータにしたがって、前記変更対象データを前記変更データに変更することにより、前記第1のデータに、前記第2のデータに関連するデータを埋め込む符号化ステップと
    を備えることを特徴とする符号化方法。
  8. 第1のデータを、第2のデータにしたがって符号化する符号化処理を、コンピュータに行わせるプログラムが記録されている記録媒体であって、
    前記第1のデータの少なくとも一部のデータの度数分布を求める度数分布算出ステップと、
    前記度数分布に応じて、前記一部のデータの中から、前記第2のデータにしたがって変更する変更対象データを決定するとともに、前記変更対象データを変更する値である変更データを決定する決定ステップと、
    前記第2のデータにしたがって、前記変更対象データを前記変更データに変更することにより、前記第1のデータに、前記第2のデータに関連するデータを埋め込む符号化ステップと
    を備えるプログラムが記録されている
    ことを特徴とする記録媒体。
  9. 第1のデータを、第2のデータにしたがって符号化した符号化データを復号する復号装置であって、
    前記符号化データの少なくとも一部のデータの度数分布を求める度数分布算出手段と、
    前記度数分布に基づき、前記一部のデータの中から、前記第2のデータにしたがって変更された変更対象データと、その変更対象データを変更した値である変更データとを決定する決定手段と、
    前記変更データを、前記変更対象データに変更することにより、前記符号化データを、前記第1のデータに復号するとともに、前記符号化データに埋め込まれた前記第2のデータを復号する復号手段と
    を備えることを特徴とする復号装置。
  10. 前記決定手段は、前記符号化データの中から、度数の変化が不連続になっているデータを、前記変更対象データまたは変更データとして決定する
    ことを特徴とする請求項9に記載の復号装置。
  11. 前記決定手段は、複数の値を、前記変更データとして決定する
    ことを特徴とする請求項9に記載の復号装置。
  12. 前記第1のデータは、複数の画素データから構成される画像データである
    ことを特徴とする請求項9に記載の復号装置。
  13. 第1のデータを、第2のデータにしたがって符号化した符号化データを復号する復号方法であって、
    前記符号化データの少なくとも一部のデータの度数分布を求める度数分布算出ステップと、
    前記度数分布に基づき、前記一部のデータの中から、前記第2のデータにしたがって変更された変更対象データと、その変更対象データを変更した値である変更データとを決定する決定ステップと、
    前記変更データを、前記変更対象データに変更することにより、前記符号化データを、前記第1のデータに復号するとともに、前記符号化データに埋め込まれた前記第2のデータを復号する復号ステップと
    を備えることを特徴とする復号方法。
  14. 第1のデータを、第2のデータにしたがって符号化した符号化データを復号する復号処理を、コンピュータに行わせるプログラムが記録されている記録媒体であって、
    前記符号化データの少なくとも一部のデータの度数分布を求める度数分布算出ステップと、
    前記度数分布に基づき、前記一部のデータの中から、前記第2のデータにしたがって変更された変更対象データと、その変更対象データを変更した値である変更データとを決定する決定ステップと、
    前記変更データを、前記変更対象データに変更することにより、前記符号化データを、前記第1のデータに復号するとともに、前記符号化データに埋め込まれた前記第2のデータを復号する復号ステップと
    を備えるプログラムが記録されている
    ことを特徴とする記録媒体。
  15. 第1のデータを、第2のデータにしたがって符号化して符号化データとし、その符号化データを復号するデータ処理装置であって、
    前記第1のデータの少なくとも一部のデータの度数分布を求める第1の度数分布算出手段と、
    前記第1のデータのうちの一部のデータの度数分布に応じて、前記第1のデータの少なくとも一部のデータの中から、前記第2のデータにしたがって変更する変更対象データを決定するとともに、前記変更対象データを変更する値である変更データを決定する第1の決定手段と、
    前記第2のデータにしたがって、前記変更対象データを前記変更データに変更することにより、前記第1のデータに、前記第2のデータに関連するデータを埋め込み、前記符号化データとする符号化手段と、
    前記符号化データの少なくとも一部のデータの度数分布を求める第2の度数分布算出手段と、
    前記符号化データのうちの一部のデータの度数分布に基づき、前記符号化データの少なくとも一部のデータの中から、前記変更対象データおよび変更データを決定する第2の決定手段と、
    前記変更データを、前記変更対象データに変更することにより、前記符号化データを、前記第1のデータに復号するとともに、前記符号化データに埋め込まれた前記第2のデータを復号する復号手段と
    を備えることを特徴とするデータ処理装置。
JP28419999A 1998-10-07 1999-10-05 符号化装置および符号化方法、復号装置および復号方法、記録媒体、並びにデータ処理装置 Expired - Fee Related JP4143884B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP28419999A JP4143884B2 (ja) 1998-10-07 1999-10-05 符号化装置および符号化方法、復号装置および復号方法、記録媒体、並びにデータ処理装置
US09/413,983 US6738492B1 (en) 1998-10-07 1999-10-07 Coding apparatus and method, decoding apparatus and method, data processing system, storage medium, and signal

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP10-285309 1998-10-07
JP28530998 1998-10-07
JP11-129919 1999-05-11
JP12991999 1999-05-11
JP28419999A JP4143884B2 (ja) 1998-10-07 1999-10-05 符号化装置および符号化方法、復号装置および復号方法、記録媒体、並びにデータ処理装置

Publications (2)

Publication Number Publication Date
JP2001028546A JP2001028546A (ja) 2001-01-30
JP4143884B2 true JP4143884B2 (ja) 2008-09-03

Family

ID=27316025

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28419999A Expired - Fee Related JP4143884B2 (ja) 1998-10-07 1999-10-05 符号化装置および符号化方法、復号装置および復号方法、記録媒体、並びにデータ処理装置

Country Status (2)

Country Link
US (1) US6738492B1 (ja)
JP (1) JP4143884B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008236777A (ja) * 1998-10-07 2008-10-02 Sony Corp 復号装置および復号方法、記録媒体、並びにデータ処理装置

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6965697B1 (en) * 1998-07-15 2005-11-15 Sony Corporation Coding apparatus and method, decoding apparatus and method, data processing system, storage medium, and signal
FR2841422B1 (fr) * 2002-06-19 2004-11-12 Canon Kk Insertion et extraction d'un message dans une image
US7356158B2 (en) * 2002-12-17 2008-04-08 New Jersey Institute Of Technology Methods and apparatus for lossless data hiding
US20060257001A1 (en) * 2003-09-12 2006-11-16 Minne Van Der Veen Methods and apparatus for tamper detection in watermarking systems
JP5031793B2 (ja) * 2009-05-15 2012-09-26 株式会社日立製作所 改ざん検出システム、透かし情報埋込装置、改ざん検出装置、透かし情報埋込方法、および改ざん検出方法
US9479826B2 (en) * 2011-04-08 2016-10-25 Her Majesty The Queen In Right Of Canada As Represented By The Minister Of Industry, Through The Communications Research Centre Canada Method and system for wireless data communication
JPWO2014091943A1 (ja) * 2012-12-14 2017-01-05 ソニー株式会社 画像処理装置および方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5778102A (en) * 1995-05-17 1998-07-07 The Regents Of The University Of California, Office Of Technology Transfer Compression embedding
US5727092A (en) * 1995-05-17 1998-03-10 The Regents Of The University Of California Compression embedding
JP3649537B2 (ja) 1996-11-27 2005-05-18 日本アイ・ビー・エム株式会社 データハイディング方法及びデータ抽出方法
CA2227381C (en) 1997-02-14 2001-05-29 Nec Corporation Image data encoding system and image inputting apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008236777A (ja) * 1998-10-07 2008-10-02 Sony Corp 復号装置および復号方法、記録媒体、並びにデータ処理装置

Also Published As

Publication number Publication date
JP2001028546A (ja) 2001-01-30
US6738492B1 (en) 2004-05-18

Similar Documents

Publication Publication Date Title
JP4822304B2 (ja) 画像処理装置および画像処理方法、並びに記録媒体
JP4147700B2 (ja) 符号化装置および符号化方法、並びに記録媒体
JP3924967B2 (ja) 符号化装置および方法、復号装置および方法、記録媒体、並びにデータ処理システム
US6859155B2 (en) Data processing device
JP3991249B2 (ja) 符号化装置および符号化方法、復号装置および復号方法、情報処理装置および情報処理方法、並びに記録媒体
JP4143884B2 (ja) 符号化装置および符号化方法、復号装置および復号方法、記録媒体、並びにデータ処理装置
US6965697B1 (en) Coding apparatus and method, decoding apparatus and method, data processing system, storage medium, and signal
JP4182603B2 (ja) 符号化装置および符号化方法、復号装置および復号方法、記録媒体、並びにデータ処理装置
JP4556147B2 (ja) 復号装置および復号方法、記録媒体、並びにデータ処理装置
JP2002278748A (ja) データ処理装置およびデータ処理方法、プログラムおよびプログラム記録媒体、並びに符号化データおよびデータ記録媒体
KR100711012B1 (ko) 코딩 장치 및 방법, 디코딩 장치 및 방법, 데이터 처리 시스템, 기억 매체 및 신호
JP2001285622A (ja) 埋め込み装置および埋め込み方法、復号装置および復号方法、並びに記録媒体
JP4374712B2 (ja) データ処理装置およびデータ処理方法、並びに記録媒体
JP4264606B2 (ja) データ処理装置およびデータ処理方法
JP4548434B2 (ja) データ処理装置およびデータ処理方法、並びに記録媒体
JP4099687B2 (ja) 画像処理装置および画像処理方法、並びに媒体
JP4092608B2 (ja) 画像処理装置および画像処理方法、並びにプログラム格納媒体
JP4716086B2 (ja) 符号化装置および方法、記録媒体、プログラム、並びに画像処理システム
JP3944821B2 (ja) データ処理装置、データ処理方法、およびプログラム
JP2005333569A (ja) 画像符号化装置及び画像復号化装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060221

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080519

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080522

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080604

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110627

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120627

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130627

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees