[go: up one dir, main page]

JP2003125194A - Data processing device and data processing method, and program and recording medium - Google Patents

Data processing device and data processing method, and program and recording medium

Info

Publication number
JP2003125194A
JP2003125194A JP2001320766A JP2001320766A JP2003125194A JP 2003125194 A JP2003125194 A JP 2003125194A JP 2001320766 A JP2001320766 A JP 2001320766A JP 2001320766 A JP2001320766 A JP 2001320766A JP 2003125194 A JP2003125194 A JP 2003125194A
Authority
JP
Japan
Prior art keywords
data
embedded
embedding
operation rule
image
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.)
Granted
Application number
JP2001320766A
Other languages
Japanese (ja)
Other versions
JP3940986B2 (en
Inventor
Tetsujiro Kondo
哲二郎 近藤
Naoki Kobayashi
小林  直樹
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 JP2001320766A priority Critical patent/JP3940986B2/en
Publication of JP2003125194A publication Critical patent/JP2003125194A/en
Application granted granted Critical
Publication of JP3940986B2 publication Critical patent/JP3940986B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Television Systems (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

(57)【要約】 【課題】 より多くのデータを埋め込む。 【解決手段】 埋め込み符号化器3は、画像データに埋
め込まれる被埋め込みデータに対応して、その画像デー
タの水平ラインと垂直ラインをローテーションし、さら
に、その垂直ラインを構成する画素の画素値を表すビッ
ト列の各ビットごとのビットプレーンを入れ替えるビッ
トプレーンスワップを行うことで、画像データに被埋め
込みデータを埋め込んだ埋め込み符号化データを生成す
る。復元器6は、埋め込み符号化データの垂直ラインを
ビットプレーンスワップするとともに、ローテーション
することにより、水平ラインと垂直ラインがローテーシ
ョンされた画像データを復元し、さらに、その画像デー
タの垂直ラインと水平ラインをローテーションすること
で、元の画像データと、そこに埋め込まれていた被埋め
込みデータを復元する。
(57) [Summary] [Problem] Embed more data. SOLUTION: An embedding encoder 3 rotates a horizontal line and a vertical line of the image data in response to data to be embedded which is embedded in the image data, and furthermore, converts a pixel value of a pixel forming the vertical line into a pixel value. By performing a bit plane swap for exchanging a bit plane for each bit of the bit string to be represented, embedded encoded data in which the data to be embedded is embedded in the image data is generated. The decompressor 6 performs bit plane swapping and rotation of the vertical line of the embedded coded data to restore the image data in which the horizontal line and the vertical line have been rotated. To restore the original image data and the embedded data embedded therein.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、データ処理装置お
よびデータ処理方法、並びにプログラムおよび記録媒体
に関し、特に、例えば、画像データに対して、多くのデ
ータを埋め込むとともに、そのデータが埋め込まれた画
像データと、埋め込んだデータを復元すること等ができ
るようにするデータ処理装置およびデータ処理方法、並
びにプログラムおよび記録媒体に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data processing device, a data processing method, a program, and a recording medium, and particularly to, for example, embedding a large amount of data in image data and an image in which the data is embedded. The present invention relates to a data processing device and a data processing method, a program, and a recording medium that enable data and embedded data to be restored.

【0002】[0002]

【従来の技術】例えば、情報としてのあるデータ系列に
対して、そのデータ量を増加させることなく、他の情報
としての他のデータ系列を埋め込む手法としては、例え
ば、ディジタル音声データ(オーディオデータ)の最下
位ビットや、下位2ビットなどを、埋め込む情報に変換
するものなどがある。この手法は、ディジタル音声デー
タの下位ビットが、その音質にあまり影響を与えないこ
とを利用し、その下位ビットを、単に、他のデータ系列
を構成するデータに置き換えるものであり、従って、再
生時には、他のデータ系列が埋め込まれたディジタル音
声データは、その下位ビットを元に戻さずに、そのまま
出力される。即ち、この場合、他のデータ系列が埋め込
まれた下位ビットを、元に戻すのは困難であり、また、
下位ビットは、音質に、あまり影響を与えないことか
ら、ディジタル音声データは、他のデータ系列が埋め込
まれた状態で出力される。
2. Description of the Related Art For example, as a method of embedding another data series as other information into a certain data series as information without increasing the data amount, for example, digital audio data (audio data) There is one that converts the least significant bit, the least significant 2 bits, and the like into embedded information. This method takes advantage of the fact that the lower bits of digital audio data do not significantly affect the sound quality, and simply replaces the lower bits with the data that makes up another data sequence, and therefore, during playback, The digital audio data in which other data series are embedded is output as it is without returning the lower bits. That is, in this case, it is difficult to restore the lower bits in which other data series are embedded, and
Since the lower bits do not affect the sound quality so much, the digital audio data is output in a state where other data series are embedded.

【0003】しかしながら、以上のような手法によれ
ば、元の音声データと異なる音声データが出力される。
即ち、元の音声データに埋め込まれた他のデータは、元
の音声データにとっては、ノイズとなるから、他のデー
タが埋め込まれた音声データは、その音質が劣化したも
のとなる。
However, according to the method described above, audio data different from the original audio data is output.
That is, since the other data embedded in the original audio data becomes noise with respect to the original audio data, the sound quality of the audio data embedded with the other data is deteriorated.

【0004】また、音声データの他、画像データにも、
上述の音声データにおける場合と同様にして、他のデー
タの埋め込みが可能であるが、この場合も、他のデータ
が埋め込まれた画像データは、その画質が劣化したもの
となる。
In addition to voice data, image data
It is possible to embed other data in the same manner as in the case of the audio data described above, but in this case as well, the image data in which the other data is embedded has deteriorated image quality.

【0005】[0005]

【発明が解決しようとする課題】そこで、本件出願人
は、画質を劣化させることなく(画質の劣化を最低限に
抑えて)、元の画像データと、それに埋め込まれていた
他のデータを復元することのできる埋め込み手法につい
て、先に提案している。
Therefore, the applicant of the present invention restores the original image data and other data embedded in the original image data without deteriorating the image quality (minimizing the deterioration of the image quality). We have previously proposed a possible embedding method.

【0006】即ち、いま、他のデータを埋め込む対象と
なる画像データ等を、埋め込み対象データと、埋め込み
対象データに埋め込まれる他のデータを、被埋め込みデ
ータと、埋め込み対象データに対して被埋め込みデータ
を埋め込むことにより得られるデータを、埋め込み符号
化データと、それぞれいうものとする。
That is, now, image data to be embedded with other data is embedded data, other data to be embedded in the embedded data, embedded data, and embedded data with respect to the embedded data. Data obtained by embedding is referred to as embedded coded data.

【0007】この場合、被埋め込みデータを、埋め込み
対象データに埋め込む埋め込み処理では、例えば、図1
Aに示すように、埋め込み対象データとしての画像デー
タを構成する水平ラインが、その上方向から下方向に、
順次、注目ラインとされる。そして、注目ラインが、被
埋め込みデータに対応する分だけ、例えば、右方向にロ
ーテーションされることで、その被埋め込みデータが、
埋め込み対象データとしての画像データ(の注目ライ
ン)に埋め込まれる。ここで、図1Aは、被埋め込みデ
ータとして、「2」が埋め込まれる場合を示しており、
注目ラインが、被埋め込みデータ「2」に対応して、2
画素分だけ、右方向にローテーションされている。
In this case, in the embedding process for embedding the data to be embedded in the embedding target data, for example, as shown in FIG.
As shown in A, the horizontal line that constitutes the image data as the embedding target data is
Sequentially, the line of interest. Then, the line of interest is rotated to the right by an amount corresponding to the embedded data, so that the embedded data becomes
It is embedded in (the attention line of) the image data as the embedding target data. Here, FIG. 1A shows a case where “2” is embedded as embedded data,
The line of interest corresponds to the embedded data “2” and is 2
It is rotated to the right by the amount of pixels.

【0008】埋め込み処理では、上述のようにして、埋
め込み対象データとしての画像データが、被埋め込みデ
ータに対応してローテーションされることにより、被埋
め込みデータが、埋め込み対象データに埋め込まれ、こ
れにより、埋め込み符号化データが生成される。この埋
め込み符号化データは、埋め込み対象データとしての画
像データの水平ラインを水平方向(ここでは右方向)に
ローテーションしたものであるから、そのデータ量は、
埋め込み対象データと同一であり、従って、上述の埋め
込み処理によれば、埋め込み対象データと被埋め込みデ
ータは、埋め込み対象データのデータ量に圧縮されるこ
とになる。
In the embedding process, as described above, the image data as the embedding target data is rotated corresponding to the embedding target data, so that the embedding target data is embedded in the embedding target data. Embedded encoded data is generated. Since this embedded coded data is obtained by rotating the horizontal line of the image data as the embedding target data in the horizontal direction (here, to the right), the data amount is
It is the same as the embedding target data. Therefore, according to the embedding process described above, the embedding target data and the embedded data are compressed to the data amount of the embedding target data.

【0009】以上のような埋め込み符号化データを、元
の埋め込み対象データと被埋め込みデータに復元する復
元処理では、例えば、図1Bに示すように、埋め込み符
号化データとされた画像データを構成する水平ライン
が、その上方向から下方向に、順次、注目ラインとされ
る。さらに、注目ラインの1ライン上の水平ラインが基
準ラインとされ、注目ラインが、埋め込み処理の場合と
は反対方向の左方向に、1画素ずつローテーションされ
る。また、注目ラインをローテーションしながら、その
注目ラインを構成する各画素と、基準ラインを構成する
対応する画素との相関の総和などが、注目ラインと基準
ラインの相関として計算され、その相関を最大にするロ
ーテーション量が求められる。そして、基準ラインが、
相関を最大にするローテーション量だけローテーション
されることにより元の位置に戻されるとともに、そのロ
ーテーション量が、その注目ラインに埋め込まれていた
被埋め込みデータとして復元される。
In the restoration processing for restoring the embedded coded data as described above into the original embedding target data and the embedded data, for example, as shown in FIG. 1B, image data that is embedded coded data is formed. The horizontal lines are sequentially set as the attention line from the upper side to the lower side. Further, a horizontal line one line above the line of interest is used as a reference line, and the line of interest is rotated pixel by pixel in the left direction, which is the opposite direction to the case of the embedding process. Also, while rotating the line of interest, the sum of the correlation between each pixel forming the line of interest and the corresponding pixel forming the reference line is calculated as the correlation between the line of interest and the reference line, and the correlation is maximized. The amount of rotation to be calculated is required. And the reference line is
It is returned to the original position by being rotated by the rotation amount that maximizes the correlation, and the rotation amount is restored as the embedded data embedded in the line of interest.

【0010】復元処理では、上述のようにして、埋め込
み符号化データとしての画像データを構成する各水平ラ
インが、基準ラインとの相関を最大にする位置にローテ
ーションされることにより、埋め込み対象データとして
の画像データが復元されるとともに、各水平ラインのロ
ーテーション量に基づいて、埋め込み符号化データに埋
め込まれていた被埋め込みデータが復元される。
In the restoration process, as described above, each horizontal line forming the image data as the embedded coded data is rotated to a position where the correlation with the reference line is maximized, so that the data to be embedded is selected. Image data is restored, and the embedded data embedded in the embedded coded data is restored based on the rotation amount of each horizontal line.

【0011】以上のように、先に提案した埋め込み処理
および復元処理によれば、埋め込み対象データと被埋め
込みデータを、埋め込み対象データのデータ量となる埋
め込み符号化データに圧縮すること、即ち、被埋め込み
データの分だけ圧縮することができ、さらに、そのよう
に圧縮された埋め込み符号化データを、元の埋め込み対
象データと被埋め込みデータに復元することができる。
As described above, according to the embedding process and the restoring process proposed above, the embedding target data and the embedding data are compressed into the embedding coded data having the data amount of the embedding target data, that is, The embedded data can be compressed by the amount corresponding to the embedded data, and the embedded coded data thus compressed can be restored to the original data to be embedded and the embedded data.

【0012】ところで、より多くの被埋め込みデータを
埋め込むことができれば便利であるが、ラインをローテ
ーションするという操作ルールだけでは、画像データに
埋め込むことのできる被埋め込みデータのデータ量は、
その画像データを構成するライン数による制限を受け
る。
By the way, although it is convenient if more embedded data can be embedded, the data amount of the embedded data that can be embedded in the image data is only by the operation rule of rotating the line.
The number of lines forming the image data is limited.

【0013】本発明は、このような状況に鑑みてなされ
たものであり、埋め込み対象データに対して、より多く
の被埋め込みデータを埋め込む埋め込み処理と、その埋
め込み処理によって得られた埋め込み符号化データを、
元の埋め込み対象データと被埋め込みデータに復元する
復元処理を行うことができるようにするものである。
The present invention has been made in view of such a situation, and embeds more embedded data in embedding target data, and embedded coded data obtained by the embedding process. To
The restoration processing is performed to restore the original embedding target data and the embedded data.

【0014】[0014]

【課題を解決するための手段】本発明の第1のデータ処
理装置は、情報が有するエネルギの偏りを利用して他の
情報が埋め込まれた情報が元の情報に復元されるように
操作を行う第1の操作ルールにしたがい、埋め込み対象
データを、任意の被埋め込みデータに対応して操作し、
埋め込み対象データに任意の被埋め込みデータを埋め込
んだ第1の操作ルールによる埋め込み符号化データを生
成する第1の埋め込み手段と、第1の操作ルールとは異
なる第2の操作ルールにしたがい、第1の操作ルールに
よる埋め込み符号化データを、他の任意の被埋め込みデ
ータに対応して操作し、第1の操作ルールによる埋め込
み符号化データに他の任意の被埋め込みデータを埋め込
んだ第2の操作ルールによる埋め込み符号化データを生
成する第2の埋め込み手段とを備えることを特徴とす
る。
The first data processing apparatus of the present invention performs an operation so that the information embedded with other information is restored to the original information by utilizing the energy bias of the information. According to the first operation rule to be performed, the embedding target data is manipulated in correspondence with any embedded data,
According to a first embedding means for generating embedded coded data according to the first operation rule in which arbitrary embedding data is embedded in the embedding target data, and a second operation rule different from the first operation rule, the first embedding means The second operation rule in which the embedded coded data according to the operation rule of No. 1 is operated corresponding to any other embedded data, and the embedded coded data according to the first operation rule is embedded with any other embedded data. And a second embedding means for generating embedded coded data according to.

【0015】本発明の第1のデータ処理方法は、情報が
有するエネルギの偏りを利用して他の情報が埋め込まれ
た情報が元の情報に復元されるように操作を行う第1の
操作ルールにしたがい、埋め込み対象データを、任意の
被埋め込みデータに対応して操作し、埋め込み対象デー
タに任意の被埋め込みデータを埋め込んだ第1の操作ル
ールによる埋め込み符号化データを生成する第1の埋め
込みステップと、第1の操作ルールとは異なる第2の操
作ルールにしたがい、第1の操作ルールによる埋め込み
符号化データを、他の任意の被埋め込みデータに対応し
て操作し、第1の操作ルールによる埋め込み符号化デー
タに他の任意の被埋め込みデータを埋め込んだ第2の操
作ルールによる埋め込み符号化データを生成する第2の
埋め込みステップとを備えることを特徴とする。
The first data processing method of the present invention is a first operation rule for performing an operation so that information having other information embedded therein is restored to the original information by utilizing the energy bias of the information. According to the first embedding step, the embedding target data is manipulated corresponding to the arbitrary embedding data, and the embedding coded data is generated according to the first operation rule in which the embedding target data is embedded with the arbitrary embedding data. And according to a second operation rule different from the first operation rule, the embedded coded data according to the first operation rule is operated corresponding to any other embedded data, and the first operation rule is used. Second embedding step of generating embedded coded data according to the second operation rule in which other arbitrary embedded data is embedded in the embedded coded data Characterized in that it comprises a.

【0016】本発明の第1のプログラムは、情報が有す
るエネルギの偏りを利用して他の情報が埋め込まれた情
報が元の情報に復元されるように操作を行う第1の操作
ルールにしたがい、埋め込み対象データを、任意の被埋
め込みデータに対応して操作し、埋め込み対象データに
任意の被埋め込みデータを埋め込んだ第1の操作ルール
による埋め込み符号化データを生成する第1の埋め込み
ステップと、第1の操作ルールとは異なる第2の操作ル
ールにしたがい、第1の操作ルールによる埋め込み符号
化データを、他の任意の被埋め込みデータに対応して操
作し、第1の操作ルールによる埋め込み符号化データに
他の任意の被埋め込みデータを埋め込んだ第2の操作ル
ールによる埋め込み符号化データを生成する第2の埋め
込みステップとを備えることを特徴とする。
The first program of the present invention follows the first operation rule for performing an operation so that the information in which other information is embedded is restored to the original information by utilizing the energy bias of the information. A first embedding step of operating the embedding target data in correspondence with arbitrary embedding data and generating embedding coded data according to the first operation rule in which the embedding target data embedding the arbitrary embedding data, According to a second operation rule different from the first operation rule, the embedded coded data by the first operation rule is operated corresponding to any other embedded data, and the embedded code by the first operation rule is operated. A second embedding step of generating embedded encoded data according to a second operation rule in which other arbitrary embedded data is embedded in the encoded data. Characterized in that it obtain.

【0017】本発明の第1の記録媒体は、情報が有する
エネルギの偏りを利用して他の情報が埋め込まれた情報
が元の情報に復元されるように操作を行う第1の操作ル
ールにしたがい、埋め込み対象データを、任意の被埋め
込みデータに対応して操作し、埋め込み対象データに任
意の被埋め込みデータを埋め込んだ第1の操作ルールに
よる埋め込み符号化データを生成する第1の埋め込みス
テップと、第1の操作ルールとは異なる第2の操作ルー
ルにしたがい、第1の操作ルールによる埋め込み符号化
データを、他の任意の被埋め込みデータに対応して操作
し、第1の操作ルールによる埋め込み符号化データに他
の任意の被埋め込みデータを埋め込んだ第2の操作ルー
ルによる埋め込み符号化データを生成する第2の埋め込
みステップとを備えるプログラムが記録されていること
を特徴とする。
The first recording medium of the present invention has the first operation rule for performing an operation so that the information in which other information is embedded is restored to the original information by utilizing the bias of the energy of the information. Accordingly, a first embedding step of operating the embedding target data in correspondence with arbitrary embedding data, and generating embedded coded data according to the first operation rule in which the embedding target data embedding the arbitrary embedding data, , According to a second operation rule different from the first operation rule, the embedded coded data according to the first operation rule is operated corresponding to any other embedded data, and embedded according to the first operation rule. A second embedding step of generating embedded coded data according to a second operation rule in which other arbitrary embedded data is embedded in the encoded data. Characterized in that that program is recorded.

【0018】本発明の第2のデータ処理装置は、第2の
操作ルールによる埋め込み符号化データを、第2の操作
ルールにしたがって操作するとともに、第1の操作ルー
ルにしたがって操作し、その操作によって得られるデー
タのエネルギの偏りを利用して、第1の操作ルールによ
る埋め込み符号化データと他の任意の被埋め込みデータ
を復元する第1の復元手段と、第1の操作ルールによる
埋め込み符号化データを、第1の操作ルールにしたがっ
て操作し、その操作によって得られるデータのエネルギ
の偏りを利用して、埋め込み対象データと任意の被埋め
込みデータを復元する第2の復元手段とを備えることを
特徴とする。
The second data processing apparatus of the present invention operates the embedded coded data according to the second operation rule according to the second operation rule, and also operates according to the first operation rule. First restoration means for restoring the embedded coded data according to the first operation rule and other arbitrary data to be embedded by utilizing the energy bias of the obtained data, and the embedded coded data according to the first operation rule According to the first operation rule, and utilizing the bias of the energy of the data obtained by the operation, embedding target data and second restoring means for restoring arbitrary embedded data. And

【0019】本発明の第2のデータ処理方法は、第2の
操作ルールによる埋め込み符号化データを、第2の操作
ルールにしたがって操作するとともに、第1の操作ルー
ルにしたがって操作し、その操作によって得られるデー
タのエネルギの偏りを利用して、第1の操作ルールによ
る埋め込み符号化データと他の任意の被埋め込みデータ
を復元する第1の復元ステップと、第1の操作ルールに
よる埋め込み符号化データを、第1の操作ルールにした
がって操作し、その操作によって得られるデータのエネ
ルギの偏りを利用して、埋め込み対象データと任意の被
埋め込みデータを復元する第2の復元ステップとを備え
ることを特徴とする。
According to the second data processing method of the present invention, the embedded coded data according to the second operation rule is operated according to the second operation rule, and also operated according to the first operation rule. A first restoration step of restoring the embedded coded data according to the first operation rule and any other embedded data using the bias of the energy of the obtained data, and the embedded coded data according to the first operation rule According to the first operation rule, and utilizing the energy bias of the data obtained by the operation, the second restoration step of restoring the embedding target data and arbitrary embedded data. And

【0020】本発明の第2のプログラムは、第2の操作
ルールによる埋め込み符号化データを、第2の操作ルー
ルにしたがって操作するとともに、第1の操作ルールに
したがって操作し、その操作によって得られるデータの
エネルギの偏りを利用して、第1の操作ルールによる埋
め込み符号化データと他の任意の被埋め込みデータを復
元する第1の復元ステップと、第1の操作ルールによる
埋め込み符号化データを、第1の操作ルールにしたがっ
て操作し、その操作によって得られるデータのエネルギ
の偏りを利用して、埋め込み対象データと任意の被埋め
込みデータを復元する第2の復元ステップとを備えるこ
とを特徴とする。
The second program of the present invention is obtained by operating the embedded coded data according to the second operation rule according to the second operation rule and the first operation rule. A first restoration step of restoring the embedded coded data according to the first operation rule and any other embedded data by utilizing the bias of the energy of the data, and the embedded coded data according to the first operation rule, It is characterized by comprising a second restoring step of restoring data to be embedded and arbitrary embedded data by operating in accordance with the first operation rule and utilizing the energy bias of the data obtained by the operation. .

【0021】本発明の第2の記録媒体は、第2の操作ル
ールによる埋め込み符号化データを、第2の操作ルール
にしたがって操作するとともに、第1の操作ルールにし
たがって操作し、その操作によって得られるデータのエ
ネルギの偏りを利用して、第1の操作ルールによる埋め
込み符号化データと他の任意の被埋め込みデータを復元
する第1の復元ステップと、第1の操作ルールによる埋
め込み符号化データを、第1の操作ルールにしたがって
操作し、その操作によって得られるデータのエネルギの
偏りを利用して、埋め込み対象データと任意の被埋め込
みデータを復元する第2の復元ステップとを備えるプロ
グラムが記録されていることを特徴とする。
The second recording medium of the present invention operates the embedded coded data according to the second operation rule according to the second operation rule and the first operation rule, and obtains the operation. The first restoration step of restoring the embedded coded data according to the first operation rule and any other embedded data by using the bias of the energy of the stored data, and the embedded coded data according to the first operation rule. , A program including an embedding target data and a second restoring step of restoring arbitrary embedded data by operating the first operation rule and utilizing the energy bias of the data obtained by the operation. It is characterized by

【0022】本発明の第1のデータ処理装置およびデー
タ処理方法、並びにプログラムおよび記録媒体において
は、情報が有するエネルギの偏りを利用して他の情報が
埋め込まれた情報が元の情報に復元されるように操作を
行う第1の操作ルールにしたがい、埋め込み対象データ
が、任意の被埋め込みデータに対応して操作され、埋め
込み対象データに任意の被埋め込みデータを埋め込んだ
第1の操作ルールによる埋め込み符号化データが生成さ
れる。そして、第1の操作ルールとは異なる第2の操作
ルールにしたがい、第1の操作ルールによる埋め込み符
号化データが、他の任意の被埋め込みデータに対応して
操作され、第1の操作ルールによる埋め込み符号化デー
タに他の任意の被埋め込みデータを埋め込んだ第2の操
作ルールによる埋め込み符号化データが生成される。
In the first data processing device and data processing method, the program and the recording medium of the present invention, the information in which other information is embedded is restored to the original information by utilizing the energy bias of the information. According to the first operation rule for performing the operation as described above, the embedding target data is manipulated corresponding to the arbitrary embedding data, and the embedding is performed according to the first operation rule in which the embedding target data embeds the arbitrary embedding data. Encoded data is generated. Then, according to the second operation rule different from the first operation rule, the embedded coded data according to the first operation rule is operated corresponding to any other embedded data, and the first operation rule is applied. The embedded coded data according to the second operation rule is generated by embedding other arbitrary embedded data in the embedded coded data.

【0023】本発明の第2のデータ処理装置およびデー
タ処理方法、並びにプログラムおよび記録媒体において
は、第2の操作ルールによる埋め込み符号化データが、
第2の操作ルールにしたがって操作されるとともに、第
1の操作ルールにしたがって操作され、その操作によっ
て得られるデータのエネルギの偏りを利用して、第1の
操作ルールによる埋め込み符号化データと他の任意の被
埋め込みデータが復元される。そして、第1の操作ルー
ルによる埋め込み符号化データが、第1の操作ルールに
したがって操作され、その操作によって得られるデータ
のエネルギの偏りを利用して、埋め込み対象データと任
意の被埋め込みデータが復元される。
In the second data processing device and data processing method, and the program and the recording medium of the present invention, the embedded coded data according to the second operation rule is:
In addition to being operated according to the second operation rule, the operation is performed according to the first operation rule, and by utilizing the energy bias of the data obtained by the operation, the embedded coded data and other Any embedded data is restored. Then, the embedded coded data according to the first operation rule is operated according to the first operation rule, and the embedding target data and any embedded data are restored by utilizing the energy bias of the data obtained by the operation. To be done.

【0024】[0024]

【発明の実施の形態】図2は、本発明を適用した埋め込
み符号化/復号システムの一実施の形態の構成例を示し
ている。
FIG. 2 shows a configuration example of an embodiment of an embedded coding / decoding system to which the present invention is applied.

【0025】この埋め込み符号化/復号システムは、符
号化装置11および復号装置12で構成されている。符
号化装置11は、埋め込み対象データとしての、例え
ば、画像データに対して、被埋め込みデータを埋め込む
ことにより、埋め込み符号化データを生成して出力し、
復号装置12は、その埋め込み符号化データを、元の埋
め込み対象データと被埋め込みデータに復号する。
The embedded coding / decoding system is composed of a coding device 11 and a decoding device 12. The encoding device 11 generates and outputs embedded coded data by embedding embedding data in image data as embedding target data, for example.
The decoding device 12 decodes the embedded coded data into original embedding target data and embedded data.

【0026】即ち、符号化装置11は、埋め込み対象デ
ータベース1、被埋め込みデータベース2、および埋め
込み符号化器3で構成されている。
That is, the encoding device 11 is composed of an embedding target database 1, an embedding database 2 and an embedding encoder 3.

【0027】埋め込み対象データベース1は、埋め込み
対象データとしての、例えばディジタル画像データを記
憶している。そして、埋め込み対象データベース1から
は、そこに記憶されている画像データが読み出され、埋
め込み符号化器3に供給される。
The embedding target database 1 stores, for example, digital image data as embedding target data. Then, the image data stored therein is read from the embedding target database 1 and supplied to the embedding encoder 3.

【0028】また、被埋め込みデータベース2は、被埋
め込みデータ(ディジタルデータ)を記憶している。そ
して、被埋め込みデータベース2からも、そこに記憶さ
れている被埋め込みデータが読み出され、埋め込み符号
化器3に供給される。
The embedded database 2 stores embedded data (digital data). Then, the embedded data stored therein is also read from the embedded database 2 and supplied to the embedded encoder 3.

【0029】埋め込み符号化器3では、埋め込み対象デ
ータベース1からの画像データ、および被埋め込みデー
タベース2からの被埋め込みデータが受信される。さら
に、埋め込み符号化器3は、埋め込み対象データベース
1からの画像データが有するエネルギの偏りを利用して
復号を行うことができるように、その画像データを、被
埋め込みデータベース2からの被埋め込みデータに対応
して操作することで、画像データに、被埋め込みデータ
を埋め込み、埋め込み符号化データを生成して出力す
る。埋め込み符号化器3が出力する埋め込み符号化デー
タは、例えば、半導体メモリ、光磁気ディスク、磁気デ
ィスク、光ディスク、磁気テープ、相変化ディスクなど
でなる記録媒体4に記録され、あるいは、また、例え
ば、地上波、衛星回線、CATV(Cable Television)
網、インターネット、公衆回線などでなる伝送媒体5を
介して伝送され、復号装置12に提供される。
The embedded encoder 3 receives the image data from the embedding target database 1 and the embedded data from the embedded database 2. Further, the embedded encoder 3 converts the image data into the embedded data from the embedded database 2 so that the image data from the embedded database 1 can be decoded by utilizing the bias of the energy of the image data. By performing the corresponding operation, the embedded data is embedded in the image data, and the embedded coded data is generated and output. The embedded coded data output by the embedded encoder 3 is recorded on a recording medium 4 such as a semiconductor memory, a magneto-optical disk, a magnetic disk, an optical disk, a magnetic tape, a phase change disk, or, for example, Ground wave, satellite line, CATV (Cable Television)
The data is transmitted via the transmission medium 5 such as a network, the Internet, or a public line, and provided to the decoding device 12.

【0030】復号装置12は、復元器6で構成され、そ
こでは、記録媒体4または伝送媒体5を介して提供され
る埋め込み符号化データが受信される。さらに、復元器
6は、その埋め込み符号化データを、埋め込み対象デー
タとしての画像データが有するエネルギの偏りを利用し
て、元の画像データおよび被埋め込みデータに復元す
る。この復元された画像データは、例えば、図示せぬモ
ニタに供給されて表示される。
The decoding device 12 comprises a decompressor 6 in which the embedded coded data provided via the recording medium 4 or the transmission medium 5 is received. Further, the decompression device 6 decompresses the embedded coded data into the original image data and the embedded data by utilizing the energy bias of the image data as the embedding target data. The restored image data is supplied to and displayed on a monitor (not shown), for example.

【0031】なお、被埋め込みデータとしては、例え
ば、埋め込み対象データとしての元の画像データに関連
するテキストデータや、音声データ、その画像データを
縮小した縮小画像データ等は勿論、元の画像データに無
関係なデータも用いることができる。
The embedded data may be, for example, text data related to the original image data as the data to be embedded, voice data, reduced image data obtained by reducing the image data, or the like. Irrelevant data can also be used.

【0032】次に、図3は、図2の埋め込み符号化器3
の構成例を示している。
Next, FIG. 3 shows the embedded encoder 3 of FIG.
The example of composition of is shown.

【0033】埋め込み対象データベース1から供給され
る埋め込み対象データとしての画像データは、フレーム
メモリ21に供給されるようになされており、フレーム
メモリ21は、埋め込み対象データベース1からの画像
データを、例えば、フレーム単位で一時記憶する。
The image data as the embedding target data supplied from the embedding target database 1 is supplied to the frame memory 21, and the frame memory 21 stores the image data from the embedding target database 1, for example, Temporarily store in frame units.

【0034】埋め込み部22は、被埋め込みデータベー
ス2に記憶された被埋め込みデータを受信し、その被埋
め込みデータを、フレームメモリ21に記憶された埋め
込み対象データとしての画像データに埋め込む埋め込み
処理を行い、これにより、画像データのエネルギの偏り
を利用して元に戻すことができる埋め込み符号化データ
を生成する。
The embedding unit 22 receives the embedding data stored in the embedding data base 2 and performs embedding processing for embedding the embedding data in the image data as the embedding target data stored in the frame memory 21, As a result, embedded coded data that can be restored by utilizing the energy bias of the image data is generated.

【0035】なお、フレームメモリ21は、複数のフレ
ーム(またはフィールド)を記憶することのできるよう
に、複数バンクで構成されており、バンク切り替えを行
うことで、フレームメモリ21では、埋め込み対象デー
タベース1から供給される画像データの記憶、埋め込み
部22による埋め込み処理の対象となっている画像デー
タの記憶、および埋め込み処理後の画像データ(埋め込
み符号化データ)の出力を、同時に行うことができるよ
うになっている。これにより、埋め込み対象データベー
ス1から供給される画像データが、動画であっても、埋
め込み符号化データのリアルタイム出力を行うことがで
きるようになっている。
The frame memory 21 is composed of a plurality of banks so that a plurality of frames (or fields) can be stored therein. By switching the banks, the frame memory 21 can be embedded in the database 1 to be embedded. So that the image data supplied from the device, the image data subjected to the embedding process by the embedding unit 22, and the image data after the embedding process (embedded encoded data) can be output at the same time. Has become. As a result, even if the image data supplied from the embedding target database 1 is a moving image, the embedded coded data can be output in real time.

【0036】次に、図4は、図3の埋め込み符号化器3
が出力する埋め込み符号化データを、画像データのエネ
ルギの偏りを利用して元の画像データと被埋め込みデー
タに復元する図2の復元器6の構成例を示している。
Next, FIG. 4 shows the embedded encoder 3 of FIG.
2 shows an example of the configuration of the decompressor 6 of FIG. 2 that reconstructs the embedded coded data output from the original image data and the data to be embedded by utilizing the energy bias of the image data.

【0037】埋め込み符号化データ、即ち、被埋め込み
データが埋め込まれた画像データ(以下、適宜、埋め込
み画像データともいう)は、フレームメモリ31に供給
されるようになされており、フレームメモリ31は、埋
め込み画像データを、例えば、フレーム単位で一時記憶
する。なお、フレームメモリ31も、図3のフレームメ
モリ21と同様に構成され、バンク切り替えを行うこと
により、埋め込み画像データが、動画であっても、その
リアルタイム処理が可能となっている。
The embedded coded data, that is, the image data in which the embedded data is embedded (hereinafter, also referred to as embedded image data as appropriate) is supplied to the frame memory 31, and the frame memory 31 The embedded image data is temporarily stored in frame units, for example. The frame memory 31 is also configured similarly to the frame memory 21 of FIG. 3, and by performing bank switching, even if the embedded image data is a moving image, real-time processing thereof can be performed.

【0038】復元部32は、フレームメモリ31に記憶
された埋め込み画像データを、画像データのエネルギの
偏りを利用して元の画像データと被埋め込みデータに復
元する復元処理を行う。
The restoration unit 32 performs restoration processing for restoring the embedded image data stored in the frame memory 31 into the original image data and the embedded data by utilizing the bias of the energy of the image data.

【0039】次に、上述の埋め込み符号化器3で行われ
る埋め込み処理と、復元器6で行われる復元処理の原理
について説明する。
Next, the principle of the embedding process performed by the embedded encoder 3 and the restoration process performed by the decompressor 6 will be described.

【0040】一般に、情報と呼ばれるものは、エネルギ
(エントロピー)の偏り(普遍性)を有し、この偏り
が、情報(価値ある情報)として認識される。即ち、例
えば、ある風景を撮影して得られる画像が、そのような
風景の画像であると人によって認識されるのは、画像
(画像を構成する各画素の画素値など)が、その風景に
対応したエネルギの偏りを有するからであり、エネルギ
の偏りがない画像は、雑音等にすぎず、情報としての利
用価値はない。
Generally, what is called information has a bias (universality) of energy (entropy), and this bias is recognized as information (valueful information). That is, for example, an image obtained by shooting a certain landscape is recognized by a person as an image of such a landscape because the image (the pixel value of each pixel forming the image, etc.) This is because there is a corresponding bias in energy, and an image with no bias in energy is nothing but noise and is not useful as information.

【0041】従って、価値ある情報に対して、何らかの
操作を施し、その情報が有する本来のエネルギの偏り
を、いわば破壊した場合でも、その破壊されたエネルギ
の偏りを元に戻すことで、何らかの操作が施された情報
も、元の情報に戻すことができる。即ち、情報を操作し
て得られるデータは、その情報が有する本来のエネルギ
の偏りを利用して、元の価値ある情報に復元することが
できる。
Therefore, even if some kind of operation is performed on valuable information and the original bias of energy possessed by the information is destroyed, so to speak, the bias of the destroyed energy is returned to the original state and some operation is performed. The information that has been given can also be returned to the original information. That is, the data obtained by manipulating the information can be restored to the original valuable information by utilizing the original energy bias of the information.

【0042】ここで、情報が有するエネルギ(の偏り)
を表すものとしては、例えば、相関性、連続性、相似性
などがある。
Here, the energy possessed by the information (bias)
For example, there are correlation, continuity, similarity, and the like.

【0043】情報の相関性とは、その情報の構成要素
(例えば、画像であれば、その画像を構成する画素や水
平ラインなど)どうしの相関(例えば、自己相関や、あ
る構成要素と他の構成要素との距離など)を意味する。
例えば、画像の相関性を表すものとしては、画像の水平
ライン間の相関があり、この相関を表す相関値として
は、例えば、2つの水平ラインにおける、対応する画素
の画素値どうしの差分の2乗和等の逆数を用いることが
できる。
The information correlativity means the correlation (for example, autocorrelation, a certain constituent element and another constituent element) of the information (for example, in the case of an image, pixels and horizontal lines constituting the image). Distance with components).
For example, what represents the correlation between images is a correlation between horizontal lines of an image, and the correlation value representing this correlation is, for example, 2 which is the difference between the pixel values of corresponding pixels in two horizontal lines. Reciprocal numbers such as sum of multiplications can be used.

【0044】即ち、例えば、いま、図5に示すようなH
本の水平ラインを有する画像があった場合に、その上か
ら1行目の水平ライン(第1水平ライン)と、他の水平
ラインとの相関は、一般に、図6Aに示すように、第1
水平ラインとの距離が近い水平ライン(図5における画
像の上側の水平ライン)ほど、第M水平ラインについて
の相関として示すように大きくなり、第1水平ラインと
の距離が遠い水平ライン(図5における画像の下側の水
平ライン)ほど、第N水平ラインについての相関として
示すように小さくなる。従って、第1水平ラインから近
いほど、第1水平ラインとの相関が大きくなり、遠いほ
ど相関が小さくなるという相関の偏りがある。
That is, for example, as shown in FIG.
When there is an image having a number of horizontal lines, the correlation between the first horizontal line from the top (first horizontal line) and other horizontal lines is generally the first as shown in FIG. 6A.
A horizontal line closer to the horizontal line (horizontal line on the upper side of the image in FIG. 5) becomes larger as shown as a correlation for the M-th horizontal line, and a horizontal line farther from the first horizontal line (FIG. 5). The lower horizontal line in the image) becomes smaller as shown as the correlation for the Nth horizontal line. Therefore, there is a bias in the correlation that the closer to the first horizontal line the greater the correlation with the first horizontal line, and the farther from the first horizontal line the smaller the correlation.

【0045】そこで、いま、図5の画像において、第1
水平ラインから比較的近い第M水平ラインと、第1水平
ラインから比較的遠い第N水平ラインとの画素を入れ替
える操作を行い(1<M<N≦H)、その入れ替え後の
画像について、第1水平ラインと、他の水平ラインとの
相関を計算値すると、それは、例えば、図6Bに示すよ
うになる。
Therefore, in the image of FIG.
Pixels of the Mth horizontal line relatively close to the horizontal line and the Nth horizontal line relatively far from the first horizontal line are exchanged (1 <M <N ≦ H), and the image after the exchange is When the correlation between one horizontal line and another horizontal line is calculated, it becomes as shown in FIG. 6B, for example.

【0046】即ち、入れ替え後の画像では、第1水平ラ
インから近い第M水平ライン(入れ替え前の第N水平ラ
イン)との相関が小さくなり、第1水平ラインから遠い
第N水平ライン(入れ替え前の第M水平ライン)との相
関が大きくなる。
That is, in the image after the replacement, the correlation with the M-th horizontal line near the first horizontal line (the N-th horizontal line before the replacement) becomes small, and the N-th horizontal line far from the first horizontal line (before the replacement). (M-th horizontal line).

【0047】従って、図6Bでは、第1水平ラインから
近いほど相関が大きくなり、遠いほど相関が小さくなる
という相関性の偏りが破壊されている。しかしながら、
画像については、一般に、第1水平ラインから近いほど
相関が大きくなり、遠いほど相関が小さくなるという相
関性の偏りを利用することにより、破壊された相関性の
偏りを復元することができる。即ち、図6Bにおいて、
第1水平ラインから近い第M水平ラインとの相関が小さ
く、第1水平ラインから遠い第N水平ラインとの相関が
大きいのは、画像が有する本来の相関性の偏りからすれ
ば、明らかに不自然であり(おかしく)、第M水平ライ
ンと第N水平ラインとは入れ替えるべきである。そし
て、図6Bにおける第M水平ラインと第N水平ラインと
を入れ替えることで、図6Aに示すような本来の相関性
の偏りを有する画像、即ち、元の画像を復元することが
できる。
Therefore, in FIG. 6B, the bias of the correlation is destroyed, in which the correlation increases as the distance from the first horizontal line increases and the correlation decreases as the distance from the first horizontal line increases. However,
For an image, generally, the bias of the correlation that is destroyed can be restored by utilizing the bias of the correlation that the correlation increases as the distance from the first horizontal line increases and the correlation decreases as the distance from the first horizontal line increases. That is, in FIG. 6B,
The fact that the correlation with the M-th horizontal line close to the first horizontal line is small and the correlation with the N-th horizontal line far from the first horizontal line is large is apparently inferior from the original bias of the correlation that the image has. It is natural (funny) and the Mth horizontal line and the Nth horizontal line should be interchanged. Then, by replacing the M-th horizontal line and the N-th horizontal line in FIG. 6B, it is possible to restore the image having the original bias of the correlation as shown in FIG. 6A, that is, the original image.

【0048】ここで、図5および図6で説明した場合に
おいては、水平ラインの入れ替え操作が、画像データに
対して、被埋め込みデータを埋め込むこととなる。そし
て、被埋め込みデータの埋め込みに際して、例えば、何
水平ライン目を移動するかや、どの水平ラインどうしを
入れ替えるかなどといった画像データに対する操作が、
被埋め込みデータに対応して決定される。一方、被埋め
込みデータが埋め込まれた埋め込み画像データ(埋め込
み符号化データ)の水平ラインを、元の画像データの相
関を利用して、元の位置に入れ替えることが、元の画像
データを復元することになる。そして、その復元に際し
て、例えば、何水平ライン目を移動したかや、どの水平
ラインどうしを入れ替えたかなどの埋め込み画像データ
に対する操作に基づいて、画像データに埋め込まれてい
た被埋め込みデータが復元される。
Here, in the case described with reference to FIGS. 5 and 6, the horizontal line replacement operation embeds embedded data in image data. Then, when embedding the data to be embedded, for example, operations on the image data such as what horizontal line is moved and which horizontal line is exchanged are performed.
It is determined corresponding to the data to be embedded. On the other hand, the horizontal line of the embedded image data (embedded encoded data) in which the embedded data is embedded can be replaced with the original position by using the correlation of the original image data to restore the original image data. become. Then, at the time of the restoration, for example, the embedded data embedded in the image data is restored based on an operation on the embedded image data such as which horizontal line has been moved or which horizontal line has been exchanged. .

【0049】次に、図7乃至図9を参照して、画像デー
タの相関性を利用する埋め込み処理と復元処理の例につ
いて説明する。
Next, with reference to FIGS. 7 to 9, an example of the embedding process and the restoration process using the correlation of the image data will be described.

【0050】図7乃至図9の実施の形態では、埋め込み
処理において、埋め込み対象データとしての画像データ
を構成する一部の画素が、処理対象画素として選択さ
れ、その選択された画素が、被埋め込みデータに対応し
てレベル方向に操作されることにより(画素値が操作さ
れることにより)、その画素に対して、被埋め込みデー
タが埋め込まれる。一方、復元処理では、埋め込み処理
によって得られた埋め込み画像データを構成する一部の
画素(埋め込み処理で選択されたのと同一位置の画素)
が、処理対象画素として選択され、図7に示すように、
その処理対象画素に対して、埋め込み処理における場合
と逆の操作が施されることで、その画素値が変更され
る。さらに、図7に示すように、画素値の変更前の処理
対象画素と、その周辺画素(図7の実施の形態では、左
右に隣接する画素)との相関値R1が演算されるととも
に、画素値の変更された処理対象画素と、その画素の周
辺画素との相関値R2が演算される。そして、その相関
値R1とR2との大小関係に基づいて、画素値の変更前ま
たは変更後の処理対象画素のうちのいずれか一方が、元
の画像データの復元結果とされるとともに、その処理対
象画素に埋め込まれていた被埋め込みデータが復元され
る。
In the embodiment shown in FIGS. 7 to 9, in the embedding process, some pixels forming the image data as the embedding target data are selected as the process target pixels, and the selected pixels are embedded. By operating in the level direction corresponding to the data (by operating the pixel value), the embedded data is embedded in the pixel. On the other hand, in the restoration process, some pixels that form the embedded image data obtained by the embedding process (pixels at the same position as that selected in the embedding process)
Is selected as a pixel to be processed, and as shown in FIG.
The pixel value is changed by performing the operation opposite to that in the embedding process on the pixel to be processed. Further, as shown in FIG. 7, the correlation value R1 between the pixel to be processed before the pixel value change and its surrounding pixels (pixels adjacent to each other in the embodiment in FIG. 7) is calculated, and The correlation value R2 between the pixel to be processed whose value has been changed and the peripheral pixels of that pixel is calculated. Then, based on the magnitude relationship between the correlation values R1 and R2, one of the processing target pixels before or after the pixel value change is set as the restoration result of the original image data, and the processing is performed. The embedded data embedded in the target pixel is restored.

【0051】図8は、図3の埋め込み符号化器3が、画
像データの相関性を利用して行う埋め込み処理の例を示
すフローチャートである。
FIG. 8 is a flow chart showing an example of embedding processing performed by the embedment encoder 3 of FIG. 3 by utilizing the correlation of image data.

【0052】埋め込み対象データベース1では、そこに
記憶されている埋め込み対象データとしての画像データ
が読み出され、例えば、1フレーム単位で、フレームメ
モリ21に供給されて記憶される。
In the embedding target database 1, the image data as the embedding target data stored therein is read out and supplied to the frame memory 21 and stored therein, for example, in units of one frame.

【0053】一方、埋め込み部22は、被埋め込みデー
タベース2から、被埋め込みデータを、例えば1ビット
ずつ受信し、ステップS1において、その1ビットの被
埋め込みデータを埋め込む処理の対象とする画素(処理
対象画素)を、フレームメモリ21に記憶された画像か
ら選択する。
On the other hand, the embedding unit 22 receives the embedded data from the embedded database 2, for example, bit by bit, and in step S1, the pixel to be embedded (processing target) is embedded. Pixel) is selected from the image stored in the frame memory 21.

【0054】ここで、本実施の形態では、例えば、フレ
ームメモリ21に記憶された画像データから、五の目格
子状に、画素が、順次選択され、処理対象画素とされる
ようになっている。
Here, in the present embodiment, for example, from the image data stored in the frame memory 21, the pixels are sequentially selected in the form of a five-eye grid and are set as the pixels to be processed. .

【0055】その後、埋め込み部22は、ステップS2
において、被埋め込みデータベース2から受信した被埋
め込みデータが1または0のうちのいずれであるかを判
定する。ステップS2において、被埋め込みデータが、
1または0のうちの、例えば0であると判定された場
合、ステップS1に戻る。即ち、埋め込み部22は、被
埋め込みデータが0である場合には、処理対象画素に、
何らの操作も施さずに(所定の定数としての0を加算
し)、ステップS1に戻り、次の1ビットの被埋め込み
データが、被埋め込みデータベース2から送信されてく
るのを待って、次に処理対象画素とすべき画素を選択
し、以下、同様の処理を繰り返す。
After that, the embedding section 22 carries out step S2.
At, it is determined whether the embedded data received from the embedded database 2 is 1 or 0. In step S2, the embedded data is
If it is determined to be 0 out of 1 or 0, the process returns to step S1. That is, when the embedded data is 0, the embedding unit 22 selects the pixel to be processed as
Without performing any operation (adding 0 as a predetermined constant), the process returns to step S1, waits for the next 1-bit embedded data to be transmitted from the embedded database 2, and then A pixel to be processed is selected, and the same process is repeated thereafter.

【0056】また、ステップS2において、被埋め込み
データが、1または0のうちの、例えば1であると判定
された場合、ステップS3に進み、埋め込み部22は、
処理対象画素に対して、所定の操作を施す。即ち、埋め
込み部22は、所定の定数としての、例えば、2の、画
像データを構成する画素に割り当てられているビット数
−1乗を、処理対象画素の画素値に加算する。
If it is determined in step S2 that the embedded data is, for example, 1 out of 1 or 0, the process proceeds to step S3, and the embedding section 22
A predetermined operation is performed on the pixel to be processed. That is, the embedding unit 22 adds, for example, 2 as a predetermined constant, to the power of the number of bits assigned to the pixels forming the image data, to the pixel value of the pixel to be processed.

【0057】従って、画像データを構成する画素の画素
値として、例えば、8ビットが割り当てられている場合
には、ステップS3では、27が、処理対象画素の画素
値に加算されることになる。
Therefore, if, for example, 8 bits are assigned as the pixel value of the pixel forming the image data, 2 7 is added to the pixel value of the pixel to be processed in step S3. .

【0058】なお、この加算は、画素値が、例えば、Y
UVなどで表現されている場合には、輝度成分Y、また
は色成分U,Vのいずれに対して行っても良い。また、
加算は、画素値が、例えば、RGBで表現されている場
合には、R,G,Bのいずれに対して行っても良い。即
ち、ステップS3における加算は、画素値が複数の成分
で構成される場合には、その複数の成分のうちの1つま
たは2以上に対して行っても良いし、全部に対して行っ
ても良い。また、ステップS3の加算は、複数の成分そ
れぞれごとに、独立に行うことも可能である。
In addition, in this addition, the pixel value is, for example, Y
When represented by UV or the like, it may be performed on either the luminance component Y or the color components U and V. Also,
The addition may be performed on any of R, G, and B when the pixel value is represented by RGB, for example. That is, when the pixel value is composed of a plurality of components, the addition in step S3 may be performed on one or two or more of the plurality of components, or may be performed on all the components. good. Further, the addition in step S3 can be performed independently for each of the plurality of components.

【0059】ステップS3において、処理対象画素の画
素値に、27が加算された後は、ステップS4に進み、
その加算結果がオーバフローしているかどうかが判定さ
れる。ステップS4において、加算結果がオーバフロー
していないと判定された場合、ステップS5をスキップ
して、ステップS6に進み、埋め込み部22は、その加
算結果を、処理対象画素の画素値として、フレームメモ
リ21に書き込み(上書きし)、ステップS1に戻る。
After adding 2 7 to the pixel value of the pixel to be processed in step S3, the process proceeds to step S4,
It is determined whether the addition result overflows. When it is determined in step S4 that the addition result does not overflow, step S5 is skipped, and the process proceeds to step S6, where the embedding unit 22 sets the addition result as the pixel value of the pixel to be processed as the frame memory 21. To (overwrite) and return to step S1.

【0060】また、ステップS4において、加算結果が
オーバフローしていると判定された場合、即ち、本実施
の形態では、画素値が8ビットであるから、加算結果
が、2 8以上となった場合、ステップS5に進み、埋め
込み部22は、その加算値の補正を行う。即ち、ステッ
プS5では、オーバフローした加算値が、例えば、その
オーバフローした分(オーバフローした加算値から28
を減算した値)に補正される。そして、ステップS6に
進み、埋め込み部22は、その補正後の加算結果を、処
理対象画素の画素値として、フレームメモリ21に書き
込み、次の1ビットの被埋め込みデータが、被埋め込み
データベース2から送信されてくるのを待って、ステッ
プS1に戻る。
In step S4, the addition result is
If it is determined that an overflow has occurred, that is, this implementation
, The pixel value is 8 bits, the addition result
But 2 8When it becomes above, it progresses to step S5 and fills it.
The inclusion unit 22 corrects the added value. That is, step
In step S5, the overflowed addition value is, for example,
Overflowed amount (2 from the added value that overflowed8
Is subtracted). Then, in step S6
Then, the embedding unit 22 processes the addition result after the correction.
Write to the frame memory 21 as the pixel value of the target pixel
Embedded, the next 1-bit embedded data is embedded
Wait for the data to be sent from database 2 and then
Return to step S1.

【0061】なお、フレームメモリ21に記憶された、
ある1フレームの画像データについて埋め込み処理が行
われた後は、その1フレームの画像データ、即ち、埋め
込み画像データは、フレームメモリ21から読み出され
て出力される。そして、埋め込み部22は、フレームメ
モリ21に記憶された、次の1フレームの画像データを
対象に、埋め込み処理を続行する。
Incidentally, the data stored in the frame memory 21,
After the embedding process is performed on the image data of a certain one frame, the image data of the one frame, that is, the embedded image data is read from the frame memory 21 and output. Then, the embedding unit 22 continues the embedding process for the image data of the next one frame stored in the frame memory 21.

【0062】次に、図9のフローチャートを参照して、
図8の埋め込み処理により得られる埋め込み画像データ
を復元する、復元器6による復元処理について説明す
る。
Next, referring to the flowchart of FIG.
The restoration processing by the restoration device 6 for restoring the embedded image data obtained by the embedding processing of FIG. 8 will be described.

【0063】フレームメモリ31では、そこに供給され
る埋め込み画像データが、例えば、1フレーム単位で順
次記憶される。
In the frame memory 31, the embedded image data supplied thereto is sequentially stored, for example, in 1-frame units.

【0064】一方、復元部32は、ステップS11にお
いて、フレームメモリ31に記憶されたあるフレームの
埋め込み画像データから、復元処理の対象とする画素
(処理対象画素)を選択する。
On the other hand, in step S11, the restoration unit 32 selects a pixel (processing target pixel) to be restored from the embedded image data of a certain frame stored in the frame memory 31.

【0065】ここで、復元部32では、埋め込み部22
と同様に、フレームメモリ31に記憶された埋め込み画
像データから、五の目格子状に、画素が、順次選択され
る。即ち、埋め込み処理と復元処理では、同一の画素
が、処理対象画素として選択される。
Here, in the restoration unit 32, the embedding unit 22
Similarly, the pixels are sequentially selected from the embedded image data stored in the frame memory 31 in a five-eye grid pattern. That is, the same pixel is selected as the pixel to be processed in the embedding process and the restoring process.

【0066】その後、ステップS12に進み、復元部3
2は、処理対象画素に対し、図3の埋め込み部22が行
った操作と逆の操作を施す。即ち、埋め込み部22は、
所定の定数としての、例えば、2の、画像を構成する画
素に割り当てられているビット数−1乗を、処理対象画
素の画素値から減算する。
After that, the process proceeds to step S12, and the restoration unit 3
2 performs the operation opposite to the operation performed by the embedding unit 22 in FIG. 3 on the pixel to be processed. That is, the embedding part 22 is
A predetermined constant, for example, 2 to the power of the number of bits assigned to the pixels forming the image minus 1 is subtracted from the pixel value of the processing target pixel.

【0067】従って、上述したように、埋め込み画像デ
ータを構成する画素の画素値として、例えば、8ビット
が割り当てられている場合においては、ステップS12
では、27が、処理対象画素の画素値から減算されるこ
とになる。
Therefore, as described above, in the case where, for example, 8 bits are assigned as the pixel value of the pixels forming the embedded image data, step S12
Then, 2 7 is subtracted from the pixel value of the processing target pixel.

【0068】なお、この減算は、画素値が、例えば、Y
UVなどで表現されている場合には、輝度成分Y、また
は色成分U,Vのいずれに対して行っても良い。また、
減算は、画素値が、例えば、RGBで表現されている場
合には、R,G,Bのいずれに対して行っても良い。但
し、ステップS12における減算は、図8のステップS
3における加算が行われたものと同一のものに対して行
う必要がある。即ち、画素値が、例えば、YUVなどで
表現されており、図8のステップS3における加算が、
YUVのうちの、例えば、Y成分に対して行われた場合
には、ステップS12における減算は、やはり、Y成分
に対して行う必要がある。
In this subtraction, the pixel value is, for example, Y
When represented by UV or the like, it may be performed on either the luminance component Y or the color components U and V. Also,
The subtraction may be performed on any of R, G, and B when the pixel value is expressed in RGB, for example. However, the subtraction in step S12 is performed in step S of FIG.
It must be done for the same thing that the addition in 3 was done. That is, the pixel value is expressed by, for example, YUV, and the addition in step S3 of FIG.
For example, when the Y component of YUV is performed, the subtraction in step S12 also needs to be performed for the Y component.

【0069】ステップS12において、処理対象画素の
画素値から、27が減算された後は、ステップS13に
進み、その減算結果がアンダフローしているかどうかが
判定される。ステップS13において、減算結果がアン
ダフローしていないと判定された場合、ステップS14
をスキップして、ステップS15に進む。
After 2 7 is subtracted from the pixel value of the pixel to be processed in step S12, the process proceeds to step S13, and it is determined whether or not the subtraction result is underflowed. When it is determined in step S13 that the subtraction result does not underflow, step S14
Is skipped and the process proceeds to step S15.

【0070】また、ステップS13において、減算結果
がアンダフローしていると判定された場合、即ち、加算
結果が、0未満となった場合、ステップS14に進み、
復元部32は、その減算値の補正を行う。即ち、ステッ
プS14では、アンダフローした減算値が、例えば、そ
の減算値に28を加算した値に補正され、ステップS1
5に進む。
If it is determined in step S13 that the subtraction result is underflow, that is, if the addition result is less than 0, the process proceeds to step S14.
The restoration unit 32 corrects the subtracted value. That is, in step S14, the underflowed subtraction value is corrected to, for example, a value obtained by adding 2 8 to the subtraction value.
Go to 5.

【0071】ステップS15では、処理対象画素の画素
値(ステップS12で27を減算していないもの)(以
下、適宜、第1の画素値という)P1と、その画素値か
ら27を減算した減算値(以下では、ステップS14で
補正されたものも含むものとする)(以下、適宜、第2
の画素値という)P2のそれぞれについて、処理対象画
素の周辺画素としての、例えば、その左右に隣接する画
素との間の相関を表す相関値が演算される。
In step S15, the pixel value of the pixel to be processed (for which 2 7 has not been subtracted in step S12) (hereinafter referred to as the first pixel value as appropriate) P1 and 2 7 are subtracted from that pixel value. Subtracted value (hereinafter, the value corrected in step S14 is also included) (hereinafter, appropriately referred to as the second value).
For each of P2 (referred to as the pixel value of the pixel), a correlation value representing the correlation with, for example, the adjacent pixels on the left and right of the pixel to be processed is calculated.

【0072】即ち、ステップS15では、例えば、処理
対象画素の第1の画素値P1と、その左右の画素それぞ
れの画素値との差分の絶対値が演算され、その結果得ら
れる2つの絶対値の加算値の逆数が、処理対象画素の第
1の画素値P1についての相関値R1として求められる。
さらに、ステップS15では、処理対象画素の第2の画
素値P2についても、その左右の画素それぞれの画素値
との差分の絶対値どうしの加算値の逆数が演算され、そ
れが、処理対象画素の第2の画素値P2の相関値R2とし
て求められる。
That is, in step S15, for example, the absolute value of the difference between the first pixel value P1 of the pixel to be processed and the pixel values of the left and right pixels is calculated, and the absolute value of the two absolute values obtained as a result is calculated. The reciprocal of the added value is obtained as the correlation value R1 for the first pixel value P1 of the pixel to be processed.
Further, in step S15, also with respect to the second pixel value P2 of the processing target pixel, the reciprocal of the addition value of the absolute values of the differences between the pixel values of the left and right pixels is calculated, which is the It is obtained as the correlation value R2 of the second pixel value P2.

【0073】なお、ステップS15において、処理対象
画素との間の相関を求めるのに用いる画素は、その左右
に隣接する画素に限定されるものではなく、上下に隣接
する画素であっても良いし、時間的に隣接する画素であ
っても良い。また、必ずしも、空間的または時間的に隣
接する画素である必要もない。但し、処理対象画素との
相関を求めるにあたっては、埋め込み画像データにおい
て、被埋め込みデータが埋め込まれていない画素を用い
るのが望ましい。これは、処理対象画素について、被埋
め込みデータが埋め込まれた画素との相関を求めても、
元の画像データについての相関を得ることができず、従
って、画像データの相関性を利用することができないた
め、被埋め込みデータが埋め込まれた画素から、元の画
素値および被埋め込みデータを、正確に復元するのが困
難となるからである。また、画像データの相関性を利用
して、処理対象画素を復元する以上、処理対象画素との
相関値を求めるのに用いる画素は、その処理対象画素と
の空間的または時間的距離が近いものであるのが望まし
い。
The pixels used to obtain the correlation with the pixel to be processed in step S15 are not limited to the pixels adjacent to the left and right, but may be the pixels adjacent to each other in the vertical direction. The pixels may be adjacent in time. Further, it is not always necessary that the pixels are spatially or temporally adjacent to each other. However, when obtaining the correlation with the pixel to be processed, it is desirable to use the pixel in which the embedded data is not embedded in the embedded image data. This is because even if the correlation between the pixel to be processed and the pixel in which the embedded data is embedded is obtained,
Since the correlation for the original image data cannot be obtained and therefore the correlation of the image data cannot be used, the original pixel value and the embedded data can be accurately calculated from the pixel in which the embedded data is embedded. It will be difficult to restore to. Further, as long as the processing target pixel is restored using the correlation of the image data, the pixel used to obtain the correlation value with the processing target pixel has a close spatial or temporal distance to the processing target pixel. Is desirable.

【0074】第1の画素値P1についての相関値R1、お
よび第2の画素値P2についての相関値R2の算出後は、
ステップS16に進み、復元部32において、その相関
値R1とR2とが比較される。
After calculating the correlation value R1 for the first pixel value P1 and the correlation value R2 for the second pixel value P2,
In step S16, the restoration unit 32 compares the correlation values R1 and R2.

【0075】ステップS16において、相関値R1が、
相関値R2より大きい(または以上である)と判定され
た場合、ステップS17に進み、復元部32において、
被埋め込みデータの復元結果として、0が出力され、ス
テップS11に戻る。そして、この場合、フレームメモ
リ31の記憶値は書き換えられず、従って、処理対象画
素の画素値の復元結果は、その画素値P1のままとされ
る。
In step S16, the correlation value R1 is
When it is determined that the correlation value R2 is larger than (or equal to or larger than) R2, the process proceeds to step S17, where the restoration unit 32
As a result of restoring the embedded data, 0 is output and the process returns to step S11. Then, in this case, the stored value of the frame memory 31 is not rewritten, and therefore the restoration result of the pixel value of the processing target pixel remains the pixel value P1.

【0076】即ち、第1の画素値P1についての相関値
R1の方が、第2の画素値P2についての相関値R2より
大きいということは、処理対象画素の画素値としては、
画素値P2よりも、画素値P1の方が確からしいこととな
るので、処理対象画素の画素値の復元結果は、その確か
らしい画素値P1とされる。さらに、画素値P1は、ステ
ップS12で27が減算されていないものであるから、
図8のステップS3で27が加算されていないと考えら
れる。そして、図8の埋め込み処理では、被埋め込みデ
ータが0の場合には、27を加算しないこととしている
から、第1の画素値P1についての相関値R1の方が大き
く、画素値P1が、処理対象画素の画素値として確から
しい場合には、そこに埋め込まれた被埋め込みデータは
0ということになる。
That is, the fact that the correlation value R1 for the first pixel value P1 is larger than the correlation value R2 for the second pixel value P2 means that the pixel value of the pixel to be processed is
Since the pixel value P1 is more likely than the pixel value P2, the restoration result of the pixel value of the pixel to be processed is the certain pixel value P1. Furthermore, since the pixel value P1 has not been subtracted by 2 7 in step S12,
It is considered that 2 7 is not added in step S3 of FIG. Then, in the embedding process of FIG. 8, when the embedded data is 0, 2 7 is not added, so the correlation value R1 for the first pixel value P1 is larger and the pixel value P1 is When the pixel value of the pixel to be processed is likely, the embedded data embedded therein is 0.

【0077】一方、ステップS16において、相関値R
2が、相関値R1より大きい(以上である)と判定された
場合、ステップS18に進み、復元部32において、フ
レームメモリ31に記憶された処理対象画素の画素値
が、その画素値から27を減算した減算値、即ち、第2
の画素値P2に書き換えられる。従って、この場合、処
理対象画素の画素値の復元結果は、その画素値P2とさ
れる。そして、ステップS19に進み、復元部32にお
いて、被埋め込みデータの復元結果として、1が出力さ
れ、ステップS11に戻る。
On the other hand, in step S16, the correlation value R
If it is determined that 2 is greater than (is greater than or equal to) the correlation value R1, the process proceeds to step S18, and the restoration unit 32 determines that the pixel value of the pixel to be processed stored in the frame memory 31 is 2 7 from that pixel value. The subtraction value obtained by subtracting, that is, the second
Is rewritten to the pixel value P2. Therefore, in this case, the restoration result of the pixel value of the pixel to be processed is the pixel value P2. Then, the process proceeds to step S <b> 19, the restoring unit 32 outputs 1 as the restoration result of the embedded data, and the process returns to step S <b> 11.

【0078】即ち、第2の画素値P2についての相関値
R2の方が、第1の画素値P1についての相関値R1より
大きいということは、処理対象画素の画素値としては、
画素値P1よりも、画素値P2の方が確からしいこととな
るので、処理対象画素の画素値の復元結果は、その確か
らしい画素値P2とされる。さらに、画素値P2は、ステ
ップS12で、画素値P1から27が減算されたものであ
るから、図8のステップS3で、元の画素値に27が加
算されたものであると考えられる。そして、図8の埋め
込み処理では、被埋め込みデータが1の場合には、27
を加算することとしているから、第2の画素値P2につ
いての相関値R2の方が大きく、画素値P2が、処理対象
画素の画素値として確からしい場合には、そこに埋め込
まれた被埋め込みデータは1ということになる。
That is, the fact that the correlation value R2 for the second pixel value P2 is larger than the correlation value R1 for the first pixel value P1 means that the pixel value of the pixel to be processed is
Since the pixel value P2 is more likely than the pixel value P1, the restoration result of the pixel value of the pixel to be processed is the likely pixel value P2. Further, since the pixel value P2 is obtained by subtracting 2 7 from the pixel value P1 in step S12, it is considered that 2 7 is added to the original pixel value in step S3 of FIG. . Then, in the embedding process of FIG. 8, when the embedded data is 1, 2 7
Since the correlation value R2 for the second pixel value P2 is larger and the pixel value P2 is more likely to be the pixel value of the pixel to be processed, the embedded data embedded therein is added. Will be 1.

【0079】ここで、上述のようにして求められる相関
値R1とR2との差分が小さい場合には、画素値P1とP2
のうちのいずれが、処理対象画素の画素値として確から
しいかは、一概には言えない。そこで、このような場合
には、処理対象画素の左右に隣接する画素だけでなく、
他の画素をも用いて、画素値P1,P2それぞれについて
の相関値を求め、その相関値を比較することで、画素値
P1,P2のうちのいずれが、処理対象画素の画素値とし
て確からしいかを決定することができる。
Here, when the difference between the correlation values R1 and R2 obtained as described above is small, the pixel values P1 and P2
Which of the above is likely to be the pixel value of the pixel to be processed cannot be generally stated. Therefore, in such a case, not only the pixels adjacent to the left and right of the pixel to be processed,
By using other pixels as well, the correlation value for each of the pixel values P1 and P2 is obtained, and by comparing the correlation values, which of the pixel values P1 and P2 is likely to be the pixel value of the processing target pixel. You can decide.

【0080】以上のように、被埋め込みデータが埋め込
まれた画像データである埋め込み画像データを、画像の
相関性を利用して、元の画像データと被埋め込みデータ
に復元するようにしたので、その復元のためのオーバヘ
ッドがなくても、埋め込み画像データを、元の画像デー
タと被埋め込みデータに復元することができる。従っ
て、その復元画像(復号画像)には、基本的に、被埋め
込みデータを埋め込むことによる画質の劣化は生じな
い。
As described above, the embedded image data, which is the image data in which the embedded data is embedded, is restored to the original image data and the embedded data by utilizing the correlation of the images. The embedded image data can be restored to the original image data and the embedded data without the overhead for the restoration. Therefore, basically, the restored image (decoded image) does not deteriorate in image quality due to the embedding of the embedded data.

【0081】即ち、図8の埋め込み処理によれば、画像
データの画素値に、被埋め込みデータの値に対応した所
定値(図8の実施の形態では、0または27)を加算
し、その加算値がオーバーフローしている場合には、そ
の補正を行うという操作ルールにしたがい、画像データ
に対して、被埋め込みデータが埋め込まれ、埋め込み画
像データが生成される。
That is, according to the embedding process of FIG. 8, a predetermined value (0 or 2 7 in the embodiment of FIG. 8) corresponding to the value of the embedded data is added to the pixel value of the image data, When the added value overflows, the embedding data is embedded in the image data according to the operation rule of performing the correction, and the embedded image data is generated.

【0082】一方、図9の復元処理によれば、埋め込み
処理における操作ルールにしたがい、埋め込み画像デー
タに対して、埋め込み処理における場合とは逆の操作が
行われ、その操作後のデータの相関に基づいて、埋め込
み処理において行われた操作が、いわば特定される。そ
して、その特定された操作にしたがい、埋め込み画像デ
ータが、元の画像データと被埋め込みデータが復元され
る。
On the other hand, according to the restoration process of FIG. 9, according to the operation rule in the embedding process, the operation opposite to that in the embedding process is performed on the embedded image data, and the correlation of the data after the operation is obtained. Based on this, the operation performed in the embedding process is, so to speak, specified. Then, according to the specified operation, the embedded image data is restored to the original image data and the embedded data.

【0083】従って、図8の埋め込み処理における操作
ルールは、画像データの相関性を利用して、被埋め込み
データが埋め込まれた埋め込み画像データを元に戻すこ
とができる操作ルールであるということができるが、埋
め込み処理では、このような操作ルールを採用すること
で、画像データの画質を劣化させることなく(最低限の
劣化に抑えて)、かつデータ量を増加せずに、画像デー
タに被埋め込みデータを埋め込むことができる。
Therefore, it can be said that the operation rule in the embedding process of FIG. 8 is an operation rule that can restore the embedded image data in which the embedded data is embedded by utilizing the correlation of the image data. However, in the embedding process, by adopting such an operation rule, it is possible to embed the image data in the image data without deteriorating the image quality of the image data (with the minimum deterioration) and without increasing the data amount. Data can be embedded.

【0084】即ち、被埋め込みデータが埋め込まれた画
素は、画像の相関性、即ち、ここでは、被埋め込みデー
タが埋め込まれなかった画素との間の相関を利用するこ
とにより、オーバヘッドなしで、元の画素と被埋め込み
データに復元(戻す)ことができる。従って、その結果
得られる復元画像(復号画像)には、基本的に、被埋め
込みデータを埋め込むことによる画質の劣化は生じな
い。
That is, the pixel in which the embedded data is embedded can be used as an original pixel without overhead by utilizing the correlation of the image, that is, the correlation with the pixel in which the embedded data is not embedded here. It is possible to restore (restore) the pixel and the embedded data. Therefore, basically, the restored image (decoded image) obtained as a result does not deteriorate in image quality due to embedding of the embedded data.

【0085】なお、図7乃至図9の実施の形態では、処
理対象画素と、他の画素との間の相関を表す相関値とし
て、それらの画素値の差分の絶対値の逆数を用いるよう
にしたが、相関値は、これに限定されるものではない。
In the embodiments of FIGS. 7 to 9, the reciprocal of the absolute value of the difference between the pixel values is used as the correlation value representing the correlation between the pixel to be processed and other pixels. However, the correlation value is not limited to this.

【0086】また、図7乃至図9の実施の形態では、画
像データから、五の目格子状に、画素を選択し、その画
素に、被埋め込みデータを埋め込むようにしたが、被埋
め込みデータを埋め込む画素の選択パターンは、これに
限定されるものではない。但し、被埋め込みデータを埋
め込んだ画素の復元にあたっては、上述したように、被
埋め込みデータが埋め込まれていない画素を用いて相関
を求めるのが望ましく、また、画素どうしの相関は、基
本的に、それらの間の空間的または時間的距離が離れる
ほど小さくなっていく。従って、正確な復元を行う観点
からは、被埋め込みデータを埋め込む画素は、空間的ま
たは時間的に、いわゆる疎らになるように選択するのが
望ましい。一方、多くの被埋め込みデータを埋め込む観
点、即ち、圧縮率の観点からは、被埋め込みデータを埋
め込む画素は、ある程度多くする必要がある。従って、
被埋め込みデータを埋め込む画素は、復元の正確さと、
圧縮率とをバランスさせて選択するのが望ましい。
Further, in the embodiments of FIGS. 7 to 9, the pixels are selected from the image data in the form of a five-eye grid and the embedded data is embedded in the pixels. The selection pattern of pixels to be embedded is not limited to this. However, when restoring the pixel in which the embedded data is embedded, as described above, it is desirable to obtain the correlation by using the pixel in which the embedded data is not embedded, and the correlation between the pixels is basically The smaller the spatial or temporal distance between them, the smaller. Therefore, from the viewpoint of performing accurate restoration, it is desirable to select the pixels in which the embedded data is embedded so as to be spatially or temporally so-called sparse. On the other hand, from the viewpoint of embedding a large amount of embedded data, that is, the compression rate, it is necessary to increase the number of pixels in which the embedded data is embedded to some extent. Therefore,
Pixels for embedding embedded data are accurate for restoration,
It is desirable to select a balance with the compression rate.

【0087】さらに、図7乃至図9の実施の形態では、
処理対象画素として選択された1画素に、1ビットの被
埋め込みデータを埋め込むようにしたが、1画素に、2
ビット以上の被埋め込みデータを埋め込むようにするこ
とも可能である。例えば、1画素に、2ビットの被埋め
込みデータを埋め込む場合には、その2ビットの被埋め
込みデータにしたがって、例えば、0,26,27,26
+27のうちのいずれかを、画素値に加算するようにす
れば良い。
Further, in the embodiment of FIGS. 7 to 9,
Although 1-bit embedded data is embedded in one pixel selected as a processing target pixel, 2 pixels are embedded in one pixel.
It is also possible to embed embedded data of more than one bit. For example, when 2-bit embedded data is embedded in one pixel, for example, 0, 2 6 , 2 7 , 2 6 are embedded according to the 2-bit embedded data.
Any one of +2 7 may be added to the pixel value.

【0088】また、図7乃至図9の実施の形態では、画
素値に、0または27のうちのいずれかを加算すること
で(画素値に、27を加算しないか、または加算するこ
とで)、被埋め込みデータを埋め込むようにしたが、画
素値に加算する値は、27に限定されるものではない。
但し、画素値の下位ビットにしか影響を与えないような
値を加算する場合には、その加算値と、元の画素値と
が、あまり異なったものとならず、従って、図9のステ
ップS15で求められる相関値R1とR2も、あまり異な
ったものとならなくなる。これは、画素値および被埋め
込みデータの復元結果の精度を劣化させることとなるか
ら、被埋め込みデータにしたがって、画素値に加算する
値は、元の画素値の上位ビットに影響を与えるような値
とするのが望ましい。
Further, in the embodiments of FIGS. 7 to 9, by adding either 0 or 2 7 to the pixel value (either not adding 2 7 to the pixel value or adding it). Although the embedded data is embedded, the value to be added to the pixel value is not limited to 2 7 .
However, when a value that affects only the lower bits of the pixel value is added, the added value and the original pixel value do not differ significantly, and therefore step S15 in FIG. Also, the correlation values R1 and R2 obtained in step 2 do not become very different. Since this deteriorates the accuracy of the restoration result of the pixel value and the embedded data, the value to be added to the pixel value according to the embedded data is a value that affects the upper bits of the original pixel value. Is desirable.

【0089】さらに、図7乃至図9の実施の形態では、
画素値に、所定値を加算することで、被埋め込みデータ
の埋め込みを行うようにしたが、被埋め込みデータの埋
め込みは、加算以外の操作(例えば、ビット反転や、前
述した水平ラインのローテーションなど)を、画素値に
施すことによって行うことも可能である。但し、上述し
たように、画素値および被埋め込みデータの復元結果の
精度の劣化を防止する観点から、画素値に施す操作は、
元の画像についての相関と、操作を施した画像について
の相関とが大きく異なるようなものであることが望まし
い。
Further, in the embodiment of FIGS. 7 to 9,
Although the embedded data is embedded by adding a predetermined value to the pixel value, the embedded data is embedded in operations other than addition (for example, bit inversion and horizontal line rotation described above). Can also be performed by applying to the pixel value. However, as described above, from the viewpoint of preventing the deterioration of the accuracy of the restoration result of the pixel value and the embedded data, the operation performed on the pixel value is
It is desirable that the correlation with respect to the original image and the correlation with respect to the image subjected to the operation are significantly different.

【0090】また、図7乃至図9の実施の形態では、処
理対象画素として選択された1画素に、1ビットの被埋
め込みデータを埋め込むようにしたが、複数画素に、1
ビットの被埋め込みデータを埋め込むようにすることも
可能である。即ち、近接する2画素以上に対して、1ビ
ットの被埋め込みデータに対応する同一の操作を行うよ
うにすることが可能である。
In the embodiments shown in FIGS. 7 to 9, the 1-bit embedded data is embedded in one pixel selected as the pixel to be processed.
It is also possible to embed embedded data of bits. That is, the same operation corresponding to 1-bit embedded data can be performed on two or more adjacent pixels.

【0091】次に、情報の連続性を利用した埋め込み処
理と復元処理について説明する。
Next, the embedding process and the restoring process using the continuity of information will be described.

【0092】例えば、画像データのある1水平ラインに
ついて注目した場合に、その注目ラインにおいて、図1
0Aに示すような、画素値の変化パターンが連続してい
る波形WAVE#1が観察されたとすると、その注目ラ
インと離れた他の水平ラインでは、注目ラインとは異な
る画素値の変化パターンが観察される。従って、注目ラ
インと、その注目ラインと離れた他の水平ラインとにお
いては、画素値の変化パターンが異なり、連続性におい
ても偏りがある。即ち、画像のある部分の画素値の変化
パターンに注目すると、その注目部分に隣接する部分に
は、同様の画素値の変化パターンが存在し、注目部分か
ら離れるにつれて、異なる画素値の変化パターンが存在
するという連続性の偏りがある。
For example, when attention is paid to one horizontal line having image data, the line of interest is shown in FIG.
Assuming that a waveform WAVE # 1 in which the pixel value change pattern is continuous as shown in 0A is observed, a pixel value change pattern different from the attention line is observed on other horizontal lines apart from the attention line. To be done. Therefore, the line of interest and the other horizontal line apart from the line of interest have different pixel value change patterns, and the continuity is biased. That is, when attention is paid to the pixel value change pattern of a certain portion of the image, a similar pixel value change pattern exists in a portion adjacent to the attention portion, and a different pixel value change pattern is obtained as the distance from the attention portion increases. There is a continuity bias that exists.

【0093】そこで、いま、図10Aに示した、画像デ
ータのある水平ラインにおける、画素値の変化パターン
が連続している波形WAVE#1の一部を、例えば、図
10Bに示すように、離れた水平ラインにおける波形W
AVE#2と入れ替える。
Therefore, a portion of the waveform WAVE # 1 in which the pixel value change pattern is continuous in the horizontal line of the image data shown in FIG. 10A is separated as shown in FIG. 10B. Waveform W on horizontal line
Replace with AVE # 2.

【0094】この場合、画像データの連続性の偏りが破
壊される。しかしながら、近接する部分の画素値の変化
パターンは連続しており、離れるほど、画素値の変化パ
ターンが異なるという連続性の偏りを利用することによ
り、破壊された連続性の偏りを復元することができる。
即ち、図10Bにおいて、波形の一部WAVE#2の画
素値の変化パターンが、他の部分の画素値の変化パター
ンに比較して大きく異なっているのは、波形が有する本
来の連続性の偏りからすれば、明らかに不自然であり、
他の部分の画素値の変化パターンと異なっている部分W
AVE#2は、他の部分の画素値の変化パターンと同様
の波形に入れ替えるべきである。そして、そのような入
れ替えを行うことで、連続性の偏りが復元され、これに
より、図10Bに示した波形から、図10Aに示した元
の波形を復元することができる。
In this case, the bias in the continuity of the image data is destroyed. However, it is possible to restore the disrupted bias of continuity by using the bias of continuity in which the pixel value change patterns of the adjacent portions are continuous and the pixel value change patterns differ as the distance increases. it can.
That is, in FIG. 10B, the change pattern of the pixel value of a part of the waveform WAVE # 2 is significantly different from the change pattern of the pixel value of the other part of the waveform because the original continuity of the waveform is biased. It's obviously unnatural,
Part W different from the pixel value change pattern of other parts
The AVE # 2 should be replaced with a waveform similar to the change pattern of the pixel value of the other part. Then, by performing such a replacement, the bias of continuity is restored, whereby the original waveform shown in FIG. 10A can be restored from the waveform shown in FIG. 10B.

【0095】ここで、図10で説明した場合において
は、波形の一部を、その周辺の画素値の変化パターンと
は大きく異なる画素値の変化パターンの波形に入れ替え
ることが、画像データに対して、被埋め込みデータを埋
め込むこととなる。また、その埋め込みに際して、例え
ば、波形のどの部分の画素値の変化パターンを入れ替え
るのかや、画素値の変化パターンをどの程度大きく変化
させるのかなどが、被埋め込みデータにしたがって決定
される。一方、被埋め込みデータが埋め込まれた埋め込
み画像データ(埋め込み符号化データ)、即ち、大きく
異なる画素値の変化パターンを一部に有する波形を、周
辺の画素値の変化パターンは連続しており、離れるほ
ど、画素値の変化パターンが異なるという連続性の偏り
を利用して、元の波形に戻すことが、その元の波形を復
元することとなる。そして、その復元に際して、例え
ば、波形のどの部分の画素値の変化パターンが大きく変
化していたのかや、画素値の変化パターンがどの程度大
きく変化していたのかなど、即ち、埋め込み画像データ
を、どのような操作によって、元の画像データ(波形)
に戻したかによって、画像データに埋め込まれていた被
埋め込みデータが復元される。
Here, in the case described with reference to FIG. 10, it is possible to replace a part of the waveform with a waveform of a pixel value change pattern which is significantly different from the pixel value change pattern in the vicinity thereof. The embedded data is embedded. Further, in the embedding, for example, which part of the waveform to change the pixel value change pattern and how much to change the pixel value change pattern are determined according to the embedded data. On the other hand, the embedded image data (embedded encoded data) in which the embedded data is embedded, that is, the waveform having a largely different pixel value change pattern as a part, the peripheral pixel value change patterns are continuous and are separated from each other. The original waveform is restored by using the bias of continuity that the change patterns of the pixel values are different to restore the original waveform. Then, at the time of restoration, for example, in which part of the waveform the change pattern of the pixel value has changed significantly, and how much the change pattern of the pixel value has changed, that is, the embedded image data, The original image data (waveform)
The embedded data that was embedded in the image data is restored depending on whether or not the data has been returned to.

【0096】次に、図11は、埋め込み符号化器3にお
いて、画像の連続性を利用した埋め込みが行われる場合
の埋め込み処理の例を示すフローチャートである。
Next, FIG. 11 is a flow chart showing an example of embedding processing in the embedding encoder 3 when embedding utilizing the continuity of images is performed.

【0097】まず最初に、ステップS21において、埋
め込み部22は、埋め込み対象データベース1に記憶さ
れた埋め込み対象データとしての1フレーム分の画像デ
ータを、フレームメモリ21にさせる。さらに、ステッ
プS21では、埋め込み部22は、フレームメモリ21
に記憶された画像データの連続領域を検出し、その連続
領域の位置を示す連続領域データを、図示せぬワーク用
のメモリ(以下、適宜、ワークメモリという)に記憶さ
せる。
First, in step S21, the embedding section 22 causes the frame memory 21 to store one frame of image data as embedding target data stored in the embedding target database 1. Further, in step S21, the embedding unit 22 determines that the frame memory 21
The continuous area of the image data stored in is detected, and the continuous area data indicating the position of the continuous area is stored in a work memory (hereinafter referred to as a work memory) not shown.

【0098】即ち、例えば、いま、図12Aに示すよう
な、横×縦が224(= 7×32)×1600画素か
らなる画像データを対象に、その連続領域を検出する場
合には、埋め込み部22は、画像データを、例えば、3
2×1画素毎の画像ブロックに分割し、各画像ブロック
毎にDCT(Discrete Cosine Transform)処理を施し
て、画像ブロック毎のDCT係数を算出する。
That is, for example, as shown in FIG. 12A, in the case where the continuous area is detected for the image data in which the width × height is 224 (= 7 × 32) × 1600 pixels, the embedding unit is used. 22 indicates image data, for example, 3
The image block is divided into 2 × 1 pixel blocks, DCT (Discrete Cosine Transform) processing is performed on each image block, and the DCT coefficient for each image block is calculated.

【0099】さらに、埋め込み部22は、画像ブロック
をラスタスキャン順にスキャンして、順次、注目ブロッ
クとし、例えば、注目ブロックに対応するDCT係数と
左隣の隣接画像ブロックの対応するDCT係数との差分
の絶対値和を順に算出して、注目ブロックの連続性評価
値としてワークメモリに記憶させる。また、埋め込み部
22は、算出された連続性評価値(差分値)が所定閾値
以下である画像ブロックを連続領域と認識し、その画像
ブロックの位置をワークメモリに記憶させる。
Further, the embedding unit 22 scans the image blocks in the raster scan order and sequentially sets them as the target block. For example, the difference between the DCT coefficient corresponding to the target block and the corresponding DCT coefficient of the adjacent image block on the left side. The sum of absolute values of is calculated in order and stored in the work memory as the continuity evaluation value of the block of interest. Further, the embedding unit 22 recognizes an image block whose calculated continuity evaluation value (difference value) is equal to or less than a predetermined threshold as a continuous area, and stores the position of the image block in the work memory.

【0100】ここで、本来、連続領域とされるべき画像
ブロックの一部がノイズ等の影響により連続領域ではな
いと判断される可能性もあるので、そのような判断が行
われるのを防止するために、埋め込み部22は、連続領
域の検出の後、補正処理を行い、連続領域に隣接する、
非連続領域とされた画像ブロックを、連続領域の画像ブ
ロックに変換する。即ち、補正処理によれば、例えば、
2つの連続領域に挟まれた短い区間の非連続領域の画像
ブロックや、連続領域に隣接する1つ(または少数)の
非連続領域の画像ブロックが、連続領域の画像ブロック
に変換され(連続領域の画像ブロックとみなされ)、こ
れにより、2つの連続領域と、その間に挟まれていた領
域(非連続領域の画像ブロック)が、全体として、1つ
の連続領域に補正され、あるいは、1つの連続領域と、
それに隣接する非連続領域の画像ブロックが、全体とし
て、1つの連続領域に補正される。
Here, since there is a possibility that a part of the image block which should originally be a continuous area is judged not to be a continuous area due to the influence of noise, etc., such a judgment is prevented. For this purpose, the embedding unit 22 performs correction processing after detecting the continuous area, and the adjacent area is adjacent to the continuous area.
An image block that is a non-continuous area is converted into an image block of a continuous area. That is, according to the correction process, for example,
An image block of a short non-contiguous area sandwiched between two continuous areas or one (or a small number) of image blocks of non-contiguous areas adjacent to the continuous area is converted into an image block of the continuous area (continuous area). Image blocks of two continuous areas and the area sandwiched between them (image blocks of non-continuous areas) are corrected to one continuous area as a whole, or one continuous area. Area and
The image blocks of the non-contiguous areas adjacent to it are corrected into one continuous area as a whole.

【0101】その後、ステップS22に進み、埋め込み
部22は、被埋め込みデータデータベース2から、被埋
め込みデータを、例えば6ビット(3ビット+3ビッ
ト)ずつ受信し、ステップS23に進む。
After that, in step S22, the embedding section 22 receives the embedded data from the embedded data database 2 by 6 bits (3 bits + 3 bits), for example, and proceeds to step S23.

【0102】ステップS23では、埋め込み部22は、
上述の6ビットの被埋め込みデータを埋め込む画素群と
しての処理対象画像を選択、抽出する。即ち、ステップ
S23では、例えば、フレームメモリ21に記憶された
1フレームの画像データが、仮想的に、上半分と下半分
の領域(以下、適宜、それぞれを、上領域と下領域とい
う)に分割され、その上領域と下領域のそれぞれの、例
えば上から同一の位置にある水平ラインの連続領域が選
択、抽出される。
In step S23, the embedding section 22
An image to be processed is selected and extracted as a pixel group in which the 6-bit embedded data is embedded. That is, in step S23, for example, one frame of image data stored in the frame memory 21 is virtually divided into upper and lower half regions (hereinafter, appropriately referred to as upper region and lower region, respectively). Then, the continuous regions of the respective upper and lower regions, for example, horizontal lines at the same position from above are selected and extracted.

【0103】具体的には、例えば、フレームメモリ21
に記憶された1フレームの画像データが、例えば、図1
2Aに示すように、1600ラインの水平ラインで構成
される場合には、第1水平ラインから第800水平ライ
ンまでの領域が、上領域とされ、第801水平ラインか
ら第1600水平ラインまでの領域が、下領域とされ
る。そして、フレームメモリ21に記憶された画像デー
タについて、最初に、ステップ23の処理が行われる場
合には、図12Aに斜線を付して示すように、上領域の
第1行である第1水平ラインと、下領域の第1行である
第801水平ラインの連続領域が選択、抽出される。
Specifically, for example, the frame memory 21
The image data of one frame stored in FIG.
As shown in FIG. 2A, when it is composed of 1600 horizontal lines, the area from the first horizontal line to the 800th horizontal line is the upper area, and the area from the 801st horizontal line to the 1600th horizontal line. Is the lower area. Then, for the image data stored in the frame memory 21, when the process of step 23 is first performed, as indicated by hatching in FIG. 12A, the first horizontal line which is the first row of the upper region. A continuous area of the line and the 801st horizontal line, which is the first row of the lower area, is selected and extracted.

【0104】なお、埋め込み部22は、ステップS21
においてワークメモリに記憶された連続領域データを参
照して、第1水平ラインと、第801水平ラインの連続
領域のみを選択、抽出する。ここで、図12の実施の形
態においては、第1水平ラインと、第801水平ライン
の全領域が連続領域であるとして、選択、抽出されてい
る。
It should be noted that the embedding section 22 executes the step S21.
In reference to the continuous area data stored in the work memory, only the continuous areas of the first horizontal line and the 801st horizontal line are selected and extracted. Here, in the embodiment of FIG. 12, the entire area of the first horizontal line and the 801st horizontal line is selected and extracted as a continuous area.

【0105】そして、ステップS24に進み、埋め込み
部22は、処理対象画像である、例えば、第1水平ライ
ンの画像と、第801の水平ラインの画像を入れ替える
ことにより、画像データに、被埋め込みデータを埋め込
む。
Then, in step S24, the embedding section 22 replaces the image of the first horizontal line and the image of the 801st horizontal line, which are the images to be processed, with the image data to be embedded data. Embed.

【0106】即ち、図12Bは、被埋め込みデータが埋
め込まれる前の第1水平ラインの画像データの画素値を
示している。また、図12Cは、被埋め込みデータが埋
め込まれる前の第801水平ラインの画像データの画素
値を示している。図12Bおよび図12Cに示すよう
に、第1水平ラインの領域と第801水平ラインの領域
では、画素値の変化パターン(周波数特性)が異なって
いる。
That is, FIG. 12B shows the pixel value of the image data of the first horizontal line before the embedded data is embedded. Further, FIG. 12C shows the pixel value of the image data of the 801st horizontal line before the embedded data is embedded. As shown in FIGS. 12B and 12C, the pixel value change patterns (frequency characteristics) are different between the first horizontal line region and the 801st horizontal line region.

【0107】例えば、いま、上位3ビットが2で、下位
3ビットが6の6ビットの被埋め込みデータを、画像デ
ータに埋め込むこととすると、埋め込み部22は、上位
3ビットの2を埋め込むため、図12Bに示した第1水
平ラインの左から2ブロック目の画像ブロックを選択す
るとともに、下位3ビットの6を埋め込むため、図12
Cに示した第801水平ラインの左からの6ブロック目
の画像ブロックを選択する。さらに、埋め込み部22
は、選択された第1水平ラインの2ブロック目の画像ブ
ロックと、第801水平ラインの6ブロック目の画像ブ
ロックを入れ替える操作を行う。これにより、第1水平
ラインの画素値の変化パターンが、図12Bから図12
Dに示すように変更されるとともに、第801水平ライ
ンの画素値の変化パターンが、図12Cから図12Eに
示すように変更され、第1水平ラインと第801水平ラ
インに、上位3ビットが2を表し、かつ下位3ビットが
6を表す6ビットの被埋め込みデータが埋め込まれる。
For example, if it is assumed that 6-bit embedded data in which the upper 3 bits are 2 and the lower 3 bits are 6 is embedded in the image data, the embedding section 22 embeds 2 of the upper 3 bits. Since the image block of the second block from the left of the first horizontal line shown in FIG. 12B is selected and 6 of the lower 3 bits are embedded,
The sixth image block from the left of the 801st horizontal line shown in C is selected. Furthermore, the embedding part 22
Performs an operation of exchanging the selected second block of the first horizontal line with the selected sixth block of the 801st horizontal line. As a result, the change pattern of the pixel value of the first horizontal line is changed from FIG. 12B to FIG.
12C to 12E, the change pattern of the pixel value of the 801st horizontal line is changed as shown in FIG. 12C, and the upper 3 bits are 2 in the first horizontal line and the 801st horizontal line. And the lower 3 bits represent 6 and the 6-bit embedded data is embedded.

【0108】その後、ステップS25において、埋め込
み部22は、被埋め込みデータが埋め込まれた第1水平
ラインと第801水平ラインの画像データを、フレーム
メモリ21に書き込み(上書きし)、ステップS26に
進む。
Thereafter, in step S25, the embedding section 22 writes (overwrites) the image data of the first horizontal line and the 801st horizontal line in which the embedded data is embedded into the frame memory 21, and proceeds to step S26.

【0109】ステップS26では、埋め込み部22は、
フレームメモリ21に記憶された1フレームの画像デー
タのすべての水平ラインに、被埋め込みデータを埋め込
んだかどうかを判定する。ステップS26において、ま
だ、すべての水平ラインに、被埋め込みデータを埋め込
んでいないと判定された場合、ステップS22に戻り、
埋め込み部22は、新たな被埋め込みデータを受信し、
ステップS23に進む。ステップS23では、埋め込み
部22は、上領域と下領域から、次の水平ラインを選択
し、即ち、いまの場合は、第2水平ラインと第802水
平ラインを選択し、以下、同様の処理を繰り返す。
In step S26, the embedding section 22
It is determined whether or not the embedded data is embedded in all the horizontal lines of the image data of one frame stored in the frame memory 21. If it is determined in step S26 that the embedded data has not been embedded in all the horizontal lines, the process returns to step S22.
The embedding unit 22 receives the new embedded data,
It proceeds to step S23. In step S23, the embedding unit 22 selects the next horizontal line from the upper region and the lower region, that is, in this case, the second horizontal line and the 802nd horizontal line, and the same processing is performed thereafter. repeat.

【0110】一方、ステップS26において、フレーム
メモリ21に記憶された1フレームの画像データのすべ
ての水平ラインに、被埋め込みデータを埋め込んだと判
定された場合、即ち、ステップS23で、第1水平ライ
ンと第801水平ラインのセットから、第800ライン
と第1600ラインのセットまでが、処理対象画像とし
て選択された場合、埋め込み部22は、フレームメモリ
21に記憶された画像データ、即ち、被埋め込みデータ
が埋め込まれた画像データ(埋め込み画像データ)を読
み出して出力させ、埋め込み処理を終了する。
On the other hand, when it is determined in step S26 that the embedded data is embedded in all the horizontal lines of the image data of one frame stored in the frame memory 21, that is, in step S23, the first horizontal line is detected. And the set of the 801st horizontal lines to the set of the 800th and 1600th lines are selected as the processing target images, the embedding unit 22 determines that the image data stored in the frame memory 21, that is, the embedded data. The embedded image data (embedded image data) is read out and output, and the embedding process ends.

【0111】なお、図11の埋め込み処理は、フレーム
メモリ21に記憶された画像データを対象に、フレーム
単位で繰り返し行われる。
The embedding process shown in FIG. 11 is repeated for each frame for the image data stored in the frame memory 21.

【0112】次に、図13は、画像の連続性を利用し
て、埋め込み対象データとしての画像データに対して被
埋め込みデータが埋め込まれた埋め込み符号化データを
復元する復元処理の例を示すフローチャートである。
Next, FIG. 13 is a flow chart showing an example of a restoration process for restoring the embedded coded data in which the embedded data is embedded in the image data as the embedding target data by utilizing the continuity of the images. Is.

【0113】まず最初に、ステップS31において、復
元部32は、1フレーム単位の埋め込み符号化データ
(埋め込み画像データ)を、フレームメモリ31に記憶
させる。さらに、ステップS31では、復元部32は、
図11のステップS21における場合と同様にして、埋
め込み符号化データの中から連続領域を抽出し、その画
像ブロックの位置を、連続領域データとして、図示せぬ
ワークメモリに記憶させる。
First, in step S31, the restoration unit 32 stores the embedded coded data (embedded image data) in units of one frame in the frame memory 31. Furthermore, in step S31, the restoration unit 32
Similar to the case of step S21 of FIG. 11, a continuous area is extracted from the embedded coded data, and the position of the image block is stored in a work memory (not shown) as continuous area data.

【0114】ここで、本実施の形態では、図12で説明
したことから、1水平ラインに3ビットの被埋め込みデ
ータが埋め込まれるが、この埋め込みは、1水平ライン
のうち1つの画像ブロックを、他の水平ラインの画像ブ
ロックに変更する操作によって行われる。従って、1水
平ラインを構成する画像ブロックのうちの、少なくとも
1つは、被埋め込みデータの埋め込みのための変更操作
によって非連続領域になっている。しかしながら、連続
領域の抽出の際には、図11のステップ21で説明した
ように、補正処理が行われるため、被埋め込みデータの
埋め込みのための変更操作によって非連続領域とされた
画像ブロックは、連続領域に変換される(連続領域とみ
なされる)。
Here, in the present embodiment, as described with reference to FIG. 12, the embedded data of 3 bits is embedded in one horizontal line. This embedding is performed by one image block in one horizontal line. This is performed by an operation of changing to an image block of another horizontal line. Therefore, at least one of the image blocks forming one horizontal line is a non-contiguous region due to the change operation for embedding the embedded data. However, when extracting the continuous area, since the correction processing is performed as described in step 21 of FIG. 11, the image block that is made into the non-continuous area by the change operation for embedding the embedded data is Converted to continuous areas (considered as continuous areas).

【0115】その後、ステップS32に進み、復元部3
2は、ステップS31でワークメモリに記憶された連続
領域データを参照して、図11のステップS23におけ
る場合と同様に、フレームメモリ31に記憶された1フ
レームの埋め込み画像データを、上領域と下領域に、仮
想的に分割し、その上領域と下領域それぞれから、同一
位置の水平ラインの連続領域を、順次、選択、抽出す
る。
After that, the process proceeds to step S32, and the restoration unit 3
2 refers to the continuous area data stored in the work memory in step S31, and the embedded image data of one frame stored in the frame memory 31 is compared with the upper area and the lower area in the same manner as in step S23 of FIG. It is virtually divided into regions, and continuous regions of horizontal lines at the same position are sequentially selected and extracted from each of the upper region and the lower region.

【0116】従って、フレームメモリ31に記憶された
埋め込み画像データについて、ステップS32の処理が
最初に行われる場合には、上領域の第1行である第1水
平ラインと、下領域の第1行である第801水平ライン
が選択される。ここで、図11のステップS23で説明
したように、埋め込み対象データとしての画像データの
第1水平ラインと、第801水平ラインの全領域(全画
像ブロック)が、連続領域であるとすると、ステップS
32では、第1水平ラインと、第801水平ラインの全
領域が抽出される。
Therefore, for the embedded image data stored in the frame memory 31, when the process of step S32 is performed first, the first horizontal line which is the first row of the upper region and the first line of the lower region. The 801st horizontal line is selected. Here, as described in step S23 of FIG. 11, assuming that the first horizontal line of the image data as the embedding target data and the entire region (all image blocks) of the 801st horizontal line are continuous regions, S
At 32, the entire regions of the first horizontal line and the 801st horizontal line are extracted.

【0117】そして、ステップS33に進み、復元部3
2は、ステップS32で上領域と下領域それぞれから抽
出された第1水平ラインの連続領域と、第801水平ラ
インの連続領域を構成する、上述の32×1画素単位の
画像ブロックを、例えばDCT処理し、これにより、画
像データの連続性を評価する評価値としてのDCT係数
を算出して、ステップS34に進む。
Then, the process proceeds to step S33, and the restoration unit 3
In step 2, the image block in 32 × 1 pixel units, which forms the continuous area of the first horizontal line and the continuous area of the 801st horizontal line extracted from the upper area and the lower area in step S32, is displayed by, for example, DCT. After processing, the DCT coefficient as an evaluation value for evaluating the continuity of the image data is calculated, and the process proceeds to step S34.

【0118】ステップS34では、復元部32は、上領
域から抽出された第1水平ラインの連続領域を構成する
画像ブロックを、例えば、左側から、順次、注目ブロッ
クとし、その注目ブロックについて、例えば、注目ブロ
ックのDCT係数から、その左隣の画像ブロックのDC
T係数を減算し、そのDCT係数の差分値の絶対値和を
算出する。さらに、復元部32は、下領域から抽出され
た第801水平ラインの連続領域についても同様に、そ
の連続領域を構成する画像ブロックを、順次、注目ブロ
ックとし、その注目ブロックについて、DCT係数の差
分値の絶対値和を算出する。そして、復元部32は、算
出したDCT係数の差分値の絶対値和を、ワークメモリ
に記憶させる。
In step S34, the restoration unit 32 sets the image blocks constituting the continuous area of the first horizontal line extracted from the upper area as the target block sequentially from, for example, the left side. From the DCT coefficient of the block of interest, the DC of the image block on the left
The T coefficient is subtracted, and the absolute value sum of the difference values of the DCT coefficients is calculated. Further, similarly, for the continuous area of the 801st horizontal line extracted from the lower area, the restoration unit 32 similarly sequentially sets the image blocks forming the continuous area as the block of interest, and with respect to the block of interest, the difference in DCT coefficient between them. Calculate the sum of absolute values. Then, the restoration unit 32 stores the calculated absolute value sum of the difference values of the DCT coefficients in the work memory.

【0119】なお、注目ブロックの左隣の画像ブロック
が存在しない場合、即ち、ここでは、連続領域を構成す
る左端の画像ブロックが注目ブロックとされた場合、そ
の注目ブロックについてのDCT係数の差分値の絶対値
和は、例えば、0とされる。
If there is no image block on the left of the target block, that is, if the leftmost image block forming the continuous area is the target block, the difference value of the DCT coefficient for the target block is determined. The sum of absolute values of is set to 0, for example.

【0120】その後、ステップS35に進み、復元部3
2は、ワークメモリに記憶された2つの水平ラインそれ
ぞれについて、その連続領域を構成する画像ブロックの
DCT係数の差分値の絶対値和(差分絶対値和)が1番
目に大きい画像ブロックと、2番目に大きい画像ブロッ
クの2つの画像ブロックを検出し、その画像ブロックの
位置をワークメモリに記憶させる。即ち、例えば、い
ま、ワークメモリに、第1水平ラインの連続領域を構成
する画像ブロックについてのDCT係数の差分絶対値和
と、第801ラインの連続領域を構成する画像ブロック
についてのDCT係数の差分絶対値和が記憶されている
場合には、第1水平ラインにおいて、DCT係数の差分
絶対値和が1番目に大きい画像ブロック(以下、適宜、
第1位の画像ブロックという)と、2番目に大きい画像
ブロック(以下、適宜、第2位の画像ブロックという)
が検出され、その第1位と第2位の画像ブロックの位置
が、ワークメモリに記憶されるとともに、第801水平
ラインにおいても、第1位の画像ブロックと、第2位の
画像ブロックが検出され、その第1位と第2位の画像ブ
ロックの位置が、ワークメモリに記憶される。
After that, the process proceeds to step S35, and the restoration unit 3
2 is an image block in which the sum of absolute values of the difference values of the DCT coefficients of the image blocks forming the continuous area of each of the two horizontal lines stored in the work memory (sum of absolute differences) is the second largest; Two image blocks of the second largest image block are detected, and the positions of the image blocks are stored in the work memory. That is, for example, in the work memory, the sum of absolute differences between the DCT coefficients of the image blocks forming the continuous area of the first horizontal line and the difference of the DCT coefficients of the image blocks forming the continuous area of the 801st line in the work memory. When the sum of absolute values is stored, in the first horizontal line, the image block in which the sum of absolute difference between the DCT coefficients is the largest (hereinafter, as appropriate,
1st image block) and 2nd largest image block (hereinafter, appropriately referred to as 2nd image block)
Is detected, the positions of the first and second image blocks are stored in the work memory, and the first image block and the second image block are detected in the 801st horizontal line. Then, the positions of the first and second image blocks are stored in the work memory.

【0121】そして、ステップS36に進み、復元部3
2は、ワークメモリに記憶された、2つの水平ラインそ
れぞれについての第1位および第2位の画像ブロックの
位置に基づいて、6ビットの被埋め込みデータを復元し
て出力する。
Then, the process proceeds to step S36, and the restoration unit 3
2 restores and outputs 6-bit embedded data based on the positions of the first and second image blocks for each of the two horizontal lines stored in the work memory.

【0122】即ち、復元部32は、第1位と第2の画像
ブロックが隣接し、かつ第1位と第2位の画像ブロック
についてのDCT係数の差分絶対値和どうしが同程度の
値(差分絶対値和どうしの差が所定の閾値以下)の場
合、その隣接する第1位と第2の画像ブロックのうち
の、左側に位置する画像ブロック位置を、図11の埋め
込み処理によって被埋め込みデータを埋め込むのに入れ
替えられた画像ブロックの位置(以下、適宜、埋め込み
位置という)として、ワークメモリに記憶させるととも
に、その埋め込み位置に対応する値を、被埋め込みデー
タの復元結果として出力する。
That is, the restoration unit 32 determines that the first and second image blocks are adjacent to each other, and the difference absolute value sums of the DCT coefficients of the first and second image blocks are similar values ( If the difference between the absolute sums of the differences is less than or equal to a predetermined threshold value), the position of the image block located on the left side of the adjacent first and second image blocks is set to the embedded data by the embedding process of FIG. Is stored in the work memory as the position of the image block (hereinafter, appropriately referred to as an embedding position) that is replaced by embedding, and the value corresponding to the embedding position is output as the restoration result of the embedded data.

【0123】具体的には、例えば、図11の埋め込み処
理において、第1水平ラインの連続領域につき、図12
Bおよび図12Dに示したように、その左から3番目の
画像ブロックと、第801水平ラインの画像ブロックと
の入れ替え操作が行われた場合、その左から2番目と3
番目の画像ブロックについては、そのDCT係数の差分
絶対値和が大きくなる。従って、第1水平ラインについ
ては、図13のステップS35において、その左から3
番目と4番目の2つの隣接する画像ブロックが、第1位
と第2位の画像ブロック(または第2位と第1位の画像
ブロック)として検出され、その左側に位置する画像ブ
ロック、即ち、左から3番目の画像ブロックの位置(埋
め込み位置)に基づいて、上述の6ビットの被埋め込み
データのうちの上位3ビットが、2(=3−1)に復元
される。
Specifically, for example, in the embedding process of FIG. 11, for the continuous area of the first horizontal line, FIG.
As shown in B and FIG. 12D, when the replacement operation of the third image block from the left and the image block of the 801st horizontal line is performed, the second and third images from the left are replaced.
For the second image block, the sum of absolute differences between the DCT coefficients becomes large. Therefore, for the first horizontal line, in step S35 of FIG.
The two adjacent image blocks, the second and the fourth, are detected as the first and second image blocks (or the second and first image blocks), and the image block located to the left of them, that is, Based on the position (embedding position) of the third image block from the left, the upper 3 bits of the 6-bit embedded data are restored to 2 (= 3-1).

【0124】また、例えば、図11の埋め込み処理にお
いて、第801水平ラインの連続領域につき、図12C
および図12Eに示したように、その左から7番目の画
像ブロックと、第1水平ラインの画像ブロックとの入れ
替え操作が行われた場合、その左から7番目と8番目の
画像ブロックについては、そのDCT係数の差分絶対値
和が大きくなる。従って、第801水平ラインについて
は、図13のステップS35において、その左から7番
目と8番目の2つの隣接する画像ブロックが、第1位と
第2位の画像ブロック(または第2位と第1位の画像ブ
ロック)として検出され、その左側に位置する画像ブロ
ック、即ち、左から7番目のブロックの位置(埋め込み
位置)に基づいて、上述の6ビットの被埋め込みデータ
のうちの下位3ビットが、6(=7−1)に復元され
る。
In addition, for example, in the embedding process of FIG. 11, for the continuous area of the 801st horizontal line, FIG.
And as shown in FIG. 12E, when the 7th image block from the left and the image block of the first horizontal line are exchanged, the 7th and 8th image blocks from the left are: The sum of absolute differences of the DCT coefficients becomes large. Therefore, for the 801st horizontal line, in step S35 of FIG. 13, the two adjacent image blocks, the seventh and the eighth from the left, are the first and second image blocks (or the second and the second image blocks). 1st image block), and the lower 3 bits of the above-mentioned 6-bit embedded data based on the position (embedding position) of the image block located on the left side thereof, that is, the 7th block from the left Is restored to 6 (= 7-1).

【0125】ここで、図11の埋め込み処理において、
水平ラインの連続領域の左端の画像ブロックまたは右端
の画像ブロックが、他の水平ラインの画像ブロックと入
れ替えられることにより、被埋め込みデータが埋め込ま
れている場合には、DCT係数の差分絶対値和は、その
入れ替えが行われた画像ブロックについてのみ、ある程
度大きくなり、他のブロックについては、それほど大き
くならない。このため、復元部32は、第1位と第2位
の画像ブロックの位置が隣接していない場合、または第
1位と第2位の画像ブロックについてのDCT係数の差
分絶対値和どうしが同程度の値でない場合(差分絶対値
和どうしの差が所定の閾値以上の場合)には、第1位の
画像ブロックの位置に基づき、被埋め込みデータを復元
する。即ち、この場合、第1位の画像ブロックが、左端
または右端の画像ブロックであるとき、被埋め込みデー
タとして、0または7が、それぞれ復元される。
Here, in the embedding process of FIG.
When the embedded data is embedded by replacing the image block at the left end or the image block at the right end of the continuous region of horizontal lines with the image block of another horizontal line, the sum of absolute difference of DCT coefficients is , The size of the replaced image block is increased to some extent, and other blocks are not increased so much. Therefore, when the positions of the first and second image blocks are not adjacent to each other, or when the first and second image blocks have the same difference absolute value sum of the DCT coefficients. If the value is not such a value (when the difference between the absolute sums of differences is equal to or larger than a predetermined threshold value), the embedded data is restored based on the position of the first image block. That is, in this case, when the first image block is the leftmost or rightmost image block, 0 or 7 is restored as the data to be embedded, respectively.

【0126】以上のようにして、埋め込み位置に基づい
て、被埋め込みデータが復元されると、ステップS37
に進み、復元部32は、ステップS35においてワーク
メモリに記憶された、6ビットの被埋め込みデータを復
元するのに用いられた2つの埋め込み位置にしたがい、
フレームメモリ31に記憶された埋め込み画像データ
の、ステップS32で選択された2つの水平ラインにお
ける画像ブロックの位置を入れ替える。
When the embedded data is restored based on the embedding position as described above, step S37.
Then, the restoration unit 32 follows the two embedding positions used to restore the 6-bit embedded data stored in the work memory in step S35,
The positions of the image blocks in the two horizontal lines selected in step S32 of the embedded image data stored in the frame memory 31 are exchanged.

【0127】即ち、例えば、図11の埋め込み処理にお
いて、図12で説明したように、上領域の第1行である
第1水平ラインの左から3番目の画像ブロックと、下領
域の第1行である第801ラインの左から7番目の画像
ブロックとが入れ替えられた場合には、図13のステッ
プS35において、第1水平ラインについては、左から
3番目を表す埋め込み位置が記憶され、第801水平ラ
インについては、左から7番目を表す埋め込み位置が記
憶される。従って、この場合、ステップ37では、第1
水平ラインの左から3番目の画像ブロックと、第801
水平ラインの左から7番目の画像ブロックとが入れ替え
られ、これにより、第1水平ラインおよび第801水平
ラインが復元される。
That is, for example, in the embedding process of FIG. 11, as described with reference to FIG. 12, the third image block from the left of the first horizontal line, which is the first row of the upper region, and the first row of the lower region. If the 7th image block from the left of the 801st line is replaced, the embedding position indicating the 3rd from the left is stored for the 1st horizontal line in step S35 of FIG. For the horizontal line, the embedding position representing the seventh from the left is stored. Therefore, in this case, in step 37, the first
The third image block from the left of the horizontal line,
The 7th image block from the left of the horizontal line is replaced, and thereby the 1st horizontal line and the 801st horizontal line are restored.

【0128】その後、復元部32は、復元した2つの水
平ラインを、フレームメモリ31に上書きする形で書き
込み、ステップS38に進む。ステップS38では、復
元部32は、フレームメモリ31に記憶された1フレー
ムの埋め込み画像データについて、埋め込み対象データ
としての画像データと、そこに埋め込まれている被埋め
込みデータの復元が終了したか否かを判定する。ステッ
プS38において、フレームメモリ31に記憶された1
フレームの埋め込み画像データについての復元が終了し
ていないと判定された場合、ステップS32に戻り、フ
レームメモリ31に記憶された埋め込み画像データにお
ける上領域と下領域それぞれから、次の行の水平ライン
が選択され、以下、同様の処理が繰り返される。
After that, the restoration unit 32 writes the restored two horizontal lines in the frame memory 31 in a form of overwriting, and proceeds to step S38. In step S38, the restoration unit 32 determines whether the restoration of the image data as the embedding target data and the embedded data embedded therein has been completed for the one frame of the embedded image data stored in the frame memory 31. To judge. 1 stored in the frame memory 31 in step S38
When it is determined that the restoration of the embedded image data of the frame is not completed, the process returns to step S32, and the horizontal line of the next row is extracted from each of the upper region and the lower region in the embedded image data stored in the frame memory 31. After being selected, similar processing is repeated thereafter.

【0129】また、ステップS38において、フレーム
メモリ31に記憶された1フレームの埋め込み画像デー
タについての復元が終了したと判定された場合、ステッ
プS39に進み、復元部32は、フレームメモリ31に
記憶された画像データ、即ち、復元された埋め込み対象
データとしての画像データを出力させ、処理を終了す
る。
If it is determined in step S38 that the restoration of the embedded image data of one frame stored in the frame memory 31 is completed, the process proceeds to step S39 and the restoration unit 32 is stored in the frame memory 31. The image data that has been restored, that is, the image data that is the restored embedding target data is output, and the processing ends.

【0130】なお、図13の実施の形態によれば、埋め
込み対象データとしての画像データは、2つの水平ライ
ンごとに、即ち、その上領域と下領域それぞれの同一行
の水平ラインごとに復元される。従って、復元された画
像データは、上述のように、フレームメモリ31に記憶
された1フレームの画像データすべてが復元された後に
出力することもできるが、復元単位である2つの水平ラ
インが復元されるごとに出力することも可能である。
According to the embodiment of FIG. 13, the image data as the embedding target data is restored for every two horizontal lines, that is, for each horizontal line of the same row in each of the upper area and the lower area thereof. It Therefore, the restored image data can be output after all of the one-frame image data stored in the frame memory 31 is restored as described above, but two horizontal lines, which are restoration units, are restored. It is also possible to output every time.

【0131】以上のように、被埋め込みデータが埋め込
まれた画像データである埋め込み画像データを、画像の
連続性を利用して、元の画像データと被埋め込みデータ
に復元するようにしたので、その復元のためのオーバヘ
ッドがなくても、埋め込み画像データを、元の画像デー
タと被埋め込みデータに復元することができる。従っ
て、その復元画像(復号画像)には、基本的に、被埋め
込みデータを埋め込むことによる画質の劣化は生じな
い。
As described above, since the embedded image data, which is the image data in which the embedded data is embedded, is restored to the original image data and the embedded data by utilizing the continuity of the image, The embedded image data can be restored to the original image data and the embedded data without the overhead for the restoration. Therefore, basically, the restored image (decoded image) does not deteriorate in image quality due to the embedding of the embedded data.

【0132】即ち、図11の埋め込み処理によれば、1
の水平ラインにおける、6ビットの被埋め込みデータの
上位3ビットに対応する位置の画像ブロックと、他の1
つの水平ラインにおける、6ビットの被埋め込みデータ
の下位3ビットに対応する位置の画像ブロックとを入れ
替えるという操作ルールにしたがい、画像データに対し
て、被埋め込みデータが埋め込まれ、埋め込み画像デー
タが生成される。
That is, according to the embedding process of FIG.
Of the image block at the position corresponding to the upper 3 bits of the 6-bit embedded data in the horizontal line of
According to the operation rule of replacing the image block at the position corresponding to the lower 3 bits of the 6-bit embedded data in one horizontal line, the embedded data is embedded in the image data to generate the embedded image data. It

【0133】一方、図13の復元処理によれば、埋め込
み画像データのDCT係数を、連続性の評価値として、
その連続性を利用し、埋め込み処理における操作ルール
にしたがって、埋め込み画像データに対して、埋め込み
処理における場合とは逆の操作が行われる。そして、そ
の操作によって、埋め込み画像データが、元の画像デー
タと被埋め込みデータが復元される。
On the other hand, according to the restoration processing of FIG. 13, the DCT coefficient of the embedded image data is used as the continuity evaluation value.
Utilizing the continuity, the operation opposite to that in the embedding process is performed on the embed image data according to the operation rule in the embedding process. Then, the operation restores the embedded image data to the original image data and the embedded data.

【0134】従って、図11の埋め込み処理における操
作ルールは、画像データの連続性を利用して、被埋め込
みデータが埋め込まれた埋め込み画像データを元に戻す
ことができる操作ルールであるということができるが、
埋め込み処理では、このような操作ルールを採用するこ
とで、画像データの画質を劣化させることなく(最低限
の劣化に抑えて)、かつデータ量を増加せずに、画像デ
ータに被埋め込みデータを埋め込むことができる。
Therefore, the operation rule in the embedding process of FIG. 11 can be said to be an operation rule that can restore the embedded image data in which the embedded data is embedded by utilizing the continuity of the image data. But,
In the embedding process, by adopting such an operation rule, the embedded data can be embedded in the image data without deteriorating the image quality of the image data (with the minimum deterioration) and without increasing the data amount. Can be embedded.

【0135】なお、上述の場合には、埋め込み画像デー
タのDCT係数を、連続性の評価値として用いるように
したが、連続性の評価値としては、DCT係数以外のも
のを使用することが可能である。
In the above case, the DCT coefficient of the embedded image data is used as the continuity evaluation value, but other than the DCT coefficient can be used as the continuity evaluation value. Is.

【0136】次に、情報の相似性を利用した埋め込み処
理と復元処理について説明する。
Next, the embedding process and the restoring process utilizing the similarity of information will be described.

【0137】例えば、風景を撮影した画像等の一部は、
画像のフラクタル性(自己相似性)を利用して生成する
ことができることが知られている。そして、例えば、図
14Aに示すような、海R1と森R2が表示されている
画像においては、海R1全体の画素値の変化パターン
(例えば、エッジ形状)と、その海R1の一部の画素値
の変化パターンとの相似性は高いが、それらの変化パタ
ーンと、海R1から離れた森R2の画素値の変化パター
ンとの相似性は低いという相似性の偏りがある。
For example, part of an image of a landscape is
It is known that it can be generated by utilizing the fractal nature (self-similarity) of an image. Then, for example, in an image in which the sea R1 and the forest R2 are displayed as shown in FIG. 14A, a change pattern (for example, an edge shape) of pixel values of the entire sea R1 and some pixels of the sea R1. Although there is a high degree of similarity with the value change patterns, there is a similarity bias in that those change patterns have a low degree of similarity with the pixel value change patterns of the forest R2 distant from the sea R1.

【0138】そこで、いま、図14Aに示した海R1の
一部R3と、森R2の一部R4とを入れ替える。
Therefore, a part R3 of the sea R1 and a part R4 of the forest R2 shown in FIG. 14A are replaced.

【0139】この場合、画像の相似性の偏りが破壊さ
れ、図14Bに示すような画像が得られる。しかしなが
ら、近接する部分の画素値の変化パターンは相似性が高
く、離れるほど、画素値の変化パターンの相似性が低く
なるという相似性の偏りを利用することにより、破壊さ
れた相似性の偏りを復元することができる。即ち、図1
4Bにおいて、海R1の画像の一部が、海R1と相似性
の低い森R2の画像の一部R4になっていること、およ
び森R2の画像の一部が、森R2と相似性の低い海R1
の画像の一部R3となっていることは、画像が有する本
来の相似性の偏りからすれば、明らかに不自然である。
具体的には、図14Bにおいて、海R1の画像の中の、
森R2の画像の一部R4についての相似性は、海R1の
他の部分についての相似性に比較して極端に低くなって
おり、また、森R2の画像の中の、海R1の画像の一部
R3についての相似性も、森R2の他の部分についての
相似性に比較して極端に低くなっている。一方、海R1
の中にある森R2の一部R4と、森R2との相似性、お
よび森R2の中にある海R1の一部R3と、海R1の相
似性は、いずれも高い。
In this case, the bias in the similarity of images is destroyed, and an image as shown in FIG. 14B is obtained. However, by utilizing the similarity bias that the variation patterns of the pixel values of the adjacent portions have a high similarity, and the similarity of the variation patterns of the pixel values decreases as the distance increases, the bias of the destroyed similarity is eliminated. Can be restored. That is, FIG.
4B, a part of the image of the sea R1 is a part R4 of the image of the forest R2 having low similarity to the sea R1, and a part of the image of the forest R2 has low similarity to the forest R2. Sea R1
The fact that it is a part R3 of the image is obviously unnatural from the perspective of the original similarity of the image.
Specifically, in FIG. 14B, in the image of the sea R1,
The similarity of a part R4 of the image of the forest R2 is extremely lower than the similarity of other parts of the sea R1, and the similarity of the image of the sea R1 in the image of the forest R2. The similarity for part R3 is also extremely lower than the similarity for other parts of the forest R2. On the other hand, the sea R1
The similarity between the part R4 of the forest R2 inside the forest and the forest R2, and the similarity between the part R3 of the sea R1 inside the forest R2 and the sea R1 are both high.

【0140】従って、画像が本来有する相似性の偏りか
らすれば、海R1の画像の一部となっている、森R2の
画像の一部R4と、森R2の画像の一部となっている、
海R1の画像の一部R3とは入れ替えるべきである。そ
して、そのような入れ替えを行うことで、画像の相似性
の偏りが復元され、これにより、図14Bに示した画像
から、図14Aに示した元の画像を復元することができ
る。
Therefore, in view of the similarity bias inherent in the image, it is part of the image of the forest R2, which is part of the image of the sea R1, and part of the image of the forest R2. ,
A part R3 of the image of the sea R1 should be replaced. Then, by performing such replacement, the bias in similarity of the images is restored, and thus the original image shown in FIG. 14A can be restored from the image shown in FIG. 14B.

【0141】ここで、図14で説明した場合において
は、埋め込み対象データとしての海R1の画像の一部R
3と、森R2の画像の一部R4とを入れ替えることが、
被埋め込みデータを、埋め込み対象データに埋め込むこ
とになる。また、その埋め込みに際して、例えば、海R
1の画像のどの部分(画面上の位置)と、森R2の画像
のどの部分とを入れ替えるのかなどが、被埋め込みデー
タにしたがって決定されることになる。一方、被埋め込
みデータが埋め込まれた埋め込み画像データ(埋め込み
符号化データ)、即ち、海R1の一部が、森R2の一部
R4となっているとともに、森R2の一部が、海R1の
一部R3となっている画像を、周辺の画素値の変化パタ
ーンの相似性は高く、離れるほど、画素値の変化パター
ンの相似性が低くなっていくという相似性の偏りを利用
して、元の画像に戻すことが、その元の画像を復元する
こととなる。そして、その復元に際して、例えば、海の
画像のどの部分と、森の画像のどの部分とが入れ替えら
れていたのかなど、即ち、埋め込み画像データを、どの
ような操作によって元の画像データに戻したかによっ
て、画像データに埋め込まれていた被埋め込みデータを
復元される。
Here, in the case described with reference to FIG. 14, a part R of the image of the sea R1 as the embedding target data.
Replacing 3 with part R4 of the image of forest R2,
The embedded data is embedded in the embedding target data. Also, when embedding it, for example, sea R
Which part (position on the screen) of the image No. 1 and which part of the image of the forest R2 are to be replaced is determined according to the embedded data. On the other hand, the embedded image data (embedded encoded data) in which the embedded data is embedded, that is, part of the sea R1 is part of the forest R2 and part of the forest R2 is part of the sea R1. An image with a part R3 has a high similarity in the variation pattern of the surrounding pixel values, and the similarity of the variation pattern of the pixel values becomes lower as the distance from the image is reduced. To restore the original image, the original image is restored. Then, at the time of the restoration, for example, which part of the sea image and which part of the forest image were exchanged, that is, how the embedded image data was restored to the original image data Thus, the embedded data embedded in the image data is restored.

【0142】次に、図15を参照して、相似性につい
て、さらに説明する。
Next, the similarity will be further described with reference to FIG.

【0143】いま、例えば、図15Aに示すようなフラ
クタル画像を埋め込み対象データとして、そこに被埋め
込みデータを埋め込むとした場合、被埋め込みデータに
対応して、フラクタル画像の一部が、そのフラクタル画
像とは相似でない画像に入れ替えられることで、フラク
タル画像への被埋め込みデータの埋め込みが行われる。
即ち、図15Aでは、樹木の葉の形状をしたフラクタル
画像が埋め込み対象データとされているが、被埋め込み
データの埋め込みは、そのフラクタル画像の一部が、例
えば、図15Bに示すように、三角形に入れ替えられる
ことで行われる。即ち、図15では、図15Bにおいて
D1およびD2で示す部分が三角形になっており、この
ように、三角形に入れ替えられるフラクタル画像の位置
や、フラクタル画像と入れ替える三角形の大きさ、数な
どが、被埋め込みデータにしたがって決定される。
Now, for example, when a fractal image as shown in FIG. 15A is used as embedding data and embedded data is embedded therein, a part of the fractal image corresponding to the embedding data is a part of the fractal image. The embedded data is embedded in the fractal image by replacing the image with an image that is not similar to.
That is, in FIG. 15A, a fractal image in the shape of a tree leaf is set as embedding target data. However, when embedding data to be embedded, a part of the fractal image becomes a triangle as shown in FIG. 15B. It is done by being replaced. That is, in FIG. 15, the portions indicated by D1 and D2 in FIG. 15B are triangular, and in this way, the position of the fractal image to be replaced by the triangle, the size and number of the triangle to be replaced with the fractal image, etc. Determined according to the embedded data.

【0144】一方、上述のようにして、被埋め込みデー
タが埋め込み対象データとしてのフラクタル画像に埋め
込まれた埋め込み符号化データは、例えば、次のように
して、フラクタル画像と被埋め込みデータとに復元され
る。即ち、例えば、図15Bにおいて、点線の四角形で
囲んである部分については、三角形との入れ替えを行わ
ないこととしておき、その点線の四角形で囲んである部
分を、教師画像として、その教師画像と相似でない部分
(ここでは、三角形)が検索される。さらに、教師画像
と相似でない部分である三角形が、教師画像に含まれ
る、フラクタル画像の基準図形から生成される画像(フ
ラクタル画像)に入れ替えられ、これにより、元のフラ
クタル画像(図15A)が復元される。そして、検索さ
れた三角形の位置や、大きさ、数などに基づいて、埋め
込まれた被埋め込みデータが復元される。
On the other hand, the embedded coded data in which the embedded data is embedded in the fractal image as the embedding target data as described above is restored to the fractal image and the embedded data as follows, for example. It That is, for example, in FIG. 15B, a portion surrounded by a dotted-line quadrangle is not replaced with a triangle, and the portion surrounded by the dotted-line quadrangle is similar to the teacher image as a teacher image. The non-part (here, a triangle) is searched. Further, the triangle that is not similar to the teacher image is replaced with the image (fractal image) generated from the reference figure of the fractal image included in the teacher image, thereby restoring the original fractal image (FIG. 15A). To be done. Then, the embedded data to be embedded is restored based on the position, size, number, etc. of the retrieved triangle.

【0145】なお、上述の場合においては、教師画像に
含まれる、フラクタル画像の基準図形を検出する必要が
あるが、これは、例えば、次のようにして行われる。即
ち、図15Bの画像のうちの、教師画像と、それ以外の
部分との相似性、および教師画像の自己相似性に基づい
て、図15Bの画像を対象に、フラクタル画像の基準図
形が検索され、教師画像以外の部分を、最も効率良く表
すことができる図形が、基準図形として検出される。
In the above case, it is necessary to detect the reference figure of the fractal image included in the teacher image, but this is performed as follows, for example. That is, the reference figure of the fractal image is searched for in the image of FIG. 15B based on the similarity between the teacher image and the other part in the image of FIG. 15B and the self-similarity of the teacher image. A figure that can most efficiently represent the part other than the teacher image is detected as the reference figure.

【0146】また、図15の実施の形態では、元のフラ
クタル画像の生成規則が認識されており、その生成規則
に基づいて、三角形と入れ替える画像が、基準図形を用
いて生成されるものとする。即ち、埋め込み対象データ
としてのフラクタル画像と被埋め込みデータの復元時に
おいては、三角形と入れ替える画像を生成するための、
基準図形の大きさや、位置、回転量などが、生成規則に
基づいて特定され、その特定された基準図形の大きさ
や、位置、回転量などにしたがって、基準図形が操作さ
れ、三角形と入れ替える画像(フラクタル画像)が生成
されるものとする。
In the embodiment of FIG. 15, the original fractal image generation rule is recognized, and an image to be replaced with a triangle is generated using a reference figure based on the generation rule. . That is, at the time of restoring the fractal image as the embedding target data and the embedded data, in order to generate an image to be replaced with a triangle,
The size, position, rotation amount, etc. of the reference graphic are specified based on the generation rule, and the reference graphic is operated according to the specified size, position, rotation amount, etc. of the reference graphic, and the image is replaced with a triangle ( Fractal image) shall be generated.

【0147】次に、図16は、埋め込み符号化器3にお
いて、画像の相似性を利用した埋め込みが行われる場合
の処理の例を示すフローチャートである。
Next, FIG. 16 is a flow chart showing an example of processing in the embedding encoder 3 when embedding is performed using the similarity of images.

【0148】ステップS51において、埋め込み部22
は、埋め込み対象データベース1から1フレーム分の画
像データを、フレームメモリ21に転送して記憶させ、
さらに、画像データの相似領域を検出し、その相似領域
の位置を示す相似領域データを、ワークメモリに記憶さ
せる。
In step S51, the embedding section 22
Transfers one frame of image data from the embedding target database 1 to the frame memory 21 and stores it therein.
Further, the similar area of the image data is detected, and the similar area data indicating the position of the similar area is stored in the work memory.

【0149】即ち、例えば、図17Aに示すような、5
6×1600画素からなるフラクタル画像を、埋め込み
対象データとして、被埋め込みデータの埋め込みを行う
場合には、埋め込み部22は、まず、その56×160
0画素からなるフラクタル画像を、例えば、8×8画素
毎の画像ブロックに分割し、その画像ブロックを、順
次、注目ブロックとする。さらに、埋め込み部22は、
注目ブロックを構成する画素を、例えば、ラスタスキャ
ン順にスキャンし、注目ブロックと、その左右に隣接す
る画像ブロックである2つの周辺画像ブロックそれぞれ
との相似性を算出する。
That is, for example, as shown in FIG.
When embedding data to be embedded by using a fractal image composed of 6 × 1600 pixels as embedding target data, the embedding unit 22 firstly outputs the 56 × 160.
A fractal image consisting of 0 pixels is divided into image blocks of, for example, 8 × 8 pixels, and the image blocks are sequentially set as target blocks. Furthermore, the embedding part 22 is
The pixels forming the target block are scanned, for example, in raster scan order, and the similarity between the target block and each of the two peripheral image blocks that are image blocks adjacent to the left and right of the target block is calculated.

【0150】具体的には、埋め込み部22は、注目ブロ
ックの大きさ、位置、回転量を所定量だけ変更しなが
ら、その注目ブロックと、左隣または右隣の画像ブロッ
ク(周辺画像ブロック)それぞれとのマッチングを行
い、これにより、例えば、注目ブロックを構成する各画
素と、周辺画像ブロックを構成する対応する画素との差
分絶対値和の逆数を、マッチング度として求める。さら
に、埋め込み部22は、注目ブロックと、2つの周辺画
像ブロックそれぞれとの2つのマッチング度を平均し、
その平均値を、注目ブロックの周辺との相似性を表す評
価値(相似性評価値)として、ワークメモリに記憶させ
る。ここで、左端または右端の画像ブロックが、注目ブ
ロックのときは、その左側または右側には、周辺画像ブ
ロックが存在しないため、例えば、右側または左側の周
辺画像ブロックとの間で求められた1つのマッチング度
を、そのまま注目ブロックの相似性評価値とすることと
する。埋め込み部22は、算出された相似性評価値(マ
ッチング度)が所定に閾値以上となった画像ブロックを
相似領域として認識し、その画像ブロックの位置を、ワ
ークメモリに記憶させる。
Specifically, the embedding unit 22 changes the size, position, and rotation amount of the block of interest by a predetermined amount, and the block of interest and the image block on the left side or on the right side (peripheral image block), respectively. And the reciprocal of the sum of absolute differences between the pixels forming the target block and the corresponding pixels forming the peripheral image block is obtained as the matching degree. Further, the embedding unit 22 averages two matching degrees of the target block and each of the two peripheral image blocks,
The average value is stored in the work memory as an evaluation value (similarity evaluation value) representing the similarity with the periphery of the block of interest. Here, when the image block at the left end or the right end is the block of interest, there is no peripheral image block on the left side or the right side, and therefore, for example, one obtained with the right or left peripheral image block is used. The matching degree is directly used as the similarity evaluation value of the target block. The embedding unit 22 recognizes an image block in which the calculated similarity evaluation value (matching degree) is equal to or higher than a predetermined threshold as a similar region, and stores the position of the image block in the work memory.

【0151】ここで、本来、相似領域とされるべき画像
ブロックの一部がノイズ等の影響により相似領域ではな
いと判断される可能性もあるので、そのような判断が行
われるのを防止するために、埋め込み部22は、相似領
域の検出の後、補正処理を行い、相似領域に隣接する、
非相似領域とされた画像ブロックを、相似領域の画像ブ
ロックに変換する。即ち、補正処理によれば、例えば、
2つの相似領域に挟まれた短い区間の非相似領域の画像
ブロックや、相似領域に隣接する1つ(または少数)の
非相似領域の画像ブロックが、相似領域の画像ブロック
に変換され(相似領域の画像ブロックとみなされ)、こ
れにより、2つの相似領域と、その間に挟まれていた領
域(非相似領域の画像ブロック)が、全体として、1つ
の相似領域に補正され、あるいは、1つの相似領域と、
それに隣接する非相似領域の画像ブロックが、全体とし
て、1つの相似領域に補正される。
Here, there is a possibility that a part of the image block, which should originally be a similar region, may be judged not to be a similar region due to the influence of noise or the like, so such a judgment is prevented. For this purpose, the embedding unit 22 performs correction processing after detecting the similar region, and the adjacent region is adjacent to the similar region.
An image block that is a dissimilar region is converted into an image block of a similar region. That is, according to the correction process, for example,
An image block of a non-similar region in a short section sandwiched between two similar regions or an image block of one (or a small number) of non-similar regions adjacent to the similar region is converted into an image block of the similar region (similar region Image blocks of two similar regions and the region sandwiched between them (the image block of the non-similar region) is corrected to one similar region as a whole, or one similar region. Area and
The image blocks in the non-similar region adjacent to it are corrected into one similar region as a whole.

【0152】次に、ステップS52において、埋め込み
部22は、被埋め込みデータベース2から、被埋め込み
データを、例えば、6ビット(3ビット+3ビット)ず
つ受信する。
Next, in step S52, the embedding section 22 receives the embedded data from the embedded database 2 by 6 bits (3 bits + 3 bits), for example.

【0153】そして、ステップS53において、埋め込
み部22は、上述の6ビットの被埋め込みデータを埋め
込む画像ブロック群としての処理対象画像を選択、抽出
する。即ち、ステップS53では、例えば、フレームメ
モリ21に記憶された1フレームの画像データが、仮想
的に、上半分と下半分の領域(上領域と下領域)に分割
され、その上領域と下領域のそれぞれの、例えば上から
同一の行にある相似領域が選択、抽出される。
Then, in step S53, the embedding section 22 selects and extracts a processing target image as an image block group in which the 6-bit embedded data is embedded. That is, in step S53, for example, one frame of image data stored in the frame memory 21 is virtually divided into upper half and lower half areas (upper area and lower area), and the upper area and lower area are divided. , The similar regions in the same row from above are selected and extracted.

【0154】具体的には、例えば、フレームメモリ21
に記憶された1フレームの画像データが、例えば、図1
7Aに示すように、1600ラインの水平ラインで構成
され、ステップS51で8×8画素の画像ブロックに分
割された場合には、第1行から第100行までの画像ブ
ロックの領域が、上領域とされ、第101行から第20
0行までの画像ブロックの領域が、下領域とされる。そ
して、フレームメモリ21に記憶された画像データにつ
いて、最初に、ステップ53の処理が行われる場合に
は、上領域の第1行の画像ブロックと、下領域の第1行
の画像ブロックの相似領域が選択、抽出される。
Specifically, for example, the frame memory 21
The image data of one frame stored in FIG.
As shown in FIG. 7A, when the image block is composed of 1600 horizontal lines and is divided into image blocks of 8 × 8 pixels in step S51, the area of the image block from the first row to the 100th row is the upper area. , Line 101 to line 20
The area of the image block up to the 0th row is the lower area. Then, for the image data stored in the frame memory 21, when the process of step 53 is first performed, the image block of the first row of the upper region and the similar region of the image block of the first row of the lower region Are selected and extracted.

【0155】なお、埋め込み部22は、ステップS51
においてワークメモリに記憶された連続領域データを参
照して、第1行の画像ブロックと、第101行の画像ブ
ロックの相似領域のみを選択、抽出する。ここで、図1
7の実施の形態においては、第1行と、第101行の全
画像ブロックが相似領域であるとして、選択、抽出され
ている。
It should be noted that the embedding section 22 performs step S51.
In reference to the continuous area data stored in the work memory, only the similar areas of the image block of the first row and the image block of the 101st row are selected and extracted. Here, FIG.
In the seventh embodiment, all image blocks in the first row and the 101st row are selected and extracted as being similar areas.

【0156】その後、ステップS54に進み、埋め込み
部22は、例えば、処理対象画像である、第1行の画像
ブロックのうちの1つと、第101行の画像ブロックの
うちの1つを入れ替えることにより、フレームメモリ2
1に記憶された画像データに被埋め込みデータを埋め込
む。
After that, the process proceeds to step S54, and the embedding unit 22 replaces, for example, one of the image blocks in the first row and one of the image blocks in the 101st row, which is the image to be processed. , Frame memory 2
The embedded data is embedded in the image data stored in 1.

【0157】即ち、図17Aは、被埋め込みデータが埋
め込まれる前の埋め込み対象データとしての画像データ
を示しており、図17Bは、被埋め込みデータが埋め込
まれた後の埋め込み符号化データを示している。
That is, FIG. 17A shows the image data as the data to be embedded before the embedded data is embedded, and FIG. 17B shows the embedded coded data after the embedded data is embedded. .

【0158】図17Aの埋め込み対象データにおいて
は、第1行の画像ブロックの領域と第101行の画像ブ
ロックの領域とで、画素値の変化パターン、すなわち、
画像ブロック内の図形の相似性が異なっている。
In the embedding data shown in FIG. 17A, the pixel value change pattern in the image block area of the first row and the image block area of the 101st row, that is,
The figures in the image block have different similarities.

【0159】いま、例えば、上位3ビットが2で、下位
3ビットが6となっている6ビットの被埋め込みデータ
を、第1行と第101行の画像ブロックに埋め込むもの
とすると、埋め込み部22は、6ビットの被埋め込みデ
ータのうちの上位3ビットの2に対応して、図17Aの
第1行の左から3番目の画像ブロックを選択するととも
に、6ビットの被埋め込みデータのうちの下位3ビット
の6に対応して、図17Aの第101行の左から7番目
の画像ブロックを選択する。さらに、埋め込み部22
は、選択した第1行の左から3番目の画像ブロックと、
第101行の左から7番目の画像ブロックとを入れ替
え、これにより、図17Bに示すように、6ビットの被
埋め込みデータを、第1行と第101行の画像ブロック
に埋め込む。
If, for example, 6-bit embedded data in which the upper 3 bits are 2 and the lower 3 bits are 6 is embedded in the image blocks of the first row and the 101st row, the embedding unit 22 is assumed. Selects the third image block from the left in the first row of FIG. 17A in correspondence with the upper 3 bits 2 of the 6-bit embedded data, and also selects the lower part of the 6-bit embedded data. The 7th image block from the left in the 101st row of FIG. 17A is selected corresponding to 3 of 6 bits. Furthermore, the embedding part 22
Is the third image block from the left of the selected first row,
The 7th image block from the left of the 101st row is replaced, whereby 6-bit embedded data is embedded in the image blocks of the 1st row and the 101st row, as shown in FIG. 17B.

【0160】ここで、左から、i番目の画像ブロック
を、以下、適宜、第i画像ブロックという。
Here, the i-th image block from the left will be appropriately referred to as the i-th image block hereinafter.

【0161】ステップS54において、被埋め込みデー
タを埋め込んだ後は、ステップS55に進み、埋め込み
部22は、被埋め込みデータを埋め込んだ第1行の画像
ブロックと、第101行の画像ブロックを、フレームメ
モリ21に上書きする形で書き込み、ステップS56に
進む。
After embedding the data to be embedded in step S54, the process proceeds to step S55, where the embedding unit 22 stores the image block in the first row and the image block in the 101st row in which the data to be embedded is embedded in the frame memory. 21 is written in a form of overwriting, and the process proceeds to step S56.

【0162】ステップS56では、埋め込み部22は、
フレームメモリ21に記憶された1フレームの画像デー
タのすべての画像ブロックの行に、被埋め込みデータを
埋め込んだかどうかを判定する。ステップS56におい
て、まだ、すべての画像ブロックの行に、被埋め込みデ
ータを埋め込んでいないと判定された場合、ステップS
52に戻り、埋め込み部22は、新たな被埋め込みデー
タを受信し、ステップS53に進む。ステップS53で
は、埋め込み部22は、上領域と下領域から、次の行の
画像ブロックを選択し、即ち、いまの場合は、第2行の
画像ブロックと第102行の画像ブロックを選択し、以
下、同様の処理を繰り返す。
In step S56, the embedding section 22
It is determined whether or not the embedded data is embedded in all the image block rows of the image data of one frame stored in the frame memory 21. If it is determined in step S56 that the embedded data has not been embedded in all the image block rows, step S56.
Returning to 52, the embedding unit 22 receives the new embedded data, and proceeds to step S53. In step S53, the embedding unit 22 selects the image block of the next row from the upper area and the lower area, that is, in this case, the image block of the second row and the image block of the 102nd row, Hereinafter, similar processing is repeated.

【0163】一方、ステップS56において、フレーム
メモリ21に記憶された1フレームの画像データのすべ
ての画像ブロックの行に、被埋め込みデータを埋め込ん
だと判定された場合、即ち、ステップS53で、第1行
と第101行の画像ブロックのセットから、第100行
と第200行の画像ブロックのセットまでが、処理対象
画像として選択された場合、埋め込み部22は、フレー
ムメモリ21に記憶された画像データ、即ち、被埋め込
みデータが埋め込まれた画像データ(埋め込み画像デー
タ)を読み出して出力させ、埋め込み処理を終了する。
On the other hand, if it is determined in step S56 that the embedded data is embedded in all the image block rows of the image data of one frame stored in the frame memory 21, that is, in step S53, the first When the set of the image blocks of the 100th row and the 101st row to the set of the image blocks of the 100th and 200th rows are selected as the processing target images, the embedding unit 22 determines that the image data stored in the frame memory 21. That is, the image data in which the embedded data is embedded (embedded image data) is read out and output, and the embedding process ends.

【0164】なお、図16の埋め込み処理は、埋め込み
対象データとしての画像データのフレームを対象とし
て、適宜、繰り返し行われる。
The embedding process of FIG. 16 is appropriately repeated for the frame of the image data as the embedding target data.

【0165】次に、図18は、画像の相似性を利用し
て、埋め込み対象データとしての画像データに対して被
埋め込みデータが埋め込まれた埋め込み符号化データを
復元する復元処理の例を示すフローチャートである。
Next, FIG. 18 is a flow chart showing an example of the restoration process for restoring the embedded coded data in which the embedded data is embedded in the image data as the embedding target data by utilizing the similarity of the images. Is.

【0166】まず最初に、ステップS61において、復
元部32は、1フレーム単位の埋め込み符号化データ
(埋め込み画像データ)を、フレームメモリ31に順次
記憶させる。さらに、ステップS31では、復元部32
は、図16のステップS51における場合と同様にし
て、埋め込み符号化データの中から相似領域を抽出し、
その画像ブロックの位置を、相似領域データとして、図
示せぬワークメモリに記憶させる。
First, in step S61, the restoration unit 32 sequentially stores the embedded coded data (embedded image data) in units of one frame in the frame memory 31. Furthermore, in step S31, the restoration unit 32
In the same manner as in step S51 of FIG. 16, extracts a similar region from the embedded coded data,
The position of the image block is stored in a work memory (not shown) as similar area data.

【0167】ここで、本実施の形態では、図17で説明
したことから、画像ブロックの1行に3ビットの被埋め
込みデータが埋め込まれるが、この埋め込みは、1行を
構成する画像ブロックのうちの1つの画像ブロックを変
更する操作(入れ替える操作)によって行われる。従っ
て、1行を構成する画像ブロックのうちの、少なくとも
1つは、被埋め込みデータの埋め込みのための変更操作
によって非相似領域になっている。しかしながら、相似
領域の抽出の際には、図16のステップ51で説明した
ように、補正処理が行われるため、被埋め込みデータの
埋め込みのための変更操作によって非相似領域とされた
画像ブロックは、相似領域に変換される(相似領域とみ
なされる)。従って、ステップS31で抽出される相似
領域には、図16の埋め込み処理で入れ替えが行われた
画像ブロックが含まれる。
Here, in the present embodiment, as described with reference to FIG. 17, 3-bit embedded data is embedded in one row of an image block. This embedding is performed among the image blocks forming one row. Is performed by an operation of changing one image block (operation of replacing). Therefore, at least one of the image blocks forming one row becomes a dissimilar region due to the change operation for embedding the data to be embedded. However, at the time of extracting the similar region, the correction process is performed as described in step 51 of FIG. 16, so that the image block that has been made a dissimilar region by the change operation for embedding the embedded data is Converted to a similar area (considered as a similar area). Therefore, the similar regions extracted in step S31 include the image blocks replaced in the embedding process of FIG.

【0168】その後、ステップS62に進み、復元部6
2は、ステップS61でワークメモリに記憶された相似
領域データを参照して、図16のステップS53におけ
る場合と同様に、フレームメモリ31に記憶された1フ
レームの埋め込み画像データを、上領域と下領域に、仮
想的に分割し、その上領域と下領域それぞれから、同一
行の画像ブロックの相似領域を、順次、選択、抽出す
る。
After that, the process proceeds to step S62, and the restoration unit 6
2 refers to the similar area data stored in the work memory in step S61, and the embedded image data of one frame stored in the frame memory 31 is compared with the upper area and the lower area in the same manner as in step S53 of FIG. It is virtually divided into regions, and from each of the upper region and the lower region, similar regions of image blocks in the same row are sequentially selected and extracted.

【0169】従って、フレームメモリ31に記憶された
埋め込み画像データについて、ステップS62の処理が
最初に行われる場合には、上領域の第1行と、下領域の
第1行が選択される。ここで、図16のステップS53
で説明したように、埋め込み対象データとしての画像デ
ータの第1行の画像ブロックと、第101行の画像ブロ
ックのすべてが、相似領域であるとすると、ステップS
62では、第1行と、第101行の全画像ブロックが、
相似領域であるとして抽出される。
Therefore, for the embedded image data stored in the frame memory 31, when the process of step S62 is performed first, the first row of the upper area and the first row of the lower area are selected. Here, step S53 of FIG.
As described above, assuming that the image block of the first row and the image block of the 101st row of the image data as the embedding target data are all similar areas, step S
In 62, all the image blocks in the first row and the 101st row are
It is extracted as a similar region.

【0170】そして、ステップS63に進み、復元部6
2は、図16のステップS51で説明した場合と同様に
して、ステップS62で上領域と下領域それぞれから抽
出された第1行の相似領域と、第101行の相似領域を
構成する8×8画素単位の画像ブロックを、順次、注目
ブロックとし、その注目ブロックについて、周辺画像ブ
ロックとの間でマッチングを行う。これにより、復元部
62は、注目ブロックについて、周辺画像ブロックとの
間のマッチング度を求め、さらに、そのマッチング度か
ら、図16および図17で説明した場合と同様にして、
相似性評価値を求める。
Then, the process proceeds to step S63, and the restoration unit 6
2 is similar to the case described in step S51 of FIG. 16 and 8 × 8 forming the similar area of the first row and the similar area of the 101st row extracted from the upper area and the lower area in step S62. The pixel-by-pixel image blocks are sequentially set as the target block, and the target block is matched with the peripheral image blocks. As a result, the restoration unit 62 obtains the degree of matching between the target block and the surrounding image blocks, and further, from the degree of matching, in the same manner as in the case described in FIGS. 16 and 17,
Obtain a similarity evaluation value.

【0171】なお、上述の場合には、注目ブロックと左
右の画像ブロック(周辺画像ブロック)それぞれのマッ
チング度の平均値を、注目ブロックの相似性評価値とす
るようにしたが、その他、例えば、注目ブロックと左右
の画像ブロックそれぞれのマッチング度のうちの大きい
方または小さい方を、相似性評価値として採用するよう
にすることも可能である。
In the above case, the average value of the matching degrees of the target block and the left and right image blocks (peripheral image blocks) is set as the similarity evaluation value of the target block. It is also possible to adopt the larger or smaller matching degree of each of the target block and the left and right image blocks as the similarity evaluation value.

【0172】復元部62は、上述したようにして、上領
域と下領域それぞれから抽出された第1行の相似領域
と、第101行の相似領域を構成する画像ブロックそれ
ぞれの相似性評価値を求めると、その相似性評価値を、
ワークメモリに記憶させ、ステップS65に進む。
As described above, the restoration unit 62 obtains the similarity evaluation value of each of the image blocks that form the similarity area of the first row and the similarity area of the 101st row extracted from the upper area and the lower area. If you ask, the similarity evaluation value,
It is stored in the work memory, and the process proceeds to step S65.

【0173】ステップS65では、復元部32は、ワー
クメモリに記憶された2行(上領域の1行と、その行に
対応する下領域の1行の、合計2行)の画像ブロックの
相似領域それぞれから、相似性評価値が最大の画像ブロ
ックを検出し、その画像ブロックの位置を、ワークメモ
リに記憶させる。即ち、例えば、いま、ワークメモリ
に、第1行の相似領域を構成する画像ブロックについて
の相似性評価値と、第101行の相似領域を構成する画
像ブロックについての相似性評価値が記憶されている場
合には、第1行において、相似性評価値が最大の画像ブ
ロック(以下、適宜、最大相似性画像ブロックという)
と、第101行において、最大相似性画像ブロックが検
出され、その最大相似性画像ブロックの位置が、ワーク
メモリに記憶される。
In step S65, the reconstructing section 32 sets the similarity regions of the image blocks of two rows (one row in the upper area and one row in the lower area corresponding to the row, a total of two rows) stored in the work memory. From each of them, the image block with the highest similarity evaluation value is detected, and the position of the image block is stored in the work memory. That is, for example, now, the work memory stores the similarity evaluation value for the image block forming the similarity region of the first row and the similarity evaluation value for the image block forming the similarity region of the 101st row. If there is, the image block with the highest similarity evaluation value in the first row (hereinafter referred to as the maximum similarity image block)
Then, in the 101st row, the maximum similarity image block is detected, and the position of the maximum similarity image block is stored in the work memory.

【0174】そして、ステップS66に進み、復元部3
2は、ワークメモリに記憶された、2行それぞれの最大
相似性画像ブロックの位置に基づいて、6ビットの被埋
め込みデータを復元して出力する。
Then, the process proceeds to step S66, and the restoration unit 3
2 restores and outputs 6-bit embedded data based on the positions of the maximum similarity image blocks in each of the two rows stored in the work memory.

【0175】即ち、復元部32は、上領域または下領域
の行の最大相似性画像ブロックが、第i画像ブロックで
ある場合、i−1を、6ビットの被埋め込みデータの上
位3ビットまたは下位3ビットとして、それぞれ復元
し、さらに、その上位3ビットと下位3ビットから、6
ビットの被埋め込みデータを構成して出力する。
That is, when the maximum similarity image block in the row in the upper area or the lower area is the i-th image block, the restoring unit 32 sets i−1 to the upper 3 bits or the lower 3 bits of the embedded data of 6 bits. As 3 bits, they are respectively restored, and further, from the upper 3 bits and the lower 3 bits, 6
The bit embedded data is constructed and output.

【0176】ここで、例えば、図17Bに示した場合で
は、第1行の最大相似性画像ブロックは、第3画像ブロ
ックとなり、第101行の最大相似性画像ブロックは、
第7画像ブロックとなる。従って、6ビットの被埋め込
みデータの上位3ビットと下位3ビットは、それぞれ2
と6になる。
Here, for example, in the case shown in FIG. 17B, the maximum similarity image block in the first row is the third image block, and the maximum similarity image block in the 101st row is
This is the seventh image block. Therefore, the upper 3 bits and the lower 3 bits of the 6-bit embedded data are 2
And becomes 6.

【0177】以上のようにして、最大相似性画像ブロッ
クの位置に基づいて、被埋め込みデータが復元される
と、ステップS67に進み、復元部32は、ステップS
65においてワークメモリに記憶された、6ビットの被
埋め込みデータを復元するのに用いた2つの最大相似性
画像ブロックの位置にしたがい、フレームメモリ31に
記憶された埋め込み画像データの、ステップS62で選
択された2行の画像ブロックの位置を入れ替える。
As described above, when the embedded data is restored based on the position of the maximum similarity image block, the process proceeds to step S67, and the restoring unit 32 proceeds to step S67.
In step S62, the embedded image data stored in the frame memory 31 is selected according to the positions of the two maximum similarity image blocks used to restore the 6-bit embedded data stored in the work memory in 65. Swap the positions of the image blocks of the two rows that have been created.

【0178】即ち、例えば、図16の埋め込み処理にお
いて、図17で説明したように、上領域の第1行の第3
画像ブロックと、下領域の第1行(全体の第101行)
の第7画像ブロックとが入れ替えられた場合には、図1
8のステップS65において、第1行については、第3
画像ブロックの位置が記憶され、第101行について
は、第7画像ブロックの位置が記憶される。従って、こ
の場合、ステップ67では、第1行の第3画像ブロック
と、第101行の第7画像ブロックとが入れ替えられ、
これにより、第1行および第101行の画像データが復
元される。
That is, for example, in the embedding process of FIG. 16, as described with reference to FIG. 17, the third of the first row in the upper region is processed.
Image block and the first line of the lower area (the 101st line of the whole)
If the seventh image block of FIG.
In step S65 of 8, for the first row, the third row
The position of the image block is stored, and for the 101st row, the position of the seventh image block is stored. Therefore, in this case, in step 67, the third image block in the first row and the seventh image block in the 101st row are exchanged,
As a result, the image data of the first row and the 101st row are restored.

【0179】その後、復元部32は、復元した2行の画
像データ(画像ブロック)を、フレームメモリ31に上
書きする形で書き込み、ステップS68に進む。ステッ
プS68では、復元部32は、フレームメモリ31に記
憶された1フレームの埋め込み画像データについて、埋
め込み対象データとしての画像データと、そこに埋め込
まれている被埋め込みデータの復元が終了したか否かを
判定する。ステップS68において、フレームメモリ3
1に記憶された1フレームの埋め込み画像データについ
ての復元が終了していないと判定された場合、ステップ
S62に戻り、フレームメモリ31に記憶された埋め込
み画像データにおける上領域と下領域それぞれから、次
の行の画像ブロックが選択され、以下、同様の処理が繰
り返される。
Thereafter, the restoration section 32 writes the restored two lines of image data (image block) in the frame memory 31 in a form of overwriting, and proceeds to step S68. In step S68, the restoration unit 32 determines whether the restoration of the image data as the data to be embedded and the embedded data embedded therein has been completed for the embedded image data of one frame stored in the frame memory 31. To judge. In step S68, the frame memory 3
When it is determined that the restoration of the embedded image data of one frame stored in No. 1 is not completed, the process returns to step S62, and from the upper region and the lower region in the embedded image data stored in the frame memory 31, The image block in the row is selected, and the same processing is repeated thereafter.

【0180】また、ステップS68において、フレーム
メモリ31に記憶された1フレームの埋め込み画像デー
タについての復元が終了したと判定された場合、ステッ
プS69に進み、復元部32は、フレームメモリ31に
記憶された画像データ、即ち、復元された埋め込み対象
データとしての画像データを出力させ、処理を終了す
る。
When it is determined in step S68 that the restoration of the embedded image data of one frame stored in the frame memory 31 is completed, the process proceeds to step S69, and the restoration section 32 is stored in the frame memory 31. The image data that has been restored, that is, the image data that is the restored embedding target data is output, and the processing ends.

【0181】なお、図18の実施の形態においても、図
13の実施の形態における場合と同様に、復元された画
像データは、フレームメモリ31に記憶された1フレー
ムの画像データすべてが復元された後に出力することも
できるし、復元単位である2行の画像ブロックが復元さ
れるごとに出力することも可能である。
In the embodiment of FIG. 18 as well, as in the case of the embodiment of FIG. 13, all the image data of one frame stored in the frame memory 31 is restored as the restored image data. It can be output later, or can be output each time the image block of two rows, which is the restoration unit, is restored.

【0182】以上のように、被埋め込みデータが埋め込
まれた画像データである埋め込み画像データを、画像の
相似性を利用して、元の画像データと被埋め込みデータ
に復元するようにしたので、その復元のためのオーバヘ
ッドがなくても、埋め込み画像データを、元の画像デー
タと被埋め込みデータに復元することができる。従っ
て、その復元画像(復号画像)には、基本的に、被埋め
込みデータを埋め込むことによる画質の劣化は生じな
い。
As described above, the embedded image data, which is the image data in which the embedded data is embedded, is restored to the original image data and the embedded data by utilizing the similarity of images. The embedded image data can be restored to the original image data and the embedded data without the overhead for the restoration. Therefore, basically, the restored image (decoded image) does not deteriorate in image quality due to the embedding of the embedded data.

【0183】即ち、図16の埋め込み処理によれば、1
行の画像ブロックにおける、6ビットの被埋め込みデー
タの上位3ビットに対応する位置の画像ブロックと、他
の行を構成する、6ビットの被埋め込みデータの下位3
ビットに対応する位置の画像ブロックとを入れ替えると
いう操作ルールにしたがい、画像データに対して、被埋
め込みデータが埋め込まれ、埋め込み画像データが生成
される。
That is, according to the embedding process of FIG.
The image block at the position corresponding to the upper 3 bits of the 6-bit embedded data in the row image block, and the lower 3 of the 6-bit embedded data forming another row
According to the operation rule of replacing the image block at the position corresponding to the bit, the embedded data is embedded in the image data to generate the embedded image data.

【0184】一方、図18の復元処理によれば、埋め込
み画像データのマッチング度を、相似性の評価値とし
て、その相似性を利用し、埋め込み処理における操作ル
ールにしたがって、埋め込み画像データに対して、埋め
込み処理における場合とは逆の操作が行われる。そし
て、その操作によって、埋め込み画像データが、元の画
像データと被埋め込みデータが復元される。
On the other hand, according to the restoration processing of FIG. 18, the degree of matching of the embedded image data is used as the evaluation value of the similarity, the similarity is used, and the embedded image data is processed according to the operation rule in the embedding processing. , The operation opposite to that in the embedding process is performed. Then, the operation restores the embedded image data to the original image data and the embedded data.

【0185】従って、図16の埋め込み処理における操
作ルールは、画像データの相似性を利用して、被埋め込
みデータが埋め込まれた埋め込み画像データを元に戻す
ことができる操作ルールであるということができるが、
埋め込み処理では、このような操作ルールを採用するこ
とで、画像データの画質を劣化させることなく(最低限
の劣化に抑えて)、かつデータ量を増加せずに、画像デ
ータに被埋め込みデータを埋め込むことができる。
Therefore, it can be said that the operation rule in the embedding process of FIG. 16 is an operation rule that can restore the embedded image data in which the embedded data is embedded by utilizing the similarity of the image data. But,
In the embedding process, by adopting such an operation rule, the embedded data can be embedded in the image data without deteriorating the image quality of the image data (with the minimum deterioration) and without increasing the data amount. Can be embedded.

【0186】なお、上述の場合には、相似性評価値とし
て、埋め込み画像データのマッチング度を用いるように
したが、相似性評価値としては、マッチング度以外のも
のを使用することが可能である。
In the above-mentioned case, the matching degree of the embedded image data is used as the similarity evaluation value, but the similarity evaluation value other than the matching degree can be used. .

【0187】以上のように、埋め込み符号化器3におい
て、埋め込み対象データとしての画像データが有するエ
ネルギの偏りを利用して復元を行うことができるように
操作を行う操作ルールにしたがい、画像データを、被埋
め込みデータに対応して操作することにより、画像デー
タに被埋め込みデータを埋め込み、埋め込み符号化デー
タを出力する場合には、復元器6では、その埋め込み符
号化データを、画像データが有するエネルギの偏りを利
用することにより、復元のためのオーバヘッドなしで、
元の画像データおよび被埋め込みデータに復元すること
ができる。
As described above, in the embedded coder 3, the image data is stored in accordance with the operation rule for performing the operation so that the restoration can be performed by utilizing the bias of the energy of the image data as the data to be embedded. When the embedded data is embedded in the image data and the embedded coded data is output by operating in accordance with the embedded data, the decompressor 6 stores the embedded coded data in the energy of the image data. By utilizing the bias of, there is no overhead for restoration,
The original image data and the embedded data can be restored.

【0188】また、埋め込み対象データとしての画像デ
ータには、被埋め込みデータが埋め込まれることで、そ
の埋め込みの結果得られる埋め込み画像データ(埋め込
み符号化データ)は、元の画像データと異なる画像とさ
れ、人が価値ある情報として認識することのできる画像
ではなくなることから、埋め込み対象データとしての画
像データについては、オーバヘッドなしの暗号化を実現
することができる。
By embedding the data to be embedded in the image data as the data to be embedded, the embedded image data (embedded encoded data) obtained as a result of the embedding becomes an image different from the original image data. Since it is not an image that a person can recognize as valuable information, the image data as the embedding target data can be encrypted without overhead.

【0189】さらに、完全可逆の電子透かしを実現する
ことができる。即ち、従来の電子透かしでは、例えば、
画質にあまり影響のない画素値の下位ビットが、電子透
かしに対応する値に、単に変更されていたが、この場
合、その下位ビットを、元の値に戻すことは困難であ
る。従って、復元画像の画質は、電子透かしとしての下
位ビットの変更により、少なからず劣化する。これに対
して、埋め込み符号化データを、埋め込み対象データと
しての画像データが有するエネルギの偏りを利用して復
元する場合には、劣化のない元の画像データおよび被埋
め込みデータを得ることができ、従って、被埋め込みデ
ータを電子透かしとして用いることで、電子透かしに起
因して復元画像の画質が劣化することはない。
Furthermore, a completely reversible digital watermark can be realized. That is, in the conventional digital watermark, for example,
Although the lower bits of the pixel value, which does not significantly affect the image quality, are simply changed to the values corresponding to the digital watermark, in this case, it is difficult to restore the lower bits to the original value. Therefore, the image quality of the restored image is deteriorated to some extent by changing the lower bit as the digital watermark. On the other hand, when the embedded coded data is restored by utilizing the energy bias of the image data as the embedding target data, the original image data and the embedded data without deterioration can be obtained, Therefore, by using the embedded data as a digital watermark, the image quality of the restored image does not deteriorate due to the digital watermark.

【0190】また、埋め込み対象データに埋め込まれた
被埋め込みデータは、埋め込み符号化データから埋め込
み対象データを復元することで取り出す(復元する)こ
とができるので、埋め込み対象データとともに、オーバ
ヘッドなしでサイドインフォメーションを提供すること
ができる。言い換えれば、被埋め込みデータを取り出す
ためのオーバヘッドなしで、その被埋め込みデータを埋
め込み対象データに埋め込むことができるので、その埋
め込みの結果得られる埋め込み符号化データは、被埋め
込みデータの分だけ圧縮(埋め込み圧縮)されていると
いうことができる。従って、例えば、ある画像の半分を
埋め込み対象データとするとともに、残りの半分を被埋
め込みデータとすれば、埋め込み対象データである半分
の画像に、残りの半分の画像を埋め込むことができるか
ら、この場合、画像は、単純には、1/2に圧縮される
ことになる。
The embedded data embedded in the embedding target data can be retrieved (restored) by restoring the embedding target data from the embedded coded data. Can be provided. In other words, since the embedded data can be embedded in the embedding target data without the overhead of extracting the embedded data, the embedded coded data obtained as a result of the embedding is compressed (embedded). It can be said that it is compressed. Therefore, for example, if half of a certain image is the embedding target data and the other half is the embedding data, the remaining half image can be embedded in the half image that is the embedding target data. In that case, the image would simply be compressed in half.

【0191】さらに、埋め込み符号化データは、情報が
有するエネルギの偏りという、いわば統計量を利用して
復元されるため、誤りに対する耐性の強いものとなる。
即ち、ロバスト性の高い符号化であるロバスト符号化
(統計的符号化)を実現することができる。
Further, since the embedded coded data is restored by utilizing the bias of the energy of the information, that is, the statistical amount, it is highly resistant to errors.
That is, robust coding (statistical coding), which is highly robust coding, can be realized.

【0192】また、例えば、画像データを埋め込み対象
データとする一方、被埋め込みデータとして、画像デー
タとは異なるメディアの、例えば、音声データを用いる
ようにすることで、音声をキーとして、画像データの提
供を行うようなことが可能となる。即ち、図2の符号化
装置11側において、例えば、契約者が発話した音声
「開けゴマ」など被埋め込みデータとして、埋め込み対
象データである画像データに埋め込んでおき、復元装置
12側では、ユーザに、音声「開けゴマ」を発話しても
らい、その音声と、画像データに埋め込まれた音声とを
用いて話者認識を行うようにする。このようにすること
で、例えば、話者認識の結果、ユーザが契約者である場
合にのみ、自動的に、画像を提示するようなことが可能
となる。なお、この場合、被埋め込みデータとしての音
声は、いわゆる特徴パラメータではなく、音声波形その
ものを用いることが可能である。
Further, for example, while the image data is set as the embedding target data, the data to be embedded is, for example, audio data of a medium different from the image data is used. It becomes possible to provide. That is, on the encoding device 11 side of FIG. 2, for example, as data to be embedded such as the voice “open sesame” uttered by the contractor, it is embedded in the image data that is the embedding target data, and on the restoration device 12 side, it is displayed to the user. , The voice “open sesame” is uttered, and the speaker recognition is performed using the voice and the voice embedded in the image data. By doing so, for example, as a result of speaker recognition, it is possible to automatically present an image only when the user is a contractor. In this case, the voice as the embedded data can use the voice waveform itself instead of the so-called characteristic parameter.

【0193】また、例えば、音声データを埋め込み対象
データとする一方、被埋め込みデータとして、音声とは
異なるメディアの、例えば、画像データを用いるように
することで、画像をキーとして、音声の提供を行うよう
なこと(例えば、顔認識後の音声応答)が可能となる。
即ち、図2の符号化装置11側において、例えば、ユー
ザへの応答としての音声に、そのユーザの顔の画像を埋
め込み、復元装置12側では、ユーザの顔を撮影し、そ
の結果得られる画像とマッチングする顔画像が埋め込ま
れている音声を出力するようにすることで、ユーザごと
に異なる音声応答を行う音声応答システムを実現するこ
とが可能となる。
Further, for example, by using the audio data as the embedding target data, and by using the image data of a medium different from the audio as the embedding data, for example, the audio is provided using the image as a key. It is possible to do what is done (for example, voice response after face recognition).
That is, on the encoding device 11 side in FIG. 2, for example, an image of the user's face is embedded in the voice as a response to the user, and on the restoration device 12 side, the user's face is photographed and the resulting image is obtained. By outputting a voice in which a face image matching with is output, it is possible to realize a voice response system that makes a different voice response for each user.

【0194】さらに、音声に、音声を埋め込んだり、画
像に、画像を埋め込んだりするような、あるメディアの
情報に、それと同一メディアの情報を埋め込むようなこ
とも可能である。あるいは、また、画像に、契約者の音
声と顔画像を埋め込んでおけば、ユーザの音声と顔画像
とが、画像に埋め込まれているものと一致するときの
み、その画像を提示するようにする、いわば二重鍵シス
テムなどの実現も可能となる。
Furthermore, it is also possible to embed information of a certain medium, such as embedding a voice in a voice or an image in an image, to embed information in the same medium. Alternatively, if the voice of the contractor and the face image are embedded in the image, the image is presented only when the voice of the user and the face image match those embedded in the image. It is also possible to realize a dual key system, so to speak.

【0195】また、例えば、テレビジョン放送信号を構
成する、いわば同期した画像と音声のうちのいずれか一
方に、他方を埋め込むようなことも可能であり、この場
合、異なるメディアの情報どうしを統合した、いわば統
合符号化を実現することができる。
Also, for example, it is possible to embed one of the synchronized image and sound which compose the television broadcast signal in the other, so that the information of different media is integrated. In other words, so-called integrated coding can be realized.

【0196】さらに、埋め込み処理では、上述したよう
に、情報には、そのエネルギの偏りに特徴があるほど、
多くの被埋め込みデータを埋め込むことができる。従っ
て、例えば、ある2つの情報について、エネルギの偏り
に特徴がある方を適応的に選択し、その選択した方に、
他方を埋め込むようにすることで、全体のデータ量を制
御することが可能となる。即ち、2つの情報どうしの間
で、一方の情報によって、他方の情報量を、いわば吸収
するようなことが可能となる。そして、このように全体
のデータ量を制御することができる結果、伝送路の伝送
帯域や使用状況、その他の伝送環境にあったデータ量に
よる情報伝送(環境対応ネットワーク伝送)が可能とな
る。
Further, in the embedding processing, as described above, the more the information is characterized by its energy bias,
Many embedded data can be embedded. Therefore, for example, for two pieces of information, the one having a characteristic energy bias is adaptively selected, and the selected one is
By embedding the other one, it becomes possible to control the entire data amount. That is, between two pieces of information, one piece of information can absorb the amount of information of the other, so to speak. As a result of being able to control the total amount of data in this manner, it becomes possible to perform information transmission (environmentally compliant network transmission) with the amount of data that matches the transmission band of the transmission path, the usage status, and other transmission environments.

【0197】また、例えば、画像に、その画像を縮小し
た画像を埋め込むことで(あるいは、音声に、その音声
を間引いたものを埋め込むことで)、データ量を増加す
ることなく、いわゆる階層符号化(下位階層の情報量を
少なくすることにより、上位階層の情報を生成する符号
化)を実現することができる。
Further, for example, by embedding a reduced image of an image in an image (or by embedding a thinned version of the voice in a voice), the so-called hierarchical coding is performed without increasing the data amount. (Encoding that generates information in the upper layer by reducing the amount of information in the lower layer) can be realized.

【0198】さらに、例えば、画像に、その画像を検索
するためのキーとなる画像を埋め込んでおくことで、そ
のキーとなる画像に基づいて、画像の検索を行うデータ
ベースを実現することが可能となる。
Further, for example, by embedding an image serving as a key for retrieving the image in the image, it is possible to realize a database for retrieving the image based on the image serving as the key. Become.

【0199】以上のように、情報が有するエネルギ(の
偏り)を表すものとしては、相関性、連続性、相似性な
どがあるが、以下においては、説明を簡単にするため、
例えば、相関性にのみ注目して、説明を行う。そこで、
まず、埋め込み対象データとして、画像データを用い、
その画像データの相関性を利用する埋め込み処理と復元
処理の他の例として、3つの方式(第1、第2、第3の
方式)を紹介する。
As described above, there are correlations, continuity, similarity, etc. to represent the energy (bias) of the information, but in the following, in order to simplify the explanation,
For example, only the correlation will be explained. Therefore,
First, image data is used as embedding target data,
Three methods (first, second, and third methods) will be introduced as other examples of embedding processing and restoration processing using the correlation of the image data.

【0200】第1の方式では、埋め込み処理において、
埋め込み対象データとしての画像データを構成する画素
の位置を、例えば、1列(垂直方向に並ぶ画素列)単位
で、被埋め込みデータに対応して入れ替える(画素スワ
ップする)ことを操作ルールとして、その操作ルールに
したがい、埋め込み対象データとしての画像データが操
作されることで、各列に、被埋め込みデータが埋め込ま
れる。
In the first method, in the embedding process,
The operation rule is to replace (pixel swap) the positions of the pixels forming the image data as the embedding target data in units of one column (pixel column arranged in the vertical direction) in accordance with the embedded data. According to the operation rule, the image data as the embedding target data is operated, so that the embedded data is embedded in each column.

【0201】即ち、第1の方式の埋め込み処理では、被
埋め込みデータに基づいて、埋め込み対象データとして
の、例えば、1フレームの画像データの各列の位置を、
どのように入れ替えるかを表す画素スワップ情報が生成
される。具体的には、例えば、埋め込み対象データとし
ての1フレームの画像データが、M行N列の画素で構成
され、その画像データの第n列(左からn番目の列)
を、第n’列に入れ替える場合には、nとn’とが対応
付けられた画素スワップ情報が生成される(n,n’
は、1以上N以下の整数)。
That is, in the embedding process of the first method, the position of each column of the image data of one frame, which is the embedding target data, is calculated based on the data to be embedded.
Pixel swap information indicating how to replace is generated. Specifically, for example, one frame of image data as embedding target data is composed of pixels of M rows and N columns, and the nth column (nth column from the left) of the image data.
Is replaced with the n'th column, pixel swap information in which n and n'are associated with each other is generated (n, n ').
Is an integer of 1 or more and N or less).

【0202】ここで、1フレームの画像データの列数
が、上述のように、N列である場合には、その入れ替え
方は、そのすべての列を入れ替えの対象とすると、N!
(!は、階乗を表す)通りだけある。従って、この場
合、1フレームには、最大で、log2(N!)ビット
(但し、小数点以下切り捨て)の被埋め込みデータの埋
め込みが可能となる。
Here, when the number of columns of the image data of one frame is N columns as described above, the replacement method is N! If all the columns are to be replaced.
There are only streets (! Represents factorial). Therefore, in this case, at most log 2 (N!) Bits (however, the fractional part is rounded down) can be embedded in one frame.

【0203】画素スワップ情報の生成後は、その画素ス
ワップ情報にしたがって、埋め込み対象データとしての
画像データの各列の位置が入れ替えられる(画素スワッ
プされる)ことで、埋め込み対象データに、被埋め込み
データが埋め込まれ、埋め込み符号化データ(埋め込み
画像データ)が生成される。
After the pixel swap information is generated, the position of each column of the image data as the embedding target data is exchanged (pixel swap) according to the pixel swap information, so that the embedding target data is embedded in the embedding target data. Are embedded, and embedded coded data (embedded image data) is generated.

【0204】ここで、第1の方式では、上述のように、
埋め込み対象データとしての画像データの各列を、被埋
め込みデータに対応して画素スワップするという操作ル
ールにしたがって、被埋め込みデータが埋め込まれるの
で、この第1の方式を、以下、適宜、画素スワップ方式
という。
Here, in the first method, as described above,
The embedding data is embedded according to the operation rule that each column of the image data as the embedding target data is pixel swapped corresponding to the embedding data. Therefore, this first method will be referred to as the pixel swapping method hereinafter as appropriate. Say.

【0205】次に、図19のフローチャートを参照し
て、図3の埋め込み符号化器3で、画素スワップ方式に
よる埋め込み処理が行われる場合の、その埋め込み処理
について説明する。
Next, with reference to the flow chart of FIG. 19, the embedding process when the embedding encoder 3 of FIG. 3 performs the embedding process by the pixel swap method will be described.

【0206】埋め込み対象データベース1からは、そこ
に記憶されている埋め込み対象データとしての画像デー
タが、例えば、1フレーム単位で読み出され、フレーム
メモリ21に、順次供給されて記憶される。
The image data as the embedding target data stored therein is read from the embedding target database 1 in units of, for example, one frame, and is sequentially supplied and stored in the frame memory 21.

【0207】そして、埋め込み部22は、ステップS8
1において、1フレームの画像に埋め込み可能なデータ
量の被埋め込みデータを、被埋め込みデータベース2か
ら読み出す。即ち、例えば、上述したように、1フレー
ムの画像の列数がN列であり、そのすべての列を画素ス
ワップ(入れ替え)の対象とする場合には、1フレーム
には、最大で、log2(N!)ビットの被埋め込みデ
ータの埋め込みが可能であるから、そのようなビット数
(以下)の被埋め込みデータが、被埋め込みデータベー
ス2から読み出される。
Then, the embedding section 22 carries out step S8.
In step 1, the embedded data having a data amount that can be embedded in the image of one frame is read from the embedded database 2. That is, for example, as described above, when the number of columns of an image in one frame is N columns and all the columns are to be subjected to pixel swap (replacement), at most log 2 in one frame. Since it is possible to embed (N!) Bits of embedded data, such embedded data having the number of bits (below) is read from the embedded database 2.

【0208】そして、埋め込み部22は、ステップS8
2に進み、ステップS81で読み出した被埋め込みデー
タに基づいて、画素スワップ情報を生成する。即ち、埋
め込み部22は、被埋め込みデータに基づき、フレーム
メモリ21に記憶された画像データのフレームの第1列
乃至第N列のうちの、例えば、第1列を除く第2列乃至
第N列それぞれを、第何列に画素スワップするかを表す
画素スワップ情報を生成する。
Then, the embedding section 22 carries out step S8.
2, the pixel swap information is generated based on the embedded data read in step S81. That is, the embedding unit 22 determines, for example, the second to Nth columns other than the first column among the first to Nth columns of the frame of the image data stored in the frame memory 21 based on the embedded data. Pixel swap information representing the number of columns to which each pixel is swapped is generated.

【0209】その後、ステップS83に進み、埋め込み
部22は、画素スワップ情報にしたがって、フレームメ
モリ21に記憶された処理対象のフレームの各列の位置
を画素スワップする。そして、列の画素スワップが行わ
れたフレームは、フレームメモリ21から読み出され、
埋め込み符号化データとして出力される。
After that, the process proceeds to step S83, and the embedding unit 22 pixel-swaps the position of each column of the frame to be processed stored in the frame memory 21 according to the pixel swap information. Then, the frame in which the pixel swap of the column is performed is read from the frame memory 21,
It is output as embedded coded data.

【0210】なお、フレームの各列の画素スワップは、
フレームメモリ21における画像データ(を構成する画
素)の記憶位置を変更することで行うことができるが、
その他、例えば、フレームメモリ21からフレームを読
み出すときのアドレスを制御することによって、結果と
して、列の画素スワップが行われたフレームが、フレー
ムメモリ21から読み出されるようにすることも可能で
ある。
The pixel swap of each column of the frame is
This can be done by changing the storage position of the image data (the pixels forming the image data) in the frame memory 21,
In addition, for example, by controlling the address when reading the frame from the frame memory 21, it is possible to read the frame in which the pixel swap of the column is performed from the frame memory 21.

【0211】また、ここでは、画素スワップ情報には、
第2列乃至第N列それぞれを、第何列に画素スワップす
るかを表す情報が含まれているが、第1列を、第何列に
画素スワップするかを表す情報は含まれていない。従っ
て、埋め込み部22では、第2列乃至第N列それぞれの
画素スワップは行われるが、第1列の画素スワップは行
われない。なお、第1列の画素スワップを行わない理由
については、後述する。
Further, here, in the pixel swap information,
Each of the second to Nth columns includes information indicating to which column the pixel swap is performed, but does not include information indicating to which column the pixel swap of the first column is performed. Therefore, in the embedding unit 22, the pixel swap of each of the second column to the Nth column is performed, but the pixel swap of the first column is not performed. The reason why the pixel swap of the first column is not performed will be described later.

【0212】ステップS83において、フレームメモリ
21から埋め込み符号化データが出力されると、ステッ
プS84に進み、フレームメモリ21に、まだ処理の対
象とされていないフレームが記憶されているかどうかが
判定され、記憶されていると判定された場合、ステップ
S81に戻り、まだ処理されていないフレームを対象
に、同様の処理が繰り返される。
When the embedded coded data is output from the frame memory 21 in step S83, the process proceeds to step S84, and it is determined whether or not the frame memory 21 stores a frame that has not been processed yet. When it is determined that the frame is stored, the process returns to step S81, and the same process is repeated for the frame that has not been processed.

【0213】また、ステップS84において、フレーム
メモリ21に、まだ処理の対象とされていないフレーム
が記憶されていないと判定された場合、埋め込み処理を
終了する。
If it is determined in step S84 that the frame memory 21 does not store any frame that has not yet been processed, the embedding process ends.

【0214】以上のように、フレームメモリ21に記憶
された画像を構成する1以上の画素の集合としての、各
列の画素の位置を、被埋め込みデータに対応して画素ス
ワップすることにより、各列に、被埋め込みデータを埋
め込む場合には、その逆の画素スワップ(ここでは、列
の入れ替え)を行うことで、元の画像データを復元する
ことができ、さらに、どのような画素スワップを行った
かということに基づいて、被埋め込みデータを復元する
ことができる。従って、画像データの画質の劣化を極力
なくし、かつデータ量を増加せずに、画像データに被埋
め込みデータを埋め込むことができる。
As described above, the positions of the pixels in each column as a set of one or more pixels forming the image stored in the frame memory 21 are pixel-swapped in accordance with the data to be embedded. When embedding data is embedded in a column, the original image data can be restored by performing the reverse pixel swap (here, column exchange), and what kind of pixel swap is performed. The embedded data can be restored on the basis of whether or not it is high. Therefore, it is possible to embed the embedded data in the image data while minimizing the deterioration of the image quality of the image data and without increasing the data amount.

【0215】即ち、被埋め込みデータが埋め込まれた画
像データである、列の位置の画素スワップが行われた画
像データ(埋め込み画像データ)の各列は、その画像デ
ータの相関性、つまり、ここでは、例えば、元の画像デ
ータと同一の正しい位置にある列との間の相関を利用す
ることにより、オーバヘッドなしで、元の位置に画素ス
ワップすることができ、さらに、その画素スワップの仕
方(各列を、どの列に画素スワップしたか)により、被
埋め込みデータを復元ことができる。従って、その結果
得られる復元画像には、基本的に、被埋め込みデータを
埋め込むことによる画質の劣化は生じない。
That is, each column of image data (embedded image data), which is the image data in which the data to be embedded is embedded and in which the pixel position of the column has been swapped, has a correlation of the image data, that is, here. , For example, by utilizing the correlation between the original image data and the column in the same correct position, the pixel can be swapped to the original position without overhead, and the method of pixel swapping (each The embedded data can be restored according to which column the pixel is swapped. Therefore, basically, in the restored image obtained as a result, the image quality does not deteriorate due to the embedding of the embedded data.

【0216】なお、埋め込み符号化データに、正しい位
置にある列が存在しない場合には、上述のように画像デ
ータの相関性を利用して、画像データと被埋め込みデー
タを復元するのは、一般には、困難である。そこで、こ
こでは、図19の埋め込み処理において、各フレームの
第1列は、入れ替えを行わないで、そのまま、埋め込み
符号化データとして出力するようにしている。
If the embedded coded data does not have a column at the correct position, it is generally possible to restore the image data and the embedded data by utilizing the correlation between the image data as described above. It is difficult. Therefore, here, in the embedding process of FIG. 19, the first column of each frame is not replaced and is output as it is as the embedded coded data.

【0217】但し、第1列を含むすべての列を入れ替え
の対象として、埋め込み符号化を行うことも可能であ
り、この場合、例えば、入れ替え後の列の少なくとも1
以上の元の位置を、オーバヘッドとして、埋め込み符号
化データに含めることで、元の画像データと被埋め込み
データの復元が容易に可能となる。
However, it is also possible to perform embedded coding with all columns including the first column as the target of replacement, and in this case, for example, at least one of the columns after replacement is replaced.
By including the above original position as the overhead in the embedded coded data, the original image data and the embedded data can be easily restored.

【0218】また、被埋め込みデータは、画像データの
第1列以外のすべての列を一度に入れ替えることによ
り、その画像データに埋め込むことも、また、画像デー
タの第1列以外の列を、順次入れ替えることにより、そ
の画像データに埋め込むことも可能である。
The embedded data may be embedded in the image data by replacing all the columns other than the first column of the image data at once, or the columns other than the first column of the image data may be sequentially embedded. It is also possible to embed it in the image data by replacing it.

【0219】次に、画素スワップ方式による埋め込み処
理により得られる埋め込み画像データは、以下のよう
な、画像データの相関性を利用した画素スワップ方式に
よる復元処理により、元の画像と被埋め込みデータに復
元することができる。
Next, the embedded image data obtained by the embedding processing by the pixel swap method is restored to the original image and the embedded data by the following restoration processing by the pixel swap method using the correlation of the image data. can do.

【0220】即ち、画素スワップ方式による復元処理で
は、埋め込み画像データを構成する列のうち、既に復元
した最新の列と、他の列との相関を計算し、既に復元し
た列との相関を最大にする列を、その既に復元した列の
右隣の位置に画素スワップすることを、埋め込み画像デ
ータを構成するすべての列について行うことで、元の画
像データが復元され、さらに、埋め込み画像データを元
の画像データに復元する際の、埋め込み画像データの各
列の画素スワップの仕方に基づいて、被埋め込みデータ
が復元される。
That is, in the restoration processing by the pixel swap method, among the columns forming the embedded image data, the correlation between the latest restored column and another column is calculated, and the correlation with the restored column is maximized. By performing pixel swapping on the column to the right of the already restored column for all columns that make up the embedded image data, the original image data is restored, and the embedded image data The embedded data is restored based on the way of pixel swapping of each column of the embedded image data when restoring the original image data.

【0221】次に、図20のフローチャートを参照し
て、図4の復元器6において画素スワップ方式による復
元処理が行われる場合の、その復元処理について説明す
る。
Next, with reference to the flow chart of FIG. 20, the restoration processing when the restoration processing by the pixel swap method is performed in the restoration device 6 of FIG. 4 will be described.

【0222】フレームメモリ31では、そこに供給され
る埋め込み画像データが、例えば、1フレーム単位で順
次記憶される。
In the frame memory 31, the embedded image data supplied thereto are sequentially stored, for example, in 1-frame units.

【0223】そして、復元部32は、ステップS91に
おいて、フレームの列数をカウントするための変数n
に、初期値としての、例えば、1がセットされ、ステッ
プS92に進み、変数nが、フレームの列数であるNか
ら1を減算したN−1以下であるかどうかが判定され
る。
Then, in step S91, the restoring section 32 sets a variable n for counting the number of columns in the frame.
For example, 1 is set as an initial value, and the process proceeds to step S92 to determine whether the variable n is equal to or less than N-1 obtained by subtracting 1 from N, which is the number of columns of the frame.

【0224】ステップS92において、変数nがN−1
以下であると判定された場合、ステップS93に進み、
復元部32は、フレームメモリ31に記憶された埋め込
み画像データのフレームから、第n列の画素(画素列)
を読み出し、その第n列の各画素(の画素値)を要素と
して並べたベクトル(以下、適宜、列ベクトルという)
nを生成する。ここで、フレームがM行の画素で構成
される場合には、列ベクトルvn(後述する列ベクトル
kも同様)は、M次元のベクトルとなる。
In step S92, the variable n is N-1.
When it is determined that the following is true, the process proceeds to step S93,
The decompression | restoration part 32 is the pixel (pixel row) of the nth column from the frame of the embedded image data memorize | stored in the frame memory 31.
For each pixel of the n-th column (pixel value of the n-th column) and arranged as an element (hereinafter, appropriately referred to as a column vector)
Generate v n . Here, when the frame is composed of M rows of pixels, the column vector v n (similarly to the column vector v k described later) is an M-dimensional vector.

【0225】その後、ステップS94において、復元部
32は、第n列より右側にある列をカウントするための
変数kに、初期値としてのn+1をセットし、ステップ
S95に進む。ステップS95では、復元部32は、ス
テップS93における場合と同様に、埋め込み画像デー
タのフレームから、第k列の画素を読み出し、その第k
列の画素を要素とする列ベクトルvkを生成して、ステ
ップS96に進む。
Thereafter, in step S94, the restoration section 32 sets the variable k for counting the column on the right side of the nth column to n + 1 as an initial value, and proceeds to step S95. In step S95, as in step S93, the restoration unit 32 reads out the pixel in the k-th column from the frame of the embedded image data, and reads the k-th pixel.
A column vector v k having pixels in the column as elements is generated, and the process proceeds to step S96.

【0226】ステップS96では、復元部32は、列ベ
クトルvnおよびvkを用いて、第n列と第k列との間の
相関を表す相関値を求める。
In step S96, the restoration unit 32 uses the column vectors v n and v k to obtain a correlation value representing the correlation between the nth column and the kth column.

【0227】即ち、復元部32は、まず、列ベクトルv
nとvkとの距離d(n,k)を、次式にしたがって計算
する。
That is, the restoring unit 32 firstly sets the column vector v
The distance d (n, k) between n and v k is calculated according to the following equation.

【0228】 d(n,k)=|vn−vk| =(Σ(A(m,n)−A(m,k))21/2 ・・・(1) 但し、上式において、Σは、mを、1からMに変化させ
てのサメーションを表す。また、A(i,j)は、処理
対象になっている埋め込み画像データのフレームの第i
行第j列の画素(画素値)を表す。
D (n, k) = | v n −v k | = (Σ (A (m, n) −A (m, k)) 2 ) 1/2 (1) However, the above equation In, Σ represents the summation when m is changed from 1 to M. A (i, j) is the i-th frame of the embedded image data frame to be processed.
Represents a pixel (pixel value) in the row and j-th column.

【0229】さらに、復元部32は、列ベクトルvn
kとの距離d(n,k)の逆数1/d(n,k)を、
第n列と第k列との相関を表す相関値として求める。
Further, the restoration unit 32 calculates the reciprocal 1 / d (n, k) of the distance d (n, k) between the column vectors v n and v k as
It is determined as a correlation value indicating the correlation between the nth column and the kth column.

【0230】第n列と第k列との相関値の算出後は、ス
テップS97に進み、復元部32は、変数kが、フレー
ムの列数であるNから1を減算したN−1以下であるか
どうかを判定する。ステップS97において、変数kが
N−1以下であると判定された場合、ステップS98に
進み、復元部32は、変数kを1だけインクリメントし
て、ステップS95に戻り、以下、ステップS97にお
いて、変数kがN−1以下でないと判定されるまで、ス
テップS95乃至S98の処理を繰り返す。即ち、これ
により、第n列と、それより右側にある埋め込み画像の
列それぞれとの相関値が求められる。
After calculating the correlation value between the n-th column and the k-th column, the process proceeds to step S97, where the restoration unit 32 determines that the variable k is equal to or less than N-1 obtained by subtracting 1 from N, which is the number of columns in the frame. Determine if there is. When it is determined in step S97 that the variable k is N-1 or less, the process proceeds to step S98, the restoration unit 32 increments the variable k by 1, and the process returns to step S95. The processes of steps S95 to S98 are repeated until it is determined that k is not N-1 or less. That is, by this, the correlation value between the n-th column and each of the columns of the embedded image on the right side thereof is obtained.

【0231】その後、ステップS97において、変数k
がN−1以下でないと判定されると、ステップS99に
進み、復元部32は、第n列との相関値を最大にするk
を求めて、ステップS100に進む。そして、いま、第
n列との相関値を最大にするkを、例えばKと表すと、
復元部32は、ステップS100において、フレームメ
モリ31に記憶された処理対象の埋め込み画像データの
フレームの第n+1列と第K列とを画素スワップ、即
ち、第K列を、第n列の右隣の第n+1列に入れ替え
る。
Thereafter, in step S97, the variable k
If it is determined that is not less than or equal to N-1, the process proceeds to step S99, where the restoration unit 32 maximizes the correlation value with the n-th column.
And proceeds to step S100. Then, if k that maximizes the correlation value with the n-th column is expressed as, for example, K,
In step S100, the restoration unit 32 pixel swaps the n + 1th column and the Kth column of the frame of the embedded image data to be processed stored in the frame memory 31, that is, the Kth column to the right of the nth column. Swap to the (n + 1) th column.

【0232】その後、ステップS101に進み、復元部
32は、変数nを1だけインクリメントして、ステップ
S92に戻り、以下、ステップS92において、変数n
がN−1以下でないと判定されるまで、ステップS92
乃至S101の処理を繰り返す。
After that, the procedure goes to step S101, in which the restoring unit 32 increments the variable n by 1 and returns to step S92.
Until it is determined that is not N-1 or less, step S92.
The process from S101 to S101 is repeated.

【0233】ここで、本実施の形態では、埋め込み画像
データの第1列は、元の画像データの第1列のままであ
るから、変数nが、初期値である1のときは、第1列と
の相関が最も高い埋め込み画像データの列が、第1列の
右隣の第2列に画素スワップされる。第1列との相関が
最も高い列は、画像データの相関性から、基本的に、元
の画像データの第2列であるから、この場合、図19の
埋め込み処理において、埋め込み画像データのどこかの
列に画素スワップされた元の画像データの第2列は、元
の位置(列)に戻される(復元される)ことになる。
Here, in the present embodiment, the first column of the embedded image data remains the first column of the original image data. Therefore, when the variable n is 1, which is the initial value, the first column is set. The column of the embedded image data having the highest correlation with the column is pixel-swapped to the second column on the right of the first column. The column having the highest correlation with the first column is basically the second column of the original image data because of the correlation of the image data. In this case, in the embedding process of FIG. The second column of the original image data that has been pixel-swapped to that column will be returned (restored) to the original position (column).

【0234】そして、変数nが2となると、上述したよ
うにして元の位置に画素スワップされた第2列との相関
が最も高い埋め込み画像データの列が、その第2列の右
隣の第3列に画素スワップされる。第2列との相関が最
も高い列は、やはり、画像データの相関性から、基本的
に、元の画像データの第3列であるから、この場合、図
19の埋め込み処理において、埋め込み画像データのど
こかの列に画素スワップされた元の画像データの第3列
は、元の位置に戻されることになる。
When the variable n becomes 2, the column of embedded image data having the highest correlation with the second column that has been pixel-swapped in the original position as described above is the second column to the right of the second column. Pixels are swapped to 3 columns. The column having the highest correlation with the second column is basically the third column of the original image data due to the correlation of the image data. In this case, in the embedding process of FIG. The third column of the original image data that has been pixel swapped to some column of will be returned to its original position.

【0235】以下、同様にして、フレームメモリ31に
記憶された埋め込み画像データは、元の画像データに復
元されていく。
Thereafter, similarly, the embedded image data stored in the frame memory 31 is restored to the original image data.

【0236】そして、ステップS92において、変数n
がN−1以下でないと判定された場合、即ち、埋め込み
画像データを構成する第2列乃至第N列すべてが、画像
データの相関性を利用して元の位置に戻され、これによ
り、フレームメモリ31の記憶内容が、元の画像データ
に復元された場合、ステップS102に進み、復元部3
2は、その復元された画像データを、フレームメモリ3
1から読み出させる。さらに、ステップS102では、
復元部32が、埋め込み画像データを元の画像データに
復元した際の、埋め込み画像データの第2列乃至第N列
それぞれの画素スワップの仕方(画素スワップ情報)に
基づいて、埋め込み画像データに埋め込まれていた被埋
め込みデータを復元して出力する。
Then, in step S92, the variable n
Is determined to be not less than or equal to N−1, that is, all of the second to Nth columns forming the embedded image data are returned to their original positions by using the correlation of the image data, whereby the frame When the stored contents of the memory 31 are restored to the original image data, the process proceeds to step S102 and the restoration unit 3
2 stores the restored image data in the frame memory 3
Read from 1. Furthermore, in step S102,
The restoration unit 32 embeds the embedded image data in the embedded image data based on the pixel swapping method (pixel swap information) of each of the second to Nth columns of the embedded image data when the embedded image data is restored to the original image data. The embedded data that was stored is restored and output.

【0237】その後、ステップS103に進み、復元部
32は、フレームメモリ31に、まだ処理の対象とされ
ていない埋め込み画像データのフレームが記憶されてい
るかどうかを判定し、記憶されていると判定した場合、
ステップS91に戻り、まだ処理の対象とされていない
埋め込み画像データのフレームを対象に、同様の処理を
繰り返す。
After that, the procedure goes to step S103, in which the restoration unit 32 determines whether or not the frame of the embedded image data which has not been processed yet is stored in the frame memory 31, and determines that the frame is stored. If
Returning to step S91, the same processing is repeated for the frame of the embedded image data that has not been processed yet.

【0238】また、ステップS103において、フレー
ムメモリ31に、まだ処理の対象とされていない埋め込
み画像データのフレームが記憶されていないと判定され
た場合、復元処理を終了する。
If it is determined in step S103 that the frame memory 31 does not store a frame of embedded image data that has not yet been processed, the restoration process ends.

【0239】以上のように、被埋め込みデータが埋め込
まれた画像データである埋め込み画像データを、画像デ
ータの相関性を利用して、元の画像データと被埋め込み
データに復元するようにしたので、その復元のためのオ
ーバヘッドがなくても、符号化データを、元の画像と被
埋め込みデータに復元することができる。従って、その
復元画像には、基本的に、被埋め込みデータを埋め込む
ことによる画質の劣化は生じない。
As described above, the embedded image data, which is the image data in which the embedded data is embedded, is restored to the original image data and the embedded data by using the correlation of the image data. The encoded data can be restored to the original image and the embedded data without the overhead for the restoration. Therefore, basically, the image quality is not deteriorated by embedding the embedded data in the restored image.

【0240】なお、図20の復元処理においては、既に
復元された最新の列(n=1の場合においては、埋め込
み処理時に画素スワップされない第1列)と、まだ復元
されていない列との相関を求め、その相関に基づいて、
既に復元された最新の列の右隣の位置に画素スワップさ
れるべき列を検出するようにしたが、その他、例えば、
既に復元された複数の列それぞれと、まだ復元されてい
ない列との相関を演算することにより、既に復元された
最新の列の右隣に画素スワップされるべき列を検出する
ようにすることも可能である。
In the restoration process of FIG. 20, the correlation between the latest restored column (in the case of n = 1, the first column which is not pixel-swapped during the embedding process) and the column which has not been restored yet. And based on that correlation,
I tried to detect the column that should be pixel swapped at the position next to the right of the latest column that has already been restored.
It is also possible to detect the column to be pixel-swapped to the right of the latest restored column by calculating the correlation between each column that has already been restored and the column that has not been restored. It is possible.

【0241】また、上述の場合には、被埋め込みデータ
に基づき、埋め込み対象データとしての画像データ構成
する画素を、列単位で画素スワップすることにより(垂
直ラインの画素スワップを行うことにより)、被埋め込
みデータを埋め込むようにしたが、被埋め込みデータの
埋め込みは、その他、例えば、埋め込み対象データとし
ての画像データを、行単位で画素スワップしたり(水平
ラインの画素スワップを行ったり)、また、時間方向に
並ぶ所定数のフレームの同一位置にある画素列を画素ス
ワップすることにより行うことも可能である。
Further, in the above case, the pixels constituting the image data as the embedding target data are pixel-swapped on a column-by-column basis (by vertical pixel swapping) based on the embedding data. Although the embedding data is embedded, the embedding of the embedding data is not limited to this. For example, the image data as the embedding target data may be pixel-swapped row by row (horizontal line pixel swapping) or time. It is also possible to perform pixel swapping for pixel rows at the same position in a predetermined number of frames arranged in the direction.

【0242】さらに、画素スワップ方式による埋め込み
処理では、例えば、埋め込み対象データとしての画像デ
ータを、列単位で画素スワップし、さらに、行単位で画
素スワップすることにより、被埋め込みデータを埋め込
むことも可能である。
Further, in the embedding process by the pixel swap method, for example, the image data as the embedding target data is pixel-swapped in the column unit, and further, the pixel-swap is performed in the row unit to embed the embedding data. Is.

【0243】ここで、列と行の両方の画素スワップを行
って得られる埋め込み画像データについて、例えば、列
の位置を元の位置に戻す復元処理を考えると、その復元
処理では、式(1)のΣにおいて加算される項の順番が
変化するだけで、加算される項自体は変化しない。従っ
て、式(1)によって求められる距離d(n,k)は、
画像データの列だけ画素スワップした場合と、列と行の
両方を画素スワップした場合とで変化しないため、列と
行の両方を画素スワップして得られた埋め込み画像デー
タも、列だけ画素スワップして得られた埋め込み画像デ
ータと同様に、図20の復元処理によって、元の画像デ
ータと被埋め込みデータに復元することができる。即
ち、列と行の両方を画素スワップして得られた埋め込み
画像データは、図20の復元処理を、列と行について、
それぞれ独立に行うことで、元の画像データと被埋め込
みデータに復元することができる。
Here, regarding the embedded image data obtained by performing pixel swapping of both columns and rows, for example, considering a restoration process for returning the column position to the original position, in the restoration process, equation (1) is used. In Σ, only the order of the added terms changes, and the added terms themselves do not change. Therefore, the distance d (n, k) obtained by the equation (1) is
There is no difference between pixel swapping of only the columns of image data and pixel swapping of both columns and rows.Therefore, embedded image data obtained by pixel swapping both columns and rows is also pixel swapped only for columns. Similar to the embedded image data obtained as described above, the original image data and the embedded data can be restored by the restoration process of FIG. That is, for the embedded image data obtained by pixel swapping both the columns and the rows, the restoration processing of FIG.
By performing each independently, the original image data and the embedded data can be restored.

【0244】以上から、埋め込み処理において、列と行
の両方を画素スワップすることにより、画像データに被
埋め込みデータを埋め込む場合には、行と列のうち、い
ずれの画素スワップを先または後に行うかは、復元処理
に影響を与えない。従って、埋め込み処理においては、
行と列の画素スワップのうちのいずれを先または後に行
っても良いし、復元処理においても、行と列の画素スワ
ップのうちのいずれを先または後に行っても良い。ま
た、行と列の画素スワップを、交互に行うようなことも
可能である。
As described above, in the embedding process, when the embedded data is embedded in the image data by pixel swapping both the column and the row, which pixel swap of the row and the column is performed first or later. Does not affect the restoration process. Therefore, in the embedding process,
Either of the row and column pixel swaps may be performed first or later, and in the restoration process, either of the row and column pixel swaps may be performed first or later. It is also possible to alternately perform row and column pixel swap.

【0245】但し、埋め込み処理において、列だけの画
素スワップを行う場合には、埋め込み画像データを元の
画像データに復元した際の、埋め込み画像データの列の
画素スワップの仕方が、被埋め込みデータの復元結果と
なるが、行と列の両方の画素スワップを行う場合には、
埋め込み画像データの第m行n列の位置(m,n)にあ
る画素が、復元画像(元の画像データ)のどの位置
(m’,n’)に画素スワップされたかが、被埋め込み
データの復元結果となる。
However, in the embedding process, when pixel swapping is performed only for columns, the method of pixel swapping of columns of embedded image data when the embedded image data is restored to the original image data is The result will be restoration, but if you do both row and column pixel swapping,
Restoration of embedded data depends on which position (m ', n') in the restored image (original image data) the pixel at the position (m, n) in the m-th row and n-th column of the embedded image data is pixel swapped. Will result.

【0246】また、図19の埋め込み処理では、埋め込
み対象データとしての画像データの第1列だけを固定に
し、図20の復元処理では、この第1列を、いわば復元
の基準として、埋め込み画像データの画素スワップを行
うようにしたが、復元の基準は、第1列でなくても、あ
らかじめ、埋め込み処理と復元処理で設定しておけば、
最後の第N列であっても良いし、その他の任意の列でも
良い。さらに、復元の基準は、1列の画素すべてである
必要はなく、極端には、1画素であっても良い。
Further, in the embedding process of FIG. 19, only the first column of the image data as the embedding target data is fixed, and in the restoration process of FIG. However, if the restoration standard is set in advance by embedding processing and restoration processing,
It may be the last Nth column or any other column. Furthermore, the restoration criterion does not have to be all the pixels in one column, but may be one pixel in the extreme.

【0247】なお、例えば、第1列だけを、いわば復元
の基準とし、画像データの相関を利用して、埋め込み画
像データの画素スワップを行う場合には、1の列の画素
スワップを誤ると、その後の列(ここでは、画素スワッ
プを誤った列の右側にある列)の画素スワップも誤る可
能性が高くなる。この場合、元の画像データを復元する
ことができないから、被埋め込みデータを復元すること
もできなくなる。
For example, when the pixel swap of the embedded image data is performed by utilizing the correlation of the image data with the first column as the so-called restoration reference, if the pixel swap of the first column is wrong, There is a high possibility that the pixel swap of the subsequent column (here, the column on the right side of the column where the pixel swap is erroneous) is also erroneous. In this case, since the original image data cannot be restored, the embedded data cannot be restored.

【0248】そこで、埋め込み処理においては、複数の
列(例えば、全列から等間隔に選択した複数の列)を、
復元の基準として残しておく(画素スワップの対象とし
ない)ようにすることが可能である。
Therefore, in the embedding process, a plurality of columns (for example, a plurality of columns selected at equal intervals from all columns) are
It is possible to leave it as a reference for restoration (not to be a target of pixel swap).

【0249】次に、第2の方式では、埋め込み処理にお
いて、埋め込み対象データとしての画像データを構成す
る複数の画素の画素値を表すビット列の各ビットごとの
ビットプレーンを、被埋め込みデータに対応して入れ替
える(従って、レベル方向の操作を行う)ビットプレー
ンスワップを行うことを操作ルールとして、その操作ル
ールにしたがい、埋め込み対象データとしての画像デー
タが操作されることで、その画像データに、被埋め込み
データが埋め込まれる。
Next, in the second method, in the embedding process, the bit plane for each bit of the bit string representing the pixel value of a plurality of pixels forming the image data as the embedding target data corresponds to the embedding data. Bit plane swap is performed as an operation rule, and the image data as the embedding target data is operated according to the operation rule, and the embedded data is embedded in the image data. Data is embedded.

【0250】即ち、第2の方式の埋め込み処理では、図
21に示すように、埋め込み対象データとしての画像デ
ータが、複数の画素で構成される画像ブロックにブロッ
ク化され、さらに、画像ブロックが、その画像ブロック
を構成する各画素の画素値を表すビット列の各ビットご
とのビットプレーンに分割される。
That is, in the embedding process of the second method, as shown in FIG. 21, the image data as the embedding target data is divided into image blocks composed of a plurality of pixels, and the image blocks are It is divided into bit planes for each bit of a bit string representing the pixel value of each pixel forming the image block.

【0251】ここで、埋め込み対象データとしての画像
データを構成する各画素値に、例えば、8ビットが割り
当てられているとすると、画像ブロックは、画素値の最
下位ビット、最下位ビットから2ビット目のビット、3
ビット目のビット、・・・、7ビット目のビット、最上
位ビット(以下、適宜、それぞれを第1乃至第8ビット
という)それぞれからなるビットプレーンに分割され
る。
Here, assuming that, for example, 8 bits are assigned to each pixel value forming the image data as the embedding target data, the image block has the least significant bit and the least significant bit from the least significant bit to 2 bits. Bit of the eye, 3
.., the seventh bit, and the most significant bit (hereinafter, appropriately referred to as first to eighth bits), respectively.

【0252】そして、画像ブロックのビットプレーン
が、被埋め込みデータに対応して並べ替えられる(ビッ
トプレーンスワップされる)ことにより、画像データ
に、被埋め込みデータが埋め込まれる。
Then, the bit planes of the image block are rearranged in accordance with the embedded data (bit plane swapping), so that the embedded data is embedded in the image data.

【0253】なお、例えば、上述のように、埋め込み対
象データとしての画像データを構成する画素値に8ビッ
トが割り当てられている場合には、1の画像ブロックか
らは、8面のビットプレーンが得られる。そして、8面
のビットプレーンの並べ替え方(ビットプレーンスワッ
プの仕方)は、40320(=8!(!は階乗を表
す))通りあるから、1つの画像ブロックには、最大
で、log2(8!)ビット(但し、小数点以下は切り
捨て)の被埋め込みデータを埋め込むことができる。従
って、埋め込み処理では、被埋め込みデータが、そのよ
うなビット数ごとに区切られ、埋め込み対象データとし
ての画像データを構成する各画像ブロックに埋め込まれ
る。
Note that, for example, as described above, when 8 bits are assigned to the pixel value forming the image data as the embedding target data, 8 bit planes are obtained from one image block. To be Since there are 40320 (= 8! (! Represents factorial)) ways of rearranging the eight planes of bit planes (method of swapping bit planes), one image block can have a maximum of log 2 It is possible to embed embedded data of (8!) Bits (however, the fractional part is truncated). Therefore, in the embedding process, the data to be embedded is divided into such number of bits and embedded in each image block that constitutes the image data as the embedding target data.

【0254】ここで、第2の方式では、上述のように、
埋め込み対象データとしての画像データの各画像ブロッ
クのビットプレーンを、被埋め込みデータに対応してビ
ットプレーンスワップするという操作ルールにしたがっ
て、被埋め込みデータが埋め込まれるので、この第2の
方式を、以下、適宜、ビットプレーンスワップ方式とい
う。
Here, in the second method, as described above,
Since the embedded data is embedded according to the operation rule of swapping the bit plane of each image block of the image data as the embedding target data in correspondence with the embedded data, this second method will be described below. Appropriately called the bit plane swap method.

【0255】次に、図22のフローチャートを参照し
て、図3の埋め込み符号化器3で、ビットプレーンスワ
ップ方式による埋め込み処理が行われる場合の、その埋
め込み処理について説明する。
Next, with reference to the flow chart of FIG. 22, the embedding processing when the embedding encoder 3 of FIG. 3 performs the embedding processing of the bit plane swap method will be described.

【0256】まず最初に、ステップS111において、
埋め込み部22は、1フレームの画像に埋め込むことの
できる分の被埋め込みデータを、被埋め込みデータベー
ス2から読み出し、1つの画像ブロックに埋め込むこと
のできる単位にフォーマットする(被埋め込みデータを
分割する)。さらに、ステップS111では、埋め込み
部22は、埋め込み対象データベース1に記憶された埋
め込み対象データとしての画像データのフレームのう
ち、まだ処理の対象としていないフレームの画像データ
を、フレームメモリ21に記憶させる。
First, in step S111,
The embedding unit 22 reads the embedded data that can be embedded in one frame image from the embedded database 2 and formats it into a unit that can be embedded in one image block (divides the embedded data). Further, in step S111, the embedding unit 22 causes the frame memory 21 to store the image data of the frame that is not yet the processing target among the frames of the image data as the embedding target data stored in the embedding target database 1.

【0257】そして、ステップS112に進み、埋め込
み部22は、フレームメモリ21に記憶された1フレー
ムの画像を、例えば、横×縦が4×4画素の画像ブロッ
クに分割し、ステップS113に進む。ステップS11
3では、埋め込み部22は、フレームメモリ21に記憶
された1フレームの画像データを構成する各画像ブロッ
クを、ビットプレーンに分割し、ステップS114に進
む。
Then, proceeding to step S112, the embedding section 22 divides the one-frame image stored in the frame memory 21 into image blocks of, for example, 4 × 4 pixels in width × length, and proceeds to step S113. Step S11
In 3, the embedding unit 22 divides each image block forming one frame of image data stored in the frame memory 21 into bit planes, and proceeds to step S114.

【0258】ステップS114では、埋め込み部22
は、ビットプレーンに分割した各画像ブロックのうち、
例えば、ラスタスキャン順で、まだ、注目ブロックとし
ていないものを、注目ブロックとし、その注目ブロック
のビットプレーンを、ステップ111で得た1単位の被
埋め込みデータに対応してビットプレーンスワップし、
そのビットプレーンスワップ後の画像ブロックを、フレ
ームメモリ21に上書きする形で書き込む。
In step S114, the embedding section 22 is used.
Is an image block divided into bit planes,
For example, in raster scan order, a block that has not yet been set as a block of interest is set as a block of interest, and the bit plane of the block of interest is swapped with the bit planes corresponding to one unit of embedded data obtained in step 111,
The image block after the bit plane swap is written in the frame memory 21 in a form of overwriting.

【0259】その後、ステップS115に進み、埋め込
み部22は、フレームメモリ21に記憶された1フレー
ムの画像を構成する画像ブロックすべてを注目ブロック
として処理(ビットプレーンを並べ替える処理)を行っ
たかどうかを判定する。ステップS115において、ま
だ、1フレームのブロックすべてを処理していないと判
定された場合、ステップS114に戻り、埋め込み部2
2は、ラスタスキャン順で、また、注目ブロックとして
いない画像ブロックを、新たに注目ブロックとして、以
下、同様の処理を繰り返す。
After that, the process proceeds to step S115, where the embedding unit 22 determines whether all the image blocks forming one frame of the image stored in the frame memory 21 have been processed as a target block (process of rearranging bit planes). judge. If it is determined in step S115 that all blocks of one frame have not been processed yet, the process returns to step S114 and the embedding unit 2
In the raster scan order 2, the image block that is not the target block is newly set as the target block, and the same process is repeated thereafter.

【0260】一方、ステップS115において、1フレ
ームのブロックすべてを注目ブロックとして処理したと
判定された場合、ステップS116に進み、埋め込み部
22は、被埋め込みデータに対応してビットプレーンス
ワップが行われた画像ブロックで構成される1フレーム
の画像データ、即ち、埋め込み画像データを、フレーム
メモリ21から読み出して出力させ、処理を終了する。
On the other hand, if it is determined in step S115 that all blocks of one frame have been processed as the block of interest, the process proceeds to step S116, where the embedding unit 22 performs bit plane swap corresponding to the embedded data. One frame of image data composed of image blocks, that is, embedded image data, is read from the frame memory 21 and output, and the process ends.

【0261】なお、以上の埋め込み処理は、埋め込み対
象データベース1に記憶された埋め込み対象データとし
ての画像データの1フレームごとに繰り返し行われる。
The above-mentioned embedding process is repeated for each frame of the image data as the embedding target data stored in the embedding target database 1.

【0262】以上のように、各画像ブロックのビットプ
レーンを、被埋め込みデータに対応してビットプレーン
スワップすることにより、各画像ブロックに、被埋め込
みデータを埋め込む場合には、その逆のビットプレーン
スワップを行うことで、元の画像データを復元すること
ができ、さらに、どのようなビットプレーンスワップを
行ったかということに基づいて、被埋め込みデータを復
元することができる。従って、画像の画質の劣化を極力
なくし、かつデータ量を増加せずに、画像に被埋め込み
データを埋め込むことができる。
As described above, by bit-plane swapping the bit planes of each image block corresponding to the embedding data, when embedding the embedding data in each image block, the opposite bit plane swap is performed. By doing so, the original image data can be restored, and further, the embedded data can be restored based on what kind of bit plane swap was performed. Therefore, it is possible to embed the embedded data in the image while minimizing the deterioration of the image quality of the image and without increasing the data amount.

【0263】即ち、画像においては、画像ブロックを構
成するビットプレーンにおけるビットどうしの相関は、
基本的に、上位ビットのビットプレーンほど高い(下位
ビットのビットプレーンほど低い)。従って、このよう
な画像の相関性、即ち、ここでは、ビットプレーンを構
成するビットどうしの相関を利用することにより、被埋
め込みデータに対応してビットプレーンスワップされた
ビットプレーンは、オーバヘッドなしで、元の順番に並
べ替えることができ、さらに、その並べ替え方により、
被埋め込みデータを復元することができる。従って、復
元された画像には、基本的に、被埋め込みデータを埋め
込むことによる画質の劣化は生じない。
That is, in the image, the correlation between the bits in the bit planes forming the image block is
Basically, the higher the bit plane of the upper bit, the higher (the lower the bit plane of the lower bit). Therefore, by utilizing the correlation of such an image, that is, the correlation between the bits forming the bit planes here, the bit planes swapped with the bit planes corresponding to the embedded data have no overhead, You can rearrange them in their original order, and depending on how you rearrange them,
The embedded data can be restored. Therefore, basically, the restored image does not deteriorate in image quality due to the embedding of the embedded data.

【0264】次に、ビットプレーンスワップ方式による
埋め込み処理により得られる埋め込み画像データは、以
下のような、画像データの相関性を利用したビットプレ
ーンスワップ方式による復元処理により、元の画像デー
タと被埋め込みデータに復元することができる。
Next, the embedded image data obtained by the embedding processing by the bit plane swap method is restored to the original image data by the restoration processing by the bit plane swap method using the correlation of the image data as follows. Can be restored to data.

【0265】即ち、ビットプレーンスワップ方式による
復元処理では、フレームごとの埋め込み画像データが、
ビットプレーンスワップによる埋め込み処理における場
合と同一の画像ブロックにブロック化され、さらに、各
画像ブロックが、その画像ブロックを構成する画素の画
素値を表すビット列の各ビットごとのビットプレーンに
分割される。そして、各画像ブロックを構成する各ビッ
トプレーン内のビットどうしの相関を表す相関値が求め
られる。
That is, in the restoration processing by the bit plane swap method, the embedded image data for each frame is
The image blocks are divided into the same image blocks as in the embedding process by the bit plane swap, and each image block is further divided into bit planes for each bit of the bit string representing the pixel value of the pixels forming the image block. Then, the correlation value representing the correlation between the bits in each bit plane forming each image block is obtained.

【0266】具体的には、例えば、図23Aに示すよう
に、まず、相関値を計算するビットプレーンが、注目ビ
ットプレーンとして、画像ブロックから取り出される。
そして、いま、画像ブロックが、例えば、上述したよう
に、4×4画素で構成される場合、注目ビットプレーン
も、横×縦が4×4ビットで構成されることになるが、
その4×4ビットの注目ビットプレーンから、例えば、
図23Bに示すような、その中心部分の2×2ビット
A,B,C,Dそれぞれを中心とした所定の大きさの4
つの小ブロックが構成される。ここで、図23Bは、ビ
ットAを中心として構成された3×3ビットの小ブロッ
クを示している。
Specifically, for example, as shown in FIG. 23A, first, the bit plane for calculating the correlation value is taken out from the image block as the bit plane of interest.
Then, if the image block is composed of 4 × 4 pixels as described above, for example, the target bit plane will also be composed of 4 × 4 bits in width × length.
From the target bit plane of 4 × 4 bits, for example,
As shown in FIG. 23B, 4 of a predetermined size centering on each of the 2 × 2 bits A, B, C and D in the central portion thereof.
One small block is constructed. Here, FIG. 23B shows a small block of 3 × 3 bits configured around the bit A.

【0267】ビットプレーンスワップ方式による復元処
理では、注目ビットプレーンから得られた各小ブロック
について、その中心のビットと同一の値のビットの数が
カウントされ、そのカウント値が、小ブロックの中心ビ
ットと、他のビットとの間の相関値として求められる。
ここで、図23Bに示したビットAを中心とする小ブロ
ックにおいては、その中心ビット(ここでは、ビット
A)が0となっており、その左上、上、右上、右、右
下、下、左下、左のビットが、それぞれ1,0,1,
0,0,1,0,0になっている。従って、0になって
いる中心ビットと同一の値になっているのは、その中心
ビットの上、左、右下、左下、左の5ビットであるた
め、中心ビットについての他のビットとの間の相関値
は、5になる。
In the restoration processing by the bit plane swap method, for each small block obtained from the bit plane of interest, the number of bits having the same value as the central bit is counted, and the count value is the central bit of the small block. And other bits are obtained as a correlation value.
Here, in the small block centered on the bit A shown in FIG. 23B, the central bit (here, bit A) is 0, and the upper left, upper, upper right, right, lower right, lower, The lower left and left bits are 1, 0, 1, respectively
It is 0, 0, 1, 0, 0. Therefore, the center bit having the same value as 0 has the same value as the upper, left, lower right, lower left, and left 5 bits of the center bit. The correlation value between them becomes 5.

【0268】ビットプレーンスワップ方式による復元処
理では、上述のようにして、注目ビットプレーンから得
られた、ビットA乃至Dそれぞれを中心とする各小ブロ
ックについて、相関値が求められる。さらに、このよう
にして求められたビットA乃至Dそれぞれを中心とする
小ブロックについての相関値どうしが加算され、その加
算値が、注目ビットプレーンの相関値とされる。
In the restoration processing by the bit plane swap method, the correlation value is obtained for each small block centered on each of the bits A to D obtained from the bit plane of interest as described above. Further, the correlation values of the small blocks centered on the respective bits A to D thus obtained are added, and the added value is set as the correlation value of the bit plane of interest.

【0269】画像ブロックを構成する各ビットプレーン
は、順次、注目ビットプレーンとされ、上述のようにし
て、相関値が求められる。そして、画像ブロックのすべ
てのビットプレーンの相関値を求められると、図24に
示すように、相関値の高いビットプレーンが最上位ビッ
ト側に位置するとともに、相関値の低いビットプレーン
が最下位ビット側に位置するように、即ち、相関値の昇
順に、ビットプレーンがビットプレーンスワップされ
る。これにより、画像ブロックが復元される。ここで、
図24では、濃度の薄いビットプレーンほど、相関値の
高いビットプレーンを表している。
Each bit plane forming an image block is sequentially set as a target bit plane, and the correlation value is obtained as described above. Then, when the correlation values of all the bit planes of the image block can be obtained, as shown in FIG. 24, the bit plane having the high correlation value is located on the most significant bit side, and the bit plane having the low correlation value is the least significant bit. The bit planes are bit plane swapped so that they are located on the side, that is, in ascending order of the correlation values. As a result, the image block is restored. here,
In FIG. 24, a bit plane having a lower density represents a bit plane having a higher correlation value.

【0270】画像ブロックが復元された後は、その復元
された画像ブロック(以下、適宜、復元ブロックとい
う)を構成するビットプレーンの並びと、復元前の画像
ブロックを構成するビットプレーンの並びとを比較する
ことで、画像ブロックの復元にあたって、各ビットプレ
ーンが、どのようにビットプレーンスワップされたのか
が検出され、そのビットプレーンスワップの仕方に基づ
いて、復元ブロックに埋め込まれていた被埋め込みデー
タが復元される。
After the image block is restored, the arrangement of bit planes forming the restored image block (hereinafter, appropriately referred to as a restoration block) and the arrangement of bit planes forming the image block before restoration are set. By comparing, when restoring the image block, it is detected how each bit plane was bit plane swapped, and the embedded data embedded in the restored block is detected based on the way of the bit plane swap. Restored.

【0271】次に、図25フローチャートを参照して、
図4の復元器6においてビットプレーンスワップ方式に
よる復元処理が行われる場合の、その復元処理について
説明する。
Next, referring to the flowchart in FIG.
The restoration processing when the restoration processing by the bit plane swap method is performed in the restoration device 6 in FIG. 4 will be described.

【0272】復元部32は、ステップS121におい
て、1フレームの埋め込み画像データを、フレームメモ
リ31に記憶させ、ステップS122に進む。ステップ
S122では、復元部32は、フレームメモリ31に記
憶された1フレームの埋め込み画像データを、埋め込み
処理における場合と同様に、画像ブロックにブロック化
し、ステップS123に進む。ステップS123では、
復元部32は、各画像ブロックをビットプレーンに分割
し、ステップS124に進む。
In step S121, the restoration section 32 stores the embedded image data of one frame in the frame memory 31, and proceeds to step S122. In step S122, the restoration unit 32 blocks the embedded image data of one frame stored in the frame memory 31 into image blocks as in the embedding process, and proceeds to step S123. In step S123,
The restoration unit 32 divides each image block into bit planes, and proceeds to step S124.

【0273】復元部32は、ステップS124におい
て、ビットプレーンに分割された各画像ブロックを、例
えば、ラスタスキャン順に、順次、注目ブロックとし
て、その注目ブロックの各ビットプレーンの相関値を、
図23で説明したように計算し、ステップS125に進
む。ステップS125では、復元部32は、ビットプレ
ーンの相関値が昇順に並ぶように、注目ブロックのビッ
トプレーンをビットプレーンスワップし、これにより、
元の画像データを構成する画像ブロックを復元する。さ
らに、ステップS125では、復元部32は、復元した
画像ブロック(復元ブロック)を、フレームメモリ31
に上書きする形で書き込むとともに、その復元ブロック
のビットプレーンの並びと、復元前の画像ブロックのビ
ットプレーンの並びとを比較することで、埋め込み処理
において、復元ブロックにつき、どのようなビットプレ
ーンスワップが行われたかを認識する。そして、復元部
32は、その認識結果に基づいて、復元ブロックに埋め
込まれていた被埋め込みデータを復元する。
In step S124, the restoration unit 32 sequentially sets each image block divided into bit planes, for example, in the raster scan order as a target block, and calculates the correlation value of each bit plane of the target block.
The calculation is performed as described with reference to FIG. 23, and the process proceeds to step S125. In step S125, the restoration unit 32 bit-plane swaps the bit planes of the block of interest so that the correlation values of the bit planes are arranged in ascending order, and as a result,
Restore the image blocks that make up the original image data. Furthermore, in step S125, the restoration unit 32 restores the restored image block (restored block) to the frame memory 31.
In the embedding process, what bitplane swap is performed for each restored block by comparing the bitplane arrangement of the restored block with the arrangement of the bitplanes of the image block before restoration. Recognize what was done. Then, the restoration unit 32 restores the embedded data embedded in the restoration block based on the recognition result.

【0274】その後、ステップS126に進み、復元部
32は、フレームメモリ31に記憶された1フレームの
埋め込み画像データの画像ブロックすべてを注目ブロッ
クとして処理を行ったかどうかを判定し、まだ、1フレ
ームのブロックすべてを処理していないと判定した場
合、ステップS124に戻り、ラスタスキャン順で、ま
だ、注目ブロックとしていない画像ブロックを、新たに
注目ブロックとして、以下、同様の処理を繰り返す。
After that, proceeding to step S126, the restoration section 32 determines whether or not all the image blocks of the embedded image data of one frame stored in the frame memory 31 have been processed as the block of interest, and one frame If it is determined that all blocks have not been processed, the process returns to step S124, and an image block that has not yet been set as a target block in the raster scan order is set as a new target block, and the same process is repeated.

【0275】一方、ステップS126において、フレー
ムメモリ31に記憶された1フレームの画像ブロックす
べてを処理したと判定された場合、ステップS127に
進み、復元部32は、フレームメモリ31に記憶された
復元ブロックで構成される1フレームの画像データ、即
ち、復元された元の画像データを読み出して出力させ
る。さらに、ステップS126では、復元部32は、ス
テップS125で復元した被埋め込みデータを出力し、
復元処理を終了する。
On the other hand, if it is determined in step S126 that all the image blocks of one frame stored in the frame memory 31 have been processed, the process proceeds to step S127, in which the restoring unit 32 restores the restored blocks stored in the frame memory 31. The image data of one frame constituted by, that is, the restored original image data is read and output. Further, in step S126, the restoration unit 32 outputs the embedded data restored in step S125,
The restoration process ends.

【0276】なお、以上の復元処理は、1フレームの埋
め込み画像データごとに繰り返し行われる。
The above restoration process is repeated for each frame of embedded image data.

【0277】以上のように、埋め込み対象データとして
の画像データのビットプレーンをビットプレーンスワッ
プすることにより被埋め込みデータが埋め込まれた埋め
込み画像データについて、ビットプレーンスワップを行
い、画像の相関性を利用して、ビットプレーンを元の画
像データにおける並びに戻すようにしたので、オーバヘ
ッドがなくても、埋め込み画像データを、元の画像デー
タと被埋め込みデータに復元することができる。従っ
て、その復元画像には、基本的に、被埋め込みデータを
埋め込むことによる画質の劣化は生じない。
As described above, the embedded image data in which the embedded data is embedded by performing the bit plane swapping on the bit planes of the image data as the embedding target data is subjected to the bit plane swap and the image correlation is used. Thus, since the bit planes are returned to the original image data, the embedded image data can be restored to the original image data and the embedded data without overhead. Therefore, basically, the image quality is not deteriorated by embedding the embedded data in the restored image.

【0278】次に、第3の方式では、埋め込み処理にお
いて、埋め込み対象データとしての画像データを構成す
るライン(水平ラインもしくは垂直ライン、または時間
方向に並ぶ複数の画素で構成されるライン)を、被埋め
込みデータに対応してローテーションする(従って、空
間方向または時間方向の操作を行う)ラインローテーシ
ョンを行うことを操作ルールとして、その操作ルールに
したがい、埋め込み対象データとしての画像データが操
作されることで、その画像データに、被埋め込みデータ
が埋め込まれる。
Next, in the third method, in the embedding process, the lines (horizontal lines or vertical lines, or lines composed of a plurality of pixels lined up in the time direction) forming the image data to be embedded are The operation rule is to rotate the line corresponding to the data to be embedded (thus performing the operation in the space direction or the time direction), and the image data as the embedding target data is operated according to the operation rule. Then, the embedded data is embedded in the image data.

【0279】即ち、第3の方式の埋め込み処理では、埋
め込み対象データとしての画像データの、例えば、水平
方向の各ライン(水平方向に並ぶ一連の画素)(水平ラ
イン)を、被埋め込みデータに対応する分だけ、水平方
向にずらすラインローテーションを行うことで、各水平
ラインに、被埋め込みデータが埋め込まれる。
That is, in the embedding process of the third method, for example, each line in the horizontal direction (a series of pixels arranged in the horizontal direction) (horizontal line) of the image data as the embedding target data corresponds to the embedded data. The embedded data is embedded in each horizontal line by performing line rotation that shifts in the horizontal direction by an amount corresponding to that.

【0280】ここで、第3の方式では、上述のように、
埋め込み対象データとしての画像データのラインを、被
埋め込みデータに対応してローテーションするという操
作ルールにしたがって、被埋め込みデータが埋め込まれ
るので、この第3の方式を、以下、適宜、ラインローテ
ーション方式という。
Here, in the third method, as described above,
Since the embedding data is embedded according to the operation rule of rotating the line of the image data as the embedding target data in correspondence with the embedding data, the third method will be appropriately referred to as a line rotation method hereinafter.

【0281】次に、図26のフローチャートを参照し
て、図3の埋め込み符号化器3で、ラインローテーショ
ン方式による埋め込み処理が行われる場合の、その埋め
込み処理について説明する。
Next, with reference to the flow chart of FIG. 26, the embedding process when the embedding encoder 3 of FIG. 3 performs the embedding process by the line rotation method will be described.

【0282】埋め込み対象データベース1からは、そこ
に記憶されている埋め込み対象データとしての画像デー
タが読み出され、フレームメモリ21に、順次供給され
て記憶される。
The image data as the embedding target data stored therein is read from the embedding target database 1 and sequentially supplied and stored in the frame memory 21.

【0283】そして、埋め込み部22は、ステップS1
31において、フレームメモリ21に記憶された画像デ
ータを構成する水平ラインのうち、まだ、注目ラインと
していないものを、注目ラインとして読み出し、ステッ
プS132に進む。ステップS132では、埋め込み部
22は、注目ラインが、第1水平ライン(1フレームの
画像データの最上行の水平ライン)であるかどうかを判
定する。ステップS132において、注目ラインが第1
水平ラインであると判定された場合、ステップS133
に進み、埋め込み部22は、その第1水平ラインを、そ
のまま、フレームメモリ21に上書きする形で書き込
み、ステップS137に進む。即ち、第1水平ライン
は、特に操作(ラインローテーション)されず、従っ
て、被埋め込みデータは埋め込まれない。
Then, the embedding section 22 carries out step S1.
At 31, the horizontal line which constitutes the image data stored in the frame memory 21 is read out as a line of interest as a line of interest, and the process proceeds to step S132. In step S132, the embedding unit 22 determines whether the line of interest is the first horizontal line (the uppermost horizontal line of the image data of one frame). In step S132, the attention line is the first
If it is determined that the line is a horizontal line, step S133.
Then, the embedding unit 22 writes the first horizontal line in the frame memory 21 as it is by overwriting, and proceeds to step S137. That is, the first horizontal line is not specifically operated (line rotation), and therefore, the embedded data is not embedded.

【0284】また、ステップS132において、注目ラ
インが第1水平ラインでないと判定された場合、即ち、
注目ラインが、第2水平ライン以降のいずれかの水平ラ
インである場合、ステップS134に進み、埋め込み部
22は、注目ラインに埋め込むべき被埋め込みデータ
を、被埋め込みデータベース2から読み出し、ステップ
S135に進む。ステップS135では、埋め込み部2
2は、注目ラインを、例えば、ステップS134で読み
出された被埋め込みデータに対応する画素数分だけ、水
平方向にローテーションする。
If it is determined in step S132 that the line of interest is not the first horizontal line, that is,
If the line of interest is any horizontal line after the second horizontal line, the process proceeds to step S134, the embedding unit 22 reads the embedded data to be embedded in the line of interest from the embedded database 2, and the process proceeds to step S135. . In step S135, the embedding unit 2
2 rotates the line of interest in the horizontal direction by, for example, the number of pixels corresponding to the embedded data read in step S134.

【0285】即ち、例えば、いま、図27Aに示すよう
に、第N水平ライン(N≠1)が注目ラインとされてい
るとすると、埋め込み部22は、図27Bに示すよう
に、その第N水平ラインを、被埋め込みデータの値と同
一の画素数だけ、水平方向である左または右方向のうち
の、例えば右方向にスライドする(ずらす)。そして、
埋め込み部22は、そのスライドにより、フレームの右
にはみ出した第N水平ラインの部分を、図27Cに示す
ように、その第N水平ラインの左側にはめ込む。
That is, for example, assuming that the N-th horizontal line (N ≠ 1) is the target line as shown in FIG. 27A, the embedding section 22 displays the N-th horizontal line as shown in FIG. 27B. The horizontal line is slid (shifted) by the same number of pixels as the value of the embedded data in the left or right direction, which is the horizontal direction, for example, in the right direction. And
By the slide, the embedding portion 22 fits the portion of the Nth horizontal line protruding to the right of the frame into the left side of the Nth horizontal line, as shown in FIG. 27C.

【0286】埋め込み部22は、注目ラインをローテー
ションし、これにより、注目ラインに、被埋め込みデー
タを埋め込むと、ステップS136に進み、そのローテ
ーション後の注目ラインを、フレームメモリ21に上書
きする形で書き込み、ステップS137に進む。
The embedding unit 22 rotates the line of interest, and when the embedded data is embedded in the line of interest, the process proceeds to step S136, and the line of interest after the rotation is overwritten in the frame memory 21. , And proceeds to step S137.

【0287】ステップS137では、埋め込み部22
は、フレームメモリ21に記憶された画像データのすべ
ての水平ラインを、注目ラインとして処理を行ったかど
うかを判定する。ステップS137において、フレーム
メモリ21に記憶された画像データのすべての水平ライ
ンを、まだ、注目ラインとしていないと判定された場
合、ステップS131に戻り、まだ、注目ラインとして
いない水平ライン(例えば、いままで注目ラインとされ
ていた1ライン下の水平ラインが、新たに注目ラインと
され、以下、同様の処理が繰り返される。
[0287] In step S137, the embedding unit 22
Determines whether all the horizontal lines of the image data stored in the frame memory 21 have been processed as the lines of interest. If it is determined in step S137 that all the horizontal lines of the image data stored in the frame memory 21 have not been set as the target line, the process returns to step S131, and the horizontal lines that are not set as the target line (for example, until now). The horizontal line, which is one line below the line of interest, is newly set as the line of interest, and the same processing is repeated thereafter.

【0288】また、ステップS137において、フレー
ムメモリ21に記憶された画像データのすべての水平ラ
インを、注目ラインとしたと判定された場合、即ち、フ
レームメモリ21に記憶された1フレームの画像データ
の各水平ライン(但し、ここでは、第1水平ラインを除
く)に、被埋め込みデータが埋め込まれ、埋め込み画像
データが生成された場合、埋め込み部22は、その1フ
レームの埋め込み画像データを、フレームメモリ21か
ら読み出して出力させ、処理を終了する。
If it is determined in step S137 that all the horizontal lines of the image data stored in the frame memory 21 are the target lines, that is, the one frame of image data stored in the frame memory 21 When the embedded data is embedded in each horizontal line (excluding the first horizontal line in this case) to generate embedded image data, the embedding unit 22 stores the embedded image data of the one frame in the frame memory. The data is read out from 21 and output, and the process ends.

【0289】なお、以上の埋め込み処理は、フレームメ
モリ21に記憶された画像データの各フレームについ
て、繰り返し行われる。
The embedding process described above is repeated for each frame of the image data stored in the frame memory 21.

【0290】図26の埋め込み処理によれば、ある1フ
レームの画像データは、次のような埋め込み画像データ
とされる。
According to the embedding processing of FIG. 26, one frame of image data is the following embedded image data.

【0291】即ち、例えば、図28Aに示すような画像
データに、被埋め込みデータとして、10,150,2
00,・・・を埋め込む場合においては、図28Bに示
すように、第1水平ラインは、そのまま出力され、第2
水平ラインは、最初の被埋め込みデータと同一の値であ
る10画素だけ、右方向にローテーションされる。さら
に、第3水平ラインは、2番目の被埋め込みデータと同
一の値である150画素だけ、右方向にローテーション
され、第4水平ラインは、3番目の被埋め込みデータと
同一の値である200画素だけ、右方向にローテーショ
ンされる。第5水平ライン以降も、同様に、被埋め込み
データに対応する画素数だけ、右方向にローテーション
されていく。
That is, for example, image data as shown in FIG.
In the case of embedding 00, ..., As shown in FIG. 28B, the first horizontal line is directly output and the second horizontal line is output.
The horizontal line is rotated to the right by 10 pixels, which is the same value as the first embedded data. Further, the third horizontal line is rotated to the right by 150 pixels, which is the same value as the second embedded data, and the fourth horizontal line is 200 pixels, which is the same value as the third embedded data. Just rotated to the right. Similarly, after the fifth horizontal line, the pixels are rotated rightward by the number of pixels corresponding to the embedded data.

【0292】以上のように、フレームメモリ21に記憶
された画像を構成する水平ラインを、被埋め込みデータ
に対応した画素数だけ、右方向にローテーションするこ
とにより、各水平ラインに、被埋め込みデータを埋め込
む場合には、その逆のローテーション(逆向きのローテ
ーション)を行うことで、元の画像データを復元するこ
とができ、さらに、その逆のローテーションを行ったと
きのローテーション量に基づき、画像データに埋め込ま
れていた被埋め込みデータを復元することができる。従
って、画像データの画質の劣化を極力なくし、かつデー
タ量を増加せずに、画像データに被埋め込みデータを埋
め込むことができる。
As described above, the horizontal lines forming the image stored in the frame memory 21 are rotated rightward by the number of pixels corresponding to the data to be embedded, so that the data to be embedded in each horizontal line. When embedding, the original image data can be restored by performing the reverse rotation (reverse rotation), and further, based on the rotation amount when the reverse rotation is performed, The embedded data that was embedded can be restored. Therefore, it is possible to embed the embedded data in the image data while minimizing the deterioration of the image quality of the image data and without increasing the data amount.

【0293】即ち、被埋め込みデータが埋め込まれた水
平ラインは、元の位置から被埋め込みデータに対応する
ローテーション量(画素数)だけローテーションされて
いるが、このような水平ラインは、画像データの相関
性、即ち、ここでは、元の位置にある水平ラインとの間
の相関を利用することにより、オーバヘッドなしで、元
の位置に戻すことができる。さらに、水平ラインを元の
位置に戻すことで、埋め込み処理によって、その水平ラ
インがローテーションされたローテーション量を認識す
ることができ、そのローテーション量に基づいて、その
水平ラインに埋め込まれていた被埋め込みデータを復元
することができる。従って、その結果得られる復元画像
には、基本的に、被埋め込みデータを埋め込むことによ
る画質の劣化は生じない。
That is, the horizontal line in which the embedded data is embedded is rotated by the rotation amount (the number of pixels) corresponding to the embedded data from the original position. Such a horizontal line is correlated with the image data. By taking advantage of the correlation between the sex, ie here the horizontal line in its original position, it can be returned to its original position without overhead. Furthermore, by returning the horizontal line to the original position, the rotation amount by which the horizontal line is rotated can be recognized by the embedding process, and based on the rotation amount, the embedding target embedded in the horizontal line is embedded. Data can be restored. Therefore, basically, in the restored image obtained as a result, the image quality does not deteriorate due to the embedding of the embedded data.

【0294】なお、埋め込み画像データに、元の位置に
ある水平ラインが存在しない場合には、上述のように画
像の相関性を利用して、画像データと被埋め込みデータ
を復元するのは、一般には、困難である。そこで、ここ
では、図26の埋め込み処理において、各フレームの第
1水平ラインには、被埋め込みデータを埋め込まないで
(ローテーションしないで)、そのまま、埋め込み画像
データとするようにしている。
When the embedded image data does not have a horizontal line at the original position, it is generally used to restore the image data and the embedded data by utilizing the correlation of images as described above. It is difficult. Therefore, here, in the embedding process of FIG. 26, the embedded data is not embedded (not rotated) in the first horizontal line of each frame, and is directly used as the embedded image data.

【0295】次に、ラインローテーション方式による埋
め込み処理により得られる埋め込み画像データは、以下
のような、画像データの相関性を利用したラインローテ
ーション方式による復元処理により、元の画像データと
被埋め込みデータに復元することができる。
Next, the embedded image data obtained by the embedding processing by the line rotation method is converted into the original image data and the embedding data by the restoration processing by the line rotation method utilizing the correlation of the image data as follows. Can be restored.

【0296】即ち、ラインローテーション方式による復
元処理では、埋め込み画像データの各水平ラインが、例
えば、その第1水平ラインから、順次、注目ラインとさ
れるとともに、その注目ラインの1ライン上の水平ライ
ンが、基準ラインとされる。
That is, in the restoration processing by the line rotation method, each horizontal line of the embedded image data is sequentially set as the target line from the first horizontal line, and the horizontal line one line above the target line is selected. Is the reference line.

【0297】なお、注目ラインは、これから元の位置に
戻そうとしている水平ラインであり、また、いまの場
合、上方向から下方向に向かって、水平ラインが、順
次、注目ラインとされるので、基準ラインは、既に元の
位置に戻されている水平ラインである。
The attention line is the horizontal line which is about to be returned to its original position. In this case, the horizontal lines are sequentially set as the attention line from the upper side to the lower side. The reference line is a horizontal line that has already been returned to its original position.

【0298】ラインローテーション方式による復元処理
では、その後、注目ラインを、1画素ずつ右または左の
うちのいずれか一方向にローテーションしながら、その
ローテーション後の注目ラインと、基準ラインとの間の
相関を表す相関値が演算される。
In the restoration processing by the line rotation method, the line of interest is then rotated pixel by pixel in either the right or left direction, and the correlation between the line of interest after rotation and the reference line is determined. Is calculated.

【0299】具体的には、例えば、図29Aに示すよう
に、注目ラインをローテーションせずに(注目ライン
を、0画素分だけローテーションして)、その注目ライ
ンを構成する画素の画素値と、基準ラインを構成する対
応する画素の画素値との差分絶対値の総和の逆数が、注
目ラインについての基準ラインとの間の相関値として計
算される。さらに、図29Bに示すように、注目ライン
が、1画素だけ右または左のうちのいずれかにローテー
ションされ(図29では、図27で説明した場合の逆方
向である左方向にローテーションされている)、そのロ
ーテーション後の注目ラインについて、基準ラインとの
間の相関値が計算される。以下、同様にして、注目ライ
ンが元の位置(埋め込み画像データにおける元の位置)
に戻るまで、注目ラインを、2画素、3画素、・・・と
順次ローテーションしながら、基準ラインとの間の相関
値が計算される。
Specifically, for example, as shown in FIG. 29A, the line of interest is not rotated (the line of interest is rotated by 0 pixels), and the pixel values of the pixels forming the line of interest are set as follows: The reciprocal of the sum of the absolute differences between the pixel values of the corresponding pixels forming the reference line and the pixel value of the corresponding line is calculated as the correlation value between the reference line and the reference line. Further, as shown in FIG. 29B, the line of interest is rotated by one pixel to either the right side or the left side (in FIG. 29, it is rotated in the left direction which is the reverse direction to that described with reference to FIG. 27). ), The correlation value with the reference line is calculated for the line of interest after the rotation. Similarly, the line of interest is the original position (the original position in the embedded image data).
The correlation value between the reference line and the reference line is calculated while sequentially rotating the line of interest to 2 pixels, 3 pixels, ...

【0300】以上のようにして、各ローテーション量
(ここでは、水平ラインを構成する画素数)でローテー
ションされた注目ラインについての相関値が計算された
後は、各ローテーション量の中から、注目ラインについ
ての相関値を最大にするローテーション量が検出され
る。そして、その検出されたローテーション量が、注目
ラインを元の位置に戻すローテーション量として決定さ
れ(この決定されたローテーション量を、以下、適宜、
決定ローテーション量という)、注目ラインが、決定ロ
ーテーション量だけ、相関値を計算する場合と同一の方
向(上述の場合は、左方向)にローテーションされるこ
とで、元の位置に戻される。即ち、これにより、注目ラ
インが復元される。
As described above, after the correlation value for the target line rotated by each rotation amount (here, the number of pixels forming the horizontal line) is calculated, the target line is selected from each rotation amount. The amount of rotation that maximizes the correlation value for is detected. Then, the detected rotation amount is determined as the rotation amount for returning the line of interest to the original position (the determined rotation amount will be referred to as
The target line is rotated by the determined rotation amount in the same direction as in the case of calculating the correlation value (in the above case, leftward), and is returned to the original position. That is, the line of interest is restored by this.

【0301】さらに、決定ローテーション量に基づい
て、注目ラインに埋め込まれていた被埋め込みデータが
復元される。
Further, the embedded data embedded in the line of interest is restored based on the determined rotation amount.

【0302】次に、図30フローチャートを参照して、
図4の復元器6においてラインローテーション方式によ
る復元処理が行われる場合の、その復元処理について説
明する。
Next, referring to the flowchart in FIG. 30,
The restoration processing when the restoration processing by the line rotation method is performed in the restoration device 6 of FIG. 4 will be described.

【0303】フレームメモリ31では、そこに供給され
る埋め込み画像データが、例えば、1フレーム単位で順
次記憶される。
In the frame memory 31, the embedded image data supplied thereto is sequentially stored, for example, in 1-frame units.

【0304】そして、復元部32は、ステップS141
において、フレームメモリ31に記憶された埋め込み画
像データの、まだ注目ラインとされていない水平ライン
のうちの、より上の行の水平ラインを、注目ラインとし
て読み出し、ステップS142に進む。ステップS14
2では、復元部32は、注目ラインが、第1水平ライン
であるかどうかを判定する。ステップS142におい
て、注目ラインが、第1水平ラインであると判定された
場合、ステップS143に進み、復元部32は、第1水
平ラインである注目ラインを、そのまま、フレームメモ
リ31に上書きする形で書き込み、ステップS150に
進む。即ち、図28の埋め込み処理では、上述したよう
に、第1水平ラインには、被埋め込みデータが埋め込ま
れていないため(従って、ローテーションされていな
い)、第1水平ラインは、特に操作されない。
Then, the restoration unit 32 carries out step S141.
In, in the embedded image data stored in the frame memory 31, the horizontal line of the upper row of the horizontal lines not yet set as the target line is read as the target line, and the process proceeds to step S142. Step S14
In 2, the restoration unit 32 determines whether the line of interest is the first horizontal line. When it is determined in step S142 that the line of interest is the first horizontal line, the process proceeds to step S143, and the restoration unit 32 overwrites the line of interest, which is the first horizontal line, on the frame memory 31 as it is. Write and proceed to step S150. That is, in the embedding process of FIG. 28, as described above, since the embedded data is not embedded in the first horizontal line (therefore, it is not rotated), the first horizontal line is not particularly operated.

【0305】また、ステップS142において、注目ラ
インが、第1水平ラインでないと判定された場合、即
ち、注目ラインが、第2水平ライン以降のいずれかの水
平ラインである場合、ステップS144に進み、復元部
32は、注目ラインの1ライン上の水平ラインを基準ラ
インとして、フレームメモリ31から読み出し、ステッ
プS145に進む。ステップS145では、復元部32
は、注目ラインと基準ラインとの間の相関値(ライン相
関値)を計算し、その内蔵するメモリに記憶して、ステ
ップS146に進む。
If it is determined in step S142 that the line of interest is not the first horizontal line, that is, if the line of interest is any horizontal line after the second horizontal line, the process proceeds to step S144. The restoration unit 32 reads out from the frame memory 31 the horizontal line one line above the line of interest as the reference line, and proceeds to step S145. In step S145, the restoration unit 32
Calculates the correlation value (line correlation value) between the line of interest and the reference line, stores it in its built-in memory, and proceeds to step S146.

【0306】ステップS146では、復元部32は、注
目ラインを、例えば、左方向に、1画素だけローテーシ
ョンし、ステップS147に進む。ステップS147で
は、復元部32は、ステップS146で注目ラインがロ
ーテーションされることにより、そのローテーション後
の注目ラインの各画素が、フレームメモリ31に記憶さ
れている注目ラインの各画素の位置に戻ったかどうかを
判定する。
In step S146, the restoration unit 32 rotates the line of interest by, for example, one pixel in the left direction, and proceeds to step S147. In step S147, the restoration unit 32 rotates the target line in step S146 so that each pixel of the target line after rotation has returned to the position of each pixel of the target line stored in the frame memory 31. Determine whether

【0307】ステップS147において、ローテーショ
ン後の注目ラインの各画素が、フレームメモリ31に記
憶されている注目ラインの各画素の位置に戻っていない
と判定された場合、ステップS145に戻り、ローテー
ション後の注目ラインと基準ラインとの間の相関値が計
算され、以下、同様の処理が繰り返される。
If it is determined in step S147 that each pixel of the line of interest after rotation has not returned to the position of each pixel of the line of interest stored in the frame memory 31, the process returns to step S145, and after rotation. The correlation value between the line of interest and the reference line is calculated, and the same process is repeated thereafter.

【0308】また、ステップS147において、ローテ
ーション後の注目ラインの各画素が、フレームメモリ3
1に記憶されている注目ラインの各画素の位置に戻った
と判定された場合、ステップS148に進み、復元部3
2は、注目ラインについて、ステップS145乃至S1
47のループ処理を行うことにより得られた各ローテー
ション量に対する相関値の中から、その最大値を求め
る。さらに、ステップS148では、復元部32は、最
大値となる相関値を与えるローテーション量を検出し、
そのローテーション量を、決定ローテーション量として
決定する。そして、復元部32は、その決定ローテーシ
ョン量に基づいて、注目ラインに埋め込まれていた被埋
め込みデータを復元して出力し、即ち、決定ローテーシ
ョン量を、そのまま被埋め込みデータとして出力し、ス
テップS149に進む。
Further, in step S147, each pixel of the line of interest after rotation is changed to the frame memory 3
If it is determined that the pixel has returned to the position of each pixel of the line of interest stored in 1, the process proceeds to step S148, and the restoration unit 3
2 indicates steps S145 to S1 for the line of interest.
The maximum value is obtained from the correlation values for each rotation amount obtained by performing the loop processing of 47. Further, in step S148, the restoration unit 32 detects the rotation amount that gives the maximum correlation value,
The rotation amount is determined as the determined rotation amount. Then, the restoration unit 32 restores and outputs the embedded data embedded in the line of interest based on the determined rotation amount, that is, outputs the determined rotation amount as it is as embedded data, and proceeds to step S149. move on.

【0309】ステップS149では、復元部32は、フ
レームメモリ31に記憶されている注目ラインを読み出
し、決定ローテーション量だけ左方向にローテーション
することにより、注目ラインを復元する(注目ライン
を、元の画像データにおける位置に戻す)。さらに、ス
テップS149では、復元部32は、ローテーション後
の注目ラインを、フレームメモリ31に上書きする形で
書き込み、ステップS150に進む。
In step S149, the restoring unit 32 restores the line of interest by reading the line of interest stored in the frame memory 31 and rotating it to the left by the determined rotation amount (the line of interest is the original image. Return to position in data). Further, in step S149, the restoration unit 32 writes the line of interest after rotation in the frame memory 31 in a form of overwriting, and proceeds to step S150.

【0310】ステップS150では、復元部32は、フ
レームメモリ31に記憶された埋め込み画像データのす
べての水平ラインを、注目ラインとして処理を行ったか
どうかを判定する。ステップS150において、フレー
ムメモリ31に記憶された埋め込み画像データのすべて
の水平ラインを、まだ、注目ラインとしていないと判定
された場合、ステップS141に戻り、いままで注目ラ
インとされていた1ライン下の水平ラインが、新たに注
目ラインとされ、以下、同様の処理が繰り返される。
In step S150, the restoration section 32 determines whether or not all the horizontal lines of the embedded image data stored in the frame memory 31 have been processed as lines of interest. When it is determined in step S150 that all the horizontal lines of the embedded image data stored in the frame memory 31 have not been set as the target line, the process returns to step S141, and the line below the one line that has been set as the target line until now is displayed. The horizontal line is newly set as the line of interest, and the same processing is repeated thereafter.

【0311】また、ステップS150において、フレー
ムメモリ31に記憶された埋め込み画像データのすべて
の水平ラインを、注目ラインとしたと判定された場合、
即ち、フレームメモリ31に記憶された1フレームの埋
め込み画像データの各水平ライン(但し、ここでは、第
1水平ラインを除く)に埋め込まれていた被埋め込みデ
ータを復元するとともに、その埋め込み画像データを、
元の画像データに復元した場合、復元部32は、その復
元した画像データを、フレームメモリ31から読み出し
て出力させ、処理を終了する。
If it is determined in step S150 that all the horizontal lines of the embedded image data stored in the frame memory 31 are the target lines,
That is, the embedded data embedded in each horizontal line (but excluding the first horizontal line here) of the embedded image data of one frame stored in the frame memory 31 is restored, and the embedded image data is restored. ,
When the image data is restored to the original image data, the restoration unit 32 reads the restored image data from the frame memory 31, outputs the read image data, and ends the process.

【0312】なお、以上の復元処理は、フレームメモリ
31に記憶された埋め込み画像データの各フレームにつ
いて、繰り返し行われる。
The above restoration process is repeated for each frame of the embedded image data stored in the frame memory 31.

【0313】以上のように、水平ラインをローテーショ
ンすることにより被埋め込みデータが埋め込まれた埋め
込み画像データについて、水平ラインのローテーション
を行い、画像の相関性を利用して、水平ラインを元の位
置に戻すようにしたので、オーバヘッドがなくても、埋
め込み画像データを、元の画像データと被埋め込みデー
タに復元することができる。従って、その復元画像に
は、基本的に、被埋め込みデータを埋め込むことによる
画質の劣化は生じない。
As described above, the embedded image data in which the embedded data is embedded by rotating the embedded horizontal line is rotated, the embedded image data is rotated, and the horizontal line is moved to the original position by utilizing the correlation of images. Since the restoration is performed, the embedded image data can be restored to the original image data and the embedded data without overhead. Therefore, basically, the image quality is not deteriorated by embedding the embedded data in the restored image.

【0314】なお、図30の復元処理では、注目ライン
と、基準ラインとの間の相関を表す相関値として、対応
する画素どうしの差分絶対値の総和(差分絶対値和)を
用いるようにしたが、その他、例えば、画素の差分の自
乗和等を用いることも可能である。
In the restoration processing of FIG. 30, the sum of absolute differences between corresponding pixels (sum of absolute differences) is used as the correlation value representing the correlation between the line of interest and the reference line. However, it is also possible to use, for example, the sum of squares of pixel differences.

【0315】また、図26の埋め込み処理では、1つの
水平ラインを、被埋め込みデータにしたがってローテー
ションするようにしたため、1つの水平ラインには、そ
の水平ラインを構成する画素数だけの範囲内の値の被埋
め込みデータの埋め込みが可能である。但し、1つの水
平ラインを構成する画素数より大きい範囲内の値の被埋
め込みデータの埋め込みであっても、例えば、2つの水
平ラインなどの複数の水平ラインを、被埋め込みデータ
にしたがってローテーションするようにすることで行う
ことが可能である。
In the embedding process of FIG. 26, since one horizontal line is rotated according to the embedding data, one horizontal line has a value within the range of the number of pixels forming the horizontal line. It is possible to embed the data to be embedded. However, even when embedding embedded data having a value within a range larger than the number of pixels forming one horizontal line, for example, a plurality of horizontal lines such as two horizontal lines are rotated according to the embedded data. It is possible to do it.

【0316】ところで、上述した図26のラインローテ
ーション方式による埋め込み処理では、埋め込み対象デ
ータとしての画像データの水平方向に並ぶ画素で構成さ
れる水平ラインを、水平方向にローテーションすること
により、被埋め込みデータの埋め込みを行うようにした
が、被埋め込みデータの埋め込みは、その他、例えば、
画像データの垂直方向に並ぶ画素で構成される垂直ライ
ンを、垂直方向にローテーションしたり、あるいは、斜
め方向に並ぶ画素で構成されるラインを、その斜め方向
にローテーションすることなどによって行うことも可能
である。
By the way, in the embedding processing by the line rotation method of FIG. 26 described above, the horizontal line formed by the pixels lined up in the horizontal direction of the image data as the embedding target data is rotated in the horizontal direction to embed the embedded data. Although the embedded data is embedded, the embedded data is embedded in other
It is also possible to rotate a vertical line composed of pixels arranged in the vertical direction of the image data in the vertical direction, or rotate a line composed of pixels arranged in the oblique direction in the oblique direction. Is.

【0317】また、ラインローテーション方式による場
合には、水平ラインまたは垂直ラインのうちのいずれか
一方をローテーションすることにより、被埋め込みデー
タを埋め込み、その後、水平ラインまたは垂直ラインの
うちの他方をローテーションすることにより、被埋め込
みデータを、さらに埋め込むことが可能である。
In the case of the line rotation method, the embedded data is embedded by rotating either the horizontal line or the vertical line, and then the other of the horizontal line or the vertical line is rotated. As a result, it is possible to further embed the embedded data.

【0318】即ち、例えば、図31Aに示すように、ラ
インローテーション方式による埋め込み処理では、埋め
込み対象データとしての画像データの水平ラインを、所
定の被埋め込みデータ(以下、適宜、第1の被埋め込み
データという)に対応してローテーションすることによ
り、その第1の被埋め込みデータを埋め込み、さらに、
その結果生成される埋め込み符号化データ(以下、適
宜、第1の埋め込み符号化データという)としての画像
データの垂直ラインを、別の被埋め込みデータ(以下、
適宜、第2の被埋め込みデータという)に対応してロー
テーションすることにより、その第2の被埋め込みデー
タを埋め込むことが可能である。
That is, for example, as shown in FIG. 31A, in the embedding processing by the line rotation method, the horizontal line of the image data as the embedding target data is converted into a predetermined embedding data (hereinafter, referred to as the first embedding data as appropriate). By embedding the first embedded data by rotating it corresponding to
The vertical line of the image data as the resulting embedded coded data (hereinafter, appropriately referred to as first embedded coded data) is converted into another embedded data (hereinafter,
It is possible to embed the second embedded data by rotating the data corresponding to the second embedded data.

【0319】いま、第1の埋め込み符号化データとして
の画像データの垂直ラインをローテーションすることに
より、第2の被埋め込みデータを埋め込んで生成される
埋め込み符号化データを、第2の埋め込み符号化データ
というものとすると、第2の埋め込み符号化データに
は、元の画像データの水平ラインだけでなく、垂直ライ
ンもローテーションすることによって、被埋め込みデー
タが埋め込まれているから、図26の埋め込み処理で説
明したように、画像データの水平ラインだけをローテー
ションする場合に比較して、より多くの被埋め込みデー
タを埋め込むことができる。
Now, the embedded coded data generated by embedding the second embedded data by rotating the vertical line of the image data as the first embedded coded data is converted into the second embedded coded data. In that case, since the embedded data is embedded in the second embedded coded data by rotating not only the horizontal lines of the original image data but also the vertical lines, the embedding process of FIG. As described above, more embedded data can be embedded as compared with the case of rotating only the horizontal line of the image data.

【0320】即ち、例えば、埋め込み対象データとして
の画像データの水平ラインと垂直ラインのライン数が同
一であるとした場合には、画像データの水平ラインと垂
直ラインの両方をローテーションして生成される第2の
埋め込み符号化データには、画像データの水平ラインだ
けをローテーションして生成される第1の埋め込み符号
化データにおける場合の2倍のデータ量の被埋め込みデ
ータを埋め込むことができる。
That is, for example, when the number of horizontal lines and vertical lines of the image data as the embedding target data is the same, both horizontal and vertical lines of the image data are generated by rotation. In the second embedded coded data, it is possible to embed embedded data having a data amount twice as large as that in the first embedded coded data generated by rotating only horizontal lines of image data.

【0321】以上のような第2の埋め込み符号化データ
を、埋め込み対象データ、並びに第1および第2の被埋
め込みデータに復元する復元処理は、やはり、画像の相
関性を利用して、次のように行うことができる。
The restoration process for restoring the above-mentioned second embedded coded data to the embedding target data and the first and second embedded data also uses the correlation of images to Can be done as

【0322】即ち、埋め込み対象データとしての画像デ
ータの水平ラインをローテーションすると、その画像デ
ータにおける、水平ラインと直交する空間方向である垂
直方向の相関性が破壊される。従って、画像データの水
平ラインのみをローテーションすることにより生成され
る埋め込み符号化データについては、その水平ライン
を、垂直方向の相関性を元に戻すように(図30の復元
処理においては、基準ラインとの間の相関値が最大にな
るように)ローテーションすることで、元の画像データ
に復元することができる。
That is, when the horizontal line of the image data as the embedding target data is rotated, the correlation in the image data in the vertical direction which is the spatial direction orthogonal to the horizontal line is destroyed. Therefore, with respect to the embedded coded data generated by rotating only the horizontal line of the image data, the horizontal line is restored to the original correlation in the vertical direction (in the restoration process of FIG. 30, the reference line is used). The original image data can be restored by rotating so that the correlation value between and becomes maximum.

【0323】画像データの垂直ラインのみをローテーシ
ョンすることにより生成される埋め込み符号化データに
ついても、上述の、水平ラインをローテーションするこ
とにより生成される埋め込み符号化データにおける場合
と同様にして、元の画像データに復元することができ
る。
The embedded coded data generated by rotating only the vertical lines of the image data also has the same original code as the embedded coded data generated by rotating the horizontal lines. Image data can be restored.

【0324】即ち、埋め込み対象データとしての画像デ
ータの垂直ラインをローテーションすると、その画像デ
ータにおける、垂直ラインと直交する空間方向である水
平方向の相関性が破壊される。従って、画像データの垂
直ラインをローテーションすることにより生成される埋
め込み符号化データについては、その垂直ラインを、水
平方向の相関性を元に戻すようにローテーションするこ
とで、元の画像データに復元することができる。
That is, when the vertical line of the image data as the embedding target data is rotated, the correlation in the horizontal direction which is the spatial direction orthogonal to the vertical line in the image data is destroyed. Therefore, the embedded coded data generated by rotating the vertical line of the image data is restored to the original image data by rotating the vertical line so as to restore the horizontal correlation. be able to.

【0325】以上から、画像データの水平ラインをロー
テーションすると、垂直方向の相関性は破壊されるが、
水平方向の相関性は影響を受けない。また、画像データ
の垂直ラインをローテーションすると、水平方向の相関
性は破壊されるが、垂直方向の相関性は影響を受けな
い。そして、画像データの水平ラインをローテーション
することにより生成される埋め込み符号化データは、垂
直方向の相関性だけを利用して、元の画像データに復元
することができ、画像データの垂直ラインをローテーシ
ョンすることにより生成される埋め込み符号化データ
は、水平方向の相関性だけを利用して、元の画像データ
に復元することができる。
As described above, when the horizontal line of the image data is rotated, the vertical correlation is destroyed.
Horizontal correlation is not affected. Further, when the vertical line of the image data is rotated, the correlation in the horizontal direction is destroyed, but the correlation in the vertical direction is not affected. Then, the embedded coded data generated by rotating the horizontal line of the image data can be restored to the original image data by using only the correlation in the vertical direction, and the vertical line of the image data is rotated. The embedded coded data generated by doing so can be restored to the original image data by using only the correlation in the horizontal direction.

【0326】従って、図31Aに示したように、埋め込
み対象データとしての画像データの水平ラインを、第1
の被埋め込みデータに対応してローテーションすること
により、第1の埋め込み符号化データを生成し、その第
1の埋め込み符号化データとしての画像データの垂直ラ
インを、第2の被埋め込みデータに対応してローテーシ
ョンすることにより生成された第2の埋め込み符号化デ
ータは、図31Bに示すように、その垂直ラインを、水
平方向の相関性を元に戻すようにローテーションするこ
とで、第1の埋め込み符号化データと第2の被埋め込み
データに復元することができる。そして、第1の埋め込
み符号化データは、その水平ラインを、垂直方向の相関
性を元に戻すようにローテーションすることで、埋め込
み対象データと第1の被埋め込みデータに復元すること
ができる。即ち、第2の埋め込み符号化データは、元の
埋め込み対象データと、第1および第2の被埋め込みデ
ータに復元することができる。
Therefore, as shown in FIG. 31A, the horizontal line of the image data as the embedding target data is set to the first line.
The first embedded coded data is generated by rotating the first embedded coded data corresponding to the first embedded coded data, and the vertical line of the image data as the first embedded coded data corresponds to the second embedded data. As shown in FIG. 31B, the second embedded coded data generated by rotating the first embedded code by rotating the vertical line to restore the correlation in the horizontal direction to the original one. Data and second embedded data can be restored. Then, the first embedded coded data can be restored to the embedding target data and the first embedded data by rotating the horizontal line so as to restore the vertical correlation. That is, the second embedded coded data can be restored to the original embedding target data and the first and second embedded data.

【0327】水平ラインのローテーションによる埋め込
みと、垂直ラインのローテーションによる埋め込みと
は、いずれも、被埋め込みデータに対応してラインをロ
ーテーションするという操作ルールにしたがって、埋め
込み対象データを操作するラインローテーション方式に
よる埋め込みであるが、水平ラインのローテーション
は、垂直方向の相関にのみ影響を与え、垂直ラインのロ
ーテーションは、水平方向の相関にのみ影響を与えるも
のであるから、水平ラインのローテーションと、垂直ラ
インのローテーションとは、いわば、独立した操作また
は直交した操作であるということができる。このよう
に、水平ラインのローテーションと、垂直ラインのロー
テーションとが、独立した操作であるがゆえに、画像デ
ータの水平ラインを第1の被埋め込みデータに対応して
ローテーションし、さらに、垂直ラインを第2の被埋め
込みデータに対応してローテーションして得られる第2
の埋め込み符号化データは、元の画像データと、第1お
よび第2の被埋め込みデータに復元することができる。
The embedding by the rotation of the horizontal line and the embedding by the rotation of the vertical line are both based on the line rotation method in which the embedding target data is operated according to the operation rule of rotating the line corresponding to the embedding data. Although it is embedded, horizontal line rotation only affects vertical correlation, and vertical line rotation only affects horizontal correlation, so horizontal line rotation and vertical line rotation Rotation can be said to be an independent operation or an orthogonal operation. As described above, since the rotation of the horizontal line and the rotation of the vertical line are independent operations, the horizontal line of the image data is rotated corresponding to the first embedded data, and the vertical line is further rotated. Second obtained by rotation corresponding to the second embedded data
The embedded coded data can be restored to the original image data and the first and second embedded data.

【0328】ところで、第2の埋め込み符号化データ
は、埋め込み対象データとしての画像データの水平ライ
ンと垂直ラインがローテーションされたものであるか
ら、画像データの、いわば空間的な相関性が、すべての
空間方向について破壊されたものとなっている。
By the way, since the second embedded coded data is obtained by rotating the horizontal line and the vertical line of the image data as the embedding target data, the so-called spatial correlation of the image data is all It has been destroyed in the spatial direction.

【0329】従って、第2の埋め込み符号化データとし
ての画像データに対して、ラインローテーション方式に
よる場合は勿論、その他の操作ルールにしたがって操作
を行う、例えば、上述の画素スワップ方式や、ビットプ
レーンスワップ方式によって、さらに被埋め込みデータ
の埋め込みを行うと、対応する方式による復元処理で
は、第2の埋め込み符号化データも、その第2の埋め込
み符号化データに埋め込んだ被埋め込みデータも復元す
ることが困難となる。
Therefore, the image data as the second embedded coded data is operated not only by the line rotation method but also by other operation rules, for example, the above-mentioned pixel swap method or bit plane swap. If the embedded data is further embedded according to the method, it is difficult to restore the second embedded coded data and the embedded data embedded in the second embedded coded data by the restoration processing by the corresponding method. Becomes

【0330】即ち、第2の埋め込み符号化データとして
の画像データに対して、ラインローテーション方式によ
って、さらに別の被埋め込みデータ(以下、適宜、第3
の被埋め込みデータという)を埋め込んだ場合、その第
3の被埋め込みデータは、第2の埋め込み符号化データ
の水平ラインまたは垂直ラインを、第3の被埋め込みデ
ータに対応してローテーションすることにより埋め込ま
れる。
That is, for the image data as the second embedded coded data, another embedded data (hereinafter, referred to as the third
Embedded data), the third embedded data is embedded by rotating a horizontal line or a vertical line of the second embedded encoded data in correspondence with the third embedded data. Be done.

【0331】しかしながら、この第3の被埋め込みデー
タに対応する水平ラインまたは垂直ラインのローテーシ
ョンは、第1の被埋め込みデータの埋め込みを行うため
の水平ラインのローテーション、または第2の被埋め込
みデータの埋め込みを行うための垂直ラインのローテー
ションと重複する操作であるから、水平ラインのローテ
ーションが、第1または第3の被埋め込みデータのうち
のいずれの埋め込みによるものであるのかを区別するこ
とができず、あるいは、垂直ラインのローテーション
が、第2または第3の被埋め込みデータのうちのいずれ
の埋め込みによるものであるのかを区別することができ
ず、このため、第2の埋め込み符号化データも、第3の
被埋め込みデータも復元することはできない。
However, the rotation of the horizontal line or the vertical line corresponding to the third embedded data is the rotation of the horizontal line for embedding the first embedded data or the embedding of the second embedded data. It is not possible to distinguish whether the rotation of the horizontal line is due to the embedding of the first or third embedded data, because the operation overlaps the rotation of the vertical line for performing Alternatively, it is not possible to distinguish whether the rotation of the vertical line is due to the embedding of the second or third embedded data, and therefore, the second embedded coded data also has the third embedded data. The embedded data of cannot be restored.

【0332】また、画素スワップ方式や、ビットプレー
ンスワップ方式による復号処理では、上述したことか
ら、空間的に近接する画素との相関を利用して、元の画
像データとそこに埋め込まれていた被埋め込みデータの
復元が行われる。
Further, in the decoding processing by the pixel swap method or the bit plane swap method, as described above, the correlation between the spatially adjacent pixels is used, and the original image data and the object embedded in the original image data are used. The embedded data is restored.

【0333】しかしながら、画第2の埋め込み符号化デ
ータとしての画像データについては、その空間方向の相
関性が、すべての方向について破壊されているため、そ
のような第2の埋め込み符号化データに、画素スワップ
方式や、ビットプレーンスワップ方式によって、第3の
被埋め込みデータを埋め込むことは、エネルギの偏りの
ない、例えば、ノイズを埋め込み対象データとして、画
素スワップ方式や、ビットプレーンスワップ方式によっ
て、被埋め込みデータを埋め込むことと等価である。
However, with respect to the image data as the second embedded coded image data, since the correlation in the spatial direction is destroyed in all directions, such second embedded coded data is The embedding of the third embedded data by the pixel swap method or the bit plane swap method has no bias in energy, for example, noise is used as the data to be embedded by the pixel swap method or the bit plane swap method. It is equivalent to embedding data.

【0334】従って、そのような埋め込みにより得られ
た埋め込み符号化データについては、画像データ(情報
としての価値がある画像データ)が有する空間方向の相
関性を利用することができず、画素スワップ方式や、ビ
ットプレーンスワップ方式による復元処理によっては、
元の埋め込み対象データと被埋め込みデータを復元する
ことはできない。
Therefore, with respect to the embedded coded data obtained by such embedding, the spatial correlation of the image data (image data having value as information) cannot be used, and the pixel swap method is used. Or, depending on the restoration process by the bit plane swap method,
The original data to be embedded and the embedded data cannot be restored.

【0335】以上から、空間方向の相関性がすべての方
向について破壊されている第2の埋め込み符号化データ
に対して、画素スワップ方式や、ビットプレーンスワッ
プ方式によって、第3の被埋め込みデータを埋め込み、
埋め込み符号化データを生成した場合には、その埋め込
み符号化データ(以下、適宜、第3の埋め込み符号化デ
ータという)については、第2の埋め込み符号化データ
としての画像データの相関性を利用することによって
は、第2の埋め込み符号化データと第3の被埋め込みデ
ータを復元することはできない。
As described above, the third embedded data is embedded in the second embedded coded data in which the spatial correlation is destroyed in all directions by the pixel swap method or the bit plane swap method. ,
When the embedded coded data is generated, the correlation of the image data as the second embedded coded data is used for the embedded coded data (hereinafter, appropriately referred to as the third embedded coded data). In some cases, the second embedded coded data and the third embedded data cannot be restored.

【0336】ところで、ラインローテーション方式によ
る埋め込み処理によって生成された第2の埋め込み符号
化データに対して、さらに、同一のラインローテーショ
ン方式によって、第3の被埋め込みデータを埋め込んだ
場合には、上述したように、第2の埋め込み符号化デー
タを生成するときに行われる操作と、第3の埋め込み符
号化データを生成するときに行われる操作とが重複する
ことがあるので、仮に、第1の埋め込み符号化データ
(または、埋め込み対象データ)としての画像データを
復元することができても、第1乃至第3の被埋め込みデ
ータすべてを復元することは困難である。
By the way, in the case where the third embedded data is embedded by the same line rotation method to the second embedded coded data generated by the embedding processing by the line rotation method, it is described above. As described above, the operation performed when generating the second embedded coded data and the operation performed when generating the third embedded coded data may overlap with each other. Even if the image data as the encoded data (or the embedding target data) can be restored, it is difficult to restore all the first to third embedded data.

【0337】一方、ラインローテーション方式による埋
め込み処理によって生成された第2の埋め込み符号化デ
ータに対して、さらに、ラインローテーション方式とは
異なる、例えば、ビットプレーンスワップ方式等によっ
て、第3の被埋め込みデータを埋め込んだ場合には、第
2の埋め込み符号化データを生成するときに行われる操
作と、第3の埋め込み符号化データを生成するときに行
われる操作とが重複することはない。
On the other hand, with respect to the second embedded coded data generated by the embedding processing by the line rotation method, the third embedding data is further different from the line rotation method, for example, by the bit plane swap method. When embedded, the operation performed when generating the second embedded coded data does not overlap with the operation performed when generating the third embedded coded data.

【0338】従って、この場合は、仮に、第1の埋め込
み符号化データ(または、埋め込み対象データ)として
の画像データを復元することができれば、第1乃至第3
の被埋め込みデータも、すべて復元することができる。
Therefore, in this case, if the image data as the first embedded coded data (or the embedding target data) can be restored, the first to third
All embedded data of can also be restored.

【0339】即ち、仮に、第3の埋め込み符号化データ
から、第1の埋め込み符号化データを復元することがで
きれば、第1の埋め込み符号化データから第3の埋め込
み符号化データを生成する操作が特定される。そして、
第1の埋め込み符号化データから第3の埋め込み符号化
データを生成する操作は、第1の埋め込み符号化データ
に対して第2の被埋め込みデータを埋め込む操作と、そ
の操作によって得られる第2の埋め込み符号化データに
対して第3の被埋め込みデータを埋め込む操作とからな
り、さらに、いまの場合、第2の被埋め込みデータを埋
め込む操作と、第3の被埋め込みデータを埋め込む操作
とは、重複することがない。
That is, if the first embedded coded data can be restored from the third embedded coded data, the operation of generating the third embedded coded data from the first embedded coded data is performed. Specified. And
The operation of generating the third embedded coded data from the first embedded coded data includes the operation of embedding the second embedded data in the first embedded coded data and the second embedded data obtained by the operation. The operation includes embedding the third embedded data in the embedded coded data, and in this case, the operation of embedding the second embedded data and the operation of embedding the third embedded data overlap. There is nothing to do.

【0340】従って、第1の埋め込み符号化データから
第3の埋め込み符号化データを生成する操作が特定され
れば、その操作に基づき、第2の埋め込み符号化データ
に対して第3の被埋め込みデータを埋め込んだ操作を
(第1の埋め込み符号化データに対して第2の被埋め込
みデータを埋め込んだ操作も)特定することができる。
Therefore, if the operation for generating the third embedded coded data from the first embedded coded data is specified, the third embedded data is embedded in the second embedded coded data based on the operation. The operation of embedding the data (also the operation of embedding the second embedded data in the first embedded coded data) can be specified.

【0341】そこで、図32を参照して、第1の埋め込
み符号化データから第3の埋め込み符号化データを生成
する操作を特定し、さらに、第2の埋め込み符号化デー
タに対して第3の被埋め込みデータを埋め込んだ操作を
特定する方法について説明する。
Therefore, with reference to FIG. 32, the operation for generating the third embedded coded data from the first embedded coded data is specified, and further, the third embedded coded data is processed by the third embedded coded data. A method of identifying the operation in which the embedded data is embedded will be described.

【0342】なお、以下では、例えば、第1の埋め込み
符号化データは、埋め込み対象データとしての画像デー
タの水平ラインを、第1の被埋め込みデータに対応して
ローテーションして生成され、第2の埋め込み符号化デ
ータは、第1の埋め込み符号化データとしての画像デー
タの垂直ラインを、第2の被埋め込みデータに対応して
ローテーションして生成されたものとする。さらに、第
3の埋め込み符号化データは、第2の埋め込み符号化デ
ータとしての画像データを、第3の被埋め込みデータに
対応してビットプレーンスワップして生成されたものと
する。
In the following, for example, the first embedded coded data is generated by rotating the horizontal line of the image data as the embedding target data in correspondence with the first embedded data, and the second embedded coded data. The embedded coded data is generated by rotating the vertical line of the image data as the first embedded coded data in correspondence with the second embedded data. Furthermore, it is assumed that the third embedded coded data is generated by bit plane swapping the image data as the second embedded coded data in correspondence with the third embedded data.

【0343】また、図21乃至図25の実施の形態にお
いては、ビットプレーンとして、4×4画素の画像ブロ
ックを構成する画素群のビットプレーンを採用したが、
以下では、例えば、1つの垂直ラインを構成する画素群
のビットプレーンを採用するものとする。
Further, in the embodiments shown in FIGS. 21 to 25, the bit planes of the pixel groups forming the image block of 4 × 4 pixels are adopted as the bit planes.
In the following, for example, a bit plane of a pixel group that constitutes one vertical line is adopted.

【0344】即ち、以下においては、ビットプレーンス
ワップ方式による埋め込み処理および復元処理では、1
つの垂直ラインを、1つの画像ブロックとして、垂直ラ
インを構成する各画素の画素値を表すビット列の各ビッ
トごとのビットプレーンがビットプレーンスワップされ
るものとする。但し、ビットプレーンスワップの対象と
なる画像ブロックは、垂直ラインに限定されるものでは
ない。
That is, in the following, in the embedding processing and the restoration processing by the bit plane swap method, 1
It is assumed that one vertical line is regarded as one image block, and bit planes for each bit of the bit string representing the pixel value of each pixel forming the vertical line are bit plane swapped. However, the image block that is the target of the bit plane swap is not limited to the vertical line.

【0345】この場合、埋め込み対象データとしての画
像データに対して、第1乃至第3の被埋め込みデータを
埋め込む埋め込み処理は、図32Aに示すように行われ
る。
In this case, the embedding process for embedding the first to third embedded data in the image data as the embedding target data is performed as shown in FIG. 32A.

【0346】即ち、まず、図31Aで説明したように、
埋め込み対象データとしての画像データの水平ライン
が、第1の被埋め込みデータに対応してローテーション
されることにより、埋め込み対象データに対して第1の
被埋め込みデータを埋め込んだ第1の埋め込み符号化デ
ータが生成され、さらに、その第1の埋め込み符号化デ
ータとしての画像データの垂直ラインが、第2の被埋め
込みデータに対応してローテーションされることによ
り、第1の埋め込み符号化データに対して第2の被埋め
込みデータを埋め込んだ第2の埋め込み符号化データが
生成される。
That is, first, as explained in FIG. 31A,
The horizontal line of the image data as the embedding target data is rotated corresponding to the first embedding data, so that the first embedding coded data in which the first embedding data is embedded in the embedding target data. Is generated, and the vertical line of the image data as the first embedded coded data is rotated corresponding to the second embedded data, so that the first embedded coded data is rotated with respect to the first embedded coded data. Second embedded coded data in which the two embedded data are embedded is generated.

【0347】そして、図32Aに示すように、第2の埋
め込み符号化データとしての画像データの各垂直ライン
を画像ブロックとして、各画像ブロックのビットプレー
ンを、第3の被埋め込みデータに対応してビットプレー
ンスワップすることにより、第2の埋め込み符号化デー
タに対して第3の被埋め込みデータを埋め込んだ第3の
埋め込み符号化データが生成される。
Then, as shown in FIG. 32A, each vertical line of the image data as the second embedded coded data is used as an image block, and the bit plane of each image block is associated with the third embedded data. By performing the bit plane swap, the third embedded coded data in which the third embedded data is embedded in the second embedded coded data is generated.

【0348】ここで、第2の埋め込み符号化データとし
ての画像データにおいて、ある垂直ラインが、元の位置
(第1の埋め込み符号化データとしての画像データにお
ける元の位置)にあるとして、その元の位置にある垂直
ラインを基準ラインとするとともに、その基準ラインの
右隣の垂直ラインを注目ラインとして、注目ラインを元
の位置に戻すことを考えると、注目ラインは、図29お
よび図30で説明した場合と同様に、ラインローテーシ
ョン方式による復元処理を行うことによって、元の位置
に戻すことができる。
In the image data as the second embedded coded data, it is assumed that a certain vertical line is at the original position (the original position in the image data as the first embedded coded data). Considering that the vertical line at the position of is the reference line, and the vertical line to the right of the reference line is the attention line, and the attention line is returned to the original position, the attention line is Similar to the case described above, the original position can be restored by performing the restoration process by the line rotation method.

【0349】即ち、注目ラインを、ローテーション量を
変えながら、垂直方向にローテーションし、各ローテー
ション量に対して、基準ラインとの間の相関値を計算す
る。そして、その相関値を最大にするローテーション量
だけローテーションした位置が、注目ラインの元の位置
ということになる。
That is, the line of interest is rotated in the vertical direction while changing the rotation amount, and the correlation value with the reference line is calculated for each rotation amount. The position rotated by the rotation amount that maximizes the correlation value is the original position of the line of interest.

【0350】ところで、上述のようにして、注目ライン
について求められる相関値は、その注目ラインのローテ
ーション量に対して計算されるものであるから、ローテ
ーション量を引数とする関数になっている。
By the way, as described above, the correlation value obtained for the line of interest is calculated with respect to the rotation amount of the line of interest, and is therefore a function with the rotation amount as an argument.

【0351】いま、この相関値を表す関数を、相関値関
数というものとし、第2の埋め込み符号化データの、左
からN番目の垂直ライン(第N垂直ライン)を注目ライ
ンとして、その注目ラインについて、相関値関数を描く
と、その相関値関数は、例えば、図32Bに示すように
なる。なお、図32においては(後述する図33および
図41においても同様)、相関値関数として、各ローテ
ーション量に対する相関値そのものを表す関数ではな
く、相関値の逆数を表す関数を示してある。
Now, the function representing this correlation value is referred to as a correlation value function, and the Nth vertical line from the left (Nth vertical line) of the second embedded coded data is taken as the attention line, and the attention line is As for the correlation value function, the correlation value function is as shown in FIG. 32B, for example. Note that in FIG. 32 (similarly in FIGS. 33 and 41 described later), the correlation value function is not a function representing the correlation value itself for each rotation amount but a function representing the reciprocal of the correlation value.

【0352】図32Bでは、相関値関数は、その関数値
が最小になるローテーション量の付近で、急峻な凹部が
現れるものとなっている。なお、図32Bの相関値関数
は、上述したように、相関値の逆数を表す関数であり、
その関数値を最小にするローテーション量は、相関値を
最大にするローテーション量であるから、注目ラインを
元の位置に戻すローテーション量(決定ローテーション
量)である。従って、相関値関数を、相関値そのものを
表す関数とすれば、相関値関数は、急峻な凸部が現れる
ものとなり、その関数値を最大にするローテーション量
が、決定ローテーション量となる。
In FIG. 32B, the correlation value function has a steep concave portion in the vicinity of the rotation amount where the function value becomes the minimum. The correlation value function of FIG. 32B is a function that represents the reciprocal of the correlation value, as described above,
Since the rotation amount that minimizes the function value is the rotation amount that maximizes the correlation value, it is the rotation amount (determined rotation amount) that returns the target line to the original position. Therefore, if the correlation value function is a function that represents the correlation value itself, the correlation value function has a sharp convex portion, and the rotation amount that maximizes the function value is the determined rotation amount.

【0353】第2の埋め込み符号化データとしての画像
データにおいて、注目ラインの相関値関数は、図32B
に示したように、急峻な凹部を有するという特徴を有す
るものとなるが、このような特徴は、第2の埋め込み符
号化データに第2の被埋め込みデータが埋め込まれる前
の画像データ、つまり、第1の埋め込み符号化データと
しての画像データが有する水平方向の相関性(ここで
は、注目ラインと基準ラインとの間の相関性)によるも
のである。
In the image data as the second embedded coded data, the correlation value function of the line of interest is shown in FIG.
As described above, the image data has a feature of having a steep concave portion. Such a feature is that the image data before the second embedded data is embedded in the second embedded coded data, that is, This is due to the horizontal correlation (here, the correlation between the line of interest and the reference line) possessed by the image data as the first embedded coded data.

【0354】即ち、第1の埋め込み符号化データは、元
の画像データ(埋め込み対象データ)の水平ラインをロ
ーテーションしたものであり、上述したように、その垂
直方向の相関性は破壊されているが、水平方向の相関性
は破壊されておらず、元の画像データの水平方向の相関
性を、そのまま有している。このため、第2の埋め込み
符号化データの垂直ラインをローテーションした場合に
は、その垂直ラインが、第1の埋め込み符号化データに
おける位置(元の位置)付近にローテーションされたと
きに、相関値が急激に増加する。このため、相関値関数
は、図32Bに示したように、急峻な凹部を有するもの
となる。
That is, the first embedded coded data is obtained by rotating the horizontal line of the original image data (embedding target data), and as described above, its vertical correlation is destroyed. The horizontal correlation is not destroyed, and the original horizontal correlation of the image data is maintained. Therefore, when the vertical line of the second embedded coded data is rotated, when the vertical line is rotated near the position (original position) in the first embedded coded data, the correlation value becomes Increase sharply. Therefore, the correlation value function has a steep concave portion as shown in FIG. 32B.

【0355】ここで、上述したように、相関値関数の関
数値は、相関値の逆数なので、相関値で考えれば、相関
値は、その値が最大になるローテーション量の付近で、
急峻な凸部が現れるものとなる。
Here, as described above, the function value of the correlation value function is the reciprocal of the correlation value. Therefore, considering the correlation value, the correlation value is in the vicinity of the rotation amount where the value becomes maximum,
A steep convex portion appears.

【0356】一方、図32Aに示したように、第2の埋
め込み符号化データとしての画像データの各垂直ライン
を画像ブロックとして、各画像ブロックのビットプレー
ンが、第3の被埋め込みデータに対応してビットプレー
ンスワップされることにより、第2の埋め込み符号化デ
ータに対して第3の被埋め込みデータが埋め込まれた第
3の埋め込み符号化データについて、上述の第2の埋め
込み符号化データにおける場合と同様に、第N垂直ライ
ンを注目ラインとして、その注目ラインについて、その
左隣の垂直ラインである基準ラインとの間の相関を表す
相関値関数を描くと、その相関値関数は、例えば、図3
2Cに示すようになる。
On the other hand, as shown in FIG. 32A, each vertical line of the image data as the second embedded coded data is used as an image block, and the bit plane of each image block corresponds to the third embedded data. The third embedded coded data in which the third embedded data is embedded in the second embedded coded data by the bit plane swapping is performed as compared with the case of the above-mentioned second embedded coded data. Similarly, when the N-th vertical line is set as a line of interest and a correlation value function representing the correlation between the line of interest and a reference line that is the vertical line adjacent to the left is drawn, the correlation value function is, for example, Three
2C as shown in FIG.

【0357】図32Cでは、相関値関数は、図32Bの
相関値関数のような、急峻な凹部が現れるという特徴を
有しないものとなっている。
In FIG. 32C, the correlation value function does not have the feature that a sharp concave portion appears unlike the correlation value function of FIG. 32B.

【0358】このように、第3の埋め込み符号化データ
の垂直ラインについての相関値関数が、第2の埋め込み
符号化データの垂直ラインについての相関値関数のよう
に、急峻な凹部を有しないのは、次のような理由によ
る。
As described above, the correlation value function for the vertical line of the third embedded coded data does not have a sharp recess unlike the correlation value function for the vertical line of the second embedded coded data. For the following reasons.

【0359】即ち、第3の埋め込み符号化データは、第
2の埋め込み符号化データの垂直ラインを画像ブロック
として、その画像ブロックのビットプレーンをビットプ
レーンスワップしたものであり、このビットプレーンス
ワップによれば、画像データが有する空間方向の相関性
は破壊される。そして、ビットプレーンスワップにより
相関性が破壊されている画像データの相関性を元に戻す
には、ビットプレーンを元の並びに戻すビットプレーン
スワップを行う必要があり、垂直ラインを、どの位置に
ローテーションしたとしても、ビットプレーンスワップ
により破壊されている相関性を元に戻すことはできな
い。
That is, the third embedded coded data is obtained by bit-plane swapping the bit planes of the image block with the vertical line of the second embedded coded data as an image block. For example, the spatial correlation of the image data is destroyed. Then, in order to restore the correlation of the image data in which the correlation is destroyed by the bit plane swap, it is necessary to perform the bit plane swap in which the bit planes are returned to the original alignment, and the vertical line is rotated to which position. Even then, the correlation that has been destroyed by the bitplane swap cannot be restored.

【0360】このため、第3の埋め込み符号化データと
しての画像データの垂直ラインについての基準ラインと
の間の相関値は、その垂直ラインのローテーション量に
よっては、それほど大きく変化しないものとなる。従っ
て、その相関値の逆数を表す関数である相関値関数は、
図32Cに示したように、急峻な凹部のない、図32B
の場合に比較して平坦なものとなる。
Therefore, the correlation value between the vertical line of the image data as the third embedded coded data and the reference line does not change so much depending on the rotation amount of the vertical line. Therefore, the correlation value function, which is the function that represents the reciprocal of the correlation value,
As shown in FIG. 32C, there is no abrupt recess, FIG.
It becomes flat compared to the case of.

【0361】ところで、第3の埋め込み符号化データ
の、ある垂直ラインを注目ラインとし、さらに、その注
目ラインを画像ブロックとして、そのビットプレーンス
ワップを行い、そのビットプレーンスワップ後の注目ラ
インについて相関値関数を求めた場合、仮に、ビットプ
レーンスワップにより、注目ラインのビットプレーン
が、元の並び(第2の埋め込み符号化データにおける並
び)に戻っていれば、その相関値関数は、図32Bに示
したように、急峻な凹部を有するものとなる。
By the way, a certain vertical line of the third embedded coded data is set as a target line, the target line is set as an image block, the bit plane swap is performed, and the correlation value is calculated for the target line after the bit plane swap. When the function is obtained, if the bit plane of the line of interest returns to the original arrangement (arrangement in the second embedded coded data) due to the bit plane swap, the correlation value function is shown in FIG. 32B. As described above, it has a sharp recess.

【0362】一方、注目ラインのビットプレーンが、元
の並びに一致していなければ、その相関値関数は、ビッ
トプレーンスワップを行わない場合と同様なもの、即
ち、図32Cに示したように、急峻な凹部のないものと
なる。
On the other hand, if the bit planes of the line of interest do not match the original alignment, the correlation value function is the same as that when bit plane swap is not performed, that is, as shown in FIG. 32C, it is steep. There will be no concave portion.

【0363】従って、第3の埋め込み符号化データの、
ある垂直ラインを注目ラインとして、その注目ラインの
ビットプレーンを、所定のパターンでビットプレーンス
ワップし、その結果得られる垂直ライン(以下、適宜、
仮復元垂直ラインという)の相関値関数を求めた場合
に、その相関値関数が、急峻な凹部を有するものである
ときには、その関数値を最小にするローテーション量だ
け、仮復元垂直ラインをローテーションした位置が、そ
の仮復元垂直ラインの元の位置であり、さらに、仮復元
垂直ラインを構成するビットプレーンの並びが、元の並
びであることになる。
Therefore, in the third embedded coded data,
With a certain vertical line as the attention line, the bit planes of the attention line are bit plane swapped in a predetermined pattern, and the resulting vertical line (hereinafter, appropriately,
When a correlation value function of a temporary restoration vertical line) is obtained and the correlation value function has a steep concave portion, the temporary restoration vertical line is rotated by the rotation amount that minimizes the function value. The position is the original position of the temporary restored vertical line, and the arrangement of the bit planes forming the temporary restored vertical line is the original arrangement.

【0364】以上から、仮復元垂直ラインについて、急
峻な凹部を有する相関値関数が得られれば、その仮復元
垂直ラインが、注目ラインの復元結果となり、さらに、
注目ラインから仮復元垂直ラインを得るときの、注目ラ
インのビットプレーンのビットプレーンスワップのパタ
ーン(以下、適宜、スワップパターンという)に基づい
て、注目ラインに埋め込まれた第3の被埋め込みデータ
を復元することができる。即ち、図32Dに示すよう
に、第3の埋め込み符号化データを、第2の埋め込み符
号化データと第3の被埋め込みデータに復元することが
できる。
From the above, if the correlation value function having the steep concave portion is obtained for the temporary restored vertical line, the temporary restored vertical line becomes the restored result of the target line, and further,
The third embedded data embedded in the target line is restored based on the bit plane swap pattern of the bit plane of the target line (hereinafter, appropriately referred to as a swap pattern) when the provisional restoration vertical line is obtained from the target line. can do. That is, as shown in FIG. 32D, the third embedded coded data can be restored to the second embedded coded data and the third embedded data.

【0365】ここで、図32Bおよび図32Cに示した
相関値関数は、模式的なものであるが、自然画が表示さ
れた実際の画像データについて相関値関数を求めると、
その相関値関数は、例えば、図33に示すようになる。
Here, although the correlation value function shown in FIGS. 32B and 32C is a schematic one, when the correlation value function is obtained for actual image data on which a natural image is displayed,
The correlation value function is as shown in FIG. 33, for example.

【0366】即ち、図33は、1920×1035画素
で構成される画像データのY成分のみを対象に、水平ラ
インのローテーションと垂直ラインのローテーションを
行い、さらに、垂直ラインのビットプレーンスワップを
行って得られた第3の埋め込み符号化データの、ある垂
直ラインを注目ラインとして、その注目ラインについて
求めた相関値関数を示している。
That is, in FIG. 33, horizontal line rotation and vertical line rotation are performed only for the Y component of image data composed of 1920 × 1035 pixels, and further vertical line bit plane swap is performed. A vertical line of the obtained third embedded coded data is set as a target line, and a correlation value function obtained for the target line is shown.

【0367】図33においてF1で示す相関値関数は、
注目ラインのビットプレーンが元の並びとは異なる場合
のものであり、急峻な凹部のない、比較的平坦なものと
なっている。
In FIG. 33, the correlation value function indicated by F 1 is
This is a case where the bit plane of the line of interest is different from the original arrangement, and is relatively flat without any sharp recess.

【0368】また、図33においてF2で示す相関値関
数は、注目ラインのビットプレーンが元の並びと一致し
ている場合のものであり、非常に急峻な凹部を有するも
のとなっている。
The correlation value function indicated by F 2 in FIG. 33 is used when the bit plane of the line of interest matches the original arrangement, and has a very steep concave portion.

【0369】次に、図34は、上述のように、ラインロ
ーテーション方式による埋め込みを行い、さらに、ビッ
トプレーンスワップ方式による埋め込みを行うことによ
り、第3の埋め込み符号化データを生成する場合の、図
3の埋め込み部22の構成例を示している。
Next, FIG. 34 is a diagram showing a case where third embedded coded data is generated by performing embedding by the line rotation method and further by embedding by the bit plane swap method as described above. 3 shows a configuration example of the embedded unit 22 of No. 3.

【0370】図34の実施の形態では、埋め込み部22
は、水平ラインローテーション埋め込み部41、垂直ラ
インローテーション埋め込み部42、およびビットプレ
ーンスワップ埋め込み部43で構成されている。
In the embodiment shown in FIG. 34, the embedding section 22 is used.
Is composed of a horizontal line rotation embedding unit 41, a vertical line rotation embedding unit 42, and a bit plane swap embedding unit 43.

【0371】水平ラインローテーション埋め込み部41
は、被埋め込みデータベース2から、1フレームの水平
ラインをローテーションすることにより埋め込むことの
できる分を被埋め込みデータを、第1の被埋め込みデー
タとして読み出す。さらに、水平ラインローテーション
埋め込み部41は、フレームメモリ21に記憶された埋
め込み対象データとしての1フレームの画像データ(原
画像データ)の水平ラインを、順次、注目ラインとし
て、その注目ラインを、第1の被埋め込みデータに対応
して(水平方向に)ローテーションすることにより、そ
の注目ラインに対して第1の被埋め込みデータを埋め込
む。そして、水平ラインローテーション埋め込み部41
は、埋め込み対象データとしての画像データのうちの、
例えば、第1水平ラインを除くすべての水平ラインを注
目ラインとして、第1の被埋め込みデータを埋め込み、
これにより、第1の埋め込み符号化データを得ると、そ
の第1の埋め込み符号化データを、垂直ラインローテー
ション埋め込み部42に出力する。
Horizontal line rotation embedding section 41
Reads the embedded data, which can be embedded by rotating a horizontal line of one frame, as the first embedded data from the embedded database 2. Further, the horizontal line rotation embedding unit 41 sequentially sets the horizontal line of the image data (original image data) of one frame as the embedding target data stored in the frame memory 21 as the attention line, and sets the attention line as the first line. The first embedded data is embedded in the line of interest by rotating (horizontally) corresponding to the embedded data. Then, the horizontal line rotation embedding unit 41
Of the image data as the embedding target data,
For example, using all the horizontal lines except the first horizontal line as the line of interest, embedding the first embedded data,
As a result, when the first embedded coded data is obtained, the first embedded coded data is output to the vertical line rotation embedding unit 42.

【0372】垂直ラインローテーション埋め込み部42
は、被埋め込みデータベース2から、1フレームの垂直
ラインをローテーションすることにより埋め込むことの
できる分の被埋め込みデータ(但し、第1の被埋め込み
データとしたものを除く)を、第2の被埋め込みデータ
として読み出す。さらに、垂直ラインローテーション埋
め込み部42は、水平ラインローテーション埋め込み部
41から供給される第1の埋め込み符号化データとして
の1フレームの画像データの垂直ラインを、順次、注目
ラインとして、その注目ラインを、第2の被埋め込みデ
ータに対応して(垂直方向に)ローテーションすること
により、その注目ラインに対して第2の被埋め込みデー
タを埋め込む。そして、垂直ラインローテーション埋め
込み部42は、第1の埋め込み符号化データとしての画
像データのうちの、例えば、第1垂直ラインを除くすべ
ての垂直ラインを注目ラインとして、第2の被埋め込み
データを埋め込み、これにより、第2の埋め込み符号化
データを得ると、その第2の埋め込み符号化データを、
ビットプレーンスワップ埋め込み部43に出力する。
Vertical line rotation embedding section 42
Is the second embedded data, which is the embedded data that can be embedded by rotating a vertical line of one frame from the embedded database 2 (excluding the first embedded data). Read as. Further, the vertical line rotation embedding unit 42 sequentially sets the vertical line of the image data of one frame as the first embedded coded data supplied from the horizontal line rotation embedding unit 41 as the attention line, and the attention line, By rotating (in the vertical direction) corresponding to the second embedded data, the second embedded data is embedded in the line of interest. Then, the vertical line rotation embedding unit 42 embeds the second embedded data by using, for example, all vertical lines other than the first vertical line in the image data as the first embedded coded data as the target line. Thus, when the second embedded coded data is obtained, the second embedded coded data is
The data is output to the bit plane swap embedding unit 43.

【0373】ビットプレーンスワップ埋め込み部43
は、被埋め込みデータベース2から、1フレームの垂直
ラインをビットプレーンスワップすることにより埋め込
むことのできる分の被埋め込みデータ(但し、第1およ
び第2の被埋め込みデータとしたものを除く)を、第3
の被埋め込みデータとして読み出す。さらに、ビットプ
レーンスワップ埋め込み部43は、垂直ラインローテー
ション埋め込み部42から供給される第2の埋め込み符
号化データとしての1フレームの画像データの垂直ライ
ンを、順次、注目ラインとして、その注目ラインを、第
2の被埋め込みデータに対応して(レベル方向に)ビッ
トプレーンスワップすることにより、その注目ラインに
対して第3の被埋め込みデータを埋め込む。そして、ビ
ットプレーンスワップ埋め込み部43は、第2の埋め込
み符号化データとしての画像データのうちの、例えば、
第1垂直ラインを除くすべての垂直ラインを注目ライン
として、第3の被埋め込みデータを埋め込み、これによ
り、第3の埋め込み符号化データを得ると、その第3の
埋め込み符号化データを、フレームメモリ21に上書き
する形で書き込む。
Bit plane swap embedding unit 43
Is the embedded data from the embedded database 2 that can be embedded by bit-plane swapping a vertical line of one frame (excluding the first and second embedded data). Three
Is read as embedded data. Further, the bit plane swap embedding unit 43 sequentially sets the vertical line of the image data of one frame, which is the second embedded coded data supplied from the vertical line rotation embedding unit 42, as the attention line, Bit plane swapping (in the level direction) corresponding to the second embedded data embeds the third embedded data in the line of interest. Then, the bit plane swap embedding unit 43, for example, among the image data as the second embedded coded data,
When all the vertical lines except the first vertical line are the target lines, the third embedded data is embedded, and when the third embedded coded data is obtained, the third embedded coded data is stored in the frame memory. Write over 21.

【0374】次に、図35のフローチャートを参照し
て、図34の埋め込み部22による埋め込み処理につい
て説明する。
Next, the embedding processing by the embedding section 22 in FIG. 34 will be described with reference to the flowchart in FIG.

【0375】まず最初に、ステップS161において、
水平ラインローテーション埋め込み部41は、フレーム
メモリ21から埋め込み対象データとしての1フレーム
の画像データを読み出す。さらに、ステップS161で
は、水平ラインローテーション埋め込み部41、垂直ラ
インローテーション部42、ビットプレーンスワップ埋
め込み部43は、被埋め込みデータベース2から、第1
乃至第3の被埋め込みデータそれぞれを読み出す。
First, in step S161,
The horizontal line rotation embedding unit 41 reads out one frame of image data as embedding target data from the frame memory 21. Further, in step S161, the horizontal line rotation embedding unit 41, the vertical line rotation embedding unit 42, and the bit plane swap embedding unit 43 are processed by
Through to the third embedded data, respectively.

【0376】そして、ステップS162に進み、水平ラ
インローテーション埋め込み部41は、フレームメモリ
21から読み出した埋め込み対象データとしての1フレ
ームの画像データの水平ラインを、順次、注目ラインと
して、その注目ラインを、第1の被埋め込みデータに対
応してローテーションすることにより、その注目ライン
に対して第1の被埋め込みデータを埋め込む。そして、
水平ラインローテーション埋め込み部41は、埋め込み
対象データとしての画像データのうちの、第1水平ライ
ンを除くすべての水平ラインを注目ラインとして、第1
の被埋め込みデータを埋め込むことにより、第1の埋め
込み符号化データを生成すると、その第1の埋め込み符
号化データを、垂直ラインローテーション埋め込み部4
2に出力して、ステップS163に進む。
Then, proceeding to step S162, the horizontal line rotation embedding unit 41 sequentially sets the horizontal line of the image data of one frame as the embedding target data read from the frame memory 21 as the attention line, and the attention line thereof. By rotating corresponding to the first embedded data, the first embedded data is embedded in the line of interest. And
The horizontal line rotation embedding unit 41 sets all the horizontal lines other than the first horizontal line in the image data as the embedding target data as the first line of interest.
When the first embedded coded data is generated by embedding the data to be embedded, the first embedded coded data is transferred to the vertical line rotation embedding unit 4.
2, and the process proceeds to step S163.

【0377】ステップS163では、垂直ラインローテ
ーション埋め込み部42が、水平ラインローテーション
埋め込み部41から供給される第1の埋め込み符号化デ
ータとしての1フレームの画像データの垂直ラインを、
順次、注目ラインとして、その注目ラインを、第2の被
埋め込みデータに対応してローテーションすることによ
り、その注目ラインに対して第2の被埋め込みデータを
埋め込む。そして、垂直ラインローテーション埋め込み
部42は、第1の埋め込み符号化データとしての画像デ
ータのうちの、第1垂直ラインを除くすべての垂直ライ
ンを注目ラインとして、第2の被埋め込みデータを埋め
込むことにより、第2の埋め込み符号化データを生成す
ると、その第2の埋め込み符号化データを、ビットプレ
ーンスワップ埋め込み部43に出力して、ステップS1
64に進む。
In step S163, the vertical line rotation embedding unit 42 sets the vertical line of the image data of one frame as the first embedded coded data supplied from the horizontal line rotation embedding unit 41,
The second embedding data is embedded in the target line by sequentially rotating the target line as the target line corresponding to the second embedding data. Then, the vertical line rotation embedding unit 42 embeds the second embedded data by using all the vertical lines other than the first vertical line in the image data as the first embedded coded data as the target line. , The second embedded coded data is generated, the second embedded coded data is output to the bit plane swap embedding unit 43, and step S1 is performed.
Proceed to 64.

【0378】ステップS164では、ビットプレーンス
ワップ埋め込み部43が、垂直ラインローテーション埋
め込み部42から供給される第2の埋め込み符号化デー
タとしての1フレームの画像データの垂直ラインを、順
次、注目ラインとして、その注目ラインを、第2の被埋
め込みデータに対応してビットプレーンスワップするこ
とにより、その注目ラインに対して第3の被埋め込みデ
ータを埋め込む。
In step S164, the bit plane swap embedding unit 43 sequentially sets the vertical lines of the one frame of image data as the second embedded coded data supplied from the vertical line rotation embedding unit 42 as the attention lines. The line of interest is bit-plane swapped in correspondence with the second embedded data to embed the third embedded data in the line of interest.

【0379】即ち、これにより、注目ラインを構成する
各画素の画素値が、例えば、図36Aに示すようなもの
である場合には、その注目ラインの各画素の画素値は、
第3の被埋め込みデータに対応するビットプレーンスワ
ップにより、図36Bに示すようなものに変更される。
That is, when the pixel value of each pixel forming the line of interest is, for example, as shown in FIG. 36A, the pixel value of each pixel of the line of interest becomes
By the bit plane swap corresponding to the third embedded data, the data is changed to that shown in FIG. 36B.

【0380】ここで、図36においては(後述する図4
1においても同様)、画素値が8ビットであるとして、
注目ラインを構成する各画素の画素値の各ビットを、左
側を上位ビットとするとともに、右側を下位ビットとし
て、正方形で表してある。また、図36において画素値
の各ビットを表す正方形のうち、影を付してあるもの
は、値が0であることを、影を付していないものは、値
が1であることを、それぞれ表す。
Here, in FIG. 36 (see FIG.
The same applies to 1), assuming that the pixel value is 8 bits,
Each bit of the pixel value of each pixel forming the line of interest is represented by a square with the left side as the upper bit and the right side as the lower bit. Also, in FIG. 36, among the squares representing each bit of the pixel value, those with a shadow have a value of 0, and those without a shadow have a value of 1, Represent each.

【0381】図35に戻り、ステップS164におい
て、ビットプレーンスワップ埋め込み部43は、第2の
埋め込み符号化データとしての画像データのすべての垂
直ラインを注目ラインとして、第3の被埋め込みデータ
を埋め込むことにより、第3の埋め込み符号化データを
生成すると、その第3の埋め込み符号化データを、フレ
ームメモリ21に上書きする形で書き込む。
Returning to FIG. 35, in step S164, the bit plane swap embedding unit 43 embeds the third embedded data with all the vertical lines of the image data as the second embedded coded data as the target lines. Thus, when the third embedded coded data is generated, the third embedded coded data is written in the frame memory 21 in a form of overwriting.

【0382】以上のようにして、フレームメモリ21に
記憶された第3の埋め込み符号化データは、フレームメ
モリ21から読み出され、以下、フレームメモリ21に
記憶された次のフレームの画像データを、埋め込み対象
データとして、図35の処理が繰り返される。
As described above, the third embedded coded data stored in the frame memory 21 is read from the frame memory 21, and the image data of the next frame stored in the frame memory 21 will be described below. The process of FIG. 35 is repeated as the data to be embedded.

【0383】以上のように、ラインローテーション方式
により第1および第2の被埋め込みデータを埋め込み、
さらに、ビットプレーンスワップ方式により第3の被埋
め込みデータを埋め込む場合には、ラインローテーショ
ン方式だけ、またはビットプレーンスワップ方式だけを
採用する場合に比較して、より多くの被埋め込みデータ
を埋め込むことができる。
As described above, the first and second embedded data are embedded by the line rotation method,
Furthermore, when embedding the third embedded data by the bit plane swap method, it is possible to embed more embedded data as compared with the case where only the line rotation method or only the bit plane swap method is adopted. .

【0384】次に、図37は、図34のビットプレーン
スワップ埋め込み部43の構成例を示している。
Next, FIG. 37 shows a configuration example of the bit plane swap embedding unit 43 of FIG.

【0385】入力データ保持部51は、垂直ラインロー
テーション埋め込み部42(図349から供給される第
2の埋め込み符号化データを一時記憶する。
The input data holding unit 51 temporarily stores the vertical line rotation embedding unit 42 (the second embedded coded data supplied from FIG. 349).

【0386】注目ライン選択部52は、入力データ保持
部51に記憶された第2の埋め込み符号化データとして
の1フレームの画像データを構成する垂直ラインから、
注目ラインとするものを選択し、スワップ情報取得部5
4と、ビットプレーンスワップ部55に供給する。
The line-of-interest selection unit 52 selects from the vertical lines which form one frame of image data as the second embedded coded data stored in the input data holding unit 51,
Select the line of interest and swap information acquisition unit 5
4 and the bit plane swap unit 55.

【0387】被埋め込みデータ保持部53は、被埋め込
みデータベース2(図34)から読み出された第3の被
埋め込みデータを一時記憶する。
The embedded data holding section 53 temporarily stores the third embedded data read from the embedded database 2 (FIG. 34).

【0388】スワップ情報取得部54は、被埋め込みデ
ータ保持部53から、注目ラインをビットプレーンスワ
ップすることにより埋め込むことのできるデータ量だけ
の第3の被埋め込みデータを読み出し、その第3の被埋
め込みデータに対応して、注目ラインのビットスワップ
の仕方(スワップパターン)を表すスワップ情報を生成
する。即ち、例えば、画素値が8ビットである場合に
は、上述したように、40320通りのスワップパター
ンが存在するが、注目ラインをビットプレーンスワップ
するのに、どのスワップパターンを採用するかは、埋め
込む第3の被埋め込みデータの値に対応して、一意に、
あらかじめ決定されている。そして、スワップ情報取得
部54は、被埋め込みデータ保持部53から読み出した
第3の被埋め込みデータに一意に対応付けられているス
ワップパターンを表すスワップ情報を生成し、ビットプ
レーンスワップ部55に供給する。
The swap information acquisition section 54 reads from the embedded data holding section 53 the third embedded data by the data amount which can be embedded by performing the bit plane swap of the target line, and the third embedded data is read. Swap information representing the bit swapping method (swap pattern) of the line of interest is generated corresponding to the data. That is, for example, when the pixel value is 8 bits, there are 40320 swap patterns as described above, but which swap pattern is to be adopted for bit plane swapping the target line is embedded. Uniquely corresponding to the value of the third embedded data,
It is predetermined. Then, the swap information acquisition unit 54 generates swap information representing a swap pattern uniquely associated with the third embedded data read from the embedded data holding unit 53, and supplies it to the bit plane swap unit 55. .

【0389】ここで、本実施の形態では、注目ライン
は、1フレームの垂直ラインであるから、比較的多数の
画素で構成される。従って、そのような多数の画素の画
素値のあるビットで構成されるビットプレーンが、他の
ビットで構成されるビットプレーンと同一であること
は、確率的に、極めて稀である。
Here, in the present embodiment, the line of interest is a vertical line of one frame, and therefore is composed of a relatively large number of pixels. Therefore, it is extremely rare in probability that a bit plane composed of a certain bit of pixel values of such a large number of pixels is the same as a bit plane composed of other bits.

【0390】しかしながら、極めて稀であっても、注目
ラインのあるビットのビットプレーンが、他のビットの
ビットプレーンと一致する場合があり得る。
However, even if it is extremely rare, there is a possibility that the bit plane of one bit of the line of interest coincides with the bit plane of another bit.

【0391】いま、注目ラインの第iビット(最下位ビ
ットからiビット目)のビットプレーンと、第j(≠
i)ビットのビットプレーンとが同一構成のビットプレ
ーンとなっているとすると、第iビットのビットプレー
ンと第jビットのビットプレーンとを入れ替えるビット
プレーンスワップを行っても、注目ラインのビットプレ
ーンの並びは、ビットプレーンスワップの前と後とで変
化しない(実質的に変化しない)。
Now, the bit plane of the i-th bit (the i-th bit from the least significant bit) of the line of interest and the j-th (≠
i) If the bit plane of the bit has the same configuration as the bit plane, the bit plane of the line of interest is not changed even if the bit plane swap is performed to replace the bit plane of the i th bit and the bit plane of the j th bit. The arrangement does not change (substantially does not change) before and after the bit plane swap.

【0392】従って、この場合、第iビットのビットプ
レーンと第jビットのビットプレーンとを入れ替えるス
ワップパターンによるビットプレーンスワップと、入れ
替えないスワップパターンによるビットプレーンスワッ
プとは、そのビットプレーンスワップ結果からは区別す
ることができない。
Therefore, in this case, the bit plane swap according to the swap pattern for exchanging the bit plane of the i-th bit and the bit plane for the j-th bit and the bit plane swap with the swap pattern without exchanging are determined from the bit plane swap result. Indistinguishable.

【0393】そこで、スワップ情報取得部54は、その
ような区別することのできない2以上のビットプレーン
スワップのスワップパターンについては、そのうちの1
つ、即ち、例えば、同一のビットプレーンどうしの入れ
替えを行わないスワップパターンのみを有効にし、他の
スワップパターンを無効とする。
Therefore, the swap information acquisition section 54 selects one of the two or more bit plane swap swap patterns that cannot be distinguished.
That is, for example, only the swap pattern in which the same bit planes are not exchanged is validated, and the other swap patterns are invalidated.

【0394】その結果、スワップ情報取得部54では、
上述の例で言えば、第iビットと第jビットのビットプ
レーンを入れ替えるスワップパターンを表すスワップ情
報は、生成されなくなる。
As a result, the swap information acquisition section 54
In the above example, the swap information representing the swap pattern for exchanging the bit planes of the i-th bit and the j-th bit is not generated.

【0395】なお、この場合、スワップパターンの総数
は、無効とされるスワップパターンが存在しない場合に
比較して少なくなるため、注目ラインに埋め込むことの
できる第3の被埋め込みデータのデータ量(ビット数)
も減少することになる。
In this case, since the total number of swap patterns is smaller than that in the case where there is no invalid swap pattern, the data amount (bits) of the third embedded data that can be embedded in the attention line (bit number)
Will also decrease.

【0396】また、スワップ情報取得部54は、注目ラ
インについて、区別することのできないスワップパター
ンが存在するかどうかは、注目ライン選択部52から供
給される注目ラインの各ビットのビットプレーンを参照
することにより判定する。
Further, the swap information acquisition unit 54 refers to the bit plane of each bit of the attention line supplied from the attention line selection unit 52 to determine whether or not there is a swap pattern which cannot be distinguished for the attention line. Determined by

【0397】ビットプレーンスワップ部55は、注目ラ
イン選択部52から供給される注目ラインのビットプレ
ーンを、スワップ情報取得部54から供給されるスワッ
プ情報が表すスワップパターンにしたがってビットプレ
ーンスワップすることにより、そのスワップ情報に対応
する第3の被埋め込みデータを埋め込む。そして、ビッ
トプレーンスワップ部55は、第2の埋め込み符号化デ
ータとしての画像データを構成する垂直ラインすべてに
対して、第3の被埋め込みデータを埋め込んだデータ、
即ち、第3の埋め込み符号化データを生成すると、その
第3の埋め込み符号化データを、フレームメモリ21
(図34)に出力して書き込む。
The bit plane swap unit 55 performs the bit plane swap on the bit plane of the line of interest supplied from the line of interest selection unit 52 according to the swap pattern represented by the swap information supplied from the swap information acquisition unit 54. The third embedded data corresponding to the swap information is embedded. Then, the bit-plane swap unit 55 embeds the third embedded data in all the vertical lines forming the image data as the second embedded coded data,
That is, when the third embedded coded data is generated, the third embedded coded data is stored in the frame memory 21.
(Fig. 34) Output and write.

【0398】次に、図38のフローチャートを参照し
て、図37のビットプレーンスワップ埋め込み部43の
処理について説明する。なお、この図38の処理は、ビ
ットプレーンスワップ埋め込み部43が、図35のステ
ップS164において行う処理である。
Next, the processing of the bit plane swap embedding unit 43 of FIG. 37 will be described with reference to the flowchart of FIG. Note that the processing of FIG. 38 is processing performed by the bit-plane swap embedding unit 43 in step S164 of FIG.

【0399】ビットプレーンスワップ埋め込み部43で
は、まず最初に、ステップS171において、入力デー
タ保持部51が、垂直ラインローテーション埋め込み部
42(図34)から供給された第2の埋め込み符号化デ
ータを一時記憶する。さらに、ステップS171では、
被埋め込みデータ保持部53が、被埋め込みデータベー
ス2(図34)から読み出された第3の被埋め込みデー
タを記憶する。
In the bit plane swap embedding unit 43, first, in step S171, the input data holding unit 51 temporarily stores the second embedded coded data supplied from the vertical line rotation embedding unit 42 (FIG. 34). To do. Furthermore, in step S171,
The embedded data holding unit 53 stores the third embedded data read from the embedded database 2 (FIG. 34).

【0400】そして、ステップS172に進み、注目ラ
イン選択部52が、入力データ保持部51に記憶された
第2の埋め込み符号化データとしての1フレームの画像
データを構成する垂直ラインから、注目ラインとするも
のを選択する。即ち、注目ライン選択部52は、例え
ば、第2の埋め込み符号化データとしての1フレームの
画像データの第1垂直ラインから、順次、右方向の垂直
ラインを、注目ラインとして選択するようになってお
り、ステップS172では、注目ライン選択部52は、
第2の埋め込み符号化データとしての1フレームの画像
データを構成する垂直ラインのうち、まだ、注目ライン
としていない、より左方向にある垂直ライン(いままで
注目ラインとされていた垂直ラインの右隣の垂直ライ
ン)を、注目ラインとして選択する。この注目ライン
は、注目ライン選択部52から、スワップ情報取得部5
4およびビットプレーンスワップ部55に供給される。
Then, in step S172, the line-of-interest selection unit 52 selects a line-of-interest from the vertical line forming one frame of image data as the second embedded coded data stored in the input data holding unit 51. Select what you want to do. That is, the line-of-interest selection unit 52 sequentially selects the right vertical line from the first vertical line of the image data of one frame as the second embedded coded data as the line of interest. In step S172, the line-of-interest selection unit 52
Among the vertical lines forming one frame of image data as the second embedded coded data, a vertical line in the more leftward direction that is not the target line yet (to the right of the vertical line that has been the target line up to now) Vertical line) is selected as the line of interest. This attention line is changed from the attention line selection unit 52 to the swap information acquisition unit 5
4 and the bit plane swap unit 55.

【0401】その後、ステップS173に進み、スワッ
プ情報取得部54は、被埋め込みデータ保持部53か
ら、注目ラインをビットプレーンスワップすることによ
り埋め込むことのできるデータ量だけの第3の被埋め込
みデータを読み出し、その第3の被埋め込みデータに対
応したスワップパターンを表すスワップ情報を生成す
る。
After that, proceeding to step S173, the swap information acquisition section 54 reads from the embedded data holding section 53 the third embedded data by the data amount that can be embedded by bit plane swapping the line of interest. , Swap information representing a swap pattern corresponding to the third embedded data is generated.

【0402】スワップ情報取得部54が生成したスワッ
プ情報は、ビットプレーンスワップ部55に供給され、
ビットプレーンスワップ部55は、スワップ情報を受信
すると、ステップS173からS174に進み、注目ラ
イン選択部52から供給された注目ラインのビットプレ
ーンを、スワップ情報取得部54から供給されたスワッ
プ情報が表すスワップパターンにしたがってビットプレ
ーンスワップすることにより、そのスワップ情報に対応
する第3の被埋め込みデータを埋め込む。
The swap information generated by the swap information acquisition section 54 is supplied to the bit plane swap section 55,
When the bit plane swap unit 55 receives the swap information, the process proceeds from step S173 to S174, and the bit plane of the line of interest supplied from the line of interest selection unit 52 is represented by the swap information supplied from the swap information acquisition unit 54. By performing bit plane swap according to the pattern, the third embedded data corresponding to the swap information is embedded.

【0403】そして、ステップS175に進み、注目ラ
イン選択部52は、入力データ保持部51に記憶された
第2の埋め込み符号化データとしての1フレームの画像
データのすべての垂直ラインを注目ラインとしたかどう
かを判定し、まだ、第2の埋め込み符号化データとして
の1フレームの画像データのすべての垂直ラインを注目
ラインとしていないと判定した場合、ステップS172
に戻る。この場合、ステップS172では、注目ライン
選択部52において、上述したように、第2の埋め込み
符号化データとしての1フレームの画像データの垂直ラ
インのうち、まだ、注目ラインとされていないものが、
新たに注目ラインとして選択され、以下、同様の処理が
繰り返される。
Then, in step S175, the attention line selection unit 52 sets all vertical lines of the image data of one frame as the second embedded coded data stored in the input data holding unit 51 as attention lines. If it is determined that all the vertical lines of the image data of one frame as the second embedded coded data have not been set as the attention line, it is determined in step S172.
Return to. In this case, in step S172, as described above, in the line-of-interest selection unit 52, among the vertical lines of the image data of one frame as the second embedded coded data, the line which is not yet set as the line of interest is
The line of interest is newly selected, and the same process is repeated thereafter.

【0404】また、ステップS175において、第2の
埋め込み符号化データとしての1フレームの画像データ
のすべての垂直ラインを注目ラインとしたと判定された
場合、ステップS176に進み、ビットプレーンスワッ
プ部55は、第2の埋め込み符号化データとしての1フ
レームの画像データを構成する垂直ラインすべてに対し
て、第3の被埋め込みデータを埋め込んだデータ、即
ち、第3の埋め込み符号化データを、フレームメモリ2
1(図34)に出力して上書きし、処理を終了する。
If it is determined in step S175 that all the vertical lines of the image data of one frame as the second embedded coded data are the target lines, the process proceeds to step S176, and the bit plane swap unit 55 , The data in which the third embedded data is embedded in all the vertical lines forming one frame of image data as the second embedded encoded data, that is, the third embedded encoded data,
1 (FIG. 34) to overwrite and overwrite the process.

【0405】次に、図39は、図34の埋め込み部22
において生成される第3の埋め込み符号化データを、埋
め込み対象データとしての画像データと、そこに埋め込
まれていた第1乃至第3の被埋め込みデータに復元する
場合の、図4の復元部32の構成例を示している。
Next, FIG. 39 shows an embedding section 22 of FIG.
In the case of restoring the third embedded coded data generated in (3) into the image data as the embedding target data and the first to third embedded data embedded therein, the restoration unit 32 of FIG. A configuration example is shown.

【0406】図39の実施の形態では、復元部32は、
ビットプレーンスワップ戻し部61、垂直ラインローテ
ーション戻し部62、および水平ラインローテーション
戻し部63から構成されている。
In the embodiment of FIG. 39, the restoration unit 32
The bit plane swap return unit 61, the vertical line rotation return unit 62, and the horizontal line rotation return unit 63 are included.

【0407】ビットプレーンスワップ戻し部61は、フ
レームメモリ31に記憶された第3の埋め込み符号化デ
ータを読み出し、その第3の埋め込み符号化データを、
図32で説明したようにして、第2の埋め込み符号化デ
ータと、第3の被埋め込みデータに復元する。
The bit plane swap return unit 61 reads the third embedded coded data stored in the frame memory 31, and the third embedded coded data is
As described with reference to FIG. 32, the second embedded coded data and the third embedded data are restored.

【0408】即ち、ビットプレーンスワップ戻し部61
は、第3の埋め込み符号化データとしての1フレームの
画像データの垂直ラインを、順次、注目ラインとし、そ
の注目ラインをビットプレーンスワップ方式にしたがっ
て操作し、さらに、ラインローテーション方式にしたが
って操作する。
That is, the bit plane swap return unit 61
Performs the vertical line of the image data of one frame as the third embedded coded data as a target line in sequence, operates the target line according to the bit plane swap method, and further operates according to the line rotation method.

【0409】具体的には、ビットプレーンスワップ戻し
部61は、注目ラインをビットプレーンスワップするこ
とにより、そのビットプレーンの全通りの並びを求め
る。また、ビットプレーンスワップ戻し部61は、各並
びのビットプレーンで構成される注目ラインをローテー
ションすることにより、全ローテーション量でローテー
ションされた注目ラインを求める。そして、ビットプレ
ーンスワップ戻し部61は、各並びのビットプレーンで
構成される注目ラインについて、各ローテーション量に
対する基準ラインとの相関を表す相関値を求め、その相
関値の逆数のローテーション量に対する変化を表す相関
値関数を求める。
[0409] Specifically, the bit-plane swap return unit 61 swaps the line of interest with the bit-plane to obtain the complete array of the bit-planes. Further, the bit plane swap return unit 61 obtains the line of interest rotated by the total rotation amount by rotating the line of interest formed of the bit planes in each row. Then, the bit-plane swap return unit 61 obtains a correlation value indicating the correlation with the reference line with respect to each rotation amount for the line of interest constituted by each array of bit planes, and changes the reciprocal of the correlation value with respect to the rotation amount. Find the correlation value function to represent.

【0410】その後、ビットプレーンスワップ戻し部6
1は、各並びのビットプレーンで構成される注目ライン
について求められた相関値関数の中から、上述したよう
な急峻な凹部を有するものを求め、その相関値関数に対
応するビットプレーンの並びに、注目ラインのビットプ
レーンをビットプレーンスワップするスワップパターン
を検出する。そして、ビットプレーンスワップ戻し部6
1は、注目ラインのビットプレーンを、検出したスワッ
プパターンにしたがってビットプレーンスワップするこ
とにより、第3の埋め込み符号化データとしての注目ラ
インを、第2の埋め込み符号化データとしての画像デー
タの垂直ラインに復元し、さらに、検出したスワップパ
ターンに基づいて、注目ラインに埋め込まれている第3
の被埋め込みデータを復元する。
Thereafter, the bit plane swap return unit 6
1 is a correlation value function obtained for a line of interest composed of bit lines of each row, and obtains one having the above-mentioned steep recesses, and arranges the bit planes corresponding to the correlation value function. A swap pattern for swapping the bit planes of the line of interest is detected. Then, the bit plane swap return unit 6
1 is a bit line swap of the bit plane of the line of interest according to the detected swap pattern, so that the line of interest as the third embedded coded data is the vertical line of the image data as the second embedded coded data. To the third line embedded in the line of interest based on the detected swap pattern.
Restore the embedded data of.

【0411】ビットプレーンスワップ戻し部61は、第
3の埋め込み符号化データとしての1フレームの画像デ
ータの垂直ラインすべてを注目ラインとして、上述の処
理を行い、これにより、第2の埋め込み符号化データと
しての1フレームの画像データと、そこに埋め込まれて
いた第3の被埋め込みデータを復元する。そして、ビッ
トプレーンスワップ戻し部61は、復元した第2の埋め
込み符号化データを、垂直ラインローテーション戻し部
62に供給する。
The bit plane swap return section 61 performs the above-mentioned processing by using all the vertical lines of the image data of one frame as the third embedded coded data as the attention lines, and thereby the second embedded coded data is obtained. Image data of one frame and the third embedded data embedded therein are restored. Then, the bit plane swap return unit 61 supplies the restored second embedded coded data to the vertical line rotation return unit 62.

【0412】垂直ラインローテーション戻し部62と水
平ラインローテーション戻し部63は、ビットプレーン
スワップ戻し部61から供給される第2の埋め込み符号
化データを、図31Bで説明したようなラインローテー
ション方式による復元処理によって、埋め込み対象デー
タと、第1および第2の被埋め込みデータに復元する。
The vertical line rotation returning unit 62 and the horizontal line rotation returning unit 63 restore the second embedded coded data supplied from the bit plane swap returning unit 61 by the line rotation method as described in FIG. 31B. To restore the embedding target data and the first and second embedded data.

【0413】即ち、垂直ラインローテーション戻し部6
2は、ビットプレーンスワップ戻し部61から供給され
る第2の埋め込み符号化データとしての画像データの垂
直ラインを、順次、注目ラインとして、図31Bで説明
したようなラインローテーション方式による復元処理を
行い、これにより、第1の埋め込み符号化データと、そ
こに埋め込まれていた第2の被埋め込みデータを復元す
る。そして、垂直ラインローテーション戻し部62は、
復元した第1の埋め込み符号化データを、水平ラインロ
ーテーション戻し部63に供給する。
That is, the vertical line rotation return unit 6
Reference numeral 2 denotes a vertical line of the image data as the second embedded coded data supplied from the bit plane swap returning unit 61, which is sequentially used as a line of interest, and is subjected to restoration processing by the line rotation method as described in FIG. 31B. As a result, the first embedded coded data and the second embedded data embedded therein are restored. Then, the vertical line rotation return unit 62
The restored first embedded coded data is supplied to the horizontal line rotation returning unit 63.

【0414】水平ラインローテーション戻し部63は、
垂直ラインローテーション戻し部62から供給される第
1の埋め込み符号化データとしての画像データの水平ラ
インを、順次、注目ラインとして、図31Bで説明した
ようなラインローテーション方式による復元処理を行
い、これにより、埋め込み対象データとしての画像デー
タと、そこに埋め込まれていた第1の被埋め込みデータ
を復元する。そして、水平ラインローテーション戻し部
63は、復元した埋め込み対象データを、フレームメモ
リ31に上書きする形で書き込む。
The horizontal line rotation return section 63 is
The horizontal line of the image data as the first embedded coded data supplied from the vertical line rotation returning unit 62 is sequentially treated as a line of interest, and restoration processing by the line rotation method as described in FIG. 31B is performed. , The image data as the embedding target data and the first embedded data embedded therein are restored. Then, the horizontal line rotation returning unit 63 writes the restored embedding target data in the frame memory 31 in a form of overwriting.

【0415】次に、図40のフローチャートを参照し
て、図39の復元部32による復元処理について説明す
る。
Next, the restoration processing by the restoration unit 32 in FIG. 39 will be described with reference to the flowchart in FIG.

【0416】ビットプレーンスワップ戻し部61は、ま
ず最初に、ステップS181において、フレームメモリ
31から第3の埋め込み符号化データとしての1フレー
ムの画像データを読み出し、ステップS182に進む。
First, in step S181, the bit plane swap return unit 61 reads out one frame of image data as the third embedded coded data from the frame memory 31, and proceeds to step S182.

【0417】ステップS182では、ビットプレーンス
ワップ戻し部61は、フレームメモリ31から読み出し
た第3の埋め込み符号化データを、第2の埋め込み符号
化データと、第3の被埋め込みデータに復元する。
In step S182, the bit plane swap return unit 61 restores the third embedded coded data read from the frame memory 31 into the second embedded coded data and the third embedded data.

【0418】即ち、図41Aに示すように、ビットプレ
ーンスワップ戻し部61は、注目ラインをビットプレー
ンスワップし、さらに、各並びのビットプレーンで構成
される注目ラインをローテーションしながら、注目ライ
ンについて、その左隣の垂直ラインである基準ラインと
の間の相関を表す相関値関数(ここでは、相関値の逆数
を、その関数値とする相関値関数)を求める。そして、
ビットプレーンスワップ戻し部61は、各並びのビット
プレーンで構成される注目ラインについて求めた相関値
関数の中から、図41Bに示すような急峻な凹部を有す
るものを求め、その相関値関数に対応するビットプレー
ンの並びに、注目ラインのビットプレーンをビットプレ
ーンスワップするスワップパターンを検出する。その
後、ビットプレーンスワップ戻し部61は、注目ライン
のビットプレーンを、検出したスワップパターンにした
がってビットプレーンスワップすることにより、第3の
埋め込み符号化データとしての注目ラインを、第2の埋
め込み符号化データとしての画像データの垂直ラインに
復元し、さらに、検出したスワップパターンに基づい
て、注目ラインに埋め込まれている第3の被埋め込みデ
ータを復元する。
That is, as shown in FIG. 41A, the bit-plane swap return unit 61 swaps the target line with the bit-plane, and further rotates the target line composed of the bit planes in each row, A correlation value function (in this case, a correlation value function having the inverse of the correlation value as its function value) representing a correlation with a reference line which is a vertical line adjacent to the left side is obtained. And
The bit-plane swap return unit 61 obtains a correlation value function having a steep concave portion as shown in FIG. 41B from the correlation value functions obtained for the line of interest composed of each array of bit planes, and corresponds to the correlation value function. A swap pattern for swapping the bit planes of the line of interest and the bit plane of the line of interest is detected. After that, the bit plane swap return unit 61 performs bit plane swapping on the bit plane of the line of interest in accordance with the detected swap pattern, thereby setting the line of interest as the third embedded coded data to the second embedded coded data. Is restored to the vertical line of the image data, and further, the third embedded data embedded in the line of interest is restored based on the detected swap pattern.

【0419】ビットプレーンスワップ戻し部61は、第
3の埋め込み符号化データとしての1フレームの画像デ
ータの垂直ラインすべてを注目ラインとして、上述の処
理を行い、これにより、第2の埋め込み符号化データと
しての1フレームの画像データと、そこに埋め込まれて
いた第3の被埋め込みデータを復元すると、その復元し
た第2の埋め込み符号化データを、垂直ラインローテー
ション戻し部62に供給し、ステップS183に進む。
The bit plane swap return section 61 performs the above-mentioned processing by using all the vertical lines of the image data of one frame as the third embedded coded data as the attention line, and thereby the second embedded coded data is obtained. When the image data of one frame and the third embedded data embedded therein are restored, the restored second embedded coded data is supplied to the vertical line rotation returning unit 62, and the process proceeds to step S183. move on.

【0420】ステップS183では、垂直ラインローテ
ーション戻し部62は、ビットプレーンスワップ戻し部
61から供給された第2の埋め込み符号化データとして
の画像データの垂直ラインを、順次、注目ラインとし
て、図31Bで説明したようなラインローテーション方
式による復元処理を行い、これにより、第1の埋め込み
符号化データと、そこに埋め込まれていた第2の被埋め
込みデータを復元する。そして、垂直ラインローテーシ
ョン戻し部62は、復元した第1の埋め込み符号化デー
タを、水平ラインローテーション戻し部63に供給し、
ステップS184に進む。
In step S183, the vertical line rotation return unit 62 sequentially sets the vertical lines of the image data as the second embedded coded data supplied from the bit plane swap return unit 61 as the target line in FIG. 31B. The restoration processing by the line rotation method as described above is performed, and thereby the first embedded coded data and the second embedded data embedded therein are restored. Then, the vertical line rotation returning unit 62 supplies the restored first embedded coded data to the horizontal line rotation returning unit 63,
It proceeds to step S184.

【0421】ステップS184では、水平ラインローテ
ーション戻し部63は、垂直ラインローテーション戻し
部62から供給された第1の埋め込み符号化データとし
ての画像データの水平ラインを、順次、注目ラインとし
て、図31Bで説明したようなラインローテーション方
式による復元処理を行い、これにより、埋め込み対象デ
ータとしての画像データと、そこに埋め込まれていた第
1の被埋め込みデータを復元する。
In step S184, the horizontal line rotation returning unit 63 sequentially sets the horizontal lines of the image data as the first embedded coded data supplied from the vertical line rotation returning unit 62 as the attention lines in FIG. 31B. The restoration processing by the line rotation method as described above is performed, and thereby, the image data as the embedding target data and the first embedded data embedded therein are restored.

【0422】そして、ステップS185に進み、水平ラ
インローテーション戻し部63は、復元した埋め込み対
象データを、フレームメモリ31に出力し、上書きする
形で書き込む。さらに、ステップS185では、ビット
プレーンスワップ戻し部61、垂直ラインローテーショ
ン戻し部62、水平ラインローテーション戻し部63
が、復元した第1乃至第3の被埋め込みデータをそれぞ
れ出力し、処理を終了する。
Then, proceeding to step S185, the horizontal line rotation returning section 63 outputs the restored embedding target data to the frame memory 31 and writes it in a form of overwriting. Furthermore, in step S185, the bit plane swap return unit 61, the vertical line rotation return unit 62, and the horizontal line rotation return unit 63.
Outputs the restored first to third embedded data, respectively, and ends the process.

【0423】以上のようにして、フレームメモリ31に
書き込まれた埋め込み対象データは、フレームメモリ3
1から読み出され、以下、フレームメモリ31に記憶さ
れた次のフレームの第3の埋め込み符号化データを対象
として、図40の処理が繰り返される。
As described above, the embedding target data written in the frame memory 31 is the frame memory 3
The process of FIG. 40 is repeated for the third embedded coded data of the next frame, which is read out from the first frame 1 and is stored in the frame memory 31.

【0424】以上のように、ビットプレーンスワップ戻
し部61において、第3の埋め込み符号化データをビッ
トプレーンスワップ方式にしたがって操作するととも
に、ラインローテーション方式にしたがって操作し、そ
の操作後のデータの相関値関数を利用して復元処理を行
うようにしたので、第3の埋め込み符号化データを、第
2の埋め込み符号化データと、そこに埋め込まれていた
第3の被埋め込みデータに復元することができ、さら
に、垂直ラインローテーション戻し部62において、第
2の埋め込み符号化データを、第1の埋め込み符号化デ
ータと、そこに埋め込まれていた第2の被埋め込みデー
タに復元し、水平ラインローテーション部63におい
て、第1の埋め込み符号化データを、埋め込み対象デー
タと、そこに埋め込まれていた第1の被埋め込みデータ
に復元することができる。
As described above, in the bit plane swap return unit 61, the third embedded coded data is operated according to the bit plane swap method and the line rotation method, and the correlation value of the data after the operation is performed. Since the restoration process is performed by using the function, the third embedded coded data can be restored to the second embedded coded data and the third embedded data embedded therein. Further, in the vertical line rotation returning unit 62, the second embedded coded data is restored to the first embedded coded data and the second embedded data embedded therein, and the horizontal line rotation unit 63. , The first embedded coded data is embedded in the embedding target data and It can be restored to the first of the embedded data are.

【0425】即ち、埋め込み対象データに対して、第1
乃至第3の被埋め込みデータという多くのデータが埋め
込まれている第3の埋め込み符号化データを、元の埋め
込み対象データと、第1乃至第3の被埋め込みデータに
復元することができる。
That is, for the embedding target data, the first
It is possible to restore the third embedded coded data in which a large amount of data, that is, to the third embedded data, are embedded into the original embedding target data and the first to third embedded data.

【0426】次に、図42は、図39のビットプレーン
スワップ戻し部32の詳細構成例を示している。
Next, FIG. 42 shows a detailed configuration example of the bit plane swap return unit 32 of FIG.

【0427】入力データ保持部71は、フレームメモリ
31(図39)から供給される第3の埋め込み符号化デ
ータとしての1フレームの画像データを一時記憶する。
The input data holding unit 71 temporarily stores the image data of one frame as the third embedded coded data supplied from the frame memory 31 (FIG. 39).

【0428】基準ライン選択部72は、埋め込み符号化
データ保持部82に記憶された、既に復元された第2の
埋め込み符号化データとしての画像データを構成する垂
直ラインの中から、所定の垂直ラインを選択し、基準ラ
インとして読み出す。即ち、基準ライン選択部72は、
後述する注目ライン選択部73において注目ラインとさ
れた垂直ラインの左隣の、既に第2の埋め込み符号化デ
ータに復元されている垂直ラインを、基準ラインとして
選択する。そして、基準ライン選択部72は、基準ライ
ンを、垂直ライン間相関値計算部76に供給する。
The reference line selecting section 72 selects a predetermined vertical line from the vertical lines which are stored in the embedded coded data holding section 82 and which constitute the image data which has already been restored and serves as the second embedded coded data. Is selected and read as a reference line. That is, the reference line selection unit 72
A vertical line adjacent to the left of the vertical line selected as the target line in the target line selection unit 73, which will be described later, and already restored to the second embedded coded data is selected as the reference line. Then, the reference line selection unit 72 supplies the reference line to the vertical line correlation value calculation unit 76.

【0429】注目ライン選択部73は、入力データ保持
部71に記憶された第3の埋め込み符号化データとして
の画像データを構成する垂直ラインを、順次、注目ライ
ンとして選択して読み出し、ビットプレーンスワップ部
74に供給する。ここで、注目ライン選択部73は、例
えば、第3の埋め込み符号化データとしての画像データ
のフレームの第1垂直ラインから、順次、右方向の垂直
ラインを、注目ラインとして選択するようになってい
る。
The line-of-interest selection unit 73 sequentially selects and reads out vertical lines constituting the image data as the third embedded coded data stored in the input data holding unit 71, as the line-of-interest, and performs bit-plane swapping. Supply to the section 74. Here, the line-of-interest selection unit 73 is configured to sequentially select the right vertical line as the line of interest from the first vertical line of the frame of the image data as the third embedded coded data. There is.

【0430】ビットプレーンスワップ部74は、最適ス
ワップ情報選択部80から供給される最適スワップ情報
に対応するスワップパターンにしたがい、注目ラインの
ビットプレーンをビットプレーンスワップし、そのビッ
トプレーンスワップ後の注目ラインを、第2の埋め込み
符号化データを構成する垂直ラインの復元結果として、
埋め込み符号化データ保持部82に供給する。また、ビ
ットプレーンスワップ部74は、仮スワップ情報決定部
81から供給される仮スワップ情報に対応するスワップ
パターンにしたがい、注目ラインのビットプレーンをビ
ットプレーンスワップし、そのビットプレーンスワップ
後の注目ラインを、上述の仮復元垂直ラインとして、ラ
インローテーション部75に供給する。
The bit plane swap unit 74 bit-plane swaps the bit plane of the target line according to the swap pattern corresponding to the optimum swap information supplied from the optimum swap information selection unit 80, and the target line after the bit plane swap. As the restoration result of the vertical line forming the second embedded coded data,
It is supplied to the embedded coded data holding unit 82. In addition, the bit plane swap unit 74 bit-plane swaps the bit plane of the attention line according to the swap pattern corresponding to the provisional swap information supplied from the provisional swap information determination unit 81, and selects the attention line after the bit plane swap. , And is supplied to the line rotation unit 75 as the above-mentioned temporary restoration vertical line.

【0431】ラインローテーション部75は、ビットプ
レーンスワップ部74から供給される仮復元垂直ライン
を、全通りのローテーション量でローテーションし、各
ローテーション量でローテーションした仮復元垂直ライ
ン(以下、適宜、ローテーションラインという)を、垂
直ライン間相関値計算部76に供給する。
The line rotation unit 75 rotates the temporary restored vertical lines supplied from the bit plane swap unit 74 by all the rotation amounts, and rotates the temporary restored vertical lines by each rotation amount (hereinafter, appropriately referred to as rotation line). Is supplied to the vertical line correlation value calculation unit 76.

【0432】ここで、第3の埋め込み符号化データとし
ての画像データのフレームを構成する垂直ラインが、N
画素で構成される場合には、ラインローテーション部7
5は、0乃至N−1画素分のローテーション量それぞれ
でローテーションしたローテーションラインを求める。
Here, the vertical line forming the frame of the image data as the third embedded coded data is N
When it is composed of pixels, the line rotation unit 7
5 obtains the rotation line rotated by each rotation amount of 0 to N-1 pixels.

【0433】垂直ライン間相関値計算部76は、ライン
ローテーション部75から供給される各ローテーション
量のローテーションラインと、基準ライン選択部72か
ら供給される基準ラインとの相関値を計算し、相関値保
持部77に供給する。即ち、垂直ライン間相関値計算部
76は、例えば、あるローテーション量のローテーショ
ンラインを構成する画素の画素値と、その画素に対応す
る基準ラインを構成する画素の画素値との差分絶対値を
計算し、その総和(差分絶対値和)の逆数を求める。そ
して、垂直ライン間相関値計算部76は、各ローテーシ
ョン量のローテーションラインについて、上述の差分絶
対値和の逆数を求め、各ローテーション量のローテーシ
ョンラインの相関値(基準ラインとの間の相関値)とし
て、相関値保持部77に供給する。
The vertical line correlation value calculation unit 76 calculates the correlation value between the rotation line of each rotation amount supplied from the line rotation unit 75 and the reference line supplied from the reference line selection unit 72, and the correlation value It is supplied to the holding unit 77. That is, the vertical line correlation value calculation unit 76 calculates, for example, the absolute difference value between the pixel value of a pixel forming a rotation line having a certain rotation amount and the pixel value of a pixel forming a reference line corresponding to the rotation line. Then, the reciprocal of the sum (sum of absolute differences) is calculated. Then, the inter-vertical line correlation value calculation unit 76 obtains the reciprocal of the sum of the absolute differences described above for the rotation lines of each rotation amount, and the correlation value of the rotation line of each rotation amount (correlation value with the reference line). Is supplied to the correlation value holding unit 77.

【0434】関数値保持部77は、垂直ライン間相関値
計算部76から供給される各ローテーション量のローテ
ーションラインの相関値を一時記憶する。
The function value holding unit 77 temporarily stores the correlation value of the rotation line of each rotation amount supplied from the vertical line correlation value calculation unit 76.

【0435】相関値関数形状特徴量計算部78は、関数
値保持部77に記憶された相関値を参照し、仮復元垂直
ラインを各ローテーション量でローテーションしたとき
の、基準ラインとの相関を表す相関値関数(仮復元垂直
ラインについての相関値関数)の特徴量を求め、相関値
関数特徴量保持部79に供給する。
The correlation value function shape feature amount calculating unit 78 refers to the correlation value stored in the function value holding unit 77, and represents the correlation with the reference line when the temporary restored vertical line is rotated by each rotation amount. The feature amount of the correlation value function (correlation value function for the temporary restored vertical line) is obtained and supplied to the correlation value function feature amount holding unit 79.

【0436】ここで、仮復元垂直ラインについての相関
値関数は、ここでは、上述したように、各ローテーショ
ン量でローテーションした仮復元垂直ラインと、基準ラ
インとの間の相関を表すものであり、関数値保持部77
に記憶された相関値は、仮復元垂直ラインについての相
関値関数の、各ローテーション量における関数値の逆数
になっている。
Here, the correlation value function for the temporary restoration vertical line represents the correlation between the temporary restoration vertical line rotated by each rotation amount and the reference line, as described above. Function value holding unit 77
The correlation value stored in is the reciprocal of the function value at each rotation amount of the correlation value function for the temporary restored vertical line.

【0437】相関値関数形状特徴量計算部78は、この
ような関数値保持部77に記憶された相関値を参照する
ことにより、例えば、仮復元垂直ラインについての相関
値関数の関数値の最小値を、その相関値関数の特徴量と
して求める。
The correlation value function shape feature amount calculation unit 78 refers to the correlation value stored in the function value holding unit 77 as described above to determine, for example, the minimum function value of the correlation value function for the temporary restored vertical line. The value is obtained as the characteristic amount of the correlation value function.

【0438】なお、ここでは、相関値関数の特徴量とし
て、その関数値の最小値を求めるようにしたが、相関値
関数の特徴量は、これに限定されるものではない。即
ち、相関値関数の特徴量は、相関値関数が、例えば、図
33に示したように、急峻な凹部を有する形状のもので
あるかどうかを判定することができるものであれば良
く、従って、相関値関数の特徴量としては、関数値の最
小値の他、例えば、変化の割合(関数の微分値)等を採
用することが可能である。
Although the minimum value of the function value of the correlation value function is obtained here, the feature value of the correlation value function is not limited to this. That is, the feature quantity of the correlation value function may be any one that can determine whether or not the correlation value function has a shape having a steep concave portion, as shown in FIG. As the feature amount of the correlation value function, it is possible to adopt, for example, a rate of change (differential value of the function) or the like, in addition to the minimum value of the function value.

【0439】相関値関数形状特徴量保持部79は、相関
値関数形状特徴量計算部78から供給される仮復元垂直
ラインについての相関値関数の特徴量(ここでは、上述
したように、関数値の最小値)を一時記憶する。
The correlation value function shape feature amount holding unit 79 uses the correlation value function feature amount for the temporary restored vertical line supplied from the correlation value function shape feature amount calculation unit 78 (here, as described above, the function value (Minimum value of) is temporarily stored.

【0440】なお、相関値関数形状特徴量保持部79に
は、相関値関数形状特徴量計算部78から、仮復元垂直
ラインについての相関値関数の特徴量が供給される他、
仮スワップ情報決定部81から、その仮復元垂直ライン
を生成するときのスワップパターンを表す仮スワップ情
報が供給されるようになっている。そして、相関値関数
形状特徴量保持部79は、仮復元垂直ラインについての
相関値関数と、その仮復元垂直ラインを生成するときの
スワップパターンを表す仮スワップ情報と対応付け、そ
の相関値関数と仮スワップ情報のセットを記憶するよう
になっている。
The correlation value function shape feature amount holding unit 79 is supplied from the correlation value function shape feature amount calculation unit 78 with the correlation value function feature amount for the temporary restored vertical line.
The temporary swap information determining unit 81 is supplied with temporary swap information representing a swap pattern when the temporary restored vertical line is generated. Then, the correlation value function shape feature amount storage unit 79 associates the correlation value function for the temporary restored vertical line with the temporary swap information representing the swap pattern when the temporary restored vertical line is generated, and the correlation value function A set of temporary swap information is stored.

【0441】最適スワップ情報選択部80は、相関値関
数形状特徴量保持部79に記憶された、各スワップパタ
ーンを表す仮スワップ情報に対応付けられている相関値
関数の特徴量を参照することにより、同じく相関値関数
形状特徴量保持部79に記憶された仮スワップ情報の中
から、急峻な凹部を有する形状の相関値関数が得られた
仮復元垂直ラインのスワップパターンを表す仮スワップ
情報を選択し、その選択した仮スワップ情報を、注目ラ
インにとって、最適なビットプレーンスワップを行うス
ワップパターンを表すスワップ情報として、つまり、注
目ラインのビットプレーンの並びを元の並びに復元する
スワップパターンを表すスワップ情報(以下、適宜、最
適スワップ情報という)として、ビットプレーンスワッ
プ部74および被埋め込みデータ保持部83に供給す
る。
The optimum swap information selecting section 80 refers to the feature value of the correlation value function stored in the correlation value function shape feature value holding section 79 and associated with the temporary swap information representing each swap pattern. Similarly, from the temporary swap information stored in the correlation value function shape feature amount storage unit 79, the temporary swap information representing the swap pattern of the temporary restored vertical line for which the correlation value function of the shape having the steep concave portion is obtained is selected. Then, the selected tentative swap information is used as swap information indicating a swap pattern for optimal bit plane swap for the attention line, that is, swap information indicating a swap pattern for restoring the original arrangement of the bit planes on the attention line. The bit plane swap unit 74 and the target Supplies in order inclusive data holding unit 83.

【0442】即ち、本実施の形態では、相関値関数の特
徴量として、その関数値の最小値を採用するが、この場
合は、各スワップパターンにしたがって注目ラインをビ
ットプレーンスワップした仮復元垂直ラインについての
相関値関数のうち、その関数値の最小値が最小のもの
が、急峻な凹部を有する形状を有しているということが
できる。
That is, in the present embodiment, the minimum value of the function value is adopted as the feature amount of the correlation value function. In this case, the target line is bit plane swapped according to each swap pattern, and the temporary restored vertical line is used. It can be said that, of the correlation value functions of, the one having the smallest minimum value of the function values has a shape having a sharp concave portion.

【0443】そこで、最適スワップ情報選択部80は、
相関値関数形状特徴量保持部79に記憶された相関値関
数の特徴量のうち、最小のものを検出し、さらに、その
最小の特徴量に対応付けられている仮スワップ情報を選
択する。そして、最適スワップ情報選択部80は、その
選択した仮スワップ情報を、相関値関数形状特徴量保持
部79から読み出し、最適スワップ情報として、ビット
プレーンスワップ部74および被埋め込みデータ保持部
83に供給する。
Therefore, the optimum swap information selection unit 80
Of the feature values of the correlation value function stored in the correlation value function shape feature amount storage unit 79, the smallest feature amount is detected, and the temporary swap information associated with the smallest feature amount is selected. Then, the optimum swap information selection unit 80 reads the selected temporary swap information from the correlation value function shape feature amount holding unit 79 and supplies it to the bit plane swap unit 74 and the embedded data holding unit 83 as optimum swap information. .

【0444】なお、最適スワップ情報選択部80は、上
述のように、相関値関数の特徴量のうちの最小のものを
検出するが、これは、相関値そのものについて言えば、
相関値の最大値を検出することと等価である。
The optimum swap information selection section 80 detects the smallest feature value of the correlation value function as described above.
It is equivalent to detecting the maximum correlation value.

【0445】仮スワップ情報決定部81は、注目ライン
をビットプレーンスワップするスワップパターンを決定
し、そのスワップパターンを表すスワップ情報を、仮ス
ワップ情報として、ビットプレーンスワップ部74に供
給する。
The temporary swap information determining section 81 determines a swap pattern for bit plane swapping the target line and supplies the swap information representing the swap pattern to the bit plane swap section 74 as temporary swap information.

【0446】即ち、ビットプレーンスワップ部74は、
注目ラインのビットプレーンの並びを、全通りの並びに
並び替えるビットプレーンスワップを行うスワップパタ
ーンを、順次設定し、そのスワップパターンを表すスワ
ップ情報を、仮スワップ情報として、ビットプレーンス
ワップ部74に供給する。
That is, the bit plane swap unit 74
Swap patterns for performing bit plane swaps for sequentially rearranging the bit planes of the line of interest are sequentially set, and swap information representing the swap patterns is supplied to the bit plane swap unit 74 as temporary swap information. .

【0447】埋め込み符号化データ保持部82は、ビッ
トプレーンスワップ部74から供給される、最適スワッ
プ情報が表すスワップパターンにしたがってビットプレ
ーンスワップされた注目ラインを一時記憶する。
The embedded coded data holding unit 82 temporarily stores the line of interest subjected to the bit plane swap in accordance with the swap pattern supplied from the bit plane swap unit 74 and represented by the optimum swap information.

【0448】被埋め込みデータ保持部83は、最適スワ
ップ情報選択部80から供給される最適スワップ情報に
基づき、注目ラインに埋め込まれている第3の被埋め込
みデータを復元して一時記憶する。
The embedded data holding unit 83 restores and temporarily stores the third embedded data embedded in the line of interest based on the optimum swap information supplied from the optimum swap information selecting unit 80.

【0449】次に、図43のフローチャートを参照し
て、図42のビットプレーンスワップ戻し部61の処理
について説明する。なお、この図43の処理は、ビット
プレーンスワップ戻し部61が、図40のステップS1
82において行う処理である。
Next, with reference to the flowchart in FIG. 43, the processing of the bit plane swap return unit 61 in FIG. 42 will be described. It should be noted that in the processing of FIG. 43, the bit plane swap return unit 61 performs the processing in step S1 of FIG.
This is the process performed at 82.

【0450】まず最初に、入力データ保持部71は、フ
レームメモリ31から入力される第3の埋め込み符号化
データとしての1フレームの画像データを一時記憶し、
ステップS192に進む。
First, the input data holding section 71 temporarily stores the image data of one frame as the third embedded coded data input from the frame memory 31,
It proceeds to step S192.

【0451】ステップS192では、注目ライン選択部
73が、入力データ保持部71に記憶された第3の埋め
込み符号化データとしての1フレームの画像データの垂
直ラインのうち、まだ、注目ラインとしていない、より
左側の垂直ラインを、注目ラインとして選択し、ビット
プレーンスワップ部74に供給する。さらに、ステップ
S192では、基準ライン選択部72が、埋め込み符号
化データ保持部82に記憶された、既に、第2の埋め込
み符号化データに復元されている画像データの垂直ライ
ンのうちの、注目ラインの左隣の垂直ラインを、基準ラ
インとして選択し、垂直ライン間相関値計算部76に供
給する。
In step S192, the line-of-interest selecting unit 73 has not yet set the line of interest among the vertical lines of the image data of one frame as the third embedded coded data stored in the input data holding unit 71. The vertical line on the left side is selected as the line of interest and supplied to the bit plane swap unit 74. Furthermore, in step S192, the reference line selection unit 72 causes the embedded coded data storage unit 82 to store the line of interest among the vertical lines of the image data already restored to the second embedded coded data. The vertical line on the left side of is selected as the reference line and supplied to the inter-vertical line correlation value calculation unit 76.

【0452】ここで、第1垂直ラインは、上述したよう
に、埋め込み処理において、処理の対象とされないの
で、第3の埋め込み符号化データは埋め込まれていな
い。このため、注目ライン選択部73は、ステップS1
92において、第1垂直ラインを、注目ラインとして選
択した場合には、その第1垂直ラインを、そのまま、ビ
ットプレーンスワップ部74を介して、埋め込み符号化
データ保持部82に供給して記憶させる。そして、注目
ライン選択部73は、ステップS192に戻り、第3の
埋め込み符号化データとしての1フレームの画像データ
の次の垂直ライン、即ち、第2垂直ラインを、注目ライ
ンとして選択する。
Here, as described above, the first vertical line is not subject to processing in the embedding processing, so the third embedded coded data is not embedded. Therefore, the line-of-interest selection unit 73 has step S1
In 92, when the first vertical line is selected as the target line, the first vertical line is directly supplied to the embedded coded data holding unit 82 via the bit plane swap unit 74 and stored therein. Then, the line-of-interest selection unit 73 returns to step S192, and selects the vertical line next to the image data of one frame as the third embedded coded data, that is, the second vertical line, as the line of interest.

【0453】その後、ステップS193に進み、仮スワ
ップ情報決定部81は、仮スワップ情報を生成し、ビッ
トプレーンスワップ部74に供給する。
After that, proceeding to step S193, the temporary swap information determining section 81 generates temporary swap information and supplies it to the bit plane swap section 74.

【0454】即ち、例えば、上述したように、画素値が
8ビットで構成される場合には、注目ラインも、8つの
ビットプレーンで構成され、その並びは、8!通り存在
するが、この場合、ステップS193において、仮スワ
ップ情報決定部81は、その8!通りのビットプレーン
の並びにビットプレーンスワップするスワップパターン
のうち、まだ、仮スワップ情報を生成していないものの
1つを、注目ラインのビットプレーンスワップに用いる
スワップパターンとして決定し、そのスワップパターン
を表す仮スワップ情報を生成して、ビットプレーンスワ
ップ部74および相関値関数形状特徴量保持部79に供
給する。
That is, for example, as described above, when the pixel value is composed of 8 bits, the line of interest is also composed of 8 bit planes, and the arrangement thereof is 8! However, in this case, in step S193, the temporary swap information determination unit 81 outputs the 8! One of the normal bit planes and the swap pattern for swapping the bit planes, one of which has not yet generated the temporary swap information is determined as the swap pattern to be used for the bit plane swap of the attention line, and the temporary swap information is represented. Swap information is generated and supplied to the bit plane swap unit 74 and the correlation value function shape feature amount holding unit 79.

【0455】そして、ステップS194に進み、ビット
プレーンスワップ部74は、仮決定部81から供給され
る仮スワップ情報が表すスワップパターンにしたがっ
て、注目ラインをビットプレーンスワップし、そのビッ
トプレーンスワップ結果を、仮復元垂直ラインとして、
ラインローテーション部75に供給して、ステップS1
95に進む。
Then, proceeding to step S194, the bit-plane swap unit 74 bit-plane swaps the line of interest according to the swap pattern represented by the temporary swap information supplied from the temporary determination unit 81, and outputs the bit-plane swap result. As a temporary restoration vertical line,
Supply to the line rotation unit 75, step S1
Proceed to 95.

【0456】ステップS195では、ラインローテーシ
ョン部75が、ローテーション量を、前回のローテーシ
ョン量に1を加算した値にセットし、そのローテーショ
ン量だけ、仮復元垂直ラインをローテーションする。
In step S195, the line rotation unit 75 sets the rotation amount to a value obtained by adding 1 to the previous rotation amount, and rotates the temporary restored vertical line by the rotation amount.

【0457】ここで、ステップS195において、新た
な仮復元垂直ラインに対して、最初のローテーションが
行われる場合、ラインローテーション部75は、ローテ
ーション量を、0に初期化する。
Here, in step S195, when the first rotation is performed on the new temporary restored vertical line, the line rotation unit 75 initializes the rotation amount to 0.

【0458】ラインローテーション部75は、仮復元垂
直ラインをローテーションすると、そのローテーション
した仮復元垂直ラインであるローテーションラインを、
垂直ライン間相関値計算部76に供給し、ステップS1
96に進む。
When the line rotation unit 75 rotates the temporary restoration vertical line, the line rotation unit 75 changes the rotation line that is the rotated temporary restoration vertical line to
It supplies to the correlation value calculation part 76 between vertical lines, and step S1
Proceed to 96.

【0459】ステップS196では、垂直ライン間相関
値計算部76は、ラインローテーション部75からのロ
ーテーションラインと、基準ライン選択部72からの基
準ラインとの間の相関値を計算し、相関値保持部77に
供給して記憶させる。
In step S196, the inter-vertical line correlation value calculation unit 76 calculates the correlation value between the rotation line from the line rotation unit 75 and the reference line from the reference line selection unit 72, and the correlation value holding unit It is supplied to 77 for storage.

【0460】その後、ステップS197に進み、ライン
ローテーション部75は、仮復元垂直ラインを、全通り
のローテーション量でローテーションしたかどうかを判
定する。ステップS197において、まだ、仮復元垂直
ラインを、全通りのローテーション量でローテーション
していないと判定された場合、ステップS195に戻
り、上述したように、ラインローテーション部75は、
ローテーション量を、前回のローテーション量に1を加
算した値にセットし、以下、同様の処理を繰り返す。
[0460] After that, proceeding to step S197, the line rotation unit 75 determines whether or not the temporary restored vertical line has been rotated by all the rotation amounts. When it is determined in step S197 that the temporary restored vertical line is not yet rotated by the entire rotation amount, the process returns to step S195, and the line rotation unit 75, as described above,
The rotation amount is set to a value obtained by adding 1 to the previous rotation amount, and the same processing is repeated thereafter.

【0461】また、ステップS197において、仮復元
垂直ラインを、全通りのローテーション量でローテーシ
ョンしたと判定された場合、即ち、仮復元垂直ラインを
各ローテーション量でローテーションしたものそれぞれ
と、基準ラインとの相関値がすべて求められ、相関値保
持部77に記憶された場合、ステップS198に進み、
相関値関数形状特徴量計算部78は、関数値保持部77
に記憶された相関値を参照することにより、上述したよ
うに、仮復元垂直ラインについての相関値関数の関数値
の最小値を、その相関値関数の特徴量として求める。そ
して、相関値関数形状特徴量計算部78は、仮復元垂直
ラインについての相関値関数の特徴量を、相関値関数形
状特徴量保持部79に供給し、仮スワップ情報決定部8
1が出力する仮スワップ情報と対応付けて記憶させ、ス
テップS199に進む。
If it is determined in step S197 that the temporary restored vertical line has been rotated by all the rotation amounts, that is, the temporary restored vertical line is rotated by each rotation amount and the reference line. When all the correlation values are obtained and stored in the correlation value holding unit 77, the process proceeds to step S198,
The correlation value function shape feature amount calculation unit 78 includes a function value holding unit 77.
As described above, the minimum value of the function value of the correlation value function for the provisional restored vertical line is obtained as a feature amount of the correlation value function by referring to the correlation value stored in. Then, the correlation value function shape feature amount calculation unit 78 supplies the correlation amount function shape feature amount holding unit 79 with the correlation value function shape amount regarding the temporary restored vertical line, and the temporary swap information determination unit 8
The temporary swap information output by 1 is stored in association with the temporary swap information, and the process proceeds to step S199.

【0462】ステップS199では、仮スワップ情報決
定部81が、注目ラインを構成するビットプレーンの全
通りの並びについて、仮スワップ情報を生成したかどう
かを判定する。ステップS199において、注目ライン
を構成するビットプレーンの全通りの並びについて、ま
だ、仮スワップ情報を生成していないと判定された場
合、ステップS193に戻り、仮スワップ情報決定部8
1は、上述したように、全通りのビットプレーンの並び
のうち、まだ、仮スワップ情報を生成していない並びに
ついてのスワップパターンの1つを、注目ラインのビッ
トプレーンスワップに用いるスワップパターンとして決
定し、以下、同様の処理を繰り返す。
[0462] In step S199, the temporary swap information determination unit 81 determines whether or not temporary swap information has been generated for all the arrangements of the bit planes forming the line of interest. When it is determined in step S199 that temporary swap information has not yet been generated for all the arrangements of the bit planes forming the line of interest, the process returns to step S193 and the temporary swap information determination unit 8
As described above, 1 determines one of the swap patterns for the row for which the temporary swap information has not yet been generated among all the row bit plane rows as the swap pattern to be used for the bit plane swap of the line of interest. Then, the same processing is repeated thereafter.

【0463】一方、ステップS199において、注目ラ
インを構成するビットプレーンの全通りの並びについ
て、仮スワップ情報を生成したと判定された場合、即
ち、相関値関数形状特徴量保持部79に、注目ラインに
ついて、ビットプレーンの全通りの並びに対応する仮ス
ワップ情報と、その仮スワップ情報に対応する相関値関
数の特徴量が記憶された場合、ステップS200に進
み、最適スワップ情報選択部80は、相関値関数形状特
徴量保持部79に記憶された、各スワップパターンを表
す仮スワップ情報に対応付けられている相関値関数の特
徴量を参照することにより、同じく相関値関数形状特徴
量保持部79に記憶された仮スワップ情報の中から、急
峻な凹部を有する形状の相関値関数が得られた仮復元垂
直ラインのスワップパターンを表す仮スワップ情報を選
択し、最適スワップ情報として決定して、ビットプレー
ンスワップ部74および被埋め込みデータ保持部83に
供給する。
On the other hand, in step S199, when it is determined that the temporary swap information is generated for all the arrangements of the bit planes forming the attention line, that is, the correlation value function shape feature amount holding unit 79 Regarding, regarding the temporary swap information corresponding to the entire array of bit planes and the feature amount of the correlation value function corresponding to the temporary swap information, the process proceeds to step S200, and the optimum swap information selecting unit 80 determines the correlation value. By referring to the feature amount of the correlation value function stored in the function shape feature amount holding unit 79 and associated with the temporary swap information representing each swap pattern, the correlation value function shape feature amount holding unit 79 also stores the same. The swap pattern of the tentative restoration vertical line for which the correlation value function of the shape having a steep recess is obtained from the tentative swap information Select temporary swap information indicating the down, determined as the optimum swap information, and supplies the bit plane swapping section 74, and the embedded data holding unit 83.

【0464】即ち、ステップS200では、最適スワッ
プ情報選択部80は、相関値関数形状特徴量保持部79
に記憶された相関値関数の特徴量のうち、最小のものを
検出し、さらに、その最小の特徴量に対応付けられてい
る仮スワップ情報を選択する。そして、最適スワップ情
報選択部80は、その選択した仮スワップ情報を、相関
値関数形状特徴量保持部79から読み出し、最適スワッ
プ情報として、ビットプレーンスワップ部74および被
埋め込みデータ保持部83に供給する。
That is, in step S200, the optimum swap information selection unit 80 has the correlation value function shape feature amount storage unit 79.
The smallest one of the feature quantities of the correlation value function stored in is detected, and the temporary swap information associated with the smallest feature quantity is selected. Then, the optimum swap information selection unit 80 reads the selected temporary swap information from the correlation value function shape feature amount holding unit 79 and supplies it to the bit plane swap unit 74 and the embedded data holding unit 83 as optimum swap information. .

【0465】そして、ステップS201に進み、ビット
プレーンスワップ部74と、被埋め込みデータ保持部8
3は、最適スワップ情報に基づいて、注目ラインに対応
する第2の埋め込み符号化データの垂直ラインと、そこ
に埋め込まれていた第3の被埋め込みデータを、それぞ
れ復元する。
Then, the flow proceeds to step S201, and the bit plane swap unit 74 and the embedded data holding unit 8
3 restores the vertical line of the second embedded coded data corresponding to the line of interest and the third embedded data embedded therein, based on the optimum swap information.

【0466】即ち、ステップS201では、ビットプレ
ーンスワップ部74は、最適スワップ情報選択部80か
ら供給される最適スワップ情報に対応するスワップパタ
ーンにしたがい、注目ラインのビットプレーンをビット
プレーンスワップすることにより、第2の埋め込み符号
化データを構成する垂直ラインを復元し、埋め込み符号
化データ保持部82に供給して記憶させる。さらに、ス
テップS201では、被埋め込みデータ保持部83が、
最適スワップ情報選択部80から供給される最適スワッ
プ情報に基づき、注目ラインに埋め込まれている第3の
被埋め込みデータを復元して一時記憶する。
That is, in step S201, the bit plane swap unit 74 performs bit plane swapping on the bit plane of the line of interest according to the swap pattern corresponding to the optimal swap information supplied from the optimal swap information selecting unit 80. The vertical line forming the second embedded coded data is restored and supplied to the embedded coded data holding unit 82 for storage. Furthermore, in step S201, the embedded data holding unit 83
Based on the optimum swap information supplied from the optimum swap information selection unit 80, the third embedded data embedded in the line of interest is restored and temporarily stored.

【0467】その後、ステップS202に進み、注目ラ
イン選択部73は、入力データ保持部71に記憶された
第3の埋め込み符号化データとしての画像データのフレ
ームのすべての垂直ラインを、注目ラインとして選択し
たかどうかを判定する。ステップS202において、入
力データ保持部71に記憶された第3の埋め込み符号化
データとしての画像データのフレームのすべての垂直ラ
インを、まだ、注目ラインとして選択していないと判定
された場合、ステップS192に戻り、注目ライン選択
部73が、入力データ保持部71に記憶された第3の埋
め込み符号化データとしての1フレームの画像データの
垂直ラインのうち、まだ、注目ラインとしていない、よ
り左側の垂直ラインを、注目ラインとして選択し、以
下、上述の場合と同様の処理を繰り返す。
After that, proceeding to step S202, the attention line selection unit 73 selects all vertical lines of the frame of the image data as the third embedded coded data stored in the input data holding unit 71 as attention lines. It is determined whether or not. If it is determined in step S202 that all the vertical lines of the frame of the image data as the third embedded coded data stored in the input data holding unit 71 have not yet been selected as the line of interest, step S192 Returning to FIG. 5, the line-of-interest selecting unit 73 selects the vertical line on the left side of the vertical line of the image data of one frame as the third embedded coded data stored in the input data holding unit 71, which is not the line of interest yet. The line is selected as the line of interest, and the same process as the above case is repeated.

【0468】一方、ステップS202において、入力デ
ータ保持部71に記憶された第3の埋め込み符号化デー
タとしての画像データのフレームのすべての垂直ライン
を、注目ラインとして選択したと判定された場合、即
ち、入力データ保持部71に記憶された第3の埋め込み
符号化データとしての1フレームの画像データが、第2
の埋め込み符号化データと、そこに埋め込まれていた第
3の被埋め込みデータに復元され、その第2の埋め込み
符号化データと第3の被埋め込みデータが、埋め込み符
号化データ保持部82と被埋め込みデータ保持部83に
それぞれ記憶された場合、ステップS203に進み、埋
め込み符号化データ保持部82は、そこに記憶された第
2の埋め込み符号化データを読み出し、垂直ラインロー
テーション戻し部62(図39)に供給する。さらに、
ステップS203では、被埋め込みデータ保持部83
が、そこに記憶された第3の被埋め込みデータを読み出
して出力し、処理を終了する。
On the other hand, when it is determined in step S202 that all the vertical lines of the frame of the image data as the third embedded coded data stored in the input data holding unit 71 are selected as the target line, that is, , The image data of one frame as the third embedded coded data stored in the input data holding unit 71 is the second
Of the embedded coded data and the third embedded data embedded therein, and the second embedded coded data and the third embedded data are embedded in the embedded coded data holding unit 82 and the embedded data. When the data is stored in the data holding unit 83, the process proceeds to step S203, where the embedded coded data holding unit 82 reads the second embedded coded data stored therein, and the vertical line rotation return unit 62 (FIG. 39). Supply to. further,
In step S203, the embedded data holding unit 83
However, the third embedded data stored therein is read out and output, and the process ends.

【0469】なお、本実施の形態では、埋め込み処理に
おいて、注目ラインのビットプレーンの全通りの並びを
許可するビットプレーンスワップを行うこととしたが、
下位のビットのビットプレーンどうしの入れ替えしか行
われないようなビットプレーンスワップは禁止する(そ
のようなビットプレーンスワップを、スワップパターン
から除外する)ようにすることが可能である。
In this embodiment, in the embedding process, the bit plane swap is performed to allow all the arrangements of the bit planes of the target line.
It is possible to prohibit a bit plane swap in which bit planes of lower bits are only exchanged (exclude such a bit plane swap from the swap pattern).

【0470】即ち、垂直ラインについて、その下位ビッ
トのビットプレーンどうしのみの入れ替えを行った場合
(例えば、最下位ビットのビットプレーンと、その1ビ
ット上位のビットのビットプレーンとの入れ替えを行っ
た場合)と、ビットプレーンの入れ替えを行わない場合
においては、相関値関数に、大きな違いが現れないこと
がある。そして、この場合、急峻な凹部を有する相関値
関数の検出を誤り、埋め込み符号化データを、正しく復
元すること(元に戻すこと)ができなくなることがあ
る。
That is, in the vertical line, only the bit planes of the lower bits are exchanged (for example, when the bit plane of the least significant bit is exchanged with the bit plane of the bit one bit higher). ), And when the bit planes are not replaced, a large difference may not appear in the correlation value function. Then, in this case, the detection of the correlation value function having the steep concave portion may be erroneous, and the embedded coded data may not be restored correctly (restored).

【0471】このような復元の誤りは、下位ビットのビ
ットプレーンどうしのみの入れ替えを禁止することで防
止することができる。
Such a restoration error can be prevented by prohibiting the replacement of only the lower bit planes.

【0472】なお、上述のような復元の誤りは、垂直ラ
インについて、その下位ビットのビットプレーンどうし
のみの入れ替えを行った場合と、ビットプレーンの入れ
替えを行わない場合とで、画素値がほとんど変化しない
ことに起因する。
It should be noted that the above-mentioned restoration error causes almost no change in the pixel value between the case where the bit planes of the lower bits of the vertical line are exchanged and the case where the bit planes are not exchanged. Due to not doing.

【0473】このようなビットプレーンスワップ前と後
で、画素値の変化が少ないことに起因する復元の誤り
は、そのような画素値の変化が少ないビットプレーンス
ワップを禁止する(行わない)ようにする他、画素値を
表すバイナリコードを、0(または1)の数が同一のバ
イナリコードで表現される画素値どうしの間隔が均一に
粗になるように画素値が割り当てられたバイナリコード
に変換して、埋め込み処理および復元処理を行うことに
よっても防止することができる。
Before and after such a bit plane swap, a restoration error resulting from a small change in pixel value inhibits (does not perform) such a bit plane swap with a small change in pixel value. In addition, the binary code representing the pixel value is converted into a binary code in which the pixel value is assigned such that the intervals between the pixel values represented by the binary code having the same number of 0s (or 1s) are uniformly coarse. Then, the embedding process and the restoring process can also be performed to prevent this.

【0474】即ち、例えば、いま、説明を簡単にするた
めに、注目ラインとしての垂直ラインが1画素で構成さ
れ、その画素値が8ビットで表現されるものとする。
That is, for example, for the sake of simplicity, assume that a vertical line as a line of interest is composed of one pixel and that pixel value is represented by 8 bits.

【0475】この場合、注目ラインを構成する画素の画
素値が、例えば、「2」であるとすると、そのバイナリ
コードは、「00000010」であるから、このバイ
ナリコードをビットプレーンスワップして得られるビッ
トプレーンとしてのバイナリコードは、「000000
01」、「00000010」、「0000010
0」、「00001000」、「00010000」、
「00100000」、「01000000」、「10
000000」の8通りが存在する。
In this case, if the pixel value of the pixel forming the line of interest is, for example, "2", its binary code is "00000010", and this binary code is obtained by bit plane swapping. The binary code as a bit plane is "000000
01 "," 00000010 "," 0000010 "
0 "," 00001000 "," 00010000 ",
"001000000", "01000000", "10
There are 8 types of "000000".

【0476】そして、この8通りのバイナリコード「0
0000001」、「00000010」、「0000
0100」、「00001000」、「0001000
0」、「00100000」、「01000000」、
「10000000」が表す画素値は、それぞれ、
「1」、「2」、「4」、「8」、「16」、「3
2」、「64」、「128」であり、この8パターンの
バイナリコードに対応する画素値の間隔は、密のところ
もあれば、粗のところもある。即ち、画素値が小さい部
分では、画素値どうしの間隔は密になり、画素値が大き
い部分では、画素値どうしの間隔は粗になる。
Then, the eight binary codes "0
"0000001", "00000010", "0000"
0100 "," 00001000 "," 0001000 "
0 "," 001000000 "," 01000000 ",
The pixel value represented by "10000000" is
"1", "2", "4", "8", "16", "3"
2 "," 64 ", and" 128 ", and the intervals of the pixel values corresponding to these eight patterns of binary code are dense or coarse. That is, in a portion having a small pixel value, the intervals between the pixel values are dense, and in a portion having a large pixel value, the intervals between the pixel values are coarse.

【0477】このため、注目ラインを構成する画素値
「2」のように、間隔が密になっている画素値について
は、その下位ビットのみを入れ替えるビットプレーンス
ワップを行っても、画素値が、あまり変化しない。
Therefore, for a pixel value with a close interval such as a pixel value "2" forming the line of interest, the pixel value will not change even if bit plane swap is performed to replace only the lower bits. It doesn't change much.

【0478】即ち、例えば、画素値「2」のバイナリコ
ード「00000010」における最下位ビット(のビ
ットプレーン)と、その1ビット上位のビット(のビッ
トプレーン)とを入れ替えるビットプレーンスワップを
行うと、バイナリコード「00000001」が得られ
るが、このビットプレーンスワップ後のバイナリコード
「00000001」が表す画素値は「1」であり、ビ
ットプレーンスワップ前の画素値「2」と1しか変わら
ない。
That is, for example, if a bit plane swap is performed in which the least significant bit (the bit plane) in the binary code “00000010” of the pixel value “2” and the one bit upper bit (the bit plane) thereof are exchanged, Although the binary code “00000001” is obtained, the pixel value represented by the binary code “00000001” after the bit plane swap is “1”, and only 1 is different from the pixel value “2” before the bit plane swap.

【0479】このため、ビットプレーンスワップ前と後
の注目ラインについての相関値も、あまり差のないもの
となり、その結果、復元を誤る可能性が高くなる。
Therefore, the correlation values for the line of interest before and after the bit plane swap are not so different, and as a result, the possibility of erroneous restoration increases.

【0480】そこで、0(または1)の数が同一のバイ
ナリコードで表現される画素値どうしの間隔が均一に粗
になるように画素値が割り当てられたバイナリコード
(以下、適宜、新コードという)を採用し、注目ライン
を構成する画素の画素値を表すバイナリコード(以下、
適宜、従来コードという)を、新コードに変換すること
で、下位ビットのみを入れ替えるビットプレーンスワッ
プであっても、そのビットプレーンスワップの前と後
で、値が大きく異なる画素値を得ることが可能となる。
Therefore, a binary code (hereinafter referred to as a new code, as appropriate) in which the pixel values are assigned so that the intervals between the pixel values expressed by the same binary code in which the number of 0s (or 1s) is the same are coarse. ) Is adopted, and a binary code (hereinafter,
It is possible to obtain pixel values whose values are significantly different before and after the bit plane swap even if it is a bit plane swap in which only the lower bits are exchanged by converting the conventional code) into a new code. Becomes

【0481】即ち、図44および図45は、8ビットの
バイナリコードに関して、従来コードが表す画素値と、
新コードに割り当てられている画素値との対応関係を示
している。
That is, FIG. 44 and FIG. 45 show the pixel value represented by the conventional code for the 8-bit binary code,
The correspondence with the pixel value assigned to the new code is shown.

【0482】図44および図45において、codeの列
は、8ビットのバイナリコードとしての新コードおよび
従来コードを表し、oldの列は、codeの列におけるバイ
ナリコードを従来コードとして見た場合の、その従来コ
ードが表す画素値を表す。また、newの列は、codeの列
におけるバイナリコードを新コードとして見た場合の、
その新コードに割り当てられている画素値を表す。
In FIGS. 44 and 45, the code column represents a new code and a conventional code as an 8-bit binary code, and the old column represents the binary code in the code column as a conventional code. It represents the pixel value represented by the conventional code. In addition, the new column shows the binary code in the code column as a new code,
It represents the pixel value assigned to the new code.

【0483】新コードについては、0または1の数が同
一の新コードに対して、各新コードに対応する画素値ど
うしの間隔が、均一で、かつ、なるべく粗になるよう
に、画素値が割り当てられており、その結果、下位ビッ
トのみを入れ替えるビットプレーンスワップであって
も、そのビットプレーンスワップの前と後で、値が大き
く異なる画素値を得ることができるようになっている。
Regarding the new code, the pixel values of the new code having the same number of 0s or 1s are set so that the intervals between the pixel values corresponding to the new codes are uniform and are as coarse as possible. As a result, even in a bit plane swap in which only the lower bits are exchanged, it is possible to obtain pixel values whose values are significantly different before and after the bit plane swap.

【0484】即ち、図46は、図44および図46にお
ける8ビットの新コードのうち、「1」が6ビットだけ
のもの(従って、「0」が2ビットだけのもの)の並び
の全28パターンと、対応する画素値とを示している。
That is, in FIG. 46, among the new 8-bit codes shown in FIGS. 44 and 46, all of the arrangements of those in which “1” is only 6 bits (thus, “0” is only 2 bits) 28 The pattern and the corresponding pixel value are shown.

【0485】例えば、図46の上から6番目のバイナリ
コード「01111101」と、7番目のバイナリコー
ド「01111110」とは、その最下位ビットとその
1ビット上位のビットとを入れ替えた関係にあるが、従
来コードでは、それぞれ、画素値「125」と「12
6」を表すから、その差は1しかない。
For example, the sixth binary code “01111101” and the seventh binary code “01111110” in FIG. 46 have a relationship in which the least significant bit and the one bit higher bit are interchanged. , In the conventional code, the pixel values are "125" and "12", respectively.
6 ", the difference is only 1.

【0486】これに対して、バイナリコード「0111
1101」と、「01111110」とは、新コードで
は、図46に示すように、それぞれ、画素値「49」と
「62」を表すから、その差は13となる。
On the other hand, the binary code "0111"
In the new code, “1101” and “01111110” represent pixel values “49” and “62”, respectively, so the difference is 13.

【0487】従って、新コードによれば、ビットプレー
ンスワップの前と後で、値が大きく異なる画素値を得る
ことが可能となり、埋め込み処理および復元処理を、新
コードを採用して行うことによって、ビットプレーンス
ワップの前と後で画素値があまり変化しないことに起因
する復元の誤りを防止することができる。
Therefore, according to the new code, it is possible to obtain pixel values having greatly different values before and after the bit plane swap, and the embedding process and the restoration process are performed by using the new code, It is possible to prevent a restoration error due to the pixel value not changing much before and after the bit plane swap.

【0488】次に、上述した一連の処理は、ハードウェ
アにより行うこともできるし、ソフトウェアにより行う
こともできる。一連の処理をソフトウェアによって行う
場合には、そのソフトウェアを構成するプログラムが、
汎用のコンピュータ等にインストールされる。
Next, the series of processes described above can be performed by hardware or software. When performing a series of processing by software, the program that constitutes the software,
It is installed on a general-purpose computer or the like.

【0489】そこで、図47は、上述した一連の処理を
実行するプログラムがインストールされるコンピュータ
の一実施の形態の構成例を示している。
Therefore, FIG. 47 shows a configuration example of an embodiment of a computer in which a program for executing the series of processes described above is installed.

【0490】プログラムは、コンピュータに内蔵されて
いる記録媒体としてのハードディスク105やROM1
03に予め記録しておくことができる。
The program is stored in the hard disk 105 or the ROM 1 as a recording medium built in the computer.
03 can be recorded in advance.

【0491】あるいはまた、プログラムは、フレキシブ
ルディスク、CD-ROM(Compact DiscRead Only Memory),
MO(Magneto Optical)ディスク,DVD(Digital Versatile
Disc)、磁気ディスク、半導体メモリなどのリムーバブ
ル記録媒体111に、一時的あるいは永続的に格納(記
録)しておくことができる。このようなリムーバブル記
録媒体111は、いわゆるパッケージソフトウエアとし
て提供することができる。
Alternatively, the program is a flexible disk, a CD-ROM (Compact Disc Read Only Memory),
MO (Magneto Optical) disc, DVD (Digital Versatile)
Disc), magnetic disk, semiconductor memory, or other removable recording medium 111 can be stored (recorded) temporarily or permanently. Such removable recording medium 111 can be provided as so-called package software.

【0492】なお、プログラムは、上述したようなリム
ーバブル記録媒体111からコンピュータにインストー
ルする他、ダウンロードサイトから、ディジタル衛星放
送用の人工衛星を介して、コンピュータに無線で転送し
たり、LAN(Local Area Network)、インターネットとい
ったネットワークを介して、コンピュータに有線で転送
し、コンピュータでは、そのようにして転送されてくる
プログラムを、通信部108で受信し、内蔵するハード
ディスク105にインストールすることができる。
The program is installed in the computer from the removable recording medium 111 as described above, and is also wirelessly transferred from the download site to the computer via an artificial satellite for digital satellite broadcasting or LAN (Local Area). Network), via a network such as the Internet, and transferred to a computer by wire. In the computer, the program thus transferred can be received by the communication unit 108 and installed in the built-in hard disk 105.

【0493】コンピュータは、CPU(Central Processing
Unit)102を内蔵している。CPU102には、バス1
01を介して、入出力インタフェース110が接続され
ており、CPU102は、入出力インタフェース110を
介して、ユーザによって、キーボードや、マウス、マイ
ク等で構成される入力部107が操作等されることによ
り指令が入力されると、それにしたがって、ROM(Read O
nly Memory)103に格納されているプログラムを実行
する。あるいは、また、CPU102は、ハードディスク
105に格納されているプログラム、衛星若しくはネッ
トワークから転送され、通信部108で受信されてハー
ドディスク105にインストールされたプログラム、ま
たはドライブ109に装着されたリムーバブル記録媒体
111から読み出されてハードディスク105にインス
トールされたプログラムを、RAM(Random Access Memor
y)104にロードして実行する。これにより、CPU10
2は、上述したフローチャートにしたがった処理、ある
いは上述したブロック図の構成により行われる処理を行
う。そして、CPU102は、その処理結果を、必要に応
じて、例えば、入出力インタフェース110を介して、
LCD(Liquid CryStal Display)やスピーカ等で構成され
る出力部106から出力、あるいは、通信部108から
送信、さらには、ハードディスク105に記録等させ
る。
The computer is a CPU (Central Processing).
Unit) 102 is built in. CPU 102 has a bus 1
The input / output interface 110 is connected via 01, and the CPU 102 causes the user to operate the input unit 107 including a keyboard, a mouse, a microphone, etc. via the input / output interface 110. When a command is input, the ROM (Read O
nly Memory) 103 executes the program stored in it. Alternatively, the CPU 102 may execute a program stored in the hard disk 105, a program transferred from a satellite or a network, received by the communication unit 108 and installed in the hard disk 105, or a removable recording medium 111 mounted in the drive 109. The program read out and installed in the hard disk 105 is loaded into the RAM (Random Access Memor
y) Load in 104 and execute. As a result, the CPU 10
2 performs processing according to the above-described flowchart or processing performed by the configuration of the above-described block diagram. Then, the CPU 102 sends the processing result to the processing result as needed, for example, via the input / output interface 110.
The data is output from the output unit 106 configured by an LCD (Liquid CryStal Display), a speaker, or the like, or transmitted from the communication unit 108, and further recorded on the hard disk 105.

【0494】ここで、本明細書において、コンピュータ
に各種の処理を行わせるためのプログラムを記述する処
理ステップは、必ずしもフローチャートとして記載され
た順序に沿って時系列に処理する必要はなく、並列的あ
るいは個別に実行される処理(例えば、並列処理あるい
はオブジェクトによる処理)も含むものである。
Here, in the present specification, the processing steps for writing a program for causing a computer to perform various processes do not necessarily have to be processed in time series in the order described in the flow chart, but in parallel. Alternatively, it also includes processes that are executed individually (for example, parallel processes or processes by objects).

【0495】また、プログラムは、1のコンピュータに
より処理されるものであっても良いし、複数のコンピュ
ータによって分散処理されるものであっても良い。さら
に、プログラムは、遠方のコンピュータに転送されて実
行されるものであっても良い。
Further, the program may be processed by one computer or may be processed in a distributed manner by a plurality of computers. Further, the program may be transferred to a remote computer and executed.

【0496】なお、被埋め込みデータは、特に限定され
るものではなく、例えば、画像データや、音声データ、
テキスト、コンピュータプログラム、制御信号、その他
のデータを、被埋め込みデータとして用いることが可能
である。
The embedded data is not particularly limited, and includes, for example, image data, audio data,
Text, computer programs, control signals, and other data can be used as embedded data.

【0497】また、本実施の形態では、埋め込み対象デ
ータとして画像データを採用し、被埋め込みデータを、
その画像データに埋め込むようにしたが、埋め込み対象
データとしては、その他、例えば、音声データ等を採用
することも可能である。即ち、例えば、時系列の音声デ
ータを、適当なフレームに区切り、各フレームの音声デ
ータを、被埋め込みデータにしたがって入れ替えること
で、被埋め込みデータを、音声に埋め込むことが可能で
ある。
Further, in the present embodiment, image data is adopted as the embedding target data, and the embedding data is
Although it is embedded in the image data, it is also possible to adopt, for example, audio data or the like as the embedding target data. That is, for example, the embedded data can be embedded in the audio by dividing the time-series audio data into appropriate frames and replacing the audio data of each frame according to the embedded data.

【0498】さらに、本実施の形態では、埋め込み対象
データの水平ラインをローテーションし、さらに、垂直
ラインをローテーションして得られる第2の埋め込み符
号化データに対して、ビットプレーンスワップ方式によ
り、第3の被埋め込みデータを埋め込むようにしたが、
その他、第3の被埋め込みデータは、埋め込み対象デー
タの水平ラインまたは垂直ラインのいずれか一方のみを
ローテーションして得られる埋め込み符号化データに対
して埋め込むことも可能である。
Furthermore, in the present embodiment, the horizontal line of the embedding target data is rotated, and further the second embedded coded data obtained by rotating the vertical line is subjected to the third by the bit plane swap method. I embedded the embedded data of
In addition, the third embedded data can be embedded in the embedded coded data obtained by rotating only one of the horizontal line and the vertical line of the embedding target data.

【0499】また、本実施の形態では、ラインローテー
ション方式による埋め込みを行い、さらに、ビットプレ
ーンスワップ方式による埋め込みを行うことで、より多
くの被埋め込みデータを埋め込むようにしたが、その逆
の順番で埋め込みを行うようにすることも可能である。
さらに、このような多くの被埋め込みデータの埋め込み
は、その他の任意の2つの方式の埋め込みを採用するこ
とで行うことが可能である。さらに、埋め込みは、3以
上の複数の方式を採用して行うことも可能である。但
し、採用する複数の方式の埋め込みは、上述したよう
に、その埋め込みのための操作として、重複する操作を
有しないものであることが望ましい。
Further, in the present embodiment, the embedding by the line rotation method and the embedding by the bit plane swap method are performed to embed more embedded data, but in the reverse order. It is also possible to embed.
Further, such a large amount of embedded data can be embedded by employing the embedding of any other two methods. Further, the embedding can be performed by using a plurality of methods of 3 or more. However, as described above, it is desirable that the embedding of a plurality of methods to be adopted does not have an overlapping operation as an operation for embedding.

【0500】[0500]

【発明の効果】本発明の第1のデータ処理装置およびデ
ータ処理方法、並びにプログラムおよび記録媒体によれ
ば、情報が有するエネルギの偏りを利用して他の情報が
埋め込まれた情報が元の情報に復元されるように操作を
行う第1の操作ルールにしたがい、埋め込み対象データ
が、任意の被埋め込みデータに対応して操作され、埋め
込み対象データに任意の被埋め込みデータを埋め込んだ
第1の操作ルールによる埋め込み符号化データが生成さ
れる。そして、第1の操作ルールとは異なる第2の操作
ルールにしたがい、第1の操作ルールによる埋め込み符
号化データが、他の任意の被埋め込みデータに対応して
操作され、第1の操作ルールによる埋め込み符号化デー
タに他の任意の被埋め込みデータを埋め込んだ第2の操
作ルールによる埋め込み符号化データが生成される。従
って、より多くの被埋め込みデータを埋め込むことが可
能となる。
According to the first data processing device, data processing method, program, and recording medium of the present invention, the information in which other information is embedded is utilized as the original information by utilizing the energy bias of the information. The first operation in which the embedding target data is manipulated corresponding to the arbitrary embedded data according to the first operation rule for performing the operation so that the embedded data is embedded in the embedding target data. Embedded coded data according to the rule is generated. Then, according to the second operation rule different from the first operation rule, the embedded coded data according to the first operation rule is operated corresponding to any other embedded data, and the first operation rule is applied. The embedded coded data according to the second operation rule is generated by embedding other arbitrary embedded data in the embedded coded data. Therefore, it becomes possible to embed more embedded data.

【0501】本発明の第2のデータ処理装置およびデー
タ処理方法、並びにプログラムおよび記録媒体によれ
ば、第2の操作ルールによる埋め込み符号化データが、
第2の操作ルールにしたがって操作されるとともに、第
1の操作ルールにしたがって操作され、その操作によっ
て得られるデータのエネルギの偏りを利用して、第1の
操作ルールによる埋め込み符号化データと他の任意の被
埋め込みデータが復元される。そして、第1の操作ルー
ルによる埋め込み符号化データが、第1の操作ルールに
したがって操作され、その操作によって得られるデータ
のエネルギの偏りを利用して、埋め込み対象データと任
意の被埋め込みデータが復元される。従って、より多く
の被埋め込みデータが埋め込まれた埋め込み符号化デー
タを、元の埋め込み対象データと被埋め込みデータに復
元することが可能となる。
According to the second data processing apparatus and data processing method, and the program and recording medium of the present invention, the embedded coded data according to the second operation rule is
In addition to being operated according to the second operation rule, the operation is performed according to the first operation rule, and by utilizing the energy bias of the data obtained by the operation, the embedded coded data and other Any embedded data is restored. Then, the embedded coded data according to the first operation rule is operated according to the first operation rule, and the embedding target data and any embedded data are restored by utilizing the energy bias of the data obtained by the operation. To be done. Therefore, it becomes possible to restore the embedded coded data in which more embedded data is embedded, to the original embedding target data and the embedded data.

【図面の簡単な説明】[Brief description of drawings]

【図1】ラインローテーション方式による埋め込み処理
と復元処理の概要を説明する図である。
FIG. 1 is a diagram illustrating an outline of an embedding process and a restoring process by a line rotation method.

【図2】埋め込み符号化/復元システムの一実施の形態
の構成例を示すブロック図である。
FIG. 2 is a block diagram showing a configuration example of an embodiment of an embedded coding / restoration system.

【図3】埋め込み符号化器3の構成例を示すブロック図
である。
FIG. 3 is a block diagram showing a configuration example of an embedded encoder 3.

【図4】復元器6の構成例を示すブロック図である。FIG. 4 is a block diagram showing a configuration example of a restorer 6.

【図5】埋め込み対象データとしての画像データを示す
図である。
FIG. 5 is a diagram showing image data as embedding target data.

【図6】相関性を利用した埋め込み/復元を説明するた
めの図である。
FIG. 6 is a diagram for explaining embedding / restoration using correlation.

【図7】相関性を利用した埋め込み/復元を説明するた
めの図である。
FIG. 7 is a diagram for explaining embedding / restoration using correlation.

【図8】埋め込み処理を説明するフローチャートであ
る。
FIG. 8 is a flowchart illustrating an embedding process.

【図9】復元処理を説明するフローチャートである。FIG. 9 is a flowchart illustrating a restoration process.

【図10】連続性を利用した埋め込み/復元を説明する
図である。
FIG. 10 is a diagram illustrating embedding / restoration using continuity.

【図11】埋め込み処理を説明するフローチャートであ
る。
FIG. 11 is a flowchart illustrating an embedding process.

【図12】埋め込み処理および復元処理を説明する図で
ある。
FIG. 12 is a diagram illustrating embedding processing and restoration processing.

【図13】復元処理を説明するフローチャートである。FIG. 13 is a flowchart illustrating a restoration process.

【図14】相似性を利用した埋め込み/復元を説明する
ための図である。
FIG. 14 is a diagram for explaining embedding / restoration using similarity.

【図15】相似性を利用した埋め込み/復元を説明する
ための図である。
FIG. 15 is a diagram for explaining embedding / restoration using similarity.

【図16】埋め込み処理を説明するフローチャートであ
る。
FIG. 16 is a flowchart illustrating an embedding process.

【図17】埋め込み処理および復元処理を説明する図で
ある。
FIG. 17 is a diagram illustrating embedding processing and restoration processing.

【図18】復元処理を説明するフローチャートである。FIG. 18 is a flowchart illustrating a restoration process.

【図19】埋め込み処理を説明するためのフローチャー
トである。
FIG. 19 is a flowchart illustrating an embedding process.

【図20】復元処理を説明するためのフローチャートで
ある。
FIG. 20 is a flowchart illustrating a restoration process.

【図21】ビットプレーンスワップ方式による埋め込み
処理を説明するための図である。
FIG. 21 is a diagram for explaining embedding processing by the bit plane swap method.

【図22】埋め込み処理を説明するためのフローチャー
トである。
FIG. 22 is a flowchart illustrating an embedding process.

【図23】ビットプレーンの相関の計算方法を説明する
ための図である。
[Fig. 23] Fig. 23 is a diagram for describing a method of calculating a bit-plane correlation.

【図24】ビットプレーンスワップ方式による復元処理
を説明するための図である。
[Fig. 24] Fig. 24 is a diagram for describing restoration processing by the bit plane swap method.

【図25】復元処理を説明するためのフローチャートで
ある。
FIG. 25 is a flowchart illustrating a restoration process.

【図26】埋め込み処理を説明するためのフローチャー
トである。
FIG. 26 is a flowchart illustrating an embedding process.

【図27】ローテーションを説明するための図である。FIG. 27 is a diagram for explaining rotation.

【図28】埋め込み処理の結果を説明するための図であ
る。
FIG. 28 is a diagram for explaining a result of embedding processing.

【図29】ラインローテーション方式による復元処理を
説明するための図である。
[Fig. 29] Fig. 29 is a diagram for describing restoration processing by the line rotation method.

【図30】復元処理を説明するためのフローチャートで
ある。
FIG. 30 is a flowchart illustrating a restoration process.

【図31】水平ラインと垂直ラインの両方をローテーシ
ョンする埋め込み処理と復元処理を説明する図である。
FIG. 31 is a diagram for explaining embedding processing and rotation processing for rotating both horizontal and vertical lines.

【図32】相関値関数を利用して復元可能な埋め込み処
理と復元処理を説明する図である。
[Fig. 32] Fig. 32 is a diagram for describing embedding processing and restoration processing that can be restored using a correlation value function.

【図33】実際の画像の相関値関数を示す図である。FIG. 33 is a diagram showing a correlation value function of an actual image.

【図34】埋め込み部22の構成例を示すブロック図で
ある。
FIG. 34 is a block diagram showing a configuration example of an embedding unit 22.

【図35】埋め込み部22による埋め込み処理を説明す
るフローチャートである。
FIG. 35 is a flowchart illustrating an embedding process performed by the embedding unit 22.

【図36】ビットプレーンスワップ埋め込み部43の処
理を説明するための図である。
FIG. 36 is a diagram for explaining the processing of the bit plane swap embedding unit 43.

【図37】ビットプレーンスワップ埋め込み部43の構
成例を示すブロック図である。
FIG. 37 is a block diagram showing a configuration example of a bit plane swap embedding unit 43.

【図38】ビットプレーンスワップ埋め込み部43の処
理を説明するフローチャートである。
FIG. 38 is a flowchart illustrating a process of a bit plane swap embedding unit 43.

【図39】復元部32の構成例を示すブロック図であ
る。
[Fig. 39] Fig. 39 is a block diagram illustrating a configuration example of the restoration unit 32.

【図40】復元部32の処理を説明するフローチャート
である。
FIG. 40 is a flowchart illustrating the processing of the restoration unit 32.

【図41】ビットプレーンスワップ戻し部61の処理を
説明するための図である。
FIG. 41 is a diagram for explaining the processing of the bit plane swap return unit 61.

【図42】ビットプレーンスワップ戻し部61の構成例
を示すブロック図である。
[Fig. 42] Fig. 42 is a block diagram illustrating a configuration example of a bit plane swap returning unit 61.

【図43】ビットプレーンスワップ戻し部61の処理を
説明するフローチャートである。
[Fig. 43] Fig. 43 is a flowchart illustrating a process of a bit plane swap return unit 61.

【図44】新コードと画素値との対応関係を示す図であ
る。
FIG. 44 is a diagram showing a correspondence relationship between a new code and a pixel value.

【図45】新コードと画素値との対応関係を示す図であ
る。
FIG. 45 is a diagram showing a correspondence relationship between a new code and a pixel value.

【図46】新コードと画素値との対応関係を示す図であ
る。
FIG. 46 is a diagram showing a correspondence relationship between a new code and a pixel value.

【図47】本発明を適用したコンピュータの一実施の形
態の構成例を示すブロック図である。
FIG. 47 is a block diagram showing a configuration example of an embodiment of a computer to which the present invention has been applied.

【符号の説明】[Explanation of symbols]

1 埋め込み対象データベース, 2 被埋め込みデー
タベース, 3 埋め込み符号化器, 4 記録媒体,
5 伝送媒体, 6 復元器, 11 符号化装置,
12 復号装置, 21 フレームメモリ, 22
埋め込み部,31 フレームメモリ, 32 復元部,
41 水平ラインローテーション埋め込み部, 42
垂直ラインローテーション埋め込み部, 43 ビッ
トプレーンスワップ埋め込み部, 51 入力データ保
持部, 52 注目ライン選択部, 53 被埋め込み
データ保持部, 54 スワップ情報取得部, 55ビ
ットプレーンスワップ部, 61 ビットプレーンスワ
ップ戻し部, 62垂直ラインローテーション戻し部,
63 水平ラインローテーション戻し部,71 入力
データ保持部, 72 基準ライン選択部, 73 注
目ライン選択部, 74 ビットプレーンスワップ部,
75 ラインローテーション部,76 垂直ライン間
相関値計算部, 77 相関値保持部, 78 相関値
関数形状特徴量計算部, 79 相関値形状特徴量保持
部, 80 最適スワップ情報選択部, 81 仮スワ
ップ情報決定部, 82 埋め込み符号化データ保持
部, 83 被埋め込みデータ保持部, 101 バ
ス, 102 CPU,103 ROM, 104 RAM,
105 ハードディスク, 106 出力部,107
入力部, 108 通信部, 109 ドライブ, 1
10 入出力インタフェース, 111 リムーバブル
記録媒体
1 embedded database, 2 embedded database, 3 embedded encoder, 4 recording medium,
5 transmission medium, 6 decompressor, 11 coding device,
12 decoding device, 21 frame memory, 22
Embedded section, 31 frame memory, 32 restoration section,
41 horizontal line rotation embedded part, 42
Vertical line rotation embedding unit, 43-bit plane swap embedding unit, 51 input data holding unit, 52 target line selection unit, 53 embedded data holding unit, 54 swap information acquisition unit, 55-bit plane swap unit, 61-bit plane swap returning unit , 62 vertical line rotation return part,
63 horizontal line rotation return unit, 71 input data holding unit, 72 reference line selection unit, 73 line of interest selection unit, 74 bit plane swap unit,
75 line rotation unit, 76 vertical line correlation value calculation unit, 77 correlation value holding unit, 78 correlation value function shape feature amount calculation unit, 79 correlation value shape feature amount holding unit, 80 optimum swap information selection unit, 81 temporary swap information Deciding unit, 82 embedded coded data holding unit, 83 embedded data holding unit, 101 bus, 102 CPU, 103 ROM, 104 RAM,
105 hard disk, 106 output unit, 107
Input section, 108 Communication section, 109 drive, 1
10 I / O interface, 111 Removable recording medium

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) H04N 7/081 Fターム(参考) 5B057 CB19 CE08 CG01 CH01 CH11 5C063 AB07 DA01 DA13 DB09 5C076 AA14 AA24 BA06 BA09 5D044 AB07 DE02 DE50 EF05 EF10 GK12 GK17 5J064 AA01 BA09 BA16 BB01 BC01 BC27 BD02 BD03 ─────────────────────────────────────────────────── ─── Continued Front Page (51) Int.Cl. 7 Identification Code FI Theme Coat (Reference) H04N 7/081 F Term (Reference) 5B057 CB19 CE08 CG01 CH01 CH11 5C063 AB07 DA01 DA13 DB09 5C076 AA14 AA24 BA06 BA09 5D044 AB07 DE02 DE50 EF05 EF10 GK12 GK17 5J064 AA01 BA09 BA16 BB01 BC01 BC27 BD02 BD03

Claims (24)

【特許請求の範囲】[Claims] 【請求項1】 データを埋め込む対象である埋め込み対
象データを操作することにより、前記埋め込み対象デー
タに埋め込まれる被埋め込みデータを前記埋め込み対象
データに埋め込み、前記被埋め込みデータを前記埋め込
み対象データに埋め込んだ埋め込み符号化データを出力
するデータ処理装置であって、 情報が有するエネルギの偏りを利用して他の情報が埋め
込まれた前記情報が元の情報に復元されるように操作を
行う第1の操作ルールにしたがい、前記埋め込み対象デ
ータを、任意の被埋め込みデータに対応して操作し、前
記埋め込み対象データに前記任意の被埋め込みデータを
埋め込んだ第1の操作ルールによる埋め込み符号化デー
タを生成する第1の埋め込み手段と、 前記第1の操作ルールとは異なる第2の操作ルールにし
たがい、前記第1の操作ルールによる埋め込み符号化デ
ータを、他の任意の被埋め込みデータに対応して操作
し、前記第1の操作ルールによる埋め込み符号化データ
に前記他の任意の被埋め込みデータを埋め込んだ第2の
操作ルールによる埋め込み符号化データを生成する第2
の埋め込み手段とを備えることを特徴とするデータ処理
装置。
1. The embedded data to be embedded in the embedding target data is embedded in the embedding target data by manipulating the embedding target data that is the target for embedding data. A data processing apparatus for outputting embedded coded data, the first operation performing an operation so that the information having the other information embedded therein is restored to the original information by utilizing the energy bias of the information. According to a rule, the embedding target data is operated corresponding to arbitrary embedded data, and embedded coded data according to a first operation rule in which the arbitrary embedding data is embedded in the embedding target data is generated. 1 embedding means and a second operation rule different from the first operation rule , Operating the embedded coded data according to the first operation rule corresponding to any other embedded data, and embedding the other arbitrary embedded data into the embedded coded data according to the first operation rule Second, the embedded coded data is generated according to the second operation rule.
A data processing device comprising:
【請求項2】 前記第1と第2の操作ルールは、重複す
る操作が存在しない操作ルールであることを特徴とする
請求項1に記載のデータ処理装置。
2. The data processing apparatus according to claim 1, wherein the first and second operation rules are operation rules in which there is no overlapping operation.
【請求項3】 前記埋め込み対象データは、画像データ
であることを特徴とする請求項1に記載のデータ処理装
置。
3. The data processing apparatus according to claim 1, wherein the embedding target data is image data.
【請求項4】 前記第1の操作ルールは、前記画像デー
タの相関性を利用して前記第1の操作ルールによる埋め
込み符号化データが前記画像データに復元される操作ル
ールであることを特徴とする請求項3に記載のデータ処
理装置。
4. The first operation rule is an operation rule in which the embedded coded data according to the first operation rule is restored to the image data by utilizing the correlation of the image data. The data processing device according to claim 3.
【請求項5】 前記第1と2の操作ルールのうちの一方
は、画像データを構成する画素の位置を、空間または時
間方向に操作する操作ルールであり、前記第1と2の操
作ルールのうちの他方は、画像データを構成する画素を
レベル方向に操作する操作ルールであることを特徴とす
る請求項3に記載のデータ処理装置。
5. One of the first and second operation rules is an operation rule for operating a position of a pixel forming image data in a space or a time direction, and the one of the first and second operation rules. 4. The data processing apparatus according to claim 3, wherein the other one is an operation rule for operating a pixel forming image data in a level direction.
【請求項6】 前記第1の埋め込み手段は、前記画像デ
ータにおける所定方向に並ぶ画素列を、前記任意の被埋
め込みデータに対応する分だけ、前記所定方向にローテ
ーションすることを、前記第1の操作ルールとして、前
記画像データに前記任意の被埋め込みデータを埋め込ん
だ前記第1の操作ルールによる埋め込み符号化データを
生成することを特徴とする請求項3に記載のデータ処理
装置。
6. The first embedding means rotates the pixel rows arranged in a predetermined direction in the image data in the predetermined direction by an amount corresponding to the arbitrary embedded data. 4. The data processing apparatus according to claim 3, wherein as the operation rule, embedded coded data according to the first operation rule in which the arbitrary embedded data is embedded in the image data is generated.
【請求項7】 前記第2の埋め込み手段は、前記画像デ
ータにおける所定方向に並ぶ画素列を前記所定方向にロ
ーテーションすることにならない操作を行う操作ルール
を、前記第2の操作ルールとして、前記第1の操作ルー
ルによる埋め込み符号化データに前記他の任意の被埋め
込みデータを埋め込んだ前記第2の操作ルールによる埋
め込み符号化データを生成することを特徴とする請求項
6に記載のデータ処理装置。
7. The second embedding means uses, as the second operation rule, an operation rule for performing an operation that does not rotate a pixel row arranged in a predetermined direction in the image data in the predetermined direction. 7. The data processing apparatus according to claim 6, wherein the embedded coded data according to the second operation rule is generated by embedding the other arbitrary embedded data in the embedded coded data according to the first operation rule.
【請求項8】 前記第2の埋め込み手段は、前記第1の
操作ルールによる埋め込み符号化データとされた前記画
像データの複数の画素の画素値を表すビット列の各ビッ
トごとのビットプレーンを、前記他の任意の被埋め込み
データに対応して入れ替えるビットプレーンスワップを
行うことを、前記第2の操作ルールとして、前記第1の
操作ルールによる埋め込み符号化データに前記他の任意
の被埋め込みデータを埋め込んだ前記第2の操作ルール
による埋め込み符号化データを生成することを特徴とす
る請求項7に記載のデータ処理装置。
8. The second embedding means defines a bit plane for each bit of a bit string representing pixel values of a plurality of pixels of the image data, which is embedded coded data according to the first operation rule, As the second operation rule, performing bit-plane swapping for replacement with other arbitrary embedded data is performed by embedding the other arbitrary embedded data in the embedded coded data according to the first operation rule. The data processing device according to claim 7, wherein the embedded coded data is generated according to the second operation rule.
【請求項9】 前記第1の埋め込み手段は、前記画像デ
ータを、第1の被埋め込みデータに対応して、水平また
は垂直方向のうちのいずれか1つの方向にローテーショ
ンすることにより、前記画像データに対して、前記第1
の被埋め込みデータを埋め込んだ第1の埋め込み符号化
データを生成し、さらに、前記第1の埋め込み符号化デ
ータを、第2の被埋め込みデータに対応して、水平また
は垂直方向の垂直方向のうちの他の方向にローテーショ
ンすることにより、前記第1の埋め込み符号化データに
対して、前記第2の被埋め込みデータを埋め込んだ第2
の埋め込み符号化データを生成し、 前記第2の埋め込み手段は、前記第2の埋め込み符号化
データを、第3の被埋め込みデータに対応してビットプ
レーンスワップすることにより、前記第2の埋め込み符
号化データに対して、前記第3の被埋め込みデータを埋
め込んだ第3の埋め込み符号化データを生成することを
特徴とする請求項8に記載のデータ処理装置。
9. The first embedding means rotates the image data in either one of a horizontal direction and a vertical direction in correspondence with the first embedding data to thereby generate the image data. Against the first
First embedded coded data in which the embedded data is embedded, and the first embedded coded data is generated in the horizontal or vertical direction corresponding to the second embedded data. By rotating the second embedded data into the first embedded encoded data by rotating the second embedded data into the second embedded data.
Embedded code data is generated, and the second embedding means performs bit plane swapping of the second embedded coded data corresponding to third embedded data to thereby generate the second embedded code. 9. The data processing device according to claim 8, wherein third embedded coded data in which the third embedded data is embedded is generated for the encoded data.
【請求項10】 データを埋め込む対象である埋め込み
対象データを操作することにより、前記埋め込み対象デ
ータに埋め込まれる被埋め込みデータを前記埋め込み対
象データに埋め込み、前記被埋め込みデータを前記埋め
込み対象データに埋め込んだ埋め込み符号化データを出
力するデータ処理方法であって、 情報が有するエネルギの偏りを利用して他の情報が埋め
込まれた前記情報が元の情報に復元されるように操作を
行う第1の操作ルールにしたがい、前記埋め込み対象デ
ータを、任意の被埋め込みデータに対応して操作し、前
記埋め込み対象データに前記任意の被埋め込みデータを
埋め込んだ第1の操作ルールによる埋め込み符号化デー
タを生成する第1の埋め込みステップと、 前記第1の操作ルールとは異なる第2の操作ルールにし
たがい、前記第1の操作ルールによる埋め込み符号化デ
ータを、他の任意の被埋め込みデータに対応して操作
し、前記第1の操作ルールによる埋め込み符号化データ
に前記他の任意の被埋め込みデータを埋め込んだ第2の
操作ルールによる埋め込み符号化データを生成する第2
の埋め込みステップとを備えることを特徴とするデータ
処理方法。
10. The embedded data to be embedded in the embedding target data is embedded in the embedding target data by manipulating the embedding target data that is a target for embedding data, and the embedded data is embedded in the embedding target data. A data processing method for outputting embedded coded data, the first operation performing an operation such that the information in which other information is embedded is restored to the original information by utilizing a bias of energy contained in the information. According to a rule, the embedding target data is operated corresponding to arbitrary embedded data, and embedded coded data according to a first operation rule in which the arbitrary embedding data is embedded in the embedding target data is generated. 1 embedding step and a second operation rule different from the first operation rule. Therefore, the embedded coded data according to the first operation rule is manipulated in correspondence with any other embedded data, and the embedded coded data according to the first operation rule is subjected to the other arbitrary embedded data. Second generation of embedded coded data according to the embedded second operation rule
And a step of embedding the data.
【請求項11】 データを埋め込む対象である埋め込み
対象データを操作することにより、前記埋め込み対象デ
ータに埋め込まれる被埋め込みデータを前記埋め込み対
象データに埋め込み、前記被埋め込みデータを前記埋め
込み対象データに埋め込んだ埋め込み符号化データを出
力するデータ処理を、コンピュータに行わせるプログラ
ムであって、 情報が有するエネルギの偏りを利用して他の情報が埋め
込まれた前記情報が元の情報に復元されるように操作を
行う第1の操作ルールにしたがい、前記埋め込み対象デ
ータを、任意の被埋め込みデータに対応して操作し、前
記埋め込み対象データに前記任意の被埋め込みデータを
埋め込んだ第1の操作ルールによる埋め込み符号化デー
タを生成する第1の埋め込みステップと、 前記第1の操作ルールとは異なる第2の操作ルールにし
たがい、前記第1の操作ルールによる埋め込み符号化デ
ータを、他の任意の被埋め込みデータに対応して操作
し、前記第1の操作ルールによる埋め込み符号化データ
に前記他の任意の被埋め込みデータを埋め込んだ第2の
操作ルールによる埋め込み符号化データを生成する第2
の埋め込みステップとを備えることを特徴とするプログ
ラム。
11. The embedded data to be embedded in the embedding target data is embedded in the embedding target data by manipulating the embedding target data that is the target for embedding data. A program for causing a computer to perform data processing for outputting embedded coded data, which is operated so that the information embedded with other information is restored to the original information by utilizing the energy bias of the information. Embedded code according to a first operation rule in which the embedding target data is manipulated corresponding to arbitrary embedded data according to a first operation rule for performing, and the arbitrary embedding data is embedded in the embedding target data. Embedding data to generate a first embedding step, and the first operation rule. According to a second operation rule different from that of the first operation rule, the embedded coded data according to the first operation rule is operated corresponding to any other embedded data, and the embedded coded data according to the first operation rule is operated. A second operation for generating embedded coded data according to a second operation rule in which the other arbitrary embedded data is embedded
And a step of embedding the program.
【請求項12】 データを埋め込む対象である埋め込み
対象データを操作することにより、前記埋め込み対象デ
ータに埋め込まれる被埋め込みデータを前記埋め込み対
象データに埋め込み、前記被埋め込みデータを前記埋め
込み対象データに埋め込んだ埋め込み符号化データを出
力するデータ処理を、コンピュータに行わせるプログラ
ムが記録されている記録媒体であって、 情報が有するエネルギの偏りを利用して他の情報が埋め
込まれた前記情報が元の情報に復元されるように操作を
行う第1の操作ルールにしたがい、前記埋め込み対象デ
ータを、任意の被埋め込みデータに対応して操作し、前
記埋め込み対象データに前記任意の被埋め込みデータを
埋め込んだ第1の操作ルールによる埋め込み符号化デー
タを生成する第1の埋め込みステップと、 前記第1の操作ルールとは異なる第2の操作ルールにし
たがい、前記第1の操作ルールによる埋め込み符号化デ
ータを、他の任意の被埋め込みデータに対応して操作
し、前記第1の操作ルールによる埋め込み符号化データ
に前記他の任意の被埋め込みデータを埋め込んだ第2の
操作ルールによる埋め込み符号化データを生成する第2
の埋め込みステップとを備えるプログラムが記録されて
いることを特徴とする記録媒体。
12. The embedded data to be embedded in the embedding target data is embedded in the embedding target data by manipulating the embedding target data that is a target for embedding data. A recording medium in which a program for causing a computer to perform data processing for outputting embedded coded data is recorded, wherein the information is the original information in which other information is embedded by utilizing the energy bias of the information. According to the first operation rule for performing the operation so as to be restored to, the embedding target data is operated corresponding to any embedded data, and the arbitrary embedding data is embedded in the embedding target data. The first embedding step for generating embedded coded data according to the first operation rule. And a second operation rule different from the first operation rule, the embedded coded data according to the first operation rule is operated corresponding to any other embedded data, Second, embedded embedded data according to the second operation rule in which the other arbitrary embedded data is embedded in embedded encoded data according to the second operation rule
And a program having a step of embedding the recording medium.
【請求項13】 データを埋め込む対象である埋め込み
対象データを操作することにより生成された、前記埋め
込み対象データに埋め込まれる被埋め込みデータを前記
埋め込み対象データに埋め込んだ埋め込み符号化データ
を、前記埋め込み対象データと被埋め込みデータに復元
するデータ処理装置であって、 情報が有するエネルギの偏りを利用して他の情報が埋め
込まれた前記情報が元の情報に復元されるように操作を
行う第1の操作ルールにしたがい、前記埋め込み対象デ
ータを、任意の被埋め込みデータに対応して操作し、前
記埋め込み対象データに前記任意の被埋め込みデータを
埋め込んだ第1の操作ルールによる埋め込み符号化デー
タを生成し、 前記第1の操作ルールとは異なる第2の操作ルールにし
たがい、前記第1の操作ルールによる埋め込み符号化デ
ータを、他の任意の被埋め込みデータに対応して操作
し、前記第1の操作ルールによる埋め込み符号化データ
に前記他の任意の被埋め込みデータを埋め込んだ第2の
操作ルールによる埋め込み符号化データを生成すること
により得られた前記第2の操作ルールによる埋め込み符
号化データを、前記第2の操作ルールにしたがって操作
するとともに、前記第1の操作ルールにしたがって操作
し、その操作によって得られるデータのエネルギの偏り
を利用して、前記第1の操作ルールによる埋め込み符号
化データと前記他の任意の被埋め込みデータを復元する
第1の復元手段と、 前記第1の操作ルールによる埋め込み符号化データを、
前記第1の操作ルールにしたがって操作し、その操作に
よって得られるデータのエネルギの偏りを利用して、前
記埋め込み対象データと前記任意の被埋め込みデータを
復元する第2の復元手段とを備えることを特徴とするデ
ータ処理装置。
13. The embedding target is embedding coded data, which is generated by manipulating embedding target data that is a target for embedding data, and which embeds embedded data to be embedded in the embedding target data in the embedding target data. A first data processing device that restores data and embedded data, wherein the first information is restored so that the information in which other information is embedded is restored to the original information by utilizing the energy bias of the information. According to the operation rule, the embedding target data is operated corresponding to any embedded data, and embedded coded data according to the first operation rule in which the arbitrary embedding data is embedded in the embedding target data is generated. According to a second operation rule different from the first operation rule, the first operation rule is According to the second operation rule in which the embedded coded data according to (1) is operated corresponding to other arbitrary embedded data, and the embedded coded data according to the first operation rule is embedded with the other arbitrary embedded data. The embedded coded data according to the second operation rule obtained by generating the embedded coded data is operated according to the second operation rule and the first operation rule, and the operation is performed. Utilizing the bias of the energy of the data obtained by the above, a first restoring means for restoring the embedded coded data according to the first operation rule and the other arbitrary embedded data, and the first operation rule. Embedded coded data,
A second restoring unit that restores the embedding target data and the arbitrary embedded data by operating according to the first operation rule and utilizing the energy bias of the data obtained by the operation. Characteristic data processing device.
【請求項14】 前記第1と第2の操作ルールは、重複
する操作が存在しない操作ルールであることを特徴とす
る請求項13に記載のデータ処理装置。
14. The data processing apparatus according to claim 13, wherein the first and second operation rules are operation rules in which there are no overlapping operations.
【請求項15】 前記第1の操作ルールは、前記埋め込
み対象データの相関性を利用して前記第1の操作ルール
による埋め込み符号化データを前記埋め込み対象データ
に復元する操作ルールであり、 前記第1の復元手段は、 前記第2の操作ルールによる埋め込み符号化データを、
前記第2の操作ルールにしたがって操作する第1の操作
手段と、 前記第1の操作手段による操作によって得られたデータ
を、前記第1の操作ルールにしたがって操作する第2の
操作手段と、 前記第2の操作手段による操作によって得られたデータ
の相関を求める相関演算手段と、 前記相関演算手段によって求められた相関に基づいて、
前記第1の操作手段における前記第2の操作ルールによ
る埋め込み符号化データの操作を決定し、その操作を表
す操作情報を出力する操作決定手段とを有し、 前記操作決定手段が出力する操作情報に基づいて、前記
第2の操作ルールによる埋め込み符号化データを、前記
第1の操作ルールによる埋め込み符号化データと前記他
の任意の被埋め込みデータに復元することを特徴とする
請求項13に記載のデータ処理装置。
15. The first operation rule is an operation rule for restoring the embedded coded data according to the first operation rule to the embedding target data by utilizing the correlation of the embedding target data, The restoration means of No. 1 stores the embedded coded data according to the second operation rule,
First operating means for operating according to the second operating rule; second operating means for operating data obtained by the operation by the first operating means according to the first operating rule; On the basis of the correlation calculated by the correlation calculating means for obtaining the correlation of the data obtained by the operation by the second operating means,
An operation determining unit that determines an operation of the embedded coded data according to the second operation rule in the first operating unit and outputs operation information representing the operation, and the operation information output by the operation determining unit 14. The embedded coded data according to the second operation rule is restored to the embedded coded data according to the first operation rule and the other arbitrary embedded data based on the above. Data processing equipment.
【請求項16】 前記第1の復元手段は、前記相関演算
手段によって求められた相関を表す関数の特徴量を求め
る特徴量演算手段をさらに有し、 前記操作決定手段は、前記特徴演算手段において求めら
れる前記相関を表す関数の特徴量に基づいて、前記第2
の操作ルールによる埋め込み符号化データの操作を決定
することを特徴とする請求項15に記載のデータ処理装
置。
16. The first restoring means further comprises a feature quantity computing means for obtaining a feature quantity of a function representing the correlation obtained by the correlation computing means, and the operation determining means is the feature computing means. Based on the feature quantity of the function representing the obtained correlation, the second
16. The data processing apparatus according to claim 15, wherein the operation of the embedded coded data is determined according to the operation rule.
【請求項17】 前記第2の復元手段は、前記第1の操
作ルールによる埋め込み符号化データを、前記第1の操
作ルールにしたがって操作し、その操作によって得られ
るデータの相関に基づいて、前記埋め込み対象データと
前記任意の被埋め込みデータを復元することを特徴とす
る請求項15に記載のデータ処理装置。
17. The second restoring means operates the embedded coded data according to the first operation rule according to the first operation rule, and based on the correlation of data obtained by the operation, The data processing device according to claim 15, wherein the embedding target data and the arbitrary embedding data are restored.
【請求項18】 前記埋め込み対象データは、画像デー
タであることを特徴とする請求項13に記載のデータ処
理装置。
18. The data processing apparatus according to claim 13, wherein the embedding target data is image data.
【請求項19】 前記第1と2の操作ルールのうちの一
方は、画像データを構成する画素の位置を、空間または
時間方向に操作するものであり、前記第1と2の操作ル
ールのうちの他方は、画像データを構成する画素をレベ
ル方向に操作するものであることを特徴とする請求項1
8に記載のデータ処理装置。
19. One of the first and second operation rules is to operate the position of a pixel forming image data in the space or time direction, and the one of the first and second operation rules. 2. The other one is for operating pixels constituting image data in the level direction.
8. The data processing device according to 8.
【請求項20】 前記第2の操作ルールによる埋め込み
符号化データは、 前記埋め込み対象データとしての画像データにおける所
定方向に並ぶ画素列を、前記任意の被埋め込みデータに
対応する分だけ、前記所定方向にローテーションするこ
とを、前記第1の操作ルールとして、前記画像データに
前記任意の被埋め込みデータを埋め込んだ前記第1の操
作ルールによる埋め込み符号化データを生成し、 前記第1の操作ルールによる埋め込み符号化データとさ
れた前記画像データの複数の画素の画素値を表すビット
列の各ビットごとのビットプレーンを、前記他の任意の
被埋め込みデータに対応して入れ替えるビットプレーン
スワップを行うことを、前記第2の操作ルールとして、
前記第1の操作ルールによる埋め込み符号化データに前
記他の任意の被埋め込みデータを埋め込んだ前記第2の
操作ルールによる埋め込み符号化データを生成すること
により得られたものであり、 前記第1の復元手段は、 前記第2の操作ルールによる埋め込み符号化データとさ
れた前記画像データをビットプレーンスワップするビッ
トプレーンスワップ手段と、 前記ビットプレーンスワップ手段によるビットプレーン
スワップによって得られたデータとしての画像データに
おける前記所定方向に並ぶ画素列をローテーションする
ローテーション手段と、 前記ローテーション手段によるローテーションによって
得られたデータとしての画像データの相関を求める相関
演算手段と、 前記相関演算手段によって求められた相関に基づいて、
前記ビットプレーンスワップ手段における、前記第2の
操作ルールによる埋め込み符号化データとされた前記画
像データの操作を決定し、その操作を表す操作情報を出
力する操作決定手段とを有し、 前記操作決定手段が出力する操作情報に基づいて、前記
第2の操作ルールによる埋め込み符号化データとされた
前記画像データを、前記第1の操作ルールによる埋め込
み符号化データと前記他の任意の被埋め込みデータを復
元することを特徴とする請求項18に記載のデータ処理
装置。
20. The embedded coded data according to the second operation rule is configured such that pixel rows arranged in a predetermined direction in the image data as the embedding target data correspond to the arbitrary embedded data in the predetermined direction. Rotation is performed as the first operation rule to generate embedded coded data according to the first operation rule in which the arbitrary embedded data is embedded in the image data, and to embed according to the first operation rule. Performing a bit plane swap for exchanging a bit plane for each bit of a bit string representing pixel values of a plurality of pixels of the image data, which is encoded data, corresponding to the other arbitrary embedded data, As the second operation rule,
It is obtained by generating embedded coded data according to the second operation rule in which the other arbitrary embedded data is embedded in the embedded coded data according to the first operation rule. The restoring means is a bit plane swap means for bit plane swapping the image data that is the embedded coded data according to the second operation rule, and image data as data obtained by the bit plane swap by the bit plane swap means. On the basis of the correlation obtained by the rotation calculating means for rotating the pixel rows arranged in the predetermined direction, the correlation calculating means for obtaining the correlation of the image data as the data obtained by the rotation by the rotation means, ,
The bit plane swap means includes an operation deciding means for deciding an operation of the image data, which is the embedded coded data according to the second operation rule, and outputting operation information representing the operation. Based on the operation information output by the means, the image data that is the embedded coded data according to the second operation rule, the embedded coded data according to the first operation rule, and the other arbitrary embedded data. The data processing device according to claim 18, which is restored.
【請求項21】 前記第2の操作ルールによる埋め込み
符号化データは、 前記画像データを、第1の被埋め込みデータに対応し
て、水平または垂直方向のうちのいずれか1つの方向に
ローテーションすることにより、前記画像データに対し
て、前記第1の被埋め込みデータを埋め込んだ第1の埋
め込み符号化データを生成し、 前記第1の埋め込み符号化データを、第2の被埋め込み
データに対応して、水平または垂直方向のうちの他の方
向にローテーションすることにより、前記第1の埋め込
み符号化データに対して、前記第2の被埋め込みデータ
を埋め込んだ第2の埋め込み符号化データを生成し、 前記第2の埋め込み符号化データを、第3の被埋め込み
データに対応してビットプレーンスワップすることによ
り、前記第2の埋め込み符号化データに対して、前記第
3の被埋め込みデータを埋め込んだ前記第3の埋め込み
符号化データを生成することにより得られた前記第3の
埋め込み符号化データであり、 前記ローテーション手段は、前記ビットプレーンスワッ
プ手段によるビットプレーンスワップによって得られた
データとしての画像データにおける前記他の方向に並ぶ
画素列をローテーションし、 前記相関演算手段は、前記ローテーション手段によるロ
ーテーションによって得られたデータとしての画像デー
タの、前記1つの方向に隣接する画素列どうしの相関を
求めることを特徴とする請求項20に記載のデータ処理
装置。
21. The embedded coded data according to the second operation rule is configured to rotate the image data in one of a horizontal direction and a vertical direction corresponding to the first embedded data. Thereby, the first embedded coded data in which the first embedded data is embedded is generated in the image data, and the first embedded coded data is generated in correspondence with the second embedded data. , The second embedded coded data in which the second embedded data is embedded in the first embedded coded data by rotating in another direction of the horizontal or vertical direction, By bit-plane swapping the second embedded coded data corresponding to the third embedded data, the second embedded code The third embedded coded data obtained by generating the third embedded coded data in which the third embedded data is embedded in the encoded data, wherein the rotation means is the bit. Rotate the pixel rows arranged in the other direction in the image data as the data obtained by the bit plane swap by the plane swap means, the correlation operation means, of the image data as the data obtained by the rotation by the rotation means 21. The data processing apparatus according to claim 20, wherein a correlation between pixel columns adjacent to each other in the one direction is obtained.
【請求項22】 データを埋め込む対象である埋め込み
対象データを操作することにより生成された、前記埋め
込み対象データに埋め込まれる被埋め込みデータを前記
埋め込み対象データに埋め込んだ埋め込み符号化データ
を、前記埋め込み対象データと被埋め込みデータに復元
するデータ処理方法であって、 情報が有するエネルギの偏りを利用して他の情報が埋め
込まれた前記情報が元の情報に復元されるように操作を
行う第1の操作ルールにしたがい、前記埋め込み対象デ
ータを、任意の被埋め込みデータに対応して操作し、前
記埋め込み対象データに前記任意の被埋め込みデータを
埋め込んだ第1の操作ルールによる埋め込み符号化デー
タを生成し、 前記第1の操作ルールとは異なる第2の操作ルールにし
たがい、前記第1の操作ルールによる埋め込み符号化デ
ータを、他の任意の被埋め込みデータに対応して操作
し、前記第1の操作ルールによる埋め込み符号化データ
に前記他の任意の被埋め込みデータを埋め込んだ第2の
操作ルールによる埋め込み符号化データを生成すること
により得られた前記第2の操作ルールによる埋め込み符
号化データを、前記第2の操作ルールにしたがって操作
するとともに、前記第1の操作ルールにしたがって操作
し、その操作によって得られるデータのエネルギの偏り
を利用して、前記第1の操作ルールによる埋め込み符号
化データと前記他の任意の被埋め込みデータを復元する
第1の復元ステップと、 前記第1の操作ルールによる埋め込み符号化データを、
前記第1の操作ルールにしたがって操作し、その操作に
よって得られるデータのエネルギの偏りを利用して、前
記埋め込み対象データと前記任意の被埋め込みデータを
復元する第2の復元ステップとを備えることを特徴とす
るデータ処理方法。
22. The embedding target is embedded coded data generated by manipulating embedding target data that is a target for embedding data, in which embedded data to be embedded in the embedding target data is embedded in the embedding target data. A first data processing method for restoring data and data to be embedded, wherein the bias of energy contained in the information is used to restore the information in which other information is embedded to the original information. According to the operation rule, the embedding target data is operated corresponding to any embedded data, and embedded coded data according to the first operation rule in which the arbitrary embedding data is embedded in the embedding target data is generated. According to a second operation rule different from the first operation rule, the first operation rule is According to the second operation rule in which the embedded coded data according to (1) is operated corresponding to other arbitrary embedded data, and the embedded coded data according to the first operation rule is embedded with the other arbitrary embedded data. The embedded coded data according to the second operation rule obtained by generating the embedded coded data is operated according to the second operation rule and the first operation rule, and the operation is performed. A first restoration step of restoring the embedded coded data according to the first operation rule and the other arbitrary embedded data by utilizing the energy bias of the data obtained by Embedded coded data,
A second restoring step of restoring the embedding target data and the arbitrary embedded data by operating in accordance with the first operation rule and utilizing an energy bias of data obtained by the operation. Characterizing data processing method.
【請求項23】 データを埋め込む対象である埋め込み
対象データを操作することにより生成された、前記埋め
込み対象データに埋め込まれる被埋め込みデータを前記
埋め込み対象データに埋め込んだ埋め込み符号化データ
を、前記埋め込み対象データと被埋め込みデータに復元
するデータ処理を、コンピュータに行わせるプログラム
であって、 情報が有するエネルギの偏りを利用して他の情報が埋め
込まれた前記情報が元の情報に復元されるように操作を
行う第1の操作ルールにしたがい、前記埋め込み対象デ
ータを、任意の被埋め込みデータに対応して操作し、前
記埋め込み対象データに前記任意の被埋め込みデータを
埋め込んだ第1の操作ルールによる埋め込み符号化デー
タを生成し、 前記第1の操作ルールとは異なる第2の操作ルールにし
たがい、前記第1の操作ルールによる埋め込み符号化デ
ータを、他の任意の被埋め込みデータに対応して操作
し、前記第1の操作ルールによる埋め込み符号化データ
に前記他の任意の被埋め込みデータを埋め込んだ第2の
操作ルールによる埋め込み符号化データを生成すること
により得られた前記第2の操作ルールによる埋め込み符
号化データを、前記第2の操作ルールにしたがって操作
するとともに、前記第1の操作ルールにしたがって操作
し、その操作によって得られるデータのエネルギの偏り
を利用して、前記第1の操作ルールによる埋め込み符号
化データと前記他の任意の被埋め込みデータを復元する
第1の復元ステップと、 前記第1の操作ルールによる埋め込み符号化データを、
前記第1の操作ルールにしたがって操作し、その操作に
よって得られるデータのエネルギの偏りを利用して、前
記埋め込み対象データと前記任意の被埋め込みデータを
復元する第2の復元ステップとを備えることを特徴とす
るプログラム。
23. The embedding target is embedded coded data generated by manipulating embedding target data that is a target for embedding data, in which embedded data to be embedded in the embedding target data is embedded in the embedding target data. A program that causes a computer to perform data processing to restore data and embedded data, so that the information embedded with other information can be restored to the original information by utilizing the energy bias of the information. Embedding according to a first operation rule in which the embedding target data is manipulated corresponding to arbitrary embedded data according to a first operation rule for performing operation, and the arbitrary embedding data is embedded in the embedding target data. Generate encoded data, and generate a second operation rule different from the first operation rule. According to the above, the embedded coded data according to the first operation rule is operated corresponding to other arbitrary embedded data, and the embedded coded data according to the first operation rule is added to the other arbitrary embedded data. Embedded coded data according to the second operation rule obtained by generating embedded coded data according to the second operation rule in which A first restoration step of operating according to the operation rule and utilizing the energy bias of the data obtained by the operation to restore the embedded coded data according to the first operation rule and the other arbitrary embedded data. And embedded coded data according to the first operation rule,
A second restoring step of restoring the embedding target data and the arbitrary embedded data by operating in accordance with the first operation rule and utilizing an energy bias of data obtained by the operation. Characteristic program.
【請求項24】 データを埋め込む対象である埋め込み
対象データを操作することにより生成された、前記埋め
込み対象データに埋め込まれる被埋め込みデータを前記
埋め込み対象データに埋め込んだ埋め込み符号化データ
を、前記埋め込み対象データと被埋め込みデータに復元
するデータ処理を、コンピュータに行わせるプログラム
が記録されている記録媒体であって、 情報が有するエネルギの偏りを利用して他の情報が埋め
込まれた前記情報が元の情報に復元されるように操作を
行う第1の操作ルールにしたがい、前記埋め込み対象デ
ータを、任意の被埋め込みデータに対応して操作し、前
記埋め込み対象データに前記任意の被埋め込みデータを
埋め込んだ第1の操作ルールによる埋め込み符号化デー
タを生成し、 前記第1の操作ルールとは異なる第2の操作ルールにし
たがい、前記第1の操作ルールによる埋め込み符号化デ
ータを、他の任意の被埋め込みデータに対応して操作
し、前記第1の操作ルールによる埋め込み符号化データ
に前記他の任意の被埋め込みデータを埋め込んだ第2の
操作ルールによる埋め込み符号化データを生成すること
により得られた前記第2の操作ルールによる埋め込み符
号化データを、前記第2の操作ルールにしたがって操作
するとともに、前記第1の操作ルールにしたがって操作
し、その操作によって得られるデータのエネルギの偏り
を利用して、前記第1の操作ルールによる埋め込み符号
化データと前記他の任意の被埋め込みデータを復元する
第1の復元ステップと、前記第1の操作ルールによる埋
め込み符号化データを、前記第1の操作ルールにしたが
って操作し、その操作によって得られるデータのエネル
ギの偏りを利用して、前記埋め込み対象データと前記任
意の被埋め込みデータを復元する第2の復元ステップと
を備えるプログラムが記録されていることを特徴とする
記録媒体。
24. The embedded coded data, which is generated by manipulating embedding target data that is a target for embedding data, and which embeds embedded data to be embedded in the embedding target data into the embedding target data, A recording medium in which a program for causing a computer to perform data processing for restoring data and embedded data is recorded, and the information in which other information is embedded is utilized by utilizing the energy bias of information. According to the first operation rule for performing operation so as to be restored to information, the embedding target data is operated corresponding to any embedded data, and the arbitrary embedding data is embedded in the embedding target data. Generating embedded coded data according to a first operation rule, According to a different second operation rule, the embedded coded data according to the first operation rule is operated corresponding to any other embedded data, and the embedded coded data according to the first operation rule is added to the embedded coded data according to the first operation rule. The embedded coded data according to the second operation rule obtained by generating the embedded coded data according to the second operation rule in which other arbitrary embedded data is embedded is operated according to the second operation rule. At the same time, the embedded coded data according to the first operation rule and the other arbitrary embedded data are operated by utilizing the bias of the energy of the data obtained by the operation according to the first operation rule. A first restoration step of restoring and the embedded coded data according to the first operation rule are stored in the first operation rule. And a second restoration step of restoring the embedding target data and the arbitrary embedded data by utilizing the bias of the energy of the data obtained by the operation. A recording medium characterized by.
JP2001320766A 2001-10-18 2001-10-18 Data processing apparatus, data processing method, and program Expired - Fee Related JP3940986B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001320766A JP3940986B2 (en) 2001-10-18 2001-10-18 Data processing apparatus, data processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001320766A JP3940986B2 (en) 2001-10-18 2001-10-18 Data processing apparatus, data processing method, and program

Publications (2)

Publication Number Publication Date
JP2003125194A true JP2003125194A (en) 2003-04-25
JP3940986B2 JP3940986B2 (en) 2007-07-04

Family

ID=19138106

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001320766A Expired - Fee Related JP3940986B2 (en) 2001-10-18 2001-10-18 Data processing apparatus, data processing method, and program

Country Status (1)

Country Link
JP (1) JP3940986B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009005018A (en) * 2007-06-20 2009-01-08 Canon Inc Image encoding apparatus, image decoding apparatus, and control method thereof
CN102256097A (en) * 2010-05-19 2011-11-23 车王电子股份有限公司 Image signal transmission monitoring method and device

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013506379A (en) * 2009-10-14 2013-02-21 ソニー株式会社 Combined scalar embedded graphics coding for color images

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009005018A (en) * 2007-06-20 2009-01-08 Canon Inc Image encoding apparatus, image decoding apparatus, and control method thereof
CN102256097A (en) * 2010-05-19 2011-11-23 车王电子股份有限公司 Image signal transmission monitoring method and device
CN102256097B (en) * 2010-05-19 2013-06-05 车王电子股份有限公司 Video signal transmission monitoring method and device thereof

Also Published As

Publication number Publication date
JP3940986B2 (en) 2007-07-04

Similar Documents

Publication Publication Date Title
US6567531B1 (en) Image processing apparatus, image processing method, and providing medium
Liao et al. New cubic reference table based image steganography
US7058200B2 (en) Method for the prior monitoring of the detectability of a watermarking signal
Yao et al. Reversible data hiding in encrypted images using global compression of zero-valued high bit-planes and block rearrangement
US7738711B2 (en) Coding apparatus and method, decoding apparatus and method, data processing system, storage medium, and signal
JP4147700B2 (en) Encoding apparatus, encoding method, and recording medium
US6859155B2 (en) Data processing device
JPH07504541A (en) Fractal coding method and system for data
JP2000165644A (en) Image processing apparatus, image processing method, providing medium, and image processing system
JP2000228721A (en) Watermark insertion and digital signal authentication method
Shetty A study and analysis of reversible data hiding techniques
JP4556087B2 (en) DATA PROCESSING DEVICE, DATA PROCESSING METHOD, PROGRAM, AND PROGRAM RECORDING MEDIUM
JP4182603B2 (en) Encoding apparatus and encoding method, decoding apparatus and decoding method, recording medium, and data processing apparatus
JP2003125194A (en) Data processing device and data processing method, and program and recording medium
Yu et al. Cover selection in encrypted images
JP4232118B2 (en) Data processing apparatus, data processing method, and program
Moon Forensic multi-dimensional Ary exploited modified direction data embedding approach to increase imperceptibility and robustness of secured data
JP4556147B2 (en) Decoding device, decoding method, recording medium, and data processing device
JP3944821B2 (en) Data processing apparatus, data processing method, and program
EP0911760B1 (en) Iterated image transformation and decoding apparatus and methods
EP0993199A2 (en) Apparatus and method for image data coding with additional data embedding
Jindal et al. High capacity Reversible Data Hiding scheme using prediction tuning model
US20020094126A1 (en) Fractal image compression
Chang et al. Reversible data embedding based on prediction approach for VQ and SMVQ compressed images
JPH11196416A (en) Encoding device and method, decoding device and method, and recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041004

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060703

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060713

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060906

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: 20070309

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070322

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

Free format text: PAYMENT UNTIL: 20100413

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110413

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120413

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130413

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130413

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140413

Year of fee payment: 7

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